somtum 2.2.0 → 3.0.0

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.
Files changed (81) hide show
  1. package/README.md +66 -78
  2. package/dist/agents/claude_code.d.ts +3 -0
  3. package/dist/agents/claude_code.d.ts.map +1 -0
  4. package/dist/agents/claude_code.js +112 -0
  5. package/dist/agents/claude_code.js.map +1 -0
  6. package/dist/agents/codex.d.ts +3 -0
  7. package/dist/agents/codex.d.ts.map +1 -0
  8. package/dist/agents/codex.js +173 -0
  9. package/dist/agents/codex.js.map +1 -0
  10. package/dist/agents/index.d.ts +7 -0
  11. package/dist/agents/index.d.ts.map +1 -0
  12. package/dist/agents/index.js +24 -0
  13. package/dist/agents/index.js.map +1 -0
  14. package/dist/agents/shared.d.ts +3 -0
  15. package/dist/agents/shared.d.ts.map +1 -0
  16. package/dist/agents/shared.js +18 -0
  17. package/dist/agents/shared.js.map +1 -0
  18. package/dist/agents/types.d.ts +11 -0
  19. package/dist/agents/types.d.ts.map +1 -0
  20. package/dist/agents/types.js +2 -0
  21. package/dist/agents/types.js.map +1 -0
  22. package/dist/cli/doctor.d.ts.map +1 -1
  23. package/dist/cli/doctor.js +41 -56
  24. package/dist/cli/doctor.js.map +1 -1
  25. package/dist/cli/hook.d.ts.map +1 -1
  26. package/dist/cli/hook.js +2 -5
  27. package/dist/cli/hook.js.map +1 -1
  28. package/dist/cli/index.js +3 -1
  29. package/dist/cli/index.js.map +1 -1
  30. package/dist/cli/init.d.ts +19 -0
  31. package/dist/cli/init.d.ts.map +1 -1
  32. package/dist/cli/init.js +40 -31
  33. package/dist/cli/init.js.map +1 -1
  34. package/dist/cli/init_codex.d.ts +12 -0
  35. package/dist/cli/init_codex.d.ts.map +1 -0
  36. package/dist/cli/init_codex.js +53 -0
  37. package/dist/cli/init_codex.js.map +1 -0
  38. package/dist/cli/suggest_claude_md.js.map +1 -1
  39. package/dist/cli/ui.d.ts +1 -1
  40. package/dist/cli/ui.d.ts.map +1 -1
  41. package/dist/cli/ui.js +1 -1
  42. package/dist/cli/ui.js.map +1 -1
  43. package/dist/core/cache.d.ts +5 -0
  44. package/dist/core/cache.d.ts.map +1 -1
  45. package/dist/core/cache.js +17 -0
  46. package/dist/core/cache.js.map +1 -1
  47. package/dist/core/db.d.ts.map +1 -1
  48. package/dist/core/db.js +9 -0
  49. package/dist/core/db.js.map +1 -1
  50. package/dist/core/extractor.d.ts +1 -0
  51. package/dist/core/extractor.d.ts.map +1 -1
  52. package/dist/core/extractor.js +93 -47
  53. package/dist/core/extractor.js.map +1 -1
  54. package/dist/core/llm_backend.d.ts +7 -0
  55. package/dist/core/llm_backend.d.ts.map +1 -0
  56. package/dist/core/llm_backend.js +44 -0
  57. package/dist/core/llm_backend.js.map +1 -0
  58. package/dist/core/memory_files.d.ts.map +1 -1
  59. package/dist/core/memory_files.js +2 -3
  60. package/dist/core/memory_files.js.map +1 -1
  61. package/dist/core/schema.d.ts +14 -4
  62. package/dist/core/schema.d.ts.map +1 -1
  63. package/dist/core/schema.js +4 -0
  64. package/dist/core/schema.js.map +1 -1
  65. package/dist/core/transcript.d.ts.map +1 -1
  66. package/dist/core/transcript.js +14 -77
  67. package/dist/core/transcript.js.map +1 -1
  68. package/dist/dashboard/index.html +1 -1
  69. package/dist/hooks/post_session.d.ts +5 -5
  70. package/dist/hooks/post_session.d.ts.map +1 -1
  71. package/dist/hooks/post_session.js +48 -38
  72. package/dist/hooks/post_session.js.map +1 -1
  73. package/dist/hooks/pre_prompt.d.ts +5 -0
  74. package/dist/hooks/pre_prompt.d.ts.map +1 -1
  75. package/dist/hooks/pre_prompt.js +60 -8
  76. package/dist/hooks/pre_prompt.js.map +1 -1
  77. package/dist/index.d.ts +1 -1
  78. package/dist/index.d.ts.map +1 -1
  79. package/dist/index.js +1 -1
  80. package/dist/index.js.map +1 -1
  81. package/package.json +6 -2
