mcpField
A
autogpt-agents

autogpt-agents

github.com/orchestra-researchAgent workflows14.1k952 installsUpdated 19w ago
Repository

About autogpt-agents

AutoGPT is a platform for building, deploying, and managing continuously running AI agents, aimed at teams creating automation through a visual interface or development tools. It combines a graph-based editor, reusable blocks, external triggers, and the Forge toolkit.

Key features

  1. 01Visual node-based agent builder
  2. 02Continuous execution and external triggers
  3. 03Reusable blocks and marketplace
  4. 04Forge toolkit for custom agents
  5. 05Agent benchmarking system

Use cases

  1. 01Build multi-step automation pipelines
  2. 02Trigger agents by schedule or webhook
  3. 03Configure agents visually
  4. 04Evaluate agents with benchmarks

Install

Copy the command and run it in a terminal.

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

After installing, type/autogpt-agentsin Claude Code to confirm it loaded.

Bundled filesreferences/advanced-usage.mdreferences/troubleshooting.md

Details

From the project README

AutoGPT - Autonomous AI Agent Platform

Comprehensive platform for building, deploying, and managing continuous AI agents through a visual interface or development toolkit.

When to use AutoGPT

Use AutoGPT when:

  • Building autonomous agents that run continuously
  • Creating visual workflow-based AI agents
  • Deploying agents with external triggers (webhooks, schedules)
  • Building complex multi-step automation pipelines
  • Need a no-code/low-code agent builder

Key features:

  • Visual Agent Builder: Drag-and-drop node-based workflow editor
  • Continuous Execution: Agents run persistently with triggers
  • Marketplace: Pre-built agents and blocks to share/reuse
  • Block System: Modular components for LLM, tools, integrations
  • Forge Toolkit: Developer tools for custom agent creation
  • Benchmark System: Standardized agent performance testing

Use alternatives instead:

  • LangChain/LlamaIndex: If you need more control over agent logic
  • CrewAI: For role-based multi-agent collaboration
  • OpenAI Assistants: For simple hosted agent deployments
  • Semantic Kernel: For Microsoft ecosystem integration

Quick start

Installation (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
Access the platform

Architecture overview

AutoGPT has two main systems:

AutoGPT Platform (Production)
  • Visual agent builder with React frontend
  • FastAPI backend with execution engine
  • PostgreSQL + Redis + RabbitMQ infrastructure
AutoGPT Classic (Development)
  • Forge: Agent development toolkit
  • Benchmark: Performance testing framework
  • CLI: Command-line interface for development

Core concepts

Graphs and nodes

Agents are represented as graphs containing nodes connected by links:

Graph (Agent)
  ├── Node (Input)
  │   └── Block (AgentInputBlock)
  ├── Node (Process)
  │   └── Block (LLMBlock)
  ├── Node (Decision)
  │   └── Block (SmartDecisionMaker)
  └── Node (Output)
      └── Block (AgentOutputBlock)
Blocks

Blocks are reusable functional components:

Block TypePurpose
INPUTAgent entry points
OUTPUTAgent outputs
AILLM calls, text generation
WEBHOOKExternal triggers
STANDARDGeneral operations
AGENTNested agent execution
Execution flow
User/Trigger → Graph Execution → Node Execution → Block.execute()
     ↓              ↓                 ↓
  Inputs      Queue System      Output Yields

Building agents

Using the visual builder
  1. Open Agent Builder at http://localhost:3000
  2. Add blocks from the BlocksControl panel
  3. Connect nodes by dragging between handles
  4. Configure inputs in each node
  5. Run agent using PrimaryActionBar
Available blocks

AI Blocks:

  • AITextGeneratorBlock - Generate text with LLMs
  • AIConversationBlock - Multi-turn conversations
  • SmartDecisionMakerBlock - Conditional logic

Integration Blocks:

  • GitHub, Google, Discord, Notion connectors
  • Webhook triggers and handlers
  • HTTP request blocks

Control Blocks:

  • Input/Output blocks
  • Branching and decision nodes
  • Loop and iteration blocks

Agent execution

Trigger types

Manual execution:

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

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

Webhook trigger:

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

{
  "data": "webhook payload"
}

Scheduled execution:

{
  "schedule": "0 */2 * * *",
  "graph_id": "graph-uuid",
  "inputs": {}
}
Monitoring execution

WebSocket updates:

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 polling:

GET /api/v1/executions/{execution_id}

Using Forge (Development)

Create custom agent
# 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
Agent structure
my-agent/
├── agent.py          # Main agent logic
├── abilities/        # Custom abilities
│   ├── __init__.py
│   └── custom.py
├── prompts/          # Prompt templates
└── config.yaml       # Agent configuration
Implement custom ability
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

Benchmarking agents

Run benchmarks
# Run all benchmarks
./run benchmark

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

# Run with specific agent
./run benchmark --agent my-agent
Benchmark categories
  • Coding: Code generation and debugging
  • Retrieval: Information finding
  • Web: Web browsing and interaction
  • Writing: Text generation tasks
VCR cassettes

Benchmarks use recorded HTTP responses for reproducibility:

# Record new cassettes
./run benchmark --record

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

Integrations

Adding credentials
  1. Navigate to Profile > Integrations
  2. Select provider (OpenAI, GitHub, Google, etc.)
  3. Enter API keys or authorize OAuth
  4. Credentials are encrypted and stored securely
Using credentials in blocks

Blocks automatically access user credentials:

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)
        # ...
Supported providers
ProviderAuth TypeUse Cases
OpenAIAPI KeyLLM, embeddings
AnthropicAPI KeyClaude models
GitHubOAuthCode, repos
GoogleOAuthDrive, Gmail, Calendar
DiscordBot TokenMessaging
NotionOAuthDocuments

Deployment

Docker production setup
# 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"
Environment variables
VariablePurpose
DATABASE_URLPostgreSQL connection
REDIS_URLRedis connection
RABBITMQ_URLRabbitMQ connection
ENCRYPTION_KEYCredential encryption
SUPABASE_URLAuthentication
Generate encryption key
cd autogpt_platform/backend
poetry run cli gen-encrypt-key

Best practices

  1. Start simple: Begin with 3-5 node agents
  2. Test incrementally: Run and test after each change
  3. Use webhooks: External triggers for event-driven agents
  4. Monitor costs: Track LLM API usage via credits system
  5. Version agents: Save working versions before changes
  6. Benchmark: Use agbenchmark to validate agent quality

Common issues

Services not starting:

# Check container status
docker compose ps

# View logs
docker compose logs rest_server

# Restart services
docker compose restart

Database connection issues:

# Run migrations
cd backend
poetry run prisma migrate deploy

Agent execution stuck:

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

# Clear stuck executions
docker compose restart executor

References

Resources

Comments

Markdown supported