Memperluas pi coding agent dengan fitur Claude Code termasuk checkpoints, memory, web search, subagents, dan pemuatan rules.
Juga dikenal sebagai ilovepixelart/pi-code
- Stars
- 36
- Tools
- —
- Unduhan, 30 hari
- —
- Versi terbaru
- —
- Commit terakhir
- 15 Nov 2026
- Lisensi
- MIT
Apa itu pi-code MCP?
pi-code adalah MCP server. Memperluas pi coding agent dengan fitur Claude Code termasuk checkpoints, memory, web search, subagents, dan pemuatan rules.
Ringkasan dibuat dari README proyek
Tentang pi-code MCP server
pi-code menghadirkan fungsionalitas Claude Code ke dalam pi coding agent. Ini memungkinkan developer untuk menggunakan proyek yang sudah memiliki direktori .claude, dengan membaca secara otomatis rules, commands, skills, dan MCP servers yang ada. Server ini diinstal melalui npm atau local git repository dan memerlukan Node versi 22.19 atau lebih tinggi serta pi versi 0.80.5 atau yang lebih baru.
Ekstensi ini menambahkan beberapa fitur canggih ke pi agent, termasuk persistent memory, web search, subagents, dan checkpoints. Fitur ini memperkenalkan slash commands baru seperti /goal, /rewind, dan /todos untuk mengelola tugas coding yang kompleks. Berbeda dengan lingkungan lainnya, setup ini menerapkan model keamanan yang ketat di mana resource spesifik proyek seperti hooks dan agents hanya akan dimuat setelah persetujuan eksplisit dari pengguna. Dalam mode headless, sistem menolak untuk memuat resource yang tidak terpercaya guna mencegah eksekusi yang tidak sah di lingkungan otomatis.
Apa yang bisa Anda lakukan dengannya
- 1Mengelola objektif coding yang kompleksAI client dapat menggunakan command goal untuk terus mengerjakan sebuah tugas hingga kondisi tertentu terpenuhi.
- 2Pulih dari kesalahan codingDeveloper dapat menggunakan checkpoints untuk mengembalikan state proyek mereka jika terjadi kesalahan saat melakukan perubahan.
Ditulis berdasarkan README proyek. Setiap use case diperiksa terhadap kutipan dari README tersebut.
Cara menginstal pi-code MCP
Format diverifikasi 10 Nov 2026Tambahkan ke CursorTambahkan ke GooseInstal pi-code MCP di Claude Code
$ claude mcp add pi-code -- npx -y pi-codeInstal pi-code MCP di Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"pi-code": {
"command": "npx",
"args": [
"-y",
"pi-code"
]
}
}
}Instal pi-code MCP di VS Code
.vscode/mcp.json
{
"servers": {
"pi-code": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"pi-code"
]
}
}
}Instal pi-code MCP di VS Code CLI
$ code --add-mcp '{"name":"pi-code","type":"stdio","command":"npx","args":["-y","pi-code"]}'Instal pi-code MCP di Claude Desktop
claude_desktop_config.json
{
"mcpServers": {
"pi-code": {
"command": "npx",
"args": [
"-y",
"pi-code"
]
}
}
}Instal pi-code MCP di Codex
$ codex mcp add pi-code -- npx -y pi-codeInstal pi-code MCP di Codex config.toml
~/.codex/config.toml
[mcp_servers.pi-code] command = "npx" args = ["-y", "pi-code"]
Instal pi-code MCP di Gemini CLI
$ gemini mcp add -s user pi-code npx -- -y pi-codeInstal pi-code MCP di Gemini settings.json
~/.gemini/settings.json
{
"mcpServers": {
"pi-code": {
"command": "npx",
"args": [
"-y",
"pi-code"
]
}
}
}Pengecekan otomatis
Berjalan 13 Nov 2026Laporan lengkap →Lolos checks otomatis kami. Ini bukan audit keamanan: baca kodenya dan berikan server akses paling terbatas yang dibutuhkannya. Cara kerja checks
- Source repository terhubung dan dapat dijangkauilovepixelart/pi-code is public and reachablegithub.com/ilovepixelart/pi-code ↗Lolos
- Nama paket mencantumkan repositori ini sebagai sumbernyapi-code names ilovepixelart/pi-code as sourcenpmjs.com/package/pi-code ↗Lolos
- Provenance build (atestasi Sigstore)Sigstore attestation for pi-codenpmjs.com/package/pi-code/v/1.7.0#provenance ↗Lolos
- Lisensi open source (OSI)MITspdx.org/licenses/MIT.html ↗Lolos
- Ada commit atau release dalam satu tahun terakhirLast commit or release 2026-11-09github.com/ilovepixelart/pi-code ↗Lolos
- OpenSSF ScorecardTidak diperiksa
- Nama package tidak mirip dengan package populerNo popular package one edit away from pi-codeLolos
- Tidak ada advisory kritis pada paket atau dependensinyaTidak diperiksa
- Tidak ada instruksi tersembunyi untuk model0 tool descriptions and the README read; no override phrases, credential paths or hidden charactersLolos
- Tools yang bersifat destruktif telah diberi labelTidak diperiksa
- Endpoint remote merespons handshake MCPTidak diperiksa
README
Lihat di GitHubpi-code
Claude Code experience for the pi coding agent, in one package. Point pi at a project that already has a .claude/ directory and it reads your existing config: rules, commands, skills, hooks, output styles, MCP servers, and agents. It also adds the Claude Code features pi lacks: a todo overlay, checkpoints, memory, web search, subagents, and goals.
What a repository ships is treated as untrusted until you approve it: project MCP servers, hooks, agents, rules, output styles, commands and skills load only once you say yes. A headless run (pi -p) cannot ask, so an undecided project loads none of them there, which is stricter than Claude, where a headless run uses them without showing the dialog.
![]()
Requirements
pi >=0.80.5 (0.99.x recommended) and Node >=22.19 for current pi. On an older pi, pi-code warns once at session start.
Install
pi install npm:pi-code # from npm
pi install -l npm:pi-code # project-local instead, writes .pi/settings.json
Other sources:
pi install git:github.com/ilovepixelart/pi-code
pi install ./pi-code # local checkout, then /reload after edits
One pi install and everything below loads on the next start. pi list shows what is installed, pi config toggles individual resources, and pi update pi-code upgrades it. Each feature is an extension under extensions/.
What it does
Each topic links to its own doc with the full contract and any divergences from Claude Code.
- Hooks — your
.claude/settings.jsonhooks on every lifecycle event, with Claude's tool vocabulary, decision fields, and background hooks. - MCP servers — every Claude config scope, all four transports, OAuth, managed policy, timeouts, prompts, and resources. On pi 0.99 and later the servers are handed to pi's own MCP support.
- Custom slash commands —
.claude/commandswith arguments, bash spans,@fileinlining, frontmatter, and model invocation. - Skills —
.claude/skillsdiscovery plus the same dynamic content commands get. - Subagents — built-in and custom agents, background runs, per-agent memory, worktree isolation.
- CLAUDE.md, @imports, and rules — the context files and path-scoped rules pi does not load natively.
- Settings
envand flags — env blocks from every settings scope, exported with Claude's precedence, plus Claude's--settingsand--setting-sourcesflags. - Output styles — replace semantics, bundled built-ins,
/output-style. - Persistent memory — a per-repository store with a session-injected index.
- Statusline — your Claude
statusLinecommand with the documented stdin JSON. - WebSearch / WebFetch — key-free search and SSRF-guarded fetch.
- Claude plugins — installed marketplace plugins: commands, agents, hooks, MCP servers, styles, skills.
- Goal:
/goal <condition>keeps the session working until a separate model check confirms the condition holds, with status, clear, block cap, background-work deferral, and resume. - Session extras — project trust, plan mode, todos, checkpoints/rewind, AskUserQuestion, notifications, think keywords, session titles,
/context,/init.
Slash commands: /init, /context, /goal, /memory, /todos, /rewind, /tasks, /agents, /plan, /plan-todos, /mcp, /hooks, and /output-style, alongside your own /dir:name commands, /skill:name skills, /plugin:name plugin commands, and each connected server's /mcp__server__prompt prompts. Where a name matches a Claude command, these differ: /init creates AGENTS.md where Claude creates CLAUDE.md; /memory edit opens a memory file in your editor (pi's externalEditor setting, VISUAL or EDITOR); /tasks lists background subagent runs only, not background shells. /todos and /plan-todos have no Claude counterpart.
pi has no general permission system, so most of what Claude routes through a permission prompt maps to hard behavior here: allowed-tools restricts the turn's tool set instead of pre-approving calls, and a hook that times out on PreToolUse or UserPromptSubmit fails closed. A hook's permissionDecision: "ask" is the exception: it shows a confirm dialog and lets the call through when you approve (a headless run has no dialog, so it blocks). An argument-scoped grant in an agent's tools: gives the agent the whole tool, as in Claude, where the scope does not limit the agent either. Claude still runs each call through its permission flow; pi has no such flow, so the call runs.
Trust is the other place pi-code is deliberately stricter. Claude states that "a claude -p run never shows the trust dialog" and loads the project's hooks, MCP servers, agents, commands, skills and rules anyway. pi-code refuses instead: with no stored decision and no UI to ask, a headless run in a project you have not already trusted loads none of them. A repository would otherwise get to run its own hooks and MCP servers in any CI job that checks it out, with nobody present to decline.
CLAUDE.md itself needs no extension: pi loads CLAUDE.md / AGENTS.md context files natively (global + walking cwd to root). context-imports.ts adds what pi's loader lacks, the @import resolution and Claude's other memory locations, without re-injecting the base (see docs/claude-md.md). Setting CLAUDE_CONFIG_DIR relocates the entire home config scope (settings, commands, agents, skills, plugins, output styles, memory, and the user CLAUDE.md); a project's own .claude/ is a separate scope and is unaffected.
extensions/internal/ holds the shared modules pi's loader must not treat as extensions (each file's header says what it owns); only internal/ keeps them out of pi's extension scan.
Vendored bases (question, notify, status-line) come from pi's MIT example extensions (see LICENSE).
Development
npm install
npm run check # biome + strict tsc + knip + vitest with coverage floors, the whole gate
scripts/e2e-smoke.sh # headless deterministic smoke: wire payload against a dead-port model, no real model (also runs in CI)
scripts/e2e.sh # quick smoke of the real pi TUI via tmux (needs a working model)
scripts/e2e-full.sh # every README feature end to end, model turns included (5-15 min)
scripts/record-demos.sh # re-records demos/*.tape with vhs at low thinking
Extensions live in extensions/, tests in tests/. Install a local checkout with pi install ./pi-code, then /reload after edits. Development needs Node >=22.19.
Contributing
Issues and pull requests are welcome. See CONTRIBUTING.md for setup, the test and review conventions, and the release process, and the Code of Conduct for community expectations. Report security issues privately as described in SECURITY.md. Release notes are on the Releases page.
License
MIT.
Pertanyaan tentang pi-code MCP
Bagaimana cara menambahkan pi-code MCP ke Claude Code?
Jalankan claude mcp add pi-code -- npx -y pi-code di terminal Anda. Tambahkan --scope user agar tersedia di semua proyek.
Bagaimana cara menambahkan pi-code MCP ke Cursor?
Buka ~/.cursor/mcp.json dan tambahkan server di bawah mcpServers, menggunakan config Cursor yang ditunjukkan di bagian instalasi di atas.
Fitur apa saja yang ditambahkan pi-code ke pi agent?
pi-code menambahkan todo overlay, checkpoints, memory, web search, subagents, dan goals ke dalam pi coding agent.
Bagaimana pi-code menangani keamanan dan repository yang tidak terpercaya?
Resource proyek seperti MCP server dan hooks dianggap tidak terpercaya dan hanya akan dimuat setelah persetujuan pengguna. Dalam mode headless, proyek yang belum diputuskan tidak akan memuat apa pun.
Bisakah saya menggunakan konfigurasi Claude yang sudah ada dengan pi-code?
Ya, pi-code membaca konfigurasi .claude Anda yang sudah ada termasuk rules, commands, skills, hooks, output styles, MCP servers, dan agents.