---
Creates new agent skills for a plugin with full structure, validation, and registration. Use when you need reusable capabilities that can be invoked across multiple commands and agents.
/plugin marketplace add vanman2024/domain-plugin-builder/plugin install domain-plugin-builder@ai-dev-marketplacešØ EXECUTION NOTICE FOR CLAUDE
When you invoke this command via SlashCommand(/domain-plugin-builder:skills-create ...), the system returns THESE INSTRUCTIONS below.
YOU are the executor. This is NOT an autonomous subprocess.
Immediately after SlashCommand returns, start executing Phase 0, then Phase 1, etc.
See @CLAUDE.md section "SlashCommand Execution - YOU Are The Executor" for detailed explanation.
CRITICAL: All generated files must follow security rules:
@~/.claude/plugins/marketplaces/dev-lifecycle-marketplace/docs/security/SECURITY-RULES.md
Key requirements:
your_service_key_here.env files with .gitignore.env.example with placeholders onlyArguments: $ARGUMENTS
Goal: Create properly structured skill(s) by launching the skills-builder agent
CRITICAL EXECUTION INSTRUCTIONS:
!{tool command} syntax shows you WHAT to execute - use the real tool to DO ITPhase 0: Create Todo List
Create todo list for all phases below.
Phase 1: Discovery & Architecture Decision Framework Goal: Load comprehensive component decision framework to understand WHEN to use skills vs commands vs agents vs hooks vs MCP
Actions:
Phase 2: Parse Arguments & Determine Mode
Actions:
Parse $ARGUMENTS to extract:
If plugin not specified:
!{bash basename $(pwd)}
Determine base path - check if already in a plugin directory:
!{bash test -f .claude-plugin/plugin.json && echo "." || (echo "$ARGUMENTS" | grep -q "--marketplace" && echo "plugins/$(basename $(pwd))" || echo ".")}
Store as $BASE_PATH:
All subsequent file operations use $BASE_PATH instead of hardcoded "plugins/$PLUGIN_NAME"
Use bash to parse $ARGUMENTS and count how many skills are being requested:
!{bash echo "$ARGUMENTS" | grep -oE '<[^>]+>' | wc -l}
Store the count. Then extract each skill specification:
Phase 3: Launch Skills Builder Agent(s)
Actions:
For --analyze mode:
Task(description="Analyze plugin for needed skills", subagent_type="domain-plugin-builder:skills-builder", prompt="You are the skills-builder agent. Analyze the plugin structure at $BASE_PATH to determine what skills are needed.
Architectural context from component-decision-framework.md: @~/.claude/plugins/marketplaces/domain-plugin-builder/plugins/domain-plugin-builder/docs/frameworks/claude/component-decision-framework.md
Tasks:
Plugin: $BASE_PATH Deliverable: List of recommended skills with descriptions")
Decision: 1-2 skills = build directly, 3+ skills = use Task() for parallel
For 1-2 Skills:
Build directly - execute these steps immediately:
Load decision framework: !{Read @component-decision-framework.md}
Load skill template: !{Read @SKILL.md.template}
For each skill: !{Bash mkdir -p $BASE_PATH/skills/$SKILL_NAME/{scripts,templates,examples}}
!{Write $BASE_PATH/skills/$SKILL_NAME/SKILL.md}
Create scripts, templates, and examples as needed.
No need for Task() overhead when building 1-2 skills
For 3+ Skills:
Launch multiple skills-builder agents IN PARALLEL (all at once) using multiple Task() calls in ONE response:
Task(description="Create skill 1", subagent_type="domain-plugin-builder:skills-builder", prompt="Create skill: $SKILL_1 - $DESC_1 [same prompt structure as single skill above]")
Task(description="Create skill 2", subagent_type="domain-plugin-builder:skills-builder", prompt="Create skill: $SKILL_2 - $DESC_2 [same prompt structure as single skill above]")
Task(description="Create skill 3", subagent_type="domain-plugin-builder:skills-builder", prompt="Create skill: $SKILL_3 - $DESC_3 [same prompt structure as single skill above]")
[Continue for all N skills requested]
Each Task() call happens in parallel. Parse $ARGUMENTS to determine how many Task() calls to make.
Wait for ALL agents to complete before proceeding to Phase 4.
Phase 4: Validation
Validate all created skills:
For each skill: !{bash ~/.claude/plugins/marketplaces/domain-plugin-builder/plugins/domain-plugin-builder/skills/build-assistant/scripts/validate-skill.sh $BASE_PATH/skills/$SKILL_NAME}
If validation fails, read errors and fix issues.
Phase 5: Sync to Airtable
Use bulk sync script for efficiency:
Bash: python ~/.claude/plugins/marketplaces/domain-plugin-builder/plugins/domain-plugin-builder/scripts/bulk-sync-airtable.py --plugin={plugin-name} --marketplace={marketplace-name} --type=skills
This syncs ALL skills in parallel instead of one at a time.
Environment Requirement:
Phase 6: Register Skills in Settings
CRITICAL: Skills must be registered to be usable!
Register all created skills in ~/.claude/settings.json:
!{bash ~/.claude/plugins/marketplaces/domain-plugin-builder/plugins/domain-plugin-builder/skills/build-assistant/scripts/register-skills-in-settings.sh $PLUGIN_NAME}
This registers entries like:
Verify skills are accessible with Skill tool.
Phase 7: Git Commit and Push
Actions:
Complete skill structure with scripts, templates, and examples.
š¤ Generated with Claude Code
Co-Authored-By: Claude noreply@anthropic.com EOF )"}
Phase 8: Self-Validation
Run validation script to verify all work completed:
!{bash ~/.claude/plugins/marketplaces/domain-plugin-builder/plugins/domain-plugin-builder/skills/build-assistant/scripts/validate-skill.sh $BASE_PATH/skills/*}
Mark all todos complete if validation passes.
Phase 9: Summary
Display results:
Skills Created: <count> Plugin: $PLUGIN_NAME Mode: $BASE_PATH (marketplace mode if "plugins/", standalone if ".") Location: $BASE_PATH/skills/
Files:
Validation: All passed ā Registration: Complete ā Airtable Sync: Attempted ā Git: Committed and pushed ā
Next Steps: