agentleFS
guerrilla2799guerrilla2799/ops-and-scale-os/skills/skill-authoring/SKILL.md

skill-authoring

Skill1 starsChanged 3 months agoMITView on GitHub

Use when writing or fixing a Claude Code skill, or when the user says "write a skill", "my skill never triggers", "the wrong skill loads", "skill description", "turn this into a skill", "extract a skill", "the skill is too long". Covers anatomy, trigger design, negative boundaries, context economy, and the router pattern for large skill sets. Writes the SKILL.md.

89 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use cloud-api-recipe-authoring, codebuddy-ide-mcp-upgrade 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.
  • TencentCloudBaseSkill

    cloud-api-recipe-authoring

    Author or revise a cloud-api-operations recipe (config/source/skills/cloud-api-operations/references/recipes/). Encodes why the long tail of control-plane capabilities is deliberately NOT wrapped as MCP/CLI tools, the API-first admission test for whether a capability deserves a recipe, the negative and positive lists, the fixed recipe structure, the writing rules distilled from writing-for-agents, the user-facing copy red lines, and the product regeneration/verification pipeline. Also routes contributors (and their agents) to the contribution flow and the pre-PR self-test protocol in references/contributing.md. Use when adding a recipe, judging whether a scenario belongs in the recipe set, updating the recipes index, re-checking existing recipes against the admission test, or onboarding someone who wants to submit one.

    Also in 3 projects that use this

  • TencentCloudBaseSkill

    codebuddy-ide-mcp-upgrade

    升级 CodeBuddy IDE(genie 扩展)内置的 CloudBase MCP,以及 MCP 发版时同步 IDE 侧白名单。当用户提到「更新 IDE 里的 MCP」「内置 MCP 版本太老」「IDE 集成的 CloudBase 功能不足」「改工具白名单 toolWhiteList」「把新 bundle 打进 CodeBuddy」「白名单漂移」「MCP 发版要同步什么」时使用。覆盖:解包定位内置 bundle 与内嵌配置、重新构建 mcp bundle、生成新的工具白名单与系统提示词、安全注入 IDE 并备份、用 MCP 协议验证工具清单、人工端到端验收、一键回滚。

    Also in 3 projects that use this

  • DIL8654Skill

    api-contract-review

    Review ASP.NET Core Web API contracts for HTTP semantics, versioning, backward compatibility, and response consistency. Use when the user asks to review an API, check endpoints, validate REST behavior, or before releasing contract changes.

    Also in 5 projects that use this

  • zaxbysauceSkill

    pr-review-fix

    Codex adapter for addressing pull request review feedback in opencode-swarm. Use when the user asks to fix PR review comments, requested changes, reviewer findings, CI-review notes, or a pasted review summary with low false-positive tolerance.

    Also in 3 projects that use this

  • albertdobmeyerSkill

    git-workflows

    Advanced git operations beyond add/commit/push. Use when rebasing, bisecting bugs, using worktrees for parallel development, recovering with reflog, managing subtrees/submodules, resolving merge conflicts, cherry-picking across branches, or working with monorepos.

    Also in 3 projects that use this

  • rogue-dev-studioSkill

    frontend-engineering

    Expert frontend application engineering: accessible UI structure, state and data-fetching discipline, form/validation UX, responsive layouts, performance budgets, and integration with API contracts. Use when building or refining SPA/web screens, design-system consumption, client-side routing, or fixing UI reliability (loading, empty, and error states).

    Also in 3 projects that use this

  • +6 more from TencentCloudBase

The file

We split this skill into the rules it gives an agent

6 rules. 0 are common, 5 are distinctive, and 1 is very specific to this project.

  • 0

    Common

    Most of the 80 edited versions we read keep these.

  • 5

    Distinctive

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Write a skill that actually loads, does one thing, and stays maintainable.

    line 9
  2. Distinctive:

    If two descriptions in your set could match the same sentence, one of them is wrong.

    line 49
  3. Distinctive:

    Every loaded skill occupies context.

    line 94
  4. Very specific:

    Templates go in templates/: Not pasted into the body

    line 97
  5. Distinctive:

    Never assume discovery. Skill loaders fail silently.

    line 109
  6. Distinctive:

    Never hardcode positioning, ICP, or guardrails: Read them from the context portfolio

    line 135

