書籍概要

Claude CodeによるAI駆動開発入門

著者
発売日
更新日

概要

2025年5月末に一般リリースされたAnthropic社が提供している「Claude Code」は,コマンドライン上で動くLLMによるAIコーディングエージェントです。これまでのAI開発支援エディタ一である「Github Copilot」や「Cursor」等他のツールとは全く違う開発体験が一気にエンジニアに受け入れられ,AI駆動開発のデファクトスタンダードになりつつあります。

本書は他の書籍に先駆けて,Claude Codeの基本的な知識から豊富な使い方まで幅広く解説します。さらに開発のためのおすすめのワークフロー,そして実際に動くWebアプリケーションをハンズオンで手を動かして構築しながら,新しい開発パラダイムを体験し,実践的に学ぶことができます。これからClaude Codeを学ぶ初心者はもちろん,従来の開発手法に慣れたエンジニアが,Claude Codeを使いこなしながらアプリケーション開発を行う「AI駆動開発」という新時代の開発スタイルへスムーズに移行できるようになる実践的な入門書です!

こんな方におすすめ

  • AI駆動開発に興味があるが、実際に使ったことがない開発者
  • 「Claude Codeで何ができるのか」を知りたいエンジニア
  • 社内システムなどをClaude Codeで作ってみたい非エンジニア

目次

第1章 Claude Code入門と開発環境構築

1.1 AI支援開発の新時代

  • 1.1.1 Claude Codeとは
  • 1.1.2 Before Claude CodeのAI支援開発
  • 1.1.3 これまでのAI支援開発の限界
  • 1.1.4 AI 開発支援の登場によるエンジニアの新たなストレス
  • 1.1.5 Claude CodeがCLIとして生まれた背景
  • 1.1.6 Claude Codeの特徴
  • 1.1.7 Claude CodeがもたらすAI支援開発から一歩進んだAI駆動開発

1.2 Claude Codeの料金体系

  • 1.2.1 Claude Codeを使用する二つの選択肢
  • 1.2.2 プランの切り替え
  • 1.2.3 プラン選択の目安
  • 1.2.4 メッセージ制限とセッション
  • 1.2.5 プロンプトについて
  • 1.2.6 モデルの選択と切り替え
  • 1.2.7 コスト管理のヒント
  • 1.2.8 まとめ
  • Column トークンとは

1.3 アカウントの登録

  • 1.3.1 サブスクリプションユーザー(Claude Account)への登録方法
  • 1.3.2 APIユーザー(Claude Console Account)への登録方法
  • 1.3.3 まとめ

1.4 環境構築とセットアップ

  • 1.4.1 推奨環境
  • 1.4.2 Claude Codeのインストール方法
  • 1.4.3 初回起動と認証
  • 1.4.4 アカウントの種類の選択
  • 1.4.5 ブラウザからログインする
  • 1.4.6 アカウントへの接続と承認
  • 1.4.7 ターミナルセットアップ
  • 1.4.8 フォルダの信頼確認
  • 1.4.9 ターミナル環境との互換性
  • 1.4.10 リポジトリの作成方法
  • 1.4.11 Claude Codeで開発する際の基本ポジション
  • 1.4.12 まとめ

1.5 はじめてのClaude Code

  • 1.5.1 最初の一歩:基本コマンドをマスターする
  • 1.5.2 ファイルの@インポート
  • 1.5.3 CLAUDE.mdの活用術
  • 1.5.4 最初に知っておきたい便利コマンド
  • 1.5.5 コマンドの実行許可
  • 1.5.6 パーミッションの書き方
  • 1.5.7 Claude Codeの4つの動作モード
  • 1.5.8 ディレクトリの種類
  • 1.5.9 拡張思考モード(Extended Thinking Mode)
  • 1.5.10 Claude Codeのアップデート方法
  • 1.5.11 まとめ

第2章 5分でアプリケーションを作る

2.1 5分でアプリケーションを作る

  • 2.1.1 ファーストプロンプト
  • 2.1.2 ローカルサーバーを起動する

2.2 小さなアプリケーションをデプロイする

  • 2.2.1 クライアントサイドアプリケーションをデプロイする
  • 2.2.2. GitHub Pagesにデプロイする
  • 2.2.3 Vercelにデプロイする

