cursor-review — скилл для Claude Code: обзор и установка
Скилл запускает проверку диффа через Cursor Composer и оставляет итоговый вердикт основному ревьюеру. Нужен для второй оценки изменений.
npx skills add Chachamaru127/claude-code-harness --skill cursor-review -a claude-codeЧто делает cursor-review
Скилл передаёт Cursor Composer дифф между базовой ссылкой и HEAD, статистику изменений и заданную область проверки. Composer работает в режиме чтения и ищет баги, регрессии, пропущенные тесты и небезопасные допущения. Для каждого замечания он должен указать место, триггер, влияние и проверяемое подтверждение.
Внутри используются cursor-companion.sh, resolve-impl-backend.sh и model-routing.sh; перед запуском определяется корень Harness через HARNESS_PLUGIN_ROOT, CLAUDE_PLUGIN_ROOT или CLAUDE_SKILL_DIR. Базовая ссылка берётся из TASK_BASE_REF или равна origin/main, её можно заменить через --base <ref>. Cursor не принимает решения APPROVE или REQUEST_CHANGES, а передаёт результат основному ревьюеру.
Скилл не должен передавать --write в cursor-companion.sh, поэтому он не вносит изменения. Если корень Harness не удаётся определить, запуск завершается ошибкой.
Какие задачи решает
- проверить дифф относительно
origin/main - получить второе мнение Cursor по изменению
- найти регрессии и пропущенные тесты
- отделить наблюдаемые дефекты от гипотез
- сохранить итоговый вердикт за основным ревьюером
Примеры запросов агенту
- Запусти
cursor:review --base origin/mainи проверь весь дифф. - Проведи
cursor:reviewдля области «изменения пространства имён команды». - Попроси Cursor перепроверить текущий дифф в режиме только чтения через
cursor:review.
Как установить cursor-review
1Через Skills CLI (Vercel)
npx skills add Chachamaru127/claude-code-harness --skill cursor-review -a claude-code2Вручную: положить файлы
~/.claude/skills/cursor-review/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/cursor-review/
1Через Skills CLI (Vercel)
npx skills add Chachamaru127/claude-code-harness --skill cursor-review -a codex2Вручную: положить файлы
.agents/skills/cursor-review/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add Chachamaru127/claude-code-harness --skill cursor-review -a cursor2Вручную: положить файлы
.cursor/skills/cursor-review/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install Chachamaru127/claude-code-harness cursor-review2Вручную: положить файлы
.github/skills/cursor-review/SKILL.md1Через Skills CLI (Vercel)
npx skills add Chachamaru127/claude-code-harness --skill cursor-review -a gemini-cli2Командой платформы
gemini skills install https://github.com/Chachamaru127/claude-code-harness --path skills/cursor-reviewВручную: положить файлы
.devin/skills/cursor-review/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add Chachamaru127/claude-code-harness --skill cursor-review -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о cursor-review
Как установить cursor-review в Claude Code?
Выполните npx skills add Chachamaru127/claude-code-harness --skill cursor-review -a claude-code, затем проверьте файл ~/.claude/skills/cursor-review/SKILL.md.
Что делает cursor-review?
Скилл отправляет дифф в Cursor Composer как второе мнение. Финальные решения APPROVE и REQUEST_CHANGES остаются у основного ревьюера.
Как задать другую базовую ссылку для cursor-review?
Передайте её через --base <ref>, например cursor:review --base origin/main. Если аргумент не задан, используется origin/main, если не установлена другая TASK_BASE_REF.
Исходный текст
SKILL.md · MIT
---
name: cursor-review
description: "Run a Cursor Composer review as an advisory second opinion while keeping the primary review verdict on the host brain. Use when user invokes cursor:review, asks Cursor to review, or wants composer to sanity-check a diff. Cursor never owns APPROVE/REQUEST_CHANGES."
description-en: "Run a Cursor Composer review as an advisory second opinion while keeping the primary review verdict on the host brain. Use when user invokes cursor:review, asks Cursor to review, or wants composer to sanity-check a diff. Cursor never owns APPROVE/REQUEST_CHANGES."
description-ja: "Cursor Composer に advisory second opinion としてレビューさせるスキル。cursor:review、Cursor にレビューして、composer で差分を sanity check して、という時に使う。primary verdict は常に host brain が持ち、Cursor は APPROVE/REQUEST_CHANGES を所有しない。"
allowed-tools: ["Read", "Bash", "Grep"]
argument-hint: "[--base <ref>] [review-scope]"
user-invocable: true
---
# cursor:review - Advisory Cursor Review
Cursor Composer (`composer-2.5-fast`) を read-only second opinion として使う review skill。primary verdict は host brain (Opus / Claude role) が出す。
## Quick Reference
```bash
cursor:review --base origin/main
cursor:review "Phase 88.5 command namespace diff"
```
## Rules
- Cursor review is advisory. The final verdict must come from the host reviewer.
- Do not pass `--write` to `cursor-companion.sh`.
- Use resolver/model routing, not direct env checks:
```bash
bash scripts/resolve-impl-backend.sh --backend cursor --role reviewer
bash scripts/model-routing.sh --host cursor --role worker --field model
```
- Prefer the existing `harness-review` contract when a full review is requested. This command exists for users who explicitly ask for the Cursor lane.
## Flow
1. Resolve the Harness helper root:
```bash
HARNESS_PLUGIN_ROOT="${HARNESS_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT:-}}"
if [ -z "$HARNESS_PLUGIN_ROOT" ] && [ -n "${CLAUDE_SKILL_DIR:-}" ]; then
probe="$(cd "${CLAUDE_SKILL_DIR}" && pwd)"
while [ "$probe" != "/" ] && [ ! -d "$probe/scripts" ]; do
probe="$(cd "$probe/.." && pwd)"
done
[ -d "$probe/scripts" ] && HARNESS_PLUGIN_ROOT="$probe"
fi
if [ -z "$HARNESS_PLUGIN_ROOT" ]; then
echo "ERROR: HARNESS_PLUGIN_ROOT is not set and could not be derived from CLAUDE_PLUGIN_ROOT or CLAUDE_SKILL_DIR" >&2
exit 2
fi
```
2. Determine review scope:
```bash
BASE_REF="${TASK_BASE_REF:-origin/main}"
REVIEW_SCOPE="${ARGUMENTS:-}"
if [ -n "${REVIEW_SCOPE}" ]; then
set -- ${REVIEW_SCOPE}
while [ "$#" -gt 0 ]; do
case "$1" in
--base)
BASE_REF="${2:?--base requires a ref}"
shift 2
;;
--base=*)
BASE_REF="${1#--base=}"
shift
;;
*)
shift
;;
esac
done
fi
DIFF_STAT="$(git diff --stat "${BASE_REF}..HEAD")"
DIFF_TEXT="$(git diff "${BASE_REF}..HEAD")"
```
3. Ask Cursor in read-only mode:
```bash
PROMPT="$(cat <<EOF
Review this diff as an advisory second opinion.
Base ref: ${BASE_REF}
Requested scope: ${ARGUMENTS:-full diff}
Requirement, purpose and DoD: <original request and completion criteria>
Spec and validation evidence: <relevant paths and observed results>
Focus on bugs, regressions, missing tests, and unsafe assumptions. Do not propose broad refactors.
Use the supplied requirement, DoD, spec and validation evidence to assess the requested scope; inspect missing context read-only.
For each finding, state its location, trigger, impact and checkable evidence. Separate hypotheses from observed defects; do not invent findings to fill a quota.
Return an assessment only. Do not implement changes or treat the implementation worker's self-report as verification.
Diff stat:
${DIFF_STAT}
Diff:
${DIFF_TEXT}
EOF
)"
bash "${HARNESS_PLUGIN_ROOT}/scripts/cursor-companion.sh" task "${PROMPT}"
```
4. Host reads Cursor's output and performs the primary review:
- Findings first, ordered by severity.
- Mark Cursor-originated points as advisory when used.
- `APPROVE` / `REQUEST_CHANGES` must be the host decision, not a copied Cursor verdict.
## Output
Use the standard review shape:
- findings
- open questions
- validation run
- final host verdict
© Chachamaru127 · MIT · Chachamaru127/claude-code-harness