Skip to content
Daniel Artola
Go back

[JA] テクニカルガイド: Claude Code のコンセプト

Read in English 🇬🇧 Leer en Español 🇪🇸 Leia em Português 🇧🇷

目次

はじめに

Claude Code — プロンプト、スキル、サブエージェント、エージェント、およびエージェントチーム Anthropic公式ドキュメントに基づくテクニカルガイド

情報源:Claude Code Features · Agent Skills · Subagents · Agent Teams

Claude Codeにおける5つの異なる概念

これは複雑さの直線的な階層ではありません。これらはそれぞれ異なる目的を持つツールであり、組み合わせることができます。

Prompt / Skill / Subagent / Agent (session) / Agent Teams

プロンプト — エージェントへの指示

“プロンプトは単なる簡単な質問ではありません。ツールがあるかないかにかかわらず、また単純か複雑かにかかわらず、あなたがClaudeに与えるあらゆる指示です。”

プロンプトは、Claude Codeがあらゆるインタラクションで受け取る入力です。インタラクティブな会話を開始したり、ヘッドレスなタスクを実行したり(claude -p "...")、システムプロンプト、プロジェクトコンテキスト、アクティブなツールを備えた複雑なエージェントシステムの基盤として機能したりします。

公式ドキュメントによると: Agent SDKはデフォルトで最小限のシステムプロンプトを使用します。すべてのツールと動作を備えた完全なClaude Codeのシステムプロンプトを含めるには、systemPrompt: { type: "preset", preset: "claude_code" } を指定します。CLAUDE.md ファイルは追加のプロジェクトコンテキストとしてロードされます。

プロンプトに焦点を当てるべき場合:

例:

  • claude -p "src/auth.tsのauthenticate関数をリファクタリングして" — ヘッドレスなクイックタスク
  • すべてのツールにアクセスできるClaude Codeとのインタラクティブな会話
  • カスタムシステムプロンプトと構成されたツールを持つSDKエージェントへの入力
  • すべてのプロジェクトプロンプトに注入される永続的なコンテキストとして機能する CLAUDE.md
メリットデメリット
柔軟性 · 設定可能性 · すべての基盤 · スクリプト用のヘッドレスモードセッション間でステートレス · 複雑なタスクには優れた設計が必要

スキル — 専門的で再利用可能な機能

“スキルとは、タスクが関連する際にClaudeが自動的に参照する、またはあなたがスラッシュコマンドで呼び出す専門的なプレーブックのようなものです。”

以前のガイドからの訂正: スキルは CLAUDE.md 内には存在しません。これらは .claude/skills/skill-name/(プロジェクト)または ~/.claude/skills/skill-name/(ユーザー)にある、SKILL.md ファイルを含むディレクトリです。

公式ドキュメントによると、スキルは不必要にコンテキストを消費しないように段階的にロードされる3種類のコンテンツを含むディレクトリです:

  1. レベル1 — メタデータ(常にロードされる): YAMLフロントマター:namedescription。わずか約100トークン。Claudeはその存在といつ使用すべきかを知っています。
  2. レベル2 — 指示(アクティブ化されたとき): SKILL.md の本体:ワークフロー、ベストプラクティス。スキルがアクティブ化されたときにbash経由でロードされます。5kトークン未満。
  3. レベル3 — リソースとコード(オンデマンド): 実行可能なスクリプト、テンプレート、ドキュメント。Claudeは必要な場合にのみこれらを読み取ります。実用的なサイズ制限はありません。

スラッシュコマンドとの違い: 組み込みのスラッシュコマンド(/clear/compact)には固定のロジックがあります。スキルは以前は「コマンド」(.claude/commands/)と呼ばれていたファイルが .claude/skills/ に進化したもので、追加機能(フロントマターの制御、添付されたスクリプト、!`command` による動的なコンテキスト注入)を備えています。

いつ使用すべきか:

メリットデメリット
関連性によって自動ロードされる · プロジェクト間で再利用可能 · コードを含めることができるコード実行環境が必要 · サーフェス間でスキルが同期しない · 親エージェントのスキルを継承しない

サブエージェント — 独自のコンテキストを持つ専門のミニアシスタント

“サブエージェントは、メインエージェントによって特定のタスクのために召喚される専門家です。独自のコンテキストで独立して機能し、結果のみを返します。”

サブエージェントは、独自のシステムプロンプト、構成されたツール、権限、およびコンテキストウィンドウを持つClaudeインスタンスです。メインエージェントは Agent ツール(以前の Task)を介してそれらを呼び出します。.claude/agents/ または ~/.claude/agents/ にYAMLフロントマターを持つMarkdownファイルとして定義されます。

公式ドキュメントによる重要なポイント: サブエージェントは会話のコンテキストを継承しません — 親エージェントが呼び出しのプロンプトに明示的に含めたもののみを受け取ります。サブエージェントが他のサブエージェントを呼び出すことはできません。 ネストされた委任が必要な場合は、スキルを使用するか、メインの会話からサブエージェントをチェーンしてください。

メインの会話ではなくサブエージェントを使用すべき場合:

