Memory provider tools failing in sequential dispatch path

NousResearch/hermes-agent · cluster 1577 · agent

Data as of

Nothing open on GitHub. Fix merged in #4803. Check it covers your case.

The short answer

0open issues
0open PRs
10items grouped
Known?
Yes. 10 related items grouped here, 7 issues already closed.
Fix event
A fix was merged to main in PR #4803. Check it covers your case. No release data is tracked.
Tracker
The maintainers' tracker marks this unresolved. That is separate from the fix event.
Still open
Nothing open on GitHub.

Multiple bug reports and fix attempts address memory provider tools (honcho_*, bm_*, fact_store, etc.) returning 'Unknown tool' errors when called in sequential or single-tool-call execution paths. Several pull requests attempt to correct routing, session handling, and context retrieval behavior for these providers.

Open issues0

No open issues.

Open PRs0

No open pull requests.

Fixes on record

Merged to main. A stamp counts the issues a fix is linked to.

  • #4803 fix: route memory provider tools in sequential execution path

    merged to main

    files: run_agent.py

    Show the diff
    • run_agent.py
      @@ -6009,6 +6009,30 @@ def _execute_tool_calls_sequential(self, assistant_message, messages: list, effe
                               spinner.stop(cute_msg)
                           elif self.quiet_mode:
                               self._vprint(f"  {cute_msg}")
      +            elif self._memory_manager and self._memory_manager.has_tool(function_name):
      +                # Memory provider tools (hindsight_retain, honcho_search, etc.)
      +                # These are not in the tool registry — route through MemoryManager.
      +                spinner = None
      +                if self.quiet_mode and not self.tool_progress_callback:
      +                    face = random.choice(KawaiiSpinner.KAWAII_WAITING)
      +                    emoji = _get_tool_emoji(function_name)
      +                    preview = _build_tool_preview(function_name, function_args) or function_name
      +                    spinner = KawaiiSpinner(f"{face} {emoji} {preview}", spinner_type='dots', print_fn=self._print_fn)
      +                    spinner.start()
      +                _mem_result = None
      +                try:
      +                    function_result = self._memory_manager.handle_tool_call(function_name, function_args)
      +                    _mem_result = function_result
      +                except Exception as tool_error:
      +                    function_result = json.dumps({"error": f"Memory tool '{function_name}' failed: {tool_error}"})
      +                    logger.error("memory_manager.handle_tool_call raised for %s: %s", function_name, tool_error, exc_info=True)
      +                finally:
      +                    tool_duration = time.time() - tool_start_time
      +                    cute_msg = _get_cute_tool_message_impl(function_name, function_args, tool_duration, result=_mem_result)
      +                    if spinner:
      +                        spinner.stop(cute_msg)
      +                    elif self.quiet_mode:
      +                        self._vprint(f"  {cute_msg}")
                   elif self.quiet_mode:
                       spinner = None
                       if not self.tool_progress_callback:

2 PRs closed without merging

From the close comments: done elsewhere 1 · superseded by another PR 1

  • #4709 fix(memory): route memory provider tools in sequential dispatch path · superseded by another PR → #4803
  • #4752 fix(honcho): restore end-to-end chat tool behavior · done elsewhere → 7e53b3e, e492420, #4803
Closed issues · 7
  • Closed#1577search_context() / peer-card retrieval can appear empty immediately after successful session writes while dialectic recall already works
  • Closed#4708Possible bug: memory provider tools (fact_store, fact_feedback) may not route correctly in sequential dispatch path
  • Closed#4751fix(honcho): sequential chat dispatch, session key strategy, and peer-card fallback break end-to-end Honcho UX
  • Closed#4955[Bug]: Memory provider tools fail in sequential tool dispatch path
  • Closed#5398[Bug] Dynamic memory provider tools (honcho_profile, honcho_search, honcho_context, honcho_conclude) fail with 'Unknown tool' in sequential dispatch path
  • Closed#15118Memory-provider tools (honcho_*) fail with "Unknown tool" on single-tool-call turns
  • Closed#23296Basic Memory provider active but bm_* tools fail with Unknown tool
How this cluster was grouped
  • Link evidence (partly structural links): some members are connected by structural evidence (shared changed files, or a closing/superseded reference); the rest are joined by an automated relevance judgement over their text.
  • Members outside that structural core may belong to a different underlying problem.
  • Pairwise link density 0.18: the share of item pairs that carry a link, counting a structural link in full and a relevance-only link at 0.36. 1.00 means every pair is linked.

Pick up a Lab task

Check whether a fix covers the open issues here, with your own agent. Bring back evidence for maintainers.

Open the Lab

At a glance

Subsystem
agent
Merged PRs
#4803
Closed issues
7
Attempts
2 PRs closed without merging
Fix link checked
3 Apr 2026. This confirmation is old and may be out of date (a revert or reopen would not have invalidated it here); re-verify.

For your agent

The same facts, typed.