@lossless-claude/lcm 0.3.2 → 0.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,333 @@
1
+ /**
2
+ * CLI help text for lcm.
3
+ *
4
+ * Consumed by bin/lcm.ts:
5
+ * printHelp() — full command reference (lcm --help)
6
+ * printHelp(command) — per-command detail (lcm compact --help)
7
+ */
8
+ const HELP = {
9
+ install: {
10
+ summary: "Set up lcm: register Claude Code hooks, configure the daemon, and connect the MCP server.",
11
+ usage: "lcm install [--dry-run]",
12
+ options: [
13
+ ["--dry-run", "Preview all changes without writing anything"],
14
+ ],
15
+ examples: [
16
+ ["lcm install", "Run the full setup wizard"],
17
+ ["lcm install --dry-run", "Preview what install would do"],
18
+ ],
19
+ },
20
+ uninstall: {
21
+ summary: "Remove lcm hooks and MCP registration.",
22
+ usage: "lcm uninstall [--dry-run]",
23
+ options: [
24
+ ["--dry-run", "Preview removals without writing anything"],
25
+ ],
26
+ examples: [
27
+ ["lcm uninstall", "Remove all lcm integrations"],
28
+ ["lcm uninstall --dry-run", "Preview what uninstall would do"],
29
+ ],
30
+ },
31
+ daemon: {
32
+ summary: "Start the context daemon that stores and processes memory.",
33
+ usage: "lcm daemon start [--detach]",
34
+ options: [
35
+ ["--detach", "Run in the background; saves PID to ~/.lossless-claude/daemon.pid"],
36
+ ],
37
+ examples: [
38
+ ["lcm daemon start --detach", "Start daemon in background (recommended)"],
39
+ ["lcm daemon start", "Start daemon in foreground (for debugging)"],
40
+ ],
41
+ notes: "The daemon runs on port 3737 by default. Configure via ~/.lossless-claude/config.json.",
42
+ },
43
+ status: {
44
+ summary: "Show daemon status, version, uptime, and project memory statistics.",
45
+ usage: "lcm status [--json]",
46
+ options: [
47
+ ["--json", "Output structured JSON (useful for scripting)"],
48
+ ],
49
+ examples: [
50
+ ["lcm status", "Show human-readable status"],
51
+ ["lcm status --json", "Show machine-readable status"],
52
+ ],
53
+ },
54
+ doctor: {
55
+ summary: "Run diagnostics — checks daemon health, hooks, MCP server, and summarizer.",
56
+ usage: "lcm doctor",
57
+ examples: [
58
+ ["lcm doctor", "Run all diagnostic checks"],
59
+ ],
60
+ notes: "Exits with code 1 if any check fails. Integrate into CI or shell startup for early detection.",
61
+ },
62
+ compact: {
63
+ summary: "Compact conversation context into DAG summary nodes.",
64
+ usage: "lcm compact [--all] [--dry-run] [--replay]",
65
+ options: [
66
+ ["--all", "Compact all tracked projects (default: current project only)"],
67
+ ["--dry-run", "Show what would be compacted without writing anything"],
68
+ ["--replay", "Compact sequentially, threading each summary through the prior context"],
69
+ ],
70
+ examples: [
71
+ ["lcm compact", "Compact current project"],
72
+ ["lcm compact --all", "Compact all tracked projects"],
73
+ ["lcm compact --dry-run", "Preview compaction for current project"],
74
+ ["lcm compact --all --replay", "Rebuild all projects with threaded context (slow)"],
75
+ ],
76
+ notes: "When invoked via the PreCompact hook (piped stdin), runs automatically during Claude Code context compaction.",
77
+ },
78
+ import: {
79
+ summary: "Import Claude Code session transcripts into lossless memory.",
80
+ usage: "lcm import [--all] [--verbose] [--dry-run] [--replay]",
81
+ options: [
82
+ ["--all", "Import all projects (default: current project only)"],
83
+ ["--verbose", "Show per-session import detail"],
84
+ ["--dry-run", "Preview without importing"],
85
+ ["--replay", "Replay compaction for each imported session"],
86
+ ],
87
+ examples: [
88
+ ["lcm import", "Import current project sessions"],
89
+ ["lcm import --all", "Import all tracked projects"],
90
+ ["lcm import --all --replay", "Import and compact with threaded context"],
91
+ ["lcm import --dry-run", "Preview what would be imported"],
92
+ ],
93
+ notes: "Reads transcripts from ~/.claude/projects/. Already-imported sessions are skipped.",
94
+ },
95
+ promote: {
96
+ summary: "Scan summaries and promote durable insights to long-term memory.",
97
+ usage: "lcm promote [--all] [--verbose] [--dry-run]",
98
+ options: [
99
+ ["--all", "Promote across all tracked projects (default: current project)"],
100
+ ["--verbose", "Show per-project counts"],
101
+ ["--dry-run", "Preview promotions without writing"],
102
+ ],
103
+ examples: [
104
+ ["lcm promote", "Promote insights for current project"],
105
+ ["lcm promote --all", "Promote across all projects"],
106
+ ["lcm promote --all --verbose", "Show detail for each project"],
107
+ ["lcm promote --dry-run", "Preview what would be promoted"],
108
+ ],
109
+ },
110
+ stats: {
111
+ summary: "Show memory inventory: message counts, compression ratios, and summary statistics.",
112
+ usage: "lcm stats [-v]",
113
+ options: [
114
+ ["-v, --verbose", "Show per-conversation breakdown"],
115
+ ],
116
+ examples: [
117
+ ["lcm stats", "Summary view across all projects"],
118
+ ["lcm stats -v", "Per-conversation detail"],
119
+ ],
120
+ },
121
+ diagnose: {
122
+ summary: "Scan recent sessions for hook failures, MCP disconnects, and stale state.",
123
+ usage: "lcm diagnose [--all] [--days N] [--verbose] [--json]",
124
+ options: [
125
+ ["--all", "Scan all tracked projects (default: current project)"],
126
+ ["--days N", "Scan the last N days (default: 7)"],
127
+ ["--verbose", "Include full event details in output"],
128
+ ["--json", "Output structured JSON"],
129
+ ],
130
+ examples: [
131
+ ["lcm diagnose", "Scan last 7 days for current project"],
132
+ ["lcm diagnose --days 30", "Scan last 30 days"],
133
+ ["lcm diagnose --all --verbose", "Full detail across all projects"],
134
+ ["lcm diagnose --json", "Machine-readable output"],
135
+ ],
136
+ },
137
+ connectors: {
138
+ summary: "Manage connectors for coding agents (Claude Code, Codex, Gemini, etc.).",
139
+ usage: "lcm connectors <list|install|remove|doctor> [options]",
140
+ options: [
141
+ ["list [--format text|json]", "List available agents and installed connectors"],
142
+ ["install <agent> [--type rules|mcp|skill]", "Install a connector for an agent"],
143
+ ["remove <agent> [--type rules|mcp|skill]", "Remove a connector for an agent"],
144
+ ["doctor [agent]", "Check connector health (all agents or one by name)"],
145
+ ],
146
+ examples: [
147
+ ["lcm connectors list", "Show all agents and their connector status"],
148
+ ["lcm connectors list --format json", "Machine-readable connector list"],
149
+ ["lcm connectors install codex", "Install default connector for Codex"],
150
+ ["lcm connectors install codex --type rules", "Install rules-based connector for Codex"],
151
+ ["lcm connectors remove codex", "Remove the Codex connector"],
152
+ ["lcm connectors doctor", "Check health of all connectors"],
153
+ ["lcm connectors doctor codex", "Check Codex connector health"],
154
+ ],
155
+ notes: "Connector types: 'rules' (AGENTS.md injection), 'mcp' (MCP server), 'skill' (skill file).",
156
+ },
157
+ sensitive: {
158
+ summary: "Manage sensitive patterns for automatic redaction before memory storage.",
159
+ usage: "lcm sensitive <list|add|remove|test|purge> [options]",
160
+ options: [
161
+ ["list", "List active redaction patterns (built-in and custom)"],
162
+ [`add "<pattern>" [--global]`, "Add a regex pattern (project-local by default; --global applies to all projects)"],
163
+ [`remove "<pattern>"`, "Remove a custom redaction pattern"],
164
+ [`test "<text>"`, "Test text against active patterns, showing what would be redacted"],
165
+ ["purge [--all] [--yes]", "IRREVERSIBLY delete the project data directory, including stored memory and custom patterns (--all: all projects; --yes: skip confirm)"],
166
+ ],
167
+ examples: [
168
+ ["lcm sensitive list", "Show all active patterns"],
169
+ ['lcm sensitive add "sk-[a-zA-Z0-9]+"', "Add a project-local pattern to redact API keys starting with 'sk-'"],
170
+ ['lcm sensitive add --global "sk-[a-zA-Z0-9]+"', "Add a global pattern that applies across all projects"],
171
+ ['lcm sensitive remove "sk-[a-zA-Z0-9]+"', "Remove that pattern"],
172
+ ['lcm sensitive test "my key is sk-abc123"', "See what gets redacted"],
173
+ ["lcm sensitive purge --yes", "IRREVERSIBLY delete all stored memory and patterns for current project"],
174
+ ["lcm sensitive purge --all --yes", "IRREVERSIBLY delete all stored memory and patterns for ALL projects"],
175
+ ],
176
+ notes: "Built-in patterns cover common secrets (API keys, tokens, passwords). Project patterns are stored in ~/.lossless-claude/projects/<id>/sensitive-patterns.txt; global patterns are stored in config.json. The 'purge' subcommand deletes the entire project data directory (including stored memory) and cannot be undone.",
177
+ },
178
+ mcp: {
179
+ summary: "Start the lcm MCP server (used by Claude Code to expose memory tools).",
180
+ usage: "lcm mcp",
181
+ examples: [
182
+ ["lcm mcp", "Start the MCP server (stdio transport)"],
183
+ ],
184
+ notes: "Normally launched automatically by Claude Code via the mcpServers config. No need to run manually.",
185
+ },
186
+ restore: {
187
+ summary: "Dispatch the restore hook — restores prior context at session start.",
188
+ usage: "lcm restore",
189
+ examples: [
190
+ ["lcm restore", "Restore context for the current session (called by SessionStart hook)"],
191
+ ],
192
+ notes: "Invoked automatically by the Claude Code SessionStart hook. Not intended for direct use.",
193
+ },
194
+ "session-end": {
195
+ summary: "Dispatch the session-end hook — finalizes and stores session memory.",
196
+ usage: "lcm session-end",
197
+ examples: [
198
+ ["lcm session-end", "Finalize session memory (called by Stop hook)"],
199
+ ],
200
+ notes: "Invoked automatically by the Claude Code Stop hook. Not intended for direct use.",
201
+ },
202
+ "user-prompt": {
203
+ summary: "Dispatch the user-prompt hook — records context on each user message.",
204
+ usage: "lcm user-prompt",
205
+ examples: [
206
+ ["lcm user-prompt", "Record user prompt context (called by PostToolUse hook)"],
207
+ ],
208
+ notes: "Invoked automatically by the Claude Code PostToolUse hook. Not intended for direct use.",
209
+ },
210
+ };
211
+ const GROUPS = [
212
+ {
213
+ label: "Setup",
214
+ commands: [
215
+ { name: "install [--dry-run]", summary: "Register hooks, configure daemon, connect MCP" },
216
+ { name: "uninstall [--dry-run]", summary: "Remove hooks and MCP registration" },
217
+ ],
218
+ },
219
+ {
220
+ label: "Runtime",
221
+ commands: [
222
+ { name: "daemon start [--detach]", summary: "Start the context daemon" },
223
+ { name: "status [--json]", summary: "Daemon status and project memory stats" },
224
+ { name: "doctor", summary: "Diagnostics: daemon, hooks, MCP, summarizer" },
225
+ { name: "mcp", summary: "Start the MCP server (stdio transport)" },
226
+ ],
227
+ },
228
+ {
229
+ label: "Memory",
230
+ commands: [
231
+ { name: "compact [--all] [--dry-run] [--replay]", summary: "Compact conversations into DAG summaries" },
232
+ { name: "import [--all] [--verbose] [--dry-run] [--replay]", summary: "Import Claude Code session transcripts" },
233
+ { name: "promote [--all] [--verbose] [--dry-run]", summary: "Promote insights to long-term memory" },
234
+ { name: "stats [-v]", summary: "Memory inventory and compression ratios" },
235
+ { name: "diagnose [--all] [--days N] [--verbose] [--json]", summary: "Scan sessions for hook failures and issues" },
236
+ ],
237
+ },
238
+ {
239
+ label: "Connectors",
240
+ commands: [
241
+ { name: "connectors list [--format text|json]", summary: "List available agents and installed connectors" },
242
+ { name: "connectors install <agent> [--type ...]", summary: "Install connector for a coding agent" },
243
+ { name: "connectors remove <agent> [--type ...]", summary: "Remove connector for a coding agent" },
244
+ { name: "connectors doctor [agent]", summary: "Check connector health" },
245
+ ],
246
+ },
247
+ {
248
+ label: "Sensitive",
249
+ commands: [
250
+ { name: "sensitive list", summary: "List active redaction patterns" },
251
+ { name: "sensitive add <pattern>", summary: "Add a redaction pattern" },
252
+ { name: "sensitive remove <pattern>", summary: "Remove a redaction pattern" },
253
+ { name: "sensitive test <text>", summary: "Test text against active patterns" },
254
+ { name: "sensitive purge [--all] [--yes]", summary: "Purge all project data (stored memory and patterns)" },
255
+ ],
256
+ },
257
+ {
258
+ label: "Hooks (internal)",
259
+ commands: [
260
+ { name: "restore", summary: "SessionStart hook — restore prior context" },
261
+ { name: "session-end", summary: "Stop hook — finalize and store session memory" },
262
+ { name: "user-prompt", summary: "PostToolUse hook — record user prompt context" },
263
+ ],
264
+ },
265
+ ];
266
+ function pad(str, width) {
267
+ return str.length >= width ? str : str + " ".repeat(width - str.length);
268
+ }
269
+ export function printHelp(command) {
270
+ if (command) {
271
+ printCommandHelp(command);
272
+ return;
273
+ }
274
+ const lines = [
275
+ "",
276
+ " lcm — lossless context management for Claude Code",
277
+ "",
278
+ " Usage: lcm <command> [options]",
279
+ "",
280
+ ];
281
+ for (const group of GROUPS) {
282
+ lines.push(` ${group.label}`);
283
+ const maxNameLen = Math.max(...group.commands.map(c => c.name.length));
284
+ for (const cmd of group.commands) {
285
+ lines.push(` ${pad(cmd.name, maxNameLen + 2)}${cmd.summary}`);
286
+ }
287
+ lines.push("");
288
+ }
289
+ lines.push(" Flags");
290
+ lines.push(" -V, --version Show version");
291
+ lines.push(" -h, --help Show this help");
292
+ lines.push("");
293
+ lines.push(" Run 'lcm <command> --help' for options and examples.");
294
+ lines.push("");
295
+ process.stdout.write(lines.join("\n") + "\n");
296
+ }
297
+ function printCommandHelp(command) {
298
+ const h = HELP[command];
299
+ if (!h) {
300
+ process.stderr.write(`Unknown command: ${command}\n`);
301
+ printHelp();
302
+ return;
303
+ }
304
+ const lines = [
305
+ "",
306
+ ` lcm ${command} — ${h.summary}`,
307
+ "",
308
+ ` Usage: ${h.usage}`,
309
+ "",
310
+ ];
311
+ if (h.options && h.options.length > 0) {
312
+ lines.push(" Options:");
313
+ const maxLen = Math.max(...h.options.map(([f]) => f.length));
314
+ for (const [flag, desc] of h.options) {
315
+ lines.push(` ${pad(flag, maxLen + 2)}${desc}`);
316
+ }
317
+ lines.push("");
318
+ }
319
+ if (h.examples && h.examples.length > 0) {
320
+ lines.push(" Examples:");
321
+ const maxLen = Math.max(...h.examples.map(([cmd]) => cmd.length));
322
+ for (const [cmd, desc] of h.examples) {
323
+ lines.push(` ${pad(cmd, maxLen + 2)}${desc}`);
324
+ }
325
+ lines.push("");
326
+ }
327
+ if (h.notes) {
328
+ lines.push(` Note: ${h.notes}`);
329
+ lines.push("");
330
+ }
331
+ process.stdout.write(lines.join("\n") + "\n");
332
+ }
333
+ //# sourceMappingURL=cli-help.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-help.js","sourceRoot":"","sources":["../../src/cli-help.ts"],"names":[],"mappings":"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"}
@@ -52,7 +52,7 @@ type CompactionSummarizeOptions = {
52
52
  isCondensed?: boolean;
53
53
  depth?: number;
54
54
  };
