← all repositories
ChristopherKahler/paul

Closing the loop on AI-assisted development drift

PAUL enforces a Plan-Apply-Unify loop inside Claude Code to prevent context rot, orphaned plans, and unverified output.

1.1k stars JavaScript Coding AssistantsLLMOps · EvalAgents
paul
Not currently ranked — collecting fresh signals.
star history

What it does

PAUL is a command framework that layers project-management discipline over Claude Code. It prompts you to define acceptance criteria in Given/When/Then format before any work starts, then tracks execution through a mandatory three-phase loop: Plan, Apply, Unify. State persists across sessions in a local .paul/ directory, so resuming work means reading STATE.md rather than reconstructing context from scratch.

The interesting bit

The framework deliberately resists the usual subagent sprawl: implementation stays in-session where context is richest, while subagents are relegated to research and discovery. A forced UNIFY phase reconciles what was planned against what actually happened, producing a SUMMARY.md and updated state—no orphan plans allowed. It is essentially an opinionated workflow encoded as slash commands and markdown artifacts.

Key highlights

  • Scope-adaptive planning that auto-routes work as quick-fix, standard, or complex ceremonies
  • Execute/Qualify loop with escalation statuses like DONE_WITH_CONCERNS and BLOCKED instead of naive pass/fail
  • Anti-rationalization enforcement to prevent false completion claims
  • Optional BASE v2 integration turns PAUL projects into queryable nodes in a workspace knowledge graph
  • Works for non-code projects—marketing campaigns, workflows, and automations are first-class citizens

Verdict

Builders who treat Claude Code as a daily shipping partner and are tired of debugging AI output should look here. If you prefer ad-hoc prompting without acceptance criteria or session bookkeeping, this will feel like bureaucratic overhead.

Frequently asked

What is ChristopherKahler/paul?
PAUL enforces a Plan-Apply-Unify loop inside Claude Code to prevent context rot, orphaned plans, and unverified output.
Is paul open source?
Yes — ChristopherKahler/paul is open source, released under the MIT license.
What language is paul written in?
ChristopherKahler/paul is primarily written in JavaScript.
How popular is paul?
ChristopherKahler/paul has 1.1k stars on GitHub.
Where can I find paul?
ChristopherKahler/paul is on GitHub at https://github.com/ChristopherKahler/paul.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.