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 注意事项)(二)

相关推荐
热心网友俣先生8 分钟前
2026年华数杯C 题 超详细解题思路
c语言·开发语言·人工智能
RSTJ_162511 分钟前
PYTHON+AI LLM DAY ONE HUNDRED AND THIRTY
人工智能
莫逸风12 分钟前
【AgentScope 2.0】05-文件系统(Filesystem)详解
java·ai·agent·springai·agentscope
火山引擎开发者社区19 分钟前
Seed-Evolving再升级:检索准、幻觉少!
人工智能
苏灿烤鱼21 分钟前
今日 GitHub 热门|自改进 Agent 首日登顶,+2,180 项目却只排第四
agent
math_hongfan24 分钟前
鸿蒙多模态AI交互高级:图文+语音+手势融合交互/多模态大模型端侧适配/跨模态检索高阶实战
人工智能·学习·华为·交互·语音识别·harmonyos·鸿蒙
fthux25 分钟前
MCP协议开发实战:从零搭建AI Agent工具链
前端·人工智能·ai·开源·github
一次旅行40 分钟前
Ollama本地私有化大模型完整工程实战
人工智能·机器学习·github
松果财经40 分钟前
从买家电到设计生活!卡萨帝AI全场景体验重塑渠道价值
人工智能
云端漫步198743 分钟前
HarmonyOS NEXT AI 智能生活助手:源码解析与项目复盘
人工智能·华为·生活·harmonyos