Claude Skills meta-skill: extract domain material (docs/APIs/code/specs) into a reusable Skill (SKILL.md + references/scripts/assets), and refactor existing Skills for clarity, activation reliability, and quality gates.
59
67%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./bundled/skills/claude-skills/SKILL.mdTurn scattered domain material into a Skill that is reusable, maintainable, and reliably activatable:
SKILL.md as the entrypoint (triggers, constraints, patterns, examples)references/ for long-form evidence and navigationscripts/ and assets/ for scaffolding and templatesTrigger this meta-skill when you need to:
references/This meta-skill is NOT:
Your output MUST include:
skills/<skill-name>/)SKILL.md with decidable triggers, boundaries, and reproducible examplesreferences/ with a references/index.mdskill-name/
|-- SKILL.md # Required: entrypoint with YAML frontmatter
|-- references/ # Optional: long-form docs/evidence/index
| `-- index.md # Recommended: navigation index
|-- scripts/ # Optional: helpers/automation
`-- assets/ # Optional: templates/configs/static assetsThe truly minimal version is just SKILL.md (you can add references/ later).
---
name: skill-name
description: "What it does + when to use (activation triggers)."
---Frontmatter rules:
name MUST match ^[a-z][a-z0-9-]*$ and SHOULD match the directory namedescription MUST be decidable (not "helps with X") and include concrete trigger keywordsSKILL.md Skeleton (Copy/Paste)---
name: my-skill
description: "[Domain] capability: includes [capability 1], [capability 2]. Use when [decidable triggers]."
---
# my-skill Skill
One sentence that states the boundary and the deliverable.
## When to Use This Skill
Trigger when any of these applies:
- [Trigger 1: concrete task/keyword]
- [Trigger 2]
- [Trigger 3]
## Not For / Boundaries
- What this skill will not do (prevents misfires and over-promising)
- Required inputs; ask 1-3 questions if missing
## Quick Reference
### Common Patterns
**Pattern 1:** one-line explanation
```text
[command/snippet you can paste and run]references/index.md: navigationreferences/...: long-form docs split by topic### Authoring Rules (Non-negotiable)
1. Quick Reference is for short, directly usable patterns
- Keep it <= 20 patterns when possible.
- Anything that needs paragraphs of explanation goes to `references/`.
2. Activation must be decidable
- Frontmatter `description` should say "what + when" with concrete keywords.
- "When to Use" must list specific tasks/inputs/goals, not vague help text.
- "Not For / Boundaries" is mandatory for reliability.
3. No bluffing on external details
- If the material does not prove it, say so and include a verification path.
### Workflow (Material -> Skill)
Do not skip steps:
1. Scope: write MUST/SHOULD/NEVER (three sentences total is fine)
2. Extract patterns: pick 10-20 high-frequency patterns (commands/snippets/flows)
3. Add examples: >= 3 end-to-end examples (input -> steps -> acceptance)
4. Define boundaries: what is out-of-scope + required inputs
5. Split references: move long text into `references/` + write `references/index.md`
6. Apply the gate: run the checklist and the validator
### Quality Gate (Pre-delivery Checklist)
Minimum checks (see `references/quality-checklist.md` for the full version):
1. `name` matches `^[a-z][a-z0-9-]*$` and matches the directory name
2. `description` states "what + when" with concrete trigger keywords
3. Has "When to Use This Skill" with decidable triggers
4. Has "Not For / Boundaries" to reduce misfires
5. Quick Reference is <= 20 patterns and each is directly usable
6. Has >= 3 reproducible examples
7. Long content is in `references/` and `references/index.md` is navigable
8. Uncertain claims include a verification path (no bluffing)
9. Reads like an operator's manual, not a documentation dump
Validate locally:
```bash
# From repo root (basic validation)
./skills/claude-skills/scripts/validate-skill.sh skills/<skill-name>
# From repo root (strict validation)
./skills/claude-skills/scripts/validate-skill.sh skills/<skill-name> --strict
# From skills/claude-skills/ (basic validation)
./scripts/validate-skill.sh ../<skill-name>
# From skills/claude-skills/ (strict validation)
./scripts/validate-skill.sh ../<skill-name> --strictGenerate a new Skill skeleton:
# From repo root (generate into ./skills/)
./skills/claude-skills/scripts/create-skill.sh my-skill --full --output skills
# From skills/claude-skills/ (generate into ../ i.e. ./skills/)
./scripts/create-skill.sh my-skill --full --output ..
# Minimal skeleton
./skills/claude-skills/scripts/create-skill.sh my-skill --minimal --output skillsTemplates:
assets/template-minimal.mdassets/template-complete.mdcreate-skill.sh to scaffold skills/<skill-name>/description as "what + when"references/ and wire references/index.mdvalidate-skill.sh --strict and iterateSKILL.md with long pasted documentationreferences/ (split by topic)skills/<skill-name>/validate-skill.sh (non-strict) to get warningsvalidate-skill.sh --strict to enforce the specreferences/quality-checklist.md before shippingLocal docs:
references/index.mdreferences/skill-spec.mdreferences/quality-checklist.mdreferences/anti-patterns.mdreferences/README.md (upstream official reference)External (official):
skills/claude-skills/references/ + upstream official docs in references/README.mdvalidate-skill.sh is heuristic; strict mode assumes the recommended section headingsf627ab5
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.