home / skills / basher83 / agent-auditor / multi-agent-composition

multi-agent-composition skill

/skills/multi-agent-composition

This skill helps you design and orchestrate multi-agent systems by guiding decisions between skills, sub-agents, MCP servers, and slash commands.

npx playbooks add skill basher83/agent-auditor --skill multi-agent-composition

Review the files below or copy the command above to add this skill to your agents.

Files (12)
SKILL.md
8.8 KB
---
name: multi-agent-composition
description: >
  This skill should be used when the user asks to "choose between skill and agent", "compose
  multi-agent system", "orchestrate agents", "manage agent context", "design component
  architecture", "should I use a skill or agent", "when to use hooks vs MCP", "build orchestrator
  workflow", needs decision frameworks for Claude Code components (skills, sub-agents, hooks, MCP
  servers, slash commands), context management patterns, or wants to build effective multi-component
  agentic systems with proper orchestration and anti-patterns guidance.
---

# Multi-Agent Composition

**Master Claude Code's components, patterns, and principles** to build effective agentic systems.

## When to Use This Knowledge

Use this knowledge when:

- **Learning Claude Code** - Understanding what each component does
- **Making architectural decisions** - Choosing Skills vs Sub-Agents vs MCP vs Slash Commands
- **Building custom solutions** - Creating specialized agents or orchestration systems
- **Scaling agentic workflows** - Moving from single agents to multi-agent orchestration
- **Debugging issues** - Understanding why components behave certain ways
- **Adding observability** - Implementing hooks for monitoring and control

## Quick Reference

### The Core 4 Framework

Every agent is built on these four elements:

1. **Context** - What information does the agent have?
2. **Model** - What capabilities does the model provide?
3. **Prompt** - What instruction are you giving?
4. **Tools** - What actions can the agent take?

> "Everything comes down to just four pieces. If you understand these, you will win."

### Component Overview

| Component | Trigger | Use When | Best For |
|-----------|---------|----------|----------|
| **Skills** | Agent-invoked | Repeat problems needing management | Domain-specific workflows |
| **Sub-Agents** | Tool-invoked | Parallelization & context isolation | Scale & batch operations |
| **MCP Servers** | As needed | External data/services | Integration with external systems |
| **Slash Commands** | Manual/tool | One-off tasks | Simple repeatable prompts |
| **Hooks** | Lifecycle events | Observability & control | Monitoring & blocking |

### Composition Hierarchy

```text
Skills (Top Layer)
  ├─→ Can use: Sub-Agents, Slash Commands, MCP Servers, Other Skills
  └─→ Purpose: Orchestrate primitives for repeatable workflows

Sub-Agents (Execution Layer)
  ├─→ Can use: Slash Commands, Skills
  └─→ Cannot nest other Sub-Agents

Slash Commands (Primitive Layer)
  └─→ The fundamental building block

MCP Servers (Integration Layer)
  └─→ Connect external systems
```

### Golden Rules

1. **Always start with prompts** - Master the primitive first
2. **"Parallel" = Sub-Agents** - Nothing else supports parallel execution
3. **External = MCP, Internal = Skills** - Clear separation of concerns
4. **One-off = Slash Command** - Don't over-engineer
5. **Repeat + Management = Skill** - Only scale when needed
6. **Don't convert all slash commands to skills** - Huge mistake
7. **Context, Model, Prompt, Tools** - Never forget the foundation

## Documentation Structure

This skill uses progressive disclosure. Start here, then navigate to specific topics as needed.

### Reference Documentation

**Architecture fundamentals** - What each component is and how they work

- **[architecture.md](reference/architecture.md)** - Component definitions, capabilities, restrictions
- **[core-4-framework.md](reference/core-4-framework.md)** - Deep dive into Context, Model, Prompt, Tools

### Implementation Patterns

**How to use components effectively** - Decision-making and implementation

- **[decision-framework.md](patterns/decision-framework.md)** - When to use Skills vs Sub-Agents vs MCP vs Slash Commands
- **[hooks-in-composition.md](patterns/hooks-in-composition.md)** - Implementing hooks for observability and control
- **[orchestrator-pattern.md](patterns/orchestrator-pattern.md)** - Multi-agent orchestration at scale
- **[context-management.md](patterns/context-management.md)** - Managing context across agents
- **[context-in-composition.md](patterns/context-in-composition.md)** - Context handling in multi-agent systems

### Anti-Patterns

#### Common mistakes to avoid

- **[common-mistakes.md](anti-patterns/common-mistakes.md)** - Converting all slash commands to
  skills, using skills for one-offs, context explosion, and more

### Examples

#### Real-world case studies and progression paths

- **[progression-example.md](examples/progression-example.md)** - Evolution from prompt → sub-agent → skill (work tree manager example)
- **[case-studies.md](examples/case-studies.md)** - Scout-builder patterns, orchestration workflows, multi-agent systems

### Workflows

#### Visual guides and decision trees

- **[decision-tree.md](workflows/decision-tree.md)** - Decision trees, mindmaps, and visual guides for choosing components

## Getting Started

### If you're new to Claude Code

1. Start with **[reference/architecture.md](reference/architecture.md)** to understand components
2. Read **[reference/core-4-framework.md](reference/core-4-framework.md)** to grasp the foundation
3. Use **[patterns/decision-framework.md](patterns/decision-framework.md)** to make your first architectural choice
4. Check **[anti-patterns/common-mistakes.md](anti-patterns/common-mistakes.md)** to avoid pitfalls

