somtum 3.0.0 → 3.1.1

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 (60) hide show
  1. package/README.md +101 -840
  2. package/dist/cli/doctor.d.ts.map +1 -1
  3. package/dist/cli/doctor.js +35 -33
  4. package/dist/cli/doctor.js.map +1 -1
  5. package/dist/cli/first_session_check.js +4 -4
  6. package/dist/cli/first_session_check.js.map +1 -1
  7. package/dist/cli/hook.d.ts.map +1 -1
  8. package/dist/cli/hook.js +1 -1
  9. package/dist/cli/hook.js.map +1 -1
  10. package/dist/cli/index.js +11 -6
  11. package/dist/cli/index.js.map +1 -1
  12. package/dist/cli/init.d.ts.map +1 -1
  13. package/dist/cli/init.js +31 -8
  14. package/dist/cli/init.js.map +1 -1
  15. package/dist/cli/serve.d.ts.map +1 -1
  16. package/dist/cli/serve.js +2 -0
  17. package/dist/cli/serve.js.map +1 -1
  18. package/dist/cli/stats.d.ts +4 -0
  19. package/dist/cli/stats.d.ts.map +1 -1
  20. package/dist/cli/stats.js +72 -43
  21. package/dist/cli/stats.js.map +1 -1
  22. package/dist/config.d.ts +1 -0
  23. package/dist/config.d.ts.map +1 -1
  24. package/dist/config.js +6 -1
  25. package/dist/config.js.map +1 -1
  26. package/dist/core/extractor.d.ts.map +1 -1
  27. package/dist/core/extractor.js +7 -1
  28. package/dist/core/extractor.js.map +1 -1
  29. package/dist/core/ledger.d.ts +28 -0
  30. package/dist/core/ledger.d.ts.map +1 -0
  31. package/dist/core/ledger.js +43 -0
  32. package/dist/core/ledger.js.map +1 -0
  33. package/dist/core/retriever/bm25.d.ts +3 -1
  34. package/dist/core/retriever/bm25.d.ts.map +1 -1
  35. package/dist/core/retriever/bm25.js +41 -6
  36. package/dist/core/retriever/bm25.js.map +1 -1
  37. package/dist/core/schema.d.ts +10 -0
  38. package/dist/core/schema.d.ts.map +1 -1
  39. package/dist/core/schema.js +9 -1
  40. package/dist/core/schema.js.map +1 -1
  41. package/dist/core/session_progress.d.ts +10 -0
  42. package/dist/core/session_progress.d.ts.map +1 -0
  43. package/dist/core/session_progress.js +39 -0
  44. package/dist/core/session_progress.js.map +1 -0
  45. package/dist/db/migrations/006_token_ledger.sql +33 -0
  46. package/dist/hooks/post_session.d.ts +1 -0
  47. package/dist/hooks/post_session.d.ts.map +1 -1
  48. package/dist/hooks/post_session.js +79 -39
  49. package/dist/hooks/post_session.js.map +1 -1
  50. package/dist/hooks/pre_prompt.d.ts.map +1 -1
  51. package/dist/hooks/pre_prompt.js +29 -6
  52. package/dist/hooks/pre_prompt.js.map +1 -1
  53. package/dist/hooks/pre_read.d.ts +16 -2
  54. package/dist/hooks/pre_read.d.ts.map +1 -1
  55. package/dist/hooks/pre_read.js +81 -26
  56. package/dist/hooks/pre_read.js.map +1 -1
  57. package/dist/mcp/tools.d.ts.map +1 -1
  58. package/dist/mcp/tools.js +2 -0
  59. package/dist/mcp/tools.js.map +1 -1
  60. package/package.json +5 -3
