This skill should be used when creating agents, writing agent frontmatter, configuring subagents, or when "create agent", "agent.md", "subagent", or "Task tool" are mentioned.
Creates specialized subagents with focused expertise for Claude Code workflows.
/plugin marketplace add outfitter-dev/agents/plugin install agent-kit@outfitterThis skill inherits all available tools. When active, it can use any tool Claude has access to.
EXAMPLES.mdreferences/advanced-features.mdreferences/agent-types.mdreferences/agent-vs-skill.mdreferences/discovery.mdreferences/frontmatter.mdreferences/patterns.mdreferences/performance.mdreferences/task-tool.mdreferences/todowrite.mdreferences/tools.mdscripts/scaffold-agent.shtemplates/advanced.mdtemplates/basic.mdCreate and validate specialized subagents that extend Claude Code with focused expertise.
Critical distinction:
| Aspect | Agents (This Skill) | Skills |
|---|---|---|
| Purpose | Specialized subagents with focused expertise | Capability packages with instructions |
| Invocation | Task tool (subagent_type parameter) | Automatic (model-triggered by context) |
| Location | agents/ directory | skills/ directory |
| Structure | Single .md file with frontmatter | Directory with SKILL.md + resources |
See agent-vs-skill.md for details.
Copy a template from templates/:
| Template | Use When |
|---|---|
basic.md | Simple agents with focused expertise |
advanced.md | Full-featured agents with all config options |
./scripts/scaffold-agent.sh security-reviewer -t reviewer
Before writing code, clarify:
~/.claude/agents/), project (agents/), or plugin?Key questions:
| Type | Purpose | Typical Tools |
|---|---|---|
| Analyzer | Examine without modifying | Glob, Grep, Read, Skill, Task, TodoWrite |
| Implementer | Build and modify code | Full access (inherit) |
| Reviewer | Provide feedback | Glob, Grep, Read, Skill, Task, TodoWrite |
| Tester | Create and manage tests | Glob, Grep, Read, Write, Edit, Bash, ... |
| Researcher | Find and synthesize info | ..., WebSearch, WebFetch |
| Deployer | Handle infrastructure | ..., Bash(kubectl *), Bash(docker *) |
See agent-types.md for details.
---
name: agent-name # Required: kebab-case, matches filename
description: | # Required: when to use + triggers + examples
Use this agent when [conditions]. Triggers on [keywords].
<example>
Context: [Situation]
user: "[User message]"
assistant: "I'll use the agent-name agent to [action]."
</example>
model: inherit # Optional: inherit|haiku|sonnet|opus
tools: Glob, Grep, Read # Optional: restrict tools (default: inherit all)
skills: tdd, debugging # Optional: skills to auto-load (NOT inherited)
permissionMode: default # Optional: default|acceptEdits|bypassPermissions
---
See frontmatter.md for complete schema.
| Model | When to Use |
|---|---|
inherit | Recommended default - adapts to parent context |
haiku | Fast exploration, simple tasks, low-latency |
sonnet | Balanced cost/capability (default if omitted) |
opus | Nuanced judgment, security/architecture review, irreversible decisions |
Philosophy: Don't over-restrict. Only limit tools when there's a specific safety reason.
Baseline (always include when restricting):
tools: Glob, Grep, Read, Skill, Task, TodoWrite
See tools.md for patterns.
---
name: security-reviewer
description: |
Use this agent for security vulnerability detection.
Triggers on security audits, OWASP, injection, XSS.
<example>
Context: User wants security review.
user: "Review auth code for vulnerabilities"
assistant: "I'll use the security-reviewer agent."
</example>
model: inherit
---
# Security Reviewer
You are a security expert specializing in [expertise].
## Expertise
- Domain expertise 1
- Domain expertise 2
## Process
### Step 1: [Phase Name]
- Action item
- Action item
### Step 2: [Phase Name]
- Action item
## Output Format
For each finding:
- **Severity**: critical|high|medium|low
- **Location**: file:line
- **Issue**: Description
- **Remediation**: How to fix
## Constraints
**Always:**
- Required behavior
**Never:**
- Prohibited action
Descriptions are the most critical field for agent discovery:
Single Responsibility
# Good: Focused
description: SQL injection vulnerability detector
# Bad: Too broad
description: Security expert handling all issues
Document Boundaries
## What I Don't Do
- I analyze, not implement fixes
- I review, not build from scratch
Consistent Output Format
Define structured output so results are predictable and parseable.
After creating an agent, validate against these checklists.
--- on line 1--- before contentname present and matches filename (without .md)description present and non-emptytools uses comma-separated valid tool namesmodel is valid: sonnet, opus, haiku, or inherit[role]-[specialty] or [specialty] patternGood: code-reviewer, test-runner, security-auditor
Bad: helper, my-agent, the-best-agent
Anti-patterns:
Anti-patterns:
tools: (not allowed-tools:)Glob, Grep, Read, Skill, Task, TodoWriteCommon patterns:
# Read-only
tools: Glob, Grep, Read, Skill, Task, TodoWrite
# Read-only + git
tools: Glob, Grep, Read, Skill, Task, TodoWrite, Bash(git show:*), Bash(git diff:*)
# Research
tools: Glob, Grep, Read, Skill, Task, TodoWrite, WebSearch, WebFetch
# Full access
# (omit field to inherit all)
# Agent Validation Report: [Agent Name]
## Summary
- **Status**: PASS | FAIL | WARNINGS
- **Location**: [path]
- **Issues**: [count critical] / [count warnings]
## Critical Issues (must fix)
1. [Issue with specific fix]
## Warnings (should fix)
1. [Issue with specific fix]
## Strengths
- [What's done well]
| Scope | Location | Priority | Visibility |
|---|---|---|---|
| Project | agents/ | Highest | Team via git |
| Personal | ~/.claude/agents/ | Medium | You only |
| Plugin | <plugin>/agents/ | Lowest | Plugin users |
Project agents override personal agents with the same name.
agents/Agents are loaded from:
~/.claude/agents/ (personal)./agents/ (project)Debug with: claude --debug
agents/agent-name.mdPrefer model: inherit to use parent's tool access. Only specify tools: when agent needs different access.
| Reference | Content |
|---|---|
| agent-vs-skill.md | Agents vs Skills distinction |
| frontmatter.md | YAML schema and fields |
| tools.md | Tool configuration patterns |
| task-tool.md | Task tool integration |
| discovery.md | How agents are found and loaded |
| agent-types.md | Archetypes: analysis, implementation, etc. |
| patterns.md | Best practices and multi-agent patterns |
| todowrite.md | TodoWrite patterns for agents |
| advanced-features.md | Resumable agents, CLI config |
See EXAMPLES.md for complete real-world agent examples.
See templates/ for starter templates.
This skill should be used when the user asks to "create a slash command", "add a command", "write a custom command", "define command arguments", "use command frontmatter", "organize commands", "create command with file references", "interactive command", "use AskUserQuestion in command", or needs guidance on slash command structure, YAML frontmatter fields, dynamic arguments, bash execution in commands, user interaction patterns, or command development best practices for Claude Code.
This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.