How itayinbarr/little-coder works
little-coder is a pi-based coding agent adapted for small local models. A user launches it in a project directory; the launcher selects a model and explicitly loads the bundled extensions before starting pi. The agent then researches, plans, or edits through pi’s tools, with extensions adding orchestration, safety, and workflow features. README capabilities guide which extension branches are shown; most extension internals were not sampled, so uncertain internal calls are omitted.
Main entry points: little-coder.mjs Launcher · default-model.mjs Default selection · phase-model/index.ts Per-phase models · llama-cpp-provider/index.ts llama.cpp provider
Components 23
Launch and models
- Launcher
bin/little-coder.mjs - Model config
models.json - Default selection
bin/default-model.mjs - Per-phase models
.pi/extensions/phase-model/index.ts - llama.cpp provider
.pi/extensions/llama-cpp-provider/index.ts
Agent workflows
- Plan mode
.pi/extensions/plan-mode/index.ts - Deep research
.pi/extensions/deep-research/index.ts - Sub-coders
.pi/extensions/subagent/index.ts - Browser
.pi/extensions/browser/index.ts
Tools and safety
- Permission gate
.pi/extensions/permission-gate/index.ts - Read-before-edit
.pi/extensions/read-guard/index.ts - Background shell
.pi/extensions/bg-shell/index.ts - Evidence handling
.pi/extensions/evidence/index.ts - Quality monitor
.pi/extensions/quality-monitor/index.ts
Context and sessions
- Skill cards
skills - Tool skill selection
.pi/extensions/skill-inject/index.ts - Project context
.pi/extensions/project-context/index.ts - Prompt history
.pi/extensions/prompt-history/index.ts
Runtime environment
- Pi runtime
- Project files
- Model provider
- Pi sessions
Other components
- User
Connections 25
- User → Launcher: starts
- Launcher → Model config: reads defaults
- Launcher → Default selection: resolves model
- Launcher → Pi runtime: starts with extensions
- Default selection → Pi runtime: selects model
- Pi runtime → Model provider: requests inference
- Pi runtime → Pi sessions: reads and writes
- Pi runtime → Project files: uses tools on
- Pi runtime → Plan mode: dispatches
- Pi runtime → Deep research: dispatches
- Pi runtime → Browser: dispatches
- Pi runtime → Permission gate: checks actions
- Pi runtime → Read-before-edit: checks edits
- Pi runtime → Background shell: dispatches
- Pi runtime → Tool skill selection: selects skills
- Tool skill selection → Skill cards: injects cards
- Pi runtime → Project context: loads context
- Pi runtime → Prompt history: recalls prompts
- Pi runtime → Per-phase models: selects by phase
- Per-phase models → Model provider: routes inference
- Pi runtime → llama.cpp provider: uses provider
- llama.cpp provider → Model provider: probes context
- Pi runtime → Evidence handling: dispatches
- Pi runtime → Quality monitor: dispatches
- Deep research → Sub-coders: fans out research