L’interface est localisée ; les présentations et documents des Skills sont traduits automatiquement par IA dans votre langue. Le code, les commandes, chemins et termes techniques restent en version originale, et le document de l’auteur fait foi.
Explorer les Skills
Développement · SKILL.md

better-readme

better-readme

Audit and rewrite a project README against reader-funnel principles (noffle's "Art of README"). Use when the user asks to review, improve, rewrite, or translate a README, or asks whether their README is good — covers funnel ordering, moving maintainer content out, doc-shape tests pinned in CI, neutral multi-tool framing, idiomatic translations, and link/cla…

Independent GitHub snapshot · Automated classification · Original documentation governs

Documentation de la Skill

GitHub

name: better-readme description: Audit and rewrite a project README against reader-funnel principles (noffle's "Art of README"). Use when the user asks to review, improve, rewrite, or translate a README, or asks whether their README is good — covers funnel ordering, moving maintainer content out, doc-shape tests pinned in CI, neutral multi-tool framing, idiomatic translations, and link/claim verification.

Better README

A README is the consumer's first — and maybe only — look at the project. It is also the project's contract: the documentation, not the code, defines what the project does and what it promises to keep stable. No README means no abstraction — readers must read the source to learn the interface, and the interface/implementation boundary disappears. The job is not to sell; it is to let each reader evaluate fit as fast as possible, including bailing out early. Structure every README as a cognitive funnel: broadest, most decision-relevant facts first, deeper detail only for readers who already decided to stay.

The reference framework is noffle's Art of README. An archived copy lives in this skill at references/art-of-readme.md — the upstream repository link has gone offline, so consult the local copy when you need the original checklist or the reasoning behind a rule. Do not reproduce it in the READMEs you write — apply it.

The funnel

Name → one-liner → (background if the domain is unfamiliar) → usage, runnable → install → API (or a link to it) → caveats → contributing → license.

  • Each layer should let a reader short-circuit: "not for me" in 30 seconds is a success, not a failure.
  • Install/API order depends on what the thing is. For libraries whose value is the API, readers vet the API before they bother installing: usage → API → install (the article's original order). For apps, CLIs, and out-of-the-box tools that expose no external API, install/setup comes right after usage, and the API section may not exist at all.
  • Non-permissive license (AGPL/SSPL/…): badge or note at the top, full text at the bottom. License incompatibility is the fastest disqualifier; do not bury it.
  • Images that carry critical information must live in the repo, not on an external host — the README outlives the host.

Audit before rewriting

Read the current README top to bottom and score it against the funnel. Failure modes seen in real audits:

  • Audience mixing. Maintainer content (release runbooks, CI secrets tables, repo-structure trees, debug guides) interleaved with consumer content. This is the most common and most damaging pattern.
  • Funnel collapse. Adapter/internals detail in the first 50 lines, before the reader knows whether the tool is for them.
  • Duplication. The same fact (Node version, incremental rebuilds, runtime details) stated two or three times. Keep one statement, at the shallowest layer where a consumer needs it.
  • One-tool-centric framing. A table or section written when the project supported one tool, still leading with that tool's specifics after it supports ten. Verify the truth against the code — the old text may be not just biased but wrong (missing entries, superseded semantics).
  • Staleness. Dead relative links, version ranges that drifted ("ADRs 0001–0006" when 0015 exists), references to deleted files.
  • Unlinked API docs. Detailed reference exists in the repo but the README never links it.

Pre-flight checks (do these before editing anything)

  1. git status first. Never overwrite files in a dirty worktree — the README may carry the owner's uncommitted work. If the tree is dirty, work in a fresh worktree off origin/main; that also keeps the PR free of unrelated changes.
  2. Diff the branch against origin/main. READMEs drift between branches. Base the rewrite on what main actually says today, not on the checkout.
  3. Grep tests and CI for README/CONTRIBUTING strings. Projects pin doc content in tests: exact headings, file lists, required phrases. Know what is pinned before restructuring — otherwise CI fails after the rewrite.
  4. Check for derived documents. Packaging READMEs, website copies, or generated docs that duplicate the README may need the same treatment or a deliberate out-of-scope note.

Rewriting rules

  • Consumer content only, in funnel order. Maintainer procedures move to CONTRIBUTING.md or docs/ — moved, not deleted — with a pointer link left behind.
  • One home per fact. If a detail now lives in a reference doc, link it; do not also summarize it at full length.
  • Usage section = the actual interaction shape (real commands/prompts/code), copy-pasteable. Show CLI invocations with output when the project is a CLI.
  • Compress deep detail into tables (consumers pattern-match tables faster than prose); push the prose version to the reference doc and link it.
  • Every factual claim you carry forward, re-verify against the code. Never copy the old README's claims on faith.
  • When tests pin wording: reshape the test to assert the requirement (ordering of two install paths, presence of a link) instead of the document's shape (exact heading strings, a file list). Most contributing guides require justifying changed assertions in the PR description — write that section. Do not silently weaken a test to make the docs pass.
  • Author preferences beat checklist purity. Decorative elements the author likes (star-history charts, badges, wordmarks) stay unless the author explicitly agrees to cut them. Ask before deleting anything purely decorative; the checklist serves the author, not the reverse.

Translated READMEs

  • 意译, not 直译. Rewrite in the target language's tech-writing rhythm; restructure sentences freely. Sentence-by-sentence mapping always produces translationese ("索引进", "服务两类读者", "综合缓存").
  • Keep terms in English where the community actually uses English (provider, agent, session, tool call). Translate what has a real native term.
  • Mirror structure exactly: same sections, same tables, same links, same heading count — parity must be mechanically checkable.
  • Cross-link at the top of both files (English · 中文).
  • Match the product's voice. If the product's own examples are colloquial, the README may be too ("用人话回答").
  • Chinese section anchors change when headings do — update in-file anchor links to match the new headings.

Verification before delivery

  • Check every relative link and asset resolves (a quick script over ](…), src=, srcset= targets is enough).
  • Run every test that reads the README or CONTRIBUTING — not just the suite you expect to matter.
  • Re-read the final README as a stranger, top to bottom, and note where you would bail. If the bail points come in the wrong order, the funnel is wrong.
  • Report the change as decisions: what moved where, what was dropped and why, which assertions changed. A README rewrite reviewed as prose diff is hard to approve; reviewed as a decision list it is easy.
Skills enregistrées