| name | check-readme |
| description | Review and improve the README of the current project. Use when the user asks to check, audit, verify or update a README, especially when correctness against the public API matters. |
Review and improve the README of the current project.
Goal: a README that is correct, precise, complete and brief (in that order).
Phase 1: Gather context
- Read the README end to end.
- Read the public API to ground every claim against real code:
- Swift package:
Sources/, public types, doc comments, Package.swift.
- Other languages: equivalent entry points and exported surfaces.
- Cross-check every code sample in the README:
- Do type and method names match the current code?
- Do the samples follow the patterns recommended in doc comments?
- Verify all internal links and paths resolve (demo folders, screenshots, anchor links).
Phase 2: Analyse
Complete the full analysis before presenting anything. Check every claim against each category:
Correctness — every claim matches the code:
- Public API names, signatures and observable behavior.
- Error handling: which paths trap, which recover.
- Isolation and concurrency guarantees.
- Platform / OS / language version requirements.
- Test and preview affordances.
- When overrides or resets are allowed.
Spelling and grammar
Ambiguity — flag anything open to misinterpretation.
Completeness — the README lists, at minimum:
- Every public feature. Exception: for packages of independent utilities with no shared architecture, prefer generic section summaries over listing every public type. Feature discoverability is left to the API documentation.
- Every non-obvious limitation that would surprise a new user.
- Every design choice that explains why a feature behaves the way it does (locking strategy, lifetime model, error policy, isolation guarantees, lifecycle/scoping rules, etc.).
- The smallest example needed to use each feature.
- Platform / OS / language version / package dependencies requirements stated in the README body (not only in badges).
Brevity — as short as possible while keeping all of the above:
- Prefer bullets over prose where it shortens without losing nuance.
- Drop filler ("simple", "easy", "powerful") unless backed by a concrete claim.
- Combine examples that demonstrate the same idea.
- No marketing voice and no emojis unless already used.
Phase 3: Present findings
Present findings using the standard format defined in AGENTS.md.
When done, suggest running /reflect to capture any process improvements from the session.
Constraints
- Do not invent features. If a behavior is unclear from code, ask before documenting.
- Do not remove badges, links, or licensing references unless they're broken or outdated.
- Keep tone consistent with the existing README.
- Do not introduce a "we" voice or first-person perspective unless already used.
- Do not remove TODO/FIXME items. Preserve them as in source code unless explicitly asked to remove.