Skip to main content
ClaudeWave
Skill2.7k estrellas del repoactualizado today

cc-update-review

This Claude Code skill functions as a quality guardrail for Claude and Codex upstream update integrations. It detects Feature Table documentation additions and classifies them as either implemented (A), documentation-only (B), planned (C), or pending (P), requiring implementation details or explicit future task planning when documentation additions lack corresponding code changes or clear tracking. Use this skill during upstream update pull request reviews to prevent incomplete feature integrations.

Instalar en Claude Code
Copiar
git clone --depth 1 https://github.com/Chachamaru127/claude-code-harness /tmp/cc-update-review && cp -r /tmp/cc-update-review/codex/.codex/skills/cc-update-review ~/.claude/skills/cc-update-review
Después abre una sesión nueva de Claude Code; el skill carga automáticamente.

SKILL.md

# Claude/Codex Update Review ガードレール

Claude Code / OpenAI Codex のアップデート統合時に「Feature Table に書いただけ」を防止する品質ガードレール。
Feature Table への追加が実装・検証・明示的な将来タスク化を伴っているかを分類し、不足があれば実装案を強制出力する。

## Quick Reference

以下の状況でこのスキルがトリガーされる:

- Claude Code / Codex upstream update 統合 PR のレビュー時
- `docs/CLAUDE-feature-table.md` に新行が追加された diff を検出した時
- `/harness-review` が upstream update 統合 PR と判定した場合の内部呼び出し
- `claude-codex-upstream-update` スキル更新のレビュー時

トリガーしない状況:

- 通常の実装作業
- Feature Table / upstream 追従に関係しない変更
- セットアップ・初期化作業

## 差分入力の取得

このスキルは diff-aware review 専用のため、必ず以下のどちらかでレビュー対象差分を確定する。

1. 呼び出し元の `/harness-review` が PR diff / changed files / Feature Table 追加行を渡す
2. このスキル自身が read-only Bash で `git status --short`, `git diff --name-only`, `git diff -- docs/CLAUDE-feature-table.md`, `git show --stat --name-only` などを実行して確認する

Bash は read-only git inspection のみに使う。テスト実行、format、生成、network access、ファイル変更を伴うコマンドは実行しない。
diff が取得できない場合は `B: 書いただけ 0 件` と推定せず、「差分未提供のため分類不能」としてレビューを止める。

## 前提チェック

レビュー冒頭で必ず確認する:

- diff source が呼び出し元提供または read-only git inspection のどちらかで確定しているか
- `skills/` や `hooks/` を編集した PR の場合、直後に `/reload-plugins` を実行して runtime cache を更新したか(`{skills,hooks}/**` ガイドライン準拠)
- upstream のバージョン別分解表があるか
- Claude Code の一次情報 URL が `anthropics/claude-code` または公式 docs になっているか
- Codex の一次情報 URL が `openai/codex/releases` または OpenAI 公式記事になっているか
- `B: 書いただけ` が残っていないか
- skill mirror を触る場合、`skills/`, `codex/.codex/skills/`, `.agents/skills/` の差分が意図通りか

禁止する古い参照:

- 旧 TypeScript guardrail path
- 旧 TypeScript implementation glob
- 旧 Codex feature-table path
- 旧 Codex plugin directory
- 旧 Codex state directory を現行正本として扱う記述
- 存在しない Anthropic 側 Codex repo URL

## A/B/C/P 分類

Feature Table に追加された各項目を、以下の A/B/C/P のいずれかに分類する。

### (A) 実装あり

定義: Feature Table の追加に対応する hooks / settings / Go / scripts / agents / skills / tests の変更が同じ PR に含まれている。

判定条件:

- Feature Table の行で言及されている機能に関連するファイルが変更されている
- `hooks/hooks.json`, `.claude-plugin/hooks.json`, `.claude-plugin/settings.json`, `go/internal/guardrail/`, `go/internal/hookhandler/`, `scripts/`, `agents/`, `skills/`, `tests/` のいずれかに実体差分がある
- 対象テストまたは検証スクリプトで固定されている

例:

| Feature Table 追加 | 対応する実装変更 | 判定 |
|-------------------|----------------|------|
| `AskUserQuestion updatedInput` | Go handler + hooks wiring + upstream integration test | A |
| `sandbox.network.deniedDomains` | `.claude-plugin/settings.json` + jq test | A |
| `find -delete hardening` | `go/internal/guardrail/` + unit test | A |

結果: OK。追加のアクション不要。

---

### (B) 書いただけ

定義: Feature Table にのみ行が追加され、Harness 側の実装変更も Plans 化もない。かつ upstream 自動継承にも該当しない。

判定条件:

- Feature Table に新行がある
- 同じ PR 内で関連する実装 / test / skill / Plans の変更がない
- Harness が独自の付加価値を提供すべき機能である

例:

