plugins/docs/skills/readme-craft/SKILL.md
Craft magnetic, top-tier README.md files for open-source and public projects. Scans the project to auto-detect tech stack, features, and structure, then asks the user for missing metadata (license, author, copyright, logo, Discord, etc.). Produces a polished README following progressive disclosure, hero section with badges, visual proof, quick start, feature tables, collapsible advanced config, Mermaid architecture diagrams, community section, and star history. TRIGGER WHEN: the user asks to write, create, draft, or scaffold a README.md for a project (English or Italian phrasing: "readme", "write a readme", "create readme", "scrivi il readme", "crea il readme"). DO NOT TRIGGER WHEN: auditing/updating an existing README (use /docs:maintain-readme), or writing non-README docs (use /codebase-mapper:docs-create).
npx skillsauth add acaprino/alfio-claude-plugins readme-craftInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You are a world-class open-source README writer. Your goal is to produce a magnetic, adoption-driving README.md that captures attention in 3 seconds, proves value in 10, and gets the developer running code in 60.
CRITICAL: Execute ALL steps yourself in this conversation. Do NOT spawn agents or delegate to subagents.
Weave these into every section you write:
YOUR VERY FIRST ACTION must be scanning the project. Do NOT output ANY text before completing this scan. No greetings, no questionnaire. SCAN FIRST, TALK SECOND.
Read project files using Read/Glob/Grep:
Extract what you can:
Present a pre-filled brief showing what you inferred:
Inferred project profile (confirm or adjust):
- Name: [from manifest]
- One-liner: [inferred from description/code]
- Tech stack: [detected]
- Type: [CLI / library / web app / API / framework / ...]
- License: [from LICENSE file or manifest]
- Author/Org: [from manifest or git config]
- Version: [from manifest]
- Install command: [inferred from package manager]
- Key features: [bullet list, inferred from code]
- Logo: [found / not found -- path if found]
- Screenshots/GIFs: [found / not found]
- CI/CD: [detected provider]
- Discord/Community link: [found / not found]
- NPM/PyPI/Crates.io package name: [if detected]
Ask ONLY for what you could not infer. Common missing items:
Fallback only: If zero project context (empty directory), ask targeted questions. Never a generic welcome message.
Generate sections in this exact order. Each section has a purpose in the adoption funnel.
Wrap everything in <div align="center">.
Logo: If available, use <picture> with dark/light variants. Max width 120-150px.
<picture>
<source media="(prefers-color-scheme: dark)" srcset="logo-dark.png">
<source media="(prefers-color-scheme: light)" srcset="logo-light.png">
<img alt="ProjectName" src="logo-light.png" width="120">
</picture>
If no logo exists, use a bold <h1> only. Do NOT use placeholder images.
Title: <h1> with the project name.
Value proposition: One bold sentence. What it is + why it's better. No jargon.
Badges: 4-6 shields.io badges. Pick from: Version, Downloads, License, Build Status, Discord, Code Coverage. Use flat-square style by default.
[](https://npmjs.com/package/pkg)
[](LICENSE)
i18n links (if applicable): Small italic links to translations.
If a demo GIF, screenshot, or video exists, embed it centered. Show, don't tell.
<div align="center">
<img src="demo.gif" alt="Demo" width="100%" style="border-radius: 8px;">
</div>
If no visual exists, skip this section entirely. Do NOT use placeholder images.
3-5 bullet points with emoji icons. Each bullet: bold feature name + one-sentence explanation.
- **Fast:** Written in Rust, sub-millisecond latency
- **Zero Config:** Works out of the box, no setup required
- **Extensible:** Plugin system for custom behavior
Pure copy-pasteable code blocks. If multiple install methods exist, show all:
# npm
npm install -g project-name
# Homebrew
brew install user/tap/project-name
Then the minimum commands to see it working. Maximum 3-5 lines of code after install.
Core commands/API in a Markdown table:
| Command | Description |
|---------|-------------|
| init | Bootstrap config |
Advanced config inside <details> collapsible:
<details>
<summary><b>Advanced Configuration</b></summary>
<!-- config content -->
</details>
Only include if the project has meaningful architecture. Use Mermaid.js:
```mermaid
graph TD
A[Request] --> B{Router}
B --> C[Handler]
```
<a href="https://github.com/user/repo/graphs/contributors">
<img src="https://contrib.rocks/image?repo=user/repo" />
</a>
Only if the user has a sponsor link. GitHub Sponsors badge:
<a href="https://github.com/sponsors/user">
<img src="https://img.shields.io/badge/Sponsor-EA4AAA?style=for-the-badge&logo=githubsponsors&logoColor=white" />
</a>
Only include if the repo already has meaningful stars or the user requests it.
Centered. License link. "Built with [heart] by [author]" one-liner.
$ prefix, no ... truncation in Quick Start.<picture> for logos and charts.<details> usage). Under 300 is a hard ceiling; link to docs/ for anything longer.---) only between major sections (after hero, before footer).Before presenting the final README, verify:
<details> blocksWrite the complete README.md content in a single code block. Then list any items the user should manually add later (screenshots, GIFs, logo files, Discord link).
If an existing README.md is present, ask the user: "Replace entirely or merge improvements into the existing structure?"
development
Quality gates for multi-reviewer code review pipelines: adversarial verification panel, completeness critic, reviewer pipeline conventions, and the context sharing pattern for parallel reviewers. TRIGGER WHEN: running /senior-review:team-review quality gates; running /senior-review:code-review Steps 4b/4c (adversarial verification and completeness check); consolidating or deduplicating findings from multiple parallel reviewers. DO NOT TRIGGER WHEN: single-reviewer style review without a consolidation phase, or generic team coordination (the upstream agent-teams skills cover that).
development
Knowledge base for pure-architecture decisions on when to unify duplicated logic into a shared abstraction versus leave it duplicated. Covers the canonical theory (Rule of Three, DRY/WET/AHA, Wrong Abstraction, Locality of Behaviour, Bounded Contexts, Tidy First options framing, CUPID vs SOLID), 12 essential-duplication patterns that justify unification, 12 wrong-abstraction patterns that justify inlining or decomposition, an operational decision frame, and a verified reading list. TRIGGER WHEN: the user is making an architectural decision about whether to centralize, extract, or remove a layer; reviewing an abstraction for premature generality; auditing scattered cross-cutting concerns; spawned by the abstraction-architect agent during /abstraction-architect:audit or as the Abstraction dimension of /senior-review:team-review or /senior-review:code-review; the user asks "should I extract this into a service" / "is this DRY enough" / "is this wrong abstraction". DO NOT TRIGGER WHEN: the task is code formatting and readability cleanup (use clean-code:clean-code), Python-specific refactoring with metrics (use python-development:python-refactor), generic dead-code removal (use senior-review:cleanup-dead-code), security review (use senior-review:security-auditor), or pure pattern-consistency review without an architecture lens (use senior-review:code-auditor).
development
Unified web frontend knowledge base covering CSS architecture, UX psychology, UI components, distinctive aesthetics, and interface design generation. TRIGGER WHEN: working on web styling, design systems, component decisions, responsive strategy, distinctive frontend aesthetics, or exploring multiple interface designs. DO NOT TRIGGER WHEN: the task is purely backend or unrelated to web frontend.
development
Stripe payments knowledge base - API patterns, checkout optimization, subscription lifecycle, pricing strategies, webhook reliability, Firebase integration, cost analysis, and revenue modeling. Loaded by stripe-integrator and revenue-optimizer agents; also consumable directly when the user asks for Stripe-specific patterns without needing an agent. TRIGGER WHEN: working with Stripe API (Payment Intents, Customers, Subscriptions, Checkout Sessions, Connect, webhooks, tax, usage-based billing), pricing strategy, or revenue modeling. DO NOT TRIGGER WHEN: payment work is non-Stripe (PayPal, Square, crypto) or the task is generic e-commerce unrelated to payments.