Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
a90066f
fix(chroma): prevent concurrent write storms (#3462)
ChenglinWei97 Jul 31, 2026
30011c5
feat: replace worker storage with HelixDB
Jul 24, 2026
2125ccb
fix: harden embedded Helix migration runtime
Jul 31, 2026
1a86ec6
fix: validate embedded Helix disk migration
Jul 31, 2026
7347768
test: enforce Helix disk index release gate
Jul 31, 2026
dd68d21
feat(observations): add "sensitive" type with Telegram notification (…
thedotmack Aug 2, 2026
ce92132
chore: bump version to 13.13.0
thedotmack Aug 2, 2026
b368aba
docs: update changelog for v13.13.0
thedotmack Aug 2, 2026
9326fae
feat: add custom mode creator skill (#3487)
thedotmack Aug 3, 2026
f9e3301
chore: bump version to 13.13.1
thedotmack Aug 3, 2026
f85bb28
docs: update changelog for v13.13.1
thedotmack Aug 3, 2026
9d6742f
feat(install): offer CMEM Pro as the first memory provider option (#3…
thedotmack Aug 8, 2026
de4930c
chore: bump version to 13.14.0
thedotmack Aug 8, 2026
5eb4e55
docs: update changelog for v13.14.0
thedotmack Aug 8, 2026
4702c33
fix(install): fetch model pricing live instead of hardcoding it (#3515)
thedotmack Aug 8, 2026
e63222b
merge: sync upstream production 13.14.0
Aug 8, 2026
8a4df59
chore: update Helix TypeScript SDK
Aug 8, 2026
e0c64d1
fix: preserve Helix search parity on disk
Aug 8, 2026
5b90f5e
fix: update embedded Helix BM25 runtime
Aug 9, 2026
3b83807
consolidate direct HelixDB query paths
Aug 11, 2026
08dd3ca
simplify Helix search schema
Aug 11, 2026
d53e3e5
finalize direct HelixDB beta migration
Aug 11, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
"plugins": [
{
"name": "claude-mem",
"version": "13.12.4",
"version": "13.14.0",
"source": "./plugin",
"description": "Persistent memory system for Claude Code - context compression across sessions"
}
Expand Down
2 changes: 1 addition & 1 deletion .claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "claude-mem",
"version": "13.12.4",
"version": "13.14.0",
"description": "Memory compression system for Claude Code - persist context across sessions",
"author": {
"name": "Alex Newman"
Expand Down
2 changes: 1 addition & 1 deletion .codex-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "claude-mem",
"version": "13.12.4",
"version": "13.14.0",
"description": "Memory compression system for Claude Code - persist context across sessions",
"author": {
"name": "Alex Newman",
Expand Down
87 changes: 87 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,93 @@ All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).

## [13.14.0] - 2026-08-08

## CMEM Pro is now the first option in the installer

`npx claude-mem` now leads its provider prompt with **CMEM Pro**, and every option shows what it actually costs per 1,000 observations — so the choice is made on price rather than brand recognition.

```
◆ Which memory provider do you want to use?
│ ● CMEM Pro — observer model, off your plan ($0/1k observations · $30/mo, cloud sync included) Recommended
│ ○ OpenRouter / any OpenAI-compatible key (~$2.73/1k observations, billed to you)
│ ○ Gemini API key (~$3.39/1k observations, billed to you)
│ ○ Use your Anthropic plan (~$8.91/1k observations, billed to your Claude plan)
```

Anthropic moves last: it is the most expensive per observation and it bills your own Claude plan.

### Picking CMEM Pro

Opens `cmem.ai/pro?from=installer`, waits for the `cm_pro_…` key the signup flow hands back, writes it to settings, and points you at the browser to finish cloud sync. The key is pasted by hand — no polling, no device-code handshake.

### No new provider code

`OpenRouterProvider` is already a generic OpenAI-compatible client whose base URL and model both come from settings, so CMEM Pro is four settings writes:

```json
{
"CLAUDE_MEM_PROVIDER": "openrouter",
"CLAUDE_MEM_OPENROUTER_BASE_URL": "https://cmem.ai/api/inference/v1",
"CLAUDE_MEM_OPENROUTER_MODEL": "cmem-observer",
"CLAUDE_MEM_OPENROUTER_API_KEY": "cm_pro_<hex>"
}
```

`'cmem'` is a prompt-only sentinel and never reaches `settings.json` — the worker still only understands `claude | gemini | openrouter`.

### Cost figures

New `src/npx-cli/cmem-pro-costs.ts` derives every label from one constant (`ratePerM × TOKENS_PER_OBSERVATION / 1000`), so re-pricing is a one-line edit. CMEM Pro deliberately carries no computed $/1k — it is a flat subscription that does not bill your tokens.

`CMEM_PRO_ORIGIN` overrides the origin so the whole funnel can be walked against a dev server.

### Notes

- `openBrowser()` is best-effort; the URL is printed first, so headless boxes just get a copy-pasteable link.
- Existing installs are unaffected — this changes the prompt, not any persisted provider.

**Full Changelog**: https://github.com/thedotmack/claude-mem/compare/v13.13.1...v13.14.0

## [13.13.1] - 2026-08-03

## What’s new

- Adds an interactive `/mode-creator` workflow that turns a user’s domain and note-taking needs into a custom claude-mem mode.
- Guides capture-type and tag design, including specialized suggestions when standard code mode is a useful baseline.
- Installs custom modes in durable user storage and reports the active mode in startup context.
- Adds optional tag-triggered Telegram notifications with guided bot configuration and verification.
- Includes mode-authoring and Telegram references, secure helper scripts, documentation, distribution coverage, and runtime tests.

## Compatibility

This patch release has no intended breaking changes.

## [13.13.0] - 2026-08-02

## Sensitive observation type

Adds a ninth observation type to the code mode: **`sensitive`** — information that isn't quite private, but that you wouldn't want leaking into further content development in the wrong context. Internal URLs, unreleased plans, personal details, business metrics, client or partner names.

These fire a **Telegram notification** by default, the same way `security_alert` does.

### Configuring

Notifications are controlled by `CLAUDE_MEM_TELEGRAM_TRIGGER_TYPES` in `~/.claude-mem/settings.json`. The default is now `security_alert,sensitive`. Set the key to any comma-separated list of types, or to an empty string to turn notifications off entirely.

Existing installs are migrated automatically: if your trigger list is still the old default of exactly `security_alert`, it is rewritten to include `sensitive`. A customized list is left untouched. Without this migration the new type would never have notified on any existing install, because a fresh `settings.json` is seeded with every default and persisted values win on load.

If you had deliberately set your trigger list to exactly `security_alert` and want it to stay that way, set it to something explicitly different after upgrading — the migration cannot distinguish that case from the seeded default.

### Also in this release

- **Observer prompt fix.** The `type_guidance` prompt still described "6 options" and never listed `security_alert` or `security_note` from #2084. That string is the only type prose the observer model sees — the per-type `description` fields are never injected into any prompt — so those types have been under-emitted since April. It now enumerates all nine.
- Corpus filters, the OpenClaw detailed feed, and the weekly-digests legend all recognize the new type.
- BMP-safe fallback for the new emoji, so injected context can't contribute a surrogate pair (the #2787 failure class).
- Built plugin artifacts are regenerated, picking up the chroma concurrent-write fix from #3462 that had not yet been built into the shipped bundles.

**Full changelog**: https://github.com/thedotmack/claude-mem/compare/v13.12.4...v13.13.0

## [13.12.4] - 2026-07-23

Four root-cause fixes from the post-v13.12.2 issue batch.
Expand Down
12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -207,8 +207,8 @@ The installer handles dependencies, plugin setup, AI provider configuration, wor
- **[Hooks Architecture](https://docs.claude-mem.ai/hooks-architecture)** - How Claude-Mem uses lifecycle hooks
- **[Hooks Reference](https://docs.claude-mem.ai/architecture/hooks)** - 7 hook scripts explained
- **[Worker Service](https://docs.claude-mem.ai/architecture/worker-service)** - HTTP API & Bun management
- **[Database](https://docs.claude-mem.ai/architecture/database)** - SQLite schema & FTS5 search
- **[Search Architecture](https://docs.claude-mem.ai/architecture/search-architecture)** - Hybrid search with Chroma vector database
- **[Database](https://docs.claude-mem.ai/architecture/database)** - HelixDB graph, vector, and text storage
- **[Search Architecture](https://docs.claude-mem.ai/architecture/search-architecture)** - HelixDB vector search with local MiniLM embeddings

### Configuration & Development

Expand All @@ -226,9 +226,9 @@ The installer handles dependencies, plugin setup, AI provider configuration, wor
1. **5 Lifecycle Hooks** - SessionStart, UserPromptSubmit, PostToolUse, Stop, SessionEnd (6 hook scripts)
2. **Smart Install** - Cached dependency checker (pre-hook script, not a lifecycle hook)
3. **Worker Service** - Local HTTP API with web viewer UI and search endpoints, managed by Bun
4. **SQLite Database** - Stores sessions, observations, summaries
4. **HelixDB** - Stores sessions, observations, summaries, graph relationships, and search indexes
5. **mem-search Skill** - Natural language queries with progressive disclosure
6. **Chroma Vector Database** - Hybrid semantic + keyword search for intelligent context retrieval
6. **Local MiniLM Embedder** - Chroma's pinned CPU ONNX model supplies query and document vectors

See [Architecture Overview](https://docs.claude-mem.ai/architecture/overview) for details.

Expand Down Expand Up @@ -288,7 +288,7 @@ for the branch flow and non-stable run instructions.
- **Claude Code**: Latest version with plugin support
- **Bun**: JavaScript runtime and process manager (auto-installed if missing)
- **uv**: Python package manager for vector search (auto-installed if missing)
- **SQLite 3**: For persistent storage (bundled)
- **HelixDB embedded runtime 0.3.2**: Installed with the plugin; no database server is required

---
### Windows Setup Notes
Expand All @@ -305,7 +305,7 @@ Make sure Node.js and npm are installed and added to your PATH. Download the lat

## Configuration

Settings are managed in `~/.claude-mem/settings.json` (auto-created with defaults on first run). Configure AI model, worker port, data directory, log level, and context injection settings.
Settings are managed in `~/.claude-mem/settings.json` (auto-created with defaults on first run). The worker opens HelixDB directly in-process and persists it under `~/.claude-mem/helix/`; no Helix server, Docker container, URL, or API key is required.

See the **[Configuration Guide](https://docs.claude-mem.ai/configuration)** for all available settings and examples.

Expand Down
Loading