Skip to content

jpfeiffe/agentcook

Repository files navigation

agentcook

Build multi-agent projects with Claude Code using opinionated orchestrator behavior, not just prompt templates.


What it is

agentcook is a CLAUDE.md + reference patterns that teach Claude how to build multi-agent software systems from a specification. There's no CLI, no pip install, no runtime to maintain. You open Claude Code in this directory, describe what you want, and it builds it.

The real value isn't code generation — it's encoded knowledge: tmux+worktree architecture, orchestrator loop patterns, dispatch models, state file conventions, pre-commit security setup, and orchestrator personality traits (curiosity, skepticism, human-in-the-loop gates, graduated autonomy).


Why this is different

Generated orchestrators aren't just task dispatchers. They include four behavioral layers that shape how work gets done:

Curiosity — After merging a PR: "What surprised me?" After completing a phase: "What assumptions haven't been tested?" When an agent fails: "Is this the agent's bug or my misunderstanding?"

Skepticism — Post-merge smoke checks are mandatory. Maker-checker pattern: audit_agent reviews, then red_agent attacks. "The agent said tests pass — let me verify."

Human gates — The orchestrator knows what decisions require a human: spending money, publishing releases, legal agreements, data handling. It creates labeled issues with consequence previews: "If approved: X happens. If rejected: Y instead."

Graduated autonomy — Code formatting? Agent decides. Architecture within a component? Agent decides + documents. External API design? Orchestrator evaluates. Infrastructure spending? Human decides. The right level of oversight for each decision type.


Quickstart

cd /path/to/agentcook

# Option A: Point Claude at an existing SPEC.md
claude "Read my spec at ~/projects/myapp/SPEC.md and bootstrap a multi-agent project at ~/projects/myapp"

# Option B: Describe your project
claude "I want to build a multi-agent system for a recipe recommendation app. React Native frontend, Python backend, PostgreSQL. Create it at ~/projects/recipebot"

# Option C: Use the spec template
claude "Help me write a SPEC.md for my project, then generate it"

What you get

A complete, runnable multi-agent project:

myapp/
├── run.sh                     # Start the orchestrator loop
├── scripts/
│   ├── setup.sh               # Dependency + env checker
│   ├── run_orchestrator.sh    # Single orchestrator cycle
│   ├── run_agent.sh           # Agent lifecycle: worktree → claude → PR
│   └── dispatch_agent.sh      # tmux window + timeout watchdog
├── agents/
│   ├── orchestrator.md        # Lead agent prompt (adapted to your domain)
│   └── <agent>.md             # One prompt per agent role
├── SPEC.md                    # Your specification (source of truth)
├── PROGRESS.md                # Phase tracker (orchestrator maintains)
├── OPEN_QUESTIONS.md          # Unresolved decisions
├── CLAUDE.md                  # Dev guide
├── .pre-commit-config.yaml    # Security hooks (gitleaks, shellcheck, etc.)
└── .gitleaks.toml             # Secret detection config

How it works

GitHub Issues  ←  work queue (source of truth)
     │
HOST  (run.sh — while-true loop, sleep between cycles)
     │
     └── tmux session
           │
           ├── Orchestrator cycle (foreground — reviews, dispatches, merges)
           │
           ├── [window: agent_1]   feature branch → PR
           ├── [window: agent_2]   feature branch → PR
           └── ...

Key properties:

  • The orchestrator is the only infinite loop — agents run once and exit
  • GitHub Issues (or ISSUES.md) are the work queue — agents comment as they work
  • Each agent gets an isolated git worktree — no merge conflicts
  • Every agent has an external timeout — no hung sessions
  • Pre-commit hooks catch secrets, merge conflicts, and shell bugs

Writing a spec

See SPEC_TEMPLATE.md for the full format. At minimum:

# Project Name

What you're building and who it's for.

## Phases
- Phase 1: Core functionality
- Phase 2: Polish and release

## Tech stack
- Language, framework, database

## Agents needed (optional — Claude can infer these)
- agent_one: what it does
- agent_two: what it does

The richer the spec, the better the generated agents. But a minimal spec works — Claude fills in the gaps.


Modes

GitHub mode (default) — Uses GitHub Issues as the work queue, PRs as delivery. Requires gh CLI.

Local mode — Uses ISSUES.md as the work queue, local branches as delivery. No network needed.


Requirements

  • claude CLI installed and authenticated
  • git, tmux
  • gh CLI (GitHub mode only)
  • That's it. No Python, no Node, no package manager.

Examples

  • examples/neutral-saas-spec-excerpt.md — neutral B2B SaaS example for first-time visitors
  • examples/fooapp/SPEC.md — minimal task management app
  • examples/aegis-spec-excerpt.md — real trust/security project excerpt
  • examples/bishopbuddy-spec-excerpt.md — real consumer product excerpt

Archive

The original template-based scaffolding tool is preserved in archive/ for reference. The current approach (prompt-as-package) replaces it — Claude reads the patterns directly and adapts them per project, rather than filling in placeholder templates.

About

No description, website, or topics provided.

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors