agentleFS
bntvllntbntvllnt/agent-skills/skill-builder/SKILL.md

skill-builder

Skill16 starsChanged 8 months agoMITView on GitHub

Build correct, consistent Agent Skills for any compatible agent product. Use when creating, updating, renaming, deleting, or validating a skill, or when improving skill descriptions, structure, safety rules, progressive disclosure, or trigger reliability.

  • Deletes or force-pushes

74 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use contract-test, literature-research 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.
  • squall-chuaSkill

    contract-test

    Test a running API against its own contract — OpenAPI, GraphQL, protobuf, or AsyncAPI — from the outside, and report every drift between what the contract promises and what the API does.

    Also in 3 projects that use this

  • nickjwellsSkill

    literature-research

    Search academic literature and perform deep research reviews. Use when user asks to search PubMed, find academic papers, or do literature reviews.

    Also in 3 projects that use this

  • nopandererSkill

    commit-and-push

    Automatically analyze git changes, generate Conventional Commits compliant commit messages, commit changes, and push to remote in a single automated workflow. Use when the user invokes /commit-and-push or explicitly requests to automatically commit and push changes following Conventional Commits format (feat:, fix:, docs:, etc.). This skill provides a fully automated git workflow without manual intervention.

    Also in 3 projects that use this

  • MicrosoftSkill

    skill-reviewer

    Review skill PRs with structured severity-rated feedback covering token budgets, routing conflicts, and repo conventions. WHEN: \"review skill\", \"review skill PR\", \"review skill changes\", \"check skill quality\", \"skill PR feedback\".

    Also in 3 projects that use this

  • SkillPilotCHSkill

    level-up

    Eine Automatisierung pro Woche finden, scopen, shippen. Output landet als proposed-Eintrag in cadence.md mit konkreten Implementations-Schritten.

    Also in 3 projects that use this

  • MicrosoftSkill

    excalidraw-diagram

    Create Excalidraw diagram JSON files that make visual arguments. Use when the user wants to visualize workflows, architectures, or concepts.

    Also in 4 projects that use this

The file

Show its rules and text

We split this skill into the rules it gives an agent

34 rules. 0 are common, 24 are distinctive, and 10 are very specific to this project.

  • 0

    Common

    Most of the 65 edited versions we read keep these.

  • 24

    Distinctive

    This author's own choices. Worth a look.

  • 10

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  • could be automatic: a setting could enforce it
  1. Distinctive:

    Prefer no new skill if a simpler change works.

    line 18
  2. Distinctive:

    When you do create a skill, make it boring, testable, and hard to misuse.

    line 19
  3. Distinctive:

    Keep one clear router and avoid overlapping descriptions across skills.

    line 20
  4. Distinctive:

    Use the smallest operation that solves the request:

    line 36
  5. Distinctive:

    If uncertain, default to UPDATE rather than CREATE.

    line 45
  6. Distinctive:

    Run this before any CREATE or UPDATE:

    line 59
  7. Distinctive:

    DELETE: can an existing skill, README section, script, or template solve it?

    line 62
  8. Distinctive:

    If the answer is "no skill", propose:

    line 67
  9. Very specific:

    Keep SKILL.md focused on router + core rules.

    line 84
  10. Very specific:

    Add references/, scripts/, assets/, or README.md only when they add real value.

    line 85
  11. Very specific:

    Keep references one level deep from SKILL.md.

    line 86
  12. Very specific:

    Put nonstandard metadata under metadata instead of inventing new top-level fields.

    line 87
  13. Very specific:

    Avoid generic names (tools, helper).

    line 92
  14. Distinctive:

    Prefer names that describe a distinct job to be done.

    line 93
  15. Distinctive:

    Write it to cover:

    line 99
  16. Very specific:

    Do not depend on a custom top-level triggers field for portability.

    line 104
  17. Distinctive:

    Add companion files only if justified:

    line 140
  18. Distinctive:

    If the repo maintains an index, update it.

    line 146
  19. Distinctive:

    Read the current skill.

    line 159
  20. Distinctive:

    Keep scope and description stable unless a broader change is explicitly requested.

    line 163
  21. Distinctive:

    Remove the skill and update references.

    line 178
  22. Distinctive:

    Never duplicate description intent across multiple skills in the same install.

    line 192
  23. Very specific:

    Keep SKILL.md readable: short tables, stable templates, deep detail in references/.

    line 194
  24. Distinctive:

    Add one new router row or one tightly scoped section.

    line 197
  25. Distinctive:

    Add the minimal new procedure.

    line 198
  26. Very specific:

    If it grows, split into references/<topic>.md.

    line 199
  27. Distinctive:

    Add or update examples.

    line 200
  28. Distinctive:

    Update internal and repo-level references.

    line 207
  29. Distinctive:

    No secrets; no private paths unless the target repo is intentionally private.

    line 237
  30. Distinctive:

    No unscoped destructive instructions.

    line 238
  31. Very specific:

    If not available, validate manually using the rules in references/validation.md.

    line 250
  32. Distinctive:

    Prefer the least-privileged capability that can complete the task.

    line 254
  33. Distinctive:

    If command execution is needed, scope it tightly.

    line 256
  34. Very specific:

    Never recommend rm -rf, git reset --hard, or push --force as defaults.

    line 257

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

