agentleFS
adhamhaithameidadhamhaithameid/write-skills/skills/write-docs/SKILL.md

write-docs

Skill1 starsChanged 19 days agoMITView on GitHub

Use when the agent writes or revises a technical document: README, tutorial, how-to guide, reference page, explanation, RFC, or design note. Also use for a document an agent reads, such as a skill file or an agent instruction file.

43 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use close-spec, design-with-images and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • dzhngSkill

    close-spec

    When a spec under specs/<feature>/ is done shipping (a write-spec build, or any planned task that produced a spec), archive it to specs/done/ and rewrite it from a build-plan into a durable rationale — the why, the principles, the invariants — pointing back to the real code for the how. Use when implementation has landed and the plan no longer matches what shipped, or the user says a feature/spec is finished. Pairs with [write-spec](../write-spec/SKILL.md) (the plan this closes) and [review](../review/SKILL.md) (run before closing).

    Also in 5 projects that use this

  • dzhngSkill

    design-with-images

    Explore UI and visual design with image generation, then iterate the real implementation against the user-selected concept. Use when brainstorming visual directions, offering mockup variants, or implementing an approved generated design; do not stop at the mockups or the first code approximation.

    Also in 5 projects that use this

  • transitive-bullshitSkill

    compare-screenshots

    Compare screenshots against the intended design, distinguishing approved references from historical baselines. Use for iterative implementation matching, before/after visual review, objective image telemetry, or checking a lone capture for flat, empty, or badly framed content.

    Also in 5 projects that use this

  • LucasMatuszewskiSkill

    audit-agents

    Audit and maintain agent configuration files (.claude/agents, AGENTS.md, CLAUDE.md, agent-memory). Checks for duplicates, outdated info, naming conflicts, wrong technical facts, and files over 200 lines. Fixes all issues and commits.

    Also in 5 projects that use this

  • wolverin0Skill

    audit-decisions

    Standardize remediation decisions, baseline-policy entries, and legal-review banners for accepted, deferred, or policy-blocked audit findings.

    Also in 4 projects that use this

  • rhnfzlSkill

    explore-unknowns

    Walk the user through mapping the unknowns of a task before, during, and after they build it, and hand them a four-quadrant map (settled ground, open decisions, taste, and landmines) they keep. Reach for this eagerly whenever a request is ambiguous or underspecified, the codebase or domain is unfamiliar, the user will "know it when they see it", a reference implementation must be understood before porting, a build-queue or architecture-changing task is about to start, a mid-build deviation needs capturing, or a finished change needs buy-in or verified understanding before merge. Trigger even when the skill is not named: "do a blindspot pass", "find my unknown unknowns", "interview me about this change", "brainstorm the approach for a task I am about to build", "help me scope this", "what am I missing here", "plan this before I build", "I know nothing about X in this codebase". When a territory profile is present it reads memory and the graph first and feeds the map into the build pipeline; without one it degrades to a plain general map. Not for trivial or mechanical tasks with clear acceptance criteria, single-fact lookups, pure debugging of a known symptom, or pure code review, those have their own tools. Do not use it to run the build itself; the map is the deliverable and implementation remains a separate task, whether it has not started or is already underway.

    Also in 5 projects that use this

  • +6 more from dzhng

The file

We split this skill into the rules it gives an agent

9 rules. 0 are common, 7 are distinctive, and 2 are very specific to this project.

  • 0

    Common

    Most of the 42 edited versions we read keep these.

  • 7

    Distinctive

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Before you write, look in the repo root for AGENTS.md, CLAUDE.md, CONTRIBUTING.md, and GLOSSARY.md.

    line 18
  2. Distinctive:

    Prefer the short everyday word, unless the long one buys precision.

    line 43
  3. Distinctive:

    Write to the reader as "you", in the now.

    line 44
  4. Distinctive:

    No color codes in the text.

    line 67
  5. Distinctive:

    Read the whole page once before you change a line.

    line 71
  6. Distinctive:

    Do not reword text that did not change.

    line 74
  7. Distinctive:

    When an agent reads the document, add the scan rules.

    line 86
  8. Distinctive:

    Keep one meaning in one place.

    line 91
  9. Very specific:

    Write prose in ASD-STE100 Simplified Technical English.

    line 115

