agentleFS
scolladonscolladon/craft/skills/documentation/SKILL.md

documentation

Skill2 starsChanged 34 days agoMITView on GitHub

Craft phase 9 - refresh affected documentation pages, tick the backlog entry under guard, fold in-scope findings into the PR and defer the rest to impact triage; runs in parallel with the background validation run.

113 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use create-media-pack, project-preferences 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.
  • DepressionCenterSkill

    create-media-pack

    Create a coordinated project branding and media pack with three accessible design options, approved vector artwork, image exports, a branding guide, and README integration. Use when asked for a repository media pack, brand kit, or complete project visual identity.

    Also in 5 projects that use this

  • DepressionCenterSkill

    project-preferences

    Apply repository-specific preferences when planning, implementing, or reviewing changes in this project.

    Also in 6 projects that use this

  • thistleknotSkill

    response-style

    Response and prose protocol. Use when drafting user-facing prose, expanding a user's ideas, or tuning tone and format to preserve voice, avoid AI cliches, and maintain coherent answers.

    Also in 7 projects that use this

  • BrowserWorksSkill

    accessibility-frontend-review

    Performs an accessibility code review of a local diff or Phabricator revision in the style of the Firefox accessibility team. Use this skill whenever the user asks to review a Phabricator patch or revision for accessibility issues, mentions a D-number (like D284142) in the context of accessibility review, asks "does this patch have any a11y issues", or wants to check a diff against accessibility guidelines. Also use it when the user says things like "can you review this for a11y", "check this patch", or "give me an accessibility review of D[number]". Invoke proactively when the user pastes a phabricator.services.mozilla.com URL or shares a revision ID alongside any accessibility concern. Invoke when questions about the following topics are raised: aria properties, aria roles, high contrast mode, forced colors, prefers contrast, focus order, screen readers, assistive technology.

    Also in 4 projects that use this

  • BrowserWorksSkill

    android-new-module

    Guide for creating new Android gradle modules in the android-components project.

    Also in 4 projects that use this

  • +7 more from BrowserWorks

The file

We split this skill into the rules it gives an agent

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

  • 0

    Common

    Most of the 102 edited versions we read keep these.

  • 0

    Distinctive

    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. Very specific:

    Inventory: every finding no phase resolved: the session's own observations, discoveries from step 1, and triage EXCEPTIONs or IMPACT( lines …

    line 50
  2. Very specific:

    No findings → the fold step records nothing.

    line 63

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

craft:documentation

Preamble (always runs — non-overridable)

  1. Manifest read (lint if standalone). Probe: backlog: declared? (else no backlog work); which doc pages the change actually affects — the affected-page floor is mechanical: (diff ∩ subjects) ∪ probe — the existing judgment probe (public surface, behaviour a page states) UNIONed with every living page whose declared subjects the diff matches (via the intention port's consult; see docs/contributing/specs/intention.md). A coverage gap — a load-bearing changed scope matched by no page's subjects, under intention.covers — escalates via the blocker protocol { unit, reason, ≤3 options } rather than silently passing.

Procedure (default body — a manifest override: replaces everything below)

Runs in parallel with the validation phase's background run.

  1. Pages — only if any are affected: spawn craft:docs-writer with the affected page list + what changed per page, the design doc path as content source, the commit message docs(<slug>): refresh pages, and the context files. Page refresh/create routes through the intention port's record. docs-writer stays update-only — it never creates a new page; a coverage gap that implies a missing page is a human decision, escalated per the Preamble, never auto-created. No affected pages → skip honestly (run record).
  2. Backlog tick — guarded by source (see docs/contributing/specs/backlog.md):

    • source: file — consult backlog-write action (default always, ADR-127; see docs/contributing/specs/policy.md for surface semantics); then spawn craft:backlog-ticker with the exact entry line and the exact reference suffix. Accept ONLY if the diff touches exactly the expected line(s) — otherwise discard and do the one-line edit yourself.
    • source: custom — consult external-send action (default ask, ADR-127; see docs/contributing/specs/policy.md); on proceed, run ref with argv ["complete", id, ...refs]; id/refs are untrusted, passed as discrete arguments (never spliced into a shell string) and id validated against the source's id-form before invoking (see the spec's safe-invocation note). A non-zero exit is a blocker (never a silent tick-skip); idempotency is the custom script's documented contract (see docs/contributing/specs/backlog.md), not framework-asserted.

    Commit docs(<slug>): backlog flip.

  3. Synthesis — session-owned, never delegated. Fold before defer: every finding this step inventories gets its verdict under the run skill's cross-phase invariant Impacts: fold or defer at discovery, which holds the scope boundary, the fold limits and the deferral form. This step authors no backlog entry and appends no filing line: the impact-triage phase files triaged impacts.

    1. Inventory every finding no phase resolved: the session's own observations, discoveries from step 1, and triage EXCEPTIONs or IMPACT( lines an earlier phase has not yet given a verdict. Read them from the ledger and the handbacks; nothing new is written for it. A triage EXCEPTION the background harness lands after this step gets the same triage before propose.
    2. Triage each finding to one verdict, folded or deferred, by the invariant's rule.
    3. Fold: the session makes each fix itself under the invariant's fold limits, then appends FOLDED(<file>): <finding> -> <sha> after the fold commit, one line per locus file.
    4. Defer the rest through run-ledger.sh defer <run-id> documentation (the run skill's shimmed $ledger), one entry per finding with its re-runnable proof. With no open run (standalone), defer refuses: list the findings in the final output.

    No findings → the fold step records nothing. The PR body drafts here too, per the default template (repo's own templates/pr-body.md, else "${CRAFT_ROOT:-${CLAUDE_PLUGIN_ROOT}}/templates/pr-body.md"; a manifest override: replaces it): three reader-first narrative sections — Background (the system as it stands), Intuition (the core idea, a toy example, a mermaid diagram where it helps), Code (a grouped high-level walkthrough of the diff) — then a Provenance & verification trailer carrying decisions + ADR numbers, design doc path, divergences, pinned behaviours, test plan, the run record. The Decisions line splits ratified from adopted ADRs, both read from this run's ADRs: an ADR whose Decision carries the adopted-as-recommended marker is adopted, listed as ADR-NNN (<basis>), where <basis> is the basis named right after the marker's — (ADR-NNN, DOCTRINE(D-<n>) or no trade-off); the rest are ratified. No run-record token is read for it. The trailer's - **Discovered impacts:** line reads <n> deferred, triage pending, counted from this run's DEFERRED( lines, or none; the impact-triage phase rewrites it with the verdicts.

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.