Generalize Memory identity to support non-Telegram agents.
Memory.hs and MemorySources.hs are tied to Telegram-specific identity:
user_id is a Telegram user UUIDchat_id is a Telegram chat ID (Int)Introduce a generic MemoryIdentity type:
data MemoryIdentity = MemoryIdentity
{ miOwner :: Text -- who owns this data (user, org, agent)
, miContext :: Text -- session/conversation context
}
MemoryIdentity telegramUserId ("telegram:" <> show chatId)MemoryIdentity "ben" "cli:session-123"MemoryIdentity "system" ("agentd:" <> runId)1. Add MemoryIdentity type to Memory.hs 2. Update MemorySources to accept MemoryIdentity 3. Update buildHydrationConfig signature 4. Update Telegram.hs to construct MemoryIdentity 5. Create memory.md skill for active memory use
Phase 1 complete (commit 88e8ff3): MemoryIdentity abstraction.
Done:
Remaining for full multi-agent support: