clean-code-reviewer
1
总安装量
1
周安装量
#53331
全站排名
安装命令
npx skills add https://github.com/hylarucoder/skills-for-vibe-coder --skill clean-code-reviewer
Agent 安装分布
codex
1
Skill 文档
Clean Code Review
åºäºãä»£ç æ´æ´ä¹éãååï¼èç¦ 7 ä¸ªé«æ¶çæ£æ¥ç»´åº¦ã
Review Workflow
Review Progress:
- [ ] 1. Scan codebase: identify files to review
- [ ] 2. Check each dimension (naming, functions, DRY, YAGNI, magic numbers, clarity, conventions)
- [ ] 3. Rate severity (é«/ä¸/ä½) for each issue
- [ ] 4. Generate report sorted by severity
æ ¸å¿ååï¼åè½ä¿ç
ææå»ºè®®ä» é对å®ç°æ¹å¼ä¼åââç»ä¸å»ºè®®æ¹å代ç çåè½ãè¾åºæè¡ä¸ºã
Check Dimensions
1. å½åé®é¢ãææä¹çå½åã
æ£æ¥æ å¿ï¼
data1,temp,result,info,objçæ æä¹å½å- å䏿¦å¿µå¤ç§å½åï¼
get/fetch/retrieveæ··ç¨ï¼
// â
const d = new Date();
const data1 = fetchUser();
// â
const currentDate = new Date();
const userProfile = fetchUser();
2. 彿°é®é¢ã彿°çå° + SRPã
æ£æ¥æ å¿ï¼
- 彿°è¶ è¿ 100 è¡
- åæ°è¶ è¿ 3 个
- 彿°åå¤ä»¶äº
// â 7 ä¸ªåæ°
function processOrder(user, items, address, payment, discount, coupon, notes)
// â
使ç¨åæ°å¯¹è±¡
interface OrderParams { user: User; items: Item[]; shipping: Address; payment: Payment }
function processOrder(params: OrderParams)
3. éå¤é®é¢ãDRYã
æ£æ¥æ å¿ï¼
- ç¸ä¼¼ç if-else ç»æ
- ç¸ä¼¼çæ°æ®è½¬æ¢/é误å¤çé»è¾
- Copy-paste ç迹
4. è¿åº¦è®¾è®¡ãYAGNIã
æ£æ¥æ å¿ï¼
- 仿ªä¸º true ç
if (config.legacyMode)忝 - åªæä¸ä¸ªå®ç°çæ¥å£
- æ ç¨ç try-catch æ if-else
// â YAGNI è¿åï¼ä»æªä½¿ç¨çå
¼å®¹ä»£ç
if (config.legacyMode) {
// 100 è¡å
¼å®¹ä»£ç
}
5. éæ³æ°åãé¿å 硬ç¼ç ã
æ£æ¥æ å¿ï¼
- è£¸é²æ°åæ è§£é
- 硬ç¼ç å符串
// â
if (retryCount > 3) // 3 æ¯ä»ä¹ï¼
setTimeout(fn, 86400000) // è¿æ¯å¤ä¹
ï¼
// â
const MAX_RETRY_COUNT = 3;
const ONE_DAY_MS = 24 * 60 * 60 * 1000;
6. ç»ææ¸ æ°åº¦ãå¯è¯»æ§ä¼å ã
æ£æ¥æ å¿ï¼
- åµå¥ä¸å è¿ç®ç¬¦
- è¿åº¦ç´§åçåè¡ä»£ç
- è¿æ·±çæ¡ä»¶åµå¥ï¼> 3 å±ï¼
// â åµå¥ä¸å
const status = a ? (b ? 'x' : 'y') : (c ? 'z' : 'w');
// â
ä½¿ç¨ switch æ if/else
function getStatus(a, b, c) {
if (a) return b ? 'x' : 'y';
return c ? 'z' : 'w';
}
7. 项ç®è§èãä¸è´æ§ã
æ£æ¥æ å¿ï¼
- import é¡ºåºæ··ä¹±ï¼å¤é¨åº vs å 鍿¨¡åï¼
- 彿°å£°æé£æ ¼ä¸ä¸è´
- å½åè§èä¸ç»ä¸ï¼camelCase vs snake_case æ··ç¨ï¼
// â 飿 ¼ä¸ä¸è´
import { api } from './api'
import axios from 'axios' // å¤é¨åºåºå¨å
const handle_click = () => { ... } // å½å飿 ¼æ··ç¨
// â
ç»ä¸é£æ ¼
import axios from 'axios'
import { api } from './api'
function handleClick(): void { ... }
[!TIP] 项ç®è§èåºåç §
CLAUDE.mdAGENTS.mdæé¡¹ç®çº¦å®çç¼ç æ åã
Severity Levels
| çº§å« | æ å |
|---|---|
| é« | å½±åå¯ç»´æ¤æ§/å¯è¯»æ§ï¼åºç«å³ä¿®å¤ |
| ä¸ | ææ¹è¿ç©ºé´ï¼å»ºè®®ä¿®å¤ |
| ä½ | ä»£ç æ°å³ï¼å¯éä¼å |
Output Format
### [é®é¢ç±»å]: [ç®è¿°]
- **åå**: [Clean Code åå]
- **ä½ç½®**: `æä»¶:è¡å·`
- **级å«**: é«/ä¸/ä½
- **é®é¢**: [å
·ä½æè¿°]
- **建议**: [ä¿®å¤æ¹å]
References
Detailed examples: See references/detailed-examples.md
- å维度ç宿´æ¡ä¾ï¼å½åã彿°ãDRYãYAGNIãéæ³æ°åï¼
Language patterns: See references/language-patterns.md
- TypeScript/JavaScript 常è§é®é¢
- Python 常è§é®é¢
- Go 常è§é®é¢
Multi-Agent Parallel
æä»¥ä¸ç»´åº¦æåç»å¤ agent å¹¶è¡ï¼
- ææ£æ¥ç»´åº¦ – 7 维度åä¸ä¸ª agent
- ææ¨¡å/ç®å½ – ä¸å模ååä¸ä¸ª agent
- æè¯è¨ – TypeScriptãPythonãGo åä¸ä¸ª agent
- ææä»¶ç±»å – ç»ä»¶ãhooksãå·¥å ·å½æ°ãç±»åå®ä¹
示ä¾ï¼/clean-code-reviewer --scope=components æ --dimension=naming
æ±æ»æ¶éå»éåç»ä¸ä¸¥éç¨åº¦è¯å®ã