From claude-english-buddy
Applies technical writing patterns to developer documentation: API structure, README organization, error messages, and voice. Use for reviewing docs, READMEs, API refs, and error strings.
npx claudepluginhub xiaolai/claude-english-buddy-for-claude --plugin claude-english-buddyThis skill uses the workspace's default tool permissions.
Patterns specific to documentation and developer-facing prose. Rules drawn from the legacy writing-guide, the Google Developer Documentation Style Guide, and Strunk & White.
Guides technical documentation with principles for second-person voice, active voice, conciseness, clear headings, self-contained pages, and LLM-friendly patterns. Use when writing or reviewing docs.
Enforces clarity, conciseness, and authenticity in technical writing for docs, guides, API refs; avoids AI patterns like 'delve into', 'leverage', 'robust'.
Drafts READMEs, API docs, tutorials, release notes, and reviews technical docs for clarity and structure. Activates on docs/ .md files and READMEs.
Share bugs, ideas, or general feedback.
Patterns specific to documentation and developer-facing prose. Rules drawn from the legacy writing-guide, the Google Developer Documentation Style Guide, and Strunk & White.
Prefer active voice. It is shorter, clearer, and makes the actor explicit.
| Passive (weak) | Active (strong) |
|---|---|
| "The cache was cleared by the scheduler." | "The scheduler clears the cache." |
| "Errors are handled by the retry middleware." | "The retry middleware handles errors." |
| "The API can be called with an optional token." | "Callers may pass an optional token." |
Passive voice is acceptable when:
In API docs, always state who does what: callers, the service, the library, the user.
A standard API reference entry has five parts:
Keep each part terse. A reader arriving from a search result should see the summary without scrolling.
A README for a developer tool should answer, in order:
| Section | Question answered |
|---|---|
| Title + tagline | What is this? |
| Problem / motivation | Why does it exist? |
| Install | How do I install it? |
| Quick start | What does the shortest useful command look like? |
| Usage / commands | How do I actually use it? |
| Configuration | What knobs are there? |
| Development | How do I contribute? |
| License | What are the terms? |
Not every section is required. But the order matters: readers bounce if they have to scroll past philosophy before seeing npm install.
An error message is prose, and its tone should be:
| Dimension | Requirement |
|---|---|
| Voice | Active: "Config missing: run tool init to create one." |
| Blame | Blame the situation, not the user. Not "You forgot to …". |
| Specificity | Name the missing thing, the expected thing, or the fix |
| Length | One line when possible; multi-line only if a fix is needed |
| Capitalization | Start with a capital; terminal period optional |
| Punctuation | Avoid exclamation marks |
| Bad | Good |
|---|---|
| "Error!" | "Failed to parse config: expected {, got [." |
| "You're wrong." | "Port 6170 is already in use; pass --port to choose another." |
| "Something happened." | "Network request timed out after 30s." |
Pick one term per concept and use it everywhere in one document.
| Do not mix | Within one doc, pick |
|---|---|
| function, method, routine, handler | one term, e.g. "function" |
| config, configuration, settings | one term |
| log in, login, sign in, sign-in | one pair: verb ("log in") + noun ("login") |
Capitalize tool and framework names exactly as their owners do: React, TypeScript, npm, GitHub, PostgreSQL, iOS, macOS. This is a common L2 slip.
Headings state the topic, not the conclusion. In reference docs they are usually noun phrases.
| Bad (full sentence) | Good (topic phrase) |
|---|---|
| "How you can install the tool" | "Installation" |
| "Here is what to do when it fails" | "Error handling" |
| "These are the configuration options" | "Configuration" |
No terminal punctuation in headings.
Tables beat prose for reference data. Prefer tables when:
Table columns need parallel headings. First column usually holds the key (metric, flag, level). Align numbers to the right.
Link the first mention of a concept, command, or component. Subsequent mentions in the same page usually do not need a link. Never write "click here" or "see below" as the link text — the linked phrase should read as the target name.
The wordy → concise table from tone-calibration applies in full here. The corrections most common in docs:
| Wordy | Concise |
|---|---|
| "in order to" | "to" |
| "at this point in time" | "now" |
| "has the ability to" | "can" |
| "is going to" | "will" |
This skill covers technical writing patterns only. Related concerns live in sibling skills: