Skip to main content

skill-creator

This skill should be used when the user asks to create a new skill, build a skill, make a custom skill, develop a CLI skill, or wants to extend the CLI with new capabilities. Automates the entire s...

설치로 이동

소스 정보

저장소
Zidong-LLC/BIBLIOTECA
최근 소스 활동
2026년 3월 11일 13:02
감지된 SKILL.md 언어
영어
스타
36
포크
22

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

파일 탐색기
8 개 파일

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
skill-creator
description
This skill should be used when the user asks to create a new skill, build a skill, make a custom skill, develop a CLI skill, or wants to extend the CLI with new capabilities. Automates the entire s...
category
meta
risk
safe
source
community
tags
[automation, scaffolding, skill-creation, meta-skill]
date_added
2026-02-27
# 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-copilot.md \ > ".github/skills/$SKILL_NAME/SKILL.md" # Create README sed "s/{{SKILL_NAME}}/$SKILL_NAME/g" \ resources/templates/readme-template.md \ > ".github/skills/$SKILL_NAME/README.md" # Apply template for Codex if selected if [[ "$PLATFORM" =~ "codex" ]]; then 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-codex.md \ > ".codex/skills/$SKILL_NAME/SKILL.md" sed "s/{{SKILL_NAME}}/$SKILL_NAME/g" \ resources/templates/readme-template.md \ > ".codex/skills/$SKILL_NAME/README.md" fi ``` **Display created structure:** ``` ✅ Created: .github/skills/your-skill-name/ (if Copilot selected) .claude/skills/your-skill-name/ (if Claude selected) .codex/skills/your-skill-name/ (if Codex selected) ├── SKILL.md (832 lines) ├── README.md (347 lines) ├── references/ ├── examples/ └── scripts/ ``` ### Phase 4: Validation **Progress:** Display before starting this phase: ```bash echo "[████████████████░░] 80% - Step 4/5: Validation" ``` Update progress: ``` ╔══════════════════════════════════════════════════════════════╗ ║ ✓ Phase 3: File Generation ║ ║ → Phase 4: Validation [70%] ║ ╠══════════════════════════════════════════════════════════════╣ ║ Progress: █████████████████████░░░░░░░░░ 70% ║ ╚══════════════════════════════════════════════════════════════╝ ``` **Run validation scripts:** ```bash # Validate YAML frontmatter scripts/validate-skill-yaml.sh ".github/skills/$SKILL_NAME" # Validate content quality scripts/validate-skill-content.sh ".github/skills/$SKILL_NAME" ``` **Expected output:** ``` 🔍 Validating YAML frontmatter... ✅ YAML frontmatter valid! 🔍 Validating content... ✅ Word count excellent: 1847 words ✅ Content validation complete! ``` **If validation fails:** - Display specific errors - Offer to fix automatically (common issues) - Ask user to manually correct complex issues **Common auto-fixes:** - Convert second-person to imperative form - Reformat description to third-person - Add missing required fields ### Phase 5: Installation **Progress:** Display before starting this phase: ```bash echo "[████████████████████] 100% - Step 5/5: Installation" ``` Update progress: ``` ╔══════════════════════════════════════════════════════════════╗ ║ ✓ Phase 4: Validation ║ ║ → Phase 5: Installation [90%] ║ ╠══════════════════════════════════════════════════════════════╣ ║ Progress: ██████████████████████████░░░░░ 90% ║ ╚══════════════════════════════════════════════════════════════╝ ``` **Ask the user:** "How would you like to install this skill?" - [ ] **Repository only** - Files created in `.github/skills/` (works when in repo) - [ ] **Global installation** - Create symlinks in `~/.copilot/skills/` (works everywhere) - [ ] **Both** - Repository + global symlinks (recommended, auto-updates with git pull) - [ ] **Skip installation** - Just create files **If global installation selected:** ```bash # Detect which platforms to install for INSTALL_TARGETS=() if [[ "$COPILOT_INSTALLED" == "true" ]] && [[ "$PLATFORM" =~ "copilot" ]]; then INSTALL_TARGETS+=("copilot") fi if [[ "$CLAUDE_INSTALLED" == "true" ]] && [[ "$PLATFORM" =~ "claude" ]]; then INSTALL_TARGETS+=("claude") fi if [[ "$CODEX_INSTALLED" == "true" ]] && [[ "$PLATFORM" =~ "codex" ]]; then INSTALL_TARGETS+=("codex") fi # Ask user to confirm detected platforms echo "Detected platforms: ${INSTALL_TARGETS[*]}" echo "Install for these platforms? [Y/n]" ``` **Installation process:** ```bash # GitHub Copilot CLI if [[ " ${INSTALL_TARGETS[*]} " =~ " copilot " ]]; then ln -sf "$SKILLS_REPO/.github/skills/$SKILL_NAME" \ "$HOME/.copilot/skills/$SKILL_NAME" echo "✅ Installed for GitHub Copilot CLI" fi # Claude Code if [[ " ${INSTALL_TARGETS[*]} " =~ " claude " ]]; then ln -sf "$SKILLS_REPO/.claude/skills/$SKILL_NAME" \ "$HOME/.claude/skills/$SKILL_NAME" echo "✅ Installed for Claude Code" fi # Codex if [[ " ${INSTALL_TARGETS[*]} " =~ " codex " ]]; then ln -sf "$SKILLS_REPO/.codex/skills/$SKILL_NAME" \ "$HOME/.codex/skills/$SKILL_NAME" echo "✅ Installed for Codex" fi ``` **Verify installation:** ```bash # Check symlinks ls -la ~/.copilot/skills/$SKILL_NAME 2>/dev/null ls -la ~/.claude/skills/$SKILL_NAME 2>/dev/null ls -la ~/.codex/skills/$SKILL_NAME 2>/dev/null ``` ### Phase 6: Completion **Progress:** Display completion message: ```bash
GitHub에서 보기
이 SKILL.md는 매우 커서 SkillsMP가 여기에는 첫 섹션만 미리 보여줍니다. GitHub에서 보기