Back to skills
SKILL.md
Agent Skills Expert
ASecurityExpert for creating and managing Claude Code Agent Skills. Create skills with git submodule + sparse-checkout for source references, write SKILL.md with proper frontmatter, and follow best practices. Use when creating new skills, adding source references to skills, or managing skill configurations.
- 2 stars
- 0 votes
- 0 copies
- 0 views
- Added September 27, 2026
Works with
Security analysis
93/100- Performs destructive filesystem operations
Pro scans all 7 files and shows the line behind each finding
npx -y skills add David-Li0406/meta-skill-evloving --skill agent-skills-expert --agent claude-codeAre you the author of Agent Skills Expert?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/david-li0406-agent-skills-expert)---
name: agent-skills-expert
description: Expert for creating and managing Claude Code Agent Skills. Create skills with git submodule + sparse-checkout for source references, write SKILL.md with proper frontmatter, and follow best practices. Use when creating new skills, adding source references to skills, or managing skill configurations.
---
# Agent Skills Expert
Expert for creating and managing Claude Code Agent Skills. Helps create skills that follow official specifications, including using Git Submodule + Sparse Checkout for source code references.
## π Core Concepts
### What is an Agent Skill?
Agent Skill is an extensible capability module for Claude Code, containing:
- `SKILL.md` - Skill definition file (required)
- Supporting files - Documentation, scripts, templates, etc. (optional)
- `source/` - Source code reference directory (optional, using git submodule)
### Skill Storage Locations
- **Personal Skills**: `~/.claude/skills/skill-name/`
- **Project Skills**: `.claude/skills/skill-name/`
## π§ Skill Creation Workflow
### 1. Basic Skill Structure
```
skill-name/
βββ SKILL.md # Required: Skill definition
βββ examples.md # Optional: Example code
βββ quick-reference.md # Optional: Quick reference
βββ SOURCE_STRUCTURE.md # Optional: Source structure documentation
βββ scripts/ # Optional: Helper scripts
βββ source/ # Optional: Source code references
βββ repo-name/ # Git Submodule
```
### 2. SKILL.md Specification
```yaml
---
name: skill-name # Required: lowercase letters, numbers, hyphens, max 64 chars
description: Brief description... # Required: Skill description, max 1024 chars
allowed-tools: Read, Grep, Glob # Optional: Restrict available tools
---
# Skill Name
## Instructions
Clear usage instructions...
## Examples
Concrete usage examples...
```
**Description Best Practices**:
- Explain what the skill does
- Explain when to use the skill
- Include keywords for Claude to discover
### 3. Adding Source References (Git Submodule + Sparse Checkout)
#### Step 1: Add Submodule
```bash
cd ~/.claude/skills
git submodule add https://github.com/org/repo.git skill-name/source/repo-name
```
#### Step 2: Configure Sparse Checkout
```bash
cd skill-name/source/repo-name
# Initialize sparse-checkout
git sparse-checkout init --no-cone
# Set content to keep
git sparse-checkout set \
/README.md \
/docs/ \
/src/ \
/examples/
```
#### Step 3: Create SOURCE_STRUCTURE.md
Document the source structure, including:
- Sparse checkout configuration
- Directory structure explanation
- Key file locations
- Maintenance guide
## π Sparse Checkout Configuration Guide
### Principles for Selecting Content to Keep
1. **Core source code** - Main API implementation
2. **Documentation** - README, docs directory
3. **Examples** - examples directory
4. **Configuration files** - pyproject.toml, package.json, etc.
5. **Tests** - Test cases showing usage patterns
### Content to Exclude
- Large resource files (images, videos)
- Build artifacts
- CI/CD configuration (usually not needed)
- Historical release notes
### Common Sparse Checkout Patterns
**Python Projects:**
```bash
git sparse-checkout set \
/README.md \
/LICENSE \
/src/ \
/docs/ \
/examples/ \
/tests/ \
/pyproject.toml
```
**JavaScript/TypeScript Projects:**
```bash
git sparse-checkout set \
/README.md \
/LICENSE \
/src/ \
/docs/ \
/examples/ \
/package.json \
/tsconfig.json
```
**Rust Projects:**
```bash
git sparse-checkout set \
/README.md \
/LICENSE \
/src/ \
/docs/ \
/examples/ \
/Cargo.toml
```
## π οΈ Maintenance Operations
### Update Submodule
```bash
cd skill-name/source/repo-name
git pull origin main
```
### Modify Sparse Checkout Configuration
```bash
cd skill-name/source/repo-name
# Add new directory
git sparse-checkout add /new-dir/
# Reconfigure
git sparse-checkout set /dir1/ /dir2/ /file.md
```
### View Configuration
```bash
cd skill-name/source/repo-name
git sparse-checkout list
du -sh . # Check size
```
### Troubleshooting Recovery
```bash
# Completely reset submodule
cd ~/.claude/skills
git submodule deinit -f skill-name/source/repo-name
rm -rf .git/modules/skill-name/source/repo-name
git submodule update --init skill-name/source/repo-name
# Reconfigure sparse-checkout
cd skill-name/source/repo-name
git sparse-checkout init --no-cone
git sparse-checkout set /directories-to-keep/
```
## π Template Files
### SKILL.md Template
See [templates/SKILL_TEMPLATE.md](templates/SKILL_TEMPLATE.md)
### SOURCE_STRUCTURE.md Template
See [templates/SOURCE_STRUCTURE_TEMPLATE.md](templates/SOURCE_STRUCTURE_TEMPLATE.md)
## β
Checklist
### Creating New Skill
- [ ] Create skill directory `mkdir -p ~/.claude/skills/skill-name`
- [ ] Create SKILL.md (with correct frontmatter)
- [ ] Write clear description (include trigger keywords)
- [ ] Add usage instructions and examples
- [ ] Test that skill is correctly discovered
### Adding Source References
- [ ] Add git submodule
- [ ] Configure sparse-checkout
- [ ] Verify reasonable size (typically <100MB)
- [ ] Create SOURCE_STRUCTURE.md
- [ ] Update source access instructions in SKILL.md
- [ ] Commit all changes
### Maintenance
- [ ] Regularly update submodule
- [ ] Check if sparse-checkout configuration is still appropriate
- [ ] Update documentation to reflect latest structure
## π Related Resources
- [GIT_SPARSE_CHECKOUT_TUTORIAL.md](../GIT_SPARSE_CHECKOUT_TUTORIAL.md) - Detailed Sparse Checkout tutorial
- [CLAUDE_CODE_SKILL_TUTORIAL.md](../CLAUDE_CODE_SKILL_TUTORIAL.md) - Official skill tutorial
- [Agent Skills Official Documentation](https://docs.anthropic.com/en/docs/agents-and-tools/agent-skills/overview)
## π Existing Skills Reference
| Skill | Source Reference | Sparse Checkout |
|-------|------------------|-----------------|
| langgraph-python-expert | β
| β
(~66MB) |
| lib-slint-expert | β
| β |
| vscode-extension-builder | β
| β
|
| uv-expert | β
| β |
| rust-cli-tui-developer | β
| β |
---
*Last updated: 2024-12-23*
Files in this skill
- .claude-plugin/plugin.json
- SKILL.md
- scripts/add_source_submodule.sh
- scripts/configure_sparse_checkout.sh
- scripts/create_skill.sh
- templates/SKILL_TEMPLATE.md
- templates/SOURCE_STRUCTURE_TEMPLATE.md
Attribution
Comments
Loading commentsβ¦