Pi 文件
Pi 是一個極簡的終端機程式開發 Agent 框架。它的核心保持精簡,同時可以透過 TypeScript 擴充、Skills、Prompt Templates、Themes 和 Pi Packages 進行擴充。
快速開始
使用 npm 安裝 Pi:
npm install -g --ignore-scripts @earendil-works/pi-coding-agent--ignore-scripts 會在安裝期間停用相依套件生命週期指令碼。正常透過 npm 安裝 Pi 時不需要執行安裝指令碼。
在 Linux 或 macOS 上,也可以使用安裝指令碼:
curl -fsSL https://pi.dev/install.sh | sh如果透過 curl 安裝指令碼或 npm 安裝,需要使用 npm 解除安裝 pi:
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 進行身分驗證;對於 API Key Provider,在啟動 pi 前設定對應的 API Key,例如 ANTHROPIC_API_KEY。
完整的首次執行流程請見 Quickstart。
從這裡開始
- Quickstart - 安裝、身分驗證,並開始第一次工作階段。
- Using Pi - 互動模式、slash commands、context files 和 CLI 參考。
- Providers - 內建 Provider 的訂閱和 API Key 設定。
- llama.cpp - 執行本機路由器,並用
/llama管理模型。 - Security - 專案信任、sandbox 邊界和漏洞報告。
- Containerization - 使用 Gondolin、Docker 或 OpenShell 對 pi 以 sandbox 隔離。
- Settings - 全域設定和專案設定。
- Keybindings - 預設快速鍵和自訂按鍵綁定。
- Sessions - 工作階段管理、分支和樹導航。
- Compaction - 上下文壓縮和分支摘要。
自訂
- Extensions - 用於工具、指令、事件和自訂 UI 的 TypeScript 模組。
- Skills - 可隨需載入的可重複使用 Agent Skills。
- Prompt templates - 可透過 slash commands 展開的可重複使用 Prompt。
- Themes - 內建和自訂終端機主題。
- Pi packages - 捆綁並共享擴充、技能、提示和主題。
- Custom models - 為受支援的 Provider API 新增模型條目。
- Custom providers - 實作自訂 API 和 OAuth 流程。
程式化使用
- SDK - 將 pi 嵌入 Node.js 應用程式。
- RPC mode - 透過 stdin/stdout JSONL 整合。
- JSON event stream mode - 具有結構化事件的列印模式。
- TUI components - 為擴充建置自訂終端機 UI。
參考
- Environment variables - Pi 程序設定,以及 Bash 工具可用的工作階段元資料。
- Session format - JSONL 工作階段檔案格式、條目類型和 SessionManager API。
平台設定
開發
- Development - 本機設定、專案結構和除錯。