さとまたwiki

AIエージェントとは何か?

「Claudeにチャットで聞く」のと「Claude Code」は何が違う?

結論:LLMは「答える」、エージェントは「実行する」

通常のLLM利用

質問に対してテキストで回答するだけ。
実際の作業は全て人間が行う必要がある。

AIエージェント

目標に向かって自分で考え、ツールを使い、
実際に作業を完了させる。

具体例:同じ「バグ修正」でも全く違う

「login.pyのバグを直して」と依頼した場合の違いを見てみましょう。

通常のClaude(チャット)

LLMを直接利用

login.pyのバグを直して

C

コードを見せてください

[ファイルを開いてコピペ]

C

23行目をこう修正してください:...

[手動でエディタを開いて修正]

...延々とやり取りが続く...

結果: 何度もコピペ、手動で修正、結局30分以上

Claude Code(エージェント)

自律的に実行

login.pyのバグを直して、テストも通して

Read login.py

23行目に例外処理の問題を発見

Edit login.py

修正を適用

Bash pytest test_login.py

1件失敗 - 追加修正が必要

Edit login.py

Bash pytest test_login.py

全テスト通過

C

完了しました。login.pyの23行目と45行目を修正しました。

結果: 1回の依頼で全て完了、2分で終了

なぜこの違いが生まれるのか?

核心: 通常のLLMは「1回の質問→1回の回答」で終わり。エージェントは「目標達成まで自分でループし続ける」。

能力通常のLLMAIエージェント
ファイルを読む不可(コピペしてもらう)自分で読める
ファイルを編集不可(指示を出すだけ)自分で編集できる
コマンド実行不可(人間が実行)自分で実行できる
結果を見て修正不可(報告してもらう)自分で確認して修正
完了まで継続1回の応答で終了目標達成までループ

エージェントはどう動いているのか?

エージェントの核心は「考える → 行動する → 結果を見る → また考える」のループです。

1

Think(考える)

「login.pyを直すには、まずファイルを読んで問題を特定する必要がある」
→ LLMが状況を分析し、次に何をすべきか決める

2

Act(行動する)

Read("login.py") を実行
→ 実際にファイルシステムにアクセスしてファイルを読む

3

Observe(結果を見る)

ファイルの内容を取得:「23行目にtry-exceptがない...」
→ 実行結果をコンテキストに追加

目標達成(テスト全通過)までこのループを繰り返す

エージェントの内部動作(疑似コード)

javascript
// AIエージェント(Claude Code)の内部動作イメージ
function agentLoop(userRequest) {
  let context = [];

  while (!taskCompleted) {
    // 1. 状況を分析して次のアクションを決定
    const thought = llm.think(context, userRequest);

    // 2. 実際にツールを実行
    let result;
    if (thought.action === "read_file") {
      result = readFile("login.py");  // 実際にファイルを読む
    } else if (thought.action === "edit_file") {
      result = editFile("login.py", changes);  // 実際にファイルを編集
    } else if (thought.action === "run_test") {
      result = runCommand("pytest test_login.py");  // 実際にテスト実行
    }

    // 3. 結果を観察して次のループへ
    context.push(result);

    // 4. 目標達成したら終了
    if (thought.isFinalAnswer) {
      return thought.answer;
    }
  }
}

エージェントを構成する4つの要素

🧠

LLM(頭脳)

Claude、GPT、Geminiなどの大規模言語モデル。エージェントの「考える」部分を担当。

Claude Code → Claude Sonnet/Opus を使用

🔧

Tools(ツール)

外部システムを操作する能力。ファイル操作、コマンド実行、Web検索など。

Claude Code → Read, Edit, Bash, Grep, Glob など

📋

Planning(計画)

複雑なタスクを小さなステップに分解し、順序を決める能力。

Claude Code → TodoWrite で進捗管理、Plan モードで設計

💾

Memory(記憶)

過去のやり取りや学習を保持。長いセッションでも文脈を維持。

Claude Code → 会話履歴、CLAUDE.md でプロジェクト知識を保持

いつエージェントを使うべきか?

通常のLLMで十分な場合

  • - 質問への回答がほしいだけ
  • - コードの説明やレビュー
  • - アイデアのブレスト
  • - 1回のやり取りで完結する作業

エージェントが威力を発揮する場合

  • + 複数ファイルにまたがる修正
  • + テスト実行→修正→再テストのサイクル
  • + リファクタリングや大規模変更
  • + 「動くまでやって」という曖昧な指示
  • + 情報収集→分析→実行の連続作業

なぜCLIベースのエージェントが多いのか?

Claude Code、OpenCode、Codex CLI、Aider、Continue...現在のAIコーディングエージェントの多くはCLI(コマンドラインインターフェース)として提供されています。これには明確な技術的理由があります。

核心:CLIはシステム全体を操作できる「万能リモコン」。ファイル操作、プロセス実行、ネットワーク通信など、あらゆるシステム操作がテキストコマンドで可能。

📁

ファイルシステム直接アクセス

GUIアプリ経由ではなく、ファイルシステムに直接アクセスできる。

