agentleFS
alesdrobyshalesdrobysh/readability-agents/skills/readability/SKILL.md

readability

Skill1 starsChanged 3 months agoMITView on GitHub

Local readability checker for substantial English prose such as docs, PR descriptions, commit bodies, blog posts, and explanations. Measures Flesch Reading Ease (0-100, higher is easier), MTLD, and TTR. Use when the user asks to check, simplify, or rewrite prose. Aim for 60 unless the user specifies a different threshold.

4 other projects use a version of this.

Adopted by

Most recently taken up by

  • Other versions4 projects use a version of this.

    Word for word · 1

    1. alesdrobysh/readability-claude★ 1100% same

    Edited · 0

    None found.

    Wrote their own version · 3

    1. danicat/speedgrapher★ 52same name
    2. kevin-burns/claude-skills★ 10same name
    3. wiseiodev/skills★ 1same name

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

The file

We split this skill into the rules it gives an agent

3 rules. About 0 are common, 2 are distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈2

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Check substantial English prose with the pure-JavaScript analyzer next to this skill.

    line 13
  2. Distinctive:

    Do not run it on code, command output, log dumps, non-English text, or short replies.

    line 17
  3. Distinctive:

    If the user's request contains prose, score it.

    line 79

≈ “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

Readability

Check substantial English prose with the pure-JavaScript analyzer next to this skill. It makes no network requests and has no runtime dependencies. This skill works in any agent that supports Agent Skills and can run Node.js 18 or newer.

Do not run it on code, command output, log dumps, non-English text, or short replies. The scores are not meaningful for those inputs.

Run the analyzer

Find the directory containing this SKILL.md, then run its adjacent scripts/check.js with Node.js. Use the actual absolute path to that script; the current working directory and agent-specific environment variables are not reliable ways to locate it. The script reads stdin, prints JSON, and exits 1 when the Reading Ease score misses --threshold:

node "/absolute/path/to/readability/scripts/check.js" --threshold 60 < draft.md

To score prose already in the conversation, pass it on stdin. For long drafts, write the draft to a file first. Do not put prose in a shell-quoted --text argument. The path above is an example; replace it with the installed skill's actual path.

Output

{
  "word_count": 174,
  "sentence_count": 12,
  "paragraph_count": 4,
  "avg_sentence_length": 14.5,
  "avg_word_length": 4.8,
  "ttr": 0.61,
  "mtld": 74.2,
  "flesch_reading_ease": 64.3,
  "complexity_label": "Moderate"
}
  • flesch_reading_ease: 0-100; higher is easier. 70+ is simple, 50-69 moderate, and below 50 complex.
  • mtld: lexical diversity; null for fewer than 50 words.
  • ttr: unique tokens divided by all tokens.
  • avg_sentence_length: the main signal to inspect when a draft scores low.

Workflow

  1. Get the draft from the user or the file they named.
  2. Score it with the requested threshold, or 60 by default.
  3. If it misses:
    • Above 25 words per sentence: split long sentences.
    • Above 6 characters per word: prefer plainer words where meaning permits.
    • Below 30 Reading Ease: also remove nested clauses and needless passive voice.
  4. Rewrite without dropping facts, examples, caveats, or the author's voice.
  5. Re-score. Stop when it clears the threshold or further simplification would damage the content.
  6. Show the rewritten draft and the before/after Reading Ease scores.

Guardrails

Flesch Reading Ease measures sentence and word shape, not truth, style, or quality. Never game the number at the cost of meaning. A score of 100 is not a claim that the prose is good.

If the user's request contains prose, score it. If it names an existing file, read and score that file. If no prose or file is provided, ask what to check.

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.