agentleFS
MilkdownMilkdown/milkdown/.claude/skills/review-code-style/SKILL.md

review-code-style

Skill12k starsChanged 2 months agoMITView on GitHub

Review all changed or newly added code in this repository for code style and quality issues. Check both staged and unstaged changes.

Adopted by

Steady: 0 new projects took it in the last 4 weeks, none the 4 weeks before.thin data

Week of Sep 13: 0 new projectsWeek of Sep 20: 0 new projectsWeek of Sep 27: 0 new projectsWeek of Oct 4: 0 new projectsWeek of Oct 11: 0 new projectsWeek of Oct 18: 0 new projectsWeek of Oct 25: 0 new projectsWeek of Nov 1: 0 new projects
Sep 2026Oct 2026Nov 2026
New projects taking a version of this file each week, over the 8 weeks our latest run read: only 0 in all, so this is a hint, not a trend.

Who's talking about Milkdown/milkdown

The biggest 5 of 55 mentions linking to the repository that our crawl found. Each line is their own headline.

See all 55

Talked about on GitHub, Hacker News, Bluesky and the web (55 times).

On GitHub · 50

45 more on GitHub

On the web · 1

The file

Show its rules and text

We split this skill into the rules it gives an agent

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

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈16

    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. Distinctive:

    Meaningful, consistent names: Use the same name for the same concept everywhere.

    line 12
  2. Distinctive:

    Depend on abstractions: Use DI tags and interfaces, not concrete implementations.

    line 14
  3. Distinctive:

    Avoid deep nesting: Keep conditional nesting to three levels.

    line 19
  4. Distinctive:

    When a comment may exist:

    line 25
  5. Distinctive:

    Write a comment only for what the code cannot show: a constraint, an invariant, a reason, an upstream or browser bug, a non-obvious order …

    line 27
  6. Distinctive:

    Do not narrate the next line.

    line 28
  7. Distinctive:

    Do not record process history, for example "previously" or "per review feedback".

    line 29
  8. Very specific:

    Write one concrete action in a TODO.

    line 30
  9. Distinctive:

    Use the active voice and the present tense.

    line 36
  10. Distinctive:

    Do not use an em dash. Use a period, a colon, or a comma.

    line 37
  11. Distinctive:

    Do not use the first person: "we", "our", "let's".

    line 38
  12. Distinctive:

    Use parentheses only for a reference or an example.

    line 39
  13. Distinctive:

    Use a list when a sentence carries more than three items.

    line 40
  14. Distinctive:

    Use one word for one meaning.

    line 41
  15. Distinctive:

    Write in English only.

    line 43
  16. Distinctive:

    No dead code: Remove an unused variable, function, or import.

    line 47
  17. Distinctive:

    If no issues are found, confirm the code is clean.

    line 73

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

Review all changed or newly added code in this repository for code style and quality issues. Check both staged and unstaged changes.

Rules

Naming & Structure

  • Meaningful, consistent names. Use the same name for the same concept everywhere. Make a variable name pronounceable and searchable.
  • Single Responsibility. Give each module and function one reason to change.
  • Depend on abstractions. Use DI tags and interfaces, not concrete implementations.

Code Quality

  • No duplicated code. Extract similar code that runs in the same calling context.
  • Avoid deep nesting. Keep conditional nesting to three levels. Refactor with an early return or an extraction.
  • Short parameter lists. More than three or four parameters asks for an options object.
  • Self-documenting code. Express intent through a name or a structure before you write a comment.

Comments

When a comment may exist:

  • Write a comment only for what the code cannot show: a constraint, an invariant, a reason, an upstream or browser bug, a non-obvious order of operations.
  • Do not narrate the next line. Do not restate a name that the code already carries.
  • Do not record process history, for example "previously" or "per review feedback". Git history owns that. A regression test may state the bug it pins, in one sentence.
  • Write one concrete action in a TODO. Add the issue number when one exists: TODO(#2463).
  • /// is the public API reference. builddocs publishes it into docs/api. Keep every fact in it accurate.

How a comment reads (adapted from ASD-STE100, Simplified Technical English):

  • Give one idea to one sentence. Keep a sentence to 25 words or fewer.
  • Use the active voice and the present tense. Use the imperative for an instruction.
  • Do not use an em dash. Use a period, a colon, or a comma.
  • Do not use the first person: "we", "our", "let's".
  • Use parentheses only for a reference or an example. Move a condition into its own sentence.
  • Use a list when a sentence carries more than three items.
  • Use one word for one meaning. Do not switch synonyms for the same concept.
  • Wrap at 80 columns, to match printWidth in .oxfmtrc.json.
  • Write in English only.

Cleanup

  • No dead code. Remove an unused variable, function, or import. Remove a commented-out code block.
  • Fix typos in a name, a comment, and a string.

SOLID Principles

  • Single Responsibility: One responsibility to one actor
  • Open/Closed: Open for extension, closed for modification
  • Liskov Substitution: Subtypes must be substitutable
  • Interface Segregation: No forced implementation of unused methods
  • Dependency Inversion: Depend on abstractions, not concretions

Design Patterns (GoF)

  • Creational Patterns: Factory, Abstract Factory, Builder, Prototype, Singleton
  • Structural Patterns: Adapter, Bridge, Composite, Decorator, Facade, Flyweight, Proxy
  • Behavioral Patterns: Observer, Strategy, Command, State, Template Method, Chain of Responsibility

Output Format

For each issue found, output:

  • File: path and line number
  • Rule: which rule is violated
  • Problem: what the code does wrong
  • Fix: how to correct it

If no issues are found, confirm the code is clean.

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.