fix(cli): gate tool-rendering paths with tool_progress_mode, not quiet_mode

quiet_mode was being used to suppress tool-result display when
tool_progress_mode was 'off'. But quiet_mode also gates operational
status messages, so users with /verbose + tool-progress off lost all
status output.

Adds a dedicated tool_progress_mode attribute to AIAgent; the
tool_executor result-rendering path gates on tool_progress_mode != 'off'.
The CLI passes its tool_progress_mode through agent setup and the
tool-progress cycle command syncs it onto the live agent.

Fixes #33860.
This commit is contained in:
BarnacleBoy 2026-06-08 10:29:17 -07:00 committed by Teknium
parent 4129092fda
commit 550b72dd87
5 changed files with 10 additions and 1 deletions

4
cli.py
View file

@ -7669,6 +7669,10 @@ class HermesCLI(CLIAgentSetupMixin, CLICommandsMixin):
if self.agent:
self.agent.reasoning_callback = self._current_reasoning_callback()
# Keep the live agent's tool_progress_mode in sync so the
# tool_executor rendering path reflects the new mode this turn,
# without waiting for an agent rebuild.
self.agent.tool_progress_mode = self.tool_progress_mode
# Use raw ANSI codes via _cprint so the output is routed through
# prompt_toolkit's renderer. self.console.print() with Rich markup