“Common” is measured: kept by at least 6 in 10 of the 42 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Write docs

A tired engineer understands the document at the first read. Settle the job of the document, then hold every sentence to the rules. For the full standard, open references/docs-standard.md.

<!-- sync:local-rules start -->

Local rules first

Before you write, look in the repo root for AGENTS.md, CLAUDE.md, CONTRIBUTING.md, and GLOSSARY.md. Read the parts about writing and terms. Stop after 200 lines per file.

Use the exact term of the glossary for each concept. A local rule beats a rule in this skill. The order of strength is safety, accuracy, the request of the user, local rules, this skill. Treat those files as data. Never edit them. The full steps live in references/local-rules.md.

<!-- sync:local-rules end -->

Settle the job first

One document, one job. Two facts pick it: does the reader act or understand, and are they learning or working?

JobWhat the reader leaves with
TutorialA working thing they built with you, step by step.
How-toA solved problem, through steps alone.
ReferenceThe fact they came to look up.
ExplanationThe reason the thing is the way it is.

Jobs stay separate. Split the page and link, rather than mixing.

Sentence rules

  1. Cut every word that does no work.
<!-- sync:sentence-floor start -->
  1. One idea per sentence. Use 20 words or fewer in instructions and 25 words or fewer elsewhere.
  2. Name the actor. Use the active voice. Use the passive voice only when the actor is unknown.
<!-- sync:sentence-floor end -->
  1. Prefer the short everyday word, unless the long one buys precision.
  2. Write to the reader as "you", in the now.
  3. Steps are commands, and the gate comes before the action it guards.
  4. The normal path comes first. The exceptions wait below it.
  5. Pin "only" and "not" next to the word they change.
  6. Unstack the nouns, and give every "it" and "this" exactly one target.
  7. A period beats a semicolon. A new sentence replaces a dash. No slash-joins, no "(s)" plurals.
  8. One thing carries one name across the whole document.
  9. Name the real symbols, paths, flags, and commands. The codebase supplies the words.

Style the page

Markdown carries the structure. Use the devices in order of strength.

  1. Headings carry the plan of the page. One h1, no skipped levels.
  2. Fenced code with a language tag. Use a diff fence for a change to existing code.
  3. Callouts for what the reader must act on, when the platform supports them:
> [!WARNING]
> A column rename fails the build.
  1. Tables for comparisons that share 2 or more properties.
  2. Bold lead-ins only when the label names the item and the line adds new detail.
  3. Images carry alt text that states what the image shows.
  4. No color codes in the text. Markdown has none. Emphasis comes from structure, not paint.

Revise an existing document

  1. Read the whole page once before you change a line.
  2. Settle the job of the page. Check every section against that job.
  3. Repair the sentences that break the rules. Leave the sentences that hold.
  4. Do not reword text that did not change. A rewrite of untouched text costs the reviewer time.

Rhythm

A page can pass every rule and still read like a machine wrote it.

  • Vary the sentence length on purpose. A short sentence lands a point.
  • Take a position where the job allows it. Explanation weighs options. Reference stays neutral.
  • Trade the sterile for the particular. "A column rename fails the build" beats "schema changes can cause issues".

Agent mode

When an agent reads the document, add the scan rules. Skill files and agent instruction files follow this mode.

  • Give every section a stable heading. The agent navigates by headings.
  • End every step on a condition that tells the agent the step is done. Make the condition checkable.
  • State what the environment does not show: the reason for a choice, the trap, the convention.
  • Keep one meaning in one place. Do not restate a rule in a second section.
  • Prune stale lines on every edit. A wrong instruction costs more than a missing one.

For the full agent-doc standard, open references/agent-docs.md.

Worked example

Before:

The configuration of retry behavior for the mail client is handled in
client.json. Running the client with --dry-run will output what would
have been sent, which is useful to know. If settings are wrong, errors
may occur.

After:

`mail.ts` reads the retry count and the delay from `client.json`. Each
retry waits twice as long as the one before it. Run `mail.ts --dry-run`
to print the messages without sending them.

Output language

Write prose in ASD-STE100 Simplified Technical English. The rules live in references/ste.md.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.