claude-agent-development

Claude Agent Development

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "claude-agent-development" with this command: npx skills add outfitter-dev/agents/outfitter-dev-agents-claude-agent-development

Claude Agent Development

Create and validate specialized subagents that extend Claude Code with focused expertise.

Agents vs Skills

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.

Quick Start

Using Templates

Copy a template from templates/ :

Template Use When

basic.md

Simple agents with focused expertise

advanced.md

Full-featured agents with all config options

Scaffolding

./scripts/scaffold-agent.sh security-reviewer -t reviewer

Workflow Overview

  • Discovery - Define purpose, scope, and triggers

  • Design - Choose archetype and configuration

  • Implementation - Write frontmatter and instructions

  • Validation - Verify against quality standards

Phase 1: Discovery

Before writing code, clarify:

  • Purpose: What specialized expertise does this agent provide?

  • Triggers: What keywords/phrases should invoke it?

  • Scope: What does it do? What does it NOT do?

  • Location: Personal (~/.claude/agents/ ), project (agents/ ), or plugin?

Key questions:

  • Is this a specialized role or a general capability? (Role = agent, Capability = skill)

  • What user phrases should trigger this agent?

  • What tools does it need access to?

Phase 2: Design

Agent Archetypes

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.

Frontmatter Schema


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 Selection

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

Tool Configuration

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.

Phase 3: Implementation

Agent File Structure


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

Description Guidelines

Descriptions are the most critical field for agent discovery:

  • Start with trigger conditions: "Use this agent when..."

  • Include 3-5 trigger keywords: specific terms users would say

  • Add 2-3 examples: showing user request -> assistant delegation

  • Be specific: avoid vague descriptions like "helps with code"

Best Practices

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.

Phase 4: Validation

After creating an agent, validate against these checklists.

YAML Frontmatter Checks

  • Opens with --- on line 1

  • Closes with --- before content

  • name present and matches filename (without .md )

  • description present and non-empty

  • Uses spaces (not tabs) for indentation

  • tools uses comma-separated valid tool names

  • model is valid: sonnet , opus , haiku , or inherit

Naming Conventions

  • Kebab-case (lowercase-with-hyphens)

  • Follows [role]-[specialty] or [specialty] pattern

  • Specific, not generic

  • Concise (1-3 words, max 4)

Good: code-reviewer , test-runner , security-auditor

Bad: helper , my-agent , the-best-agent

Description Quality

  • WHAT: Explains what the agent does

  • WHEN: States when to invoke it

  • TRIGGERS: Includes 3-5 trigger keywords

  • EXAMPLES: Has 2-3 example conversations

  • Specific about agent's purpose (not vague)

  • Clear about scope

Anti-patterns:

  • "Helps with code" - too vague

  • No trigger conditions

  • Missing keywords

System Prompt Quality

  • Clear role definition

  • Step-by-step process

  • Key practices or guidelines

  • Output format specification

  • Specific and actionable instructions

  • Constraints (what NOT to do)

  • Single responsibility focus

Anti-patterns:

  • "You are helpful" - too vague

  • No process defined

  • Missing constraints

  • Scope creep

Tool Configuration

  • Field name is tools: (not allowed-tools: )

  • Comma-separated list

  • Tool names correctly spelled and case-sensitive

  • Includes baseline tools if restricting: Glob, Grep, Read, Skill, Task, TodoWrite

  • Tools appropriate for agent's purpose

Common 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)

Validation Report Format

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]

Agent Scopes

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.

Testing Agents

Manual Testing

  • Create agent file in agents/

  • In Claude Code: "Use the [agent-name] agent to [task]"

  • Claude invokes via Task tool

  • Review results

Verify Discovery

Agents are loaded from:

  • ~/.claude/agents/ (personal)

  • ./agents/ (project)

  • Plugins (installed)

Debug with: claude --debug

Troubleshooting

Agent Not Being Invoked

  • Check file location: agents/agent-name.md

  • Validate YAML frontmatter syntax

  • Make description more specific with trigger keywords

  • Add example conversations

Wrong Agent Invoked

  • Make description more distinct

  • Add specific trigger keywords

  • Include negative examples (what NOT to use it for)

Agent Has Wrong Tools

Prefer model: inherit to use parent's tool access. Only specify tools: when agent needs different access.

References

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.

Related Skills

  • skills-development: Create Skills (different from agents)

  • claude-plugin-development: Bundle agents into plugins

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

codebase-recon

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

graphite-stacks

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

code-review

No summary provided by upstream source.

Repository SourceNeeds Review