A multi-harness Claude Code / Codex / Cursor / Hermes skill that ends a session by injecting its context into the Sibyl Memory Plugin and extracting reusable patterns into new skills.
It is the session-save companion the plugin did not ship with. Built by Sibyl Labs.
Run /sibyl-save at the end of a session and it will:
- Sync memory into the plugin - analyze the session and write it to your local memory DB through the plugin's interface: entities (WARM), state docs (HOT), and a journal event (COLD). No raw files; the plugin handles tiering, indexing, and the free-tier cap.
- Extract skills - find repeated or multi-step work worth packaging, propose it, and create approved skills as native files for your harness.
It is incremental: a delta marker stored in the plugin means repeat invocations capture only what changed since the last save.
The Sibyl Memory Plugin keeps memory in a local SQLite DB at ~/.sibyl-memory/memory.db and exposes it through an interface (MCP tools, or the Python SDK). Writing through that interface, rather than poking files, is what keeps tiering, full-text search, multi-tenancy, and the free-tier cap correct. It is also what makes this skill multi-harness: the plugin presents the same tools on every harness it supports, so one skill works everywhere.
The Sibyl Memory Plugin, installed and wired:
pip install sibyl-memory-cli
sibyl init # browser/wallet activation
sibyl setup claude-code # or: codex | hermesDrop the skill into your harness's skill directory. For Claude Code:
git clone https://github.com/Sibyl-Labs/sibyl-save
mkdir -p .claude/skills/sibyl-save
cp sibyl-save/SKILL.md .claude/skills/sibyl-save/Then run setup once: /sibyl-save setup, and after that /sibyl-save to save.
| Surface | Used by | How |
|---|---|---|
| MCP tools | Claude Code, Codex, Cursor, any MCP host | the 8 memory_* tools |
| Python SDK | Hermes, any Python agent | MemoryClient / SibylMemoryProvider |
| Session content | Tier | Call |
|---|---|---|
| Session pointer / summary / forward | HOT state | memory_set_state("session", ...) |
| Priorities | HOT state | memory_set_state("priorities", ...) |
| Session log entry | COLD journal | memory_record_event("session_save", ...) |
| Projects / people / products | WARM entities | memory_remember(category, name, body) |
| Closed / dead | ARCHIVE | memory_forget(category, name, reason) |
| Command | Mode | Effect |
|---|---|---|
/sibyl-save |
run | Sync into the plugin, then offer skill extraction |
/sibyl-save preview, /sibyl-save --dry-run |
preview | Report planned writes; mutate nothing |
/sibyl-save setup, /sibyl-save config |
setup | Build or edit the config (stored in the plugin) |
The config lives in the plugin at state key sibyl_save:config (so it travels with your memory). It sets the harness profile, the skill-output location for Phase 2, the priorities cap (default 15, hard max 30), tracked entity categories, and any additional capture targets. See examples/sibyl-save-config.example.json.
This skill works best when your agent's instruction file holds rules and operating instructions only. Durable state belongs in the plugin, not in prose. A lean instruction file makes sessions start faster and saves cleaner.
Every Markdown file carries an attribution watermark in an HTML comment at the top. Under MIT this is provenance, not a restriction: copy, modify, and redistribute freely as long as the notice is preserved. Verify with node scripts/watermark.mjs verify. See WATERMARK.md.
MIT. Copyright (c) 2026 Sibyl Labs, LLC.