Named presets silently ignore leftSegments/rightSegments - the nerd preset's baked arrays were what we saw, and the configured arrays were dead. preset: custom with explicit arrays: chip (right) = token_in, token_out, cost, context_pct, time_spent; strip (left) = session_name, vim, mode, hostname, model, path, git (branch text off - worktree branches are autogenerated; dirty badges kept), pr. Cut tok/s duplicate, clock, cache trio, context_total, subagents, session hash. Composer shape stays claude after live box/band/rule trials. models.yml display name frank-archon drops the (dankserver) suffix; id untouched. Docs: pi/statusline.md records the preset-vs-custom trap, shape->segment routing, and the context-meter truth.
2.8 KiB
Pi Configuration
Documentation for the pi coding agent installation on ](../system/index.md). Everything here is configured locally on the workstation; the LLM providers are the two llama.cpp servers (Dankserver, Dankclaw).
Configuration Files
- Pi Settings System (settings.json) — Main
settings.jsonreference. Providers, models, packages, subagent overrides. - Pi Models Configuration —
models.jsonreference. Provider definitions, model specs, endpoints. - OMP Status Line Customization — How presets, composer shapes, and segment arrays actually interact; the fleet's tuned bar.
Extensions
- Pi Packages — Installed npm packages that extend pi functionality.
- Pi Peon — CESP/OpenPeon sound-pack player for lifecycle events.
- Pi Web Access — Web search, URL fetching, GitHub cloning, PDF extraction, video understanding.
- Pi Browser Use — Browser automation extension wrapping chrome-devtools-mcp with a
browser_prefix. - Pi Permission System — Permission enforcement and policy configuration for subagent extensions.
Skills
- Pi Skills — Installed agent skills. Symlinked from
~/.agents/skills/and~/.pi/agent/skills/.
Subagent Architecture
- Pi Subagents — Core subagent delegation system. Chains, parallel execution, TUI clarification.
Architecture
graph TD
A[Pi TUI] --> B[settings.json]
A --> C[models.json]
B --> D[Default Provider: llamacpp]
B --> E[Default Model: frank-default-large]
B --> F[Packages]
B --> G[Subagent Overrides: local frank models]
F --> H[pi-peon]
F --> I[pi-web-access]
F --> J[pi-browser-use]
F --> K[pi-permission-system]
G --> L[Small: scout, researcher]
G --> M[Large: planner, worker, reviewer, oracle, context-builder]
L --> N[dankserver 192.168.0.235:7770]
M --> O[dankclaw 192.168.0.143:7770]
Note on the Live Default
In the pi era, models.json defined the live provider set: the main session
provider was llamacpp with default model frank-default-large (Dankclaw);
subagents defaulted to frank-default-small (Dankserver); larger roles mapped
to frank-default-large. Two scopes owned settings: the user
~/.pi/settings.json (main → Dankclaw/large) and the project
/home/dank/.pi/agent/settings.json (main → Dankserver/small); when they
disagreed, the project-scope file won for the agent's own main session.
Note: This documentation describes the pi-coding-agent harness (config format, packages, skill system) as general reference material. The live harness is OMP at
~/.omp/; OMP-managed skills live in~/.omp/agent/managed-skills/.