レイテンシー: サブエージェントは空のコンテキストで開始され、必要なコンテキストを収集するのに時間がかかる場合があります。すでに会話内にあるものに関する素早い質問には、代わりに /btw を使用してください。

メリットデメリット
コンテキストの分離 · 制限可能なツール · オプションの永続メモリコンテキストが継承されない · 他のサブエージェントを呼び出せない · 親エージェントにのみ報告する · 起動レイテンシーが追加される

エージェント(セッション) — メインの Claude Code セッション

“Claude Codeセッションは完全なエージェントです。推論し、行動し、結果を観察し、目標が完了するまで繰り返します。”

Claude Codeをインタラクティブに、または claude --agent name で起動すると、ツールへのフルアクセス、自律的な推論ループ、サブエージェントに委任する機能を備えたエージェントが開始されます。ここでは、複雑な外部の自律エージェント(openclawなど)ではなく、.claude/agents/ で構成されメインセッションとして機能するClaudeエージェントを明示的に指します。

公式ドキュメントによると: claude --agent subagent-name を使用すると、メインセッションは /agents からそのファイルのシステムプロンプト、ツール、およびモデルを採用します。CLAUDE.md を使用すると、プロジェクトコンテキストが注入されます。エージェンティックループにはネイティブツール(Bash、Read、Write、Edit、WebSearch)が含まれており、サブエージェントに委任できます。
追加のメモ: ランタイムセッションとSDKの両方が**Hooks(フック)**を完全にサポートしており、.claude/settings.json で構成して主要なアクションを傍受できます(破壊的なBashコマンドを条件付きで追跡またはブロックするなど)。

これが適切なアプローチである場合:

メリットデメリット
自律的 · 完全な推論ループ · すべてのツールへのアクセス · 委任可能単一のコンテキスト(真の並行性なし) · 中〜高コスト · 重要なタスクではレビューが必要

エージェントチーム — 直接コミュニケーションを伴う調整されたセッション

“Claude Codeチーム:チームリーダーが調整し、チームメンバーが並行して作業し、互いに直接話すことができ、それぞれが独自のコンテキストを持ちます。”

公式ドキュメントによると: エージェントチームは実験的であり、デフォルトでは無効になっています。設定または環境変数で CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 が必要です。Claude Code v2.1.32以降が必要です。

サブエージェントとの決定的な違い:チームメンバーは互いに(リーダーを介さずに)直接通信する完全に独立したセッションです。彼らはタスクリストとメールボックスシステムを共有します。ユーザーも任意のチームメンバーと直接話すことができます。

最適な使用例(公式ドキュメントによる):

重要 — エージェントチームを使用すべきではない場合: 順次的なタスク、同じファイルへの編集、高度に依存した作業。これらの場合、サブエージェントまたは単一セッションの方が効率的です。コストはチームメンバーごとに比例して増加します。

メリットデメリット
直接の自動通信 · 真の並行性 · 独立したコンテキストと共有タスクリスト実験的 · 高コスト(直線的に増加) · 処理中のチームメンバーの再開不可 · セッションごとに1チームのみ

比較表

次元プロンプトスキルサブエージェントエージェントマルチエージェントチーム
自律性なしなし部分的高い非常に高い
ツールアクセスいいえいいえはいはいはい(複数)
ターン間のメモリいいえいいえいいえ限定的限定的
並行性いいえいいえはい(一部として)いいえはい(ネイティブ)
反復/ループいいえいいえ限定的はいはい
セットアップの複雑さ最小低い中程度中〜高高い
タスクあたりのコスト非常に低い低い中程度中〜高高い
再現性変動あり高い変動あり変動あり変動あり
監視の必要性低い低い中程度中〜高高い
理想的な使用例単一のクエリ繰り返しタスクパイプラインのサブタスク複数ステップの目標複雑なプロジェクト

デシジョンツリー

スキルとサブエージェントのどちらを使うべきか? 公式ドキュメントにはこうあります:メインコンテキストでの再利用可能なプロンプト/ワークフローにはスキルを使用し、コンテキストの分離と制限されたツールにはサブエージェントを使用します。

  1. Claudeがプロジェクトを越えて自動的にロードすべき再利用可能な知識ですか?
    • はい -> ~/.claude/skills/ 内のスキル
  2. このチームが共有すべき特定のワークフローまたは規則ですか?
    • はい -> .claude/skills/ 内のスキル
  3. タスクがメインコンテキストに入れたくない冗長な出力を生成するか、制限されたツールが必要ですか?
    • はい -> サブエージェント
  4. 反復、複数のステップ、システムへのフルアクセスが必要ですか?
    • はい -> エージェント(セッション)
  5. ワーカーが上司に報告するだけでなく、直接通信する必要がありますか?
    • はい -> エージェントチーム(並行性が真の価値を追加する場合)

ゴールデンルール

推奨コース (Anthropic Academy)

これらの高度なエージェンティックツールを完全に習得するために、Anthropicの公式アカデミーでは、anthropic.skilljar.com にて、これらの概念にマッピングされた以下の専門的なリソースを提供しています。


Share this post on:

Previous Post
[ES] Guía Técnica Comparativa: Conceptos de Claude Code
Next Post
[PT] Guia Técnico: Conceitos do Claude Code