Output format·Developer Tools & Repos·v0.1.0

Agent Development for Claude Code Plugins

This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use…

You say
Install this skill Read the source first Free Written by anthropics · unverified publisher
Context cost
17.6k tokensestimated from the bundle, loaded when it triggers
Bundle
7 files · 70.2 kB1 script among them — read before you run
Licence
Source-availablefree to use
Last change
v0.1.0
Servers it uses
Noneruns standalone

What it does

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.

Installed, it changes the agent in these ways.

What this skill changes about the agent is not written down here yet. The listing was collected from its source, and the description is in its own SKILL.md.

Output format

Produces one artefact, exactly shaped.

developer toolsagent

The skill itself

This is the whole product. A skill is instructions the model reads, so there is nothing behind the listing you cannot see first — the front matter loads with every session, and the body below it loads when the skill triggers.

SKILL.md10.4 kB · 416 lines
--- name: Agent Development description: 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. version: 0.1.0 ---
7# Agent Development for Claude Code Plugins
8
9## Overview
10
11Agents are autonomous subprocesses that handle complex, multi-step tasks independently. Understanding agent structure, triggering conditions, and system prompt design enables creating powerful autonomous capabilities.
12
13**Key concepts:**
14- Agents are FOR autonomous work, commands are FOR user-initiated actions
15- Markdown file format with YAML frontmatter
16- Triggering via description field with examples
17- System prompt defines agent behavior
18- Model and color customization
19
20## Agent File Structure
21
22### Complete Format
23
24```markdown
25---
26name: agent-identifier
27description: Use this agent when [triggering conditions]. Examples:
28
29<example>
30Context: [Situation description]
31user: "[User request]"
32assistant: "[How assistant should respond and use this agent]"
33<commentary>
34[Why this agent should be triggered]
35</commentary>
36</example>
37
38<example>
39[Additional example...]
40</example>
41
42model: inherit
43color: blue
44tools: ["Read", "Write", "Grep"]
45---
46
47You are [agent role description]...
48
49**Your Core Responsibilities:**
501. [Responsibility 1]
512. [Responsibility 2]
52
53**Analysis Process:**
54[Step-by-step workflow]
55
56**Output Format:**
57[What to return]
58```
59
60## Frontmatter Fields
61
62### name (required)
63
64Agent identifier used for namespacing and invocation.
65
66**Format:** lowercase, numbers, hyphens only
67**Length:** 3-50 characters
68**Pattern:** Must start and end with alphanumeric
69
70**Good examples:**
71- code-reviewer
72- test-generator
73- api-docs-writer
74- security-analyzer
75
76**Bad examples:**
77- helper (too generic)
78- -agent- (starts/ends with hyphen)
79- my_agent (underscores not allowed)
80- ag (too short, < 3 chars)
81
82### description (required)
83
84Defines when Claude should trigger this agent. **This is the most critical field.**
85
86**Must include:**
871. Triggering conditions ("Use this agent when...")
882. Multiple <example> blocks showing usage
893. Context, user request, and assistant response in each example
904. <commentary> explaining why agent triggers
91
92**Format:**
93```
94Use this agent when [conditions]. Examples:
95
96<example>
97Context: [Scenario description]
98user: "[What user says]"
99assistant: "[How Claude should respond]"
100<commentary>
101[Why this agent is appropriate]
102</commentary>
103</example>
104
105[More examples...]
106```
107
108**Best practices:**
109- Include 2-4 concrete examples
110- Show proactive and reactive triggering
111- Cover different phrasings of same intent
112- Explain reasoning in commentary
113- Be specific about when NOT to use the agent
114
115### model (required)
116
117Which model the agent should use.
118
119**Options:**
120- inherit - Use same model as parent (recommended)
121- sonnet - Claude Sonnet (balanced)
122- opus - Claude Opus (most capable, expensive)
123- haiku - Claude Haiku (fast, cheap)
124
125**Recommendation:** Use inherit unless agent needs specific model capabilities.
126
127### color (required)
128
129Visual identifier for agent in UI.
130
131**Options:** blue, cyan, green, yellow, magenta, red
132
133**Guidelines:**
134- Choose distinct colors for different agents in same plugin
135- Use consistent colors for similar agent types
136- Blue/cyan: Analysis, review
137- Green: Success-oriented tasks
138- Yellow: Caution, validation
139- Red: Critical, security
140- Magenta: Creative, generation
141
142### tools (optional)
143
144Restrict agent to specific tools.
145
146**Format:** Array of tool names
147
148```yaml
149tools: ["Read", "Write", "Grep", "Bash"]
150```
151
152**Default:** If omitted, agent has access to all tools
153
154**Best practice:** Limit tools to minimum needed (principle of least privilege)
155
156**Common tool sets:**
157- Read-only analysis: ["Read", "Grep", "Glob"]
158- Code generation: ["Read", "Write", "Grep"]
159- Testing: ["Read", "Bash", "Grep"]
160- Full access: Omit field or use ["*"]
161
162## System Prompt Design
163
164The markdown body becomes the agent's system prompt. Write in second person, addressing the agent directly.
165
166### Structure
167
168**Standard template:**
169```markdown
170You are [role] specializing in [domain].
171
172**Your Core Responsibilities:**
1731. [Primary responsibility]
1742. [Secondary responsibility]
1753. [Additional responsibilities...]
176
177**Analysis Process:**
1781. [Step one]
1792. [Step two]
1803. [Step three]
181[...]
182
183**Quality Standards:**
184- [Standard 1]
185- [Standard 2]
186
187**Output Format:**
188Provide results in this format:
189- [What to include]
190- [How to structure]
191
192**Edge Cases:**
193Handle these situations:
194- [Edge case 1]: [How to handle]
195- [Edge case 2]: [How to handle]
196```
197
198### Best Practices
199
200✅ **DO:**
201- Write in second person ("You are...", "You will...")
202- Be specific about responsibilities
203- Provide step-by-step process
204- Define output format
205- Include quality standards
206- Address edge cases
207- Keep under 10,000 characters
208
209❌ **DON'T:**
210- Write in first person ("I am...", "I will...")
211- Be vague or generic
212- Omit process steps
213- Leave output format undefined
214- Skip quality guidance
215- Ignore error cases
216
217## Creating Agents
218
219### Method 1: AI-Assisted Generation
220
221Use this prompt pattern (extracted from Claude Code):
222
223```
224Create an agent configuration based on this request: "[YOUR DESCRIPTION]"
225
226Requirements:
2271. Extract core intent and responsibilities
2282. Design expert persona for the domain
2293. Create comprehensive system prompt with:
230 - Clear behavioral boundaries
231 - Specific methodologies
232 - Edge case handling
233 - Output format
2344. Create identifier (lowercase, hyphens, 3-50 chars)
2355. Write description with triggering conditions
2366. Include 2-3 <example> blocks showing when to use
237
238Return JSON with:
239{
240 "identifier": "agent-name",
241 "whenToUse": "Use this agent when... Examples: <example>...</example>",
242 "systemPrompt": "You are..."
243}
244```
245
246Then convert to agent file format with frontmatter.
247
248See examples/agent-creation-prompt.md for complete template.
249
250### Method 2: Manual Creation
251
2521. Choose agent identifier (3-50 chars, lowercase, hyphens)
2532. Write description with examples
2543. Select model (usually inherit)
2554. Choose color for visual identification
2565. Define tools (if restricting access)
2576. Write system prompt with structure above
2587. Save as agents/agent-name.md
259
260## Validation Rules
261
262### Identifier Validation
263
264```
265✅ Valid: code-reviewer, test-gen, api-analyzer-v2
266❌ Invalid: ag (too short), -start (starts with hyphen), my_agent (underscore)
267```
268
269**Rules:**
270- 3-50 characters
271- Lowercase letters, numbers, hyphens only
272- Must start and end with alphanumeric
273- No underscores, spaces, or special characters
274
275### Description Validation
276
277**Length:** 10-5,000 characters
278**Must include:** Triggering conditions and examples
279**Best:** 200-1,000 characters with 2-4 examples
280
281### System Prompt Validation
282
283**Length:** 20-10,000 characters
284**Best:** 500-3,000 characters
285**Structure:** Clear responsibilities, process, output format
286
287## Agent Organization
288
289### Plugin Agents Directory
290
291```
292plugin-name/
293└── agents/
294 ├── analyzer.md
295 ├── reviewer.md
296 └── generator.md
297```
298
299All .md files in agents/ are auto-discovered.
300
301### Namespacing
302
303Agents are namespaced automatically:
304- Single plugin: agent-name
305- With subdirectories: plugin:subdir:agent-name
306
307## Testing Agents
308
309### Test Triggering
310
311Create test scenarios to verify agent triggers correctly:
312
3131. Write agent with specific triggering examples
3142. Use similar phrasing to examples in test
3153. Check Claude loads the agent
3164. Verify agent provides expected functionality
317
318### Test System Prompt
319
320Ensure system prompt is complete:
321
3221. Give agent typical task
3232. Check it follows process steps
3243. Verify output format is correct
3254. Test edge cases mentioned in prompt
3265. Confirm quality standards are met
327
328## Quick Reference
329
330### Minimal Agent
331
332```markdown
333---
334name: simple-agent
335description: Use this agent when... Examples: <example>...</example>
336model: inherit
337color: blue
338---
339
340You are an agent that [does X].
341
342Process:
3431. [Step 1]
3442. [Step 2]
345
346Output: [What to provide]
347```
348
349### Frontmatter Fields Summary
350
351| Field | Required | Format | Example |
352|-------|----------|--------|---------|
353| name | Yes | lowercase-hyphens | code-reviewer |
354| description | Yes | Text + examples | Use when... <example>... |
355| model | Yes | inherit/sonnet/opus/haiku | inherit |
356| color | Yes | Color name | blue |
357| tools | No | Array of tool names | ["Read", "Grep"] |
358
359### Best Practices
360
361**DO:**
362- ✅ Include 2-4 concrete examples in description
363- ✅ Write specific triggering conditions
364- ✅ Use inherit for model unless specific need
365- ✅ Choose appropriate tools (least privilege)
366- ✅ Write clear, structured system prompts
367- ✅ Test agent triggering thoroughly
368
369**DON'T:**
370- ❌ Use generic descriptions without examples
371- ❌ Omit triggering conditions
372- ❌ Give all agents same color
373- ❌ Grant unnecessary tool access
374- ❌ Write vague system prompts
375- ❌ Skip testing
376
377## Additional Resources
378
379### Reference Files
380
381For detailed guidance, consult:
382
383- **references/system-prompt-design.md** - Complete system prompt patterns
384- **references/triggering-examples.md** - Example formats and best practices
385- **references/agent-creation-system-prompt.md** - The exact prompt from Claude Code
386
387### Example Files
388
389Working examples in examples/:
390
391- **agent-creation-prompt.md** - AI-assisted agent generation template
392- **complete-agent-examples.md** - Full agent examples for different use cases
393
394### Utility Scripts
395
396Development tools in scripts/:
397
398- **validate-agent.sh** - Validate agent file structure
399- **test-agent-trigger.sh** - Test if agent triggers correctly
400
401## Implementation Workflow
402
403To create an agent for a plugin:
404
4051. Define agent purpose and triggering conditions
4062. Choose creation method (AI-assisted or manual)
4073. Create agents/agent-name.md file
4084. Write frontmatter with all required fields
4095. Write system prompt following best practices
4106. Include 2-4 triggering examples in description
4117. Validate with scripts/validate-agent.sh
4128. Test triggering with real scenarios
4139. Document agent in plugin README
414
415Focus on clear triggering conditions and comprehensive system prompts for autonomous operation.
416
In the file
SKILL.md1,440 words
Files7
LicenceSource-available
Why you can read it

