Skip to content

auxiliary.title.enabled config is ignored — title generation runs regardless #41744

Description

@meatRoll

Description

The configuration option auxiliary.title.enabled: false (or auxiliary.title_generation.enabled: false) in config.yaml has no effect. Title generation still triggers even when explicitly disabled.

Root Cause

The code that calls maybe_auto_title() does not check the enabled field from the auxiliary config before invoking title generation.

Affected locations:

  • cli.py (around line 11150) — the CLI session handler
  • gateway/run.py (around line 15960) — the gateway session handler

In both locations, the code unconditionally calls maybe_auto_title() after a successful response:

if response and result and not result.get("failed") and not result.get("partial"):
    try:
        from agent.title_generator import maybe_auto_title
        ...

The enabled key from the auxiliary config dict is never read.

Expected Behavior

When auxiliary.title.enabled: false is set in config.yaml, title generation should be skipped entirely.

Suggested Fix

Before calling maybe_auto_title(), read the config and check the enabled flag:

_aux_cfg = self.config.get("auxiliary", {}) if hasattr(self, "config") and self.config else {}
_title_enabled = True  # default: enabled
for _key in ("title", "title_generation"):
    _sub = _aux_cfg.get(_key, {})
    if isinstance(_sub, dict) and "enabled" in _sub:
        _title_enabled = bool(_sub["enabled"])
        break
if response and result and not result.get("failed") and not result.get("partial") and _title_enabled:
    try:
        from agent.title_generator import maybe_auto_title
        ...

Environment

  • Hermes Agent (latest from git)
  • Reproduced on both CLI and Gateway modes
  • Affects all users who try to disable title generation via config

Metadata

Metadata

Assignees

No one assigned

    Labels

    P3Low — cosmetic, nice to havearea/configConfig system, migrations, profilescomp/agentCore agent runtime: loop, agent_init, prompt builder, context-compression, responses endpointduplicateThis issue or pull request already existstype/bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions