Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/darellchua2/opencode-config-template/code-smells-skillnpx skills add darellchua2/opencode-config-template --skill code-smells-skillgit clone --depth 1 https://github.com/darellchua2/opencode-config-templateWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/darellchua2/opencode-config-template/code-smells-skill)<a href="https://agentmods.dev/skills/darellchua2/opencode-config-template/code-smells-skill"><img src="https://agentmods.dev/badge/skills/darellchua2/opencode-config-template/code-smells-skill.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00035 | $0.04210 |
| Opus 5 | $0.00017 | $0.02105 |
| Sonnet 5 | $0.00007 | $0.00842 |
| Haiku 4.5 | $0.00003 | $0.00421 |
Grade C, and why
code-smells-skill scanned grade C with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Recursive force deletehighDestructive command
rm -rf with a variable or a broad path is one typo away from removing the wrong tree.
When protocol is enabled, this skill defaults to `Iterations: 10` (sufficient for typical single-pass workflows). Override with `Iterations: N` for specific tasks. Safety blocks: `.env`, `node_modules/`, `rm -rf`, `git p How it starts
The opening of the file, as written. The whole thing — 603 lines — stays where its author put it; the contents beside it link to each section on GitHub.
What I do
I help you identify and eliminate code smells that make code hard to maintain:
- Detect Code Smells: Identify indicators of design problems in your code
- Categorize Smells: Classify smells into bloaters, OO abusers, change preventers, dispensables, and couplers
- Provide Refactoring Guidance: Show concrete fixes with before/after code examples
- Prioritize Fixes: Rank smells by impact and difficulty
- Prevent Future Smells: Apply prevention strategies during development
- Integrate with SOLID: Show how fixing smells improves SOLID compliance
When to use me
Use this skill when:
- Code feels "wrong" but you can't articulate why
- Reviewing code for quality issues
- Refactoring legacy code
- Teaching developers to recognize design problems
- Preparing for a code review
- Setting up coding standards for a team
- During code cleanup sprints
Prerequisites
- Understanding of basic code smells
- Code to analyze
- Willingness to refactor
- Knowledge of refactoring techniques
What Are Code Smells?
Indicators that something MAY be wrong. Not bugs, but design problems that make code hard to understand, change, or test.
The Five Categories
1. Bloaters
Code that has grown too large.
| Smell | Symptom | Refactoring |
|---|---|---|
| Long Method | > 10 lines | Extract Method |
| Large Class | > 50 lines, multiple responsibilities | Extract Class |
| Long Parameter List | > 3 parameters | Introduce Parameter Object |
| Data Clumps | Same group of variables appear together | Extract Class |
| Primitive Obsession | Primitives instead of small objects | Wrap in Value Object |
2. Object-Orientation Abusers
Misuse of OO principles.
| Smell | Symptom | Refactoring |
|---|---|---|
| Switch Statements | Type checking, large switch/if-else | Replace with Polymorphism |
| Parallel Inheritance | Adding subclass requires adding another | Merge Hierarchies |
| Refused Bequest | Subclass doesn't use parent methods | Replace Inheritance with Delegation |
| Alternative Classes | Different interfaces, same concept | Rename, Extract Superclass |
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 3d ago First seen · 603 lines · 35 tokens per session scan C d99d3cfc96eb
code-smells-skill is a skill published in the GitHub repository darellchua2/opencode-config-template (6 stars, last pushed today), licensed Apache-2.0. It adds 35 tokens to every session and 4,210 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it C with 1 finding (recursive force delete). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
recipe-front-review
Reviews completed frontend implementation for governing-source compliance, scope economy, repository quality, and security, then applies user-approved React corrections.
brooks-sweep
Full-sweep mode: runs a unified analysis across all quality dimensions — code decay, architecture, tech debt, and test quality — then applies fixes directly to the codebase. Safe changes are auto-applied; risky changes are confirmed before execution. Drawing on twelve classic engineering books. Triggers when: user…
dorodango
Polishes working code through successive quality passes in fresh subagents. Use after tests pass when code needs multi-dimension refinement before release.
ring:searching-code
Forensic code search and analysis with optional Chain of Draft (CoD) ultra-concise mode. Five-phase methodology (clarification, planning, execution, analysis, synthesis) with severity assessment. Use for targeted investigation of specific patterns, bugs, or vulnerabilities. Skip for broad architecture mapping (use…
ring:exploring-codebases
Exploring a codebase across phases: scopes the target, detects architecture, components, and layers, deep-dives each discovered perspective, then synthesizes findings into actionable guidance with file:line evidence. Use to understand how a feature or system works before planning changes, or to orient on an unfamiliar…
ring:planning-codebase-simplification
Planning a whole-codebase simplification: audits a Go/TS codebase for needless abstraction and emits a KILL/REVIEW/KEEP plan plus a ring:running-dev-cycle task array. Plans only — no edits. Detects single-impl interfaces, pass-through shims, translation-free adapters, and dead-code cascade chains under an inverted…