Minne & kontext per användare

Samtalstrådar, RLS så användare bara ser sitt, opt-out och radering (GDPR).

15 minBygg din AI-assistent
Illustration för lektionen Minne & kontext per användare

Vad du bygger

En robust minneshantering: varje användare har sin egen tråd, RLS skyddar data, och användaren kan säga "glöm mig" och få allt raderat.

Innan du börjar

  • Agent-loopen från förra lektionen fungerar

Steg för steg

  1. Tabell agent_conversations (id, user_key, channel, created_at)
  2. Tabell agent_messages (conversation_id, role, content, tool_calls, created_at)
  3. RLS: bara service_role läser (webhooks har ingen auth-user)
  4. För kontextfönster: hämta senaste 20 messages, sammanfatta äldre om det blir för långt
  5. Kommando /glom (Telegram) eller "radera mig" (WhatsApp) → soft-delete + hård delete efter 30d
  6. Kommando /pause för opt-out från proaktiva push

Tips

  • Sammanfatta gamla meddelanden till en system-summary istället för att bara klippa av
  • Spara user_key som hash av chat_id + kanal så du kan byta plattform utan att förlora minnet

Vanliga fel

  • Att ladda hela historiken i varje request — kostnad + latens exploderar
  • Att inte ha en tydlig raderingsväg — GDPR-krav

Steg för steg i bild

Tabell agentconversations (id, userkey, channel, createdat)
1. Tabell agentconversations (id, userkey, channel, createdat)
Tabell agentmessages (conversationid, role, content, toolcal
2. Tabell agentmessages (conversationid, role, content, toolcal
RLS
3. RLS