原文链接:Environment Variables Reference 所有变量都放在 /.hermes/.env 文件中。你也可以通过 hermes config set VAR value 来设置。 变量 描述 --- --- OPENROUTER API KEY OpenRouter API 密钥(推荐,灵活性

> 原文链接:Environment Variables Reference

环境变量

> 📖 本文档翻译自 Hermes Agent 官方文档 > 最后更新:2026-04-16

环境变量参考

所有变量都放在 ~/.hermes/.env 文件中。你也可以通过 hermes config set VAR value 来设置。

LLM Provider(大语言模型提供商)

变量描述
OPENROUTER_API_KEYOpenRouter API 密钥(推荐,灵活性最高)
OPENROUTER_BASE_URL覆盖 OpenRouter 兼容的 Base URL(基础 URL)
AI_GATEWAY_API_KEYVercel AI Gateway API 密钥(ai-gateway.vercel.sh
AI_GATEWAY_BASE_URL覆盖 AI Gateway Base URL(默认值:https://ai-gateway.vercel.sh/v1
OPENAI_API_KEY自定义 OpenAI 兼容端点的 API 密钥(与 OPENAI_BASE_URL 配合使用)
OPENAI_BASE_URL自定义端点的 Base URL(适用于 VLLM、SGLang 等)
COPILOT_GITHUB_TOKENCopilot API 的 GitHub Token(GitHub 令牌)——最高优先级(OAuth gho_* 或细粒度 PAT github_pat_*;经典 PAT ghp_* 不支持
GH_TOKENGitHub Token——Copilot 第二优先级(也被 gh CLI 使用)
GITHUB_TOKENGitHub Token——Copilot 第三优先级
HERMES_COPILOT_ACP_COMMAND覆盖 Copilot ACP CLI 二进制路径(默认值:copilot
COPILOT_CLI_PATHHERMES_COPILOT_ACP_COMMAND 的别名
HERMES_COPILOT_ACP_ARGS覆盖 Copilot ACP 参数(默认值:--acp --stdio
COPILOT_ACP_BASE_URL覆盖 Copilot ACP Base URL
GLM_API_KEYz.ai / 智谱 AI GLM API 密钥(z.ai
ZAI_API_KEYGLM_API_KEY 的别名
Z_AI_API_KEYGLM_API_KEY 的别名
GLM_BASE_URL覆盖 z.ai Base URL(默认值:https://api.z.ai/api/paas/v4
KIMI_API_KEYKimi / Moonshot AI API 密钥(moonshot.ai
KIMI_BASE_URL覆盖 Kimi Base URL(默认值:https://api.moonshot.ai/v1
KIMI_CN_API_KEYKimi / Moonshot 国内版 API 密钥(moonshot.cn
ARCEEAI_API_KEYArcee AI API 密钥(chat.arcee.ai
ARCEE_BASE_URL覆盖 Arcee Base URL(默认值:https://api.arcee.ai/api/v1
MINIMAX_API_KEYMiniMax API 密钥——国际端点(minimax.io
MINIMAX_BASE_URL覆盖 MiniMax Base URL(默认值:https://api.minimax.io/v1
MINIMAX_CN_API_KEYMiniMax API 密钥——国内端点(minimaxi.com
MINIMAX_CN_BASE_URL覆盖 MiniMax 国内版 Base URL(默认值:https://api.minimaxi.com/v1
KILOCODE_API_KEYKilo Code API 密钥(kilo.ai
KILOCODE_BASE_URL覆盖 Kilo Code Base URL(默认值:https://api.kilo.ai/api/gateway
XIAOMI_API_KEY小米 MiMo API 密钥(platform.xiaomimimo.com
XIAOMI_BASE_URL覆盖小米 MiMo Base URL(默认值:https://api.xiaomimimo.com/v1
HF_TOKENHugging Face Token(令牌),用于 Inference Providers(推理提供商)(huggingface.co/settings/tokens
HF_BASE_URL覆盖 Hugging Face Base URL(默认值:https://router.huggingface.co/v1
GOOGLE_API_KEYGoogle AI Studio API 密钥(aistudio.google.com/app/apikey
GEMINI_API_KEYGOOGLE_API_KEY 的别名
GEMINI_BASE_URL覆盖 Google AI Studio Base URL
ANTHROPIC_API_KEYAnthropic Console API 密钥(console.anthropic.com
ANTHROPIC_TOKEN手动指定或旧版 Anthropic OAuth/Setup Token(安装令牌)覆盖
DASHSCOPE_API_KEY阿里云 DashScope API 密钥,用于通义千问模型(modelstudio.console.alibabacloud.com
DASHSCOPE_BASE_URL自定义 DashScope Base URL(默认值:https://coding-intl.dashscope.aliyuncs.com/v1
DEEPSEEK_API_KEYDeepSeek API 密钥,用于直接访问 DeepSeek(platform.deepseek.com
DEEPSEEK_BASE_URL自定义 DeepSeek API Base URL
OPENCODE_ZEN_API_KEYOpenCode Zen API 密钥——按量付费访问精选模型(opencode.ai
OPENCODE_ZEN_BASE_URL覆盖 OpenCode Zen Base URL
OPENCODE_GO_API_KEYOpenCode Go API 密钥——$10/月订阅,访问开源模型(opencode.ai
OPENCODE_GO_BASE_URL覆盖 OpenCode Go Base URL
CLAUDE_CODE_OAUTH_TOKEN手动导出时的显式 Claude Code Token 覆盖
HERMES_MODEL在进程级别覆盖模型名称(由 Cron 调度器(定时任务调度器)使用;日常使用请优先在 config.yaml 中配置)
VOICE_TOOLS_OPENAI_KEY用于 OpenAI Speech-to-Text(语音转文字)和 Text-to-Speech(文字转语音)提供商的首选 OpenAI 密钥
HERMES_LOCAL_STT_COMMAND可选的本地语音转文字命令模板。支持 {input_path}{output_dir}{language}{model} 占位符
HERMES_LOCAL_STT_LANGUAGE传递给 HERMES_LOCAL_STT_COMMAND 的默认语言,或自动检测的本地 whisper CLI 回退语言(默认值:en
HERMES_HOME覆盖 Hermes 配置目录(默认值:~/.hermes)。同时限定 Gateway(网关)PID 文件和 systemd 服务名,因此多个安装实例可以并行运行

Provider Auth(提供商认证) — OAuth

对于原生 Anthropic 认证,当存在 Claude Code 自身的凭据文件时,Hermes 优先使用它们,因为这些凭据可以自动刷新。环境变量(如 ANTHROPIC_TOKEN)仍可作为手动覆盖使用,但不再是 Claude Pro/Max 登录的首选方式。

变量描述
HERMES_INFERENCE_PROVIDER覆盖 Provider 选择:autoopenrouternousopenai-codexcopilotcopilot-acpanthropichuggingfacezaikimi-codingkimi-coding-cnminimaxminimax-cnkilocodexiaomiarceealibabadeepseekopencode-zenopencode-goai-gateway(默认值:auto
HERMES_PORTAL_BASE_URL覆盖 Nous Portal URL(用于开发/测试)
NOUS_INFERENCE_BASE_URL覆盖 Nous Inference(推理)API URL
HERMES_NOUS_MIN_KEY_TTL_SECONDSAgent Key(代理密钥)在重新签发前的最短 TTL(生存时间)(默认值:1800 = 30 分钟)
HERMES_NOUS_TIMEOUT_SECONDSNous 凭据/Token 流程的 HTTP 超时时间
HERMES_DUMP_REQUESTS将 API 请求载荷(Payload)转储到日志文件(true/false
HERMES_PREFILL_MESSAGES_FILEJSON 文件路径,包含在 API 调用时注入的临时预填充消息
HERMES_TIMEZONEIANA 时区覆盖(例如 America/New_York

Tool API(工具 API)

变量描述
PARALLEL_API_KEYAI 原生网页搜索(parallel.ai
FIRECRAWL_API_KEY网页抓取和云浏览器(firecrawl.dev
FIRECRAWL_API_URL自定义 Firecrawl API 端点,用于自托管实例(可选)
TAVILY_API_KEYTavily API 密钥,用于 AI 原生网页搜索、内容提取和爬取(app.tavily.com
EXA_API_KEYExa API 密钥,用于 AI 原生网页搜索和内容获取(exa.ai
BROWSERBASE_API_KEY浏览器自动化(browserbase.com
BROWSERBASE_PROJECT_IDBrowserbase 项目 ID
BROWSER_USE_API_KEYBrowser Use 云浏览器 API 密钥(browser-use.com
FIRECRAWL_BROWSER_TTLFirecrawl 浏览器会话 TTL(生存时间),单位为秒(默认值:300)
BROWSER_CDP_URL本地浏览器的 Chrome DevTools Protocol(Chrome 开发者工具协议)URL(通过 /browser connect 设置,例如 ws://localhost:9222
CAMOFOX_URLCamofox 本地反检测浏览器 URL(默认值:http://localhost:9377
BROWSER_INACTIVITY_TIMEOUT浏览器会话不活跃超时时间,单位为秒
FAL_KEY图像生成(fal.ai
GROQ_API_KEYGroq Whisper STT(语音转文字)API 密钥(groq.com
ELEVENLABS_API_KEYElevenLabs 高级 TTS(文字转语音)语音(elevenlabs.io
STT_GROQ_MODEL覆盖 Groq STT 模型(默认值:whisper-large-v3-turbo
GROQ_BASE_URL覆盖 Groq OpenAI 兼容的 STT 端点
STT_OPENAI_MODEL覆盖 OpenAI STT 模型(默认值:whisper-1
STT_OPENAI_BASE_URL覆盖 OpenAI 兼容的 STT 端点
GITHUB_TOKEN用于 Skills Hub(技能中心)的 GitHub Token(更高的 API 速率限制、技能发布)
HONCHO_API_KEY跨会话用户建模(honcho.dev
HONCHO_BASE_URL自托管 Honcho 实例的 Base URL(默认值:Honcho 云端)。本地实例无需 API 密钥
SUPERMEMORY_API_KEY语义化长期记忆,支持配置文件召回和会话导入(supermemory.ai
TINKER_API_KEYRL(强化学习)训练(tinker-console.thinkingmachines.ai
WANDB_API_KEYRL 训练指标(wandb.ai
DAYTONA_API_KEYDaytona 云沙箱(daytona.io

Terminal Backend(终端后端)

变量描述
TERMINAL_ENV后端类型:localdockersshsingularitymodaldaytona
TERMINAL_DOCKER_IMAGEDocker 镜像(默认值:nikolaik/python-nodejs:python3.11-nodejs20
TERMINAL_DOCKER_FORWARD_ENVJSON 数组,指定要显式转发到 Docker 终端会话的环境变量名。注意:Skill 声明的 required_environment_variables 会自动转发——你只需设置未被任何 Skill 声明的变量
TERMINAL_DOCKER_VOLUMES额外的 Docker Volume 挂载(逗号分隔的 host:container 对)
TERMINAL_DOCKER_MOUNT_CWD_TO_WORKSPACE高级选项:将启动时的当前工作目录挂载到 Docker 的 /workspacetrue/false,默认值:false
TERMINAL_SINGULARITY_IMAGESingularity 镜像或 .sif 路径
TERMINAL_MODAL_IMAGEModal 容器镜像
TERMINAL_DAYTONA_IMAGEDaytona 沙箱镜像
TERMINAL_TIMEOUT命令超时时间,单位为秒
TERMINAL_LIFETIME_SECONDS终端会话最大生存时间,单位为秒
TERMINAL_CWD所有终端会话的工作目录
SUDO_PASSWORD启用 sudo 而无需交互式密码提示

对于云沙箱后端,持久化是基于文件系统的。TERMINAL_LIFETIME_SECONDS 控制 Hermes 何时清理空闲的终端会话,后续恢复时可能会重建沙箱,而非保持相同的活跃进程。

SSH Backend(SSH 后端)

变量描述
TERMINAL_SSH_HOST远程服务器主机名
TERMINAL_SSH_USERSSH 用户名
TERMINAL_SSH_PORTSSH 端口(默认值:22)
TERMINAL_SSH_KEY私钥路径
TERMINAL_SSH_PERSISTENT覆盖 SSH 的持久化 Shell 设置(默认值:跟随 TERMINAL_PERSISTENT_SHELL

Container Resources(容器资源) — Docker、Singularity、Modal、Daytona

变量描述
TERMINAL_CONTAINER_CPUCPU 核心数(默认值:1)
TERMINAL_CONTAINER_MEMORY内存,单位 MB(默认值:5120)
TERMINAL_CONTAINER_DISK磁盘,单位 MB(默认值:51200)
TERMINAL_CONTAINER_PERSISTENT跨会话持久化容器文件系统(默认值:true
TERMINAL_SANDBOX_DIR用于工作空间和覆盖层的主机目录(默认值:~/.hermes/sandboxes/

Persistent Shell(持久化 Shell)

变量描述
TERMINAL_PERSISTENT_SHELL为非本地后端启用持久化 Shell(默认值:true)。也可通过 config.yaml 中的 terminal.persistent_shell 设置
TERMINAL_LOCAL_PERSISTENT为本地后端启用持久化 Shell(默认值:false
TERMINAL_SSH_PERSISTENT覆盖 SSH 后端的持久化 Shell 设置(默认值:跟随 TERMINAL_PERSISTENT_SHELL

Messaging(消息平台)

变量描述
TELEGRAM_BOT_TOKENTelegram Bot Token(机器人令牌)(来自 @BotFather)
TELEGRAM_ALLOWED_USERS逗号分隔的用户 ID 列表,仅允许这些用户使用机器人
TELEGRAM_HOME_CHANNEL用于 Cron 定时任务消息投递的默认 Telegram 聊天/频道
TELEGRAM_HOME_CHANNEL_NAMETelegram 主频道的显示名称
TELEGRAM_WEBHOOK_URLWebhook 模式的公共 HTTPS URL(启用 Webhook 替代轮询)
TELEGRAM_WEBHOOK_PORTWebhook 服务器的本地监听端口(默认值:8443
TELEGRAM_WEBHOOK_SECRET用于验证更新来自 Telegram 的密钥 Token
TELEGRAM_REACTIONS在消息处理期间启用表情回应(默认值:false
TELEGRAM_IGNORED_THREADS逗号分隔的 Telegram 论坛话题/线程 ID,机器人不会在这些话题中响应
DISCORD_BOT_TOKENDiscord Bot Token(机器人令牌)
DISCORD_ALLOWED_USERS逗号分隔的 Discord 用户 ID 列表,仅允许这些用户使用机器人
DISCORD_HOME_CHANNEL用于 Cron 定时任务消息投递的默认 Discord 频道
DISCORD_HOME_CHANNEL_NAMEDiscord 主频道的显示名称
DISCORD_REQUIRE_MENTION在服务器频道中需要 @提及才会响应
DISCORD_FREE_RESPONSE_CHANNELS逗号分隔的频道 ID,在这些频道中无需提及即可响应
DISCORD_AUTO_THREAD当支持时,自动将长回复转为线程
DISCORD_REACTIONS在消息处理期间启用表情回应(默认值:true
DISCORD_IGNORED_CHANNELS逗号分隔的频道 ID,机器人不会在这些频道中响应
DISCORD_NO_THREAD_CHANNELS逗号分隔的频道 ID,在这些频道中机器人直接回复而不自动创建线程
DISCORD_REPLY_TO_MODE回复引用行为:offfirst(默认值)或 all
SLACK_BOT_TOKENSlack Bot Token(机器人令牌)(xoxb-...
SLACK_APP_TOKENSlack App-Level Token(应用级令牌)(xapp-...,Socket Mode 必需)
SLACK_ALLOWED_USERS逗号分隔的 Slack 用户 ID
SLACK_HOME_CHANNEL用于 Cron 定时任务消息投递的默认 Slack 频道
SLACK_HOME_CHANNEL_NAMESlack 主频道的显示名称
WHATSAPP_ENABLED启用 WhatsApp 桥接(true/false
WHATSAPP_MODEbot(独立号码)或 self-chat(给自己发消息)
WHATSAPP_ALLOWED_USERS逗号分隔的电话号码(带国家代码,不含 +),或 * 允许所有发送者
WHATSAPP_ALLOW_ALL_USERS允许所有 WhatsApp 发送者,无需白名单(true/false
WHATSAPP_DEBUG在桥接中记录原始消息事件,用于故障排查(true/false
SIGNAL_HTTP_URLsignal-cli 守护进程的 HTTP 端点(例如 http://127.0.0.1:8080
SIGNAL_ACCOUNT机器人的电话号码,E.164 格式
SIGNAL_ALLOWED_USERS逗号分隔的 E.164 电话号码或 UUID
SIGNAL_GROUP_ALLOWED_USERS逗号分隔的群组 ID,或 * 表示所有群组
SIGNAL_HOME_CHANNEL_NAMESignal 主频道的显示名称
SIGNAL_IGNORE_STORIES忽略 Signal 故事/状态更新
SIGNAL_ALLOW_ALL_USERS允许所有 Signal 用户,无需白名单
TWILIO_ACCOUNT_SIDTwilio Account SID(账户 SID)(与电话技能共享)
TWILIO_AUTH_TOKENTwilio Auth Token(认证令牌)(与电话技能共享;也用于 Webhook 签名验证)
TWILIO_PHONE_NUMBERTwilio 电话号码,E.164 格式(与电话技能共享)
SMS_WEBHOOK_URL用于 Twilio 签名验证的公共 URL——必须与 Twilio 控制台中的 Webhook URL 匹配(必填)
SMS_WEBHOOK_PORT入站 SMS 的 Webhook 监听端口(默认值:8080
SMS_WEBHOOK_HOSTWebhook 绑定地址(默认值:0.0.0.0
SMS_INSECURE_NO_SIGNATURE设为 true 可禁用 Twilio 签名验证(仅限本地开发——不要用于生产环境)
SMS_ALLOWED_USERS逗号分隔的 E.164 电话号码,允许这些号码进行对话
SMS_ALLOW_ALL_USERS允许所有 SMS 发送者,无需白名单
SMS_HOME_CHANNEL用于 Cron 定时任务/通知投递的电话号码
SMS_HOME_CHANNEL_NAMESMS 主频道的显示名称
EMAIL_ADDRESSEmail 网关适配器的邮箱地址
EMAIL_PASSWORD邮箱账户的密码或应用专用密码
EMAIL_IMAP_HOST邮件适配器的 IMAP 主机名
EMAIL_IMAP_PORTIMAP 端口
EMAIL_SMTP_HOST邮件适配器的 SMTP 主机名
EMAIL_SMTP_PORTSMTP 端口
EMAIL_ALLOWED_USERS逗号分隔的邮箱地址,允许这些地址向机器人发消息
EMAIL_HOME_ADDRESS主动邮件投递的默认收件人
EMAIL_HOME_ADDRESS_NAME邮件主目标的显示名称
EMAIL_POLL_INTERVAL邮件轮询间隔,单位为秒
EMAIL_ALLOW_ALL_USERS允许所有入站邮件发送者
DINGTALK_CLIENT_ID钉钉机器人的 AppKey,来自开发者门户(open.dingtalk.com
DINGTALK_CLIENT_SECRET钉钉机器人的 AppSecret,来自开发者门户
DINGTALK_ALLOWED_USERS逗号分隔的钉钉用户 ID,允许这些用户向机器人发消息
FEISHU_APP_ID飞书/Lark 机器人的 App ID(应用 ID),来自 open.feishu.cn
FEISHU_APP_SECRET飞书/Lark 机器人的 App Secret(应用密钥)
FEISHU_DOMAINfeishu(国内)或 lark(国际)。默认值:feishu
FEISHU_CONNECTION_MODEwebsocket(推荐)或 webhook。默认值:websocket
FEISHU_ENCRYPT_KEYWebhook 模式的可选加密密钥
FEISHU_VERIFICATION_TOKENWebhook 模式的可选验证 Token
FEISHU_ALLOWED_USERS逗号分隔的飞书用户 ID,允许这些用户向机器人发消息
FEISHU_HOME_CHANNEL用于 Cron 定时任务和通知的飞书聊天 ID
WECOM_BOT_ID企业微信 AI 机器人 ID,来自管理后台
WECOM_SECRET企业微信 AI 机器人密钥
WECOM_WEBSOCKET_URL自定义 WebSocket URL(默认值:wss://openws.work.weixin.qq.com
WECOM_ALLOWED_USERS逗号分隔的企业微信用户 ID,允许这些用户向机器人发消息
WECOM_HOME_CHANNEL用于 Cron 定时任务和通知的企业微信聊天 ID
WECOM_CALLBACK_CORP_ID企业微信回调自建应用的企业 Corp ID(企业 ID)
WECOM_CALLBACK_CORP_SECRET自建应用的企业密钥
WECOM_CALLBACK_AGENT_ID自建应用的 Agent ID(应用 ID)
WECOM_CALLBACK_TOKEN回调验证 Token
WECOM_CALLBACK_ENCODING_AES_KEY回调加密的 AES 密钥
WECOM_CALLBACK_HOST回调服务器绑定地址(默认值:0.0.0.0
WECOM_CALLBACK_PORT回调服务器端口(默认值:8645
WECOM_CALLBACK_ALLOWED_USERS逗号分隔的用户 ID 白名单
WECOM_CALLBACK_ALLOW_ALL_USERS设为 true 可允许所有用户,无需白名单
WEIXIN_ACCOUNT_ID通过 iLink Bot API 二维码登录获取的微信账号 ID
WEIXIN_TOKEN通过 iLink Bot API 二维码登录获取的微信认证 Token
WEIXIN_BASE_URL覆盖微信 iLink Bot API Base URL(默认值:https://ilinkai.weixin.qq.com
WEIXIN_CDN_BASE_URL覆盖微信媒体 CDN Base URL(默认值:https://novac2c.cdn.weixin.qq.com/c2c
WEIXIN_DM_POLICY私信策略:openallowlistpairingdisabled(默认值:open
WEIXIN_GROUP_POLICY群消息策略:openallowlistdisabled(默认值:disabled
WEIXIN_ALLOWED_USERS逗号分隔的微信用户 ID,允许这些用户私信机器人
WEIXIN_GROUP_ALLOWED_USERS逗号分隔的微信群 ID,允许这些群与机器人交互
WEIXIN_HOME_CHANNEL用于 Cron 定时任务和通知的微信聊天 ID
WEIXIN_HOME_CHANNEL_NAME微信主频道的显示名称
WEIXIN_ALLOW_ALL_USERS允许所有微信用户,无需白名单(true/false
BLUEBUBBLES_SERVER_URLBlueBubbles 服务器 URL(例如 http://192.168.1.10:1234
BLUEBUBBLES_PASSWORDBlueBubbles 服务器密码
BLUEBUBBLES_WEBHOOK_HOSTWebhook 监听绑定地址(默认值:127.0.0.1
BLUEBUBBLES_WEBHOOK_PORTWebhook 监听端口(默认值:8645
BLUEBUBBLES_HOME_CHANNEL用于 Cron/通知投递的电话/邮箱
BLUEBUBBLES_ALLOWED_USERS逗号分隔的授权用户
BLUEBUBBLES_ALLOW_ALL_USERS允许所有用户(true/false
QQ_APP_IDQQ 机器人 App ID(应用 ID),来自 q.qq.com
QQ_CLIENT_SECRETQQ 机器人 App Secret(应用密钥),来自 q.qq.com
QQ_STT_API_KEY外部 STT 回退提供商的 API 密钥(可选,当 QQ 内置 ASR 未返回文本时使用)
QQ_STT_BASE_URL外部 STT 提供商的 Base URL(可选)
QQ_STT_MODEL外部 STT 提供商的模型名称(可选)
QQ_ALLOWED_USERS逗号分隔的 QQ 用户 openID,允许这些用户向机器人发消息
QQ_GROUP_ALLOWED_USERS逗号分隔的 QQ 群 ID,用于群 @消息访问控制
QQ_ALLOW_ALL_USERS允许所有用户(true/false,覆盖 QQ_ALLOWED_USERS
QQ_HOME_CHANNEL用于 Cron 定时任务和通知的 QQ 用户/群 openID
MATTERMOST_URLMattermost 服务器 URL(例如 https://mm.example.com
MATTERMOST_TOKENMattermost 的 Bot Token 或个人访问令牌
MATTERMOST_ALLOWED_USERS逗号分隔的 Mattermost 用户 ID,允许这些用户向机器人发消息
MATTERMOST_HOME_CHANNEL用于主动消息投递(Cron、通知)的频道 ID
MATTERMOST_REQUIRE_MENTION频道中需要 @mention 才会响应(默认值:true)。设为 false 可响应所有消息。
MATTERMOST_FREE_RESPONSE_CHANNELS逗号分隔的频道 ID,在这些频道中机器人无需 @mention 即可响应
MATTERMOST_REPLY_MODE回复风格:thread(线程回复)或 off(平铺消息,默认值)
MATRIX_HOMESERVERMatrix Homeserver(家庭服务器)URL(例如 https://matrix.org
MATRIX_ACCESS_TOKEN用于机器人认证的 Matrix Access Token(访问令牌)
MATRIX_USER_IDMatrix 用户 ID(例如 @hermes:matrix.org)——密码登录时必填,使用 Access Token 时可选
MATRIX_PASSWORDMatrix 密码(Access Token 的替代方案)
MATRIX_ALLOWED_USERS逗号分隔的 Matrix 用户 ID,允许这些用户向机器人发消息(例如 @alice:matrix.org
MATRIX_HOME_ROOM用于主动消息投递的房间 ID(例如 !abc123:matrix.org
MATRIX_ENCRYPTION启用端到端加密(End-to-End Encryption,true/false,默认值:false
MATRIX_REQUIRE_MENTION房间中需要 @mention 才会响应(默认值:true)。设为 false 可响应所有消息。
MATRIX_FREE_RESPONSE_ROOMS逗号分隔的房间 ID,在这些房间中机器人无需 @mention 即可响应
MATRIX_AUTO_THREAD为房间消息自动创建线程(默认值:true
MATRIX_DM_MENTION_THREADS在私信中被 @mention 时创建线程(默认值:false
MATRIX_RECOVERY_KEY设备密钥轮换后用于交叉签名验证的恢复密钥。建议在启用了交叉签名的 E2EE(端到端加密)设置中使用。
HASS_TOKENHome Assistant Long-Lived Access Token(长期访问令牌)(启用 HA 平台和工具)
HASS_URLHome Assistant URL(默认值:http://homeassistant.local:8123
WEBHOOK_ENABLED启用 Webhook 平台适配器(true/false
WEBHOOK_PORT接收 Webhook 的 HTTP 服务器端口(默认值:8644
WEBHOOK_SECRET用于 Webhook 签名验证的全局 HMAC 密钥(当路由未指定自己的密钥时用作回退)
API_SERVER_ENABLED启用 OpenAI 兼容的 API Server(API 服务器)(true/false)。与其他平台并行运行。
API_SERVER_KEYAPI 服务器认证的 Bearer Token(持有者令牌)。非本地绑定(non-loopback)时强制要求。
API_SERVER_CORS_ORIGINS逗号分隔的浏览器来源,允许直接调用 API 服务器(例如 http://localhost:3000,http://127.0.0.1:3000)。默认值:禁用。
API_SERVER_PORTAPI 服务器端口(默认值:8642
API_SERVER_HOSTAPI 服务器的主机/绑定地址(默认值:127.0.0.1)。使用 0.0.0.0 进行网络访问——需要设置 API_SERVER_KEY 和严格的 API_SERVER_CORS_ORIGINS 白名单。
API_SERVER_MODEL_NAME/v1/models 上广播的模型名称。默认为 Profile 名称(默认 Profile 使用 hermes-agent)。适用于多用户设置,例如 Open WebUI 等前端需要为每个连接指定不同的模型名称。
GATEWAY_PROXY_URL远程 Hermes API 服务器的 URL,用于转发消息(Proxy 模式)。设置后,Gateway 仅处理平台 I/O——所有 Agent 工作都委托给远程服务器。也可通过 config.yaml 中的 gateway.proxy_url 配置。
GATEWAY_PROXY_KEYProxy 模式下用于远程 API 服务器认证的 Bearer Token。必须与远程主机上的 API_SERVER_KEY 匹配。
MESSAGING_CWD消息模式下终端命令的工作目录(默认值:~
GATEWAY_ALLOWED_USERS逗号分隔的用户 ID,跨所有平台生效
GATEWAY_ALLOW_ALL_USERS允许所有用户,无需白名单(true/false,默认值:false

Agent Behavior(Agent 行为)

变量描述
HERMES_MAX_ITERATIONS每次对话的最大 Tool Calling(工具调用)迭代次数(默认值:90)
HERMES_TOOL_PROGRESS已弃用的兼容性变量,用于工具进度显示。请优先使用 config.yaml 中的 display.tool_progress
HERMES_TOOL_PROGRESS_MODE已弃用的兼容性变量,用于工具进度模式。请优先使用 config.yaml 中的 display.tool_progress
HERMES_HUMAN_DELAY_MODE响应节奏控制:off/natural/custom
HERMES_HUMAN_DELAY_MIN_MS自定义延迟范围最小值(毫秒)
HERMES_HUMAN_DELAY_MAX_MS自定义延迟范围最大值(毫秒)
HERMES_QUIET抑制非必要输出(true/false
HERMES_API_TIMEOUTLLM API 调用超时时间,单位为秒(默认值:1800
HERMES_STREAM_READ_TIMEOUT流式 Socket(套接字)读取超时时间,单位为秒(默认值:120)。对于本地 Provider 会自动增加到 HERMES_API_TIMEOUT。如果本地 LLM 在长代码生成期间超时,请增大此值。
HERMES_STREAM_STALE_TIMEOUT流式过期检测超时时间,单位为秒(默认值:180)。对于本地 Provider 自动禁用。如果在此时间窗口内未收到任何数据块(Chunk),则触发连接终止。
HERMES_EXEC_ASK在 Gateway 模式下启用执行审批提示(true/false
HERMES_ENABLE_PROJECT_PLUGINS启用从 ./.hermes/plugins/ 自动发现项目本地插件(true/false,默认值:false
HERMES_BACKGROUND_NOTIFICATIONSGateway 中后台进程的通知模式:all(默认值)、resulterroroff
HERMES_EPHEMERAL_SYSTEM_PROMPT在 API 调用时注入的临时系统提示(System Prompt,不会持久化到会话中)

Cron Scheduler(定时任务调度器)

变量描述
HERMES_CRON_TIMEOUTCron 任务 Agent 运行的不活跃超时时间,单位为秒(默认值:600)。Agent 在主动调用工具或接收流式 Token 时可以无限期运行——此超时仅在空闲时触发。设为 0 表示无限制。
HERMES_CRON_SCRIPT_TIMEOUT附加到 Cron 任务的预运行脚本超时时间,单位为秒(默认值:120)。为需要更长执行时间的脚本覆盖此值(例如用于反机器人检测的随机延迟)。也可通过 config.yaml 中的 cron.script_timeout_seconds 配置。

Session Settings(会话设置)

变量描述
SESSION_IDLE_MINUTES不活跃 N 分钟后重置会话(默认值:1440)
SESSION_RESET_HOUR每日重置的小时数,24 小时制(默认值:4 = 凌晨 4 点)

Context Compression(上下文压缩)— 仅 config.yaml

上下文压缩(Context Compression)仅通过 config.yaml 配置——没有对应的环境变量。阈值设置位于 compression: 配置块中,而摘要模型/Provider 位于 auxiliary.compression: 下。

compression:
  enabled: true
  threshold: 0.50
  target_ratio: 0.20         # 保留为近期尾部的阈值比例
  protect_last_n: 20         # 不压缩的最近消息最小数量

旧版迁移

包含 compression.summary_modelcompression.summary_providercompression.summary_base_url 的旧版配置会在首次加载时自动迁移到 auxiliary.compression.*

Auxiliary Task Overrides(辅助任务覆盖)

变量描述
AUXILIARY_VISION_PROVIDER覆盖 Vision(视觉)任务的 Provider
AUXILIARY_VISION_MODEL覆盖视觉任务的模型
AUXILIARY_VISION_BASE_URL视觉任务的直接 OpenAI 兼容端点
AUXILIARY_VISION_API_KEYAUXILIARY_VISION_BASE_URL 配套的 API 密钥
AUXILIARY_WEB_EXTRACT_PROVIDER覆盖 Web Extraction(网页提取)/摘要任务的 Provider
AUXILIARY_WEB_EXTRACT_MODEL覆盖网页提取/摘要任务的模型
AUXILIARY_WEB_EXTRACT_BASE_URL网页提取/摘要任务的直接 OpenAI 兼容端点
AUXILIARY_WEB_EXTRACT_API_KEYAUXILIARY_WEB_EXTRACT_BASE_URL 配套的 API 密钥

对于任务特定的直接端点,Hermes 使用该任务配置的 API 密钥或 OPENAI_API_KEY。它不会为这些自定义端点复用 OPENROUTER_API_KEY

Fallback Model(回退模型)— 仅 config.yaml

主模型回退(Fallback Model)仅通过 config.yaml 配置——没有对应的环境变量。添加包含 providermodel 键的 fallback_model 配置段,即可在主模型遇到错误时启用自动故障转移。

fallback_model:
  provider: openrouter
  model: anthropic/claude-sonnet-4

详见 Fallback Providers(回退提供商)

Provider Routing(Provider 路由)— 仅 config.yaml

这些配置放在 ~/.hermes/config.yamlprovider_routing 配置段下:

描述
sortProvider 排序方式:"price"(默认值)、"throughput""latency"
only允许的 Provider Slug 列表(例如 ["anthropic", "google"]
ignore要跳过的 Provider Slug 列表
order按顺序尝试的 Provider Slug 列表
require_parameters仅使用支持所有请求参数的 Provider(true/false
data_collection"allow"(默认值)或 "deny" 以排除存储数据的 Provider

> 💡 提示 > > 使用 hermes config set 来设置环境变量——它会自动保存到正确的文件(密钥保存到 .env,其他保存到 config.yaml)。

编辑此页

Continue Exploring

继续探索

这不是课程式的上一篇下一篇,而是从当前节点向外继续漫游。

消息平台

Matrix

Hermes Agent integrates with Matrix, the open, federated messaging protocol. Matrix lets you run your own homeserver or use a public one like matrix.org — eithe

核心功能

备用 Provider (Fallback Providers)

Hermes Agent has three layers of resilience that keep your sessions running when providers hit issues: 1. Credential pools — rotate across multiple API keys for

参考

CLI 命令参考

本页介绍从终端运行的 命令行命令 。 聊天内斜杠命令请参见斜杠命令参考。 hermes [全局选项] <命令 [子命令/选项] hermes chat [options] 常用选项: 示例: hermes hermes chat -q "总结最新的 PR" hermes chat --provider openrout

参考

斜杠命令参考

原文链接:Slash Commands Reference Hermes 有两个斜杠命令(Slash Command)界面,均由 hermes cli/commands.py 中的中央 COMMAND REGISTRY 驱动: 交互式 CLI(命令行界面) 斜杠命令 — 由 cli.py 分发,支持从注册表自动补全

参考

配置文件命令参考

本页面涵盖所有与 Hermes 配置文件 相关的命令。通用 CLI 命令请参见 CLI 命令参考。 hermes profile <子命令 管理配置文件的顶级命令。不带子命令运行 hermes profile 会显示帮助。 hermes profile list 列出所有配置文件。当前活跃的配置文件用 标记。

参考

内置工具参考

原文链接:Built-in Tools Reference 本文档记录了 Hermes 工具注册表中的全部 47 个内置工具,按工具集(Toolset)分组。工具的可用性因平台、凭证和已启用的工具集而异。 快速统计: 10 个浏览器工具、4 个文件工具、10 个强化学习(RL)工具、4 个 Home Assistant

Reference

参考

命令、配置、环境变量、技能目录与常见问题,适合作为索引与查阅入口。

11 篇文档11 个节点

当前节点

环境变量

同主题继续探索

CLI 命令参考

本页介绍从终端运行的 命令行命令 。 聊天内斜杠命令请参见斜杠命令参考。 hermes [全局选项] <命令 [子命令/选项] hermes chat [options] 常用选项: 示例: hermes hermes chat -q "总结最新的 PR" hermes chat --provider openrout

斜杠命令参考

原文链接:Slash Commands Reference Hermes 有两个斜杠命令(Slash Command)界面,均由 hermes cli/commands.py 中的中央 COMMAND REGISTRY 驱动: 交互式 CLI(命令行界面) 斜杠命令 — 由 cli.py 分发,支持从注册表自动补全

配置文件命令参考

本页面涵盖所有与 Hermes 配置文件 相关的命令。通用 CLI 命令请参见 CLI 命令参考。 hermes profile <子命令 管理配置文件的顶级命令。不带子命令运行 hermes profile 会显示帮助。 hermes profile list 列出所有配置文件。当前活跃的配置文件用 标记。

内置工具参考

原文链接:Built-in Tools Reference 本文档记录了 Hermes 工具注册表中的全部 47 个内置工具,按工具集(Toolset)分组。工具的可用性因平台、凭证和已启用的工具集而异。 快速统计: 10 个浏览器工具、4 个文件工具、10 个强化学习(RL)工具、4 个 Home Assistant

工具集参考

工具集(Toolsets)是工具的命名捆绑包,控制 Agent 能做什么。它们是按平台、按会话或按任务配置工具可用性的主要机制。 每个工具恰好属于一个工具集。当你启用一个工具集时,该捆绑包中的所有工具都对 Agent 可用。工具集分为三类: 核心(Core) — 一组相关工具的逻辑分组(例如,file 捆绑了 read

MCP 配置参考

本页面是主 MCP 文档的紧凑参考手册。 概念指南请参阅: MCP(Model Context Protocol) 在 Hermes 中使用 MCP mcp servers: <服务器名称 : command: "..." stdio 服务器 args: [] env: {} url: "..." HTTP 服务器

相关节点

Matrix

Hermes Agent integrates with Matrix, the open, federated messaging protocol. Matrix lets you run your own homeserver or use a public one like matrix.org — eithe

备用 Provider (Fallback Providers)

Hermes Agent has three layers of resilience that keep your sessions running when providers hit issues: 1. Credential pools — rotate across multiple API keys for

CLI 命令参考

本页介绍从终端运行的 命令行命令 。 聊天内斜杠命令请参见斜杠命令参考。 hermes [全局选项] <命令 [子命令/选项] hermes chat [options] 常用选项: 示例: hermes hermes chat -q "总结最新的 PR" hermes chat --provider openrout

斜杠命令参考

原文链接:Slash Commands Reference Hermes 有两个斜杠命令(Slash Command)界面,均由 hermes cli/commands.py 中的中央 COMMAND REGISTRY 驱动: 交互式 CLI(命令行界面) 斜杠命令 — 由 cli.py 分发,支持从注册表自动补全

配置文件命令参考

本页面涵盖所有与 Hermes 配置文件 相关的命令。通用 CLI 命令请参见 CLI 命令参考。 hermes profile <子命令 管理配置文件的顶级命令。不带子命令运行 hermes profile 会显示帮助。 hermes profile list 列出所有配置文件。当前活跃的配置文件用 标记。

内置工具参考

原文链接:Built-in Tools Reference 本文档记录了 Hermes 工具注册表中的全部 47 个内置工具,按工具集(Toolset)分组。工具的可用性因平台、凭证和已启用的工具集而异。 快速统计: 10 个浏览器工具、4 个文件工具、10 个强化学习(RL)工具、4 个 Home Assistant