skills/ai/cagent/SKILL.md
Use when building or running multi-agent systems with Docker cagent. Covers YAML agent configuration, MCP tool integration, sub-agents, Docker MCP Gateway, and the cagent CLI. USE FOR: multi-agent orchestration, YAML agent configuration, Docker MCP Gateway, running agent teams locally DO NOT USE FOR: declarative agent definitions without runtime (use adl), agent-to-agent protocol (use a2a), tool server development (use mcp)
npx skillsauth add Tyler-R-Kendrick/agent-skills cagentInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
cagent is an open-source multi-agent runtime from Docker that lets you define, orchestrate, and run teams of AI agents. Agents are configured in YAML with specialized capabilities, tools, and sub-agents. cagent supports MCP for tool integration, the Agent Client Protocol (ACP) for IDE integration, and runs locally via cagent run. Bundled in Docker Desktop.
# Bundled with Docker Desktop, or install standalone:
brew install docker/tap/cagent # macOS
# Or download from github.com/docker/cagent/releases
Agents are defined in a cagent.yaml file:
version: "2"
agents:
root:
model: anthropic/claude-sonnet-4-5-20250929
description: A helpful AI assistant with search and file access
instruction: |
You are a knowledgeable assistant that helps users with various tasks.
Be helpful, accurate, and concise in your responses.
Write your results to disk.
toolsets:
- type: mcp
ref: docker:duckduckgo
- type: mcp
command: rust-mcp-filesystem
args: ["--allow-write", "."]
tools: ["read_file", "write_file"]
Define models inline or as named references:
version: "2"
models:
fast:
provider: openai
model: gpt-5-mini
max_tokens: 4096
strong:
provider: anthropic
model: claude-sonnet-4-5-20250929
max_tokens: 64000
agents:
root:
model: strong
description: Main orchestrator
sub_agents: [researcher, writer]
researcher:
model: fast
description: Finds information
toolsets:
- type: mcp
ref: docker:duckduckgo
writer:
model: strong
description: Writes polished content
Use containerized MCP servers via Docker's MCP Gateway:
toolsets:
- type: mcp
ref: docker:duckduckgo # Search
- type: mcp
ref: docker:fetch # HTTP fetch
- type: mcp
ref: docker:github # GitHub API
Use any MCP server via stdio:
toolsets:
- type: mcp
command: npx
args: ["-y", "@modelcontextprotocol/server-filesystem", "/workspace"]
tools: ["read_file", "write_file", "list_directory"]
env:
- "NODE_ENV=production"
| Type | Description |
|------|-------------|
| mcp | MCP server integration (Docker Gateway or stdio) |
| think | Internal reasoning / chain-of-thought |
| todo | Task tracking and management |
| memory | Persistent memory across conversations |
toolsets:
- type: think
- type: todo
- type: memory
path: ./agent-memory.db
Orchestrate multiple specialized agents:
agents:
root:
model: strong
description: Orchestrates research and writing tasks
instruction: |
Delegate research to the researcher agent.
Delegate writing to the writer agent.
Synthesize their outputs into a final response.
sub_agents: [researcher, writer]
researcher:
model: fast
description: Searches the web and gathers information
toolsets:
- type: mcp
ref: docker:duckduckgo
writer:
model: strong
description: Produces polished, well-structured content
toolsets:
- type: think
# Run the default agent
cagent run
# Run with a specific config file
cagent run -f my-agent.yaml
# Run in non-interactive mode with input
echo "Summarize the latest AI news" | cagent run
root agent and add sub-agents only when you need specialization.ref: docker:*) for containerized, reproducible tool access.tools: [...] to restrict which MCP tools an agent can access (principle of least privilege).models section to avoid duplication and make switching easy.think toolset for agents that need to reason through complex problems before acting.memory toolset with a persistent path for agents that need to retain context across sessions.tools
Use when building or maintaining a design system — the coordinated set of design tokens, component libraries, documentation, and tooling that ensures visual and behavioral consistency across products. USE FOR: design system architecture, choosing token formats vs component frameworks, connecting Figma to code, design-to-development workflows, multi-platform consistency DO NOT USE FOR: specific token authoring (use design-tokens), Figma workflows (use figma), component cataloging (use storybook), token transformation (use style-dictionary), cross-framework components (use mitosis)
tools
Use when implementing the x402 protocol for HTTP-native micropayments. Covers server middleware, client payment flows, facilitator integration, and stablecoin payments for APIs and AI agents. USE FOR: API micropayments, monetizing endpoints, stablecoin HTTP payments, automated agent payments for API access DO NOT USE FOR: full commerce flows with cart/checkout (use ap2), agent communication (use a2a), tool integration (use mcp)
tools
Use when implementing or integrating with the Model Context Protocol (MCP) for AI tool servers, resources, prompts, and context management. USE FOR: building MCP tool servers, exposing resources to agents, prompt templates, connecting agents to external APIs DO NOT USE FOR: agent-to-agent communication (use a2a), interactive UI rendering (use mcp-apps), agent payments (use x402 or ap2)
tools
Use when building MCP Apps that serve interactive UI from MCP servers. Covers the ui:// URI scheme, HTML rendering in sandboxed iframes, and bidirectional communication between UI and host. USE FOR: rich UI in agent conversations, interactive dashboards from MCP servers, sandboxed iframe rendering DO NOT USE FOR: basic tool responses without UI (use mcp), agent communication (use a2a), full web applications