Skip to content

technical-writing

FieldValue
TypeSkill
Source~/.copilot/skills/technical-writing/SKILL.md
DescriptionSingle front door for everything written for people — Markdown/MDX, Mermaid diagrams, code comments, commit messages, and teaching MDX pages built from real design-system components. Absorbs the former markdown, mermaid, and docs-that-teach skills; any request for any of them routes here. Use for any .md/.mdx write or edit (docs, guides, READMEs, release notes, runbooks, teaching pages), any diagram, code comments, prose for non-technical readers. Triggers: “write docs”, “format this markdown”, “draw a diagram”, “fix this mermaid”, “write a status update”, “comment this code”, “teaching doc”, “docs that teach”. Validate with scripts/lint.py —git-changed. NOT for PRDs, user stories, PR descriptions, UI microcopy, or legal prose.

Bundled Pages

GroupNameSource
ReferencesCode Comments and Commit Messages~/.copilot/skills/technical-writing/references/code-comments.md
ReferencesMarkdown / MDX Best Practices Skill~/.copilot/skills/technical-writing/references/markdown.md
ReferencesMermaid Diagram Skill~/.copilot/skills/technical-writing/references/mermaid.md
ReferencesNatural Voice~/.copilot/skills/technical-writing/references/natural-voice.md
ReferencesQuestion Craft — Asking Questions That Get Real Answers~/.copilot/skills/technical-writing/references/question-craft.md
ReferencesTechnical Writing — Style Guide~/.copilot/skills/technical-writing/references/style-guide.md
ReferencesTechnical Writing — Template Index~/.copilot/skills/technical-writing/references/templates.md
ReferencesThe Cast: Jack and Jill~/.copilot/skills/technical-writing/references/personas.md
ReferencesThe Document Pipeline~/.copilot/skills/technical-writing/references/pipeline.md
ReferencesVoice and Writers~/.copilot/skills/technical-writing/references/voice-and-writers.md
References Docs That TeachDocs That Teach — Review Rubric~/.copilot/skills/technical-writing/references/docs-that-teach/review-rubric.md
References Docs That TeachMDX Component Map — real @dmwd-io/design-system components~/.copilot/skills/technical-writing/references/docs-that-teach/component-map.md
References Docs That TeachTeaching MDX Pages (Docs That Teach)~/.copilot/skills/technical-writing/references/docs-that-teach/teaching-mdx-guide.md
References Docs That TeachUnderstanding GitHub Actions Reusable Workflows~/.copilot/skills/technical-writing/references/docs-that-teach/page-template.mdx
References MermaidDiagram Principles — make the diagram teach~/.copilot/skills/technical-writing/references/mermaid/diagram-principles.md
References MermaidDiagrams for digital service teams~/.copilot/skills/technical-writing/references/mermaid/service-team-diagrams.md
References MermaidFlowchart shapes and icons (Mermaid v11)~/.copilot/skills/technical-writing/references/mermaid/flowchart-shapes-and-icons.md
References MermaidGitOps Mermaid Patterns~/.copilot/skills/technical-writing/references/mermaid/gitops-patterns.md
References MermaidIcons and surfaces~/.copilot/skills/technical-writing/references/mermaid/icons-and-surfaces.md
References MermaidInteractiveMermaid Renderer Constraints~/.copilot/skills/technical-writing/references/mermaid/beautiful-mermaid-constraints.md
References MermaidMermaid Chart Selection~/.copilot/skills/technical-writing/references/mermaid/chart-selection.md
References MermaidMermaid Syntax Reference~/.copilot/skills/technical-writing/references/mermaid/syntax-reference.md
References MermaidMermaid Validation~/.copilot/skills/technical-writing/references/mermaid/validation.md
References Mermaid Gallery BuildBuild_catalog~/.copilot/skills/technical-writing/references/mermaid/gallery/build/build_catalog.py
References Mermaid Gallery BuildBuild_gallery~/.copilot/skills/technical-writing/references/mermaid/gallery/build/build_gallery.py
References Mermaid Gallery BuildBuild_render~/.copilot/skills/technical-writing/references/mermaid/gallery/build/build_render.py
References Mermaid Gallery BuildDiagrams~/.copilot/skills/technical-writing/references/mermaid/gallery/build/diagrams.py
References Mermaid Gallery BuildGallery build pipeline~/.copilot/skills/technical-writing/references/mermaid/gallery/build/README.md
References Mermaid Gallery BuildServe~/.copilot/skills/technical-writing/references/mermaid/gallery/build/serve.py
References Mermaid Gallery BuildSvgs~/.copilot/skills/technical-writing/references/mermaid/gallery/build/svgs.json
References TemplatesEngineering Blog Post Template~/.copilot/skills/technical-writing/references/templates/blog-post.md
References TemplatesExplanation Template~/.copilot/skills/technical-writing/references/templates/explanation.md
References TemplatesFAQ Template~/.copilot/skills/technical-writing/references/templates/faq.md
References TemplatesHow-To Guide Template~/.copilot/skills/technical-writing/references/templates/how-to.md
References TemplatesMigration Guide Template~/.copilot/skills/technical-writing/references/templates/migration-guide.md
References TemplatesREADME Template~/.copilot/skills/technical-writing/references/templates/readme.md
References TemplatesReference Template~/.copilot/skills/technical-writing/references/templates/reference.md
References TemplatesRelease Notes Template~/.copilot/skills/technical-writing/references/templates/release-notes.md
References TemplatesRunbook Template~/.copilot/skills/technical-writing/references/templates/runbook.md
References TemplatesStatus Update Template~/.copilot/skills/technical-writing/references/templates/status-update.md
References TemplatesTroubleshooting Guide Template~/.copilot/skills/technical-writing/references/templates/troubleshooting.md
References TemplatesTutorial Template~/.copilot/skills/technical-writing/references/templates/tutorial.md
References TemplatesUser Survey Template~/.copilot/skills/technical-writing/references/templates/user-survey.md
References Vale Styles TechnicalWritingIntensifiers~/.copilot/skills/technical-writing/references/vale-styles/TechnicalWriting/Intensifiers.yml
References Vale Styles TechnicalWritingIntroHeadings~/.copilot/skills/technical-writing/references/vale-styles/TechnicalWriting/IntroHeadings.yml
References Vale Styles TechnicalWritingLatinisms~/.copilot/skills/technical-writing/references/vale-styles/TechnicalWriting/Latinisms.yml
References Vale Styles TechnicalWritingPassiveVoice~/.copilot/skills/technical-writing/references/vale-styles/TechnicalWriting/PassiveVoice.yml
References Vale Styles TechnicalWritingSentenceLength~/.copilot/skills/technical-writing/references/vale-styles/TechnicalWriting/SentenceLength.yml
References Vale Styles TechnicalWritingTermConsistency~/.copilot/skills/technical-writing/references/vale-styles/TechnicalWriting/TermConsistency.yml
References Vale Styles TechnicalWritingVagueWords~/.copilot/skills/technical-writing/references/vale-styles/TechnicalWriting/VagueWords.yml
References Vale Styles TechnicalWritingWeasel~/.copilot/skills/technical-writing/references/vale-styles/TechnicalWriting/Weasel.yml
ResourcesLints~/.copilot/skills/technical-writing/lints.toml
ScriptsInstall Tools~/.copilot/skills/technical-writing/scripts/install-tools.sh
ScriptsLint~/.copilot/skills/technical-writing/scripts/lint.py
ScriptsLint_docs_that_teach~/.copilot/skills/technical-writing/scripts/lint_docs_that_teach.py
ScriptsLint_docs_that_teach_frontmatter~/.copilot/skills/technical-writing/scripts/lint_docs_that_teach_frontmatter.py
ScriptsMarkdown_lint~/.copilot/skills/technical-writing/scripts/markdown_lint.py
ScriptsMarkdownlint~/.copilot/skills/technical-writing/scripts/markdownlint.json
ScriptsMermaid_lint~/.copilot/skills/technical-writing/scripts/mermaid_lint.py
ScriptsProse_lint~/.copilot/skills/technical-writing/scripts/prose_lint.py
ScriptsReadability~/.copilot/skills/technical-writing/scripts/readability.py
ScriptsVoice_lint~/.copilot/skills/technical-writing/scripts/voice_lint.py

