[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M79B9P4DHZ95WDJJ16QW58CS":3,"skill-same:01M79B9P4DHZ95WDJJ16QW58CS":63},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":18,"linkOnly":19,"markdownContent":20,"markdownBody":21,"frontMatter":22,"refName":44,"commitSha":45,"skillDirectory":46,"forksCount":13,"repositoryHtmlUrl":47,"repositoryHomepageUrl":6,"ownerHtmlUrl":48,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":49,"install":50,"resources":62},"01M79B9P4DHZ95WDJJ16QW58CS","harness-review",null,"HAR: Multi-angle code, plan, scope review. Security\u002Fquality check. Trigger: review, code review, plan review, scope analysis. Do NOT load for: implementation, new features, bugfix, setup, release.","Timothy191\u002Farch-systems-portal","Timothy191","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F219252205?v=4","01M79B3963G748F05KS7AH3NJR","01M79B396N88AYYNHK5G2DNP2S",0,"MIT","https:\u002F\u002Fgithub.com\u002FTimothy191\u002Farch-systems-portal\u002Fblob\u002Fmain\u002Fagent-harnesses\u002Fclaude-code-harness\u002Fcodex\u002F.codex\u002Fskills\u002Fharness-review\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\nname: harness-review\ndescription: \"HAR: Multi-angle code, plan, scope review. Security\u002Fquality check. Trigger: review, code review, plan review, scope analysis. Do NOT load for: implementation, new features, bugfix, setup, release.\"\ndescription-en: \"HAR: Multi-angle code, plan, scope review. Security\u002Fquality check. Trigger: review, code review, plan review, scope analysis. Do NOT load for: implementation, new features, bugfix, setup, release.\"\ndescription-ja: \"HAR:コード・プラン・スコープを多角的にレビュー。セキュリティ・品質チェック。レビューして、レビュー、コードレビュー、プランレビュー、スコープ分析で起動。実装・新機能・バグ修正・セットアップ・リリースには使わない。\"\nkind: workflow\npurpose: \"Review code, plans, scope, and evidence before acceptance\"\ntrigger: \"review, レビューして, code review, plan review, scope analysis\"\nshape: evaluate\nrole: evaluator\npair: harness-work\nowner: harness-core\nsince: \"2026-05-05\"\nallowed-tools: [\"Read\", \"Grep\", \"Glob\", \"Bash\", \"Task\", \"Monitor\", \"AskUserQuestion\"]\nargument-hint: \"[code|plan|scope|--quick|--codex-closeout|--dual|--team-debate|--security|--ui-rubric]\"\ncontext: fork\neffort: high\nuser-invocable: true\n---\n\n# Harness Review\n\nHarness の統合レビュースキル。\nこの `SKILL.md` は薄い dispatcher であり、詳細な品質基準は `references\u002F` を読む。\n\nif $ARGUMENTS == \"\":\n→ 「今までの作業のレビュー」と解釈し、Review target detection を実行する\n→ review target が 1 つに確定できる場合だけ自動開始する\n→ review target が不明または複数候補の場合は AskUserQuestion で選択肢を出し、認識を揃えてから開始する\n\n\u003C!-- 上記 3 行は AUTO-START CONTRACT。skill-editing.md の「最冒頭 3 行以内」ルールに従い fence \u002F HTML コメントで押し下げない -->\n\n### Output Contract (P35: 「止まったように見える」UX 対策)\n\nskill 結論時の output の **最後の 1 行**は必ず次の literal を含める:\n\n`↑この結果は Claude が要約します。Enter キーで次へ進むか、新規 prompt で別の指示を出してください。`\n\nこれは `\u003Clocal-command-stdout>` 経由で text response として表示されると user が「止まった」と感じる UX 問題への明示的な instruction (patterns.md P35)。\n\n## Dispatcher Contract\n\nこの skill の責務は review 判定だけ。\ncommit \u002F push \u002F release は既定では行わない。\n\n- review default read-only boundary: 既定は read-only。`APPROVE` でも自動 commit しない\n- Do not push just to review: review 目的だけで push しない\n- commit が必要な場合は、ユーザー明示依頼、`harness-work`、または `harness-release` の Work Commit Gate に委譲する\n- `--commit-on-approve` のような明示 opt-in が設計されるまで、この skill 単体の default side effect は禁止\n\n## Quick Reference\n\n| Command                                      | Mode                         | Purpose                                                                                                     |\n| -------------------------------------------- | ---------------------------- | ----------------------------------------------------------------------------------------------------------- |\n| `\u002Fharness-review`                            | `code`                       | 今までの作業を自動検出して review                                                                           |\n| `\u002Fharness-review --quick`                    | `quick`                      | 小さな dirty change を軽く closeout                                                                         |\n| `\u002Fharness-review --codex-closeout`           | `codex-closeout`             | Codex 助言 + focused tests で closeout                                                                      |\n| `\u002Fharness-review --dual`                     | `dual`                       | Claude + Codex second opinion                                                                               |\n| `\u002Fharness-review --cursor`                   | `code+cursor-second-opinion` | core review gates に cursor (composer-2.5-fast) second-opinion を加算 (read = lean、Opus reviewer 必須併走) |\n| `HARNESS_IMPL_BACKEND=cursor harness-review` | `code+cursor-second-opinion` | default ON 時も core review gates に cursor second-opinion を自動加算。primary verdict は Opus\u002Fbrain 固定   |\n| `\u002Fharness-review --team-debate`              | `team-debate`                | TeamAgent Debate を強制                                                                                     |\n| `\u002Fharness-review --security`                 | `security`                   | security 専用 review                                                                                        |\n| `\u002Fharness-review plan`                       | `plan`                       | `Plans.md` の計画 review                                                                                    |\n| `\u002Fharness-review scope`                      | `scope`                      | scope creep \u002F 漏れ review                                                                                   |\n\n## Mode Decision\n\n引数から実行 mode を決定し、必要な `references\u002F` を選択ロードする。\n\n| 入力                                                                   | mode                         | 読む reference                                                                                                      |\n| ---------------------------------------------------------------------- | ---------------------------- | ------------------------------------------------------------------------------------------------------------------- |\n| 引数なし \u002F `code`                                                      | `code`                       | `references\u002Fcode-review.md`, `references\u002Fgovernance.md`                                                             |\n| `--quick`                                                              | `quick`                      | `references\u002Fcodex-closeout.md`, `references\u002Fcode-review.md`                                                         |\n| `--codex-closeout`                                                     | `codex-closeout`             | `references\u002Fcodex-closeout.md`                                                                                      |\n| `--dual`                                                               | `dual`                       | `references\u002Fdual-review.md`, `references\u002Fteam-debate.md`                                                            |\n| `--team-debate`                                                        | `team-debate`                | `references\u002Fteam-debate.md`, `references\u002Fgovernance.md`                                                             |\n| `--security`                                                           | `security`                   | `references\u002Fsecurity-profile.md`, `references\u002Fgovernance.md`                                                        |\n| `--ui-rubric`                                                          | `ui-rubric`                  | `references\u002Fui-rubric.md`                                                                                           |\n| `plan`                                                                 | `plan`                       | `references\u002Fplan-review.md`, `references\u002Fgovernance.md`                                                             |\n| `scope`                                                                | `scope`                      | `references\u002Fscope-review.md`, `references\u002Fgovernance.md`                                                            |\n| `--cursor` or resolver result `cursor` for no-arg \u002F `code` review only | `code+cursor-second-opinion` | `references\u002Fcode-review.md`, `references\u002Fgovernance.md`, `references\u002Fcursor-review.md`, `references\u002Fdual-review.md` |\n| `full`                                                                 | `full`                       | `references\u002Fcode-review.md`, `references\u002Fteam-debate.md`, `references\u002Fdual-review.md`                               |\n\n`quick` と `codex-closeout` は軽量 path。\n小さな dirty change、single commit、PR branch の closeout を速く見る。\n品質 gate を捨てるものではない。\n\n### Cursor Default ON\n\nmode 判定時、明示 mode words (`plan`, `scope`, `full`) と明示フラグを先に確定する。no-arg \u002F `code` review の場合だけ helper root を解決して resolver を 1 回だけ実行し、resolver 不在時は `claude` とみなす。\n\n```bash\nHARNESS_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\" != \"\u002F\" ] && [ ! -d \"$probe\u002Fscripts\" ]; do probe=\"$(cd \"$probe\u002F..\" && pwd)\"; done; [ -d \"$probe\u002Fscripts\" ] && HARNESS_PLUGIN_ROOT=\"$probe\"; fi\nif [ -x \"${HARNESS_PLUGIN_ROOT:-}\u002Fscripts\u002Fresolve-impl-backend.sh\" ]; then resolved_backend=\"$(bash \"${HARNESS_PLUGIN_ROOT}\u002Fscripts\u002Fresolve-impl-backend.sh\" --role reviewer)\"; else resolved_backend=\"claude\"; fi\n```\n\nno-arg \u002F `code` review で結果が `cursor` の場合は `--cursor` と同じ `cursor-second-opinion` を追加するが、core review gates (`references\u002Fcode-review.md`, `references\u002Fgovernance.md`) は必ず先に読み、Cursor reference は additive にだけ扱う。primary verdict は Opus\u002Fbrain 側で維持し、cursor は `dual_review.cursor_verdict` の advisory に限る。`plan` \u002F `scope` など明示 mode word は resolver result より優先し、cursor default によって plan\u002Fscope references も code\u002Fgovernance references も置き換えない。\n結果が `claude` \u002F `codex` の場合は従来どおりで、review の primary 判定面は変えない。\n\n## Review Target Detection\n\n`REVIEW_AUTOSTART` 契約:\n引数なし (`$ARGUMENTS == \"\"`) で呼ばれた場合、`review` \u002F `\u002Freview` \u002F `\u002Fharness-review` だけの入力を「今までの作業のレビュー」と解釈する。\nStep 1 開始前の handshake 行として次を 1 行だけ出力する。\n\n```text\nREVIEW_AUTOSTART: target={resolved_target}, base_ref={resolved_base_ref}, type={mode}\n```\n\n`REVIEW_TARGET_ASK` 契約:\nbare 呼び出しで review target が不明または複数候補の場合、Step 1 に進む前に `AskUserQuestion` を 1 回だけ使い、候補を 2-3 個に絞って確認する。\n\n候補は次の順で作る。\n\n1. working tree: staged \u002F unstaged \u002F untracked を含む未コミット変更のみ\n2. branch range: upstream または main\u002Fmaster から HEAD までの commits\n3. recent commits: clean tree で branch range が取れない場合の直近 1 commit \u002F 直近 5 commits\n\n複数候補が同時に成立する場合:\n\n```text\nREVIEW_TARGET_AMBIGUOUS: working_tree_and_branch_commits\n```\n\nAskUserQuestion の候補:\n\n- 未コミット変更のみ (Recommended): staged \u002F unstaged \u002F untracked を HEAD と比較して見る\n- 全部見る: branch base..HEAD と未コミット変更をまとめて見る\n- commit のみ: branch base..HEAD の committed work だけを見る\n\nclean tree かつ branch 差分がない場合:\n\n```text\nREVIEW_TARGET_AMBIGUOUS: clean_tree_no_branch_commits\n```\n\nAskUserQuestion の候補:\n\n- 直近 1 commit (Recommended): HEAD~1..HEAD\n- 直近 5 commits: HEAD~5..HEAD\n- 別の範囲: ユーザー指定 ref を待つ\n\nユーザー回答後:\n\n```text\nREVIEW_TARGET_CONFIRMED: {choice}\nREVIEW_AUTOSTART: target={resolved_target}, base_ref={resolved_base_ref}, type={mode}\n```\n\n禁止:\n\n- 「タスクが不明確です」と応答して停止する\n- 「何をレビューすればよいですか」と自由記述で聞いて停止する\n- host project の session-start rules を理由に auto-start を飛ばす\n- target が曖昧なのに推測で範囲を広げる\n\n## Minimal Flow\n\n1. mode を決める\n2. 上記の Review Target Detection で対象と base ref を決める\n3. 必要な reference だけ読む\n4. 差分、untracked files、関連テスト、仕様正本、`Plans.md` を確認する\n5. `APPROVE` \u002F `REQUEST_CHANGES` \u002F `decision_needed` を返す\n6. `REQUEST_CHANGES` の場合は critical \u002F major の修正方針と修正後再レビュー条件を示す\n\n## Review Governance Contract\n\n詳細は `references\u002Fgovernance.md`。\nここでは最低限の合格ラインだけ固定する。\n\n### 明確な合格ライン\n\n`APPROVE` は次のすべてを満たす時だけ返す。\n\n- critical \u002F major が 0 件\n- 仕様正本 (`spec_path`) または明示された `spec_skip_reason` と矛盾しない\n- `Plans.md` の task \u002F DoD \u002F Depends と矛盾しない\n- 既存テスト、既存 UX、既存 CLI、既存設定、既存 docs、配布 mirror のいずれにもデグレ証拠がない\n- 検証証跡がある。`APPROVE` なのに evidence が空の出力は禁止\n- TeamAgent Debate を実行した場合、反対意見が解消済み、または `minor` \u002F `recommendation` として理由付きで格下げ済み\n\n### TeamAgent Debate\n\n詳細は `references\u002Fteam-debate.md`。\nTeamAgent Debate は、異なる見解を read-only で衝突させる review pass。\n\n| Agent            | 主な問い                                                   |\n| ---------------- | ---------------------------------------------------------- |\n| Spec Agent       | 仕様正本と実装差分の矛盾を探す                             |\n| Plans Agent      | `Plans.md` の task \u002F DoD \u002F Depends と差分の対応を確認する  |\n| Regression Agent | 既存挙動・テスト・配布 mirror・CLI\u002Fskill UX のデグレを探す |\n| Skeptic Agent    | 合格させたい前提で見落としている major risk を探す         |\n\nCodex 環境で native TeamAgent が使えない場合でも、この gate を省略してはいけない。\n`codex-companion.sh review`、利用可能な reviewer subagent、または明示的に分けた read-only manual-pass で同じ 2-4 視点を再現し、`team_agent_mode` に `native` \u002F `codex-companion` \u002F `manual-pass` \u002F `unavailable` を記録する。\n\n## Code Review Summary\n\n詳細は `references\u002Fcode-review.md`。\n通常 code review は次を見る。\n\n- Security\n- Performance\n- Quality\n- Accessibility\n- AI Residuals\n- Spec Alignment\n- Plans Alignment\n- Regression Safety\n- TDD compliance\n\n仕様正本 alignment check は必須。\n`spec_path` がある場合は差分が仕様正本と矛盾しないか確認し、仕様正本が必要なのに無い場合は `spec_skip_reason` の妥当性を見る。\n`Plans.md` alignment check とデグレ alignment check も同じ gate で扱う。\n\n`AI Residuals` は `scripts\u002Freview-ai-residuals.sh` と `scripts\u002Freview-weak-supervision-report.sh` を優先して使う。\nuntracked も見る場合は `--include-untracked` を使う。\n`mockData`, `dummy`, `fake`, `localhost`, `TODO`, `FIXME`, `it.skip`, `test.skip`, `expect(true).toBe(true)` などは候補であり、diff 文脈で severity を決める。\nfinding 段階は網羅優先。minor と判定した指摘も `observations[]` \u002F `recommendations[]` に残し、gate は verdict 段階だけで行う（Opus 4.8 は low-severity の報告を絞る癖がある。`references\u002Fcode-review.md` の Finding coverage 参照）。\n\n### TDD compliance check\n\nTDD が required の task では `skip_tdd_reason`、red-log、focused tests の証跡を確認する。\n証跡なしで `APPROVE` しない。\n\n## Quick \u002F Codex Closeout Summary\n\n詳細は `references\u002Fcodex-closeout.md`。\n\n軽量 path の原則:\n\n- target selection を先に固定する\n- Codex 指摘は advisory として扱い、実コードで確認してから採否を決める\n- final report には review command \u002F tests \u002F accepted findings \u002F rejected findings \u002F clean result を含める\n- stop-on-clean: clean result 後に、見栄えのためだけの追加 review をしない\n- Codex が使えない場合は full manual pass に fallback し、失敗を成功扱いしない\n\nhelper:\n\n```bash\nbash scripts\u002Fharness-review-closeout.sh --dry-run --uncommitted\nbash scripts\u002Fharness-review-closeout.sh --base origin\u002Fmain --parallel-tests --test \"bash tests\u002Ftest-harness-review-governance.sh\"\nbash scripts\u002Fharness-review-closeout.sh --commit HEAD\n```\n\n## Plan Review Summary\n\n詳細は `references\u002Fplan-review.md`。\nPlan Review は `Plans.md` の DoD \u002F Depends \u002F Status と実装順序を見る。\n仕様正本が必要なタスクで `spec_path` がない場合は、`decision_needed` として止める。\n\n## Scope Review Summary\n\n詳細は `references\u002Fscope-review.md`。\nScope Review は、要求・差分・テスト・docs の境界が膨らんでいないかを見る。\n範囲変更が必要なら、推測で進めず `AskUserQuestion` または plan 更新に戻す。\n\n## Security \u002F UI \u002F Dual\n\n- Security: `references\u002Fsecurity-profile.md`\n- UI rubric: `references\u002Fui-rubric.md`\n- high-res vision flow: `references\u002Fvision-high-res-flow.md`\n- Dual review: `references\u002Fdual-review.md`\n\n`\u002Fultrareview` は Harness flow 内では既定で呼ばない。\nHarness flow の review-result.v1、commit guard、sprint-contract との接続を置き換えないため。\n`claude ultrareview [target] --json` は CI \u002F script からの second-opinion としてだけ扱う。\n\n## PR Host Boundary\n\nGitHub-first。\nPR host 上の review 事実は GitHub を正とし、local diff は補助証拠として扱う。\nただし local uncommitted review は GitHub に push しない。\n\n## Output Contract\n\nUser-facing prose follows the explicit session or project language.\nIf no language is configured, use English. Use Japanese only when\n`i18n.language: ja`, `CLAUDE_CODE_HARNESS_LANG=ja`, or an explicit session\ninstruction requests Japanese output.\nMachine-readable values stay English.\n\nStart with the result summary.\n\n````markdown\n## Review Result\n\n### {APPROVE | REQUEST_CHANGES | decision_needed} - {one-line conclusion}\n\nTarget: `{BASE_REF}..HEAD` or `{target}`\nVerification: {commands run}\n\nStrengths:\n\n- ...\n\nFindings:\n\n- [severity] file:line - issue and evidence\n\nNext Actions:\n\n- ...\n\nDetails:\n\n```json\n{\n  \"schema_version\": \"review-result.v1\",\n  \"verdict\": \"APPROVE | REQUEST_CHANGES\",\n  \"decision_needed\": {\n    \"required\": false,\n    \"ask_tool\": \"AskUserQuestion\"\n  },\n  \"accepted_findings\": [],\n  \"rejected_findings\": [],\n  \"acceptance_bar\": {\n    \"critical_major_zero\": true,\n    \"spec_alignment\": \"pass | fail | not_applicable\",\n    \"plans_alignment\": \"pass | fail | not_applicable\",\n    \"regression_safety\": \"pass | fail | not_applicable\",\n    \"verification_evidence\": \"pass | fail | not_applicable\"\n  },\n  \"team_debate\": {\n    \"required\": false,\n    \"mode\": \"native | codex-companion | manual-pass | unavailable\",\n    \"team_agent_mode\": \"native | codex-companion | manual-pass | unavailable\",\n    \"agents\": [],\n    \"disagreements\": []\n  },\n  \"critical_issues\": [],\n  \"major_issues\": [],\n  \"observations\": [],\n  \"recommendations\": []\n}\n```\n````\n\n## Codex Environment\n\nCodex 環境では使える tool が異なる。\nそれでも、合格ライン、仕様正本、`Plans.md`、デグレ、修正後再レビュー、AskUserQuestion \u002F `decision_needed.v1` の契約は同じ。\n\n| 通常環境                      | Codex fallback                                                       |\n| ----------------------------- | -------------------------------------------------------------------- |\n| Task tool の TeamAgent Debate | reviewer subagent \u002F `codex-companion.sh review` \u002F manual-pass        |\n| AskUserQuestion               | 使えない場合は `decision_needed.v1` を stdout に出し、推測で進めない |\n| TaskList                      | `Plans.md` を直接読む                                                |\n\n## Related Skills\n\n- `harness-work`: `REQUEST_CHANGES` 後の修正実行\n- `harness-plan`: plan \u002F scope \u002F spec の更新\n- `harness-release`: review 済み work の commit \u002F release\n","# Harness Review\n\nHarness の統合レビュースキル。\nこの `SKILL.md` は薄い dispatcher であり、詳細な品質基準は `references\u002F` を読む。\n\nif $ARGUMENTS == \"\":\n→ 「今までの作業のレビュー」と解釈し、Review target detection を実行する\n→ review target が 1 つに確定できる場合だけ自動開始する\n→ review target が不明または複数候補の場合は AskUserQuestion で選択肢を出し、認識を揃えてから開始する\n\n\u003C!-- 上記 3 行は AUTO-START CONTRACT。skill-editing.md の「最冒頭 3 行以内」ルールに従い fence \u002F HTML コメントで押し下げない -->\n\n### Output Contract (P35: 「止まったように見える」UX 対策)\n\nskill 結論時の output の **最後の 1 行**は必ず次の literal を含める:\n\n`↑この結果は Claude が要約します。Enter キーで次へ進むか、新規 prompt で別の指示を出してください。`\n\nこれは `\u003Clocal-command-stdout>` 経由で text response として表示されると user が「止まった」と感じる UX 問題への明示的な instruction (patterns.md P35)。\n\n## Dispatcher Contract\n\nこの skill の責務は review 判定だけ。\ncommit \u002F push \u002F release は既定では行わない。\n\n- review default read-only boundary: 既定は read-only。`APPROVE` でも自動 commit しない\n- Do not push just to review: review 目的だけで push しない\n- commit が必要な場合は、ユーザー明示依頼、`harness-work`、または `harness-release` の Work Commit Gate に委譲する\n- `--commit-on-approve` のような明示 opt-in が設計されるまで、この skill 単体の default side effect は禁止\n\n## Quick Reference\n\n| Command                                      | Mode                         | Purpose                                                                                                     |\n| -------------------------------------------- | ---------------------------- | ----------------------------------------------------------------------------------------------------------- |\n| `\u002Fharness-review`                            | `code`                       | 今までの作業を自動検出して review                                                                           |\n| `\u002Fharness-review --quick`                    | `quick`                      | 小さな dirty change を軽く closeout                                                                         |\n| `\u002Fharness-review --codex-closeout`           | `codex-closeout`             | Codex 助言 + focused tests で closeout                                                                      |\n| `\u002Fharness-review --dual`                     | `dual`                       | Claude + Codex second opinion                                                                               |\n| `\u002Fharness-review --cursor`                   | `code+cursor-second-opinion` | core review gates に cursor (composer-2.5-fast) second-opinion を加算 (read = lean、Opus reviewer 必須併走) |\n| `HARNESS_IMPL_BACKEND=cursor harness-review` | `code+cursor-second-opinion` | default ON 時も core review gates に cursor second-opinion を自動加算。primary verdict は Opus\u002Fbrain 固定   |\n| `\u002Fharness-review --team-debate`              | `team-debate`                | TeamAgent Debate を強制                                                                                     |\n| `\u002Fharness-review --security`                 | `security`                   | security 専用 review                                                                                        |\n| `\u002Fharness-review plan`                       | `plan`                       | `Plans.md` の計画 review                                                                                    |\n| `\u002Fharness-review scope`                      | `scope`                      | scope creep \u002F 漏れ review                                                                                   |\n\n## Mode Decision\n\n引数から実行 mode を決定し、必要な `references\u002F` を選択ロードする。\n\n| 入力                                                                   | mode                         | 読む reference                                                                                                      |\n| ---------------------------------------------------------------------- | ---------------------------- | ------------------------------------------------------------------------------------------------------------------- |\n| 引数なし \u002F `code`                                                      | `code`                       | `references\u002Fcode-review.md`, `references\u002Fgovernance.md`                                                             |\n| `--quick`                                                              | `quick`                      | `references\u002Fcodex-closeout.md`, `references\u002Fcode-review.md`                                                         |\n| `--codex-closeout`                                                     | `codex-closeout`             | `references\u002Fcodex-closeout.md`                                                                                      |\n| `--dual`                                                               | `dual`                       | `references\u002Fdual-review.md`, `references\u002Fteam-debate.md`                                                            |\n| `--team-debate`                                                        | `team-debate`                | `references\u002Fteam-debate.md`, `references\u002Fgovernance.md`                                                             |\n| `--security`                                                           | `security`                   | `references\u002Fsecurity-profile.md`, `references\u002Fgovernance.md`                                                        |\n| `--ui-rubric`                                                          | `ui-rubric`                  | `references\u002Fui-rubric.md`                                                                                           |\n| `plan`                                                                 | `plan`                       | `references\u002Fplan-review.md`, `references\u002Fgovernance.md`                                                             |\n| `scope`                                                                | `scope`                      | `references\u002Fscope-review.md`, `references\u002Fgovernance.md`                                                            |\n| `--cursor` or resolver result `cursor` for no-arg \u002F `code` review only | `code+cursor-second-opinion` | `references\u002Fcode-review.md`, `references\u002Fgovernance.md`, `references\u002Fcursor-review.md`, `references\u002Fdual-review.md` |\n| `full`                                                                 | `full`                       | `references\u002Fcode-review.md`, `references\u002Fteam-debate.md`, `references\u002Fdual-review.md`                               |\n\n`quick` と `codex-closeout` は軽量 path。\n小さな dirty change、single commit、PR branch の closeout を速く見る。\n品質 gate を捨てるものではない。\n\n### Cursor Default ON\n\nmode 判定時、明示 mode words (`plan`, `scope`, `full`) と明示フラグを先に確定する。no-arg \u002F `code` review の場合だけ helper root を解決して resolver を 1 回だけ実行し、resolver 不在時は `claude` とみなす。\n\n```bash\nHARNESS_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\" != \"\u002F\" ] && [ ! -d \"$probe\u002Fscripts\" ]; do probe=\"$(cd \"$probe\u002F..\" && pwd)\"; done; [ -d \"$probe\u002Fscripts\" ] && HARNESS_PLUGIN_ROOT=\"$probe\"; fi\nif [ -x \"${HARNESS_PLUGIN_ROOT:-}\u002Fscripts\u002Fresolve-impl-backend.sh\" ]; then resolved_backend=\"$(bash \"${HARNESS_PLUGIN_ROOT}\u002Fscripts\u002Fresolve-impl-backend.sh\" --role reviewer)\"; else resolved_backend=\"claude\"; fi\n```\n\nno-arg \u002F `code` review で結果が `cursor` の場合は `--cursor` と同じ `cursor-second-opinion` を追加するが、core review gates (`references\u002Fcode-review.md`, `references\u002Fgovernance.md`) は必ず先に読み、Cursor reference は additive にだけ扱う。primary verdict は Opus\u002Fbrain 側で維持し、cursor は `dual_review.cursor_verdict` の advisory に限る。`plan` \u002F `scope` など明示 mode word は resolver result より優先し、cursor default によって plan\u002Fscope references も code\u002Fgovernance references も置き換えない。\n結果が `claude` \u002F `codex` の場合は従来どおりで、review の primary 判定面は変えない。\n\n## Review Target Detection\n\n`REVIEW_AUTOSTART` 契約:\n引数なし (`$ARGUMENTS == \"\"`) で呼ばれた場合、`review` \u002F `\u002Freview` \u002F `\u002Fharness-review` だけの入力を「今までの作業のレビュー」と解釈する。\nStep 1 開始前の handshake 行として次を 1 行だけ出力する。\n\n```text\nREVIEW_AUTOSTART: target={resolved_target}, base_ref={resolved_base_ref}, type={mode}\n```\n\n`REVIEW_TARGET_ASK` 契約:\nbare 呼び出しで review target が不明または複数候補の場合、Step 1 に進む前に `AskUserQuestion` を 1 回だけ使い、候補を 2-3 個に絞って確認する。\n\n候補は次の順で作る。\n\n1. working tree: staged \u002F unstaged \u002F untracked を含む未コミット変更のみ\n2. branch range: upstream または main\u002Fmaster から HEAD までの commits\n3. recent commits: clean tree で branch range が取れない場合の直近 1 commit \u002F 直近 5 commits\n\n複数候補が同時に成立する場合:\n\n```text\nREVIEW_TARGET_AMBIGUOUS: working_tree_and_branch_commits\n```\n\nAskUserQuestion の候補:\n\n- 未コミット変更のみ (Recommended): staged \u002F unstaged \u002F untracked を HEAD と比較して見る\n- 全部見る: branch base..HEAD と未コミット変更をまとめて見る\n- commit のみ: branch base..HEAD の committed work だけを見る\n\nclean tree かつ branch 差分がない場合:\n\n```text\nREVIEW_TARGET_AMBIGUOUS: clean_tree_no_branch_commits\n```\n\nAskUserQuestion の候補:\n\n- 直近 1 commit (Recommended): HEAD~1..HEAD\n- 直近 5 commits: HEAD~5..HEAD\n- 別の範囲: ユーザー指定 ref を待つ\n\nユーザー回答後:\n\n```text\nREVIEW_TARGET_CONFIRMED: {choice}\nREVIEW_AUTOSTART: target={resolved_target}, base_ref={resolved_base_ref}, type={mode}\n```\n\n禁止:\n\n- 「タスクが不明確です」と応答して停止する\n- 「何をレビューすればよいですか」と自由記述で聞いて停止する\n- host project の session-start rules を理由に auto-start を飛ばす\n- target が曖昧なのに推測で範囲を広げる\n\n## Minimal Flow\n\n1. mode を決める\n2. 上記の Review Target Detection で対象と base ref を決める\n3. 必要な reference だけ読む\n4. 差分、untracked files、関連テスト、仕様正本、`Plans.md` を確認する\n5. `APPROVE` \u002F `REQUEST_CHANGES` \u002F `decision_needed` を返す\n6. `REQUEST_CHANGES` の場合は critical \u002F major の修正方針と修正後再レビュー条件を示す\n\n## Review Governance Contract\n\n詳細は `references\u002Fgovernance.md`。\nここでは最低限の合格ラインだけ固定する。\n\n### 明確な合格ライン\n\n`APPROVE` は次のすべてを満たす時だけ返す。\n\n- critical \u002F major が 0 件\n- 仕様正本 (`spec_path`) または明示された `spec_skip_reason` と矛盾しない\n- `Plans.md` の task \u002F DoD \u002F Depends と矛盾しない\n- 既存テスト、既存 UX、既存 CLI、既存設定、既存 docs、配布 mirror のいずれにもデグレ証拠がない\n- 検証証跡がある。`APPROVE` なのに evidence が空の出力は禁止\n- TeamAgent Debate を実行した場合、反対意見が解消済み、または `minor` \u002F `recommendation` として理由付きで格下げ済み\n\n### TeamAgent Debate\n\n詳細は `references\u002Fteam-debate.md`。\nTeamAgent Debate は、異なる見解を read-only で衝突させる review pass。\n\n| Agent            | 主な問い                                                   |\n| ---------------- | ---------------------------------------------------------- |\n| Spec Agent       | 仕様正本と実装差分の矛盾を探す                             |\n| Plans Agent      | `Plans.md` の task \u002F DoD \u002F Depends と差分の対応を確認する  |\n| Regression Agent | 既存挙動・テスト・配布 mirror・CLI\u002Fskill UX のデグレを探す |\n| Skeptic Agent    | 合格させたい前提で見落としている major risk を探す         |\n\nCodex 環境で native TeamAgent が使えない場合でも、この gate を省略してはいけない。\n`codex-companion.sh review`、利用可能な reviewer subagent、または明示的に分けた read-only manual-pass で同じ 2-4 視点を再現し、`team_agent_mode` に `native` \u002F `codex-companion` \u002F `manual-pass` \u002F `unavailable` を記録する。\n\n## Code Review Summary\n\n詳細は `references\u002Fcode-review.md`。\n通常 code review は次を見る。\n\n- Security\n- Performance\n- Quality\n- Accessibility\n- AI Residuals\n- Spec Alignment\n- Plans Alignment\n- Regression Safety\n- TDD compliance\n\n仕様正本 alignment check は必須。\n`spec_path` がある場合は差分が仕様正本と矛盾しないか確認し、仕様正本が必要なのに無い場合は `spec_skip_reason` の妥当性を見る。\n`Plans.md` alignment check とデグレ alignment check も同じ gate で扱う。\n\n`AI Residuals` は `scripts\u002Freview-ai-residuals.sh` と `scripts\u002Freview-weak-supervision-report.sh` を優先して使う。\nuntracked も見る場合は `--include-untracked` を使う。\n`mockData`, `dummy`, `fake`, `localhost`, `TODO`, `FIXME`, `it.skip`, `test.skip`, `expect(true).toBe(true)` などは候補であり、diff 文脈で severity を決める。\nfinding 段階は網羅優先。minor と判定した指摘も `observations[]` \u002F `recommendations[]` に残し、gate は verdict 段階だけで行う（Opus 4.8 は low-severity の報告を絞る癖がある。`references\u002Fcode-review.md` の Finding coverage 参照）。\n\n### TDD compliance check\n\nTDD が required の task では `skip_tdd_reason`、red-log、focused tests の証跡を確認する。\n証跡なしで `APPROVE` しない。\n\n## Quick \u002F Codex Closeout Summary\n\n詳細は `references\u002Fcodex-closeout.md`。\n\n軽量 path の原則:\n\n- target selection を先に固定する\n- Codex 指摘は advisory として扱い、実コードで確認してから採否を決める\n- final report には review command \u002F tests \u002F accepted findings \u002F rejected findings \u002F clean result を含める\n- stop-on-clean: clean result 後に、見栄えのためだけの追加 review をしない\n- Codex が使えない場合は full manual pass に fallback し、失敗を成功扱いしない\n\nhelper:\n\n```bash\nbash scripts\u002Fharness-review-closeout.sh --dry-run --uncommitted\nbash scripts\u002Fharness-review-closeout.sh --base origin\u002Fmain --parallel-tests --test \"bash tests\u002Ftest-harness-review-governance.sh\"\nbash scripts\u002Fharness-review-closeout.sh --commit HEAD\n```\n\n## Plan Review Summary\n\n詳細は `references\u002Fplan-review.md`。\nPlan Review は `Plans.md` の DoD \u002F Depends \u002F Status と実装順序を見る。\n仕様正本が必要なタスクで `spec_path` がない場合は、`decision_needed` として止める。\n\n## Scope Review Summary\n\n詳細は `references\u002Fscope-review.md`。\nScope Review は、要求・差分・テスト・docs の境界が膨らんでいないかを見る。\n範囲変更が必要なら、推測で進めず `AskUserQuestion` または plan 更新に戻す。\n\n## Security \u002F UI \u002F Dual\n\n- Security: `references\u002Fsecurity-profile.md`\n- UI rubric: `references\u002Fui-rubric.md`\n- high-res vision flow: `references\u002Fvision-high-res-flow.md`\n- Dual review: `references\u002Fdual-review.md`\n\n`\u002Fultrareview` は Harness flow 内では既定で呼ばない。\nHarness flow の review-result.v1、commit guard、sprint-contract との接続を置き換えないため。\n`claude ultrareview [target] --json` は CI \u002F script からの second-opinion としてだけ扱う。\n\n## PR Host Boundary\n\nGitHub-first。\nPR host 上の review 事実は GitHub を正とし、local diff は補助証拠として扱う。\nただし local uncommitted review は GitHub に push しない。\n\n## Output Contract\n\nUser-facing prose follows the explicit session or project language.\nIf no language is configured, use English. Use Japanese only when\n`i18n.language: ja`, `CLAUDE_CODE_HARNESS_LANG=ja`, or an explicit session\ninstruction requests Japanese output.\nMachine-readable values stay English.\n\nStart with the result summary.\n\n````markdown\n## Review Result\n\n### {APPROVE | REQUEST_CHANGES | decision_needed} - {one-line conclusion}\n\nTarget: `{BASE_REF}..HEAD` or `{target}`\nVerification: {commands run}\n\nStrengths:\n\n- ...\n\nFindings:\n\n- [severity] file:line - issue and evidence\n\nNext Actions:\n\n- ...\n\nDetails:\n\n```json\n{\n  \"schema_version\": \"review-result.v1\",\n  \"verdict\": \"APPROVE | REQUEST_CHANGES\",\n  \"decision_needed\": {\n    \"required\": false,\n    \"ask_tool\": \"AskUserQuestion\"\n  },\n  \"accepted_findings\": [],\n  \"rejected_findings\": [],\n  \"acceptance_bar\": {\n    \"critical_major_zero\": true,\n    \"spec_alignment\": \"pass | fail | not_applicable\",\n    \"plans_alignment\": \"pass | fail | not_applicable\",\n    \"regression_safety\": \"pass | fail | not_applicable\",\n    \"verification_evidence\": \"pass | fail | not_applicable\"\n  },\n  \"team_debate\": {\n    \"required\": false,\n    \"mode\": \"native | codex-companion | manual-pass | unavailable\",\n    \"team_agent_mode\": \"native | codex-companion | manual-pass | unavailable\",\n    \"agents\": [],\n    \"disagreements\": []\n  },\n  \"critical_issues\": [],\n  \"major_issues\": [],\n  \"observations\": [],\n  \"recommendations\": []\n}\n```\n````\n\n## Codex Environment\n\nCodex 環境では使える tool が異なる。\nそれでも、合格ライン、仕様正本、`Plans.md`、デグレ、修正後再レビュー、AskUserQuestion \u002F `decision_needed.v1` の契約は同じ。\n\n| 通常環境                      | Codex fallback                                                       |\n| ----------------------------- | -------------------------------------------------------------------- |\n| Task tool の TeamAgent Debate | reviewer subagent \u002F `codex-companion.sh review` \u002F manual-pass        |\n| AskUserQuestion               | 使えない場合は `decision_needed.v1` を stdout に出し、推測で進めない |\n| TaskList                      | `Plans.md` を直接読む                                                |\n\n## Related Skills\n\n- `harness-work`: `REQUEST_CHANGES` 後の修正実行\n- `harness-plan`: plan \u002F scope \u002F spec の更新\n- `harness-release`: review 済み work の commit \u002F release\n",{"kind":23,"name":5,"pair":24,"role":25,"owner":26,"shape":27,"since":28,"effort":29,"context":30,"purpose":31,"trigger":32,"description":7,"allowed-tools":33,"argument-hint":41,"description-en":7,"description-ja":42,"user-invocable":43},"workflow","harness-work","evaluator","harness-core","evaluate","2026-05-05","high","fork","Review code, plans, scope, and evidence before acceptance","review, レビューして, code review, plan review, scope analysis",[34,35,36,37,38,39,40],"Read","Grep","Glob","Bash","Task","Monitor","AskUserQuestion","[code|plan|scope|--quick|--codex-closeout|--dual|--team-debate|--security|--ui-rubric]","HAR:コード・プラン・スコープを多角的にレビュー。セキュリティ・品質チェック。レビューして、レビュー、コードレビュー、プランレビュー、スコープ分析で起動。実装・新機能・バグ修正・セットアップ・リリースには使わない。",true,"main","44656ee607735b31d88e298752f574936b85af75","agent-harnesses\u002Fclaude-code-harness\u002Fcodex\u002F.codex\u002Fskills\u002Fharness-review","https:\u002F\u002Fgithub.com\u002FTimothy191\u002Farch-systems-portal","https:\u002F\u002Fgithub.com\u002FTimothy191","2026-07-24 02:57:18",{"source":8,"skillName":5,"commands":51,"prompt":61,"zipAvailable":43},[52,55,58],{"tool":53,"command":54},"npx","npx skills add Timothy191\u002Farch-systems-portal --skill harness-review",{"tool":56,"command":57},"bunx","bunx skills add Timothy191\u002Farch-systems-portal --skill harness-review",{"tool":59,"command":60},"pnpm","pnpm dlx skills add Timothy191\u002Farch-systems-portal --skill harness-review","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FTimothy191\u002Farch-systems-portal\u002Fblob\u002Fmain\u002Fagent-harnesses\u002Fclaude-code-harness\u002Fcodex\u002F.codex\u002Fskills\u002Fharness-review\u002FSKILL.md",[],[64,70,76,83,90,97],{"skillNo":65,"name":66,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":67,"categories":68,"keywords":69,"publishedAt":18},"01M79BVF4ZP6Z3GH36Y7BAAZHE","escape-skill","https:\u002F\u002Fgithub.com\u002FTimothy191\u002Farch-systems-portal\u002Fblob\u002Fmain\u002Fagent-harnesses\u002Fclaude-code-harness\u002Ftests\u002Ffixtures\u002Fskills\u002Fzz-review-escape\u002FSKILL.md",[],[],{"skillNo":71,"name":72,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":73,"categories":74,"keywords":75,"publishedAt":18},"01M79BVE0FF9QC71P53B18GCQ8","zz-review-empty","https:\u002F\u002Fgithub.com\u002FTimothy191\u002Farch-systems-portal\u002Fblob\u002Fmain\u002Fagent-harnesses\u002Fclaude-code-harness\u002Ftests\u002Ffixtures\u002Fskills\u002Fzz-review-empty\u002FSKILL.md",[],[],{"skillNo":77,"name":78,"nameZh":6,"description":79,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":80,"categories":81,"keywords":82,"publishedAt":18},"01M79BVAB0TARBFRF4MCQ1T8AG","workflow-guide","Explicit helper for Cursor PM ↔ Claude Code two-agent workflow guidance. Do NOT load for: solo implementation, workflow setup, handoff execution, or general process coaching.","https:\u002F\u002Fgithub.com\u002FTimothy191\u002Farch-systems-portal\u002Fblob\u002Fmain\u002Fagent-harnesses\u002Fclaude-code-harness\u002Fskills\u002Fworkflow-guide\u002FSKILL.md",[],[],{"skillNo":84,"name":85,"nameZh":6,"description":86,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":87,"categories":88,"keywords":89,"publishedAt":18},"01M79BV634WBDSVR8DXAHMHA19","vibecoder-guide","Explicit helper for non-technical VibeCoder coaching: what to ask next, how to describe work, and how to stay safe. Do NOT load for: direct implementation, technical review, or Cursor\u002FPM workflow.","https:\u002F\u002Fgithub.com\u002FTimothy191\u002Farch-systems-portal\u002Fblob\u002Fmain\u002Fagent-harnesses\u002Fclaude-code-harness\u002Fskills\u002Fvibecoder-guide\u002FSKILL.md",[],[],{"skillNo":91,"name":92,"nameZh":6,"description":93,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":94,"categories":95,"keywords":96,"publishedAt":18},"01M79BV2G6901RYQGBT3QWDK64","ui","Explicit helper for UI components, hero sections, forms, feedback, and contact surfaces. Do NOT load for: authentication, backend implementation, database work, or business logic.","https:\u002F\u002Fgithub.com\u002FTimothy191\u002Farch-systems-portal\u002Fblob\u002Fmain\u002Fagent-harnesses\u002Fclaude-code-harness\u002Fskills\u002Fui\u002FSKILL.md",[],[],{"skillNo":98,"name":99,"nameZh":6,"description":100,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":101,"categories":102,"keywords":103,"publishedAt":18},"01M79BTW2QT48HNNS9NCKE8PAH","session","Unified session management window. Handles initialization, memory, state all-in-one. Explicit \u002Fsession invocation only — sub-skills handle auto-delegation. Use when managing Claude Code sessions, \u002Fsession command. Do NOT load for: app user sessions, login state, authentication features.","https:\u002F\u002Fgithub.com\u002FTimothy191\u002Farch-systems-portal\u002Fblob\u002Fmain\u002Fagent-harnesses\u002Fclaude-code-harness\u002Fskills\u002Fsession\u002FSKILL.md",[],[]]