homula

Claude Code 解説書 — Thread 1 of 8

Claude Codeとは何か

概念・誕生の背景・全体像

難易度 ★☆☆(初級)想定読了 20–30分ソース:公式ドキュメント+Deep Research

1.1AIコーディングツール3世代の進化

AIがソフトウェア開発に関わるようになった歴史は、大きく3つの世代に分けられる。 この区分はAnthropic自身が公式ブログで明確に定義しているもので、Claude Codeがどの位置にいるのかを理解する上での前提知識となる。

第1世代:オートコンプリート(2021年〜)は、GitHub Copilotに代表される「次の行予測」ツールだ。 開発者がコードを書いている最中に、AIが続きを予測して提案する。 たとえば、function calculateTax(と入力すると、AIが引数と処理の候補を表示する。 便利だが、AIの役割はあくまで「書きかけの文を補完する」ことに限られる。

第2世代:対話型(2022年〜)は、ChatGPTやClaude.aiのようなチャットインターフェースだ。 開発者はコードについて「相談」できるようになった。エラーメッセージを貼り付けて原因を聞いたり、設計のアドバイスをもらったりする。 ただし、AIが返すのはテキスト(コードの提案)だけで、実際にファイルを編集したりテストを実行したりはできない。 開発者は回答をコピーして自分のエディタに貼り付ける必要があった。

第3世代:エージェント型(2024年〜)は、タスクを渡すとAIが自律的に完了するツールだ。 Claude Codeはこの世代の代表例であり、ファイルを直接編集し、コマンドを実行し、テスト結果を確認し、問題があれば自分で修正する。 開発者は「何をしたいか」を伝えるだけで、「どうやるか」はAIが判断する。

第1世代第2世代第3世代オートコンプリート対話型エージェント型2021年〜2022年〜2024年〜GitHub CopilotChatGPT / Claude.aiClaude CodeAIの役割補完のみAIの役割提案+相談AIの役割判断+実行+検証人間の役割コードを書く+判断+実行人間の役割コピペ+実行+検証人間の役割意図を伝える+承認「何をしたいか」だけ伝える

図1.1 — AIコーディングツール3世代の進化:AIの役割が拡大し、人間は「何を」に集中するようになる

なぜこの区分が重要か:Claude Codeを第1・第2世代のツールと同じ感覚で使うと、その価値を大幅に過小評価してしまう。 「コードの続きを書いてもらう」のではなく「タスクを丸ごと任せる」ことが、第3世代の正しい使い方だ。

1.2Claude Codeの正体 — agentic harness

Claude Code公式ドキュメントは、自身を次のように定義している:

“Claude Code serves as the agentic harness around Claude: it provides the tools, context management, and execution environment that turn a language model into a capable coding agent.”

— Claude Code公式ドキュメント「How Claude Code works」

ここで登場するエージェンティックハーネス(agentic harness)とは、LLM(大規模言語モデル=大量のテキストデータで訓練されたAI)に「手足」を与え、自律的に行動できるようにする外殻のことだ

たとえば、Claude(Anthropicの言語モデル)は単体ではテキストで応答することしかできない。 「このバグを直して」と頼んでも、修正案をテキストで返すだけだ。 しかしClaude Codeというハーネスを通じると、Claudeはファイルを読み、コードを編集し、テストを実行し、結果を確認して再修正するところまで自律的に行える。

🧠Claude(LLM)テキストで応答する=「脳」のみ+🔧Claude Codeツール+実行環境+コンテキスト管理 =「手足」=🤖自律エージェント判断し、行動し、検証する

図1.2 — LLM単体は「脳」だけ。Claude Code(ハーネス)が「手足」を与え、自律エージェントになる

公式ドキュメントの言い方を借りれば、「ツールなしのClaudeはテキストで応答するだけだが、ツールを持つClaudeは行動できる」。 この「行動する能力」こそが、第2世代から第3世代への本質的な飛躍だ。

“This might sound weird, but the way we build this is we want people to feel the model as raw as possible.”

— Boris Cherny(Claude Code創設者), Pragmatic Engineer

この発言は、Claude Codeの設計思想を端的に表している。 多くのAIコーディングツールは、UIやワークフローでモデルの能力を「包装」する。 Claude Codeは逆に、可能な限り薄いラッパー(wrapper=包む層)でモデルの能力をそのまま開発者に届けることを目指している。

1.3なぜターミナルネイティブなのか

Claude Codeを初めて知った多くの人が疑問に思うのは、「なぜグラフィカルなIDEではなくターミナル(コンピュータにテキストコマンドで指示を出す画面)で動くのか」だ。この設計選択には、実用的な起源と構造的な理由がある。

実用的な起源:UIを作りたくなかった

“The first version emerged as a humble, terminal-based chat app—a practical choice for a solo developer who didn't want to build a full UI.”

— Boris Cherny, How We Built Claude Code 講演

初期のプロトタイプは、1人の開発者がフルUIを構築する工数を避けるために、ターミナルという最もシンプルなインターフェースを選んだに過ぎない。 しかし、この制約がかえって強みに転化した。

構造的な理由:最短経路と組み合わせ可能性

ターミナルは、ファイルシステム・bash(シェルコマンド)・Git・パッケージマネージャなど、開発に必要なあらゆるツールへの最短経路だ。 さらに、ターミナルはUnix哲学(小さなプログラムを組み合わせて大きな仕事をする設計思想)に基づいており、パイプライン(あるコマンドの出力を別のコマンドに渡すこと)で他のCLIツールと自由に連結できる。

具体例:パイプラインでClaude Codeを使う

直近200行のログをClaudeに渡して異常を分析させ、問題があればSlackに通知する:

tail -200 app.log | claude -p "Slack me if you see any anomalies"

このようにCLIツール同士を | でつなげるのがUnix哲学の真骨頂であり、IDE統合型ツールでは難しい使い方だ。

IDEとの関係:ターミナルが本家

よくある誤解は「Claude CodeはIDEで使うもの」というものだが、事実は逆だ。 ターミナルCLIが本体であり、VS CodeやJetBrainsのIDE拡張は後から追加されたアクセシビリティレイヤー(より多くの人が使えるようにするための追加手段)だ。 Anthropicの製品アップデートの時系列を見ると、CLI → IDE統合 → デスクトップアプリ → Webという一貫した拡張の流れがある。

“Most people use LLMs as StackOverflow replacements: they ask for directions, but they are still driving. I flipped that around.”

— Erik Schluntz(Claude Code開発者), erikschluntz.com, 2024年7月

Schluntzのこの比喩は示唆的だ。第2世代では「AIに道を聞いて、自分で運転する」。 第3世代(Claude Code)では「AIが運転し、人間は行き先を伝える」。 ターミナルという「運転席」にAIを座らせることで、このパラダイムシフトが可能になった。

1.4誕生の物語 — 偶然のプロトタイプから10億ドル製品へ

“It was very much an accident... There was no master plan.”

— Boris Cherny, Latent Space Podcast

Claude Codeの誕生は、トップダウンの戦略から始まったのではなく、1人の開発者のサイドプロジェクトとして始まり、社内の自然な需要に引っ張られて製品になった。 以下にそのタイムラインを示す。

2024年9月プロトタイプBoris ChernyがサイドPJで作成2024年 Q4社内爆発的採用ドッグフーディングで全社に浸透2025年2月リサーチプレビューClaude 3.7 Sonnetと同時に公開2025年5月一般提供(GA)開始Code with Claudeカンファレンス2025年11月ARR 10億ドル突破年間経常収益が10桁に到達偶然の発見フェーズ製品化フェーズ急成長フェーズ

図1.4 — Claude Codeのタイムライン:サイドプロジェクトからARR 10億ドルまでの約14ヶ月

注目すべきは、このプロセスに「マスタープラン」がなかったことだ。 Boris Chernyが2024年9月にAnthropicに入社後、Claude 3.6モデルをターミナルで使うプロトタイプを作った。 最初はAppleScriptで音楽再生を制御する簡素なデモだったが、ファイルシステムとBashへのアクセスを追加した瞬間に「本当に面白いもの」になった。

社内でドッグフーディング(自社製品を自社の日常業務で実際に使うこと)を始めると、採用は爆発的に広がった。 CEO Dario Amodeiが「(使用を)強制しているのか?」と聞くほどだった。 Anthropic自身のコードの約90%がClaude Codeで生成されるまでになり、ツールの実用性を自ら証明した。

この「偶然の発見 → 社内実証 → 製品化」という流れは、Claude Codeの設計思想を理解する上で重要だ。 トップダウンの要件定義ではなく、実際に使い続ける中で磨かれたツールだからこそ、開発者の実務に即した設計になっている。

1.53つの核心コンセプト

Claude Codeの設計を貫く原則は、以下の3つに集約される。

① エージェンティック自律的に判断・行動・検証を繰り返すコンテキスト収集 →アクション → 検証→ 詳細は第2章② プロジェクト全体を見る1ファイルではなくコードベース全体を理解するファイル横断でコンテキストを収集grep/globで検索③ Unix哲学Composableパイプ可能、他ツールと自由に組み合わせstdin/stdout でデータを受け渡しCI/CDにも統合可能

図1.5 — Claude Codeを支える3つの核心コンセプト

① エージェンティックは、Claude Codeの最も本質的な特性だ。エージェンティックループ(AIが「コンテキスト収集→アクション実行→結果検証」を自動的に繰り返すサイクル)により、 Claude Codeは1つの指示を受けると、必要な情報を集め、行動し、結果を確認し、問題があれば自分で修正する。 この仕組みの詳細は第2章で解説する。

② プロジェクト全体を見るとは、1つのファイルだけでなく、コードベース全体を横断的に理解する能力だ。 公式ドキュメントには「インラインのコードアシスタントが今開いているファイルしか見えないのに対し、Claude Codeはプロジェクト全体にわたって作業できる」と明記されている。

③ Unix哲学は、Claude Codeが他のツールと「組み合わせ可能(composable)」であることを意味する。 標準入出力でデータを受け渡しでき、シェルスクリプトやCI/CDパイプラインに自然に組み込める。

これら3つの原則の背後にある設計思想を、Boris Chernyは次の3つの言葉で語っている:

設計原則意味Boris Chernyの言葉
ローレベル・非独断的UIを最小限にし、モデルの能力を直接伝える“We want people to feel the model as raw as possible”
モデルに賭けろ今日のモデルではなく6ヶ月後のモデルのために構築する“Never bet against the model”
シンプルが勝つ高度な検索技術よりもgrep/globが勝利“Plain glob and grep, driven by the model, beat everything”

特に「モデルに賭けろ」は重要だ。初期のClaude Codeは完成度が低く、Boris Cherny自身も「コードの10%程度にしか使えなかった」と振り返っている。 しかし、上司から「今日のモデルではなく6ヶ月後のモデルのために作れ」と背中を押され、モデルの進化を信じて構築を続けた。 Sonnet 4/Opus 4のリリースで「急に動くようになった」という経験が、この原則を裏付けている。

1.6何ができるのか — 機能カテゴリの俯瞰

Claude Codeの公式ドキュメント「What you can do」セクションに基づき、主要な機能カテゴリを俯瞰する。

Claude Code自然言語でタスクを指示日常の開発作業バグ修正・機能開発テスト作成・リファクタリングコードレビュー・ドキュメント更新Git操作・PRコミット・ブランチ作成PR作成・マージコンフリクト解決外部サービス連携MCP経由でSlack、DB、GitHub、Jira等と接続Google Drive連携自動化・チーム展開サブエージェント委任Agent Teams並列処理CI/CD統合・スケジュール実行CLI スクリプティングパイプ入力・ワンショット実行・SDK連携Unix哲学に基づくcomposableな使い方Anthropic社内では財務チームも活用

図1.6 — Claude Codeの機能カテゴリマップ:開発作業からチーム自動化まで

具体例

バグ修正: claude "fix the login bug where users see a blank screen after entering wrong credentials" — Claude Codeが関連コードを探し、原因を特定し、修正し、テストを実行する。


テスト作成: claude "write tests for the auth module, run them, and fix any failures" — テストを書くだけでなく、実行して失敗したら自分で修正する。


コミット: claude "commit my changes with a descriptive message" — 差分を分析し、適切なコミットメッセージを自動生成する。

重要なのは、これらの機能はすべて自然言語の指示で起動できることだ。 特別なコマンド体系を覚える必要はなく、「同僚に話すように」指示すればよい。

1.74つの利用環境

Claude Codeは複数の環境から利用できるが、その核(エージェンティックループ、ツール、能力)はどこで使っても同一だ。変わるのは「どこでコードが実行されるか」と「どう操作するか」だけだ。

環境特徴位置づけ
ターミナルCLIフル機能のコマンドラインインターフェース。ファイル編集、コマンド実行、プロジェクト管理すべて可能本家(最も機能が豊富)
IDE拡張VS Code / JetBrains IDEにインラインdiff表示、@メンション、プランレビュー等を統合アクセシビリティレイヤー
デスクトップアプリIDE・ターミナル外のスタンドアロンアプリ。複数セッション並行、スケジュール実行、クラウドセッション対応独立した作業環境
Web / モバイルclaude.ai/code からブラウザで実行。ローカルセットアップ不要。長時間タスクの非同期実行に適するリモート作業向け

加えて、コードが実行される場所にも3つの選択肢がある:ローカル(自分のマシン、デフォルト)、クラウド(Anthropic管理のVM)、リモートコントロール(ローカル実行+ブラウザからの操作)。

初学者へのアドバイス:まずはターミナルCLIから始めることを推奨する。curl -fsSL https://claude.ai/install.sh | bash でインストールし、 プロジェクトディレクトリで claude と入力するだけで始められる。 IDE拡張は、CLIでの基本操作に慣れてから追加すればよい。

1.8この解説書の全体像

本解説書は全8章で構成されており、「理解 → 実践 → 応用」の3フェーズで段階的にClaude Codeを習得できるよう設計されている。 本章(第1章)は、手を動かす前の概念的な土台を築く位置づけだ。

理解フェーズ(Why & What)第1章概念と全体像← 現在地第2章仕組みとアーキテクチャ実践フェーズ(How)第3章導入と日常ワークフロー第4章拡張レイヤー+CLAUDE.md応用フェーズ(Extend & Scale)※並行可能第5章Skills第6章MCP第7章並列処理第8章自動化・配布

図1.8 — 解説書全体のロードマップ:理解 → 実践 → 応用の3フェーズ

次の章(第2章)では、本章で概要だけ触れた「エージェンティックループ」の内部構造を詳しく解説する。 Claude Codeが「なぜ自律的に動けるのか」のメカニズム — 3フェーズの循環、5カテゴリの組み込みツール、セッション管理、安全機構(チェックポイントとパーミッション)を、具体的な動作例とともに理解する。

第3〜4章では実際にClaude Codeをインストールし、日常の開発タスクで使いこなす方法、そしてCLAUDE.mdによるカスタマイズを学ぶ。

第5〜8章は応用フェーズで、Skills、MCP、サブエージェント、Hooks等の拡張機能を扱う。 これらは独立して並行に読み進められる設計になっている。

FAQ

よくある質問

Claude Codeは、Claude Pro/Max/Team/Enterpriseプランに含まれています。APIを通じた利用では使用量に応じた従量課金です。

CursorはVS Codeベースの統合開発環境にAIを組み込んだツールです。Claude Codeはターミナルネイティブのエージェントで、Unix哲学に基づくcomposability(パイプライン連携・CI/CD統合)が最大の差別化ポイントです。

はい。Anthropic社内では財務チームも活用しています。IDE拡張、デスクトップアプリ、WebインターフェースからもGUIで利用可能です。

LLMに「手足」を与え自律的に行動できるようにする外殻のことです。Claude Code(ハーネス)がファイル操作・コマンド実行・Web検索などのツールと実行環境を提供し、LLMが自律的にタスクを完了できるようにします。

特定の言語に限定されません。Python、TypeScript、Go、Rust、Java等の主要言語はすべて扱えます。複数言語が混在するプロジェクトにも対応可能です。

Claude Codeの導入を検討していますか?

homulaは、Claude Codeを含むAIエージェントツールの導入を包括的に支援しています。 5日間のブートキャンプで動くプロトタイプとROI試算を作成します。

Claude Code 解説書 — 第1章/全8章
情報源:Claude Code公式ドキュメント(code.claude.com)+ Anthropicリーダーシップ・開発者インタビュー(Deep Research)
次回 → 第2章:仕組みを理解する — エージェンティックループとアーキテクチャ