AgentSkillsCN

Agents

适用于用户提出创建自定义代理、启动自定义代理、专用代理,或询问代理个性、可用特质、代理声音等情况。负责自定义代理的创建、个性分配、声音映射以及并行代理编排。

SKILL.md
--- frontmatter
name: Agents
description: USE WHEN user says create custom agents, spin up custom agents, specialized agents, OR asks for agent personalities, available traits, agent voices. Handles custom agent creation, personality assignment, voice mapping, and parallel agent orchestration.

🚨 MANDATORY: Voice Notification (REQUIRED BEFORE ANY ACTION)

You MUST send this notification BEFORE doing anything else when this skill is invoked.

  1. Send voice notification:

    bash
    curl -s -X POST http://localhost:8888/notify \
      -H "Content-Type: application/json" \
      -d '{"message": "Running the WORKFLOWNAME workflow in the Agents skill to ACTION"}' \
      > /dev/null 2>&1 &
    
  2. Output text notification:

    code
    Running the **WorkflowName** workflow in the **Agents** skill to ACTION...
    

This is not optional. Execute this curl command immediately upon skill invocation.

Agents - Custom Agent Composition System

Auto-routes when user mentions custom agents, agent creation, or specialized personalities.

Configuration: Base + User Merge

The Agents skill uses the standard PAI SYSTEM/USER two-tier pattern:

LocationPurposeUpdates With PAI?
Data/Traits.yamlBase traits, example voicesYes
USER/SKILLCUSTOMIZATIONS/Agents/Traits.yamlYour voices, prosody, agentsNo

How it works: ComposeAgent.ts loads base traits, then merges user customizations over them. Your customizations are never overwritten by PAI updates.

User Customization Directory

Create your customizations at:

code
~/.claude/skills/PAI/USER/SKILLCUSTOMIZATIONS/Agents/
├── Traits.yaml       # Your traits, voices, prosody settings
├── NamedAgents.md    # Your named agent backstories (optional)
└── VoiceConfig.json  # Voice server configuration (optional)

Voice Prosody Settings

Each voice can have prosody settings that control how it sounds. These are passed to ElevenLabs API.

Prosody Parameters

ParameterRangeDefaultEffect
stability0.0-1.00.5Low = expressive/varied, High = consistent/monotone
similarity_boost0.0-1.00.75Voice identity preservation
style0.0-1.00.0Style exaggeration (higher = more dramatic)
speed0.7-1.21.0Speech rate
use_speaker_boostbooleantrueEnhanced clarity (adds latency)

Example Voice Configuration

In your USER/SKILLCUSTOMIZATIONS/Agents/Traits.yaml:

yaml
voice_mappings:
  voice_registry:
    # Add a new voice with full prosody settings
    MyCustomVoice:
      voice_id: "your-elevenlabs-voice-id"
      characteristics: ["energetic", "warm", "professional"]
      description: "Custom voice for enthusiastic agents"
      prosody:
        stability: 0.40
        similarity_boost: 0.75
        style: 0.30
        speed: 1.05
        use_speaker_boost: true

    # Override prosody for an existing base voice
    ExampleVoice:
      prosody:
        stability: 0.65
        style: 0.10
        speed: 0.92

Personality → Prosody Guidelines

PersonalitystabilitystylespeedRationale
Skeptical0.600.100.95Measured, precise
Enthusiastic0.350.401.10High energy
Analytical0.650.080.95Clear, structured
Bold0.450.351.05Confident, dynamic
Cautious0.700.050.90Careful, deliberate

Overview

The Agents skill is a complete agent composition and management system:

  • Dynamic agent composition from traits (expertise + personality + approach)
  • Voice mappings with full prosody control
  • Custom agent creation with unique voices
  • Parallel agent orchestration patterns

Workflow Routing

Available Workflows:

  • CREATECUSTOMAGENT - Create specialized custom agents → Workflows/CreateCustomAgent.md
  • LISTTRAITS - Show available agent traits → Workflows/ListTraits.md
  • SPAWNPARALLEL - Launch parallel agents → Workflows/SpawnParallelAgents.md

Route Triggers

CRITICAL: The word "custom" is the KEY trigger for unique agent identities:

