hermes - 💡(How to fix) Fix auxiliary.compression.provider ignored after switching model provider [1 pull requests]

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…

When auxiliary.compression.provider is configured in config.yaml (e.g. deepseek), context compaction requests are sent using the current session model provider instead of the configured auxiliary provider after a /model switch.

Root Cause

When auxiliary.compression.provider is configured in config.yaml (e.g. deepseek), context compaction requests are sent using the current session model provider instead of the configured auxiliary provider after a /model switch.

Fix Action

Fixed

Code Example

auxiliary:
  compression:
    model: deepseek-v4-flash
    provider: deepseek

---

/model deepseek/deepseek-v4-flash --provider jiutian --global
RAW_BUFFERClick to expand / collapse

Description

When auxiliary.compression.provider is configured in config.yaml (e.g. deepseek), context compaction requests are sent using the current session model provider instead of the configured auxiliary provider after a /model switch.

Steps to Reproduce

  1. Configure in config.yaml:
auxiliary:
  compression:
    model: deepseek-v4-flash
    provider: deepseek
  1. Switch to a different provider:
/model deepseek/deepseek-v4-flash --provider jiutian --global
  1. Continue conversation until context compaction triggers (~128K token threshold)

  2. Observe compression failure

Expected Behavior

Context compression should always use the provider specified in auxiliary.compression.provider, regardless of the current session model/provider.

Actual Behavior

After switching provider, call_llm() receives the switched-to provider credentials via main_runtime, overriding the auxiliary config. This causes:

  • Compression requests sent to the wrong API
  • Content safety filters on the switched-to provider rejecting system prompts/memory content (403 errors)
  • Compression fails with fallback context marker

Environment

  • OS: Windows 10
  • Hermes Agent version: latest
  • Deployment: Local gateway mode

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 auxiliary.compression.provider ignored after switching model provider [1 pull requests]