
Pi Agent
FreeA terminal coding harness for building and operating Pi.
Free · Opens the source repo
What Pi Agent does
Pi Agent is designed for developers and designers who want to leverage the Pi terminal coding harness for various tasks. It provides a comprehensive framework for installing, configuring, and extending Pi through TypeScript. Users can create custom skills, extensions, and packages, as well as manage environment variables and settings. The skill supports multiple integration modes, including RPC and JSON event streams, allowing for flexible interaction with Pi and its ecosystem.
The skill is particularly useful for those looking to build upon Pi's capabilities. It offers a structured approach to developing custom tools, managing local models, and integrating with external services. Users can easily set up and authenticate providers, configure API keys, and utilize various cloud services. The documentation includes detailed references for day-to-day usage, extension development, and security practices, ensuring that users can effectively navigate the complexities of the Pi environment.
For developers working on AI-related projects, Pi Agent facilitates the integration of local models and the llama.cpp router, enabling users to run models efficiently. The skill also includes features for creating terminal UI components and handling sessions, making it suitable for building interactive applications. With its focus on modularity and extensibility, Pi Agent is an ideal choice for those looking to enhance their coding workflows and create custom solutions within the Pi framework.
When to use it
Use Pi Agent when you need to build custom extensions or skills for Pi, or when you want to manage and configure Pi environments effectively.
When not to use it
This skill may not be suitable for users looking for a simple, standalone coding tool without the need for extensive customization or integration.
What you can build with it
Building Custom Skills
Developers can create tailored skills for Pi, enhancing its functionality to meet specific project needs.
Integrating External Services
Use Pi Agent to set up and authenticate connections to various cloud providers and APIs, streamlining workflows.
Creating Terminal UI Components
Design interactive terminal interfaces using the TUI components supported by Pi Agent, improving user experience.
How to install Pi Agent
View source1. Install with the skills CLI
npx skills add k-dense-ai/scientific-agent-skills/pi-agent --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by k-dense-aiPi Agent
Use this skill when the user wants to operate Pi or build on top of Pi. Pi is a minimal terminal coding harness extended through TypeScript extensions, skills, prompt templates, themes, packages, custom models/providers, SDK integrations, RPC mode, JSON event streams, and TUI components.
First Decision
Pick the reference before answering or coding:
| User intent | Read |
|---|---|
| What Pi is, docs map, install methods | references/overview.md |
| Install, authenticate, first run | references/quickstart.md |
| Day-to-day CLI usage, commands, modes, flags, project trust | references/usage.md |
| Provider auth, API keys, cloud provider setup | references/providers.md |
| Custom model entries, local models, proxies, compat flags | references/models.md |
Local llama.cpp router, /llama, model download/load | references/llama-cpp.md |
| Settings keys and defaults | references/settings.md |
PI_* and other environment variables | references/environment-variables.md |
| Extension development, custom tools, events, commands | references/extensions.md |
| Custom provider implementation, OAuth, custom streaming | references/custom-provider.md |
| Embed Pi in Node/TypeScript | references/sdk.md |
| Integrate from another process/language | references/rpc.md |
| Consume JSONL event output | references/json.md |
| Build terminal UI components | references/tui.md |
| Package extensions/skills/prompts/themes | references/packages.md |
| Delegate to subagents, chains, parallel runs, orchestration | references/pi-subagents.md |
| Connect MCP servers, MCP tool discovery/config | references/pi-mcp-adapter.md |
| Interactive interview forms, structured user input | references/pi-interview.md |
| Web search, URL/PDF/repo fetching, video understanding | references/pi-web-access.md |
| Author Pi skills | references/skills.md |
| Prompt templates or themes | references/prompt-templates.md, references/themes.md |
| Sessions, branching, compaction, parsing JSONL | references/sessions.md, references/compaction.md, references/session-format.md |
| Security, sandboxing, trust | references/security.md, references/containerization.md |
| Keyboard or terminal issues | references/keybindings.md, references/terminal-setup.md, references/tmux.md, references/windows.md, references/termux.md, references/shell-aliases.md |
| Working on Pi itself | references/development.md |
Build-On-Pi Defaults
Prefer the SDK for Node/TypeScript apps that need type safety, direct state access, in-process custom tools/extensions, or custom resource loading. Use createAgentSession() for a single stable session; use createAgentSessionRuntime() when the app must replace sessions through new/resume/fork/clone/import flows. Auth and model lookup go through ModelRuntime.create().
Prefer RPC mode when the client is not Node.js, needs process isolation, or wants a language-agnostic JSONL protocol. Start with pi --mode rpc --no-session for stateless subprocess integration, then add session flags when persistence matters. Split records on \n only — Node readline is not protocol-compliant.
Prefer JSON mode for one-shot command-line pipelines that only need streamed events, not bidirectional control: pi --mode json "prompt".
Use extensions for Pi-native behavior: custom tools, command handlers, event hooks, provider registration, custom compaction, path protection, project trust policy, UI prompts, widgets, and TUI components.
Use packages when sharing or installing reusable extensions, skills, prompt templates, or themes across machines or projects.
Safety Defaults
Pi is local and not sandboxed by default. Treat extensions, packages, skills, shell commands, and project-local .pi resources as code with the permissions of the Pi process. Project trust only guards which project inputs load — it is not a sandbox. For untrusted repos or unattended automation, isolate with Docker, OpenShell, Gondolin, a VM, or a remote sandbox.
Do not store secrets in project files. Prefer env vars, ~/.pi/agent/auth.json, OAuth via /login, or command-backed secret lookups in models.json/provider config.
Common Commands
npm install -g --ignore-scripts @earendil-works/pi-coding-agent
pi
pi -p "Summarize this codebase"
pi --mode json "List files"
pi --mode rpc --no-session
pi --provider anthropic --model claude-sonnet-4-5
pi --model sonnet:high "Solve this complex problem"
pi --tools read,grep,find,ls -p "Review this repository"
pi install npm:pi-subagents
pi update --all
Source Coverage
These references summarize the Pi documentation at https://pi.dev/docs/latest and every docs page found under it as of this skill version, plus the package pages for pi-subagents, pi-mcp-adapter, pi-interview, and pi-web-access at https://pi.dev/packages/. Package details were cross-checked against the published npm READMEs (pi-web-access 0.14.0, pi-mcp-adapter 2.15.0, pi-subagents 0.37.0, pi-interview 0.9.0). When exact API behavior matters, prefer the cited reference page and inspect installed TypeScript definitions under node_modules/@earendil-works/pi-coding-agent/dist/ and node_modules/@earendil-works/pi-ai/dist/.
Frequently asked questions about Pi Agent
Similar skills
WinMD API Search
Easily find and explore Windows desktop APIs.
WebMCPify
Transform any web app into an agent-ready platform.
Phoenix Tracing
Instrument LLM applications with OpenInference tracing.
Foundry Hosted Agent CopilotKit
Guidance for developing agentic web apps on Azure.
Power Automate Foundation
Connect AI agents to Power Automate seamlessly.
Power Automate Flow Builder
Efficiently build and deploy Power Automate flows programmatically.
