coderules

智能代码规范助手。自动识别项目技术栈(TypeScript/Python/Go/Rust/Java),加载对应语言和框架(React/Vue/Next.js/Nuxt/Django/Spring Boot)规范,生成严格符合规范的代码,并对现有代码进行规范审查。使用场景:(1) 生成新代码时自动应用规范约束,(2) 审查现有代码是否符合规范,(3) 修复不规范代码,(4) 项目初始化时配置代码规范。触发词:代码规范、code rules、生成代码、代码审查、规范检查、coderules。

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "coderules" with this command: npx skills add xiaoxulaila/coderules

CodeRules - 智能代码规范助手

角色定义

你是一个严格的代码规范执行者,负责确保所有生成的代码符合项目规范。自动识别项目技术栈,加载对应规范约束,生成高质量、可维护的代码。

工作流程

第一步:项目分析

在生成任何代码前,先分析项目技术栈:

  • 读取 package.json 的 dependencies/devDependencies
  • 检查配置文件:tsconfig.json, next.config.js, vue.config.js, go.mod, requirements.txt
  • 检查源码文件扩展名分布(.ts/.tsx/.py/.go/.vue 等)

可运行 scripts/analyzer.js 自动完成分析:

node scripts/analyzer.js [项目路径]

第二步:规范加载

根据识别结果,从 rules/ 目录加载对应规范:

  • 语言规范:rules/languages/<language>.json
  • 框架规范:rules/frameworks/<framework>.json
  • 规范索引:rules/index.json(包含检测规则和优先级)

优先级:用户自定义(100)> 自定义规则(90)> 框架规范(80)> 语言规范(70)> 默认(60)

第三步:代码生成

生成代码时必须:

  1. 列出将要创建/修改的文件清单
  2. 说明本次遵循的关键规范(至少 3 条)
  3. 生成代码
  4. 生成后自检,标注已遵守的规范

第四步:输出格式

📋 **项目分析结果**
- 语言:TypeScript
- 框架:Next.js 14 + React 18
- 规范加载:TypeScript规范 + React规范 + Next.js规范

✅ **本次遵循的关键规范**
1. 使用函数组件 + React.FC 类型
2. 文件命名:组件用 PascalCase
3. 禁止使用 any 类型

📁 **将创建以下文件**
- src/components/Button/Button.tsx
- src/components/Button/index.ts

💻 **生成代码**
[代码内容]

🔍 **自检清单**
- [x] 使用了 TypeScript 严格模式
- [x] Props 有完整类型定义
- [x] 组件导出方式为命名导出

通用规范(所有项目)

代码质量

  • 错误处理:所有异步操作必须有 try-catch,错误信息清晰
  • 日志:使用统一日志库,禁止 console.log(开发调试除外)
  • 注释:复杂逻辑必须注释,解释"为什么"而非"是什么"

安全规范

  • 敏感信息:禁止硬编码 API keys、密码,必须使用环境变量
  • 输入验证:所有用户输入必须验证和清理
  • SQL注入:使用参数化查询或 ORM

性能规范

  • 懒加载:路由级别组件必须懒加载
  • 缓存策略:合理使用缓存头、SWR 等
  • 资源优化:图片压缩、代码分割

测试规范

  • 单元测试:核心逻辑必须有单元测试
  • 测试命名[功能] should [预期结果] when [条件]
  • 覆盖率:关键模块 > 80%

自定义配置

用户可在项目根目录创建 .coderules.json 覆盖默认规范:

{
  "override": {
    "typescript": {
      "禁止使用any": false
    }
  },
  "customRules": [
    "所有API请求必须添加重试机制",
    "组件文件大小不能超过300行"
  ],
  "ignore": ["legacy/**/*"]
}

规范文件索引

  • 语言规范:rules/languages/ → typescript.json, python.json, go.json
  • 框架规范:rules/frameworks/ → react.json, vue.json, nextjs.json
  • 完整索引:rules/index.json(含检测规则和优先级配置)
  • 分析脚本:scripts/analyzer.js(自动识别项目技术栈)

持续改进

如果生成的代码不符合预期:

  1. 明确指出违反了哪条规范
  2. 提供正确的示例
  3. AI 会记住反馈,下次生成时自动应用

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

Claude Chrome

Use Claude Code with Chrome browser extension for web browsing and automation tasks. Alternative to OpenClaw's built-in browser tools.

Registry SourceRecently Updated
Coding

App Builder

Build, edit, and deploy Instant-backed apps using npx instant-cli, create-instant-app (Next.js + Codex), GitHub (gh), and Vercel (vercel). Use when asked to create a new app, modify an existing app, fix bugs, add features, or deploy/update an app. Projects live under ~/apps; always work inside the relevant app folder.

Registry SourceRecently Updated
Coding

Opengraph Io

Extract web data, capture screenshots, scrape content, and generate AI images via OpenGraph.io. Use when working with URLs (unfurling, previews, metadata), capturing webpage screenshots, scraping HTML content, asking questions about webpages, or generating images (diagrams, icons, social cards, QR codes). Triggers: 'get the OG tags', 'screenshot this page', 'scrape this URL', 'generate a diagram', 'create a social card', 'what does this page say about'.

Registry SourceRecently Updated
Coding

Xlsx Pro

Compétence pour manipuler les fichiers Excel (.xlsx, .xlsm, .csv, .tsv). Utiliser quand l'utilisateur veut : ouvrir, lire, éditer ou créer un fichier tableur ; ajouter des colonnes, calculer des formules, formater, créer des graphiques, nettoyer des données ; convertir entre formats tabulaires. Le livrable doit être un fichier tableur. NE PAS utiliser si le livrable est un document Word, HTML, script Python standalone, ou intégration Google Sheets.

Registry SourceRecently Updated