mcpField
A
autogpt-agents

autogpt-agents

github.com/orchestra-researchエージェントワークフロー14.1k952 回インストール19 週間前に更新
リポジトリ

autogpt-agents について

AutoGPTは、継続的に動作するAIエージェントを構築・デプロイ・管理するプラットフォームです。ビジュアル画面や開発ツールで自動化を作るチーム向けに、グラフ型エディター、再利用可能なブロック、外部トリガー、Forgeツールキットを備えています。

主な機能

  1. 01ノード型のビジュアルエージェントビルダー
  2. 02継続実行と外部トリガー
  3. 03再利用可能なブロックとマーケットプレイス
  4. 04カスタムエージェント向けForgeツールキット
  5. 05エージェントのベンチマークシステム

活用シーン

  1. 01複数段階の自動化パイプライン構築
  2. 02スケジュールやWebhookによるエージェント起動
  3. 03画面上でのエージェント設定
  4. 04ベンチマークによるエージェント評価

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/orchestra-research/ai-research-skills --skill autogpt-agents

インストール後、Claude Code で/autogpt-agentsを入力して読み込まれたか確認します。

同梱ファイルreferences/advanced-usage.mdreferences/troubleshooting.md

詳細

AutoGPT - 自律型 AI エージェントプラットフォーム

ビジュアルインターフェースや開発ツールキットを通じて、継続的に動作する AI エージェントを構築、デプロイ、管理するための包括的なプラットフォームです。

AutoGPT を使用するケース

AutoGPT を使用するとよいケース:

  • 継続的に実行される自律型エージェントを構築する場合
  • ビジュアルなワークフローベースの AI エージェントを作成する場合
  • 外部トリガー(Webhook、スケジュール)を使ってエージェントをデプロイする場合
  • 複雑な複数ステップの自動化パイプラインを構築する場合
  • ノーコード/ローコードのエージェントビルダーが必要な場合

主な機能:

  • ビジュアルエージェントビルダー: ドラッグアンドドロップ式のノードベースのワークフローエディター
  • 継続的な実行: トリガーにより、エージェントが永続的に動作します
  • マーケットプレイス: 共有・再利用できる、ビルド済みのエージェントとブロック
  • ブロックシステム: LLM、ツール、インテグレーションのためのモジュール式コンポーネント
  • Forge ツールキット: カスタムエージェントを作成するための開発者向けツール
  • ベンチマークシステム: 標準化されたエージェントのパフォーマンステスト

代わりに検討できる選択肢:

  • LangChain/LlamaIndex: エージェントのロジックをより細かく制御したい場合
  • CrewAI: ロールベースのマルチエージェント協調を行う場合
  • OpenAI Assistants: シンプルなホスト型エージェントをデプロイする場合
  • Semantic Kernel: Microsoft エコシステムと統合する場合

クイックスタート

インストール(Docker)
# Clone repository
git clone https://github.com/Significant-Gravitas/AutoGPT.git
cd AutoGPT/autogpt_platform

# Copy environment file
cp .env.example .env

# Start backend services
docker compose up -d --build

# Start frontend (in separate terminal)
cd frontend
cp .env.example .env
npm install
npm run dev
プラットフォームへのアクセス

アーキテクチャの概要

AutoGPT には、2 つの主要なシステムがあります。

AutoGPT Platform(本番環境)
  • React フロントエンドを備えたビジュアルエージェントビルダー
  • 実行エンジンを備えた FastAPI バックエンド
  • PostgreSQL + Redis + RabbitMQ インフラストラクチャ
AutoGPT Classic(開発環境)
  • Forge: エージェント開発ツールキット
  • Benchmark: パフォーマンステストフレームワーク
  • CLI: 開発用のコマンドラインインターフェース

基本概念

グラフとノード

エージェントは、リンクで接続されたノードを含むグラフとして表現されます。

Graph (Agent)
  ├── Node (Input)
  │   └── Block (AgentInputBlock)
  ├── Node (Process)
  │   └── Block (LLMBlock)
  ├── Node (Decision)
  │   └── Block (SmartDecisionMaker)
  └── Node (Output)
      └── Block (AgentOutputBlock)
ブロック

ブロックは再利用可能な機能コンポーネントです。

ブロックタイプ目的
INPUTエージェントの入力ポイント
OUTPUTエージェントの出力
AILLM の呼び出し、テキスト生成
WEBHOOK外部トリガー
STANDARD一般的な操作
AGENTネストされたエージェントの実行
実行フロー
User/Trigger → Graph Execution → Node Execution → Block.execute()
     ↓              ↓                 ↓
  Inputs      Queue System      Output Yields

エージェントの構築

ビジュアルビルダーの使用
  1. http://localhost:3000 で Agent Builder を開きます
  2. BlocksControl パネルからブロックを追加します
  3. ハンドル間をドラッグしてノードを接続します
  4. 各ノードで入力を設定します
  5. PrimaryActionBar を使ってエージェントを実行します
利用可能なブロック

AI ブロック:

  • AITextGeneratorBlock - LLM でテキストを生成します
  • AIConversationBlock - 複数ターンの会話
  • SmartDecisionMakerBlock - 条件分岐ロジック

