@herdctl/core 0.1.0 → 0.2.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 (80) hide show
  1. package/LICENSE +21 -0
  2. package/dist/config/index.d.ts +1 -1
  3. package/dist/config/index.d.ts.map +1 -1
  4. package/dist/config/index.js +3 -1
  5. package/dist/config/index.js.map +1 -1
  6. package/dist/config/schema.d.ts +992 -0
  7. package/dist/config/schema.d.ts.map +1 -1
  8. package/dist/config/schema.js +76 -0
  9. package/dist/config/schema.js.map +1 -1
  10. package/dist/fleet-manager/fleet-manager.d.ts +1 -0
  11. package/dist/fleet-manager/fleet-manager.d.ts.map +1 -1
  12. package/dist/fleet-manager/fleet-manager.js +1 -0
  13. package/dist/fleet-manager/fleet-manager.js.map +1 -1
  14. package/dist/fleet-manager/job-control.d.ts +38 -0
  15. package/dist/fleet-manager/job-control.d.ts.map +1 -1
  16. package/dist/fleet-manager/job-control.js +190 -4
  17. package/dist/fleet-manager/job-control.js.map +1 -1
  18. package/dist/fleet-manager/schedule-executor.d.ts +20 -0
  19. package/dist/fleet-manager/schedule-executor.d.ts.map +1 -1
  20. package/dist/fleet-manager/schedule-executor.js +113 -3
  21. package/dist/fleet-manager/schedule-executor.js.map +1 -1
  22. package/dist/fleet-manager/types.d.ts +18 -0
  23. package/dist/fleet-manager/types.d.ts.map +1 -1
  24. package/dist/hooks/__tests__/discord-runner.test.d.ts +5 -0
  25. package/dist/hooks/__tests__/discord-runner.test.d.ts.map +1 -0
  26. package/dist/hooks/__tests__/discord-runner.test.js +606 -0
  27. package/dist/hooks/__tests__/discord-runner.test.js.map +1 -0
  28. package/dist/hooks/__tests__/hook-executor.test.d.ts +5 -0
  29. package/dist/hooks/__tests__/hook-executor.test.d.ts.map +1 -0
  30. package/dist/hooks/__tests__/hook-executor.test.js +443 -0
  31. package/dist/hooks/__tests__/hook-executor.test.js.map +1 -0
  32. package/dist/hooks/__tests__/shell-runner.test.d.ts +5 -0
  33. package/dist/hooks/__tests__/shell-runner.test.d.ts.map +1 -0
  34. package/dist/hooks/__tests__/shell-runner.test.js +201 -0
  35. package/dist/hooks/__tests__/shell-runner.test.js.map +1 -0
  36. package/dist/hooks/__tests__/webhook-runner.test.d.ts +5 -0
  37. package/dist/hooks/__tests__/webhook-runner.test.d.ts.map +1 -0
  38. package/dist/hooks/__tests__/webhook-runner.test.js +453 -0
  39. package/dist/hooks/__tests__/webhook-runner.test.js.map +1 -0
  40. package/dist/hooks/hook-executor.d.ts +129 -0
  41. package/dist/hooks/hook-executor.d.ts.map +1 -0
  42. package/dist/hooks/hook-executor.js +195 -0
  43. package/dist/hooks/hook-executor.js.map +1 -0
  44. package/dist/hooks/index.d.ts +15 -0
  45. package/dist/hooks/index.d.ts.map +1 -0
  46. package/dist/hooks/index.js +18 -0
  47. package/dist/hooks/index.js.map +1 -0
  48. package/dist/hooks/runners/discord.d.ts +66 -0
  49. package/dist/hooks/runners/discord.d.ts.map +1 -0
  50. package/dist/hooks/runners/discord.js +294 -0
  51. package/dist/hooks/runners/discord.js.map +1 -0
  52. package/dist/hooks/runners/shell.d.ts +71 -0
  53. package/dist/hooks/runners/shell.d.ts.map +1 -0
  54. package/dist/hooks/runners/shell.js +177 -0
  55. package/dist/hooks/runners/shell.js.map +1 -0
  56. package/dist/hooks/runners/webhook.d.ts +66 -0
  57. package/dist/hooks/runners/webhook.d.ts.map +1 -0
  58. package/dist/hooks/runners/webhook.js +163 -0
  59. package/dist/hooks/runners/webhook.js.map +1 -0
  60. package/dist/hooks/types.d.ts +196 -0
  61. package/dist/hooks/types.d.ts.map +1 -0
  62. package/dist/hooks/types.js +12 -0
  63. package/dist/hooks/types.js.map +1 -0
  64. package/dist/index.d.ts +1 -0
  65. package/dist/index.d.ts.map +1 -1
  66. package/dist/index.js +2 -0
  67. package/dist/index.js.map +1 -1
  68. package/dist/runner/__tests__/sdk-adapter.test.js +4 -3
  69. package/dist/runner/__tests__/sdk-adapter.test.js.map +1 -1
  70. package/dist/runner/message-processor.d.ts +5 -1
  71. package/dist/runner/message-processor.d.ts.map +1 -1
  72. package/dist/runner/message-processor.js +211 -44
  73. package/dist/runner/message-processor.js.map +1 -1
  74. package/dist/runner/sdk-adapter.d.ts.map +1 -1
  75. package/dist/runner/sdk-adapter.js +8 -1
  76. package/dist/runner/sdk-adapter.js.map +1 -1
  77. package/dist/runner/types.d.ts +23 -2
  78. package/dist/runner/types.d.ts.map +1 -1
  79. package/dist/state/schemas/job-metadata.d.ts +4 -4
  80. package/package.json +1 -1
