Prevent semantic code duplication with capability index and check-before-write
28
22%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/code-deduplication/SKILL.mdQuality
Discovery
17%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 is too terse and jargon-heavy to serve as an effective skill selector. It hints at a specific methodology (capability index, check-before-write) but fails to explain what concrete actions the skill performs or when Claude should invoke it. Users seeking help with duplicate code would likely not use the terms present in this description.
Suggestions
Add a 'Use when...' clause with natural trigger terms like 'duplicate code', 'DRY principle', 'code reuse', 'redundant functions', or 'refactoring duplicates'.
Expand the 'what' portion to list concrete actions, e.g., 'Maintains an index of existing code capabilities, checks for semantic duplicates before writing new code, and suggests reusing existing functions or modules'.
Replace or supplement jargon terms ('capability index', 'check-before-write') with plain-language equivalents that users would naturally use when requesting this kind of help.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names a domain (semantic code duplication) and mentions two mechanisms ('capability index' and 'check-before-write'), but doesn't list concrete actions like 'scan codebase for duplicates', 'maintain an index of functions', or 'suggest reuse of existing code'. | 2 / 3 |
Completeness | The description only partially addresses 'what' (prevent duplication) and completely lacks a 'when' clause or any explicit trigger guidance for when Claude should select this skill. | 1 / 3 |
Trigger Term Quality | Terms like 'capability index' and 'check-before-write' are internal/technical jargon unlikely to be used by a user naturally. Missing common trigger terms like 'duplicate code', 'DRY', 'code reuse', 'refactor duplicates', or 'avoid redundancy'. | 1 / 3 |
Distinctiveness Conflict Risk | The concept of 'semantic code duplication' is somewhat specific, but without clearer scoping it could overlap with general code quality, refactoring, or linting skills. The mention of 'capability index' adds some distinctiveness but is unclear. | 2 / 3 |
Total | 6 / 12 Passed |
Implementation
27%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This skill has a sound core idea—maintain a capability index and check before writing new code—but it's buried under excessive verbosity and illustrative examples that don't add proportional value. The hypothetical CODE_INDEX.md example alone is ~60 lines of fictional function listings. The skill would benefit enormously from being split into a concise overview with references to supporting files, and from actually implementing the slash commands it references.
Suggestions
Reduce the CODE_INDEX.md example to 1-2 categories (10-15 lines max) instead of 7 full categories with dozens of entries—Claude understands the pattern from a small example.
Split into multiple files: move the Vector DB integration, common duplication patterns, and audit output format into separate referenced documents to improve progressive disclosure.
Remove or drastically shorten the ASCII box diagrams and decision tree—they restate the same 4-step process multiple times in different visual formats.
Either provide actual implementations for /update-code-index and /audit-duplicates commands, or remove references to them—currently they're non-functional placeholders that undermine actionability.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | Extremely verbose at ~350+ lines. The massive CODE_INDEX.md example with dozens of hypothetical functions (Button, Modal, Toast, fetchUser, etc.) is illustrative padding that doesn't teach Claude anything new. The ASCII box diagrams, decision trees, and extensive good/bad examples all repeat the same simple concept: check before writing. The Vector DB section adds significant bulk for an 'optional' feature. Claude already understands DRY principles and code organization. | 1 / 3 |
Actionability | Provides concrete code examples (ChromaDB/LanceDB setup, TypeScript patterns, grep commands) and specific templates for file headers and index entries. However, the core workflow relies on slash commands (/update-code-index, /audit-duplicates) that are never defined or implemented anywhere, making the central mechanism non-executable. The skill describes a process more than it provides executable tooling. | 2 / 3 |
Workflow Clarity | The check-before-write process is clearly sequenced with a decision tree, and the audit checklist provides structure. However, there are no validation checkpoints for the index itself—no way to verify CODE_INDEX.md is accurate or up-to-date, no feedback loop if the index is stale, and the slash commands referenced are undefined. For a workflow involving codebase-wide changes, the lack of verification steps is a gap. | 2 / 3 |
Progressive Disclosure | Everything is crammed into a single monolithic file with no external references despite the content clearly warranting separation. The CODE_INDEX.md template, Vector DB setup, audit output format, and common patterns could each be separate referenced files. No bundle files are provided, and the skill doesn't reference any external documents for its extensive sub-topics. | 1 / 3 |
Total | 6 / 12 Passed |
Validation
81%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 9 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
skill_md_line_count | SKILL.md is long (544 lines); consider splitting into references/ and linking | Warning |
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 9 / 11 Passed | |
65efb33
Table of Contents
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.