Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/renefatuaki-clean-code
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: writing
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/clean-code
What's inside
- Skill name
clean-code- Description
- clean-code, the rules for readable code. Use when writing code, editing or refactoring code, or when the user names the clean-code skill. Covers names, functions, control flow, classes and vertical layout, and delegates comments to code-comments and documentation to project-docs.
- License
- MIT
- Instructions
- 26 lines in SKILL.md · view on GitHub
Files (20)
- SKILL.md
- coverage.md · formatting/
- formatting.md · formatting/
- checkstyle.xml · formatting/java/
- .editorconfig · formatting/kotlin/
- detekt.yml · formatting/kotlin/
- ruff.toml · formatting/python/
- .swift-format · formatting/swift/
- .swiftlint.yml · formatting/swift/
- .oxfmtrc.jsonc · formatting/typescript/
- .oxlintrc.jsonc · formatting/typescript/
- java.md · languages/
- kotlin.md · languages/
- python.md · languages/
- swift.md · languages/
- typescript.md · languages/
- classes.md · references/
- control-flow.md · references/
- functions.md · references/
- naming.md · references/
SKILL.md (first lines)
Rules for every symbol you write or touch. Names carry the meaning, functions do one thing at one level of abstraction, control flow stays flat, classes stay focused, and a comment appears only where the code cannot speak. ## Steps 1. **Pick the language guide.** Map the file extension and read the guide before writing: `.swift` [languages/swift.md](languages/swift.md), `.kt` `.kts` [languages/kotlin.md](languages/kotlin.md), `.java` [languages/java.md](languages/java.md), `.ts` `.tsx` `.js` `.jsx` [languages/typescript.md](languages/typescript.md), `.py` [languages/python.md](languages/python.md). For any other language apply the rules below with that language's own idioms. Where a language guide and a reference under `references/` differ, the language guide wins. 2. **Read the neighbouring code.** Before naming anything, read the file and its siblings and adopt their verbs, nouns and error idiom. Consistency beats preference: when the project says `fetch`, the new function says `fetch`. A misleading or domain-wrong existing name is the one exception, see [Renaming](#renaming). 3. **Name every touched symbol.** Nouns for variables, properties and classes. Verbs for functions and methods. A yes or no question for booleans. Specific over generic, so `createUser` instead of `create` and `product` instead of `item`. Full words, no slang, no abbreviation the reader must decode, no adjective the context already supplies. Details in [references/naming.md](references/naming.md). 4. **Shape every touched function.** One thing: every statement one level of abstraction below what the name promises, none mixed with lower detail. Few parameters, related ones grouped in one container. Every side effect implied by the name or the calling context. Each piece of logic in one place. Extract when a block is a coherent sub-task or needs more interpretation than its surroundings, and stop extracting when the split only renames, forces scrolling, or has no free name. Explicit over compact: the longer form wins the moment the reader has to decode the shorter one, the language guide lists the constructs that tempt. Details in [references/functions.md](references/functions.md), [laziness-protocol](../../principles/laziness-protocol/SKILL.md) and [minimize-reader-load](../../principles/minimize-reader-load/SKILL.md). 5. **Flatten control flow.** Guards at the top, failing fast. Positive checks, except where one negative check replaces a growing list of positives. Extract a nested control structure into its own function. Replace repeated type checks with polymorphism behind a factory. Signal failure through a structured error contract the language or the project enforces, never through a code, a flag or a message object returned beside a normal value. Details in [references/control-flow.md](references/control-flow.md) and [model-the-domain](../../principles/model-the-domain/SKILL.md). 6. **Keep classes focused.** Each class is a real object (private data, public behaviour) or a data container (public data, no behaviour beyond read-only derived values), never both. One responsibility, high cohesion. Real objects follow the Law of Demeter and are told, not asked. Extension by adding a subclass or implementation, not by editing a growing switch. Details in [references/classes.md](references/classes.md), [boundary-discipline](../../principles/boundary-discipline/SKILL.md) and [type-system-discipline](../../principles/type-system-discipline/SKILL.md). 7. **Order the file.** Callers above callees, public API above private helpers. A file that holds unrelated things is split. Line length and indentation belong to the project formatter. Details in [formatting/formatting.md](formatting/formatting.md). 8. **Keep tests honest.** Every test the change writes or touches calls the code the way its users do and asserts the result they observe against a literal expected value. Details in [test-behavior-not-implementation](../../principles/test-behavior-not-implementation/SKILL.md). 9. **Apply code-comments.** Every comment in the touched symbol follows the code-comments skill. Nothing else about comments lives here. 10. **Apply project-docs.** When the change alters a behaviour, a command, an option or a path that the project's documentation describes, bring that documentation in line with the project-docs skill. Nothing else about documentation lives here. Done when every touched symbol has a descriptive name consistent with the project, every touched function does one thing at one level of abstraction with no unexpected side effect and no expression the reader must decode, no nested control structure remains that a guard or an extraction would flatten, every touched class is a real object or a data container with one responsibility, the file reads top down, every touched test calls the code the way its users do and asserts the result they observe against a literal expected value, the comments pass code-comments, and the documentation still matches the code. ## Renaming Read the existing names with the domain in mind. A name that describes something other than what the symbol does or holds, or uses the wrong domain term, is not adopted. Rename it when you have checked every dependency and the change is safe: all call sites, overrides, serialized keys, reflection and string references. For a rename that spans many files or touches a public API, dispatch a sub-agent to trace the dependencies first. When the risk stays unclear, keep the name, and name the better one and the reason in your reply. Never block on a question for a rename. ## Scope The rules apply to the symbols you write or change. Surrounding code stays as it is, so the diff shows the intended change. A file you touch only to add a call keeps its shape.
From renefatuaki/skills, MIT.
More from renefatuaki/skills
- 0.570score
issue
renefatuaki
issue, the rules for every GitHub issue.
SkillAFreshness: AClaude Code +9 - 0.570score
pull-request-review
renefatuaki
pull-request-review, the rules for testing a pull request in the running application.
SkillAFreshness: AClaude Code +9 - 0.570score
pull-request
renefatuaki
pull-request, the rules for every GitHub pull request.
SkillAFreshness: AClaude Code +9 - 0.570score
project
renefatuaki
project, the rules for every GitHub Project.
SkillAFreshness: AClaude Code +9 - 0.567score
today-issues
renefatuaki
today-issues, the plan for today's tickets of a GitHub Project.
SkillAFreshness: AClaude Code +9 - 0.565score
diagrams
renefatuaki
diagrams, the rules for every Mermaid diagram.
SkillAFreshness: AClaude Code +9 - 0.565score
project-docs
renefatuaki
project-docs, the rules for every Markdown file that documents a project.
SkillAFreshness: AClaude Code +9 - 0.565score
commit
renefatuaki
commit, the rules for every git commit.
SkillAFreshness: AClaude Code +9 - 0.565score
code-comments
renefatuaki
code-comments, the rules for every code comment.
SkillAFreshness: AClaude Code +9 - 0.561score
tidy-history
renefatuaki
tidy-history, folds the commits of the current branch into one commit per change.
SkillAFreshness: AClaude Code +9 - 0.561score
review-queue
renefatuaki
review-queue, the open pull requests of a repository as a table in the order to review them.
SkillAFreshness: AClaude Code +9 - 0.561score
next-steps
renefatuaki
next-steps, what is still open and in which order to do it, as a short numbered list.
SkillAFreshness: AClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Sep 22, 2026 (1 month ago)
- Last release
- Oct 24, 2026 (4 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/renefatuaki/skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from renefatuaki
- 0.570score
issue
renefatuaki
issue, the rules for every GitHub issue.
SkillAFreshness: AClaude Code +9 - 0.570score
pull-request-review
renefatuaki
pull-request-review, the rules for testing a pull request in the running application.
SkillAFreshness: AClaude Code +9 - 0.570score
pull-request
renefatuaki
pull-request, the rules for every GitHub pull request.
SkillAFreshness: AClaude Code +9 - 0.570score
project
renefatuaki
project, the rules for every GitHub Project.
SkillAFreshness: AClaude Code +9 - 0.567score
today-issues
renefatuaki
today-issues, the plan for today's tickets of a GitHub Project.
SkillAFreshness: AClaude Code +9 - 0.565score
diagrams
renefatuaki
diagrams, the rules for every Mermaid diagram.
SkillAFreshness: AClaude Code +9
Cite this page
clean-code skill. Agent Mart. https://agentmart.dev/skills/renefatuaki-clean-code (last updated 2026-10-24)