@@ -6,33 +6,46 @@ export declare const PreReadPayloadSchema: z.ZodObject<{
6
6
  tool_input: z.ZodOptional<z.ZodObject<{
7
7
  file_path: z.ZodOptional<z.ZodString>;
8
8
  notebook_path: z.ZodOptional<z.ZodString>;
9
+ offset: z.ZodOptional<z.ZodNumber>;
10
+ limit: z.ZodOptional<z.ZodNumber>;
9
11
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
10
12
  file_path: z.ZodOptional<z.ZodString>;
11
13
  notebook_path: z.ZodOptional<z.ZodString>;
14
+ offset: z.ZodOptional<z.ZodNumber>;
15
+ limit: z.ZodOptional<z.ZodNumber>;
12
16
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
13
17
  file_path: z.ZodOptional<z.ZodString>;
14
18
  notebook_path: z.ZodOptional<z.ZodString>;
19
+ offset: z.ZodOptional<z.ZodNumber>;
20
+ limit: z.ZodOptional<z.ZodNumber>;
15
21
  }, z.ZodTypeAny, "passthrough">>>;
16
22
  cwd: z.ZodOptional<z.ZodString>;
17
23
  project_id: z.ZodOptional<z.ZodString>;
24
+ session_id: z.ZodOptional<z.ZodString>;
18
25
  hook_event_name: z.ZodOptional<z.ZodString>;
19
26
  }, "strip", z.ZodTypeAny, {
20
27
  project_id?: string | undefined;
28
+ session_id?: string | undefined;
21
29
  cwd?: string | undefined;
22
30
  hook_event_name?: string | undefined;
23
31
  tool_name?: string | undefined;
24
32
  tool_input?: z.objectOutputType<{
25
33
  file_path: z.ZodOptional<z.ZodString>;
26
34
  notebook_path: z.ZodOptional<z.ZodString>;
35
+ offset: z.ZodOptional<z.ZodNumber>;
36
+ limit: z.ZodOptional<z.ZodNumber>;
27
37
  }, z.ZodTypeAny, "passthrough"> | undefined;
28
38
  }, {
29
39
  project_id?: string | undefined;
40
+ session_id?: string | undefined;
30
41
  cwd?: string | undefined;
31
42
  hook_event_name?: string | undefined;
32
43
  tool_name?: string | undefined;
33
44
  tool_input?: z.objectInputType<{
34
45
  file_path: z.ZodOptional<z.ZodString>;
35
46
  notebook_path: z.ZodOptional<z.ZodString>;
47
+ offset: z.ZodOptional<z.ZodNumber>;
48
+ limit: z.ZodOptional<z.ZodNumber>;
36
49
  }, z.ZodTypeAny, "passthrough"> | undefined;
37
50
  }>;
38
51
  export type PreReadPayload = z.infer<typeof PreReadPayloadSchema>;
