writing-prose — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited writing-prose (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Documentation exists to transfer understanding. Every word that does not transfer understanding is a word that costs the reader without paying them. Apply these principles to assess documentation quality and identify where clarity, readability, or structure needs improvement.
Write for the reader's comprehension, not the author's expertise.
not "demonstrate". When a shorter, common word exists, choose it.
to hold context while parsing structure. Split them.
should be defined or linked when it first appears. Never assume the reader knows what you know.
explanation" → "explain". Nominalizations hide the actor and the action.
Active voice connects the actor directly to the action. Passive voice hides who is responsible and makes sentences longer.
| Passive | Active |
|---|---|
| The configuration is loaded by the server | The server loads the configuration |
| An error will be thrown if the value is null | The function throws if the value is null |
| It is recommended that you | We recommend you |
When passive is acceptable: When the actor is unknown, irrelevant, or deliberately omitted (e.g., "The request was rejected" when the actor is the system and that is obvious from context).
Abstract statements make readers do extra work to ground them in reality.
method" → "authenticate()". "The file" → "config/database.yml".
example. "Avoid side effects" without an example is half an explanation.
docs for the first time might ask "what does that look like?", answer it immediately with an example.
Readers rarely read documentation linearly. They scan for the section they need, then read that section carefully.
first, supporting detail after. Put the "what" before the "how" before the "why" (unless the "why" motivates the "what").
header. Headers should be noun phrases or imperative verbs, not questions (questions force readers to parse them twice).
list, not a comma-separated sentence. Lists are faster to scan than prose for enumeration.
the same attributes, a table conveys the comparison instantly. Prose comparisons require mental tabulation.
snippets, environment variable names — all of these belong in code blocks, not inline prose. This signals "copy this exactly" and enables syntax highlighting.
When reviewing documentation, evaluate each piece against these dimensions:
Is the documentation true? Stale documentation is worse than missing documentation because it actively misleads.
described still exist? Do the command flags shown still work?
the system actually does?
longer current, flag it even if the behavior has not changed — the version reference creates unnecessary doubt.
Does the documentation cover everything the reader needs to succeed?
whether failure cases, edge cases, and common mistakes are also covered.
before following the documentation, are those prerequisites stated upfront?
not explained here? Are those concepts linked or explained?
Can a typical reader understand this in one pass?
does not require re-reading for comprehension. Long sentences, rare words, and deep nesting all increase cognitive load.
and "principal" in different parts of the documentation, readers will not know if these are synonyms. Pick one term and use it consistently.
question in under 30 seconds? If not, the structure needs improvement.
These patterns reliably indicate documentation that needs improvement:
| Smell | Example | Fix |
|---|---|---|
| Wall of text | Paragraph with 8+ sentences | Break into sections with headers |
| Missing example | "Call authenticate() with valid credentials" | Show actual call with real-looking inputs |
| Jargon without definition | "The PEP8-compliant token is serialized via JWT" | Define or link each term |
| Passive-everything | "An error is returned when..." | "The function returns an error when..." |
| Version-specific without version | "As of the latest release..." | "As of v2.3..." |
| "Simply" or "just" | "Simply run the migration" | Remove — implies ease the reader may not feel |
| Unexplained acronym | "Configure the IAM role for RBAC" | "Configure the IAM (Identity and Access Management) role for RBAC (Role-Based Access Control)" |
When the technical-writer agent identifies documentation gaps or assesses documentation quality, apply these principles:
readers. An accuracy issue in a reference doc affects anyone who uses that feature. Weight your recommendations accordingly.
actionable. "This paragraph uses passive voice in every sentence, which obscures who performs each action" is actionable.
identify and classify gaps, not to rewrite the documentation. Point to the principle being violated and what would satisfy it — leave the rewrite to the author.
readable should be noted as such. Reviewers who only identify problems provide incomplete signal.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.