agentleFS
MicrosoftKnown publishermicrosoft/Huabu/apps/server/src/prompt/skills/create-skill/SKILL.md

Create a user skill

Skill168 starsChanged 8 months agoMITView on GitHub

Create a new user skill at setting/skills/<id>/SKILL.md.

We split this skill into the rules it gives an agent

4 rules. About 0 are common, 2 are distinctive, and 2 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈2

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 2

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Must not collide with an existing skill id (check the catalogue).

    line 23
  2. Very specific:

    Must match [a-z0-9-]+ — no slashes, dots, underscores, or uppercase.

    line 24
  3. Very specific:

    Use fs_write exactly once:

    line 57
  4. Distinctive:

    Do not make Space changes in the same turn.

    line 73

≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “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

Create a user skill

You were called because the user typed /create-skill <instructions> in the chat input. Your job for this turn is create a brand-new user skill that captures the reusable how-to / recipe / pattern they described — no analysis or judgement required, just author it cleanly and write it.

Inputs you have

  • The free-text after /create-skill in the most recent user message — this is the brief. It may be terse ("a skill for warm-healing story outlines") or detailed ("…and use a 5-frame layout with these colour rules…"). Use what's there; do not ask the user clarifying questions unless the brief is literally empty.
  • The skill catalogue in your system prompt — scan it briefly to avoid duplicating an existing skill id. If a near-match exists, prefer /update-skill semantics over /create-skill, but only mention this in your final reply; do not silently switch modes.

Pick the id

  • Kebab-case, derived from the brief's noun phrase. Keep it short (≤ 5 words).
    • "warm-healing outline" → warm-healing-outline
    • "research paper summary" → research-paper-summary
  • Must not collide with an existing skill id (check the catalogue).
  • Must match [a-z0-9-]+ — no slashes, dots, underscores, or uppercase.

Compose the file

Submit the entire file via fs_write, including the YAML frontmatter fence. The skill id comes from the <id> directory segment in the path — it is not a frontmatter key. Frontmatter fields:

fieldvalue
namehuman-readable label (Title Case is fine)
descriptionone-sentence catalogue blurb — what the skill does, not when (the body covers when)
appliesToarray; default to ["ask", "operate"] unless the brief obviously narrows the surface

triggers and version are optional — omit unless the brief calls for them.

Body structure (use these section headings verbatim — keeps user skills consistent and easy to scan):

# <Display name>

## When to use
…short list of scenarios, written from the user's perspective.

## How to apply
…step-by-step / checklist / decision rules. Be concrete.

## Examples
…minimal, copy-pasteable. Optional but very valuable.

Body length: keep it tight. Every byte ends up in someone's prompt later; aim for ≤ 60 lines.

Write it

Use fs_write exactly once:

{
  "path": "skills/<id>/SKILL.md",
  "mode": "overwrite",
  "rationale": "<≥ 20 chars explaining why no existing skill fits>",
  "body": "---\nname: \"…\"\ndescription: \"…\"\nappliesTo: [\"ask\", \"operate\"]\n---\n\n# …\n\n## When to use\n\n…\n"
}

rationale is required by fs_write because this is a skill-create on a path that doesn't yet exist. Make it substantive — "the user explicitly requested this skill via /create-skill: <brief>" is the minimum bar; better if you can name a near-miss skill from the catalogue you considered and explain why it didn't fit.

After writing

  • Briefly confirm to the user: skill id, one-line summary of what it does, and a reminder that they can now invoke it via /<id>.
  • Do not make Space changes in the same turn; this slash skill is write-the-skill-and-stop.

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.

Reviews can't be read right now.

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.