@@ -46,10 +59,11 @@ export interface PreReadOptions {
46
59
  export interface PreReadOutput {
47
60
  ok: boolean;
48
61
  gated: boolean;
49
- reason?: 'gating-disabled' | 'wrong-tool' | 'no-path' | 'file-missing' | 'excluded' | 'below-threshold' | 'no-summary' | 'stale-summary';
62
+ reason?: 'gating-disabled' | 'wrong-tool' | 'no-path' | 'targeted-read' | 'no-session' | 'file-missing' | 'excluded' | 'below-threshold' | 'no-summary' | 'stale-summary' | 'reread';
50
63
  hookSpecificOutput?: {
51
64
  hookEventName: 'PreToolUse';
52
- additionalContext: string;
65
+ permissionDecision: 'deny';
66
+ permissionDecisionReason: string;
53
67
  };
54
68
  }
55
69
  export declare function runPreRead(payload: PreReadPayload, opts?: PreReadOptions): PreReadOutput;
@@ -1 +1 @@
1
- {"version":3,"file":"pre_read.d.ts","sourceRoot":"","sources":["../../src/hooks/pre_read.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAU,KAAK,EAAE,EAAE,MAAM,eAAe,CAAC;AAGhD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAIhD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAY/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,MAAM,WAAW,cAAc;IAC7B,EAAE,CAAC,EAAE,EAAE,CAAC;IACR,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAMD,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,OAAO,CAAC;IACZ,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EACH,iBAAiB,GACjB,YAAY,GACZ,SAAS,GACT,cAAc,GACd,UAAU,GACV,iBAAiB,GACjB,YAAY,GACZ,eAAe,CAAC;IACpB,kBAAkB,CAAC,EAAE;QACnB,aAAa,EAAE,YAAY,CAAC;QAC5B,iBAAiB,EAAE,MAAM,CAAC;KAC3B,CAAC;CACH;AAYD,wBAAgB,UAAU,CAAC,OAAO,EAAE,cAAc,EAAE,IAAI,GAAE,cAAmB,GAAG,aAAa,CAmD5F"}
1
+ {"version":3,"file":"pre_read.d.ts","sourceRoot":"","sources":["../../src/hooks/pre_read.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAU,KAAK,EAAE,EAAE,MAAM,eAAe,CAAC;AAKhD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAGhD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAe/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,MAAM,WAAW,cAAc;IAC7B,EAAE,CAAC,EAAE,EAAE,CAAC;IACR,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,OAAO,CAAC;IACZ,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EACH,iBAAiB,GACjB,YAAY,GACZ,SAAS,GACT,eAAe,GACf,YAAY,GACZ,cAAc,GACd,UAAU,GACV,iBAAiB,GACjB,YAAY,GACZ,eAAe,GACf,QAAQ,CAAC;IACb,kBAAkB,CAAC,EAAE;QACnB,aAAa,EAAE,YAAY,CAAC;QAC5B,kBAAkB,EAAE,MAAM,CAAC;QAC3B,wBAAwB,EAAE,MAAM,CAAC;KAClC,CAAC;CACH;AAoDD,wBAAgB,UAAU,CAAC,OAAO,EAAE,cAAc,EAAE,IAAI,GAAE,cAAmB,GAAG,aAAa,CAkE5F"}
@@ -1,77 +1,132 @@
1
- import { join } from 'node:path';
1
+ import { isAbsolute, join, resolve as resolvePath } from 'node:path';
2
+ import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
3
+ import { createHash } from 'node:crypto';
2
4
  import { z } from 'zod';
3
- import { loadConfig, projectDir } from '../config.js';
5
+ import { loadConfig, projectDir, GLOBAL_DIR } from '../config.js';
4
6
  import { openDb } from '../core/db.js';
5
7
  import { resolveProjectId } from '../core/project_id.js';
6
8
  import { FileFingerprintStore, statFile, matchesAnyGlob } from '../core/file_summary.js';
7
- // Claude Code's PreToolUse payload. We only care about file_path-bearing
8
- // tools (Read, Edit). Anything else passes through.
9
+ import { TokenLedger } from '../core/ledger.js';
10
+ import { countTokens } from '../core/tokens.js';
11
+ // Claude Code's PreToolUse payload. Only whole-file Reads are gated.
9
12
  export const PreReadPayloadSchema = z.object({
10
13
  tool_name: z.string().optional(),
11
14
  tool_input: z
12
15
  .object({
13
16
  file_path: z.string().optional(),
14
17
  notebook_path: z.string().optional(),
18
+ offset: z.number().optional(),
19
+ limit: z.number().optional(),
15
20
  })
16
21
  .passthrough()
17
22
  .optional(),
18
23
  cwd: z.string().optional(),
19
24
  project_id: z.string().optional(),
25
+ session_id: z.string().optional(),
20
26
  hook_event_name: z.string().optional(),
21
27
  });
22
- const GATEABLE_TOOLS = new Set(['Read', 'Edit']);
23
- function buildContextMessage(path, summary, tokens) {
24
- return `[somtum-cache] Cached summary of ${path} (~${tokens} tokens in full):
28
+ function gateStatePath(projectId) {
29
+ const prefix = createHash('sha1').update(projectId).digest('hex').slice(0, 12);
30
+ return join(GLOBAL_DIR, 'session', `gate_${prefix}.json`);
31
+ }
32
+ function readGateState(projectId, sessionId) {
33
+ try {
34
+ const p = gateStatePath(projectId);
35
+ if (existsSync(p)) {
36
+ const s = JSON.parse(readFileSync(p, 'utf8'));
37
+ if (s.session_id === sessionId)
38
+ return s;
39
+ }
40
+ }
41
+ catch {
42
+ /* fall through to a fresh state */
43
+ }
44
+ return { session_id: sessionId, offered: [], reread: [] };
45
+ }
46
+ function writeGateState(projectId, state) {
47
+ try {
48
+ mkdirSync(join(GLOBAL_DIR, 'session'), { recursive: true });
49
+ writeFileSync(gateStatePath(projectId), JSON.stringify(state), 'utf8');
50
+ }
51
+ catch {
52
+ // Non-fatal; worst case the next Read is offered a summary again.
53
+ }
54
+ }
55
+ function buildDenyReason(path, summary, tokens) {
56
+ return `[somtum] Summary of ${path} (~${tokens} tokens in full, unchanged since it was summarized):
25
57
  ---
26
58
  ${summary}
27
59
  ---
28
- This summary is fresh as of the current file content. Use it if it answers the question; otherwise still proceed with the Read.`;
60
+ The full read was skipped to save tokens. If you need the exact contents (to edit the file, or for line-level detail), call Read on this file again and it will go through.`;
29
61
  }
62
+ const pass = (reason) => ({
63
+ ok: true,
64
+ gated: false,
65
+ reason,
66
+ });
30
67
  export function runPreRead(payload, opts = {}) {
31
68
  const parsed = PreReadPayloadSchema.parse(payload);
32
69
  const cwd = opts.cwd ?? parsed.cwd ?? process.cwd();
33
70
  const config = opts.config ?? loadConfig({ cwd });
34
71
  if (!config.file_gating.enabled)
35
- return { ok: true, gated: false, reason: 'gating-disabled' };
36
- if (!parsed.tool_name || !GATEABLE_TOOLS.has(parsed.tool_name)) {
37
- return { ok: true, gated: false, reason: 'wrong-tool' };
38
- }
72
+ return pass('gating-disabled');
73
+ if (parsed.tool_name !== 'Read')
74
+ return pass('wrong-tool');
39
75
  const path = parsed.tool_input?.file_path;
40
76
  if (!path)
41
- return { ok: true, gated: false, reason: 'no-path' };
42
- if (matchesAnyGlob(path, config.file_gating.exclude_globs)) {
43
- return { ok: true, gated: false, reason: 'excluded' };
77
+ return pass('no-path');
78
+ if (parsed.tool_input?.offset !== undefined || parsed.tool_input?.limit !== undefined) {
79
+ return pass('targeted-read');
44
80
  }
81
+ // Without a session id there is no way to let a second Read through.
82
+ const sessionId = parsed.session_id;
83
+ if (!sessionId)
84
+ return pass('no-session');
85
+ if (matchesAnyGlob(path, config.file_gating.exclude_globs))
86
+ return pass('excluded');
45
87
  let stat;
46
88
  try {
47
89
  stat = statFile(path, { cwd });
48
90
  }
49
91
  catch {
50
- return { ok: true, gated: false, reason: 'file-missing' };
92
+ return pass('file-missing');
51
93
  }
52
94
  if (!stat)
53
- return { ok: true, gated: false, reason: 'file-missing' };
54
- if (stat.tokens < config.file_gating.min_file_size_tokens) {
55
- return { ok: true, gated: false, reason: 'below-threshold' };
56
- }
95
+ return pass('file-missing');
96
+ if (stat.tokens < config.file_gating.min_file_size_tokens)
97
+ return pass('below-threshold');
57
98
  const projectId = opts.projectId ?? parsed.project_id ?? resolveProjectId(cwd);
58
99
  const ownsDb = opts.db === undefined;
59
100
  const dbPath = opts.dbPath ?? join(projectDir(projectId), 'db.sqlite');
60
101
  const db = opts.db ?? openDb({ path: dbPath });
61
102
  try {
62
- const store = new FileFingerprintStore(db);
63
- const fp = store.get(projectId, path);
103
+ const fp = new FileFingerprintStore(db).get(projectId, path);
64
104
  if (!fp || !fp.summary)
65
- return { ok: true, gated: false, reason: 'no-summary' };
66
- if (fp.content_hash !== stat.contentHash) {
67
- return { ok: true, gated: false, reason: 'stale-summary' };
105
+ return pass('no-summary');
106
+ if (fp.content_hash !== stat.contentHash)
107
+ return pass('stale-summary');
108
+ const ledger = new TokenLedger(db);
109
+ const key = isAbsolute(path) ? path : resolvePath(cwd, path);
110
+ const state = readGateState(projectId, sessionId);
111
+ if (state.offered.includes(key)) {
112
+ if (!state.reread.includes(key)) {
113
+ state.reread.push(key);
114
+ writeGateState(projectId, state);
115
+ ledger.record(projectId, 'file_gate_reread', stat.tokens, sessionId);
116
+ }
117
+ return pass('reread');
68
118
  }
119
+ state.offered.push(key);
120
+ writeGateState(projectId, state);
121
+ ledger.record(projectId, 'file_gate_denied', stat.tokens, sessionId);
122
+ ledger.record(projectId, 'file_gate_summary', countTokens(fp.summary), sessionId);
69
123
  return {
70
124
  ok: true,
71
125
  gated: true,
72
126
  hookSpecificOutput: {
73
127
  hookEventName: 'PreToolUse',
74
- additionalContext: buildContextMessage(path, fp.summary, stat.tokens),
128
+ permissionDecision: 'deny',
129
+ permissionDecisionReason: buildDenyReason(path, fp.summary, stat.tokens),
75
130
  },
76
131
  };
77
132
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pre_read.js","sourceRoot":"","sources":["../../src/hooks/pre_read.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pre_read.js","sourceRoot":"","sources":["../../src/hooks/pre_read.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAchD,eAAO,MAAM,WAAW;;;;;;;;;;;;EAItB,CAAC;AAEH,eAAO,MAAM,QAAQ;;;;;;EAEnB,CAAC;AAEH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;EAOxB,CAAC;AAEH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;EAMtB,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;EAE9B,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;EAE3B,CAAC;AAEH,eAAO,MAAM,WAAW;;;;;;EAEtB,CAAC;AAEH,eAAO,MAAM,cAAc,gDAAe,CAAC;AAE3C,eAAO,MAAM,UAAU,gDAAe,CAAC;AAEvC,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,EAAE,CAAC;IACP,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAElB,QAAQ,CAAC,EAAE,EAAE,CAAC;CACf;AAiBD,wBAAsB,MAAM,CAC1B,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,GACjC,OAAO,CAAC,MAAM,CAAC,CAuDjB;AAKD,eAAO,MAAM,qBAAqB,gEAA2D,CAAC;AAC9F,eAAO,MAAM,sBAAsB,qBAAqB,CAAC;AAEzD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED,wBAAgB,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,GAAG,MAAM,CA+B7E;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,GAAG,MAAM,CA4BvF;AAED,wBAAgB,MAAM,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,GAAG,MAAM,CAqBnF;AAED,wBAAgB,cAAc,CAC5B,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,GACzC,MAAM,CAIR;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,GAAG,MAAM,CAmB7F;AAED,wBAAgB,MAAM,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,GAAG,MAAM,CAInF;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CAQlD;AAED,wBAAgB,KAAK,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CA6B9C"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAehD,eAAO,MAAM,WAAW;;;;;;;;;;;;EAItB,CAAC;AAEH,eAAO,MAAM,QAAQ;;;;;;EAEnB,CAAC;AAEH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;EAOxB,CAAC;AAEH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;EAMtB,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;EAE9B,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;EAE3B,CAAC;AAEH,eAAO,MAAM,WAAW;;;;;;EAEtB,CAAC;AAEH,eAAO,MAAM,cAAc,gDAAe,CAAC;AAE3C,eAAO,MAAM,UAAU,gDAAe,CAAC;AAEvC,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,EAAE,CAAC;IACP,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAElB,QAAQ,CAAC,EAAE,EAAE,CAAC;CACf;AAiBD,wBAAsB,MAAM,CAC1B,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,GACjC,OAAO,CAAC,MAAM,CAAC,CAuDjB;AAKD,eAAO,MAAM,qBAAqB,gEAA2D,CAAC;AAC9F,eAAO,MAAM,sBAAsB,qBAAqB,CAAC;AAEzD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED,wBAAgB,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,GAAG,MAAM,CA+B7E;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,GAAG,MAAM,CA4BvF;AAED,wBAAgB,MAAM,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,GAAG,MAAM,CAqBnF;AAED,wBAAgB,cAAc,CAC5B,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,GACzC,MAAM,CAIR;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,GAAG,MAAM,CAmB7F;AAED,wBAAgB,MAAM,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,GAAG,MAAM,CAInF;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CAQlD;AAED,wBAAgB,KAAK,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CA8B9C"}
package/dist/mcp/tools.js CHANGED
@@ -4,6 +4,7 @@ import { PromptCache, hashPrompt } from '../core/cache.js';
4
4
  import { makeRetriever, strategyAvailable } from '../core/retriever/factory.js';
5
5
  import { RetrievalStrategy, ObservationKind, ObservationScope } from '../core/schema.js';
6
6
  import { RetrievalStatsStore } from '../core/retrieval_stats.js';
7
+ import { TokenLedger } from '../core/ledger.js';
7
8
  import { countTokens } from '../core/tokens.js';
8
9
  import { GLOBAL_PROJECT_ID } from '../config.js';
9
10
  // Shared zod-derived JSON schemas for the six MCP tools.
@@ -252,6 +253,7 @@ export function stats(ctx) {
252
253
  cache_misses: cacheHits.miss_count,
253
254
  cache_hit_rate: cacheHits.hit_rate,
254
255
  retrieval_by_strategy: retrievalBreakdown,
256
+ ledger: new TokenLedger(ctx.db).summary(ctx.projectId),
255
257
  tokens_saved_estimated: saved,
256
258
  tokens_spent_estimated: spent,
257
259
  net_estimated: saved - spent,
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "somtum",
3
- "version": "3.0.0",
4
- "description": "Local-first memory and prompt-cache layer for coding agents: Claude Code and Codex",
3
+ "version": "3.1.1",
4
+ "description": "Long-term memory for Claude Code and Codex that meters every token it spends",
5
5
  "type": "module",
6
6
  "license": "MIT",
7
7
  "author": {
@@ -27,7 +27,7 @@
27
27
  "sqlite",
28
28
  "cli",
29
29
  "embeddings",
30
- "artifical-intelligence",
30
+ "artificial-intelligence",
31
31
  "local-first",
32
32
  "anthropic",
33
33
  "agentic-ai",
@@ -40,6 +40,8 @@
40
40
  "agentic-coding",
41
41
  "long-term-memory",
42
42
  "context-management",
43
+ "token-usage",
44
+ "llm-cost",
43
45
  "knowledge-graph",
44
46
  "semantic-search",
45
47
  "vector-database",