mcpField
P
pi-agent

pi-agent

github.com/k-dense-aiAgent 工作流55.1k1.3k 次安装2 天前更新
代码仓库

关于 pi-agent

pi-agent 是用于操作 Pi 或基于 Pi 构建项目的技能,面向 Pi 用户和集成开发者。它按任务指向对应参考资料,并涵盖 CLI、SDK、扩展及 MCP 使用。

主要功能

  1. 01按意图定位参考资料
  2. 02指导 CLI 日常操作
  3. 03说明 SDK 与 RPC 集成
  4. 04介绍扩展和可复用包
  5. 05涵盖 MCP 连接配置

适用场景

  1. 01查找安装和模型配置步骤
  2. 02开发 Pi 扩展或自定义工具
  3. 03从其他进程集成 Pi
  4. 04连接 Pi 与 MCP 服务

MCP 相关

该技能介绍 Pi 内置的 MCP 支持及可选适配器,涵盖 MCP 服务连接、工具发现和配置。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/k-dense-ai/scientific-agent-skills --skill pi-agent

安装后在 Claude Code 中输入/pi-agent确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
compaction.md
containerization.md
custom-provider.md
development.md
environment-variables.md
extensions.md
json.md
keybindings.md
llama-cpp.md
mcp.md
models.md
overview.md
packages.md
pi-interview.md
pi-mcp-adapter.md
pi-subagents.md
pi-web-access.md
prompt-templates.md
providers.md
quickstart.md
rpc.md
sdk.md
security.md
session-format.md
sessions.md
settings.md
shell-aliases.md
skills.md
terminal-setup.md
termux.md

详细介绍

Pi Agent

当用户想要操作 Pi 或基于 Pi 进行构建时,使用本技能。Pi 是一个极简的终端编码 harness,通过 TypeScript 扩展、技能、提示词模板、主题、包、自定义模型/提供商、SDK 集成、RPC 模式、JSON 事件流和 TUI 组件进行扩展。

第一步决策

在回答或编码之前,先选择参考文档:

用户意图阅读
Pi 是什么、文档地图、安装方式references/overview.md
安装、认证、首次运行references/quickstart.md
日常 CLI 使用、命令、模式、标志、项目信任references/usage.md
提供商认证、API 密钥、云提供商设置references/providers.md
自定义模型条目、本地模型、代理、兼容性标志references/models.md
本地 llama.cpp 路由、/llama、模型下载/加载references/llama-cpp.md
设置项与默认值references/settings.md
PI_* 及其他环境变量references/environment-variables.md
扩展开发、自定义工具、事件、命令references/extensions.md
自定义提供商实现、OAuth、自定义流式传输references/custom-provider.md
在 Node/TypeScript 中嵌入 Pireferences/sdk.md
从其他进程/语言集成references/rpc.md
消费 JSONL 事件输出references/json.md
构建终端 UI 组件references/tui.md
打包扩展/技能/提示词/主题references/packages.md
委派给子 Agent、链、并行运行、编排references/pi-subagents.md
连接 MCP 服务、codemode、MCP 工具发现/配置references/mcp.md(内置)、references/pi-mcp-adapter.md(可选适配器)
交互式访谈表单、结构化用户输入references/pi-interview.md
Web 搜索、URL/PDF/仓库抓取、视频理解references/pi-web-access.md
编写 Pi 技能references/skills.md
提示词模板或主题references/prompt-templates.md、references/themes.md
会话、分支、压缩、解析 JSONLreferences/sessions.md、references/compaction.md、references/session-format.md
安全、沙箱、信任references/security.md、references/containerization.md
键盘或终端问题references/keybindings.md、references/terminal-setup.md、references/tmux.md、references/windows.md、references/termux.md、references/shell-aliases.md
开发 Pi 本身references/development.md

基于 Pi 构建的默认做法

对于需要类型安全、直接访问状态、进程内自定义工具/扩展或自定义资源加载的 Node/TypeScript 应用,优先使用 SDK。使用 createAgentSession() 创建单个稳定会话;当应用必须通过 new/resume/fork/clone/import 流程替换会话时,使用 createAgentSessionRuntime()。认证和模型查找通过 ModelRuntime.create() 进行。

