create-subagents
Expert guidance for creating, building, and using Claude Code subagents and the Task tool. Use when working with subagents, setting up agent configurations, understanding how agents work, or using the Task tool to launch specialized agents.
What this skill does
<objective> Subagents are specialized Claude instances that run in isolated contexts with focused roles and limited tool access. This skill teaches you how to create effective subagents, write strong system prompts, configure tool access, and orchestrate multi-agent workflows using the Task tool. Subagents enable delegation of complex tasks to specialized agents that operate autonomously without user interaction, returning their final output to the main conversation. </objective> <quick_start> <workflow> 1. Run `/agents` command 2. Select "Create New Agent" 3. Choose project-level (`.claude/agents/`) or user-level (`~/.claude/agents/`) 4. Define the subagent: - **name**: lowercase-with-hyphens - **description**: When should this subagent be used? - **tools**: Optional comma-separated list (inherits all if omitted) - **model**: Optional (`sonnet`, `opus`, `haiku`, or `inherit`) 5. Write the system prompt (the subagent's instructions) </workflow> <example> ```markdown --- name: code-reviewer description: Expert code reviewer. Use proactively after code changes to review for quality, security, and best practices. tools: Read, Grep, Glob, Bash model: sonnet --- <role> You are a senior code reviewer focused on quality, security, and best practices. </role> <focus_areas> - Code quality and maintainability - Security vulnerabilities - Performance issues - Best practices adherence </focus_areas> <output_format> Provide specific, actionable feedback with file:line references. </output_format> ``` </example> </quick_start> <file_structure> | Type | Location | Scope | Priority | |------|----------|-------|----------| | **Project** | `.claude/agents/` | Current project only | Highest | | **User** | `~/.claude/agents/` | All projects | Lower | | **Plugin** | Plugin's `agents/` dir | All projects | Lowest | Project-level subagents override user-level when names conflict. </file_structure> <configuration> <field name="name"> - Lowercase letters and hyphens only - Must be unique </field> <field name="description"> - Natural language description of purpose - Include when Claude should invoke this subagent - Used for automatic subagent selection </field> <field name="tools"> - Comma-separated list: `Read, Write, Edit, Bash, Grep` - If omitted: inherits all tools from main thread - Use `/agents` interface to see all available tools </field> <field name="model"> - `sonnet`, `opus`, `haiku`, or `inherit` - `inherit`: uses same model as main conversation - If omitted: defaults to configured subagent model (usually sonnet) </field> </configuration> <execution_model> <critical_constraint> **Subagents are black boxes that cannot interact with users.** Subagents run in isolated contexts and return their final output to the main conversation. They: - ✅ Can use tools like Read, Write, Edit, Bash, Grep, Glob - ✅ Can access MCP servers and other non-interactive tools - ❌ **Cannot use AskUserQuestion** or any tool requiring user interaction - ❌ **Cannot present options or wait for user input** - ❌ **User never sees subagent's intermediate steps** The main conversation sees only the subagent's final report/output. </critical_constraint> <workflow_design> **Designing workflows with subagents:** Use **main chat** for: - Gathering requirements from user (AskUserQuestion) - Presenting options or decisions to user - Any task requiring user confirmation/input - Work where user needs visibility into progress Use **subagents** for: - Research tasks (API documentation lookup, code analysis) - Code generation based on pre-defined requirements - Analysis and reporting (security review, test coverage) - Context-heavy operations that don't need user interaction **Example workflow pattern:** ``` Main Chat: Ask user for requirements (AskUserQuestion) ↓ Subagent: Research API and create documentation (no user interaction) ↓ Main Chat: Review research with user, confirm approach ↓ Subagent: Generate code based on confirmed plan ↓ Main Chat: Present results, handle testing/deployment ``` </workflow_design> </execution_model> <system_prompt_guidelines> <principle name="be_specific"> Clearly define the subagent's role, capabilities, and constraints. </principle> <principle name="use_pure_xml_structure"> Structure the system prompt with pure XML tags. Remove ALL markdown headings from the body. ```markdown --- name: security-reviewer description: Reviews code for security vulnerabilities tools: Read, Grep, Glob, Bash model: sonnet --- <role> You are a senior code reviewer specializing in security. </role> <focus_areas> - SQL injection vulnerabilities - XSS attack vectors - Authentication/authorization issues - Sensitive data exposure </focus_areas> <workflow> 1. Read the modified files 2. Identify security risks 3. Provide specific remediation steps 4. Rate severity (Critical/High/Medium/Low) </workflow> ``` </principle> <principle name="task_specific"> Tailor instructions to the specific task domain. Don't create generic "helper" subagents. ❌ Bad: "You are a helpful assistant that helps with code" ✅ Good: "You are a React component refactoring specialist. Analyze components for hooks best practices, performance anti-patterns, and accessibility issues." </principle> </system_prompt_guidelines> <subagent_xml_structure> Subagent.md files are system prompts consumed only by Claude. Like skills and slash commands, they should use pure XML structure for optimal parsing and token efficiency. <recommended_tags> Common tags for subagent structure: - `<role>` - Who the subagent is and what it does - `<constraints>` - Hard rules (NEVER/MUST/ALWAYS) - `<focus_areas>` - What to prioritize - `<workflow>` - Step-by-step process - `<output_format>` - How to structure deliverables - `<success_criteria>` - Completion criteria - `<validation>` - How to verify work </recommended_tags> <intelligence_rules> **Simple subagents** (single focused task): - Use role + constraints + workflow minimum - Example: code-reviewer, test-runner **Medium subagents** (multi-step process): - Add workflow steps, output_format, success_criteria - Example: api-researcher, documentation-generator **Complex subagents** (research + generation + validation): - Add all tags as appropriate including validation, examples - Example: mcp-api-researcher, comprehensive-auditor </intelligence_rules> <critical_rule> **Remove ALL markdown headings (##, ###) from subagent body.** Use semantic XML tags instead. Keep markdown formatting WITHIN content (bold, italic, lists, code blocks, links). For XML structure principles and token efficiency details, see @skills/create-agent-skills/references/use-xml-tags.md - the same principles apply to subagents. </critical_rule> </subagent_xml_structure> <invocation> <automatic> Claude automatically selects subagents based on the `description` field when it matches the current task. </automatic> <explicit> You can explicitly invoke a subagent: ``` > Use the code-reviewer subagent to check my recent changes ``` ``` > Have the test-writer subagent create tests for the new API endpoints ``` </explicit> </invocation> <management> <using_agents_command> Run `/agents` for an interactive interface to: - View all available subagents - Create new subagents - Edit existing subagents - Delete custom subagents </using_agents_command> <manual_editing> You can also edit subagent files directly: - Project: `.claude/agents/subagent-name.md` - User: `~/.claude/agents/subagent-name.md` </manual_editing> </management> <reference> **Core references**: **Subagent usage and configuration**: [references/subagents.md](references/subagents.md) - File format and configuration - Model selection (Sonnet 4.5 + Haiku 4.5 orchestration) - Tool security and least privilege - Prompt caching optimization - Complete examples **Writing effective prompts**: [references/writing-subagent-prompts.md](references/writing-subagent-prompts.md) - Core principles and XML structure - Description fie
Related in AI Agents
skill-development
IncludedComprehensive meta-skill for creating, managing, validating, auditing, and distributing Claude Code skills and slash commands (unified in v2.1.3+). Provides skill templates, creation workflows, validation patterns, audit checklists, naming conventions, YAML frontmatter guidance, progressive disclosure examples, and best practices lookup. Use when creating new skills, validating existing skills, auditing skill quality, understanding skill architecture, needing skill templates, learning about YAML frontmatter requirements, progressive disclosure patterns, tool restrictions (allowed-tools), skill composition, skill naming conventions, troubleshooting skill activation issues, creating custom slash commands, configuring command frontmatter, using command arguments ($ARGUMENTS, $1, $2), bash execution in commands, file references in commands, command namespacing, plugin commands, MCP slash commands, Skill tool configuration, or deciding between skills vs slash commands. Delegates to docs-management skill for official documentation.
reprompter
IncludedTransform messy prompts into well-structured, effective prompts — single or multi-agent. Use when: "reprompt", "reprompt this", "clean up this prompt", "structure my prompt", rough text needing XML tags and best practices, "reprompter teams", "repromptception", "run with quality", "smart run", "smart agents", multi-agent tasks, audits, parallel work, anything going to agent teams. Don't use when: simple Q&A, pure chat, immediate execution-only tasks. See "Don't Use When" section for details. Outputs: Structured XML/Markdown prompt, quality score (before/after), optional team brief + per-agent sub-prompts, agent team output files. Success criteria: Single mode quality score ≥ 7/10; Repromptception per-agent prompt quality score 8+/10; all required sections present, actionable and specific.
adaptive-compaction
IncludedAdaptive add-on policy and recovery layer that decides WHEN to compact, prune, snapshot, or fork -- replacing fixed-percent auto-compaction across Claude Code, Codex, and MCP-capable hosts. Trigger on auto-compact timing or damage: "when should I compact", "is it safe to compact now or start a fresh session", "auto-compact fires too early/mid-task", "switching to an unrelated task but the window still has space", "context rot", "answers get worse the longer the session runs", "the agent forgot the plan or my decisions after it summarized", "add a layer on top that manages context without changing the agent", raising autoCompactWindow to give the policy room, or installing/tuning a cross-tool compaction policy or PreCompact hook -- even when "compaction" is never said but the problem is context-window pressure or post-summarization memory loss. Do NOT use to summarize a conversation, build RAG, write a summarization prompt (decides WHEN not HOW), or answer max-context-length trivia.
agent-skill-creator
IncludedCreate cross-platform agent skills from workflow descriptions. Activates when users ask to create an agent, automate a repetitive workflow, create a custom skill, or need advanced agent creation. Triggers on phrases like create agent for, automate workflow, create skill for, every day I have to, daily I need to, turn process into agent, need to automate, create a cross-platform skill, validate this skill, export this skill, migrate this skill. Supports single skills, multi-agent suites, transcript processing, template-based creation, interactive configuration, cross-platform export, and spec validation.
llm-wiki
IncludedUse when building or maintaining a persistent personal knowledge base (second brain) in Obsidian where an LLM incrementally ingests sources, updates entity/concept pages, maintains cross-references, and keeps a synthesis current. Triggers include "second brain", "Obsidian wiki", "personal knowledge management", "ingest this paper/article/book", "build a research wiki", "compound knowledge", "Memex", or whenever the user wants knowledge to accumulate across sessions instead of being re-derived by RAG on every query.
skill-master
IncludedAgent Skills authoring, evaluation, and optimization. Create, edit, validate, benchmark, and improve skills following the agentskills.io specification. Use when designing SKILL.md files, structuring skill folders (references, scripts, assets), ingesting external documentation into skills, running trigger evals, benchmarking skill quality, optimizing descriptions, or performing blind A/B comparisons. Keywords: agentskills.io, SKILL.md, skill authoring, eval, benchmark, trigger optimization.