87、【Agent】【OpenCode】read 工具提示词

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

背景

上篇 blog
【Agent】【OpenCode】bash 工具提示词(完结)

分析了 bash 工具的参数说明,该提示词规定了 AI 在调用 bash 工具时,必须遵守的数据格式规范,并详细分析了其中的 4 个核心字段:command(核心指令,AI 必须在这里填入一条标准的 Linux Bash 命令),description(人类可读的摘要,这是给人看的,不是给机器看的,也是必填项,意味着 AI 不能只写命令,而不写解释),workdir(工作目录,环境上下文),用来解决路径依赖问题,AI 可以通过 workdir 参数设定命令执行目录,而不能在 bash 工具里使用 cd 命令随意改变工作目录,timeout(超时机制,AI 需要判断任务的轻重缓急来设定超时时间,防止任务无限期挂起),这套参数设计可以让整个自动化流程变得可审计,可追踪,可解释,用户看到的是一个带有自然语言解释的操作日志,下面继续分析

OpenCode

下面继续看下一个 Read 工具

其路径位于 opencode/packages/opencode/src/tool/read.txt

Read 工具可以读取文件或目录,如果路径不存在的话,返回错误,下面来看下使用说明

  • 强制要求绝对路径 :提示词明确要求 AI 提供的 filePath 必须是绝对路径,比如 /home/admin/test.txt,而不是 ./test.txt,这意味着 AI 在读取文件之前,必须先明确知道文件在硬盘上的完整坐标,不能依赖相对路径,容易产生模糊性,以保证文件定位的绝对准确性
  • 工具默认只返回文件开头的 2000 行,如果文件超过 2000 行,后面的内容将被截断
  • 基于 offset(偏移量)的翻页机制:如果 AI 需要看文件后面的内容,必须再次调用工具,并传入 offset 参数(从第几行开始读,1-indexed 表示从 1 开始计数)
  • 善用 Grep 工具:如果文件非常大(比如几十万行的日志),提示词这里就建议 AI 不要再用 offset 去一页页翻了,而是直接调用 Grep 工具去搜索特定内容,通过 Grep 工具去精准定位
  • 如果 AI 不确定文件的具体路径 ,比如只知道一个叫 config.json 的文件,但不知道在哪个文件夹下,这里提示词提示应该先用 Glob 工具(通配符模式查找文件)来下限定位文件的位置,再读取文件内容
  • 锚点机制 :如果读的是文件内容,返回的不是纯文本,而是每行都带上了行号,格式为 <line>: <content>,而如果读的是目录(也就是文件夹),则会列出该目录下的所有条目,并在子目录的末尾处加上 / 斜杠作为区分
  • 超长行截断保护:如果某一行超过 2000 个字符,会被强制截断,防止某些被压缩过,没有换行符的巨型日志或乱码文件,瞬间撑爆 OpenCode 的上下文窗口,导致系统崩溃或响应变慢
  • 并行读取:如果 AI 准备读 A,B,C 三个文件,应该同时发出三个去读请求,而不是读完 A 再读 B,这是最大化执行效率的关键
  • 避免挤牙膏式的读取:这里提示词特意强调,避免每次只读 30 行这种小段落,如果每次只读一点点,那读完一个 2000 行的文件就要调用 60 多次工具,会极大地浪费系统资源并拖慢速度,所以如果需要上下文,就应该一次性读一个大点的窗口,比如一次读 500 行或 1000 行
  • 多媒体文件读取 :当遇到如 .jpg.png.pdf 文件时,OpenCode 不会尝试将它们当作文本去解析(那样只会得到一堆乱码),而是会直接将这些多媒体文件作为文件附件返回,这意味着 AI 具备了看到图片和 PDF 内容的能力,可以通过多模态视觉模型来识别

这套读取规则可以让 AI 在处理本地代码库或文档时,既能保证速度,又能精准命中用户需要的信息


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

相关推荐
财迅通Ai10 分钟前
光智科技深耕晶体生长技术 构建多领域同源技术布局
人工智能·科技·光智科技
roamingcode14 分钟前
4.5 小时,从一句话需求到可安装的 Chrome 插件:一次 AI 结对开发的完整复盘
前端·人工智能·chrome·claude·codex
2601_9676599123 分钟前
2026选购科普:做静音床垫的品牌都有哪些
人工智能
飞Link24 分钟前
动作方法中的分割与过度分割方法全解析(含代码实战与踩坑案例)
人工智能·python·算法·计算机视觉
LlmCraft|大模型工程实践25 分钟前
01-NLP入门-什么是自然语言处理
人工智能·自然语言处理
小鹿的周先生35 分钟前
第四章-SpringAI-函数调用&ToolCalling
开发语言·人工智能·python
minhuan36 分钟前
AI Infra全栈拆解:大模型应用背后的基础设施,算力集群、网络、存储与服务治理体系26.0
人工智能·架构·ai infra·ai基础设施·ai任务调度
江畔柳前堤37 分钟前
具身智能全景深度指南(2026年9月版):从“会聊天的AI“到“能干活的机器“
大数据·javascript·图像处理·人工智能·分布式·智慧城市·原型模式
麻花地1 小时前
RealTalk_AI:基于 Qwen3.5 LiveTranslate 的实时双向语音翻译工具
人工智能
张继雁1 小时前
不同类型磨削液使用安全注意事项
人工智能·深度学习·安全·业界资讯·远程工作·空间计算