harness-review

GitHub

多视角代码、计划与范围审查技能,含安全/质量检查。自动检测目标并分发至不同模式(代码、计划、安全等)。默认只读,禁止自动提交或推送,需用户明确授权。

skills/harness-review/SKILL.md Chachamaru127/claude-code-harness

Trigger Scenarios

代码审查请求 计划审查请求 范围分析请求

Install

npx skills add Chachamaru127/claude-code-harness --skill harness-review -g -y
More Options

Use without installing

npx skills use Chachamaru127/claude-code-harness@harness-review

指定 Agent (Claude Code)

npx skills add Chachamaru127/claude-code-harness --skill harness-review -a claude-code -g -y

安装 repo 全部 skill

npx skills add Chachamaru127/claude-code-harness --all -g -y

预览 repo 内 skill

npx skills add Chachamaru127/claude-code-harness --list

SKILL.md

Frontmatter
{
    "kind": "workflow",
    "name": "harness-review",
    "pair": "harness-work",
    "role": "evaluator",
    "owner": "harness-core",
    "shape": "evaluate",
    "since": "2026-05-05",
    "effort": "high",
    "context": "fork",
    "purpose": "Review code, plans, scope, and evidence before acceptance",
    "trigger": "review, レビューして, code review, plan review, scope analysis",
    "description": "HAR: Multi-angle code, plan, scope review. Security\/quality check. Trigger: review, code review, plan review, scope analysis. Do NOT load for: implementation, new features, bugfix, setup, release.",
    "allowed-tools": [
        "Read",
        "Grep",
        "Glob",
        "Bash",
        "Task",
        "Monitor",
        "AskUserQuestion"
    ],
    "argument-hint": "[code|plan|scope|--quick|--codex-closeout|--dual|--team-debate|--security|--ui-rubric]",
    "description-en": "HAR: Multi-angle code, plan, scope review. Security\/quality check. Trigger: review, code review, plan review, scope analysis. Do NOT load for: implementation, new features, bugfix, setup, release.",
    "description-ja": "HAR:コード・プラン・スコープを多角的にレビュー。セキュリティ・品質チェック。レビューして、レビュー、コードレビュー、プランレビュー、スコープ分析で起動。実装・新機能・バグ修正・セットアップ・リリースには使わない。",
    "user-invocable": true
}

Harness Review

Harness の統合レビュースキル。 この SKILL.md は薄い dispatcher であり、詳細な品質基準は references/ を読む。

if $ARGUMENTS == "": → 「今までの作業のレビュー」と解釈し、Review target detection を実行する → review target が 1 つに確定できる場合だけ自動開始する → review target が不明または複数候補の場合は AskUserQuestion で選択肢を出し、認識を揃えてから開始する

Output Contract (P35: 「止まったように見える」UX 対策)

skill 結論時の output の 最後の 1 行は必ず次の literal を含める:

↑この結果は Claude が要約します。Enter キーで次へ進むか、新規 prompt で別の指示を出してください。

これは <local-command-stdout> 経由で text response として表示されると user が「止まった」と感じる UX 問題への明示的な instruction (patterns.md P35)。

Dispatcher Contract

この skill の責務は review 判定だけ。 commit / push / release は既定では行わない。

  • review default read-only boundary: 既定は read-only。APPROVE でも自動 commit しない
  • Do not push just to review: review 目的だけで push しない
  • commit が必要な場合は、ユーザー明示依頼、harness-work、または harness-release の Work Commit Gate に委譲する
  • --commit-on-approve のような明示 opt-in が設計されるまで、この skill 単体の default side effect は禁止

Quick Reference

Command Mode Purpose
/harness-review code 今までの作業を自動検出して review
/harness-review --quick quick 小さな dirty change を軽く closeout
/harness-review --codex-closeout codex-closeout Codex 助言 + focused tests で closeout
/harness-review --dual dual Claude + Codex second opinion
--pre-review cursor code+pre-review fresh-context composer advisory pre-review before brain verdict(read-only)
/harness-review --cursor code+cursor-second-opinion core review gates + cursor second-opinion(brain 一次レビュー必須)
HARNESS_IMPL_BACKEND=cursor harness-review code+cursor-second-opinion default ON 時も core review gates に cursor second-opinion を自動加算。primary verdict は brain 固定
/harness-review --team-debate team-debate TeamAgent Debate を強制
/harness-review --security security security 専用 review
/harness-review plan plan Plans.md の計画 review
/harness-review scope scope scope creep / 漏れ review

Mode Decision

引数から実行 mode を決定し、必要な references/ を選択ロードする。

