docker-agent

command module
v1.30.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 9, 2026 License: Apache-2.0 Imports: 7 Imported by: 0

README

🤖 Docker Agent 🤖

Build, run, and share AI agents with a declarative YAML config, rich tool ecosystem, and multi-agent orchestration.

docker agent in action

What is Docker Agent?

docker-agent lets you create and run intelligent AI agents that collaborate to solve complex problems — no code required.

docker-agent is a docker CLI plugin and can be run with docker agent.

Define agents in YAML, give them tools, and let them work.

agents:
  root:
    model: openai/gpt-5-mini
    description: A helpful AI assistant
    instruction: |
      You are a knowledgeable assistant that helps users with various tasks.
      Be helpful, accurate, and concise in your responses.
    toolsets:
      - type: mcp
        ref: docker:duckduckgo
docker agent run agent.yaml

Key Features

  • Multi-agent architecture — Create teams of specialized agents that delegate tasks automatically
  • Rich tool ecosystem — Built-in tools + any MCP server (local, remote, or Docker-based)
  • AI provider agnostic — OpenAI, Anthropic, Gemini, AWS Bedrock, Mistral, xAI, Docker Model Runner, and more
  • YAML configuration — Declarative, versionable, shareable
  • Advanced reasoning — Built-in think, todo, and memory tools
  • RAG — Pluggable retrieval with BM25, embeddings, hybrid search, and reranking
  • Package & share — Push agents to any OCI registry, pull and run them anywhere

Install

Docker Desktop (4.63+) — docker-agent CLI plugin is pre-installed. Just run docker agent.

Homebrewbrew install docker-agent. Run docker-agent directly or symlink the binary to ~/.docker/cli-plugins/docker-agent and run docker agent.

Binary releases — Download from GitHub Releases. Symlink the docker-agent binary to ~/.docker/cli-plugins/docker-agent to be able to use docker agent, or use docker-agent directly.

Set at least one API key (or use Docker Model Runner for local models):

export OPENAI_API_KEY=sk-...        # or ANTHROPIC_API_KEY, GOOGLE_API_KEY, etc.

Quick Start

# Run the default agent
docker agent run

# Run from the agent catalog
docker agent run agentcatalog/pirate

# Generate a new agent interactively
docker agent new

# Run your own config
docker agent run agent.yaml

More examples in the examples/ directory.

Documentation

📖 Full documentation

Contributing

Read the Contributing guide to get started. We use docker-agent to build docker-agent:

docker agent run ./golang_developer.yaml

Telemetry

We collect anonymous usage data to improve the tool. See Telemetry.

Community

Docker Community Slack · #cagent channel

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
cmd
e2e
examples
golibrary/multi command
golibrary/tool command
pkg
a2a
acp
api
app
app/export
Package export provides HTML export functionality for docker agent sessions.
Package export provides HTML export functionality for docker agent sessions.
audio/capture
Package capture provides audio capture functionality.
Package capture provides audio capture functionality.
audio/transcribe
Package transcribe provides real-time audio transcription using OpenAI's Realtime API.
Package transcribe provides real-time audio transcription using OpenAI's Realtime API.
cli
creator
Package creator provides functionality to create agent configurations interactively.
Package creator provides functionality to create agent configurations interactively.
evaluation
Package evaluation provides an evaluation framework for testing agents.
Package evaluation provides an evaluation framework for testing agents.
fake
Package fake provides a VCR-based proxy for replaying recorded AI API responses.
Package fake provides a VCR-based proxy for replaying recorded AI API responses.
fsx
hooks
Package hooks provides lifecycle hooks for agent tool execution.
Package hooks provides lifecycle hooks for agent tool execution.
js
mcp
model/provider/rulebased
Package rulebased provides a rule-based model router that selects the appropriate model based on NLP analysis of the input using Bleve.
Package rulebased provides a rule-based model router that selects the appropriate model based on NLP analysis of the input using Bleve.
oci
permissions
Package permissions provides tool permission checking based on configurable Allow/Ask/Deny patterns.
Package permissions provides tool permission checking based on configurable Allow/Ask/Deny patterns.
rag
sandbox
Package sandbox provides Docker sandbox lifecycle management including creation, detection, argument building, and environment forwarding.
Package sandbox provides Docker sandbox lifecycle management including creation, detection, argument building, and environment forwarding.
sessiontitle
Package sessiontitle provides session title generation using a one-shot LLM call.
Package sessiontitle provides session title generation using a one-shot LLM call.
tools/a2a
Package a2a provides a toolset implementation for connecting to remote A2A agents.
Package a2a provides a toolset implementation for connecting to remote A2A agents.
tui
Package tui provides the top-level TUI model with tab and session management.
Package tui provides the top-level TUI model with tab and session management.
tui/animation
Package animation provides centralized animation tick management for the TUI.
Package animation provides centralized animation tick management for the TUI.
tui/cmdbatch
Package cmdbatch provides a fluent builder for batching tea.Cmd values.
Package cmdbatch provides a fluent builder for batching tea.Cmd values.
tui/components/markdown
Package markdown provides a high-performance markdown renderer for terminal output.
Package markdown provides a high-performance markdown renderer for terminal output.
tui/components/scrollview
Package scrollview provides a composable scrollable view that pairs content with a fixed-position scrollbar.
Package scrollview provides a composable scrollable view that pairs content with a fixed-position scrollbar.
tui/components/tabbar
Package tabbar provides a horizontal tab bar for the TUI.
Package tabbar provides a horizontal tab bar for the TUI.
tui/messages
Package messages defines all TUI message types organized by domain.
Package messages defines all TUI message types organized by domain.
tui/service/supervisor
Package supervisor manages agent sessions.
Package supervisor manages agent sessions.
tui/service/tuistate
Package tuistate provides persistent TUI state storage (tabs, recent/favorite directories).
Package tuistate provides persistent TUI state storage (tabs, recent/favorite directories).
tui/subscription
Package subscription provides patterns for external event sources in the TUI.
Package subscription provides patterns for external event sources in the TUI.
upstream
Package upstream provides utilities for propagating HTTP headers from incoming API requests to outbound toolset HTTP calls.
Package upstream provides utilities for propagating HTTP headers from incoming API requests to outbound toolset HTTP calls.
userconfig
Package userconfig provides user-level configuration for docker agent.
Package userconfig provides user-level configuration for docker agent.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL