关于 rule-auditor
用于按相关专家技能中的规范审查代码的技能。它报告违规位置并提出可执行的修复建议,同时关注严重程度、安全性和类型安全。
主要功能
- 01选择适用的专家技能
- 02按规范检查代码
- 03标注文件与行号
- 04提供具体修复建议
- 05按严重程度整理问题
适用场景
- 01审查 TypeScript 和 React 代码
- 02检查代码中的安全问题
- 03查找特定语言的反模式
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ oimiragieo/ agent-studio --skill rule-auditor安装后在 Claude Code 中输入/rule-auditor确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
commands/rule-auditor.mdhooks/post-execute.cjspre-execute.cjsreferences/research-requirements.mdrules/rule-auditor.mdschemas/input.schema.jsonoutput.schema.jsonscripts/main.cjstemplates/implementation-template.md详细介绍
规则审计技能
规则审计器 - 根据专家技能中的编码标准和最佳实践验证代码。报告合规违规并提出修复建议。 - 根据最佳实践审计代码 - 识别违规和反模式 - 提出违规修复建议 - 生成合规报告步骤 1:识别适用的技能
根据待审计的代码查找相关专家技能:
| 文件类型 | 专家技能 |
|---|---|
.ts、.tsx | typescript-expert、react-expert |
.py | python-backend-expert |
.go | go-expert |
.java | java-expert |
*.test.* | testing-expert |
步骤 2:加载最佳实践
阅读相关技能文件,了解最佳实践:
cat .claude/skills/[skill-name]/SKILL.md
提取需要检查的关键规则和模式。
步骤 3:扫描目标文件
分析目标文件,查找违规:
- 读取目标文件:使用 Read 工具检查代码
- 检查模式:查找技能指南中的反模式
- 识别问题:记录文件、行号和违规类型
常见检查项:
- 命名约定
- 代码结构
- 导入模式
- 类型安全
- 安全问题
- 性能反模式
步骤 4:生成报告
创建结构化合规报告:
## Audit Report
**Target**: src/components/
**Skills Applied**: react-expert, typescript-expert
**Date**: YYYY-MM-DD
### Summary
- **Pass**: 12 rules
- **Warn**: 3 rules
- **Fail**: 2 rules
### Violations
#### FAIL: Avoid using `any` type
- **File**: src/components/UserAuth.tsx:45
- **Issue**: `const user: any = await getUser()`
- **Fix**: Define proper User interface
#### WARN: Use Server Components by default
- **File**: src/components/UserAuth.tsx:1
- **Issue**: Missing 'use client' directive but uses useState
- **Fix**: Add 'use client' or refactor to Server Component
</execution_process>
<best_practices>
- 尽早运行:在开发过程中进行审计,而不只是提交前
- 确定优先级:优先处理严重程度较高的违规
- 具体明确:包含文件路径和行号
- 提出修复建议:提供可执行的修复步骤
- 归类问题:按严重程度和类别整理
</best_practices>
**审计请求**:Audit src/components/ for TypeScript and React best practices
响应:
## Audit Report: src/components/
### Violations Found
1. **[ERROR]** src/components/User.tsx:23
- Rule: Avoid `any` type
- Code: `const data: any = response.json()`
- Fix: `const data: UserResponse = response.json()`
2. **[WARN]** src/components/Form.tsx:1
- Rule: Prefer Server Components
- Issue: Uses useState without 'use client'
- Fix: Add 'use client' directive at top
### Passed Checks
- Component naming (PascalCase) ✓
- Hook usage patterns ✓
- Import organization ✓
</usage_example>
规则
- 始终检查相关专家技能中的标准
- 提供行号和具体修复方法
- 优先处理安全和类型安全问题
记忆协议(必须遵守)
开始前:
cat .claude/context/memory/learnings.md
完成后:
- 新模式 ->
.claude/context/memory/learnings.md - 发现问题 ->
.claude/context/memory/issues.md - 做出决策 ->
.claude/context/memory/decisions.md
假设工作可能中断:你的上下文可能会重置。如果没有记录在记忆中,就等于没发生。
评论
支持 Markdown