85、【Agent】【OpenCode】bash 工具提示词(HEREDOC)

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

背景

上篇 blog
【Agent】【OpenCode】bash 工具提示词(commit 注意事项)(二)

分析了给 AI 划定的一些红线,这些红线用来约束 AI 在执行任务时的边界,比如除了运行 Git 相关的 Bash 命令外,不能执行其他命令来读取,或者探索用户的代码,不能使用 TodoWrite 或 Task 这类工具(AI Agent 内部的专用的系统级工具,主要是为了保持对话的简洁和专注),禁止擅自推送到远端,禁止使用交互式命令(带 -i 选项),没有改动就别硬提交,然后接着分析了合并请求 Pull Request 的要求,首先是与 GitHub 相关的操作,不能直接用 git 命令,而是用 gh 官方命令,然后分析了 AI 创建 PR 应该遵守的标准流程,比如并行收集信息,搞清楚当前当前分支和远端主分支之间的差异等,下面继续分析

OpenCode

OK,接着分析最后剩下的 bash 工具提示词

下面详细看下

  • 分析所有改动,起草 PR 摘要 :这里要求 AI 必须仔细分析所有包含在 PR 里的改动,这里特意用三个感叹号强调,不能只看最新的那次提交,而是要看从主分支分叉出来以后得每次提交,只有掌握了全部历史,AI 能才能写出一个完整,准确的 PR 总结
  • 并行执行,提升效率 :这里再次强调了多线程工作,如果条件允许,应该同时运行命令,然后举了一个反例(需要串行执行的例子)
    1、创建新分支(如果当前还没在独立分支上)
    2、推送到远程,如果需要推送,要加上 -u 参数(也就是 git push -u origin 分支名),这样能把本地分支和远程分支关联起来,以后直接输入 git push 就可以
    3、创建 PR:通过 gh pr create 来正式发起 PR
  • 这里强调了一个小细节:HEREDOC,提示词特意要求用 HEREDOC 的格式来传递 PR 内容,下面说下 HEREDOC

HEREDOC(也叫 Here Document)可以理解为一个原封不动的多行文字包裹功能,在写代码或者敲命令时,如果想输入一大段包含换行,引号,或特殊符号的文本,通常非常麻烦,因为系统可能会误认为那些引号是代码的一部分 ,或者把换行当成命令结束了,而 HEREDOC 的作用就是告诉计算机,从现在 EOF 开始,到指定的结束标记 EOF 出现之前,中间所有的内容都当成纯文本,原封不动地保留下来,不进行内容解析

结合上面的 gh pr create 命令,下面来看看这个包裹是如何打包的

bash 复制代码
--body "$(cat <<'EOF' ... EOF)"
  • <<'EOF' :End Of File 的缩写,这里用了单引号,表示后续的内容完全保持原样,里面的 $ 变量也不能替换
  • ... 中间内容:这里可以随意写 PR 的标题,比如(## Summary),列表(- 修复了 xxx),换行等,完全不用担心格式会被系统误解析
  • 最后的 EOF:这里表示多行文本到此结束

如果没有 HEREDOC,如果要在命令行里输入多行带格式的文本,就得写得像下面这样:

bash 复制代码
gh pr create --body "## Summary\n- 第一点\n- 第二点\n..."

很麻烦,需要把所有换行符写成 \n,遇到引号还需要不停地加反斜杠转义,还很容易写错,所以这里提示词特意要求用 HEREDOC,就是为了让 AI 在写 PR 描述时,能够优雅,不出错地把长文本直接塞到命令行里,避免因为格式错乱导致 PR 创建失败

  • 接着再次提示了,创建 PR 也禁止使用 TodoWrite 或 Task 等内部工具
  • PR 创建完成后,把生成的 PR URL 发给用户,方便用户直接点开查看检视

最后提示了如何用 gh api 命令去查看某个 PR 下的评论 ,OK,bash 工具分析完毕


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

相关推荐
吴佳浩1 小时前
Skill 为什么不同于 Tool?Agent 技能库的自演进与动态加载机制
人工智能·agent·ai编程
吴佳浩1 小时前
Tool 的安全性与执行沙箱:从 Docker 到 gVisor 的防御架构
agent·ai编程·mcp
大模型任我行4 小时前
谷歌:“课程学习”融入扩散模型强化学习
人工智能·语言模型·自然语言处理·论文笔记
AIGCmagic社区4 小时前
具身智能专题:机器人也有Scaling Law?智元GE-Act 2.0用3万小时真机数据给出答案
人工智能·aigc·具身智能
Setsuna_F_Seiei4 小时前
前端转型 Agent 开发 05 之 Agent Hooks 与 Checkpointer(让 Agent 从全自动转变人为可掌控)
前端·agent·ai编程
Web3&Basketball5 小时前
CRM Agent 后训练实战:3 倍更少错误
python·架构·大模型·agent·推理
Rosanci5 小时前
谷歌浏览器插件开发实战指南:从 Hello World 到上架发布
大数据·人工智能·chrome·程序人生
明月_清风5 小时前
AI 越来越强,程序员真正的价值到底是什么?
人工智能·后端
m0_466525295 小时前
云从科技上线云起ModelHub:AI团队时代的模型算力基础设施
大数据·人工智能·科技
火山引擎开发者社区6 小时前
OpenViking:给 Codex 加上长期记忆
人工智能