Pi Coding Agent
Cheat Sheet
“There are many agent harnesses but this one is yours.” Pi là minimal agent harness — chỉnh sửa harness cho hợp workflow của bạn, không phải ngược lại. 15+ providers, tree-structured sessions, tự sửa chính nó bằng /reload.
Pi là gì?
Một terminal coding harness tối giản, mở rộng bằng TypeScript modules. Pi cố tình bỏ MCP, sub-agents, permission popup, plan mode, to-dos hay background bash — thay vào đó bạn tự lắp qua extensions, skills, prompt templates, themes. Chạy 4 chế độ: interactive TUI, print, JSON stream, RPC — hoặc nhúng thẳng bằng SDK.
Harness của bạn
Extensions, skills, prompt templates & themes. “Change the harness, not your workflow.” Tự sửa chính nó tại chỗ với /reload.
15+ providers
Anthropic, OpenAI, Google, Azure, Bedrock, Mistral, Groq, Cerebras, xAI, Hugging Face… Đổi model giữa session bằng Ctrl+L. Local model qua llama.cpp.
Tree-structured sessions
Lịch sử dạng cây, quay về bất kỳ điểm nào với /tree, fork/clone nhánh, export HTML/JSONL, share qua GitHub gist.
4 chế độ vận hành
Interactive TUI, print (-p), JSON event stream, RPC over stdin/stdout — và SDK để nhúng vào app.
Quick Start
Install (Linux/macOS/WSL2)
curl -fsSL https://pi.dev/install.sh | shHoặc qua npm/pnpm/bun: npm install -g --ignore-scripts @earendil-works/pi-coding-agent
Authenticate
pi
# trong TUI:
/login/login cho provider dạng subscription/OAuth, hoặc set API key: export ANTHROPIC_API_KEY=sk-ant-...
Launch
pi "List all .ts files in src/"Không tham số → interactive TUI. Kèm prompt → chạy ngay. pi -p để print & exit.
CLI Flags & Options
Modes
pi "prompt"Interactive TUI (hoặc chạy ngay nếu có prompt)-p, --printPrint response rồi thoát--mode jsonXuất mọi event dạng JSON lines--mode rpcRPC over stdin/stdout--tui-mode <m>regular · fullscreenModel selection
--provider <name>anthropic · openai · google…--model <pattern>provider/id, hỗ trợ :thinking--models <list>Patterns cho Ctrl+P cycling--thinking <lvl>off·minimal·low·medium·high·xhigh·max--api-key <key>Ghi đè biến môi trường--list-models [q]Liệt kê model khả dụngSessions
-c, --continueTiếp session gần nhất-r, --resumeChọn session để mở lại--session <id>Mở session theo file/UUID--fork <id>Fork session sang session mới--no-sessionEphemeral, không lưu-n, --name <s>Đặt tên hiển thịTools & resources
-t, --tools <l>Allowlist tool cụ thể-xt, --exclude-toolsTắt tool cụ thể-nt, --no-toolsTắt toàn bộ tool-e, --extension <s>Load extension: path·npm·git--skill <path>Load skill file-nc, --no-context-filesBỏ qua AGENTS.md / CLAUDE.mdSystem prompt
--system-prompt <t>Thay system prompt mặc định--append-system-promptNối thêm vào system prompt-a, --approveTrust file project-local cho lần chạy-v, --versionHiện phiên bảnPackage commands
pi install <src>Cài package (extension/skill/theme)pi remove <src>Gỡ packagepi update [src|self]Cập nhật package hoặc chính pipi configBật/tắt resourcepi listLiệt kê package đã càiSlash Commands
Model & auth
/login Quản lý OAuth / API-key/logoutĐăng xuất credential/modelĐổi model/scoped-modelsBật/tắt model cho Ctrl+P/llamaTải/load/unload model llama.cpp/settingsThinking, theme, transport…Sessions & history
/newSession mới/resumeChọn session cũ/treeNhảy tới điểm bất kỳ & tiếp tục/forkTạo session từ 1 user message/cloneNhân bản nhánh đang active/name <name>Đặt tên session/sessionFile, ID, tokens, costContext & export
/compact [prompt]Nén context, kèm chỉ dẫn tùy chọn/copyCopy message cuối của assistant/export [file]Xuất session ra HTML/JSONL/import <file>Import & resume từ JSONL/shareUpload private gist + link HTMLUtilities
/reloadNạp lại keybindings·ext·skills·prompt·theme·context/trustLưu quyết định trust cho project/hotkeysXem mọi phím tắt/changelogLịch sử phiên bản/quitThoátKeybindings
Tùy chỉnh tại ~/.pi/agent/keybindings.json, rồi /reload để áp dụng không cần khởi động lại. Xem nhanh với /hotkeys.
Models & thinking
Ctrl+LMở model selectorCtrl+PModel kế tiếpShift+Ctrl+PModel trước đóShift+TabĐổi mức thinkingCtrl+TẨn/hiện thinking blocksInput & submit
EnterGửiShift+Enter / Ctrl+JXuống dòngTabAutocompleteAlt+EnterXếp hàng follow-upCtrl+GMở external editorCtrl+VDán ảnhDisplay & tree
Ctrl+OMở/gấp tool outputCtrl+XCopy message cuốiCtrl+←/→Fold/unfold, nhảy node câyShift+LSửa nhãn nodeShift+TBật/tắt timestampsEscHủy / abortCấu hình & mở rộng
/login cho OAuth/subscription, hoặc set env như ANTHROPIC_API_KEY, OPENAI_API_KEY. Custom provider & custom model đều hỗ trợ.
Pi tự đọc AGENTS.md / CLAUDE.md trong project làm chỉ dẫn. Auto-compaction giữ context gọn. Tắt bằng -nc.
Nạp dynamic context, tool, hành vi mới từ path · npm · git. -e khi chạy, hoặc pi install để cài cố định.
Đóng gói know-how thành skill file, load bằng --skill. Discovery tự động, tắt bằng --no-skills.
Prompt tái dùng qua --prompt-template hoặc pi @prompt.md. Đính kèm file/ảnh: pi @code.ts @img.png.
Đổi giao diện với --theme / --use-theme. Quản lý mọi thứ bằng pi install/remove/update/config/list.
Bảo mật: mặc định Pi chạy với quyền của user. Cần cô lập mạnh hơn thì dùng containerization — Gondolin (micro-VM), Docker, hoặc OpenShell sandbox.
Dùng thực tế
Tài liệu & cộng đồng
Landing + installer + tổng quan tính năng.
pi.devQuickstart, providers, extensions, SDK, RPC, session format.
pi.dev/docs/latestMã nguồn, issues, RFCs. Packages: pi-ai · pi-agent-core · pi-coding-agent · pi-tui.
github.com/earendil-works/piCài nhanh trên Linux/macOS/WSL2.
curl -fsSL https://pi.dev/install.sh | sh