/size-check
Review changed code for reuse, quality, and efficiency, then fix any issues found. Also scans project files for size limit violations.
$ npx -y skills add doccker/cc-use-exp --skill size-check --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/size-check
Context preview
The summary Claude sees to decide when to auto-load this skill.
Review changed code for reuse, quality, and efficiency, then fix any issues found. Also scans project files for size limit violations.
SKILL.md
size-check.SKILL.mdname: size-check
description: Review changed code for reuse, quality, and efficiency, then fix any issues found. Also scans project files for size limit violations.
Size Check - 代码简化与文件行数检查
触发方式
用户执行 `/size-check` 或描述"简化代码"、"检查文件大小"时触发。
---
功能 1:代码简化(原有能力)
审查变更代码的复用性、质量和效率,修复发现的问题。
检查项
| 检查项 | 说明 | |--------|------| | 重复代码 | 提取公共方法/组件 | | 过度抽象 | 简化不必要的设计模式 | | 冗余逻辑 | 合并可简化的条件分支 | | 未使用代码 | 删除死代码、无用 import |
---
功能 2:文件行数扫描
行数阈值
| 语言 | 上限 | 拆分方式 | |------|------|---------| | Java | 300 | Service 拆分职责、提取 Helper/Converter | | Go | 400 | 按功能拆分同包文件 | | Vue | 200 | 提取子组件、composables | | TSX/JSX | 200 | 提取子组件 | | TypeScript/JS | 300 | 提取工具函数、常量、类型 | | Python | 300 | 按职责拆分模块 |
执行流程
**全项目扫描模式**(用户未指定文件时):
1. 扫描项目所有代码文件(排除 node_modules、vendor、dist、build、.git)
2. 统计每个文件行数,对照阈值标记超限文件
3. 检测 Markdown 文件中的重复章节(相同标题出现多次)
4. 输出超限清单 + 拆分建议
**单文件模式**(用户指定文件时):
1. 检查代码复用、质量、效率
2. 检查行数是否超限
3. 如果超限,给出具体拆分方案
输出格式
## 文件行数扫描结果
### 超限文件
| 文件 | 行数 | 阈值 | 超限 | 建议 |
|------|------|------|------|------|
| path/to/file.py | 450 | 300 | +150 | 按职责拆分为 xxx.py 和 yyy.py |
### 合规文件(前 10 个最大的)
| 文件 | 行数 | 阈值 | 余量 |
|------|------|------|------|
| path/to/big.go | 380 | 400 | 20 |
### 总结
- 扫描文件数:N
- 超限文件数:N
- 建议操作:[具体建议]
扫描排除规则
以下目录和文件不参与扫描:
- 目录:`node_modules/`、`vendor/`、`dist/`、`build/`、`.git/`、`__pycache__/`、`.venv/`
- 文件:`*.min.js`、`*.min.css`、`*.lock`、`*.sum`
- 配置:`.toml`、`.json`、`.yaml`、`.yml`(命令/配置文件不适用代码行数限制)
- 文档:`.md`(Markdown 无硬性行数限制,但检测重复章节)
---
功能 3:CSS 提取检查
触发条件
扫描 Vue/TSX/JSX 文件时,检测内联 `<style>` 块行数。
检查规则
| 检查项 | 条件 | 建议 | |--------|------|------| | 内联样式过长 | `<style>` 块超过 30 行 | 提取公共样式到 `assets/styles/` | | 非 scoped 全局样式 | Vue SFC 中存在 `<style>`(无 scoped) | 移到 `assets/styles/common.scss` |
**不触发**:`<style scoped>` 且行数 ≤ 30 行的组件级样式。
输出格式
在文件行数扫描结果中追加:
### CSS 提取建议
| 文件 | <style> 行数 | 类型 | 建议 |
|------|-------------|------|------|
| src/views/User.vue | 45 | scoped | 提取公共部分(变量/mixin)到 assets/styles/ |
| src/views/Home.vue | 12 | 非 scoped | 移到 assets/styles/common.scss |
---
修复流程
扫描完毕后,如发现超限文件或 CSS 提取建议,执行以下流程:
1. 用户确认
使用 AskUserQuestion 询问:
扫描发现 N 个问题(X 个文件超限 + Y 个 CSS 提取建议)。
是否修复?
1. 修复所有问题(推荐)
修复文件行数超限 + CSS 提取建议。改动后确保原有功能不受影响。
2. 跳过
不做任何修改,仅保留扫描报告。
用户选择「跳过」→ 结束。
2. 执行修复
逐文件修复,每个文件:
1. **阅读完整文件**,理解上下文和调用关系 2. **检查是否涉及重构**:
- 如果涉及表格列、数据结构、条件分支的修改,触发 `refactor-safety` 规则
- 完整读取原始代码(不凭记忆或推测)
- 制作对比清单(列/字段/配置项)
- 逐项验证一致性(数量/顺序/命名)
3. **按扫描建议拆分/提取**:
- 行数超限 → 拆分文件
- CSS → 提取到 `assets/styles/`
4. **确保拆分后的入口文件保持原有导出/接口不变** 5. **优先处理超限最严重的文件**
**重构安全检查**:
- ✅ 表格重构:列数、列名、列顺序与原始代码一致
- ✅ 数据结构重构:字段完整,没有遗漏
- ✅ 条件分支重构:所有 if/else/switch 分支都已处理
3. 验证
修复完成后:
1. 检测项目是否有测试命令(`npm test` / `go test ./...` / `pytest` 等) 2. **有测试** → 运行测试,全部通过才继续 3. **无测试** → 输出变更清单,提示用户手动验证
4. 自审
自动执行 `/review quick` 对修复内容进行快速审查。
---
安全原则
- **先报告,确认后修复** —— 扫描结果需用户确认才执行修复
- **不改变现有行为** —— 拆分后的入口文件保持原有接口
- **渐进式处理** —— 优先处理超限最严重的文件
---
规则溯源
> 📋 本回复遵循:`size-check` - [功能1/功能2/功能3]
Read more
name: size-check description: Review changed code for reuse, quality, and efficiency, then fix any issues found. Also scans project files for size limit violations.
Size Check - 代码简化与文件行数检查
触发方式
用户执行 `/size-check` 或描述"简化代码"、"检查文件大小"时触发。
---
功能 1:代码简化(原有能力)
审查变更代码的复用性、质量和效率,修复发现的问题。
检查项
| 检查项 | 说明 | |--------|------| | 重复代码 | 提取公共方法/组件 | | 过度抽象 | 简化不必要的设计模式 | | 冗余逻辑 | 合并可简化的条件分支 | | 未使用代码 | 删除死代码、无用 import |
---
功能 2:文件行数扫描
行数阈值
| 语言 | 上限 | 拆分方式 | |------|------|---------| | Java | 300 | Service 拆分职责、提取 Helper/Converter | | Go | 400 | 按功能拆分同包文件 | | Vue | 200 | 提取子组件、composables | | TSX/JSX | 200 | 提取子组件 | | TypeScript/JS | 300 | 提取工具函数、常量、类型 | | Python | 300 | 按职责拆分模块 |
执行流程
**全项目扫描模式**(用户未指定文件时):
1. 扫描项目所有代码文件(排除 node_modules、vendor、dist、build、.git) 2. 统计每个文件行数,对照阈值标记超限文件 3. 检测 Markdown 文件中的重复章节(相同标题出现多次) 4. 输出超限清单 + 拆分建议
**单文件模式**(用户指定文件时):
1. 检查代码复用、质量、效率 2. 检查行数是否超限 3. 如果超限,给出具体拆分方案
输出格式
## 文件行数扫描结果 ### 超限文件 | 文件 | 行数 | 阈值 | 超限 | 建议 | |------|------|------|------|------| | path/to/file.py | 450 | 300 | +150 | 按职责拆分为 xxx.py 和 yyy.py | ### 合规文件(前 10 个最大的) | 文件 | 行数 | 阈值 | 余量 | |------|------|------|------| | path/to/big.go | 380 | 400 | 20 | ### 总结 - 扫描文件数:N - 超限文件数:N - 建议操作:[具体建议]
扫描排除规则
以下目录和文件不参与扫描:
- 目录:`node_modules/`、`vendor/`、`dist/`、`build/`、`.git/`、`__pycache__/`、`.venv/`
- 文件:`*.min.js`、`*.min.css`、`*.lock`、`*.sum`
- 配置:`.toml`、`.json`、`.yaml`、`.yml`(命令/配置文件不适用代码行数限制)
- 文档:`.md`(Markdown 无硬性行数限制,但检测重复章节)
---
功能 3:CSS 提取检查
触发条件
扫描 Vue/TSX/JSX 文件时,检测内联 `<style>` 块行数。
检查规则
| 检查项 | 条件 | 建议 | |--------|------|------| | 内联样式过长 | `<style>` 块超过 30 行 | 提取公共样式到 `assets/styles/` | | 非 scoped 全局样式 | Vue SFC 中存在 `<style>`(无 scoped) | 移到 `assets/styles/common.scss` |
**不触发**:`<style scoped>` 且行数 ≤ 30 行的组件级样式。
输出格式
在文件行数扫描结果中追加:
### CSS 提取建议 | 文件 | <style> 行数 | 类型 | 建议 | |------|-------------|------|------| | src/views/User.vue | 45 | scoped | 提取公共部分(变量/mixin)到 assets/styles/ | | src/views/Home.vue | 12 | 非 scoped | 移到 assets/styles/common.scss |
---
修复流程
扫描完毕后,如发现超限文件或 CSS 提取建议,执行以下流程:
1. 用户确认
使用 AskUserQuestion 询问:
扫描发现 N 个问题(X 个文件超限 + Y 个 CSS 提取建议)。 是否修复? 1. 修复所有问题(推荐) 修复文件行数超限 + CSS 提取建议。改动后确保原有功能不受影响。 2. 跳过 不做任何修改,仅保留扫描报告。
用户选择「跳过」→ 结束。
2. 执行修复
逐文件修复,每个文件:
1. **阅读完整文件**,理解上下文和调用关系 2. **检查是否涉及重构**:
- 如果涉及表格列、数据结构、条件分支的修改,触发 `refactor-safety` 规则
- 完整读取原始代码(不凭记忆或推测)
- 制作对比清单(列/字段/配置项)
- 逐项验证一致性(数量/顺序/命名)
3. **按扫描建议拆分/提取**:
- 行数超限 → 拆分文件
- CSS → 提取到 `assets/styles/`
4. **确保拆分后的入口文件保持原有导出/接口不变** 5. **优先处理超限最严重的文件**
**重构安全检查**:
- ✅ 表格重构:列数、列名、列顺序与原始代码一致
- ✅ 数据结构重构:字段完整,没有遗漏
- ✅ 条件分支重构:所有 if/else/switch 分支都已处理
3. 验证
修复完成后:
1. 检测项目是否有测试命令(`npm test` / `go test ./...` / `pytest` 等) 2. **有测试** → 运行测试,全部通过才继续 3. **无测试** → 输出变更清单,提示用户手动验证
4. 自审
自动执行 `/review quick` 对修复内容进行快速审查。
---
安全原则
- **先报告,确认后修复** —— 扫描结果需用户确认才执行修复
- **不改变现有行为** —— 拆分后的入口文件保持原有接口
- **渐进式处理** —— 优先处理超限最严重的文件
---
规则溯源
> 📋 本回复遵循:`size-check` - [功能1/功能2/功能3]
保留你熟悉的 CLI/IDE,让 Claude Code、Gemini CLI、Codex、Cursor、GitHub Copilot 开箱即用 按费力度从低到高,用最少操作获得最大帮助 不是提示词集合,而是一套可维护的 AI 协作配置系统。
Repo: doccker/cc-use-exp
Other skills on cc-use-exp.
- /api-design-safety
当设计或修改 REST API 响应结构、处理 API 返回值,或生成 Excel/CSV/PDF/对账文件等下游产物时触发。防止 API 设计缺陷导致的字段错位、类型歧义,以及生成产物时关键字段缺失但静默成功的问题。
Open skill - /api-proxy-safety
网关/代理/WAF/CDN 中间件的安全关键词匹配实现规范,防止纯子串匹配误判正常响应内容中的技术术语(如 Cloudflare、502、error)
Open skill - /async-task-pattern
当 API/任务可能执行超过 10 秒(批量数据处理、远程 API 批量调用、全表扫描、跨租户聚合)时触发。防止同步接口被网关 30s 超时切断、用户重复点击触发并发、状态缓存内存泄漏等问题。提供异步任务状态机标准模板。
Open skill - /bash-style
当用户操作 .sh、Dockerfile、Makefile、.yml、.yaml 文件,或在 Markdown 中编写 bash 代码块时触发。提供 Bash 编写规范。
Open skill - /code-quality-principles
当编写新模块、设计接口、重构代码或代码审查时触发。提供经典模块化六原则检查清单(大小适中/调用深度/扇入扇出/边界清晰/作用域内聚/可预测性),适用于 PR/Review/新模块设计场景。
Open skill - /external-system-debugging
涉及浏览器、编辑器、CDN/WAF、IM 平台、操作系统剪贴板、第三方 SaaS 等"外部黑盒系统"的代码编写或 bug 调试时触发。强制先抓真实环境数据再推理,避免连续 2 轮"凭代码推理"的修复 no-op。关键词:粘贴/复制异常、跨平台显示不一致、第三方 API 怪结果、CDN/WAF 拦截、本地复现失败、HTML→MD 转换丢属性。
Open skill