Nothing in a skill executes. The client loads the text and the model follows it, so a skill can be audited the way a runbook is — by reading it.

What it costs in context

Skills are not billed by the call. They are paid for in context: every token the instructions occupy is a token your code, your diff and your conversation cannot use. Here is what this one takes and when it takes it.

≈100
always loaded
The name and description, so the model knows the skill exists and when to reach for it.
17,450
on trigger
The instruction body and 6 supporting files, read only when the skill fires.
8.8%
of a 200k window
Ten skills this size would take about 88% of the window before you open a file.
050k100k150k200k context window

17.6k tokens, estimated from the bundle at four bytes to the token, held for the rest of the session once it triggers. Heavy. Teams tend to install this one per project rather than globally, and load it only when the job comes up.

Servers bill, skills cost

A server charges by the month. A skill charges once per session, in context, and then keeps charging it for as long as the session lives.

Before and after

The same question, put to the same model twice: once as it comes, and once with these instructions loaded.

No worked example has been published for this skill yet.

Adoption
Installsnone yet
Ratingno reviews yet

The procedure it runs

The procedure has not been published here. It is in the skill’s own SKILL.md, which its author has not sent to the marketplace yet.

Prose, not code

These steps are written for a model to follow, not executed by a runtime. It can still be told to skip one, and it will say so when it does.