入力 mode 読む reference
引数なし / code code references/code-review.md, references/governance.md
--quick quick references/codex-closeout.md, references/code-review.md
--codex-closeout codex-closeout references/codex-closeout.md
--dual dual references/dual-review.md, references/team-debate.md
--team-debate team-debate references/team-debate.md, references/governance.md
--security security references/security-profile.md, references/governance.md
--ui-rubric ui-rubric references/ui-rubric.md
plan plan references/plan-review.md, references/governance.md
scope scope references/scope-review.md, references/governance.md
--cursor or resolver result cursor for no-arg / code review only code+cursor-second-opinion references/code-review.md, references/governance.md, references/cursor-review.md, references/dual-review.md
full full references/code-review.md, references/team-debate.md, references/dual-review.md

quickcodex-closeout は軽量 path。 小さな dirty change、single commit、PR branch の closeout を速く見る。 品質 gate を捨てるものではない。

Cursor Default ON

mode 判定時、明示 mode words (plan, scope, full) と明示フラグを先に確定する。no-arg / code review の場合だけ helper root を解決して resolver を 1 回だけ実行し、resolver 不在時は claude とみなす。

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 [ -x "${HARNESS_PLUGIN_ROOT:-}/scripts/resolve-impl-backend.sh" ]; then resolved_backend="$(bash "${HARNESS_PLUGIN_ROOT}/scripts/resolve-impl-backend.sh" --role reviewer)"; else resolved_backend="claude"; fi

no-arg / code review で結果が cursor の場合は --cursor と同じ cursor-second-opinion を追加するが、core review gates (references/code-review.md, references/governance.md) は必ず先に読み、Cursor reference は additive にだけ扱う。primary verdict は brain 側で維持し、cursor は dual_review.cursor_verdict の advisory に限る。plan / scope など明示 mode word は resolver result より優先し、cursor default によって plan/scope references も code/governance references も置き換えない。結果が claude / codex の場合は従来どおりで、review の primary 判定面は変えない。

Pre-Review Cursor (--pre-review cursor)

/harness-review --pre-review cursorbash scripts/pre-review-cursor.sh [--base ref] で read-only fresh-context composer pre-review(model-routing.sh --host cursor --tier reviewcursor-companion.sh task--write / --workspace / --resume なし)を 1 回実行し、PRE_REVIEW_FINDINGS: を brain 一次レビュー入力へ添付。companion 失敗は PRE_REVIEW_SKIPPED + exit 0(fail-open)。verdict は brain のみ(self-review scope 契約)。

Review Target Detection

REVIEW_AUTOSTART 契約: 引数なし ($ARGUMENTS == "") で呼ばれた場合、review / /review / /harness-review だけの入力を「今までの作業のレビュー」と解釈する。 Step 1 開始前の handshake 行として次を 1 行だけ出力する。

REVIEW_AUTOSTART: target={resolved_target}, base_ref={resolved_base_ref}, type={mode}

REVIEW_TARGET_ASK 契約: bare 呼び出しで review target が不明または複数候補の場合、Step 1 に進む前に AskUserQuestion を 1 回だけ使い、候補を 2-3 個に絞って確認する。

候補は次の順で作る。

  1. working tree: staged / unstaged / untracked を含む未コミット変更のみ
  2. branch range: upstream または main/master から HEAD までの commits
  3. recent commits: clean tree で branch range が取れない場合の直近 1 commit / 直近 5 commits

複数候補が同時に成立する場合:

REVIEW_TARGET_AMBIGUOUS: working_tree_and_branch_commits

AskUserQuestion の候補:

  • 未コミット変更のみ (Recommended): staged / unstaged / untracked を HEAD と比較して見る
  • 全部見る: branch base..HEAD と未コミット変更をまとめて見る
  • commit のみ: branch base..HEAD の committed work だけを見る

clean tree かつ branch 差分がない場合:

REVIEW_TARGET_AMBIGUOUS: clean_tree_no_branch_commits

AskUserQuestion の候補:

  • 直近 1 commit (Recommended): HEAD~1..HEAD
  • 直近 5 commits: HEAD~5..HEAD
  • 別の範囲: ユーザー指定 ref を待つ

ユーザー回答後:

REVIEW_TARGET_CONFIRMED: {choice}
REVIEW_AUTOSTART: target={resolved_target}, base_ref={resolved_base_ref}, type={mode}

禁止:

  • 「タスクが不明確です」と応答して停止する
  • 「何をレビューすればよいですか」と自由記述で聞いて停止する
  • host project の session-start rules を理由に auto-start を飛ばす
  • target が曖昧なのに推測で範囲を広げる