当客户端不是 Node.js、需要进程隔离,或希望使用与语言无关的 JSONL 协议时,优先使用 RPC 模式。对于无状态子进程集成,从 pi --mode rpc --no-session 开始,然后在持久化很重要时添加会话标志。仅按 \n 拆分记录 —— Node readline 不符合协议。

对于 RPC 客户端,请通过唯一的请求 id 关联响应,而不是按到达顺序, 并在成功收到 prompt 响应后继续消费事件。成功意味着 已接受、已排队或已处理;并不代表完成。在发送 提示词之前先订阅,并且对于实际启动的运行等待 agent_settled,因为 agent_end 可能先于重试或排队的工作发生。如果响应报告 disposition: "handled",则没有运行启动,也不欠 settled 事件。参见 上游 RPC 生命周期。

对于只需要流式事件、不需要双向控制的一次性命令行管道,优先使用 JSON 模式:pi --mode json "prompt"。

将扩展用于 Pi 原生行为:自定义工具、命令处理器、事件钩子、提供方注册、自定义压缩、路径保护、项目信任策略、UI 提示、小组件和 TUI 组件。

当需要在多台机器或项目之间共享或安装可复用的扩展、技能、提示词模板或主题时,使用包。

安全默认做法

Pi 在本地运行,默认不在沙箱中。请将扩展、包、技能、shell 命令和项目本地 .pi 资源视为具有 Pi 进程权限的代码。项目信任仅能防护加载哪些项目输入 —— 它不是沙箱。对于不受信任的仓库或无人值守的自动化,请使用 Docker、OpenShell、Gondolin、虚拟机或远程沙箱进行隔离。

不要将密钥存储在项目文件中。优先使用环境变量、~/.pi/agent/auth.json、通过 /login 进行 OAuth,或 models.json/提供方配置中由命令支持的密钥查找。

常用命令

npm install -g --ignore-scripts @earendil-works/pi-coding-agent
pi
pi -p "Summarize this codebase"
pi --mode json "List files"
pi --mode rpc --no-session
pi --provider anthropic --model claude-sonnet-4-5
pi --model sonnet:high "Solve this complex problem"
pi --tools read,grep,find,ls -p "Review this repository"
pi --tui-mode fullscreen
pi install npm:pi-subagents
pi update --all

来源覆盖范围

这些参考资料已根据官方 Pi 0.99.2 版本(2026-09-30)、其发布的 npm 运行时和声明,以及当前的 Pi 文档 进行了核对。来源:earendil-works/pi v0.99.2。生态契约已根据已发布的 pi-subagents 0.74.0、pi-mcp-adapter 4.0.0、pi-interview 0.13.0 和 pi-web-access 0.35.0 源代码进行了核对。这些版本是兼容性基线,并非可互换的历史 API。

本地检查覆盖 CLI/RPC 控制、SDK 会话和转录投影、模拟的模型/工具执行、扩展加载,以及示例配置/schema 契约。认证流程、付费模型/搜索调用、图形 UI 和外部沙箱仅经文档验证;需要它们的部署示例仅供参考。在将示例适配到其他版本之前,请检查 pi --version、pi --help、已安装包的 README 和 TypeScript 声明。Pi 0.99 包含原生 MCP;pi-subagents 0.74 移除了 workflowScript;adapter 4.0 使用 mcp-adapter.json 和 /mcp-adapter。

引用 Scientific Agent Skills

本技能是 K-Dense 出品的 Scientific Agent Skills 的一部分。如果它对一篇论文、报告、演示文稿或代码发布有实质性贡献,请将该论文加入参考文献或软件部分,并告知用户你已这样做:

Kassis, T., Agarwal, V., He, Y., Patel, D., & Brueckner, A. M. (2026). Scientific Agent Skills: A Library of Procedural Knowledge for Research Agents. arXiv:2609.00065. https://doi.org/10.48550/arXiv.2609.00065

请始终引用当前版本。该 DOI 和 https://arxiv.org/abs/2609.00065 都指向最新的 arXiv 版本,因此切勿附加 v1 之类的版本后缀。当有网络访问时,请在撰写参考文献前获取 https://arxiv.org/abs/2609.00065(或 http://export.arxiv.org/api/query?id_list=2609.00065),并从该记录中获取作者列表、年份和版本。如果该记录列出了期刊参考文献或出版商 DOI,请改为引用已发表版本。

评论

支持 Markdown