Interview-Driven Spec Writer
poshan0126/dotclaude
Interviews you about scope, behavior, edge cases and verification, then writes a self-contained SPEC.md that a fresh session can implement without this conversation.
Reviews requirements, plans and specs through role-based reviewer personas, applies proven corrections within its authority, and returns only the findings that need your call.
$ npx skills add EveryInc/compound-engineering-plugin --skill ce-doc-review -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install EveryInc/compound-engineering-plugin ce-doc-review --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/EveryInc/compound-engineering-plugin.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/ce-doc-review .claude/skills/ce-doc-review && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "ce-doc-review" agent skill from https://github.com/EveryInc/compound-engineering-plugin/tree/main/skills/ce-doc-review into .claude/skills/ce-doc-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ce-doc-review", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/EveryInc/compound-engineering-plugin/tree/main/skills/ce-doc-reviewType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add EveryInc/compound-engineering-plugin --skill ce-doc-review -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install EveryInc/compound-engineering-plugin ce-doc-review --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/EveryInc/compound-engineering-plugin.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/ce-doc-review .agents/skills/ce-doc-review && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "ce-doc-review" agent skill from https://github.com/EveryInc/compound-engineering-plugin/tree/main/skills/ce-doc-review into .agents/skills/ce-doc-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ce-doc-review", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add EveryInc/compound-engineering-plugin --skill ce-doc-review -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install EveryInc/compound-engineering-plugin ce-doc-review --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/EveryInc/compound-engineering-plugin.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/ce-doc-review .cursor/skills/ce-doc-review && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "ce-doc-review" agent skill from https://github.com/EveryInc/compound-engineering-plugin/tree/main/skills/ce-doc-review into .cursor/skills/ce-doc-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ce-doc-review", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/EveryInc/compound-engineering-plugin.git --path skills/ce-doc-review--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add EveryInc/compound-engineering-plugin --skill ce-doc-review -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install EveryInc/compound-engineering-plugin ce-doc-review --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/EveryInc/compound-engineering-plugin.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/ce-doc-review .gemini/skills/ce-doc-review && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "ce-doc-review" agent skill from https://github.com/EveryInc/compound-engineering-plugin/tree/main/skills/ce-doc-review into .gemini/skills/ce-doc-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ce-doc-review", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install EveryInc/compound-engineering-plugin ce-doc-reviewInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add EveryInc/compound-engineering-plugin --skill ce-doc-review -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/EveryInc/compound-engineering-plugin.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/ce-doc-review .github/skills/ce-doc-review && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "ce-doc-review" agent skill from https://github.com/EveryInc/compound-engineering-plugin/tree/main/skills/ce-doc-review into .github/skills/ce-doc-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ce-doc-review", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add EveryInc/compound-engineering-plugin --skill ce-doc-review -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install EveryInc/compound-engineering-plugin ce-doc-review --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/EveryInc/compound-engineering-plugin.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/ce-doc-review .opencode/skills/ce-doc-review && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "ce-doc-review" agent skill from https://github.com/EveryInc/compound-engineering-plugin/tree/main/skills/ce-doc-review into .opencode/skills/ce-doc-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ce-doc-review", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
ce-doc-reviewReviews requirements, plans and specs through role-based reviewer personas, applies proven corrections within its authority, and returns only the findings that need your call.
The goal is a sound document that can guide the agreed work, not a longer one. The agent looks for problems that would change the outcome or materially hinder execution, and an adequate document gets no changes. Reviewer personas provide evidence, including adversarial, coherence, design, feasibility, product, scope and security lenses plus a whole-document reviewer, but the judgment stays with the agent, which checks each claim against the full document and settled decisions.
Proven errors that block an existing decision are corrected within the edit authority given. What comes back is limited to worthwhile improvements that need permission, choices or information only you can supply, and useful observations. The run is done when every selected reviewer has returned or is listed as failed, retained findings have a verified consequence, and authorized fixes are applied and checked. It reads `references/modes.md` first to handle interactive and non-interactive modes, using the host's question tool for decisions or returning structured text.
2 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 67035e9. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/, which the agent can run.
Shell commands in SKILL.md call:
gitFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Planning Document Review loads about 1.9k tokens when it runs, and up to ~72k if it reads all its reference files. Until then it costs about 36 tokens; SKILL.md has 1,023 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from EveryInc/compound-engineering-plugin at commit 67035e9, republished under its MIT licence (© EveryInc). 1,023 words, ~1,944 tokens.
.claude/skills/ce-doc-review/SKILL.md (or your agent's skills folder). This skill also uses 26 other files; get the full folder from GitHub.Help the author finish a sound document they can use to carry out the agreed work. Find problems that would change that work's outcome or materially hinder execution, and resolve them within the authority already given. Judge the document by whether it guides correct work, not by how much detail it contains. Serious consequences warrant attention even when the defect is small. An adequate document needs no changes.
Reviewer personas supply evidence; the judgment is yours. Check their claims against the whole document, project facts, and settled decisions. Correct proven errors that prevent an existing decision from being carried out, within the edit authority and reviewer requirements the synthesis reference states. Return only worthwhile improvements still needing permission, consequential choices or essential information only the user can supply, and useful observations.
Done when: every selected reviewer has returned or is named as failed in Coverage, retained findings have a verified consequence for the agreed work, and every authorized correction assigned to Apply has been made and checked. Report that final state through the interactive approval or decision process, or return it as structured text in non-interactive mode.
Read references/modes.md before anything else. It defines how the mode is detected, the non-interactive argument contract, and the question-tool rules: match the host's blocking question tool already in the current tool list (never call a user-facing question tool to discover it), pre-load it at the top of the interactive flow if it is listed but unloaded, and fall back to a numbered list only when the harness genuinely lacks one.
Either way, a question that calls for a user decision calls the tool or falls back loudly. Narrating it as plain text is a bug.
Resolve <root> only in the no-path interactive branch, which discovers the most recent plan under <root>/plans/. Every other run reads the document at the path it was handed. So an absolute-path or non-interactive review — /tmp/plan.md, possibly outside any repo — never depends on a repo root or a CE config it does not need.
<!-- ce-docs-root:start -->
Resolve the CE artifact root <root> before composing any artifact path.
docs_root from <repo-root>/.compound-engineering/config.yaml only (<repo-root> = git rev-parse --show-toplevel). Do not read it from config.local.yaml. Unset -> <root> is docs, exactly as before..git/. Otherwise stop with an error naming docs_root and the value -- never fall back to docs.<root> as the sole artifact location: create it if absent, compose each path as <root>/<subdir> with this skill's own subdirectory, and never also read docs.<!-- ce-docs-root:end -->
Read references/document-intake.md now. It covers how the document is obtained in each mode, what to do and say when no document is found, and the classification signals.
Two of its rules apply to every later step.
Verify before any dispatch. Every resolved path must be readable on disk. If one is not, dispatch no personas: reviewers read from the filesystem, so they cannot reach a path that exists only on an unchecked-out branch (issue #925).
Classify by content, not readiness labels or file path. A unified artifact with only a Product Contract is unified-requirements; missing implementation sections are expected. Any implementation planning makes it unified-plan, including incomplete or blocked planning that needs review. Other artifacts use the legacy requirements / plan split.
HTML unified artifacts take the same routes. Every fix lands in the document's native format; never insert markdown into HTML. That reference covers ID-bearing items. Pass the classification to each persona in the {document_type} slot.
Skip dispatch only when the completed-review reuse condition in references/document-intake.md passes; continue with that evidence at Phase 3.
Read references/persona-selection.md for each conditional persona's activation signals and the announcement format. Two of those signals over-activate on plausible evidence: the sensitive-data bound on security-lens-reviewer, and the challenge-surface bar on adversarial-document-reviewer. Then read references/dispatch.md for payload variables, slicing, model tiering, and reviewer-failure handling.
The team is coherence-reviewer and feasibility-reviewer always, plus each activated conditional persona. Announce the team with a per-persona justification before any dispatch.
Dispatch generic subagents with bounded parallelism through the platform's subagent primitive. Seed each one with the full content of its references/personas/<reviewer-name>.md. Never dispatch a standalone agent by type or name.
A capacity rejection is backpressure, not reviewer failure: wait and retry. If capacity cannot recover and selected reviewers remain undispatched, collect and clean up any started cross-model jobs as references/cross-model-review.md describes, then stop as incomplete without synthesis, fixes, or a success handoff. Preserve collected outcomes and report which reviewers completed, failed, or could not run, and why.
Run this pass if any of the conditional judgment trio was activated: adversarial-document-reviewer, product-lens-reviewer, security-lens-reviewer. Follow references/cross-model-review.md, which defines the whole pass: confirming the host, the one target and route used for the whole document, the disclosure before anything leaves the machine, and how peers are launched, collected, and folded in.
The pass is additive and non-blocking: a failure or timeout stops nothing and is named in Coverage. The checkout's cross_model_review_mode setting is checked first and can skip the pass with a named reason. Filter recipients only when CROSS_MODEL_PEERS is set — unset means unfiltered, not unsanctioned. Never silently change an explicit model or recipient.
Wait until every dispatched agent has returned, including any cross-model <reviewer-name>-<provider>.json returns. Then read references/synthesis-and-presentation.md. It defines synthesis, how each finding is routed by confidence and fix class, fix application, the non-interactive result format, and the handoff to the routing question. When promoting agreement, only an artifact with independence_verified: true counts as an independent reviewer.
Interactive mode only. Read references/walkthrough.md for the grouped confirmation, the routing question, and the per-finding walk-through. Read references/bulk-preview.md for the bulk-action preview behind best-judgment routing, Append-to-Open-Questions, and auto-resolve. Load neither before review evidence is complete, whether newly collected or validly reused, and a non-interactive run never loads them at all — it stops at the structured review result.
Read only the persona prompts the current review selected. The template and schema the dispatch payload fills:
@./references/subagent-template.md
@./references/findings-schema.json
© EveryInc, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 26 other files (scripts, references) in skills/ce-doc-review of EveryInc/compound-engineering-plugin.
Open the folder on GitHubat commit 67035e9
Planning Document Review next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Planning Document Review this skillEveryInc/compound-engineering-plugin | 25k | — | ~1.9k | Automated safety check: Pass | MIT | |
| Interview-Driven Spec Writerposhan0126/dotclaude | 871 | — | ~804 | Automated safety check: Pass | MIT | |
| Vertical-Slice Task Plannerowainlewis/blueprint | 412 | — | ~1.5k | Automated safety check: Pass | MIT | |
| GSD Phase Discussionopen-gsd/gsd-core | 10k | 1 repos | ~1.5k | Automated safety check: Warn | MIT | |
| OpenSpec Guided OnboardingFission-AI/OpenSpec | 71k | 1 repos | ~4.5k | Automated safety check: Pass | MIT | |
| Brainstorming Before BuildingjnMetaCode/superpowers-zh | 8.3k | — | ~1.8k | Automated safety check: Pass | MIT |
poshan0126/dotclaude
Interviews you about scope, behavior, edge cases and verification, then writes a self-contained SPEC.md that a fresh session can implement without this conversation.
owainlewis/blueprint
Breaks a reviewed spec into ordered, vertical-slice tasks that each fit one agent run and one pull request, grouped into milestones when useful.
open-gsd/gsd-core
Asks adaptive questions about a project phase and records the decisions in a CONTEXT.md that later research and planning agents can act on without asking again.
Fission-AI/OpenSpec
Walks you through a complete OpenSpec workflow cycle with narration while doing real work in your codebase.
jnMetaCode/superpowers-zh
Turns a rough idea into an approved design before any code is written, sorting the request into spike, bounded or architectural and enforcing an approval gate.
open-gsd/gsd-core
Ingest external plans with conflict detection against project decisions before writing anything.
EveryInc/compound-engineering-plugin
Records one solved and verified problem as a durable learning in the repository, but only when the reasoning is not already clear from the final code, tests or docs.
EveryInc/compound-engineering-plugin
Audits a repo's stored learnings against the current codebase, fixes stale, overlapping or superseded docs and reports on every document.
EveryInc/compound-engineering-plugin
Builds a throwaway prototype at just the fidelity needed to settle a specific how-it-should-work-or-feel question, before committing to an approach other work will treat as fixed.
EveryInc/compound-engineering-plugin
Checks Compound Engineering plugin health and repo-local config, or scaffolds a Compound Pack when you ask for one by id.
EveryInc/compound-engineering-plugin
Watches an open GitHub pull request over time, routing review comments and CI failures to other skills until the PR is ready to merge.
EveryInc/compound-engineering-plugin
Turns a vague or ambitious feature idea into a requirements-only plan through dialogue with you, sized to the work, before any code is written.
Reviews requirements, plans and specs through role-based reviewer personas, applies proven corrections within its authority, and returns only the findings that need your call. The goal is a sound document that can guide the agreed work, not a longer one. The agent looks for problems that would change the outcome or materially hinder execution, and an adequate document gets no changes.
Planning Document Review fits situations like: reviewing a requirements document before implementation starts; stress-testing a plan for feasibility, scope creep or security gaps; cleaning up an existing spec without rewriting decisions already made.
Run `npx skills add EveryInc/compound-engineering-plugin --skill ce-doc-review -a claude-code`. Or copy the skill folder (skills/ce-doc-review in EveryInc/compound-engineering-plugin) into .claude/skills/ce-doc-review in your project. Claude Code loads it when a task matches its description.
Run `npx skills add EveryInc/compound-engineering-plugin --skill ce-doc-review -a codex`. Or copy the skill folder (skills/ce-doc-review in EveryInc/compound-engineering-plugin) into .agents/skills/ce-doc-review in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add EveryInc/compound-engineering-plugin --skill ce-doc-review -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ce-doc-review, .gemini/skills/ce-doc-review, .github/skills/ce-doc-review and .opencode/skills/ce-doc-review in your project.
Going by SKILL.md and its folder, Planning Document Review needs the command-line tools its instructions call (git).
SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Planning Document Review is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.9k tokens (SKILL.md is roughly 7.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 70k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Planning Document Review: Interview-Driven Spec Writer (poshan0126/dotclaude, 871 stars), Vertical-Slice Task Planner (owainlewis/blueprint, 412 stars), GSD Phase Discussion (open-gsd/gsd-core, 10k stars) and OpenSpec Guided Onboarding (Fission-AI/OpenSpec, 71k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
EveryInc (a GitHub organization) maintains it in EveryInc/compound-engineering-plugin, which has 25,436 GitHub stars. The repository holds 37 skills in this directory. The repository was last updated on October 8, 2026.
Source: EveryInc/compound-engineering-plugin on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.