Skip to content
Back to skills

Documentation

ASecurity

Craft phase 9 - refresh affected documentation pages, tick the backlog entry under guard, author follow-ups; runs in parallel with the background validation run.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 6, 2026
ai-agentsrustshelldocumentation

Security analysis

A100/100

Scanned September 6, 2026

npx -y skills add scolladon/craft --skill documentation --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Documentation?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Documentation
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/scolladon-documentation/badge)](https://www.skillsdirectory.com/skills/scolladon-documentation)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: documentation
description: Craft phase 9 - refresh affected documentation pages, tick the backlog entry under guard, author follow-ups; runs in parallel with the background validation run.
---

# 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:** new backlog follow-up entries
   surfaced during the run (full context, cross-links, placed per the repo's ordering
   convention); they are what a future craft run resolves from. 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.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…