# skills/memory.py
import os
import requests
API_KEY = os.getenv("OPENMEMORYX_API_KEY")
BASE_URL = "https://t0ken.ai/api/v1"
def store_memory(content: str, project_id: str = "default", metadata: dict = None):
"""Store a memory in OpenMemoryX"""
response = requests.post(
f"{BASE_URL}/memories",
headers={"X-API-Key": API_KEY},
json={
"content": content,
"project_id": project_id,
"metadata": metadata or {}
}
)
return response.json()
def search_memories(query: str, project_id: str = None, limit: int = 5):
"""Search memories in OpenMemoryX"""
payload = {"query": query, "limit": limit}
if project_id:
payload["project_id"] = project_id
response = requests.post(
f"{BASE_URL}/memories/search",
headers={"X-API-Key": API_KEY},
json=payload
)
return response.json()["data"]
def get_recent_memories(project_id: str = None, limit: int = 10):
"""Get recent memories"""
url = f"{BASE_URL}/memories?limit={limit}"
if project_id:
url += f"&project_id={project_id}"
response = requests.get(
url,
headers={"X-API-Key": API_KEY}
)
return response.json()["data"]