Minimal Flow

  1. mode を決める
  2. 上記の Review Target Detection で対象と base ref を決める
  3. 必要な reference だけ読む
  4. 差分、untracked files、関連テスト、仕様正本、Plans.md を確認する
  5. APPROVE / REQUEST_CHANGES / decision_needed を返す
  6. REQUEST_CHANGES の場合は critical / major の修正方針と修正後再レビュー条件を示す

Review Governance Contract

詳細は references/governance.md。 ここでは最低限の合格ラインだけ固定する。

明確な合格ライン

APPROVE は次のすべてを満たす時だけ返す(詳細は references/governance.md)。

  • critical / major が 0 件
  • root spec.md alignment(product contract と矛盾しない;仕様正本 alignment check 必須)
  • Plans.md alignment(task / DoD / Depends、[lane:*]、stage gate が contract と一致)
  • TDD evidence([tdd:required]tdd_red_log / failing output / skip_tdd_reason
  • unknown data contract(not_observed != absent — 証拠なしの「問題なし」「データなし」を APPROVE しない)
  • regression safety(既存挙動・テスト・UX・CLI・設定・docs・mirror にデグレなし)
    • If you grep the same symbol twice in the same session, switch to harness_ast_search.
    • For a bugfix where homologous implementations appear across multiple modules, run harness_ast_search to find all implementations before editing.
    • Only when changed files include .ts or .tsx, the DoD requires zero new harness_lsp_diagnostics errors; if the harness MCP is not connected or the changed file types are not eligible, treat diagnostics as not-configured and non-blocking.
  • evidence pack(accepted / rejected findings、focused tests、release-preflight warnings 処理)
  • TeamAgent Debate 未解消 disagreement なし

APPROVE は commit / push / PR 作成命令ではない(read-only boundary)。

TeamAgent Debate

詳細は references/team-debate.md。 TeamAgent Debate は、異なる見解を read-only で衝突させる review pass。

Agent 主な問い
Spec Agent 仕様正本と実装差分の矛盾を探す
Plans Agent Plans.md の task / DoD / Depends と差分の対応を確認する
Regression Agent 既存挙動・テスト・配布 mirror・CLI/skill UX のデグレを探す
Skeptic Agent 合格させたい前提で見落としている major risk を探す

Codex 環境で native TeamAgent が使えない場合でも、この gate を省略してはいけない。 codex-companion.sh review、利用可能な reviewer subagent、または明示的に分けた read-only manual-pass で同じ 2-4 視点を再現し、team_agent_modenative / codex-companion / manual-pass / unavailable を記録する。

Code Review Summary

詳細は references/code-review.md。 通常 code review は次を見る。

  • Security
  • Performance
  • Quality
  • Accessibility
  • AI Residuals
  • Spec Alignment
  • Plans Alignment
  • Regression Safety
  • TDD compliance

root spec.md alignment、Plans lane/stage、TDD evidence、unknown data contract、evidence pack の詳細は references/governance.mdreferences/code-review.md

AI Residualsscripts/review-ai-residuals.shscripts/review-weak-supervision-report.sh を優先して使う。 untracked も見る場合は --include-untracked を使う。 mockData, dummy, fake, localhost, TODO, FIXME, it.skip, test.skip, expect(true).toBe(true) などは候補であり、diff 文脈で severity を決める。 finding 段階は網羅優先。minor と判定した指摘も observations[] / recommendations[] に残し、gate は verdict 段階だけで行う(Opus 4.8 は low-severity の報告を絞る癖がある。references/code-review.md の Finding coverage 参照)。

Quick / Codex Closeout Summary

詳細は references/codex-closeout.md

軽量 path の原則:

  • target selection を先に固定する
  • Codex 指摘は advisory として扱い、実コードで確認してから採否を決める
  • final report には review command / tests / accepted findings / rejected findings / clean result を含める
  • stop-on-clean: clean result 後に、見栄えのためだけの追加 review をしない
  • Codex が使えない場合は full manual pass に fallback し、失敗を成功扱いしない

helper:

bash scripts/harness-review-closeout.sh --dry-run --uncommitted
bash scripts/harness-review-closeout.sh --base origin/main --parallel-tests --test "bash tests/test-harness-review-governance.sh"
bash scripts/harness-review-closeout.sh --commit HEAD

Plan Review Summary

詳細は references/plan-review.md。 Plan Review は Plans.md の DoD / Depends / Status と実装順序を見る。 仕様正本が必要なタスクで spec_path がない場合は、decision_needed として止める。

Scope Review Summary

詳細は references/scope-review.md。 Scope Review は、要求・差分・テスト・docs の境界が膨らんでいないかを見る。 範囲変更が必要なら、推測で進めず AskUserQuestion または plan 更新に戻す。

Security / UI / Dual

  • Security: references/security-profile.md
  • UI rubric: references/ui-rubric.md
  • high-res vision flow: references/vision-high-res-flow.md
  • Dual review: references/dual-review.md

/ultrareview は Harness flow 内では既定で呼ばない。 Harness flow の review-result.v1、commit guard、sprint-contract との接続を置き換えないため。 claude ultrareview [target] --json は CI / script からの second-opinion としてだけ扱う。

PR Host Boundary

GitHub-first。 PR host 上の review 事実は GitHub を正とし、local diff は補助証拠として扱う。 ただし local uncommitted review は GitHub に push しない。

Output Contract

User-facing prose follows the explicit session or project language. If no language is configured, use English. Use Japanese only when i18n.language: ja, CLAUDE_CODE_HARNESS_LANG=ja, or an explicit session instruction requests Japanese output. Machine-readable values stay English.

Start with the result summary.

## Review Result

### {APPROVE | REQUEST_CHANGES | decision_needed} - {one-line conclusion}

Target: `{BASE_REF}..HEAD` or `{target}`
Verification: {commands run}

Strengths:
- ...

Findings:
- [severity] file:line - issue and evidence

Next Actions:
- ...

Details:
```json
{
  "schema_version": "review-result.v1",
  "verdict": "APPROVE | REQUEST_CHANGES",
  "decision_needed": {
    "required": false,
    "ask_tool": "AskUserQuestion"
  },
  "accepted_findings": [],
  "rejected_findings": [],
  "acceptance_bar": {
    "critical_major_zero": true,
    "spec_alignment": "pass | fail | not_applicable",
    "plans_alignment": "pass | fail | not_applicable",
    "regression_safety": "pass | fail | not_applicable",
    "verification_evidence": "pass | fail | not_applicable"
  },
  "team_debate": {
    "required": false,
    "mode": "native | codex-companion | manual-pass | unavailable",
    "team_agent_mode": "native | codex-companion | manual-pass | unavailable",
    "agents": [],
    "disagreements": []
  },
  "critical_issues": [],
  "major_issues": [],
  "observations": [],
  "recommendations": []
}
```

Codex Environment

Codex 環境では使える tool が異なるが、合格ライン、仕様正本、Plans.md、デグレ、修正後再レビュー、AskUserQuestion / decision_needed.v1 の契約は同じ。

通常環境 Codex fallback
Task tool の TeamAgent Debate reviewer subagent / codex-companion.sh review / manual-pass
AskUserQuestion 使えない場合は decision_needed.v1 を stdout に出し、推測で進めない
TaskList Plans.md を直接読む

Related Skills

  • harness-work: REQUEST_CHANGES 後の修正実行
  • harness-plan: plan / scope / spec の更新
  • harness-release: review 済み work の commit / release

Version History

  • bfc2090 Current 2026-07-19 18:14

    将输出契约中的固定文字改为支持日、英及其他语言的多语言动态版本,以解决UX问题。

  • c220671 2026-07-05 14:48

Same Skill Collection

codex/.codex/skills/agent-browser/SKILL.md
codex/.codex/skills/auth/SKILL.md
codex/.codex/skills/breezing/SKILL.md
codex/.codex/skills/cc-cursor-cc/SKILL.md
codex/.codex/skills/cc-update-review/SKILL.md
codex/.codex/skills/ci/SKILL.md
codex/.codex/skills/crud/SKILL.md
codex/.codex/skills/cursor-do/SKILL.md
codex/.codex/skills/cursor-rescue/SKILL.md
codex/.codex/skills/cursor-review/SKILL.md
codex/.codex/skills/cursor-setup/SKILL.md
codex/.codex/skills/deploy/SKILL.md
codex/.codex/skills/failure-codifier/SKILL.md
codex/.codex/skills/generate-slide/SKILL.md
codex/.codex/skills/generate-video/SKILL.md
codex/.codex/skills/gogcli-ops/SKILL.md
codex/.codex/skills/harness-loop/SKILL.md
codex/.codex/skills/harness-orchestration/SKILL.md
codex/.codex/skills/harness-plan/SKILL.md
codex/.codex/skills/harness-progress/SKILL.md
codex/.codex/skills/harness-release/SKILL.md
codex/.codex/skills/harness-review/SKILL.md
codex/.codex/skills/harness-setup/SKILL.md
codex/.codex/skills/harness-sync/SKILL.md
codex/.codex/skills/harness-work/SKILL.md
codex/.codex/skills/maintenance/SKILL.md
codex/.codex/skills/memory/SKILL.md
codex/.codex/skills/notebookLM/SKILL.md
codex/.codex/skills/principles/SKILL.md
codex/.codex/skills/session-control/SKILL.md
codex/.codex/skills/session-init/SKILL.md
codex/.codex/skills/session-memory/SKILL.md
codex/.codex/skills/session-state/SKILL.md
codex/.codex/skills/session/SKILL.md
codex/.codex/skills/ui/SKILL.md
codex/.codex/skills/vibecoder-guide/SKILL.md
codex/.codex/skills/workflow-guide/SKILL.md
opencode/skills/agent-browser/SKILL.md
opencode/skills/auth/SKILL.md
opencode/skills/breezing/SKILL.md
opencode/skills/cc-cursor-cc/SKILL.md
opencode/skills/ci/SKILL.md
opencode/skills/crud/SKILL.md
opencode/skills/cursor-do/SKILL.md
opencode/skills/cursor-rescue/SKILL.md
opencode/skills/cursor-review/SKILL.md
opencode/skills/cursor-setup/SKILL.md
opencode/skills/deploy/SKILL.md
opencode/skills/failure-codifier/SKILL.md
opencode/skills/generate-slide/SKILL.md
opencode/skills/generate-video/SKILL.md
opencode/skills/gogcli-ops/SKILL.md
opencode/skills/harness-loop/SKILL.md
opencode/skills/harness-orchestration/SKILL.md
opencode/skills/harness-plan/SKILL.md
opencode/skills/harness-progress/SKILL.md
opencode/skills/harness-release/SKILL.md
opencode/skills/harness-review/SKILL.md
opencode/skills/harness-setup/SKILL.md
opencode/skills/harness-sync/SKILL.md
opencode/skills/harness-work/SKILL.md
opencode/skills/maintenance/SKILL.md
opencode/skills/memory/SKILL.md
opencode/skills/notebooklm/SKILL.md
opencode/skills/principles/SKILL.md
opencode/skills/session-control/SKILL.md
opencode/skills/session-init/SKILL.md
opencode/skills/session-memory/SKILL.md
opencode/skills/session-state/SKILL.md
opencode/skills/session/SKILL.md
opencode/skills/ui/SKILL.md
opencode/skills/vibecoder-guide/SKILL.md
opencode/skills/workflow-guide/SKILL.md
skills-codex/breezing/SKILL.md
skills-codex/harness-loop/SKILL.md
skills-codex/harness-work/SKILL.md
skills/agent-browser/SKILL.md
skills/auth/SKILL.md
skills/breezing/SKILL.md
skills/cc-cursor-cc/SKILL.md
skills/cc-update-review/SKILL.md
skills/ci/SKILL.md
skills/crud/SKILL.md
skills/cursor-do/SKILL.md
skills/cursor-rescue/SKILL.md
skills/cursor-review/SKILL.md
skills/cursor-setup/SKILL.md
skills/deploy/SKILL.md
skills/failure-codifier/SKILL.md
skills/generate-slide/SKILL.md
skills/generate-video/SKILL.md
skills/gogcli-ops/SKILL.md
skills/harness-loop/SKILL.md
skills/harness-orchestration/SKILL.md
skills/harness-plan/SKILL.md
skills/harness-progress/SKILL.md
skills/harness-release/SKILL.md
skills/harness-setup/SKILL.md
skills/harness-sync/SKILL.md
skills/harness-work/SKILL.md
skills/maintenance/SKILL.md
skills/memory/SKILL.md
skills/notebookLM/SKILL.md
skills/principles/SKILL.md
skills/session-control/SKILL.md
skills/session-init/SKILL.md
skills/session-memory/SKILL.md
skills/session-state/SKILL.md
skills/session/SKILL.md
skills/ui/SKILL.md
skills/vibecoder-guide/SKILL.md
skills/workflow-guide/SKILL.md
codex/.codex/skills/cursor-ask/SKILL.md
codex/.codex/skills/harness-accept/SKILL.md
codex/.codex/skills/harness-plan-brief/SKILL.md
opencode/skills/cursor-ask/SKILL.md
opencode/skills/harness-accept/SKILL.md
opencode/skills/harness-plan-brief/SKILL.md
skills/cursor-ask/SKILL.md
skills/harness-accept/SKILL.md
skills/harness-plan-brief/SKILL.md

Metadata

Files
0
Version
bfc2090
Hash
1a0e736e
Indexed
2026-07-05 14:48

ホーム - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-07-22 01:40
浙ICP备14020137号-1 $お客様$