メインコンテンツへスキップ
3 / 26|10分で読めます

最初の対話 — Claude Codeと話してみよう

Claude Codeとの最初のやり取り。ファイルの読み書き、コード生成、テスト実行。基本操作を手を動かしながら学ぶ。

手を動かさなければ何も始まらない。Claude Codeとの最初の対話で、AIコーディングの感覚をつかもう。


プロジェクトに入る

Claude Codeは、プロジェクトディレクトリ内で起動するのが基本だ。

cd ~/my-project
claude

起動すると、Claude Codeはカレントディレクトリを作業ディレクトリとして認識する。ここから、ファイルの読み書き、コマンド実行、Git操作を行う。

空のディレクトリでもOK

プロジェクトがまだない場合は、空のディレクトリを作って claude を起動すればよい。ゼロからプロジェクトを構築する体験ができる。


基本操作を体験する

1. コードベースを理解する

最初にやるべきことは、プロジェクトの全体像を把握することだ。

> このプロジェクトの構造を教えて

Claude Codeは Glob ツールと Read ツールを使ってディレクトリ構造を調べ、主要なファイルの内容を読み取り、プロジェクトの概要を説明してくれる。

2. ファイルを読む

特定のファイルについて質問することもできる。

> package.json の内容を見せて。何のライブラリを使っている?

Claude Codeが Read ツールを使ってファイルを読み取り、依存関係を分析して説明する。この過程で、あなたにはツール使用の確認が求められる。

Claude wants to use Read to read package.json
[Allow] [Deny] [Always allow]

Allow を選ぶとツールが実行される。Always allow を選ぶと、以後同じツールの使用が自動承認される。

3. 新しいファイルを作成する

Claude Codeにファイルを作成してもらおう。

> utils/math.ts に、2つの数値の平均を計算する関数を作って。TypeScriptで。

Claude Codeは Write ツールを使ってファイルを作成する。作成前に内容が表示され、承認を求められる。

4. 既存ファイルを編集する

作成したファイルに機能を追加してみよう。

> math.ts に標準偏差を計算する関数も追加して

今度は Edit ツールが使われる。Editツールは差分ベースで動作し、変更箇所だけを正確に編集する。ファイル全体を書き換えるのではなく、必要な部分だけを変更するため、既存のコードが壊れるリスクが低い。

5. テストを実行する

コードを書いたら、テストで検証する。

> math.ts のテストを書いて、実行して

Claude Codeは以下のステップを自律的に行う。

  1. Write ツールでテストファイルを作成
  2. Bash ツールでテストを実行(npx vitest runnpx jest など)
  3. テスト結果を分析
  4. 失敗した場合は原因を特定し、修正案を提示

6. Gitにコミットする

変更をGitにコミットしよう。

> 今の変更をコミットして。コミットメッセージは自動で考えて

Claude Codeは Bash ツールで git statusgit diff を実行し、変更内容を分析した上で適切なコミットメッセージを生成する。


スラッシュコマンド

Claude Codeには、対話以外にもスラッシュコマンドと呼ばれる特殊なコマンドがある。

基本コマンド

コマンド説明
/helpヘルプを表示
/clear会話履歴をクリア
/compactコンテキストを圧縮して要約
/status現在の設定状態を表示
/cost現在のセッションのトークン使用量とコスト

よく使うコマンド

/compact    # コンテキストが大きくなったら圧縮
/clear      # 全く別の作業を始めるときにリセット
/help       # 困ったときのヘルプ

/compact の使いどころ

長い作業の途中で「Claude Codeの応答が遅くなった」「同じことを繰り返す」と感じたら、/compact でコンテキストを整理するとよい。重要な情報は保持しつつ、不要な詳細が圧縮される。


パーミッションシステムを理解する

Claude Codeの最も重要な特徴の一つがパーミッションシステムである。

AIがファイルを編集したり、コマンドを実行したりするたびに、あなたに確認が求められる。

Claude wants to use Edit to modify src/utils/math.ts
[Allow] [Deny] [Always allow]

なぜ毎回確認するのか

安全性のためだ。

AIが誤ったファイルを削除したり、意図しないコマンドを実行したりするリスクを防ぐ。特に以下のような操作は慎重に確認すべきだ。

  • rm コマンド(ファイル削除)
  • git push(リモートへの反映)
  • データベース操作
  • ネットワーク通信を伴うコマンド

承認のショートカット

毎回の確認が煩わしい場合は、以下の方法で自動承認を設定できる。

  • Always allow: 特定のツールを以後自動承認
  • settings.json: 事前にルールを設定(詳しくはPart 2で解説)

ただし、慣れるまでは毎回確認することを強く推奨する。AIの行動を観察し、何をしようとしているかを理解することが、効果的な協働の第一歩だからだ。


効果的な対話のコツ

具体的に指示する

# 悪い例
> ログイン機能を作って

# 良い例
> Firebase Authenticationを使ったメールアドレス/パスワードのログイン機能を作って。
> ログインフォームはsrc/components/LoginForm.tsxに作成し、
> 認証状態の管理にはReact Contextを使って。

既存パターンを参照する

> src/components/Header.tsx と同じスタイルで、Footer コンポーネントを作って

既存のコードを参照させることで、プロジェクトの統一感を保てる。

段階的に進める

大きなタスクは分割して依頼する。

# 一度にすべてを頼むのではなく
> まずデータモデルの型定義を作って
> (レビュー後)次に、このモデルのCRUD操作を行うAPIルートを作って
> (レビュー後)最後に、フロントエンドのフォームを作って

AIの出力を検証する

Claude Codeが生成したコードは必ず確認する。

> 今作ったコードのテストを書いて実行して
> セキュリティ上の問題がないかチェックして

実践演習: BMI計算アプリ

ここまで学んだことを使って、簡単なアプリを作ってみよう。

> 以下の仕様でBMI計算のTypeScript関数を作って。
>
> - 身長(cm)と体重(kg)を受け取る
> - BMIを計算して返す
> - BMIの判定(低体重、普通体重、過体重、肥満)も返す
> - 入力バリデーション付き(身長0以下、体重0以下はエラー)
> - テストも一緒に作って実行して

この一つのプロンプトで、Claude Codeは以下を行う。

  1. 関数の型定義を設計
  2. 実装コードを作成
  3. テストコードを作成
  4. テストを実行
  5. 結果を報告

もしテストが失敗すれば、原因を分析して自動的に修正を提案する。


次のステップ

基本操作を体験したところで、次のPartではClaude Codeのコア概念を深掘りする。

ツールシステムの全体像、CLAUDE.mdによるプロジェクト設定、settings.jsonによる細かな制御、パーミッションモデルの設計思想。これらを理解することで、Claude Codeを真に使いこなす力が身につく。

この章のポイント

  • Claude Codeはプロジェクトディレクトリで claude コマンドを実行して起動する
  • ファイルの読み書き、テスト実行、Git操作を自然言語の指示で行える
  • パーミッションシステムにより、AIのすべての操作は人間の承認を経て実行される
  • /compact/clear/help などのスラッシュコマンドでセッションを管理する
  • 効果的な対話のコツは「具体性」「既存パターンの参照」「段階的な進行」「出力の検証」