README First
Treat the repository's main README as its front door. Optimize for a new visitor
understanding what the project is, why it matters, and how to reach a first
useful result in about 60 seconds. Prefer evidence, reader value, and a short
happy path over a complete-looking template.
Choose the mode
- Create when the repository has no useful main README.
- Improve when a README exists but needs correction, simplification,
reorganization, or stronger onboarding.
- Review when the user wants an audit or recommendations without edits.
In every mode, target the repository's main user-facing README (normally the
root README.md). Do not silently turn the task into general Markdown,
architecture, API, contributor, branding, or project-marketing work.
Operate in this order
Follow this pipeline; do not begin with a universal template:
inspect → classify → establish facts → prioritize → write → verify → trim
- Inspect. Read repo-inspection.md before
any nontrivial Create, Improve, or Review task. Inspect only repository
evidence needed to describe the user experience: manifests and lockfiles,
scripts and task runners, entrypoints and exports, CLI definitions, examples,
tests that reveal usage, CI, assets, supporting docs, license, contribution
guidance, and the current README.
- Classify. Identify the project type, primary audience, user-facing
capability, normal happy path, supported runtime/package manager, and the
documentation that should remain deeper than the README.
- Establish facts. Prefer executable behavior and configuration over stale
prose. Record unresolved facts instead of guessing. Never invent commands,
package names, prerequisites, environment variables, ports, features, URLs,
screenshots, badges, or compatibility claims.
- Prioritize. Read readme-structure.md.
Plan for the reader journey: 3 seconds for identity and value, 30 seconds
for relevance and capabilities, 60 seconds for installation and normal use,
then links to deeper documentation. Select sections because they answer an
important reader question, not because a template includes them.
- Write. Put the concrete value proposition and the shortest realistic
Quick Start early. Use one representative example, concise benefit-oriented
features, restrained badges, and existing visuals only when they help. Keep
project identity and a useful established voice when improving an existing
README.
- Verify. Cross-check every command, import, package name, path, config
key, link, and claim against repository evidence. When safe and practical,
execute the primary happy path locally. Do not claim a command was tested
when only static inspection was possible. Review mode must not modify files.
- Trim. Read quality-checklist.md. In
Create and Improve, fix every material finding and re-read the result as a
stranger. In Review, use the checklist to organize prioritized findings
without editing. Remove duplication, ceremony, mechanism-heavy prose,
exhaustive reference material, and anything that does not help a new or
prospective user decide or start.
Mode-specific behavior
Create
Inspect first, classify the project, identify the audience and happy path, then
select only the sections that fit. Generate a usable README from established
facts, verify its commands and links, and finish with the quality checklist.
Improve
Treat the existing README as evidence, not authority. Preserve accurate
terminology, useful examples, relevant visuals, project-specific explanations,
and a clear voice. Compare it with repository truth, repair stale instructions,
move deep material to existing canonical documents when appropriate, strengthen
Quick Start, and remove content only when it hurts comprehension or onboarding.
Do not rewrite merely because another wording is possible.
Review
Do not edit the repository. Evaluate immediate comprehension, audience fit,
value proposition, hierarchy, Quick Start, factual accuracy, copy-pasteability,
scanability, examples, progressive disclosure, tone, and unnecessary depth.
Prioritize findings by user impact and cite concrete evidence, such as a script
that is documented but absent from the manifest. Do not expose a numeric score
unless the user asks for one.
Boundaries
- The main README is an onboarding and adoption surface, not the canonical
home for internal architecture, exhaustive APIs or CLI flags, complete
configuration or environment-variable references, deployment internals,
repository walkthroughs, long troubleshooting guides, changelogs, roadmaps,
or full contributor workflows.
- Link to real canonical documents instead of fabricating links or duplicating
deep material. Do not create supporting documents just to satisfy a template.
- Keep Quick Start to one obvious supported path. Prefer a working result over a
menu of equivalent package managers or speculative alternatives.
- Features describe what users can accomplish; implementation details and
architecture belong in a short explanation or deeper documentation only when
they are necessary to use or evaluate the project.
- Badges, visuals, tables, a table of contents, and
<details> are optional.
Use each only when it improves comprehension; never use collapsed content as
a substitute for a proper supporting document.
- Keep the license accurate and minimal. Link to existing contribution and
support guidance rather than copying it into the README.
1---2name: readme-first3description: Create, improve, simplify, rewrite, or review a software repository's main user-facing README.md. Use this whenever a user asks for a README from an existing codebase, faster onboarding, clearer README structure or developer experience, a 60-second quick start, or a fix for stale or inaccurate README instructions. Focus on the repository front door, not arbitrary Markdown, architecture or API documentation, contributor guides, branding, or landing pages.4---56# README First78Treat the repository's main README as its front door. Optimize for a new visitor9understanding what the project is, why it matters, and how to reach a first10useful result in about 60 seconds. Prefer evidence, reader value, and a short11happy path over a complete-looking template.1213## Choose the mode1415- **Create** when the repository has no useful main README.16- **Improve** when a README exists but needs correction, simplification,17 reorganization, or stronger onboarding.18- **Review** when the user wants an audit or recommendations without edits.1920In every mode, target the repository's main user-facing README (normally the21root `README.md`). Do not silently turn the task into general Markdown,22architecture, API, contributor, branding, or project-marketing work.2324## Operate in this order2526Follow this pipeline; do not begin with a universal template:2728**inspect → classify → establish facts → prioritize → write → verify → trim**29301. **Inspect.** Read [repo-inspection.md](references/repo-inspection.md) before31 any nontrivial Create, Improve, or Review task. Inspect only repository32 evidence needed to describe the user experience: manifests and lockfiles,33 scripts and task runners, entrypoints and exports, CLI definitions, examples,34 tests that reveal usage, CI, assets, supporting docs, license, contribution35 guidance, and the current README.362. **Classify.** Identify the project type, primary audience, user-facing37 capability, normal happy path, supported runtime/package manager, and the38 documentation that should remain deeper than the README.393. **Establish facts.** Prefer executable behavior and configuration over stale40 prose. Record unresolved facts instead of guessing. Never invent commands,41 package names, prerequisites, environment variables, ports, features, URLs,42 screenshots, badges, or compatibility claims.434. **Prioritize.** Read [readme-structure.md](references/readme-structure.md).44 Plan for the reader journey: 3 seconds for identity and value, 30 seconds45 for relevance and capabilities, 60 seconds for installation and normal use,46 then links to deeper documentation. Select sections because they answer an47 important reader question, not because a template includes them.485. **Write.** Put the concrete value proposition and the shortest realistic49 Quick Start early. Use one representative example, concise benefit-oriented50 features, restrained badges, and existing visuals only when they help. Keep51 project identity and a useful established voice when improving an existing52 README.536. **Verify.** Cross-check every command, import, package name, path, config54 key, link, and claim against repository evidence. When safe and practical,55 execute the primary happy path locally. Do not claim a command was tested56 when only static inspection was possible. Review mode must not modify files.577. **Trim.** Read [quality-checklist.md](references/quality-checklist.md). In58 Create and Improve, fix every material finding and re-read the result as a59 stranger. In Review, use the checklist to organize prioritized findings60 without editing. Remove duplication, ceremony, mechanism-heavy prose,61 exhaustive reference material, and anything that does not help a new or62 prospective user decide or start.6364## Mode-specific behavior6566### Create6768Inspect first, classify the project, identify the audience and happy path, then69select only the sections that fit. Generate a usable README from established70facts, verify its commands and links, and finish with the quality checklist.7172### Improve7374Treat the existing README as evidence, not authority. Preserve accurate75terminology, useful examples, relevant visuals, project-specific explanations,76and a clear voice. Compare it with repository truth, repair stale instructions,77move deep material to existing canonical documents when appropriate, strengthen78Quick Start, and remove content only when it hurts comprehension or onboarding.79Do not rewrite merely because another wording is possible.8081### Review8283Do not edit the repository. Evaluate immediate comprehension, audience fit,84value proposition, hierarchy, Quick Start, factual accuracy, copy-pasteability,85scanability, examples, progressive disclosure, tone, and unnecessary depth.86Prioritize findings by user impact and cite concrete evidence, such as a script87that is documented but absent from the manifest. Do not expose a numeric score88unless the user asks for one.8990## Boundaries9192- The main README is an onboarding and adoption surface, not the canonical93 home for internal architecture, exhaustive APIs or CLI flags, complete94 configuration or environment-variable references, deployment internals,95 repository walkthroughs, long troubleshooting guides, changelogs, roadmaps,96 or full contributor workflows.97- Link to real canonical documents instead of fabricating links or duplicating98 deep material. Do not create supporting documents just to satisfy a template.99- Keep Quick Start to one obvious supported path. Prefer a working result over a100 menu of equivalent package managers or speculative alternatives.101- Features describe what users can accomplish; implementation details and102 architecture belong in a short explanation or deeper documentation only when103 they are necessary to use or evaluate the project.104- Badges, visuals, tables, a table of contents, and `<details>` are optional.105 Use each only when it improves comprehension; never use collapsed content as106 a substitute for a proper supporting document.107- Keep the license accurate and minimal. Link to existing contribution and108 support guidance rather than copying it into the README.