Servers it uses

None. This skill calls no MCP servers at all.

Everything it needs is in the instructions, so it works in a project with nothing connected — the model reads the file and changes how it works with what it can already reach.

It writes no files and reaches no network. All it changes is how the model reasons and writes.

What it asks for
Writes filesno
Network accessno

Read from the allowed-tools line of this skill’s own SKILL.md. A skill grants no permissions of its own — it can only ask for tools your client already has.

What it will not do

Every skill is narrow, and the useful ones say where they stop. These are the jobs this one is the wrong tool for.

What this skill is not for has not been published here. Nothing is implied by that: it is a section the author has not filled in.

What is in the bundle

7 files, 70.2 kB on disk. Mostly text — the instructions the model reads — with 1 script in it that your client would run only if the instructions tell it to.

  • SKILL.md10.4 kB
  • examples/agent-creation-prompt.md9.4 kB
  • examples/complete-agent-examples.md14.1 kB
  • references/agent-creation-system-prompt.md8.9 kB
  • references/system-prompt-design.md10.0 kB
  • references/triggering-examples.md11.6 kB
  • scripts/validate-agent.sh5.8 kB
What is not in it

A skill installs nothing and depends on nothing: it is a folder your client reads. This one carries 1 script beside the text, so the bundle is 7 files you can review in full before installing. The Source-available licence covers the templates and examples as well as the instructions.

