playbook/codex/skills/commit-message/SKILL.md

64 lines
2.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
name: commit-message
description:
"基于 staged diff 生成符合 commit_message.md 的提交信息建议(:emoji:
type(scope): subject。Triggers: commit message, 提交信息, 写提交说明,
生成提交信息, emoji commit, git commit."
---
# Commit Message提交信息建议器
目标:基于 `git diff --cached`staged
diff生成 13 条提交信息建议:`:emoji: type(scope): subject`(可选 body/footer
权威规范(单一真源,优先就近路径):
- `docs/common/commit_message.md`
- `docs/standards/playbook/docs/common/commit_message.md`Playbook
vendoring 场景)
## When to use
- 用户要“写提交信息 / 生成 commit message / 按规范写提交说明 / emoji commit”
- 已经 `git add` 了一批改动,准备 `git commit`
## Proceduredefault
1. **收集 staged 概览(尽量小上下文)**
- `git diff --cached --name-status`
- `git diff --cached --stat`
- 必要时只看关键文件:`git diff --cached -- <path>`
2. **读取并遵循权威规范**
- 优先读取就近的
`commit_message.md`(见上方路径),以其中的 type/emoji/格式为准。
3. **生成 1 条主建议 + 2 条备选**
- 格式固定:`:emoji: type(scope): subject`scope 可省略)。
- subject 用一句话描述“做了什么”,避免含糊词;尽量 ≤ 72 字符,不加句号。
4. **判断是否建议拆分提交**
- 当 staged 同时包含多个不相关模块/目的时:建议拆分,并给出拆分方式(按目录/功能点/风险)。
5. **可选:补充 body/footer如需要**
- body说明 why/impact/verify按规范建议换行
- footer任务号或 `BREAKING CHANGE:`(若有)。
6. **只给建议,不默认执行 `git commit`**
- 仅当用户明确要求时,才根据选定方案生成最终提交信息。
## Output contract固定输出
- Detected: staged files summary文件数 + 关键路径 + 是否可能需要拆分)
- Proposed:
- Option Arecommended`:emoji: type(scope): subject`
- Option B...
- Option C...
- Optional body/footer如适用
- Notes规范路径命中情况哪个 `commit_message.md` 被使用)