Why OpenPAUL?
๐ Loop Integrity
Every plan closes with UNIFY. No orphan plans. Every unit of work gets reconciled.
๐ฏ In-Session Context
Execution stays in-session. Subagents reserved for discovery. Better quality, less cleanup.
โ Acceptance-Driven
Define done before starting. BDD format: Given/When/Then for every feature.
Quick Start
Installation
Add to your opencode.json:
{
"plugins": {
"npm": ["openpaul"]
}
}
The Core Loop
PLAN โโโถ APPLY โโโถ UNIFY
Your First Loop
# Initialize OpenPAUL
/openpaul:init
# Create a plan
/openpaul:plan
# Review and approve, then execute
/openpaul:apply
# Close the loop (required!)
/openpaul:unify
Using with OpenCARL (Recommended)
OpenCARL is a dynamic rule injection system that auto-enforces OpenPAUL workflow discipline. Together, they create a powerful AI-assisted development experience.
Install Both
{
"plugins": {
"npm": ["openpaul", "@krisgray/opencarl"]
}
}
What OpenCARL Enforces
| Rule | What It Does |
|---|---|
| Loop Enforcement | No skipping UNIFY. Every plan needs closure. |
| Boundary Protection | DO NOT CHANGE sections are sacred. |
| AC-First Development | Acceptance criteria defined before tasks. |
| Verification Required | Every task needs a verify step. |
| State Consistency | STATE.md reflects reality after each phase. |
Combined Workflow
# OpenCARL auto-loads OpenPAUL rules when it detects .openpaul/
/openpaul:init
โ Created .openpaul/ structure
/openpaul:plan
โ Created PLAN.md with AC, tasks, boundaries
/openpaul:apply
โ Task 1/3: Complete
โ Task 2/3: Complete
โ Task 3/3: Complete
/openpaul:unify
โ Created SUMMARY.md
โ Updated STATE.md
โ Loop complete
Essential Commands
Core Loop
/openpaul:initโ Initialize project/openpaul:planโ Create plan/openpaul:applyโ Execute plan/openpaul:unifyโ Close loop
Session
/openpaul:progressโ Status + next action/openpaul:pauseโ Create handoff/openpaul:resumeโ Restore context/openpaul:helpโ Full reference