Hermes Memory Providers
mnemosyne-oss/mnemosyne
Install and configure Mnemosyne as a Hermes Agent memory provider — local SQLite with vector search, episodic consolidation, and temporal knowledge graphs.
A skill your agent uses when the user references past sessions, asks 'what did we do', 'do you remember', 'last session', 'recall', or 'continue from'.
$ npx skills add cwinvestments/memstack --skill echo -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install cwinvestments/memstack echo --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/cwinvestments/memstack.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/echo .claude/skills/echo && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "echo" agent skill from https://github.com/cwinvestments/memstack/tree/master/skills/echo into .claude/skills/echo/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "echo", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/cwinvestments/memstack/tree/master/skills/echoType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add cwinvestments/memstack --skill echo -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install cwinvestments/memstack echo --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cwinvestments/memstack.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/echo .agents/skills/echo && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "echo" agent skill from https://github.com/cwinvestments/memstack/tree/master/skills/echo into .agents/skills/echo/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "echo", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add cwinvestments/memstack --skill echo -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install cwinvestments/memstack echo --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cwinvestments/memstack.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/echo .cursor/skills/echo && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "echo" agent skill from https://github.com/cwinvestments/memstack/tree/master/skills/echo into .cursor/skills/echo/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "echo", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/cwinvestments/memstack.git --path skills/echo--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add cwinvestments/memstack --skill echo -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install cwinvestments/memstack echo --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cwinvestments/memstack.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/echo .gemini/skills/echo && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "echo" agent skill from https://github.com/cwinvestments/memstack/tree/master/skills/echo into .gemini/skills/echo/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "echo", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install cwinvestments/memstack echoInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add cwinvestments/memstack --skill echo -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/cwinvestments/memstack.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/echo .github/skills/echo && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "echo" agent skill from https://github.com/cwinvestments/memstack/tree/master/skills/echo into .github/skills/echo/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "echo", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add cwinvestments/memstack --skill echo -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install cwinvestments/memstack echo --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cwinvestments/memstack.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/echo .opencode/skills/echo && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "echo" agent skill from https://github.com/cwinvestments/memstack/tree/master/skills/echo into .opencode/skills/echo/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "echo", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
echoA skill your agent uses when the user references past sessions, asks 'what did we do', 'do you remember', 'last session', 'recall', or 'continue from'.
Echo is an agent skill from cwinvestments/memstack. Use when the user references past sessions, asks 'what did we do', 'do you remember', 'last session', 'recall', or 'continue from'.
Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `index-sessions.py` and `search.py`).
It sits in AI & LLM Engineering, covering Vector databases. It works with SQLite. The repository describes itself as: Structured skill framework for Claude Code. 130 skills, persistent memory, TokenStack compression, localhost dashboard with 3-agent runner, real-time streaming, MCP tools. The licence is MIT.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 00370ce. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships script files (Python), which the agent can run.
Shell commands in SKILL.md call:
pythonFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
OPENAI_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Echo loads about 1.7k tokens when it runs. Until then it costs about 34 tokens; SKILL.md has 734 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from cwinvestments/memstack at commit 00370ce, republished under its MIT licence (© cwinvestments). 734 words, ~1,745 tokens.
.claude/skills/echo/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.Recall information from past CC sessions using semantic vector search.
When this skill activates, output:
🔊 Echo: Searching the archives...
Then execute the protocol below.
| Context | Status | Priority |
|---|---|---|
| User says "recall", "remember", "last session", "what did we" | ACTIVE: search memory | P1 |
| User asks about past work explicitly ("did we build X?") | ACTIVE: search memory | P1 |
| User says "continue from" or "resume" a past topic | ACTIVE: search memory | P2 |
| User is describing NEW work to do ("build X", "add Y") | DORMANT, this is new work, not recall | none |
| User mentions "memory" in code context (RAM, variables) | DORMANT, technical term, not MemStack recall | none |
| User mentions a project name in present tense ("work on X") | DORMANT, forward-looking, not recall | none |
| User says "save" or "log" (Diary/Project territory) | DORMANT, Diary or Project skill handles writing | none |
If you're thinking any of these, STOP, you're about to skip the protocol:
| You're thinking... | Reality |
|---|---|
| "I remember this from earlier in the conversation" | You don't persist. Earlier context may be compacted. Run the search. |
| "I can just summarize from what I know" | You know nothing from prior sessions. The database does. Search it. |
| "The user probably doesn't need exact details" | Users ask Echo for specifics: dates, decisions, file paths. Run all steps. |
| "Vector search seems slow, I'll skip to SQLite" | Vector search returns the best results. Always try it first. |
| "I found one result, that's probably enough" | Run ALL steps (vector + SQLite + insights). One source misses context another catches. |
| "The keywords are too vague to search" | Search anyway. Vague queries still return useful semantic matches. |
Try LanceDB vector search first for best-quality results:
python "$MEMSTACK_PATH/skills/echo/search.py" "<keywords>" --top-k 5If this returns results, present them with scores, dates, and source files.
Always run SQLite search to supplement vector results or as fallback if Step 1 fails:
python "${CLAUDE_PLUGIN_ROOT}/db/memstack-db.py" search "<keywords>" --project <project>For additional context:
python "${CLAUDE_PLUGIN_ROOT}/db/memstack-db.py" get-sessions <project> --limit 5
python "${CLAUDE_PLUGIN_ROOT}/db/memstack-db.py" get-insights <project>If both vector and SQLite return nothing, check memory/sessions/ and memory/projects/ for markdown files.
Combine and deduplicate results from all sources:
If nothing found across all sources, say clearly: "No session logs found for [topic]. Use Diary to save future sessions."
To re-index sessions after new diary entries (normally done automatically):
python "$MEMSTACK_PATH/skills/echo/index-sessions.py"Use --force to re-embed all content (e.g., after changing embedding model):
python "$MEMSTACK_PATH/skills/echo/index-sessions.py" --forceEcho uses LOCAL embeddings by default: sentence-transformers (all-MiniLM-L6-v2, 384-dim). No API key is needed and nothing leaves the machine.
OpenAI embeddings (text-embedding-3-small, 1536-dim) are strictly OPT-IN. Enable them either way:
MEMSTACK_EMBED_PROVIDER=openai in the environment (also requires an OPENAI_API_KEY to be set), or--provider openai to the indexer.A bare OPENAI_API_KEY in the environment does NOT switch Echo to OpenAI on its own; the opt-in above is required. An explicit OpenAI opt-in with no key present is a hard error, not a silent downgrade to local, so an index is never built with a provider you did not choose.
Switching providers requires a --force re-index, because the vector dimensions differ (local 384 vs OpenAI 1536) and the two cannot be mixed in one index. Search automatically matches whatever provider the current index was built with (recorded in metadata.json).
$MEMSTACK_PATH/memory\vectors\lancedb\ (via LanceDB)~/.memstack/memstack.db (via memstack-db.py)$MEMSTACK_PATH/memory\ (legacy markdown files)User: "Do you remember what we did on AdminStack last session?"
🔊 Echo: Searching the archives...
Vector search (top 3):
[1] AdminStack: 2026-02-18 (session)
Section: Accomplished
Score: 0.912
Built CC Monitor page with session cards, auto-refresh, notifications.
Created /api/cc-sessions CRUD + public report endpoint.
[2] AdminStack, 2026-02-17 (session)
Section: Decisions
Score: 0.847
Used SWR for auto-refresh instead of polling. API key via HMAC-SHA256.
[3] AdminStack: 2026-02-18 (session)
Section: Next Steps
Score: 0.791
Deploy dashboard, add notification preferences, test mobile view.
SQLite insights (3):
- [decision] Used SWR for auto-refresh instead of polling
- [decision] API key validation via HMAC-SHA256
- [pattern] Next.js App Router + SWR for all dashboard pages.claude/rules/echo.md), /memstack-search slash command, auto-indexed CLAUDE.md context. (Origin: MemStack v3.0-beta, Feb 2026)© cwinvestments, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 2 other files in skills/echo of cwinvestments/memstack.
Open the folder on GitHubat commit 00370ce
Echo next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Echo this skillcwinvestments/memstack | 423 | — | ~1.7k | Automated safety check: Pass | MIT | |
| Hermes Memory Providersmnemosyne-oss/mnemosyne | 3.4k | — | ~1.8k | Automated safety check: Pass | MIT | |
| Open Second Brain Embeddings Setupitechmeat/open-second-brain | 430 | — | ~2.6k | Automated safety check: Warn | MIT | |
| Chroma Vector DatabaseOrchestra-Research/AI-Research-SKILLs | 13k | 8 repos | ~2.3k | Automated safety check: Pass | MIT | |
| Codebase Managementgiancarloerra/SocratiCode | 3.3k | 1 repos | ~1.8k | Automated safety check: Pass | AGPL-3.0 | |
| Pgvector Semantic Searchtimescale/pg-aiguide | 1.9k | 1 repos | ~3.8k | Automated safety check: Pass | Apache-2.0 |
mnemosyne-oss/mnemosyne
Install and configure Mnemosyne as a Hermes Agent memory provider — local SQLite with vector search, episodic consolidation, and temporal knowledge graphs.
itechmeat/open-second-brain
Walks through turning on semantic search in Open Second Brain: embedding key, sqlite-vec extension, first reindex and an optional periodic refresh, starting from o2b search check.
Orchestra-Research/AI-Research-SKILLs
Shows how to store documents and embeddings in Chroma, query them by similarity with metadata filters, and persist them to disk for RAG and semantic search projects.
giancarloerra/SocratiCode
Set up, index, and manage SocratiCode codebase indexing. An agent skill from giancarloerra/SocratiCode.
timescale/pg-aiguide
A skill your agent uses for setting up vector similarity search with pgvector for AI/ML embeddings, RAG applications, or semantic search.
mirkobozzetto/flowflow
Use FlowFlow spaces safely through their scoped MCP server. An agent skill from mirkobozzetto/flowflow.
cwinvestments/memstack
A skill your agent uses when the user says 'SEO audit', 'site audit', 'check SEO', 'audit my site', 'SEO check', 'technical SEO', or is evaluating a website's search engine optimization health, meta…
cwinvestments/memstack
A skill your agent uses when the user says 'add schema', 'schema markup', 'JSON-LD', 'structured data', 'rich results', 'rich snippets', or is adding or fixing schema.org structured data for better…
cwinvestments/memstack
A skill your agent uses when the user says 'tokenstack', 'compression', 'token savings', 'proxy status', or asks about context window usage.
cwinvestments/memstack
A skill your agent uses when the user says 'save diary', 'log session', 'wrapping up', or at end of a productive session.
cwinvestments/memstack
A skill your agent uses when the user says 'dispatch', 'send familiar', 'split task', or needs work split across parallel CC sessions.
cwinvestments/memstack
A skill your agent uses when the user says 'forge this', 'new skill', 'create enchantment', or wants to create a MemStack skill.
Works with
Categories
A skill your agent uses when the user references past sessions, asks 'what did we do', 'do you remember', 'last session', 'recall', or 'continue from'. Echo is an agent skill from cwinvestments/memstack. Use when the user references past sessions, asks 'what did we do', 'do you remember', 'last session', 'recall', or 'continue from'.
Echo fits situations like: the user references past sessions; asks what did we do; do you remember.
Run `npx skills add cwinvestments/memstack --skill echo -a claude-code`. Or copy the skill folder (skills/echo in cwinvestments/memstack) into .claude/skills/echo in your project. Claude Code loads it when a task matches its description.
Run `npx skills add cwinvestments/memstack --skill echo -a codex`. Or copy the skill folder (skills/echo in cwinvestments/memstack) into .agents/skills/echo in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add cwinvestments/memstack --skill echo -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/echo, .gemini/skills/echo, .github/skills/echo and .opencode/skills/echo in your project.
Going by SKILL.md and its folder, Echo needs Python for the scripts in its folder, the command-line tools its instructions call (python) and credentials named OPENAI_API_KEY. Our summary lists: Python 3; A credential in OPENAI_API_KEY.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Echo is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.7k tokens (SKILL.md is roughly 7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Echo: Hermes Memory Providers (mnemosyne-oss/mnemosyne, 3.4k stars), Open Second Brain Embeddings Setup (itechmeat/open-second-brain, 430 stars), Chroma Vector Database (Orchestra-Research/AI-Research-SKILLs, 13k stars) and Codebase Management (giancarloerra/SocratiCode, 3.3k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
cwinvestments (a GitHub user) maintains it in cwinvestments/memstack, which has 423 GitHub stars. The repository holds 87 skills in this directory. The repository was last updated on September 26, 2026.
Source: cwinvestments/memstack on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.