@@ -37,15 +37,32 @@ function safeBoolean(value) {
37
37
  }
38
38
  /**
39
39
  * Check if a value is a valid SDK message type
40
+ *
41
+ * The Claude Agent SDK sends these message types:
42
+ * - assistant: Complete assistant message with nested APIAssistantMessage
43
+ * - stream_event: Partial streaming content (contains RawMessageStreamEvent)
44
+ * - result: Final result message with summary
45
+ * - system: System messages (init, status, compact_boundary, etc.)
46
+ * - user: User messages with nested APIUserMessage
47
+ * - tool_progress: Progress updates for long-running tools
48
+ * - auth_status: Authentication status updates
49
+ *
50
+ * Legacy types (for backwards compatibility):
51
+ * - tool_use: Tool invocation (now part of assistant content blocks)
52
+ * - tool_result: Tool result (now part of user messages)
40
53
  */
41
54
  function isValidMessageType(type) {
42
55
  return (type === "system" ||
43
56
  type === "assistant" ||
44
- type === "tool_use" ||
45
- type === "tool_result" ||
57
+ type === "stream_event" ||
46
58
  type === "result" ||
47
59
  type === "user" ||
48
- type === "error");
60
+ type === "tool_progress" ||
61
+ type === "auth_status" ||
62
+ type === "error" ||
63
+ // Legacy types for backwards compatibility
64
+ type === "tool_use" ||
65
+ type === "tool_result");
49
66
  }
50
67
  // =============================================================================
51
68
  // Message Type Handlers
@@ -74,22 +91,66 @@ function processSystemMessage(message) {
74
91
  sessionId,
75
92
  };
76
93
  }
94
+ /**
95
+ * Extract text content from Anthropic API content blocks
96
+ *
97
+ * The API returns content as an array of content blocks, where text content
98
+ * has type: 'text' with a text field.
99
+ */
100
+ function extractTextFromContentBlocks(content) {
101
+ // Handle null/undefined
102
+ if (content === null || content === undefined)
103
+ return undefined;
104
+ // If it's a string (including empty string), return directly
105
+ if (typeof content === "string") {
106
+ return content;
107
+ }
108
+ // If it's an array of content blocks, extract text blocks
109
+ if (Array.isArray(content)) {
110
+ const textParts = [];
111
+ for (const block of content) {
112
+ if (block && typeof block === "object" && "type" in block) {
113
+ if (block.type === "text" && "text" in block && typeof block.text === "string") {
114
+ textParts.push(block.text);
115
+ }
116
+ }
117
+ }
118
+ return textParts.length > 0 ? textParts.join("\n") : undefined;
119
+ }
120
+ return undefined;
121
+ }
77
122
  /**
78
123
  * Process an assistant message from the SDK
124
+ *
125
+ * SDK assistant messages have the content nested inside a `message` field
126
+ * which is an Anthropic APIAssistantMessage with content blocks.
79
127
  */
