A plugin for Claude Code that treats it as an Operating System. 15 specialized agents, hierarchical planning (Mission β Initiative β Feature β Story β Task), forensic reasoning traces, conflict detection between parallel work, self-healing safety gates, per-agent MCP security, smart flow selection, and multi-agent orchestration.
Two entry points, same natural-language pattern. /run <task> for task execution (5-phase TDD with agents). /aura-frog:plan <verb> [args] for project planning (T0βT4 hierarchical tree). Both accept natural language, route through skills, and share state via the runβfeature bridge. You never lose decisions; every Claude tool call leaves a trace; conflicts are caught before silent overwrites.
Install in 30 seconds Β· v3.7.4 highlights Β· Full benefits guide β
v3.7.4 is a documentation cleanup release β no new features, no runtime behaviour change. Eliminates 122 stale command references that accumulated during the v3.6 β v3.7 transition, slims the README, and ships two new CI gates that prevent doc rot from re-entering main.
| Change | What it means |
|---|---|
| CI guard against stale syntax | New aura-frog/scripts/ci/validate-docs-syntax.sh ships an 18-entry BLOCKED_PATTERNS list covering every pre-v3.7 verb form (the old workflow:*-prefixed lifecycle verbs, the old agent: / bugfix: / learn: / project: namespaces, and the removed phase-hook MD paths). Any of these re-entering docs/, README.md, or MIGRATION_TO_V3.7.md blocks the commit. Wired into the validate job in .github/workflows/ci.yml. The full pattern list lives in the script header β single source of truth. |
| Doc maturity infrastructure | Every docs/**/*.md (except docs/showcase/, docs/specs/) now carries last_aligned_with + status + audience frontmatter. aura-frog/scripts/ci/validate-doc-maturity.sh checks staleness (status=current docs warn at diff > 2 minor versions) and shape. 9 pre-v3.6 docs/guides/* flagged needs_review for contributor attention (non-blocking). |
| Onboarding fix | docs/getting-started/GET_STARTED.md rewritten 472L β 148L. New docs/getting-started/README.md is the single ordered entry index (QUICKSTART β GET_STARTED β FIRST_WORKFLOW_TUTORIAL). Supplementary install paths extracted to new docs/operations/INSTALLATION.md. |
| Stale-syntax sweep | 122 stale references across 12 files cleaned. Pre-v3.7 docs/guides/USAGE_GUIDE.md archived to docs/marketing/USAGE_GUIDE.pre-v3.7.md. Pre-v3.0 docs/architecture/overview.md archived to docs/marketing/overview.pre-v3.0.md. docs/reference/TESTING_GUIDE.md syntax refresh (31 hits) + frontmatter. |
| README slim | 1294L β 706L (45% reduction). 8 Pillars deep-dives collapsed to per-pillar paragraphs linking to BENEFITS.md Part 9. Command Reference compressed to a single 8-row table. Optional-install <details> blocks moved to INSTALLATION.md. |
| AI vs human boundary | All 56 SKILL.md files + 71 rule files now carry an AI-consumed reference banner pointing readers at docs/architecture/HIERARCHICAL_PLANNING.md / docs/getting-started/. docs/README.md declares docs/ as canonical with an 8-entry source-of-truth table. |
| Broader audit tool | New scripts/audit/stale-cmd-check.sh for contributors β 3-pass detection (verb syntax Β· /aura-frog:* namespaced Β· backticked bare /word). Knows about Claude Code built-ins (/clear, /compact, /plugin, β¦). Idempotent. |
Zero runtime change. No new agents, no new skills, no hook changes. The pre-v3.7 verb syntax has been gone since v3.7.0 β these are exclusively doc fixes. CI now prevents the same drift from recurring.
v3.7.3 highlights (still shipped β plan relocation + run linking)
| Change | What it means |
|---|---|
Storage moves to .claude/plans/ |
Plan tree now lives next to runs (.claude/logs/runs/) instead of in a separate .aura/ directory. Resolution order: --plans-dir arg β $AF_PLANS_DIR env β .claude/plans/ (default) β .aura/plans/ (legacy fallback, removal v4.0). |
| Every node is a folder | T0βT4 each lives in {ID}_{kebab-slug}/ containing its <tier>.md spec. Tickets used as ID prefix when attached; otherwise auto-minted FEAT-N / STORY-NNNN / TASK-NNNNN. |
| Co-located aux files | <node>/checkpoints/{ISO}.json and <task>/trace.jsonl live INSIDE the node folder. Archive consolidated to archive/{ID}_{slug}/{summary.md, original/}. |
| Run β feature linking (bidirectional) | run-state.json gains feature_id + feature_slug + anchor.task_id. Feature.md gains a ## Runs table; scripts/plans/link-run.sh is the single writer. |
New /run prefixes |
/run feature: FEAT-A <task> anchors a new run; /run resume FEAT-A lists runs and prompts. Existing /run task: β¦ and /run project: β¦ unchanged. |
v3.7.2 highlights (still shipped β plan consolidation + /run escalation)
| System | What changed | Why it matters |
|---|---|---|
| Plan consolidation | /aura-frog:plan <verb> [args] β one command, 11 verbs. Routes via plan-orchestrator skill. |
10 legacy /aura-frog:plan-* aliases preserved (soft-deprecated v3.7.2 β warning v4.0 β removed v5.0). |
| 9 backing scripts | scripts/plans/{expand,next,freeze,thaw,archive,conflicts,replan,promote,undo}-node.sh. |
Implementation that matched the docs. |
| Bare-word activation | Prompts β€5 words starting with a plan verb route to /aura-frog:plan. |
Opt-out: AF_BARE_WORD_ROUTER_DISABLED=true. |
| /run escalation | At weight β₯ 3 without a plan, 3-option prompt: plan / deep / details. |
Opt-out: AF_ESCALATION_DISABLED=true. |
v3.7.0 baseline (still shipped β 8 Pillars below)
| System | Opt-in via | What it solves |
|---|---|---|
| Hierarchical planning | /aura-frog:plan |
Plans persist across sessions; T0-T4 schema; forensic decision audit at .claude/plans/history.jsonl |
| Reasoning trace + grounding | /aura-frog:trace |
Every output_claim is grounded in a prior file_read; hallucinations flagged with grounded: false |
| Conflict detection (L1+L2) | /aura-frog:plan conflicts check |
File + function overlap between parallel work; freeze cascade; auto-thaw on compatible blocker |
| Memory tier + session reset | /aura-frog:reset-session |
T2 done distills into permanent_memory.md; clean session restart preserves wisdom |
| Self-healing + MCP security | /aura-frog:heal + /aura-frog:mcp |
F2/F3 patch proposals (NEVER auto-apply); per-agent allowlists + audit + rate limits |
You open Claude Code. You type a prompt. Claude writes code. You hope it works.
No structure. No tests. No quality gates. Every session starts from scratch. Every complex feature turns into prompt spaghetti.
You're the project manager, QA lead, and architect β all while trying to code.
Aura Frog treats Claude Code as an Operating System β Claude is the kernel, agents are processes, and the context window is managed RAM. You describe the task. Aura Frog classifies complexity, picks the right flow (direct edit Β· bugfix TDD Β· full 5-phase), dispatches the right agent, and compresses context automatically so you never lose decisions.
Right effort for every task. You only approve when it matters (0 gates for typos, up to 2 for architecture).
flowchart TB
User([π€ User prompt]):::user --> CC[Claude Code CLI]:::cc
CC -->|every message| AD[π agent-detector skill<br/>model: haiku Β· auto-invoke]:::skill
AD --> Cx{Complexity<br/>detected?}:::gate
Cx -->|Quick<br/>1 file / clear scope| Direct[βοΈ Direct edit<br/>no workflow]:::quick
Cx -->|Standard<br/>2-5 files / feature| SingleAgent[π Single agent<br/>agent-detector picks one]:::std
Cx -->|Deep<br/>6+ files / architecture| RO[π― run-orchestrator skill<br/>5-phase TDD]:::deep
RO --> P1[π P1: Understand + Design<br/>architect]:::phase
P1 --> G1{{β Approve?}}:::gate
G1 -->|approve| P2[π§ͺ P2: Test RED<br/>tester writes failing tests]:::phase
P2 --> P3[βοΈ P3: Build GREEN<br/>architect/frontend/mobile]:::phase
P3 --> G2{{β Approve?}}:::gate
G2 -->|approve| P4[π P4: Refactor + Review<br/>security + tester NOT builder]:::phase
P4 --> P5[π¦ P5: Finalize<br/>lead β docs + commit]:::phase
P5 --> Done([β
Production-ready]):::done
SingleAgent --> Done
Direct --> Done
classDef user fill:#f59e0b,stroke:#b45309,stroke-width:2px,color:#000000
classDef cc fill:#6366f1,stroke:#3730a3,stroke-width:2px,color:#ffffff
classDef skill fill:#ec4899,stroke:#9d174d,stroke-width:2px,color:#ffffff
classDef gate fill:#dc2626,stroke:#7f1d1d,stroke-width:2px,color:#ffffff
classDef quick fill:#10b981,stroke:#065f46,stroke-width:2px,color:#ffffff
classDef std fill:#3b82f6,stroke:#1e40af,stroke-width:2px,color:#ffffff
classDef deep fill:#8b5cf6,stroke:#5b21b6,stroke-width:2px,color:#ffffff
classDef phase fill:#475569,stroke:#1e293b,stroke-width:2px,color:#ffffff
classDef done fill:#059669,stroke:#064e3b,stroke-width:2px,color:#ffffff
The flow, explained:
- Every message you send goes through the
agent-detectorskill (runs on haiku for cost) β it classifies complexity + picks the right agent + suggests the right model. - Quick tasks (typo, one-line fix) β direct edit, no workflow overhead.
- Standard tasks (one feature, clear scope) β single specialized agent runs inline.
- Deep tasks (feature + multi-file + TDD) β
run-orchestratorspawns the 5-phase workflow with two human approval gates. - Between phases, you either approve, reject, or modify β no commit happens until Phase 5 and you say so.
v3.7.0 introduced eight features that compose into one cohesive OS; v3.7.2 + v3.7.3 polished their entry points + storage layout (notably Pillar 1). Each pillar solves a real failure mode of shipping with an AI agent. Status legend: β shipped Β· π§ queued for v3.8+.
| # | Pillar | One-liner | Status |
|---|---|---|---|
| 1 | Hierarchical Planning | Plans survive session reset Β· /compact Β· machine restart. v3.7.3: uniform folder-per-node layout under .claude/plans/ Β· runβfeature linking |
β |
| 2 | Reasoning Trace Audit | Every Claude decision is forensically recorded with grounded evidence | β |
| 3 | Semantic Session Reset | Finished an Epic? Distill it into permanent memory, then reset cleanly | β |
| 4 | Pre-flight Validation | Bash linters block bad AI output before it hits disk | β Tier 1 Β· π§ Tier 2 OPA |
| 5 | Semantic Conflict Detection | L1-L4 layered detection prevents silent overwrites between parallel tasks | β L1+L2 Β· π§ L3+L4 LLM |
| 6 | Self-Healing Orchestrator | Auto-diagnose F2/F3 failures, propose patches β never auto-apply | β manual Β· π§ auto-trigger |
| 7 | MCP Security Layer | Per-agent allowlist, audit log, rate limits β defense for external integrations | β |
| 8 | Phase-Role Binding | Phase 4 reviewer MUST differ from Phase 3 builder (Generator β Evaluator) | β |
flowchart LR
subgraph "Structure"
P1[1. Hierarchical Planning<br/>T0βT4 tree]:::struct
P8[8. Phase-Role Binding<br/>builder β reviewer]:::struct
end
subgraph "Accountability"
P2[2. Reasoning Trace<br/>grounded audit]:::acct
P4[4. Pre-flight<br/>linters + OPA]:::acct
end
subgraph "Resilience"
P5[5. Conflict Detection<br/>L1-L4 layered]:::res
P6[6. Self-Healing<br/>F2/F3 proposals]:::res
end
subgraph "Memory & Security"
P3[3. Session Reset<br/>permanent memory]:::mem
P7[7. MCP Security<br/>allowlist + audit]:::mem
end
classDef struct fill:#6366f1,stroke:#3730a3,color:#fff
classDef acct fill:#10b981,stroke:#065f46,color:#fff
classDef res fill:#f59e0b,stroke:#b45309,color:#000
classDef mem fill:#ec4899,stroke:#9d174d,color:#fff
A plan tree (Mission β Initiative β Feature β Story β Task) that persists to .claude/plans/ and survives session resets, /compact, and machine restarts. v3.7.3 ships uniform {ID}_{kebab-slug}/ folder-per-node layout, runβfeature bidirectional linking (run-state.json β feature's ## Runs table), and the consolidated /aura-frog:plan <verb> surface (expand Β· next Β· replan Β· promote Β· archive Β· undo Β· freeze Β· thaw Β· conflicts Β· status). Bare-word activation when a plan is active: type next, expand FEAT-A. The /run escalation heuristic (v3.7.2) prompts plan-mode for multi-feature tasks (weight β₯ 3) β overrides: task: / project: prefixes, AF_ESCALATION_DISABLED=true. Full depth + DAG examples in BENEFITS.md Part 9 Β§1 and HIERARCHICAL_PLANNING.md.
Every Claude decision during T4 execution is forensically recorded to a per-task trace.jsonl (co-located with the task spec). Captured events: file reads, output claims, tool calls, decisions β each linked to the grounding evidence. The trace is the source of truth for grounding-discipline checks (anti-hallucination); deliverables that cite a file must show a corresponding read event. Query via /trace (planned CLI shipped in helper scripts). Disable per-session with AF_TRACE_DISABLED=true. Full schema + worked examples in BENEFITS.md Part 9 Β§2.
Long projects accumulate decisions that don't fit in a context window. When a Feature ships, epic-summarizer distils its history into .claude/memory/permanent_memory.md β a confidence-scored, append-only memo (low-confidence items land in a Tentative subsection). Future sessions load only the header lines via permanent-memory-loader (β€120 always-loaded tokens, hard cap 200). /reset-session triggers the distil + optional clean-slate restart. Lets you take a Mission across weeks without context creep. Full depth in BENEFITS.md Part 9 Β§3.
Bash linters that block bad AI output before it hits disk. Tier 1 ships seven checks (path safety, command allowlist, secret patterns, frontmatter shape, markdown sanity, slash-syntax currency, doc maturity). Tier 2 (queued for v3.8) adds OPA + five .rego policies for declarative org-specific gates. Hook-driven β fires on Write/Edit. Bypass with 3-warn confirmation when the linter is wrong. Disable with AF_PREFLIGHT_DISABLED=true. Full rules in BENEFITS.md Part 9 Β§4.
Parallel /run tasks can step on each other. v3.7 ships L1 (file-overlap) and L2 (function/region overlap) deterministic checks, plus a freeze-cascade state machine that pauses descendants when a parent conflicts. L3 (semantic, LLM-judged) and L4 (architectural, LLM-judged) ship in v3.7.0-rc.1+. conflict-arbiter adjudicates β outcomes recorded to conflicts.jsonl + history. Disable LLM tiers with AF_CONFLICT_LLM_DISABLED=true. Full state machine + sample conflicts in BENEFITS.md Part 9 Β§5.
When failure-classifier flags a task as F2 (local-logic) or F3 (local-design), the self-healing skill proposes a patch β but never auto-applies. Confidence β₯0.7 is required to surface; below threshold the raw findings are escalated to the user. Auto-trigger on the F2/F3 classification hook is queued for v3.7.2+. Per-task cap: 1 self-heal attempt; per-session cap: 5. Disable with AF_SELF_HEAL_DISABLED=true. Full workflow in BENEFITS.md Part 9 Β§6.
Per-agent allowlist for MCP calls + audit log + rate limits + input sanitization. The mcp-call-gate hook authorises every MCP invocation against the agent's declared scope; blocked + rate-limited calls land in .aura/security/mcp-audit.jsonl. Post-incident forensics via /aura-frog:mcp audit. Tokens never leave the process. Disable audit-only with AF_MCP_AUDIT_DISABLED=true. Full threat model in BENEFITS.md Part 9 Β§7 and SECURITY_AND_TRUST.md.
The Phase 4 reviewer MUST differ from the Phase 3 builder. Generator β Evaluator is enforced by run-orchestrator and cross-review-workflow.md β self-reviewed code has blind spots that PR reviews catch in human teams; same logic for agents. Non-negotiable. The constraint is what makes the 5-phase workflow produce shippable code, not just code that passes its own tests. Full rationale in BENEFITS.md Part 9 Β§8.
| Pillar | Ships now (v3.7.0 + v3.7.2/v3.7.3 polish) | Queued for v3.8+ |
|---|---|---|
| 1 β Planning | T0-T4 tree at .claude/plans/, uniform folder-per-node layout (v3.7.3), consolidated /aura-frog:plan <verb> (v3.7.2), 12 backing scripts, 5 agents, bare-word router, link-run.sh for runβfeature bidirectional linking |
β |
| 2 β Reasoning Trace | tracer hook (writes per-task trace.jsonl inside the task folder, v3.7.3), grounding-discipline, /trace queries |
helper CLI scripts (deferred per issue #6) |
| 3 β Session Reset | epic-summarizer, permanent-memory-loader (.claude/memory/), /reset-session |
β |
| 4 β Pre-flight | 7 Tier-1 bash linters, hook, bypass with 3-warn | Tier 2 OPA + 5 .rego policies |
| 5 β Conflict Detection | L1 (file) + L2 (function) + freeze cascade + arbitration | L3 (semantic LLM) + L4 (architectural LLM) |
| 6 β Self-Healing | manual /heal diagnose, β₯0.7 confidence, never auto-apply |
auto-trigger hook on F2/F3 classification |
| 7 β MCP Security | per-agent allowlist + audit + rate limits + sanitizer | SQLite WAL for audit (issue #8) |
| 8 β Phase-Role | hard rule in cross-review-workflow.md + run-orchestrator |
β |
Routing β /run |
3-option escalation (plan/deep/details) on weight β₯ 3, task: / project: override prefixes (v3.7.2), feature: <ID> prefix + resume <FEATURE_ID> (v3.7.3) |
β |
Disable any pillar individually via env var: AF_SELF_HEAL_DISABLED, AF_MCP_AUDIT_DISABLED, AF_TRACE_DISABLED, AF_PREFLIGHT_DISABLED, AF_CONFLICT_LLM_DISABLED, AF_RUN_PLAN_BRIDGE_DISABLED, AF_TOKEN_TRACKER_DISABLED, AF_BARE_WORD_ROUTER_DISABLED, AF_ESCALATION_DISABLED. Override the plans dir entirely with AF_PLANS_DIR=<path> (e.g. to keep using legacy .aura/plans/). All eight pillars + the v3.7.2/v3.7.3 routing additions are opt-in friendly.
Aura Frog's 71 rules, 59 skills, and 15 agents are ~87% portable (weighted average) because they're markdown conventions, not tool-specific code. Only the thin hook layer needs adapters.
| Tool | Status | Coverage |
|---|---|---|
| 100% | ||
| ~85% | ||
| ~80% |
Why this matters: When you invest in Aura Frog's TDD discipline, gotcha-only expert skills, and agent architecture, that investment survives tool switches. Only the thin adapter layer changes.
Read the Portability Guide β
| β Without Aura Frog | β With Aura Frog |
|---|---|
|
|
Result: Production-ready code with tests, security review, and documentation β from a single prompt.
- Claude Code CLI installed β install guide
- Node.js β₯ 18 (for hook scripts)
- Git (for phase checkpoint commits)
# 1. Add the marketplace
/plugin marketplace add nguyenthienthanh/aura-frog
# 2. Install the plugin
/plugin install aura-frog@aurafrog
# 3. Verify
/af statusExpected output:
πΈ Aura Frog v3.7.3 β Ready
Agents: 15 loaded (lead, architect, frontend, mobile, tester, security, devops, strategist, scanner,
master-planner, feature-architect, story-planner, replanner, epic-summarizer, conflict-arbiter)
Skills: 59 available (9 auto-invoke, 50 on-demand)
Rules: 71 loaded (22 core + 19 agent + 30 workflow)
Hooks: 48 registered
MCP: context7, playwright, vitest, firebase, figma, slack, postgres (disabled), redis (disabled)
/project initScans your codebase and creates 7 context files (framework, conventions, rules, examples, architecture, etc.) in .claude/project-contexts/<name>/. Takes 30β60 seconds; saves minutes on every future session.
afCLI for health checks outside Claude Code β/af setup clior manual symlink.- MCP tokens (Figma / Slack / Firebase / Supabase) β
cp .envrc.template .envrc, fill in tokens. Full template + per-token notes in INSTALLATION.md Β§ Environment variables. - Skills-only mode on Codex / Gemini CLI / OpenCode β
cp -r aura-frog/skills/* <platform-skills-dir>/. Hooks, agent detection, subagent spawning, and MCP servers are Claude Code exclusive; everything else is portable (see Works Across AI Coding Tools).
/run "Your task here"See the Walkthrough below for a complete transcript of what this looks like.
| Symptom | Likely cause | Fix |
|---|---|---|
/plugin install fails |
Marketplace cache | Run /plugin marketplace refresh |
| Hooks not firing | .claude/settings.json missing hook config |
/af setup integrations re-installs |
af: command not found |
PATH missing plugin scripts dir | Add $HOME/.claude/plugins/marketplaces/aurafrog/scripts to $PATH |
State not saving during /run |
Hook path drift (pre-v3.7) | Upgrade to 3.7+ (state path fixed) |
| Claude uses wrong agent | No /project init yet |
Run /project init to load conventions |
Full guide: GET_STARTED.md.
A complete transcript of implementing JWT auth with /run β 18 minutes, 2 approvals, 94% coverage, 8 agents dispatched. Full sequence diagram + step-by-step + agent table in docs/getting-started/WALKTHROUGH.md.
Smart flow selection Β· multi-agent orchestration Β· approval gates that don't block Β· context economy Β· TDD enforcement Β· JIRA integration. Full prose with examples and rationale in docs/marketing/WHY_TEAMS_SHIP_FASTER.md.
Aura Frog picks one of three execution strategies per task β you never configure it manually.
flowchart TB
Prompt([Prompt]):::m --> AD[agent-detector analyzes]:::s
AD --> Cx{Complexity?}:::g
Cx -->|single file<br/>clear scope<br/>~5K tokens| Q[Quick Strategy]:::q
Cx -->|2-5 files<br/>feature<br/>~20K tokens| S[Standard Strategy]:::st
Cx -->|6+ files<br/>architecture<br/>~80K tokens| D[Deep Strategy]:::d
Q --> QR[Direct edit<br/>haiku model<br/>no workflow]:::q
S --> SR[Single agent inline<br/>sonnet model<br/>TDD optional]:::st
D --> DR[5-phase TDD<br/>2 approval gates<br/>builder β reviewer<br/>collaborative planning]:::d
classDef m fill:#f59e0b,stroke:#b45309,stroke-width:2px,color:#000000
classDef s fill:#ec4899,stroke:#9d174d,stroke-width:2px,color:#ffffff
classDef g fill:#dc2626,stroke:#7f1d1d,stroke-width:2px,color:#ffffff
classDef q fill:#10b981,stroke:#065f46,stroke-width:2px,color:#ffffff
classDef st fill:#3b82f6,stroke:#1e40af,stroke-width:2px,color:#ffffff
classDef d fill:#8b5cf6,stroke:#5b21b6,stroke-width:2px,color:#ffffff
| Strategy | Triggers | Model | Gates | Example |
|---|---|---|---|---|
| Quick | Single file, typo, one-line fix | haiku | 0 | "Fix typo in login.ts" |
| Standard | 2β5 files, one feature | sonnet | 0β1 | "Add email validation to signup form" |
| Deep | 6+ files, architecture, vague scope | sonnet (opus for design) | 2 (P1 + P3) | "Design and implement user subscription system" |
Why three tiers instead of always-TDD? Forcing Deep on every task burns tokens (~3Γ vs subagent mode) and slows iteration. Forcing Quick on complex work skips tests and breaks production. The three-tier model matches effort to risk.
Team Mode (subset of Deep): if the task spans 2+ domains AND CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1, multiple agents work in parallel and cross-review each other. See AGENT_TEAMS_GUIDE.
Details: rules/core/execution-rules.md, skills/agent-detector/SKILL.md, skills/run-orchestrator/SKILL.md.
| Component | Count | Why it matters |
|---|---|---|
| Agents | 15 | Right expert auto-selected per task (build + review + planning + safety roles) |
| Skills | 59 | 9 auto-invoke on context, 47 on-demand (incl. v3.7.2 plan-orchestrator) |
| Commands | 24 | Core: /run, /check, /design, /project, /af, /help + /aura-frog:* hierarchical-planning suite (14 user-facing + 10 legacy /aura-frog:plan-<verb> alias stubs) |
| Rules | 71 | 3-tier loading (22 core + 19 agent + 30 workflow) β only what's needed |
| Hooks | 48 | Conditional β skip processing for non-code files (v3.7.2 adds bare-word-router.cjs) |
| Backing scripts | 12 | Hierarchical-planning operations (v3.7.2): new-plan, validate-plan-tree, render-plan-tree + 9 new (expand, next, freeze, thaw, archive, conflicts, replan, promote, undo) + resolve-node + _lib |
| MCP Servers | 10 | 6 enabled by default; postgres/redis/chrome-devtools/codebase-memory opt-in |
| Tests | 317 | Coverage gate at 25% statements floor; +102 tests in v3.7.2 (38 plan scripts + 64 bare-word router) |
Full workflow target: β€30K tokens across all 5 phases.
The top 8 commands cover every everyday workflow. Full reference + every subcommand + flag β aura-frog/commands/README.md.
| Command | What it does | Subcommands / flags |
|---|---|---|
/run <task> |
Universal entry. Auto-detects intent (feature / bugfix / refactor / test / review / deploy / quality / security) and picks the flow. | task: / project: / feature: FEAT-X / fasttrack: / resume <id-or-feature> / status / handoff / rollback / progress |
/aura-frog:plan <verb> |
Hierarchical planning β 11 verbs in one command. Bare-word activation when a plan is active. | expand Β· next Β· replan Β· promote Β· archive Β· undo Β· freeze Β· thaw Β· conflicts Β· status Β· (no-arg interview) |
/check |
Health + quality checks across the working tree. | security Β· perf Β· complexity Β· debt Β· coverage Β· deps Β· (no-arg = all) |
/design |
Design artifacts from a description. | api Β· db Β· doc (ADR / runbook) |
/project |
Project context lifecycle. | init Β· status Β· refresh Β· regen Β· env Β· sync |
/af |
Plugin management + learning system. | status Β· agents Β· metrics Β· learn {status,analyze,apply,feedback} Β· setup Β· mcp Β· prompts Β· skill |
/aura-frog:heal / :mcp / :dashboard / :trace / :preflight / :reset-session / :extend |
Safety + ops + observability + project-level extension authoring. | See commands/README.md |
/help |
Contextual help. | /help <command> Β· /help agents Β· /help hooks |
Context-aware bare verbs when a /run is active: approve Β· reject <reason> Β· modify <changes> Β· handoff Β· status Β· progress Β· rollback Β· stop. No slash prefix needed.
Legacy /aura-frog:plan-<verb> alias forms still work but are soft-deprecated (warning v4.0 β removed v5.0).
Real examples of what the agent-detector skill picks and why (Layer 0 task-content overrides repo type). Full scoring breakdown + 10 worked examples in docs/getting-started/AGENT_SELECTION.md.
Real measurements from production workflows: typical token cost per strategy (Quick/Standard/Deep/Team), per-phase breakdown, target vs actual. Full table + 5-phase numbers in docs/getting-started/TOKEN_BUDGET.md.
Q: Workflow state isn't saving. `/run status` shows nothing.
Likely cause: Path drift between hooks and skills (fixed in v3.7+).
Check:
ls -la .claude/logs/runs/ # Should exist after first /run
ls -la .claude/logs/workflows/ # Legacy path β may have old stateFix:
- Upgrade to v3.7+ (
/plugin update aura-frog) - Or manually move:
mv .claude/logs/workflows/* .claude/logs/runs/
Verify with /af status β should show 0 orphan paths.
Q: Wrong agent picked for my task.
Likely cause: Missing project context or ambiguous task description.
Check:
- Did you run
/project inityet? Scanner uses those files for Layer 3 (project context). - Is your task description short/vague?
agent-detectordefaults to repo type when signals are weak.
Fix:
- Run
/project initif you haven't - Rephrase task with domain-specific keywords:
"Add email template styling"(frontend) vs"Update email feature"(ambiguous) - Override manually:
/run @frontend implement Xforces the frontend agent
Full scoring logic: skills/agent-detector/task-based-agent-selection.md.
Q: Token budget blown past 200K. What happened?
Likely cause: Phase 3 (Build GREEN) hit an iteration loop on a complex refactor.
Check:
/run budget # Shows per-phase consumption
/run metrics # Shows if rejection count is highFix:
/run handoffto save state β resume in fresh session- For next time: use
/run predict <task>first β flags Deep tasks likely to exceed budget - Consider splitting:
/run part 1: <narrow scope>β merge β/run part 2
Q: Hooks not firing (no SessionStart banner, no lint-autofix).
Likely cause: .claude/settings.json missing hook config, or plugin not activated in this project.
Check:
cat .claude/settings.json # Should reference plugin hooks
/af status # Should show "Hooks: 28 registered"Fix:
/af setup integrations # Re-installs hook configIf still nothing, check plugin.json path:
ls ~/.claude/plugins/marketplaces/aurafrog/aura-frog/hooks/hooks.jsonQ: Opus session costs surprised me. Can I lock everything to Sonnet?
Yes β two ways:
Option 1 β Session override (temporary):
# Start Claude Code with model flag
claude --model sonnetOption 2 β Env var (permanent, overrides ALL frontmatter):
export CLAUDE_CODE_SUBAGENT_MODEL=sonnetThis overrides every agent/skill model: declaration. See Per-Agent Model Override for resolution order.
Cost tip: scanner and agent-detector stay on haiku regardless β you don't need to touch them.
Q: Can I run multiple /run workflows in parallel?
Yes β use git worktrees:
/run worktree: <task> # Automatically creates isolated worktree + runs thereEach worktree has its own state in .claude/logs/runs/<id>/. See Git Worktree skill.
For full multi-agent parallel work, enable Agent Teams:
export CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1See Agent Teams Guide.
Q: How do I disable a hook that's slowing me down?
Each hook has a disable env var:
AF_LINT_AUTOFIX=false # Skip post-edit linter
AF_PROMPT_LOGGING=false # Skip prompt metadata logging
AF_LEARNING_ENABLED=false # Skip all learning hooksOr disable at the source by editing aura-frog/hooks/hooks.json (comment out the matcher).
Full hook list: hooks/README.md.
More issues: TROUBLESHOOTING.md.
Honest comparison with two popular plugins in the ecosystem (April 2026).
| Aura Frog | wshobson/agents | Superpowers | |
|---|---|---|---|
| Agents | 15 curated | 184 across 78 plugins | ~20 |
| Skills | 59 | 150 | Small focused set |
| Commands | 24 (14 user-facing + 10 legacy aliases) | 98 | ~10 |
| Workflow | 5-phase TDD with 2 gates | No structured workflow | Phase-gated workflow |
| Agent routing | Task-content Layer 0 override | Manual /agent-name |
Similar to Aura Frog |
| TDD enforcement | β Mandatory REDβGREENβREFACTOR | β Per-agent | β Phase-gated |
| Context management | 3-tier (MicroCompact / AutoCompact / ManualCompact) | β Base Claude Code | Partial |
| Approval gates | 2 (P1 + P3) | β | Multiple |
| MCP bundled | 6 (context7, playwright, vitest, firebase, figma, slack) | Varies per plugin | 2β3 |
| Best fit | Teams shipping production features with TDD discipline | Extending with niche specialists | Structured workflows for research/writing |
| Weakness | Steeper learning curve | Agent sprawl (184 is a lot) | Smaller ecosystem |
Not competing β different optimization targets. Aura Frog optimizes for production code quality (TDD + security review). wshobson optimizes for breadth of specialists. Superpowers optimizes for structured thinking over code.
Combine freely β plugins coexist in Claude Code.
What works well, what doesn't, what's tracked. v3.7.2 polishes the surface; the underlying engineering still has real tech debt. We name it so you can plan around it.
- 8 Pillars feature surface β all shipped and exercised through the integration tests. Hierarchical planning, reasoning trace, conflict detection, self-healing proposals, MCP security, pre-flight, session reset, phase-role binding. Day-to-day production use is fine.
- Plan consolidation (v3.7.2) + uniform layout (v3.7.3) β 43 unit tests against the 9 backing scripts +
link-run.shusing temp.claude/plans/fixtures. 64 tests for the bare-word router with require()-based imports (no test theater). - CI green on Node 18 β 317 tests, coverage gate held.
| Item | Severity | Issue | Effort |
|---|---|---|---|
5 deferred env-var-dependent hooks still rely on undocumented CLAUDE_TOOL_NAME / CLAUDE_FILE_PATHS instead of the documented stdin-JSON contract. Only mcp-call-gate got the stdin fallback in v3.7.1. |
medium | #7 | ~1d |
hooks/lib/hook-runtime.cjs doesn't exist yet β every hook re-implements stdin parsing + audit appending + atomic writes. Boilerplate Γ 43 files. |
medium | #6 | ~2d |
.claude/plans/.../trace.jsonl files and .aura/security/mcp-audit.jsonl use append-only text. High-traffic logs would benefit from SQLite WAL but currently break "zero runtime dependencies." |
low | #8 | open question (maintainer trade-off) |
| Hook performance budget not enforced. ~19 hooks fire on every Write/Edit; estimated 100-300ms p95 but unmeasured. | medium | #9 | ~1d for budget + benchmark |
| Node 20/22 test matrix hangs on Ubuntu CI runners (Node 18 + macOS pass in ~22s). Temporarily reduced to Node 18 only for v3.7.2 release. | low | (no open issue yet β investigate in v3.7.3) | ~2-4h to bisect |
| Pillar 4 Tier 2 OPA Rego policies, Pillar 5 L3+L4 LLM conflict detection, Pillar 6 auto-trigger on F2/F3 β all in the v3.7.0 roadmap, queued for v3.8+. | feature | β | varies |
cc-plugin-eval upstream npm peer-dep conflict (madge vs typescript ^6) breaks the behavioral-eval CI workflow. Not a regression in this plugin; tracked as upstream. |
external | β | wait for cc-plugin-eval fix |
- It does not enable Tier 2 OPA pre-flight (queued v3.8+).
- It does not add L3 (semantic LLM) or L4 (architectural LLM) conflict checks. The env var
AF_CONFLICT_LLM_DISABLEDis a no-op until v3.8+. - It does not auto-apply self-heal patches β proposals only, confidence β₯ 0.7, max 5/session.
- It does not change
/run's 5-phase TDD flow. The escalation prompt adds an option, not a replacement.
Use this checklist:
- β Multi-week features, complex refactors, scope creep risk β high value
- β AI hallucination concerns (reasoning trace + grounding rejects ungrounded claims) β high value
- β Parallel-team work with conflict risk β L1+L2 detector catches file/function overlap
- β MCP-heavy workflows (Figma + Firebase + Slack + DBs) β per-agent allowlists + audit log
β οΈ Single-file edits / quick prototypes β workflow overhead may not pay off; use/run task: β¦to bypassβ οΈ Haiku-only budget β some features (planning, conflict, design phases) prefer Sonnet/Opusβ οΈ Minimalist-plugin preference β Aura Frog is substantial (15 agents, 59 skills, 71 rules, 48 hooks)
| All Documentation | docs/README.md |
| Getting Started | GET_STARTED.md |
| First Workflow Tutorial | FIRST_WORKFLOW_TUTORIAL.md |
| All Commands (24) | commands/README.md |
| All Skills (59) | skills/README.md |
| Agent Teams Guide | AGENT_TEAMS_GUIDE.md |
| MCP Setup | MCP_GUIDE.md |
| Hooks & Lifecycle | hooks/README.md |
| Troubleshooting | TROUBLESHOOTING.md |
| Changelog | CHANGELOG.md |
Claude = Kernel Context Window = RAM Project Files = Disk
Agents = Processes 5-Phase TDD = Scheduler MCP = Device Drivers
TOON = Compression Approval Gates = Interrupts Handoffs = IPC
aura-frog/
βββ agents/ 15 processes (auto-dispatched per task)
βββ skills/ 59 skills (9 auto-invoke + 50 on-demand)
βββ commands/ 24 commands (core /run /check /design /project /af /help + /aura-frog:* hierarchical-planning suite)
βββ rules/ 71 rules (22 core + 19 agent + 30 workflow)
βββ hooks/ 48 lifecycle hooks (conditional execution)
βββ scripts/ utility scripts (CI, plans, preflight, workflow, security, β¦)
βββ docs/ AI reference docs (phases, TOON refs)
βββ .mcp.json 8 device drivers (6 enabled + postgres/redis opt-in)
We welcome contributions β especially new MCP integrations, agents, skills, and bug fixes. See CONTRIBUTING.md or submit an issue.
Godot and SEO/GEO modules available as separate addons.
MIT β See LICENSE
Install Now Β· Tutorial Β· Report Issue
Built by @nguyenthienthanh Β· Changelog

