{"id":"649a9134-fc9f-42b5-ba8a-2f525e66345c","shortId":"EJsHq3","kind":"skill","title":"README Writer","tagline":"Generates a professional, comprehensive README.md for any project from its codebase or description.","description":"# README Writer\n\n## What this skill does\n\nThis skill directs the agent to read a project's structure, `package.json` (or equivalent manifest), source files, and any existing documentation, then generate a complete, professional README.md. The output adapts its tone and structure to the type of project — a CLI tool, a web app, a library, or a framework — and covers everything a new user or contributor needs to get started.\n\nUse this when you have a new project without documentation, an outdated README, or an open-source project you want to present well.\n\n## How to use\n\n### Claude Code / Cline\n\nCopy this file to `.agents/skills/readme-writer/SKILL.md` in your project root.\n\nThen ask:\n- *\"Use the README Writer skill to generate a README for this project.\"*\n- *\"Write a professional README.md for this repo using the README Writer skill.\"*\n\nThe agent will explore the project structure on its own. You can also provide a description of what the project does if the code alone isn't self-explanatory.\n\n### Cursor\n\nAdd the \"Prompt / Instructions\" section to your `.cursorrules` file. Then open the relevant files (package.json, main entry point) and ask Cursor to write the README.\n\n### Codex\n\nPaste your `package.json` (or equivalent), the main entry file, and a brief description of the project. Then include the instructions below.\n\n## The Prompt / Instructions for the Agent\n\nWhen asked to write a README, follow these steps:\n\n1. **Gather information.** Read:\n   - `package.json`, `pyproject.toml`, `Cargo.toml`, `go.mod`, or equivalent manifest for name, description, version, dependencies, and scripts\n   - The main entry point file to understand the project's purpose\n   - Any existing `README.md`, `CHANGELOG.md`, or `docs/` folder\n   - The directory structure (top level) to understand the project layout\n   - `LICENSE` file to identify the license\n\n2. **Determine the project type** and adapt accordingly:\n   - **Library/Package** — focus on API reference, installation, and code examples\n   - **CLI tool** — focus on installation, commands, flags, and usage examples\n   - **Web application** — focus on features, setup, and deployment\n   - **Framework/boilerplate** — focus on getting started, conventions, and architecture\n\n3. **Write the README with these sections** (adapt as needed for project type):\n\n   - **Title + Badges**: Project name as an H1. Add relevant badges (build status, npm version, license) using standard badge formats. Only add badges for things that actually exist.\n   - **One-line description**: What the project does in one sentence.\n   - **Features**: 4–8 bullet points of the most important capabilities.\n   - **Tech Stack**: Brief list of core technologies used (language, framework, database, etc.).\n   - **Prerequisites**: What the user needs installed before they can run the project.\n   - **Quickstart / Installation**: The exact commands to install and run — copy-paste ready. Use code blocks with language tags.\n   - **Usage**: How to use the project after setup. For libraries: code examples. For CLIs: command syntax and examples. For apps: how to navigate key features.\n   - **Configuration**: Document environment variables, config files, or options. Use a table with columns: Variable, Default, Description.\n   - **Project Structure**: A concise directory tree showing where things live. Only include meaningful directories, not every file.\n   - **API Reference** (libraries/APIs only): Document public functions, methods, or endpoints with their signatures and descriptions.\n   - **Contributing**: How to contribute — fork, branch, PR process, code style, running tests.\n   - **License**: One line with the license name and a link to the LICENSE file.\n\n4. **Write in plain, direct language.** Avoid filler phrases like \"This project aims to...\" — start with what it does.\n\n5. **Make all code blocks runnable.** Every shell command must be accurate and complete. Test commands against the actual `scripts` in the manifest.\n\n6. **Do not invent features** that don't exist in the code. Only document what is real.\n\n## Example\n\n**Input to Agent:**\n> \"Use the README Writer skill on this project. Here's the package.json:\n> ```json\n> {\n>   \"name\": \"snap-resize\",\n>   \"version\": \"1.2.0\",\n>   \"description\": \"Fast image resizing CLI for batch processing\",\n>   \"bin\": { \"snap-resize\": \"./dist/cli.js\" },\n>   \"scripts\": { \"build\": \"tsc\", \"test\": \"jest\" },\n>   \"dependencies\": { \"sharp\": \"^0.33.0\", \"commander\": \"^12.0.0\" }\n> }\n> ```\"\n\n**Output from Agent:**\n> # snap-resize\n>\n> ![npm version](https://img.shields.io/npm/v/snap-resize)\n> ![license](https://img.shields.io/npm/l/snap-resize)\n>\n> Fast image resizing CLI for batch processing — resize hundreds of images in seconds with a single command.\n>\n> ## Features\n> - Batch resize entire directories of images\n> - Output to JPEG, PNG, or WebP\n> - Preserve or override aspect ratio\n> - Set quality level per output format\n> - Built on [sharp](https://sharp.pixelplumbing.com/) for native-speed processing\n>\n> ## Prerequisites\n> - Node.js 18 or higher\n> - npm 9 or higher\n>\n> ## Installation\n> ```bash\n> npm install -g snap-resize\n> ```\n>\n> ## Usage\n> ```bash\n> # Resize all images in a folder to 800px wide\n> snap-resize ./photos --width 800 --out ./resized\n>\n> # Convert to WebP at 80% quality\n> snap-resize ./photos --format webp --quality 80 --out ./output\n> ```\n>\n> ## Configuration\n> | Option | Default | Description |\n> |--------|---------|-------------|\n> | `--width` | — | Output width in pixels |\n> | `--height` | — | Output height in pixels |\n> | `--format` | original | Output format: `jpeg`, `png`, `webp` |\n> | `--quality` | 85 | Compression quality (1–100) |\n> | `--out` | `./out` | Output directory |\n>\n> ## Contributing\n> 1. Fork the repo and create a branch: `git checkout -b my-feature`\n> 2. Make your changes and add tests\n> 3. Run `npm test` — all tests must pass\n> 4. Open a pull request\n>\n> ## License\n> MIT — see [LICENSE](./LICENSE)","tags":["readme","writer","openagentskills","notysoty","agent-skills","claude","claude-code","claude-skills","cline","cursor","llm","llm-skills"],"capabilities":["skill","source-notysoty","skill-readme-writer","topic-agent-skills","topic-claude","topic-claude-code","topic-claude-skills","topic-cline","topic-cursor","topic-llm","topic-llm-skills","topic-skills"],"categories":["openagentskills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/Notysoty/openagentskills/readme-writer","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add Notysoty/openagentskills","source_repo":"https://github.com/Notysoty/openagentskills","install_from":"skills.sh"}},"qualityScore":"0.454","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 8 github stars · SKILL.md body (5,954 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T19:13:24.040Z","embedding":null,"createdAt":"2026-05-18T13:20:45.709Z","updatedAt":"2026-05-18T19:13:24.040Z","lastSeenAt":"2026-05-18T19:13:24.040Z","tsv":"'/)':706 '/dist/cli.js':634 '/license':834 '/npm/l/snap-resize)':659 '/npm/v/snap-resize)':655 '/out':792 '/output':763 '/photos':743,757 '/resized':747 '0.33.0':642 '1':242,789,796 '1.2.0':621 '100':790 '12.0.0':644 '18':714 '2':294,810 '3':337,817 '4':389,540,825 '5':559 '6':582 '8':390 '80':752,761 '800':745 '800px':738 '85':786 '9':718 'accord':301 'accur':570 'actual':375,577 'adapt':51,300,344 'add':180,357,370,815 'agent':26,150,232,602,647 'agents/skills/readme-writer/skill.md':118 'aim':552 'alon':173 'also':161 'api':305,499 'app':66,460 'applic':322 'architectur':336 'ask':124,199,234 'aspect':693 'avoid':546 'b':806 'badg':351,359,367,371 'bash':722,730 'batch':628,665,678 'bin':630 'block':437,563 'branch':519,803 'brief':217,400 'build':360,636 'built':701 'bullet':391 'capabl':397 'cargo.toml':248 'chang':813 'changelog.md':274 'checkout':805 'claud':111 'cli':62,311,626,663 'cline':113 'clis':454 'code':112,172,309,436,451,522,562,593 'codebas':13 'codex':205 'column':478 'command':316,426,455,567,574,643,676 'complet':46,572 'comprehens':6 'compress':787 'concis':485 'config':470 'configur':466,764 'contribut':514,517,795 'contributor':79 'convent':334 'convert':748 'copi':114,432 'copy-past':431 'core':403 'cover':73 'creat':801 'cursor':179,200 'cursorrul':187 'databas':408 'default':480,766 'depend':257,640 'deploy':328 'descript':15,164,218,255,380,481,513,622,767 'determin':295 'direct':24,544 'directori':279,486,495,681,794 'doc':276 'document':42,93,467,503,595 'endpoint':508 'entir':680 'entri':196,213,262 'environ':468 'equival':35,210,251 'etc':409 'everi':497,565 'everyth':74 'exact':425 'exampl':310,320,452,458,599 'exist':41,272,376,590 'explanatori':178 'explor':152 'fast':623,660 'featur':325,388,465,586,677,809 'file':38,116,188,193,214,264,289,471,498,539 'filler':547 'flag':317 'focus':303,313,323,330 'folder':277,736 'follow':239 'fork':518,797 'format':368,700,758,778,781 'framework':71,407 'framework/boilerplate':329 'function':505 'g':725 'gather':243 'generat':3,44,131 'get':82,332 'git':804 'go.mod':249 'h1':356 'height':773,775 'higher':716,720 'hundr':668 'identifi':291 'imag':624,661,670,683,733 'img.shields.io':654,658 'img.shields.io/npm/l/snap-resize)':657 'img.shields.io/npm/v/snap-resize)':653 'import':396 'includ':223,493 'inform':244 'input':600 'instal':307,315,415,423,428,721,724 'instruct':183,225,229 'invent':585 'isn':174 'jest':639 'jpeg':686,782 'json':615 'key':464 'languag':406,439,545 'layout':287 'level':282,697 'librari':68,450 'libraries/apis':501 'library/package':302 'licens':288,293,364,526,531,538,656,830,833 'like':549 'line':379,528 'link':535 'list':401 'live':491 'main':195,212,261 'make':560,811 'manifest':36,252,581 'meaning':494 'method':506 'mit':831 'must':568,823 'my-featur':807 'name':254,353,532,616 'nativ':709 'native-spe':708 'navig':463 'need':80,346,414 'new':76,90 'node.js':713 'npm':362,651,717,723,819 'one':378,386,527 'one-lin':377 'open':100,190,826 'open-sourc':99 'option':473,765 'origin':779 'outdat':95 'output':50,645,684,699,769,774,780,793 'overrid':692 'package.json':33,194,208,246,614 'pass':824 'past':206,433 'per':698 'phrase':548 'pixel':772,777 'plain':543 'png':687,783 'point':197,263,392 'pr':520 'prerequisit':410,712 'present':106 'preserv':690 'process':521,629,666,711 'profession':5,47,139 'project':10,30,60,91,102,121,136,154,168,221,268,286,297,348,352,383,421,446,482,551,610 'prompt':182,228 'provid':162 'public':504 'pull':828 'purpos':270 'pyproject.toml':247 'qualiti':696,753,760,785,788 'quickstart':422 'ratio':694 'read':28,245 'readi':434 'readm':1,16,96,127,133,146,204,238,340,605 'readme.md':7,48,140,273 'real':598 'refer':306,500 'relev':192,358 'repo':143,799 'request':829 'resiz':619,625,633,650,662,667,679,728,731,742,756 'root':122 'run':419,430,524,818 'runnabl':564 'script':259,578,635 'second':672 'section':184,343 'see':832 'self':177 'self-explanatori':176 'sentenc':387 'set':695 'setup':326,448 'sharp':641,703 'sharp.pixelplumbing.com':705 'sharp.pixelplumbing.com/)':704 'shell':566 'show':488 'signatur':511 'singl':675 'skill':20,23,129,148,607 'skill-readme-writer' 'snap':618,632,649,727,741,755 'snap-res':617,631,648,726,740,754 'sourc':37,101 'source-notysoty' 'speed':710 'stack':399 'standard':366 'start':83,333,554 'status':361 'step':241 'structur':32,55,155,280,483 'style':523 'syntax':456 'tabl':476 'tag':440 'tech':398 'technolog':404 'test':525,573,638,816,820,822 'thing':373,490 'titl':350 'tone':53 'tool':63,312 'top':281 'topic-agent-skills' 'topic-claude' 'topic-claude-code' 'topic-claude-skills' 'topic-cline' 'topic-cursor' 'topic-llm' 'topic-llm-skills' 'topic-skills' 'tree':487 'tsc':637 'type':58,298,349 'understand':266,284 'usag':319,441,729 'use':84,110,125,144,365,405,435,444,474,603 'user':77,413 'variabl':469,479 'version':256,363,620,652 'want':104 'web':65,321 'webp':689,750,759,784 'well':107 'wide':739 'width':744,768,770 'without':92 'write':137,202,236,338,541 'writer':2,17,128,147,606","prices":[{"id":"c6bb0f7b-9119-4ec1-907f-f58d57c6efa0","listingId":"649a9134-fc9f-42b5-ba8a-2f525e66345c","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"Notysoty","category":"openagentskills","install_from":"skills.sh"},"createdAt":"2026-05-18T13:20:45.709Z"}],"sources":[{"listingId":"649a9134-fc9f-42b5-ba8a-2f525e66345c","source":"github","sourceId":"Notysoty/openagentskills/readme-writer","sourceUrl":"https://github.com/Notysoty/openagentskills/tree/main/skills/readme-writer","isPrimary":false,"firstSeenAt":"2026-05-18T13:20:45.709Z","lastSeenAt":"2026-05-18T19:13:24.040Z"}],"details":{"listingId":"649a9134-fc9f-42b5-ba8a-2f525e66345c","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"Notysoty","slug":"readme-writer","github":{"repo":"Notysoty/openagentskills","stars":8,"topics":["agent-skills","claude","claude-code","claude-skills","cline","cursor","llm","llm-skills","skills"],"license":"mit","html_url":"https://github.com/Notysoty/openagentskills","pushed_at":"2026-03-28T06:50:19Z","description":"A  community-driven library of reusable AI agent skills for Claude Code, Cursor, Codex, Cline, and more.","skill_md_sha":"24e66ab1726c45d1cff99e3ba45b111353180018","skill_md_path":"skills/readme-writer/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/Notysoty/openagentskills/tree/main/skills/readme-writer"},"layout":"multi","source":"github","category":"openagentskills","frontmatter":{"name":"README Writer","description":"Generates a professional, comprehensive README.md for any project from its codebase or description."},"skills_sh_url":"https://skills.sh/Notysoty/openagentskills/readme-writer"},"updatedAt":"2026-05-18T19:13:24.040Z"}}