cyrus-claude-runner 0.2.3 → 0.2.4
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.
- package/dist/ClaudeRunner.d.ts +14 -36
- package/dist/ClaudeRunner.d.ts.map +1 -1
- package/dist/ClaudeRunner.js +37 -98
- package/dist/ClaudeRunner.js.map +1 -1
- package/dist/formatter.d.ts +71 -0
- package/dist/formatter.d.ts.map +1 -0
- package/dist/formatter.js +358 -0
- package/dist/formatter.js.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/package.json +8 -6
package/dist/ClaudeRunner.d.ts
CHANGED
|
@@ -1,43 +1,11 @@
|
|
|
1
1
|
import { EventEmitter } from "node:events";
|
|
2
|
-
import { type SDKMessage
|
|
2
|
+
import { type SDKMessage } from "@anthropic-ai/claude-agent-sdk";
|
|
3
|
+
import { type IAgentRunner } from "cyrus-core";
|
|
3
4
|
export declare class AbortError extends Error {
|
|
4
5
|
constructor(message?: string);
|
|
5
6
|
}
|
|
7
|
+
import { type IMessageFormatter } from "./formatter.js";
|
|
6
8
|
import type { ClaudeRunnerConfig, ClaudeRunnerEvents, ClaudeSessionInfo } from "./types.js";
|
|
7
|
-
/**
|
|
8
|
-
* Streaming prompt controller that implements AsyncIterable<SDKUserMessage>
|
|
9
|
-
*/
|
|
10
|
-
export declare class StreamingPrompt {
|
|
11
|
-
private messageQueue;
|
|
12
|
-
private resolvers;
|
|
13
|
-
private isComplete;
|
|
14
|
-
private sessionId;
|
|
15
|
-
constructor(sessionId: string | null, initialPrompt?: string);
|
|
16
|
-
/**
|
|
17
|
-
* Update the session ID (used when session ID is received from Claude)
|
|
18
|
-
*/
|
|
19
|
-
updateSessionId(sessionId: string): void;
|
|
20
|
-
/**
|
|
21
|
-
* Add a new message to the stream
|
|
22
|
-
*/
|
|
23
|
-
addMessage(content: string): void;
|
|
24
|
-
/**
|
|
25
|
-
* Mark the stream as complete (no more messages will be added)
|
|
26
|
-
*/
|
|
27
|
-
complete(): void;
|
|
28
|
-
/**
|
|
29
|
-
* Check if the stream is complete
|
|
30
|
-
*/
|
|
31
|
-
get completed(): boolean;
|
|
32
|
-
/**
|
|
33
|
-
* Process pending resolvers with queued messages
|
|
34
|
-
*/
|
|
35
|
-
private processQueue;
|
|
36
|
-
/**
|
|
37
|
-
* AsyncIterable implementation
|
|
38
|
-
*/
|
|
39
|
-
[Symbol.asyncIterator](): AsyncIterator<SDKUserMessage>;
|
|
40
|
-
}
|
|
41
9
|
export declare interface ClaudeRunner {
|
|
42
10
|
on<K extends keyof ClaudeRunnerEvents>(event: K, listener: ClaudeRunnerEvents[K]): this;
|
|
43
11
|
emit<K extends keyof ClaudeRunnerEvents>(event: K, ...args: Parameters<ClaudeRunnerEvents[K]>): boolean;
|
|
@@ -45,7 +13,11 @@ export declare interface ClaudeRunner {
|
|
|
45
13
|
/**
|
|
46
14
|
* Manages Claude SDK sessions and communication
|
|
47
15
|
*/
|
|
48
|
-
export declare class ClaudeRunner extends EventEmitter {
|
|
16
|
+
export declare class ClaudeRunner extends EventEmitter implements IAgentRunner {
|
|
17
|
+
/**
|
|
18
|
+
* ClaudeRunner supports streaming input via startStreaming(), addStreamMessage(), and completeStream()
|
|
19
|
+
*/
|
|
20
|
+
readonly supportsStreamingInput = true;
|
|
49
21
|
private config;
|
|
50
22
|
private abortController;
|
|
51
23
|
private sessionInfo;
|
|
@@ -54,6 +26,8 @@ export declare class ClaudeRunner extends EventEmitter {
|
|
|
54
26
|
private messages;
|
|
55
27
|
private streamingPrompt;
|
|
56
28
|
private cyrusHome;
|
|
29
|
+
private formatter;
|
|
30
|
+
private pendingResultMessage;
|
|
57
31
|
constructor(config: ClaudeRunnerConfig);
|
|
58
32
|
/**
|
|
59
33
|
* Start a new Claude session with string prompt (legacy mode)
|
|
@@ -102,6 +76,10 @@ export declare class ClaudeRunner extends EventEmitter {
|
|
|
102
76
|
* Get all messages from current session
|
|
103
77
|
*/
|
|
104
78
|
getMessages(): SDKMessage[];
|
|
79
|
+
/**
|
|
80
|
+
* Get the message formatter for this runner
|
|
81
|
+
*/
|
|
82
|
+
getFormatter(): IMessageFormatter;
|
|
105
83
|
/**
|
|
106
84
|
* Process individual SDK messages and emit appropriate events
|
|
107
85
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClaudeRunner.d.ts","sourceRoot":"","sources":["../src/ClaudeRunner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAU3C,OAAO,EAEN,KAAK,UAAU,
|
|
1
|
+
{"version":3,"file":"ClaudeRunner.d.ts","sourceRoot":"","sources":["../src/ClaudeRunner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAU3C,OAAO,EAEN,KAAK,UAAU,EAEf,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,KAAK,YAAY,EAAmB,MAAM,YAAY,CAAC;AAIhE,qBAAa,UAAW,SAAQ,KAAK;gBACxB,OAAO,CAAC,EAAE,MAAM;CAI5B;AAED,OAAO,EAA0B,KAAK,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,KAAK,EACX,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,MAAM,YAAY,CAAC;AAEpB,MAAM,CAAC,OAAO,WAAW,YAAY;IACpC,EAAE,CAAC,CAAC,SAAS,MAAM,kBAAkB,EACpC,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC7B,IAAI,CAAC;IACR,IAAI,CAAC,CAAC,SAAS,MAAM,kBAAkB,EACtC,KAAK,EAAE,CAAC,EACR,GAAG,IAAI,EAAE,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,GACxC,OAAO,CAAC;CACX;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,YAAa,YAAW,YAAY;IACrE;;OAEG;IACH,QAAQ,CAAC,sBAAsB,QAAQ;IAEvC,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,WAAW,CAAkC;IACrD,OAAO,CAAC,SAAS,CAA4B;IAC7C,OAAO,CAAC,iBAAiB,CAA4B;IACrD,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAoB;IACrC,OAAO,CAAC,oBAAoB,CAA2B;gBAE3C,MAAM,EAAE,kBAAkB;IAYtC;;OAEG;IACG,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAIvD;;OAEG;IACG,cAAc,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAIxE;;OAEG;IACH,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAOvC;;OAEG;IACH,cAAc,IAAI,IAAI;IAMtB;;OAEG;YACW,eAAe;IAgV7B;;OAEG;IACH,oBAAoB,CAAC,QAAQ,EAAE;QAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;KAC7B,GAAG,IAAI;IAyCR;;OAEG;IACH,IAAI,IAAI,IAAI;IAkBZ;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,WAAW,IAAI,OAAO;IAQtB;;OAEG;IACH,cAAc,IAAI,iBAAiB,GAAG,IAAI;IAI1C;;OAEG;IACH,WAAW,IAAI,UAAU,EAAE;IAI3B;;OAEG;IACH,YAAY,IAAI,iBAAiB;IAIjC;;OAEG;IACH,OAAO,CAAC,cAAc;IAsCtB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IA0BzB;;OAEG;IACH,OAAO,CAAC,YAAY;IA0EpB;;OAEG;IACH,OAAO,CAAC,qBAAqB;CAqG7B"}
|
package/dist/ClaudeRunner.js
CHANGED
|
@@ -2,6 +2,7 @@ import { EventEmitter } from "node:events";
|
|
|
2
2
|
import { createWriteStream, existsSync, mkdirSync, readFileSync, writeFileSync, } from "node:fs";
|
|
3
3
|
import { join } from "node:path";
|
|
4
4
|
import { query, } from "@anthropic-ai/claude-agent-sdk";
|
|
5
|
+
import { StreamingPrompt } from "cyrus-core";
|
|
5
6
|
import dotenv from "dotenv";
|
|
6
7
|
// AbortError is no longer exported in v1.0.95, so we define it locally
|
|
7
8
|
export class AbortError extends Error {
|
|
@@ -10,101 +11,15 @@ export class AbortError extends Error {
|
|
|
10
11
|
this.name = "AbortError";
|
|
11
12
|
}
|
|
12
13
|
}
|
|
13
|
-
|
|
14
|
-
* Streaming prompt controller that implements AsyncIterable<SDKUserMessage>
|
|
15
|
-
*/
|
|
16
|
-
export class StreamingPrompt {
|
|
17
|
-
messageQueue = [];
|
|
18
|
-
resolvers = [];
|
|
19
|
-
isComplete = false;
|
|
20
|
-
sessionId;
|
|
21
|
-
constructor(sessionId, initialPrompt) {
|
|
22
|
-
this.sessionId = sessionId;
|
|
23
|
-
// Add initial prompt if provided
|
|
24
|
-
if (initialPrompt) {
|
|
25
|
-
this.addMessage(initialPrompt);
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* Update the session ID (used when session ID is received from Claude)
|
|
30
|
-
*/
|
|
31
|
-
updateSessionId(sessionId) {
|
|
32
|
-
this.sessionId = sessionId;
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Add a new message to the stream
|
|
36
|
-
*/
|
|
37
|
-
addMessage(content) {
|
|
38
|
-
if (this.isComplete) {
|
|
39
|
-
throw new Error("Cannot add message to completed stream");
|
|
40
|
-
}
|
|
41
|
-
const message = {
|
|
42
|
-
type: "user",
|
|
43
|
-
message: {
|
|
44
|
-
role: "user",
|
|
45
|
-
content: content,
|
|
46
|
-
},
|
|
47
|
-
parent_tool_use_id: null,
|
|
48
|
-
session_id: this.sessionId || "pending", // Use placeholder until assigned by Claude
|
|
49
|
-
};
|
|
50
|
-
this.messageQueue.push(message);
|
|
51
|
-
this.processQueue();
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Mark the stream as complete (no more messages will be added)
|
|
55
|
-
*/
|
|
56
|
-
complete() {
|
|
57
|
-
this.isComplete = true;
|
|
58
|
-
this.processQueue();
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Check if the stream is complete
|
|
62
|
-
*/
|
|
63
|
-
get completed() {
|
|
64
|
-
return this.isComplete;
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Process pending resolvers with queued messages
|
|
68
|
-
*/
|
|
69
|
-
processQueue() {
|
|
70
|
-
while (this.resolvers.length > 0 &&
|
|
71
|
-
(this.messageQueue.length > 0 || this.isComplete)) {
|
|
72
|
-
const resolver = this.resolvers.shift();
|
|
73
|
-
if (this.messageQueue.length > 0) {
|
|
74
|
-
const message = this.messageQueue.shift();
|
|
75
|
-
resolver({ value: message, done: false });
|
|
76
|
-
}
|
|
77
|
-
else if (this.isComplete) {
|
|
78
|
-
resolver({ value: undefined, done: true });
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
/**
|
|
83
|
-
* AsyncIterable implementation
|
|
84
|
-
*/
|
|
85
|
-
[Symbol.asyncIterator]() {
|
|
86
|
-
return {
|
|
87
|
-
next: () => {
|
|
88
|
-
return new Promise((resolve) => {
|
|
89
|
-
if (this.messageQueue.length > 0) {
|
|
90
|
-
const message = this.messageQueue.shift();
|
|
91
|
-
resolve({ value: message, done: false });
|
|
92
|
-
}
|
|
93
|
-
else if (this.isComplete) {
|
|
94
|
-
resolve({ value: undefined, done: true });
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
this.resolvers.push(resolve);
|
|
98
|
-
}
|
|
99
|
-
});
|
|
100
|
-
},
|
|
101
|
-
};
|
|
102
|
-
}
|
|
103
|
-
}
|
|
14
|
+
import { ClaudeMessageFormatter } from "./formatter.js";
|
|
104
15
|
/**
|
|
105
16
|
* Manages Claude SDK sessions and communication
|
|
106
17
|
*/
|
|
107
18
|
export class ClaudeRunner extends EventEmitter {
|
|
19
|
+
/**
|
|
20
|
+
* ClaudeRunner supports streaming input via startStreaming(), addStreamMessage(), and completeStream()
|
|
21
|
+
*/
|
|
22
|
+
supportsStreamingInput = true;
|
|
108
23
|
config;
|
|
109
24
|
abortController = null;
|
|
110
25
|
sessionInfo = null;
|
|
@@ -113,10 +28,13 @@ export class ClaudeRunner extends EventEmitter {
|
|
|
113
28
|
messages = [];
|
|
114
29
|
streamingPrompt = null;
|
|
115
30
|
cyrusHome;
|
|
31
|
+
formatter;
|
|
32
|
+
pendingResultMessage = null;
|
|
116
33
|
constructor(config) {
|
|
117
34
|
super();
|
|
118
35
|
this.config = config;
|
|
119
36
|
this.cyrusHome = config.cyrusHome;
|
|
37
|
+
this.formatter = new ClaudeMessageFormatter();
|
|
120
38
|
// Forward config callbacks to events
|
|
121
39
|
if (config.onMessage)
|
|
122
40
|
this.on("message", config.onMessage);
|
|
@@ -348,17 +266,31 @@ export class ClaudeRunner extends EventEmitter {
|
|
|
348
266
|
this.writeReadableLogEntry(message);
|
|
349
267
|
}
|
|
350
268
|
// Emit appropriate events based on message type
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
this.streamingPrompt
|
|
269
|
+
// Defer result message emission until after loop completes to avoid race conditions
|
|
270
|
+
// where subroutine transitions start before the runner has fully cleaned up
|
|
271
|
+
if (message.type === "result") {
|
|
272
|
+
this.pendingResultMessage = message;
|
|
273
|
+
// Complete streaming prompt immediately so it stops accepting input
|
|
274
|
+
if (this.streamingPrompt) {
|
|
275
|
+
console.log("[ClaudeRunner] Got result message, completing streaming prompt");
|
|
276
|
+
this.streamingPrompt.complete();
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
else {
|
|
280
|
+
this.emit("message", message);
|
|
281
|
+
this.processMessage(message);
|
|
357
282
|
}
|
|
358
283
|
}
|
|
359
|
-
// Session completed successfully
|
|
284
|
+
// Session completed successfully - mark as not running BEFORE emitting result
|
|
285
|
+
// This ensures any code checking isRunning() during result processing sees the correct state
|
|
360
286
|
console.log(`[ClaudeRunner] Session completed with ${this.messages.length} messages`);
|
|
361
287
|
this.sessionInfo.isRunning = false;
|
|
288
|
+
// Emit deferred result message after marking isRunning = false
|
|
289
|
+
if (this.pendingResultMessage) {
|
|
290
|
+
this.emit("message", this.pendingResultMessage);
|
|
291
|
+
this.processMessage(this.pendingResultMessage);
|
|
292
|
+
this.pendingResultMessage = null;
|
|
293
|
+
}
|
|
362
294
|
this.emit("complete", this.messages);
|
|
363
295
|
}
|
|
364
296
|
catch (error) {
|
|
@@ -382,6 +314,7 @@ export class ClaudeRunner extends EventEmitter {
|
|
|
382
314
|
finally {
|
|
383
315
|
// Clean up
|
|
384
316
|
this.abortController = null;
|
|
317
|
+
this.pendingResultMessage = null;
|
|
385
318
|
// Complete and clean up streaming prompt if it exists
|
|
386
319
|
if (this.streamingPrompt) {
|
|
387
320
|
this.streamingPrompt.complete();
|
|
@@ -479,6 +412,12 @@ export class ClaudeRunner extends EventEmitter {
|
|
|
479
412
|
getMessages() {
|
|
480
413
|
return [...this.messages];
|
|
481
414
|
}
|
|
415
|
+
/**
|
|
416
|
+
* Get the message formatter for this runner
|
|
417
|
+
*/
|
|
418
|
+
getFormatter() {
|
|
419
|
+
return this.formatter;
|
|
420
|
+
}
|
|
482
421
|
/**
|
|
483
422
|
* Process individual SDK messages and emit appropriate events
|
|
484
423
|
*/
|
package/dist/ClaudeRunner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClaudeRunner.js","sourceRoot":"","sources":["../src/ClaudeRunner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ClaudeRunner.js","sourceRoot":"","sources":["../src/ClaudeRunner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Message Formatter Interface
|
|
3
|
+
*
|
|
4
|
+
* Defines the contract for formatting tool messages into human-readable content
|
|
5
|
+
* suitable for display in Linear agent activities. Each runner implementation
|
|
6
|
+
* should provide its own formatter that understands its specific message format.
|
|
7
|
+
*/
|
|
8
|
+
export interface IMessageFormatter {
|
|
9
|
+
/**
|
|
10
|
+
* Format TodoWrite tool parameter as a nice checklist
|
|
11
|
+
* @param jsonContent - The raw JSON content from the TodoWrite tool
|
|
12
|
+
* @returns Formatted checklist string with status emojis
|
|
13
|
+
*/
|
|
14
|
+
formatTodoWriteParameter(jsonContent: string): string;
|
|
15
|
+
/**
|
|
16
|
+
* Format tool input for display in Linear agent activities
|
|
17
|
+
* Converts raw tool inputs into user-friendly parameter strings
|
|
18
|
+
* @param toolName - The name of the tool (e.g., "Bash", "Read", "Grep")
|
|
19
|
+
* @param toolInput - The raw tool input object
|
|
20
|
+
* @returns User-friendly parameter string
|
|
21
|
+
*/
|
|
22
|
+
formatToolParameter(toolName: string, toolInput: any): string;
|
|
23
|
+
/**
|
|
24
|
+
* Format tool action name with description for Bash tool
|
|
25
|
+
* Puts the description in round brackets after the tool name in the action field
|
|
26
|
+
* @param toolName - The name of the tool
|
|
27
|
+
* @param toolInput - The raw tool input object
|
|
28
|
+
* @param isError - Whether the tool result is an error
|
|
29
|
+
* @returns Formatted action name (e.g., "Bash (List files)")
|
|
30
|
+
*/
|
|
31
|
+
formatToolActionName(toolName: string, toolInput: any, isError: boolean): string;
|
|
32
|
+
/**
|
|
33
|
+
* Format tool result for display in Linear agent activities
|
|
34
|
+
* Converts raw tool results into formatted Markdown
|
|
35
|
+
* @param toolName - The name of the tool
|
|
36
|
+
* @param toolInput - The raw tool input object
|
|
37
|
+
* @param result - The raw tool result string
|
|
38
|
+
* @param isError - Whether the result is an error
|
|
39
|
+
* @returns Formatted Markdown string
|
|
40
|
+
*/
|
|
41
|
+
formatToolResult(toolName: string, toolInput: any, result: string, isError: boolean): string;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Claude Message Formatter
|
|
45
|
+
*
|
|
46
|
+
* Implements message formatting for Claude SDK tool messages.
|
|
47
|
+
* This formatter understands Claude's specific tool format and converts
|
|
48
|
+
* tool use/result messages into human-readable content for Linear.
|
|
49
|
+
*/
|
|
50
|
+
export declare class ClaudeMessageFormatter implements IMessageFormatter {
|
|
51
|
+
/**
|
|
52
|
+
* Format TodoWrite tool parameter as a nice checklist
|
|
53
|
+
*/
|
|
54
|
+
formatTodoWriteParameter(jsonContent: string): string;
|
|
55
|
+
/**
|
|
56
|
+
* Format tool input for display in Linear agent activities
|
|
57
|
+
* Converts raw tool inputs into user-friendly parameter strings
|
|
58
|
+
*/
|
|
59
|
+
formatToolParameter(toolName: string, toolInput: any): string;
|
|
60
|
+
/**
|
|
61
|
+
* Format tool action name with description for Bash tool
|
|
62
|
+
* Puts the description in round brackets after the tool name in the action field
|
|
63
|
+
*/
|
|
64
|
+
formatToolActionName(toolName: string, toolInput: any, isError: boolean): string;
|
|
65
|
+
/**
|
|
66
|
+
* Format tool result for display in Linear agent activities
|
|
67
|
+
* Converts raw tool results into formatted Markdown
|
|
68
|
+
*/
|
|
69
|
+
formatToolResult(toolName: string, toolInput: any, result: string, isError: boolean): string;
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=formatter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatter.d.ts","sourceRoot":"","sources":["../src/formatter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IACjC;;;;OAIG;IACH,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAEtD;;;;;;OAMG;IACH,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,MAAM,CAAC;IAE9D;;;;;;;OAOG;IACH,oBAAoB,CACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,GAAG,EACd,OAAO,EAAE,OAAO,GACd,MAAM,CAAC;IAEV;;;;;;;;OAQG;IACH,gBAAgB,CACf,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,GAAG,EACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,GACd,MAAM,CAAC;CACV;AAED;;;;;;GAMG;AACH,qBAAa,sBAAuB,YAAW,iBAAiB;IAC/D;;OAEG;IACH,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IA2CrD;;;OAGG;IACH,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,MAAM;IAyI7D;;;OAGG;IACH,oBAAoB,CACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,GAAG,EACd,OAAO,EAAE,OAAO,GACd,MAAM;IAmBT;;;OAGG;IACH,gBAAgB,CACf,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,GAAG,EACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,GACd,MAAM;CA+LT"}
|
|
@@ -0,0 +1,358 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Claude Message Formatter
|
|
3
|
+
*
|
|
4
|
+
* Implements message formatting for Claude SDK tool messages.
|
|
5
|
+
* This formatter understands Claude's specific tool format and converts
|
|
6
|
+
* tool use/result messages into human-readable content for Linear.
|
|
7
|
+
*/
|
|
8
|
+
export class ClaudeMessageFormatter {
|
|
9
|
+
/**
|
|
10
|
+
* Format TodoWrite tool parameter as a nice checklist
|
|
11
|
+
*/
|
|
12
|
+
formatTodoWriteParameter(jsonContent) {
|
|
13
|
+
try {
|
|
14
|
+
const data = JSON.parse(jsonContent);
|
|
15
|
+
if (!data.todos || !Array.isArray(data.todos)) {
|
|
16
|
+
return jsonContent;
|
|
17
|
+
}
|
|
18
|
+
const todos = data.todos;
|
|
19
|
+
// Keep original order but add status indicators
|
|
20
|
+
let formatted = "\n";
|
|
21
|
+
todos.forEach((todo, index) => {
|
|
22
|
+
let statusEmoji = "";
|
|
23
|
+
if (todo.status === "completed") {
|
|
24
|
+
statusEmoji = "✅ ";
|
|
25
|
+
}
|
|
26
|
+
else if (todo.status === "in_progress") {
|
|
27
|
+
statusEmoji = "🔄 ";
|
|
28
|
+
}
|
|
29
|
+
else if (todo.status === "pending") {
|
|
30
|
+
statusEmoji = "⏳ ";
|
|
31
|
+
}
|
|
32
|
+
formatted += `${statusEmoji}${todo.content}`;
|
|
33
|
+
if (index < todos.length - 1) {
|
|
34
|
+
formatted += "\n";
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
return formatted;
|
|
38
|
+
}
|
|
39
|
+
catch (error) {
|
|
40
|
+
console.error("[ClaudeMessageFormatter] Failed to format TodoWrite parameter:", error);
|
|
41
|
+
return jsonContent;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Format tool input for display in Linear agent activities
|
|
46
|
+
* Converts raw tool inputs into user-friendly parameter strings
|
|
47
|
+
*/
|
|
48
|
+
formatToolParameter(toolName, toolInput) {
|
|
49
|
+
// If input is already a string, return it
|
|
50
|
+
if (typeof toolInput === "string") {
|
|
51
|
+
return toolInput;
|
|
52
|
+
}
|
|
53
|
+
try {
|
|
54
|
+
switch (toolName) {
|
|
55
|
+
case "Bash":
|
|
56
|
+
case "↪ Bash": {
|
|
57
|
+
// Show command only - description goes in action field via formatToolActionName
|
|
58
|
+
return toolInput.command || JSON.stringify(toolInput);
|
|
59
|
+
}
|
|
60
|
+
case "Read":
|
|
61
|
+
case "↪ Read":
|
|
62
|
+
if (toolInput.file_path) {
|
|
63
|
+
let param = toolInput.file_path;
|
|
64
|
+
if (toolInput.offset !== undefined ||
|
|
65
|
+
toolInput.limit !== undefined) {
|
|
66
|
+
const start = toolInput.offset || 0;
|
|
67
|
+
const end = toolInput.limit ? start + toolInput.limit : "end";
|
|
68
|
+
param += ` (lines ${start + 1}-${end})`;
|
|
69
|
+
}
|
|
70
|
+
return param;
|
|
71
|
+
}
|
|
72
|
+
break;
|
|
73
|
+
case "Edit":
|
|
74
|
+
case "↪ Edit":
|
|
75
|
+
if (toolInput.file_path) {
|
|
76
|
+
return toolInput.file_path;
|
|
77
|
+
}
|
|
78
|
+
break;
|
|
79
|
+
case "Write":
|
|
80
|
+
case "↪ Write":
|
|
81
|
+
if (toolInput.file_path) {
|
|
82
|
+
return toolInput.file_path;
|
|
83
|
+
}
|
|
84
|
+
break;
|
|
85
|
+
case "Grep":
|
|
86
|
+
case "↪ Grep":
|
|
87
|
+
if (toolInput.pattern) {
|
|
88
|
+
let param = `Pattern: \`${toolInput.pattern}\``;
|
|
89
|
+
if (toolInput.path) {
|
|
90
|
+
param += ` in ${toolInput.path}`;
|
|
91
|
+
}
|
|
92
|
+
if (toolInput.glob) {
|
|
93
|
+
param += ` (${toolInput.glob})`;
|
|
94
|
+
}
|
|
95
|
+
if (toolInput.type) {
|
|
96
|
+
param += ` [${toolInput.type} files]`;
|
|
97
|
+
}
|
|
98
|
+
return param;
|
|
99
|
+
}
|
|
100
|
+
break;
|
|
101
|
+
case "Glob":
|
|
102
|
+
case "↪ Glob":
|
|
103
|
+
if (toolInput.pattern) {
|
|
104
|
+
let param = `Pattern: \`${toolInput.pattern}\``;
|
|
105
|
+
if (toolInput.path) {
|
|
106
|
+
param += ` in ${toolInput.path}`;
|
|
107
|
+
}
|
|
108
|
+
return param;
|
|
109
|
+
}
|
|
110
|
+
break;
|
|
111
|
+
case "Task":
|
|
112
|
+
case "↪ Task":
|
|
113
|
+
if (toolInput.description) {
|
|
114
|
+
return toolInput.description;
|
|
115
|
+
}
|
|
116
|
+
break;
|
|
117
|
+
case "WebFetch":
|
|
118
|
+
case "↪ WebFetch":
|
|
119
|
+
if (toolInput.url) {
|
|
120
|
+
return toolInput.url;
|
|
121
|
+
}
|
|
122
|
+
break;
|
|
123
|
+
case "WebSearch":
|
|
124
|
+
case "↪ WebSearch":
|
|
125
|
+
if (toolInput.query) {
|
|
126
|
+
return `Query: ${toolInput.query}`;
|
|
127
|
+
}
|
|
128
|
+
break;
|
|
129
|
+
case "NotebookEdit":
|
|
130
|
+
case "↪ NotebookEdit":
|
|
131
|
+
if (toolInput.notebook_path) {
|
|
132
|
+
let param = toolInput.notebook_path;
|
|
133
|
+
if (toolInput.cell_id) {
|
|
134
|
+
param += ` (cell ${toolInput.cell_id})`;
|
|
135
|
+
}
|
|
136
|
+
return param;
|
|
137
|
+
}
|
|
138
|
+
break;
|
|
139
|
+
default:
|
|
140
|
+
// For MCP tools or other unknown tools, try to extract meaningful info
|
|
141
|
+
if (toolName.startsWith("mcp__")) {
|
|
142
|
+
// Extract key fields that are commonly meaningful
|
|
143
|
+
const meaningfulFields = [
|
|
144
|
+
"query",
|
|
145
|
+
"id",
|
|
146
|
+
"issueId",
|
|
147
|
+
"title",
|
|
148
|
+
"name",
|
|
149
|
+
"path",
|
|
150
|
+
"file",
|
|
151
|
+
];
|
|
152
|
+
for (const field of meaningfulFields) {
|
|
153
|
+
if (toolInput[field]) {
|
|
154
|
+
return `${field}: ${toolInput[field]}`;
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
break;
|
|
159
|
+
}
|
|
160
|
+
// Fallback to JSON but make it compact
|
|
161
|
+
return JSON.stringify(toolInput);
|
|
162
|
+
}
|
|
163
|
+
catch (error) {
|
|
164
|
+
console.error("[ClaudeMessageFormatter] Failed to format tool parameter:", error);
|
|
165
|
+
return JSON.stringify(toolInput);
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Format tool action name with description for Bash tool
|
|
170
|
+
* Puts the description in round brackets after the tool name in the action field
|
|
171
|
+
*/
|
|
172
|
+
formatToolActionName(toolName, toolInput, isError) {
|
|
173
|
+
// Handle Bash tool with description
|
|
174
|
+
if (toolName === "Bash" || toolName === "↪ Bash") {
|
|
175
|
+
// Check if toolInput has a description field
|
|
176
|
+
if (toolInput &&
|
|
177
|
+
typeof toolInput === "object" &&
|
|
178
|
+
"description" in toolInput &&
|
|
179
|
+
toolInput.description) {
|
|
180
|
+
const baseName = isError ? `${toolName} (Error)` : toolName;
|
|
181
|
+
return `${baseName} (${toolInput.description})`;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
// Default formatting for other tools or Bash without description
|
|
185
|
+
return isError ? `${toolName} (Error)` : toolName;
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Format tool result for display in Linear agent activities
|
|
189
|
+
* Converts raw tool results into formatted Markdown
|
|
190
|
+
*/
|
|
191
|
+
formatToolResult(toolName, toolInput, result, isError) {
|
|
192
|
+
// If there's an error, wrap in error formatting
|
|
193
|
+
if (isError) {
|
|
194
|
+
return `\`\`\`\n${result}\n\`\`\``;
|
|
195
|
+
}
|
|
196
|
+
try {
|
|
197
|
+
switch (toolName) {
|
|
198
|
+
case "Bash":
|
|
199
|
+
case "↪ Bash": {
|
|
200
|
+
// Show command first if not already in parameter
|
|
201
|
+
let formatted = "";
|
|
202
|
+
if (toolInput.command && !toolInput.description) {
|
|
203
|
+
formatted += `\`\`\`bash\n${toolInput.command}\n\`\`\`\n\n`;
|
|
204
|
+
}
|
|
205
|
+
// Then show output
|
|
206
|
+
if (result?.trim()) {
|
|
207
|
+
formatted += `\`\`\`\n${result}\n\`\`\``;
|
|
208
|
+
}
|
|
209
|
+
else {
|
|
210
|
+
formatted += "*No output*";
|
|
211
|
+
}
|
|
212
|
+
return formatted;
|
|
213
|
+
}
|
|
214
|
+
case "Read":
|
|
215
|
+
case "↪ Read":
|
|
216
|
+
// For Read, the result is file content - use code block
|
|
217
|
+
if (result?.trim()) {
|
|
218
|
+
// Clean up the result: remove line numbers and system-reminder tags
|
|
219
|
+
let cleanedResult = result;
|
|
220
|
+
// Remove line numbers (format: " 123→")
|
|
221
|
+
cleanedResult = cleanedResult.replace(/^\s*\d+→/gm, "");
|
|
222
|
+
// Remove system-reminder blocks
|
|
223
|
+
cleanedResult = cleanedResult.replace(/<system-reminder>[\s\S]*?<\/system-reminder>/g, "");
|
|
224
|
+
// Trim only blank lines (not horizontal whitespace) to preserve indentation
|
|
225
|
+
cleanedResult = cleanedResult
|
|
226
|
+
.replace(/^\n+/, "")
|
|
227
|
+
.replace(/\n+$/, "");
|
|
228
|
+
// Try to detect language from file extension
|
|
229
|
+
let lang = "";
|
|
230
|
+
if (toolInput.file_path) {
|
|
231
|
+
const ext = toolInput.file_path.split(".").pop()?.toLowerCase();
|
|
232
|
+
const langMap = {
|
|
233
|
+
ts: "typescript",
|
|
234
|
+
tsx: "typescript",
|
|
235
|
+
js: "javascript",
|
|
236
|
+
jsx: "javascript",
|
|
237
|
+
py: "python",
|
|
238
|
+
rb: "ruby",
|
|
239
|
+
go: "go",
|
|
240
|
+
rs: "rust",
|
|
241
|
+
java: "java",
|
|
242
|
+
c: "c",
|
|
243
|
+
cpp: "cpp",
|
|
244
|
+
cs: "csharp",
|
|
245
|
+
php: "php",
|
|
246
|
+
swift: "swift",
|
|
247
|
+
kt: "kotlin",
|
|
248
|
+
scala: "scala",
|
|
249
|
+
sh: "bash",
|
|
250
|
+
bash: "bash",
|
|
251
|
+
zsh: "bash",
|
|
252
|
+
yml: "yaml",
|
|
253
|
+
yaml: "yaml",
|
|
254
|
+
json: "json",
|
|
255
|
+
xml: "xml",
|
|
256
|
+
html: "html",
|
|
257
|
+
css: "css",
|
|
258
|
+
scss: "scss",
|
|
259
|
+
md: "markdown",
|
|
260
|
+
sql: "sql",
|
|
261
|
+
};
|
|
262
|
+
lang = langMap[ext || ""] || "";
|
|
263
|
+
}
|
|
264
|
+
return `\`\`\`${lang}\n${cleanedResult}\n\`\`\``;
|
|
265
|
+
}
|
|
266
|
+
return "*Empty file*";
|
|
267
|
+
case "Edit":
|
|
268
|
+
case "↪ Edit": {
|
|
269
|
+
// For Edit, show changes as a diff
|
|
270
|
+
// Extract old_string and new_string from toolInput
|
|
271
|
+
if (toolInput.old_string && toolInput.new_string) {
|
|
272
|
+
// Format as a unified diff
|
|
273
|
+
const oldLines = toolInput.old_string.split("\n");
|
|
274
|
+
const newLines = toolInput.new_string.split("\n");
|
|
275
|
+
let diff = "```diff\n";
|
|
276
|
+
// Add context lines before changes (show all old lines with - prefix)
|
|
277
|
+
for (const line of oldLines) {
|
|
278
|
+
diff += `-${line}\n`;
|
|
279
|
+
}
|
|
280
|
+
// Add new lines with + prefix
|
|
281
|
+
for (const line of newLines) {
|
|
282
|
+
diff += `+${line}\n`;
|
|
283
|
+
}
|
|
284
|
+
diff += "```";
|
|
285
|
+
return diff;
|
|
286
|
+
}
|
|
287
|
+
// Fallback to result if old/new strings not available
|
|
288
|
+
if (result?.trim()) {
|
|
289
|
+
return result;
|
|
290
|
+
}
|
|
291
|
+
return "*Edit completed*";
|
|
292
|
+
}
|
|
293
|
+
case "Write":
|
|
294
|
+
case "↪ Write":
|
|
295
|
+
// For Write, just confirm
|
|
296
|
+
if (result?.trim()) {
|
|
297
|
+
return result; // In case there's an error or message
|
|
298
|
+
}
|
|
299
|
+
return "*File written successfully*";
|
|
300
|
+
case "Grep":
|
|
301
|
+
case "↪ Grep": {
|
|
302
|
+
// Format grep results
|
|
303
|
+
if (result?.trim()) {
|
|
304
|
+
const lines = result.split("\n");
|
|
305
|
+
// If it looks like file paths (files_with_matches mode)
|
|
306
|
+
if (lines.length > 0 &&
|
|
307
|
+
lines[0] &&
|
|
308
|
+
!lines[0].includes(":") &&
|
|
309
|
+
lines[0].trim().length > 0) {
|
|
310
|
+
return `Found ${lines.filter((l) => l.trim()).length} matching files:\n\`\`\`\n${result}\n\`\`\``;
|
|
311
|
+
}
|
|
312
|
+
// Otherwise it's content matches
|
|
313
|
+
return `\`\`\`\n${result}\n\`\`\``;
|
|
314
|
+
}
|
|
315
|
+
return "*No matches found*";
|
|
316
|
+
}
|
|
317
|
+
case "Glob":
|
|
318
|
+
case "↪ Glob": {
|
|
319
|
+
if (result?.trim()) {
|
|
320
|
+
const lines = result.split("\n").filter((l) => l.trim());
|
|
321
|
+
return `Found ${lines.length} matching files:\n\`\`\`\n${result}\n\`\`\``;
|
|
322
|
+
}
|
|
323
|
+
return "*No files found*";
|
|
324
|
+
}
|
|
325
|
+
case "Task":
|
|
326
|
+
case "↪ Task":
|
|
327
|
+
// Task results can be complex - keep as is but in code block if multiline
|
|
328
|
+
if (result?.trim()) {
|
|
329
|
+
if (result.includes("\n")) {
|
|
330
|
+
return `\`\`\`\n${result}\n\`\`\``;
|
|
331
|
+
}
|
|
332
|
+
return result;
|
|
333
|
+
}
|
|
334
|
+
return "*Task completed*";
|
|
335
|
+
case "WebFetch":
|
|
336
|
+
case "↪ WebFetch":
|
|
337
|
+
case "WebSearch":
|
|
338
|
+
case "↪ WebSearch":
|
|
339
|
+
// Web results are usually formatted, keep as is
|
|
340
|
+
return result || "*No results*";
|
|
341
|
+
default:
|
|
342
|
+
// For unknown tools, use code block if result has multiple lines
|
|
343
|
+
if (result?.trim()) {
|
|
344
|
+
if (result.includes("\n") && result.length > 100) {
|
|
345
|
+
return `\`\`\`\n${result}\n\`\`\``;
|
|
346
|
+
}
|
|
347
|
+
return result;
|
|
348
|
+
}
|
|
349
|
+
return "*Completed*";
|
|
350
|
+
}
|
|
351
|
+
}
|
|
352
|
+
catch (error) {
|
|
353
|
+
console.error("[ClaudeMessageFormatter] Failed to format tool result:", error);
|
|
354
|
+
return result || "";
|
|
355
|
+
}
|
|
356
|
+
}
|
|
357
|
+
}
|
|
358
|
+
//# sourceMappingURL=formatter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatter.js","sourceRoot":"","sources":["../src/formatter.ts"],"names":[],"mappings":"AAuDA;;;;;;GAMG;AACH,MAAM,OAAO,sBAAsB;IAClC;;OAEG;IACH,wBAAwB,CAAC,WAAmB;QAC3C,IAAI,CAAC;YACJ,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YACrC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC/C,OAAO,WAAW,CAAC;YACpB,CAAC;YAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAKjB,CAAC;YAEH,gDAAgD;YAChD,IAAI,SAAS,GAAG,IAAI,CAAC;YAErB,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;gBAC7B,IAAI,WAAW,GAAG,EAAE,CAAC;gBACrB,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;oBACjC,WAAW,GAAG,IAAI,CAAC;gBACpB,CAAC;qBAAM,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;oBAC1C,WAAW,GAAG,KAAK,CAAC;gBACrB,CAAC;qBAAM,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBACtC,WAAW,GAAG,IAAI,CAAC;gBACpB,CAAC;gBAED,SAAS,IAAI,GAAG,WAAW,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;gBAC7C,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9B,SAAS,IAAI,IAAI,CAAC;gBACnB,CAAC;YACF,CAAC,CAAC,CAAC;YAEH,OAAO,SAAS,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CACZ,gEAAgE,EAChE,KAAK,CACL,CAAC;YACF,OAAO,WAAW,CAAC;QACpB,CAAC;IACF,CAAC;IAED;;;OAGG;IACH,mBAAmB,CAAC,QAAgB,EAAE,SAAc;QACnD,0CAA0C;QAC1C,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;YACnC,OAAO,SAAS,CAAC;QAClB,CAAC;QAED,IAAI,CAAC;YACJ,QAAQ,QAAQ,EAAE,CAAC;gBAClB,KAAK,MAAM,CAAC;gBACZ,KAAK,QAAQ,CAAC,CAAC,CAAC;oBACf,gFAAgF;oBAChF,OAAO,SAAS,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;gBACvD,CAAC;gBAED,KAAK,MAAM,CAAC;gBACZ,KAAK,QAAQ;oBACZ,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;wBACzB,IAAI,KAAK,GAAG,SAAS,CAAC,SAAS,CAAC;wBAChC,IACC,SAAS,CAAC,MAAM,KAAK,SAAS;4BAC9B,SAAS,CAAC,KAAK,KAAK,SAAS,EAC5B,CAAC;4BACF,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,IAAI,CAAC,CAAC;4BACpC,MAAM,GAAG,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;4BAC9D,KAAK,IAAI,WAAW,KAAK,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC;wBACzC,CAAC;wBACD,OAAO,KAAK,CAAC;oBACd,CAAC;oBACD,MAAM;gBAEP,KAAK,MAAM,CAAC;gBACZ,KAAK,QAAQ;oBACZ,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;wBACzB,OAAO,SAAS,CAAC,SAAS,CAAC;oBAC5B,CAAC;oBACD,MAAM;gBAEP,KAAK,OAAO,CAAC;gBACb,KAAK,SAAS;oBACb,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;wBACzB,OAAO,SAAS,CAAC,SAAS,CAAC;oBAC5B,CAAC;oBACD,MAAM;gBAEP,KAAK,MAAM,CAAC;gBACZ,KAAK,QAAQ;oBACZ,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;wBACvB,IAAI,KAAK,GAAG,cAAc,SAAS,CAAC,OAAO,IAAI,CAAC;wBAChD,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;4BACpB,KAAK,IAAI,OAAO,SAAS,CAAC,IAAI,EAAE,CAAC;wBAClC,CAAC;wBACD,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;4BACpB,KAAK,IAAI,KAAK,SAAS,CAAC,IAAI,GAAG,CAAC;wBACjC,CAAC;wBACD,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;4BACpB,KAAK,IAAI,KAAK,SAAS,CAAC,IAAI,SAAS,CAAC;wBACvC,CAAC;wBACD,OAAO,KAAK,CAAC;oBACd,CAAC;oBACD,MAAM;gBAEP,KAAK,MAAM,CAAC;gBACZ,KAAK,QAAQ;oBACZ,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;wBACvB,IAAI,KAAK,GAAG,cAAc,SAAS,CAAC,OAAO,IAAI,CAAC;wBAChD,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;4BACpB,KAAK,IAAI,OAAO,SAAS,CAAC,IAAI,EAAE,CAAC;wBAClC,CAAC;wBACD,OAAO,KAAK,CAAC;oBACd,CAAC;oBACD,MAAM;gBAEP,KAAK,MAAM,CAAC;gBACZ,KAAK,QAAQ;oBACZ,IAAI,SAAS,CAAC,WAAW,EAAE,CAAC;wBAC3B,OAAO,SAAS,CAAC,WAAW,CAAC;oBAC9B,CAAC;oBACD,MAAM;gBAEP,KAAK,UAAU,CAAC;gBAChB,KAAK,YAAY;oBAChB,IAAI,SAAS,CAAC,GAAG,EAAE,CAAC;wBACnB,OAAO,SAAS,CAAC,GAAG,CAAC;oBACtB,CAAC;oBACD,MAAM;gBAEP,KAAK,WAAW,CAAC;gBACjB,KAAK,aAAa;oBACjB,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;wBACrB,OAAO,UAAU,SAAS,CAAC,KAAK,EAAE,CAAC;oBACpC,CAAC;oBACD,MAAM;gBAEP,KAAK,cAAc,CAAC;gBACpB,KAAK,gBAAgB;oBACpB,IAAI,SAAS,CAAC,aAAa,EAAE,CAAC;wBAC7B,IAAI,KAAK,GAAG,SAAS,CAAC,aAAa,CAAC;wBACpC,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;4BACvB,KAAK,IAAI,UAAU,SAAS,CAAC,OAAO,GAAG,CAAC;wBACzC,CAAC;wBACD,OAAO,KAAK,CAAC;oBACd,CAAC;oBACD,MAAM;gBAEP;oBACC,uEAAuE;oBACvE,IAAI,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;wBAClC,kDAAkD;wBAClD,MAAM,gBAAgB,GAAG;4BACxB,OAAO;4BACP,IAAI;4BACJ,SAAS;4BACT,OAAO;4BACP,MAAM;4BACN,MAAM;4BACN,MAAM;yBACN,CAAC;wBACF,KAAK,MAAM,KAAK,IAAI,gBAAgB,EAAE,CAAC;4BACtC,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;gCACtB,OAAO,GAAG,KAAK,KAAK,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;4BACxC,CAAC;wBACF,CAAC;oBACF,CAAC;oBACD,MAAM;YACR,CAAC;YAED,uCAAuC;YACvC,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CACZ,2DAA2D,EAC3D,KAAK,CACL,CAAC;YACF,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAClC,CAAC;IACF,CAAC;IAED;;;OAGG;IACH,oBAAoB,CACnB,QAAgB,EAChB,SAAc,EACd,OAAgB;QAEhB,oCAAoC;QACpC,IAAI,QAAQ,KAAK,MAAM,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAClD,6CAA6C;YAC7C,IACC,SAAS;gBACT,OAAO,SAAS,KAAK,QAAQ;gBAC7B,aAAa,IAAI,SAAS;gBAC1B,SAAS,CAAC,WAAW,EACpB,CAAC;gBACF,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,QAAQ,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC;gBAC5D,OAAO,GAAG,QAAQ,KAAK,SAAS,CAAC,WAAW,GAAG,CAAC;YACjD,CAAC;QACF,CAAC;QAED,iEAAiE;QACjE,OAAO,OAAO,CAAC,CAAC,CAAC,GAAG,QAAQ,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC;IACnD,CAAC;IAED;;;OAGG;IACH,gBAAgB,CACf,QAAgB,EAChB,SAAc,EACd,MAAc,EACd,OAAgB;QAEhB,gDAAgD;QAChD,IAAI,OAAO,EAAE,CAAC;YACb,OAAO,WAAW,MAAM,UAAU,CAAC;QACpC,CAAC;QAED,IAAI,CAAC;YACJ,QAAQ,QAAQ,EAAE,CAAC;gBAClB,KAAK,MAAM,CAAC;gBACZ,KAAK,QAAQ,CAAC,CAAC,CAAC;oBACf,iDAAiD;oBACjD,IAAI,SAAS,GAAG,EAAE,CAAC;oBACnB,IAAI,SAAS,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;wBACjD,SAAS,IAAI,eAAe,SAAS,CAAC,OAAO,cAAc,CAAC;oBAC7D,CAAC;oBACD,mBAAmB;oBACnB,IAAI,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;wBACpB,SAAS,IAAI,WAAW,MAAM,UAAU,CAAC;oBAC1C,CAAC;yBAAM,CAAC;wBACP,SAAS,IAAI,aAAa,CAAC;oBAC5B,CAAC;oBACD,OAAO,SAAS,CAAC;gBAClB,CAAC;gBAED,KAAK,MAAM,CAAC;gBACZ,KAAK,QAAQ;oBACZ,wDAAwD;oBACxD,IAAI,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;wBACpB,oEAAoE;wBACpE,IAAI,aAAa,GAAG,MAAM,CAAC;wBAE3B,yCAAyC;wBACzC,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;wBAExD,gCAAgC;wBAChC,aAAa,GAAG,aAAa,CAAC,OAAO,CACpC,+CAA+C,EAC/C,EAAE,CACF,CAAC;wBAEF,4EAA4E;wBAC5E,aAAa,GAAG,aAAa;6BAC3B,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;6BACnB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;wBAEtB,6CAA6C;wBAC7C,IAAI,IAAI,GAAG,EAAE,CAAC;wBACd,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;4BACzB,MAAM,GAAG,GAAG,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,CAAC;4BAChE,MAAM,OAAO,GAA2B;gCACvC,EAAE,EAAE,YAAY;gCAChB,GAAG,EAAE,YAAY;gCACjB,EAAE,EAAE,YAAY;gCAChB,GAAG,EAAE,YAAY;gCACjB,EAAE,EAAE,QAAQ;gCACZ,EAAE,EAAE,MAAM;gCACV,EAAE,EAAE,IAAI;gCACR,EAAE,EAAE,MAAM;gCACV,IAAI,EAAE,MAAM;gCACZ,CAAC,EAAE,GAAG;gCACN,GAAG,EAAE,KAAK;gCACV,EAAE,EAAE,QAAQ;gCACZ,GAAG,EAAE,KAAK;gCACV,KAAK,EAAE,OAAO;gCACd,EAAE,EAAE,QAAQ;gCACZ,KAAK,EAAE,OAAO;gCACd,EAAE,EAAE,MAAM;gCACV,IAAI,EAAE,MAAM;gCACZ,GAAG,EAAE,MAAM;gCACX,GAAG,EAAE,MAAM;gCACX,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,MAAM;gCACZ,GAAG,EAAE,KAAK;gCACV,IAAI,EAAE,MAAM;gCACZ,GAAG,EAAE,KAAK;gCACV,IAAI,EAAE,MAAM;gCACZ,EAAE,EAAE,UAAU;gCACd,GAAG,EAAE,KAAK;6BACV,CAAC;4BACF,IAAI,GAAG,OAAO,CAAC,GAAG,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;wBACjC,CAAC;wBACD,OAAO,SAAS,IAAI,KAAK,aAAa,UAAU,CAAC;oBAClD,CAAC;oBACD,OAAO,cAAc,CAAC;gBAEvB,KAAK,MAAM,CAAC;gBACZ,KAAK,QAAQ,CAAC,CAAC,CAAC;oBACf,mCAAmC;oBACnC,mDAAmD;oBACnD,IAAI,SAAS,CAAC,UAAU,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;wBAClD,2BAA2B;wBAC3B,MAAM,QAAQ,GAAG,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wBAClD,MAAM,QAAQ,GAAG,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wBAElD,IAAI,IAAI,GAAG,WAAW,CAAC;wBAEvB,sEAAsE;wBACtE,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;4BAC7B,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC;wBACtB,CAAC;wBAED,8BAA8B;wBAC9B,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;4BAC7B,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC;wBACtB,CAAC;wBAED,IAAI,IAAI,KAAK,CAAC;wBAEd,OAAO,IAAI,CAAC;oBACb,CAAC;oBAED,sDAAsD;oBACtD,IAAI,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;wBACpB,OAAO,MAAM,CAAC;oBACf,CAAC;oBACD,OAAO,kBAAkB,CAAC;gBAC3B,CAAC;gBAED,KAAK,OAAO,CAAC;gBACb,KAAK,SAAS;oBACb,0BAA0B;oBAC1B,IAAI,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;wBACpB,OAAO,MAAM,CAAC,CAAC,sCAAsC;oBACtD,CAAC;oBACD,OAAO,6BAA6B,CAAC;gBAEtC,KAAK,MAAM,CAAC;gBACZ,KAAK,QAAQ,CAAC,CAAC,CAAC;oBACf,sBAAsB;oBACtB,IAAI,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;wBACpB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wBACjC,wDAAwD;wBACxD,IACC,KAAK,CAAC,MAAM,GAAG,CAAC;4BAChB,KAAK,CAAC,CAAC,CAAC;4BACR,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;4BACvB,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EACzB,CAAC;4BACF,OAAO,SAAS,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,6BAA6B,MAAM,UAAU,CAAC;wBACnG,CAAC;wBACD,iCAAiC;wBACjC,OAAO,WAAW,MAAM,UAAU,CAAC;oBACpC,CAAC;oBACD,OAAO,oBAAoB,CAAC;gBAC7B,CAAC;gBAED,KAAK,MAAM,CAAC;gBACZ,KAAK,QAAQ,CAAC,CAAC,CAAC;oBACf,IAAI,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;wBACpB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;wBACzD,OAAO,SAAS,KAAK,CAAC,MAAM,6BAA6B,MAAM,UAAU,CAAC;oBAC3E,CAAC;oBACD,OAAO,kBAAkB,CAAC;gBAC3B,CAAC;gBAED,KAAK,MAAM,CAAC;gBACZ,KAAK,QAAQ;oBACZ,0EAA0E;oBAC1E,IAAI,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;wBACpB,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;4BAC3B,OAAO,WAAW,MAAM,UAAU,CAAC;wBACpC,CAAC;wBACD,OAAO,MAAM,CAAC;oBACf,CAAC;oBACD,OAAO,kBAAkB,CAAC;gBAE3B,KAAK,UAAU,CAAC;gBAChB,KAAK,YAAY,CAAC;gBAClB,KAAK,WAAW,CAAC;gBACjB,KAAK,aAAa;oBACjB,gDAAgD;oBAChD,OAAO,MAAM,IAAI,cAAc,CAAC;gBAEjC;oBACC,iEAAiE;oBACjE,IAAI,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;wBACpB,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;4BAClD,OAAO,WAAW,MAAM,UAAU,CAAC;wBACpC,CAAC;wBACD,OAAO,MAAM,CAAC;oBACf,CAAC;oBACD,OAAO,aAAa,CAAC;YACvB,CAAC;QACF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CACZ,wDAAwD,EACxD,KAAK,CACL,CAAC;YACF,OAAO,MAAM,IAAI,EAAE,CAAC;QACrB,CAAC;IACF,CAAC;CACD"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export type { HookCallbackMatcher, HookEvent, HookInput, HookJSONOutput, PostToolUseHookInput, } from "@anthropic-ai/claude-agent-sdk";
|
|
2
|
-
export { AbortError, ClaudeRunner
|
|
2
|
+
export { AbortError, ClaudeRunner } from "./ClaudeRunner.js";
|
|
3
3
|
export { availableTools, getAllTools, getCoordinatorTools, getReadOnlyTools, getSafeTools, readOnlyTools, type ToolName, writeTools, } from "./config.js";
|
|
4
|
+
export { ClaudeMessageFormatter, type IMessageFormatter, } from "./formatter.js";
|
|
4
5
|
export { type CyrusToolsOptions, createCyrusToolsServer, } from "./tools/cyrus-tools/index.js";
|
|
5
6
|
export { createImageToolsServer, type ImageToolsOptions, } from "./tools/image-tools/index.js";
|
|
6
7
|
export { createSoraToolsServer, type SoraToolsOptions, } from "./tools/sora-tools/index.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACX,mBAAmB,EACnB,SAAS,EACT,SAAS,EACT,cAAc,EACd,oBAAoB,GACpB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACX,mBAAmB,EACnB,SAAS,EACT,SAAS,EACT,cAAc,EACd,oBAAoB,GACpB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EACN,cAAc,EACd,WAAW,EACX,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,EACZ,aAAa,EACb,KAAK,QAAQ,EACb,UAAU,GACV,MAAM,aAAa,CAAC;AACrB,OAAO,EACN,sBAAsB,EACtB,KAAK,iBAAiB,GACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACN,KAAK,iBAAiB,EACtB,sBAAsB,GACtB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACN,sBAAsB,EACtB,KAAK,iBAAiB,GACtB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACN,qBAAqB,EACrB,KAAK,gBAAgB,GACrB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EACX,mBAAmB,EACnB,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,GACd,MAAM,YAAY,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
export { AbortError, ClaudeRunner
|
|
1
|
+
export { AbortError, ClaudeRunner } from "./ClaudeRunner.js";
|
|
2
2
|
export { availableTools, getAllTools, getCoordinatorTools, getReadOnlyTools, getSafeTools, readOnlyTools, writeTools, } from "./config.js";
|
|
3
|
+
export { ClaudeMessageFormatter, } from "./formatter.js";
|
|
3
4
|
export { createCyrusToolsServer, } from "./tools/cyrus-tools/index.js";
|
|
4
5
|
export { createImageToolsServer, } from "./tools/image-tools/index.js";
|
|
5
6
|
export { createSoraToolsServer, } from "./tools/sora-tools/index.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EACN,cAAc,EACd,WAAW,EACX,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,EACZ,aAAa,EAEb,UAAU,GACV,MAAM,aAAa,CAAC;AACrB,OAAO,EACN,sBAAsB,GAEtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAEN,sBAAsB,GACtB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACN,sBAAsB,GAEtB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACN,qBAAqB,GAErB,MAAM,6BAA6B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cyrus-claude-runner",
|
|
3
|
-
"version": "0.2.
|
|
4
|
-
"description": "Claude
|
|
3
|
+
"version": "0.2.4",
|
|
4
|
+
"description": "Claude CLI execution wrapper for Cyrus",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
@@ -12,14 +12,16 @@
|
|
|
12
12
|
"@anthropic-ai/claude-agent-sdk": "^0.1.52",
|
|
13
13
|
"@anthropic-ai/sdk": "^0.71.0",
|
|
14
14
|
"@linear/sdk": "^64.0.0",
|
|
15
|
-
"dotenv": "^16.
|
|
16
|
-
"fs-extra": "^11.3.
|
|
17
|
-
"openai": "^6.
|
|
18
|
-
"zod": "^
|
|
15
|
+
"dotenv": "^16.4.5",
|
|
16
|
+
"fs-extra": "^11.3.2",
|
|
17
|
+
"openai": "^6.9.1",
|
|
18
|
+
"zod": "^4.1.12",
|
|
19
|
+
"cyrus-core": "0.2.4"
|
|
19
20
|
},
|
|
20
21
|
"devDependencies": {
|
|
21
22
|
"@types/fs-extra": "^11.0.4",
|
|
22
23
|
"@types/node": "^20.0.0",
|
|
24
|
+
"tsx": "^4.19.2",
|
|
23
25
|
"typescript": "^5.3.3",
|
|
24
26
|
"vitest": "^1.1.0"
|
|
25
27
|
},
|