Pi 是一个极简、可扩展的 agent harness:给它一个目标和你的工作目录,它就能读文件、跑命令、改代码, 并且自己一步步把多步任务推进完成。默认能力足够强,同时把「改造权」完全交给你。
> 给 main.go 加上 graceful shutdown ● 读取 main.go … ● 修改 main.go(+18 −3) ● 运行 go build ./... … ✓ 构建通过 > 再补一个单元测试 ⠿ 思考中…
Pi 刻意不做子 Agent、Plan Mode 这类「帮你决定工作流」的功能,而是提供一套干净的扩展点,让你把它改成自己的形 状。
在项目目录直接运行 pi,读写文件、执行 shell、查看 diff,全程不必离开终端。
TypeScript 模块可直接往进程里注册工具、斜杠命令、快捷键、Provider、事件处理器和 TUI 渲染器。
技能说明按需加载,不占常驻上下文;提示模板把常用输入预展开,减少重复敲击。
把扩展、技能、模板、主题打包成 Pi Package,通过 npm 或 git 一条命令安装给别人用。
会话是 JSONL 的树状结构,支持继续、分支、Fork、压缩;历史记录永远可回溯。
交互模式、print 一次性、JSON 事件流、RPC 控制、TypeScript SDK —— 同一套内核,随场景选。
Pi 协调「模型请求 → 工具执行 → 上下文拼装 → 会话存储」。一次工具调用与结果就是一轮 turn,需要时自动进入下一 轮。
所有入口共用同一套 agent 与 session 机制,脚本化、集成到自家产品都可以。
| 模式 | 用途 |
|---|---|
| interactive | 终端里交互式对话,实时渲染工具调用与 diff |
| 一次性执行任务,直接把最终结果写到 stdout | |
| json | 输出结构化事件流,方便被其他程序消费 |
| rpc | stdin/stdout 走 JSONL 命令,控制独立的 Pi 进程 |
| sdk | TypeScript SDK,在自己的应用进程内创建并控制会话 |
需要 Node.js 22.19 或更高版本(官方安装脚本会按需装好)。
# 1. 安装(macOS / Linux) curl -fsSL https://pi.dev/install.sh | sh # Windows powershell -c "irm https://pi.dev/install.ps1 | iex" # 2. 进入项目目录并启动 cd /path/to/project pi # 3. 在 Pi 内用 /login 连接订阅或 API Key,然后直接提需求