Integrates MemPalace for persistent agent memory across sessions. Agents recall context at session start, store important decisions, and write diary entries at session end. ## What's added agent/memory.py — AgentMemory class: - recall_context(): Load L0/L1 context (diaries, facts, relevant memories) - remember(): Store decisions and facts by room - write_diary(): Auto-generate session summary from transcript - start_session/end_session(): Session lifecycle management - Graceful degradation when MemPalace unavailable agent/memory_hooks.py — Drop-in session lifecycle hooks: - on_session_start(): Load context, return prompt block - on_user_turn/on_agent_turn/on_tool_call(): Record transcript - on_important_decision(): Store key decisions for long-term memory - on_session_end(): Write diary, clean up bin/memory_mine.py — Mine session transcripts into MemPalace: - Parse JSONL session files - Generate compact summaries - Batch mining with --days filter - Dry run mode tests/test_agent_memory.py — 31 tests covering: - SessionTranscript (create, turns, truncation, summary) - MemoryContext (empty, loaded, prompt formatting) - AgentMemory (create, factory, graceful degradation, lifecycle) - MemoryHooks (full lifecycle, before/after session guards) - Session mining (parse, summarize, find files, dry run) - Full lifecycle integration test ## Usage
22 lines
621 B
Python
22 lines
621 B
Python
"""
|
|
agent — Cross-session agent memory and lifecycle hooks.
|
|
|
|
Provides persistent memory for agents via MemPalace integration.
|
|
Agents recall context at session start and write diary entries at session end.
|
|
|
|
Modules:
|
|
memory.py — AgentMemory class (recall, remember, diary)
|
|
memory_hooks.py — Session lifecycle hooks (drop-in integration)
|
|
"""
|
|
|
|
from agent.memory import AgentMemory, MemoryContext, SessionTranscript, create_agent_memory
|
|
from agent.memory_hooks import MemoryHooks
|
|
|
|
__all__ = [
|
|
"AgentMemory",
|
|
"MemoryContext",
|
|
"MemoryHooks",
|
|
"SessionTranscript",
|
|
"create_agent_memory",
|
|
]
|