agentleFS
MoeenNehzatiMoeenNehzati/famulus/skills/skill-maker/SKILL.md

skill-maker

Skill4 starsChanged 4 months agoMITView on GitHub

Use when the user asks to create a personal skill or change an existing personal skill's intended behavior or public interface in the shared skills directory. Do not use for behavior-preserving refactoring, blueprint regeneration, certificate work, or standards maintenance.

21 other projects use a version of this.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

9 rules. 0 are common, 4 are distinctive, and 5 are very specific to this project.

  • 0

    Common

    Most of the 17 edited versions we read keep these.

  • 4

    Distinctive

    This author's own choices. Worth a look.

  • 5

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Before creating a skill, ask whether to research current documentation and comparables unless the user already stated a preference.

    line 38
  2. Distinctive:

    Before editing any skill file, verify the repo containing that file is on a named branch (git symbolic-ref HEAD from the repo root).

    line 44
  3. Very specific:

    Before authoring, query standards.interface.query-standard with task.kind=author-skill and --view requirements, selecting one canonical …

    line 50
  4. Very specific:

    If selected work touches test files or their fixtures or helpers, query references/node-standards/code-testing.standard.yaml as an …

    line 67
  5. Distinctive:

    Test artifacts are collected or executed by configured test or validation runner.

    line 71
  6. Very specific:

    Follow up under the original component root with exact returned document and ref pairs.

    line 77
  7. Distinctive:

    When this skill needs to mention another skill in documentation:

    line 103
  8. Very specific:

    use the skill name only, with an explicit requirement marker such as REQUIRED SUB-SKILL: Use ...

    line 105
  9. Very specific:

    do not use @.../SKILL.md links to another skill file, because they force file loading instead of naming the dependency cleanly

    line 107

“Common” is measured: kept by at least 6 in 10 of the 17 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
<!-- BEGIN BLUEPRINT INTERFACES -->

Generated from blueprint.yaml. Do not edit this block by hand.

Executable Interfaces:

Send the required caller (caller skill), interface, version, and arguments; optional dry_run defaults to false. Compact uses ordered positionals plus an option mapping; ordered raw argv uses positionals: [] plus every argv token in list options. Never mix forms.

  • skill-maker._rtx.interface.sync-blueprints — Validate every skill blueprint and either check or refresh generated SKILL.md interface blocks and the runtime-dependency manifest.
    • Caller: skill-maker
    • Version: 1
    • Security level: 2
    • Alternative: sync Arguments JSON (replace labels with actual values). Omit optional positionals and options that are not needed. {"options": {}, "positionals": [], "stdin": null} Required options: []; positional arity: 0..0; stdin: forbidden
    • Alternative: check Arguments JSON (replace labels with actual values). Omit optional positionals and options that are not needed. {"options": {"--check": true}, "positionals": [], "stdin": null} Required options: ["--check"]; positional arity: 0..0; stdin: forbidden
  • standards.interface.query-standard — Query one explicit standard and its complete pinned import closure.
    • Caller: skill-maker
    • Version: 1
    • Security level: 2
    • Alternative: standard-and-options Arguments JSON (replace labels with actual values). Omit optional positionals and options that are not needed. {"options": {"--facts-json": "JSON", "--query-json": "JSON", "--refs-json": "JSON", "--repo-root": "PATH", "--view": "requirements|context|evidence|remedies|full"}, "positionals": ["standard-path"], "stdin": null} Required options: []; positional arity: 1..1; stdin: forbidden
<!-- END BLUEPRINT INTERFACES -->

Research option when creating a skill

Before creating a skill, ask whether to research current documentation and comparables unless the user already stated a preference. If yes, research first; if no, use only the conversation and repository context.

Git Safety

Before editing any skill file, verify the repo containing that file is on a named branch (git symbolic-ref HEAD from the repo root). If it fails, check out a named branch first.

Standards retrieval

Before authoring, query standards.interface.query-standard with task.kind=author-skill and --view requirements, selecting one canonical root per component:

Component being authoredRoot standard
Parent skill module, including its module-facing gateway rolereferences/node-standards/instruction-module.standard.yaml
Registered instruction behavioral source, including the typical <skill>.source.gatewayreferences/node-standards/instruction-behavioral-source.standard.yaml
Python runtime modulereferences/node-standards/python-module.standard.yaml
Registered Python behavioral sourcereferences/node-standards/python-behavioral-source.standard.yaml

For a schema-minimum skill with sources: {}, query only instruction-module. A typical registered <skill>.source.gateway requires both instruction roots. A Python runtime child adds python-module; each registered Python source adds python-behavioral-source. Query neither absent components nor inferred targets, owners, or languages.

If selected work touches test files or their fixtures or helpers, query references/node-standards/code-testing.standard.yaml as an additional independent root with task.kind=author-skill. Set task.optimizes-test-performance true for performance work and false otherwise. Test artifacts are collected or executed by configured test or validation runner. Markdown-only means no executable test file, fixture, or helper changes. Test code that validates Markdown remains test code.

Each root returns its complete pinned import closure; never query imported documents separately. Follow up under the original component root with exact returned document and ref pairs. Establish task.affects-executable-behavior from the proposal and supply known node.is-personal-override and node.is-repository-validator facts. Enrich and rerun requirements for other established missing facts; report unresolved facts. Freeze that root and fact set for context, evidence, and remedy follow-ups.

Current decisionRequestUse
Author behavior--view requirementsApply requirements.true; inspect the missing facts in requirements.unknown and rerun.
Interpret or apply indexed context--view context --refs-json JSONRequest a relevant context_index entry or requirement; read only returned context.
Choose verification--view evidence --refs-json JSONMap checks, tests, and assurances to selected refs; perform semantic_reviews, open only returned artifacts, and preserve limitations.
Repair a violation--view remedies --refs-json JSONFollow only returned remedies and procedures.
Unusual extraction--query-json JSONUse the generic filter/projection described by --help.
Debug extraction--view fullInspect the complete projection only.

--refs-json contains exact document and ref pairs copied from the requirements result. Request only information needed for the current decision, and cite consequential requirement IDs.

For a repository validator, set node.is-repository-validator=true on the Python-module query and request the relevant remedy under that root and fact set; do not reproduce its procedure here.

Referencing other skills

When this skill needs to mention another skill in documentation:

  • use the skill name only, with an explicit requirement marker such as **REQUIRED SUB-SKILL:** Use ... or **REQUIRED BACKGROUND:** Use ...
  • do not use @.../SKILL.md links to another skill file, because they force file loading instead of naming the dependency cleanly

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.