/absolute-docs
Diátaxis-driven documentation for AI coding agents: write, improve, or audit tutorials, how-tos, reference, explanation, and developer docs (README, CONTRIBUTING, ADRs). Detects the docs stack; gates on the outline before writing prose; verifies every claim against the code
$ npx -y skills add absolutelyskilled/absolutelyskilled --skill absolute-docs --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/absolute-docs
Context preview
The summary Claude sees to decide when to auto-load this skill.
Diátaxis-driven documentation for AI coding agents: write, improve, or audit tutorials, how-tos, reference, explanation, and developer docs (README, CONTRIBUTING, ADRs). Detects the docs stack; gates on the outline before writing prose; verifies every claim against the code
SKILL.md
absolute-docs.SKILL.mdname: absolute-docs
version: 0.5.0
description: >
Diátaxis-driven documentation for AI coding agents: write, improve, or audit
tutorials, how-tos, reference, explanation, and developer docs (README,
CONTRIBUTING, ADRs). Detects the docs stack; gates on the outline before
writing prose; verifies every claim against the code before it ships.
Triggers on "absolute docs", "write docs", "write a tutorial", "write a README",
"document this", "improve this doc", "audit our docs".
category: workflow
tags:
- workflow
- documentation
- diataxis
- readme
- tutorials
- reference
platforms:
- claude-code
- gemini-cli
- openai-codex
- mcp
user-invocable: true
argument-hint: "[target]"
license: MIT
maintainers:
- github: maddhruv
> Start your first response with the 📚 emoji.
Absolute Documentations: Diátaxis-Driven Documentation
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.
---
The Diátaxis Compass
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:
1. **Is the reader studying (acquiring skill) or working (applying skill)?** 2. **Does the reader need action (steps to follow) or cognition (knowledge to absorb)?**
| 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.
---
Modes
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** |
---
WRITE Mode
Step 1 — Recon (codebase first, questions second)
Before asking the user anything, learn everything the repo can teach:
- **Detect the docs stack** (see Stack Detection below) and load
`references/docs-stacks.md` if writing site pages.
- **Read existing docs** — tone, terminology, heading style, frontmatter schema,
sidebar/nav structure, where each quadrant lives.
- **Read the code being documented** — public API surface, actual option names,
actual defaults, actual error messages. The code is the source of truth, not your memory of similar tools.
- **Check project metadata** — package.json/pyproject/go.mod for the real name,
version, install command, supported runtimes.
Step 2 — Intake
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:
1. **Document type** — which Diátaxis quadrant (or which developer-doc form). 2. **Target audience** — novice end user? experienced operator? contributor? What can you assume they already know? 3. **Reader's goal** — what will the reader be able to do after reading? 4. **Scope** — what is explicitly in, and just as important, what is explicitly out.
Step 3 — Outline gate (hard gate)
Propose, before writing any prose:
- the file path(s) the doc will live at, matching the stack's routing conventions
- a heading-level outline with one line per section describing its content
- the quadrant each page serves (multi-page requests get one quadrant per page)
- any sidebar/nav changes needed
**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.
Step 4 — Write
- Follow the per-quadrant playbook in `references/` (load the matching file).
- Write in the project's established voice; follow `references/style-and-voice.md`.
- Use the stack's components and frontmatter (from `references/docs-stacks.md`);
plain Markdown when no stack is detected.
- Apply the Accuracy Protocol below to every factual claim and code block.
Step 5 — Self-review
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.
---
IMPROVE Mode
For "fix this README" / "improve this page":
1. **Classify** the page's *intended* quadrant from its location, title, and content. If it serves two masters, say so — that is usually the root problem. 2. **Diff against the quadrant's standard** (load its
Read more
name: absolute-docs version: 0.5.0 description: > Diátaxis-driven documentation for AI coding agents: write, improve, or audit tutorials, how-tos, reference, explanation, and developer docs (README, CONTRIBUTING, ADRs). Detects the docs stack; gates on the outline before writing prose; verifies every claim against the code before it ships. Triggers on "absolute docs", "write docs", "write a tutorial", "write a README", "document this", "improve this doc", "audit our docs". category: workflow tags: - workflow - documentation - diataxis - readme - tutorials - reference platforms: - claude-code - gemini-cli - openai-codex - mcp user-invocable: true argument-hint: "[target]" license: MIT maintainers: - github: maddhruv
> Start your first response with the 📚 emoji.
Absolute Documentations: Diátaxis-Driven Documentation
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.
---
The Diátaxis Compass
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:
1. **Is the reader studying (acquiring skill) or working (applying skill)?** 2. **Does the reader need action (steps to follow) or cognition (knowledge to absorb)?**
| 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.
---
Modes
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** |
---
WRITE Mode
Step 1 — Recon (codebase first, questions second)
Before asking the user anything, learn everything the repo can teach:
- **Detect the docs stack** (see Stack Detection below) and load
`references/docs-stacks.md` if writing site pages.
- **Read existing docs** — tone, terminology, heading style, frontmatter schema,
sidebar/nav structure, where each quadrant lives.
- **Read the code being documented** — public API surface, actual option names,
actual defaults, actual error messages. The code is the source of truth, not your memory of similar tools.
- **Check project metadata** — package.json/pyproject/go.mod for the real name,
version, install command, supported runtimes.
Step 2 — Intake
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:
1. **Document type** — which Diátaxis quadrant (or which developer-doc form). 2. **Target audience** — novice end user? experienced operator? contributor? What can you assume they already know? 3. **Reader's goal** — what will the reader be able to do after reading? 4. **Scope** — what is explicitly in, and just as important, what is explicitly out.
Step 3 — Outline gate (hard gate)
Propose, before writing any prose:
- the file path(s) the doc will live at, matching the stack's routing conventions
- a heading-level outline with one line per section describing its content
- the quadrant each page serves (multi-page requests get one quadrant per page)
- any sidebar/nav changes needed
**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.
Step 4 — Write
- Follow the per-quadrant playbook in `references/` (load the matching file).
- Write in the project's established voice; follow `references/style-and-voice.md`.
- Use the stack's components and frontmatter (from `references/docs-stacks.md`);
plain Markdown when no stack is detected.
- Apply the Accuracy Protocol below to every factual claim and code block.
Step 5 — Self-review
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.
---
IMPROVE Mode
For "fix this README" / "improve this page":
1. **Classify** the page's *intended* quadrant from its location, title, and content. If it serves two masters, say so — that is usually the root problem. 2. **Diff against the quadrant's standard** (load its
A development workflow engine for AI coding agents. Eleven separate skills — a one-time absolute-init (interview + stack detection → config), a build loop you run every day (think → spec → plan → build → polish → document), plus an engineering-health family
Repo: absolutelyskilled/absolutelyskilled
Other skills on absolute.
- /absolute-audit
Vulnerability and security scan (defensive, your own repo): dependency CVEs plus risky code patterns (secrets, injection, weak authz), severity x reachability triaged and remediated without suppressing. Complements the built-in /security-review. Triggers on "absolute audit",
Open skill - /absolute-debt
Lint and typecheck debt paydown: clear pre-existing repo-wide lint/type violations and suppressions (@ts-ignore, # type: ignore) one rule per wave, fixing causes not symptoms. Runs on green main. For diff-scoped quality use absolute-simplify. Triggers on "absolute debt", "fix
Open skill - /absolute-deflake
Flaky test fixes: detect nondeterministic tests empirically (repeat/shuffle/parallel runs), diagnose the root cause, fix it — never retry/skip/sleep — and verify across many randomized runs. Triggers on "absolute deflake", "fix flaky tests", "CI is flaky", "this test fails
Open skill - /absolute-init
One-time setup for absolute: interview how you want it to behave (output style, autonomy, TDD strictness, spec dir, families) + detect the stack once, then write `.absolute.config.json` (project, committed) and `~/.absolute/config.json` (user defaults + per-project overrides).
Open skill - /absolute-prune
Dead code and dependency cleanup, repo-wide: unused deps, unreferenced exports, unreachable code, orphaned files — removed only with tool evidence, in reversible waves. Runs on green main. For diff-scoped cleanup use absolute-simplify. Triggers on "absolute prune", "remove dead
Open skill - /absolute-simplify
Use when the user wants to simplify, clean up, refactor, tidy, or refine code — their staged/unstaged git changes or a target file/path. Reduces complexity, flattens nesting, removes redundancy and dead code, scores each change by value (holding low-value churn), then runs tests
Open skill

