Introduction

docker-agent is a powerful, customizable multi-agent system that lets you build, run, and share AI agents using simple YAML or HCL configuration.

What is docker-agent?

docker-agent is an open-source tool by Docker that orchestrates AI agents with specialized capabilities and tools. Instead of writing code to wire up LLMs, tools, and workflows, you declare your agents in YAML or HCL — their model, personality, tools, and how they collaborate — and docker-agent handles the rest.

🏗️

Multi-Agent Architecture

Build hierarchical teams of agents that specialize in different tasks and delegate work to each other.

🔧

Rich Tool Ecosystem

Built-in tools for files, shell, memory, and todos. Extend with any MCP server — over 1000+ available.

🧠

Multi-Model Support

OpenAI, Anthropic, Google Gemini, AWS Bedrock, Docker Model Runner, and reusable provider definitions with shared defaults.

📦

Package & Share

Push agents to OCI registries and pull them anywhere — just like Docker images.

🖥️

Multiple Interfaces

Interactive TUI, headless CLI, HTTP API server, MCP mode, and A2A protocol support.

🔒

Security-First Design

Tool confirmation prompts, containerized MCP tools via Docker, client isolation, and resource scoping.

Why docker-agent?

After spending years building AI agents using various frameworks, the Docker team kept asking the same questions:

docker-agent is built in the open so the community can make use of this work and contribute to its future.

How it Works

At its core, docker-agent follows a simple loop:

  1. You define agents in YAML or HCL — their model, instructions, tools, and sub-agents.
  2. You run an agent via the TUI, CLI, or API.
  3. The agent processes your request — calling tools, delegating to sub-agents, and reasoning step by step.
  4. Results stream back in real-time via an event-driven architecture.
# A minimal agent definition
agents:
  root:
    model: openai/gpt-5-mini
    description: A helpful assistant
    instruction: You are a helpful assistant.
    toolsets:
      - type: think
# Run it
$ docker agent run agent.yaml
💡 Tip

Jump straight to the Quick Start if you want to build your first agent right away.

What’s Next?