v0.4.0 — /cursor:adversarial-review + estimate-first reviews + composer-prompting skill
LatestPorted from upstream openai/codex-plugin-cc, adapted to the Cursor CLI.
Added
/cursor:adversarial-review— a first-class steerable review command that challenges the chosen implementation and design (assumptions, tradeoffs, failure modes, whether a different approach would be simpler or safer), not just implementation defects. Reuses the existing review runtime (review.mjs --adversarial), so it supports--base <ref>,--scope,--model,--wait/--background, and free-form focus text, and is tracked as a normal job (/cursor:status,/cursor:result,/cursor:cancel). Promotes what used to be only the--adversarialflag on/cursor:reviewinto a discoverable command with sharper framing.composer-promptingskill — the Cursor/Composer prompt-shaping guidance (repo grounding, the five-section prompt anatomy + guardrails, chunking heuristics, model selection, resume-vs-fresh) now lives inplugins/cursor/skills/composer-prompting/SKILL.md. Thecursor-runnersubagent references it via a newskills:frontmatter entry instead of restating the mechanics inline.
Changed
/cursor:reviewand/cursor:adversarial-reviewestimate the diff before running. When neither--waitnor--backgroundis passed, the command inspectsgit status/git diff --shortstatto gauge review size, then asks once (viaAskUserQuestion) whether to wait or run in the background — recommending background for anything beyond a tiny 1–2 file change. Explicit--wait/--backgroundskip the question. The commands moved from an auto-executing one-liner wrapper to a model-orchestrated flow; theirallowed-toolsnow includeBash(git:*)andAskUserQuestion. Background runs still use the plugin's own detached worker (the script returns a job id immediately), not a Claude background task.cursor-runnersubagent slimmed — the prompt-anatomy, chunking, model, and resume/fresh sections were extracted into thecomposer-promptingskill; the agent now points at the skill and keeps only its operational spine (ground → invoke/cursor:delegate→ return verbatim) and guardrails.
Notes
/cursor:reviewis now user-invoked only (disable-model-invocation: true, matching upstream).- Deliberately skipped this release: the stop-review-gate
Stophook and/transfer(the latter depends on a Codex-specific external-session importer thatcursor-agentdoes not have).
Full changelog: https://github.com/freema/cursor-plugin-cc/blob/main/CHANGELOG.md