@action-llama/action-llama 0.27.4 → 0.28.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 (242) hide show
  1. package/dist/agents/credential-setup.d.ts +0 -1
  2. package/dist/agents/credential-setup.d.ts.map +1 -1
  3. package/dist/agents/credential-setup.js +2 -23
  4. package/dist/agents/credential-setup.js.map +1 -1
  5. package/dist/agents/prompt.js +1 -1
  6. package/dist/agents/prompt.js.map +1 -1
  7. package/dist/agents/scheduler-tools.d.ts +40 -0
  8. package/dist/agents/scheduler-tools.d.ts.map +1 -0
  9. package/dist/agents/scheduler-tools.js +178 -0
  10. package/dist/agents/scheduler-tools.js.map +1 -0
  11. package/dist/agents/transport-runner.d.ts +95 -0
  12. package/dist/agents/transport-runner.d.ts.map +1 -0
  13. package/dist/agents/transport-runner.js +653 -0
  14. package/dist/agents/transport-runner.js.map +1 -0
  15. package/dist/build-info.json +1 -1
  16. package/dist/cli/commands/add.d.ts +1 -0
  17. package/dist/cli/commands/add.d.ts.map +1 -1
  18. package/dist/cli/commands/add.js +24 -9
  19. package/dist/cli/commands/add.js.map +1 -1
  20. package/dist/cli/commands/agent.d.ts +0 -3
  21. package/dist/cli/commands/agent.d.ts.map +1 -1
  22. package/dist/cli/commands/agent.js +3 -67
  23. package/dist/cli/commands/agent.js.map +1 -1
  24. package/dist/cli/commands/logs.d.ts.map +1 -1
  25. package/dist/cli/commands/logs.js +2 -3
  26. package/dist/cli/commands/logs.js.map +1 -1
  27. package/dist/cli/main.js +1 -30
  28. package/dist/cli/main.js.map +1 -1
  29. package/dist/control/routes/dashboard-api.js +1 -1
  30. package/dist/control/routes/dashboard-api.js.map +1 -1
  31. package/dist/control/routes/log-helpers.d.ts +4 -4
  32. package/dist/control/routes/log-helpers.d.ts.map +1 -1
  33. package/dist/control/routes/log-helpers.js +12 -7
  34. package/dist/control/routes/log-helpers.js.map +1 -1
  35. package/dist/control/routes/log-summary.d.ts.map +1 -1
  36. package/dist/control/routes/log-summary.js +22 -9
  37. package/dist/control/routes/log-summary.js.map +1 -1
  38. package/dist/control/routes/logs.d.ts.map +1 -1
  39. package/dist/control/routes/logs.js +10 -10
  40. package/dist/control/routes/logs.js.map +1 -1
  41. package/dist/docker/providers/index.d.ts +0 -4
  42. package/dist/docker/providers/index.d.ts.map +1 -1
  43. package/dist/docker/providers/index.js +0 -38
  44. package/dist/docker/providers/index.js.map +1 -1
  45. package/dist/execution/execution.d.ts +0 -1
  46. package/dist/execution/execution.d.ts.map +1 -1
  47. package/dist/execution/execution.js +5 -9
  48. package/dist/execution/execution.js.map +1 -1
  49. package/dist/execution/index.d.ts +1 -11
  50. package/dist/execution/index.d.ts.map +1 -1
  51. package/dist/execution/index.js +1 -8
  52. package/dist/execution/index.js.map +1 -1
  53. package/dist/execution/runner-setup.d.ts +6 -11
  54. package/dist/execution/runner-setup.d.ts.map +1 -1
  55. package/dist/execution/runner-setup.js +18 -14
  56. package/dist/execution/runner-setup.js.map +1 -1
  57. package/dist/execution/runtime-factory.d.ts +1 -15
  58. package/dist/execution/runtime-factory.d.ts.map +1 -1
  59. package/dist/execution/runtime-factory.js +1 -18
  60. package/dist/execution/runtime-factory.js.map +1 -1
  61. package/dist/frontend/assets/{index-a78B5S5H.js → index-DnSu-8Kw.js} +1 -1
  62. package/dist/frontend/assets/index-DnSu-8Kw.js.map +1 -0
  63. package/dist/frontend/index.html +1 -1
  64. package/dist/gateway/index.d.ts +1 -1
  65. package/dist/gateway/index.d.ts.map +1 -1
  66. package/dist/gateway/index.js +6 -47
  67. package/dist/gateway/index.js.map +1 -1
  68. package/dist/gateway/routes/system.d.ts +1 -4
  69. package/dist/gateway/routes/system.d.ts.map +1 -1
  70. package/dist/gateway/routes/system.js +3 -8
  71. package/dist/gateway/routes/system.js.map +1 -1
  72. package/dist/gateway/stores.d.ts +0 -4
  73. package/dist/gateway/stores.d.ts.map +1 -1
  74. package/dist/gateway/stores.js +2 -10
  75. package/dist/gateway/stores.js.map +1 -1
  76. package/dist/gateway/types.d.ts +0 -13
  77. package/dist/gateway/types.d.ts.map +1 -1
  78. package/dist/mcp/server.d.ts.map +1 -1
  79. package/dist/mcp/server.js +11 -0
  80. package/dist/mcp/server.js.map +1 -1
  81. package/dist/models/providers/custom.d.ts.map +1 -1
  82. package/dist/models/providers/custom.js +3 -2
  83. package/dist/models/providers/custom.js.map +1 -1
  84. package/dist/models/providers/openai.d.ts.map +1 -1
  85. package/dist/models/providers/openai.js +3 -2
  86. package/dist/models/providers/openai.js.map +1 -1
  87. package/dist/scheduler/gateway-setup.d.ts +0 -2
  88. package/dist/scheduler/gateway-setup.d.ts.map +1 -1
  89. package/dist/scheduler/gateway-setup.js +2 -11
  90. package/dist/scheduler/gateway-setup.js.map +1 -1
  91. package/dist/scheduler/index.d.ts.map +1 -1
  92. package/dist/scheduler/index.js +95 -55
  93. package/dist/scheduler/index.js.map +1 -1
  94. package/dist/scheduler/validation.js +1 -1
  95. package/dist/scheduler/validation.js.map +1 -1
  96. package/dist/scheduler/watcher.d.ts +2 -8
  97. package/dist/scheduler/watcher.d.ts.map +1 -1
  98. package/dist/scheduler/watcher.js +7 -104
  99. package/dist/scheduler/watcher.js.map +1 -1
  100. package/dist/shared/config/load-agent.js +2 -2
  101. package/dist/shared/config/load-agent.js.map +1 -1
  102. package/dist/shared/config/load-project.js +2 -2
  103. package/dist/shared/config/load-project.js.map +1 -1
  104. package/dist/shared/config/types.d.ts +10 -2
  105. package/dist/shared/config/types.d.ts.map +1 -1
  106. package/dist/shared/constants.d.ts +1 -1
  107. package/dist/shared/constants.d.ts.map +1 -1
  108. package/dist/shared/constants.js +2 -2
  109. package/dist/shared/constants.js.map +1 -1
  110. package/dist/shared/credential-refs.js +1 -1
  111. package/dist/shared/credential-refs.js.map +1 -1
  112. package/dist/shared/paths.d.ts.map +1 -1
  113. package/dist/shared/paths.js +2 -2
  114. package/dist/shared/paths.js.map +1 -1
  115. package/dist/shared/validation.js +1 -1
  116. package/dist/shared/validation.js.map +1 -1
  117. package/dist/transport/docker-exec.d.ts +41 -0
  118. package/dist/transport/docker-exec.d.ts.map +1 -0
  119. package/dist/transport/docker-exec.js +331 -0
  120. package/dist/transport/docker-exec.js.map +1 -0
  121. package/dist/transport/host-user.d.ts +37 -0
  122. package/dist/transport/host-user.d.ts.map +1 -0
  123. package/dist/transport/host-user.js +232 -0
  124. package/dist/transport/host-user.js.map +1 -0
  125. package/dist/transport/index.d.ts +8 -0
  126. package/dist/transport/index.d.ts.map +1 -0
  127. package/dist/transport/index.js +7 -0
  128. package/dist/transport/index.js.map +1 -0
  129. package/dist/transport/memory.d.ts +35 -0
  130. package/dist/transport/memory.d.ts.map +1 -0
  131. package/dist/transport/memory.js +110 -0
  132. package/dist/transport/memory.js.map +1 -0
  133. package/dist/transport/operations.d.ts +68 -0
  134. package/dist/transport/operations.d.ts.map +1 -0
  135. package/dist/transport/operations.js +164 -0
  136. package/dist/transport/operations.js.map +1 -0
  137. package/dist/transport/ssh.d.ts +43 -0
  138. package/dist/transport/ssh.d.ts.map +1 -0
  139. package/dist/transport/ssh.js +225 -0
  140. package/dist/transport/ssh.js.map +1 -0
  141. package/dist/transport/transport.d.ts +59 -0
  142. package/dist/transport/transport.d.ts.map +1 -0
  143. package/dist/transport/transport.js +29 -0
  144. package/dist/transport/transport.js.map +1 -0
  145. package/package.json +1 -1
  146. package/dist/agents/container-entry.d.ts +0 -31
  147. package/dist/agents/container-entry.d.ts.map +0 -1
  148. package/dist/agents/container-entry.js +0 -302
  149. package/dist/agents/container-entry.js.map +0 -1
  150. package/dist/agents/container-runner.d.ts +0 -59
  151. package/dist/agents/container-runner.d.ts.map +0 -1
  152. package/dist/agents/container-runner.js +0 -472
  153. package/dist/agents/container-runner.js.map +0 -1
  154. package/dist/agents/harness/claude-cli-harness.d.ts +0 -15
  155. package/dist/agents/harness/claude-cli-harness.d.ts.map +0 -1
  156. package/dist/agents/harness/claude-cli-harness.js +0 -240
  157. package/dist/agents/harness/claude-cli-harness.js.map +0 -1
  158. package/dist/agents/harness/consumer.d.ts +0 -31
  159. package/dist/agents/harness/consumer.d.ts.map +0 -1
  160. package/dist/agents/harness/consumer.js +0 -161
  161. package/dist/agents/harness/consumer.js.map +0 -1
  162. package/dist/agents/harness/factory.d.ts +0 -9
  163. package/dist/agents/harness/factory.d.ts.map +0 -1
  164. package/dist/agents/harness/factory.js +0 -25
  165. package/dist/agents/harness/factory.js.map +0 -1
  166. package/dist/agents/harness/index.d.ts +0 -9
  167. package/dist/agents/harness/index.d.ts.map +0 -1
  168. package/dist/agents/harness/index.js +0 -5
  169. package/dist/agents/harness/index.js.map +0 -1
  170. package/dist/agents/harness/pi-harness.d.ts +0 -18
  171. package/dist/agents/harness/pi-harness.d.ts.map +0 -1
  172. package/dist/agents/harness/pi-harness.js +0 -259
  173. package/dist/agents/harness/pi-harness.js.map +0 -1
  174. package/dist/agents/harness/types.d.ts +0 -57
  175. package/dist/agents/harness/types.d.ts.map +0 -1
  176. package/dist/agents/harness/types.js +0 -2
  177. package/dist/agents/harness/types.js.map +0 -1
  178. package/dist/agents/session-loop.d.ts +0 -36
  179. package/dist/agents/session-loop.d.ts.map +0 -1
  180. package/dist/agents/session-loop.js +0 -216
  181. package/dist/agents/session-loop.js.map +0 -1
  182. package/dist/agents/signals.d.ts +0 -34
  183. package/dist/agents/signals.d.ts.map +0 -1
  184. package/dist/agents/signals.js +0 -122
  185. package/dist/agents/signals.js.map +0 -1
  186. package/dist/cli/commands/claude.d.ts +0 -4
  187. package/dist/cli/commands/claude.d.ts.map +0 -1
  188. package/dist/cli/commands/claude.js +0 -6
  189. package/dist/cli/commands/claude.js.map +0 -1
  190. package/dist/cli/commands/run-agent.d.ts +0 -14
  191. package/dist/cli/commands/run-agent.d.ts.map +0 -1
  192. package/dist/cli/commands/run-agent.js +0 -270
  193. package/dist/cli/commands/run-agent.js.map +0 -1
  194. package/dist/docker/cloud-run-runtime.d.ts +0 -48
  195. package/dist/docker/cloud-run-runtime.d.ts.map +0 -1
  196. package/dist/docker/cloud-run-runtime.js +0 -490
  197. package/dist/docker/cloud-run-runtime.js.map +0 -1
  198. package/dist/docker/image.d.ts +0 -19
  199. package/dist/docker/image.d.ts.map +0 -1
  200. package/dist/docker/image.js +0 -111
  201. package/dist/docker/image.js.map +0 -1
  202. package/dist/execution/call-dispatcher.d.ts +0 -11
  203. package/dist/execution/call-dispatcher.d.ts.map +0 -1
  204. package/dist/execution/call-dispatcher.js +0 -75
  205. package/dist/execution/call-dispatcher.js.map +0 -1
  206. package/dist/execution/container-registry.d.ts +0 -42
  207. package/dist/execution/container-registry.d.ts.map +0 -1
  208. package/dist/execution/container-registry.js +0 -76
  209. package/dist/execution/container-registry.js.map +0 -1
  210. package/dist/execution/image-builder.d.ts +0 -48
  211. package/dist/execution/image-builder.d.ts.map +0 -1
  212. package/dist/execution/image-builder.js +0 -155
  213. package/dist/execution/image-builder.js.map +0 -1
  214. package/dist/execution/routes/calls.d.ts +0 -18
  215. package/dist/execution/routes/calls.d.ts.map +0 -1
  216. package/dist/execution/routes/calls.js +0 -74
  217. package/dist/execution/routes/calls.js.map +0 -1
  218. package/dist/execution/routes/locks.d.ts +0 -10
  219. package/dist/execution/routes/locks.d.ts.map +0 -1
  220. package/dist/execution/routes/locks.js +0 -166
  221. package/dist/execution/routes/locks.js.map +0 -1
  222. package/dist/execution/routes/shutdown.d.ts +0 -5
  223. package/dist/execution/routes/shutdown.d.ts.map +0 -1
  224. package/dist/execution/routes/shutdown.js +0 -24
  225. package/dist/execution/routes/shutdown.js.map +0 -1
  226. package/dist/execution/routes/signals.d.ts +0 -12
  227. package/dist/execution/routes/signals.d.ts.map +0 -1
  228. package/dist/execution/routes/signals.js +0 -123
  229. package/dist/execution/routes/signals.js.map +0 -1
  230. package/dist/execution/types.d.ts +0 -23
  231. package/dist/execution/types.d.ts.map +0 -1
  232. package/dist/execution/types.js +0 -2
  233. package/dist/execution/types.js.map +0 -1
  234. package/dist/frontend/assets/index-a78B5S5H.js.map +0 -1
  235. package/dist/gateway/routes/execution.d.ts +0 -24
  236. package/dist/gateway/routes/execution.d.ts.map +0 -1
  237. package/dist/gateway/routes/execution.js +0 -13
  238. package/dist/gateway/routes/execution.js.map +0 -1
  239. package/dist/scheduler/orphan-recovery.d.ts +0 -25
  240. package/dist/scheduler/orphan-recovery.d.ts.map +0 -1
  241. package/dist/scheduler/orphan-recovery.js +0 -144
  242. package/dist/scheduler/orphan-recovery.js.map +0 -1
