CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

clean-code

This skill embodies the principles of "Clean Code" by Robert C. Martin (Uncle Bob). Use it to transform "code that works" into "code that is clean."

Quality

56%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./plugins/AI-Agents-Safe-Coding-Skills-claude/skills/clean-code/SKILL.md

The canonical home for this skill is clean-code in sickn33/agentic-awesome-skills

SKILL.md
Quality
Evals
Security

Quality

Content

47%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is a well-organized, ter catalog of Clean Code heuristics capped by a genuinely useful implementation checklist, but it largely re-teaches textbook knowledge Claude already possesses and defines no concrete application workflow — no procedure for how to review, refactor, or validate against the checklist. Structure is solid; the value is concentrated in the checklist and the few team-specific thresholds.

Suggestions

Add a concrete application workflow, e.g.: 1) identify the target (function/class/PR), 2) apply the relevant heuristics section, 3) validate against the Implementation Checklist, 4) only then present the change — giving the checklist an explicit validation role.

Trim sections that restate widely known Clean Code knowledge; keep team-specific thresholds ("smaller than 20 lines", argument limits) and the checklist, and cut the duplicated intro sentence and the Booch philosophy quote.

Extend the Implementation Checklist to cover the other taught sections (error handling, classes, smells and heuristics) so the actionable artifact matches the content.

DimensionReasoningScore

Conciseness

Nine sections restate textbook Clean Code knowledge Claude already has ("Functions should be shorter than you think", "Don't Return Null", "The Three Laws of TDD", "The Law of Demeter"), and the opening line duplicates the frontmatter description verbatim — matching anchor 2's "several unnecessary explanations or padded sections". It stays above anchor 1 because the form is compact, ter bullet points with no prose padding (no "a PDF is a file format that..." style filler), but the redundancy spans the entire body rather than isolated spots, keeping it below anchor 3.

2 / 5

Actionability

The guidance is concrete and specific for an instruction-only skill: named patterns with inline examples ("`elapsedTimeInDays` instead of `d`", "Avoid `a.getB().getC().doSomething()`", "`isPasswordValid` is better than `check`"), a real code comparison for comments, and a threshold-based checklist ("Is this function smaller than 20 lines?"), matching anchor 4's mostly executable guidance with minor gaps. Not 5 because there is no worked example applying the heuristics to real code, the checklist omits several taught sections (error handling, classes, smells), and examples are Python/single-language. Not 3 because the heuristics are specific and actionable, not pseudocode or high-level hints.

4 / 5

Workflow Clarity

"Use this skill when: Writing new code... Reviewing Pull Requests..." lists contexts, and the "Implementation Checklist" offers check items, but no sequence or procedure connects them — there is no defined process for reviewing a PR, refactoring a module, or applying the checklist as a step, fitting anchor 2's poorly defined steps with many gaps. Not 1 because the skill involves no risky operations and the checklist provides some validation ("Is there a failing test for this change?"); not 3 because no ordered steps with checkpoints are actually listed.

2 / 5

Progressive Disclosure

The skill is self-contained with no bundle files and well-organized, clearly headed sections ("## 1. Meaningful Names" through "## 9. Smells and Heuristics", "## 🛠️ Implementation Checklist") and easy navigation, matching anchor 4's good structure with minor organization gaps. Not 5 because at ~87 lines it exceeds the simple-skill threshold and the full heuristics catalog (or book-chapter detail) could be split into a one-level-deep reference file; not 3 because nothing is buried and the structure is consistent.

4 / 5

Total

12

/

20

Passed

Description

45%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description identifies a clear domain and source (Clean Code / Uncle Bob) but communicates only an abstract transformation with no concrete actions, no natural trigger terms beyond "clean code", and no explicit 'Use when' clause. It is serviceable but would frequently fail to trigger for users asking to "refactor" or "review" code.

Suggestions

Add an explicit trigger clause, e.g.: "Use when writing new code, reviewing pull requests, refactoring legacy code, or when the user asks to clean up, refactor, or improve code quality."

Replace the abstract framing with concrete actions, e.g.: "Applies Clean Code heuristics — intention-revealing names, small single-purpose functions, minimal comments, exception-based error handling, TDD — to write, review, and refactor code."

Include natural trigger terms users actually say: "refactor", "code review", "code smells", "code quality", "best practices".

DimensionReasoningScore

Specificity

The description names the domain — "This skill embodies the principles of \"Clean Code\" by Robert C. Martin (Uncle Bob)" — but its only action is the abstract "transform \"code that works\" into \"code that is clean\"", which mirrors anchor 2 (domain named, actions minimal/generic). It does not list concrete actions such as applying naming conventions, refactoring functions, or reviewing PRs, so it falls short of anchor 3, yet it is not pure abstraction like "Helps with code", ruling out 1.

2 / 5

Completeness

The 'what' is stated ("transform \"code that works\" into \"code that is clean\""), but the only 'when' guidance is the implicit "Use it to transform..." clause, which restates the 'what' rather than giving trigger conditions — a missing 'Use when...' clause caps completeness at 3 per the judging guidelines. Not 4 because the 'when' is effectively absent rather than merely imprecise; not 2 because the 'what' is clearly stated.

3 / 5

Trigger Term Quality

Relevant keywords appear ("Clean Code", "code that works", "code that is clean"), but common variations users would naturally say — "refactor", "code review", "code smells", "code quality", "best practices" — are missing, matching anchor 3 (some relevant keywords, missing common variations/synonyms). It is above anchor 2 because "clean code" is itself a phrase users naturally invoke, but below anchor 4's good coverage.

3 / 5

Distinctiveness Conflict Risk

Naming the specific methodology ("Clean Code" by Robert C. Martin) gives it some specificity, but the broad goal of making code clean overlaps heavily with related skills (code review, refactoring, simplify), matching anchor 3 (somewhat specific, could still overlap with similar skills). Not 4 because no distinct triggers differentiate it from generic code-quality skills; not 2 because the named book narrows the niche.

3 / 5

Total

11

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository

administrakt0r/AI-Agents-Safe-Coding-Skills

Path

plugins/AI-Agents-Safe-Coding-Skills-claude/skills/clean-code/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.