55
- type CompactionSummarizeFn = (text: string, aggressive?: boolean, options?: CompactionSummarizeOptions) => Promise<string>;
55
+ export type CompactionSummarizeFn = (text: string, aggressive?: boolean, options?: CompactionSummarizeOptions) => Promise<string>;
56
56
  /** Format a timestamp as `YYYY-MM-DD HH:mm TZ` for prompt source text. */
57
57
  export declare function formatTimestamp(value: Date, timezone?: string): string;
58
58
  export declare class CompactionEngine {
@@ -82,6 +82,8 @@ export declare class CompactionEngine {
82
82
  summarize: CompactionSummarizeFn;
83
83
  force?: boolean;
84
84
  hardTrigger?: boolean;
85
+ /** Seed context from a prior session's final summary (used in replay import). */
86
+ previousSummaryContent?: string;
85
87
  }): Promise<CompactionResult>;
86
88
  /**
87
89
  * Run a single leaf pass against the oldest compactable raw chunk.
@@ -108,6 +110,8 @@ export declare class CompactionEngine {
108
110
  summarize: CompactionSummarizeFn;
109
111
  force?: boolean;
110
112
  hardTrigger?: boolean;
113
+ /** Seed context from a prior session's final summary (used in replay import). */
114
+ previousSummaryContent?: string;
111
115
  }): Promise<CompactionResult>;
