doc-writinglisted
Install: claude install-skill jajupmochi/agent-harness
# doc-writing
> How to write a document this user accepts, organized by document type, with a linter for the rules a machine can check.
## Master TOC
- [How to use this](#how-to-use-this)
- [The two rules that caused the most friction](#the-two-rules-that-caused-the-most-friction)
- [Universal core](#universal-core)
- [Per document type](#per-document-type)
- [When the requirement depends on context](#when-the-requirement-depends-on-context)
- [Lint before you ship](#lint-before-you-ship)
- [Keeping this skill true](#keeping-this-skill-true)
## How to use this
Read the universal core once. Then read the one section for the type you are writing, and use its skeleton as the outline. Write the document. Run `scripts/doccheck.py` on it before you call it done.
**Marker legend.** Two markers appear throughout, and both mean something specific.
1. `B12` points at consolidated rule 12 in the mined preference set. The linter quotes these ids back in its findings so a rule can be traced to its evidence.
2. `#3` is the position in the frequency ranking, meaning how many separate turns the user spent repeating the point. A high rank is not a matter of taste, it is a record of repeated correction.
The source is two real project sessions from July 2026, 262 prompts total, mined into 102 verbatim preferences and 48 consolidated rules.
## The two rules that caused the most friction
### 1. Define every term you introduce, in place (`B6`, rank `#1`)
Across roughly eight separate tu