Skip to content
Development
Skill

/skill-authoring-guide

Create or refactor high-quality skills with lean frontmatter, progressive disclosure, and optional bundled helpers. Use when authoring reusable agent workflows.

From plugin
agent-powerups
8114 skills46 agents54 commands

Claude Code

$ npx -y skills add yeaight7/agent-powerups --skill skill-authoring-guide --agent claude-code

SKILL.md

skill-authoring-guide.SKILL.md
name: skill-authoring-guide
description: Create or refactor high-quality skills with lean frontmatter, progressive disclosure, and optional bundled helpers. Use when authoring reusable agent workflows.

Skill Authoring Guide

Use this skill when creating or improving a reusable skill.

What Good Skills Do

  • Trigger reliably from `name` and `description` — the description must be specific enough to avoid false triggers.
  • Stay short in `SKILL.md` and move bulk detail into `references/` or `scripts/`.
  • Teach a **workflow or decision pattern**, not just dump background information.
  • Include scripts or references only when they eliminate repeated work or prevent ambiguity.

Frontmatter Template

---
name: kebab-case-matching-directory-name
description: Use when [trigger condition]. Does [what it does]. [Optional: NOT for X.]
---

Body Format

Default to a pure Markdown body after the YAML frontmatter. Use headings such as `## Purpose`, `## When to Use`, `## Workflow`, and `## Verification`. Do not use XML-like tags such as `<Purpose>`, `<Workflow>`, or `<Use_When>` as normal top-level sections. XML-like tags are acceptable only when they strictly delimit nested examples, quoted input, external documents, or machine-readable prompt payloads.

**Good description** (specific, trigger-clear):

Use when designing or reviewing filesystem MCP access, path boundaries, allowed roots, and method allowlists.

**Weak description** (too broad, won't trigger reliably):

Helps with MCP things and file access.

Workflow

1. Define the job

  • What specific problem does this skill solve?
  • When should it trigger? (Be concrete — "when the user mentions X" or "when you're about to do Y".)
  • What should it explicitly NOT handle? State the boundary.

2. Write strong frontmatter

  • `name` must match the directory name exactly.
  • `description` must say what the skill does AND when to use it in one sentence.

3. Keep the body lean

  • `SKILL.md` should be readable in one focused pass — target 50–120 lines.
  • Use Markdown headings for top-level structure.
  • Move bulky reference material into `references/`.
  • Move deterministic scripts (validators, init scripts) into `scripts/`.
  • If `SKILL.md` exceeds 150 lines, split off the excess into a reference file.

4. Design progressive disclosure

  • `SKILL.md`: core workflow, when to use, safety constraints.
  • `references/`: detailed patterns, full checklists, long examples.
  • `scripts/`: automation helpers.

5. Validate before publishing

  • Check that every file path mentioned in the skill actually exists.
  • Remove any `references/` links that point to non-existent files.
  • Verify the skill can be read in under 2 minutes.
  • Test the trigger: does the description reliably route to this skill for the intended use case?

Skill Length Guide

| Section | Target | |---|---| | Frontmatter description | 1 sentence, 15–30 words | | `SKILL.md` body | 50–120 lines | | Individual workflow steps | 1–3 lines each | | References total | as needed, not in `SKILL.md` |

Bundled Helpers

  • `scripts/init_skill.py` — scaffold a new skill directory
  • `scripts/package_skill.py` — package for distribution
  • `scripts/quick_validate.py` — check frontmatter and dead references

Use them as optional helpers if they fit your workflow.

Verification

  • [ ] The name field matches the skill directory name exactly
  • [ ] The description states the trigger condition and what the skill does in one sentence
  • [ ] The body reads in one focused pass — within the length guide, with bulk detail moved to references
  • [ ] Every file path mentioned in the skill exists; dead reference links were removed
  • [ ] The trigger was tested: the description reliably routes the intended use case to this skill

Related Skill

Use `hard-won-skill-extractor` when the challenge is turning a hard-earned session into a reusable skill candidate.

Read more
@yeaight7
Ships withagent-powerups

Curated power-ups for coding agents: skills, slash commands, MCP configs, hooks, AGENTS.md templates, and workflows for serious software engineering. Claude Code, Codex, Antigravity CLI, Cursor and more

8114 skills46 agents
Get the whole plugin

Stars on GitHub

Momentum

stars in total
8
Star history of yeaight7/agent-powerups on GitHub, a chart by star-history.com

Other skills on agent-powerups.

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills12d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc2w293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react3d252k
@facebook@facebookInstall Skill

Questions about skill-authoring-guide.

Which coding agents can use skill-authoring-guide?
skill-authoring-guide installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.