@monotykamary/localterm-server 2.66.8 → 2.66.10

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 (125) hide show
  1. package/dist/agent-git-status.d.ts +3 -0
  2. package/dist/agent-git-status.d.ts.map +1 -0
  3. package/dist/agent-git-status.js +46 -0
  4. package/dist/agent-git-status.js.map +1 -0
  5. package/dist/agent-log-utils.d.ts +18 -0
  6. package/dist/agent-log-utils.d.ts.map +1 -0
  7. package/dist/agent-log-utils.js +123 -0
  8. package/dist/agent-log-utils.js.map +1 -0
  9. package/dist/agent-models.d.ts +4 -0
  10. package/dist/agent-models.d.ts.map +1 -0
  11. package/dist/agent-models.js +100 -0
  12. package/dist/agent-models.js.map +1 -0
  13. package/dist/agent-runner.d.ts +3 -5
  14. package/dist/agent-runner.d.ts.map +1 -1
  15. package/dist/agent-runner.js +8 -522
  16. package/dist/agent-runner.js.map +1 -1
  17. package/dist/agent-session-reader.d.ts +3 -0
  18. package/dist/agent-session-reader.d.ts.map +1 -0
  19. package/dist/agent-session-reader.js +113 -0
  20. package/dist/agent-session-reader.js.map +1 -0
  21. package/dist/build-pty-environment.d.ts +8 -0
  22. package/dist/build-pty-environment.d.ts.map +1 -0
  23. package/dist/build-pty-environment.js +44 -0
  24. package/dist/build-pty-environment.js.map +1 -0
  25. package/dist/caffeinate-automatic-detector.d.ts +57 -0
  26. package/dist/caffeinate-automatic-detector.d.ts.map +1 -0
  27. package/dist/caffeinate-automatic-detector.js +275 -0
  28. package/dist/caffeinate-automatic-detector.js.map +1 -0
  29. package/dist/caffeinate-battery-guard.d.ts +35 -0
  30. package/dist/caffeinate-battery-guard.d.ts.map +1 -0
  31. package/dist/caffeinate-battery-guard.js +190 -0
  32. package/dist/caffeinate-battery-guard.js.map +1 -0
  33. package/dist/caffeinate-manager.d.ts +5 -31
  34. package/dist/caffeinate-manager.d.ts.map +1 -1
  35. package/dist/caffeinate-manager.js +55 -400
  36. package/dist/caffeinate-manager.js.map +1 -1
  37. package/dist/cdp/cdp-client.d.ts +4 -70
  38. package/dist/cdp/cdp-client.d.ts.map +1 -1
  39. package/dist/cdp/cdp-client.js +58 -418
  40. package/dist/cdp/cdp-client.js.map +1 -1
  41. package/dist/cdp/cdp-connection.d.ts +72 -0
  42. package/dist/cdp/cdp-connection.d.ts.map +1 -0
  43. package/dist/cdp/cdp-connection.js +272 -0
  44. package/dist/cdp/cdp-connection.js.map +1 -0
  45. package/dist/cdp/constants.d.ts +6 -0
  46. package/dist/cdp/constants.d.ts.map +1 -0
  47. package/dist/cdp/constants.js +9 -0
  48. package/dist/cdp/constants.js.map +1 -0
  49. package/dist/cdp/target-registry.d.ts +41 -0
  50. package/dist/cdp/target-registry.d.ts.map +1 -0
  51. package/dist/cdp/target-registry.js +118 -0
  52. package/dist/cdp/target-registry.js.map +1 -0
  53. package/dist/constants.d.ts +2 -0
  54. package/dist/constants.d.ts.map +1 -1
  55. package/dist/constants.js +2 -0
  56. package/dist/constants.js.map +1 -1
  57. package/dist/git-branch-metadata.d.ts +11 -0
  58. package/dist/git-branch-metadata.d.ts.map +1 -0
  59. package/dist/git-branch-metadata.js +85 -0
  60. package/dist/git-branch-metadata.js.map +1 -0
  61. package/dist/git-diff-cache.d.ts +13 -0
  62. package/dist/git-diff-cache.d.ts.map +1 -0
  63. package/dist/git-diff-cache.js +32 -0
  64. package/dist/git-diff-cache.js.map +1 -0
  65. package/dist/git-diff-parser.d.ts +15 -0
  66. package/dist/git-diff-parser.d.ts.map +1 -0
  67. package/dist/git-diff-parser.js +196 -0
  68. package/dist/git-diff-parser.js.map +1 -0
  69. package/dist/git-diff-service.d.ts +10 -0
  70. package/dist/git-diff-service.d.ts.map +1 -0
  71. package/dist/git-diff-service.js +395 -0
  72. package/dist/git-diff-service.js.map +1 -0
  73. package/dist/git-diff.d.ts +8 -41
  74. package/dist/git-diff.d.ts.map +1 -1
  75. package/dist/git-diff.js +5 -944
  76. package/dist/git-diff.js.map +1 -1
  77. package/dist/github-pr.d.ts +32 -0
  78. package/dist/github-pr.d.ts.map +1 -0
  79. package/dist/github-pr.js +266 -0
  80. package/dist/github-pr.js.map +1 -0
  81. package/dist/pi-binary-resolver.d.ts +6 -0
  82. package/dist/pi-binary-resolver.d.ts.map +1 -0
  83. package/dist/pi-binary-resolver.js +70 -0
  84. package/dist/pi-binary-resolver.js.map +1 -0
  85. package/dist/pi-rpc-client.d.ts +14 -0
  86. package/dist/pi-rpc-client.d.ts.map +1 -0
  87. package/dist/pi-rpc-client.js +87 -0
  88. package/dist/pi-rpc-client.js.map +1 -0
  89. package/dist/session-client-hub.d.ts +57 -0
  90. package/dist/session-client-hub.d.ts.map +1 -0
  91. package/dist/session-client-hub.js +435 -0
  92. package/dist/session-client-hub.js.map +1 -0
  93. package/dist/session-command-executor.d.ts +14 -0
  94. package/dist/session-command-executor.d.ts.map +1 -0
  95. package/dist/session-command-executor.js +207 -0
  96. package/dist/session-command-executor.js.map +1 -0
  97. package/dist/session-git-event-bridge.d.ts +16 -0
  98. package/dist/session-git-event-bridge.d.ts.map +1 -0
  99. package/dist/session-git-event-bridge.js +56 -0
  100. package/dist/session-git-event-bridge.js.map +1 -0
  101. package/dist/session-lifecycle-policy.d.ts +15 -0
  102. package/dist/session-lifecycle-policy.d.ts.map +1 -0
  103. package/dist/session-lifecycle-policy.js +105 -0
  104. package/dist/session-lifecycle-policy.js.map +1 -0
  105. package/dist/session-manager.d.ts +11 -42
  106. package/dist/session-manager.d.ts.map +1 -1
  107. package/dist/session-manager.js +72 -987
  108. package/dist/session-manager.js.map +1 -1
  109. package/dist/session-output-coordinator.d.ts +21 -0
  110. package/dist/session-output-coordinator.d.ts.map +1 -0
  111. package/dist/session-output-coordinator.js +134 -0
  112. package/dist/session-output-coordinator.js.map +1 -0
  113. package/dist/session-output-transport.d.ts +22 -0
  114. package/dist/session-output-transport.d.ts.map +1 -0
  115. package/dist/session-output-transport.js +160 -0
  116. package/dist/session-output-transport.js.map +1 -0
  117. package/dist/session.d.ts +0 -4
  118. package/dist/session.d.ts.map +1 -1
  119. package/dist/session.js +11 -258
  120. package/dist/session.js.map +1 -1
  121. package/dist/shell-hook-builder.d.ts +16 -0
  122. package/dist/shell-hook-builder.d.ts.map +1 -0
  123. package/dist/shell-hook-builder.js +230 -0
  124. package/dist/shell-hook-builder.js.map +1 -0
  125. package/package.json +1 -1
