skill_name: agent-provisioner activation_code: AGENT_PROVISIONER_V1 version: 1.0.0 phase: any prerequisites:
- Human available for agent design decisions
- Knowledge of domain for new agent outputs:
- Fully curated agent definition
- Curation session record
- Agent registered in appropriate category description: | MANDATORY workflow for creating new agents. Enforces -01-agent-formatting standards from inception, ensuring every new agent is properly designed, researched, and curated before deployment.
Agent Provisioner Skill
Purpose
This is the ONLY sanctioned way to create new agents in dev-system.
Creating agents without this skill results in:
- Missing knowledge source validation
- Unverified tier classification
- Incomplete MCP integration
- Poor instruction quality
- No curation record
Activation
/agent-provisioner
Parameters:
domain: {domain-description}
name: {proposed-agent-name}
category: {parent-category in -03-agents}
Or simply:
I need a new agent for {description}
Workflow Overview
┌─────────────────────────────────────────────────────────────────────────┐
│ AGENT PROVISIONING WORKFLOW │
├─────────────────────────────────────────────────────────────────────────┤
│ │
│ Step 1: DOMAIN ANALYSIS │
│ ├─ What domain does this agent cover? │
│ ├─ What would a PhD in this domain know? │
│ └─ What existing agents overlap? (avoid duplication) │
│ ▼ │
│ Step 2: TIER CLASSIFICATION │
│ ├─ Focused (~500 tokens) - Bounded, clear scope │
│ ├─ Expert (~1500 tokens) - Specialized domain work │
│ └─ PhD (~3000 tokens) - Deep, novel challenges │
│ ▼ │
│ Step 3: KNOWLEDGE RESEARCH │
│ ├─ Identify authoritative sources (specs, official docs) │
│ ├─ Use Firecrawl for deep research │
│ └─ Human adjudicates each source │
│ ▼ │
│ Step 4: IDENTITY DESIGN │
│ ├─ Interpretive lens (how agent thinks) │
│ ├─ Vocabulary calibration (15-20 terms) │
│ └─ Core principles and constraints │
│ ▼ │
│ Step 5: INSTRUCTION AUTHORING │
│ ├─ Always section (non-negotiables) │
│ ├─ Mode-specific instructions │
│ ├─ Never section (anti-patterns) │
│ └─ Specializations with deep knowledge │
│ ▼ │
│ Step 6: TOOLING & MCP │
│ ├─ Tool modes (audit, solution, research) │
│ ├─ MCP server selection │
│ └─ Proactive triggers │
│ ▼ │
│ Step 7: SYNTHESIS & VALIDATION │
│ ├─ Generate complete agent definition │
│ ├─ Validate against CURATION-CHECKLIST.md │
│ ├─ Human final review │
│ └─ Save to appropriate category │
│ │
└─────────────────────────────────────────────────────────────────────────┘
Step 1: Domain Analysis
Present domain analysis interface:
╔═══════════════════════════════════════════════════════════════════════╗
║ NEW AGENT: DOMAIN ANALYSIS ║
╠═══════════════════════════════════════════════════════════════════════╣
║ ║
║ Proposed Agent: {name} ║
║ Domain: {domain} ║
║ ║
║ ┌────────────────────────────────────────────────────────────────┐ ║
║ │ DOMAIN EXPERTISE AREAS │ ║
║ ├────────────────────────────────────────────────────────────────┤ ║
║ │ 1. {expertise-area-1} │ ║
║ │ 2. {expertise-area-2} │ ║
║ │ 3. {expertise-area-3} │ ║
║ │ 4. {expertise-area-4} │ ║
║ └────────────────────────────────────────────────────────────────┘ ║
║ ║
║ ┌────────────────────────────────────────────────────────────────┐ ║
║ │ RELATED EXISTING AGENTS │ ║
║ ├────────────────────────────────────────────────────────────────┤ ║
║ │ • {existing-agent-1}: {overlap-description} │ ║
║ │ • {existing-agent-2}: {overlap-description} │ ║
║ │ → Differentiation: {how new agent differs} │ ║
║ └────────────────────────────────────────────────────────────────┘ ║
║ ║
║ ┌────────────────────────────────────────────────────────────────┐ ║
║ │ RECOMMENDED CATEGORY │ ║
║ ├────────────────────────────────────────────────────────────────┤ ║
║ │ agents/-03-agents/{category}/{subcategory}/ │ ║
║ └────────────────────────────────────────────────────────────────┘ ║
║ ║
╠═══════════════════════════════════════════════════════════════════════╣
║ [C] Confirm domain analysis ║
║ [E] Edit expertise areas ║
║ [R] Change recommended category ║
╚═══════════════════════════════════════════════════════════════════════╝
Overlap Detection
Before proceeding, search for existing agents with similar capabilities:
# Search existing agents
grep -r "domain:" agents/-03-agents/ | grep -i "{domain-keywords}"
grep -r "proactive_triggers:" agents/-03-agents/ | grep -i "{trigger-patterns}"
If significant overlap exists:
- Recommend extending existing agent instead
- Or clearly differentiate the new agent's unique value
Step 2: Tier Classification
Apply TIER-CLASSIFICATION.md criteria:
╔═══════════════════════════════════════════════════════════════════════╗
║ TIER CLASSIFICATION ║
╠═══════════════════════════════════════════════════════════════════════╣
║ ║
║ Based on domain analysis, this agent is classified as: ║
║ ║
║ ┌─────────────────────────────────────────────────────────────┐ ║
║ │ ██████████ EXPERT TIER │ ║
║ │ │ ║
║ │ Tokens: ~1500 │ ║
║ │ Instructions: 15-20 │ ║
║ │ Model: sonnet (default) | opus (if high-stakes) │ ║
║ └─────────────────────────────────────────────────────────────┘ ║
║ ║
║ Rationale: ║
║ • Domain requires specialized knowledge ║
║ • Multiple expertise areas identified ║
║ • Not a bounded/simple task (would be Focused) ║
║ • Not research-level/novel problem (would be PhD) ║
║ ║
╠═══════════════════════════════════════════════════════════════════════╣
║ [C] Confirm tier classification ║
║ [F] Change to Focused tier ║
║ [P] Change to PhD tier ║
╚═══════════════════════════════════════════════════════════════════════╝
Step 3: Knowledge Research
Delegate to knowledge research workflow:
╔═══════════════════════════════════════════════════════════════════════╗
║ KNOWLEDGE RESEARCH ║
╠═══════════════════════════════════════════════════════════════════════╣
║ ║
║ Researching authoritative sources for: {domain} ║
║ ║
║ What would a PhD in {domain} cite as canonical references? ║
║ ║
║ ┌────────────────────────────────────────────────────────────────┐ ║
║ │ RESEARCH STRATEGY │ ║
║ ├────────────────────────────────────────────────────────────────┤ ║
║ │ 1. Official specifications (IETF, IEEE, W3C, ISO) │ ║
║ │ 2. Vendor/maintainer documentation │ ║
║ │ 3. Academic papers (if applicable) │ ║
║ │ 4. Community best practices │ ║
║ └────────────────────────────────────────────────────────────────┘ ║
║ ║
║ Launching web-researcher skill for parallel discovery... ║
║ ║
╚═══════════════════════════════════════════════════════════════════════╝
For EACH discovered source, present for human adjudication (never bulk-add):
╔═══════════════════════════════════════════════════════════════════════╗
║ SOURCE ADJUDICATION (1 of N) ║
╠═══════════════════════════════════════════════════════════════════════╣
║ ║
║ Source: {source-title} ║
║ URL: {url} ║
║ Authority Tier: {1-5} ({tier-name}) ║
║ ║
║ Unique Value: ║
║ {what this provides that nothing else does} ║
║ ║
║ Materialization: URL | Local Excerpt | Embed ║
║ Rationale: {why this materialization} ║
║ ║
╠═══════════════════════════════════════════════════════════════════════╣
║ [A] Add to agent ║
║ [S] Skip this source ║
║ [D] Show source content ║
╚═══════════════════════════════════════════════════════════════════════╝
Step 4: Identity Design
Design the agent's interpretive lens and vocabulary:
╔═══════════════════════════════════════════════════════════════════════╗
║ IDENTITY DESIGN ║
╠═══════════════════════════════════════════════════════════════════════╣
║ ║
║ ┌────────────────────────────────────────────────────────────────┐ ║
║ │ INTERPRETIVE LENS │ ║
║ ├────────────────────────────────────────────────────────────────┤ ║
║ │ You interpret all {domain} work through a lens of │ ║
║ │ {interpretive-frame}—{how this shapes analysis and decisions}. │ ║
║ └────────────────────────────────────────────────────────────────┘ ║
║ ║
║ ┌────────────────────────────────────────────────────────────────┐ ║
║ │ VOCABULARY (15-20 domain terms) │ ║
║ ├────────────────────────────────────────────────────────────────┤ ║
║ │ {term-1}, {term-2}, {term-3}, {term-4}, {term-5}, │ ║
║ │ {term-6}, {term-7}, {term-8}, {term-9}, {term-10}, │ ║
║ │ {term-11}, {term-12}, {term-13}, {term-14}, {term-15} │ ║
║ └────────────────────────────────────────────────────────────────┘ ║
║ ║
╠═══════════════════════════════════════════════════════════════════════╣
║ [C] Confirm identity design ║
║ [E] Edit interpretive lens ║
║ [V] Edit vocabulary ║
╚═══════════════════════════════════════════════════════════════════════╝
Step 5: Instruction Authoring
Generate instructions following tier template:
╔═══════════════════════════════════════════════════════════════════════╗
║ INSTRUCTION AUTHORING ║
╠═══════════════════════════════════════════════════════════════════════╣
║ ║
║ Tier: Expert (~1500 tokens, 15-20 instructions) ║
║ ║
║ ┌────────────────────────────────────────────────────────────────┐ ║
║ │ ALWAYS SECTION (4-5 non-negotiable behaviors) │ ║
║ ├────────────────────────────────────────────────────────────────┤ ║
║ │ 1. {always-behavior-1} │ ║
║ │ 2. {always-behavior-2} │ ║
║ │ 3. {always-behavior-3} │ ║
║ │ 4. {always-behavior-4} │ ║
║ └────────────────────────────────────────────────────────────────┘ ║
║ ║
║ ┌────────────────────────────────────────────────────────────────┐ ║
║ │ NEVER SECTION (explicit anti-patterns) │ ║
║ ├────────────────────────────────────────────────────────────────┤ ║
║ │ - {never-1} │ ║
║ │ - {never-2} │ ║
║ │ - {never-3} │ ║
║ │ - {never-4} │ ║
║ └────────────────────────────────────────────────────────────────┘ ║
║ ║
╠═══════════════════════════════════════════════════════════════════════╣
║ [C] Confirm instructions ║
║ [E] Edit always section ║
║ [N] Edit never section ║
║ [M] Edit mode-specific instructions ║
╚═══════════════════════════════════════════════════════════════════════╝
Step 6: Tooling & MCP
Configure tools and MCP servers following MCP-INTEGRATION.md:
╔═══════════════════════════════════════════════════════════════════════╗
║ TOOLING & MCP CONFIGURATION ║
╠═══════════════════════════════════════════════════════════════════════╣
║ ║
║ Tool Modes: ║
║ audit: Read, Grep, Glob, Bash ║
║ solution: Read, Write, Edit, Grep, Glob, Bash ║
║ research: Read, Grep, Glob, Bash, WebSearch, WebFetch ║
║ default: {recommended-default} ║
║ ║
║ MCP Servers (based on domain): ║
║ ┌──────────────────────────────────────────────────────────────┐ ║
║ │ github │ ║
║ │ Purpose: Repository exploration and code examples │ ║
║ │ │ ║
║ │ {domain-specific-mcp} │ ║
║ │ Purpose: {what it provides} │ ║
║ └──────────────────────────────────────────────────────────────┘ ║
║ ║
║ Proactive Triggers: ║
║ - "{trigger-pattern-1}" ║
║ - "{trigger-pattern-2}" ║
║ - "{trigger-pattern-3}" ║
║ ║
╠═══════════════════════════════════════════════════════════════════════╣
║ [C] Confirm configuration ║
║ [T] Edit tool modes ║
║ [M] Edit MCP servers ║
║ [P] Edit proactive triggers ║
╚═══════════════════════════════════════════════════════════════════════╝
Step 7: Synthesis & Validation
Generate the complete agent and validate:
╔═══════════════════════════════════════════════════════════════════════╗
║ AGENT SYNTHESIS ║
╠═══════════════════════════════════════════════════════════════════════╣
║ ║
║ Generating complete agent definition... ║
║ ║
║ Validation Results: ║
║ ✓ Frontmatter complete (name, tier, model, tools, modes) ║
║ ✓ Identity section present ║
║ ✓ Instructions section present (18 instructions) ║
║ ✓ Never section present (6 anti-patterns) ║
║ ✓ Specializations defined (3 areas) ║
║ ✓ Knowledge sources documented (4 sources) ║
║ ✓ Output format specified ║
║ ✓ Token estimate: ~1450 (within Expert tier budget) ║
║ ║
║ Target Location: ║
║ agents/-03-agents/{category}/{subcategory}/{agent-name}.md ║
║ ║
╠═══════════════════════════════════════════════════════════════════════╣
║ [S] Save agent ║
║ [P] Preview full definition ║
║ [E] Edit before saving ║
╚═══════════════════════════════════════════════════════════════════════╝
Curation Record
After saving, create curation record:
{
"agent": "{agent-name}",
"file": "agents/-03-agents/{category}/{subcategory}/{agent-name}.md",
"created": "{timestamp}",
"provisioned_by": "agent-provisioner",
"tier": "expert",
"knowledge_sources": {
"count": 4,
"authority_tiers": [1, 2, 2, 3]
},
"human_adjudications": 12,
"curation_complete": true
}
Save to: .claude/curation-logs/{agent-name}.json
Signals
| Signal | Meaning |
|---|---|
AGENT_PROVISIONING_STARTED | New agent creation begun |
AGENT_DOMAIN_CONFIRMED | Domain analysis approved |
AGENT_TIER_CONFIRMED | Tier classification approved |
AGENT_KNOWLEDGE_COMPLETE | Knowledge research finished |
AGENT_IDENTITY_COMPLETE | Identity design approved |
AGENT_INSTRUCTIONS_COMPLETE | Instructions authored |
AGENT_PROVISIONED | Agent saved and registered |
Integration with Hooks
The agent-creation-validator.sh hook detects agents created outside this workflow
and flags them for curation. Setting AGENT_CURATION_ENFORCEMENT=BLOCK will
reject any agent file writes that don't have a curation record.
Never
- Skip knowledge research phase
- Bulk-add sources without human adjudication
- Create agents without proper tier classification
- Save agents without validation against CURATION-CHECKLIST.md
- Allow duplicate agents without explicit differentiation