80
128
  function processAssistantMessage(message) {
81
129
  const output = {
82
130
  type: "assistant",
83
131
  };
84
- if (message.content !== undefined) {
85
- output.content = message.content;
132
+ // SDK wraps the API message in a `message` field
133
+ // Structure: { type: 'assistant', message: { content: [...], ... }, ... }
134
+ const apiMessage = message.message;
135
+ if (apiMessage?.content !== undefined) {
136
+ const textContent = extractTextFromContentBlocks(apiMessage.content);
137
+ if (textContent) {
138
+ output.content = textContent;
139
+ }
140
+ }
141
+ // Also check top-level content for backwards compatibility
142
+ if (output.content === undefined && message.content !== undefined) {
143
+ const textContent = extractTextFromContentBlocks(message.content);
144
+ if (textContent !== undefined) {
145
+ output.content = textContent;
146
+ }
86
147
  }
87
148
  if (message.partial !== undefined) {
88
149
  output.partial = message.partial;
89
150
  }
90
- // Handle usage statistics
91
- if (message.usage) {
92
- const usage = message.usage;
151
+ // Handle usage statistics (can be at top level or in nested message)
152
+ const usage = (apiMessage?.usage ?? message.usage);
153
+ if (usage) {
93
154
  output.usage = {};
94
155
  if (usage.input_tokens !== undefined) {
95
156
  output.usage.input_tokens = usage.input_tokens;
@@ -101,10 +162,9 @@ function processAssistantMessage(message) {
101
162
  return { output };
102
163
  }
103
164
  /**
104
- * Process a tool use message from the SDK
165
+ * Process a tool use message (legacy type for backwards compatibility)
105
166
  */
106
167
  function processToolUseMessage(message) {
107
- // Tool name is required - try multiple possible field names
108
168
  const toolName = message.tool_name ?? message.name ?? "unknown";
109
169
  const output = {
110
170
  type: "tool_use",
@@ -119,7 +179,7 @@ function processToolUseMessage(message) {
119
179
  return { output };
120
180
  }
121
181
  /**
122
- * Process a tool result message from the SDK
182
+ * Process a tool result message (legacy type for backwards compatibility)
123
183
  */
124
184
  function processToolResultMessage(message) {
125
185
  const output = {
@@ -161,47 +221,130 @@ function processErrorMessage(message) {
161
221
  /**
162
222
  * Process a user message from the SDK
163
223
  *
164
- * User messages represent the input prompt. We log them as system messages
165
- * with subtype "user_input" for traceability.
224
+ * SDK user messages have the content nested inside a `message` field
225
+ * which is an Anthropic APIUserMessage. User messages often contain
226
+ * tool results (responses to assistant tool use).
227
+ *
228
+ * We log them as system messages with subtype "user_input" for traceability,
229
+ * but also extract tool_use_result if present.
166
230
  */
167
231
  function processUserMessage(message) {
232
+ // Check if this is a tool result response
233
+ const toolUseResult = message.tool_use_result;
234
+ if (toolUseResult !== undefined) {
235
+ const output = {
236
+ type: "tool_result",
237
+ success: true,
238
+ };
239
+ // Extract the result content
240
+ if (typeof toolUseResult === "string") {
241
+ output.result = toolUseResult;
242
+ }
243
+ else if (toolUseResult && typeof toolUseResult === "object") {
244
+ // Try to extract meaningful content from the result object
245
+ const resultObj = toolUseResult;
246
+ if ("content" in resultObj) {
247
+ output.result = extractTextFromContentBlocks(resultObj.content) ?? JSON.stringify(toolUseResult, null, 2);
248
+ }
249
+ else {
250
+ output.result = JSON.stringify(toolUseResult, null, 2);
251
+ }
252
+ }
253
+ return { output };
254
+ }
255
+ // Regular user input message
168
256
  const output = {
169
257
  type: "system",
170
258
  subtype: "user_input",
171
259
  };
172
- if (message.content !== undefined) {
173
- output.content =
174
- typeof message.content === "string"
175
- ? message.content
176
- : JSON.stringify(message.content);
260
+ // SDK wraps the API message in a `message` field
261
+ const apiMessage = message.message;
262
+ const content = apiMessage?.content ?? message.content;
263
+ if (content !== undefined) {
264
+ const textContent = extractTextFromContentBlocks(content);
265
+ output.content = textContent ?? (typeof content === "string" ? content : JSON.stringify(content));
177
266
  }
178
267
  return { output };
179
268
  }
180
269
  /**
181
- * Process a result message from the SDK
270
+ * Process a stream_event message from the SDK
182
271
  *
183
- * Result messages are an alternative format for tool results.
184
- * We normalize them to our standard tool_result format.
272
+ * Stream events contain partial content as messages are being generated.
273
+ * The event field contains a RawMessageStreamEvent from the Anthropic API.
185
274
  */
186
- function processResultMessage(message) {
275
+ function processStreamEventMessage(message) {
187
276
  const output = {
188
- type: "tool_result",
277
+ type: "assistant",
278
+ partial: true,
189
279
  };
190
- if (message.tool_use_id) {
191
- output.tool_use_id = message.tool_use_id;
280
+ // Extract the streaming event
281
+ const event = message.event;
282
+ if (event) {
283
+ // Handle content_block_delta events (streaming text)
284
+ if (event.type === "content_block_delta" && event.delta?.type === "text_delta") {
285
+ output.content = event.delta.text;
286
+ }
287
+ // Handle content_block_start events
288
+ else if (event.type === "content_block_start" && event.content_block?.type === "text") {
289
+ output.content = event.content_block.text;
290
+ }
192
291
  }
193
- // Result messages may have the result in different fields
194
- if (message.result !== undefined) {
195
- output.result = message.result;
292
+ return { output };
293
+ }
294
+ /**
295
+ * Process a tool_progress message from the SDK
296
+ *
297
+ * Tool progress messages indicate that a long-running tool is still executing.
298
+ */
299
+ function processToolProgressMessage(message) {
300
+ const output = {
301
+ type: "system",
302
+ subtype: "tool_progress",
303
+ };
304
+ if (message.tool_name) {
305
+ output.content = `Tool ${message.tool_name} in progress`;
196
306
  }
197
- else if (message.content !== undefined) {
198
- output.result = message.content;
307
+ return { output };
308
+ }
309
+ /**
310
+ * Process an auth_status message from the SDK
311
+ *
312
+ * Auth status messages indicate authentication state changes.
313
+ */
314
+ function processAuthStatusMessage(message) {
315
+ const authMessage = message;
316
+ const output = {
317
+ type: "system",
318
+ subtype: "auth_status",
319
+ };
320
+ if (authMessage.error) {
321
+ output.content = `Authentication error: ${authMessage.error}`;
199
322
  }
200
- if (message.success !== undefined) {
201
- output.success = message.success;
323
+ else if (authMessage.output && authMessage.output.length > 0) {
324
+ output.content = authMessage.output.join("\n");
202
325
  }
203
- if (message.error !== undefined) {
204
- output.error = message.error;
326
+ return { output };
327
+ }
328
+ /**
329
+ * Process a result message from the SDK
330
+ *
331
+ * SDK result messages indicate the completion of a query and contain
332
+ * summary information, usage statistics, and the final result.
333
+ */
334
+ function processResultMessage(message) {
335
+ const resultMsg = message;
336
+ // Determine if this is an error result
337
+ const isError = resultMsg.is_error || (resultMsg.subtype && resultMsg.subtype !== "success");
338
+ const output = {
339
+ type: "tool_result",
340
+ success: !isError,
341
+ };
342
+ // Extract the result content
343
+ if (resultMsg.result !== undefined) {
344
+ output.result = resultMsg.result;
345
+ }
346
+ else if (resultMsg.errors && resultMsg.errors.length > 0) {
347
+ output.error = resultMsg.errors.join("; ");
205
348
  }
206
349
  return { output };
207
350
  }
@@ -266,21 +409,31 @@ export function processSDKMessage(message) {
266
409
  return processSystemMessage(message);
267
410
  case "assistant":
268
411
  return processAssistantMessage(message);
269
- case "tool_use":
270
- return processToolUseMessage(message);
271
- case "tool_result":
272
- return processToolResultMessage(message);
412
+ case "stream_event":
413
+ return processStreamEventMessage(message);
273
414
  case "result":
274
415
  return processResultMessage(message);
275
416
  case "user":
276
417
  return processUserMessage(message);
418
+ case "tool_progress":
419
+ return processToolProgressMessage(message);
420
+ case "auth_status":
421
+ return processAuthStatusMessage(message);
277
422
  case "error":
278
423
  return processErrorMessage(message);
424
+ // Legacy types for backwards compatibility with tests
425
+ case "tool_use":
426
+ return processToolUseMessage(message);
427
+ case "tool_result":
428
+ return processToolResultMessage(message);
279
429
  }
280
430
  }
281
431
  /**
282
432
  * Check if a message indicates the end of execution
283
433
  *
434
+ * The SDK signals completion via a 'result' message type, which contains
435
+ * the final summary and usage statistics.
436
+ *
284
437
  * @param message - The SDK message to check
285
438
  * @returns true if this is a terminal message
286
439
  */
@@ -293,6 +446,10 @@ export function isTerminalMessage(message) {
293
446
  if (message.type === "error") {
294
447
  return true;
295
448
  }
449
+ // Result messages indicate query completion
450
+ if (message.type === "result") {
451
+ return true;
452
+ }
296
453
  // System messages with certain subtypes indicate completion
297
454
  if (message.type === "system") {
298
455
  const subtype = message.subtype;
@@ -320,7 +477,8 @@ function truncateSummary(text) {
320
477
  *
321
478
  * Looks for summaries in the following order:
322
479
  * 1. Explicit `summary` field on the message (truncated to 500 chars)
323
- * 2. Short assistant message content (≤500 chars, non-partial)
480
+ * 2. Result message with `result` field (SDK final result)
481
+ * 3. Short assistant message content (≤500 chars, non-partial)
324
482
  *
325
483
  * @param message - The SDK message to extract summary from
326
484
  * @returns Summary string if present, undefined otherwise
@@ -335,11 +493,20 @@ export function extractSummary(message) {
335
493
  const summaryStr = String(message.summary);
336
494
  return truncateSummary(summaryStr);
337
495
  }
338
- // For assistant messages, use content as potential summary
339
- if (message.type === "assistant" && message.content && !message.partial) {
340
- // Only use if it looks like a conclusion (short enough)
341
- if (message.content.length <= MAX_SUMMARY_LENGTH) {
342
- return message.content;
496
+ // For result messages, use the result field as summary
497
+ if (message.type === "result") {
498
+ const resultMsg = message;
499
+ if (resultMsg.result) {
500
+ return truncateSummary(resultMsg.result);
501
+ }
502
+ }
503
+ // For assistant messages, try to extract content from nested message
504
+ if (message.type === "assistant" && !message.partial) {
505
+ const apiMessage = message.message;
506
+ const content = apiMessage?.content ?? message.content;
507
+ const textContent = extractTextFromContentBlocks(content);
508
+ if (textContent && textContent.length <= MAX_SUMMARY_LENGTH) {
509
+ return textContent;
343
510
  }
344
511
  }
345
512
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"message-processor.js","sourceRoot":"","sources":["../../src/runner/message-processor.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,gFAAgF;AAChF,qBAAqB;AACrB,gFAAgF;AAEhF;;GAEG;AACH,SAAS,UAAU,CAAC,KAAc;IAChC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAC1C,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,2CAA2C;IAC3C,IAAI,CAAC;QACH,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAAC,KAAc;IACjC,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CACzB,IAAa;IASb,OAAO,CACL,IAAI,KAAK,QAAQ;QACjB,IAAI,KAAK,WAAW;QACpB,IAAI,KAAK,UAAU;QACnB,IAAI,KAAK,aAAa;QACtB,IAAI,KAAK,QAAQ;QACjB,IAAI,KAAK,MAAM;QACf,IAAI,KAAK,OAAO,CACjB,CAAC;AACJ,CAAC;AAED,gFAAgF;AAChF,wBAAwB;AACxB,gFAAgF;AAEhF;;;;;GAKG;AACH,SAAS,oBAAoB,CAAC,OAAmB;IAC/C,MAAM,MAAM,GAAmB;QAC7B,IAAI,EAAE,QAAQ;KACf,CAAC;IAEF,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACnC,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACnC,CAAC;IAED,qDAAqD;IACrD,+EAA+E;IAC/E,MAAM,SAAS,GACb,OAAO,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;IAE9D,OAAO;QACL,MAAM;QACN,SAAS;KACV,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,uBAAuB,CAAC,OAAmB;IAClD,MAAM,MAAM,GAAmB;QAC7B,IAAI,EAAE,WAAW;KAClB,CAAC;IAEF,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAClC,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACnC,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAClC,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,OAAkB,CAAC;IAC9C,CAAC;IAED,0BAA0B;IAC1B,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,KAAK,GAAG,OAAO,CAAC,KAGrB,CAAC;QACF,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC;QAClB,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACrC,MAAM,CAAC,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;QACjD,CAAC;QACD,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACtC,MAAM,CAAC,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;QACnD,CAAC;IACH,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAAC,OAAmB;IAChD,4DAA4D;IAC5D,MAAM,QAAQ,GAAG,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,IAAI,IAAI,SAAS,CAAC;IAEhE,MAAM,MAAM,GAAmB;QAC7B,IAAI,EAAE,UAAU;QAChB,SAAS,EAAE,QAAkB;KAC9B,CAAC;IAEF,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACxB,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAC3C,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAChC,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC/B,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,SAAS,wBAAwB,CAAC,OAAmB;IACnD,MAAM,MAAM,GAAmB;QAC7B,IAAI,EAAE,aAAa;KACpB,CAAC;IAEF,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACxB,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAC3C,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACjC,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IACjC,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAClC,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,OAAkB,CAAC;IAC9C,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAChC,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,KAAe,CAAC;IACzC,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,OAAmB;IAC9C,MAAM,MAAM,GAAmB;QAC7B,IAAI,EAAE,OAAO;QACb,OAAO,EAAG,OAAO,CAAC,OAAkB,IAAI,eAAe;KACxD,CAAC;IAEF,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC7B,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,KAAe,CAAC;IACzC,CAAC;IAED,OAAO;QACL,MAAM;QACN,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAS,kBAAkB,CAAC,OAAmB;IAC7C,MAAM,MAAM,GAAmB;QAC7B,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,YAAY;KACtB,CAAC;IAEF,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAClC,MAAM,CAAC,OAAO;YACZ,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;gBACjC,CAAC,CAAC,OAAO,CAAC,OAAO;gBACjB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,CAAC;AACpB,CAAC;AAED;;;;;GAKG;AACH,SAAS,oBAAoB,CAAC,OAAmB;IAC/C,MAAM,MAAM,GAAmB;QAC7B,IAAI,EAAE,aAAa;KACpB,CAAC;IAEF,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACxB,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAC3C,CAAC;IAED,0DAA0D;IAC1D,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACjC,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IACjC,CAAC;SAAM,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACzC,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAClC,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAClC,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,OAAkB,CAAC;IAC9C,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAChC,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,KAAe,CAAC;IACzC,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,CAAC;AACpB,CAAC;AAED,gFAAgF;AAChF,2BAA2B;AAC3B,gFAAgF;AAEhF;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAmB;IACnD,oEAAoE;IACpE,gEAAgE;IAChE,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC9C,OAAO;YACL,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,wCAAwC;gBACjD,OAAO,EAAE,mBAAmB;aAC7B;SACF,CAAC;IACJ,CAAC;IAED,qDAAqD;IACrD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO;YACL,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,qCAAqC,OAAO,OAAO,EAAE;gBAC9D,OAAO,EAAE,mBAAmB;aAC7B;SACF,CAAC;IACJ,CAAC;IAED,wBAAwB;IACxB,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAEjC,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,EAAE,CAAC;QACrC,qDAAqD;QACrD,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC;QAC3D,OAAO;YACL,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,yBAAyB,WAAW,EAAE;gBAC/C,OAAO,EAAE,cAAc;aACxB;SACF,CAAC;IACJ,CAAC;IAED,8BAA8B;IAC9B,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,QAAQ;YACX,OAAO,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAEvC,KAAK,WAAW;YACd,OAAO,uBAAuB,CAAC,OAAO,CAAC,CAAC;QAE1C,KAAK,UAAU;YACb,OAAO,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAExC,KAAK,aAAa;YAChB,OAAO,wBAAwB,CAAC,OAAO,CAAC,CAAC;QAE3C,KAAK,QAAQ;YACX,OAAO,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAEvC,KAAK,MAAM;YACT,OAAO,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAErC,KAAK,OAAO;YACV,OAAO,mBAAmB,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAmB;IACnD,qEAAqE;IACrE,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC7E,OAAO,KAAK,CAAC;IACf,CAAC;IAED,8BAA8B;IAC9B,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,4DAA4D;IAC5D,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,OAAO,CAAC,OAA6B,CAAC;QACtD,IACE,OAAO,KAAK,KAAK;YACjB,OAAO,KAAK,UAAU;YACtB,OAAO,KAAK,aAAa,EACzB,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,2CAA2C;AAC3C,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAE/B;;GAEG;AACH,SAAS,eAAe,CAAC,IAAY;IACnC,IAAI,IAAI,CAAC,MAAM,IAAI,kBAAkB,EAAE,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,kBAAkB,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;AACvD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,cAAc,CAAC,OAAmB;IAChD,4CAA4C;IAC5C,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC7E,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,0DAA0D;IAC1D,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC3C,OAAO,eAAe,CAAC,UAAU,CAAC,CAAC;IACrC,CAAC;IAED,2DAA2D;IAC3D,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,IAAI,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACxE,wDAAwD;QACxD,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,IAAI,kBAAkB,EAAE,CAAC;YACjD,OAAO,OAAO,CAAC,OAAO,CAAC;QACzB,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"message-processor.js","sourceRoot":"","sources":["../../src/runner/message-processor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sdk-adapter.d.ts","sourceRoot":"","sources":["../../src/runner/sdk-adapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,eAAe,EAChB,MAAM,YAAY,CAAC;AAyBpB;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,kBAAkB,CAuBxE;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,SAAS,GAChD,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAYpC;AAMD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,aAAa,GAAG,eAAe,CAcvE;AAMD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,2BAA2B;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kCAAkC;IAClC,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,aAAa,EACpB,OAAO,GAAE,kBAAuB,GAC/B,eAAe,CAqCjB"}
1
+ {"version":3,"file":"sdk-adapter.d.ts","sourceRoot":"","sources":["../../src/runner/sdk-adapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,eAAe,EAChB,MAAM,YAAY,CAAC;AA2BpB;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,kBAAkB,CAuBxE;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,SAAS,GAChD,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAYpC;AAMD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,aAAa,GAAG,eAAe,CAcvE;AAMD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,2BAA2B;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kCAAkC;IAClC,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,aAAa,EACpB,OAAO,GAAE,kBAAuB,GAC/B,eAAe,CA2CjB"}
@@ -13,8 +13,10 @@
13
13
  const DEFAULT_PERMISSION_MODE = "acceptEdits";
14
14
  /**
15
15
  * Default setting sources for SDK initialization
16
+ * Empty by default - autonomous agents should NOT load project/local settings
17
+ * (like CLAUDE.md) which are meant for interactive Claude Code usage
16
18
  */
17
- const DEFAULT_SETTING_SOURCES = ["project", "local"];
19
+ const DEFAULT_SETTING_SOURCES = [];
18
20
  /**
19
21
  * Default preset when no system prompt is specified
20
22
  */
@@ -126,6 +128,11 @@ export function toSDKOptions(agent, options = {}) {
126
128
  result.settingSources = [...DEFAULT_SETTING_SOURCES];
127
129
  // MCP servers (always include, even if empty)
128
130
  result.mcpServers = transformMcpServers(agent.mcp_servers);
131
+ // Max turns limit (agent-level or session-level)
132
+ const maxTurns = agent.max_turns ?? agent.session?.max_turns;
133
+ if (maxTurns !== undefined) {
134
+ result.maxTurns = maxTurns;
135
+ }
129
136
  // Session resume/fork
130
137
  if (options.resume) {
131
138
  result.resume = options.resume;
@@ -1 +1 @@
1
- {"version":3,"file":"sdk-adapter.js","sourceRoot":"","sources":["../../src/runner/sdk-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk-adapter.js","sourceRoot":"","sources":["../../src/runner/sdk-adapter.ts"],"names":[],"mappings":"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"}
@@ -30,16 +30,35 @@ export interface RunnerOptions {
30
30
  }
31
31
  /**
32
32
  * SDK message types (as received from Claude Agent SDK)
33
+ *
34
+ * The SDK sends various message types:
35
+ * - system: System messages (init, status, compact_boundary, etc.)
36
+ * - assistant: Complete assistant messages with nested API message
37
+ * - stream_event: Partial streaming content with RawMessageStreamEvent
38
+ * - result: Final query result with summary and usage stats
39
+ * - user: User messages with nested API message, may contain tool_use_result
40
+ * - tool_progress: Progress updates for long-running tools
41
+ * - auth_status: Authentication status updates
42
+ * - error: Error messages
43
+ *
44
+ * Legacy types (for backwards compatibility with tests):
45
+ * - tool_use: Tool invocation (now part of assistant content blocks)
46
+ * - tool_result: Tool result (now part of user messages)
33
47
  */
34
48
  export interface SDKMessage {
35
- type: "system" | "assistant" | "tool_use" | "tool_result" | "result" | "user" | "error";
49
+ type: "system" | "assistant" | "stream_event" | "result" | "user" | "tool_progress" | "auth_status" | "error" | "tool_use" | "tool_result";
36
50
  subtype?: string;
37
51
  content?: string;
38
52
  session_id?: string;
39
53
  name?: string;
40
54
  input?: unknown;
41
55
  tool_use_id?: string;
42
- message?: string;
56
+ tool_name?: string;
57
+ tool_use_result?: unknown;
58
+ message?: unknown;
59
+ event?: unknown;
60
+ result?: unknown;
61
+ success?: boolean;
43
62
  code?: string;
44
63
  [key: string]: unknown;
45
64
  }
@@ -122,6 +141,8 @@ export interface SDKQueryOptions {
122
141
  mcpServers?: Record<string, SDKMcpServerConfig>;
123
142
  resume?: string;
124
143
  forkSession?: boolean;
144
+ /** Maximum number of agentic turns before stopping */
145
+ maxTurns?: number;
125
146
  }
126
147
  /**
127
148
  * Result of processing an SDK message
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/runner/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/runner/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAMrE;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,yCAAyC;IACzC,KAAK,EAAE,aAAa,CAAC;IACrB,sCAAsC;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,iCAAiC;IACjC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0DAA0D;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gCAAgC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yDAAyD;IACzD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iGAAiG;IACjG,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,UAAU;IACzB,IAAI,EACA,QAAQ,GACR,WAAW,GACX,cAAc,GACd,QAAQ,GACR,MAAM,GACN,eAAe,GACf,aAAa,GACb,OAAO,GAEP,UAAU,GACV,aAAa,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE,UAAU,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE5E;;GAEG;AACH,MAAM,WAAW,0BAA2B,SAAQ,aAAa;IAC/D,2CAA2C;IAC3C,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B;AAMD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,wBAAwB;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,8DAA8D;IAC9D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,6CAA6C;IAC7C,IAAI,CAAC,EAAE,gBAAgB,GAAG,WAAW,GAAG,oBAAoB,GAAG,SAAS,CAAC;IACzE,gFAAgF;IAChF,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,sEAAsE;IACtE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,+BAA+B;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,6CAA6C;IAC7C,OAAO,EAAE,OAAO,CAAC;IACjB,8BAA8B;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,uCAAuC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,yDAAyD;IACzD,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,0BAA0B;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAMD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GACvB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAExC;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,cAAc,CAAC,EAAE,SAAS,GAAG,aAAa,GAAG,mBAAmB,GAAG,MAAM,CAAC;IAC1E,YAAY,CAAC,EAAE,eAAe,CAAC;IAC/B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,sDAAsD;IACtD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAMD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,6CAA6C;IAC7C,MAAM,EAAE,cAAc,CAAC;IACvB,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wCAAwC;IACxC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB"}
@@ -52,14 +52,14 @@ export declare const JobMetadataSchema: z.ZodObject<{
52
52
  /** Path to the output file containing full session output */
53
53
  output_file: z.ZodOptional<z.ZodNullable<z.ZodString>>;
54
54
  }, "strip", z.ZodTypeAny, {
55
- status: "running" | "pending" | "completed" | "failed" | "cancelled";
55
+ status: "completed" | "failed" | "cancelled" | "running" | "pending";
56
56
  id: string;
57
57
  started_at: string;
58
58
  agent: string;
59
59
  trigger_type: "webhook" | "chat" | "manual" | "schedule" | "fork";
60
60
  prompt?: string | null | undefined;
61
61
  schedule?: string | null | undefined;
62
- exit_reason?: "max_turns" | "timeout" | "error" | "success" | "cancelled" | null | undefined;
62
+ exit_reason?: "max_turns" | "timeout" | "cancelled" | "error" | "success" | null | undefined;
63
63
  session_id?: string | null | undefined;
64
64
  forked_from?: string | null | undefined;
65
65
  finished_at?: string | null | undefined;
@@ -67,14 +67,14 @@ export declare const JobMetadataSchema: z.ZodObject<{
67
67
  summary?: string | null | undefined;
68
68
  output_file?: string | null | undefined;
69
69
  }, {
70
- status: "running" | "pending" | "completed" | "failed" | "cancelled";
70
+ status: "completed" | "failed" | "cancelled" | "running" | "pending";
71
71
  id: string;
72
72
  started_at: string;
73
73
  agent: string;
74
74
  trigger_type: "webhook" | "chat" | "manual" | "schedule" | "fork";
75
75
  prompt?: string | null | undefined;
76
76
  schedule?: string | null | undefined;
77
- exit_reason?: "max_turns" | "timeout" | "error" | "success" | "cancelled" | null | undefined;
77
+ exit_reason?: "max_turns" | "timeout" | "cancelled" | "error" | "success" | null | undefined;
78
78
  session_id?: string | null | undefined;
79
79
  forked_from?: string | null | undefined;
80
80
  finished_at?: string | null | undefined;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@herdctl/core",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "Core library for herdctl fleet management",
5
5
  "license": "MIT",
6
6
  "type": "module",