@@ -1,129 +1,13 @@
1
- import { spawn, spawnSync } from "node:child_process";
1
+ import { spawn } from "node:child_process";
2
2
  import fs from "node:fs";
3
- import os from "node:os";
4
3
  import path from "node:path";
5
- import { AUTOMATION_AGENT_RUN_TIMEOUT_MS, AUTOMATION_SESSION_TOOL_MAX_BYTES, AUTOMATION_SESSION_TOOL_MAX_LINES, MAX_AUTOMATION_CHANGED_FILES, MAX_AUTOMATION_FINDINGS_LENGTH, MAX_AUTOMATION_LOG_ENTRIES, MAX_AUTOMATION_LOG_LENGTH, MAX_AUTOMATION_TOOL_INPUT_LENGTH, MAX_AUTOMATION_TOOL_RESULT_LENGTH, } from "./constants.js";
6
- const FINDINGS_TRUNCATION_MARKER = "\n…[truncated]";
7
- const LOG_TRUNCATION_MARKER = "\n…[log truncated]";
8
- let cachedPi;
9
- const pathWithoutShims = (pathVar, shimsDir) => pathVar
10
- .split(path.delimiter)
11
- .filter((dir) => dir.length > 0 && path.resolve(dir) !== path.resolve(shimsDir))
12
- .join(path.delimiter);
13
- const scanPathForPi = (pathVar, shimsDir) => {
14
- for (const dir of pathVar.split(path.delimiter)) {
15
- if (dir.length === 0 || path.resolve(dir) === path.resolve(shimsDir))
16
- continue;
17
- const candidate = path.join(dir, "pi");
18
- try {
19
- if (fs.statSync(candidate).isFile()) {
20
- fs.accessSync(candidate, fs.constants.X_OK);
21
- return candidate;
22
- }
23
- }
24
- catch {
25
- // not present or not executable in this dir
26
- }
27
- }
28
- return null;
29
- };
30
- // Fallback: the user's login interactive shell PATH, which sources the RC
31
- // that adds pi's directory (e.g. ~/.npm-global/bin via ~/.zshrc). The localterm
32
- // shims dir is typically first in the login PATH, so the caller scans the
33
- // result minus the shims dir to land on the real binary, not the
34
- // secret-injecting shim. The PATH is printed with delimiters to survive shell
35
- // hooks like OSC-7 working-directory reports that write to stdout. stdin is
36
- // empty so an interactive shell with `-c` runs the command and exits.
37
- const resolveLoginPath = () => {
38
- const shell = process.env.SHELL || "/bin/zsh";
39
- try {
40
- const result = spawnSync(shell, ["-l", "-i", "-c", "printf 'PIPATHBEGIN%sPIPATHEND' \"$PATH\""], {
41
- encoding: "utf8",
42
- input: "",
43
- timeout: 10_000,
44
- });
45
- const stdout = result.stdout || "";
46
- const start = stdout.indexOf("PIPATHBEGIN");
47
- const end = stdout.indexOf("PIPATHEND", start === -1 ? 0 : start);
48
- if (start === -1 || end === -1)
49
- return "";
50
- return stdout.slice(start + "PIPATHBEGIN".length, end);
51
- }
52
- catch {
53
- return "";
54
- }
55
- };
56
- const resolvePiAndPath = (shimsDir, override) => {
57
- if (override)
58
- return { binary: override, pathEnv: process.env.PATH ?? "" };
59
- if (cachedPi)
60
- return cachedPi;
61
- const daemonPath = process.env.PATH ?? "";
62
- const fromDaemon = scanPathForPi(daemonPath, shimsDir);
63
- if (fromDaemon) {
64
- cachedPi = { binary: fromDaemon, pathEnv: pathWithoutShims(daemonPath, shimsDir) };
65
- return cachedPi;
66
- }
67
- const loginPath = resolveLoginPath();
68
- const fromLogin = scanPathForPi(loginPath, shimsDir);
69
- const pathEnv = pathWithoutShims(loginPath || daemonPath, shimsDir);
70
- if (fromLogin)
71
- cachedPi = { binary: fromLogin, pathEnv };
72
- return { binary: fromLogin, pathEnv };
73
- };
74
- const parseGitStatus = (output) => {
75
- const set = new Set();
76
- for (const line of output.split("\n")) {
77
- if (line.length < 3)
78
- continue;
79
- let filePath = line.slice(3);
80
- const arrow = filePath.indexOf(" -> ");
81
- if (arrow !== -1)
82
- filePath = filePath.slice(arrow + 4);
83
- if (filePath.startsWith('"') && filePath.endsWith('"')) {
84
- filePath = filePath.slice(1, -1);
85
- }
86
- if (filePath.length > 0)
87
- set.add(filePath);
88
- }
89
- return set;
90
- };
91
- const gitStatusSet = (cwd) => {
92
- try {
93
- const result = spawnSync("git", ["-C", cwd, "status", "--porcelain"], {
94
- encoding: "utf8",
95
- timeout: 5000,
96
- });
97
- if (result.error || result.status !== 0)
98
- return new Set();
99
- return parseGitStatus(result.stdout);
100
- }
101
- catch {
102
- return new Set();
103
- }
104
- };
105
- const computeChangedFiles = (before, cwd) => {
106
- const after = gitStatusSet(cwd);
107
- const changed = [];
108
- for (const filePath of after)
109
- if (!before.has(filePath))
110
- changed.push(filePath);
111
- for (const filePath of before)
112
- if (!after.has(filePath))
113
- changed.push(filePath);
114
- changed.sort();
115
- return changed.slice(0, MAX_AUTOMATION_CHANGED_FILES);
116
- };
117
- const truncate = (raw, max, marker) => {
118
- if (raw.length === 0)
119
- return null;
120
- // Slice below `max` by the marker length so the result (text + marker) fits
121
- // the schema's `.max(max)` — otherwise the stored value exceeds the cap and
122
- // the file fails to load next time.
123
- return raw.length > max ? raw.slice(0, Math.max(0, max - marker.length)) + marker : raw;
124
- };
125
- const truncateFindings = (raw) => truncate(raw, MAX_AUTOMATION_FINDINGS_LENGTH, FINDINGS_TRUNCATION_MARKER);
126
- const truncateLog = (raw) => truncate(raw, MAX_AUTOMATION_LOG_LENGTH, LOG_TRUNCATION_MARKER);
4
+ import { computeChangedFiles, gitStatusSet } from "./agent-git-status.js";
5
+ import { capLogEntries, extractAssistantText, extractAssistantThinking, formatToolInput, truncateFindings, truncateLog, truncateToolInput, truncateToolResult, } from "./agent-log-utils.js";
6
+ import { AUTOMATION_AGENT_RUN_TIMEOUT_MS } from "./constants.js";
7
+ import { resolvePiAndPath } from "./pi-binary-resolver.js";
8
+ import { RpcClient } from "./pi-rpc-client.js";
9
+ export { __resetAgentModelCache, listAgentModels } from "./agent-models.js";
10
+ export { readAgentSession } from "./agent-session-reader.js";
127
11
  const piFlagsFor = (config) => {
128
12
  const flags = [];
129
13
  if (!config.extensions)
@@ -134,183 +18,6 @@ const piFlagsFor = (config) => {
134
18
  flags.push("--no-context-files");
135
19
  return flags;
136
20
  };
137
- // JSONL line reader over a child's stdout. Splits on `\n` only (RPC mode uses
138
- // LF as the record delimiter; readline is non-compliant because it also splits
139
- // on U+2028/U+2029, which are valid inside JSON strings). Resolves each line to
140
- // the next waiter, or null on close/timeout.
141
- class RpcClient {
142
- child;
143
- buffer = "";
144
- lineQueue = [];
145
- lineWaiters = [];
146
- closed = false;
147
- constructor(binary, args, cwd, env) {
148
- this.child = spawn(binary, args, {
149
- cwd,
150
- env,
151
- stdio: ["pipe", "pipe", "pipe"],
152
- windowsHide: true,
153
- });
154
- this.child.stdout?.on("data", (chunk) => this.onData(chunk));
155
- this.child.on("close", () => {
156
- this.closed = true;
157
- while (this.lineWaiters.length > 0)
158
- this.lineWaiters.shift()?.(null);
159
- });
160
- this.child.on("error", () => {
161
- this.closed = true;
162
- while (this.lineWaiters.length > 0)
163
- this.lineWaiters.shift()?.(null);
164
- });
165
- }
166
- onData(chunk) {
167
- this.buffer += chunk.toString("utf8");
168
- let index;
169
- while ((index = this.buffer.indexOf("\n")) !== -1) {
170
- let line = this.buffer.slice(0, index);
171
- this.buffer = this.buffer.slice(index + 1);
172
- if (line.endsWith("\r"))
173
- line = line.slice(0, -1);
174
- const waiter = this.lineWaiters.shift();
175
- if (waiter)
176
- waiter(line);
177
- else
178
- this.lineQueue.push(line);
179
- }
180
- }
181
- nextLine(timeoutMs) {
182
- if (this.lineQueue.length > 0)
183
- return Promise.resolve(this.lineQueue.shift() ?? null);
184
- if (this.closed)
185
- return Promise.resolve(null);
186
- return new Promise((resolve) => {
187
- let settled = false;
188
- const waiter = (line) => {
189
- if (settled)
190
- return;
191
- settled = true;
192
- clearTimeout(timer);
193
- const idx = this.lineWaiters.indexOf(waiter);
194
- if (idx !== -1)
195
- this.lineWaiters.splice(idx, 1);
196
- resolve(line);
197
- };
198
- const timer = setTimeout(() => waiter(null), Math.max(0, timeoutMs));
199
- this.lineWaiters.push(waiter);
200
- });
201
- }
202
- send(command) {
203
- this.child.stdin?.write(`${JSON.stringify(command)}\n`);
204
- }
205
- close() {
206
- try {
207
- this.child.stdin?.end();
208
- }
209
- catch {
210
- // already closed
211
- }
212
- setTimeout(() => {
213
- try {
214
- this.child.kill("SIGKILL");
215
- }
216
- catch {
217
- // already dead
218
- }
219
- }, 2000).unref?.();
220
- }
221
- }
222
- const extractAssistantText = (message) => {
223
- if (!message || !Array.isArray(message.content))
224
- return "";
225
- return message.content
226
- .filter((block) => {
227
- const blockType = block?.type;
228
- return blockType === "text";
229
- })
230
- .map((block) => block.text)
231
- .join("");
232
- };
233
- // The assistant's reasoning blocks, concatenated. Hidden by default in the UI
234
- // (behind a "show thinking" toggle) since it's noisy but sometimes useful.
235
- const extractAssistantThinking = (message) => {
236
- if (!message || !Array.isArray(message.content))
237
- return "";
238
- return message.content
239
- .filter((block) => {
240
- const blockType = block?.type;
241
- return blockType === "thinking";
242
- })
243
- .map((block) => block.thinking)
244
- .join("");
245
- };
246
- const TOOL_RESULT_TRUNCATION_MARKER = "…[truncated]";
247
- const TOOL_INPUT_TRUNCATION_MARKER = "…";
248
- const SESSION_TOOL_TRUNCATION_MARKER = "\n…[output truncated]";
249
- // Format a tool call's arguments as a short header string (the path a read
250
- // took, the command bash ran, the pattern grep searched). Mirrors pi's per-tool
251
- // render (read shows the path, bash the command) with a generic fallback.
252
- const formatToolInput = (args) => {
253
- if (!args || typeof args !== "object")
254
- return "";
255
- const record = args;
256
- const command = record.command;
257
- if (typeof command === "string")
258
- return command;
259
- const filePath = record.file_path ?? record.path;
260
- const pattern = record.pattern;
261
- if (typeof pattern === "string")
262
- return typeof filePath === "string" ? `${pattern} · ${filePath}` : pattern;
263
- if (typeof filePath === "string")
264
- return filePath;
265
- try {
266
- const json = JSON.stringify(args);
267
- return json === "{}" ? "" : json;
268
- }
269
- catch {
270
- return "";
271
- }
272
- };
273
- const truncateToolInput = (raw) => raw.length > MAX_AUTOMATION_TOOL_INPUT_LENGTH
274
- ? raw.slice(0, Math.max(0, MAX_AUTOMATION_TOOL_INPUT_LENGTH - TOOL_INPUT_TRUNCATION_MARKER.length)) + TOOL_INPUT_TRUNCATION_MARKER
275
- : raw;
276
- // Safety-net cap for a session-transcript tool result, matching pi core's
277
- // tool-output truncation (2000 lines or 50 KB, head kept). The session file is
278
- // already pi-truncated, so this rarely fires.
279
- const capSessionToolResult = (raw) => {
280
- const lines = raw.split("\n");
281
- let out = raw;
282
- if (lines.length > AUTOMATION_SESSION_TOOL_MAX_LINES)
283
- out = lines.slice(0, AUTOMATION_SESSION_TOOL_MAX_LINES).join("\n");
284
- if (out.length > AUTOMATION_SESSION_TOOL_MAX_BYTES)
285
- out = out.slice(0, AUTOMATION_SESSION_TOOL_MAX_BYTES);
286
- return out === raw ? raw : out + SESSION_TOOL_TRUNCATION_MARKER;
287
- };
288
- const truncateToolResult = (raw) => raw.length > MAX_AUTOMATION_TOOL_RESULT_LENGTH
289
- ? raw.slice(0, Math.max(0, MAX_AUTOMATION_TOOL_RESULT_LENGTH - TOOL_RESULT_TRUNCATION_MARKER.length)) + TOOL_RESULT_TRUNCATION_MARKER
290
- : raw;
291
- const entrySize = (entry) => {
292
- let size = entry.text.length;
293
- if (entry.type === "assistant" && entry.thinking)
294
- size += entry.thinking.length;
295
- if (entry.type === "tool")
296
- size += entry.name.length;
297
- return size;
298
- };
299
- // Bound the structured log: cap the entry count, then drop oldest entries
300
- // until the total is under the byte cap (keeps the recent turns, which hold
301
- // the final answer). User/assistant text is kept full per entry; only the
302
- // total is bounded for storage.
303
- const capLogEntries = (entries) => {
304
- let trimmed = entries.length > MAX_AUTOMATION_LOG_ENTRIES
305
- ? entries.slice(entries.length - MAX_AUTOMATION_LOG_ENTRIES)
306
- : entries;
307
- let total = trimmed.reduce((sum, entry) => sum + entrySize(entry), 0);
308
- while (total > MAX_AUTOMATION_LOG_LENGTH && trimmed.length > 1) {
309
- total -= entrySize(trimmed[0]);
310
- trimmed = trimmed.slice(1);
311
- }
312
- return trimmed;
313
- };
314
21
  // Run one agent fire through a `pi --mode rpc` subprocess. Fresh runs use
315
22
  // --no-session; thread runs resume --session <file>. Auto-compaction is left to
316
23
  // the harness default (pi: on). Findings come from the last assistant message;
@@ -649,225 +356,4 @@ const CustomHarness = (config) => ({
649
356
  const resolveHarness = (harness, piBinaryPath) => harness.kind === "pi" ? PiHarness(piBinaryPath) : CustomHarness(harness);
650
357
  export const runAgent = (request) => resolveHarness(request.runner.harness, request.piBinaryPath).run(request);
651
358
  export const compactAgent = (request) => resolveHarness(request.harness, request.piBinaryPath).compact(request);
652
- // Cache of the available-models list (pi's RPC get_available_models). The list
653
- // rarely changes, so cache it for a few minutes; the first call spawns pi
654
- // (slow, ~1-5s), later calls reuse the cache.
655
- const MODEL_CACHE_TTL_MS = 5 * 60 * 1000;
656
- let cachedModels = null;
657
- const listModelsViaRpcWith = async (binary, pathEnv, extraFlags) => {
658
- const args = ["--mode", "rpc", "--no-session", ...extraFlags];
659
- const client = new RpcClient(binary, args, os.tmpdir(), {
660
- ...process.env,
661
- PATH: pathEnv || process.env.PATH,
662
- });
663
- client.send({ type: "get_available_models", id: "models" });
664
- let models = [];
665
- const deadline = Date.now() + 15_000;
666
- while (Date.now() < deadline) {
667
- const line = await client.nextLine(Math.min(1000, deadline - Date.now()));
668
- if (line === null) {
669
- if (client.closed)
670
- break;
671
- continue;
672
- }
673
- let event;
674
- try {
675
- event = JSON.parse(line);
676
- }
677
- catch {
678
- continue;
679
- }
680
- if (event.type === "response" && event.id === "models" && event.success) {
681
- const raw = event.data?.models;
682
- if (Array.isArray(raw)) {
683
- models = raw
684
- .map((model) => {
685
- const entry = model;
686
- return {
687
- id: String(entry.id ?? ""),
688
- name: String(entry.name ?? entry.id ?? ""),
689
- provider: String(entry.provider ?? ""),
690
- ...(typeof entry.contextWindow === "number"
691
- ? { contextWindow: entry.contextWindow }
692
- : {}),
693
- ...(typeof entry.reasoning === "boolean" ? { reasoning: entry.reasoning } : {}),
694
- };
695
- })
696
- .filter((model) => model.id.length > 0);
697
- }
698
- break;
699
- }
700
- }
701
- client.close();
702
- return models;
703
- };
704
- const listModelsViaRpc = async (shimsDir, extraFlags) => {
705
- const { binary: realPi, pathEnv } = resolvePiAndPath(shimsDir);
706
- // Prefer the localterm shim for the model list: it injects the pi-process
707
- // secrets (so every provider with a key registers its models) then execs the
708
- // real pi. The bare real pi has none of those keys, so most providers don't
709
- // register and the list is nearly empty.
710
- let binary = realPi;
711
- const shimPi = path.join(shimsDir, "pi");
712
- try {
713
- if (fs.statSync(shimPi).isFile()) {
714
- fs.accessSync(shimPi, fs.constants.X_OK);
715
- binary = shimPi;
716
- }
717
- }
718
- catch {
719
- // no shim; fall back to the real pi
720
- }
721
- if (!binary)
722
- return [];
723
- return listModelsViaRpcWith(binary, pathEnv, extraFlags);
724
- };
725
- // List models available to the pi harness. Tries with extensions on (the
726
- // default, so custom-provider models appear); if that yields nothing (e.g. the
727
- // provider extensions crash headless), retries with --no-extensions for the
728
- // built-in providers. Cached for a few minutes. A `piBinaryPath` override
729
- // (tests) bypasses the shim + cache.
730
- export const listAgentModels = async (shimsDir, piBinaryPath) => {
731
- if (piBinaryPath)
732
- return listModelsViaRpcWith(piBinaryPath, process.env.PATH ?? "", []);
733
- if (cachedModels && Date.now() - cachedModels.at < MODEL_CACHE_TTL_MS)
734
- return cachedModels.models;
735
- let models = await listModelsViaRpc(shimsDir, []);
736
- if (models.length === 0)
737
- models = await listModelsViaRpc(shimsDir, ["--no-extensions"]);
738
- cachedModels = { at: Date.now(), models };
739
- return models;
740
- };
741
- // Test-only: reset the model-list cache so a case never sees another case's
742
- // (or another file's) cached result.
743
- export const __resetAgentModelCache = () => {
744
- cachedModels = null;
745
- };
746
- // Extract the text of a tool_result content block: it's either a plain string
747
- // or an array of content blocks (Anthropic's tool_result.content shape).
748
- const extractToolResultText = (part) => {
749
- const content = part.content;
750
- if (typeof content === "string")
751
- return content;
752
- if (Array.isArray(content)) {
753
- return content
754
- .filter((block) => {
755
- const blockType = block?.type;
756
- return blockType === "text";
757
- })
758
- .map((block) => block.text)
759
- .join("");
760
- }
761
- return "";
762
- };
763
- // Read a thread-mode pi session file (JSONL) and flatten it into the same
764
- // user/assistant/tool entry shape as a run log, plus a `compaction` entry for
765
- // each compaction the branch went through. Tool calls are tracked by id so a
766
- // tool result's name + input (the path/command) can be recovered from the
767
- // preceding call. Session-transcript tool results are capped at pi core's
768
- // limits (2000 lines / 50 KB), not the stored-log preview cap. `untilMs`
769
- // truncates the transcript at a point in time (a run's finishedAt) so an older
770
- // run shows the branch as it was then, not the latest state. Returns [] if the
771
- // file is missing (fresh mode, or no runs yet).
772
- export const readAgentSession = async (sessionFile, untilMs) => {
773
- let raw;
774
- try {
775
- raw = await fs.promises.readFile(sessionFile, "utf8");
776
- }
777
- catch {
778
- return [];
779
- }
780
- const toolNameById = new Map();
781
- const toolInputById = new Map();
782
- const entries = [];
783
- for (const line of raw.split("\n")) {
784
- const trimmed = line.trim();
785
- if (trimmed.length === 0)
786
- continue;
787
- let event;
788
- try {
789
- event = JSON.parse(trimmed);
790
- }
791
- catch {
792
- continue;
793
- }
794
- if (untilMs !== undefined &&
795
- typeof event.timestamp === "string" &&
796
- Date.parse(event.timestamp) > untilMs) {
797
- continue;
798
- }
799
- if (event.type === "message") {
800
- const message = event.message;
801
- if (!message)
802
- continue;
803
- const role = message.role;
804
- const content = Array.isArray(message.content) ? message.content : [];
805
- if (role === "user") {
806
- for (const part of content) {
807
- const block = part;
808
- if (block.type === "text" && typeof block.text === "string") {
809
- entries.push({ type: "user", text: block.text });
810
- }
811
- else if (block.type === "tool_result") {
812
- const id = String(block.tool_use_id ?? "");
813
- const name = toolNameById.get(id) ?? "tool";
814
- const input = toolInputById.get(id);
815
- entries.push({
816
- type: "tool",
817
- name,
818
- ...(input !== undefined ? { input } : {}),
819
- text: capSessionToolResult(extractToolResultText(block)),
820
- });
821
- }
822
- }
823
- }
824
- else if (role === "toolResult") {
825
- const message2 = event.message;
826
- const id = String(message2?.toolCallId ?? "");
827
- const name = (typeof message2?.toolName === "string" && message2.toolName) ||
828
- toolNameById.get(id) ||
829
- "tool";
830
- const input = toolInputById.get(id);
831
- entries.push({
832
- type: "tool",
833
- name,
834
- ...(input !== undefined ? { input } : {}),
835
- text: capSessionToolResult(extractToolResultText(message2 ?? {})),
836
- });
837
- }
838
- else if (role === "assistant") {
839
- let text = "";
840
- let thinking = "";
841
- for (const part of content) {
842
- const block = part;
843
- if (block.type === "text" && typeof block.text === "string")
844
- text += block.text;
845
- else if (block.type === "thinking" && typeof block.thinking === "string")
846
- thinking += block.thinking;
847
- else if (block.type === "tool_use" || block.type === "toolCall") {
848
- const callId = String(block.id ?? "");
849
- const callName = String(block.name ?? "tool");
850
- toolNameById.set(callId, callName);
851
- const formatted = truncateToolInput(formatToolInput(block.arguments ?? block.input));
852
- if (formatted)
853
- toolInputById.set(callId, formatted);
854
- }
855
- }
856
- if (text.length > 0 || thinking.length > 0) {
857
- entries.push(thinking.length > 0
858
- ? { type: "assistant", text, thinking }
859
- : { type: "assistant", text });
860
- }
861
- }
862
- }
863
- else if (event.type === "compaction") {
864
- const summary = String(event.summary ?? "");
865
- const tokensBefore = typeof event.tokensBefore === "number" ? event.tokensBefore : undefined;
866
- entries.push(tokensBefore !== undefined
867
- ? { type: "compaction", summary, tokensBefore }
868
- : { type: "compaction", summary });
869
- }
870
- }
871
- return entries;
872
- };
873
359
  //# sourceMappingURL=agent-runner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent-runner.js","sourceRoot":"","sources":["../src/agent-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-runner.js","sourceRoot":"","sources":["../src/agent-runner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { AgentSessionEntry } from "./types.js";
2
+ export declare const readAgentSession: (sessionFile: string, untilMs?: number) => Promise<AgentSessionEntry[]>;
3
+ //# sourceMappingURL=agent-session-reader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-session-reader.d.ts","sourceRoot":"","sources":["../src/agent-session-reader.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAWpD,eAAO,MAAM,gBAAgB,gBACd,MAAM,YACT,MAAM,KACf,OAAO,CAAC,iBAAiB,EAAE,CAkH7B,CAAC"}