Claude
Chat app · Skill upload
In Claude, open Customize → Skills and use Create skill to upload the ZIP. Skill availability depends on your plan and workspace settings.
Official Claude setup →Community skill · Free instruction package
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 skill creation workflow from brainstorming to installation.
Community instruction package. Read the full workflow below, then choose your app in the setup guide. Package instructions and compatibility claims have not been individually verified; check dependencies and license before use.
CHOOSE YOUR AI APP
Choose your app below for setup instructions. Keep the complete downloaded folder together. Each package may need tools, dependencies or permissions that your app does not provide.
Chat app · Skill upload
In Claude, open Customize → Skills and use Create skill to upload the ZIP. Skill availability depends on your plan and workspace settings.
Official Claude setup →Chat app · Access varies
Where Skills is available, open Plugins → Skills → Create → Upload from your computer. Otherwise, copy the instructions into a chat and add your brief; this does not install a skill or include its supporting files.
Official ChatGPT setup →Agent · Project skills
Extract the complete skill folder into your project’s .agents/skills directory. Ask the agent to use the skill for your task.
.agents/skills/skill-creator/SKILL.mdOfficial Google Antigravity setup →Code editor · Project skills
Extract the complete folder into .cursor/skills. Check the editor’s skill settings and ask the agent to use it.
.cursor/skills/skill-creator/SKILL.mdOfficial Cursor setup →Coding agent · Project skills
Extract the complete folder into .claude/skills. Ask Claude to use the named skill, or use its slash command when available.
.claude/skills/skill-creator/SKILL.mdOfficial Claude Code setup →For text-only workflows, you can also paste the instructions into an AI conversation. Copying text does not enable scripts, connect accounts or grant tool access. App subscriptions may cost extra. Logos identify the products; KuchhBhi is independent and is not endorsed by these companies.
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.
This skill should be used when:
Before starting skill creation, gather runtime information:
# 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:
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:
Display the progress bar using:
echo "[████░░░░░░░░░░░░░░] 20% - Step 1/5: Brainstorming & Planning"
Progress: Display before starting this phase:
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:
What should this skill do? (Free-form description)
When should it trigger? (Provide 3-5 trigger phrases)
What type of skill is this?
Which platforms should support this skill?
Provide a one-sentence description (will appear in metadata)
Capture responses and prepare for next phase.
Progress: Display before starting this phase:
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?"
If Yes:
If No or prompt-engineer unavailable:
Progress: Display before starting this phase:
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:
# 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:
SKILL.md - Use appropriate template:
skill-template-copilot.md, skill-template-claude.md, or skill-template-codex.md{{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"README.md - Use readme-template.md:
References/ (optional but recommended):
detailed-guide.md for extended documentation (2k-5k words)File creation commands:
# 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/
Progress: Display before starting this phase:
echo "[████████████████░░] 80% - Step 4/5: Validation"
Update progress:
╔══════════════════════════════════════════════════════════════╗
║ ✓ Phase 3: File Generation ║
║ → Phase 4: Validation [70%] ║
╠══════════════════════════════════════════════════════════════╣
║ Progress: █████████████████████░░░░░░░░░ 70% ║
╚══════════════════════════════════════════════════════════════╝
Run validation scripts:
# 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:
Common auto-fixes:
Progress: Display before starting this phase:
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?"
.github/skills/ (works when in repo)~/.copilot/skills/ (works everywhere)If global installation selected:
# 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:
# 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:
# 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
Progress: Display completion message:
echo "[████████████████████] 100% - ✓ Skill created successfully!"
Update progress:
╔══════════════════════════════════════════════════════════════╗
║ ✓ Phase 5: Installation ║
║ ✅ SKILL CREATION COMPLETE! ║
╠══════════════════════════════════════════════════════════════╣
║ Progress: ██████████████████████████████ 100% ║
╚══════════════════════════════════════════════════════════════╝
Display summary:
🎉 Skill created successfully!
📦 Skill Name: your-skill-name
📁 Location: .github/skills/your-skill-name/
🔗 Installed: Global (Copilot + Claude)
📋 Files Created:
✅ SKILL.md (1,847 words)
✅ README.md (423 words)
✅ references/ (empty, ready for extended docs)
✅ examples/ (empty, ready for code samples)
✅ scripts/ (empty, ready for utilities)
🚀 Next Steps:
1. Test the skill: Try trigger phrases in CLI
2. Add examples: Create working code samples in examples/
3. Extend docs: Add detailed guides to references/
4. Commit changes: git add .github/skills/your-skill-name && git commit
5. Share: Push to repository for team use
💡 Pro Tips:
- Keep SKILL.md under 2,000 words (currently: 1,847)
- Move detailed content to references/ folder
- Add executable scripts to scripts/ folder
- Update README.md with real usage examples
- Run validation before committing: scripts/validate-skill-yaml.sh
If platforms cannot be detected:
⚠️ Unable to detect GitHub Copilot CLI or Claude Code
Would you like to:
1. Install for repository only (works when in repo)
2. Specify platform manually
3. Skip installation
If templates are missing:
❌ Error: Template not found at resources/templates/
This skill requires the cli-ai-skills repository structure.
Options:
1. Clone cli-ai-skills: git clone <repo-url>
2. Create minimal skill structure manually
3. Exit and set up templates first
If content doesn't meet standards:
⚠️ Validation Issues Found:
1. YAML: Description not in third-person format
Expected: "This skill should be used when..."
Found: "Use this skill when..."
2. Content: Word count too high (5,342 words, max 5,000)
Suggestion: Move detailed sections to references/
Fix automatically? [Y/n]
If symlink already exists:
⚠️ Skill already installed at ~/.copilot/skills/your-skill-name
Options:
1. Overwrite existing installation
2. Rename new skill
3. Skip installation
4. Install to different location
This skill includes additional resources in subdirectories:
Detailed documentation loaded when needed:
anthropic-best-practices.md - Official Anthropic skill development guidelineswriting-style-guide.md - Writing standards and examplesprogressive-disclosure.md - Content organization patternsvalidation-checklist.md - Pre-commit quality checksWorking examples demonstrating skill usage:
basic-skill-creation.md - Simple skill creation walkthroughadvanced-skill-bundled-resources.md - Complex skill with references/global-installation.md - Installing skills system-wideExecutable utilities for skill maintenance:
validate-all-skills.sh - Batch validation of all skills in repositoryupdate-skill-version.sh - Bump version and update changeloggenerate-skill-index.sh - Auto-generate skills catalogTemplate Substitution:
sed for simple replacementsSymlink Strategy:
ln -sf /full/path/to/source ~/.copilot/skills/nameValidation Integration:
Git Integration:
git config user.namegit rev-parse --show-toplevel.gitignore patternsSKILL.md Requirements:
README.md Requirements:
Validation Checks:
resources/templates/writing-style-guide.mdresources/templates/progress-tracker.mdThe instruction package is free to download. Your AI app, model usage, connected services and third-party assets may have separate costs.
It is a set of instructions for a compatible AI assistant. It does not run by itself, connect accounts or install an MCP server.
Check that the named folder contains SKILL.md directly, not a second nested ZIP folder. Confirm that your editor supports skills and that its current settings allow this location. See the official documentation below.