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

2.2 KiB
Raw Blame History

name description
commit-message 基于 staged diff 生成符合 commit_message.md 的提交信息建议(:emoji: type(scope): subject。Triggers: commit message, 提交信息, 写提交说明, 生成提交信息, emoji commit, git commit.

Commit Message提交信息建议器

目标:基于 git diff --cachedstaged diff生成 13 条提交信息建议::emoji: type(scope): subject(可选 body/footer

权威规范(单一真源,优先就近路径):

  • docs/common/commit_message.md
  • docs/standards/playbook/docs/common/commit_message.mdPlaybook 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): subjectscope 可省略)。
    • 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 被使用)