Skip to content

Introduction

pi is the terminal-native coding agent framework. It runs in your terminal, connects to any LLM provider, and gives you full control over how the agent behaves through extensions, themes, hooks, skills, and commands.

tallow is an opinionated coding agent built on pi. It bundles 31 extensions, 7 agent profiles, 34 themes, and a skill system into a single install. No manual extension management — everything ships together, ready to use.

Every feature is an extension. They’re organized by category:

CategoryExtensionsExamples
Tools (15)Core coding tools and agent capabilitiesbash, edit, read, write, cd, web-fetch, subagent, teams, tasks, plan-mode, LSP, MCP adapter
UI & Display (4)Terminal rendering and statuscustom footer, git status, tool display, minimal skill display
Commands (2)Prompt/command systemcommand-prompt, command-expansion
Utilities (5)Helper featurescheatsheet, context-usage, init, show-system-prompt, read-tool-enhanced
Integrations (1)External system hookslifecycle hooks
Language Support (1)IDE-like featuresLSP (TypeScript, Python, Rust, Swift, PHP)
Context (1)Instruction loadingcontext-files (CLAUDE.md + AGENTS.md)
Aliases (1)Convenience shortcuts/clear → /new

Each extension has an extension.json manifest with a category property that drives the documentation sidebar and the installer’s grouping. See Creating Extensions for the full manifest spec.

Built-in agent profiles, each with a specialized role and system prompt. Invoke any agent as a /slash command:

AgentPurpose
/architectHigh-level architecture — plans before coding
/debugMethodical root cause analysis
/plannerRead-only planning from context and requirements
/refactorImprove code structure without changing behavior
/reviewerCode review for quality and security
/scoutFast codebase recon for handoff to other agents
/workerGeneral-purpose agent with full capabilities

Some agents restrict their tool access (e.g. planner and reviewer are read-only) to enforce their role.

From Tokyo Night to Synthwave 84, every color in the TUI — borders, backgrounds, accents, tool status indicators — is token-driven and overridable. Create your own as a single JSON file.

Skills are markdown-based instruction sets that the model loads on demand when a task matches the skill’s description. tallow supports skills from the tallow-plugins package system and from your own ~/.tallow/skills/ or .tallow/skills/ directories.

Skills have frontmatter metadata including name, description, optional allowed-tools, and optional metadata (with fields like author, version, argument-hint).

  • Batteries included — 31 extensions loaded automatically. No separate install step.
  • Extensible from the ground up — features are extensions, not hard-coded. Don’t like how bash output renders? Replace the extension. Want a custom status bar? Write one.
  • Multi-model — run Claude, GPT-4, Gemini, or any OpenAI-compatible model from the same interface.
  • Multi-agent — spawn parallel agents with different models, roles, and tasks. Coordinate via shared task boards.
  • Themeable — 34 built-in themes, every color token overridable. Your terminal, your palette.
  • Packages — a plugin system for distributing commands, agents, skills, and hooks. Local paths only — remote repositories are not yet supported.
  • Commands and prompts are interchangeable — the commands/ and prompts/ directories are treated as synonyms. Files from either directory are merged into a single set, deduplicated by name. Put a markdown file in commands/ or prompts/ and it becomes a /slash command.