claude-skill-management

Claude Code Skill Management Expert

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "claude-skill-management" with this command: npx skills add delphine-l/claude_global/delphine-l-claude-global-claude-skill-management

Claude Code Skill Management Expert

Expert knowledge for managing Claude Code skills and commands using the centralized repository pattern with $CLAUDE_METADATA .

Supporting Documentation

This skill is split across multiple files for maintainability. Read these as needed:

  • symlinking-guide.md - Linking skills/commands to projects, recommended global skills, setup methods

  • updating-and-syncing.md - Updating existing skills, syncing projects with global changes

  • repository-organization.md - Directory layout, naming conventions, documentation requirements

  • version-control.md - Git workflows, team collaboration, Claude's git restrictions

  • troubleshooting.md - Broken symlinks, activation issues, common fixes

  • best-practices.md - Focused skills, maintenance cadence, templates

  • quick-reference.md - Cheat-sheet commands, common workflows, repository maintenance, summary

When to Use This Skill

  • Creating new global skills or commands

  • Setting up skills for a new project

  • Synchronizing projects with updated global skills

  • Organizing the centralized skill repository

  • Troubleshooting skill discovery or activation issues

  • Understanding the skill lifecycle

Environment Setup

Required Environment Variable

$CLAUDE_METADATA must be set to your centralized skills directory.

Check if set:

echo $CLAUDE_METADATA

Should output your claude_data directory path

If not set, add to ~/.zshrc (or ~/.bashrc ):

export CLAUDE_METADATA="$HOME/path/to/claude_data" # Adjust to your actual path

Apply immediately:

source ~/.zshrc # or source ~/.bashrc

Verify Directory Structure

ls -la $CLAUDE_METADATA/

Should show:

├── skills/ # Global skills

├── commands/ # Global commands

├── hooks/ # Claude Code hooks (symlinked to ~/.claude/hooks/)

├── README.md

└── QUICK_REFERENCE.md

Complete Setup from Scratch

If setting up a centralized skill repository for the first time:

Create directory structure:

mkdir -p $CLAUDE_METADATA/{skills,commands} cd $CLAUDE_METADATA

Set environment variable (add to ~/.zshrc or ~/.bashrc ):

echo 'export CLAUDE_METADATA="$HOME/path/to/claude_data" # Adjust to your actual path' >> ~/.zshrc source ~/.zshrc

Verify setup:

echo $CLAUDE_METADATA

Should output your claude_data directory path

Create initial documentation:

Create README and QUICK_REFERENCE

(use templates from claude-skill-management skill)

Initialize git (recommended):

cd $CLAUDE_METADATA git init git add . git commit -m "Initial centralized skill repository"

Create your first skill:

mkdir -p $CLAUDE_METADATA/skills/my-first-skill

Create SKILL.md with frontmatter

Link to first project:

cd ~/Workdir/my-project mkdir -p .claude/skills ln -s $CLAUDE_METADATA/skills/my-first-skill .claude/skills/

Environment variable best practices:

  • Use $HOME not hardcoded paths for portability

  • Source shell config after adding: source ~/.zshrc

  • Verify in new terminals: echo $CLAUDE_METADATA

  • Document for team members in README.md

Creating New Skills

Step 1: Create Skill Directory

mkdir -p $CLAUDE_METADATA/skills/your-skill-name

Naming conventions:

  • Use kebab-case (lowercase with hyphens)

  • Be descriptive but concise

  • Examples: galaxy-tool-wrapping , python-testing , docker-workflows

Step 2: Create SKILL.md with Frontmatter

cat > $CLAUDE_METADATA/skills/your-skill-name/SKILL.md << 'EOF'

name: your-skill-name description: Brief description that helps Claude decide when to activate this skill (1-2 sentences)

Your Skill Name

Detailed instructions for Claude when this skill is activated.

When to Use This Skill

  • Specific use case 1
  • Specific use case 2
  • Specific use case 3

Core Concepts

Concept 1

Explanation and examples...

Concept 2

Explanation and examples...

Best Practices

  • Practice 1
  • Practice 2

Common Issues and Solutions

Issue 1

Problem: Description Solution: How to fix it

Examples

Example 1: Task Name

Description and code examples... EOF

