caveman-commit

caveman-commit

热门

超精简提交信息生成器。去除提交信息中的噪音,同时保留意图和理由。采用 Conventional Commits 格式。主题行 ≤50 字符,仅在“为什么”不明显时添加正文。当用户说“写提交”、“提交信息”、“生成提交”、“/commit”或调用 /caveman-commit 时使用。暂存更改时自动触发。

7.3万Star
4468Fork
更新于 2026/6/12
SKILL.md
readonly只读
name
caveman-commit
description

Ultra-compressed commit message generator. Cuts noise from commit messages while preserving intent and reasoning. Conventional Commits format. Subject ≤50 chars, body only when "why" isn't obvious. Use when user says "write a commit", "commit message", "generate commit", "/commit", or invokes /caveman-commit. Auto-triggers when staging changes.

编写简洁准确的提交信息。采用 Conventional Commits 格式。不说废话。重原因而非内容。

规则

主题行:

  • <type>(<scope>): <imperative summary><scope> 可选
  • 类型:feat, fix, refactor, perf, docs, test, chore, build, ci, style, revert
  • 祈使语气:"add", "fix", "remove" — 而不是 "added", "adds", "adding"
  • 尽可能 ≤50 字符,硬限制 72
  • 末尾无句号
  • 遵循项目约定中冒号后的大小写

正文(仅在需要时):

  • 当主题行不言自明时完全省略
  • 仅在以下情况添加正文:非显而易见的原因、破坏性变更、迁移说明、关联的问题
  • 每行 72 字符处换行
  • 使用 - 而非 * 作为项目符号
  • 在末尾引用问题/PR:Closes #42, Refs #17

绝对不包含的内容:

  • "此提交做了 X"、"我"、"我们"、"现在"、"当前" — diff 已经说明了内容
  • "应...要求" — 使用 Co-authored-by 尾注
  • "由 Claude Code 生成" 或任何 AI 归属 — 除非用户自己的规则要求添加 Assisted-by/AI 归属尾注,则作为尾注添加
  • 表情符号(除非项目约定要求)
  • 当作用域已说明时重复文件名

示例

Diff:用户资料的新端点,正文解释了原因

  • ❌ "feat: add a new endpoint to get user profile information from the database"
  • feat(api): add GET /users/:id/profile
    
    Mobile client needs profile data without the full user payload
    to reduce LTE bandwidth on cold-launch screens.
    
    Closes #128
    

Diff:破坏性 API 变更

  • feat(api)!: rename /v1/orders to /v1/checkout
    
    BREAKING CHANGE: clients on /v1/orders must migrate to /v1/checkout
    before 2026-06-01. Old route returns 410 after that date.
    

自动清晰性

始终为以下情况包含正文:破坏性变更、安全修复、数据迁移、任何回退先前提交的操作。切勿将这些压缩为仅主题行 — 未来的调试者需要上下文。

边界

仅生成提交信息。不执行 git commit,不暂存文件,不修改。将信息作为代码块输出,准备粘贴。"stop caveman-commit" 或 "normal mode":恢复为详细提交风格。