commit-roastlisted
Install: claude install-skill YuAICode/ai-skills
# commit-roast — Git 提交记录中文幽默吐槽
把 git log 变成一份有梗、可分享的中文点评报告。像损友一样讲真话,对事不对人。
## 何时触发
用户说下列任意一句时触发:
- "吐槽一下我的提交记录"
- "损一损我的 git log"
- "commit roast"
- "帮我评价一下这段时间的提交"
- "看看我的提交有多烂"
- "review 一下我的 commit 习惯"
## 用法
### 第一步:采集素材
在目标 git 仓库目录下运行:
```bash
# 默认取最近 30 条提交
bash <skill>/bin/collect.sh
# 取最近 50 条
bash <skill>/bin/collect.sh 50
# 取最近 30 条,只看指定作者
bash <skill>/bin/collect.sh 30 "alice@example.com"
```
输出包含四段:
- `META` — 仓库路径、采集时间、参数概要
- `COMMITS` — 逐条提交:短 hash、ISO 日期时间、subject
- `SHORTSTATS` — 对应每条提交的增删行统计
- `SUMMARY` — 总条数与总增删行数
### 第二步:Claude 挑槽点吐槽
拿到素材后,按以下槽点清单逐条过筛,找出值得吐槽的提交,生成点评报告。
---
## 槽点清单(命中任一即可点评)
| 类别 | 判断规则 | 吐槽方向 |
|------|----------|----------|
| 敷衍 message | subject 为 `fix`、`update`、`wip`、`test`、`aaa`、`asdf`、`.`、`...`、`tmp`、`ok`、`done`、单字母等 | "这信息是给自己看还是给外星人看的?" |
| fix 连环炮 | 同一天出现 fix → fix again → fix for real → fix (finally) 等序列 | "修了个 bug 再修修 bug 的 bug……" |
| 最终版陷阱 | subject 含 `final`、`final2`、`final_final`、`最终版`、`终稿` | "没有最终,只有更终" |
| 深夜施工 | 提交时间在 00:00–05:59 | "凌晨 X 点还在 commit,是 bug 不除不睡还是 deadline 追命?" |
| 周末加班 | 提交日期为周六/周日 | "周末也不放过自己,佩服" |
| 巨量炸弹 | 单次提交增删合计 > 500 行 | "一口气改 N 行?code review 的同事当场去世" |
| 连环 revert | subject 含 `revert` 且前后都有相关提交 | "提交-撤回-提交三连,分不清是在写代码还是在玩悔棋" |
| 空提交/纯格式 | subject 含 `format`、`whitespace`、`indent`、`lint fix`、`typo` 超过 3 条 | "格式比功能还勤快" |
| 复制粘贴嫌疑 | 同一 subject 完全相同出现 ≥ 2 次 | "同款 commit 出现 N 次,是 ctrl+c 还是时空折叠?" |
---
## 输出格式
```
## Git 提交吐槽报告
### 逐条点评
**[hash] "subject"** (日期时间 / +X -Y 行)
> 槽点:…… (言简意赅,一