Technical writing
Help a defined reader complete a task or understand a technical subject without changing technical truth.
Core contract
Apply these priorities in order:
- Preserve facts, uncertainty, intent, and documented constraints.
- Serve the intended reader and their goal.
- Make the document accurate, navigable, and reproducible.
- Improve sentences without flattening the author's useful voice.
- Avoid style churn: correct prose does not need different wording merely to match a preference.
Never invent behavior, output, prerequisites, compatibility, measurements, citations, decisions, or rationale.
Scope and boundaries
Use this skill for substantial technical documentation and design artifacts.
Do not use it for code-only tasks, marketing copy, product UI strings, controlled or verbatim text, release notes, PR descriptions, commit messages, or a small wording cleanup.
Related skills:
- When available, use
brainstorm for consequential design exploration; otherwise use the host's workflow and mark unresolved decisions.
- When available, use
unslop for small style edits and the final pass after substantial prose changes.
- When available, use
explain-code to establish current mechanics for a document; otherwise inspect local evidence here.
- When available, use
clarify for unresolved behavior mismatches or rationale; otherwise report the uncertainty instead of inventing an answer.
Load references only when needed
- Read references/document-modes.md for tutorials, how-to guides, reference, explanation, or unclear document structure.
- Read references/sentence-and-procedure-style.md for procedures, a substantial line edit, or ambiguity analysis.
- Read references/format-guidance.md for READMEs, runbooks, RFCs, specifications, ADRs, and plans.
- Read references/review-checklist.md for a full document audit.
Establish the writing job
Identify:
- the intended reader;
- the outcome they need;
- what they already know;
- whether the task is drafting, revising, or reviewing;
- which repository evidence establishes technical truth.
Infer these from the request and project when the answer is clear. Ask one focused question when a missing fact would materially change the document.
Protect and verify technical material
Do not silently alter code, commands, identifiers, paths, API names, configuration keys, structured data, quotations, citations, measurements, or explicit uncertainty. Never reproduce secrets or sensitive personal data in new prose or review output; use a redacted placeholder and report the exposure. Preserve domain terms when a simpler synonym would be less precise.
Verify material claims against the smallest relevant set of local sources: implementation, configuration, tests, generated output, and existing documentation. Use safe non-mutating checks when they can establish a command, example, link, or observable result. If evidence is unavailable or contradictory, qualify the claim, mark it for confirmation, or report the conflict. Do not guess.
Choose document structure
For user documentation, select the reader need that dominates the document:
- Tutorial: guided learning through a complete, observable experience.
- How-to: practical steps toward a specific goal for a competent reader.
- Reference: accurate facts organized for lookup and aligned with the described system.
- Explanation: bounded understanding of rationale, constraints, concepts, or trade-offs.
Brief supporting material may remain when it helps the primary goal. Split or link material only when mixed purposes impede use.
RFCs, specifications, ADRs, and implementation plans serve decision or coordination needs outside the Diátaxis modes. Use their format guidance instead of forcing a mode.
Draft or revise
- Outline around the reader's goal and the selected mode or format.
- For procedures, put prerequisites and the common path before variants and edge cases.
- Add expected results where readers need confirmation.
- Put conditions and warnings before the action they govern.
- Include failure and recovery guidance when the reader can reasonably encounter the failure.
- Use the repository's real names for symbols, files, flags, commands, and concepts.
- Verify material claims and examples.
- Revise only sections that need structural, factual, or clarity improvements.
Prefer direct sentences, explicit actors, consistent terminology, and one action per procedural step. Treat sentence length, passive voice, punctuation, and grammatical patterns as diagnostic signals rather than prohibitions. Keep clear, accurate constructions.
Review
Prioritize findings by reader impact:
- incorrect or unsupported instructions and claims;
- missing prerequisites, conditions, expected results, or recovery;
- mismatch between the reader's goal and the document's structure;
- ambiguity or poor navigation;
- inconsistent terminology;
- sentence-level style.
Cite the affected section and evidence. Recommend the smallest correction that resolves the problem. Do not expand a review into an unsolicited rewrite. If the user requested edits, preserve unaffected text and report any claim that remains unverified.
Finish
Validate local links, commands, examples, identifiers, headings, and formatting without mutating unrelated files. Check a remote target only when the user requested external verification and the access and privacy boundary permits it. After substantial prose changes, apply unslop when available; otherwise remove formulaic filler and check rhythm and voice against the core contract. Recheck technical meaning after either pass. Skip the prose pass for structural analysis and narrow factual corrections.
Report changed files and any unresolved contradiction or unverified claim.
1---2name: technical-writing3description: Write, revise, or review substantial technical documentation and design artifacts for a defined reader and task. Use for READMEs, guides, tutorials, how-to documentation, reference material, runbooks, RFCs, ADRs, technical specifications, and implementation plans. Use a design workflow first when future behavior or architecture needs exploration. Use unslop, when available, for small style-only edits. Do not use for code-only work, routine messages, release notes, PR descriptions, commit messages, or verbatim text.4license: See LICENSE5---67# Technical writing89Help a defined reader complete a task or understand a technical subject without changing technical truth.1011## Core contract1213Apply these priorities in order:14151. Preserve facts, uncertainty, intent, and documented constraints.162. Serve the intended reader and their goal.173. Make the document accurate, navigable, and reproducible.184. Improve sentences without flattening the author's useful voice.195. Avoid style churn: correct prose does not need different wording merely to match a preference.2021Never invent behavior, output, prerequisites, compatibility, measurements, citations, decisions, or rationale.2223## Scope and boundaries2425Use this skill for substantial technical documentation and design artifacts.2627Do not use it for code-only tasks, marketing copy, product UI strings, controlled or verbatim text, release notes, PR descriptions, commit messages, or a small wording cleanup.2829Related skills:3031- When available, use `brainstorm` for consequential design exploration; otherwise use the host's workflow and mark unresolved decisions.32- When available, use `unslop` for small style edits and the final pass after substantial prose changes.33- When available, use `explain-code` to establish current mechanics for a document; otherwise inspect local evidence here.34- When available, use `clarify` for unresolved behavior mismatches or rationale; otherwise report the uncertainty instead of inventing an answer.3536## Load references only when needed3738- Read [references/document-modes.md](references/document-modes.md) for tutorials, how-to guides, reference, explanation, or unclear document structure.39- Read [references/sentence-and-procedure-style.md](references/sentence-and-procedure-style.md) for procedures, a substantial line edit, or ambiguity analysis.40- Read [references/format-guidance.md](references/format-guidance.md) for READMEs, runbooks, RFCs, specifications, ADRs, and plans.41- Read [references/review-checklist.md](references/review-checklist.md) for a full document audit.4243## Establish the writing job4445Identify:4647- the intended reader;48- the outcome they need;49- what they already know;50- whether the task is drafting, revising, or reviewing;51- which repository evidence establishes technical truth.5253Infer these from the request and project when the answer is clear. Ask one focused question when a missing fact would materially change the document.5455## Protect and verify technical material5657Do not silently alter code, commands, identifiers, paths, API names, configuration keys, structured data, quotations, citations, measurements, or explicit uncertainty. Never reproduce secrets or sensitive personal data in new prose or review output; use a redacted placeholder and report the exposure. Preserve domain terms when a simpler synonym would be less precise.5859Verify material claims against the smallest relevant set of local sources: implementation, configuration, tests, generated output, and existing documentation. Use safe non-mutating checks when they can establish a command, example, link, or observable result. If evidence is unavailable or contradictory, qualify the claim, mark it for confirmation, or report the conflict. Do not guess.6061## Choose document structure6263For user documentation, select the reader need that dominates the document:6465- **Tutorial:** guided learning through a complete, observable experience.66- **How-to:** practical steps toward a specific goal for a competent reader.67- **Reference:** accurate facts organized for lookup and aligned with the described system.68- **Explanation:** bounded understanding of rationale, constraints, concepts, or trade-offs.6970Brief supporting material may remain when it helps the primary goal. Split or link material only when mixed purposes impede use.7172RFCs, specifications, ADRs, and implementation plans serve decision or coordination needs outside the Diátaxis modes. Use their format guidance instead of forcing a mode.7374## Draft or revise75761. Outline around the reader's goal and the selected mode or format.772. For procedures, put prerequisites and the common path before variants and edge cases.783. Add expected results where readers need confirmation.794. Put conditions and warnings before the action they govern.805. Include failure and recovery guidance when the reader can reasonably encounter the failure.816. Use the repository's real names for symbols, files, flags, commands, and concepts.827. Verify material claims and examples.838. Revise only sections that need structural, factual, or clarity improvements.8485Prefer direct sentences, explicit actors, consistent terminology, and one action per procedural step. Treat sentence length, passive voice, punctuation, and grammatical patterns as diagnostic signals rather than prohibitions. Keep clear, accurate constructions.8687## Review8889Prioritize findings by reader impact:90911. incorrect or unsupported instructions and claims;922. missing prerequisites, conditions, expected results, or recovery;933. mismatch between the reader's goal and the document's structure;944. ambiguity or poor navigation;955. inconsistent terminology;966. sentence-level style.9798Cite the affected section and evidence. Recommend the smallest correction that resolves the problem. Do not expand a review into an unsolicited rewrite. If the user requested edits, preserve unaffected text and report any claim that remains unverified.99100## Finish101102Validate local links, commands, examples, identifiers, headings, and formatting without mutating unrelated files. Check a remote target only when the user requested external verification and the access and privacy boundary permits it. After substantial prose changes, apply `unslop` when available; otherwise remove formulaic filler and check rhythm and voice against the core contract. Recheck technical meaning after either pass. Skip the prose pass for structural analysis and narrow factual corrections.103104Report changed files and any unresolved contradiction or unverified claim.