バイブコーディングを進めるためのツールとして、Claude Codeを使ってみることにしました。
Claude Codeを選んだ理由はシンプルです。
仕事でGitHub Copilotを使っている中で、Claude系のモデルを触る機会があり、体感として精度が高いと感じていました。加えて、最近Claude Code自体がかなり話題になっていて、一度きちんと触っておきたいと思ったのがきっかけです。
これまでこのブログでは、AIを使って投資戦略やリスク管理を整理するなど、「考えるための道具」としてAIを使ってきました。
ただ、ここからは少し進めて、AIに実装まで任せる形にしていきたいと考えています。
そのため、いきなり触るのではなく、まずはClaude CodeのBest Practicesを読みながら、「Claude Codeで重要になるポイント」を整理してみることにしました。
Best Practicesの全体像
Best Practicesを読んで整理した重要なポイントは、次の通りです。
- AIに自己検証させる
- 調査・設計・実装を分ける
- 指示は具体的に書く
- コンテキストを管理する
- 環境にルールを持たせる
- 必要に応じて役割を分ける
Claude Codeは単なるチャットツールではなく、ファイルを読み、コマンドを実行し、コードの変更まで進める「自律的なコーディング環境」として設計されています。また、会話やファイル、コマンド出力などがすべてコンテキストに含まれ、その量が増えるほど性能が低下するという前提があります。
この前提を理解したうえで使うことが重要だと感じました
AIに自己検証させる
AIにコードを書かせるときに、最も重要なのは検証まで含めて依頼することです。
Best Practicesでは、Claudeが自分の仕事を検証できるようにすることが最も効果が高いとされています。
具体的には、テスト、スクリーンショット、期待する出力などを渡し、結果を自分で確認できる状態を作ることが推奨されています。
例えば、
「この機能を作って」
という依頼では不十分で、
「この機能を作って、テストを書いて実行し、正しく動くことを確認して」
まで含めて依頼する必要があります。
AIはそれらしく見えるコードを書くことはできますが、正しく動くかどうかは別問題です。検証を組み込むことで、生成と修正のループを回せるようになります。
調査・設計・実装を分ける
Claude Codeでは、いきなり実装させるのではなく、次の順番で進めることが推奨されています。
- 調査(Explore)
- 設計(Plan)
- 実装(Implement)
いきなりコードを書かせると、問題の理解が不十分なまま進んでしまい、結果的に方向のズレた実装になる可能性があります。
例えば、
調査では「どのファイルに該当ロジックがあるか」を確認し、
設計では「どのように変更するか」を整理し、
そのうえで実装に進む、という流れになります。
この順番を意識することで、不要なやり直しを減らすことができます。
指示は具体的に書く
ここは、いつも意識しているところですね。
Claudeはある程度の意図を推測できますが、完全に理解できるわけではありません。
コーディングの場合は、以下のような情報を明示することが重要です。
- 対象ファイル
- 制約条件
- 参考にする既存実装
- 不具合の内容
- 完了条件
Best Practicesでも、曖昧な指示は修正の手戻りを増やす原因になるとされています。
例えば、
「ログインバグを直して」
ではなく、
「セッションタイムアウト後にログインできない問題を修正する。src/authのトークンリフレッシュ処理を確認し、再現テストを作成したうえで修正し、テストが通ることを確認する」
のように書くほうが、結果の精度は高くなります。
Claude Codeでは、プロンプトは単なる指示ではなく、仕様に近い役割を持つと考えたほうがよさそうです。
コンテキストを管理する
Claude Codeでは、会話履歴や読み込んだファイル、コマンド出力などがすべてコンテキストとして扱われます。
そして、このコンテキストは増えるほど性能が低下するという特性があります。
そのため、次のような使い方が重要になります。
- タスクごとにセッションを分ける
/clearを使ってリセットする- 無関係な会話を混ぜない
例えば、実装の途中に雑談を挟むと、その内容もコンテキストに含まれてしまい、精度に影響が出る可能性があります。
コンテキストは便利な反面、管理しないとノイズにもなるため、意識的にコントロールする必要があります。
CLAUDE.mdでルールを固定する
CLAUDE.mdは、Claudeがセッション開始時に毎回読み込む設定ファイルです。
ここに以下のような内容を書くことで、毎回の指示を減らすことができます。
- コードスタイル
- テスト方法
- 使用するコマンド
- 開発ルール
例えば、
- 必ずテストを書く
- TypeScriptで実装する
- ESLintを通す
といったルールを記載しておくことで、毎回個別に指示する必要がなくなります。
ただし、Best Practicesでは、CLAUDE.mdは短く保つことが重要ともされています。
長すぎると重要なルールが埋もれてしまい、逆に効果が薄れるためです。
役割を分けて使う
Claude Codeでは、subagentという仕組みを使うことで、処理を分離することができるみたいです。
subagentは別のコンテキストで動作するため、
- 調査
- レビュー
- 大量ファイルの読み込み
といった処理を分離して実行できます。
これにより、メインのコンテキストを汚さずに処理を進めることができます。
特に、大きなコードベースを扱う場合や、調査と実装を分けたい場合に有効です。
セッションを引きずらない
Best Practicesでは、同じ問題で何度も修正を繰り返すよりも、セッションをリセットしてやり直すほうがよいとされています。
失敗した試行や不要な会話がコンテキストに残ると、それ自体がノイズとなり、精度を下げる原因になります。
そのため、
/clearでリセットする/rewindで戻す- 新しいプロンプトでやり直す
といった使い方が重要になります。
まとめ
Claude CodeのBest Practicesを整理すると、AIコーディングで重要になるのは次のポイントです。
- AIに自己検証させる
- 調査・設計・実装を分ける
- 指示を具体的に書く
- コンテキストを管理する
- ルールを環境に持たせる
- 処理を分離する
Claude Codeは、単にコードを書くAIではなく、開発プロセス全体を進めるためのツールです。
そのため、AIに任せる範囲を広げるほど、使い方の設計が重要になります。
次は、コンテキストをしっかり管理するために、フォルダ構造やCLAUDE.mdといったポリシーをどう整理していくかを考えていきたいと思います。

