agent-instructions
Use when writing project instructions for a coding agent (CLAUDE.md, AGENTS.md, or equivalent). Covers what belongs in them, what…
Use when writing a new skill for an AI agent. Covers scoping, description writing for reliable triggering, progressive disclosure, and the difference between a skill and a prompt. Trigger on "write a skill for", "turn this prompt into a skill", "create a skill.md", "how do i
Claude Code
$ npx -y skills add nimadorostkar/Claude-Skills-collection --skill skill-authoring --agent claude-code
Codex
$ npx skills add nimadorostkar/Claude-Skills-collection --skill skill-authoring -a codex -y
Cursor
$ npx skills add nimadorostkar/Claude-Skills-collection --skill skill-authoring -a cursor -y
Gemini CLI
$ npx skills add nimadorostkar/Claude-Skills-collection --skill skill-authoring -a gemini-cli -y
GitHub Copilot
$ npx skills add nimadorostkar/Claude-Skills-collection --skill skill-authoring -a github-copilot -y
OpenCode
$ npx skills add nimadorostkar/Claude-Skills-collection --skill skill-authoring -a opencode -y
Windsurf
$ npx skills add nimadorostkar/Claude-Skills-collection --skill skill-authoring -a windsurf -y
name: skill-authoring description: Use when writing a new skill for an AI agent. Covers scoping, description writing for reliable triggering, progressive disclosure, and the difference between a skill and a prompt. Trigger on "write a skill for", "turn this prompt into a skill", "create a skill.md", "how do i write a skill description". Do not use for auditing an existing skill or library — see the skill-review skill; for workflows the user invokes by name, see the slash-commands skill. metadata: category: agent-tooling version: 1.0.0 tags: [skills, authoring, agents, prompting]
Write a skill that loads at the right time and materially changes the agent's behavior when it does. A skill that never triggers is dead weight; a skill that triggers constantly is a system prompt with extra steps.
1. **Scope it to one capability** — A skill that covers "backend development" is too broad to trigger precisely and too shallow to be useful. A skill about API design is neither. 2. **Write the description last, and carefully** — It is the only part the agent sees before deciding whether to load the skill. It must state what the skill does *and* when to use it, using the words a user would actually use. 3. **Write the body as instructions, not as an essay** — The agent will act on it. Concrete steps, explicit constraints, worked examples. Prose about the philosophy of the domain is not actionable. 4. **Move detail into supporting files** — The main file is loaded whenever the skill triggers, so it should be the part that is always needed. Reference material goes in adjacent files the agent reads on demand. 5. **Test the triggering** — With real phrasings, including the ones that should *not* trigger it. A skill that fires on every mention of "code" is a nuisance.
**A description that triggers, and one that does not:**
# Too vague: what is a "database helper"? A user will never phrase a request # in a way that matches this. description: A helpful skill for database stuff. # Precise, with the user's own vocabulary and an explicit boundary. description: > Use when a database query is slow or a table needs an index. Covers reading EXPLAIN output, composite and partial index design, N+1 detection, and lock contention. Trigger on "slow query", "add an index", "the page is slow and it's the database", or a pasted EXPLAIN plan. Do not use for schema design from scratch — see the data-modeling skill.
**Progressive disclosure — the main file stays small:**
skills/database-performance/
SKILL.md ~200 lines, always loaded when triggered
references/
explain-plans.md read only when analyzing a plan
index-types.md read only when choosing an index type
lock-modes.md read only when diagnosing contention
scripts/
slow_query_report.py executed, not read into contextIn the body: "For the meaning of each node type in an execution plan, read `references/explain-plans.md`." The agent loads it when the task requires it, and not otherwise.
**Testing that it triggers:**
Should trigger: "this endpoint takes 3 seconds and I think it's the database" -> yes "add an index to the orders table" -> yes "why is this query slow" -> yes [pastes an EXPLAIN ANALYZE output with no question] -> yes Should NOT trigger: "design a schema for a booking system" -> data-modeling "the frontend feels slow" -> web-performance "write a SQL query to find duplicates" -> sql
A curated library of 137 production-grade skills for Claude and other AI coding agents. Every skill follows one structure, speaks with one voice, and earns its place by changing what the agent does.
Use when writing project instructions for a coding agent (CLAUDE.md, AGENTS.md, or equivalent). Covers what belongs in them, what…
Use when an agent needs state that survives a session or a context compaction. Covers what to persist, file-based memory,…
Use when automating agent behavior with lifecycle hooks. Covers hook events, deterministic enforcement of rules the model should…
Use when packaging skills, commands, hooks, and MCP servers into a distributable plugin. Covers manifest structure, bundling,…
Use when reviewing or improving an existing agent skill. Covers triggering accuracy, content quality, redundancy with the base…
Use when creating reusable slash commands for an agent. Covers when a command beats a skill, argument handling, composing tool…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.