creating-skills
Skill4 starsChanged 2 months agoApache-2.0View on GitHub
Create high-quality Claude Code skills with proper structure, effective descriptions, and best practices. Use when creating a new skill, writing SKILL.md files, setting up skill directories, or asking how to make skills.
30 other projects use a version of this.
Adopted by
Most recently taken up by
- RiccardoGrin/skillstheir own version, first seen Nov 8, 2026
- myths-labs/musetheir own version, first seen Nov 6, 2026
- JustYannicc/skillstheir own version, first seen Nov 1, 2026
- vstlmkh/creating-skillstheir own version, first seen Nov 1, 2026
- jaktestowac/awesome-copilot-for-testerstheir own version, first seen Nov 1, 2026
- osmontero/opencode-skillstheir own version, first seen Oct 27, 2026
Used with
Projects with it also use building-chatgpt-apps, building-chat-interfaces and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
mjunaidcaSkillbuilding-chatgpt-apps
Guides creation of ChatGPT Apps with interactive widgets using OpenAI Apps SDK and MCP servers. Use when building ChatGPT custom apps with visual UI components, embedded widgets, or rich interactive experiences. Covers widget architecture, MCP server setup with FastMCP, response metadata, and Developer Mode configuration. NOT when building standard MCP servers without widgets (use building-mcp-servers skill instead).
Also in 4 projects that use this
mjunaidcaSkillbuilding-chat-interfaces
Build AI chat interfaces with custom backends, authentication, and context injection. Use when integrating chat UI with AI agents, adding auth to chat, injecting user/page context, or implementing httpOnly cookie proxies. Covers ChatKitServer, useChatKit, and MCP auth patterns. NOT when building simple chatbots without persistence or custom agent integration.
Also in 4 projects that use this
- +10 more from mjunaidca
Other versions30 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 30
- NangoHQ/nango★ 13ksame name
- microsoft/FluidFramework★ 4.9ksame name
- dotnet/fsharp★ 4.3ksame name
- AgentWorkforce/relay★ 1.1ksame name
- microsoft/vstest★ 976same name
- redai-infra/Relax★ 675same name
- pr-pm/prpm★ 124same name
- jaktestowac/awesome-copilot-for-testers★ 118same name
- microsoft/upgrade-agent-plugins★ 46same name
- myths-labs/muse★ 38same name
20 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository43 other files it gives its agents.
- skills/vercel-react-best-practices/AGENTS.mdAGENTS.md
- agent-notepadSkill
- architecture-reviewerSkill
- backend-service-auditorSkill
- channel-listenerSkill
- code-reviewerSkill
- coder-file-transferSkill
- cold-start-generatorSkill
- critical-thinkingSkill
- dark-factory-buildSkill
- dependency-risk-auditorSkill
- df-adversary-gateSkill
- df-app-walkthroughSkill
- df-context-storeSkill
- df-data-transform-lensSkill
- df-dispatch-subagentsSkill
- df-infrastructureSkill
- df-observabilitySkill
- df-product-ownerSkill
- df-qaSkill
- df-solution-architectSkill
- df-tdd-developerSkill
- df-ui-verifySkill
- df-video-intakeSkill
- dx-maintainability-reviewerSkill
- frontend-auditorSkill
- handoffSkill
- microservices-architectSkill
- production-readiness-reviewerSkill
- repo-docsSkill
- requirements-discoverySkill
- sc-auditSkill
- sc-devSkill
- scope-initSkill
- scope-retireSkill
- security-threat-modelerSkill
- service-mapperSkill
- test-quality-gatekeeperSkill
- vercel-react-best-practicesSkill
- vinculum-loopSkill
- vinculum-mapSkill
- web-design-guidelinesSkill
- work-autonomouslySkill
The file
We split this skill into the rules it gives an agent
7 rules. 0 are common, 4 are distinctive, and 3 are very specific to this project.
0
Common
Most of the 28 edited versions we read keep these.
4
Distinctive
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 117
Use allowed-tools to limit Claude's capabilities when the skill is active:
- Distinctive: line 131
Read-only analysis (prevent accidental writes)
- Very specific: line 137
Keep SKILL.md focused. Link to supporting files for detail:
- Distinctive: line 158
Missing dependencies: - Document required packages
- Distinctive: line 159
No examples: - Always include concrete usage
- Very specific: line 160
Monolithic SKILL.md: - Use progressive disclosure for >500 lines
- Distinctive: line 165
Use CHECKLIST.md to validate your skill before committing.
“Common” is measured: kept by at least 6 in 10 of the 28 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Creating Claude Code Skills
A meta-skill for creating well-structured, discoverable, and effective Claude Code skills.
Overview
Claude Skills are markdown files that teach Claude specialized knowledge. They're automatically discovered based on their description, so writing effective descriptions is critical.
Quick Start
- Choose location based on scope:
- Personal:
~/.claude/skills/your-skill/ - Project:
.claude/skills/your-skill/
- Personal:
- Create directory and SKILL.md:
mkdir -p .claude/skills/your-skill - Write SKILL.md with required frontmatter:
--- name: your-skill-name description: [Trigger-rich description] --- - Validate using CHECKLIST.md
The Golden Rule: Description Is Everything
Claude uses the description field to decide when to apply your skill. A poor description means your skill never triggers.
Description Formula
[What it does] + [Specific capabilities] + [Trigger phrases]Bad vs Good Descriptions
| Bad | Good |
| "Helps with testing" | "Write and run unit tests for TypeScript. Use when creating tests, mocking dependencies, or improving test coverage." |
| "Database helper" | "Generate SQL migrations and queries for PostgreSQL. Use when creating tables, writing queries, or migrating schemas." |
| "Code review" | "Review code for bugs, security issues, and style violations. Use when reviewing PRs, auditing code, or checking for vulnerabilities." |
Skill Structure
Minimal (Single File)
your-skill/
└── SKILL.mdStandard (With Supporting Docs)
your-skill/
├── SKILL.md # Overview + quick start (< 500 lines)
├── REFERENCE.md # Detailed documentation
├── EXAMPLES.md # Usage examples
└── CHECKLIST.md # Validation checklistAdvanced (With Scripts)
your-skill/
├── SKILL.md
├── docs/
│ ├── api.md
│ └── patterns.md
└── scripts/
├── setup.sh # Executed, not loaded as context
└── validate.pySKILL.md Template
See TEMPLATES.md for ready-to-use templates.
---
name: skill-name # Lowercase, hyphens only (max 64 chars)
description: [description] # Max 1024 chars - MOST IMPORTANT FIELD
allowed-tools: Read, Grep # Optional - restrict tool access
---
# Skill Name
## Overview
[1-2 sentence summary of what this skill does]
## When to Use
[Specific scenarios, triggers, and use cases]
## Instructions
[Step-by-step guidance - numbered for clarity]
## Examples
[Concrete usage examples with expected outcomes]
## Resources
[Links to supporting files if applicable]Tool Restrictions
Use allowed-tools to limit Claude's capabilities when the skill is active:
# Read-only skill
allowed-tools: Read, Grep, Glob
# Python automation only
allowed-tools: Bash(python:*)
# Multiple specific commands
allowed-tools: Read, Bash(git:*, npm:*, pnpm:*)When to restrict:
- Read-only analysis (prevent accidental writes)
- Specific tooling (Python scripts, Git operations)
- Security-sensitive workflows
Progressive Disclosure
Keep SKILL.md focused. Link to supporting files for detail:
## Quick Reference
[Essential info here]
## Detailed Documentation
For complete API reference, see [REFERENCE.md](REFERENCE.md).
For troubleshooting, see [TROUBLESHOOTING.md](TROUBLESHOOTING.md).Why it matters:
- Claude loads SKILL.md first
- Supporting files load on-demand
- Keeps context focused for better performance
- Scripts execute without consuming tokens
Common Mistakes to Avoid
- Vague descriptions - Include specific trigger keywords
- Too broad scope - One skill = one purpose
- Missing dependencies - Document required packages
- No examples - Always include concrete usage
- Monolithic SKILL.md - Use progressive disclosure for >500 lines
- Similar descriptions - Make each skill's description distinct
Quality Checklist
Use CHECKLIST.md to validate your skill before committing.
Examples
See EXAMPLES.md for complete, production-ready skill examples.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

