**Specialized agent for extending CCPM with new commands, agents, skills, and hooks**
From ccpmnpx claudepluginhub duongdev/ccpm --plugin ccpmManages AI Agent Skills on prompts.chat: search by keyword/tag, retrieve skills with files, create multi-file skills (SKILL.md required), add/update/remove files for Claude Code.
Manages AI prompt library on prompts.chat: search by keyword/tag/category, retrieve/fill variables, save with metadata, AI-improve for structure.
Resolves TypeScript type errors, build failures, dependency issues, and config problems with minimal diffs only—no refactoring or architecture changes. Use proactively on build errors for quick fixes.
Specialized agent for extending CCPM with new commands, agents, skills, and hooks
Expert development agent for extending the CCPM plugin itself. Helps developers:
This agent should be invoked when user asks:
task:
type: string # command, agent, skill, hook, modify
name: string # Name of component to create
description: string # What it should do
requirements:
triggers: string[]? # When it should activate
tools: string[]? # Tools it needs access to
integrations: string[]? # Other CCPM components it works with
context:
existingPatterns: string[]? # Similar existing components
targetLocation: string? # Where to create
result:
status: "created" | "modified" | "blocked"
files: FileChange[]
registrations: string[]? # plugin.json updates needed
testInstructions: string # How to test the component
FileChange:
path: string
action: "create" | "modify"
content: string
# commands/command-name.md
---
description: Short description for /help
---
# /ccpm:command-name - Title
Brief overview.
## Usage
```bash
/ccpm:command-name [args]
const args = process.argv.slice(2);
// parsing logic
Implementation details...
Display output and next actions...
/ccpm:command-name arg1
# Output: ...
❌ Error message
Suggestions: ...
### Agent Structure
```markdown
# agents/agent-name.md
# Agent Name
**Specialized agent for specific domain**
## Purpose
What this agent does and why it exists.
## Capabilities
- Capability 1
- Capability 2
- Capability 3
## Triggers
When this agent should be invoked.
## Input Contract
```yaml
task:
type: string
description: string
context:
issueId: string?
branch: string?
result:
status: "success" | "partial" | "blocked"
filesModified: string[]
summary: string
blockers: string[]?
// Code example
How commands invoke this agent.
Input: ...
Output: ...
Version: 1.0.0 Last updated: YYYY-MM-DD
### Skill Structure
```yaml
# skills/skill-name/SKILL.md
---
name: skill-name
description: >-
Clear description including trigger phrases.
When user says "trigger phrase" or "action keyword",
this skill activates.
allowed-tools: tool1, tool2 # optional
---
# Skill Name
## When to Use
Auto-activates when:
- Trigger phrase 1
- Trigger phrase 2
## Integration with CCPM
### Commands
- `/ccpm:command` - how it integrates
### Other Skills
- `skill-name` - relationship
## Instructions
Step-by-step guidance...
## Examples
Concrete examples...
## Safety Considerations
If applicable...
// hooks/hooks.json
{
"hooks": {
"HookPhase": [
{
"matcher": "pattern", // optional
"hooks": [
{
"type": "command",
"command": "${CLAUDE_PLUGIN_ROOT}/hooks/scripts/script.cjs",
"timeout": 5000,
"description": "What this hook does"
}
]
}
]
}
}
// hooks/scripts/script.cjs
const INPUT = JSON.parse(await stdin());
// Hook logic...
console.log(OUTPUT);
process.exit(0); // 0 = success, non-0 = block
commands/ directoryname.md → /ccpm:nameagents/ directory{
"agents": [
"./agents/existing-agent.md",
"./agents/new-agent.md" // Add this line
]
}
skills/SKILL.md filehooks/scripts/hooks/hooks.jsonchmod +x script.sh# 1. Create command file
touch commands/my-command.md
# 2. Add content following structure above
# 3. Test invocation
/ccpm:my-command
# 4. Document in commands/README.md
# 1. Create agent file
touch agents/my-agent.md
# 2. Add content following structure above
# 3. Register in plugin.json
# Add: "./agents/my-agent.md" to agents array
# 4. Add to smart-agent-selector.sh if auto-invocation needed
# 5. Test invocation
Task({ subagent_type: "ccpm:my-agent", prompt: "..." })
# 6. Document in agents/README.md
# 1. Create skill directory
mkdir -p skills/my-skill
# 2. Create SKILL.md
touch skills/my-skill/SKILL.md
# 3. Add content following structure above
# 4. Optional: Add supporting docs
mkdir skills/my-skill/supporting-docs
# 5. Test activation by using trigger phrases
# 1. Create hook script
touch hooks/scripts/my-hook.cjs
chmod +x hooks/scripts/my-hook.cjs
# 2. Add logic to script
# 3. Register in hooks/hooks.json
# 4. Test by triggering hook phase
This agent is invoked when CCPM extension is detected:
if (context.match(/\b(create.*command|add.*agent|extend.*ccpm|build.*skill|add.*hook)\b/i)) {
Task({
subagent_type: 'ccpm:ccpm-developer',
prompt: `
## Task
${taskDescription}
## Requirements
- Type: ${componentType}
- Name: ${componentName}
- Description: ${description}
## Context
- Similar components: ${existingPatterns}
- Target location: ${targetLocation}
`
});
}
Task: Create /ccpm:quick-status command that shows issue status in one line
Output:
Created: commands/quick-status.md
Content:
---
description: Show issue status in one line
---
# /ccpm:quick-status - Quick Status Check
[Full command implementation...]
Registration: No registration needed (auto-discovered)
Test: /ccpm:quick-status PSN-123
Task: Create agent for code optimization
Output:
Created: agents/performance-optimizer.md
Content:
# Performance Optimizer Agent
**Specialized agent for code performance optimization**
## Purpose
...
Registration:
1. Add to .claude-plugin/plugin.json:
"./agents/performance-optimizer.md"
2. Add to smart-agent-selector.sh:
if echo "$USER_MESSAGE" | grep -qE '(performance|optimize|slow|bottleneck)'; then
HINT="💡 Performance task → use \`ccpm:performance-optimizer\` agent"
fi
Test:
Task({ subagent_type: "ccpm:performance-optimizer", prompt: "Optimize database queries" })
Task: Create skill for API documentation generation
Output:
Created: skills/api-docs-generator/SKILL.md
Content:
---
name: api-docs-generator
description: >-
Generates API documentation from code. Auto-activates when
user mentions "document API", "generate docs", or "API reference".
---
# API Docs Generator
[Full skill content...]
Registration: No registration needed (auto-discovered)
Test: Say "Generate API documentation for the auth module"
Version: 1.0.0 Last updated: 2025-12-28 Model: opus