Skip to content

Wire ChatAgent as first MemoryMixin consumer #578

@kovtcharov

Description

@kovtcharov

Summary

Integrate MemoryMixin into ChatAgent as the first consumer. This validates the mixin works end-to-end with a real agent.

Spec: docs/spec/agent-memory-architecture.md → Implementation Order step 6

Depends on: #542 (MemoryStore), #543 (MemoryMixin)

Changes

ChatAgent (src/gaia/agents/chat/agent.py)

class ChatAgent(Agent, MemoryMixin):
    def __init__(self, **kwargs):
        self.init_memory()          # Before super().__init__()
        super().__init__(**kwargs)

    def _register_tools(self):
        super()._register_tools()
        self.register_memory_tools()

Validation

  • 5 memory tools appear in tool list
  • System prompt includes memory section
  • Conversations stored after each query
  • Tool calls auto-logged
  • Errors auto-learned
  • Memory persists across sessions (restart agent, recall works)

Acceptance Criteria

  • ChatAgent inherits MemoryMixin
  • Memory tools available in gaia chat
  • remember / recall / update_memory / forget work in conversation
  • search_past_conversations returns past sessions
  • System prompt shows preferences and facts
  • Tool errors surface in system prompt on next query
  • Memory persists across agent restarts

Metadata

Metadata

Assignees

No one assigned

    Labels

    domain:agent-coreFramework, tools, registry, memory, skills, orchestrationtrack:consumer-appHermes-competitor consumer product — mobile-first, voice + messaging + memory + skills

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions