この記事ではAIエージェントに特化して解説します。AIエージェント全般は AIエージェントフレームワーク比較2026年版 をご覧ください。
AgentDockとは:「設定可能な決定論性」を持つAIエージェントフレームワーク
AgentDockは「Build Anything with AI Agents(AIエージェントで何でも作れる)」をスローガンに掲げるオープンソースのAIエージェントフレームワークです。GitHubで1,600以上のスターを集め、TypeScriptで実装されたプロジェクトです。
AgentDockのコアコンセプトは 「設定可能な決定論性(Configurable Determinism)」 です。AIは本質的に非決定論的な挙動(LLMは毎回異なる応答を生成しうる)をしますが、ビジネス用途では予測可能な動作も必要です。AgentDockはこの二者を「ノードベースのアーキテクチャ」と「ツールとして実装されたサブワークフロー」によって両立させます。
AIエージェントフレームワーク比較2026で触れているように、2025〜2026年にかけてAIエージェントフレームワークの選択肢が急増しています。AgentDockが差別化を図っているのは、非技術者がビジュアルUIで使えながら、開発者が深い制御も行えるという二層のアプローチです。
AgentDockは2つの主要コンポーネントで構成されます。
- AgentDock Core:バックエンドファーストのオープンソースフレームワーク。フレームワーク非依存・プロバイダー非依存の設計で、自前のインフラに組み込める
- Open Source Client:Next.jsで構築されたリファレンス実装。hub.agentdock.ai でデモが公開されている
技術アーキテクチャ:ノードシステムの詳細
AgentDockのすべての機能はノード(Node)として実装されています。このノードベースアーキテクチャが、拡張性と設定可能な決定論性の基盤です。
User Query"] --> B["AgentNode
LLM推論
非決定論的"] B -->|"ツール選択判断"| C{"Tool Selection
動的判断"} C -->|"Deep Research"| D["Deterministic
Sub-Workflow A
Step1→2→3...→N"] C -->|"Data Analysis"| E["Deterministic
Sub-Workflow B
Step1→2→3...→M"] C -->|"Direct Response"| F["直接応答生成
LLM出力"] D --> G["Final Response
最終出力"] E --> G F --> G style B fill:#ffdfba,stroke:#333 style C fill:#ffdfba,stroke:#333 style D fill:#c9e4ca,stroke:#333 style E fill:#c9e4ca,stroke:#333 style F fill:#ffdfba,stroke:#333
3つのノードタイプ
- BaseNode:すべてのノードの基底クラス。コアインターフェースとポート・メッセージバスへのアクセスを提供
- AgentNode:LLMとのインタラクション・ツール使用・エージェントロジックを管理する特殊ノード
- ツール・カスタムノード:BaseNodeを継承して実装するエージェントの能力。search、think、reflect、compare、critique、brainstorm、debateなど
セッション管理と状態追跡
AgentDockはセッション管理を組み込みで提供しています。各会話セッションは独立した状態を保持し、エージェントの実行状態をリアルタイムで追跡できます。
ストレージ抽象化レイヤー
ストレージは抽象化されており、プラガブルなプロバイダーシステムを採用しています。
| ストレージタイプ | 対応プロバイダー | 用途 |
|---|---|---|
| Key-Value | Memory、Redis、Vercel KV | セッション状態・キャッシュ |
| Vector | 開発中 | 意味検索・RAG |
| Secure Storage | クライアントサイド暗号化 | APIキー・機密情報 |
オーケストレーションフレームワーク
コンテキストに基づいてエージェントの動作とツールの利用可能性を制御できるオーケストレーション機能が組み込まれています。ユーザーの意図や会話の状態によって、どのツールを有効にするかを動的に変更できます。
インストールとセットアップ
ローカル開発環境の構築
AgentDockはpnpmを使用します。Node.js 20.11.0以上、pnpm 9.15.0以上が必要です。
# リポジトリのクローン
git clone https://github.com/AgentDock/AgentDock.git
cd AgentDock
# pnpmのセットアップ(corepackを使用)
corepack enable
corepack prepare pnpm@latest --activate
# 依存パッケージのインストール
pnpm install
クリーンな再インストールが必要な場合:
# node_modules・lockファイルを削除して再インストール
pnpm run clean-install
環境設定
# .env.localを作成(.env.exampleをコピー)
cp .env.example .env.local
.env.local に使用するLLMプロバイダーのAPIキーを設定します:
# Anthropic Claude を使用する場合
ANTHROPIC_API_KEY=sk-ant-xxxxxxxxxxxxxxxxx
# OpenAI を使用する場合
OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxxx
# 他のプロバイダーも.env.exampleを参照して設定
開発サーバーの起動
pnpm dev
# http://localhost:3000 でアクセス可能
Vercelへのワンクリックデプロイ
Open Source ClientはVercelへの直接デプロイに対応しています。GitHubリポジトリのREADMEにある「Deploy with Vercel」ボタンをクリックするだけで、フォークとデプロイが自動的に完了します。
クラウド版のAgentDock Proでは、ビジュアルワークフロービルダー・高度なオーケストレーション・エンタープライズグレードのインフラが利用できる予定です。agentdock.aiで早期アクセスの登録が可能です。
実践的なユースケース
ユースケース1:Dr. Gregory House医療診断エージェント
READMEで紹介されている実装例のひとつが、医療診断を行う「Dr. Gregory House」エージェントです。search・deep_research・pubmed ツールをマルチステージのワークフローで組み合わせて、複雑な医療ケースを解析します。
エージェント設定(agents/dr-house/config.yaml の概念例):
name: dr-house
description: Diagnostic reasoning agent
tools:
- search
- deep_research
- pubmed
orchestration:
strategy: sequential_investigation
max_iterations: 5
ユースケース2:Cognitive Reasonerによる複雑問題の解析
7つの認知ツール(search・think・reflect・compare・critique・brainstorm・debate)を組み合わせたマルチステージの推論エンジンです。
// AgentDock Coreでエージェントを設定する例
import { AgentNode, createRegistry } from 'agentdock-core';
const registry = createRegistry();
registry.register('cognitive-reasoner', {
tools: ['think', 'reflect', 'compare', 'critique', 'brainstorm', 'debate'],
orchestration: {
sequentialThinking: true,
maxDepth: 3,
},
});
ユースケース3:Calorie Vision食事解析エージェント
コンピュータービジョンと構造化データ抽出を組み合わせた栄養分析システムです。食事の画像から、マクロ・マイクロ栄養素の詳細な内訳を自動生成します。LLMの推論とVision APIを組み合わせた典型的なAgentDockの活用例です。
ユースケース4:History Mentor教育エージェント
ベクトル化された歴史知識・search 能力・Mermaid図の動的生成を組み合わせた教育エージェントです。歴史的な関係性やタイムラインを、その場でビジュアル化します。
AgentDockの
agents/ ディレクトリには複数のエージェントテンプレートがあります。これらを出発点にカスタムエージェントを作成できます。詳細は公式ドキュメントを参照してください。評価フレームワーク
AgentDockにはエージェントの品質を体系的に測定・改善するための評価フレームワークが組み込まれています。多様な評価器(Evaluator)を使って、エージェントの応答精度・ツール使用の適切性・ワークフローの効率性などを測定できます。
CI/CDパイプラインに組み込む例:
# エージェントの評価を実行
pnpm run evaluate --agent cognitive-reasoner --dataset test-cases.json
# 評価レポートの生成
pnpm run evaluate:report
競合・代替ツールとの比較
AgentDockとよく比較される主要なAIエージェントフレームワークとの違いを整理します。
| 項目 | AgentDock | LangChain | AutoGPT | CrewAI | Make.com |
|---|---|---|---|---|---|
| プライマリ言語 | TypeScript | Python | Python | Python | ノーコード |
| ノードベースアーキテクチャ | ✅ ネイティブ | ❌ | ❌ | ❌ | ✅ |
| 設定可能な決定論性 | ✅ コアコンセプト | △ 要追加実装 | ❌ | △ | △ |
| 複数エージェント統合 | ✅ | ✅ LCEL | ✅ | ✅ ネイティブ | △ |
| フロントエンド参照実装 | ✅ Next.js付属 | ❌ | △ | ❌ | ✅ |
| ストレージ抽象化 | ✅ 複数プロバイダー | ✅ | △ | △ | △ |
| 評価フレームワーク | ✅ 組み込み | △ LangSmith別途 | ❌ | △ | ❌ |
| プロバイダー非依存 | ✅ | ✅ | △ | ✅ | △ |
| ライセンス | MIT | MIT | MIT | MIT | 商用SaaS |
AgentDockの強みはTypeScriptネイティブであること、フロントエンド実装(Next.js)が最初から含まれていること、そして設定可能な決定論性というコンセプトが設計レベルから組み込まれていることです。Pythonエコシステムで使い慣れたLangChainやCrewAIとは異なり、フルスタックJavaScript/TypeScript環境でAIエージェントを構築したい場合に特に適しています。
2026年4月時点でAgentDockはBetaステータスです。本番環境での採用前には、必要な機能が安定版として提供されているかをGitHubのリリースノートで確認してください。ストレージのVector/追加バックエンドは開発中です。
よくある質問・つまずきポイント
Q: pnpm ではなく npm や yarn を使えますか?
公式にはpnpmが必須として指定されています。pnpm run clean-install スクリプトがpnpm前提で書かれているため、他のパッケージマネージャーへの変更は推奨されません。
Q: LLMプロバイダーのAPIキーは何が使えますか?
Anthropic・OpenAIが主要対応プロバイダーです。.env.example ファイルに設定できるすべてのプロバイダーが記載されています。少なくとも1つのLLMプロバイダーのAPIキーが必須です。
Q: AgentDock CoreだけをNPMで使うことはできますか?
agentdock-core/ ディレクトリが独立したフレームワークとして実装されているため、自前のNext.jsアプリや他のNode.jsアプリケーションにも組み込めます。
Q: エージェントの会話履歴はどこに保存されますか? セッション管理機能により、デフォルトではメモリ(インメモリKV)に保存されます。Redisや Vercel KVに切り替えることで永続化できます。
Q: Windows環境で動作しますか? Node.js 20.11.0以上とpnpmが動作するWindows環境であれば基本的に動作します。WSL2での動作も確認されています。
エージェントテンプレートの詳細解説
AgentDockの agents/ ディレクトリには、すぐに動作確認できるエージェントテンプレートが収録されています。これらのテンプレートを読み解くことで、AgentDockの設計哲学をより深く理解できます。
テンプレートの構造
各エージェントテンプレートは、以下のファイルで構成されています。
agents/
└── cognitive-reasoner/
├── config.yaml # エージェントの設定(ツール・LLM設定)
├── system-prompt.md # エージェントのシステムプロンプト
└── README.md # 使い方の説明
テンプレートの設定ファイル例:
# agents/cognitive-reasoner/config.yaml(概念)
name: "Cognitive Reasoner"
description: "Multi-stage reasoning engine for complex problems"
model:
provider: anthropic
name: claude-sonnet-4-5
temperature: 0.7
tools:
- think
- reflect
- compare
- critique
- brainstorm
- debate
- search
maxIterations: 10
Agent Plannerテンプレート
agents/agent-planner は、他のAIエージェントを設計・実装するためのメタエージェントです。要件を自然言語で伝えると、適切なツール構成・オーケストレーション戦略・システムプロンプトを提案します。
AgentDockを使い始める際に、まずAgent Plannerに「どんなエージェントを作りたいか」を伝えるというブートストラップアプローチが機能します。
AgentDock Coreを使ったカスタム実装
AgentDock Coreは agentdock-core/ ディレクトリに実装された独立フレームワークです。Next.jsのOpen Source Clientとは独立して使えます。
カスタムツールの実装
BaseNodeを継承してカスタムツールを実装する例:
// agentdock-core を使ったカスタムツールの実装
import { BaseNode, NodeExecutionContext } from 'agentdock-core';
export class DatabaseQueryNode extends BaseNode {
readonly name = 'database_query';
readonly description = 'Query the internal database';
async execute(
context: NodeExecutionContext,
params: { query: string; table: string }
): Promise<{ results: any[]; count: number }> {
// データベースクエリの実装
const { query, table } = params;
// ... 実装 ...
return { results: [], count: 0 };
}
}
オーケストレーション設定
コンテキストに基づいてツールの利用可能性を動的に変更するオーケストレーション設定:
// オーケストレーションの設定例
import { createOrchestration } from 'agentdock-core';
const orchestration = createOrchestration({
rules: [
{
// ユーザーが「分析」と言った場合のみデータ分析ツールを有効化
condition: (context) => context.userIntent?.includes('analyze'),
enableTools: ['data_analysis', 'chart_generation'],
disableTools: ['general_search'],
},
{
// セキュアモードでは外部API呼び出しを制限
condition: (context) => context.securityLevel === 'high',
disableTools: ['web_search', 'external_api'],
},
],
});
AgentDockのロードマップと将来展望
AgentDockのREADMEには今後の機能追加が記載されています。
| 機能 | ステータス | 説明 |
|---|---|---|
| Code Playground | 計画中 | サンドボックスコード生成・実行、リッチな可視化 |
| Vector Storage | 開発中 | 意味検索・RAG対応のベクターストレージ |
| AgentDock Pro | 近日公開 | ビジュアルワークフロービルダー・エンタープライズ機能 |
| Prompt Library | 構築中 | 日常自動化・垂直業界向けプロンプト集 |
AgentDock Proでは「ビジュアルワークフロービルダー」が予定されており、現在のコードベースの設定ではなく、GUIで複雑なマルチエージェントワークフローを設計できるようになります。
AgentDockチームは「AI Agents Book」という包括的なガイドを公開しています。エージェントの基礎から本番環境へのデプロイパターンまでをカバーしており、AgentDockを使わない場合でもAIエージェント設計の参考になります。</br>agentdock.ai/docs/ai-agents-bookで公開されています。
AgentDockとMCPの関係
AgentDockは現時点でModel Context Protocol(MCP)の直接サポートを明示的には謳っていませんが、ノードベースの拡張性により、MCPサーバーをツールノードとして組み込むことができます。
// MCPサーバーをAgentDockのツールとして統合する概念例
import { BaseNode } from 'agentdock-core';
import { MCPClient } from '@modelcontextprotocol/sdk';
export class MCPToolNode extends BaseNode {
private mcpClient: MCPClient;
constructor(serverConfig: { command: string; args: string[] }) {
super();
this.mcpClient = new MCPClient(serverConfig);
}
async execute(context: any, params: { toolName: string; toolParams: any }) {
return await this.mcpClient.callTool(params.toolName, params.toolParams);
}
}
MCPサーバーの作成と活用についてはMCPサーバーの作り方2026完全ガイドも参照してください。
まとめ
AgentDockはTypeScriptファーストのAIエージェントフレームワークとして、「設定可能な決定論性」というコンセプトのもとに設計されています。非決定論的なLLMの創造性と、ビジネスに必要な予測可能な動作を、ノードベースのアーキテクチャで両立させる点が最大の特徴です。
Next.jsのOpen Source Clientが付属しているため、バックエンドのエージェントロジックとフロントエンドのUIを一体で開発・デプロイできます。Vercelへのワンクリックデプロイにも対応しており、プロトタイプから本番環境への移行がスムーズです。
より高度なエージェント構成や自律型AIエージェントについては、AIエージェントフレームワーク比較2026およびClaude Codeベストプラクティスも合わせて参照してください。