Source Content

Technical Writing

DomainEverything written for people — .md/.mdx, Mermaid diagrams, code comments
RoleDocument architect and editor; evaluator of all prose output
OutputThe right document in the right mode, gated clean by scripts/lint.py

This skill absorbed the former markdown, mermaid, and docs-that-teach skills — their rules live in this skill’s own references, and nothing invokes them separately.

Route by task

You’re…ReadGate with
Drawing a diagram onlyreferences/mermaid.md + references/mermaid/scripts/mermaid_lint.py
Fixing Markdown mechanics onlyreferences/markdown.mdscripts/markdown_lint.py
Writing or editing a full documentreferences/pipeline.md — mode, template, workflowscripts/lint.py --git-changed
Picking a templatereferences/templates.md → one file per type-
Casting a two-person storyreferences/personas.md — roster + casting rules-
Writing for non-technical readers, or tuning voicereferences/voice-and-writers.md-
Checking a doc doesn’t sound like a robot or address the prompterreferences/natural-voice.mdscripts/voice_lint.py (advisory)
Writing code comments or commit messagesreferences/code-comments.md (stories exempt)-
Asking users questions (surveys, research)references/question-craft.md-
Document-level craft (structure, stories, the cut)references/style-guide.md-
Teaching MDX page from real design-system componentsreferences/docs-that-teach/teaching-mdx-guide.md + references/docs-that-teach/component-map.mdscripts/lint_docs_that_teach.py + scripts/lint_docs_that_teach_frontmatter.py
Validating anything already written-scripts/lint.py --git-changed (or explicit files)

