[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6C4V59DWTP8NVARY3J3PSQP":3,"skill-same:01M6C4V59DWTP8NVARY3J3PSQP":155},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":31,"publishedAt":59,"linkOnly":60,"markdownContent":61,"markdownBody":62,"frontMatter":63,"refName":83,"commitSha":84,"skillDirectory":85,"forksCount":86,"repositoryHtmlUrl":87,"repositoryHomepageUrl":6,"ownerHtmlUrl":88,"ownerBlogUrl":89,"ownerDescription":90,"updatedAt":91,"install":92,"resources":104},"01M6C4V59DWTP8NVARY3J3PSQP","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.","Chachamaru127\u002Fclaude-code-harness","Chachamaru127","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F96473544?v=4","01M6C4N084DDDEK9SJPGFG9H9M","Chachamaru","01M6C4N0CCNFST9P8C7EJNVH42",3209,"MIT","https:\u002F\u002Fgithub.com\u002FChachamaru127\u002Fclaude-code-harness\u002Fblob\u002Fmain\u002Fskills\u002Fharness-review\u002FSKILL.md",[18,23,28],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000007","代码审查","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",{"categoryNo":29,"categoryName":30,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000032","设计师",[32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58],"review","harness review","harness","new","code review","2026","quick","debate","scope","evidence","read","closeout","check","work","quality","plan review","plan","Bash","team","analysis","acceptance","release","code","core","monitor","workflow","codex","2026-11-10 10:12:30",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|--blind-judge]\"\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\n`\u003Clocal-command-stdout>` で host へ結果を中継する場合だけ、output の **最後の 1 行**に次の literal を含める:\n\n`↑この結果は Claude が要約します。Enter キーで次へ進むか、新規 prompt で別の指示を出してください。`\n\nこれは `\u003Clocal-command-stdout>` 経由で text response として表示されると user が「止まった」と感じる UX 問題への明示的な instruction (patterns.md P35)。\nhost の最終回答は verdict、判断理由、確認した証拠、未検証点を返す。要約の予告だけで終了しない。\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| `--pre-review cursor` | `code+pre-review` | fresh-context composer advisory pre-review before brain verdict（read-only） |\n| `\u002Fharness-review --cursor` | `code+cursor-second-opinion` | core review gates + cursor second-opinion（brain 一次レビュー必須） |\n| `HARNESS_IMPL_BACKEND=cursor harness-review` | `code+cursor-second-opinion` | default ON 時も core review gates に cursor second-opinion を自動加算。primary verdict は brain 固定 |\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## 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 は brain 側で維持し、cursor は `dual_review.cursor_verdict` の advisory に限る。`plan` \u002F `scope` など明示 mode word は resolver result より優先し、cursor default によって plan\u002Fscope references も code\u002Fgovernance references も置き換えない。結果が `claude` \u002F `codex` の場合は従来どおりで、review の primary 判定面は変えない。\n\n## Pre-Review Cursor (`--pre-review cursor`)\n`\u002Fharness-review --pre-review cursor` は `bash scripts\u002Fpre-review-cursor.sh [--base ref]` で read-only fresh-context composer pre-review（`model-routing.sh --host cursor --tier review` → `cursor-companion.sh task`、`--write` \u002F `--workspace` \u002F `--resume` なし）を 1 回実行し、`PRE_REVIEW_FINDINGS:` を brain 一次レビュー入力へ添付。companion 失敗は `PRE_REVIEW_SKIPPED` + exit 0（fail-open）。**verdict は brain のみ**（self-review scope 契約）。\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委譲先には原依頼、目的、対象差分、spec \u002F DoD、検証証拠を渡し、結論の理由と参照箇所を求める。内部の思考過程や実装 Worker の会話状態は渡さない。\n各 reviewer の確認範囲を分け、許可された同時実行上限を守る。親は証拠照合と指摘の採否判定を進める。\n必要な review とチェックを終えた後の追加検証は、新しい変更、失敗、未解決の懸念がある場合に限る。\n\n## Review Governance Contract\n\n詳細は `references\u002Fgovernance.md`。\nここでは最低限の合格ラインだけ固定する。\n\n### 明確な合格ライン\n\n`APPROVE` は次のすべてを満たす時だけ返す（詳細は `references\u002Fgovernance.md`）。\n\n- critical \u002F major が 0 件\n- root `spec.md` alignment（product contract と矛盾しない；仕様正本 alignment check 必須）\n- `Plans.md` alignment（task \u002F DoD \u002F Depends、`[lane:*]`、stage gate が contract と一致）\n- TDD evidence（`[tdd:required]` は `tdd_red_log` \u002F failing output \u002F `skip_tdd_reason`）\n- unknown data contract（`not_observed != absent` — 証拠なしの「問題なし」「データなし」を APPROVE しない）\n- regression safety（既存挙動・テスト・UX・CLI・設定・docs・mirror にデグレなし）\n  - If you grep the same symbol twice in the same session, switch to harness_ast_search.\n  - For a bugfix where homologous implementations appear across multiple modules, run harness_ast_search to find all implementations before editing.\n  - 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.\n- evidence pack（accepted \u002F rejected findings、focused tests、release-preflight warnings 処理）\n- TeamAgent Debate 未解消 disagreement なし\n\n`APPROVE` は commit \u002F push \u002F PR 作成命令ではない（read-only boundary）。\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通常 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\nroot `spec.md` alignment、Plans lane\u002Fstage、TDD evidence、unknown data contract、evidence pack の詳細は `references\u002Fgovernance.md` と `references\u002Fcode-review.md`。\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## Quick \u002F Codex Closeout Summary\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\nPlan Review は `Plans.md` の DoD \u002F Depends \u002F Status と実装順序を見る。\n仕様正本が必要なタスクで `spec_path` がない場合は、`decision_needed` として止める。\n\n## Scope Review Summary\n\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`（`--blind-judge` 併用可: 既定 OFF の opt-in second opinion。rubric も prior verdict も渡さない fresh sub-agent — `context: fork` 不可。対象は外部向け UI コピー \u002F docs \u002F cognitive-load HTML surface のみ、コード・テスト・設定・スキーマ不可、**advisory only（verdict 不変）**。詳細と eligibility は `${CLAUDE_SKILL_DIR}\u002Freferences\u002Fblind-judge.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\nFindings:\n- [severity] file:line - issue and evidence\n\nNext Actions:\n- ...\n\nDetails:\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 が異なるが、合格ライン、仕様正本、`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## 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\n`\u003Clocal-command-stdout>` で host へ結果を中継する場合だけ、output の **最後の 1 行**に次の literal を含める:\n\n`↑この結果は Claude が要約します。Enter キーで次へ進むか、新規 prompt で別の指示を出してください。`\n\nこれは `\u003Clocal-command-stdout>` 経由で text response として表示されると user が「止まった」と感じる UX 問題への明示的な instruction (patterns.md P35)。\nhost の最終回答は verdict、判断理由、確認した証拠、未検証点を返す。要約の予告だけで終了しない。\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| `--pre-review cursor` | `code+pre-review` | fresh-context composer advisory pre-review before brain verdict（read-only） |\n| `\u002Fharness-review --cursor` | `code+cursor-second-opinion` | core review gates + cursor second-opinion（brain 一次レビュー必須） |\n| `HARNESS_IMPL_BACKEND=cursor harness-review` | `code+cursor-second-opinion` | default ON 時も core review gates に cursor second-opinion を自動加算。primary verdict は brain 固定 |\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## 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 は brain 側で維持し、cursor は `dual_review.cursor_verdict` の advisory に限る。`plan` \u002F `scope` など明示 mode word は resolver result より優先し、cursor default によって plan\u002Fscope references も code\u002Fgovernance references も置き換えない。結果が `claude` \u002F `codex` の場合は従来どおりで、review の primary 判定面は変えない。\n\n## Pre-Review Cursor (`--pre-review cursor`)\n`\u002Fharness-review --pre-review cursor` は `bash scripts\u002Fpre-review-cursor.sh [--base ref]` で read-only fresh-context composer pre-review（`model-routing.sh --host cursor --tier review` → `cursor-companion.sh task`、`--write` \u002F `--workspace` \u002F `--resume` なし）を 1 回実行し、`PRE_REVIEW_FINDINGS:` を brain 一次レビュー入力へ添付。companion 失敗は `PRE_REVIEW_SKIPPED` + exit 0（fail-open）。**verdict は brain のみ**（self-review scope 契約）。\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委譲先には原依頼、目的、対象差分、spec \u002F DoD、検証証拠を渡し、結論の理由と参照箇所を求める。内部の思考過程や実装 Worker の会話状態は渡さない。\n各 reviewer の確認範囲を分け、許可された同時実行上限を守る。親は証拠照合と指摘の採否判定を進める。\n必要な review とチェックを終えた後の追加検証は、新しい変更、失敗、未解決の懸念がある場合に限る。\n\n## Review Governance Contract\n\n詳細は `references\u002Fgovernance.md`。\nここでは最低限の合格ラインだけ固定する。\n\n### 明確な合格ライン\n\n`APPROVE` は次のすべてを満たす時だけ返す（詳細は `references\u002Fgovernance.md`）。\n\n- critical \u002F major が 0 件\n- root `spec.md` alignment（product contract と矛盾しない；仕様正本 alignment check 必須）\n- `Plans.md` alignment（task \u002F DoD \u002F Depends、`[lane:*]`、stage gate が contract と一致）\n- TDD evidence（`[tdd:required]` は `tdd_red_log` \u002F failing output \u002F `skip_tdd_reason`）\n- unknown data contract（`not_observed != absent` — 証拠なしの「問題なし」「データなし」を APPROVE しない）\n- regression safety（既存挙動・テスト・UX・CLI・設定・docs・mirror にデグレなし）\n  - If you grep the same symbol twice in the same session, switch to harness_ast_search.\n  - For a bugfix where homologous implementations appear across multiple modules, run harness_ast_search to find all implementations before editing.\n  - 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.\n- evidence pack（accepted \u002F rejected findings、focused tests、release-preflight warnings 処理）\n- TeamAgent Debate 未解消 disagreement なし\n\n`APPROVE` は commit \u002F push \u002F PR 作成命令ではない（read-only boundary）。\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通常 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\nroot `spec.md` alignment、Plans lane\u002Fstage、TDD evidence、unknown data contract、evidence pack の詳細は `references\u002Fgovernance.md` と `references\u002Fcode-review.md`。\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## Quick \u002F Codex Closeout Summary\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\nPlan Review は `Plans.md` の DoD \u002F Depends \u002F Status と実装順序を見る。\n仕様正本が必要なタスクで `spec_path` がない場合は、`decision_needed` として止める。\n\n## Scope Review Summary\n\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`（`--blind-judge` 併用可: 既定 OFF の opt-in second opinion。rubric も prior verdict も渡さない fresh sub-agent — `context: fork` 不可。対象は外部向け UI コピー \u002F docs \u002F cognitive-load HTML surface のみ、コード・テスト・設定・スキーマ不可、**advisory only（verdict 不変）**。詳細と eligibility は `${CLAUDE_SKILL_DIR}\u002Freferences\u002Fblind-judge.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\nFindings:\n- [severity] file:line - issue and evidence\n\nNext Actions:\n- ...\n\nDetails:\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 が異なるが、合格ライン、仕様正本、`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## 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":57,"name":5,"pair":64,"role":65,"owner":66,"shape":67,"since":68,"effort":69,"context":70,"purpose":71,"trigger":72,"description":7,"allowed-tools":73,"argument-hint":80,"description-en":7,"description-ja":81,"user-invocable":82},"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",[74,75,76,49,77,78,79],"Read","Grep","Glob","Task","Monitor","AskUserQuestion","[code|plan|scope|--quick|--codex-closeout|--dual|--team-debate|--security|--ui-rubric|--blind-judge]","HAR:コード・プラン・スコープを多角的にレビュー。セキュリティ・品質チェック。レビューして、レビュー、コードレビュー、プランレビュー、スコープ分析で起動。実装・新機能・バグ修正・セットアップ・リリースには使わない。",true,"main","c2304c325d4432f51d632e0586d886767b0f41ea","skills\u002Fharness-review",306,"https:\u002F\u002Fgithub.com\u002FChachamaru127\u002Fclaude-code-harness","https:\u002F\u002Fgithub.com\u002FChachamaru127","https:\u002F\u002Fcanai.jp\u002F","Going all-in on the AI business from April 2025\r\nOSS release: 3k Stars\r\nAI adoption starting with \"I want\"\r\nAX Support | Tokenomics | AISDR |","2026-11-11 17:18:34",{"source":8,"skillName":5,"commands":93,"prompt":103,"zipAvailable":82},[94,97,100],{"tool":95,"command":96},"npx","npx skills add Chachamaru127\u002Fclaude-code-harness --skill harness-review",{"tool":98,"command":99},"bunx","bunx skills add Chachamaru127\u002Fclaude-code-harness --skill harness-review",{"tool":101,"command":102},"pnpm","pnpm dlx skills add Chachamaru127\u002Fclaude-code-harness --skill harness-review","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FChachamaru127\u002Fclaude-code-harness\u002Fblob\u002Fmain\u002Fskills\u002Fharness-review\u002FSKILL.md",[105,111,115,119,123,127,131,135,139,143,147,151],{"path":106,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":109,"sourceHtmlUrl":110},"references\u002Fblind-judge.md","REFERENCE","参考文档",12780,"https:\u002F\u002Fgithub.com\u002FChachamaru127\u002Fclaude-code-harness\u002Fblob\u002Fmain\u002Fskills\u002Fharness-review\u002Freferences\u002Fblind-judge.md",{"path":112,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":113,"sourceHtmlUrl":114},"references\u002Fcode-review.md",4453,"https:\u002F\u002Fgithub.com\u002FChachamaru127\u002Fclaude-code-harness\u002Fblob\u002Fmain\u002Fskills\u002Fharness-review\u002Freferences\u002Fcode-review.md",{"path":116,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":117,"sourceHtmlUrl":118},"references\u002Fcodex-closeout.md",2848,"https:\u002F\u002Fgithub.com\u002FChachamaru127\u002Fclaude-code-harness\u002Fblob\u002Fmain\u002Fskills\u002Fharness-review\u002Freferences\u002Fcodex-closeout.md",{"path":120,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":121,"sourceHtmlUrl":122},"references\u002Fcursor-review.md",6197,"https:\u002F\u002Fgithub.com\u002FChachamaru127\u002Fclaude-code-harness\u002Fblob\u002Fmain\u002Fskills\u002Fharness-review\u002Freferences\u002Fcursor-review.md",{"path":124,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":125,"sourceHtmlUrl":126},"references\u002Fdual-review.md",6735,"https:\u002F\u002Fgithub.com\u002FChachamaru127\u002Fclaude-code-harness\u002Fblob\u002Fmain\u002Fskills\u002Fharness-review\u002Freferences\u002Fdual-review.md",{"path":128,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":129,"sourceHtmlUrl":130},"references\u002Fgovernance.md",3529,"https:\u002F\u002Fgithub.com\u002FChachamaru127\u002Fclaude-code-harness\u002Fblob\u002Fmain\u002Fskills\u002Fharness-review\u002Freferences\u002Fgovernance.md",{"path":132,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":133,"sourceHtmlUrl":134},"references\u002Fplan-review.md",935,"https:\u002F\u002Fgithub.com\u002FChachamaru127\u002Fclaude-code-harness\u002Fblob\u002Fmain\u002Fskills\u002Fharness-review\u002Freferences\u002Fplan-review.md",{"path":136,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":137,"sourceHtmlUrl":138},"references\u002Fscope-review.md",1347,"https:\u002F\u002Fgithub.com\u002FChachamaru127\u002Fclaude-code-harness\u002Fblob\u002Fmain\u002Fskills\u002Fharness-review\u002Freferences\u002Fscope-review.md",{"path":140,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":141,"sourceHtmlUrl":142},"references\u002Fsecurity-profile.md",16675,"https:\u002F\u002Fgithub.com\u002FChachamaru127\u002Fclaude-code-harness\u002Fblob\u002Fmain\u002Fskills\u002Fharness-review\u002Freferences\u002Fsecurity-profile.md",{"path":144,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":145,"sourceHtmlUrl":146},"references\u002Fteam-debate.md",2433,"https:\u002F\u002Fgithub.com\u002FChachamaru127\u002Fclaude-code-harness\u002Fblob\u002Fmain\u002Fskills\u002Fharness-review\u002Freferences\u002Fteam-debate.md",{"path":148,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":149,"sourceHtmlUrl":150},"references\u002Fui-rubric.md",3772,"https:\u002F\u002Fgithub.com\u002FChachamaru127\u002Fclaude-code-harness\u002Fblob\u002Fmain\u002Fskills\u002Fharness-review\u002Freferences\u002Fui-rubric.md",{"path":152,"resourceType":107,"resourceTypeDesc":108,"sizeBytes":153,"sourceHtmlUrl":154},"references\u002Fvision-high-res-flow.md",8651,"https:\u002F\u002Fgithub.com\u002FChachamaru127\u002Fclaude-code-harness\u002Fblob\u002Fmain\u002Fskills\u002Fharness-review\u002Freferences\u002Fvision-high-res-flow.md",[156,172,180,198,226,250],{"skillNo":157,"name":158,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":159,"categories":160,"keywords":164,"publishedAt":59},"01M6C4VZCJB9EN3KZXGNARAF6P","escape-skill","https:\u002F\u002Fgithub.com\u002FChachamaru127\u002Fclaude-code-harness\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fskills\u002Fzz-review-escape\u002FSKILL.md",[161],{"categoryNo":162,"categoryName":163,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[165,166,167,168,169,170,171],"escape skill","escape","Tools","false","true","path","quoted",{"skillNo":173,"name":174,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":175,"categories":176,"keywords":177,"publishedAt":59},"01M6C4VYAJW332S5R2MM3RNE0G","zz-review-empty","https:\u002F\u002Fgithub.com\u002FChachamaru127\u002Fclaude-code-harness\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fskills\u002Fzz-review-empty\u002FSKILL.md",[],[32,178,179,168,169],"zz review empty","empty",{"skillNo":181,"name":182,"nameZh":6,"description":183,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":184,"categories":185,"keywords":187,"publishedAt":59},"01M6C4VWW4GNAZ2680GY04S3EW","session-send","This skill should be used when the user asks to notify other session, requests a session handoff, says tell other agent, or needs a cross-session message.","https:\u002F\u002Fgithub.com\u002FChachamaru127\u002Fclaude-code-harness\u002Fblob\u002Fmain\u002Fskills\u002Fsession-send\u002FSKILL.md",[186],{"categoryNo":162,"categoryName":163,"taxonomyType":21,"taxonomyTypeDesc":22},[188,189,190,191,192,49,193,194,195,196,197],"session","session send","send","handoff","session handoff","user","message","notify","requests","when",{"skillNo":199,"name":200,"nameZh":6,"description":201,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":202,"categories":203,"keywords":205,"publishedAt":59},"01M6C4VSMYH6XQGR087HQ9Y7HT","memory","Manage SSOT, memory, and cross-tool memory search. Guardian of decisions.md and patterns.md. Use when user mentions memory, SSOT, decisions.md, patterns.md, merging, migration, SSOT promotion, sync memory, save learnings, memory search, harness-mem, past decisions, or record this. Do NOT load for: implementation work, reviews, ad-hoc notes, or in-session logging.","https:\u002F\u002Fgithub.com\u002FChachamaru127\u002Fclaude-code-harness\u002Fblob\u002Fmain\u002Fskills\u002Fmemory\u002FSKILL.md",[204],{"categoryNo":162,"categoryName":163,"taxonomyType":21,"taxonomyTypeDesc":22},[200,206,207,208,34,209,210,211,49,212,213,45,214,42,215,216,193,188,217,218,219,220,221,222,223,169,224,225,197],"MCP","sync","notes","search","memory search","guardian","migrate","tool","decisions","write","edit","use","migration","manage","do","learnings","promotion","reviews","load","for",{"skillNo":227,"name":228,"nameZh":6,"description":229,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":230,"categories":231,"keywords":232,"publishedAt":59},"01M6C4VQ3507BV9XRX4BDSES6J","maintenance","File cleanup and archiving. Tidies up bloated Plans.md, session-log.md, old logs, and state files. Trigger: \u002Fmaintenance, cleanup, archive, organize, split session-log. Do NOT load for: implementation, review, release, new feature development.","https:\u002F\u002Fgithub.com\u002FChachamaru127\u002Fclaude-code-harness\u002Fblob\u002Fmain\u002Fskills\u002Fmaintenance\u002FSKILL.md",[],[228,32,233,234,235,53,236,237,238,49,239,240,42,215,216,241,188,242,243,244,220,245,246,247,248,249,169,224,225,35],"development","cleanup","run","state","file","logs","archive","grep","new feature","up","log","files","feature","plans","trigger","整理","split",{"skillNo":251,"name":252,"nameZh":6,"description":253,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":254,"categories":255,"keywords":264,"publishedAt":59},"01M6C4VK473YJ872RNMBYK7P4R","japanese-writing-drafter","Detect when the operator corrects the agent's Japanese phrasing mid-conversation (rewrites a sentence, calls out a style problem, says 'this wording is bad, say it like X instead') and draft a pending writing-rule proposal into ~\u002F.claude\u002Fwriting-lint\u002Fproposals.jsonl for later human review. This skill is the ONLY writer of proposals.jsonl — it never edits rules.jsonl and never sets status to anything but pending. Promotion to rules.jsonl only happens via the human-run scripts\u002Fwriting-rule-approve.sh. Use when user mentions writing-rule proposal, 表現を直して, 文体を直して, その言い方はNG, writing lint 提案, 指摘をルール化して. Do NOT load for: approving or rejecting proposals (use scripts\u002Fwriting-rule-approve.sh), listing pending proposals (use scripts\u002Fwriting-rule-list.sh), or scanning text against the existing dictionary (the writinglint engine \u002F PostToolUse hook does that).","https:\u002F\u002Fgithub.com\u002FChachamaru127\u002Fclaude-code-harness\u002Fblob\u002Fmain\u002Fskills\u002Fjapanese-writing-drafter\u002FSKILL.md",[256,257,260,261],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":258,"categoryName":259,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000018","写作与文案",{"categoryNo":162,"categoryName":163,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":262,"categoryName":263,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000036","内容创作者",[265,266,267,32,268,235,269,270,49,271,272,273,274,42,275,276,217,277,278,279,280,281,282,283,284,285,286,287,288,289,197,290],"writing","japanese writing drafter","japanese","status","lint","operator","提案","text","engine","Rules","list","proposals","never","only","scanning","say","human review","later","conversation","writer","human","scripts","problem","proposal","jsonl","listing"]