ツール解説 · 小互解読

Anthropic公式が教える、手動コードチェックをスキル化して自己検証・自己修正させる方法

社内では4つのスキルがリレー方式で動く——バグを見つけ、diffを整理し、実際にアプリを起動して確認し、UIに触れた変更ならデザイン規約と照合する。
1分で要点
  • AIがコードを書き終えると、コンパイルエラー・型チェック・テスト・linterといったシグナルは自分で見えている。だが人間にしか分からないチェックだけは、毎回手で確認するしかない。
  • Claude Codeチームが示す方法はこうだ——毎回自分がやっているそのチェックを平易な言葉で書き出し、スキルとして保存すれば、あとは自分で走らせ、自分で直す。最小のものはわずか十数行で済む。
  • チェックの中身をうまく書くのは半分にすぎず、もう半分はそれをどの層に置くかにかかっている——自分で呼び出す、コード生成スキルに埋め込む、1つのスキルが終わったら次を自動で呼ぶ、すべてのPRに紐づける。後の層になるほど手間は減るが、その分修正も難しくなる。
  • Anthropic自身のClaude Codeチームが日常で回しているのは4つのスキルのリレーだ——/code-reviewでバグを探し、/simplifyでdiffを整理し、/verifyで実際にアプリを起動して挙動を確かめ、変更がUIに触れる場合はさらに独自の/designを呼んでDESIGN.mdと照合する。
  • 代償もはっきり書かれている——スキルは一度読み込まれるとセッション終了までコンテキストに常駐し続け、チェーンが長くなるほどトークン消費もかさむ。また/verify/code-reviewはv2.1.215以降、明示的に呼び出したときだけ動作し、勝手に発火しなくなった。
これはClaude Codeチーム自身が書いた解説記事で、自社ツールを社内でどう使っているかを語ったものだ。原文には効果を示す数値は一切ない——どれだけ時間を節約できたか、誤検知率がどうか、トークンをどれだけ余計に消費するかも計測されていない。チェック自体が誤って書かれた場合どうなるかについても触れていない。以下「本サイト補足」と記した段落は code.claude.com の公式ドキュメントからの補足で、原文では展開されていない部分だ。
1ループの姿

AIがコードを書き終えたあと、どのチェックが自動で行われ、どれが人間頼みか

Anthropic公式チームが、Claude Code内で検証ループ(verification loop)をどう構築するかを共有した。普段手動で行っているチェック手順を自動化されたスキルに変え、AIに自ら誤りを正させるというものだ。執筆はClaude CodeチームのDelba de Oliveira、7月22日公開。

簡単に言えば、検証ループとはClaudeがコードを書き終えたあと自分でチェックし、問題があれば自分で直す仕組みで、あなたがずっとパソコンの前で監督している必要がなくなるということだ。

今のあなたのやり方はおそらくこうだろう——AIに機能を修正してもらい、「直しました」と言われたら、あなた自身がページを開いて一通りクリックし、ログをざっと眺め、ブラウザをスマホ幅まで狭めて試す。これらは毎回あなたが自分でやるしかない。今回引き渡そうとしているのはこの部分だ。

まずAIの作業フロー全体がどんな形をしているか見てみよう。

Anthropic公式図:AIが作業するループ。Promptからコンテキスト収集、行動、結果検証、返答までの流れ。破線枠がAgentic loopを示す
あなたが一言指示を出すと、Claudeはコンテキストを収集し(Gather context)、行動し(Take action)、結果を検証し(Verify results)、最後にあなたへ返答する。破線で囲まれた真ん中の3ステップが、Claudeが自分の中で回しているループそのものだ。画像出典:Claude公式ブログ。

この図には本文で触れられていない細部がある。検証に通らなかったとき、矢印が戻る先は「コンテキスト収集」であって「行動」ではない。つまり同じ情報のまま2回目の修正を強行するのではなく、まず状況を改めて把握し直してから、どう動くかを決めるということだ。

この検証というステップは、実はすでに一部やっている。コードベースの中には機械が直接読み取れるシグナルが一群あるからだ——コンパイラのエラー、型チェックの不通過、テストの失敗、linterの警告。これらが出た時点でAIには見えているし、後戻りすべきタイミングも分かっている。

厄介なのはもう半分だ。

自分で見える
コードベース内の確定的なシグナルで、エラーになれば明確な報告が出る
  • コンパイラのエラー
  • 型チェックの不通過
  • テストの失敗
  • linterの警告
人間にしか分からない
どんなツールもこれをエラーとして報告しない、AIには推測できない
  • スマホ幅でこのボタンが隠れてしまわないか
  • このエラーログにユーザーのリクエストボディまで書き出していないか
  • 今回のマイグレーションで削除した列のデータが、新しい構造にきちんと補填されているか
  • この変更がチームのデザイン規約に沿っているか

右側のリストには、どんなツールも警告を出してくれない。だから毎回あなたの手に落ち、あなたが自分でクリックするあのステップになる。次にやるべきは、この右側もAIが読めるシグナルに変えることだ。

サイト内関連記事
Claude Code公式が解説するループ設計——4段階で無人運用まで
同じ公式ブログシリーズの前編で、ループ全体が手動確認から無人運用へどう進化していくかを扱っている。検証はその4段階の一部であり、本記事はまさにそこを掘り下げたものだ。
2既製品

Claude Codeにすでに組み込まれている6種のチェック、それぞれの役割

ゼロから書き始める前に、まず既製のものを見てみよう。Claude Codeにはすでに6種類が組み込まれていて、それぞれ異なる位置にある——あなたが呼び出さなければ動かないものもあれば、自動で走るものもある。

/verify
呼び出して初めて動く
プロジェクトのアプリをビルドして実際に起動し、その結果を観察する。テストや型チェックではなく、目で見た結果によって変更の正否を判断する。Claude Code v2.1.145以上が必要。
CLAUDE.mdに書き込む
常時有効
Claudeはあなたが用意したツールが出すエラーコードや警告を受け取り、それに応じて動く。プロジェクト固有のビルド・テストコマンドをCLAUDE.mdに書いておけば、Claudeが自分で推測して打ち込む必要がなくなる。
Code Review(研究プレビュー)
自動実行
マネージド型のマルチエージェントサービスで、有効化したリポジトリのPRに対して自動レビューを走らせる。見つかった問題は自分で直してプッシュしてもよいし、その指摘の下に@claudeとコメントして対応させることもできる。GitHub Actionsの設定が前提。
GitHub Actions
プッシュのたびに実行
検証スキルを備えたClaudeを呼び出すjobを定義すれば、ローカルで走らせているチェック一式を、プッシュやPRのたびに同じように発火させられる。
Spec validation
呼び出して初めて動く
リポジトリ内のMarkdown仕様書を基準にして、変更ごとに逐一照合し、違反箇所を修正しようと試みるスキル。
Managed Agentsの評価表(ベータ)
基準未達で自動差し戻し
マネージド型のエージェントサービスで、独立した採点用エージェントに評価表を基準として成果物を照合させる。基準に達していなければ自動的に差し戻される。