@xandout/libra-harness 0.1.12 → 0.1.13

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 (49) hide show
  1. package/dist/agent.d.ts.map +1 -1
  2. package/dist/agent.js +20 -9
  3. package/dist/agent.js.map +1 -1
  4. package/dist/extras/extensions/code-tools/extension.d.ts +69 -0
  5. package/dist/extras/extensions/code-tools/extension.d.ts.map +1 -0
  6. package/dist/extras/extensions/code-tools/extension.js +83 -0
  7. package/dist/extras/extensions/code-tools/extension.js.map +1 -0
  8. package/dist/extras/extensions/code-tools/extension.json +7 -0
  9. package/dist/extras/extensions/code-tools/extension.test.d.ts +2 -0
  10. package/dist/extras/extensions/code-tools/extension.test.d.ts.map +1 -0
  11. package/dist/extras/extensions/code-tools/extension.test.js +656 -0
  12. package/dist/extras/extensions/code-tools/extension.test.js.map +1 -0
  13. package/dist/extras/extensions/code-tools/index.d.ts +3 -0
  14. package/dist/extras/extensions/code-tools/index.d.ts.map +1 -0
  15. package/dist/extras/extensions/code-tools/index.js +2 -0
  16. package/dist/extras/extensions/code-tools/index.js.map +1 -0
  17. package/dist/extras/extensions/code-tools/tools/find.d.ts +3 -0
  18. package/dist/extras/extensions/code-tools/tools/find.d.ts.map +1 -0
  19. package/dist/extras/extensions/code-tools/tools/find.js +160 -0
  20. package/dist/extras/extensions/code-tools/tools/find.js.map +1 -0
  21. package/dist/extras/extensions/code-tools/tools/grep.d.ts +3 -0
  22. package/dist/extras/extensions/code-tools/tools/grep.d.ts.map +1 -0
  23. package/dist/extras/extensions/code-tools/tools/grep.js +306 -0
  24. package/dist/extras/extensions/code-tools/tools/grep.js.map +1 -0
  25. package/dist/extras/extensions/code-tools/tools/read.d.ts +3 -0
  26. package/dist/extras/extensions/code-tools/tools/read.d.ts.map +1 -0
  27. package/dist/extras/extensions/code-tools/tools/read.js +97 -0
  28. package/dist/extras/extensions/code-tools/tools/read.js.map +1 -0
  29. package/dist/extras/extensions/code-tools/tools/shared.d.ts +14 -0
  30. package/dist/extras/extensions/code-tools/tools/shared.d.ts.map +1 -0
  31. package/dist/extras/extensions/code-tools/tools/shared.js +53 -0
  32. package/dist/extras/extensions/code-tools/tools/shared.js.map +1 -0
  33. package/dist/extras/extensions/code-tools/tools/shell.d.ts +47 -0
  34. package/dist/extras/extensions/code-tools/tools/shell.d.ts.map +1 -0
  35. package/dist/extras/extensions/code-tools/tools/shell.js +492 -0
  36. package/dist/extras/extensions/code-tools/tools/shell.js.map +1 -0
  37. package/dist/extras/extensions/code-tools/tools/todo.d.ts +24 -0
  38. package/dist/extras/extensions/code-tools/tools/todo.d.ts.map +1 -0
  39. package/dist/extras/extensions/code-tools/tools/todo.js +131 -0
  40. package/dist/extras/extensions/code-tools/tools/todo.js.map +1 -0
  41. package/dist/extras/extensions/code-tools/tools/write.d.ts +4 -0
  42. package/dist/extras/extensions/code-tools/tools/write.d.ts.map +1 -0
  43. package/dist/extras/extensions/code-tools/tools/write.js +179 -0
  44. package/dist/extras/extensions/code-tools/tools/write.js.map +1 -0
  45. package/dist/extras/extensions/disk-session/extension.d.ts +5 -0
  46. package/dist/extras/extensions/disk-session/extension.d.ts.map +1 -1
  47. package/dist/extras/extensions/disk-session/extension.js +114 -16
  48. package/dist/extras/extensions/disk-session/extension.js.map +1 -1
  49. package/package.json +5 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"todo.js","sourceRoot":"","sources":["../../../../../src/extras/extensions/code-tools/tools/todo.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { type ToolFactory } from './shared.js';
2
+ export declare const writeTool: ToolFactory;
3
+ export declare const editTool: ToolFactory;
4
+ //# sourceMappingURL=write.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write.d.ts","sourceRoot":"","sources":["../../../../../src/extras/extensions/code-tools/tools/write.ts"],"names":[],"mappings":"AAEA,OAAO,EAA4B,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAGzE,eAAO,MAAM,SAAS,EAAE,WA2DtB,CAAC;AAGH,eAAO,MAAM,QAAQ,EAAE,WA2HrB,CAAC"}
@@ -0,0 +1,179 @@
1
+ import { writeFileSync, readFileSync, existsSync, mkdirSync } from 'node:fs';
2
+ import { dirname } from 'node:path';
3
+ import { makeToolName, getReadSet } from './shared.js';
4
+ // ── write ────────────────────────────────────────────────────────────
5
+ export const writeTool = (cfg) => ({
6
+ name: makeToolName(cfg.toolPrefix, 'write'),
7
+ description: 'Write content to a file, creating it if it does not exist or overwriting it if it does. ' +
8
+ 'You MUST read an existing file before overwriting it — this is enforced. ' +
9
+ 'Use absolute paths. Creates parent directories as needed. ' +
10
+ 'The content parameter is the complete file contents (not a patch).',
11
+ parameters: {
12
+ type: 'object',
13
+ properties: {
14
+ file_path: {
15
+ type: 'string',
16
+ description: 'The absolute path to the file to write.',
17
+ },
18
+ content: {
19
+ type: 'string',
20
+ description: 'The complete content to write to the file.',
21
+ },
22
+ },
23
+ required: ['file_path', 'content'],
24
+ },
25
+ async execute(args, ctx) {
26
+ const filePath = String(args.file_path ?? '');
27
+ if (!filePath) {
28
+ return { toolCallId: '', content: 'Error: file_path is required' };
29
+ }
30
+ const content = String(args.content ?? '');
31
+ // Enforce read-before-overwrite for existing files.
32
+ if (existsSync(filePath)) {
33
+ const readSet = getReadSet(ctx.metadata);
34
+ if (!readSet.has(filePath)) {
35
+ return {
36
+ toolCallId: '',
37
+ content: `Error: You must read "${filePath}" before overwriting it. Use the read tool first.`,
38
+ isError: true,
39
+ };
40
+ }
41
+ }
42
+ try {
43
+ const dir = dirname(filePath);
44
+ if (!existsSync(dir)) {
45
+ mkdirSync(dir, { recursive: true });
46
+ }
47
+ writeFileSync(filePath, content, 'utf-8');
48
+ return {
49
+ toolCallId: '',
50
+ content: `Wrote ${content.length} chars to ${filePath}`,
51
+ };
52
+ }
53
+ catch (err) {
54
+ return {
55
+ toolCallId: '',
56
+ content: `Error writing file: ${err instanceof Error ? err.message : String(err)}`,
57
+ isError: true,
58
+ };
59
+ }
60
+ },
61
+ });
62
+ // ── edit ─────────────────────────────────────────────────────────────
63
+ export const editTool = (cfg) => ({
64
+ name: makeToolName(cfg.toolPrefix, 'edit'),
65
+ description: 'Replace a string in a file with a new string. The old_string must be unique in the file ' +
66
+ 'unless replace_all is true. You MUST read the file before editing it. ' +
67
+ 'Use absolute paths. Preserve indentation exactly — match the file\'s actual content. ' +
68
+ 'The new_string must differ from old_string.',
69
+ parameters: {
70
+ type: 'object',
71
+ properties: {
72
+ file_path: {
73
+ type: 'string',
74
+ description: 'The absolute path to the file to edit.',
75
+ },
76
+ old_string: {
77
+ type: 'string',
78
+ description: 'The exact string to find in the file. Must be unique unless replace_all is true.',
79
+ },
80
+ new_string: {
81
+ type: 'string',
82
+ description: 'The string to replace old_string with. Must differ from old_string.',
83
+ },
84
+ replace_all: {
85
+ type: 'boolean',
86
+ description: 'If true, replace all occurrences of old_string. Default: false.',
87
+ },
88
+ },
89
+ required: ['file_path', 'old_string', 'new_string'],
90
+ },
91
+ async execute(args, ctx) {
92
+ const filePath = String(args.file_path ?? '');
93
+ if (!filePath) {
94
+ return { toolCallId: '', content: 'Error: file_path is required' };
95
+ }
96
+ const oldString = String(args.old_string ?? '');
97
+ const newString = String(args.new_string ?? '');
98
+ const replaceAll = args.replace_all === true;
99
+ if (oldString === newString) {
100
+ return {
101
+ toolCallId: '',
102
+ content: 'Error: new_string must differ from old_string.',
103
+ isError: true,
104
+ };
105
+ }
106
+ if (!existsSync(filePath)) {
107
+ return {
108
+ toolCallId: '',
109
+ content: `File not found: ${filePath}`,
110
+ isError: true,
111
+ };
112
+ }
113
+ // Enforce read-before-edit.
114
+ const readSet = getReadSet(ctx.metadata);
115
+ if (!readSet.has(filePath)) {
116
+ return {
117
+ toolCallId: '',
118
+ content: `Error: You must read "${filePath}" before editing it. Use the read tool first.`,
119
+ isError: true,
120
+ };
121
+ }
122
+ let content;
123
+ try {
124
+ content = readFileSync(filePath, 'utf-8');
125
+ }
126
+ catch (err) {
127
+ return {
128
+ toolCallId: '',
129
+ content: `Error reading file: ${err instanceof Error ? err.message : String(err)}`,
130
+ isError: true,
131
+ };
132
+ }
133
+ // Count occurrences.
134
+ let count = 0;
135
+ let idx = 0;
136
+ while ((idx = content.indexOf(oldString, idx)) !== -1) {
137
+ count++;
138
+ idx += oldString.length;
139
+ }
140
+ if (count === 0) {
141
+ return {
142
+ toolCallId: '',
143
+ content: `Error: old_string not found in ${filePath}. Check for exact whitespace, indentation, and line endings.`,
144
+ isError: true,
145
+ };
146
+ }
147
+ if (count > 1 && !replaceAll) {
148
+ return {
149
+ toolCallId: '',
150
+ content: `Error: old_string appears ${count} times in ${filePath}. Provide more surrounding context to make it unique, or set replace_all to true.`,
151
+ isError: true,
152
+ };
153
+ }
154
+ // Perform the replacement.
155
+ let newContent;
156
+ if (replaceAll) {
157
+ newContent = content.split(oldString).join(newString);
158
+ }
159
+ else {
160
+ newContent = content.replace(oldString, newString);
161
+ }
162
+ try {
163
+ writeFileSync(filePath, newContent, 'utf-8');
164
+ const replaced = replaceAll ? count : 1;
165
+ return {
166
+ toolCallId: '',
167
+ content: `Replaced ${replaced} occurrence${replaced === 1 ? '' : 's'} in ${filePath}`,
168
+ };
169
+ }
170
+ catch (err) {
171
+ return {
172
+ toolCallId: '',
173
+ content: `Error writing file: ${err instanceof Error ? err.message : String(err)}`,
174
+ isError: true,
175
+ };
176
+ }
177
+ },
178
+ });
179
+ //# sourceMappingURL=write.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write.js","sourceRoot":"","sources":["../../../../../src/extras/extensions/code-tools/tools/write.ts"],"names":[],"mappings":"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"}
@@ -107,6 +107,11 @@ export interface DiskSessionConfig {
107
107
  recentChannelMessages?: number;
108
108
  /** Load existing JSONL files into memory on startup. Default: true. */
109
109
  loadOnStartup?: boolean;
110
+ /**
111
+ * Print a summary line when sessions are loaded from disk.
112
+ * Default: true.
113
+ */
114
+ verbose?: boolean;
110
115
  /**
111
116
  * Resolve a {@link SessionIdentity} from turn metadata. Default:
112
117
  * reads `metadata.session` as a `SessionIdentity`, falls back to
@@ -1 +1 @@
1
- {"version":3,"file":"extension.d.ts","sourceRoot":"","sources":["../../../../src/extras/extensions/disk-session/extension.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extension.d.ts","sourceRoot":"","sources":["../../../../src/extras/extensions/disk-session/extension.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EAAW,cAAc,EAAQ,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEtF;;;;;;;;GAQG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC;IAC3D,OAAO,EAAE,cAAc,CAAC;IACxB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qFAAqF;IACrF,EAAE,EAAE,MAAM,CAAC;IACX,uEAAuE;IACvE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2CAA2C;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yEAAyE;IACzE,KAAK,CAAC,EAAE;QACN,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC;QACzB,UAAU,EAAE,MAAM,CAAC;QACnB,8DAA8D;QAC9D,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,+CAA+C;QAC/C,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B;4NACwN;IACxN,GAAG,EAAE,MAAM,CAAC;IACZ,0EAA0E;IAC1E,SAAS,EAAE,MAAM,CAAC;IAClB,iKAAiK;IACjK,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8FAA8F;IAC9F,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,eAAe,GAAG,SAAS,CAAC;CACzE;AAED,MAAM,WAAW,iBAAiB;IAChC,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;OAKG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,uEAAuE;IACvE,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,eAAe,CAAC;CAC5B;AAgBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAM,CAAC,OAAO,UAAU,0BAA0B,CAChD,MAAM,CAAC,EAAE,iBAAiB,GACzB,SAAS,GAAG;IACb,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,aAAa,EAAE,CAAC;IACjD,WAAW,IAAI,MAAM,EAAE,CAAC;IACxB,KAAK,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,IAAI,IAAI,CAAC;IACjB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzF,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QACxD,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAChC,GAAG,IAAI,CAAC;CACV,CAsnBA"}
@@ -83,7 +83,7 @@ export default function createDiskSessionExtension(config) {
83
83
  // Skip corrupt files.
84
84
  }
85
85
  }
86
- if (store.size > 0) {
86
+ if (store.size > 0 && config?.verbose !== false) {
87
87
  console.log(`[disk-session] loaded ${store.size} session(s), ${totalRecords} record(s) from ${dir}`);
88
88
  }
89
89
  }
@@ -268,26 +268,91 @@ export default function createDiskSessionExtension(config) {
268
268
  ctx.turn.messages = [...history, ...ctx.turn.messages];
269
269
  }
270
270
  });
271
- // ── afterLLM: accumulate token usage across iterations ─────
271
+ // ── afterLLM: accumulate token usage + append assistant msg ──
272
272
  // Each LLM call returns usage (prompt/completion tokens). We
273
273
  // accumulate them across all iterations in the turn so the final
274
274
  // assistant record has the total cost.
275
+ //
276
+ // We also append the assistant message (including tool calls) to
277
+ // the session log immediately, so the JSONL file is updated
278
+ // iteration by iteration rather than only at afterTurn. Tool
279
+ // results are appended in the afterTool hook below.
275
280
  agent.hook('afterLLM', 'disk-session', async (ctx) => {
281
+ const identity = identityFromCtx(ctx);
282
+ if (!identity)
283
+ return;
284
+ const { key, messageTs, threadTs } = identity;
276
285
  const usage = ctx.modelResponse?.usage;
277
- if (!usage)
286
+ if (usage) {
287
+ const prev = ctx.turn.metadata['_diskSessionUsage'] ?? { promptTokens: 0, completionTokens: 0, iterations: 0 };
288
+ ctx.turn.metadata['_diskSessionUsage'] = {
289
+ promptTokens: prev.promptTokens + usage.promptTokens,
290
+ completionTokens: prev.completionTokens + usage.completionTokens,
291
+ iterations: prev.iterations + 1,
292
+ ...(usage.cachedPromptTokens && {
293
+ cachedPromptTokens: (prev.cachedPromptTokens ?? 0) + usage.cachedPromptTokens,
294
+ }),
295
+ ...(usage.reasoningTokens && {
296
+ reasoningTokens: (prev.reasoningTokens ?? 0) + usage.reasoningTokens,
297
+ }),
298
+ };
299
+ }
300
+ // ── Incremental append: write the assistant message now ──
301
+ // The agent core pushes the assistant message to turn.messages
302
+ // AFTER afterLLM fires, so we can't read it from there yet.
303
+ // Instead, we build the record from modelResponse.message.
304
+ const modelResponse = ctx.modelResponse;
305
+ if (modelResponse?.message) {
306
+ const sessionMeta = ctx.turn.metadata.sessionMeta;
307
+ const record = {
308
+ ...toRecord(modelResponse.message, messageTs, threadTs),
309
+ ...(sessionMeta ? { meta: sessionMeta } : {}),
310
+ };
311
+ const records = store.get(key) ?? [];
312
+ records.push(record);
313
+ if (records.length > maxRecords) {
314
+ records.splice(0, records.length - maxRecords);
315
+ }
316
+ store.set(key, records);
317
+ appendToFile(key, [record]);
318
+ // Track how many records we've already written so afterTurn
319
+ // doesn't duplicate them.
320
+ const written = ctx.turn.metadata['_diskSessionWritten'] ?? 0;
321
+ ctx.turn.metadata['_diskSessionWritten'] = written + 1;
322
+ }
323
+ });
324
+ // ── afterTool: append tool results incrementally ──────────────
325
+ // Each tool result is written to disk as soon as it completes,
326
+ // so the JSONL file reflects progress in real time.
327
+ agent.hook('afterTool', 'disk-session', async (ctx) => {
328
+ const identity = identityFromCtx(ctx);
329
+ if (!identity)
278
330
  return;
279
- const prev = ctx.turn.metadata['_diskSessionUsage'] ?? { promptTokens: 0, completionTokens: 0, iterations: 0 };
280
- ctx.turn.metadata['_diskSessionUsage'] = {
281
- promptTokens: prev.promptTokens + usage.promptTokens,
282
- completionTokens: prev.completionTokens + usage.completionTokens,
283
- iterations: prev.iterations + 1,
284
- ...(usage.cachedPromptTokens && {
285
- cachedPromptTokens: (prev.cachedPromptTokens ?? 0) + usage.cachedPromptTokens,
286
- }),
287
- ...(usage.reasoningTokens && {
288
- reasoningTokens: (prev.reasoningTokens ?? 0) + usage.reasoningTokens,
289
- }),
331
+ const { key, messageTs, threadTs } = identity;
332
+ const toolResult = ctx.toolResult;
333
+ const toolCall = ctx.toolCall;
334
+ if (!toolResult || !toolCall)
335
+ return;
336
+ const sessionMeta = ctx.turn.metadata.sessionMeta;
337
+ const record = {
338
+ role: 'tool',
339
+ content: toolResult.content,
340
+ toolCallId: toolResult.toolCallId,
341
+ name: toolCall.name,
342
+ ts: messageTs,
343
+ ...(threadTs ? { threadTs } : {}),
344
+ recordedAt: new Date().toISOString(),
345
+ ...(sessionMeta ? { meta: sessionMeta } : {}),
290
346
  };
347
+ const records = store.get(key) ?? [];
348
+ records.push(record);
349
+ if (records.length > maxRecords) {
350
+ records.splice(0, records.length - maxRecords);
351
+ }
352
+ store.set(key, records);
353
+ appendToFile(key, [record]);
354
+ const written = ctx.turn.metadata['_diskSessionWritten'] ?? 0;
355
+ ctx.turn.metadata['_diskSessionWritten'] = written + 1;
291
356
  });
292
357
  // ── afterTurn: append assistant response + tool calls ─────
293
358
  // The user message was already persisted in beforeTurn.
@@ -341,9 +406,42 @@ export default function createDiskSessionExtension(config) {
341
406
  const newMessages = ctx.turn.messages.slice(newStart);
342
407
  // Only persist non-user, non-system messages here.
343
408
  // The user message was already written in beforeTurn.
344
- const filteredMessages = newMessages.filter((m) => m.role !== 'system' && m.role !== 'user');
345
- if (filteredMessages.length === 0)
409
+ let filteredMessages = newMessages.filter((m) => m.role !== 'system' && m.role !== 'user');
410
+ // ── Skip records already written incrementally ───────────
411
+ // afterLLM and afterTool hooks append assistant messages and
412
+ // tool results as they happen. Skip those here to avoid
413
+ // duplicates. Only the final assistant response (with no tool
414
+ // calls) may not have been written yet — it's the one that
415
+ // ends the turn without triggering afterTool.
416
+ const alreadyWritten = ctx.turn.metadata['_diskSessionWritten'] ?? 0;
417
+ delete ctx.turn.metadata['_diskSessionWritten'];
418
+ if (alreadyWritten > 0) {
419
+ filteredMessages = filteredMessages.slice(alreadyWritten);
420
+ }
421
+ if (filteredMessages.length === 0) {
422
+ // All records were already written incrementally by afterLLM
423
+ // and afterTool. Still need to backfill the system prompt on
424
+ // the user record and clean up usage metadata.
425
+ delete ctx.turn.metadata['_diskSessionUsage'];
426
+ // ── Backfill system prompt on the last user record ───────
427
+ const finalSystemPrompt = ctx.turn.systemPrompt;
428
+ if (finalSystemPrompt) {
429
+ const records = store.get(key) ?? [];
430
+ for (let i = records.length - 1; i >= 0; i--) {
431
+ if (records[i].role === 'user') {
432
+ records[i].systemPrompt = finalSystemPrompt;
433
+ break;
434
+ }
435
+ }
436
+ appendToFile(key, [{
437
+ role: 'control',
438
+ content: '',
439
+ recordedAt: new Date().toISOString(),
440
+ systemPrompt: finalSystemPrompt,
441
+ }]);
442
+ }
346
443
  return;
444
+ }
347
445
  // Pull accumulated usage for this turn (set by afterLLM hook).
348
446
  const usage = ctx.turn.metadata['_diskSessionUsage'];
349
447
  delete ctx.turn.metadata['_diskSessionUsage'];
@@ -1 +1 @@
1
- {"version":3,"file":"extension.js","sourceRoot":"","sources":["../../../../src/extras/extensions/disk-session/extension.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extension.js","sourceRoot":"","sources":["../../../../src/extras/extensions/disk-session/extension.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xandout/libra-harness",
3
- "version": "0.1.12",
3
+ "version": "0.1.13",
4
4
  "description": "A small, composable, hookable agent harness. Library-first.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -62,6 +62,10 @@
62
62
  "types": "./dist/extras/extensions/weather-tool/index.d.ts",
63
63
  "import": "./dist/extras/extensions/weather-tool/index.js"
64
64
  },
65
+ "./extras/code-tools": {
66
+ "types": "./dist/extras/extensions/code-tools/index.d.ts",
67
+ "import": "./dist/extras/extensions/code-tools/index.js"
68
+ },
65
69
  "./extras/streaming": {
66
70
  "types": "./dist/extras/extensions/streaming/index.d.ts",
67
71
  "import": "./dist/extras/extensions/streaming/index.js"