Review TypeScript + Vue code for maintainability issues. Use when checking code quality, architectural problems, type safety, or Vue best practices. Identifies technical debt in components, types, and reactive data handling.
Scanned 2/12/2026
Install via CLI
openskills install majiayu000/claude-skill-registry---
name: code-smell-checker
description: Review TypeScript + Vue code for maintainability issues. Use when checking code quality, architectural problems, type safety, or Vue best practices. Identifies technical debt in components, types, and reactive data handling.
license: Apache-2.0
compatibility: TypeScript + Vue 3 projects
metadata:
author: xiaoland
version: "1.0"
related-skills: "dev-vue-component"
---
# Code Smell Checker
## When to use
Review code when you need to:
- Check AI-generated or developer code for maintainability
- Identify technical debt and quality issues
- Validate TypeScript type design and semantic clarity
- Review Vue component architecture
- Ensure reactive data handling best practices
- Conduct code quality assessments
## What's covered
**TypeScript Types:**
- Organization and coupling → [type-organization.md](references/type-organization.md)
- Extensibility and complexity → [type-design.md](references/type-design.md)
**Vue Components:**
- Structure and lifecycle → [component-structure.md](references/component-structure.md)
- Props and state → [component-props-state.md](references/component-props-state.md)
- Templates and communication → [component-template.md](references/component-template.md)
**Reactive Data:**
- Ref, reactive, depth → [reactive-basics.md](references/reactive-basics.md)
- Computed properties → [reactive-computed.md](references/reactive-computed.md)
- Watch patterns → [reactive-watch.md](references/reactive-watch.md)
- Performance → [reactive-optimization.md](references/reactive-optimization.md)
- Memory management → [reactive-memory.md](references/reactive-memory.md)
## How to use
**1. Identify scope:**
- Which area? (types, components, reactive)
- Which files to review?
**2. Apply checklist:**
- Read relevant reference doc
- Check code against items
- Note violations
**3. Report findings:**
- Categorize by severity
- Focus on maintainability impact
- Consider project context
**4. Provide feedback:**
- Explain why it's a problem
- Show the bad pattern
- Suggest concrete improvements
- Reference checklist item
## Quick reference
**TypeScript red flags:**
- Scattered type definitions
- `any`, `object`, overly broad types
- Complex type gymnastics
- Types don't match runtime
**Vue component red flags:**
- Components >300 lines
- Props drilling >3 levels
- Mixed local/global/derived state
- Weak prop types
**Reactive data red flags:**
- Deep reactive on large data
- Computed with side effects
- Watch for transformations
- Wrong ref/reactive usage
## Output format
```
## Review: [Component/Module]
### [Category]
#### [Issue]
- Severity: [Critical/Important/Minor]
- Location: file.ts:123
- Reference: [Link to checklist]
- Problem: [Explain]
- Fix: [Suggest]
```
## Best practices
**Be constructive:**
- Focus on maintainability not preferences
- Explain "why" behind each smell
- Provide concrete alternatives
- Recognize when rules should bend
**Be systematic:**
- Review one category at a time
- Use checklist for coverage
- Document patterns
- Track recurring issues
**Be pragmatic:**
- Not all items apply to every project
- Consider project maturity
- Balance idealism with reality
- Prioritize high-impact issues
No comments yet. Be the first to comment!