### If you're making an architectural decision

1. Open **[patterns/decision-framework.md](patterns/decision-framework.md)**
2. Follow the decision tree to identify the right component
3. Review the specific component in **[reference/architecture.md](reference/architecture.md)**
4. Check **[examples/](examples/)** for similar use cases

### If you're adding observability

1. Read **[patterns/hooks-in-composition.md](patterns/hooks-in-composition.md)** to understand available hooks and implementation
2. Use isolated scripts pattern (UV, bun, or shell)

### If you're scaling to multi-agent orchestration

1. Ensure you've mastered custom agents first
2. Read **[patterns/orchestrator-pattern.md](patterns/orchestrator-pattern.md)**
3. Study **[examples/case-studies.md](examples/case-studies.md)**
4. Review **[patterns/context-management.md](patterns/context-management.md)**

## Key Principles from the Field

### Prompts Are the Primitive

> "Do not give away the prompt. The prompt is the fundamental unit of knowledge work and of programming. If you don't know how to build and manage prompts, you will lose."

**Everything is prompts in the end.** Master slash commands before skills. Have a strong bias toward slash commands.

### Skills Are Compositional, Not Replacements

> "It is very clear this does not replace any existing feature or capability. It is a higher compositional level."

Skills orchestrate other components; they don't replace them. Don't convert all your
slash commands to skills—that's a huge mistake.

### Observability is Everything

> "When it comes to agentic coding, observability is everything. How well you can observe, iterate, and improve your agentic system is going to be a massive differentiating factor."

If you can't measure it, you can't improve it. If you can't measure it, you can't scale it.

### Context Window Protection

> "200k context window is plenty. You're just stuffing a single agent with too much work. Don't force your agent to context switch."

Create focused agents with single purposes. Delete them when done. Treat agents as temporary, deletable resources.

### The Agentic Engineering Progression

```text
Level 1: Base agents       → Use agents out of the box
Level 2: Better agents     → Customize prompts and workflows
Level 3: More agents       → Run multiple agents
Level 4: Custom agents     → Build specialized solutions
Level 5: Orchestration     → Manage fleets of agents
```

## Source Attribution

This knowledge synthesizes:

- Video presentations by Claude Code engineering team
- Official Claude Code documentation (docs.claude.com)
- Hands-on experimentation and validation
- Multi-agent orchestration patterns from the field

## Quick Navigation

**Need to understand what a component is?** → [reference/architecture.md](reference/architecture.md)

**Need to choose the right component?** → [patterns/decision-framework.md](patterns/decision-framework.md)

**Need to implement hooks?** → [patterns/hooks-in-composition.md](patterns/hooks-in-composition.md)

**Need to scale to multiple agents?** → [patterns/orchestrator-pattern.md](patterns/orchestrator-pattern.md)

**Need to see real examples?** → [examples/](examples/)

**Need visual guides?** → [workflows/decision-tree.md](workflows/decision-tree.md)

**Want to avoid mistakes?** → [anti-patterns/common-mistakes.md](anti-patterns/common-mistakes.md)

---

**Remember:** Context, Model, Prompt, Tools. Master these four, and you master Claude Code.

Overview

This skill helps you choose and compose Claude Code components—skills, sub-agents, hooks, MCP servers, and slash commands—so you can design reliable multi-agent systems. It provides practical decision rules, composition patterns, context-management guidance, and anti-patterns to avoid when orchestrating agentic workflows. Use it to move from single prompts to scalable orchestrators with observability and control.

How this skill works

The skill inspects your use case against a decision framework that maps responsibilities to components: one-off primitives to slash commands, repeatable managed workflows to skills, parallel work to sub-agents, and external integrations to MCP servers. It evaluates context needs, prompt complexity, execution model (serial vs parallel), and observability requirements, then recommends composition patterns and implementation steps. It also highlights common anti-patterns and suggests hooks to add monitoring and lifecycle controls.

When to use it

  • Deciding whether a capability should be a skill, sub-agent, slash command, or MCP integration
  • Designing orchestration flows that require parallel tasks or context isolation
  • Managing context size and protecting model context windows across components
  • Adding observability, hooks, and lifecycle controls to agentic systems
  • Scaling from single agents to multi-agent orchestration with clear separation of concerns

Best practices

  • Start by mastering slash commands and prompts before building higher-level skills
  • Use the Core 4 (Context, Model, Prompt, Tools) as the foundation for every component
  • Assign external interactions to MCP servers and internal workflows to skills
  • Use sub-agents for parallelization and context isolation; avoid nesting sub-agents
  • Instrument hooks for observability, blocking, and lifecycle events from the start

Example use cases

  • Convert a repeatable data-cleaning workflow into a skill that orchestrates slash commands and a sub-agent for parallel processing
  • Design an orchestrator that dispatches sub-agents for batch analysis and collects results via hooks for monitoring
  • Integrate an external database through an MCP server while using skills to manage business logic and retries
  • Prototype one-off tasks as slash commands, then elevate to a skill only when management and repeatability are needed

FAQ

When should I convert a slash command into a skill?

Convert only when you need management, retries, observability, or coordination across multiple primitives. One-off or simple repeatable prompts stay as slash commands.

How do I prevent context explosion across agents?

Design focused agents with single responsibilities, limit retained history, use sub-agents for isolated tasks, and delete temporary agents when done to protect context windows.