
46 · 工具编排——execute_code与RPC脚本你有没有过这样的经历:每天早上打开电脑,要重复执行一系列固定操作——检查服务器状态、拉取最新代码、运行测试、查看报告……每一步都要手动输入命令,耗时又容易遗漏。能不能把这些操作打包成一个步骤,让Hermes一键执行?答案就是工具编排。通过execute_code和 RPC 脚本,你可以把多个工具调用组合成一个自动化流程。一、execute_code概念什么是execute_code?execute_code是Hermes的一个内置功能,允许你在对话中直接编写和执行Python代码,并且在这个Python环境中可以调用Hermes的全部工具。简单来说,它让你用写代码的方式编排多个工具操作。通常的交互方式是这样的:你对Hermes说一句话,它决定是否调用工具。而execute_code则给了你一个"程序化调用"的通道——你可以精确控制每一步调用什么工具、按什么顺序、如何处理结果。基本用法在Hermes对话中,你可以直接请求执行代码:用户:用execute_code帮我写一个脚本,先搜索最近的AI新闻,然后整理成报告 Hermes:好的,我创建一个Python脚本来完成这个任务Hermes会生成并执行Python代码,在代码中调用各种工具,最后返回结果。你也可以手动传入代码:hermes execute_code--code"from hermes_tools import web_search; result = web_search('AI news 2025'); print(result)"execute_code vs 普通对话对比维度普通对话execute_code控制粒度Hermes自行决定你精确控制每一步可重复性每次结果可能不同相同代码产生相同流程调试便利性黑盒可以看到完整的代码和中间结果组合能力单轮最多调用几个工具循环、条件、异常处理任意组合二、hermes_tools库execute_code的核心能力来自hermes_tools库——这是Hermes为Python脚本暴露的工具函数库。内置工具函数一览fromhermes_toolsimport(web_search,# 网络搜索web_fetch,# 获取网页内容terminal,# 执行终端命令read_file,# 读取文件write_file,# 写入文件edit_file,# 编辑文件list_files,# 列出目录文件memory_search,# 搜索记忆memory_save,# 保存到记忆knowledge_query,# 查询知识库acp_call,# ACP调用其他Agentsend_message,# 发送消息(Gateway))使用示例示例1:搜索+保存fromhermes_toolsimportweb_search,write_file# 搜索最近的AI新闻results=web_search("大语言模型 最新进展 2025")# 整理为Markdown报告report="# AI最新进展报告\n\n"foriteminresults:report+=f"- [{item['title']}]({item['url']}):{item['snippet']}\n"# 保存到文件write_file("/home/hermes/reports/ai_weekly.md",report)示例2:条件判断+循环fromhermes_toolsimportterminal,write_file# 检查多个服务器的磁盘使用情况servers=["web01","web02","db01"]report_lines=[