2.3 UIのデバッグをさせる

  • 2.3.1 Next.jsでTODOリストを作ってみる
  • 2.3.2 表示エラーを修正する 2.3.3 まとめ

2.4 テストコードを書いてもらう

  • 2.4.1 テストコードの間違いの例
  • 2.4.2 CLAUDE.mdにテストの注意点を記載する
  • 2.4.3 まとめ
  • Column コンテキストとは
  • Column 会話をClaudeはどこまで覚えている?

第3章 MCPを活用したAIチャットボット開発 30分でAIチャットボットを作る

3.1 MCPサーバーに開発をサポートしてもらう

  • 3.1.1 MCPサーバーとは
  • 3.1.2 おすすめMCPサーバー

3.2 AIチャットボットを作る:要件定義編.md

  • 3.2.1 要件定義のやり方
  • 3.2.2 開発環境のセットアップと要件定義

3.3 タスクを管理しながら実装を行う

  • 3.3.1 実行計画の重要性
  • 3.3.2 指示のプロンプトのコツ
  • 3.3.3 一気に指示すべきかどうか

3.4 エラーの修正と管理・デプロイ

  • 3.4.1 Google Cloudの無料枠について
  • 3.4.2 開発サーバー起動を行う
  • 3.4.3 Claude Codeにエラーを伝える
  • 3.4.4 日本語で文字変換時に投稿されてしまう問題を修正する
  • 3.4.5 開発に便利なコマンドをまとめる
  • 3.4.6 Claude Codeに作業内容を振り返らせる
  • 3.4.7 インフラにアップする:Google Cloud編
  • 3.4.8 デプロイエラーが直るまで修正してもらう
  • 3.4.9 Atlas(MongoDB)を設定する
  • 3.4.10 Cloud Runの公開を設定する
  • 3.4.11 UI側で出ているエラーを見てもらいながら修正する
  • 3.4.12 GitHub Actionsのエラーも解決してもらう
  • 3.4.13 クラウド上のエラーログを直接確認してもらう
  • Column Haiku 4.5の登場

3.5 追加実装をGitHub Actionsで行う

  • 3.5.1 GitHub ActionsからClaudeに実装してもらう
  • 3.5.2 Claude Code GitHub Actionsの設定の全体像と注意点
  • 3.5.3 Claude Code GitHub Actionsの特徴と違い
  • 3.5.4 スマホのGitHubアプリから開発する
  • 3.5.5 まとめ
  • Column なるべくLLMが得意なライブラリを使う

第4章 並行処理とサブエージェントを使った開発手法 半日で社内システムを開発する

4.1 コンテキストウィンドウを理解する

  • Column `clear`コマンドをいつ実行するか

4.2 大きなシステムを開発するためのその他の知識

  • 4.2.1 バックグラウンドタスクについて
  • 4.2.2 任意のタイミングで時間のかかるBash実行をバックグラウンドに追いやる
  • 4.2.3 WorkSpaceを追加する
  • Column なるべくデータベースも無料で使うには

4.3 要件を考える

  • 4.3.1 日報システムの要件を定義する
  • 4.3.2 CLAUDE.mdに@インポートでファイルを追加する
  • 4.3.3 インポートにおける注意点
  • Column CLAUDE.mdの肥大化

4.4 ガードレールを用意する

  • 4.4.1 ガードレールの例
  • 4.4.2 定義からコードを生成する
  • 4.4.3 使用技術の追加
  • 4.4.4 Huskyでコードを守る
  • 4.4.5 CI/CDを設定する
  • 4.4.6 まとめ

4.5 タスクを分割して実装してもらう

  • 4.5.1 GitHubのIssueに上げてもらう
  • 4.5.2 Issueを実装してもらう
  • 4.5.3 Claude Codeにレビューしてもらう3つの方法
  • 4.5.4 まとめ
  • Column ワンショットアプローチと反復アプローチ

4.6 並行処理のコツとサブエージェント

  • 4.6.1 Git Worktreeによる並行処理
  • 4.6.2 Git Worktreeの基礎知識
  • 4.6.3 並行処理のコツ
  • 4.6.4 lint-stagedをサブディレクトリでも動かす
  • 4.6.5 ターミナルを複数出す
  • 4.6.6 Git Worktreeの後始末
  • 4.6.7 複数セッションのその他の注意点
  • 4.6.8 専門家としてのサブエージェントを使う
  • 4.6.9 どんな時にサブエージェントに活躍してもらうか
  • 4.6.10 サブエージェントにコードを書いてもらう
  • 4.6.11 まとめ
  • Column プロンプトエンジニアリング

