SessionStart System Message & Cleaner Defaults
New Features
-
SessionStart
systemMessagesupport — Hooks can now display user-visible ANSI-colored messages directly in the CLI via a newsystemMessagefield onHookResult. The SessionStart hook uses this to render a colored timeline summary (separate from the markdown context injected for Claude), giving users an at-a-glance view of recent activity every time they start a session. -
"View Observations Live" link — Each session start now appends a clickable
http://localhost:{port}URL so users can jump straight to the live observation viewer.
Performance
- Truly parallel context fetching — The SessionStart handler now uses
Promise.allto fetch both the markdown context (for Claude) and the ANSI-colored timeline (for user display) simultaneously, eliminating the serial fetch overhead.
Defaults Changes
-
Cleaner out-of-box experience — New installs now default to a streamlined context display:
- Read tokens column: hidden (
CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS: false) - Work tokens column: hidden (
CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS: false) - Savings amount: hidden (
CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT: false) - Full observation expansion: disabled (
CLAUDE_MEM_CONTEXT_FULL_COUNT: 0) - Savings percentage remains visible by default
Existing users are unaffected — your
~/.claude-mem/settings.jsonoverrides these defaults. - Read tokens column: hidden (
Technical Details
- Added
systemMessage?: stringtoHookResultinterface (src/cli/types.ts) - Claude Code adapter now forwards
systemMessagein hook output (src/cli/adapters/claude-code.ts) - Context handler refactored for parallel fetch with graceful fallback (
src/cli/handlers/context.ts) - Default settings tuned in
SettingsDefaultsManager(src/shared/SettingsDefaultsManager.ts)