A coding agent that manages its own context.
Versioning: This fork uses PVP (A.B.C.D) — A.B is major, C is minor, D is patch.
- Handles: Large outputs become references, not context bloat. Surgical access via
handle_lines,handle_grep, etc. - Visible Reasoning: Model sees its own chain of thought from prior turns. Sharper, more consistent.
- Context as Program: History of manipulations is a DSL. Contractions are invertible. Nothing is lost.
- Codata I/O: Tool results are observations, not values. Materialize what you need.
npm install
npm run build
./builds/punkin| Package | Description |
|---|---|
| @punkin-pi/ai | Multi-provider LLM API |
| @punkin-pi/agent | Agent runtime with tool calling |
| @punkin-pi/coding-agent | Interactive coding agent CLI |
| @punkin-pi/tui | Terminal UI library |
| @punkin-pi/web-ui | Web components for AI chat |
| @punkin-pi/mom | Slack bot delegation |
| @punkin-pi/pods | vLLM deployment CLI |
See INDEX.md for full documentation map.
- specs/ — Technical specifications
- docs/ — General documentation
- builds/docs/ — User-facing docs (extensions, themes, skills)
User config lives in ~/.agent/ (priority) or ~/.punkin/agent/:
AGENTS.mdoragent.md— Agent instructionsskills/— Skill definitionssettings.toml— User settings
npm run build # Build all packages
npm run check # Lint, format, type check
./build-local.sh # Build standalone binaryUse --print (-p) for a non-interactive single-turn run — no TUI, exits immediately after the response. Handy for quick stack verification:
node packages/coding-agent/dist/cli.js --print "say hi in exactly 5 words"
# or after installing:
punkin --print "say hi in exactly 5 words"The full stack runs (settings load, prompt templates + hashes.toml, turn brackets, model call) and output goes straight to stdout. Fast feedback loop for testing config changes.
MIT