References load lazily — a bare diagram or a one-line README fix never pays for the prose pipeline. scripts/lint.py runs every lint registered in lints.toml that matches the changed file types, skips missing tools with a warning, and fails only on required lints. To add a lint, append a [[lint]] block to lints.toml — no code changes.

The five house rules (non-negotiable)

  1. 8th-grade reading level. Gated by scripts/readability.py — repeated technical terms are down-weighted, so “Kubernetes” never costs you. Plain words carry complex ideas better than fancy ones.
  2. Paragraphs never exceed 4 sentences. A fifth sentence means two paragraphs, or a list.
  3. Every key: value pair gets its own line. Config, flags, env vars, headers — in a list or code block, never chained inline.
  4. Every document opens with a two-person story, each on its own line, and closes with a useful ending. It is always Jack and Jill (see references/personas.md): Jack takes the path with friction and hits the problem; Jill takes the path that works and gets the outcome. Never say which is better — let the outcomes show it. The conclusion, after the reader has read the whole thing, gives the lesson each of them learned. Runbooks compress both to one line each; code comments and commits are exempt from both.
  5. Flows, decisions, and lifecycles get a Mermaid diagram. If you wrote “first X, then Y, unless Z” — draw it, per references/mermaid.md, with a “what to notice” line under every diagram.

Don’t use me for

  • PRDs / product specs → prd-generator.
  • User stories / acceptance criteria → agile-product-owner.
  • PR descriptions / self-review → pr-review-checklist.
  • UI microcopy and interface voice → ux-designer-researcher.
  • Legal prose (motions, contracts) → legal-document-drafter.
  • Architecture decision records → the adr skill, which owns the ADR template and lifecycle.

Final checklist

  • One Diátaxis mode; the right template from references/templates/ was the starting point.
  • The lede states the why and the payoff in the first two sentences; headings are noun-phrase promises — never “Introduction” / “Overview”.
  • Opens with a two-person story, each on its own line, cast from references/personas.md; closes with a useful ending (one line each for runbooks; neither for code comments).
  • Flows and decisions drawn as Mermaid with a “what to notice” line; multi-layer diagrams pass the shape + muted-color rule in references/mermaid.md.
  • Named-thing comparisons use headings; every key: value pair on its own line; empty table cells get -.
  • Code runs on the stated version; no invented APIs; unverifiable claims marked [TODO].
  • Cut 20% — adjectives replaced by examples.
  • Reads like it was written for its actual reader, not for whoever asked for it — no thank-yous, no “as requested,” no bare “human” outside a direct quote (references/natural-voice.md).
  • Saved under docs/<subfolder>/ (README.md excepted).
  • scripts/lint.py --git-changed exits 0; advisory findings read and weighed, not dismissed.
  • For a teaching MDX page: components verified against references/docs-that-teach/component-map.md (never invented), essential content survives outside Tabs/Accordion, a “what to notice” line sits under every visual, and it passes references/docs-that-teach/review-rubric.md.

Pointers

  • references/pipeline.md — the full document workflow: mode, template, drafting steps, gates, optional tooling, CI wiring, self-rubric.
  • references/style-guide.md — audience, readability, formatting, stories, voice, pitfalls.
  • references/personas.md — the persona roster and casting rules for two-person stories.
  • references/voice-and-writers.md — writer models, the journalist’s kit, writing for non-technical readers.
  • references/natural-voice.md — the reader is never the prompter, and other tells that a document sounds machine-written.
  • references/code-comments.md — comments, doc comments, TODOs, commit messages.
  • references/templates.md — the template index; one file per type under references/templates/.
  • references/question-craft.md — asking questions that get real answers.
  • references/markdown.md / references/mermaid.md — mechanics and diagram rules, owned in-skill.
  • references/docs-that-teach/ — teaching-mdx-guide.md (the former docs-that-teach SKILL.md), component-map.md (real @dmwd-io/design-system components with verified props), page-template.mdx (gold-standard skeleton), review-rubric.md (the six-dimension publish gate).
  • lints.toml + scripts/lint.py — the lint registry and one-command dispatcher.
  • requirements.txt / Brewfile / scripts/install-tools.sh — optional tooling install (Vale, Proselint, codespell).