Skip to content

Releases: thedotmack/claude-mem

v7.0.2

09 Dec 06:03

Choose a tag to compare

What's Changed

Bug Fixes:

  • Improved auto-start worker functionality for better reliability

Full Changelog: v7.0.1...v7.0.2

v7.0.1 - Worker Startup Fix

09 Dec 05:53

Choose a tag to compare

Bug Fixes

  • Hook Execution: Ensure worker is running at the beginning of all hook files
  • Context Hook: Replace waitForPort with ensureWorkerRunning for better error handling
  • Reliability: Move ensureWorkerRunning to start of all hook functions to ensure worker is started before any logic executes

Technical Changes

  • context-hook.ts: Replace waitForPort logic with ensureWorkerRunning
  • summary-hook.ts: Move ensureWorkerRunning before input validation
  • new-hook.ts: Move ensureWorkerRunning before debug logging
  • save-hook.ts: Move ensureWorkerRunning before SKIP_TOOLS check
  • cleanup-hook.ts: Move ensureWorkerRunning before silentDebug calls

This ensures more reliable worker startup and clearer error messages when the worker fails to start.

v7.0.0 - Major Architectural Refactor

08 Dec 20:17

Choose a tag to compare

Major Architectural Refactor

This major release represents a complete architectural transformation of claude-mem from a monolithic design to a clean, modular HTTP-based architecture.

Breaking Changes

None - Despite being a major version bump due to the scope of changes, this release maintains full backward compatibility. All existing functionality works exactly as before.

What Changed

Hooks → HTTP Clients

  • All 5 lifecycle hooks converted from direct database access to lightweight HTTP clients
  • Each hook reduced from 400-800 lines to ~75 lines
  • Hooks now make simple HTTP calls to the worker service
  • Eliminates SQL duplication across hooks - single source of truth in worker

Worker Service Modularization

  • worker-service.ts reduced from 1600+ lines to clean orchestration layer
  • New route-based HTTP architecture:
    • SessionRoutes - Session lifecycle management
    • DataRoutes - Database queries (observations, sessions, timeline)
    • SearchRoutes - Full-text and semantic search
    • SettingsRoutes - Configuration management
    • ViewerRoutes - UI endpoints

New Service Layer

  • BaseRouteHandler - Centralized error handling, response formatting (used 46x)
  • SessionEventBroadcaster - Semantic SSE event broadcasting
  • SessionCompletionHandler - Consolidated session completion logic
  • SettingsDefaultsManager - Single source of truth for configuration defaults
  • PrivacyCheckValidator - Centralized privacy tag validation
  • FormattingService - Dual-format result rendering
  • TimelineService - Complex markdown timeline formatting
  • SearchManager - Extracted search logic from context generation

Database Improvements

  • Migrated from `bun:sqlite` to `better-sqlite3` for broader compatibility
  • SQL queries moved from route handlers to `SessionStore` for separation of concerns
  • `PaginationHelper` centralizes paginated queries with LIMIT+1 optimization

Testing Infrastructure

  • New comprehensive happy path tests for full session lifecycle
  • Integration tests covering session init, observation capture, search, summaries, cleanup
  • Test helpers and mocks for consistent testing patterns

Type Safety

  • Removed 'as any' casts throughout codebase
  • New `src/types/database.ts` with proper type definitions
  • Enhanced null safety in SearchManager

Stats

  • 60 files changed
  • 8,671 insertions, 5,585 deletions
  • Net: ~3,000 lines of new code (mostly tests and new modular services)

Migration Notes

No migration required! Update and continue using claude-mem as before.

v6.5.3

05 Dec 20:34

Choose a tag to compare

