Configuration (32)

Official issues about config.yaml and environment setup. Sourced from the official GitHub repo; status derived from official labels; every entry links back to its source with a last-checked date.

#58320 Investigating P3 comp/tools

web_search/web_extract fail silently - no clear user guidance on failure

web_search and web_extract fail silently or return empty results when no web backend API key is configured, without any indication to the user that search is unavailable.

#58290 Workaround P2 comp/cli

[Bug]: using /model xxx --provider xxx will automaticlly change the config.yaml, and I never input the --global

Sending /model xxx --provider xxx via feishu changes the default model/provider in config.yaml even without the --global flag, when it should only affect the runtime session.

#58281 Workaround P2 comp/tools

[Bug]: [Bug]: Disabling the `coding` toolset silently strips explicitly-enabled `terminal`/`file` tools — model receives Tools: 0

When agent.disabled_toolsets includes a composite toolset like coding, Hermes subtracts all of its tools even from toolsets the user explicitly enabled (terminal, file), silently resulting in zero tools sent to the model with no warning.

#58277 Workaround P2 comp/cli

[Bug]: Empty YAML key (terminal:) in profile config.yaml crashes load_cli_config with TypeError

An empty terminal: key in a profile's config.yaml is parsed by YAML as None, which load_cli_config() fails to fall back to {} for, causing a TypeError that crashes the agent before the first conversation turn.

#58274 Investigating P3 comp/cron

[Feature]: Full Profile Parity — Dashboard, Sessions, Cron, and Path Isolation

Umbrella feature request describing multiple subsystems (cron, dashboard, desktop) that don't properly support non-default Hermes profiles, since the codebase assumes ~/.hermes/ is the canonical root instead of consistently resolving ~/.hermes/profiles/<name>/.

#58265 Workaround P2 comp/cli

Config `provider`-key warning storms concurrent-log-handler on Windows → serve/gateway event-loop stall

On Windows, a benign unknown provider config key triggers a warning on every load_picker_context() call, and the resulting log volume deadlocks concurrent-log-handler's cross-process lock, stalling the asyncio event loop for ~14s at a time and dropping desktop/TUI WebSockets while /health stays green.

#58150 Workaround P2 comp/cli

[Bug]: Hermes use window nodejs instead of its built-in node

Hermes on Windows uses the system's installed Node.js instead of its bundled version when the system Node.js is updated, causing version mismatches and terminal window flashing.

#58116 Fixed P2 comp/gateway

bug: platforms.weixin.enabled: false ignored when WEIXIN_* env vars are present

Setting platforms.weixin.enabled: false in config.yaml does not stop the gateway from connecting to WeChat/iLink when WEIXIN_* environment variables are present. This issue is now closed.

#58032 Workaround P2 comp/gateway

Bug: multiplex_profiles: false leaves orphaned sessions that cause wrong profile routing

Turning off gateway.multiplex_profiles does not clean up stale profile sessions in the shared state.db, so the gateway keeps routing messages to a disabled profile.

#57705 Investigating P3 comp/cli

[Bug]How do I add this address model API? I get an error when I try to add it, and it doesn't work

The reporter states they get an error and the feature does not work when trying to add a specific address model API, with only a link and a screenshot attached and no further description.

#56058 Investigating P3 comp/desktop

Bug: Desktop chat model picker persists to global config instead of session-scoped override

Switching models via the desktop chat model picker on Windows persists the change to the global config.yaml instead of scoping it to the current session, contrary to documented behavior.

#52401 Workaround P2 comp/cron

Desktop App (macOS): Non-default profile shows sessions and cron jobs from default profile — cross-profile data leak in UI

On the macOS desktop app, a non-default profile shows sessions, channels, and cron jobs belonging to the default profile: a cross-profile data leak in the UI.

#47917 Fixed P1 comp/cli

[Bug] Desktop build fails after update - electronDist does not exist (cache invalidated)

This closed issue reported that Hermes Desktop builds fail again after code updates with an 'electronDist does not exist' error, because the update process clears the Electron binary cache, indicating the fix in PR #47276 was incomplete.

#44022 Fixed P2 comp/gateway

[Bug]: Desktop/TUI session.resume fails with "No LLM provider configured" when session only stored a bare billing_provider (e.g. custom)

Resuming any older chat in the Hermes desktop or TUI app fails with "No LLM provider configured" even though the default provider is valid and new chats work fine, while the identical session resumes correctly via the CLI's --resume flag.

#42961 Workaround P2 comp/cli

terminal.cwd config ignored for local backend — process cwd always used instead

The terminal.cwd config setting is silently discarded for the local terminal backend because cli.py unconditionally overrides it with the process's launch directory, so it only works for non-local backends.

#38975 Investigating P3 comp/tui

Desktop UI: add full custom OpenAI-compatible provider setup

