Initial commit: Fresh start with current state
This commit is contained in:
280
.claude/skills/.SKILL_TEMPLATE.md
Normal file
280
.claude/skills/.SKILL_TEMPLATE.md
Normal file
@@ -0,0 +1,280 @@
|
||||
---
|
||||
name: Skill Name Here
|
||||
description: Brief, specific description of what this skill does and when Claude should use it. Include trigger words and file types. Use when [specific scenarios]. Keywords: [relevant terms users might mention].
|
||||
allowed-tools: Read, Grep, Glob
|
||||
# Optional: Restrict which tools Claude can use when this skill is active
|
||||
# Omit this field if the skill should follow standard permission model
|
||||
# Common tool combinations:
|
||||
# - Read-only: Read, Grep, Glob
|
||||
# - File operations: Read, Write, Edit, Glob, Grep
|
||||
# - Git operations: Bash(git status), Bash(git diff), Bash(git log)
|
||||
# - Execution: Bash, Read, Write
|
||||
---
|
||||
|
||||
# Skill Name Here
|
||||
|
||||
> **Purpose**: One-sentence explanation of the skill's primary purpose.
|
||||
|
||||
## Quick Start
|
||||
|
||||
Brief example of the most common use case:
|
||||
|
||||
```language
|
||||
# Quick example code or command
|
||||
example_command()
|
||||
```
|
||||
|
||||
## Instructions
|
||||
|
||||
Detailed step-by-step guidance for Claude on how to use this skill:
|
||||
|
||||
1. **First step**: What to do first
|
||||
- Use [specific tool] to gather information
|
||||
- Check for [specific conditions]
|
||||
|
||||
2. **Second step**: Next action
|
||||
- Process the information
|
||||
- Apply [specific logic or rules]
|
||||
|
||||
3. **Third step**: Final actions
|
||||
- Generate output in [specific format]
|
||||
- Verify [specific criteria]
|
||||
|
||||
## When to Use This Skill
|
||||
|
||||
Claude should activate this skill when:
|
||||
- User mentions [specific keywords]
|
||||
- Working with [specific file types or patterns]
|
||||
- Task involves [specific operations]
|
||||
- User asks about [specific topics]
|
||||
|
||||
## Requirements
|
||||
|
||||
### Prerequisites
|
||||
- Required tools or dependencies
|
||||
- Expected file structures
|
||||
- Necessary permissions
|
||||
|
||||
### Environment
|
||||
- Operating system considerations
|
||||
- Path requirements
|
||||
- Configuration needs
|
||||
|
||||
## Examples
|
||||
|
||||
### Example 1: Common Use Case
|
||||
```language
|
||||
# Code example showing typical usage
|
||||
def example_function():
|
||||
"""Clear docstring."""
|
||||
pass
|
||||
```
|
||||
|
||||
**Context**: When to use this approach
|
||||
**Expected Output**: What Claude should produce
|
||||
|
||||
### Example 2: Advanced Use Case
|
||||
```language
|
||||
# More complex example
|
||||
advanced_example()
|
||||
```
|
||||
|
||||
**Context**: When this is needed
|
||||
**Expected Output**: Expected result
|
||||
|
||||
## Best Practices
|
||||
|
||||
### Do's
|
||||
- ✅ Specific recommendation with rationale
|
||||
- ✅ Another best practice
|
||||
- ✅ Tool usage guidelines
|
||||
|
||||
### Don'ts
|
||||
- ❌ What to avoid and why
|
||||
- ❌ Common mistakes
|
||||
- ❌ Anti-patterns
|
||||
|
||||
## Output Format
|
||||
|
||||
Specify the expected output structure:
|
||||
|
||||
```markdown
|
||||
## Section Title
|
||||
- Item 1
|
||||
- Item 2
|
||||
|
||||
### Subsection
|
||||
Details here...
|
||||
```
|
||||
|
||||
Or for code:
|
||||
```language
|
||||
// Expected code structure
|
||||
class Example {
|
||||
// Implementation
|
||||
}
|
||||
```
|
||||
|
||||
## Error Handling
|
||||
|
||||
Common issues and solutions:
|
||||
|
||||
### Issue 1: Specific Problem
|
||||
**Symptoms**: What the user sees
|
||||
**Cause**: Why it happens
|
||||
**Solution**: How to fix it
|
||||
|
||||
### Issue 2: Another Problem
|
||||
**Symptoms**: Description
|
||||
**Cause**: Root cause
|
||||
**Solution**: Fix steps
|
||||
|
||||
## Related Files
|
||||
|
||||
Link to supporting documentation or resources:
|
||||
- [Additional reference](reference.md) - Detailed API documentation
|
||||
- [Examples collection](examples.md) - More usage examples
|
||||
- [Advanced guide](advanced.md) - Deep dive into complex scenarios
|
||||
|
||||
## Tool Permissions
|
||||
|
||||
This skill uses the following tools:
|
||||
- **Read**: For reading file contents
|
||||
- **Grep**: For searching code patterns
|
||||
- **Glob**: For finding files
|
||||
|
||||
> **Note**: If `allowed-tools` is specified in frontmatter, Claude can only use those tools without asking permission when this skill is active.
|
||||
|
||||
## Version History
|
||||
|
||||
Track changes to this skill:
|
||||
|
||||
- **v1.0.0** (YYYY-MM-DD): Initial release
|
||||
- Core functionality
|
||||
- Basic examples
|
||||
|
||||
- **v1.1.0** (YYYY-MM-DD): Enhancement description
|
||||
- New feature added
|
||||
- Improved handling of edge case
|
||||
|
||||
## Testing Checklist
|
||||
|
||||
Before considering this skill complete:
|
||||
|
||||
- [ ] Skill activates on appropriate prompts
|
||||
- [ ] Instructions are clear and unambiguous
|
||||
- [ ] Examples work as documented
|
||||
- [ ] Error handling covers common issues
|
||||
- [ ] Output format is consistent
|
||||
- [ ] Tool permissions are appropriate
|
||||
- [ ] Description includes trigger keywords
|
||||
- [ ] Related files are accessible
|
||||
- [ ] Team members can use successfully
|
||||
|
||||
## Notes
|
||||
|
||||
Additional context, tips, or warnings:
|
||||
|
||||
- Important consideration about usage
|
||||
- Performance implications
|
||||
- Security considerations
|
||||
- Compatibility notes
|
||||
|
||||
---
|
||||
|
||||
## Template Usage Guidelines
|
||||
|
||||
### Writing the Description (Frontmatter)
|
||||
|
||||
The `description` field is **critical** for skill discovery. Follow these rules:
|
||||
|
||||
1. **Be Specific**: Include exact terms users would say
|
||||
- ❌ "Helps with files"
|
||||
- ✅ "Process PDF files, extract text, fill forms. Use when working with PDFs or document extraction."
|
||||
|
||||
2. **Include Triggers**: Add keywords that should activate the skill
|
||||
- File types: PDF, .xlsx, .json
|
||||
- Operations: analyze, generate, convert, test
|
||||
- Technologies: React, Python, SQL
|
||||
|
||||
3. **Combine What + When**:
|
||||
```yaml
|
||||
description: [What it does]. Use when [specific scenarios]. Keywords: [terms].
|
||||
```
|
||||
|
||||
### Choosing Allowed Tools
|
||||
|
||||
Only include `allowed-tools` if you want to **restrict** Claude's capabilities:
|
||||
|
||||
- **Read-only skill**: `allowed-tools: Read, Grep, Glob`
|
||||
- **Code modification**: `allowed-tools: Read, Edit, Grep, Glob`
|
||||
- **Full file operations**: `allowed-tools: Read, Write, Edit, Glob, Grep, Bash`
|
||||
- **Omit field**: For standard permission model (recommended default)
|
||||
|
||||
### Organizing Supporting Files
|
||||
|
||||
For multi-file skills, structure as:
|
||||
|
||||
```
|
||||
skill-name/
|
||||
├── SKILL.md (main skill file)
|
||||
├── reference.md (detailed API/reference docs)
|
||||
├── examples.md (extensive examples)
|
||||
├── advanced.md (complex scenarios)
|
||||
└── scripts/ (helper scripts)
|
||||
├── helper.py
|
||||
└── validator.sh
|
||||
```
|
||||
|
||||
Reference them in SKILL.md with relative paths: `[reference](reference.md)`
|
||||
|
||||
### Writing Clear Instructions
|
||||
|
||||
1. **Use numbered steps** for sequential processes
|
||||
2. **Use bullet points** for non-sequential information
|
||||
3. **Bold key actions** for emphasis
|
||||
4. **Include decision points**: "If X, then do Y; otherwise do Z"
|
||||
5. **Specify tools to use**: "Use the Read tool to..." not just "Read the file"
|
||||
|
||||
### Testing Your Skill
|
||||
|
||||
After creating a skill, test with prompts that:
|
||||
1. Match the description exactly
|
||||
2. Use trigger keywords
|
||||
3. Mention related file types
|
||||
4. Describe the scenario differently
|
||||
5. Come from a teammate's perspective
|
||||
|
||||
### Progressive Disclosure
|
||||
|
||||
Claude loads files **on demand**. Structure content so:
|
||||
- Essential information is in SKILL.md
|
||||
- Detailed references are in separate files
|
||||
- Claude only reads what it needs
|
||||
|
||||
Example:
|
||||
```markdown
|
||||
For basic usage, follow the instructions above.
|
||||
For advanced scenarios, see [advanced.md](advanced.md).
|
||||
For complete API reference, see [reference.md](reference.md).
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Quick Reference Card
|
||||
|
||||
| Element | Purpose | Required |
|
||||
|---------|---------|----------|
|
||||
| `name` | Skill display name | ✅ Yes |
|
||||
| `description` | Discovery & when to use | ✅ Yes |
|
||||
| `allowed-tools` | Restrict tool access | ❌ Optional |
|
||||
| Instructions | Step-by-step guidance | ✅ Yes |
|
||||
| Examples | Concrete usage demos | ✅ Recommended |
|
||||
| Best Practices | Do's and don'ts | ✅ Recommended |
|
||||
| Error Handling | Troubleshooting | ❌ Optional |
|
||||
| Related Files | Supporting docs | ❌ As needed |
|
||||
| Version History | Track changes | ✅ Recommended |
|
||||
|
||||
---
|
||||
|
||||
**Remember**: Skills are about **packaging expertise** so Claude can apply specialized knowledge at the right time. Keep them focused, clear, and well-tested.
|
||||
Reference in New Issue
Block a user