import sqlite3

db = sqlite3.connect("memgpt_memory.db")
db.execute("CREATE TABLE IF NOT EXISTS memory (key TEXT PRIMARY KEY, value TEXT)")
db.commit()

def remember(key, value):
    db.execute("INSERT OR REPLACE INTO memory VALUES (?, ?)", (key, value))
    db.commit()

def recall(key):
    row = db.execute("SELECT value FROM memory WHERE key=?", (key,)).fetchone()
    return row[0] if row else "No memory found"

print("=== Persistent Memory Agent ===")
print("Commands: remember key=value | recall key | exit")
while True:
    command = input("You: ").strip()
    if command.lower() == "exit":
        break
    if command.lower().startswith("remember "):
        key, sep, value = command[9:].partition("=")
        if sep:
            remember(key.strip(), value.strip())
            print("Agent: Memory saved")
        else:
            print("Use: remember key=value")
    elif command.lower().startswith("recall "):
        print("Agent:", recall(command[7:].strip()))
    else:
        print("Use remember, recall, or exit")
db.close()
