Odysseus Memory gives the agent a persistent understanding of who you are, what you prefer, and what context matters for your work. Skills let you codify recurring procedures — the agent consults them automatically whenever a request matches, so it can reliably repeat complex multi-step workflows without you re-explaining them every time. Together, Memory and Skills make the agent progressively better at being useful to you specifically.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/pewdiepie-archdaemon/odysseus/llms.txt
Use this file to discover all available pages before exploring further.
Memory
Memory is backed by ChromaDB (vector store) and a keyword-similarity index. When a new chat message arrives, Odysseus retrieves memories relevant to the query and injects them as context before the LLM responds — silently, without adding them to the visible conversation.What gets stored
The agent stores things the user tells it explicitly:- Identity facts — “My name is Alex”, “I live in Stockholm”, “Call me by my first name”
- Preferences — “I prefer concise replies”, “I use Python 3.12”, “I work on a MacBook”
- Project context — “The project repo is at ~/code/myapp”
- Contacts — names and email addresses associated with people you work with
identity, preference, fact, contact, project, goal) and can be pinned to always appear in context regardless of query relevance.
How retrieval works
Odysseus uses two complementary retrieval paths:- Vector retrieval (ChromaDB + fastembed) — embeddings-based semantic search finds memories conceptually related to the current query, even if they don’t share exact keywords.
- Keyword retrieval — a Jaccard token-similarity fallback that boosts identity, contact, preference, and task memories when the query matches known signal words.
uses counter on each memory is incremented.
fastembed and the embedding model
Odysseus uses fastembed for local embedding generation. fastembed runs ONNX models and does not require PyTorch or CUDA.Remote embeddings
To use a remote OpenAI-compatible embeddings endpoint instead of the local fastembed model:EMBEDDING_URL is set, Odysseus sends embedding requests there. Leave it unset to use fastembed locally.
To change the local fastembed model:
Memory management
The Brain panel (the brain icon in the sidebar) shows all stored memories with timestamps, categories, and use counts. From here you can:- Add a memory manually with a free-text entry
- Edit or delete any memory
- Pin a memory to force it into every conversation’s context
- Search across all memories by keyword
- Export all memories as a JSON file for backup
- Import memories from a JSON export or from an uploaded document (PDF, TXT, Markdown — the LLM extracts facts automatically)
- Audit/tidy — deduplicates and consolidates memories via an LLM pass
ChromaDB conflict note
Odysseus requires the fullchromadb package — not the lightweight chromadb-client. If both are installed, ChromaDB silently falls back to HTTP-only mode and fails.
Skills
Skills are reusable procedures that teach the agent how to handle specific tasks reliably. A Skill is a structured document (in SKILL.md format) that includes:- A name and description (used for matching)
- When to use — a sentence describing which requests should trigger this skill
- Procedure — numbered steps the agent follows
- Pitfalls — known failure modes and how to avoid them
How Skills work
At the start of each agent turn, Odysseus matches the user’s message against the skill catalog using token-similarity scoring. The top matching Skills are injected into context alongside the system prompt, so the agent consults the procedure before deciding how to act. If the agent fails a task and a more capable model (the “teacher”) succeeds, the teacher’s solution is automatically saved as a draft Skill — so on the next similar request, the student model has the proven procedure available. Draft skills are marked(draft) in the skill index until manually published.
Managing Skills
Open the Skills panel from the sidebar (or ask the agent to “open skills”). From the UI you can:- Browse the skill catalog by category
- View a full SKILL.md with procedure and pitfall details
- Add a new skill manually
- Edit an existing skill
- Delete a skill
- Set the confidence threshold for auto-injecting draft skills