Use whenever the user wants to create, rewrite, or improve a README.md for a GitHub/GitLab repo, project, library, CLI tool, app, or package. Trigger on "write me a README", "make a README for this repo", "improve my project's README", "make my repo/GitHub page look professional", or requests for repo docs, project landing content, or quickstart docs. Also trigger when the user pastes project details, a package.json/pyproject.toml, or a repo link and asks for docs. Interviews the user with targeted questions, offers 4 distinct visual/structural README designs to pick from, researches any related or inspirational projects named, and produces a polished, SEO-optimized, beginner-friendly README.md with a full table of contents, working anchor links, badges, and a real quickstart. Not for generic blog posts or non-repo documentation.
69
85%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Low
Low-risk findings worth noting
A skill for producing genuinely great, visually striking README.md files for code repositories — the kind that make a project look alive, trustworthy, and easy to try in under 60 seconds.
This is a conversational, interview-driven skill. Do not skip straight to generating a generic README. The interview is what makes the output good — it's the difference between a template and a README that actually sells the project.
A README has about 8 seconds to convince a visitor to keep reading, and about 2 minutes to get them from "landed on this page" to "it's running on my machine." Nearly every mediocre README fails because it was written by someone who already knows the project inside out and forgot what a stranger needs. Your job is to extract that context before writing a single line.
Before asking the user anything, check what's already available so you don't ask questions you can answer yourself:
package.json, pyproject.toml, Cargo.toml, go.mod, setup.py, composer.json, existing README*, LICENSE, .github/workflows/*, and a rough file tree. Use view / bash_tool if you have filesystem access.web_fetch on it to pull the same information (description, topics, languages, license, latest release tag, stars — stars/forks can be nice to know but never fabricate a number; only cite what you actually fetched).Never make the user re-type information you can already see. Only ask about what's genuinely missing or ambiguous.
Ask concise, grouped questions — not twenty separate messages. If you have a tool for presenting selectable options to the user (a multiple-choice / button UI), use it for the design pick and any other clearly single-select question; otherwise ask them as a short numbered list in one message. Skip any question you already answered in Step 1. Keep this to as few turns as possible — batch related questions together.
A. The essentials
B. The design pick — always show these 4 options (see references/design-styles.md for full specs)
Present these as a genuine choice, briefly described:
If the user is unsure, recommend one based on project type from step A (e.g., a CLI tool → Minimal; a UI app → Visual Hero) and say why, but let them override.
C. Content that makes the README actually useful 4. Key features — a short list (3–7 bullet points) of what it does. If the user doesn't have this ready, offer to draft it from the code/package files you scanned and let them correct it. 5. Tech stack / languages / frameworks used. 6. How is it installed and how is it run? (package manager command, Docker, binary download, etc.) Get the exact commands — never invent install commands you're not sure of. 7. A minimal working quickstart example (a few lines of code or CLI usage) showing the smallest possible "it works" moment. This is the single highest-leverage section in the whole README — press for a real example rather than a placeholder. 8. License (or "not sure yet" — in which case ask if they want a recommendation, and note MIT is the common permissive default, without deciding for them).
D. Research & promotion — always ask this explicitly 9. "Are there any related projects, inspirations, alternatives, or your own other repos/sites you'd like me to research and reference or link to in this README (e.g. in an Acknowledgments, Related Projects, or 'Built with' section)?" Take any names or URLs given.
E. Nice-to-haves (ask briefly, single message, skip what doesn't apply) 10. Do you have a logo, screenshot, or demo GIF to reference or placeholder for? 11. Do you want a Contributing section, Code of Conduct, roadmap/FAQ, or "Star History" section? 12. Any badges you specifically want (build status, version, downloads, Discord/community link, sponsor link) beyond the defaults for your chosen design? 13. Any social/contact links (Twitter/X, Discord, docs site, demo/live URL)?
Don't block on every single nice-to-have — reasonable defaults are fine (e.g. include a Contributing section by default unless told not to; skip Code of Conduct unless requested).
For every project, URL, or name given in question 9 (and for the project's own category in general, if useful):
web_search and/or web_fetch each one. Get: what it is, what it's for, and its actual relationship to this project (inspiration, alternative, dependency, prior work by the same author, etc.).Read references/design-styles.md for the full template of whichever design was picked, and references/seo-and-structure.md for the TOC/anchor/SEO rules — both are required reading before writing, every time, since they contain the exact mechanics (anchor slug rules, badge syntax, heading hierarchy) that make the output actually work on GitHub rather than just look right in the response.
Universal requirements for every design:
references/seo-and-structure.md (do not guess — GitHub's slugify rules are specific and this skill gets them wrong constantly if you don't check).) — required for accessibility and it's also read by search engines.-1, -2 suffixes on duplicates — avoid this by keeping headers distinct, per the reference file).Create the actual README.md file (this is a real file deliverable — always create it, don't just paste it in chat) and present it to the user. Briefly summarize what design was used and what's still a placeholder (e.g. "add your actual demo GIF here," "swap in your real repo URL," "confirm the license") so nothing fake ends up shipped by accident.
If the user wants to iterate ("make it punchier," "add a roadmap," "swap to the other design"), just edit the file directly rather than re-running the whole interview.
references/design-styles.md — full template + section order + tone notes for all 4 designs. Read the one the user picked (or all 4 if helping them decide).references/seo-and-structure.md — GitHub anchor-link slug rules, TOC construction, badge (shields.io) syntax, and SEO mechanics specific to README files on GitHub/Google.1b92900
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.