skill-creator
To create new CLI skills following Anthropic's official best practices with zero manual configuration. This skill automates brainstorming, template application, validation, and installation processes while maintaining progressive disclosure patterns and writing style standards.
What this skill does
# skill-creator
## Purpose
To create new CLI skills following Anthropic's official best practices with zero manual configuration. This skill automates brainstorming, template application, validation, and installation processes while maintaining progressive disclosure patterns and writing style standards.
## When to Use This Skill
This skill should be used when:
- User wants to extend CLI functionality with custom capabilities
- User needs to create a skill following official standards
- User wants to automate repetitive CLI tasks with a reusable skill
- User needs to package domain knowledge into a skill format
- User wants both local and global skill installation options
## Core Capabilities
1. **Interactive Brainstorming** - Collaborative session to define skill purpose and scope
2. **Prompt Enhancement** - Optional integration with prompt-engineer skill for refinement
3. **Template Application** - Automatic file generation from standardized templates
4. **Validation** - YAML, content, and style checks against Anthropic standards
5. **Installation** - Local repository or global installation with symlinks
6. **Progress Tracking** - Visual gauge showing completion status at each step
## Step 0: Discovery
Before starting skill creation, gather runtime information:
```bash
# Detect available platforms
COPILOT_INSTALLED=false
CLAUDE_INSTALLED=false
CODEX_INSTALLED=false
if command -v gh &>/dev/null && gh copilot --version &>/dev/null 2>&1; then
COPILOT_INSTALLED=true
fi
if [[ -d "$HOME/.claude" ]]; then
CLAUDE_INSTALLED=true
fi
if [[ -d "$HOME/.codex" ]]; then
CODEX_INSTALLED=true
fi
# Determine working directory
REPO_ROOT=$(git rev-parse --show-toplevel 2>/dev/null || pwd)
SKILLS_REPO="$REPO_ROOT"
# Check if in cli-ai-skills repository
if [[ ! -d "$SKILLS_REPO/.github/skills" ]]; then
echo "⚠️ Not in cli-ai-skills repository. Creating standalone skill."
STANDALONE=true
fi
# Get user info from git config
AUTHOR=$(git config user.name || echo "Unknown")
EMAIL=$(git config user.email || echo "")
```
**Key Information Needed:**
- Which platforms to target (Copilot, Claude, Codex, or all three)
- Installation preference (local, global, or both)
- Skill name and purpose
- Skill type (general, code, documentation, analysis)
## Main Workflow
### Progress Tracking Guidelines
Throughout the workflow, display a visual progress bar before starting each phase to keep the user informed. The progress bar format is:
```
[████████████░░░░░░] 60% - Step 3/5: Creating SKILL.md
```
**Format specifications:**
- 20 characters wide (use █ for filled, ░ for empty)
- Percentage based on current step (Step 1=20%, Step 2=40%, Step 3=60%, Step 4=80%, Step 5=100%)
- Step counter showing current/total (e.g., "Step 3/5")
- Brief description of current phase
**Display the progress bar using:**
```bash
echo "[████░░░░░░░░░░░░░░] 20% - Step 1/5: Brainstorming & Planning"
```
### Phase 1: Brainstorming & Planning
**Progress:** Display before starting this phase:
```bash
echo "[████░░░░░░░░░░░░░░] 20% - Step 1/5: Brainstorming & Planning"
```
Display progress:
```
╔══════════════════════════════════════════════════════════════╗
║ 🛠️ SKILL CREATOR - Creating New Skill ║
╠══════════════════════════════════════════════════════════════╣
║ → Phase 1: Brainstorming [10%] ║
║ ○ Phase 2: Prompt Refinement ║
║ ○ Phase 3: File Generation ║
║ ○ Phase 4: Validation ║
║ ○ Phase 5: Installation ║
╠══════════════════════════════════════════════════════════════╣
║ Progress: ███░░░░░░░░░░░░░░░░░░░░░░░░░░░ 10% ║
╚══════════════════════════════════════════════════════════════╝
```
**Ask the user:**
1. **What should this skill do?** (Free-form description)
- Example: "Help users debug Python code by analyzing stack traces"
2. **When should it trigger?** (Provide 3-5 trigger phrases)
- Example: "debug Python error", "analyze stack trace", "fix Python exception"
3. **What type of skill is this?**
- [ ] General purpose (default template)
- [ ] Code generation/modification
- [ ] Documentation creation/maintenance
- [ ] Analysis/investigation
4. **Which platforms should support this skill?**
- [ ] GitHub Copilot CLI
- [ ] Claude Code
- [ ] Codex
- [ ] All three (recommended)
5. **Provide a one-sentence description** (will appear in metadata)
- Example: "Analyzes Python stack traces and suggests fixes"
**Capture responses and prepare for next phase.**
### Phase 2: Prompt Enhancement (Optional)
**Progress:** Display before starting this phase:
```bash
echo "[████████░░░░░░░░░░] 40% - Step 2/5: Prompt Enhancement"
```
Update progress:
```
╔══════════════════════════════════════════════════════════════╗
║ ✓ Phase 1: Brainstorming ║
║ → Phase 2: Prompt Refinement [30%] ║
╠══════════════════════════════════════════════════════════════╣
║ Progress: █████████░░░░░░░░░░░░░░░░░░░░░ 30% ║
╚══════════════════════════════════════════════════════════════╝
```
**Ask the user:**
"Would you like to refine the skill description using the prompt-engineer skill?"
- [ ] Yes - Use prompt-engineer to enhance clarity and structure
- [ ] No - Proceed with current description
If **Yes**:
1. Check if prompt-engineer skill is available
2. Invoke with current description as input
3. Review enhanced output with user
4. Ask: "Accept enhanced version or keep original?"
If **No** or prompt-engineer unavailable:
- Proceed with original user input
### Phase 3: File Generation
**Progress:** Display before starting this phase:
```bash
echo "[████████████░░░░░░] 60% - Step 3/5: File Generation"
```
Update progress:
```
╔══════════════════════════════════════════════════════════════╗
║ ✓ Phase 1: Brainstorming ║
║ ✓ Phase 2: Prompt Refinement ║
║ → Phase 3: File Generation [50%] ║
╠══════════════════════════════════════════════════════════════╣
║ Progress: ███████████████░░░░░░░░░░░░░░░ 50% ║
╚══════════════════════════════════════════════════════════════╝
```
**Generate skill structure:**
```bash
# Convert skill name to kebab-case
SKILL_NAME=$(echo "$USER_INPUT" | tr '[:upper:]' '[:lower:]' | tr ' ' '-')
# Create directories
if [[ "$PLATFORM" =~ "copilot" ]]; then
mkdir -p ".github/skills/$SKILL_NAME"/{references,examples,scripts}
fi
if [[ "$PLATFORM" =~ "claude" ]]; then
mkdir -p ".claude/skills/$SKILL_NAME"/{references,examples,scripts}
fi
if [[ "$PLATFORM" =~ "codex" ]]; then
mkdir -p ".codex/skills/$SKILL_NAME"/{references,examples,scripts}
fi
```
**Apply templates:**
1. **SKILL.md** - Use appropriate template:
- `skill-template-copilot.md`, `skill-template-claude.md`, or `skill-template-codex.md`
- Substitute placeholders:
- `{{SKILL_NAME}}` → kebab-case name
- `{{DESCRIPTION}}` → one-line description
- `{{TRIGGERS}}` → comma-separated trigger phrases
- `{{PURPOSE}}` → detailed purpose from brainstorming
- `{{AUTHOR}}` → from git config
- `{{DATE}}` → current date (YYYY-MM-DD)
- `{{VERSION}}` → "1.0.0"
2. **README.md** - Use `readme-template.md`:
- User-facing documentation (300-500 words)
- Include installation instructions
- Add usage examples
3. **References/** (optional but recommended):
- Create `detailed-guide.md` for extended documentation (2k-5k words)
- Move lengthy content here to keep SKILL.md under 2k words
**File creation commands:**
```bash
# Apply template with substitution
sed "s/{{SKILL_NAME}}/$SKILL_NAME/g; \
s/{{DESCRIPTION}}/$DESCRIPTION/g; \
s/{{AUTHOR}}/$AUTHOR/g; \
s/{{DATE}}/$(date +%Y-%m-%d)/g" \
resources/templates/skill-template-copiRelated in meta
writing-skills-excellence
IncludedUse when creating, updating, or improving agent skills.
writing-skills
IncludedUse when creating, updating, or improving agent skills.
skill-creator
IncludedUse when creating skills, writing SKILL.md files, editing skill definitions, or adding new reusable techniques to ai-coding-config
skill-creator
IncludedCreate new Claude Code skills with proper structure, validation, and best practices. Generates skills that follow Anthropic specifications and community patterns. Use when you need custom skills for specific workflows, either globally or per-project.
Agent Orchestrator
IncludedCoordinate multiple AI agents and skills for complex workflows
Knowledge Base Builder
IncludedBuild and maintain AI-accessible knowledge bases for projects