news 2026/5/24 21:46:37

93、【Agent】【OpenCode】edit 工具提示词(二)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
93、【Agent】【OpenCode】edit 工具提示词(二)

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

背景

上篇 blog
【Agent】【OpenCode】edit 工具提示词
继续分析了 Edit 工具提示词,其中提到冒号和空格之后的内容,才是文件里真实存在的东西,AI 在进行字符串匹配时,须完全无视前缀,提取空格之后的内容,并且不能在编辑的文件里带上类似1:这样的行号前缀格式,Edit 工具检测到会直接报错,然后举了个 Python 文件的例子,可能有三种情况:错误的 oldString(带了行号前缀),半吊子的 oldString(去掉了冒号后面的所有空格),完美的 oldString(只去掉了冒号和后面的一个空格,完美保留后面的原始缩进)。然后介绍了 oldString 和 newString 的区别,其中 oldString 是原本要替换的旧代码,newString 是即将要换上去的新代码,下面继续分析

OpenCode

下面继续看剩下的提示词

  • 最小化破坏(优先编辑现有文件):保护项目架构完整性,AI 在生成代码时,有时候很容易因为图省事儿而直接创建一个新文件,而不是去修改现有的模块,这不仅会导致代码库中出现大量冗余,碎片化的文件,还会破坏原本清晰的目录结构,这里强制 AI 必须先去理解现有代码的逻辑,进行增量更新,而不是盲目地另起炉灶
  • 保持纯净(除非明确要求,否则禁用 Emoji):AI 模型在训练时接触了大量的社交媒体,有时会在注释或打印语句中自动加入类似 🚀、✨、🔥 等表情符号,这在严肃的工程代码中不仅显得极不专业,还可能导致源文件编码报错,或者让后续的代码解析工具崩溃
  • 精准匹配机制(唯一的锚点才能定位):Edit 工具需要精确字符串匹配,这里不是模糊搜索,也不是语义替换,而是需要像 Ctrl + F 一样每个字符都去比对(包括空格,换行符,缩进等),只要 AI 提交的 oldString 和文件里的内容有一个标点符号对不上,操作就会立刻终止,所以第一个规则强调了,AI 必须先用 Read 工具拿到最新快照,再进行提取,避免记忆偏差
  • 找到多个匹配项会失败:这是为了防止误伤,如果 AI 提供的 oldString 太短,或缺乏特征,比如只提供了一个通用的return;,文件里可能有几十个地方都符合条件,Edit 工具为了避免改错地方,会直接拒绝执行,并抛出错误,这其实也是在逼迫 AI 扩大上下文范围,用户必须把目标代码的前后几行也包含进 oldString 里,形成一个独一无二的指纹,这样工具才能精准锁定唯一的那个位置

当然,提示词这里最后也提供了批量处理策略(全局替换):当 AI 需要重命名一个变量(比如把userId改成user_id),或者统一修改某个函数名时,可以用replaceAll这个参数进行全局替换,该参数会绕过唯一性校验的限制,直接在当前文件中,把所有匹配的 oldString 一次性全部替换成 newString,可以极大提升重构效率,避免 AI 为了改名而反复调用十几次普通 Edit 工具的笨拙行为

OK,下面来看 Edit 工具的参数内容

  • filePath目标文件的绝对路径,在复杂的工程环境中,相对路径非常容易因为当前工作目录(CWD)的切换而失效,强制要求绝对路径,相当于给提供了绝对坐标,防止编辑到错误文件,同时,filePath也是必填项,没有明确的目标文件,就什么也编辑不了

oldString(文件里的锚点位置):也是必填项,上篇 blog 里已经简单介绍过,这里要被替换的字符串需要满足两个条件

  • 剥离了行号前缀的真实代码
  • 包含足够的上下文缩进,确保在文件中是唯一匹配的

如果oldString提取错误(比如带了行号,丢了缩进),工具会直接报错【oldString not found】;而如果写得太短,导致多处匹配,也同样会报错【Found multiple mathces】


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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/24 21:46:30

5分钟掌握WebPShop:Photoshop终极WebP插件完全指南

5分钟掌握WebPShop:Photoshop终极WebP插件完全指南 【免费下载链接】WebPShop Photoshop plug-in for opening and saving WebP images 项目地址: https://gitcode.com/gh_mirrors/we/WebPShop 还在为Photoshop无法原生处理WebP格式而烦恼吗?WebP…

作者头像 李华
网站建设 2026/5/24 21:43:25

DeepSeek数据脱敏与联邦学习实战方案(2024最新版零信任架构白皮书)

更多请点击: https://intelliparadigm.com 第一章:DeepSeek数据隐私保护概述 DeepSeek系列大模型在训练与推理过程中严格遵循数据最小化、目的限定及用户可控原则,其隐私保护机制贯穿数据采集、预处理、模型训练、服务部署与日志管理全生命周…

作者头像 李华
网站建设 2026/5/24 21:41:26

爬虫刑事风险全解析:从技术动作到司法认定的合规边界

1. 这句话不是玩笑,而是法律红线前的真实警示“爬虫写得好,监狱进的早?我看太刑了,日子越来越有判头了”——这句带点黑色幽默的网络调侃,最近在技术群、招聘帖评论区甚至面试复盘里高频出现。它背后没有段子逻辑&…

作者头像 李华
网站建设 2026/5/24 21:29:48

机器学习驱动热光伏电池设计:从材料筛选到器件优化

1. 项目概述:当机器学习遇见热光伏电池设计在能源技术领域,热光伏(TPV)技术一直是一个充满魅力但又颇具挑战的方向。简单来说,它就像一个“热能收割机”,能将高温热源(比如工业废热、聚光太阳能…

作者头像 李华
网站建设 2026/5/24 21:27:05

QrazyBox终极指南:专业二维码修复工具拯救你的损坏二维码

QrazyBox终极指南:专业二维码修复工具拯救你的损坏二维码 【免费下载链接】qrazybox QR Code Analysis and Recovery Toolkit 项目地址: https://gitcode.com/gh_mirrors/qr/qrazybox 你是否曾因打印模糊、水渍污染或屏幕划痕导致的重要二维码无法扫描而焦急…

作者头像 李华