4.7 カスタムスラッシュコマンドとHooks

  • 4.7.1 カスタムスラッシュコマンドを活用する
  • 4.7.2 Hooksを活用する
  • 4.7.3 高度な機能をプロンプトで使う
  • 4.7.4 並行処理を使って処理を進める
  • 4.7.5 Issueを一通り実装した後のデバッグ
  • 4.7.6 Agent Skillsを活用する
  • 4.7.7 まとめ
  • Column `output-style`スラッシュコマンド

第5章 セキュリティと応用的な活用

5.1 Claude Codeのセキュリティ設計を理解する

  • 5.1.1 実装されているセキュリティ対策
  • 5.1.2 Claude Codeによるセキュリティ分析機能
  • 5.1.3 セキュリティレビューのGitHub Actions統合
  • 5.1.4 ユーザーが知るべきデータプライバシー
  • 5.1.5 コンテナ実行
  • 5.1.6 サンドボックス化
  • 5.1.7 ユーザーの責任
  • Column エージェンティックワークフローとフローエンジニアリング
  • Column プラグイン

5.2 チーム開発での活用知識

  • 5.2.1 設定のプロジェクト共有
  • 5.2.2 AWS BedrockやGoogle CloudのVertexAIでの活用方法

5.3 Claude Codeの応用的な使い方

  • 5.3.1 デザインからコンポーネントを作るFigma MCPサーバー
  • 5.3.2 並行ターミナル処理に特化したライブラリ
  • 5.3.3 Claude Codeをヘッドレスモードで使用する
  • 5.3.4 仕様書駆動開発
  • 5.3.5 Claude Code on the Web

5.4 Claude Codeの今後と展望

Appendix スラッシュコマンド一覧

  • 索引

サポート

補足情報

Opus 4.5への対応につきまして

(2025年11月27日更新)

2025年11月25日にClaudeのモデル「Opus 4.1」が「Opus 4.5」へアップデートされたことが発表されました。つきましては,書籍内の「Opus 4.1」に関する記述を以下のように読み替えていただきますようよろしくお願い申しあげます。

P.8 Proプランの表内の「利用可能モデル」について

Claude Sonnet 4.5とHaiku 4.5(/modelコマンドで切り替え可能)

P.9 Max 5x,Max 20xプランの表内の「利用可能モデル」について

デフォルトでOpus 4.5,Claude Sonnet 4.5とHaiku 4.5(/modelコマンドで切り替え可能)

P.10 9行目と「プランごとの料金体系(2025年10月現在)」の表内について

Opus 4.5:入力100万トークンあたり$5,出力100万トークンあたり$25

書籍に関する連載のURL

(2025年11月25日更新)

本書籍に関連する連載を以下のURLで公開しています。書籍発売後の最新トピックなども紹介しているので,参考にしてください。

これからはじめるClaude-Code入門 記事一覧 記事一覧

本書で作成したアプリケーションのGitHubリポジトリとアプリの公開URL

(2025年11月25日更新)

アプリケーションのサンプルファイルのGitHubリポジトリとアプリの公開URLは予告なく終了することがあります。

2章「TODOアプリケーション」(2.1,2.2)
2章「TODOアプリケーションNext.js版」(2.3)
3章「AIチャットボット」
4章「営業日報社内システム」

正誤表

本書の以下の部分に誤りがありました。ここに訂正するとともに,ご迷惑をおかけしたことを深くお詫び申し上げます。

(2025年11月25日最終更新)

P.235 3行目

impliment-issue
implement-issue

P.239 settings.json

以下のsettings.jsonの8,9行目(「プロンプト」に関する設定)について,

{
"hooks": {
"(フックイベント名)": [
  {
  "matcher": "(フィルターするパラメーター)", ※ オプション
  "hooks": [
    {
      "type": "command", ※ command もしくは prompt
      command": "(命令)" ※ commandの時はbashコマンド,promptの時はプロンプト
}

正確には,
①プロンプトが書けるのはStopもしくはSubAgentStopイベントのみ
②プロンプトの時は`command`のところを`prompt`にする
となります。

P.260 3行目

などについてについて
などについて

商品一覧