User SaysWhat to UseWhy
"custom agents", "create custom agents"ComposeAgent + general-purposeUnique personalities, voices, colors
"agents", "launch agents", "bunch of agents"SpawnParallel workflowSame identity, parallel grunt work
"use [named agent]"Named agentPre-defined personality from USER config

NEVER use static agent types (Intern, Architect, Engineer, etc.) for custom agents.

Components

Data

Traits.yaml (Data/Traits.yaml) - Base configuration:

  • Core expertise areas: security, technical, research
  • Core personalities: skeptical, analytical, enthusiastic
  • Core approaches: thorough, rapid, systematic
  • Example voice mappings with prosody

Tools

ComposeAgent.ts (Tools/ComposeAgent.ts)

  • Dynamic agent composition engine
  • Merges base + user configurations
  • Outputs complete agent prompt with voice settings
bash
# Usage examples
bun run ~/.claude/skills/Agents/Tools/ComposeAgent.ts --task "Review security"
bun run ~/.claude/skills/Agents/Tools/ComposeAgent.ts --traits "security,skeptical,thorough"
bun run ~/.claude/skills/Agents/Tools/ComposeAgent.ts --list
bun run ~/.claude/skills/Agents/Tools/ComposeAgent.ts --output json

JSON output includes:

json
{
  "name": "Security Expert Skeptical Thorough",
  "voice": "ExampleVoice",
  "voice_id": "YOUR_VOICE_ID_HERE",
  "voice_settings": {
    "stability": 0.70,
    "similarity_boost": 0.85,
    "style": 0.05,
    "speed": 0.95,
    "use_speaker_boost": true
  },
  "prompt": "..."
}

Templates

DynamicAgent.hbs (Templates/DynamicAgent.hbs)

  • Handlebars template for dynamic agent prompts
  • Composes: expertise + personality + approach + voice assignment
  • Includes operational guidelines and response format

Architecture

Hybrid Agent Model

TypeDefinitionBest For
Named AgentsPersistent identities defined in USER configRecurring work, relationships
Dynamic AgentsTask-specific specialists composed from traitsOne-off tasks, parallel work

The Agent Spectrum

code
┌─────────────────────────────────────────────────────────────────────┐
│   NAMED AGENTS          HYBRID USE          DYNAMIC AGENTS          │
│   (Relationship)        (Best of Both)      (Task-Specific)         │
├──────────────────────────────────────────────────────────────────────┤
│ Defined in USER     "Security expert       Ephemeral specialist     │
│ NamedAgents.md      with [named agent]'s   composed from traits     │
│                      skepticism"                                     │
└─────────────────────────────────────────────────────────────────────┘

Examples

Example 1: Create custom agents

code
User: "Spin up 3 custom security agents"
→ Invokes CREATECUSTOMAGENT workflow
→ Runs ComposeAgent 3 times with DIFFERENT trait combinations
→ Each agent gets unique personality + matched voice + prosody
→ Launches agents in parallel

Example 2: List available traits

code
User: "What agent personalities can you create?"
→ Invokes LISTTRAITS workflow
→ Shows merged base + user traits
→ Displays voices with prosody settings

Extending the Skill

Adding Your Own Traits

In USER/SKILLCUSTOMIZATIONS/Agents/Traits.yaml:

yaml
# Add new expertise areas
expertise:
  marketing:
    name: "Marketing Expert"
    description: "Brand strategy, campaigns, market positioning"
    keywords:
      - marketing
      - brand
      - campaign
      - positioning

# Add new personalities
personality:
  visionary:
    name: "Visionary"
    description: "Forward-thinking, sees the big picture"
    prompt_fragment: |
      You think in terms of future possibilities and long-term vision.
      Connect today's work to tomorrow's potential.

Adding Named Agents

In USER/SKILLCUSTOMIZATIONS/Agents/NamedAgents.md:

markdown
## Alex - The Strategist

**Voice ID:** your-voice-id
**Prosody:** stability: 0.55, style: 0.20, speed: 0.95

Alex is a strategic thinker who sees patterns others miss...

Model Selection

Task TypeModelSpeed
Grunt work, simple checkshaiku10-20x faster
Standard analysis, researchsonnetBalanced
Deep reasoning, architectureopusMaximum quality

Version History

  • v2.0.0 (2026-01): Restructured to base + user merge pattern, added prosody support
  • v1.0.0 (2025-12): Initial creation