83、【Agent】【OpenCode】bash 工具提示词(commit 注意事项)(一)

【声明】本博客所有内容均为个人业余时间创作,所述技术案例均来自公开开源项目(如Github,Apache基金会),不涉及任何企业机密或未公开技术,如有侵权请联系删除

背景

上篇 blog
【Agent】【OpenCode】bash 工具提示词(amend 风险)

继续分析了禁止使用 --amend 的两个场景,这两个场景都是为了保护用户的代码仓库不被意外修改,在 Git 里,--amend 修改历史记录是件很敏感的事情,尤其在多人合作的项目中,如果操作不当,容易导致代码冲突甚至丢失,首先是失败处理,如果提交失败,或者被钩子拒绝后,不能用 --amend,主要是为了保留失败现场,方便排查问题,然后是已推送处理,当代码被推送到远程后,不能用 amend,这是 Git 协作中很重要的规则:不能修改已经推送到远程的公共历史,因为 amend 的本质是篡改历史,使用 --amend 容易和别人已经拉取的代码产生冲突,导致别人的工作成果丢失等,下面继续分析

OpenCode

下面继续来看 bash 工具这里对 Git 规则的约束

首先是第一点,主要是说批量并行,大致就是在单次回复中,可以调用多个工具,当用户需要获取多个互不相关的信息,且这些命令大概率都会成功时,为了达到最佳性能,应该同时并行地运行多个工具调用(其实并行执行命令这点前面的提示词有提到过),然后给出了个例子

  • 运行 git status 查看所有未追踪的文件
  • 运行 git diff 查看暂存区和非暂存区的所有改动,也就是即将被提交的内容
  • 运行 git log 查看最近的提交记录,目的是让 AI 学习并模仿这个仓库现有的提交风格

接下来是第二点,这里规范了如何写好 Git 提交信息(Commit Message),要求 AI 模型在提交代码前,需要把暂存区里的改动都看过一遍,然后按照如下说明起草提交说明:

1、准确概括改动类型,用词要精准:首先要分析改动了啥,然后要准确总结定性,比如

  • 如果是全新功能,提交信息里要用词 add 表示新增
  • 如果是对现有功能的该井,要用 update 关键词,表示更新或优化
  • 如果是修复 Bug,则必须用 fix 关键词,表示修复
  • 其他情况还包括 refactoring(重构),test(测试),docs(文档)等

总之,用词要精准,能够让看记录的人一下就能看出来这次改动的性质

2、绝对不能提交敏感文件 :必须自动识别并过滤掉那些可能包含密码,或密钥的文件,比如 .envcredentials.json 等,不能把这些敏感信息提交到仓库里,如果用户明确要求提交这些文件,则必须发出警告进行提醒

3、描述简明扼要,重点说为什么,而不是做了啥:这里要求 AI 写的提交信息必须短小精悍(控制在 1~2 句话),而且要侧重于 Why,而不是 How,举个例子

  • 反面例子(只说做了啥) :修改了 user.js 文件里的第 10 行代码,这种描述看了一头雾水,都不知道有啥用
  • 正面例子(解释为什么):修复用户登录失败的问题(直接点名本次改动的目的和价值)

4、确保信息真实,能够反映改动:最后再次强调了,写的提交说明必须和实际的代码改动完全对得上,不能文不对题

继续看后面两点

第三点描述和第一点类似,都是说如果几个指令互相独立的话,可以并行执行,但举的例子不一样,这里刚好反过来,给出了一个需要顺序执行的操作流程

  • 把相关的未追踪文件(untracked files)添加到暂存区,相当于执行 git add
  • 带着之前起草的提交信息,创建这次提交,相当于执行 git commit -m ...
  • 提交完成,运行 git status 再次确认一下是否真的提交成功

这里 git commit 需要在 git add 后面执行,而 git status 又必须在 git commit 之后执行

第四点提醒,如果提交失败,并且是被 pre-commit hook 钩子给拦截的话,AI 应该根据报错信息去修复对应问题,然后再创建一个全新的提交,这里和前面 blog 提到的禁止使用 --amend 场景是呼应的


OK,本篇先到这里,如有疑问,欢迎评论区留言讨论,祝各位功力大涨,技术更上一层楼!!!更多内容见下篇 blog
【Agent】【OpenCode】bash 工具提示词(commit 注意事项)(二)

相关推荐
火山引擎开发者社区1 小时前
Doubao-Seed-Evolving升级:1M上下文来了!
人工智能
锅总的程序人生3 小时前
重Harness已死:强模型自己就能把活干漂亮
ai·大模型·agent·speccoding·harness·技能链
曾响铃3 小时前
千台量产前夜,具身智能竞争已沉到底层基建
人工智能
血色橄榄枝4 小时前
基于用户注册信息的关键词检测挑战赛「Datawhale AI 夏令营」
人工智能·算法·机器学习
A hao4 小时前
高对比度在XR虚拟背景中的作用
大数据·图像处理·人工智能·xr·广告
小二·4 小时前
2026年AI Agent框架横评:OpenClaw vs LangGraph vs CrewAI vs Superpowers,选型指南
人工智能
tyqtyq224 小时前
旅行打包清单 App — HarmonyOS AI 应用开发技术博客
人工智能·学习·华为·生活·harmonyos
guo_xiao_xiao_4 小时前
YOLOv11道路桥梁裂缝与坑洼目标检测数据集
人工智能·yolo·目标检测
邵宇然4 小时前
Rust Unsafe 代码规范:不安全块要小到能被审查
人工智能