md-first memory extraction framework for AI agents. Markdown is the single source of truth; SQLite holds state and LanceDB provides the rebuildable vector + BM25 + scalar index. The codebase follows a single-direction DDD layering (entrypoints -> service -> memory -> infra, with component / core / config cross-cutting) enforced by import-linter. Engineering surface: - Coding conventions in .claude/rules/ (path-scoped) and workflows in .claude/skills/ (/commit, /new-branch, /pr). - GitHub Actions CI runs make lint + test + integration; pre-commit mirrors the gates locally (ruff, hygiene hooks, gitlint commit-msg). - Commit messages follow Conventional Commits, enforced by gitlint. - make lint also enforces datetime two-zone discipline and OpenAPI drift.
1.7 KiB
1.7 KiB
description, arguments
| description | arguments | |||||||
|---|---|---|---|---|---|---|---|---|
| Ask a question about past work. Searches memories and combines with current context to answer. |
|
EverMem Ask
Answer a question using both memory search results and current conversation context.
Question
{{question}}
Instructions
-
Search memories using
evermem_searchMCP tool with relevant keywords. Start with 10 results. -
Evaluate results:
- If memories provide useful context, note what you learned
- If more detail needed, search again with different keywords (up to 3 searches)
- If no relevant memories found, that's OK - proceed with what you know
-
Combine sources to answer:
- Memory search results (past sessions)
- Current conversation context (this session)
- Your general knowledge (when applicable)
-
Be honest about sources:
- "Based on our discussion on [date]..." - when citing memory
- "From our current session..." - when citing current context
- "I don't have any recorded information about this" - when memories don't help
- "Based on general best practices..." - when using general knowledge
-
Admit uncertainty:
- If memories are incomplete or unclear, say so
- If you're inferring rather than recalling, make that clear
- It's better to say "I don't know" than to guess
Response Format
Start with a direct answer, then provide supporting context:
[Direct answer to the question]
**From memories:**
- [Relevant points from past sessions, with dates]
**Current context:**
- [Relevant points from this session, if any]
**Note:** [Any caveats or gaps in knowledge]
Now answer the user's question.