# Plan Cross Review

> Spawns two subagents (Fable 5 High and GPT 5.6 SOL High) to independently review the current Plan-mode plan, cross-presents each review to the other model, then summarizes change proposals for the user. Use only when explicitly invoked (e.g. /plan-cross-review or "plan cross review").

- Skill: `frankhildebrandt/plan-cross-review` (Agent Skill)
- Install (CLI): `npx skillmds@latest add frankhildebrandt/plan-cross-review`
- Raw SKILL.md: https://api.skillmd.com/api/skills/frankhildebrandt/plan-cross-review/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: frankhildebrandt (https://skillmd.com/u/frankhildebrandt)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/frankhildebrandt/plan-cross-review

---


# Plan Cross-Review

Dual-model review of the **current Plan-mode plan**, with a cross-critique pass, then a consolidated proposal list for the user.

## Models (exact Task `model` slugs)

| Label (user-facing) | Task `model` value |
|--------------------|--------------------|
| Fable 5 High | `claude-fable-5-thinking-high` |
| GPT 5.6 SOL High | `gpt-5.6-sol-high` |

When talking to the user, use the labels. When calling `Task`, use only the slugs above. Do not substitute other models.

## Preconditions

1. There must be an active **Plan-mode plan** in this conversation (the plan the user is currently building/editing in Plan mode).
2. If no plan content is available, stop and ask the user to open/share the plan or switch into Plan mode first. Do not invent a plan.
3. Do not edit the plan unless the user explicitly asks after seeing the summary.

## Workflow

Copy and track:

```
Plan Cross-Review Progress:
- [ ] 1. Capture current plan
- [ ] 2. Parallel independent reviews
- [ ] 3. Cross-critique pass
- [ ] 4. Consolidate and present to user
```

### Step 1: Capture current plan

Obtain the **verbatim** current Plan-mode plan text (the exact document/body from Plan mode).

- Prefer the latest plan version if multiple exist.
- Store it once as `ORIGINAL_PLAN` and reuse that **identical** string in every `Task` prompt (Steps 2 and 3).
- Optionally note user constraints **separately** from the plan block — never merge them into the plan text.
- **Forbidden:** rewriting, condensing, outlining, "key points", paraphrasing, or relabeling a summary as the full plan.

### Plan payload integrity (mandatory)

In **every** subagent prompt (independent review **and** cross-critique):

1. Include a fenced block labeled exactly `ORIGINAL_PLAN (verbatim — do not treat anything else as the plan):`.
2. Paste `ORIGINAL_PLAN` **byte-for-byte / character-for-character** — same headings, lists, paths, todos, open questions. No truncation for length.
3. Never invent a section titled like "Vollständiger Plan" / "Full plan" that contains a summary. If you must refer to completeness, only the verbatim block counts.
4. Cross-critique prompts must use the **same** `ORIGINAL_PLAN` capture as Step 2 — not a rewrite informed by the reviews, not a "cleaned" plan, not deltas applied.

If the plan is too large for one prompt, split **only** by contiguous verbatim chunks with explicit part markers (`ORIGINAL_PLAN part 1/N` …) that concatenate to the original; still never summarize.

### Step 2: Parallel independent reviews

Launch **two** `Task` subagents **in the same turn** (`run_in_background` only if Multitask Mode requires it; otherwise wait for both).

Use `subagent_type: "generalPurpose"` for both.

**Agent A — Fable 5 High**
- `model`: `claude-fable-5-thinking-high`
- `description`: `Fable plan review`

**Agent B — GPT 5.6 SOL High**
- `model`: `gpt-5.6-sol-high`
- `description`: `GPT plan review`

Give each the same review brief (below) plus the **verbatim** `ORIGINAL_PLAN` block. They must **not** see each other's output in this step.

#### Independent review brief (same for both)

```
You are reviewing a Cursor Plan-mode implementation plan. Do not implement anything.

Evaluate:
1. Completeness vs stated goals
2. Correctness / technical risk
3. Sequencing and dependencies
4. Missing steps, edge cases, verification
5. Scope creep or unnecessary work
6. Ambiguities that should be resolved before coding

Return ONLY this structure:

## Verdict
One of: Ready / Needs revision / Major gaps
One-sentence rationale.

## Strengths
- ...

## Issues
For each issue:
- Severity: Critical | Important | Nice-to-have
- Where: which plan section/step
- Problem: ...
- Suggested change: concrete plan edit (wording or structural)

## Open questions
- ...

## Proposed plan deltas
Numbered, actionable edits the user could apply to the plan (not code).
```

