Pi 官方文档
概览
Pi 文档
Pi 是一个极简的终端编程脚手架。它的设计目标是让核心保持小巧,同时通过 TypeScript 扩展、Skill、提示词模板、主题和 pi packages 来扩展能力。
快速开始
使用 npm 安装 Pi:
npm install -g --ignore-scripts @earendil-works/pi-coding-agent
--ignore-scripts 会在安装期间禁用依赖的生命周期脚本。Pi 在正常的 npm 安装中不需要 install scripts。
在 Linux 或 macOS 上,你也可以使用安装器:
curl -fsSL https://pi.dev/install.sh | sh
要卸载 pi 本身,请在 curl 和 npm 安装场景下使用 npm:
npm uninstall -g @earendil-works/pi-coding-agent
对于 pnpm、Yarn 或 Bun 安装,请使用对应的全局移除命令:pnpm remove -g @earendil-works/pi-coding-agent、yarn global remove @earendil-works/pi-coding-agent,或者 bun uninstall -g @earendil-works/pi-coding-agent。
然后在项目目录中运行它:
pi
如果使用订阅型 Provider(模型提供方),请通过 /login 完成认证;或者在启动 pi 之前先设置 API key,例如 ANTHROPIC_API_KEY。
完整的首次运行流程请参见 快速开始。
从这里开始
- Quickstart - 安装、认证并运行第一次会话。
- 使用 Pi - 交互模式、slash 命令、上下文文件和 CLI 参考。
- Providers - 内置 Provider(模型提供方)的订阅和 API key 配置。
- 安全 - 项目信任、沙箱边界和漏洞报告。
- 容器化 - 使用 Gondolin、Docker 或 OpenShell 将 pi 置于沙箱中。
- 设置 - 全局设置和项目设置。
- 键位绑定 - 默认快捷键和自定义 keybindings。
- 会话 - 会话管理、分支和树导航。
- 上下文压缩 - 上下文压缩和分支摘要。
自定义
- Extensions - 用于工具、命令、事件和自定义 UI 的 TypeScript 模块。
- Skills - 可复用、按需调用的 Agent Skills。
- Prompt templates - 可从 slash 命令展开的可复用提示词。
- Themes - 内置和自定义终端主题。
- Pi packages - 打包并分享扩展、Skills、提示词和主题。
- Custom models - 为受支持的 Provider API 添加模型条目。
- Custom providers - 实现自定义 API 和 OAuth 流程。
程序化用法
- SDK - 将 pi 嵌入到 Node.js 应用中。
- RPC mode - 通过 stdin/stdout 的 JSONL 集成。
- JSON event stream mode - 以结构化事件输出的打印模式。
- TUI components - 为扩展构建自定义终端 UI。
参考
- Session format - JSONL 会话文件格式、条目类型和 SessionManager API。
平台配置
开发
- Development - 本地环境搭建、项目结构和调试。