Unified, security-first skill builder.

This skill is intentionally opinionated:

  • Prefer no new skill if a simpler change works.
  • When you do create a skill, make it boring, testable, and hard to misuse.
  • Keep one clear router and avoid overlapping descriptions across skills.
  • Stay model-agnostic and harness-agnostic unless the target environment explicitly requires otherwise.

Operation Router

User intentOperationOutput
create/build/make/new skillCREATEnew skill folder + SKILL.md + only the companion files actually needed
update/modify/improve skillUPDATEminimal diff, keep scope stable
delete/remove skillDELETEremove skill + update any dependent references
add content/route/workflow to skillADDnew router row + minimal supporting procedure
validate skillVALIDATEevidence-backed validation report + fixes
rename skillRENAMEsafe rename + reference updates

Operation Selection Rules

Use the smallest operation that solves the request:

  • CREATE — new user-facing capability or clearly distinct intent/description domain.
  • UPDATE — improve an existing skill without changing its core scope.
  • ADD — add one new route, example, or sub-workflow inside the current scope.
  • RENAME — change identity/path/name while preserving mostly the same behavior.
  • DELETE — remove obsolete capability because it is superseded, merged, or no longer useful.
  • VALIDATE — inspect correctness without broadening scope.

If uncertain, default to UPDATE rather than CREATE.

What "Correct" Means

This skill treats "correct" as:

  • Conforms to the Agent Skills spec where the spec is explicit.
  • Uses progressive disclosure: concise SKILL.md, deeper docs only when needed.
  • Has unambiguous activation: specific description + non-overlapping neighboring skills.
  • Is safe: no secrets, no default-destructive commands, explicit confirmation boundaries.
  • Produces validation evidence instead of relying on vibes.

Phase 0: First-Principles Check (Mandatory)

Run this before any CREATE or UPDATE:

  1. QUESTION: what problem, for who, measured how?
  2. DELETE: can an existing skill, README section, script, or template solve it?
  3. SIMPLIFY: what is the smallest change that works?
  4. ACCELERATE: only after (2) and (3)
  5. AUTOMATE: create a new skill only if it will be reused

If the answer is "no skill", propose:

  • a README section
  • a small script
  • a usage snippet users can copy
  • a targeted update to an existing skill

Phase 1: Detect Target + Name

Required by the Agent Skills spec

  • Skill directory contains SKILL.md.
  • SKILL.md starts with valid YAML frontmatter.
  • name matches the parent directory name.
  • description explains what the skill does and when to use it.

Recommended by this skill

  • Keep SKILL.md focused on router + core rules.
  • Add references/, scripts/, assets/, or README.md only when they add real value.
  • Keep references one level deep from SKILL.md.
  • Put nonstandard metadata under metadata instead of inventing new top-level fields.

Naming

  • Use kebab-case (my-skill-name).
  • Avoid generic names (tools, helper).
  • Prefer names that describe a distinct job to be done.

Description design

The description field is the primary discovery surface.

Write it to cover:

  • what the skill does
  • when to use it
  • likely user wording, domain terms, and near-synonyms

Do not depend on a custom top-level triggers field for portability. If you want trigger examples, keep them in the body, metadata, or eval fixtures.

Confirmation Boundary

Safe without confirmation:

  • read-only inspection
  • drafting content
  • local validation
  • proposing diffs

Require confirmation before:

  • deleting files or folders
  • renaming skill folders
  • overwriting user-authored content
  • changing trigger semantics in ways that may alter discovery behavior
  • editing repo indexes or catalogs
  • installing dependencies or using networked side effects

Phase 2: CREATE Flow

Inputs (minimum)

  • Name
  • Goal + non-goals
  • Description draft that covers what + when
  • Optional capability constraints if the target client supports them

