Pi Coding Agent
Composable terminal coding harness with skills, templates, extensions, and packages.
Core Components
- Skills: Directory-based capability packages with instructions and optional tools
- Templates: Markdown snippets that expand into full prompts
- Extensions: TypeScript modules adding tools, commands, events, and TUI features
- Packages: Bundle resources for sharing via npm or git
- Models: Configure AI providers via
models.json
Loading Locations
| Resource | Global | Project | Package |
|---|---|---|---|
| Extensions | ~/.pi/agent/extensions/ | .pi/extensions/ | package.json |
| Skills | ~/.pi/agent/skills/ | .pi/skills/ | package.json |
| Templates | ~/.pi/agent/prompts/ | .pi/prompts/ | package.json |
| Settings | ~/.pi/agent/settings.json | .pi/settings.json | N/A |
Disable with --no-extensions, --no-skills, --no-prompt-templates.
Session Management
Commands: /new, /resume, /tree, /export, /share, /compact
See Sessions Reference for details.
Model Management
/model- Switch modelsCtrl+L- Cycle through favoritesCtrl+P- Show favorites list
Four Modes
Interactive (default): Full TUI experience Print: Simple text output JSON: Event stream for APIs RPC: JSON-RPC protocol SDK: Embed in applications
pi --mode json # JSON mode
pi --mode rpc # RPC mode
pi --mode sdk # SDK mode
Project Configuration
AGENTS.md
Project instructions loaded at startup from ~/.pi/agent/AGENTS.md, parent directories, and current directory.
SYSTEM.md
Replace system prompt per-project at ~/.pi/agent/SYSTEM.md.
Settings
Configure resources in ~/.pi/agent/settings.json or .pi/settings.json.
Package Installation
# Install from npm
pi install npm:@foo/bar@1.2.3
# Install from git
pi install git:github.com/user/repo@v1
# Install to project
pi install -l npm:@foo/bar
# Remove package
pi remove npm:@foo/bar
Model Configuration
Create ~/.pi/agent/models.json for custom providers:
{
"providers": {
"ollama": {
"baseUrl": "http://localhost:11434/v1",
"api": "openai-completions",
"models": [
{
"id": "llama-3.1-8b",
"name": "Llama 3.1 8B (Local)",
"contextWindow": 128000,
"maxTokens": 32000
}
]
}
}
}
Detailed Documentation
- Extensions: See extensions.md
- Skills: See skills.md
- Templates: See templates.md
- Packages: See packages.md
- Sessions: See sessions.md
- Configuration: See config.md