112
116
  /** Compact until under the requested target, running up to maxRounds. */
113
117
  compactUntilUnder(input: {
@@ -240,14 +240,23 @@ export class CompactionEngine {
240
240
  let condensed = false;
241
241
  let createdSummaryId;
242
242
  let level;
243
+ // Seed from caller (cross-session replay) or start fresh
243
244
  let previousSummaryContent;
244
245
  let previousTokens = tokensBefore;
246
+ let isFirstLeafPass = true;
245
247
  // Phase 1: leaf passes over oldest raw chunks outside the protected tail.
246
248
  while (true) {
247
249
  const leafChunk = await this.selectOldestLeafChunk(conversationId);
248
250
  if (leafChunk.items.length === 0) {
249
251
  break;
250
252
  }
253
+ // For first leaf pass: use caller's seed if provided, otherwise resolve from store
254
+ if (isFirstLeafPass) {
255
+ const MAX_PREVIOUS_SUMMARY_LENGTH = 50_000;
256
+ const seedSummary = input.previousSummaryContent ?? (await this.resolvePriorLeafSummaryContext(conversationId, leafChunk.items));
257
+ previousSummaryContent = seedSummary ? seedSummary.slice(0, MAX_PREVIOUS_SUMMARY_LENGTH) : undefined;
258
+ isFirstLeafPass = false;
259
+ }
251
260
  const passTokensBefore = await this.summaryStore.getContextTokenCount(conversationId);
252
261
  const leafResult = await this.leafPass(conversationId, leafChunk.items, summarize, previousSummaryContent);
253
262
  const passTokensAfter = await this.summaryStore.getContextTokenCount(conversationId);
@@ -1 +1 @@
1
- {"version":3,"file":"compaction.js","sourceRoot":"","sources":["../../src/compaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compaction.js","sourceRoot":"","sources":["../../src/compaction.ts"],"names":[],"mappings":"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"}
@@ -42,6 +42,9 @@ export function loadDaemonConfig(configPath, overrides, env) {
42
42
  }
43
43
  catch { }
44
44
  const merged = deepMerge(structuredClone(DEFAULTS), deepMerge(fileConfig, overrides));
45
+ // Migrate legacy provider names from v0.3.0
46
+ if (merged.llm.provider === "claude-cli")
47
+ merged.llm.provider = "claude-process";
45
48
  if (merged.llm.apiKey)
46
49
  merged.llm.apiKey = merged.llm.apiKey.replace(/\$\{(\w+)\}/g, (_, k) => e[k] ?? "");
47
50
  // Env var override: LCM_SUMMARY_PROVIDER takes precedence over config
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/daemon/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/daemon/config.ts"],"names":[],"mappings":"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"}
@@ -71,7 +71,11 @@ export function createCompactHandler(config) {
71
71
  };
72
72
  return async (_req, res, body) => {
73
73
  const input = JSON.parse(body || "{}");
74
- const { session_id, cwd, transcript_path, skip_ingest, client } = input;
74
+ const { session_id, cwd, transcript_path, skip_ingest, client, previous_summary } = input;
75
+ const MAX_PREVIOUS_SUMMARY_LENGTH = 50_000;
76
+ const validatedPreviousSummary = typeof previous_summary === "string"
77
+ ? previous_summary.slice(0, MAX_PREVIOUS_SUMMARY_LENGTH)
78
+ : undefined;
75
79
  if (!session_id || !cwd) {
76
80
  sendJson(res, 400, { error: "session_id and cwd are required" });
77
81
  return;
@@ -148,6 +152,7 @@ export function createCompactHandler(config) {
148
152
  tokenBudget: 200_000,
149
153
  summarize,
150
154
  force: true,
155
+ previousSummaryContent: validatedPreviousSummary,
151
156
  });
152
157
  // Gather stats for the compaction message (always, regardless of actionTaken)
153
158
  const allSummaries = await summaryStore.getSummariesByConversation(conversation.conversationId);
@@ -179,7 +184,16 @@ export function createCompactHandler(config) {
179
184
  promotedCount,
180
185
  })
181
186
  : "No compaction needed.";
182
- return { summary: summaryMsg };
187
+ let latestSummaryContent;
188
+ if (compactResult.createdSummaryId) {
189
+ const summaryRecord = await summaryStore.getSummary(compactResult.createdSummaryId);
190
+ latestSummaryContent = summaryRecord?.content;
191
+ }
192
+ else if (allSummaries.length > 0) {
193
+ // Fall back to the most recent existing summary when no new summary was created
194
+ latestSummaryContent = allSummaries[allSummaries.length - 1]?.content;
195
+ }
196
+ return { summary: summaryMsg, latestSummaryContent };
183
197
  }
184
198
  finally {
185
199
  db.close();