agentleFS
rlespinasserlespinasse/agent-skills/skills/verify-readme-features/SKILL.md

verify-readme-features

Skill13 starsChanged 6 days agoMITView on GitHub

Verifies that features listed in a README (or similar documentation) are actually

The file

We split this skill into the rules it gives an agent

9 rules. About 0 are common, 9 are distinctive, and 0 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈9

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    After updating a feature list in documentation

    line 17
  2. Distinctive:

    Before a release, to ensure docs match reality

    line 18
  3. Distinctive:

    When onboarding to a project and wanting to trust the README

    line 19
  4. Distinctive:

    When refactoring or removing features that may still be documented

    line 20
  5. Distinctive:

    If any claims are Partial, Not found, or Overstated:

    line 68
  6. Distinctive:

    Look for evidence in these locations, ordered by reliability:

    line 86
  7. Distinctive:

    Do not count documentation files as evidence — they are the claims, not the proof.

    line 94
  8. Distinctive:

    Third-party features: If a claim describes a feature provided by a dependency (e.g., "powered by Leaflet"), verify the dependency is …

    line 98
  9. Distinctive:

    Configurable features: If a claim says "configurable X", verify both the config option and the code that reads it

    line 100

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Verify README Features

You are helping the user verify that every feature claim in their project's README (or similar documentation file) is backed by actual implementation in the codebase.

When to Use

  • After updating a feature list in documentation
  • Before a release, to ensure docs match reality
  • When onboarding to a project and wanting to trust the README
  • When refactoring or removing features that may still be documented

Verification Process

Step 1: Identify Feature Claims

  1. Read the documentation file (default: README.md in the project root)
  2. Extract each feature claim — every bullet point, heading, or sentence that describes a capability of the project
  3. Note specific sub-claims — if a feature says "with X, Y, and Z", each of X, Y, and Z is a separate claim to verify

Step 2: Search the Codebase

For each feature claim:

  1. Identify keywords — extract the key terms that would appear in an implementation (function names, config keys, CSS classes, module names)
  2. Search source files — use grep/glob to find implementations matching those keywords
  3. Read the relevant code — confirm the implementation matches the claim, not just the name
  4. Note the evidence — record the file path and line number(s) where the feature is implemented

Step 3: Classify Each Claim

Assign one of these statuses:

StatusMeaning
ConfirmedImplementation found that matches the claim
PartialImplementation exists but does not fully match the claim
Not foundNo implementation found for this claim
OverstatedImplementation exists but the claim exaggerates its capabilities

Step 4: Report Results

Present results in a summary table grouped by documentation section, with columns:

FeatureStatusEvidence

Where:

  • Feature: the claim as written in the documentation
  • Status: one of the statuses from Step 3
  • Evidence: file path and brief description of what was found (or what is missing)

Step 5: Suggest Fixes

If any claims are Partial, Not found, or Overstated:

  1. Propose documentation edits — rewrite claims to match reality
  2. Flag missing implementations — if a documented feature should exist but does not, note it as a potential implementation gap
  3. Let the user decide — do not auto-edit; present the suggestions for approval

Parallelization Strategy

To verify efficiently:

  • Group related claims by module or feature area
  • Search in parallel — verify multiple independent claims concurrently
  • Read source files once — if multiple claims reference the same file, read it once and verify all related claims together

What to Search

Look for evidence in these locations, ordered by reliability:

  1. Source code (src/, lib/, app/) — actual implementation
  2. Test files — tests exercising the feature confirm it works
  3. Configuration schemas — config keys mentioned in claims
  4. CSS/style files — for UI-related claims (responsive, themes, overlays)
  5. Type definitions — for API surface claims

Do not count documentation files as evidence — they are the claims, not the proof.

Edge Cases

  • Third-party features: If a claim describes a feature provided by a dependency (e.g., "powered by Leaflet"), verify the dependency is declared and used, not that you wrote it
  • Configurable features: If a claim says "configurable X", verify both the config option and the code that reads it
  • UI claims: For "responsive", "accessible", or similar claims, check for CSS breakpoints, ARIA attributes, or relevant code — not just the presence of a CSS file

Anti-patterns to Avoid

Anti-patternWhy it is wrongBetter alternative
Trusting file names aloneA file named search.js may not implement full-text searchRead the code and verify behavior
Counting docs as evidenceREADME claims cannot verify themselvesOnly source code counts as evidence
Skipping sub-claims"X with A, B, and C" has 4 claimsVerify each sub-claim independently
Reporting without evidence"Confirmed" with no file reference is not verifiableAlways cite file and line
Verifying only the happy pathA feature may be partially implementedCheck for complete implementation

Example Output

## Verification Results

### Section: Core Features

| Feature | Status | Evidence |
| --- | --- | --- |
| Full-text search across properties | Confirmed | `src/search.js:45` — multi-term matching with `.every()` |
| Responsive layout | Confirmed | `src/css/responsive.css:11-113` — 600px breakpoint with mobile adaptations |
| Dark mode | Not found | No dark mode implementation, toggle, or CSS variables found |
| Plugin system (extensible) | Overstated | `src/plugins.js` loads plugins but has no public API for third-party plugins |

### Suggested Fixes

- **Dark mode**: Remove from feature list or implement
- **Plugin system**: Reword to "internal plugin loading" or document the extension API

Important Guidelines

  • Always read the source code — do not guess or assume from file names
  • Verify every sub-claim — "with hover highlighting" is a separate claim from "search"
  • Cite specific files and lines — the user should be able to navigate to the evidence
  • Be honest about gaps — the goal is accuracy, not validation
  • Do not modify code or docs without user approval — this is an audit, not a fix

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.