hermes - 💡(How to fix) Fix [i18n] Thai Translation: Reference Part b - environment-variables [1 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
NousResearch/hermes-agent#15147Fetched 2026-04-25 06:24:17
View on GitHub
Comments
0
Participants
1
Timeline
4
Reactions
0
Author
Participants
Timeline (top)
labeled ×2mentioned ×1subscribed ×1

Error Message

| HERMES_BACKGROUND_NOTIFICATIONS | โหมดการแจ้งเตือนกระบวนการพื้นหลังใน gateway: all (ค่าเริ่มต้น), result, error, off |

Code Example

compression:
  enabled: true
  threshold: 0.50
  target_ratio: 0.20         # fraction of threshold to preserve as recent tail
  protect_last_n: 20         # minimum recent messages to keep uncompressed

---

fallback_model:
  provider: openrouter
  model: anthropic/claude-sonnet-4
RAW_BUFFERClick to expand / collapse

📄 reference/environment-variables.md


sidebar_position: 2 title: "Environment Variables" description: "Complete reference of all environment variables used by Hermes Agent"

Environment Variables Reference

ตัวแปรทั้งหมดจะถูกกำหนดใน ~/.hermes/.env นอกจากนี้คุณยังสามารถตั้งค่าได้ด้วยคำสั่ง hermes config set VAR value

LLM Providers

VariableDescription
OPENROUTER_API_KEYOpenRouter API key (แนะนำสำหรับความยืดหยุ่น)
OPENROUTER_BASE_URLใช้แทนที่ OpenRouter-compatible base URL
NOUS_BASE_URLใช้แทนที่ Nous Portal base URL (ไม่ค่อยจำเป็น; สำหรับการพัฒนา/ทดสอบเท่านั้น)
NOUS_INFERENCE_BASE_URLใช้แทนที่ Nous inference endpoint โดยตรง
AI_GATEWAY_API_KEYVercel AI Gateway API key (ai-gateway.vercel.sh)
AI_GATEWAY_BASE_URLใช้แทนที่ AI Gateway base URL (ค่าเริ่มต้น: https://ai-gateway.vercel.sh/v1)
OPENAI_API_KEYAPI key สำหรับ endpoint ที่รองรับ OpenAI แบบกำหนดเอง (ใช้ร่วมกับ OPENAI_BASE_URL)
OPENAI_BASE_URLBase URL สำหรับ endpoint แบบกำหนดเอง (เช่น VLLM, SGLang, ฯลฯ)
COPILOT_GITHUB_TOKENGitHub token สำหรับ Copilot API - ลำดับความสำคัญแรก (OAuth gho_* หรือ fine-grained PAT github_pat_*; classic PATs ghp_* ไม่รองรับ)
GH_TOKENGitHub token - ลำดับความสำคัญที่สองสำหรับ Copilot (ใช้โดย gh CLI ด้วย)
GITHUB_TOKENGitHub token - ลำดับความสำคัญที่สามสำหรับ Copilot
HERMES_COPILOT_ACP_COMMANDใช้แทนที่พาธ binary ของ Copilot ACP CLI (ค่าเริ่มต้น: copilot)
COPILOT_CLI_PATHชื่อแทนสำหรับ HERMES_COPILOT_ACP_COMMAND
HERMES_COPILOT_ACP_ARGSใช้แทนที่ arguments ของ Copilot ACP (ค่าเริ่มต้น: --acp --stdio)
COPILOT_ACP_BASE_URLใช้แทนที่ Copilot ACP base URL
GLM_API_KEYz.ai / ZhipuAI GLM API key (z.ai)
ZAI_API_KEYชื่อแทนสำหรับ GLM_API_KEY
Z_AI_API_KEYชื่อแทนสำหรับ GLM_API_KEY
GLM_BASE_URLใช้แทนที่ z.ai base URL (ค่าเริ่มต้น: https://api.z.ai/api/paas/v4)
KIMI_API_KEYKimi / Moonshot AI API key (moonshot.ai)
KIMI_BASE_URLใช้แทนที่ Kimi base URL (ค่าเริ่มต้น: https://api.moonshot.ai/v1)
KIMI_CN_API_KEYKimi / Moonshot China API key (moonshot.cn)
ARCEEAI_API_KEYArcee AI API key (chat.arcee.ai)
ARCEE_BASE_URLใช้แทนที่ Arcee base URL (ค่าเริ่มต้น: https://api.arcee.ai/api/v1)
MINIMAX_API_KEYMiniMax API key - global endpoint (minimax.io)
MINIMAX_BASE_URLใช้แทนที่ MiniMax base URL (ค่าเริ่มต้น: https://api.minimax.io/anthropic - Hermes ใช้ endpoint ที่รองรับ Anthropic Messages ของ MiniMax)
MINIMAX_CN_API_KEYMiniMax API key - China endpoint (minimaxi.com)
MINIMAX_CN_BASE_URLใช้แทนที่ MiniMax China base URL (ค่าเริ่มต้น: https://api.minimaxi.com/anthropic)
KILOCODE_API_KEYKilo Code API key (kilo.ai)
KILOCODE_BASE_URLใช้แทนที่ Kilo Code base URL (ค่าเริ่มต้น: https://api.kilo.ai/api/gateway)
XIAOMI_API_KEYXiaomi MiMo API key (platform.xiaomimimo.com)
XIAOMI_BASE_URLใช้แทนที่ Xiaomi 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 key (aistudio.google.com/app/apikey)
GEMINI_API_KEYชื่อแทนสำหรับ GOOGLE_API_KEY
GEMINI_BASE_URLใช้แทนที่ Google AI Studio base URL
HERMES_GEMINI_CLIENT_IDOAuth client ID สำหรับการเข้าสู่ระบบ google-gemini-cli PKCE (ทางเลือก; ค่าเริ่มต้นคือ client gemini-cli สาธารณะของ Google)
HERMES_GEMINI_CLIENT_SECRETOAuth client secret สำหรับ google-gemini-cli (ทางเลือก)
HERMES_GEMINI_PROJECT_IDGCP project ID สำหรับ Gemini tier แบบเสียเงิน (free tier จะจัดเตรียมอัตโนมัติ)
ANTHROPIC_API_KEYAnthropic Console API key (console.anthropic.com)
ANTHROPIC_TOKENการใช้แทนที่ Anthropic OAuth/setup-token ด้วยตนเองหรือแบบเก่า
DASHSCOPE_API_KEYAlibaba Cloud DashScope API key สำหรับโมเดล Qwen (modelstudio.console.alibabacloud.com)
DASHSCOPE_BASE_URLCustom DashScope base URL (ค่าเริ่มต้น: https://dashscope-intl.aliyuncs.com/compatible-mode/v1; ใช้ https://dashscope.aliyuncs.com/compatible-mode/v1 สำหรับภูมิภาคจีนแผ่นดินใหญ่)
DEEPSEEK_API_KEYDeepSeek API key สำหรับการเข้าถึง DeepSeek โดยตรง (platform.deepseek.com)
DEEPSEEK_BASE_URLCustom DeepSeek API base URL
NVIDIA_API_KEYNVIDIA NIM API key - Nemotron และโมเดลแบบเปิด (build.nvidia.com)
NVIDIA_BASE_URLใช้แทนที่ NVIDIA base URL (ค่าเริ่มต้น: https://integrate.api.nvidia.com/v1; ตั้งค่าเป็น http://localhost:8000/v1 สำหรับ local NIM endpoint)
OLLAMA_API_KEYOllama Cloud API key - catalog Ollama ที่จัดการโดยไม่ต้องมี GPU ในเครื่อง (ollama.com/settings/keys)
OLLAMA_BASE_URLใช้แทนที่ Ollama Cloud base URL (ค่าเริ่มต้น: https://ollama.com/v1)
XAI_API_KEYxAI (Grok) API key สำหรับ chat + TTS (console.x.ai)
XAI_BASE_URLใช้แทนที่ xAI base URL (ค่าเริ่มต้น: https://api.x.ai/v1)
MISTRAL_API_KEYMistral API key สำหรับ Voxtral TTS และ Voxtral STT (console.mistral.ai)
AWS_REGIONAWS region สำหรับ Bedrock inference (เช่น us-east-1, eu-central-1) อ่านโดย boto3
AWS_PROFILEAWS named profile สำหรับ Bedrock authentication (อ่านจาก ~/.aws/credentials) ไม่ต้องตั้งค่าเพื่อใช้ default boto3 credential chain
BEDROCK_BASE_URLใช้แทนที่ Bedrock runtime base URL (ค่าเริ่มต้น: https://bedrock-runtime.us-east-1.amazonaws.com; โดยปกติปล่อยว่างและใช้ AWS_REGION แทน)
HERMES_QWEN_BASE_URLใช้แทนที่ Qwen Portal base URL (ค่าเริ่มต้น: https://portal.qwen.ai/v1)
OPENCODE_ZEN_API_KEYOpenCode Zen API key - การเข้าถึงแบบ pay-as-you-go สำหรับโมเดลที่คัดสรรมาแล้ว (opencode.ai)
OPENCODE_ZEN_BASE_URLใช้แทนที่ OpenCode Zen base URL
OPENCODE_GO_API_KEYOpenCode Go API key - การสมัครสมาชิก $10/เดือนสำหรับโมเดลแบบเปิด (opencode.ai)
OPENCODE_GO_BASE_URLใช้แทนที่ OpenCode Go base URL
CLAUDE_CODE_OAUTH_TOKENการใช้แทนที่ Claude Code token อย่างชัดเจน หากคุณส่งออกด้วยตนเอง
HERMES_MODELใช้แทนที่ชื่อโมเดลในระดับ process (ใช้โดย cron scheduler; แนะนำให้ใช้ config.yaml สำหรับการใช้งานปกติ)
VOICE_TOOLS_OPENAI_KEYOpenAI key ที่แนะนำสำหรับผู้ให้บริการ speech-to-text และ text-to-speech ของ OpenAI
HERMES_LOCAL_STT_COMMANDเทมเพลตคำสั่ง speech-to-text แบบ local ที่เป็นทางเลือก รองรับ placeholders {input_path}, {output_dir}, {language}, และ {model}
HERMES_LOCAL_STT_LANGUAGEภาษาเริ่มต้นที่ส่งไปยัง HERMES_LOCAL_STT_COMMAND หรือ fallback CLI whisper local ที่ตรวจจับอัตโนมัติ (ค่าเริ่มต้น: en)
HERMES_HOMEใช้แทนที่ Hermes config directory (ค่าเริ่มต้น: ~/.hermes) นอกจากนี้ยังกำหนดขอบเขตไฟล์ PID ของ gateway และชื่อบริการ systemd ทำให้สามารถติดตั้งหลายตัวพร้อมกันได้

Provider Auth (OAuth)

สำหรับการรับรองความถูกต้องของ Anthropic แบบ Native, Hermes จะให้ความสำคัญกับไฟล์ credential ของ Claude Code เองเมื่อมีอยู่ เนื่องจาก credential เหล่านี้สามารถรีเฟรชได้โดยอัตโนมัติ ตัวแปร environment เช่น ANTHROPIC_TOKEN ยังคงมีประโยชน์สำหรับการใช้แทนที่ด้วยตนเอง แต่ไม่ใช่เส้นทางที่ต้องการสำหรับการเข้าสู่ระบบ Claude Pro/Max อีกต่อไป

VariableDescription
HERMES_INFERENCE_PROVIDERใช้แทนที่การเลือก provider: auto, openrouter, nous, openai-codex, copilot, copilot-acp, anthropic, huggingface, zai, kimi-coding, kimi-coding-cn, minimax, minimax-cn, kilocode, xiaomi, arcee, alibaba, deepseek, nvidia, ollama-cloud, xai (ชื่อแทน grok), google-gemini-cli, qwen-oauth, bedrock, opencode-zen, opencode-go, ai-gateway (ค่าเริ่มต้น: auto)
HERMES_PORTAL_BASE_URLใช้แทนที่ Nous Portal URL (สำหรับการพัฒนา/ทดสอบ)
NOUS_INFERENCE_BASE_URLใช้แทนที่ Nous inference API URL
HERMES_NOUS_MIN_KEY_TTL_SECONDSTTL ของ key agent ก่อนการสร้างใหม่ (ค่าเริ่มต้น: 1800 = 30 นาที)
HERMES_NOUS_TIMEOUT_SECONDSHTTP timeout สำหรับกระบวนการ credential / token ของ Nous
HERMES_DUMP_REQUESTSDump API request payloads ไปยัง log files (true/false)
HERMES_PREFILL_MESSAGES_FILEพาธไปยังไฟล์ JSON ของ prefill messages ชั่วคราวที่ถูกฉีดเมื่อเรียก API
HERMES_TIMEZONEIANA timezone override (ตัวอย่างเช่น America/New_York)

Tool APIs

VariableDescription
PARALLEL_API_KEYการค้นหาเว็บแบบ AI-native (parallel.ai)
FIRECRAWL_API_KEYWeb scraping และ cloud browser (firecrawl.dev)
FIRECRAWL_API_URLCustom Firecrawl API endpoint สำหรับ instance ที่โฮสต์เอง (ทางเลือก)
TAVILY_API_KEYTavily API key สำหรับการค้นหาเว็บ, extract, และ crawl แบบ AI-native (app.tavily.com)
EXA_API_KEYExa API key สำหรับการค้นหาเว็บและเนื้อหาแบบ AI-native (exa.ai)
BROWSERBASE_API_KEYBrowser automation (browserbase.com)
BROWSERBASE_PROJECT_IDBrowserbase project ID
BROWSER_USE_API_KEYBrowser Use cloud browser API key (browser-use.com)
FIRECRAWL_BROWSER_TTLFirecrawl browser session TTL เป็นวินาที (ค่าเริ่มต้น: 300)
BROWSER_CDP_URLChrome DevTools Protocol URL สำหรับ local browser (ตั้งค่าผ่าน /browser connect, เช่น ws://localhost:9222)
CAMOFOX_URLCamofox local anti-detection browser URL (ค่าเริ่มต้น: http://localhost:9377)
BROWSER_INACTIVITY_TIMEOUTBrowser session inactivity timeout เป็นวินาที
FAL_KEYImage generation (fal.ai)
GROQ_API_KEYGroq Whisper STT API key (groq.com)
ELEVENLABS_API_KEYElevenLabs premium TTS voices (elevenlabs.io)
STT_GROQ_MODELใช้แทนที่ Groq STT model (ค่าเริ่มต้น: whisper-large-v3-turbo)
GROQ_BASE_URLใช้แทนที่ Groq OpenAI-compatible STT endpoint
STT_OPENAI_MODELใช้แทนที่ OpenAI STT model (ค่าเริ่มต้น: whisper-1)
STT_OPENAI_BASE_URLใช้แทนที่ OpenAI-compatible STT endpoint
GITHUB_TOKENGitHub token สำหรับ Skills Hub (อัตรา limit API ที่สูงกว่า, publish skill)
HONCHO_API_KEYCross-session user modeling (honcho.dev)
HONCHO_BASE_URLBase URL สำหรับ Honcho instances ที่โฮสต์เอง (ค่าเริ่มต้น: Honcho cloud). ไม่ต้องใช้ API key สำหรับ local instances
SUPERMEMORY_API_KEYSemantic long-term memory พร้อม profile recall และ session ingest (supermemory.ai)
TINKER_API_KEYRL training (tinker-console.thinkingmachines.ai)
WANDB_API_KEYRL training metrics (wandb.ai)
DAYTONA_API_KEYDaytona cloud sandboxes (daytona.io)

Nous Tool Gateway

ตัวแปรเหล่านี้ใช้กำหนดค่า Tool Gateway สำหรับผู้สมัครสมาชิก Nous แบบเสียเงิน หรือการติดตั้ง gateway แบบโฮสต์เอง ผู้ใช้ส่วนใหญ่ไม่จำเป็นต้องตั้งค่าสิ่งเหล่านี้ - gateway จะถูกกำหนดค่าโดยอัตโนมัติผ่าน hermes model หรือ hermes tools

VariableDescription
TOOL_GATEWAY_DOMAINBase domain สำหรับการกำหนดเส้นทาง Tool Gateway (ค่าเริ่มต้น: nousresearch.com)
TOOL_GATEWAY_SCHEMEHTTP หรือ HTTPS scheme สำหรับ URL ของ gateway (ค่าเริ่มต้น: https)
TOOL_GATEWAY_USER_TOKENAuth token สำหรับ Tool Gateway (โดยปกติจะถูกเติมอัตโนมัติจาก Nous auth)
FIRECRAWL_GATEWAY_URLใช้แทนที่ URL สำหรับ Firecrawl gateway endpoint โดยเฉพาะ

Terminal Backend

VariableDescription
TERMINAL_ENVBackend: local, docker, ssh, singularity, modal, daytona
TERMINAL_DOCKER_IMAGEDocker image (ค่าเริ่มต้น: nikolaik/python-nodejs:python3.11-nodejs20)
TERMINAL_DOCKER_FORWARD_ENVJSON array ของชื่อ env var ที่ต้องการส่งต่อไปยัง Docker terminal sessions อย่างชัดเจน หมายเหตุ: required_environment_variables ที่ skill กำหนดจะถูกส่งต่อไปโดยอัตโนมัติ - คุณต้องการสิ่งนี้เฉพาะสำหรับตัวแปรที่ไม่ได้ประกาศโดย skill ใดๆ
TERMINAL_DOCKER_VOLUMESDocker volume mounts เพิ่มเติม (คู่ host:container คั่นด้วยเครื่องหมายจุลภาค)
TERMINAL_DOCKER_MOUNT_CWD_TO_WORKSPACEAdvanced opt-in: mount cwd การเปิดตัวไปยัง Docker /workspace (true/false, ค่าเริ่มต้น: false)
TERMINAL_SINGULARITY_IMAGESingularity image หรือพาธ .sif
TERMINAL_MODAL_IMAGEModal container image
TERMINAL_DAYTONA_IMAGEDaytona sandbox image
TERMINAL_TIMEOUTCommand timeout เป็นวินาที
TERMINAL_LIFETIME_SECONDSMax lifetime สำหรับ terminal sessions เป็นวินาที
TERMINAL_CWDWorking directory สำหรับทุก terminal sessions
SUDO_PASSWORDเปิดใช้งาน sudo โดยไม่มี prompt แบบ interactive

สำหรับ backends แบบ cloud sandbox, การคงอยู่ของข้อมูลจะอิงตามระบบไฟล์ TERMINAL_LIFETIME_SECONDS ควบคุมเมื่อ Hermes จะล้าง terminal session ที่ไม่ได้ใช้งาน และการดำเนินการต่อในภายหลังอาจสร้าง sandbox ใหม่แทนการรัน process ที่มีอยู่เดิม

SSH Backend

VariableDescription
TERMINAL_SSH_HOSTชื่อโฮสต์ของเซิร์ฟเวอร์ระยะไกล
TERMINAL_SSH_USERชื่อผู้ใช้ SSH
TERMINAL_SSH_PORTSSH port (ค่าเริ่มต้น: 22)
TERMINAL_SSH_KEYพาธไปยัง private key
TERMINAL_SSH_PERSISTENTใช้แทนที่ persistent shell สำหรับ SSH (ค่าเริ่มต้น: ตาม TERMINAL_PERSISTENT_SHELL)

Container Resources (Docker, Singularity, Modal, Daytona)

VariableDescription
TERMINAL_CONTAINER_CPUCPU cores (ค่าเริ่มต้น: 1)
TERMINAL_CONTAINER_MEMORYMemory ในหน่วย MB (ค่าเริ่มต้น: 5120)
TERMINAL_CONTAINER_DISKDisk ในหน่วย MB (ค่าเริ่มต้น: 51200)
TERMINAL_CONTAINER_PERSISTENTคงสภาพ filesystem ของ container ข้าม session (ค่าเริ่มต้น: true)
TERMINAL_SANDBOX_DIRHost directory สำหรับ workspaces และ overlays (ค่าเริ่มต้น: ~/.hermes/sandboxes/)

Persistent Shell

VariableDescription
TERMINAL_PERSISTENT_SHELLเปิดใช้งาน persistent shell สำหรับ backends ที่ไม่ใช่ local (ค่าเริ่มต้น: true). สามารถตั้งค่าได้ผ่าน terminal.persistent_shell ใน config.yaml
TERMINAL_LOCAL_PERSISTENTเปิดใช้งาน persistent shell สำหรับ local backend (ค่าเริ่มต้น: false)
TERMINAL_SSH_PERSISTENTใช้แทนที่ persistent shell สำหรับ SSH backend (ค่าเริ่มต้น: ตาม TERMINAL_PERSISTENT_SHELL)

Messaging

VariableDescription
TELEGRAM_BOT_TOKENTelegram bot token (จาก @BotFather)
TELEGRAM_ALLOWED_USERSUser IDs ที่คั่นด้วยเครื่องหมายจุลภาคที่ได้รับอนุญาตให้ใช้ bot
TELEGRAM_HOME_CHANNELDefault Telegram chat/channel สำหรับการส่ง cron
TELEGRAM_HOME_CHANNEL_NAMEDisplay name สำหรับ Telegram home channel
TELEGRAM_WEBHOOK_URLPublic HTTPS URL สำหรับโหมด webhook (เปิดใช้งาน webhook แทนการ polling)
TELEGRAM_WEBHOOK_PORTLocal listen port สำหรับ webhook server (ค่าเริ่มต้น: 8443)
TELEGRAM_WEBHOOK_SECRETSecret token สำหรับการตรวจสอบว่า updates มาจาก Telegram
TELEGRAM_REACTIONSเปิดใช้งาน emoji reactions บนข้อความระหว่างการประมวลผล (ค่าเริ่มต้น: false)
TELEGRAM_REPLY_TO_MODEพฤติกรรมการอ้างอิงการตอบกลับ: off, first (ค่าเริ่มต้น), หรือ all. ตรงกับรูปแบบของ Discord
TELEGRAM_IGNORED_THREADSTelegram forum topic/thread IDs ที่คั่นด้วยเครื่องหมายจุลภาคที่ bot จะไม่ตอบกลับ
TELEGRAM_PROXYProxy URL สำหรับการเชื่อมต่อ Telegram - ใช้แทนที่ HTTPS_PROXY. รองรับ http://, https://, socks5://
DISCORD_BOT_TOKENDiscord bot token
DISCORD_ALLOWED_USERSDiscord user IDs ที่คั่นด้วยเครื่องหมายจุลภาคที่ได้รับอนุญาตให้ใช้ bot
DISCORD_ALLOWED_ROLESDiscord role IDs ที่คั่นด้วยเครื่องหมายจุลภาคที่ได้รับอนุญาตให้ใช้ bot (OR กับ DISCORD_ALLOWED_USERS). เปิดใช้งาน Members intent โดยอัตโนมัติ มีประโยชน์เมื่อทีม moderation มีการเปลี่ยนแปลง - สิทธิ์ role จะถูกส่งผ่านโดยอัตโนมัติ
DISCORD_ALLOWED_CHANNELSDiscord channel IDs ที่คั่นด้วยเครื่องหมายจุลภาค เมื่อตั้งค่าแล้ว bot จะตอบกลับเฉพาะในช่องเหล่านี้ (บวก DMs หากได้รับอนุญาต). ใช้แทนที่ config.yaml discord.allowed_channels
DISCORD_PROXYProxy URL สำหรับการเชื่อมต่อ Discord - ใช้แทนที่ HTTPS_PROXY. รองรับ http://, https://, socks5://
DISCORD_HOME_CHANNELDefault Discord channel สำหรับการส่ง cron
DISCORD_HOME_CHANNEL_NAMEDisplay name สำหรับ Discord home channel
DISCORD_COMMAND_SYNC_POLICYนโยบายการซิงค์ slash-command ของ Discord: safe (diff และ reconcile), bulk (legacy tree.sync()), หรือ off
DISCORD_REQUIRE_MENTIONกำหนดให้ต้องมีการ @mention ก่อนตอบกลับใน server channels
DISCORD_FREE_RESPONSE_CHANNELSChannel IDs ที่คั่นด้วยเครื่องหมายจุลภาคที่ bot ตอบกลับโดยไม่จำเป็นต้องมีการ @mention
DISCORD_AUTO_THREADสร้าง thread อัตโนมัติสำหรับการตอบกลับที่ยาวเมื่อรองรับ
DISCORD_REACTIONSเปิดใช้งาน emoji reactions บนข้อความระหว่างการประมวลผล (ค่าเริ่มต้น: true)
DISCORD_IGNORED_CHANNELSChannel IDs ที่คั่นด้วยเครื่องหมายจุลภาคที่ bot จะไม่ตอบกลับ
DISCORD_NO_THREAD_CHANNELSChannel IDs ที่คั่นด้วยเครื่องหมายจุลภาคที่ bot ตอบกลับโดยไม่มี auto-threading
DISCORD_REPLY_TO_MODEพฤติกรรมการอ้างอิงการตอบกลับ: off, first (ค่าเริ่มต้น), หรือ all
DISCORD_ALLOW_MENTION_EVERYONEอนุญาตให้ bot ping @everyone/@here (ค่าเริ่มต้น: false). ดู Mention Control
DISCORD_ALLOW_MENTION_ROLESอนุญาตให้ bot ping @role mentions (ค่าเริ่มต้น: false).
DISCORD_ALLOW_MENTION_USERSอนุญาตให้ bot ping individual @user mentions (ค่าเริ่มต้น: true).
DISCORD_ALLOW_MENTION_REPLIED_USERPing ผู้เขียนเมื่อตอบกลับข้อความของพวกเขา (ค่าเริ่มต้น: true).
SLACK_BOT_TOKENSlack bot token (xoxb-...)
SLACK_APP_TOKENSlack app-level token (xapp-..., จำเป็นสำหรับ Socket Mode)
SLACK_ALLOWED_USERSSlack user IDs ที่คั่นด้วยเครื่องหมายจุลภาค
SLACK_HOME_CHANNELDefault Slack channel สำหรับการส่ง cron
SLACK_HOME_CHANNEL_NAMEDisplay name สำหรับ Slack home channel
WHATSAPP_ENABLEDเปิดใช้งาน WhatsApp bridge (true/false)
WHATSAPP_MODEbot (หมายเลขแยก) หรือ self-chat (ส่งข้อความถึงตัวเอง)
WHATSAPP_ALLOWED_USERSหมายเลขโทรศัพท์ที่คั่นด้วยเครื่องหมายจุลภาค (พร้อมรหัสประเทศ, ไม่มี +), หรือ * เพื่ออนุญาตผู้ส่งทั้งหมด
WHATSAPP_ALLOW_ALL_USERSอนุญาตผู้ส่ง WhatsApp ทั้งหมดโดยไม่มี allowlist (true/false)
WHATSAPP_DEBUGLog raw message events ใน bridge สำหรับการแก้ไขปัญหา (true/false)
SIGNAL_HTTP_URLsignal-cli daemon HTTP endpoint (ตัวอย่างเช่น http://127.0.0.1:8080)
SIGNAL_ACCOUNTหมายเลขโทรศัพท์ของ bot ในรูปแบบ E.164
SIGNAL_ALLOWED_USERSหมายเลขโทรศัพท์ E.164 หรือ UUID ที่คั่นด้วยเครื่องหมายจุลภาค
SIGNAL_GROUP_ALLOWED_USERSGroup IDs ที่คั่นด้วยเครื่องหมายจุลภาค หรือ * สำหรับทุกกลุ่ม
SIGNAL_HOME_CHANNEL_NAMEDisplay name สำหรับ Signal home channel
SIGNAL_IGNORE_STORIESเพิกเฉยต่อ Signal stories/status updates
SIGNAL_ALLOW_ALL_USERSอนุญาตผู้ใช้ Signal ทั้งหมดโดยไม่มี allowlist
TWILIO_ACCOUNT_SIDTwilio Account SID (แชร์กับ telephony skill)
TWILIO_AUTH_TOKENTwilio Auth Token (แชร์กับ telephony skill; ใช้สำหรับการตรวจสอบลายเซ็น webhook ด้วย)
TWILIO_PHONE_NUMBERTwilio phone number ในรูปแบบ E.164 (แชร์กับ telephony skill)
SMS_WEBHOOK_URLPublic URL สำหรับการตรวจสอบลายเซ็น Twilio - ต้องตรงกับ webhook URL ใน Twilio Console (จำเป็น)
SMS_WEBHOOK_PORTWebhook listener port สำหรับ SMS เข้า (ค่าเริ่มต้น: 8080)
SMS_WEBHOOK_HOSTWebhook bind address (ค่าเริ่มต้น: 0.0.0.0)
SMS_INSECURE_NO_SIGNATUREตั้งค่าเป็น true เพื่อปิดการตรวจสอบลายเซ็น Twilio (สำหรับ local dev เท่านั้น - ไม่สำหรับ production)
SMS_ALLOWED_USERSหมายเลขโทรศัพท์ E.164 ที่คั่นด้วยเครื่องหมายจุลภาคที่ได้รับอนุญาตให้แชท
SMS_ALLOW_ALL_USERSอนุญาตผู้ส่ง SMS ทั้งหมดโดยไม่มี allowlist
SMS_HOME_CHANNELหมายเลขโทรศัพท์สำหรับ cron job / การส่ง notification
SMS_HOME_CHANNEL_NAMEDisplay name สำหรับ SMS home channel
EMAIL_ADDRESSEmail address สำหรับ Email gateway adapter
EMAIL_PASSWORDPassword หรือ app password สำหรับบัญชีอีเมล
EMAIL_IMAP_HOSTIMAP hostname สำหรับ email adapter
EMAIL_IMAP_PORTIMAP port
EMAIL_SMTP_HOSTSMTP hostname สำหรับ email adapter
EMAIL_SMTP_PORTSMTP port
EMAIL_ALLOWED_USERSEmail addresses ที่คั่นด้วยเครื่องหมายจุลภาคที่ได้รับอนุญาตให้ส่งข้อความถึง bot
EMAIL_HOME_ADDRESSDefault recipient สำหรับการส่งอีเมลเชิงรุก
EMAIL_HOME_ADDRESS_NAMEDisplay name สำหรับเป้าหมายอีเมล home
EMAIL_POLL_INTERVALEmail polling interval เป็นวินาที
EMAIL_ALLOW_ALL_USERSอนุญาตผู้ส่งอีเมลขาเข้าทั้งหมด
DINGTALK_CLIENT_IDDingTalk bot AppKey จาก developer portal (open.dingtalk.com)
DINGTALK_CLIENT_SECRETDingTalk bot AppSecret จาก developer portal
DINGTALK_ALLOWED_USERSDingTalk user IDs ที่คั่นด้วยเครื่องหมายจุลภาคที่ได้รับอนุญาตให้ส่งข้อความถึง bot
FEISHU_APP_IDFeishu/Lark bot App ID จาก open.feishu.cn
FEISHU_APP_SECRETFeishu/Lark bot App Secret
FEISHU_DOMAINfeishu (China) หรือ lark (international). ค่าเริ่มต้น: feishu
FEISHU_CONNECTION_MODEwebsocket (แนะนำ) หรือ webhook. ค่าเริ่มต้น: websocket
FEISHU_ENCRYPT_KEYOptional encryption key สำหรับโหมด webhook
FEISHU_VERIFICATION_TOKENOptional verification token สำหรับโหมด webhook
FEISHU_ALLOWED_USERSFeishu user IDs ที่คั่นด้วยเครื่องหมายจุลภาคที่ได้รับอนุญาตให้ส่งข้อความถึง bot
FEISHU_HOME_CHANNELFeishu chat ID สำหรับการส่ง cron และ notification
WECOM_BOT_IDWeCom AI Bot ID จาก admin console
WECOM_SECRETWeCom AI Bot secret
WECOM_WEBSOCKET_URLCustom WebSocket URL (ค่าเริ่มต้น: wss://openws.work.weixin.qq.com)
WECOM_ALLOWED_USERSWeCom user IDs ที่คั่นด้วยเครื่องหมายจุลภาคที่ได้รับอนุญาตให้ส่งข้อความถึง bot
WECOM_HOME_CHANNELWeCom chat ID สำหรับการส่ง cron และ notification
WECOM_CALLBACK_CORP_IDWeCom enterprise Corp ID สำหรับ self-built app callback
WECOM_CALLBACK_CORP_SECRETCorp secret สำหรับ self-built app
WECOM_CALLBACK_AGENT_IDAgent ID ของ self-built app
WECOM_CALLBACK_TOKENCallback verification token
WECOM_CALLBACK_ENCODING_AES_KEYAES key สำหรับการเข้ารหัส callback
WECOM_CALLBACK_HOSTCallback server bind address (ค่าเริ่มต้น: 0.0.0.0)
WECOM_CALLBACK_PORTCallback server port (ค่าเริ่มต้น: 8645)
WECOM_CALLBACK_ALLOWED_USERSUser IDs ที่คั่นด้วยเครื่องหมายจุลภาคสำหรับ allowlist
WECOM_CALLBACK_ALLOW_ALL_USERSตั้งค่าเป็น true เพื่ออนุญาตผู้ใช้ทั้งหมดโดยไม่มี allowlist
WEIXIN_ACCOUNT_IDWeixin account ID ที่ได้มาผ่าน QR login ด้วย iLink Bot API
WEIXIN_TOKENWeixin authentication token ที่ได้มาผ่าน QR login ด้วย iLink Bot API
WEIXIN_BASE_URLใช้แทนที่ Weixin iLink Bot API base URL (ค่าเริ่มต้น: https://ilinkai.weixin.qq.com)
WEIXIN_CDN_BASE_URLใช้แทนที่ Weixin CDN base URL สำหรับ media (ค่าเริ่มต้น: https://novac2c.cdn.weixin.qq.com/c2c)
WEIXIN_DM_POLICYนโยบาย direct message: open, allowlist, pairing, disabled (ค่าเริ่มต้น: open)
WEIXIN_GROUP_POLICYนโยบาย group message: open, allowlist, disabled (ค่าเริ่มต้น: disabled)
WEIXIN_ALLOWED_USERSWeixin user IDs ที่คั่นด้วยเครื่องหมายจุลภาคที่ได้รับอนุญาตให้ DM bot
WEIXIN_GROUP_ALLOWED_USERSWeixin group IDs ที่คั่นด้วยเครื่องหมายจุลภาคที่ได้รับอนุญาตให้โต้ตอบกับ bot
WEIXIN_HOME_CHANNELWeixin chat ID สำหรับการส่ง cron และ notification
WEIXIN_HOME_CHANNEL_NAMEDisplay name สำหรับ Weixin home channel
WEIXIN_ALLOW_ALL_USERSอนุญาตผู้ใช้ Weixin ทั้งหมดโดยไม่มี allowlist (true/false)
BLUEBUBBLES_SERVER_URLBlueBubbles server URL (เช่น http://192.168.1.10:1234)
BLUEBUBBLES_PASSWORDBlueBubbles server password
BLUEBUBBLES_WEBHOOK_HOSTWebhook listener bind address (ค่าเริ่มต้น: 127.0.0.1)
BLUEBUBBLES_WEBHOOK_PORTWebhook listener port (ค่าเริ่มต้น: 8645)
BLUEBUBBLES_HOME_CHANNELPhone/email สำหรับการส่ง cron/notification
BLUEBUBBLES_ALLOWED_USERSผู้ใช้ที่ได้รับอนุญาตที่คั่นด้วยเครื่องหมายจุลภาค
BLUEBUBBLES_ALLOW_ALL_USERSอนุญาตผู้ใช้ทั้งหมด (true/false)
QQ_APP_IDQQ Bot App ID จาก q.qq.com
QQ_CLIENT_SECRETQQ Bot App Secret จาก q.qq.com
QQ_STT_API_KEYAPI key สำหรับ external STT fallback provider (ทางเลือก, ใช้เมื่อ ASR ในตัวของ QQ ไม่คืนค่าข้อความ)
QQ_STT_BASE_URLBase URL สำหรับ external STT provider (ทางเลือก)
QQ_STT_MODELModel name สำหรับ external STT provider (ทางเลือก)
QQ_ALLOWED_USERSQQ user openIDs ที่คั่นด้วยเครื่องหมายจุลภาคที่ได้รับอนุญาตให้ส่งข้อความถึง bot
QQ_GROUP_ALLOWED_USERSQQ group IDs ที่คั่นด้วยเครื่องหมายจุลภาคสำหรับการเข้าถึง @-message ของกลุ่ม
QQ_ALLOW_ALL_USERSอนุญาตผู้ใช้ทั้งหมด (true/false, ใช้แทนที่ QQ_ALLOWED_USERS)
QQBOT_HOME_CHANNELQQ user/group openID สำหรับการส่ง cron และ notification
QQBOT_HOME_CHANNEL_NAMEDisplay name สำหรับ QQ home channel
QQ_SANDBOXกำหนดเส้นทาง QQ Bot ไปยัง sandbox gateway สำหรับการทดสอบการพัฒนา (true/false). ใช้ร่วมกับ app credential sandbox จาก q.qq.com.
MATTERMOST_URLMattermost server URL (เช่น https://mm.example.com)
MATTERMOST_TOKENBot token หรือ personal access token สำหรับ Mattermost
MATTERMOST_ALLOWED_USERSMattermost user IDs ที่คั่นด้วยเครื่องหมายจุลภาคที่ได้รับอนุญาตให้ส่งข้อความถึง bot
MATTERMOST_HOME_CHANNELChannel ID สำหรับการส่งข้อความเชิงรุก (cron, notifications)
MATTERMOST_REQUIRE_MENTIONกำหนดให้ต้องมีการ @mention ในช่อง (ค่าเริ่มต้น: true). ตั้งค่าเป็น false เพื่อตอบกลับข้อความทั้งหมด
MATTERMOST_FREE_RESPONSE_CHANNELSChannel IDs ที่คั่นด้วยเครื่องหมายจุลภาคที่ bot ตอบกลับโดยไม่จำเป็นต้องมีการ @mention
MATTERMOST_REPLY_MODEรูปแบบการตอบกลับ: thread (การตอบกลับแบบ thread) หรือ off (ข้อความแบบแบน, ค่าเริ่มต้น)
MATRIX_HOMESERVERMatrix homeserver URL (เช่น https://matrix.org)
MATRIX_ACCESS_TOKENMatrix access token สำหรับการรับรองความถูกต้องของ bot
MATRIX_USER_IDMatrix user ID (เช่น @hermes:matrix.org) - จำเป็นสำหรับการ login ด้วยรหัสผ่าน, ทางเลือกเมื่อใช้ access token
MATRIX_PASSWORDMatrix password (ทางเลือกแทน access token)
MATRIX_ALLOWED_USERSMatrix user IDs ที่คั่นด้วยเครื่องหมายจุลภาคที่ได้รับอนุญาตให้ส่งข้อความถึง bot (เช่น @alice:matrix.org)
MATRIX_HOME_ROOMRoom ID สำหรับการส่งข้อความเชิงรุก (เช่น !abc123:matrix.org)
MATRIX_ENCRYPTIONเปิดใช้งาน end-to-end encryption (true/false, ค่าเริ่มต้น: false)
MATRIX_DEVICE_IDStable Matrix device ID สำหรับ E2EE persistence ข้ามการรีสตาร์ท (เช่น HERMES_BOT). หากไม่มีสิ่งนี้, E2EE keys จะหมุนทุกครั้งที่เริ่มต้น และการ decrypt room ในประวัติศาสตร์จะล้มเหลว
MATRIX_REACTIONSเปิดใช้งาน emoji reactions ในระหว่าง lifecycle การประมวลผลสำหรับข้อความขาเข้า (ค่าเริ่มต้น: true). ตั้งค่าเป็น false เพื่อปิดใช้งาน
MATRIX_REQUIRE_MENTIONกำหนดให้ต้องมีการ @mention ใน rooms (ค่าเริ่มต้น: true). ตั้งค่าเป็น false เพื่อตอบกลับข้อความทั้งหมด
MATRIX_FREE_RESPONSE_ROOMSRoom IDs ที่คั่นด้วยเครื่องหมายจุลภาคที่ bot ตอบกลับโดยไม่จำเป็นต้องมีการ @mention
MATRIX_AUTO_THREADสร้าง thread อัตโนมัติสำหรับข้อความใน room (ค่าเริ่มต้น: true)
MATRIX_DM_MENTION_THREADSสร้าง thread เมื่อ bot ถูก @mention ใน DM (ค่าเริ่มต้น: false)
MATRIX_RECOVERY_KEYRecovery key สำหรับการตรวจสอบ cross-signing หลังจากการหมุน key ของ device. แนะนำสำหรับ E2EE setups ที่เปิดใช้งาน cross-signing
HASS_TOKENHome Assistant Long-Lived Access Token (เปิดใช้งาน HA platform + tools)
HASS_URLHome Assistant URL (ค่าเริ่มต้น: http://homeassistant.local:8123)
WEBHOOK_ENABLEDเปิดใช้งาน webhook platform adapter (true/false)
WEBHOOK_PORTHTTP server port สำหรับรับ webhooks (ค่าเริ่มต้น: 8644)
WEBHOOK_SECRETGlobal HMAC secret สำหรับการตรวจสอบลายเซ็น webhook (ใช้เป็น fallback เมื่อ routes ไม่ได้ระบุของตัวเอง)
API_SERVER_ENABLEDเปิดใช้งาน OpenAI-compatible API server (true/false). ทำงานควบคู่ไปกับแพลตฟอร์มอื่น ๆ
API_SERVER_KEYBearer token สำหรับการรับรองความถูกต้องของ API server. บังคับใช้สำหรับการผูกที่ไม่ใช่ loopback
API_SERVER_CORS_ORIGINSBrowser origins ที่คั่นด้วยเครื่องหมายจุลภาคที่ได้รับอนุญาตให้เรียก API server โดยตรง (ตัวอย่างเช่น http://localhost:3000,http://127.0.0.1:3000). ค่าเริ่มต้น: ปิดใช้งาน
API_SERVER_PORTPort สำหรับ API server (ค่าเริ่มต้น: 8642)
API_SERVER_HOSTHost/bind address สำหรับ API server (ค่าเริ่มต้น: 127.0.0.1). ใช้ 0.0.0.0 สำหรับการเข้าถึงเครือข่าย - ต้องใช้ API_SERVER_KEY และ API_SERVER_CORS_ORIGINS allowlist ที่จำกัด
API_SERVER_MODEL_NAMEModel name ที่โฆษณาบน /v1/models. ค่าเริ่มต้นคือชื่อ profile (หรือ hermes-agent สำหรับ default profile). มีประโยชน์สำหรับการตั้งค่า multi-user ที่ frontends เช่น Open WebUI ต้องการชื่อโมเดลที่แตกต่างกันต่อการเชื่อมต่อ
GATEWAY_PROXY_URLURL ของ remote Hermes API server สำหรับส่งต่อข้อความ (proxy mode). เมื่อตั้งค่าแล้ว gateway จะจัดการ I/O ของแพลตฟอร์มเท่านั้น - งาน agent ทั้งหมดจะถูกมอบหมายไปยัง remote server. สามารถกำหนดค่าผ่าน gateway.proxy_url ใน config.yaml ได้
GATEWAY_PROXY_KEYBearer token สำหรับการรับรองความถูกต้องกับ remote API server ใน proxy mode. ต้องตรงกับ API_SERVER_KEY บน remote host
MESSAGING_CWDWorking directory สำหรับคำสั่ง terminal ใน messaging mode (ค่าเริ่มต้น: ~)
GATEWAY_ALLOWED_USERSUser IDs ที่คั่นด้วยเครื่องหมายจุลภาคที่ได้รับอนุญาตทั่วทุกแพลตฟอร์ม
GATEWAY_ALLOW_ALL_USERSอนุญาตผู้ใช้ทั้งหมดโดยไม่มี allowlists (true/false, ค่าเริ่มต้น: false)

Agent Behavior

VariableDescription
HERMES_MAX_ITERATIONSจำนวนรอบสูงสุดในการเรียกใช้ tool ต่อการสนทนา (ค่าเริ่มต้น: 90)
HERMES_TOOL_PROGRESSตัวแปรความเข้ากันได้ที่เลิกใช้แล้วสำหรับการแสดงความคืบหน้าของ tool ควรใช้ display.tool_progress ใน config.yaml แทน
HERMES_TOOL_PROGRESS_MODEตัวแปรความเข้ากันได้ที่เลิกใช้แล้วสำหรับโหมดความคืบหน้าของ tool ควรใช้ display.tool_progress ใน config.yaml แทน
HERMES_HUMAN_DELAY_MODEการควบคุมจังหวะการตอบกลับ: off/natural/custom
HERMES_HUMAN_DELAY_MIN_MSค่าต่ำสุดของช่วงความหน่วงแบบกำหนดเอง (ms)
HERMES_HUMAN_DELAY_MAX_MSค่าสูงสุดของช่วงความหน่วงแบบกำหนดเอง (ms)
HERMES_QUIETปิดการแสดงผลที่ไม่จำเป็น (true/false)
HERMES_API_TIMEOUTการหมดเวลาของ API call ของ LLM เป็นวินาที (ค่าเริ่มต้น: 1800)
HERMES_API_CALL_STALE_TIMEOUTการหมดเวลาของ stale-call แบบ non-streaming เป็นวินาที (ค่าเริ่มต้น: 300) ปิดใช้งานอัตโนมัติสำหรับ local providers เมื่อไม่ได้ตั้งค่า นอกจากนี้ยังสามารถกำหนดค่าได้ผ่าน providers.<id>.stale_timeout_seconds หรือ providers.<id>.models.<model>.stale_timeout_seconds ใน config.yaml
HERMES_STREAM_READ_TIMEOUTการหมดเวลาในการอ่าน socket แบบ streaming เป็นวินาที (ค่าเริ่มต้น: 120) จะเพิ่มค่าเป็น HERMES_API_TIMEOUT โดยอัตโนมัติสำหรับ local providers ควรเพิ่มค่านี้หาก LLM local หมดเวลาระหว่างการสร้างโค้ดที่ยาวนาน
HERMES_STREAM_STALE_TIMEOUTการหมดเวลาในการตรวจจับ stream ที่ stale เป็นวินาที (ค่าเริ่มต้น: 180) ปิดใช้งานอัตโนมัติสำหรับ local providers จะสั่งตัดการเชื่อมต่อหากไม่มี chunks เข้ามาภายในช่วงเวลานี้
HERMES_EXEC_ASKเปิดใช้งาน prompt การอนุมัติการดำเนินการใน gateway mode (true/false)
HERMES_ENABLE_PROJECT_PLUGINSเปิดใช้งานการค้นพบอัตโนมัติของ plugins แบบ local จาก ./.hermes/plugins/ (true/false, ค่าเริ่มต้น: false)
HERMES_BACKGROUND_NOTIFICATIONSโหมดการแจ้งเตือนกระบวนการพื้นหลังใน gateway: all (ค่าเริ่มต้น), result, error, off
HERMES_EPHEMERAL_SYSTEM_PROMPTsystem prompt ชั่วคราวที่ถูกแทรกในขณะเรียก API (จะไม่ถูกบันทึกใน session)
DELEGATION_MAX_CONCURRENT_CHILDRENจำนวน subagents แบบขนานสูงสุดต่อ batch ของ delegate_task (ค่าเริ่มต้น: 3, ขั้นต่ำ 1, ไม่มีขีดจำกัดสูงสุด) สามารถกำหนดค่าได้ผ่าน delegation.max_concurrent_children ใน config.yaml - ค่าใน config จะมีลำดับความสำคัญกว่า

Interface

VariableDescription
HERMES_TUIเรียกใช้ TUI แทน CLI แบบดั้งเดิมเมื่อตั้งค่าเป็น 1 เทียบเท่ากับการส่ง --tui
HERMES_TUI_DIRPath ไปยัง directory ui-tui/ ที่สร้างไว้ล่วงหน้า (ต้องมี dist/entry.js และ node_modules ที่ถูก populate แล้ว) ใช้โดย distros และ Nix เพื่อข้ามการติดตั้ง npm install ในการเปิดใช้งานครั้งแรก

Cron Scheduler

VariableDescription
HERMES_CRON_TIMEOUTการหมดเวลาจากการไม่ใช้งานสำหรับรอบการทำงานของ agent ใน cron job เป็นวินาที (ค่าเริ่มต้น: 600) agent สามารถทำงานได้ไม่จำกัดในขณะที่เรียกใช้ tool หรือรับ stream tokens อยู่ - สิ่งนี้จะทำงานเมื่อไม่มีกิจกรรมเท่านั้น ตั้งค่าเป็น 0 สำหรับไม่จำกัด
HERMES_CRON_SCRIPT_TIMEOUTการหมดเวลาสำหรับสคริปต์ก่อนรันที่แนบกับ cron jobs เป็นวินาที (ค่าเริ่มต้น: 120) ใช้แทนที่สำหรับสคริปต์ที่ต้องการการดำเนินการที่ยาวนานกว่า (เช่น การหน่วงเวลาแบบสุ่มเพื่อป้องกันการถูกตรวจจับว่าเป็น bot) สามารถกำหนดค่าได้ผ่าน cron.script_timeout_seconds ใน config.yaml

Session Settings

VariableDescription
SESSION_IDLE_MINUTESรีเซ็ต session หลังจากไม่มีกิจกรรมเป็นเวลา N นาที (ค่าเริ่มต้น: 1440)
SESSION_RESET_HOURชั่วโมงที่รีเซ็ตรายวันในรูปแบบ 24 ชั่วโมง (ค่าเริ่มต้น: 4 = 4 โมงเช้า)

Context Compression (config.yaml only)

Context compression ถูกกำหนดค่าผ่าน config.yaml เท่านั้น - ไม่มี environment variables สำหรับส่วนนี้ การตั้งค่า threshold อยู่ในบล็อก compression: ในขณะที่ model/provider สำหรับการสรุปจะอยู่ภายใต้ auxiliary.compression:

compression:
  enabled: true
  threshold: 0.50
  target_ratio: 0.20         # fraction of threshold to preserve as recent tail
  protect_last_n: 20         # minimum recent messages to keep uncompressed

:::info Legacy migration การตั้งค่าเก่าที่มี compression.summary_model, compression.summary_provider, และ compression.summary_base_url จะถูกย้ายอัตโนมัติไปยัง auxiliary.compression.* เมื่อโหลดครั้งแรก :::

Auxiliary Task Overrides

VariableDescription
AUXILIARY_VISION_PROVIDERProvider สำหรับงาน vision ที่ถูกกำหนดค่าทับ (Override)
AUXILIARY_VISION_MODELModel สำหรับงาน vision ที่ถูกกำหนดค่าทับ (Override)
AUXILIARY_VISION_BASE_URLendpoint ที่เข้ากันได้กับ OpenAI โดยตรงสำหรับงาน vision
AUXILIARY_VISION_API_KEYAPI key ที่ใช้คู่กับ AUXILIARY_VISION_BASE_URL
AUXILIARY_WEB_EXTRACT_PROVIDERProvider สำหรับงาน web extraction/summarization ที่ถูกกำหนดค่าทับ (Override)
AUXILIARY_WEB_EXTRACT_MODELModel สำหรับงาน web extraction/summarization ที่ถูกกำหนดค่าทับ (Override)
AUXILIARY_WEB_EXTRACT_BASE_URLendpoint ที่เข้ากันได้กับ OpenAI โดยตรงสำหรับงาน web extraction/summarization
AUXILIARY_WEB_EXTRACT_API_KEYAPI key ที่ใช้คู่กับ AUXILIARY_WEB_EXTRACT_BASE_URL

สำหรับ endpoint โดยตรงเฉพาะงาน, Hermes จะใช้ API key ที่กำหนดค่าของงานนั้น หรือ OPENAI_API_KEY มันจะไม่ใช้ OPENROUTER_API_KEY สำหรับ endpoint แบบกำหนดเองเหล่านั้น

Fallback Model (config.yaml only)

การ fallback model หลักถูกกำหนดค่าผ่าน config.yaml เท่านั้น - ไม่มี environment variables สำหรับส่วนนี้ ให้เพิ่มส่วน fallback_model พร้อมคีย์ provider และ model เพื่อเปิดใช้งานการ failover อัตโนมัติเมื่อ model หลักของคุณพบข้อผิดพลาด

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

ดู Fallback Providers สำหรับรายละเอียดทั้งหมด

Provider Routing (config.yaml only)

สิ่งเหล่านี้อยู่ใน ~/.hermes/config.yaml ภายใต้ส่วน provider_routing:

KeyDescription
sortเรียงลำดับ providers: "price" (ค่าเริ่มต้น), "throughput", หรือ "latency"
onlyรายการของ provider slugs ที่อนุญาต (เช่น, ["anthropic", "google"])
ignoreรายการของ provider slugs ที่จะข้าม
orderรายการของ provider slugs ที่จะลองตามลำดับ
require_parametersใช้เฉพาะ providers ที่รองรับ request params ทั้งหมด (true/false)
data_collection"allow" (ค่าเริ่มต้น) หรือ "deny" เพื่อยกเว้น providers ที่มีการเก็บข้อมูล

:::tip ใช้ hermes config set เพื่อตั้งค่า environment variables - ระบบจะบันทึกค่าเหล่านั้นไปยังไฟล์ที่ถูกต้องโดยอัตโนมัติ (.env สำหรับ secrets, config.yaml สำหรับทุกอย่างอื่น) :::


extent analysis

TL;DR

To resolve the issue, review the environment variables set in the ~/.hermes/.env file and ensure that the necessary variables for the desired functionality are correctly configured.

Guidance

  1. Review Environment Variables: Check the ~/.hermes/.env file for any typos or missing values in environment variables related to the issue.
  2. Provider Configuration: Verify that the provider configurations, such as HERMES_INFERENCE_PROVIDER, are set correctly according to the desired LLM provider.
  3. API Keys and Tokens: Ensure that all required API keys and tokens (e.g., OPENROUTER_API_KEY, OPENAI_API_KEY) are properly set and valid.
  4. Check Config.yaml: For settings not configurable via environment variables (like context compression and fallback models), review the config.yaml file for appropriate settings.

Example

No specific code example is applicable here, as the solution involves reviewing and potentially correcting environment variable settings or config.yaml configurations.

Notes

  • The solution depends on identifying the specific functionality or feature causing the issue and then ensuring its related environment variables or config.yaml settings are correct.
  • Environment variables can be set using the hermes config set command, which automatically saves them to the appropriate file.

Recommendation

Apply the necessary corrections to the environment variables or config.yaml file based on the specific issue encountered, ensuring all required settings for the desired functionality are properly configured.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

hermes - 💡(How to fix) Fix [i18n] Thai Translation: Reference Part b - environment-variables [1 participants]