Skip to content

Latest commit

 

History

History
100 lines (77 loc) · 3.86 KB

File metadata and controls

100 lines (77 loc) · 3.86 KB

AgentDock Development Guide

This guide details how to set up, build, and extend AgentDock locally.


1. Prerequisites

Before running the AgentDock builder, ensure your local development environment has:

  • Docker + Docker Compose v2
  • Bun ≥ 1.1 (for local scripts and fast package management)
  • An LLM API Key (Groq, OpenAI, Anthropic, or Gemini). Groq's free tier is highly recommended for development due to speed and cost.

2. Environment Configuration

Copy .env.example to .env in the project root:

cp .env.example .env

Required Variables

  • JWT_SECRET: A secure key used for signing authentication tokens (minimum 32 characters).
  • ADMIN_PASSWORD: The login password used to access the Builder UI.
  • LLM_PROVIDER: The LLM engine to use for natural language describing and patching (groq | openai | anthropic | ollama).
  • LLM_MODEL: The model name (e.g., llama-3.1-70b-versatile, gpt-4o-mini).
  • Provider API Keys: Configured based on your LLM_PROVIDER choice (e.g., GROQ_API_KEY, OPENAI_API_KEY, ANTHROPIC_API_KEY).

3. Monorepo Layout

AgentDock is structured as a Bun workspaces monorepo:

agentdock/
├── apps/
│   ├── builder-api/           # Bun + Hono REST API for managing and generating pipelines
│   ├── builder-ui/            # React + Vite canvas web interface for visual design
│   ├── runtime-console/       # React + Vite console dashboard for running & monitoring generated systems
│   ├── orchestrator/          # Bun/Hono server managing tasks & WebSocket logging
│   ├── llm-gateway/           # BullMQ + Redis job processor load balancing inference
│   └── agent-runtime/         # Python + FastAPI agent container (memory, RAG, and tools)
├── packages/
│   ├── config-schema/         # Shared Zod validation schemas
│   ├── mcp-registry/          # Platform MCPs + Smithery registry search integration
│   └── shared-types/          # Shared TypeScript type definitions
├── configs/                   # Example system configurations
└── docker/                    # Docker Compose orchestrations for builder services

4. Running the Builder

Production Mode (Docker-only)

To run the pre-built application locally, execute:

docker compose -f docker/builder.docker-compose.yml up -d

Access the dashboard at http://localhost:3000 and authenticate using admin@agentdock.local and your configured ADMIN_PASSWORD.

Local Development Mode

To make changes to the Builder's code with hot-reloading:

  1. Install monorepo dependencies:
    bun install
  2. Launch the developer compose file (starts SQLite, Redis, and hot-reload watchers):
    docker compose -f docker/builder.dev.docker-compose.yml up

5. Builtin Tools Reference

Every agent generated by AgentDock has immediate, zero-configuration access to three high-performance builtin tools:

Web Search (search_web)

Performs a lightweight web search using DuckDuckGo. No external search API keys are required.

  • Parameters:
    • query (string): The search query.
    • max_results (integer, optional): Maximum results to fetch (default: 5).

URL Fetcher (fetch_url)

Fetches raw text content from public URLs. It automatically extracts clean markdown text from standard web pages, parses PDF documents, and retrieves YouTube transcripts.

  • Parameters:
    • url (string): Target website/file URL.
    • max_chars (integer, optional): Maximum characters to return (default: 8000).

Code Runner (run_code)

Executes code in a secure sandboxed environment and returns stdout and stderr.

  • Supported Languages: python, javascript, bash.
  • Execution Limits: 10-second timeout.
  • Parameters:
    • code (string): Raw script text.
    • language (string): Target language.