“Common” is measured: kept by at least 6 in 10 of the 80 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.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Skill Authoring

Write a skill that actually loads, does one thing, and stays maintainable. Selection happens on the description, so most skill failures are description failures.

When to use

  • Writing a new skill
  • A skill exists and never fires
  • The wrong skill fires on a request
  • A skill set has grown past a dozen and collisions started

Inputs

  • Reads: workspace/agents/<name>/brief.md, the context portfolio
  • Needs from user: the procedure, the phrases a real person uses to ask for it, and the output shape

Workflow

1. Get the description right, because nothing else matters if it is wrong

Selection happens on the description alone. The body is invisible until after selection.

A description needs three things:

description: <what it does, in one clause>. Use when the user says
  "<literal phrase>", "<literal phrase>", "<sloppy real-world phrase>".
  <What it produces and where it writes.>

Use the literal phrases people actually type, including the ungrammatical ones. "our data is a mess" is a real trigger. "when the user requires data quality remediation" is not, because nobody says that.

State the output. A description that says what it writes helps both selection and the reader.

2. Write the negative boundary

Half of trigger problems are over-firing, not under-firing.

Do NOT use this skill when:
- <adjacent case> → use <other skill>
- <adjacent case> → do it inline, no skill needed

If two descriptions in your set could match the same sentence, one of them is wrong. Add a "for X, see Y" pointer to both.

3. Follow the anatomy

---
name: kebab-case, matches the directory name
description: as above
---

# Title

One or two sentences on what this does and the belief behind it.

## When to use
Bullets. Concrete situations, not abstractions.

## Inputs
- Reads: <files this expects to find>
- Needs from user: <what to ask for, in one batch>

## Workflow
### 1. <Numbered step>
### 2. <Numbered step>
Tables for reference data. Code blocks for output shapes and arithmetic.

## Output
- Writes: <exact path>
- Prints: <what appears in the conversation>

## Rules & quality bar
Bold-lead bullets. The non-negotiables. This is where the opinion lives.

## Related skills
- Requires / Hands off to / See also

4. One skill, one job

The test: can you state what it does in one sentence with no "and"? If not, it is two skills.

Symptoms of a skill that is doing too much: a workflow with more than about eight steps, two different output files, or a name containing "and" where the two halves are separable.

5. Manage the context cost

Every loaded skill occupies context.

  • Long reference material goes in docs/ or references/. The skill points at it. This keeps the loaded footprint small and makes the reference reusable
  • Templates go in templates/. Not pasted into the body
  • Past roughly a dozen skills, add a router. One skill holds the routing table and loads exactly one child. Flat sets above that size collide
  • State goes in files. Anything that should survive the session gets written to workspace/

6. Write the rules section like you mean it

The "Rules & quality bar" section is what makes a skill more than a description of a process. It is where you say the unwelcome thing: what to refuse, what to always check, what people get wrong.

A skill with a vague rules section produces vague output. Every rule should be checkable.

7. Verify it loads

Never assume discovery. Skill loaders fail silently.

[ ] Directory name matches the frontmatter name
[ ] The description contains phrases a real user would type
[ ] It appears in a fresh session
[ ] It fires on the intended phrase
[ ] It does NOT fire on the adjacent phrase you wrote a boundary for
[ ] Every path it references exists

The last two are the ones people skip, and they are the two that produce the "it works on my machine" failure.

Output

  • Writes: skills/<name>/SKILL.md
  • Uses: templates/skill-template.md
  • Prints: the skill, plus the verification checklist result

Rules & quality bar

  • The description is the product. Spend real time on it
  • Literal user phrases, including sloppy ones
  • Every skill has a negative boundary
  • One skill, one job. No "and" in the sentence that describes it
  • Reference material lives outside the skill body
  • Router pattern past a dozen skills
  • Verify it loads and verify it does not over-fire. Both
  • Never hardcode positioning, ICP, or guardrails. Read them from the context portfolio

Related skills

  • Requires: agent-scoping, context-portfolio
  • Hands off to: agent-guardrails, then agent-rollout
  • See also: docs/build-surface.md on choosing between skill, subagent, hook, and script

Download now (ZIP)

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.