Skip to content

[Bug] Hermes memory_tencentdb does not mirror explicit memory() writes into TencentDB memory search #417

Description

@kumar-shivang

Bug Description

When Hermes is configured with memory.provider: memory_tencentdb, explicit durable-memory writes made through the built-in Hermes memory tool are accepted locally but do not become searchable through TencentDB memory search.

In practice:

  • memory(action="add", ...) succeeds
  • memory_tencentdb_conversation_search works
  • memory_tencentdb_memory_search does not return the freshly written marker

This makes explicit "save memory" behavior diverge from TencentDB L1 memory search.

Root Cause

The Hermes-side provider hook appears to be a no-op.

In the installed provider code (hermes-plugin/memory/memory_tencentdb/__init__.py in the TencentDB plugin tree), on_memory_write(...) is stubbed:

def on_memory_write(self, action: str, target: str, content: str) -> None:
    """Mirror built-in memory writes to memory-tencentdb for indexing."""
    # TODO: Implement mirroring of Hermes builtin MEMORY.md/USER.md writes
    # to memory-tencentdb's recall index for conflict suppression and dedup.
    pass

Hermes core does call this hook after built-in memory writes, but the provider currently does nothing with it.

Reproduction

  1. Configure Hermes with:
    • memory.memory_enabled: true
    • memory.user_profile_enabled: true
    • memory.provider: memory_tencentdb
  2. Call the built-in Hermes memory tool with a unique marker, e.g.:
    • memory(action="add", target="memory", content="TencentDB retry probe memory: durable memory round-trip verification marker.")
  3. Query TencentDB memory search with that marker / substring.
  4. Query TencentDB conversation search with the same marker.

Expected Behavior

The explicit memory write should be mirrored into TencentDB's memory index so that memory_tencentdb_memory_search can retrieve it.

Actual Behavior

Only conversation search works. Explicit Hermes memory writes are not ingested into TencentDB memory search.

Environment

  • Host OS: Linux
  • Hermes repo observed locally: NousResearch/hermes-agent
  • TencentDB memory repo: TencentCloud/TencentDB-Agent-Memory
  • GitHub auth verified via gh

Notes

This does not look like a pure search-quality problem. The provider hook for explicit memory writes appears unimplemented, so the written memory never reaches TencentDB's searchable memory store.

A clean fix would likely require implementing an explicit-memory ingest path and wiring on_memory_write(...) to it, rather than relying only on conversation capture.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    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