### Step 3: Cross-critique pass

After both independent reviews return, launch **two more** `Task` subagents in parallel.

**Critical:** Cross-critique input for the plan is again the **unchanged** `ORIGINAL_PLAN` from Step 1. Do **not** pass a summarized plan, a “revised” plan, or any reconstruction labeled as complete/full. Only the peer **review text** is new input.

**Blind peer review (mandatory):** Cross-critique prompts must **not** reveal which model wrote the review being critiqued. Do not name Fable, GPT, Claude, OpenAI, model slugs, or “Agent A/B”. Strip any such labels from the pasted review if present. Refer only to a neutral `PEER_REVIEW` block. The parent agent keeps the mapping privately for Step 4.

**Agent C — Fable cross-critique** (`claude-fable-5-thinking-high`, description: `Fable cross-critique`)
- Input: verbatim `ORIGINAL_PLAN` + independent review from GPT, labeled only as `PEER_REVIEW`
- Task: agree/disagree with each issue and proposed delta; note blind spots; flag weak or wrong suggestions.

**Agent D — GPT cross-critique** (`gpt-5.6-sol-high`, description: `GPT cross-critique`)
- Input: verbatim `ORIGINAL_PLAN` + independent review from Fable, labeled only as `PEER_REVIEW`
- Same critique instructions as Agent C.

#### Cross-critique brief

```
You are cross-checking a peer review of a Plan-mode plan. Do not implement.

You receive:
(1) ORIGINAL_PLAN — verbatim Plan-mode text. Treat only this block as the plan. Ignore any implied rewrite.
(2) PEER_REVIEW — an anonymized review of that same original plan. Do not try to identify who wrote it.

Do not assume the plan was edited. Critique the peer review against the verbatim original only.

For each Issues item and Proposed plan delta in PEER_REVIEW:
- Stance: Agree / Partial / Disagree
- Why (1-2 sentences)
- Better alternative if Disagree or Partial

Then add:
## Added findings
Issues or deltas the peer review missed (same severity scale).

## Cross-pass summary
What should definitely change in the plan vs what is optional noise.
```

### Step 4: Consolidate and present to user

Synthesize all four outputs yourself (parent agent). Do **not** auto-apply plan edits.

Present in this format:

```markdown
# Plan Cross-Review

## Consensus
- Shared verdict (reconcile Ready / Needs revision / Major gaps)
- 3–7 bullets both models effectively agree on

## Disagreements
| Topic | Fable 5 High | GPT 5.6 SOL High | Recommendation |
|-------|----------------|------------------|----------------|
| ... | ... | ... | ... |

## Recommended plan changes
Ordered by priority (Critical → Important → Nice-to-have).
For each:
1. **Change:** …
2. **Why:** …
3. **Supported by:** Fable / GPT / both (after cross-pass)

## Optional / contested
Changes only one model still pushes after cross-critique.

## Suggested next step
Ask whether to apply specific recommended changes to the Plan-mode plan (list them), and wait for user confirmation before editing the plan.
```

Keep the user-facing summary concise. Link or briefly quote plan sections instead of dumping raw subagent transcripts unless the user asks for full reviews.

## Rules

- Always run the two independent reviews **in parallel**, then the two cross-critiques **in parallel**.
- Never skip the cross-critique pass.
- **Never alter, summarize, or relabel the plan payload** when calling subagents — especially in the cross-critique round. Verbatim `ORIGINAL_PLAN` only.
- In cross-critique prompts, **never disclose the peer reviewer's model identity** (names, brands, or slugs); use only `PEER_REVIEW`.
- Never modify the plan, code, or files as part of this skill unless the user explicitly requests applying changes afterward.
- If a `Task`/`model` call fails (unsupported model), report which slug failed and stop that branch; still deliver whatever completed, clearly marked incomplete.
- Do not mention internal skill authoring details unless asked.