CREATE Steps

  1. Discover existing conventions in the target repo.
  2. Draft a micro-spec: goal, non-goals, router, safety boundary.
  3. Create /<skill-name>/SKILL.md with:
    • frontmatter (name, description, optional spec-supported fields)
    • router table
    • safety and confirmation rules
    • short workflows or links to references/
  4. Add companion files only if justified:
    • README.md for human-facing install/overview
    • references/ for deep workflows
    • scripts/ for executable helpers
    • assets/ for templates/resources
  5. Validate using the evidence rules below.
  6. If the repo maintains an index, update it.

Output Contract (CREATE)

Always return:

  • files created/edited
  • description added or changed
  • whether optional fields like compatibility, metadata, or allowed-tools were used
  • one minimal smoke-test prompt
  • validation report: pass/fail + evidence + remaining risks

Phase 3: UPDATE Flow

  1. Read the current skill.
  2. Identify the actual user goal.
  3. Apply the smallest diff that solves it.
  4. Re-run validation.
  5. Keep scope and description stable unless a broader change is explicitly requested.

Output Contract (UPDATE)

Return:

  • files changed
  • behavior changed
  • description change: yes/no
  • validation report
  • risks or follow-ups

Phase 4: DELETE Flow

  1. Confirm the target skill folder.
  2. Identify dependents: indexes, references, sibling skills.
  3. Remove the skill and update references.
  4. Provide rollback instructions.

Output Contract (DELETE)

Return:

  • removed paths
  • references updated
  • rollback note
  • validation/report of any remaining broken links

Phase 5: ADD Content to a Skill

Rules for skill growth:

  • Never duplicate description intent across multiple skills in the same install.
  • Route by intent first, then load deeper sections.
  • Keep SKILL.md readable: short tables, stable templates, deep detail in references/.

Add steps:

  1. Add one new router row or one tightly scoped section.
  2. Add the minimal new procedure.
  3. If it grows, split into references/<topic>.md.
  4. Add or update examples.
  5. Re-check neighboring skills for overlap.

Phase 6: RENAME Flow

  1. Confirm old and new names.
  2. Rename the folder and update frontmatter name.
  3. Update internal and repo-level references.
  4. Validate links, name/path parity, and discovery wording.

Output Contract (RENAME)

Return:

  • old name → new name
  • moved paths
  • references updated
  • validation report

Validation

Validation Requirements

A skill is not validated until you produce evidence for all three layers:

  1. Spec validation — structure and YAML correctness
  2. Trigger validation — the description should trigger when it should, and not trigger on near-misses
  3. Output validation — the skill improves or constrains the resulting work on realistic tasks

Skill Validation Checklist

  • Frontmatter includes valid name and description.
  • Frontmatter is valid YAML, not just visually plausible Markdown metadata.
  • name matches the parent directory.
  • Description clearly states what + when.
  • Any extra frontmatter stays within spec-supported fields unless the target environment explicitly supports more.
  • Router is present.
  • Confirmation boundary is explicit.
  • No secrets; no private paths unless the target repo is intentionally private.
  • No unscoped destructive instructions.
  • Progressive disclosure is respected.
  • Trigger hygiene has been checked against neighboring skills.

Spec Validation (Recommended)

If available:

skills-ref validate ./<skill-name>

If not available, validate manually using the rules in references/validation.md.

Capability Safety

  • Prefer the least-privileged capability that can complete the task.
  • Inspect/search before executing commands.
  • If command execution is needed, scope it tightly.
  • Never recommend rm -rf, git reset --hard, or push --force as defaults.

Templates

Skill Frontmatter

---
name: my-skill
description: Use this skill when you need to do X, Y, or Z. It handles A and B and is relevant when the user asks for C.
compatibility: Optional. Mention required runtimes, system tools, or environment assumptions.
metadata:
  version: "0.1"
allowed-tools: Optional experimental field. Only include it when the target client supports it and the skill benefits from a constrained tool list.
---

Minimum Viable Portable Skill

  1. Frontmatter
  2. One-paragraph purpose/activation guidance
  3. Router table
  4. Safety + confirmation rules
  5. Short workflows
  6. Optional references/ only when needed

References

  • references/checklist.md (authoring checklist)
  • references/templates.md (copy/paste templates)
  • references/validation.md (spec, trigger, and output validation)

What This Skill Is For (Practical Examples)

  • "Create a skill that scaffolds new skills" → CREATE.
  • "Make this skill more portable across agent products" → UPDATE.
  • "Rename this skill without breaking references" → RENAME.
  • "Check whether this skill will trigger reliably" → VALIDATE.
  • "Make skills consistent across repos" → UPDATE or ADD, depending on scope.

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.