Cagent

cagent
- Version: 1.9.10
- OS: Ubuntu 24.04
- Category: Developer Tools
Description
cagent is Docker's AI agent framework for building and running intelligent agents with YAML-first configuration and a flexible tool ecosystem. It supports both single-agent and multi-agent architectures, integrates with cloud and local model providers, and can route tasks across specialized agent roles.
What is cagent?
cagent provides a composable runtime for agent workflows:
- Multi-agent architecture for domain-specific specialists
- Smart delegation between specialist sub-agents
- Built-in reasoning helpers such as think, todo, and memory patterns
- MCP-based tool integration for external capabilities
- Portable YAML configuration for repeatable agent definitions
Key Features
- Build intelligent AI agents with specialized capabilities
- Create multi-agent teams for complex workflows
- Use MCP tools for extensible integrations
- Support both cloud providers and local runtimes
- Push and pull agents through Docker Hub
- Container-oriented deployment model
Software Included
| Package | Version | License |
|---|---|---|
| cagent | v1.9.10 | Apache License 2.0 |
System Requirements
cagent is installed as a binary on Ubuntu 24.04 and requires Docker for containerized models and tools.
| Usage Level | RAM | CPU |
|---|---|---|
| Basic agents with cloud APIs | 1 GB | 1 CPU |
| Local models (small) | 4 GB | 2 CPU |
| Local models (medium) | 8 GB | 4 CPU |
| Local models (large) | 16 GB+ | 8 CPU+ |
Note: Local model inference requirements depend on model size.
Getting Started
Quick Start
- Deploy cagent on an EasyCloudify VPS.
- Connect via SSH.
bashssh root@your-vps-ip
- Configure API keys for your selected providers.
- Run an example agent to validate installation.
bashcagent run /opt/cagent/examples/basic_agent.yaml
Setting Up API Keys
bash# For OpenAI models export OPENAI_API_KEY=your_openai_key_here # For Anthropic models export ANTHROPIC_API_KEY=your_anthropic_key_here # For Google Gemini models export GOOGLE_API_KEY=your_google_key_here
Running Your First Agent
bash# Run a basic agent cagent run /opt/cagent/examples/basic_agent.yaml # Run with local Docker Model Runner cagent run /opt/cagent/examples/dmr.yaml # Other examples cagent run /opt/cagent/examples/pirate.yaml cagent run /opt/cagent/examples/pythonist.yaml cagent run /opt/cagent/examples/todo.yaml
Creating Custom Agents
bashcagent new cagent new --model openai/gpt-4o-mini cagent new --model dmr/ai/gemma3:2B-Q4_0
Using Docker Model Runner
yamlversion: "2" agents: root: model: local-model description: A helpful AI assistant instruction: You are a knowledgeable assistant. models: local-model: provider: dmr model: ai/gemma3:2B-Q4_0 max_tokens: 8192
Agent Store
bashcagent pull docker.io/username/my-agent:latest cagent push ./my-agent.yaml docker.io/username/my-agent:latest cagent run creek/pirate
Configuration
Basic Agent Configuration
yamlversion: "2" agents: root: model: openai/gpt-4o-mini description: A helpful AI assistant instruction: | You are a knowledgeable assistant that helps users with various tasks. models: openai: provider: openai model: gpt-4o-mini max_tokens: 4096
Multi-Agent Teams
yamlversion: "2" agents: root: model: coordinator description: Main coordinator agent instruction: | You coordinate tasks and delegate to specialized agents. sub_agents: ["researcher", "writer"] researcher: model: research-model description: Research specialist instruction: | You research topics and gather information. writer: model: writing-model description: Writing specialist instruction: | You create well-written content based on research. models: coordinator: provider: anthropic model: claude-sonnet-4-0 research-model: provider: openai model: gpt-4o writing-model: provider: anthropic model: claude-sonnet-4-0
Adding Tools via MCP
yamlversion: "2" agents: root: model: assistant description: Assistant with web search capabilities instruction: You help users by searching the web when needed. toolsets: - type: mcp ref: docker:duckduckgo models: assistant: provider: openai model: gpt-4o-mini max_tokens: 4096
Common Commands
bashcagent --help cagent run ./my-agent.yaml cagent new cagent build ./my-agent.yaml my-agent:latest cagent pull creek/pirate cagent push ./my-agent.yaml username/my-agent:latest cagent readme ./my-agent.yaml
Examples and Documentation
- Local examples: /opt/cagent/examples/
- Quick reference: /opt/cagent/README.txt
- GitHub examples: https://github.com/docker/cagent/tree/main/examples
Example categories:
- Basic single-agent examples
- Advanced tool-enabled examples
- Multi-agent collaboration examples
Use Cases
- Code assistance workflows
- Research and summarization pipelines
- Content creation with multi-agent teams
- Task automation with system and tool integrations
- Custom specialist teams for internal operations
Post-Deployment Notes
After deployment, the instance includes:
- cagent binary at /usr/local/bin/cagent
- Docker pre-installed
- Example agents in /opt/cagent/examples/
- Quick guide in /opt/cagent/README.txt
Important notes:
- Store API keys in environment variables
- Local models require additional RAM
- Some MCP tools may require additional dependencies
- Use cagent --version to verify installed version
Resources
- GitHub: https://github.com/docker/cagent
- Usage Docs: https://github.com/docker/cagent/blob/main/docs/USAGE.md
- Contributing: https://github.com/docker/cagent/blob/main/docs/CONTRIBUTING.md
- Docker Community Slack: https://dockercommunity.slack.com/archives/C09DASHHRU4