Frontmatter fields:

  • name (required): Must match directory name

  • description (required): Clear, concise description for activation

  • version (optional): Semantic versioning (e.g., 1.0.0 )

  • dependencies (optional): Required tools/packages

Step 3: Add Supporting Files (Optional)

Add detailed reference documentation

cat > $CLAUDE_METADATA/skills/your-skill-name/reference.md << 'EOF'

Reference Documentation

Detailed technical information, API references, etc. EOF

Add examples directory

mkdir -p $CLAUDE_METADATA/skills/your-skill-name/examples

Add templates directory

mkdir -p $CLAUDE_METADATA/skills/your-skill-name/templates

Step 4: Test the Skill

Create a test project

mkdir -p /tmp/test-skill-project/.claude/skills

Symlink the new skill

ln -s $CLAUDE_METADATA/skills/your-skill-name /tmp/test-skill-project/.claude/skills/your-skill-name

Start Claude Code in test project

cd /tmp/test-skill-project

Tell Claude: "Use the your-skill-name skill to [test task]"

Creating New Commands

Step 1: Choose or Create Category Directory

Use existing category

ls $CLAUDE_METADATA/commands/

Or create new category

mkdir -p $CLAUDE_METADATA/commands/your-category

Common categories:

  • vgp-pipeline/

  • VGP workflow commands

  • git-workflows/

  • Git-related commands

  • testing/

  • Testing-related commands

  • deployment/

  • Deployment commands

Step 2: Create Command File

cat > $CLAUDE_METADATA/commands/your-category/command-name.md << 'EOF'

name: command-name description: Brief description shown in /help

Your command prompt here. This will be expanded when the user types /command-name.

You can include:

  • Multi-line instructions
  • Variable references: {{variable_name}}
  • Markdown formatting
  • Code blocks

Example: Check the status of all workflows for species {{species_name}}. Show me which workflows are complete, running, or failed. EOF

Naming conventions:

  • Use kebab-case

  • Start with verb: check-status , debug-failed , update-skills

  • Be specific: deploy-production not just deploy

Step 3: Test the Command

Symlink to test project

ln -s $CLAUDE_METADATA/commands/your-category/command-name.md /tmp/test-project/.claude/commands/

Start Claude Code and test

Type: /command-name

Command Help System

Viewing Command Documentation

Use /command-help to view documentation for Claude Code commands (similar to --help in traditional CLI tools):

List all available commands

/command-help list

Show specific command help

/command-help share-project

Show full details including implementation steps

/command-help share-project --full

Command Help Implementation

Location: $CLAUDE_METADATA/commands/global/command-help.md

Features:

  • Lists global and project commands with descriptions

  • Shows usage, parameters, and examples

  • Can display full implementation steps with --full flag

  • Searches in both global and project command directories

Command Frontmatter Format

Commands should include frontmatter for the help system:


description: Brief one-line description usage: /command-name [arguments] parameters: | arg1: Description of argument 1 arg2: Description of argument 2 examples: | /command-name example1 /command-name example2 --option

[Command implementation steps...]

Creating Help-Enabled Commands

Template for new commands:


name: my-command description: Brief description of what this command does usage: /my-command [required-arg] [optional-arg] parameters: | required-arg: Description of required argument optional-arg: (Optional) Description of optional argument examples: | /my-command basic-example /my-command advanced-example --flag

Command Implementation

Step 1: [First step description]

Step 2: [Second step description]

[Continue with detailed steps...]

Best practices for command documentation:

  • Keep description to 1 line (shows in list view)

  • Document all parameters clearly

  • Provide realistic examples

  • Include expected output in steps

  • Note any prerequisites or dependencies

For additional details, see the supporting files listed at the top of this document:

  • Symlinking and project setup: symlinking-guide.md

  • Updating and syncing: updating-and-syncing.md

  • Repository organization: repository-organization.md

  • Version control and git: version-control.md

  • Troubleshooting: troubleshooting.md

  • Best practices: best-practices.md

  • Quick reference and workflows: quick-reference.md

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

galaxy-workflow-development

No summary provided by upstream source.

Repository SourceNeeds Review
General

token-efficiency

No summary provided by upstream source.

Repository SourceNeeds Review
General

bioinformatics-fundamentals

No summary provided by upstream source.

Repository SourceNeeds Review
General

folder-organization

No summary provided by upstream source.

Repository SourceNeeds Review