@@ -1,240 +0,0 @@
1
- import { spawn } from "child_process";
2
- import { createInterface } from "readline";
3
- import { zeroTokenUsage } from "../../shared/usage.js";
4
- function mapThinkingLevel(thinkingLevel) {
5
- switch (thinkingLevel) {
6
- case "off":
7
- case "minimal":
8
- return "low";
9
- case "low":
10
- case "medium":
11
- return "medium";
12
- case "high":
13
- return "high";
14
- case "xhigh":
15
- return "max";
16
- default:
17
- return "medium";
18
- }
19
- }
20
- function toTokenUsage(usage) {
21
- if (!usage)
22
- return zeroTokenUsage();
23
- const inputTokens = usage.input_tokens ?? 0;
24
- const outputTokens = usage.output_tokens ?? 0;
25
- const cacheReadTokens = usage.cache_read_input_tokens ?? 0;
26
- const cacheWriteTokens = usage.cache_creation_input_tokens ?? 0;
27
- return {
28
- inputTokens,
29
- outputTokens,
30
- cacheReadTokens,
31
- cacheWriteTokens,
32
- totalTokens: inputTokens + outputTokens,
33
- cost: 0,
34
- turnCount: outputTokens > 0 ? 1 : 0,
35
- };
36
- }
37
- function getMessageBlocks(event) {
38
- if (Array.isArray(event?.message?.content))
39
- return event.message.content;
40
- if (Array.isArray(event?.content))
41
- return event.content;
42
- return [];
43
- }
44
- function getMessageId(event) {
45
- return String(event?.message?.id || event?.uuid || "assistant");
46
- }
47
- export class ClaudeCliHarness {
48
- opts;
49
- child = null;
50
- constructor(opts) {
51
- this.opts = opts;
52
- }
53
- async *run(prompt, runOpts) {
54
- const spawnImpl = this.opts.spawnImpl ?? spawn;
55
- const args = [
56
- "-p",
57
- prompt,
58
- "--verbose",
59
- "--output-format",
60
- "stream-json",
61
- "--include-partial-messages",
62
- "--permission-mode",
63
- "bypassPermissions",
64
- "--add-dir",
65
- runOpts.cwd,
66
- "--model",
67
- this.opts.model.model,
68
- "--effort",
69
- mapThinkingLevel(this.opts.model.thinkingLevel),
70
- ];
71
- const env = {
72
- ...process.env,
73
- ...runOpts.env,
74
- };
75
- const child = spawnImpl("claude", args, {
76
- cwd: runOpts.cwd,
77
- env,
78
- stdio: ["ignore", "pipe", "pipe"],
79
- });
80
- this.child = child;
81
- yield {
82
- type: "log",
83
- level: "info",
84
- message: "creating agent session",
85
- data: { model: this.opts.model.model, thinking: this.opts.model.thinkingLevel },
86
- };
87
- const queue = [];
88
- let done = false;
89
- let waitError;
90
- let finalUsage;
91
- const assistantText = new Map();
92
- const pushEvent = (event) => {
93
- queue.push(event);
94
- };
95
- const handleJsonLine = (line) => {
96
- if (!line.trim())
97
- return;
98
- let parsed;
99
- try {
100
- parsed = JSON.parse(line);
101
- }
102
- catch {
103
- pushEvent({
104
- type: "log",
105
- level: "debug",
106
- message: "event",
107
- data: { raw: line.slice(0, 500) },
108
- });
109
- return;
110
- }
111
- if (parsed.type === "result") {
112
- finalUsage = toTokenUsage(parsed.usage);
113
- return;
114
- }
115
- if (parsed.type === "system" && parsed.subtype === "api_error") {
116
- pushEvent({
117
- type: "log",
118
- level: "error",
119
- message: "session error",
120
- data: { error: String(parsed.error?.error?.error?.message || parsed.error?.message || "Claude CLI API error") },
121
- });
122
- return;
123
- }
124
- if (parsed.type === "assistant") {
125
- const messageId = getMessageId(parsed);
126
- for (const block of getMessageBlocks(parsed)) {
127
- if (block.type === "text" && typeof block.text === "string") {
128
- const previous = assistantText.get(messageId) || "";
129
- const next = block.text;
130
- const delta = next.startsWith(previous) ? next.slice(previous.length) : next;
131
- assistantText.set(messageId, next);
132
- if (delta) {
133
- pushEvent({ type: "text_delta", delta });
134
- }
135
- }
136
- if (block.type === "tool_use") {
137
- const command = typeof block.input?.command === "string" ? block.input.command : undefined;
138
- pushEvent({
139
- type: "tool_start",
140
- toolName: String(block.name || "tool").toLowerCase(),
141
- toolCallId: String(block.id || messageId),
142
- command,
143
- });
144
- }
145
- }
146
- if (parsed.message?.stop_reason && parsed.message?.stop_reason !== "tool_use") {
147
- pushEvent({
148
- type: "log",
149
- level: "debug",
150
- message: "conversation.event",
151
- data: {
152
- eventType: "message_end",
153
- role: parsed.message?.role || "assistant",
154
- stopReason: parsed.message?.stop_reason,
155
- raw: parsed,
156
- },
157
- });
158
- }
159
- return;
160
- }
161
- if (parsed.type === "user") {
162
- for (const block of getMessageBlocks(parsed)) {
163
- if (block.type !== "tool_result")
164
- continue;
165
- const result = typeof block.content === "string"
166
- ? block.content
167
- : JSON.stringify({
168
- content: Array.isArray(block.content) ? block.content : [{ type: "text", text: String(block.content ?? "") }],
169
- details: {},
170
- });
171
- pushEvent({
172
- type: "tool_end",
173
- toolName: "tool",
174
- toolCallId: String(block.tool_use_id || "tool"),
175
- result,
176
- isError: !!block.is_error,
177
- raw: parsed,
178
- });
179
- }
180
- }
181
- };
182
- const stdoutRl = createInterface({ input: child.stdout, crlfDelay: Infinity });
183
- stdoutRl.on("line", handleJsonLine);
184
- const stderrRl = createInterface({ input: child.stderr, crlfDelay: Infinity });
185
- stderrRl.on("line", (line) => {
186
- if (!line.trim())
187
- return;
188
- pushEvent({
189
- type: "log",
190
- level: "warn",
191
- message: "claude stderr",
192
- data: { text: line.slice(0, 500) },
193
- });
194
- });
195
- child.on("error", (err) => {
196
- waitError = err;
197
- });
198
- child.on("close", (code, signal) => {
199
- stdoutRl.close();
200
- stderrRl.close();
201
- if (finalUsage) {
202
- pushEvent({ type: "usage", usage: finalUsage });
203
- }
204
- if (signal) {
205
- pushEvent({
206
- type: "log",
207
- level: "warn",
208
- message: "claude process terminated",
209
- data: { signal },
210
- });
211
- }
212
- pushEvent({
213
- type: "exit",
214
- aborted: code !== 0,
215
- allModelsExhausted: false,
216
- });
217
- done = true;
218
- });
219
- while (!done || queue.length > 0) {
220
- while (queue.length > 0) {
221
- yield queue.shift();
222
- }
223
- if (waitError) {
224
- const err = waitError;
225
- waitError = undefined;
226
- throw err;
227
- }
228
- if (!done) {
229
- await new Promise((resolve) => setTimeout(resolve, 25));
230
- }
231
- }
232
- }
233
- dispose() {
234
- if (this.child && !this.child.killed) {
235
- this.child.kill("SIGTERM");
236
- }
237
- this.child = null;
238
- }
239
- }
240
- //# sourceMappingURL=claude-cli-harness.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"claude-cli-harness.js","sourceRoot":"","sources":["../../../src/agents/harness/claude-cli-harness.ts"],"names":[],"mappings":"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"}
@@ -1,31 +0,0 @@
1
- import type { TokenUsage } from "../../shared/usage.js";
2
- import type { AgentHarness, HarnessEvent } from "./types.js";
3
- export interface ConsumeHarnessOpts {
4
- log: (level: string, msg: string, data?: Record<string, any>) => void;
5
- onUnrecoverableAbort?: () => void;
6
- }
7
- export interface ConsumeResult {
8
- outputText: string;
9
- usage?: TokenUsage;
10
- unrecoverableErrors: number;
11
- aborted: boolean;
12
- allModelsExhausted: boolean;
13
- errorMessage?: string;
14
- /** Final context window usage as a percentage (0-100). */
15
- contextPercent?: number;
16
- /** The stop_reason from the final message_end event (e.g. "end_turn", "max_tokens"). */
17
- lastStopReason?: string;
18
- /** The last few tool calls with their error status, for terminal-state diagnostics. */
19
- lastToolResults: Array<{
20
- tool: string;
21
- cmd?: string;
22
- isError: boolean;
23
- }>;
24
- /** Tool calls that started but never completed — session ended mid-execution. */
25
- orphanedToolCalls: Array<{
26
- tool: string;
27
- cmd?: string;
28
- }>;
29
- }
30
- export declare function consumeHarness(harness: AgentHarness, events: AsyncIterable<HarnessEvent>, opts: ConsumeHarnessOpts): Promise<ConsumeResult>;
31
- //# sourceMappingURL=consumer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"consumer.d.ts","sourceRoot":"","sources":["../../../src/agents/harness/consumer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE7D,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC;IACtE,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;CACnC;AAED,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,0DAA0D;IAC1D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,wFAAwF;IACxF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,uFAAuF;IACvF,eAAe,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IACzE,iFAAiF;IACjF,iBAAiB,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC1D;AAmCD,wBAAsB,cAAc,CAClC,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,aAAa,CAAC,YAAY,CAAC,EACnC,IAAI,EAAE,kBAAkB,GACvB,OAAO,CAAC,aAAa,CAAC,CAuIxB"}
@@ -1,161 +0,0 @@
1
- import { isUnrecoverableError, UNRECOVERABLE_THRESHOLD } from "../../shared/errors.js";
2
- function extractToolErrorText(result) {
3
- try {
4
- const parsed = JSON.parse(result);
5
- if (parsed?.content?.[0]?.text) {
6
- return String(parsed.content[0].text);
7
- }
8
- }
9
- catch {
10
- // Fall back to raw result.
11
- }
12
- return result;
13
- }
14
- function toSerializable(value) {
15
- if (value == null)
16
- return value;
17
- try {
18
- return JSON.parse(JSON.stringify(value));
19
- }
20
- catch {
21
- return String(value);
22
- }
23
- }
24
- function logUsage(log, usage) {
25
- log("info", "token-usage", {
26
- inputTokens: usage.inputTokens,
27
- outputTokens: usage.outputTokens,
28
- cacheReadTokens: usage.cacheReadTokens,
29
- cacheWriteTokens: usage.cacheWriteTokens,
30
- totalTokens: usage.totalTokens,
31
- cost: usage.cost,
32
- turnCount: usage.turnCount,
33
- });
34
- }
35
- export async function consumeHarness(harness, events, opts) {
36
- const pendingCmds = new Map();
37
- const { log, onUnrecoverableAbort } = opts;
38
- let outputText = "";
39
- let currentTurnText = "";
40
- let usage;
41
- let unrecoverableErrors = 0;
42
- let aborted = false;
43
- let allModelsExhausted = false;
44
- let errorMessage;
45
- let lastStopReason;
46
- let lastContextPercent;
47
- const lastToolResults = [];
48
- const activeToolCalls = new Map();
49
- try {
50
- for await (const event of events) {
51
- switch (event.type) {
52
- case "log":
53
- const eventData = event.data;
54
- const eventType = eventData?.eventType ?? eventData?.type;
55
- const isConversationEvent = event.message === "conversation.event" || event.message === "event";
56
- if (isConversationEvent && eventType === "message_end") {
57
- if (eventData?.stopReason) {
58
- lastStopReason = String(eventData.stopReason);
59
- }
60
- if (currentTurnText.trim()) {
61
- log("info", "conversation.message", {
62
- kind: "conversation",
63
- role: eventData?.role || "assistant",
64
- stopReason: eventData?.stopReason,
65
- text: currentTurnText.trim(),
66
- raw: toSerializable(eventData?.raw),
67
- });
68
- }
69
- currentTurnText = "";
70
- }
71
- if (isConversationEvent && eventType === "turn_end" && typeof eventData?.errorMessage === "string") {
72
- errorMessage = eventData.errorMessage;
73
- }
74
- if (event.message === "context-usage" && event.data?.contextPercent != null) {
75
- lastContextPercent = event.data.contextPercent;
76
- }
77
- log(event.level, event.message, event.data);
78
- break;
79
- case "text_delta":
80
- outputText += event.delta;
81
- currentTurnText += event.delta;
82
- break;
83
- case "tool_start":
84
- if (event.command) {
85
- pendingCmds.set(event.toolCallId, event.command);
86
- }
87
- activeToolCalls.set(event.toolCallId, { tool: event.toolName, cmd: event.command });
88
- log("info", "conversation.tool_call", {
89
- kind: "conversation",
90
- tool: event.toolName,
91
- toolCallId: event.toolCallId,
92
- cmd: event.command,
93
- raw: toSerializable(event.raw),
94
- });
95
- break;
96
- case "tool_end": {
97
- const originCmd = pendingCmds.get(event.toolCallId);
98
- pendingCmds.delete(event.toolCallId);
99
- const resultText = extractToolErrorText(event.result);
100
- log(event.isError ? "error" : "info", "conversation.tool_result", {
101
- kind: "conversation",
102
- tool: event.toolName,
103
- toolCallId: event.toolCallId,
104
- cmd: originCmd,
105
- result: event.result,
106
- resultText,
107
- isError: event.isError,
108
- raw: toSerializable(event.raw),
109
- });
110
- activeToolCalls.delete(event.toolCallId);
111
- lastToolResults.push({ tool: event.toolName, cmd: originCmd, isError: event.isError });
112
- if (lastToolResults.length > 3)
113
- lastToolResults.shift();
114
- if (event.isError) {
115
- if (isUnrecoverableError(resultText)) {
116
- unrecoverableErrors++;
117
- if (unrecoverableErrors >= UNRECOVERABLE_THRESHOLD && !aborted) {
118
- log("error", "Aborting: repeated auth/permission failures — check credentials");
119
- aborted = true;
120
- onUnrecoverableAbort?.();
121
- harness.dispose();
122
- }
123
- }
124
- }
125
- break;
126
- }
127
- case "usage":
128
- usage = event.usage;
129
- logUsage(log, event.usage);
130
- break;
131
- case "exit":
132
- aborted = aborted || event.aborted;
133
- allModelsExhausted = event.allModelsExhausted;
134
- break;
135
- }
136
- }
137
- }
138
- finally {
139
- harness.dispose();
140
- }
141
- if (currentTurnText.trim()) {
142
- log("info", "conversation.message", {
143
- kind: "conversation",
144
- role: "assistant",
145
- text: currentTurnText.trim(),
146
- });
147
- }
148
- return {
149
- outputText,
150
- usage,
151
- unrecoverableErrors,
152
- aborted,
153
- allModelsExhausted,
154
- errorMessage,
155
- contextPercent: lastContextPercent,
156
- lastStopReason,
157
- lastToolResults,
158
- orphanedToolCalls: Array.from(activeToolCalls.values()),
159
- };
160
- }
161
- //# sourceMappingURL=consumer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"consumer.js","sourceRoot":"","sources":["../../../src/agents/harness/consumer.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import type { AgentConfig } from "../../shared/config.js";
2
- import type { AgentHarness } from "./types.js";
3
- export interface CreateHarnessOpts {
4
- resourceLoader: any;
5
- settingsManager: any;
6
- providerKeys?: Map<string, string>;
7
- }
8
- export declare function createHarness(agentConfig: AgentConfig, opts: CreateHarnessOpts): AgentHarness;
9
- //# sourceMappingURL=factory.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../src/agents/harness/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAe,MAAM,wBAAwB,CAAC;AAIvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,WAAW,iBAAiB;IAChC,cAAc,EAAE,GAAG,CAAC;IACpB,eAAe,EAAE,GAAG,CAAC;IACrB,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AASD,wBAAgB,aAAa,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,iBAAiB,GAAG,YAAY,CAgB7F"}
@@ -1,25 +0,0 @@
1
- import { ModelCircuitBreaker } from "../model-fallback.js";
2
- import { ClaudeCliHarness } from "./claude-cli-harness.js";
3
- import { PiHarness } from "./pi-harness.js";
4
- function getPrimaryModel(agentConfig) {
5
- if (!agentConfig.models.length) {
6
- throw new Error(`Agent "${agentConfig.name}" has no models configured.`);
7
- }
8
- return agentConfig.models[0];
9
- }
10
- export function createHarness(agentConfig, opts) {
11
- const harnessType = agentConfig.harness?.type || "pi";
12
- if (harnessType === "claude") {
13
- return new ClaudeCliHarness({
14
- model: getPrimaryModel(agentConfig),
15
- });
16
- }
17
- return new PiHarness({
18
- models: agentConfig.models,
19
- circuitBreaker: new ModelCircuitBreaker(),
20
- resourceLoader: opts.resourceLoader,
21
- settingsManager: opts.settingsManager,
22
- providerKeys: opts.providerKeys,
23
- });
24
- }
25
- //# sourceMappingURL=factory.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../src/agents/harness/factory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAS5C,SAAS,eAAe,CAAC,WAAwB;IAC/C,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,UAAU,WAAW,CAAC,IAAI,6BAA6B,CAAC,CAAC;IAC3E,CAAC;IACD,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,WAAwB,EAAE,IAAuB;IAC7E,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO,EAAE,IAAI,IAAI,IAAI,CAAC;IAEtD,IAAI,WAAW,KAAK,QAAQ,EAAE,CAAC;QAC7B,OAAO,IAAI,gBAAgB,CAAC;YAC1B,KAAK,EAAE,eAAe,CAAC,WAAW,CAAC;SACpC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,IAAI,SAAS,CAAC;QACnB,MAAM,EAAE,WAAW,CAAC,MAAM;QAC1B,cAAc,EAAE,IAAI,mBAAmB,EAAE;QACzC,cAAc,EAAE,IAAI,CAAC,cAAc;QACnC,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,YAAY,EAAE,IAAI,CAAC,YAAY;KAChC,CAAC,CAAC;AACL,CAAC"}
@@ -1,9 +0,0 @@
1
- export type { AgentHarness, HarnessConfig, HarnessEvent, HarnessExitEvent, HarnessLogEvent, HarnessRunOpts, HarnessTextDeltaEvent, HarnessToolEndEvent, HarnessToolStartEvent, HarnessType, HarnessUsageEvent, } from "./types.js";
2
- export { PiHarness } from "./pi-harness.js";
3
- export type { PiHarnessOpts } from "./pi-harness.js";
4
- export { ClaudeCliHarness } from "./claude-cli-harness.js";
5
- export type { ClaudeCliHarnessOpts } from "./claude-cli-harness.js";
6
- export { createHarness } from "./factory.js";
7
- export { consumeHarness } from "./consumer.js";
8
- export type { ConsumeResult } from "./consumer.js";
9
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/agents/harness/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,qBAAqB,EACrB,WAAW,EACX,iBAAiB,GAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,YAAY,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC"}
@@ -1,5 +0,0 @@
1
- export { PiHarness } from "./pi-harness.js";
2
- export { ClaudeCliHarness } from "./claude-cli-harness.js";
3
- export { createHarness } from "./factory.js";
4
- export { consumeHarness } from "./consumer.js";
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agents/harness/index.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC"}
@@ -1,18 +0,0 @@
1
- import type { ModelConfig } from "../../shared/config.js";
2
- import { ModelCircuitBreaker } from "../model-fallback.js";
3
- import type { AgentHarness, HarnessEvent, HarnessRunOpts } from "./types.js";
4
- export interface PiHarnessOpts {
5
- models: ModelConfig[];
6
- circuitBreaker: ModelCircuitBreaker;
7
- resourceLoader: any;
8
- settingsManager: any;
9
- providerKeys?: Map<string, string>;
10
- }
11
- export declare class PiHarness implements AgentHarness {
12
- private opts;
13
- private session;
14
- constructor(opts: PiHarnessOpts);
15
- run(prompt: string, runOpts: HarnessRunOpts): AsyncIterable<HarnessEvent>;
16
- dispose(): void;
17
- }
18
- //# sourceMappingURL=pi-harness.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pi-harness.d.ts","sourceRoot":"","sources":["../../../src/agents/harness/pi-harness.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAG1D,OAAO,EAAE,mBAAmB,EAA2C,MAAM,sBAAsB,CAAC;AACpG,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAG7E,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,cAAc,EAAE,mBAAmB,CAAC;IACpC,cAAc,EAAE,GAAG,CAAC;IACpB,eAAe,EAAE,GAAG,CAAC;IACrB,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAMD,qBAAa,SAAU,YAAW,YAAY;IAGhC,OAAO,CAAC,IAAI;IAFxB,OAAO,CAAC,OAAO,CAAa;gBAER,IAAI,EAAE,aAAa;IAEhC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,aAAa,CAAC,YAAY,CAAC;IAgQhF,OAAO,IAAI,IAAI;CAMhB"}