critique · diff
git:20260502.5bc84e8 to git:20260912.5e86435
67 added, 87 removed. Audit A to A.
---
name: critique
- description: "Provide critique on investigation results via human feedback, Codex consultation, or self-review. Can trigger additional investigation cycles for deepen/explore feedback. Use when iterating on research, requesting AI review, or providing human feedback."
+ description: "This skill reviews research findings with user feedback, Codex, or self-review. You use it to check results or direct more investigation."
user-invocable: true
argument-hint: "\"<feedback>\" | --codex | --self"
license: Apache-2.0
- compatibility: "--codex mode requires an MCP-capable host with the codex-cli MCP server configured; --self and human-feedback modes have no extra requirements."
+ compatibility: "Codex mode requires an MCP host with the codex-cli server. Other modes need no additional tools."
---
# Critique
- Provide external perspective on investigation results. Three modes: human feedback, Codex consultation, and self-review. Can trigger additional investigation cycles when feedback requires deeper exploration.
+ You must read and apply the [language rules](../reaper/references/language.md) before you write any output.
## Usage
- Invoke this skill by name; pass either feedback as a quoted string, `--codex`, or `--self`. On slash-command hosts, prefix with `/` (e.g. `/critique "<feedback>"`).
+ You invoke this skill by name with quoted feedback, `--codex`, or `--self`. Slash-command hosts use `/critique <args>`.
```
- # Human feedback — iterate on existing results
critique "dig deeper into the liveness proof gap under partial synchrony"
-
- # External-model consultation — get AI devil's advocate or inspiration (requires MCP host)
critique --codex
-
- # Self-review — agent reviews its own findings for gaps
critique --self
```
-
## Inputs
- **Always read** before starting:
- - `reaper-workspace/notes/current-understanding.md` — the "branch tip" of accumulated knowledge
- - `reaper-workspace/notes/results.md` — what's been tried and what happened
- - `reaper-workspace/notes/problem-statement.md` — model assumptions and property definitions
- - `reaper-workspace/notes/ideas.md` — the ideas to investigate
- - `reaper-workspace/feedbacks/` — prior feedback rounds
+ You always read these sources:
- **Lazy-load only when needed:**
- - `reaper-workspace/notes/paper-summary.md` — the source paper (if provided)
- - `reaper-workspace/notes/literature.md` — known prior work
- - `reaper-workspace/papers/` — downloaded PDFs and per-paper notes
+ - `reaper-workspace/notes/current-understanding.md`
+ - `reaper-workspace/notes/results.md`
+ - `reaper-workspace/notes/problem-statement.md`
+ - `reaper-workspace/notes/ideas.md`
+ - `reaper-workspace/feedbacks/`
- ## Mode: Human Feedback
+ You read these sources only when a specific question needs them:
- When the argument is quoted text, the skill enters human feedback mode. This is used after investigation has produced results and the user wants to refine, deepen, or challenge specific findings.
+ - `reaper-workspace/notes/paper-summary.md`, if it exists.
+ - `reaper-workspace/notes/literature.md`
+ - `reaper-workspace/papers/`
- ### 1. Determine the Feedback Round
+ ## Human Feedback
- Check `reaper-workspace/feedbacks/` for existing `round-*.md` files. The new round number is one greater than the highest existing round, or 1 if none exist.
+ Quoted feedback selects this mode.
+ ### 1. Set the Round Number
+
+ You check `reaper-workspace/feedbacks/round-*.md`. N is one greater than the highest existing round, or 1 for the first round.
+
### 2. Classify and Save Feedback
- Classify the user's feedback and write `reaper-workspace/feedbacks/round-N.md`:
+ You split mixed feedback into distinct requests. You assign one category to each request.
+ You write `reaper-workspace/feedbacks/round-N.md`:
```markdown
# Feedback Round N
- **User request**: [the user's feedback, verbatim or lightly paraphrased]
+ **User request**: [You copy the user's feedback exactly.]
**Category**: [scope | deepen | explore | rewrite]
- **Action plan**: [what will be done]
+ **Action plan**: [You state the required actions.]
```
- Categories:
-
- | Category | Signal | Example |
- |---|---|---|
- | **scope** | Change assumptions, threat model, or framing | "What if we assume a stronger adversary?" |
- | **deepen** | Dig into a specific claim, finding, or proof step | "The proof gap in Theorem 3 — find a concrete counterexample" |
- | **explore** | Investigate an area the report didn't cover | "What about liveness under partial synchrony?" |
- | **rewrite** | Improve clarity, structure, or presentation only | "Make the contributions more concrete" |
-
- ### 3. Execute
-
- **scope**: Return control to the orchestrator — this requires re-running `/formalize-problem` before investigation. Do not run cycles yourself; instead, write the feedback file and indicate that re-formalization is needed.
-
- **deepen**: Invoke the `/brainstorm` skill with `"context from the user's feedback"` to generate targeted hypotheses based on the feedback, then invoke the `/investigate` skill with argument `5`.
+ | Category | Required change |
+ |---|---|
+ | `scope` | The feedback changes assumptions, the threat model, or the research question. |
+ | `deepen` | The feedback requests more evidence for a specific claim or proof step. |
+ | `explore` | The feedback requests research on a topic that the report does not cover. |
+ | `rewrite` | The feedback changes only clarity, structure, or presentation. |
- **explore**: If the area may need additional literature, use the search scripts first and update `literature.md`. Then invoke the `/brainstorm` skill with `"context from the user's feedback"` to generate hypotheses for the new area, followed by the `/investigate` skill with argument `5`.
+ ### 3. Act on Feedback
- **rewrite**: No investigation cycles needed. Return control to the orchestrator to re-run `/synthesize` only.
+ - **scope:** You return to the orchestrator with a request to run `formalize-problem` again. You do not run investigation cycles yet.
+ - **deepen:** You invoke the `brainstorm` skill with the feedback context. You then invoke the `investigate` skill with `5`.
+ - **explore:** You search for additional literature if necessary. You update `literature.md`, invoke `brainstorm` with the feedback context, then invoke `investigate` with `5`.
+ - **rewrite:** You return to the orchestrator with a request to run `synthesize` again.
- For **deepen** and **explore**, after completing the cycles, the orchestrator should re-run `/synthesize` to produce an updated report.
+ After deepen or explore cycles, the orchestrator invokes `synthesize` for an updated report.
- ## Mode: Codex Consultation (`--codex`)
+ ## Codex Consultation (`--codex`)
- Consult an external AI (OpenAI Codex via MCP) for an independent second opinion on the current investigation state. This establishes an automated feedback loop where Codex plays **devil's advocate** or provides **alternative inspiration**.
+ You use Codex through MCP for a separate review. You follow `../reaper/references/codex-consultation.md` for setup, fallback, context size, and session continuity.
- See `../reaper/references/codex-consultation.md` for MCP setup, fallback behavior, session continuity, and context compression rules. The critique skill's Codex mode is the most thorough consultation — other skills have lighter-weight checkpoint consultations.
+ ### Select a Role
- ### Determining the Role
+ You count existing `codex-consultation-*.md` files in `reaper-workspace/feedbacks/`. The next consultation number N follows that count.
- Check `reaper-workspace/feedbacks/` for existing `codex-consultation-*.md` files. Count them to determine the consultation number N. Alternate roles:
+ For odd N, you ask Codex to challenge the findings. You send these inputs:
- - **Devil's Advocate** (odd N: 1st, 3rd, 5th, ...):
- Ask Codex to challenge the current findings. Send it a **compressed context** (not full files):
- - The **last 5 findings** from `current-understanding.md` (extract the most recent insights, ~500 words — not the full file)
- - A **summary row** from `notes/results.md` (e.g., "Last 10 cycles: 6 keep, 4 discard; key patterns: [list]")
- - The prompt: *"You are reviewing a research investigation. Play devil's advocate: identify the weakest claims, unstated assumptions, logical gaps, or alternative explanations that the investigators may have missed. Be specific — point to exact claims and explain why they might be wrong."*
+ - The last five findings from `current-understanding.md`, in about 500 words.
+ - A summary of recent results, including keep and discard counts and patterns.
+ - A review request that names exact claims, concerns, and reasons, including weak evidence, hidden assumptions, or alternative explanations.
- - **Inspiration / Alternative Angles** (even N: 2nd, 4th, 6th, ...):
- Ask Codex for fresh perspectives. Send it a **compressed context**:
- - The **last 5 findings** from `current-understanding.md` (~500 words)
- - The **unresolved hypotheses only** from `ideas.md` (skip resolved ones)
- - The prompt: *"You are consulting on a research investigation. Suggest alternative proof strategies, related techniques from other fields, or hypotheses the investigators haven't considered. Focus on non-obvious connections and approaches that could break through current blockers."*
+ For even N, you ask Codex for alternative approaches. You send these inputs:
- **Context efficiency**: Sending compressed context (~800 words) to Codex instead of full files (~5000 words) reduces latency and improves response quality by focusing Codex on what matters most.
+ - The last five findings, in about 500 words.
+ - Only unresolved hypotheses from `ideas.md`.
+ - A request for alternative proof methods, techniques from other fields, and new hypotheses.
- ### Processing Codex Feedback
+ You limit context to about 800 words without full workspace files.
- 1. **Log** the Codex response to `reaper-workspace/feedbacks/codex-consultation-N.md`.
- 2. **Triage** the feedback:
- - **Actionable critique**: If Codex identifies a genuine gap or flaw, add a new hypothesis to `ideas.md` with the next available H-number (continuing from the highest existing H# in `ideas.md`), tagged `[Codex-N]` in the Source field.
- - **Alternative approach**: If Codex suggests a promising technique, add it as a hypothesis marked `[Codex-N]`.
- - **Already addressed**: Note this in the consultation log and move on.
- - **Irrelevant or wrong**: Dismiss with a brief note in the log.
- 3. **Do not block** on Codex feedback. If the MCP call times out or fails, log the failure and return.
+ ### Process Feedback
- ### Session Continuity
+ 1. You save the response to `reaper-workspace/feedbacks/codex-consultation-N.md`.
+ 2. You add a hypothesis for each supported gap or useful alternative technique.
+ 3. You continue H numbers from the highest number in `ideas.md`.
+ 4. You tag new hypotheses `[Codex-N]` in the Source field.
+ 5. You record a short explanation for feedback that previous work covers or evidence rejects.
+ 6. If the MCP call fails or times out, you log the failure and return.
- Use a single Codex session ID across all consultations within one investigation run. This allows Codex to build context across consultations. Pass the `sessionId` parameter to the `codex` tool, using a consistent ID like `"reaper-critique-<timestamp>"`.
+ You use one Codex session ID for the full investigation run. You pass it through `sessionId`, with a value such as `"reaper-critique-<timestamp>"`.
- ## Mode: Self-Review (`--self`)
+ ## Self-Review (`--self`)
- The agent reviews its own investigation results for gaps, inconsistencies, or missed angles.
+ You check your own findings for these issues:
- ### Process
+ - **Conflicts:** You identify incompatible claims within `current-understanding.md` or between that file and `results.md`.
+ - **Evidence gaps:** You identify unchecked assumptions or weak claims without an identified conflict.
+ - **New questions:** You identify questions outside the existing claims and assumptions.
- 1. Read `current-understanding.md`, `notes/results.md`, and `ideas.md`.
- 2. Identify:
- - **Weak claims**: Findings with low or medium confidence that haven't been strengthened.
- - **Untested assumptions**: Assumptions listed in hypotheses or proofs that haven't been validated.
- - **Missing angles**: Obvious questions raised by the current findings that haven't been investigated.
- - **Inconsistencies**: Claims in `current-understanding.md` that conflict with each other or with `notes/results.md`.
- 3. For each actionable finding, add a hypothesis to `ideas.md` with the next available H-number, tagged `[Self-N]` in the Source field (where N is one more than the count of existing self-review rounds).
- 4. If actionable hypotheses were added, invoke the `/investigate` skill with argument `3` to address them. The self-review findings are recorded as part of the cycle logs in `reaper-workspace/logs/` — no separate self-review file is needed.
+ For each issue that needs action, you add a hypothesis with the next H number. You tag it `[Self-N]` in the Source field. N is one greater than the number of previous self-review rounds. If you add hypotheses, you invoke the `investigate` skill with `3`.
+ You record self-review findings in cycle logs under `reaper-workspace/logs/`. You do not create a separate self-review file.
## Quality Criteria
- - Each investigate-critique loop produces a cycle log in `reaper-workspace/logs/` (append-only)
- - Human feedback is classified before action is taken
- - Codex consultations alternate between devil's advocate and inspiration roles
- - Self-reviews identify specific, actionable gaps — not vague concerns
- - New hypotheses generated by critique are tagged with their source (`[Round N]`, `[Codex-N]`, `[Self-N]`)
- - When critique triggers investigation cycles, results flow back through the normal investigation pipeline
+ - Each investigation and critique loop creates a cycle log. You never change an existing log.
+ - New hypotheses include source tags: `[Round N]`, `[Codex-N]`, or `[Self-N]`.
+ - Additional cycles use the normal investigation process.