Claude Code の使い方ガイド|基本操作から実践テクニックまで
「Claude Code をインストールしたけれど、何から始めればいいかわからない」「もっと効率よく使いこなしたい」——そんな悩みを抱えている方は多いのではないでしょうか。
Claude Code は Anthropic が開発したターミナルベースの AI コーディングアシスタントです。自然言語で指示を出すだけでコードの生成・編集・デバッグ・Git 操作まで、開発に必要なあらゆる作業を実行できます。しかし、その力を最大限に引き出すには「正しい使い方」を知っておくことが重要です。
本記事では、Claude Code の基本的な使い方を5つのステップで解説し、効果的なプロンプトの書き方、よく使う操作パターン、便利なコマンド、そして初心者がつまずきやすいポイントまでを網羅的に紹介します。この記事を読み終えるころには、Claude Code を日常の開発ワークフローに自信を持って組み込めるようになっているはずです。
Claude Code とは?30秒で理解する
Claude Code は、Anthropic の Claude モデルをターミナル上で直接利用できるエージェント型コーディングツールです。一般的な AI チャットボットとは異なり、以下の特徴があります。
- ファイルシステムに直接アクセスできる: プロジェクト内のファイルを読み書きし、実際にコードを変更する
- ターミナルコマンドを実行できる: テストの実行、パッケージのインストール、Git 操作などをそのまま行う
- プロジェクト全体を理解する: コードベース全体の構造を把握し、複数ファイルにまたがる変更も一括で処理する
- 対話的に修正できる: 結果を確認しながら「ここを直して」と追加指示が出せる
つまり Claude Code は、ターミナルに常駐する「何でもできるペアプログラマー」です。IDE に依存しないため、どのエディタを使っていても活用できます。
Claude Code の全体像や導入方法について詳しく知りたい方は、以下の記事も参考にしてください。
基本的な使い方(5ステップ)
Claude Code の操作は非常にシンプルです。以下の5ステップを押さえれば、すぐに日常の開発に取り入れられます。
ステップ1: 起動する
ターミナルを開き、以下のコマンドで Claude Code を起動します。
claude
これだけで対話セッションが始まります。プロンプトが表示され、自然言語で指示を入力できる状態になります。
起動時にはカレントディレクトリが作業ディレクトリとして認識されます。そのため、作業したいプロジェクトのルートディレクトリで起動することが重要です。
cd ~/projects/my-app
claude
初回起動時には認証が求められます。Anthropic Console のアカウント、または Claude Pro/Max サブスクリプションでログインしてください。
ステップ2: プロジェクトを開く
Claude Code は起動時のカレントディレクトリをプロジェクトとして認識します。プロジェクトのルートで起動すれば、そのまま作業を始められます。
起動直後に、Claude Code は自動的にプロジェクトの構造を把握しようとします。どんなフレームワークを使っているか、設定ファイルはどうなっているか、ディレクトリの構成はどうかといった情報を読み取ります。
プロジェクトの初期設定として /init コマンドを実行すると、プロジェクトのルートに CLAUDE.md ファイルが生成されます。
/init
CLAUDE.md にはプロジェクト固有のルールやコーディング規約を記述できます。Claude Code はセッション開始時に必ずこのファイルを読み込むため、毎回同じ指示を繰り返す必要がなくなります。
ステップ3: 指示を出す
プロンプトに自然言語で指示を入力します。日本語でも英語でも問題ありません。
ユーザー登録フォームのバリデーションを追加して。
メールアドレスの形式チェックとパスワードの最低8文字チェックを入れたい。
Claude Code は指示を受け取ると、以下のプロセスを自動的に実行します。
- 関連ファイルの特定: プロジェクト内から対象のファイルを探す
- コードの理解: 既存のコードを読み込み、構造を把握する
- 変更計画の立案: どのファイルをどう変更するかを計画する
- コードの生成・編集: 実際にファイルを変更する
変更が行われる前にはプレビューが表示されます。ファイルの変更内容を確認してから承認できるため、予期しない変更が適用される心配はありません。
ステップ4: 結果を確認する
Claude Code が変更を提案すると、変更内容の差分(diff)が表示されます。ここで確認すべきポイントは以下の通りです。
- 変更されたファイル: 意図したファイルが変更されているか
- 変更内容: 追加・削除・修正された行が期待通りか
- 副作用: 関係のないファイルが変更されていないか
変更を承認すると、実際にファイルに書き込まれます。承認前であれば変更はまだ適用されていないため、安心して内容を精査できます。
変更を承認した後にテストを実行して動作確認することも、Claude Code に直接依頼できます。
変更したバリデーションのテストを実行して
ステップ5: 修正を依頼する
結果に満足できない場合は、そのまま追加の指示を出して修正を依頼します。Claude Code は前のやり取りのコンテキストを保持しているため、「さっきの変更」について自然に会話を続けられます。
パスワードのバリデーションに大文字・小文字の混在チェックも追加して
エラーメッセージを日本語に変えて
バリデーションのロジックをカスタムフックに切り出して
このように、対話的に少しずつ改善していくのが Claude Code の基本的なワークフローです。一度に完璧な指示を出す必要はありません。「まず大まかに作って、細部を調整する」というアプローチが効果的です。
効果的なプロンプトの書き方
Claude Code の出力品質は、入力するプロンプトの質に大きく左右されます。以下のポイントを押さえることで、より正確で意図通りの結果を得られます。
具体的に書く
曖昧な指示ではなく、具体的な要件を明示しましょう。
悪い例:
ログイン機能を作って
良い例:
React Router のアクションを使ったログインフォームを作って。
- メールアドレスとパスワードのフィールド
- バリデーション: メール形式チェック、パスワード8文字以上
- エラー時はフォーム上にエラーメッセージを表示
- 成功時は /dashboard にリダイレクト
- API エンドポイントは POST /api/v1/auth/signin
具体的であればあるほど、Claude Code は正確な実装を生成します。「何を」「どこに」「どのように」を明確にすることが鍵です。
コンテキストを与える
Claude Code はプロジェクト全体を読めますが、あなたの意図までは読めません。背景情報を添えると、より適切な実装が得られます。
このプロジェクトでは FormInput コンポーネント(@blueai/ui)を
標準のフォーム部品として使っている。
新しいフォームを作るときもこのコンポーネントを使って。
users テーブルにステータスカラムを追加したい。
既存ユーザーはすべて active にして、
退会済みユーザーは inactive で管理する想定。
既存のパターンを示すことで、プロジェクト全体の一貫性を保った実装が得られます。
CLAUDE.md の活用
プロジェクトごとに繰り返し伝えたいルールは、CLAUDE.md に書いておくのが最も効率的です。CLAUDE.md は Claude Code のセッション開始時に自動的に読み込まれるため、毎回同じ指示を入力する手間を省けます。
# CLAUDE.md
## コーディング規約
- TypeScript を使用する
- コンポーネントは関数コンポーネントで書く
- CSS は Tailwind CSS を使用する
- テストは Vitest で書く
## ディレクトリ構成
- app/routes/ - ページコンポーネント
- app/components/ - 共通コンポーネント
- app/lib/ - ユーティリティ関数
## 命名規則
- ファイル名: kebab-case
- コンポーネント名: PascalCase
- 変数・関数名: camelCase
CLAUDE.md を充実させることは、Claude Code を「自分のプロジェクトに最適化されたアシスタント」に育てることと同じです。プロジェクトに参加する新しいメンバーへの説明書としても機能します。
設定の詳細については、以下の記事で詳しく解説しています。
よく使う操作パターン
ここでは、日常の開発で頻繁に使う操作パターンを紹介します。
ファイル作成・編集
最も基本的な操作です。新しいファイルの作成も、既存ファイルの修正も自然言語で指示できます。
新規ファイルの作成:
app/components/user-profile.tsx にユーザープロフィールの
表示コンポーネントを作って。名前、メールアドレス、
アバター画像を表示する。
既存ファイルの修正:
app/routes/dashboard.tsx のローダーに、
未読通知の件数を取得する処理を追加して。
複数ファイルの一括変更:
User 型の定義に phoneNumber フィールドを追加して、
関連するすべてのファイル(型定義、フォーム、API、テスト)を
一括で更新して。
Claude Code の強みは、この「複数ファイルの一括変更」にあります。型定義を変えたら関連する全ファイルが自動的に更新されるため、修正漏れが起きにくくなります。
Git 操作
Claude Code はターミナルコマンドを実行できるため、Git 操作もそのまま依頼できます。
今の変更をコミットして。コミットメッセージは変更内容から自動生成して。
feature/user-profile ブランチを作って、そこに切り替えて。
main ブランチとの差分を確認して、コンフリクトがあれば解消して。
特に便利なのがコミットメッセージの自動生成です。Claude Code は変更内容を理解しているため、変更の本質を捉えた適切なメッセージを生成してくれます。
コード検索・リファクタリング
大規模なコードベースでの検索やリファクタリングも、Claude Code の得意分野です。
コードの検索:
このプロジェクトで fetch を直接呼んでいる箇所をすべて探して。
deprecated になっている API を使っている箇所を一覧にして。
リファクタリング:
utils/format.ts の関数を、日付関連とテキスト関連に
ファイルを分割して。既存のインポートも全部更新して。
コールバック地獄になっている processOrder 関数を
async/await に書き換えて。
リファクタリングでは、Claude Code が依存関係を追跡して関連ファイルまで一括で修正してくれるため、手動で行うよりも安全かつ高速です。
テスト実行
テストの作成から実行、デバッグまで一貫して依頼できます。
テストの作成:
app/lib/validators.ts のユニットテストを作成して。
正常系と異常系の両方をカバーして。
テストの実行と修正:
テストを実行して、失敗しているものがあれば原因を特定して修正して。
テストが失敗した場合、Claude Code はエラーメッセージを分析して原因を特定し、修正案を提示します。「テストを実行 → 失敗を確認 → 修正」のサイクルを自動で回せるのは、開発効率の大幅な向上につながります。
便利なコマンドとショートカット
Claude Code にはいくつかの組み込みコマンドとキーボードショートカットがあります。これらを使いこなすことで、操作効率が格段に上がります。
スラッシュコマンド
| コマンド | 機能 |
|---|---|
/init | CLAUDE.md を自動生成する |
/compact | 会話履歴を要約してコンテキストを圧縮する |
/cost | 現在のセッションのトークン消費量とコストを表示する |
/clear | 会話履歴をクリアして新しいセッションを開始する |
/help | 使い方のヘルプを表示する |
/model | 使用するモデルを切り替える |
/permissions | パーミッション設定を確認・変更する |
特に重要なのが /compact と /cost です。
/compact はトークンの節約に欠かせません。長い会話が続くとコンテキストウィンドウがいっぱいになりますが、/compact を実行すると会話の要点を保持したまま履歴を圧縮してくれます。
/cost を定期的に確認する習慣をつけると、API 従量課金を使っている場合のコスト管理が容易になります。
キーボードショートカット
| ショートカット | 機能 |
|---|---|
Escape | 現在の生成を中断する |
Ctrl+C | 入力中のプロンプトをキャンセルする |
Up/Down | 過去のプロンプト履歴をナビゲートする |
Tab | 入力の補完を行う |
生成の中断(Escape)は覚えておくと便利です。意図と違う方向に進んでいると感じたら、すぐに中断して指示を修正できます。中断しても、それまでの会話コンテキストは保持されるため、やり直しのコストは最小限です。
非対話モードの活用
Claude Code はコマンドラインから直接プロンプトを渡す非対話モードもサポートしています。
claude -p "package.json の依存関係を確認して、セキュリティ上の問題がないかチェックして"
-p フラグを使うと、対話セッションを開始せずに単発のタスクを実行できます。CI/CD パイプラインへの組み込みや、シェルスクリプトからの呼び出しに便利です。
コマンドの詳細については、以下の記事で網羅的に解説しています。
初心者がよくつまずくポイントと解決策
Claude Code を使い始めた方がつまずきやすいポイントと、その解決策をまとめます。
パーミッションの承認
Claude Code がファイルの書き込みやコマンドの実行を行う際には、パーミッション(許可)の承認が求められます。これはセキュリティ上の重要な仕組みですが、初心者は「毎回聞かれて面倒」と感じることがあるかもしれません。
解決策:
- 信頼できるプロジェクトでは、セッション中は同種の操作を自動承認する設定を使う
/permissionsコマンドでパーミッションの設定を確認・変更する.claude/settings.jsonにプロジェクト単位の許可ルールを定義する
ただし、パーミッションを緩くしすぎるのは推奨しません。特に本番環境に影響するコマンドの実行や、機密情報を含むファイルの変更については、毎回確認する習慣を持ちましょう。
トークン消費の管理
Claude Code は AI モデルとの通信にトークンを消費します。特に以下の状況でトークン消費が増加しがちです。
- 大きなファイルを何度も読み込む: 同じファイルを繰り返し参照する場合
- 長い会話セッション: コンテキストが蓄積するにつれてトークンが増える
- 曖昧な指示の繰り返し: やり直しが多いと無駄なトークンが消費される
解決策:
/compactを使って定期的にコンテキストを圧縮する/costでトークン消費量をモニタリングする- 一つの大きなタスクを小さな単位に分割して、セッションを区切る
- 最初から具体的な指示を出し、やり直しの回数を減らす
- 必要に応じて
/clearで新しいセッションを開始する
API 従量課金の場合、1日のコスト上限を Anthropic Console で設定しておくと安心です。Claude Max プランを利用している場合は、月額定額のためトークン消費量を気にする必要はありません。
ファイル変更の確認と取り消し
Claude Code による変更が意図しないものだった場合、元に戻す方法を知っておくことが重要です。
解決策:
- Git を活用する: 変更前に必ずコミットしておけば、
git diffで変更内容を確認し、git checkoutで元に戻せる - 差分をよく読む: Claude Code が変更を提案した時点で差分を注意深く確認する
- 段階的に進める: 大きな変更は一度に行わず、小さなステップに分けて確認しながら進める
ベストプラクティスとして、Claude Code で作業を始める前に必ず Git でクリーンな状態にしておくことを強く推奨します。コミットしていない変更がある状態で Claude Code に作業を依頼すると、元の変更と Claude Code の変更が混在してしまい、取り消しが困難になります。
# 作業前に現在の変更をコミットしておく
git add -A && git commit -m "WIP: 現在の作業を一時保存"
# Claude Code で作業開始
claude
コンテキストウィンドウの限界
長時間のセッションや大規模なプロジェクトでは、コンテキストウィンドウの上限に達することがあります。上限に近づくと Claude Code の応答品質が低下したり、以前の会話内容を忘れてしまったりすることがあります。
解決策:
/compactでコンテキストを定期的に圧縮する- タスクが完了したら
/clearで新しいセッションを開始する CLAUDE.mdに重要なルールを書いておけば、セッションを開始するたびに自動で読み込まれる- 一つのセッションで複数の無関係なタスクを処理しない
期待通りの結果が得られない
Claude Code の出力が期待と異なる場合があります。
解決策:
- 指示を具体的にする: 「いい感じに」ではなく、具体的な仕様を伝える
- 既存コードを参照させる: 「この関数と同じパターンで」と既存のコードを指し示す
- 段階的に進める: 一度に全部作らせず、パーツごとに作って確認する
- フィードバックを与える: 「ここは良いけど、ここは違う」と具体的に伝える
Claude Code は対話型のツールです。一発で完璧な結果を求めるよりも、対話を通じて段階的に理想に近づけるアプローチが最も効果的です。
まとめ
本記事では、Claude Code の基本的な使い方から実践テクニックまでを解説しました。ポイントを振り返ります。
- 起動はシンプル: プロジェクトのルートで
claudeを実行するだけ - 指示は具体的に: 「何を」「どこに」「どのように」を明確に伝える
- CLAUDE.md を活用する: プロジェクト固有のルールを記述して効率化
- 対話的に進める: 一発で完璧を目指さず、フィードバックを重ねる
- Git と組み合わせる: 変更前のコミットで安全に作業する
- コストを意識する:
/compactと/costで効率的にトークンを管理する
Claude Code は「使えば使うほど、使い方が上手くなる」ツールです。最初は小さなタスクから始めて、徐々に複雑な作業を任せていくのがおすすめです。
より体系的に学びたい方は、以下のレッスンで実践的な操作方法を学べます。