92、【Agent】【OpenCode】edit 工具提示词

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

背景

上篇 blog
【Agent】【OpenCode】grep 工具提示词(参数内容)

继续分析了 Grep 工具的参数内容,其中 pattern 是唯一必填的参数,这里的内容是 regex pattern 正则模式,不是普通字符串,AI 可以使用强大的正则语法来进行模糊匹配,path 是可选项,圈定了搜索的范围,决定了 Grep 工具从哪个文件夹开始向下递归搜索,如果没传这个参数,工具默认在当前工作目录下全盘扫描,include 也是可选项,允许 AI 在调用 Grep 工具时,直接带上一组 Glob 通配符作为过滤器,Grep 工具在底层先执行一次快速的 Glob 匹配,只在 Glob 匹配出的文件里运行正则搜素,排除其他文件的干扰,接着开始分析 Edit 工具,Edit 工具是 AI 可以调用的文件编辑器,并分析了两条规则:先读后写,行号格式前缀细节,下面继续分析

OpenCode

下面继续分析 Edit 工具提示词

上篇 blog 分析到了行号前缀格式细节,下面继续

  • 冒号和空格之后的所有内容,才是文件里真实存在的东西,AI 在进行字符串匹配时,必须完全无视前缀,提取空格之后的内容
  • 提示词这里强调,绝对不能在要编辑的文件里带上类似 1: 这样的行号前缀格式,Edit 工具检测到会直接报错,因为文件的真实内容里是绝对不可能包含这种行号装饰的

举个例子,假设有个 Python 文件,真实内容如下(注意第二行前面有 4 个空格):

python 复制代码
def test():
    print("hello")

当 AI 调用 Read 工具时,它看到返回的内容是这样的

python 复制代码
1: def test():
2:     print("hello")

此时 AI 必须极其聪明地识别出,第二行的开头 2: 是前缀,而紧接着的 4 个空格才是文件真实的缩进,此时可能有三种情况

  • 错误的 oldString(AI 幻觉):AI 把看到的一整行都复制下来
python 复制代码
2:     print(\"hello\")

结果 Edit 工具会报错,因为真实的文件里没有 2:

  • 半吊子的 oldString(丢了缩进):AI 去掉了行号,但把缩进也当成前缀的一部分给误删掉了,结果是
python 复制代码
print(\"hello\")

对于 Python 这种靠缩进识别语法的语言,会导致代码逻辑错误,或者因为匹配不到(如果原文件必须带缩进匹配)而失败

  • 完美的 oldString(符合提示词要求):AI 严格按照提示词,只取冒号 + 空格之后的所有内容,并且完美保留了后面的原始缩进
python 复制代码
    print(\"hello\")

注意前面保留了那 4 个空格,所以这里的第二条规则,实际上在教 AI 如何正确解析 Read 工具的返回格式,精准提取出空格之后的真实代码,既不带上多余的行号,也不丢掉必要的缩进

上面提到了 oldString,提示词里还有 newString,这里先简要介绍下

  • oldString(原本要替换掉的旧代码) :AI 在文件里想要精准定位,并抹除的那段原始代码,oldString 相当于一个锚点,Edit 工具会去文件里找到这段一模一样的段落,然后将其替换掉
  • newString(即将要换上去的新代码) :格式完全自由,不需要考虑行号前缀,只需要把 AI 想要生成的最终代码(包括缩进和换行)放进去即可,Edit 工具会直接把 oldString 所在的位置挖掉,然后把 newString 填进去

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

相关推荐
Shan12051 小时前
机器学习评价指标之基础指标与综合指标
人工智能·机器学习
硅谷秋水1 小时前
智体Harness工程:综述(下)
人工智能·深度学习·机器学习·语言模型
KaMeidebaby1 小时前
卡梅德生物技术快报|抗独特型抗体开发:半抗原检测技术瓶颈拆解,抗独特型抗体开发工程化实践
前端·数据库·人工智能·其他·百度·新浪微博
NiceCloud喜云1 小时前
Claude Files API 深入:从上传、复用到配额管理的工程化指南
android·java·数据库·人工智能·python·json·飞书
oo哦哦1 小时前
2026年多平台内容管理系统技术选型:从架构设计到工程落地
人工智能·线性代数·矩阵
Gongxiangqishou2 小时前
县域即时配送订单规模同比增长35%,远超一线城市的22%
大数据·人工智能
Raink老师2 小时前
【AI面试临阵磨枪-59】企业内部 AI 系统权限、数据隔离、审计设计
人工智能·面试·职场和发展
吃好睡好便好2 小时前
用for循环语句求和
开发语言·人工智能·学习·matlab·学习方法