Skip to main content
ClaudeWave
Skill1k repo starsupdated 10d ago

cc-commit-msg

结构化 git commit message 生成工作流,适用于显式 commit message、提交说明或 commit-msg 场景;不负责实际执行 git commit。

Install in Claude Code
Copy
git clone --depth 1 https://github.com/doccker/cc-use-exp /tmp/cc-commit-msg && cp -r /tmp/cc-commit-msg/.codex/skills/cc-commit-msg ~/.claude/skills/cc-commit-msg
Then start a new Claude Code session; the skill loads automatically.

SKILL.md

# Commit Msg

当用户明确要求生成 commit message、整理提交说明,或提到 commit-msg 时,使用本技能。

不要用于:

- 自动执行 `git add` 或 `git commit`
- 代替正式 code review
- 生成 release notes 或 changelog

## 核心方式

1. 默认先看已暂存变更;用户明确说 `all`、全部变更或包含未暂存时,再看整个工作区 diff。
2. 先判断这批改动是否适合一个提交;过于混杂时,先提醒拆分。
3. 根据改动意图归类为 `feat`、`fix`、`refactor`、`style`、`docs`、`test` 或 `chore`。
4. 先给一条可直接使用的 subject,再给 2-5 条 body 要点。
5. 顺带列出主要变更文件,帮助用户判断 message 是否过宽。

## 输出要求

- 使用 Conventional Commit 风格:`<type>: <subject>`
- `subject` 简洁聚焦,不堆砌文件名
- **输出语言**:`type` 关键字保留英文(feat/fix/refactor/style/docs/test/chore),`subject` 与 `body` 必须使用简体中文
- `body` 使用 flat bullets,说明核心改动
- 不加 emoji、AI 声明或 `Co-Authored-By`
- 不替用户执行提交命令

## 落盘命令(强制 heredoc)

输出 message 后,必须额外给出可直接复制执行的 **heredoc 命令**,让 git 正确保留 subject 单行 + 空行 + body 多行 bullet 的结构:

```bash
git add <文件列表> && git commit -m "$(cat <<'EOF'
<type>: <subject>

- 变更点1
- 变更点2
- 变更点3
EOF
)"
```

`<<'EOF'` 用单引号围栏,避免 `$`、反引号被 shell 展开。

### 禁止的反例

- ❌ `git commit -m "feat: x\n- a\n- b"` —— `\n` 是字面字符串,shell 不会解析为换行,整段会被塞进 subject 行。
- ❌ `git commit -m "feat: x - a - b"` —— body 被压成单行,丢失 markdown 列表结构,GitHub Release / `git log` 都无法正确渲染。
- ❌ 把多个 bullet 用空格拼接进 subject —— subject 应保持单一主题,最长不超过 80 字符。

### 自验

落盘后用 `git log -1 --pretty=format:'%s%n---%n%b'` 检查:subject 必须单行、body 必须保留每行独立的 `- ` bullet。

## 按需展开

- 类型选择:`references/commit-types.md`
- 格式约束:`references/message-format.md`
api-design-safetySkill

当设计或修改 REST API 响应结构、处理 API 返回值,或生成 Excel/CSV/PDF/对账文件等下游产物时触发。防止 API 设计缺陷导致的字段错位、类型歧义,以及生成产物时关键字段缺失但静默成功的问题。

api-proxy-safetySkill

网关/代理/WAF/CDN 中间件的安全关键词匹配实现规范,防止纯子串匹配误判正常响应内容中的技术术语(如 Cloudflare、502、error)

async-task-patternSkill

当 API/任务可能执行超过 10 秒(批量数据处理、远程 API 批量调用、全表扫描、跨租户聚合)时触发。防止同步接口被网关 30s 超时切断、用户重复点击触发并发、状态缓存内存泄漏等问题。提供异步任务状态机标准模板。

bash-styleSkill

当用户操作 .sh、Dockerfile、Makefile、.yml、.yaml 文件,或在 Markdown 中编写 bash 代码块时触发。提供 Bash 编写规范。

code-quality-principlesSkill

当编写新模块、设计接口、重构代码或代码审查时触发。提供经典模块化六原则检查清单(大小适中/调用深度/扇入扇出/边界清晰/作用域内聚/可预测性),适用于 PR/Review/新模块设计场景。

external-system-debuggingSkill

涉及浏览器、编辑器、CDN/WAF、IM 平台、操作系统剪贴板、第三方 SaaS 等"外部黑盒系统"的代码编写或 bug 调试时触发。强制先抓真实环境数据再推理,避免连续 2 轮"凭代码推理"的修复 no-op。关键词:粘贴/复制异常、跨平台显示不一致、第三方 API 怪结果、CDN/WAF 拦截、本地复现失败、HTML→MD 转换丢属性。

field-mapping-safetySkill

当重构涉及字段映射(dataIndex、枚举映射、类型转换)时触发。防止字段名推测错误,确保字段映射的正确性。

frontend-devSkill

前端开发规范,包含 Vue 3 编码规范、UI 风格约束、TypeScript 规范等