用 OpenClaw 自动生成 Git Commit Message

每次写 commit message 都很头疼?让 OpenClaw 来帮你。

方案

写了一个简单的 git hook,在 commit 时自动调用 OpenClaw 生成 commit message。

prepare-commit-msg hook

#!/bin/bash
DIFF=$(git diff --cached --stat)
if [ -z "$DIFF" ]; then
    exit 0
fi

DETAILED_DIFF=$(git diff --cached)
MESSAGE=$(curl -s http://localhost:18789/api/chat     -H "Authorization: Bearer $OPENCLAW_TOKEN"     -d "{"message": "根据以下 git diff 生成简洁的 commit message(英文,conventional commits 格式):\n$DETAILED_DIFF"}"     | jq -r '.response')

if [ -n "$MESSAGE" ]; then
    echo "$MESSAGE" > "$1"
fi

效果

生成的 commit message 质量挺高的:

feat(order): add CSV export functionality for order list
fix(auth): resolve STS token expiration in OSS upload
refactor(gateway): extract common middleware logic

比之前的 fix bugupdate code 强太多了。

优化建议

  • 用 Haiku 模型就够了,响应快价格低
  • 加个字数限制,不然可能生成一大段
  • diff 太大时只传 stat,不传完整 diff
  • 生成后可以手动修改再提交

现在团队的 commit 历史终于能看了。

个人觉得 Molili 和龙虾面向的用户群完全不同,没必要比较。

感觉会成为下一个 K8s——能力强但复杂,大部分人用不到 20% 功能。

花一个周末部署,然后只用来查天气预报。这就是程序员的快乐。

还有一个方案是用 Cloudflare Workers 做中间层,可以省不少流量。

安全审计功能太弱了,基本等于没有。

为了部署龙虾学会了Linux,结果现在简历上多了一项技能。

如果遇到 CORS 问题,在 Nginx 里加几行 header 配置就解决了。

备份要用 sqlite3 的 .backup 命令,直接复制可能数据不一致。

定时任务用 crontab 就行,不用装额外的调度工具。

说句政治不正确的话:大部分第三方 Skill 质量堪忧。

@fullstack_fu 安全审计弱这点确实是硬伤 企业用户最怕的就是出了安全事件没法溯源 龙虾目前连最基本的操作日志都不完整

@startupchenrun 为了部署龙虾学会了Linux 这个副产品可能比龙虾本身更值钱 Linux技能走到哪都用得上

这个功能确实省事

生成的commit message质量还不错

比我自己写的还规范

实时通信场景这个方案靠谱