flowchart LR
N0["01 工具与接口"]
N1["02 调用与执行"]
N2["03 权限与幂等"]
N3["04 结果与证据"]
N4["05 终端与文件"]
N5["06 浏览器扩展"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5
Tools与Runtime
现代 Agent Engineering 学习路线:Tools与Runtime
1 子目录8 文档

CHAPTER OVERVIEW · 章节概览
先区分工具声明、调用请求和实际执行,再检查权限、结果与失败;终端、文件和浏览器各有运行边界。
本章学习路线
箭头表示建议的学习顺序;先理解问题,再逐步进入实现与实践。
按顺序学习
9Tool、Invocation、Execution 与 Runtime 边界模型提出读取文件,并不意味着读取已经发生。请求还要经过工具查找、权限检查、执行和结果整理。先把这些步骤分开,才能知道一次失败是名称写错、权限不足,还是操作系统真正执行失败。Tools Call:从工具暴露到结果回填一次工具调用可以从“读取这个文件”理解:模型给出工具名和路径,程序检查请求,执行读取,再把结果关联到原调用。下面沿着这条路径展开,让每一层都有清楚的输入和输出。工具 Schema、权限门与幂等设计参数类型写成字符串,还没有说明它是不是允许访问的路径;调用执行成功,也没有说明重复一次是否会造成损失。本章分别讲格式、权限和幂等,把这些经常混在一起的问题拆开处理。工具失败、空结果、重复调用与证据管理搜索没有匹配结果,与搜索服务连接失败,需要采取不同的下一步。若都只返回空字符串,模型就失去了判断依据。下面设计能够说明成功、失败和部分完成的结果,让重试与补充检索有根据。Terminal 执行:从命令请求到可验证的进程结果在聊天界面里执行一条命令,背后实际启动了一个进程。它可能持续输出、等待输入,也可能产生子进程。下面从启动到退出跟踪整个生命周期,说明工作目录、超时、取消和退出状态怎样影响结果。Terminal 输出读取:stdout、stderr、事件流与有界观察终端出现一行报错时,进程可能已经退出,也可能还在继续运行。读输出与判断进程状态是两件事。下面从 stdout、stderr 的读取开始,再看怎样保存完整日志,并给模型提供长度合适的摘要。File I/O:读取、写入、补丁、并发保护与证据修改一个文件时,最怕的是覆盖了别人刚写的内容,或写到一半只留下半份文件。文件工具需要的不只是读写函数,还要检查路径、当前版本和写入结果。下面把普通读取、补丁和原子更新分别说明。Browser Runtime现代 Agent Engineering 学习路线:Browser RuntimeTools Call 推荐阅读可以从只读工具开始练习,再加入写文件和启动进程。每增加一个工具,都试一次正常输入和一次错误输入,观察结果怎样回到模型。下面的资料分别解释协议和执行细节,不要把函数定义当作完整工具系统。