Bug Fixes

  • Windows: Hide console window when spawning child processes (#166)
    • Adds windowsHide: true to spawnSync and execSync calls
    • Prevents empty terminal windows from appearing on Windows when hooks execute

Reference: https://nodejs.org/api/child_process.html (windowsHide option)

v6.5.2

04 Dec 20:41

Choose a tag to compare

What's Changed

  • Upgraded better-sqlite3 from ^11.0.0 to ^12.5.0 for Node.js 25 compatibility

Fixes

  • Resolves compilation errors when installing on Node.js 25.x (#164)

🤖 Generated with Claude Code

v6.5.1: Product Hunt Launch Day UI Updates

04 Dec 18:30

Choose a tag to compare

What's New

  • Decorative Product Hunt announcement in terminal with rocket borders
  • Product Hunt badge in viewer header with theme-aware switching (light/dark)
  • Badge uses separate tracking URL for analytics

Changes

This is a temporary launch day update. The announcement will auto-expire at midnight EST.

v6.5.0: Documentation Overhaul

04 Dec 02:48

Choose a tag to compare

Documentation Overhaul

This release brings comprehensive documentation updates to reflect all features added in v6.4.x and standardize version references across the codebase.

Changes

Updated "What's New" Sections:

  • Highlights v6.4.9 Context Configuration Settings (11 new settings)
  • Highlights v6.4.0 Dual-Tag Privacy System (<private> tags)
  • Highlights v6.3.0 Version Channel (beta toggle in UI)

Key Features Updated:

  • Added 🔒 Privacy Control (<private> tags)
  • Added ⚙️ Context Configuration settings

Clarifications:

  • Fixed lifecycle hook count: 5 lifecycle events with 6 hook scripts
  • Fixed default model: claude-haiku-4-5 (not sonnet)
  • Removed outdated MCP search server references (replaced by skills in v5.4.0)

Files Updated:

  • README.md - version badge, features, What's New, default model
  • docs/public/introduction.mdx - features, hook count, What's New
  • docs/public/installation.mdx - removed MCP reference
  • docs/public/configuration.mdx - default model corrections
  • plugin/skills/mem-search/operations/help.md - version references

📚 Full documentation available at docs.claude-mem.ai

🤖 Generated with Claude Code

v6.4.9: Context Configuration Settings

02 Dec 03:07

Choose a tag to compare

New Features

This release adds comprehensive context configuration settings, giving users fine-grained control over how memory context is injected at session start.

Context Configuration (11 new settings)

Token Economics Display:

  • Control visibility of read tokens, work tokens, savings amount, and savings percentage

Observation Filtering:

  • Filter by observation types (bugfix, feature, refactor, discovery, decision, change)
  • Filter by observation concepts (how-it-works, why-it-exists, what-changed, problem-solution, gotcha, pattern, trade-off)

Display Configuration:

  • Configure number of full observations to include
  • Choose which field to show in full (narrative/facts)
  • Set number of recent sessions to include

Feature Toggles:

  • Control inclusion of last session summary
  • Control inclusion of final messages from prior session

All settings have sensible defaults and are fully backwards compatible.

What's Next

Settings UI enhancements coming very shortly in the next release! We're working on improving the settings interface for even better user experience.

Technical Details

  • 10 files changed (+825, -212)
  • New centralized observation metadata constants
  • Enhanced context hook with SQL-based filtering
  • Worker service settings validation
  • Viewer UI controls for all settings

🤖 Generated with Claude Code

v6.4.1: Join Us for Our First Live AMA! 🎙️

01 Dec 04:29

Choose a tag to compare

Hey there, claude-mem community! 👋

We're doing something new and exciting: our first-ever Live AMA!

🔴 When You'll See Us Live

December 1st-5th, 2025
Daily from 5-7pm EST

During these times, you'll see a live indicator (🔴) when you start a new session, letting you know we're available right now to answer questions, discuss ideas, or just chat about what you're building with claude-mem.

What Changed in This Release

We've added a smart announcement system that:

  • Shows upcoming AMA schedule before/after live hours
  • Displays a live indicator (🔴) when we're actively available
  • Automatically cleans up after the event ends

Why We're Doing This

We want to hear from you! Whether you're:

  • Just getting started with claude-mem
  • A power user with feature ideas
  • Curious about how memory compression works
  • Running into any issues
  • Or just want to say hi 👋

This is your chance to connect directly with the developer (@thedotmack) and fellow community members.

Join the Community

Can't make the live times? No worries! Join our Discord to stay connected:
https://discord.gg/J4wttp9vDu

We're excited to meet you and hear what you're building!


Technical Details

Changed Files:

  • src/hooks/user-message-hook.ts - Added time-aware announcement logic
  • Version bumped across all manifests (6.4.0 → 6.4.1)

Built Artifacts:

  • plugin/scripts/user-message-hook.js - Updated compiled hook

Looking forward to seeing you at the AMA! 🎉

v6.4.0: Dual-Tag Privacy System & Search Improvements

01 Dec 04:10

Choose a tag to compare

🎯 Highlights

This release introduces a powerful dual-tag privacy system that gives you fine-grained control over what gets stored in your observation history, along with significant search API improvements.

✨ New Features

Dual-Tag Privacy System

  • <private> tags: User-level privacy control - wrap any sensitive content to prevent storage in observation history
  • <claude-mem-context> tags: System-level tags for auto-injected observations to prevent recursive storage
  • Tag stripping happens at the hook layer (edge processing) before data reaches worker/database
  • Comprehensive documentation in docs/public/usage/private-tags.mdx

User Experience

  • New inline help message in context hook highlighting the <private> tag feature
  • Improved Community link formatting in startup messages

🔧 Improvements

Search API

  • Simplified search endpoint parameters to eliminate bracket encoding issues (#154)
  • Cleaner API interface for mem-search skill

Performance

  • Added composite index for user prompts lookup optimization
  • Shared tag-stripping utilities in src/utils/tag-stripping.ts

📚 Documentation

  • Updated CLAUDE.md with Privacy Tags section
  • Enhanced private-tags.mdx with implementation details
  • Added comprehensive test coverage for tag stripping

🔗 Related PRs

  • #153: Dual-tag system for meta-observation control
  • #154: Eliminate bracket encoding in search API parameters

💡 Try it now: Wrap sensitive data with <private>your-secret-data</private> in any message to Claude Code!