必须配置本地可运行的代码执行环境:一、启用本地Python沙箱,修改config.yaml中execution.enabled为true并指定python_path;二、可选Docker沙箱,需安装Docker、拉取镜像并配置sandbox_type;三、可选Jupyter内核桥接,启动kernel并配置连接参数;四、统一设置timeout_seconds和max_memory_mb等资源限制。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您希望 Hermes Agent 能够实际执行您编写的代码片段,而非仅生成文本响应,则必须正确配置本地可运行的代码执行环境。以下是完成该配置的具体步骤:
一、启用本地 Python 执行引擎
Hermes Agent 默认不启用代码执行功能,需手动激活内置的 Python 沙箱环境,该环境限制网络访问与系统调用,确保安全执行。
1、打开 Hermes Agent 的配置目录,定位到 config.yaml 文件。
2、在 execution 区块下,将 enabled 字段值设为 true。
3、确认 python_path 指向已安装的 Python 3.9 或更高版本可执行文件(例如:/usr/bin/python3 或 C:\Python311\python.exe)。
二、配置 Docker 容器化沙箱
当本地 Python 环境不可控或需更强隔离性时,可使用 Docker 运行轻量级执行容器,Hermes Agent 通过 socket 与容器通信。
1、确保系统已安装 Docker Engine 24.0+ 并处于运行状态。
2、拉取官方执行镜像:docker pull hermesai/code-sandbox:latest。
3、在 config.yaml 中设置 sandbox_type: docker,并指定 docker_image: hermesai/code-sandbox:latest。
三、启用 Jupyter 内核桥接模式
若需支持交互式代码块、变量检查与多步状态延续,可将 Hermes Agent 连接到本地运行的 Jupyter kernel,利用其成熟执行管线。
1、启动一个空闲的 Jupyter kernel:jupyter kernel --ip=127.0.0.1 --port=55555 --no-browser。
2、在配置中启用 jupyter_mode: true,并填写 jupyter_connection_file 路径(如:~/.local/share/jupyter/runtime/kernel-*.json)。
3、重启 Hermes Agent,使其加载 kernel 连接参数并建立 ZeroMQ 通道。
四、配置超时与资源限制参数
为防止无限循环或内存溢出导致服务阻塞,必须显式设定单次执行的最大耗时与内存上限。
1、在 execution 区块中添加 timeout_seconds: 30。
2、设置 max_memory_mb: 256,该值将被传递至 cgroups(Linux)或 job objects(Windows)进行硬性约束。
3、若使用 Docker 模式,还需在 docker_options 下添加 mem_limit: "256m" 和 cpu_quota: 50000。


