Hermes Desktop only has partial UI support for custom OpenAI-compatible providers, forcing users to overload another provider's fields or manually edit config files; the issue requests a proper Custom provider row needing only a Base URL and API key.

#38855 Fixed P1 comp/cli

Desktop Working Directory setting does not override stale remembered workspace cwd

In Hermes Desktop, updating the Working Directory setting does not take effect for new sessions if the renderer's localStorage already has a remembered workspace cwd, so new sessions keep starting in the old directory despite config.yaml being updated correctly.

#38602 Investigating P3 comp/desktop

[Feature]: Desktop Client-Only Installation

This issue requests a first-class client-only install mode for Hermes Desktop that connects to an existing remote Hermes instance, since today the app always attempts to bootstrap a local runtime on first launch unless one is found.

#26879 Investigating P3 comp/agent

[Bug] auxiliary task provider identity lost when base_url + api_key are both set

When an auxiliary task config sets provider, base_url, and api_key together, the provider name is silently overwritten with 'custom', bypassing provider-specific handling and causing subtle failures.

#24039 Workaround P2 comp/agent

Auxiliary fallback chain should reuse fallback_providers, not maintain a separate hardcoded list

Hermes maintains two separate fallback chains that are unaware of each other: the user-configured fallback_providers used by the main agent, and a separate hardcoded fallback list (including paid models) used by auxiliary tasks like compression, vision, and title generation.

#22791 Investigating P3

[Feature]: Add Infisical as an External Vault backend (sub-issue of #3630)

The issue requests adding Infisical as an External Vault backend, since Hermes currently has no native way to consume secrets from Infisical's recommended multi-project layout, forcing users into hard-coded shell wrappers or a single flat project.

#20859 Investigating P3

[Feature]: Support for Mistral as LLM provider

This issue requests native support for Mistral as an LLM provider in Hermes-Agent, since it currently can only be used via the less convenient custom provider option.

#20510 Investigating P3

Feature Request: Cloud Sync for All Hermes Configurations Across Devices

Hermes stores all config, profiles, skills, memory, and sessions locally with no built-in cross-device sync, requiring manual export/import today; the issue proposes a built-in cloud sync feature.

#20249 Investigating P3 comp/agent

Model Presets: per-turn expert-on-demand model escalation

This feature proposes a model_presets config section that lets users temporarily escalate to a named expert model for a single turn and then automatically snap back to the default model, instead of manually switching models back and forth.

#18733 Investigating P3 comp/agent

Per-model or per-provider compression threshold overrides

Feature request to allow per-model or per-provider overrides of compression.threshold in config.yaml, since a single global threshold is ineffective for large-context models and too aggressive for small-context ones.

#17199 Workaround P2 comp/cli

deepseek provider: model normalization and base_url override break custom endpoints (e.g. Volcengine ARK)

Custom OpenAI-compatible endpoints configured under the deepseek provider break because non-standard model names get force-normalized to deepseek-chat, and the credential pool's base_url is rebuilt from hardcoded defaults on every startup, ignoring config.yaml or auth.json settings.

#13181 Investigating P3 comp/agent

[Feature]: Easy support for adding OpenCode Go models into Hermes Agent

Integrating new model backends like OpenCode Go into Hermes Agent currently requires digging into internal code; the issue proposes a config-based model registration system with a standardized adapter interface.

#12238 Investigating P3 comp/cli

Feature Request: Built-in Automatic Backup & Version Control for Agent Data (~/.hermes/)

This issue requests a built-in automatic backup and version control mechanism for all Hermes agent data stored in ~/.hermes/, including a proposed `hermes backup` CLI command for immediate or scheduled snapshots.

#10567 Investigating P3 comp/cli

Add --host and CORS config for hermes dashboard to enable Tailscale/VPN access

The hermes dashboard's CORS regex is hardcoded to localhost/127.0.0.1, so even with --host 0.0.0.0 the frontend loads but API calls are blocked, preventing remote access over VPNs like Tailscale; the issue requests configurable host/port and CORS origins.

#5143 Investigating P3 comp/gateway

[Feature] Multi-Role Auto-Routing via Gateway Hooks

This issue proposes Multi-Role Auto-Routing, letting users define named roles with dedicated sessions and system prompts, auto-routed by a lightweight classifier, to avoid context pollution from mixing unrelated topics in one shared session.

#4431 Investigating P3 comp/gateway

[Feature]: Per-topic/per-chat configuration overrides (topic_configs) for gateway sessions

This issue reports that all Hermes gateway sessions across multiple Telegram groups or Discord servers currently share the same personality, prompt, and working directory, and proposes a topic_configs config section for per-chat overrides.

#1955 Fixed P2 comp/gateway

feat: per-channel model and system prompt overrides for gateway platforms

This feature proposes a channel_overrides config section so each Discord/Telegram channel can specify its own model, provider, and system prompt instead of sharing one global model and prompt across all channels.

Other categories

Back to curated issues . School solution cards . Troubleshooting