ワンクリックで
cvg-plan-review
Review a plan against the actual codebase. Verify slices are sufficient, surfaces are complete, and invariants are correct.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Review a plan against the actual codebase. Verify slices are sufficient, surfaces are complete, and invariants are correct.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
| name | cvg-plan-review |
| description | Review a plan against the actual codebase. Verify slices are sufficient, surfaces are complete, and invariants are correct. |
Review the plan with a fresh perspective, grounded in the actual code. The goal is to catch plan-level gaps before the worker starts: missing surfaces, incomplete invariants, wrong slice boundaries, and over-designed scope.
The task context provides the plan path. Read the plan document and any linked behavior contract.
Fresh-review evidence boundary: Main reviewer must not consult project memory, prior sessions, rollout summaries, or external history. The repository's own git history (log, blame, commit messages) is repo evidence, not external history. Use only explicit task input, the plan, linked contract, repo files read during this review, and test/build output produced in this run. Do not cite memory or include memory citations.
Read project stage guidance from the task context before applying this skill.
For plan review, stage affects over-design judgment and migration or backward-compatibility expectations; real surface completeness remains mandatory. Stage can lower the default resilience bar for MVP work, but it cannot excuse a plan that misses a real entry point or lacks verifiable acceptance criteria.
Note the assessed complexity (brief / standard / full), slice list, invariant matrix (if present), surfaces list (if present), and "done when" criteria for each slice.
Create a per-review audit directory:
RUN_ID=$(date +%Y%m%d-%H%M%S)-$RANDOM
mkdir -p "/tmp/convergo/cvg-plan-review/$RUN_ID"
Use this run id for auxiliary persona artifacts and the final review artifact.
For each file listed in the plan, read it. Also search for:
These checks are the plan reviewer's core job. They require reading actual code, not just the plan document.
For brief plans:
For standard plans:
For full plans (cross-cutting):
For standard and full plans, run auxiliary reviewers in parallel with your own step 3 checks. For brief plans, skip sub-agent dispatch and perform any needed checks inline.
Select reviewers:
feasibility-reviewer - always selected for standard and full plans.security-lens-reviewer - select when the plan touches auth, data handling,
external APIs, secrets, permissions, or trust boundaries.scope-guardian-reviewer - select when the plan has many slices, adds new
abstractions, or feels broader than the issue.For each selected reviewer:
references/personas/<reviewer-name>.md.<run-id> and <reviewer-name> with the actual values before dispatch.subagent_type, or platform-level custom-agent
registration for these plan-review personas.Immediately after each generic subagent dispatch, initialize an auxiliary
coverage record for that persona. Record the platform child identifier
returned by the dispatch tool (spawn id, session id, or thread id) in
agent_id. If the identifier is exposed only in a later completion
notification, update the coverage record before writing review.json. If
delegation is unavailable, keep the persona in the coverage object with
inline or skipped status and a null agent_id.
Auxiliary coverage must be an object keyed by reviewer name. Each persona's
artifact lives at <run-dir>/<reviewer-name>.json; do not repeat the path in
the record.
{
"feasibility-reviewer": {
"status": "dispatched | inline | skipped | failed",
"agent_id": "<platform child id: spawn, session, or thread id, or null>",
"artifact_written": true
}
}
Do not collapse selected reviewers to plain status strings. The audit artifact must make it possible to distinguish a real generic-subagent dispatch from an inline fallback with the same reviewer persona.
Each persona reviewer is read-only. It may inspect the plan, linked contract,
and codebase with non-mutating commands, but must not edit files, change
branches, commit, push, or create external artifacts except its own audit JSON
under /tmp/convergo/cvg-plan-review/<run-id>/.
Every persona prompt must include this boundary:
Do not consult project memory, prior sessions, rollout summaries, or external history. The repository's own git history (log, blame, commit messages) is repo evidence, not external history.
Use only explicit task input, the plan, linked contract, and repo files read during this review.
Do not cite memory or include memory citations.
Ask each persona reviewer to return:
{
"reviewer": "<reviewer-name>",
"status": "findings | no findings | blocked",
"findings": [
{
"severity": "P0 | P1 | P2",
"evidence": "<plan/code reference>",
"issue": "<plan-level gap>",
"suggested_plan_change": "<specific change>"
}
],
"residual_risk": "<optional>"
}
Severity for plan findings: P0 = the plan as written leads to broken or unsafe implementation (missing surface, wrong invariant, infeasible approach). P1 = the worker would have to invent a significant missing decision (missing slice, unverifiable criterion, missing dependency). P2 = plan quality issue that will not block a correct implementation. P0 and P1 block; P2 does not.
The persona must write that same JSON object to
/tmp/convergo/cvg-plan-review/<run-id>/<reviewer-name>.json before
returning it. The returned response must be one raw JSON object only: no
markdown fence, prose, citations, memory citations, or trailing text. If the
artifact write fails, still return the raw JSON.
Merge their findings with yours in step 4. Continue when one persona fails or
times out, but record the failure in the auxiliary coverage object and compact
coverage line. If a selected persona does not leave its artifact file, set
artifact_written to false but still merge a valid raw JSON return.
Start with an auxiliary coverage line:
Audit artifact: /tmp/convergo/cvg-plan-review/<run-id>/
Auxiliary coverage: feasibility-reviewer=<dispatched|inline|skipped|failed>, security-lens-reviewer=<dispatched|inline|skipped|failed>, scope-guardian-reviewer=<dispatched|inline|skipped|failed>
Use skipped for unselected reviewers and for all three reviewers on brief
plans. If a selected reviewer ran inline because generic subagents were
unavailable, use inline.
Before responding, write a single audit artifact
/tmp/convergo/cvg-plan-review/<run-id>/review.json:
{
"run_id": "<run-id>",
"branch": "<git branch --show-current>",
"head_sha": "<git rev-parse HEAD>",
"verdict": "<clean | blocking findings>",
"completed_at": "<ISO 8601 UTC timestamp>",
"auxiliary_coverage": "<object-form coverage from step 3b>",
"findings": "<merged findings>"
}
The response coverage line is a compact summary only. review.json must retain
the full object-form auxiliary coverage with status, agent_id, and
artifact_written for every selected, skipped, failed, or inline reviewer.
If this review is completed as part of an orchestrated callback workflow, include
Audit artifact: /tmp/convergo/cvg-plan-review/<run-id>/ in the
callback text.
If no blocking findings exist, the result is a clean plan verdict.
If blocking findings exist, produce one finding per missing or wrong plan element. Each finding should state:
Findings are about the plan structure, not implementation style. "Missing
surface: the cron job at src/jobs/billing-cron.ts also calls getUserTier" is
a good finding. "The function should use async/await" is not; that is the
worker's domain.
Plan-review findings are plan-gate findings. Do not emit code-gate findings, implementation bugs, or worker-discovered contract gaps from a cvg-plan-review task.
src/jobs/billing-cron.ts:45 calls getUserTier()
directly and is not in the surfaces list" is actionable.Orchestrate the build loop with split engines - Codex CLI sessions implement and take every first-pass review round while a high-taste Claude design model holds the final exit gate. Use when the user asks for a hybrid, split-model, or cross-model build loop, such as codex implementing with fable as the closer or final reviewer. Claude Code only.
Orchestrate the plan loop with split engines - a high-taste Claude design model drafts and revises the plan while Codex CLI sessions gate it as fresh plan reviewers. Use when the user asks for a hybrid, split-model, or cross-model planning loop, such as fable planning with codex reviewing. Claude Code only.
Review implementation against the plan and contract. Distinguish code bugs from contract gaps. Bounded convergence.
Orchestrate a monitored implementation loop where a worker implements the plan and fresh code reviewers gate the exit. Use when the user asks to run a supervised implementation or build loop on Codex threads or Claude Code background agents.
Orchestrate a monitored planning loop where a planner drafts the plan and fresh plan reviewers gate the exit. Use when the user asks to create or revise a plan through supervised specialist sessions on Codex threads or Claude Code background agents.
Create a plan for the assigned issue. Reads issue scope and codebase, produces a plan document with slices and invariant matrix when the work is cross-cutting.