Create New Agent
Quickly scaffold a new specialized subagent when current agents don't fit the task.
When to Use
- Need specialist for task not covered by existing 6 agents
- Task requires deep domain expertise
- Creating configuration/meta work agent
- Temporary specialist for one-time complex task
Current Agents (Don't Recreate)
- api-specialist (π‘) - Elysia + TypeBox
- database-specialist (π΅) - Drizzle ORM + PostgreSQL
- frontend-specialist (π’) - React + Vite + Three.js
- testing-specialist (π΄) - Bun Test + Playwright
- security-specialist (π ) - Privy Auth + Security
- config-specialist (βοΈ) - .claude configuration
Agent Template
---
name: [agent-name]
description: [EMOJI] [CAPS NAME] - [one-line description]. Use [PROACTIVELY/when] for [task types]. [What it handles].
tools: [Read, Write, Edit, Bash, Grep, Glob]
model: sonnet
---
# [EMOJI] [Agent Name]
[Detailed description of agent's purpose]
## Research-First Protocol β οΈ
**CRITICAL: Writing code is your LAST priority**
### Workflow Order (NEVER skip steps):
1. **RESEARCH** - Use deepwiki for ANY external libraries/frameworks (Claude's knowledge is outdated)
2. **GATHER CONTEXT** - Read existing files, Grep patterns, Glob to find code
3. **REUSE** - Triple check if existing code already does this
4. **VERIFY** - Ask user for clarification on ANY assumptions
5. **SIMPLIFY** - Keep it simple, never over-engineer
6. **CODE** - Only write new code after exhausting steps 1-5
### Before Writing ANY Code:
- β
Used deepwiki to research latest API/library patterns?
- β
Read all relevant existing files?
- β
Searched codebase for similar functionality?
- β
Asked user to verify approach?
- β
Confirmed simplest possible solution?
- β If ANY answer is NO, DO NOT write code yet
### Key Principles:
- **Reuse > Create** - Always prefer editing existing files over creating new ones
- **Simple > Complex** - Avoid over-engineering
- **Ask > Assume** - When uncertain, ask the user
- **Research > Memory** - Use deepwiki, don't trust outdated knowledge
## Responsibilities
1. **[Primary Responsibility]**
- [Specific task]
- [Specific task]
2. **[Secondary Responsibility]**
- [Specific task]
- [Specific task]
## Domain Expertise
- [Technology/framework 1]
- [Technology/framework 2]
- [Pattern/concept 1]
## When to Use This Agent
- [Trigger scenario 1]
- [Trigger scenario 2]
- [Trigger scenario 3]
## Workflow
1. [Step 1]
2. [Step 2]
3. [Step 3]
Example Agents to Create
Performance Specialist (β‘)
- Bundle optimization, lazy loading
- React.memo, useMemo, useCallback
- Three.js optimization, LOD, instancing
- Lighthouse scores, Core Web Vitals
Documentation Specialist (π)
- README updates, API docs
- Code comments, JSDoc
- Architecture diagrams
- Changelog maintenance
Migration Specialist (π)
- Express β Elysia migrations
- Database schema changes
- Dependency updates
- Breaking change handling
Creating the Agent
- Choose emoji icon
- Define clear domain boundaries
- List specific technologies/frameworks
- Include Research-First Protocol
- Specify tools needed
- Save to
.claude/agents/[name].md
After Creation
The agent is immediately available:
I need to [task] β Use [agent-name] agent
No restart needed - agents are loaded on demand.
Best Practices
- Specific domain - Don't make generic "helper" agents
- Clear triggers - When should this agent be used?
- Tool selection - Only tools needed for the domain
- Temporary OK - Can delete agent after one-time use
- Evolve existing - Update existing agents rather than create new ones when possible