@@ -273,16 +273,22 @@ export type RetrievalStrategy = z.infer<typeof RetrievalStrategy>;
273
273
  export declare const ConfigSchema: z.ZodObject<{
274
274
  extraction: z.ZodDefault<z.ZodObject<{
275
275
  model: z.ZodDefault<z.ZodString>;
276
+ backend: z.ZodDefault<z.ZodEnum<["auto", "anthropic", "claude-cli", "codex-cli"]>>;
277
+ codex_model: z.ZodOptional<z.ZodString>;
276
278
  trigger: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
277
279
  max_observations_per_session: z.ZodDefault<z.ZodNumber>;
278
280
  max_retries: z.ZodDefault<z.ZodNumber>;
279
281
  }, "strip", z.ZodTypeAny, {
280
282
  model: string;
283
+ backend: "auto" | "anthropic" | "claude-cli" | "codex-cli";
281
284
  trigger: string[];
282
285
  max_observations_per_session: number;
283
286
  max_retries: number;
287
+ codex_model?: string | undefined;
284
288
  }, {
285
289
  model?: string | undefined;
290
+ backend?: "auto" | "anthropic" | "claude-cli" | "codex-cli" | undefined;
291
+ codex_model?: string | undefined;
286
292
  trigger?: string[] | undefined;
287
293
  max_observations_per_session?: number | undefined;
288
294
  max_retries?: number | undefined;
@@ -396,12 +402,12 @@ export declare const ConfigSchema: z.ZodObject<{
396
402
  backend: z.ZodDefault<z.ZodString>;
397
403
  remote: z.ZodDefault<z.ZodNullable<z.ZodString>>;
398
404
  }, "strip", z.ZodTypeAny, {
399
- enabled: boolean;
400
405
  backend: string;
406
+ enabled: boolean;
401
407
  remote: string | null;
402
408
  }, {
403
- enabled?: boolean | undefined;
404
409
  backend?: string | undefined;
410
+ enabled?: boolean | undefined;
405
411
  remote?: string | null | undefined;
406
412
  }>>;
407
413
  injection: z.ZodDefault<z.ZodObject<{
@@ -433,9 +439,11 @@ export declare const ConfigSchema: z.ZodObject<{
433
439
  }, "strip", z.ZodTypeAny, {
434
440
  extraction: {
435
441
  model: string;
442
+ backend: "auto" | "anthropic" | "claude-cli" | "codex-cli";
436
443
  trigger: string[];
437
444
  max_observations_per_session: number;
438
445
  max_retries: number;
446
+ codex_model?: string | undefined;
439
447
  };
440
448
  cache: {
441
449
  enabled: boolean;
@@ -470,8 +478,8 @@ export declare const ConfigSchema: z.ZodObject<{
470
478
  redact_patterns: string[];
471
479
  };
472
480
  sync: {
473
- enabled: boolean;
474
481
  backend: string;
482
+ enabled: boolean;
475
483
  remote: string | null;
476
484
  };
477
485
  injection: {
@@ -487,6 +495,8 @@ export declare const ConfigSchema: z.ZodObject<{
487
495
  }, {
488
496
  extraction?: {
489
497
  model?: string | undefined;
498
+ backend?: "auto" | "anthropic" | "claude-cli" | "codex-cli" | undefined;
499
+ codex_model?: string | undefined;
490
500
  trigger?: string[] | undefined;
491
501
  max_observations_per_session?: number | undefined;
492
502
  max_retries?: number | undefined;
@@ -524,8 +534,8 @@ export declare const ConfigSchema: z.ZodObject<{
524
534
  redact_patterns?: string[] | undefined;
525
535
  } | undefined;
526
536
  sync?: {
527
- enabled?: boolean | undefined;
528
537
  backend?: string | undefined;
538
+ enabled?: boolean | undefined;
529
539
  remote?: string | null | undefined;
530
540
  } | undefined;
531
541
  injection?: {
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/core/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,eAAe,mFAO1B,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE9D,eAAO,MAAM,gBAAgB,+CAA6C,CAAC;AAC3E,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEhE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiB5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAajC,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;EAKlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAe3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;EAOhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;EAQhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;EAMrC,CAAC;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAElC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,iBAAiB,sDAAoD,CAAC;AACnF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAElE,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmFvB,CAAC;AACH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAClD,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/core/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,eAAe,mFAO1B,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE9D,eAAO,MAAM,gBAAgB,+CAA6C,CAAC;AAC3E,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEhE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiB5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAajC,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;EAKlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAe3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;EAOhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;EAQhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;EAMrC,CAAC;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAElC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,iBAAiB,sDAAoD,CAAC;AACnF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAElE,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuFvB,CAAC;AACH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAClD,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC"}
@@ -94,6 +94,10 @@ export const ConfigSchema = z.object({
94
94
  extraction: z
95
95
  .object({
96
96
  model: z.string().default('claude-haiku-4-5-20251001'),
97
+ // auto: Anthropic API (key or token) → claude CLI → codex CLI.
98
+ backend: z.enum(['auto', 'anthropic', 'claude-cli', 'codex-cli']).default('auto'),
99
+ // Model for the codex-cli backend. Unset uses Codex's configured default.
100
+ codex_model: z.string().optional(),
97
101
  trigger: z.array(z.string()).default(['SessionEnd', 'PreCompact']),
98
102
  max_observations_per_session: z.number().int().positive().default(10),
99
103
  max_retries: z.number().int().nonnegative().default(1),
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/core/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/core/schema.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"transcript.d.ts","sourceRoot":"","sources":["../../src/core/transcript.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAkED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,CA8BnD;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,CAExD;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,CAEjD;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAMD,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,kBAAkB,EAAE,CA2B9E"}
1
+ {"version":3,"file":"transcript.d.ts","sourceRoot":"","sources":["../../src/core/transcript.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,CAUnD;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,CAExD;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,CAEjD;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAmBD,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,kBAAkB,EAAE,CA2B9E"}
@@ -1,54 +1,5 @@
1
1
  import { readFileSync } from 'node:fs';
2
- const FILE_TOOL_NAMES = new Set(['Read', 'Edit', 'Write', 'NotebookEdit']);
3
- function extractFilesFromBlock(block) {
4
- if (block == null || typeof block !== 'object')
5
- return [];
6
- const b = block;
7
- if (b.type !== 'tool_use' || b.name === undefined)
8
- return [];
9
- if (!FILE_TOOL_NAMES.has(b.name))
10
- return [];
11
- const input = b.input;
12
- const p = input?.file_path ?? input?.notebook_path;
13
- return typeof p === 'string' && p.length > 0 ? [p] : [];
14
- }
15
- function coerceContent(content) {
16
- if (typeof content === 'string')
17
- return { text: content, files: [] };
18
- if (Array.isArray(content)) {
19
- const files = [];
20
- const text = content
21
- .map((block) => {
22
- if (block == null)
23
- return '';
24
- if (typeof block === 'string')
25
- return block;
26
- if (typeof block === 'object' &&
27
- 'text' in block &&
28
- typeof block.text === 'string') {
29
- return block.text;
30
- }
31
- if (typeof block === 'object' &&
32
- 'type' in block &&
33
- block.type === 'tool_use') {
34
- const b = block;
35
- files.push(...extractFilesFromBlock(block));
36
- return `[tool_use ${b.name ?? ''} ${JSON.stringify(b.input ?? {})}]`;
37
- }
38
- if (typeof block === 'object' &&
39
- 'type' in block &&
40
- block.type === 'tool_result') {
41
- const b = block;
42
- return `[tool_result ${coerceContent(b.content).text}]`;
43
- }
44
- return '';
45
- })
46
- .filter((s) => s.length > 0)
47
- .join('\n');
48
- return { text, files };
49
- }
50
- return { text: '', files: [] };
51
- }
2
+ import { detectAgent } from '../agents/index.js';
52
3
  export function parseTranscript(raw) {
53
4
  const trimmed = raw.trim();
54
5
  if (trimmed.length === 0)
@@ -57,31 +8,7 @@ export function parseTranscript(raw) {
57
8
  if (!looksLikeJsonl) {
58
9
  return [{ role: 'user', text: trimmed }];
59
10
  }
60
- const lines = trimmed.split(/\r?\n/).filter((l) => l.trim().length > 0);
61
- const turns = [];
62
- for (const line of lines) {
63
- let obj;
64
- try {
65
- obj = JSON.parse(line);
66
- }
67
- catch {
68
- continue;
69
- }
70
- const role = (obj.message?.role ?? obj.role ?? obj.type ?? 'user');
71
- if (role !== 'user' && role !== 'assistant' && role !== 'system' && role !== 'tool')
72
- continue;
73
- const content = obj.message?.content ?? obj.content;
74
- const { text, files } = coerceContent(content);
75
- if (text.length === 0)
76
- continue;
77
- const turn = { role, text };
78
- if (obj.timestamp)
79
- turn.timestamp = obj.timestamp;
80
- if (files.length > 0)
81
- turn.files_touched = files;
82
- turns.push(turn);
83
- }
84
- return turns;
11
+ return detectAgent(trimmed).parse(trimmed);
85
12
  }
86
13
  export function parseTranscriptFile(path) {
87
14
  return parseTranscript(readFileSync(path, 'utf8'));
@@ -89,15 +16,25 @@ export function parseTranscriptFile(path) {
89
16
  export function renderTurns(turns) {
90
17
  return turns.map((t) => `${t.role}: ${t.text}`).join('\n\n');
91
18
  }
19
+ // Synthetic user turns that must never become cache keys: slash-command
20
+ // wrappers, local command output, and interruption markers.
21
+ function isSyntheticPrompt(text) {
22
+ const t = text.trimStart();
23
+ return (t.startsWith('<command-name>') ||
24
+ t.startsWith('<local-command') ||
25
+ t.startsWith('<system-reminder>') ||
26
+ t.startsWith('[Request interrupted'));
27
+ }
92
28
  // Extract user→assistant turn pairs for cache population. Only pairs where
93
29
  // the user turn is immediately followed by one or more assistant turns are
94
30
  // included. Assistant turns get concatenated so tool-heavy replies still
95
- // attribute to the single user prompt that kicked them off.
31
+ // attribute to the single user prompt that kicked them off. Tool turns
32
+ // (tool results) neither break a pair nor contribute to the response.
96
33
  export function extractPromptResponsePairs(turns) {
97
34
  const pairs = [];
98
35
  for (let i = 0; i < turns.length; i += 1) {
99
36
  const t = turns[i];
100
- if (!t || t.role !== 'user')
37
+ if (!t || t.role !== 'user' || isSyntheticPrompt(t.text))
101
38
  continue;
102
39
  const responses = [];
103
40
  const files = new Set();
@@ -1 +1 @@
1
- {"version":3,"file":"transcript.js","sourceRoot":"","sources":["../../src/core/transcript.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transcript.js","sourceRoot":"","sources":["../../src/core/transcript.ts"],"names":[],"mappings":"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"}
@@ -803,7 +803,7 @@
803
803
  h('div', { class: 'empty-sub' },
804
804
  S.searchQuery
805
805
  ? 'Try a different query or strategy.'
806
- : 'End a Claude session — observations are extracted automatically.'),
806
+ : 'End a Claude Code or Codex session — observations are extracted automatically.'),
807
807
  ));
808
808
  return;
809
809
  }
@@ -7,35 +7,35 @@ export declare const HookPayloadSchema: z.ZodEffects<z.ZodObject<{
7
7
  cwd: z.ZodOptional<z.ZodString>;
8
8
  project_id: z.ZodOptional<z.ZodString>;
9
9
  transcript: z.ZodOptional<z.ZodString>;
10
- transcript_path: z.ZodOptional<z.ZodString>;
10
+ transcript_path: z.ZodOptional<z.ZodNullable<z.ZodString>>;
11
11
  hook_event_name: z.ZodOptional<z.ZodString>;
12
12
  }, "strip", z.ZodTypeAny, {
13
13
  project_id?: string | undefined;
14
14
  session_id?: string | undefined;
15
15
  cwd?: string | undefined;
16
16
  transcript?: string | undefined;
17
- transcript_path?: string | undefined;
17
+ transcript_path?: string | null | undefined;
18
18
  hook_event_name?: string | undefined;
19
19
  }, {
20
20
  project_id?: string | undefined;
21
21
  session_id?: string | undefined;
22
22
  cwd?: string | undefined;
23
23
  transcript?: string | undefined;
24
- transcript_path?: string | undefined;
24
+ transcript_path?: string | null | undefined;
25
25
  hook_event_name?: string | undefined;
26
26
  }>, {
27
27
  project_id?: string | undefined;
28
28
  session_id?: string | undefined;
29
29
  cwd?: string | undefined;
30
30
  transcript?: string | undefined;
31
- transcript_path?: string | undefined;
31
+ transcript_path?: string | null | undefined;
32
32
  hook_event_name?: string | undefined;
33
33
  }, {
34
34
  project_id?: string | undefined;
35
35
  session_id?: string | undefined;
36
36
  cwd?: string | undefined;
37
37
  transcript?: string | undefined;
38
- transcript_path?: string | undefined;
38
+ transcript_path?: string | null | undefined;
39
39
  hook_event_name?: string | undefined;
40
40
  }>;
41
41
  export type HookPayload = z.infer<typeof HookPayloadSchema>;
@@ -1 +1 @@
1
- {"version":3,"file":"post_session.d.ts","sourceRoot":"","sources":["../../src/hooks/post_session.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAU,KAAK,EAAE,EAAE,MAAM,eAAe,CAAC;AAGhD,OAAO,EAKL,KAAK,SAAS,EACf,MAAM,sBAAsB,CAAC;AAmB9B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEhD,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAY1B,CAAC;AAEL,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAQ9E;AAsKD,MAAM,WAAW,UAAU;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,EAAE,CAAC,EAAE,EAAE,CAAC;IACR,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,wBAAsB,cAAc,CAClC,OAAO,EAAE,WAAW,EACpB,IAAI,GAAE,UAAe,GACpB,OAAO,CAAC,SAAS,CAAC,CA+IpB;AAwCD,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CA+B1C"}
1
+ {"version":3,"file":"post_session.d.ts","sourceRoot":"","sources":["../../src/hooks/post_session.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAU,KAAK,EAAE,EAAE,MAAM,eAAe,CAAC;AAGhD,OAAO,EAGL,KAAK,SAAS,EACf,MAAM,sBAAsB,CAAC;AAqB9B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEhD,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAa1B,CAAC;AAEL,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAQ9E;AAyKD,MAAM,WAAW,UAAU;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,EAAE,CAAC,EAAE,EAAE,CAAC;IACR,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,wBAAsB,cAAc,CAClC,OAAO,EAAE,WAAW,EACpB,IAAI,GAAE,UAAe,GACpB,OAAO,CAAC,SAAS,CAAC,CAiJpB;AAwCD,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CA+B1C"}
@@ -1,20 +1,20 @@
1
1
  import { readFileSync, appendFileSync, writeFileSync, mkdirSync } from 'node:fs';
2
2
  import { isAbsolute, join, resolve as resolvePath } from 'node:path';
3
- import { homedir } from 'node:os';
4
3
  import { createHash } from 'node:crypto';
5
4
  import { ulid } from 'ulid';
6
5
  import { z } from 'zod';
7
- import Anthropic from '@anthropic-ai/sdk';
8
- import { loadConfig } from '../config.js';
6
+ import { loadConfig, GLOBAL_DIR } from '../config.js';
9
7
  import { openDb } from '../core/db.js';
10
8
  import { MemoryStore } from '../core/store.js';
11
9
  import { generateIndex } from '../core/index_gen.js';
12
- import { extract, anthropicCaller, claudeCodeCaller, estimateTokensSaved, } from '../core/extractor.js';
10
+ import { extract, estimateTokensSaved, } from '../core/extractor.js';
13
11
  import { resolveProjectId, projectNameFromCwd } from '../core/project_id.js';
14
12
  import { countTokens } from '../core/tokens.js';
13
+ import { pickBackend, callerFor, NO_BACKEND_MESSAGE } from '../core/llm_backend.js';
15
14
  import { projectDir } from '../config.js';
16
15
  import { Bm25Retriever } from '../core/retriever/bm25.js';
17
16
  import { parseTranscript, renderTurns, extractPromptResponsePairs } from '../core/transcript.js';
17
+ import { findTranscript } from '../agents/index.js';
18
18
  import { PromptCache, hashPrompt } from '../core/cache.js';
19
19
  import { fingerprintFiles } from '../core/fingerprint.js';
20
20
  import { ensureEmbedderConfigured } from '../core/embeddings_bootstrap.js';
@@ -28,12 +28,13 @@ export const HookPayloadSchema = z
28
28
  cwd: z.string().optional(),
29
29
  project_id: z.string().optional(),
30
30
  transcript: z.string().optional(),
31
- transcript_path: z.string().optional(),
32
- // Claude Code includes these; we ignore them here but allow passthrough.
31
+ // Codex documents this as possibly null; session_id then locates the file.
32
+ transcript_path: z.string().nullish(),
33
+ // Agents include these; we ignore them here but allow passthrough.
33
34
  hook_event_name: z.string().optional(),
34
35
  })
35
- .refine((v) => v.transcript !== undefined || v.transcript_path !== undefined, {
36
- message: 'Either `transcript` or `transcript_path` is required',
36
+ .refine((v) => v.transcript !== undefined || v.transcript_path || v.session_id, {
37
+ message: 'One of `transcript`, `transcript_path` or `session_id` is required',
37
38
  });
38
39
  export async function readToEnd(stream) {
39
40
  // Claude Code sends the hook payload as a single JSON blob with no
@@ -45,13 +46,13 @@ export async function readToEnd(stream) {
45
46
  return Buffer.concat(chunks).toString('utf8');
46
47
  }
47
48
  function resolveTranscript(payload) {
48
- const raw = payload.transcript !== undefined
49
- ? payload.transcript
50
- : payload.transcript_path !== undefined
51
- ? readFileSync(payload.transcript_path, 'utf8')
52
- : (() => {
53
- throw new Error('Unreachable: schema requires one of transcript | transcript_path');
54
- })();
49
+ let raw = payload.transcript;
50
+ if (raw === undefined) {
51
+ const path = payload.transcript_path ?? (payload.session_id ? findTranscript(payload.session_id) : null);
52
+ if (!path)
53
+ throw new Error(`No transcript found for session ${payload.session_id ?? '?'}`);
54
+ raw = readFileSync(path, 'utf8');
55
+ }
55
56
  const turns = parseTranscript(raw);
56
57
  // If the parser found structured turns, render them compactly for the extractor.
57
58
  // Otherwise fall back to the raw string (plain-text transcript fixtures etc.).
@@ -75,6 +76,7 @@ function populateCache(db, turns, opts) {
75
76
  });
76
77
  inserted += 1;
77
78
  }
79
+ cache.prune({ ttlDays: opts.cache.ttl_days, maxEntries: opts.cache.max_entries });
78
80
  return inserted;
79
81
  }
80
82
  function collectSessionFiles(turns) {
@@ -89,6 +91,8 @@ function collectSessionFiles(turns) {
89
91
  // original behaviour; 3 parallel cuts wall-clock time by ~3× for busy sessions
90
92
  // without saturating the Haiku rate limit.
91
93
  const SUMMARY_CONCURRENCY = 3;
94
+ // The hook is killed at 90s. Leave headroom for a summary batch already in flight.
95
+ const SUMMARY_BUDGET_MS = 55_000;
92
96
  async function populateFileSummaries(db, turns, opts) {
93
97
  const paths = collectSessionFiles(turns);
94
98
  if (paths.length === 0)
@@ -121,6 +125,8 @@ async function populateFileSummaries(db, turns, opts) {
121
125
  // still keeping pressure on the Haiku rate limit manageable.
122
126
  let generated = 0;
123
127
  for (let i = 0; i < work.length; i += SUMMARY_CONCURRENCY) {
128
+ if (opts.deadline !== undefined && Date.now() > opts.deadline)
129
+ break;
124
130
  const batch = work.slice(i, i + SUMMARY_CONCURRENCY);
125
131
  const results = await Promise.allSettled(batch.map(({ path, contents }) => summarizeFile(path, contents, {
126
132
  model: opts.config.extraction.model,
@@ -168,7 +174,7 @@ function writeWarmStart(db, projectId, k = 8) {
168
174
  .join('\n---\n');
169
175
  const context = `[somtum warm-start — context restored after compaction]\n${lines}\n[/somtum warm-start]`;
170
176
  const prefix = createHash('sha1').update(projectId).digest('hex').slice(0, 12);
171
- const dir = join(homedir(), '.somtum', 'warmstart');
177
+ const dir = join(GLOBAL_DIR, 'warmstart');
172
178
  mkdirSync(dir, { recursive: true });
173
179
  // Include a timestamp so concurrent windows on the same project don't clobber each other.
174
180
  const path = join(dir, `ws_${prefix}_${Date.now()}.json`);
@@ -180,6 +186,7 @@ function writeWarmStart(db, projectId, k = 8) {
180
186
  }
181
187
  }
182
188
  export async function runPostSession(payload, opts = {}) {
189
+ const startedAt = Date.now();
183
190
  const parsed = HookPayloadSchema.parse(payload);
184
191
  const cwd = opts.cwd ?? parsed.cwd ?? process.cwd();
185
192
  const config = opts.config ?? loadConfig({ cwd });
@@ -207,19 +214,14 @@ export async function runPostSession(payload, opts = {}) {
207
214
  })()
208
215
  : rawTranscript;
209
216
  const transcriptTokens = countTokens(transcript);
210
- // Prefer the direct API when a key is present (faster, explicit model choice).
211
- // Fall back to the claude CLI so Claude Code subscribers need no separate key.
212
- const caller = opts.caller ??
213
- (() => {
214
- const apiKey = process.env['ANTHROPIC_API_KEY'];
215
- if (apiKey && apiKey.trim().length > 0) {
216
- // 25 s per API call — the SDK default is 600 s which lets a single
217
- // slow Haiku call block the hook process for 10 minutes.
218
- return anthropicCaller(new Anthropic({ apiKey, timeout: 25_000 }));
219
- }
220
- hookLog('[post_session] ANTHROPIC_API_KEY not set — using claude CLI fallback');
221
- return claudeCodeCaller();
222
- })();
217
+ let caller = opts.caller;
218
+ if (!caller) {
219
+ const backend = pickBackend(config);
220
+ if (!backend)
221
+ throw new Error(NO_BACKEND_MESSAGE);
222
+ hookLog(`[post_session] extraction backend: ${backend}`);
223
+ caller = callerFor(backend, config);
224
+ }
223
225
  const outcome = await extract(transcript, caller, {
224
226
  model: config.extraction.model,
225
227
  maxObservations: config.extraction.max_observations_per_session,
@@ -244,7 +246,7 @@ export async function runPostSession(payload, opts = {}) {
244
246
  tokens_saved: saved,
245
247
  tokens_spent: perObsSpend,
246
248
  }, { redactPatterns: config.privacy.redact_patterns });
247
- // Write the human-readable markdown mirror (SPEC.md §5.2).
249
+ // Write the human-readable markdown mirror alongside the SQLite row.
248
250
  try {
249
251
  writeMemoryMarkdown(stored, memDir);
250
252
  }
@@ -258,7 +260,7 @@ export async function runPostSession(payload, opts = {}) {
258
260
  const dedupResult = deduplicateObservations(db, projectId, insertedIds);
259
261
  const tokensSavedTotal = store.totalTokensSaved(projectId);
260
262
  const cacheEntriesAdded = config.cache.enabled
261
- ? populateCache(db, resolved.turns, { cwd, model: config.extraction.model })
263
+ ? populateCache(db, resolved.turns, { cwd, model: config.extraction.model, cache: config.cache })
262
264
  : 0;
263
265
  let embeddingsAdded = 0;
264
266
  if (config.retrieval.embeddings.enabled) {
@@ -271,9 +273,6 @@ export async function runPostSession(payload, opts = {}) {
271
273
  console.error(`[somtum] embedding failed: ${err.message}`);
272
274
  }
273
275
  }
274
- const summariesGenerated = config.file_gating.enabled
275
- ? await populateFileSummaries(db, resolved.turns, { cwd, projectId, config, caller })
276
- : 0;
277
276
  generateIndex({
278
277
  projectName,
279
278
  projectId,
@@ -285,6 +284,17 @@ export async function runPostSession(payload, opts = {}) {
285
284
  if (parsed.hook_event_name === 'PreCompact') {
286
285
  writeWarmStart(db, projectId);
287
286
  }
287
+ // Summaries are optional work: run them last, and only while the hook's
288
+ // time budget lasts, so they can never cost us the index or warm-start.
289
+ const summariesGenerated = config.file_gating.enabled
290
+ ? await populateFileSummaries(db, resolved.turns, {
291
+ cwd,
292
+ projectId,
293
+ config,
294
+ caller,
295
+ deadline: startedAt + SUMMARY_BUDGET_MS,
296
+ })
297
+ : 0;
288
298
  return {
289
299
  projectId,
290
300
  inserted,
@@ -304,7 +314,7 @@ export async function runPostSession(payload, opts = {}) {
304
314
  }
305
315
  function hookLog(msg) {
306
316
  try {
307
- const logPath = join(homedir(), '.somtum', 'hook.log');
317
+ const logPath = join(GLOBAL_DIR, 'hook.log');
308
318
  const ts = new Date().toISOString();
309
319
  appendFileSync(logPath, `${ts} ${msg}\n`, 'utf8');
310
320
  }
@@ -316,9 +326,9 @@ function hookLog(msg) {
316
326
  // Written once — subsequent sessions do not overwrite it.
317
327
  function writeFirstSessionFlag(projectId, inserted) {
318
328
  try {
319
- const dir = join(homedir(), '.somtum', 'projects', projectId);
320
- mkdirSync(dir, { recursive: true });
321
- const flagPath = join(dir, 'first_session.json');
329
+ // Must match the read path in first_session_check.ts (projectDir is
330
+ // SOMTUM_HOME-aware; a hardcoded ~/.somtum diverges when it's set).
331
+ const flagPath = join(projectDir(projectId), 'first_session.json');
322
332
  // Only write if the flag does not already exist.
323
333
  try {
324
334
  const existing = JSON.parse(readFileSync(flagPath, 'utf8'));
@@ -1 +1 @@
1
- {"version":3,"file":"post_session.js","sourceRoot":"","sources":["../../src/hooks/post_session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"post_session.js","sourceRoot":"","sources":["../../src/hooks/post_session.ts"],"names":[],"mappings":"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"}