cat, ls, mkdir, rm, grep, find...

任意のコマンド実行

シェルを通じて、OSにインストールされた全てのツールを実行可能。

git, npm, python, docker, curl...
📝

テキストベース = LLM最適

入力も出力もテキスト。LLMが最も得意とする形式でシステムと対話できる。

コマンド出力をそのまま解析・判断に利用
🔗

パイプラインで連携

コマンドを組み合わせて複雑な処理を実現。Unix哲学との相性が抜群。

grep "error" log.txt | wc -l

GUIベース vs CLIベースの比較

観点GUIベース(Cursor等)CLIベース(Claude Code等)
操作範囲エディタ内に限定システム全体
テスト実行別途ターミナルが必要直接実行・結果確認
Git操作GUIで限定的操作全コマンド利用可能
Docker/K8s対応していないことが多いネイティブ操作可能
自動化手動操作が前提スクリプト化容易
学習コスト低い(直感的)やや高い

Claude Code

Anthropic公式。最も洗練されたツール群。有料($20/月〜)

OpenCode

OSS代替。OpenRouter経由で任意モデル利用。無料

Aider / Continue

Git特化 / VSCode統合。用途特化型

複数エージェントの同時利用(並列開発)

海外のエンジニアの間では、Claude Code、Codex、OpenCode、Aiderなどを同時に動かす「並列エージェント開発」が広まっています。1人で10人分の開発速度を実現する「10xエンジニア」の新しい形です。

なぜ複数エージェントを使うのか?

得意分野が違う

Claude=推論、Codex=自動化、Gemini=長文脈

並列で高速化

別々のタスクを同時進行

リスク分散

1つがダメでも他がカバー

Claude Squad:複数エージェント管理ツール

🦑

Claude Squad

github.com/smtg-ai/claude-squad (5.6k+ stars)

Claude Code、Codex、Aider、OpenCode、Ampなど複数のAIエージェントを1つのターミナルから管理できるツール。

主な機能

  • • 複数エージェントを並列実行
  • • 各エージェントに独立したGit worktree
  • • auto-acceptモードで自動処理
  • • 変更のdiff確認→マージ

動作の仕組み

  • • tmuxで隔離されたセッション作成
  • • Git worktreeでブランチ分離
  • • 各エージェントが独立して作業
  • • 衝突なく並列開発が可能

Claude Squadのインストールと使用例

bash
# インストール(Homebrew)
brew install claude-squad

# または、インストールスクリプト
curl -fsSL https://raw.githubusercontent.com/smtg-ai/claude-squad/main/install.sh | bash

# 基本的な使い方(csコマンド)
cs                           # Claude Codeを起動
cs -p "aider"                # Aiderを起動
cs -p "codex"                # Codexを起動
cs -p "opencode"             # OpenCodeを起動
cs -y                        # auto-acceptモード(自動承認)

# 例:3つのエージェントを同時起動
cs                           # ターミナル1: Claude Codeでバックエンド
cs -p "codex"                # ターミナル2: Codexでフロントエンド
cs -p "aider"                # ターミナル3: Aiderでテスト追加

実践的なマルチエージェント構成例

構成エージェント役割分担
基本構成Claude Code + CodexClaude=複雑な推論・設計、Codex=単純作業・自動化
OSS志向OpenCode + AiderOpenCode=汎用開発、Aider=Git特化の変更管理
フルスタックClaude + Codex + GeminiClaude=ロジック、Codex=UI、Gemini=ドキュメント
レガシー刷新3エージェント並列Agent1=FE刷新、Agent2=DB層、Agent3=テスト追加

Git Worktree:並列開発の基盤技術

複数エージェントが同じリポジトリで作業するには、Git worktreeが必須です。各エージェントが独立したディレクトリで異なるブランチを操作できます。

Git Worktreeの基本操作

bash
# worktreeを作成(各エージェント用)
git worktree add ../project-agent1 -b feature/backend
git worktree add ../project-agent2 -b feature/frontend
git worktree add ../project-agent3 -b feature/tests

# 各ディレクトリで別々のエージェントを起動
cd ../project-agent1 && claude   # Agent 1: バックエンド担当
cd ../project-agent2 && codex    # Agent 2: フロントエンド担当
cd ../project-agent3 && aider    # Agent 3: テスト担当

# 作業完了後、メインブランチにマージ
git checkout main
git merge feature/backend
git merge feature/frontend
git merge feature/tests

# worktreeを削除
git worktree remove ../project-agent1

注意点:レビューがボトルネックになる

複数エージェントは高速にコードを生成しますが、人間によるレビューが追いつかないという課題があります。 まずは2〜3エージェントから始め、レビュー体制を整えてから拡大することを推奨します。

市場動向(2025-2026)

$50B+

2030年の市場規模予測

40%

2026年エンタープライズ採用率

60%

Claude利用のうちプログラミング

Gartnerの調査によると、AIエージェントへの問い合わせは2024年Q1から2025年Q2で1,445%増加。 特にソフトウェア開発、カスタマーサービス、営業・マーケティング分野での導入が進んでいます。