Review Packet
Overview
Package the current work into one self-contained, routed document that something outside
this thread can use: an external reviewer, the adversarial-review critic, or a brand-new
agent thread continuing the work. One file — a routing preamble, a shared context core, and a
continuation layer.
Core principle: a reader can only use what they can see. A reviewer can't critique reasoning
that isn't written down; a fresh thread can't resume work whose status, file locations, and
next step aren't written down. The packet carries both the reasoning and the state.
When to Use
- Hand a design to an external reviewer (paste into ChatGPT/Codex/Gemini).
- Feed
adversarial-review — its context core (§2–§7) becomes that skill's requirements.md;
it injects its own plan-critic.
- Catch up / hand off the work to a new thread or a different agent (you're out of context;
someone else continues).
- Not for: reviewing a code diff (use
/code-review).
Workflow
- Locate the design. Newest
docs/superpowers/specs/*-design.md; if there's no spec,
reconstruct from this conversation.
- Mine the conversation for what the next reader cannot see — both the reasoning and the state:
- original request, verbatim; background + invariants; the decision log (chosen,
why, and what was considered + rejected/deferred, and why); the soft spots (proactive);
- current status — what's done / in-flight / pending / blocked; current rev; last decision;
- artifact & file map — absolute paths to the spec, this packet, the skill/code, the branch;
- next actions & how to resume — the immediate next step, what to read first, which
skill/command to run, and the working conventions to honor (e.g. never commit; the
brainstorm→writing-skills/writing-plans flow; project rules).
- Fill every REQUIRED slot in
references/packet-template.md (including §0 routing and §9–§11).
- Write to
docs/superpowers/specs/YYYY-MM-DD-<topic>-review-packet.md. Do not commit.
- Hand off. Print the path and which sections each consumer reads (review / adversarial-review
/ catch-up). Offer to print inline.
What Makes the Packet Work (the contract)
- Self-contained — inline everything; it works even for a reader with no repo access.
- Routed — the §0 preamble sends each of the three consumers to its sections, so the review
wrapper never hijacks a catch-up or adversarial-review reader.
- Expose the reasoning — rejected/deferred alternatives with their why.
- Surface soft spots honestly — a dedicated "scrutinize these" section.
- Continuation-complete — a fresh thread can resume from it alone: current status, an
absolute file map, and the immediate next action are all present and concrete.
- Adversarial (for the review consumer) — the wrapper tells an external reviewer to find
problems; for
adversarial-review, feed §2–§7 and let it inject its own critic.
Common Mistakes (from baseline testing)
| Mistake |
Fix |
| No current-status / next-action |
A continuation thread does the wrong thing — baseline fresh threads "produced a review" instead of resuming. State status + the immediate next action |
| Relative paths or "see the spec" |
A new thread/agent can't open them — use absolute paths in the file map |
| Review prompt with no routing preamble |
Fed to adversarial-review it collides with that skill's own critic; a catch-up thread adopts the reviewer persona instead of continuing. Add §0 routing |
| Omitting working conventions |
The new thread violates them (commits, skips the next skill). List no-commit + the next step |
| Rejected alternatives dropped |
The reviewer can't attack reasoning they can't see — include considered/rejected + why |
| Echoing only the user's flagged doubts |
Proactively surface the subtle risks nobody raised |
| Linking instead of inlining |
Inline it; an external reader has no access |
| Committing the file |
Leave it for the user to commit |
Reference
references/packet-template.md — the section skeleton with REQUIRED slots. Fill all of them.
1---2name: review-packet3description: Review Packet4---56# Review Packet78## Overview910Package the current work into one **self-contained, routed** document that something *outside11this thread* can use: an external reviewer, the `adversarial-review` critic, or a brand-new12agent thread continuing the work. One file — a routing preamble, a shared context core, and a13continuation layer.1415**Core principle:** a reader can only use what they can see. A reviewer can't critique reasoning16that isn't written down; **a fresh thread can't *resume* work whose status, file locations, and17next step aren't written down.** The packet carries both the reasoning *and* the state.1819## When to Use2021- Hand a design to an **external reviewer** (paste into ChatGPT/Codex/Gemini).22- **Feed `adversarial-review`** — its context core (§2–§7) becomes that skill's `requirements.md`;23 it injects its own plan-critic.24- **Catch up / hand off** the work to a new thread or a different agent (you're out of context;25 someone else continues).26- **Not for:** reviewing a code diff (use `/code-review`).2728## Workflow29301. **Locate the design.** Newest `docs/superpowers/specs/*-design.md`; if there's no spec,31 reconstruct from this conversation.322. **Mine the conversation for what the next reader cannot see** — both the reasoning and the state:33 - **original request, verbatim**; **background + invariants**; the **decision log** (chosen,34 why, *and what was considered + rejected/deferred, and why*); the **soft spots** (proactive);35 - **current status** — what's done / in-flight / pending / blocked; current rev; last decision;36 - **artifact & file map** — **absolute** paths to the spec, this packet, the skill/code, the branch;37 - **next actions & how to resume** — the immediate next step, what to read first, which38 skill/command to run, and the **working conventions** to honor (e.g. never commit; the39 brainstorm→writing-skills/writing-plans flow; project rules).403. **Fill every REQUIRED slot** in `references/packet-template.md` (including §0 routing and §9–§11).414. **Write** to `docs/superpowers/specs/YYYY-MM-DD-<topic>-review-packet.md`. **Do not commit.**425. **Hand off.** Print the path and which sections each consumer reads (review / adversarial-review43 / catch-up). Offer to print inline.4445## What Makes the Packet Work (the contract)4647- **Self-contained** — inline everything; it works even for a reader with no repo access.48- **Routed** — the §0 preamble sends each of the three consumers to its sections, so the review49 wrapper never hijacks a catch-up or adversarial-review reader.50- **Expose the reasoning** — rejected/deferred alternatives *with their why*.51- **Surface soft spots honestly** — a dedicated "scrutinize these" section.52- **Continuation-complete** — a fresh thread can resume from it *alone*: current status, an53 absolute file map, and the immediate next action are all present and concrete.54- **Adversarial (for the review consumer)** — the wrapper tells an external reviewer to find55 problems; for `adversarial-review`, feed §2–§7 and let it inject its own critic.5657## Common Mistakes (from baseline testing)5859| Mistake | Fix |60|---|---|61| No current-status / next-action | A continuation thread does the *wrong thing* — baseline fresh threads "produced a review" instead of resuming. State status + the immediate next action |62| Relative paths or "see the spec" | A new thread/agent can't open them — use **absolute** paths in the file map |63| Review prompt with no routing preamble | Fed to `adversarial-review` it collides with that skill's own critic; a catch-up thread adopts the reviewer persona instead of continuing. Add §0 routing |64| Omitting working conventions | The new thread violates them (commits, skips the next skill). List no-commit + the next step |65| Rejected alternatives dropped | The reviewer can't attack reasoning they can't see — include considered/rejected + *why* |66| Echoing only the user's flagged doubts | Proactively surface the subtle risks nobody raised |67| Linking instead of inlining | Inline it; an external reader has no access |68| Committing the file | Leave it for the user to commit |6970## Reference7172- `references/packet-template.md` — the section skeleton with REQUIRED slots. Fill all of them.