A minimal terminal coding agent harness.
Sub-agents, hashline edits, a permission gate, and MCP without context death — in a ~12 MB binary that stays out of your way.
$curl -fsSL https://raw.githubusercontent.com/pulseaiclub/phi/main/scripts/install.sh | bash
>irm https://raw.githubusercontent.com/pulseaiclub/phi/main/scripts/install.ps1 | iex
$git clone git@github.com:pulseaiclub/phi.git && cd phi
$make install
Why phi
A harness that treats your context budget as the scarce resource it is.
Sub-agents
Spawn isolated jobs and watch the run unfold — without stuffing every turn into the parent context.
Hashline edits
Edit by @file#TAG and LINE#HASH anchors instead of rewriting whole files; stale anchors are rejected.
Permission gate
Gate or Ask before destructive tools fire. Safety is not optional when an agent can touch your tree.
MCP without context death
Configure as many MCP servers as you want; tool schemas never enter the model prompt.
Any model
OpenAI-compatible or Anthropic — no vendor lock-in, switch models at runtime.
Skills & extensions
Package reusable procedures as SKILL.md; extend phi with Go — tools, commands, and event handlers loaded by yaegi.
Footprint
Cheap to run, cheap to hack on.
~12 MBrelease binary
~21 MBidle RSS per session
~40 mstime to first frame
6direct module deps
~22k LOCGo source, 32 packages
0Node / Electron / Python runtimes