generate-readme
Creates accurate README files. Use this to generate docs derived from actual project state.
Install
mkdir -p .claude/skills/generate-readme && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/18843" && unzip -o skill.zip -d .claude/skills/generate-readme && rm skill.zipInstalls to .claude/skills/generate-readme
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Generate rigorous, evidence-based README documentation for any software project. Use this skill when the user asks to "create a readme", "generate readme", "write documentation", "生成readme", "写文档", "生成项目文档", or requests README files in any language.Key capabilities
- →Establish project purpose and target audience
- →Choose appropriate README structure based on project type
- →Generate evidence-backed documentation from repository contents
- →Ensure factual accuracy of claims by tracing to source files
- →Verify content integrity and structure quality of generated README
How it works
This skill generates README documentation by first understanding the project, then selecting a suitable structure, and finally scanning the repository for evidence to back all claims.
Inputs & outputs
When to use generate-readme
- →Create new README
- →Generate project documentation
- →Update README with current features
About this skill
README Generator
Write the README that this project and its readers need. Ground every technical claim in the repository, make the first useful action obvious, and use visual design to clarify the content.
Principles
Resolve conflicts in this order:
- Evidence — include only claims, commands, versions, routes, and status signals supported by the repository or a project-owned source.
- User intent — follow the requested language, file, scope, and degree of rewriting.
- Reader journey — answer “What is this?”, “Is it for me?”, “How do I try it?”, and “Where do I go next?” in that order.
- Project identity — preserve a coherent existing voice and visual system. When none exists, choose a presentation suited to the project instead of imposing a universal template.
- Restraint — omit weak material. A short README with a clear purpose is better than a complete-looking document filled with generic sections.
Workflow
1. Establish The Job
Read the existing README files, project description in manifests, top-level layout, and primary entry point. Form a one-sentence working statement that identifies:
- what the project is;
- who or what it serves;
- the outcome it enables.
Classify the primary reader action: install a library, run an application, invoke a CLI, consume a service, explore a collection, or contribute to a source repository. In mixed projects, select one primary path and expose other paths without making the opening compete with itself.
If the target README exists, infer the intended treatment:
- “improve”, “refresh”, or “update” means revise it in place;
- “rewrite” or “regenerate” permits replacement while preserving verified project-specific knowledge;
- ask about overwrite versus a separate file only when the request and destination remain materially ambiguous.
2. Build An Evidence Map
Before drafting, read references/evidence-and-scan.md. Apply its exclusions, inspect the relevant ecosystem signals, and keep a temporary ledger for consequential claims:
| Claim | Evidence | Confidence | Action |
|---|---|---|---|
npm run dev starts the app | package.json scripts | Confirmed | Include |
| Production image is published | Dockerfile only | Unknown | Omit |
Use three confidence levels:
- Confirmed — explicit in source, manifest, configuration, or maintained project docs.
- Derived — a direct synthesis of confirmed facts with little interpretive risk.
- Unknown — suggested by convention, naming, stale prose, or incomplete code.
State confirmed facts directly. Phrase derived facts narrowly. Exclude unknown claims from the README.
3. Choose The Reading Experience
For a new README, a visual redesign, or a project with several valid entry paths, read references/design-and-structure.md. Select a structure and visual mode from the project evidence:
- Minimal — libraries, infrastructure, standards, and source repositories whose detailed docs live elsewhere.
- Product — applications and developer tools with a real screenshot, demo, or outcome to show.
- Editorial — creative tools, curated collections, and projects where voice and sequencing carry the identity.
- Reference-led — APIs, SDKs, and mature tools whose readers arrive for exact commands or compatibility facts.
These modes guide hierarchy and rhythm; they are not templates. A README may combine two when the project clearly calls for it.
The opening must contain the project name and a concise positioning statement. Add badges, a logo, navigation, or a hero only when each improves orientation, trust, or recognition. Metadata never replaces the positioning statement.
Make the intelligence visible
Treat the README as a guided interface, not a report. Before drafting, write a small design brief with four decisions:
| Decision | Question | Evidence to capture |
|---|---|---|
| Primary path | What should a new reader do first? | Install, run, invoke, or open a documented entry point |
| Proof object | What makes the promise believable fastest? | A real output, screenshot, diagram, benchmark, or complete example |
| Choice points | Where do readers need to branch? | Platform, language, deployment, or contributor path |
| Depth boundary | What belongs in linked detail? | Configuration, API reference, operations, and maintainer material |
Use the brief to create a visible path selector when more than one audience or workflow is real. Keep one route recommended and label alternatives by outcome. Do not make readers infer the difference from a list of technologies.
Give the README one proof object above the first setup path whenever the repository contains a trustworthy artifact. Prefer a real project asset or a reproducible output; use a small Mermaid diagram only when relationships are the proof. Every visual must have descriptive alt text and a text equivalent.
Use a restrained emoji and icon-led visual language by default unless the user explicitly requests a plain style or the target host cannot render emoji. At minimum, put semantic marks in the hero metadata row when verified links exist and on the major reader-action headings; most READMEs need roughly three to six marks, never one on every bullet. Put one semantic mark before reader-facing headings, action labels, and example titles; keep technical reference headings plain when an icon adds no wayfinding. Add a compact metadata or navigation row under the hero when the repository has verified destinations such as the skill, docs, license, or language variants. Choose marks from the project’s domain and identity. A creative tool may use an editorial hero and an example gallery; a CLI may use a terminal transcript; a service may use an architecture flow. When the user names a reference README, inspect its visual grammar (including emoji or icon-led labels) as inspiration, then adapt it to this repository’s identity and evidence rather than copying its content. Keep one dominant visual, quiet metadata, short paragraphs, and generous whitespace. Never add decoration to compensate for missing evidence. Use at most one semantic emoji or icon per heading or label segment. A compact metadata row may group a few distinct marks when each segment has a clear meaning or link. Keep wording complete without the mark, reuse the same semantic vocabulary across localized files, and verify heading links after adding icons.
Use this editorial sequence when it fits:
- Orient — identity, audience, outcome.
- Prove — one concrete example, screenshot, benchmark, output, or small diagram.
- Activate — the shortest verified path to a first success.
- Deepen — configuration, reference, operations, contributing, and license.
4. Draft For Use
Write as the maintainer speaking to a capable new user. Use direct verbs, specific nouns, and varied sentence length. Avoid generic superlatives, repetitive bold-label bullets, AI self-reference, and narration about scanning the repository.
Keep the conceptual layers distinct:
- Positioning explains what the project enables and for whom.
- Features describe user-visible capabilities and outcomes.
- Technology records only tools that affect installation, integration, operation, or contribution.
- Architecture explains meaningful component relationships.
- Project structure helps contributors locate a small number of important areas.
Getting Started must provide one coherent path from prerequisite to observable success. Every command must be traceable to a manifest, script, Makefile, maintained project document, or explicit source behavior. State the working directory, shell, external service, or large download when it changes the result.
Use examples that are complete enough to teach the action. Keep the first example easy to understand without scrolling; move advanced variants into later sections, collapsible details, or dedicated docs. Do not shorten an example so aggressively that it stops being runnable.
Document APIs only from explicit route definitions or an OpenAPI specification. When the endpoint set is large, summarize useful groups and link to the authoritative reference instead of reproducing it.
Add a diagram only when relationships are harder to understand in prose. Label components by responsibility, and include external services only when they are explicitly configured. Add media only when it demonstrates the primary outcome; use meaningful alt text and ensure the same action remains available in text.
For skills and reusable prompts, document both operating modes when they exist: using the skill through the host assistant and opening the prompt/reference directly. Show one copy-ready request for each mode, then state the observable result. Put adjustable parameters in a compact table and keep immutable principles separate so readers know what is safe to change.
5. Localize Deliberately
Use separate files for separate languages. Keep facts, commands, and section intent aligned while writing natural prose in each language. Do not mirror sentence structure mechanically.
When no language is specified, infer it from the user's request, existing documentation, and likely audience. Keep code, commands, package names, and identifiers unchanged.
6. Verify Before Finishing
After a substantial creation or rewrite, read references/verification.md and perform both passes:
- trace technical claims back to evidence;
- read the result as a newcomer and test the information hierarchy, first action, links, and tone.
Fix failures before reporting completion. Keep the evidence ledger outside the repository unless the user asks for an audit artifact.
Non-Negotiable Constraints
- Do not read or expose credentials, private environment files, logs, database dumps,
Content truncated.
When not to use it
- →When the user asks to include VCS directories in the scan
- →When the user asks to include build output or cache directories
- →When the user asks to include private configuration or credentials
Limitations
- →Does not read or display content from VCS, dependency, build output, cache, private config, or credentials paths
- →Does not include AI self-references or filler content
- →Does not include implementation-detail narratives in the README
How it compares
This skill creates a README that is rigorously evidence-backed and reader-centric, ensuring every claim is verifiable and the content is structured for clarity, unlike generic or manually written documentation.
Compared to similar skills
generate-readme side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| generate-readme (this skill) | 0 | 2mo | Review | Advanced |
| write-docs | 6 | 4mo | No flags | Beginner |
| docs-changelog | 4 | 5mo | No flags | Beginner |
| docs-writer | 4 | 4mo | No flags | Beginner |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
write-docs
tldraw
Writing SDK documentation for tldraw. Use when creating new documentation articles, updating existing docs, or when documentation writing guidance is needed. Applies to docs in apps/docs/content/.
docs-changelog
google-gemini
Provides a step-by-step procedure for generating Gemini CLI changelog files based on github release information.
docs-writer
google-gemini
Always use this skill when the task involves writing, reviewing, or editing files in the `/docs` directory or any `.md` files in the repository.
technical-docs
getsentry
Write and review technical documentation for Sentry SDK docs. Use when creating, editing, or reviewing documentation pages, especially MDX files in docs/platforms/.
vuepress-plume-markdown
pengzhanbo
Help users write markdown files with VuePress Plume theme extensions, charts, and embeds.
repo-website-guide-create
open-circle
Create conceptual documentation and tutorial pages for the Valibot website at website/src/routes/guides/. Use when adding guides about schemas, pipelines, async validation, migration, or other topics. Covers directory structure, MDX templates, frontmatter, and content guidelines.