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", "disallowedTools", "block tools", "agent denylist", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.
View on GitHubsjnims/plugin-dev
plugin-dev
February 1, 2026
Select agents to install to:
npx add-skill https://github.com/sjnims/plugin-dev/blob/main/plugins/plugin-dev/skills/agent-development/SKILL.md -a claude-code --skill agent-developmentInstallation paths:
.claude/skills/agent-development/# Agent Development for Claude Code Plugins ## Overview Agents are autonomous subprocesses that handle complex, multi-step tasks independently. Master agent structure, triggering conditions, and system prompt design to create powerful autonomous capabilities. **Key concepts:** - Agents are FOR autonomous work, commands are FOR user-initiated actions - Markdown file format with YAML frontmatter - Triggering via description field with examples - System prompt defines agent behavior - Model and color customization > **Important - Field Name Difference:** Agents use `tools` to restrict tool access. Skills use `allowed-tools` for the same purpose. Don't confuse these when switching between component types. > > **Note on Official Documentation:** The `color` field documented in this skill is supported by Claude Code and is generated by the built-in `/agents` command, but it is not yet reflected in the [official sub-agents documentation](https://docs.claude.com/en/docs/claude-code/sub-agents). See [anthropics/claude-code#8501](https://github.com/anthropics/claude-code/issues/8501) for tracking. The [plugins-reference.md](https://docs.claude.com/en/docs/claude-code/plugins-reference) may show an older agent format using a `capabilities` field; for Claude Code plugins, prefer the structure documented in this skill which uses `tools` for tool restrictions. ## Quick Start Minimal working agent (copy-paste ready): ```markdown --- name: my-reviewer description: Use this agent when the user asks to review code. Examples: <example> Context: User wrote new code user: "Review my changes" assistant: "I'll use the my-reviewer agent to analyze the code." <commentary> Code review request triggers the agent. </commentary> </example> model: inherit color: blue --- You are a code reviewer. Analyze code for issues and provide feedback. **Process:** 1. Read the code 2. Identify issues 3. Provide recommendations **Output:** Summary with file:line references for each finding. ```
Issues Found: