Skip to content
Back to skills

Verify Change

ASecurity

变更校验关卡。分析代码变更,检测文档同步状态,评估变更影响范围。当用户提到变更检查、文档同步、代码审查、提交前检查、diff分析时使用。在设计级变更、重构完成时自动触发。

  • 5,905 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added May 28, 2026
ai-agentsbashnode

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned May 28, 2026

npx -y skills add fengshao1227/ccg-workflow --skill verify-change --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Verify Change?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Verify Change
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/fengshao1227-verify-change/badge)](https://www.skillsdirectory.com/skills/fengshao1227-verify-change)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: verify-change
description: 变更校验关卡。分析代码变更,检测文档同步状态,评估变更影响范围。当用户提到变更检查、文档同步、代码审查、提交前检查、diff分析时使用。在设计级变更、重构完成时自动触发。
license: MIT
compatibility: node>=18
user-invocable: true
disable-model-invocation: false
allowed-tools: Bash, Read, Grep
argument-hint: [--mode working|staged|committed]
---

# ⚖ 校验关卡 · 变更校验


## 核心原则

```
变更 = 代码改动 + 文档更新 + 理由记录
无理由的变更是隐患,无记录的变更是灾难
每一次变更都是历史,每一个决策都要留痕
```

## 自动分析

运行变更分析脚本(跨平台):

```bash
# 在 skill 目录下运行
node scripts/change_analyzer.js                    # 分析工作区变更(默认)
node scripts/change_analyzer.js --mode staged      # 分析暂存区变更
node scripts/change_analyzer.js --mode committed   # 分析已提交变更
node scripts/change_analyzer.js -v                 # 详细模式
node scripts/change_analyzer.js --json             # JSON 输出
```

## 检测能力

### 自动检测项

| 检测项 | 说明 |
|--------|------|
| **文件分类** | 自动识别代码/文档/测试/配置文件 |
| **模块识别** | 识别受影响的模块 |
| **文档同步** | 检测代码变更是否同步更新文档 |
| **测试覆盖** | 检测代码变更是否有对应测试 |
| **影响评估** | 评估变更规模和影响范围 |

### 触发警告的情况

- ⚠️ 代码变更 > 50 行但 DESIGN.md 未更新
- ⚠️ 代码变更 > 30 行但无测试更新
- ⚠️ 新增文件但 README.md 未更新
- ⚠️ 配置文件变更未记录
- ℹ️ 删除文件需确认引用已清理

## 变更前置检查

在修改任何模块前,必须:

1. **读取 README.md** — 理解模块定位
2. **读取 DESIGN.md** — 理解现有决策
3. **评估影响范围** — 此变更影响哪些部分
4. **确认变更理由** — 为什么要改

## 变更后置检查

代码修改完成后,必须:

### README.md 更新检查

- [ ] 模块职责是否变化 → 更新职责描述
- [ ] 依赖关系是否变化 → 更新依赖说明
- [ ] 使用方式是否变化 → 更新示例代码

### DESIGN.md 更新检查

- [ ] 新增设计决策 → 记录决策及理由
- [ ] 修改现有设计 → 记录变更及原因
- [ ] 引入新限制 → 更新已知限制
- [ ] 添加变更记录 → 更新变更历史

## 变更记录格式

在 DESIGN.md 的变更历史中添加:

```markdown
## 变更历史

### [日期] - [变更标题]

**变更内容**: 简述改了什么

**变更理由**: 为什么要改

**影响范围**: 影响哪些功能/模块

**决策依据**: 为何选择此方案(如适用)
```

## 自动触发时机

| 场景 | 触发条件 |
|------|----------|
| 设计级变更 | 修改架构、接口、数据结构 |
| 重构完成 | 重构任务完成时 |
| 代码变更 > 30 行 | 较大规模代码修改 |
| 提交前 | 代码提交前检查 |

## 校验流程

```
1. 运行 change_analyzer.js 自动分析
2. 识别变更文件和受影响模块
3. 检查文档同步状态
4. 评估变更影响
5. 输出变更校验报告
```

## 校验报告格式

```
## 变更校验报告

### 变更概览
- 变更文件数: N
- 代码变更行数: +X / -Y
- 受影响模块: [模块列表]

### 文档同步状态
- README.md: ✓ 已同步 / ⚠️ 需更新
- DESIGN.md: ✓ 已同步 / ⚠️ 需更新

### 测试覆盖
- 测试文件变更: ✓ 有 / ⚠️ 无

### 结论
可提交 / 需补充文档后提交
```

---

Files in this skill

  • SKILL.md3.6 KB
  • scripts/change_analyzer.js9.6 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…