インテグレーションブロック:

  • GitHub、Google、Discord、Notion のコネクター
  • Webhook トリガーとハンドラー
  • HTTP リクエストブロック

制御ブロック:

  • 入力/出力ブロック
  • 分岐と判断ノード
  • ループと反復ブロック

エージェントの実行

トリガーの種類

手動実行:

POST /api/v1/graphs/{graph_id}/execute
Content-Type: application/json

{
  "inputs": {
    "input_name": "value"
  }
}

Webhook トリガー:

POST /api/v1/webhooks/{webhook_id}
Content-Type: application/json

{
  "data": "webhook payload"
}

スケジュール実行:

{
  "schedule": "0 */2 * * *",
  "graph_id": "graph-uuid",
  "inputs": {}
}
実行の監視

WebSocket による更新:

const ws = new WebSocket('ws://localhost:8001/ws');

ws.onmessage = (event) => {
  const update = JSON.parse(event.data);
  console.log(`Node ${update.node_id}: ${update.status}`);
};

REST API によるポーリング:

GET /api/v1/executions/{execution_id}

Forge(開発)の使用

カスタムエージェントの作成
# Setup forge environment
cd classic
./run setup

# Create new agent from template
./run forge create my-agent

# Start agent server
./run forge start my-agent
エージェントの構造
my-agent/
├── agent.py          # Main agent logic
├── abilities/        # Custom abilities
│   ├── __init__.py
│   └── custom.py
├── prompts/          # Prompt templates
└── config.yaml       # Agent configuration
カスタムアビリティの実装
from forge import Ability, ability

@ability(
    name="custom_search",
    description="Search for information",
    parameters={
        "query": {"type": "string", "description": "Search query"}
    }
)
def custom_search(query: str) -> str:
    """Custom search ability."""
    # Implement search logic
    result = perform_search(query)
    return result

エージェントのベンチマーク

ベンチマークの実行
# Run all benchmarks
./run benchmark

# Run specific category
./run benchmark --category coding

# Run with specific agent
./run benchmark --agent my-agent
ベンチマークのカテゴリ
  • Coding: コードの生成とデバッグ
  • Retrieval: 情報の検索
  • Web: Web のブラウジングと操作
  • Writing: テキスト生成タスク
VCR カセット

ベンチマークでは、再現性を確保するために記録された HTTP レスポンスを使用します。

# Record new cassettes
./run benchmark --record

# Run with existing cassettes
./run benchmark --playback

インテグレーション

認証情報の追加
  1. Profile > Integrations に移動します
  2. プロバイダー(OpenAI、GitHub、Google など)を選択します
  3. API キーを入力するか、OAuth で認可します
  4. 認証情報は暗号化されて安全に保存されます
ブロックでの認証情報の使用

ブロックは、ユーザーの認証情報に自動的にアクセスします。

class MyLLMBlock(Block):
    def execute(self, inputs):
        # Credentials are injected by the system
        credentials = self.get_credentials("openai")
        client = OpenAI(api_key=credentials.api_key)
        # ...
サポートされているプロバイダー
プロバイダー認証タイプユースケース
OpenAIAPI キーLLM、埋め込み
AnthropicAPI キーClaude モデル
GitHubOAuthコード、リポジトリ
GoogleOAuthDrive、Gmail、カレンダー
Discordボットトークンメッセージング
NotionOAuthドキュメント

デプロイ

Docker 本番環境のセットアップ
# docker-compose.prod.yml
services:
  rest_server:
    image: autogpt/platform-backend
    environment:
      - DATABASE_URL=postgresql://...
      - REDIS_URL=redis://redis:6379
    ports:
      - "8006:8006"

  executor:
    image: autogpt/platform-backend
    command: poetry run executor

  frontend:
    image: autogpt/platform-frontend
    ports:
      - "3000:3000"
環境変数
変数目的
DATABASE_URLPostgreSQL 接続
REDIS_URLRedis 接続
RABBITMQ_URLRabbitMQ 接続
ENCRYPTION_KEY認証情報の暗号化
SUPABASE_URL認証
暗号化キーの生成
cd autogpt_platform/backend
poetry run cli gen-encrypt-key

ベストプラクティス

  1. シンプルに始める: 3〜5 ノードのエージェントから始めてください
  2. 段階的にテストする: 変更のたびに実行してテストしてください
  3. Webhook を使用する: イベント駆動型エージェントの外部トリガーとして利用してください
  4. コストを監視する: クレジットシステム経由で LLM API の使用量を追跡してください
  5. エージェントをバージョン管理する: 変更前に動作するバージョンを保存してください
  6. ベンチマークを実施する: agbenchmark を使用してエージェントの品質を検証してください

よくある問題

サービスが起動しない:

# Check container status
docker compose ps

# View logs
docker compose logs rest_server

# Restart services
docker compose restart

データベース接続の問題:

# Run migrations
cd backend
poetry run prisma migrate deploy

エージェントの実行が停止する:

# Check RabbitMQ queue
# Visit http://localhost:15672 (guest/guest)

# Clear stuck executions
docker compose restart executor

参考資料

リソース

コメント