brainstorming
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or planning anything new, in software or out of it (a talk, a business, a renovation).
create-skillCreate or update Claude Code skills following Anthropic's official skill standard. Use when user says "create a skill", "new skill", "write a skill", "update a skill", "skill standard", or any time a new SKILL.md file needs to be created. Also use when reviewing existing skills for standards compliance.
Independent GitHub snapshot · Automated classification · Original documentation governs
Reference for creating skills that follow the Anthropic skill standard (github.com/anthropics/skills).
skill-name/
├── SKILL.md (required)
│ ├── YAML frontmatter (name, description required)
│ └── Markdown instructions (<500 lines)
└── Bundled Resources (optional)
├── scripts/ - Executable code for deterministic tasks
├── references/ - Docs loaded into context as needed
└── assets/ - Templates, icons, fonts for outputs
Skills load in three layers:
Keep SKILL.md under 500 lines. If approaching the limit, move content to references/ with clear pointers about when to read each file.
Two required fields:
---
name: skill-name
description: What the skill does AND when to trigger it. All "when to use" context goes here, not in the body.
---
The description field is the primary mechanism for skill invocation. Claude tends to undertrigger skills, so descriptions should be slightly pushy.
Weak: "Generate LinkedIn posts for professional audiences."
Strong: "Write high-performing LinkedIn posts. Use when user says 'write a LinkedIn post', 'LinkedIn content', 'post for LinkedIn', 'professional audience post', or wants to share insights, lessons, or updates with a professional network - even if they don't explicitly say LinkedIn."
Include:
Every skill body should include these components:
What this skill does and the critical distinction that shapes how it works. Name the book or methodology the skill is grounded in.
Step-by-step process. Use ### Step N: headings. Each step should be actionable and specific.
What NOT to do. Format as Bad/Good pairs so the model can calibrate:
## Anti-Patterns
**1. Descriptive name**
Bad: "example of wrong approach"
Good: "example of correct approach"
Checkbox list the model uses to verify output before delivering:
## Quality Checklist
- [ ] Check 1
- [ ] Check 2
The model follows instructions better when it understands the reasoning. Heavy-handed MUSTs without context are less effective than explaining why something matters.
Weak: "Never exceed 5 bullets per slide."
Strong: "Keep slides to 3-5 bullets. Beyond 5, the audience reads instead of listening - the slide competes with the speaker instead of supporting them."
Write instructions as commands: "Open with a personal admission" not "You should open with a personal admission."
Write instructions that work across varied inputs. Avoid narrow tweaks targeting only specific examples - look for underlying patterns.
Include concrete examples. Format with Input/Output or Bad/Good pairs. Examples calibrate the model's output better than abstract rules.
Skills grounded in a proven framework (book, methodology, model) are more credible, consistent, and unique. Name the source in the Overview section.
Good examples: Radical Candor (feedback), The Pyramid Principle (exec summaries), SPIN Selling (discovery calls), How Google Tests Software (risk-based testing).
Use init_skill.py to create the folder and register in skills.json in one step:
python3 scripts/init_skill.py <skill-name> --role <role> --description "<one-liner>" --tags "<tag1,tag2>"
Valid roles: pm, engineer, qa, designer, content-creator, devops, shared, leadership, program-delivery-manager, customer-success, recruiter, consultant, sales, marketing, founder, data-scientist, data-engineer, security
This creates skills/by-role/<role>/<skill-name>/SKILL.md and adds an entry to skills.json. Always scaffold first, then write the SKILL.md content.
After writing, validate:
python3 scripts/validate_skill.py
When creating skills for the claude-skills public repo, replace all personal/project references:
| Context | Placeholder |
|---|---|
| Personal name | [your name] |
| Newsletter or blog | [your newsletter] |
| Website domain | [your-domain] |
| Professional niche | [your niche] |
| Subject area | [your topic] |
| Target audience | [your audience] |
| Company name | [your company] |
| Team name | [your team] |
| Client name | [your client] |
| Customer name | [customer name] |
| Program or project | [your program] |
Before finalizing any skill:
init_skill.py (creates folder + registers in skills.json)name and description### Step N: headingsreferences/ with clear pointerspython3 scripts/validate_skill.py passes