Skip to content

fix(aux): remove stale session_search auxiliary-model menu entry #27925

@hehehe0803

Description

@hehehe0803

Bug Description

hermes model's auxiliary-model task menu still includes session_search, but DEFAULT_CONFIG["auxiliary"] intentionally no longer defines session_search after the session-search tool became DB-backed/direct-return rather than an auxiliary-LLM task.

This leaves the menu/task list and default config schema out of sync. It also breaks the existing auxiliary-config tests on current main.

Why this matters

The codebase now documents the intended behavior in hermes_cli/config.py:

  • session_search no longer uses an auxiliary LLM.
  • the old auxiliary.session_search.* block was removed from DEFAULT_CONFIG.
  • existing user config values are harmless leftovers and ignored.

However, hermes_cli/main.py still includes session_search in _AUX_TASKS, so the auxiliary-model picker can still present a task that no longer has a default config entry and no longer behaves like the other auxiliary LLM tasks.

Reproduction

From a clean checkout of current main:

scripts/run_tests.sh \
  tests/hermes_cli/test_aux_config.py::test_session_search_defaults_include_extra_body_and_concurrency \
  tests/hermes_cli/test_aux_config.py::test_aux_tasks_keys_all_exist_in_default_config \
  -q

Observed result:

FAILED tests/hermes_cli/test_aux_config.py::test_session_search_defaults_include_extra_body_and_concurrency
KeyError: 'session_search'

FAILED tests/hermes_cli/test_aux_config.py::test_aux_tasks_keys_all_exist_in_default_config
AssertionError: _AUX_TASKS references tasks not in DEFAULT_CONFIG.auxiliary: {'session_search'}

Expected Behavior

session_search should not be shown/configured as an auxiliary model task if it no longer uses an auxiliary LLM.

The auxiliary task menu and DEFAULT_CONFIG["auxiliary"] should stay in sync.

Actual Behavior

DEFAULT_CONFIG["auxiliary"] no longer contains session_search, but _AUX_TASKS still contains:

("session_search", "Session search", "past-conversation recall")

Proposed Fix

  • Remove session_search from _AUX_TASKS in hermes_cli/main.py.
  • Update the stale test to assert that session_search is intentionally absent from both:
    • DEFAULT_CONFIG["auxiliary"]
    • _AUX_TASKS

Environment

  • Repository: NousResearch/hermes-agent
  • Branch tested: current main
  • Test runner: scripts/run_tests.sh
  • No private/local paths, hostnames, credentials, or user-specific network details are required to reproduce this issue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Medium — degraded but workaround existsarea/configConfig system, migrations, profilescomp/cliCLI entry point, hermes_cli/, setup wizardtype/bugSomething isn't working

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions