From Code Health
Orchestrates code duplication detection via reuse-hunter, priority-based consolidation via reuse-fixer, and verification cycles with type-check and build gates.
How this skill is triggered — by the user, by Claude, or both
Slash command
/code-health:reuse-health-inlineThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You ARE the orchestrator. Execute this workflow directly without spawning a separate orchestrator agent.
You ARE the orchestrator. Execute this workflow directly without spawning a separate orchestrator agent.
Detection → Validate → Consolidate by Priority → Verify → Repeat if needed
Max iterations: 3 Priorities: high → medium → low
Setup directories:
mkdir -p .tmp/current/{plans,changes,backups}
Validate environment:
package.json existstype-check and build scripts existInitialize TodoWrite:
[
{"content": "Duplication detection", "status": "in_progress", "activeForm": "Detecting duplications"},
{"content": "Consolidate high priority duplications", "status": "pending", "activeForm": "Consolidating high priority"},
{"content": "Consolidate medium priority duplications", "status": "pending", "activeForm": "Consolidating medium priority"},
{"content": "Consolidate low priority duplications", "status": "pending", "activeForm": "Consolidating low priority"},
{"content": "Verification scan", "status": "pending", "activeForm": "Verifying consolidation"}
]
Invoke reuse-hunter via Task tool:
subagent_type: "reuse-hunter"
description: "Detect all code duplications"
prompt: |
Scan the entire codebase for code duplications:
- Duplicated TypeScript interfaces/types
- Duplicated Zod schemas
- Duplicated constants and configuration objects
- Copy-pasted utility functions
- Similar code patterns that should be abstracted
- Categorize by priority (high/medium/low)
Generate: reuse-hunting-report.md
Return summary with duplication counts per priority.
After reuse-hunter returns:
reuse-hunting-report.mdRun inline validation:
pnpm type-check
pnpm build
For each priority (high → medium → low):
Check if duplications exist for this priority
Update TodoWrite: mark current priority in_progress
Invoke reuse-fixer via Task tool:
subagent_type: "reuse-fixer"
description: "Consolidate {priority} duplications"
prompt: |
Read reuse-hunting-report.md and consolidate all {priority} priority duplications.
For each duplication:
1. Backup files before editing
2. Determine canonical location (usually shared-types or shared package)
3. Create/update canonical file with the type/schema/constant
4. Replace duplicates with imports/re-exports
5. Log change to .tmp/current/changes/reuse-changes.json
Generate/update: reuse-consolidation-implemented.md
Return: count of consolidated items, count of failed consolidations.
Quality Gate (inline):
pnpm type-check
pnpm build
Update TodoWrite: mark priority complete
Repeat for next priority
After all priorities consolidated:
Update TodoWrite: mark verification in_progress
Invoke reuse-hunter (verification mode):
subagent_type: "reuse-hunter"
description: "Verification scan"
prompt: |
Re-scan codebase after consolidation.
Compare with previous reuse-hunting-report.md.
Report:
- Duplications resolved (count)
- Duplications remaining (count)
- New duplications introduced (count)
Decision:
Generate summary for user:
## Code Reuse Health Check Complete
**Iterations**: {count}/3
**Status**: {SUCCESS/PARTIAL}
### Results
- Found: {total} duplications
- Consolidated: {consolidated} ({percentage}%)
- Remaining: {remaining}
### By Priority
- High: {consolidated}/{total}
- Medium: {consolidated}/{total}
- Low: {consolidated}/{total}
### Validation
- Type Check: {status}
- Build: {status}
### Artifacts
- Detection: `reuse-hunting-report.md`
- Consolidation: `reuse-consolidation-implemented.md`
If quality gate fails:
Rollback available: .tmp/current/changes/reuse-changes.json
To rollback:
1. Read changes log
2. Restore files from .tmp/current/backups/
3. Re-run workflow
If worker fails:
Types/Interfaces (shared-types):
Constants (shared-types):
Utilities (shared package or re-export):
Single Source of Truth Pattern:
packages/shared-types/src/export * from '@package/shared-types/{module}'| Old (Orchestrator Agent) | New (Inline Skill) |
|---|---|
| 9+ orchestrator calls | 0 orchestrator calls |
| ~1400 lines (cmd + agent) | ~150 lines |
| Context reload each call | Single session context |
| Plan files for each phase | Direct execution |
| ~10,000+ tokens overhead | ~500 tokens |
See references/worker-prompts.md for detailed prompts.
npx claudepluginhub jhamidun/claude-code-config-pack --plugin code-healthProvides C# and .NET testing patterns using xUnit, FluentAssertions, NSubstitute, Testcontainers, and WebApplicationFactory for unit and integration tests.