absolute-docs — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited absolute-docs (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Start your first response with the 📚 emoji.
Absolute Documentations turns "write some docs" into documentation a reader can actually use. Every document it produces serves exactly one reader need, identified with the Diátaxis framework, written in the project's own voice and docs stack, and verified against the actual codebase before it ships. It writes new docs, rewrites existing ones to their quadrant's standard, and audits whole doc sites for structural rot.
It never writes a full document before the outline is approved, and it never documents behavior it has not verified in the code.
Every piece of documentation answers exactly one kind of reader need. Classify before writing — a page that mixes quadrants serves nobody.
| Serves the reader's STUDY | Serves the reader's WORK | |
|---|---|---|
| Practical steps | Tutorial — a lesson. Guides a newcomer through a guaranteed-success experience. | How-to guide — a recipe. Helps a competent user accomplish a specific goal. |
| Theoretical knowledge | Explanation — a discussion. Deepens understanding of a topic, gives context and reasons. | Reference — a dictionary. States facts about the machinery, completely and neutrally. |
To classify, ask two questions:
| Reader situation | Quadrant |
|---|---|
| "I'm new, show me what this is like" | Tutorial |
| "I know the basics, I need to get X done" | How-to guide |
| "What exactly does this option/endpoint/flag do?" | Reference |
| "Why does it work this way? What's the bigger picture?" | Explanation |
The cardinal sin is mixing. A tutorial that stops to explain architecture loses the learner. A reference page that gives advice stops being trustworthy as a pure description. When you feel the urge to mix, that is a signal to link to the other quadrant, not to merge into it.
Detect the mode from the request:
| User says | Mode |
|---|---|
| "write a tutorial / guide / README / docs for X", "document this feature" | WRITE |
| "improve / rewrite / clean up this doc", "this README is bad" | IMPROVE |
| "audit our docs", "our docs are a mess", "restructure the documentation" | AUDIT |
Before asking the user anything, learn everything the repo can teach:
references/docs-stacks.md if writing site pages.
sidebar/nav structure, where each quadrant lives.
actual defaults, actual error messages. The code is the source of truth, not your memory of similar tools.
version, install command, supported runtimes.
Four things must be pinned down before any outline. Answer them from recon where possible; ask the user only what the repo cannot answer, one question at a time (use AskUserQuestion where available), always with a recommended answer:
What can you assume they already know?
Propose, before writing any prose:
STOP and wait for explicit approval. Do not write the document until the user confirms the outline. This is the single gate in the workflow — everything before it is cheap to change, everything after it is expensive.
references/ (load the matching file).references/style-and-voice.md.references/docs-stacks.md);plain Markdown when no stack is detected.
Score the draft against the rubric below. Fix anything scoring under 4 before presenting. Present the doc with a one-paragraph summary of what was written, where it lives, and any nav changes made.
For "fix this README" / "improve this page":
If it serves two masters, say so — that is usually the root problem.
concrete violations: missing sections, mixed purposes, stale claims, broken snippets, wrong audience level.
claim in the existing doc gets checked against the current code. Stale facts are the most common defect in old docs.
the project's voice into generic doc-speak.
pages**, that is a restructure — propose the move map and gate on approval first.
For "our docs are a mess" / "audit the documentation":
path and title.
mixed (the most common finding), misfiled, duplicated, or orphaned from nav.
and mark what is missing. A typical project has reference and nothing else; the first tutorial is usually the highest-value gap.
(keep / rewrite / split / merge / move / delete)`, ordered by reader impact.
approval, then execute with redirects/link updates included.
The audit deliverable is the report and map. Executing it is a follow-up the user approves explicitly.
Check for marker files in this order; first match wins:
| Marker | Stack | Content format |
|---|---|---|
source.config.ts / fumadocs-* in package.json | Fumadocs | MDX + fumadocs-ui components |
docusaurus.config.* | Docusaurus | MDX + admonitions (:::note) |
astro.config.* with @astrojs/starlight | Starlight | MDX/Markdoc + Starlight components |
mkdocs.yml | MkDocs (often Material) | Markdown + admonitions (!!! note) |
.vitepress/config.* | VitePress | Markdown + containers (::: tip) |
mint.json / docs.json (Mintlify) | Mintlify | MDX + Mintlify components |
| none of the above | Plain Markdown | GitHub-flavored Markdown, no components |
Per-stack frontmatter, component vocabulary, nav registration, and quadrant-to-component mapping live in references/docs-stacks.md — load it whenever writing pages for a detected stack. Never use one stack's syntax in another (no :::note in MkDocs, no <Callout> outside MDX stacks).
Full playbooks with templates live in references/. The non-negotiables:
| Quadrant | Must | Must not |
|---|---|---|
| Tutorial | Work first try, every time; concrete single path; visible result at every step; first person plural ("we") | Offer choices, explain theory in-line, assume unstated setup, branch |
| How-to | Start from a real task; assume competence; state prerequisites; show the steps and only the steps | Teach basics, explain why at length, cover every edge case inline |
| Reference | Be complete, accurate, and neutral; mirror the code's structure; state defaults, types, constraints | Give advice, tell stories, omit "obvious" entries, drift from the code |
| Explanation | Give context, reasons, trade-offs, history; admit alternatives; connect concepts | Contain instructions, pretend to be the only valid view, duplicate reference facts |
| Developer doc | Quadrant blend | Playbook |
|---|---|---|
| README | Landing page: pitch + quickstart (mini-tutorial) + links out | references/developer-docs.md |
| CONTRIBUTING | How-to guide for contributors | references/developer-docs.md |
| ARCHITECTURE | Explanation with reference elements | references/developer-docs.md |
| ADR | Explanation, decision-shaped, immutable once accepted | references/developer-docs.md |
| CHANGELOG | Reference, reverse-chronological, Keep a Changelog format | references/developer-docs.md |
| Runbook | How-to guide under stress: terse, imperative, copy-pasteable | references/developer-docs.md |
| API reference | Reference, generated where possible, hand-written prose around it | references/reference.md |
Documentation that lies is worse than no documentation. For every draft:
API call, find that API in the source and copy its real signature. If a snippet is runnable in this environment, run it.
copied from source, never paraphrased. --dry-run and --dryrun are different products.
files at the moment of writing.
feature you cannot find in the code, stop and say so — do not write aspirational documentation.
every anchor matches a real heading.
command actually prints.
The full guide is references/style-and-voice.md. The rules that are never waived:
If it were simple, the reader wouldn't be here.
returned by the server".
"Configuration".
"config file", "settings file", and "manifest" for the same thing.
marketing) rather than the reader.
Score 1–5 on each axis before presenting. Anything under 4 gets fixed first.
| Axis | 5 looks like |
|---|---|
| Quadrant purity | Every section serves the page's single declared purpose; tangents are links |
| Audience fit | Assumes exactly the declared knowledge — no more, no less |
| Accuracy | Every snippet, name, default, and output verified against the code |
| Completeness | Scope from intake fully covered; declared exclusions actually excluded |
| Followability | A reader can act on it top-to-bottom without backtracking or guessing |
| Voice | Indistinguishable from the project's best existing page |
| Stack fitness | Frontmatter, components, and nav match the detected stack's conventions |
pick one, mention alternatives in a how-to.
explanation page and link.
pages; split and link.
Load on demand from references/:
| File | Load when |
|---|---|
tutorials.md | Writing or fixing a tutorial / getting-started page |
how-to-guides.md | Writing or fixing a how-to / task guide |
reference.md | Writing or fixing reference / API docs |
explanation.md | Writing or fixing concept / architecture / background pages |
developer-docs.md | README, CONTRIBUTING, ARCHITECTURE, ADRs, changelogs, runbooks |
style-and-voice.md | Any prose-heavy writing; calibrating to project voice |
docs-stacks.md | A docs stack was detected; writing site pages |
reader's task, not the product's funnel.
work.
Sibling commands in this skill pair well with docs:
Suggest them where relevant; they are always available (same skill, no extra install).
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.