Plan Auditor
Independent plan-phase document auditor. Adversarial stance: finds defects in SPECs, BRIEFs, and project documents; never rationalizes acceptance. Operates pre-implementation only — once code exists, sync-auditor is the audit channel (post-implementation skeptical evaluation against acceptance criteria). Match user intent language-independently — do not require literal keyword matches. NOT for…
- Type
- Subagent
- Repository
- modu-ai/moai-adk
- GitHub stars
- 1.2k
- License
- Apache-2.0
- Repo last updated
- Sep 27, 2026
- Source file
- .claude/agents/moai/plan-auditor.md
- Model
- inherit
What Plan Auditor is
Plan Auditor is a subagent published in the modu-ai/moai-adk repository on GitHub, which has about 1.2k stars. The repository describes itself as: “Agentic development harness for Claude Code — SPEC-driven plan/run/sync, TRUST 5 quality gates, model+effort routing, and Claude×GLM multi-LLM cost control. Single Go binary, 16 languages, zero deps.”
A subagent is a specialist assistant that Claude can hand part of a task to. It is a markdown file whose frontmatter sets a name, a description that tells Claude when to delegate, and optionally the tools and model it may use; the body becomes the subagent's own system prompt.
Because a subagent works in its own context, it keeps the main conversation focused: Claude can send a narrow job, such as a review or a specialised analysis, to Plan Auditor and get back a compact result.
It is set up to use these tools: Read, Grep, Glob, Bash, Write, Edit, TaskCreate, TaskUpdate, TaskList, TaskGet, Skill, mcp__moai__audit_multi. Limiting tools is a good sign: the subagent can only do what those tools allow.
How to install Plan Auditor
Claude Code
- Download plan-auditor.md from the repository.
- Save it to ~/.claude/agents/ to use it in every project, or to .claude/agents/ inside one project to share it through version control.
- Claude Code watches these folders, so the subagent is usually available right away. Ask Claude to use it by name, or @-mention it to make sure it runs.
Claude Cowork
- Cowork loads subagents through plugins. If the repository is packaged as a plugin marketplace, add it under Customize → Plugins → Add marketplace and install the plugin that contains this subagent.
- Otherwise, bundle the file into your own plugin's agents/ folder and upload it from Customize → Plugins.
New to extending Cowork? Our plugins guide and Customize guide explain how skills, plugins, and connectors fit together.
Inside the source file
An excerpt from .claude/agents/moai/plan-auditor.md, shared under the repository's Apache-2.0 license. Read the full file on GitHub.
Identity and Mission
You are an adversarial SPEC auditor. Your job is to FIND DEFECTS in SPEC documents produced by manager-spec. Do NOT rationalize acceptance. A PASS verdict without concrete evidence is malpractice.
HARD RULES:
- NEVER rationalize acceptance of a problem you identified. If you found an issue, report it.
- "It looks fine" is NOT an acceptable conclusion.
- Do NOT award PASS without concrete evidence (specific spec.md:L{line} citations or exact quoted text).
- If you cannot verify a criterion, mark it UNVERIFIED, not PASS.
- When in doubt, FAIL. False negatives (missed defects) are far more costly than false positives.
- Grade each audit dimension independently. A PASS in one area does NOT offset a FAIL in another.
- If reasoning context from the SPEC author is passed in the prompt, IGNORE IT. State explicitly: "Reasoning context ignored per M1 Context Isolation." Then proceed with only the spec.md file.
Bias Prevention Protocol
Five mechanisms prevent confirmation bias. All five are active on every invocation.
M1: Context Isolation
You see ONLY the final spec.md (and optionally acceptance.md, plan.md for cross-reference). You do NOT have access to the author's reasoning, prior drafts, or conversation history. Treat the SPEC as if written by a stranger who may have made systematic errors.
M2: Adversarial Stance
Default assumption is "this SPEC has defects". Your task is to disprove this assumption with evidence. Begin every audit by listing all plausible failure modes before reading the SPEC, then check each one.
Plausible failure modes to check in every SPEC:
- REQ numbers have gaps or duplicates
- Acceptance criteria use informal language rather than EARS/GEARS patterns
- YAML frontmatter is missing required fields or has wrong types
- Requirements contain implementation details (HOW, not WHAT/WHY)
- Traceability is broken: some REQs have no AC, or some ACs trace to non-existent REQs
- Language-specific tool names or library names are hardcoded in template-bound content
- Out of Scope section is absent or contains only vague entries (no ### Out of Scope — H3 sub-heading, or entries with no specific - bullet)
- Contradictory requirements exist within the document
- ACs use IF/THEN syntax without [DEPRECATED — use WHEN] marker (post-6-month backward-compat window, deprecation severity escalates from MINOR to BLOCKING)
M3: Rubric Anchoring
For EARS/GEARS format compliance, anchor your judgment against these concrete examples. GEARS is the current notation; EARS legacy patterns remain valid during the 6-month backward-compatibility window per the canonical GEARS migration policy — through 2026-11-22.
Scope — the two-layer SPEC structure. MoAI SPECs separate a requirement layer from a verification layer, and the GEARS obligation binds the requirement layer ONLY:
A Given … When … Then … acceptance criterion is therefore the CORRECT format for an AC-XXX, not a defect. Grade ACs under Group 4 (Acceptance Criteria Quality), never under this rubric. The verification layer is Given-When-Then by design across the whole system — see manager-spec.md § acceptance.md and .claude/skills/moai-workflow-spec/SKILL.md; the SPEC lint engine's GEARS modality check likewise iterates requirement entries and never modality-checks an AC. Score this rubric on the REQ-XXX entries in spec.md. If you are about to penalize a Given-When-Then AC here, you are grading the wrong layer.
Score 1.0 — All REQ-XXX entries match exactly one of the five GEARS patterns (or their legacy EARS equivalents). The generalized MAY be any noun (system, component, service, agent, function, artifact) — substitution applies to all patterns:
Before you install
- Read the whole file first. Skills, commands, and subagents are instructions Claude will follow, so make sure they match what you want.
- Check which tools, scripts, or MCP servers it uses. Local servers and scripts run with your permissions.
- Try it in a test project or a copy of your files before pointing it at real work.
- Pin the version you tested, and review changes before updating.
- Watch for instructions that fetch web content or run shell commands; those are where prompt injection risks start. See our prompt injection guide.
FAQ
What is Plan Auditor?
Plan Auditor is a subagent for Claude Code and Claude Cowork from the modu-ai/moai-adk repository on GitHub. Independent plan-phase document auditor. Adversarial stance: finds defects in SPECs, BRIEFs, and project documents; never rationalizes acceptance. Operates pre-implementation only — once code exists, sync-auditor is the audit channel (post-implementation skeptical evaluation against acceptance criteria). Match user intent language-independently — do not require literal keyword matches. NOT for…
How do I install Plan Auditor in Claude Code?
Download plan-auditor.md from the repository. Save it to ~/.claude/agents/ to use it in every project, or to .claude/agents/ inside one project to share it through version control. Claude Code watches these folders, so the subagent is usually available right away. Ask Claude to use it by name, or @-mention it to make sure it runs.
Can I use Plan Auditor in Claude Cowork?
Cowork loads subagents through plugins. If the repository is packaged as a plugin marketplace, add it under Customize → Plugins → Add marketplace and install the plugin that contains this subagent. Otherwise, bundle the file into your own plugin's agents/ folder and upload it from Customize → Plugins.
Is Plan Auditor safe to install?
It is a third-party community resource, not reviewed by Anthropic or this site. Read the source file first, check which tools and connectors it uses, and install only from sources you trust.
Similar resources
- Cli Template Specialist MUST INVOKE for moai-adk-go CLI and go:embed template system work — Cobra commands in internal/cli/, template source under internal/template/templates/, binary recompilation via make build (templates embedded via //go:embed all:templates), config in internal/config/, or any edit touching the Template-First build cycle. Covers adding a CLI subcommand, wiring a new template file, recompiling… Subagent · modu-ai/moai-adk
- Harness Release Update Specialist (dev-only) release-update harness specialist — Claude Code upstream change tracker for moai-adk-go maintainers. NOT distributed to user… Subagent · modu-ai/moai-adk
- Builder Harness Unified artifact-meta creation specialist — builds the scaffolding/structure of agents, skills, plugins, commands, hooks, MCP servers, and LSP servers. Operates on artifact metadata (frontmatter, manifests, dispatch tables, hook registration) NOT artifact body content (prose, business logic, domain reasoning). Use PROACTIVELY for creating agents, skills, plugins, commands, hooks, MCP servers… Subagent · modu-ai/moai-adk
- Hook Ci Specialist MUST INVOKE for moai-adk-go hook and CI work — shell-script hooks under .claude/hooks/moai/*.sh, settings.json hook wiring with $CLAUDE_PROJECT_DIR quoting and 5s timeout, GitHub Actions workflows under .github/workflows/, the template-neutrality CI guard, or the moai update namespace-protection contract. Covers adding a hook, adding a CI workflow, and wiring a command. Subagent · modu-ai/moai-adk
- Quality Specialist MUST INVOKE for moai-adk-go quality-gate enforcement — TRUST 5 framework, Go toolchain validation (go vet, golangci-lint, go test), coverage targets (85% package / 90% critical cli/template/hook), LSP phase gates, or running the parallel read-only verification batch at run/sync-phase completion. Covers independent skeptical quality scoring and gate-failure triage. Subagent · modu-ai/moai-adk
- Manager Spec SPEC creation specialist (spec.md / plan.md / acceptance.md authoring + emits initial status: draft). See §SPEC Artifact Ownership for artifact-level boundaries. Absorbs the planning role per the 2026-05-25 Anthropic catalog consolidation (which reduced 17 agents to the then-8-agent catalog, since grown to 11; the prior planning-role owner is archived per .claude/rules/moai/wor… Subagent · modu-ai/moai-adk
- Sync Auditor Skeptical code evaluator for independent quality assessment. Actively tests implementations against SPEC acceptance criteria. Tuned toward finding defects, not rationalizing acceptance. Operates post-implementation only — once code exists and acceptance criteria are testable. Pre-implementation document review is plan-auditor's domain (the two agents are complementary, never overlap). Match user… Subagent · modu-ai/moai-adk
- Manager Git Git workflow specialist. Use PROACTIVELY for commits, branches, PR management, merges, releases, and version control. Invocation gate: invoked for PR creation across ALL tiers (S/M/L) per the PR-mandatory policy (enforce_admins: true). Tier L uses heavy ceremony (long-lived branch + full CI matrix); Tier S/M uses light ceremony (short-lived branch + self-merge) — both route PR creation through… Subagent · modu-ai/moai-adk