Agent skill
skill-creator
Creates new Agent Skills (SKILL.md files) following the agentskills.io open standard. Use when user asks to "create a skill", "write a skill", "make a new skill", "build a skill", "scaffold a skill", or needs help with skill structure, frontmatter, progressive disclosure, or skill authoring best practices.
Install this agent skill to your Project
npx add-skill https://github.com/jiyeol-lee/dotfiles/tree/main/.opencode/skills/skill-creator
SKILL.md
Workflow
-
Gather context — Interview the user to understand the skill's purpose:
- What task or domain does the skill cover?
- What specific expertise or procedures should it encode?
- What source material exists? (existing docs, code patterns, runbooks, past conversations)
- What tools or APIs does the skill need?
- Who is the target agent runtime? (Claude Code, Cursor, Codex, or portable)
-
Determine skill scope — Validate the skill is a coherent unit:
- Too narrow → multiple skills load for one task, causing overhead and conflicts
- Too broad → skill triggers when it shouldn't, polluting context
- Right size → one skill covers one coherent workflow that composes well with others
- Ask: "If this were a function, would it have a single clear responsibility?"
-
Draft the frontmatter — Read
references/specification.mdfor validation rules, then write:name: kebab-case identifier (lowercase, numbers, hyphens only, max 64 chars)description: what the skill does + when to use it with specific trigger phrases (max 1024 chars)
-
Draft the body — Write the SKILL.md instructions following these principles:
- Read
references/best-practices.mdfor detailed authoring guidance - Start from real expertise — use the user's source material, not generic knowledge
- Apply the litmus test to every instruction: "Would the agent get this wrong without this?" — if no, cut it
- Favor procedures over declarations — teach HOW to approach problems, not WHAT to produce
- Include at least one concrete working example (input → output)
- Use prescriptive language where exactness matters ("MUST", "ALWAYS", "NEVER")
- Use flexible language where variation is fine ("consider", "when appropriate")
- Read
-
Structure for progressive disclosure — If the skill needs detailed content:
- Keep SKILL.md body under 500 lines / ~5,000 tokens
- Move detailed reference material to
references/files - Move reusable scripts to
scripts/directory - Use conditional loading: "Read
references/X.mdwhen [specific condition]" - Never use generic "see references/ for details"
-
Optimize the description — Read
references/description-guide.mdfor optimization techniques:- The description is the trigger mechanism — it determines if the skill activates
- Include specific trigger phrases matching real user language
- Use imperative phrasing: "Use when..." or "Use this skill when..."
- Focus on user intent, not implementation details
- Err on the side of being explicit about when the skill applies
-
Validate against checklist — Read
references/checklist.mdand verify every item passes -
Present draft for approval — Show the complete skill to the user:
- Display the directory structure
- Show SKILL.md content
- Show any reference files
- Explain design decisions (scope, what was included/excluded, progressive disclosure choices)
- Ask for approval before writing files
-
Apply — After approval, create the skill directory and write all files
Output Template
Use this structure for the generated SKILL.md (adapt sections as needed):
---
name: <kebab-case-name>
description: <what it does>. Use when <trigger conditions>.
---
## Quick Start / Workflow
[Core instructions — what the skill does step by step]
## Key Patterns
[Essential patterns, gotchas, edge cases the agent would get wrong without guidance]
## Constraints
[Hard rules — things that are NEVER allowed]
Key Principles
- Real expertise over generic knowledge: A skill built from project-specific runbooks outperforms one from "best practices" articles
- Concise beats comprehensive: Stepwise guidance + working example > exhaustive documentation
- Context is shared: Every token competes with conversation history, system context, and other skills
- Test the litmus: "Would the agent get this wrong without this instruction?"
- Procedures over declarations: Teach approach patterns, not specific answers
- Progressive disclosure: Load detailed content only when needed
Constraints
- Never generate skills from generic LLM knowledge alone — always ground in user-provided context
- Never create skills that exceed 500 lines in SKILL.md body
- Never use generic reference loading ("see docs for details") — always use conditional loading
- Always validate against the checklist before presenting to user
- Always get user approval before writing files
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
pull-request
Analyzes branch diffs, drafts PR titles and bodies following Conventional Commits, and creates or updates pull requests via GitHub CLI. Use when user asks to "create a PR", "open a pull request", "update PR description", "draft a PR", or "submit changes for review".
commit
Analyzes repository state, proposes commit messages following Conventional Commits, and applies commits after user approval. Use when asked to "commit", "commit changes", "save my work", "create a commit", or "stage and commit".
review
Performs code review analysis across Quality, Regression, Documentation, and Performance focus areas with severity-classified findings. Use when user asks to "review code", "review this PR", "check code quality", "review changes", or "do a code review".
check
Verifies code quality through linting, type-checking, formatting, and testing. Use when asked to "run checks", "validate code", "lint this", "check for errors", "run tests", or "verify code quality" before or after changes.
task-breakdown
Decomposes complex goals into atomic, dependency-aware work items with execution plans. Use when asked to "break down this task", "create a task plan", "decompose this goal", "split this work", "plan the implementation", "what are the steps", or "create an execution plan".
code
Implements features, fixes bugs, refactors code, and writes unit and integration tests. Use when asked to "implement", "fix a bug", "refactor", "add a feature", "write tests", "add test coverage", or "update code".
Didn't find tool you were looking for?