Use when creating or editing a README.md file in any project or package...
Use this skill to create or update README documentation that stays aligned with the actual codebase.
The workflow analyzes the code from the README location, compares it with existing documentation, and produces thorough README content with copy-pasteable commands and practical examples.
index.ts do not belong in the README.examples/ directories. Made-up examples often contain subtle errors that confuse users.pnpm-lock.yaml, package-lock.json, yarn.lock, bun.lockb) and use the matching package manager in all commands. Wrong commands break the user's first experience.accelint-english-manager skill in strict audit+rewrite mode to remove inflated language, promotional tone, and AI writing patterns. Documentation should sound like a helpful human wrote it.Use this skill when:
Do not use this skill for:
Identify where the README should live. In monorepos, this determines the scope of codebase analysis:
project-root/ # README here documents entire monorepo
āāā packages/
ā āāā my-lib/ # README here documents only my-lib
ā āāā README.md
āāā README.md
Before analyzing the codebase, check if other onboarding documents exist:
Check for openspec/config.yml or openspec/config.yaml
Check for ARCHITECTURE.md
Check for AGENTS.md or CLAUDE.md
Benefits:
Use parallel sub-agents when available to discover different aspects of the codebase simultaneously. If sub-agents are not available, perform these discovery tasks inline in the same systematic order.
Spawn these discovery agents in parallel when sub-agents are available:
Agent A ā Entry Points & Public API
package.json for main, module, types, exports fieldssrc/index.ts)Agent B ā Dependencies & Configuration
package.json for dependencies, devDependencies, peerDependencies, scriptspnpm-lock.yaml, package-lock.json, yarn.lock, bun.lockb)tsconfig.json, .eslintrc*, vitest.config.*, etc.Agent C ā Examples & Usage Patterns
examples/ or __examples__/ directory*.test.ts, *.spec.ts) for usage patterns@example blocks from source filesAgent D ā Documentation Context (optional, runs concurrently)
After all agents complete: merge findings and identify documentation gaps (what exists in code but not in README, what's documented but doesn't exist, signature mismatches)
Extract external findings first ā check whether the invoking prompt includes a findings: list:
findings: section, which is a bulleted list of factual statements.If a README exists, identify gaps from the codebase scan:
Merge and present all findings:
Follow the README Structure and apply Writing Principles.
Use the README Template as a starting point for new READMEs.
For the Architecture & Development Guides section (section 11): only include it if at least one of the related docs exists (checked in Step 1.5). Within the section, only list files that actually exist ā do not include links to missing files. If none of the three docs exist (openspec/config.yml, ARCHITECTURE.md, AGENTS.md/CLAUDE.md), omit this section entirely.
Start
ā
Does README.md exist?
āā No ā Analyze codebase ā Generate from template
āā Yes ā Analyze codebase ā Compare with existing
ā
Identify gaps and staleness
ā
Suggest specific changes
ā
Apply updates (with user confirmation)
Load these as needed for detailed guidance:
This skill requires the accelint-english-manager skill to review generated content.
Before you invoke it, verify that the skill exists.
If accelint-english-manager is not available:
accelint-english-manager.If accelint-english-manager is available, invoke it with this exact prompt shape:
Invoke the accelint-english-manager skill.
audit+rewrite in strict mode the following:
"
[PASTE CONTENT HERE]
"
I do not want a report, just apply the new content to the output directly.
Use the rewritten content as the final README output. Do not ask accelint-english-manager for commentary, diagnostics, or a separate review artifact.
Always use the correct package manager based on lockfiles:
| Lockfile | Package Manager | Install Command |
|---|---|---|
pnpm-lock.yaml |
pnpm | pnpm install |
package-lock.json |
npm | npm install |
yarn.lock |
yarn | yarn |
bun.lockb |
bun | bun install |
Include a TOC for READMEs over ~200 lines. Place it after the heading area, before the Installation section.
REQUIRED SUB-SKILL: Use accelint-english-manager to review and refine generated README content.
Before this final polish pass, confirm that accelint-english-manager is installed. If it is missing, stop and tell the user they need to install it before this workflow can finish as designed.
When it is available, call it in strict mode with this exact prompt shape:
Invoke the accelint-english-manager skill.
audit+rewrite in strict mode the following:
"
[PASTE CONTENT HERE]
"
I do not want a report, just apply the new content to the output directly.
Documentation should sound like it was written by someone who genuinely wants to help. The accelint-english-manager skill identifies and removes AI writing patterns such as:
After generating README content, apply accelint-english-manager using the exact strict-mode prompt above and use its rewritten content directly as the final output. Do not return a separate audit report. See references/writing-principles.md for additional guidance specific to technical documentation.