Install

Installing copies the bundle into your project. Nothing runs at install time — the files sit on disk until the model reads them.

# Agent Development for Claude Code Plugins · 17.6k tokens when loaded npx mcprush@latest skill add anthropics/agent-development-for-claude-code-plugins

Writes to .claude/skills/agent-development-for-claude-code-plugins/ in the current project. Add --global to put it in your home directory instead, for every project.

Which clients pick it up on their own

A skill is a folder of text. A client with a skills folder reads it without being told; everywhere else the same text works, it is just handed to the model rather than found.

Claude Code.claude/skills/
Claude Desktop
ChatGPT
Cursor.cursor/skills/
VS Code.github/skills/
Codex CLI.agents/skills/
Gemini CLI.gemini/skills/
Grok.grok/skills/
Zed.agents/skills/
Windsurf.windsurf/skills/
Agent SDK.claude/skills/
HTTP / API
This release
Version0.1.0
Publishedno release date on file
PriceFree
Referenceanthropics/agent-development-for-claude-code-plugins

Versions

v0.1.0 is what is on the shelf; no release here carries a date. Instructions change more often than APIs do — a skill can be rewritten entirely without anything it depends on moving.

v0.1.0
  • No earlier releases have been published to the marketplace.
Pinning

Put anthropics/agent-development-for-claude-code-plugins@0.1.0 in the install command to hold this exact version. Without the suffix you get whatever is current the day you install, and nothing moves under you afterwards.

Reviews

no reviews yet · no installs yet

Nobody has reviewed this skill yet. The rating is the mean of the reviews written here, so there is none until somebody writes the first.

Who can post

Only accounts that have had the skill installed for fourteen days, so a review is written after living with it rather than after reading it. Publishers may reply once.

Publisher
Servers0
Claim this skill