| Feature Table 追加 | 対応する実装変更 | 判定 |
|-------------------|----------------|------|
| `PreCompact hook` | なし | B |
| `permission hardening` | settings / guardrail / tests の確認なし | B |
| `Codex marketplace` | Plans への切り出しなし | B |

結果: NG。PR をブロックし、実装案または Plans 化を要求する。

---

### (C) upstream 自動継承

定義: Claude Code / Codex 本体のパフォーマンス改善・バグ修正・内部最適化等で、Harness 側の変更が不要な項目。

判定条件:

- upstream 本体の修正であり、Harness がラップ・拡張する余地がない
- Harness の settings / hooks / guardrail / workflow / tests に影響しない
- Feature Table に「upstream 自動継承」または「CC 自動継承 / Codex 側自動継承」と明記されている

注意:

- permission / sandbox / security / Bash allowlist / MCP trust boundary は安易に C にしない
- その項目が Harness の独自 guardrail や settings に影響しないことを確認してから C にする
- Claude Code 2.1.113 の hardening は、`sandbox.network.deniedDomains`, wrapper Bash deny, `find -exec/-delete`, macOS dangerous rm paths を確認するまで C 判定しない

例:

| Feature Table 追加 | 理由 | 判定 |
|-------------------|------|------|
| `Agent Teams permission dialog crash fix` | CC 本体の crash fix。Harness 側変更不要 | C |
| `Codex Guardian timeout wording` | Codex 側 UX 修正。Harness surface なし | C |

結果: OK。ただし理由を明記する。

---

### (P) Plans 化

定義: 今回は直接実装しないが、Harness に取り込む価値があるため `Plans.md` に明示タスクとして残す項目。

判定条件:

- Feature Table の付加価値列が `A: 将来タスク化` または `P: Plans 化` として読める
- `Plans.md` に対応タスクがあり、setup / guardrails / memory / Codex workflow など実装面が明記されている
- alpha release や大規模設計変更など、即実装しない理由が書かれている

例:

| Feature Table 追加 | Plans への切り出し | 判定 |
|-------------------|-------------------|------|
| `Codex marketplace / MCP Apps` | Codex workflow 比較軸タスク | P |
| `Codex 0.122.0-alpha` | stable 化後の compare 調査タスク | P |

結果: OK。次回 cycle で拾える。

## Upstream update PR チェックリスト

```markdown
## Claude/Codex update 統合チェックリスト

### 1. 一次情報と分解表
- [ ] diff source が呼び出し元提供または read-only git inspection のどちらかで確定している
- [ ] Claude / Codex の公式 URL を確認した
- [ ] Version / Upstream item / Category / Harness surface / Action の表がある
- [ ] alpha / stable / docs-only の区別がある

### 2. Feature Table 差分
- [ ] `docs/CLAUDE-feature-table.md` の追加行を列挙した
- [ ] 各行に A / C / P のいずれかが付いている
- [ ] B が 0 件である

### 3. カテゴリ別の確認
- [ ] (A) 実装あり: 対応する実装ファイルとテストがある
- [ ] (B) 書いただけ: 0 件。残る場合は PR ブロック
- [ ] (C) 自動継承: permission / sandbox / security / workflow 影響を確認済み
- [ ] (P) Plans 化: `Plans.md` に将来タスクがある

### 4. Mirror と stale path
- [ ] `skills/` と `codex/.codex/skills/` の意図しない drift がない
- [ ] `.agents/skills/` が存在する場合、Claude/Codex 表記が壊れていない
- [ ] 旧 TypeScript guardrail path、旧 Codex plugin directory、旧 Codex feature-table path などの旧参照がない

### 5. CHANGELOG / tests
- [ ] CHANGELOG に「今まで / 今後」または相当する user-facing 説明がある
- [ ] upstream integration test または対象 unit test が追加 / 更新されている
```

## カテゴリ B 検出時の出力フォーマット

カテゴリ B が 1 件以上検出された場合、以下のフォーマットで実装案を出力する。
このフォーマットの出力は必須であり、省略は許可されない。

```markdown
## カテゴリ B 検出: 実装案

### B-{番号}. {Feature Table の項目名}

**現状**: Feature Table に記載のみ。Harness 側の実装 / 検証 / Plans 化なし。

**Harness ならではの付加価値**:
{この機能を Harness がどう活用すべきかの具体的な説明}

**実装案**:

| 対象ファイル | 変更内容 |
|------------|---------|
| `{ファイルパス}` | {具体的な変更内容} |
| `{ファイルパス}` | {具体的な変更内容} |

**ユーザー体験の改善**:
- 今まで: {現在のユーザー体験}
- 今後: {実装後のユーザー体験}

**実装の優先度**: {高 / 中 / 低}
**推定工数**: {小 / 中 / 大}
```

## 関連スキル

- `claude-codex-upstream-update` - upstream 差分調査と実装 cycle
- `harness-review` - コードレビュー
- `harness-work` - カテゴリ B / P の実装
- `memory` - 分類基準の SSOT 化