cyrus-claude-runner 0.0.23 → 0.0.25

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.
@@ -0,0 +1,527 @@
1
+ import { basename, extname } from "node:path";
2
+ import { createSdkMcpServer, tool } from "@anthropic-ai/claude-agent-sdk";
3
+ import { LinearClient } from "@linear/sdk";
4
+ import fs from "fs-extra";
5
+ import { z } from "zod";
6
+ /**
7
+ * Detect MIME type based on file extension
8
+ */
9
+ function getMimeType(filename) {
10
+ const ext = extname(filename).toLowerCase();
11
+ const mimeTypes = {
12
+ // Images
13
+ ".png": "image/png",
14
+ ".jpg": "image/jpeg",
15
+ ".jpeg": "image/jpeg",
16
+ ".gif": "image/gif",
17
+ ".svg": "image/svg+xml",
18
+ ".webp": "image/webp",
19
+ ".bmp": "image/bmp",
20
+ ".ico": "image/x-icon",
21
+ // Documents
22
+ ".pdf": "application/pdf",
23
+ ".doc": "application/msword",
24
+ ".docx": "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
25
+ ".xls": "application/vnd.ms-excel",
26
+ ".xlsx": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
27
+ ".ppt": "application/vnd.ms-powerpoint",
28
+ ".pptx": "application/vnd.openxmlformats-officedocument.presentationml.presentation",
29
+ // Text
30
+ ".txt": "text/plain",
31
+ ".md": "text/markdown",
32
+ ".csv": "text/csv",
33
+ ".json": "application/json",
34
+ ".xml": "application/xml",
35
+ ".html": "text/html",
36
+ ".css": "text/css",
37
+ ".js": "application/javascript",
38
+ ".ts": "application/typescript",
39
+ // Archives
40
+ ".zip": "application/zip",
41
+ ".tar": "application/x-tar",
42
+ ".gz": "application/gzip",
43
+ ".rar": "application/vnd.rar",
44
+ ".7z": "application/x-7z-compressed",
45
+ // Media
46
+ ".mp3": "audio/mpeg",
47
+ ".wav": "audio/wav",
48
+ ".mp4": "video/mp4",
49
+ ".mov": "video/quicktime",
50
+ ".avi": "video/x-msvideo",
51
+ ".webm": "video/webm",
52
+ // Other
53
+ ".log": "text/plain",
54
+ ".yml": "text/yaml",
55
+ ".yaml": "text/yaml",
56
+ };
57
+ return mimeTypes[ext] || "application/octet-stream";
58
+ }
59
+ /**
60
+ * Create an SDK MCP server with the inline Cyrus tools
61
+ */
62
+ export function createCyrusToolsServer(linearApiToken, options = {}) {
63
+ const linearClient = new LinearClient({ apiKey: linearApiToken });
64
+ // Create tools with bound linear client
65
+ const uploadTool = tool("linear_upload_file", "Upload a file to Linear. Returns an asset URL that can be used in issue descriptions or comments.", {
66
+ filePath: z.string().describe("The absolute path to the file to upload"),
67
+ filename: z
68
+ .string()
69
+ .optional()
70
+ .describe("The filename to use in Linear (optional, defaults to basename of filePath)"),
71
+ contentType: z
72
+ .string()
73
+ .optional()
74
+ .describe("MIME type of the file (optional, auto-detected if not provided)"),
75
+ makePublic: z
76
+ .boolean()
77
+ .optional()
78
+ .describe("Whether to make the file publicly accessible (default: false)"),
79
+ }, async ({ filePath, filename, contentType, makePublic }) => {
80
+ try {
81
+ // Read file and get stats
82
+ const stats = await fs.stat(filePath);
83
+ if (!stats.isFile()) {
84
+ return {
85
+ content: [
86
+ {
87
+ type: "text",
88
+ text: JSON.stringify({
89
+ success: false,
90
+ error: `Path ${filePath} is not a file`,
91
+ }),
92
+ },
93
+ ],
94
+ };
95
+ }
96
+ const fileBuffer = await fs.readFile(filePath);
97
+ const finalFilename = filename || basename(filePath);
98
+ const finalContentType = contentType || getMimeType(finalFilename);
99
+ const size = stats.size;
100
+ // Step 1: Request upload URL from Linear
101
+ console.log(`Requesting upload URL for ${finalFilename} (${size} bytes, ${finalContentType})`);
102
+ // Use LinearClient's fileUpload method directly
103
+ const uploadPayload = await linearClient.fileUpload(finalContentType, finalFilename, size, { makePublic });
104
+ if (!uploadPayload.success || !uploadPayload.uploadFile) {
105
+ return {
106
+ content: [
107
+ {
108
+ type: "text",
109
+ text: JSON.stringify({
110
+ success: false,
111
+ error: "Failed to get upload URL from Linear",
112
+ }),
113
+ },
114
+ ],
115
+ };
116
+ }
117
+ const { uploadUrl, headers, assetUrl } = uploadPayload.uploadFile;
118
+ // Step 2: Upload the file to the provided URL
119
+ console.log(`Uploading file to Linear cloud storage...`);
120
+ // Create headers following Linear's documentation exactly
121
+ const uploadHeaders = {
122
+ "Content-Type": finalContentType,
123
+ "Cache-Control": "public, max-age=31536000",
124
+ };
125
+ // Then add the headers from Linear's response
126
+ // These override any defaults we set above
127
+ for (const header of headers) {
128
+ uploadHeaders[header.key] = header.value;
129
+ }
130
+ console.log(`Headers being sent:`, uploadHeaders);
131
+ const uploadResponse = await fetch(uploadUrl, {
132
+ method: "PUT",
133
+ headers: uploadHeaders,
134
+ body: fileBuffer,
135
+ });
136
+ if (!uploadResponse.ok) {
137
+ const errorText = await uploadResponse.text();
138
+ return {
139
+ content: [
140
+ {
141
+ type: "text",
142
+ text: JSON.stringify({
143
+ success: false,
144
+ error: `Failed to upload file: ${uploadResponse.status} ${uploadResponse.statusText} - ${errorText}`,
145
+ }),
146
+ },
147
+ ],
148
+ };
149
+ }
150
+ console.log(`File uploaded successfully: ${assetUrl}`);
151
+ // Return the asset URL and metadata
152
+ return {
153
+ content: [
154
+ {
155
+ type: "text",
156
+ text: JSON.stringify({
157
+ success: true,
158
+ assetUrl,
159
+ filename: finalFilename,
160
+ size,
161
+ contentType: finalContentType,
162
+ }),
163
+ },
164
+ ],
165
+ };
166
+ }
167
+ catch (error) {
168
+ return {
169
+ content: [
170
+ {
171
+ type: "text",
172
+ text: JSON.stringify({
173
+ success: false,
174
+ error: error instanceof Error ? error.message : String(error),
175
+ }),
176
+ },
177
+ ],
178
+ };
179
+ }
180
+ });
181
+ const agentSessionTool = tool("linear_agent_session_create", "Create an agent session on a Linear issue to track AI/bot activity.", {
182
+ issueId: z
183
+ .string()
184
+ .describe('The ID or identifier of the Linear issue (e.g., "ABC-123" or UUID)'),
185
+ externalLink: z
186
+ .string()
187
+ .optional()
188
+ .describe("Optional URL of an external agent-hosted page associated with this session"),
189
+ }, async ({ issueId, externalLink }) => {
190
+ try {
191
+ // Use raw GraphQL through the Linear client
192
+ // Access the underlying GraphQL client
193
+ const graphQLClient = linearClient.client;
194
+ const mutation = `
195
+ mutation AgentSessionCreateOnIssue($input: AgentSessionCreateOnIssue!) {
196
+ agentSessionCreateOnIssue(input: $input) {
197
+ success
198
+ lastSyncId
199
+ agentSession {
200
+ id
201
+ }
202
+ }
203
+ }
204
+ `;
205
+ const variables = {
206
+ input: {
207
+ issueId,
208
+ ...(externalLink && { externalLink }),
209
+ },
210
+ };
211
+ console.log(`Creating agent session for issue ${issueId}`);
212
+ const response = await graphQLClient.rawRequest(mutation, variables);
213
+ const result = response.data.agentSessionCreateOnIssue;
214
+ if (!result.success) {
215
+ return {
216
+ content: [
217
+ {
218
+ type: "text",
219
+ text: JSON.stringify({
220
+ success: false,
221
+ error: "Failed to create agent session",
222
+ }),
223
+ },
224
+ ],
225
+ };
226
+ }
227
+ const agentSessionId = result.agentSession.id;
228
+ console.log(`Agent session created successfully: ${agentSessionId}`);
229
+ // Register the child-to-parent mapping if we have a parent session
230
+ if (options.parentSessionId && options.onSessionCreated) {
231
+ console.log(`[CyrusTools] Mapping child session ${agentSessionId} to parent ${options.parentSessionId}`);
232
+ options.onSessionCreated(agentSessionId, options.parentSessionId);
233
+ }
234
+ return {
235
+ content: [
236
+ {
237
+ type: "text",
238
+ text: JSON.stringify({
239
+ success: result.success,
240
+ agentSessionId,
241
+ lastSyncId: result.lastSyncId,
242
+ }),
243
+ },
244
+ ],
245
+ };
246
+ }
247
+ catch (error) {
248
+ return {
249
+ content: [
250
+ {
251
+ type: "text",
252
+ text: JSON.stringify({
253
+ success: false,
254
+ error: error instanceof Error ? error.message : String(error),
255
+ }),
256
+ },
257
+ ],
258
+ };
259
+ }
260
+ });
261
+ const agentSessionOnCommentTool = tool("linear_agent_session_create_on_comment", "Create an agent session on a Linear root comment (not a reply) to trigger a sub-agent for processing child issues or tasks. See Linear API docs: https://studio.apollographql.com/public/Linear-API/variant/current/schema/reference/inputs/AgentSessionCreateOnComment", {
262
+ commentId: z
263
+ .string()
264
+ .describe("The ID of the Linear root comment (not a reply) to create the session on"),
265
+ externalLink: z
266
+ .string()
267
+ .optional()
268
+ .describe("Optional URL of an external agent-hosted page associated with this session"),
269
+ }, async ({ commentId, externalLink }) => {
270
+ try {
271
+ // Use raw GraphQL through the Linear client
272
+ // Access the underlying GraphQL client
273
+ const graphQLClient = linearClient.client;
274
+ const mutation = `
275
+ mutation AgentSessionCreateOnComment($input: AgentSessionCreateOnComment!) {
276
+ agentSessionCreateOnComment(input: $input) {
277
+ success
278
+ lastSyncId
279
+ agentSession {
280
+ id
281
+ }
282
+ }
283
+ }
284
+ `;
285
+ const variables = {
286
+ input: {
287
+ commentId,
288
+ ...(externalLink && { externalLink }),
289
+ },
290
+ };
291
+ console.log(`Creating agent session for comment ${commentId}`);
292
+ const response = await graphQLClient.rawRequest(mutation, variables);
293
+ const result = response.data.agentSessionCreateOnComment;
294
+ if (!result.success) {
295
+ return {
296
+ content: [
297
+ {
298
+ type: "text",
299
+ text: JSON.stringify({
300
+ success: false,
301
+ error: "Failed to create agent session on comment",
302
+ }),
303
+ },
304
+ ],
305
+ };
306
+ }
307
+ const agentSessionId = result.agentSession.id;
308
+ console.log(`Agent session created successfully on comment: ${agentSessionId}`);
309
+ // Register the child-to-parent mapping if we have a parent session
310
+ if (options.parentSessionId && options.onSessionCreated) {
311
+ console.log(`[CyrusTools] Mapping child session ${agentSessionId} to parent ${options.parentSessionId}`);
312
+ options.onSessionCreated(agentSessionId, options.parentSessionId);
313
+ }
314
+ return {
315
+ content: [
316
+ {
317
+ type: "text",
318
+ text: JSON.stringify({
319
+ success: result.success,
320
+ agentSessionId,
321
+ lastSyncId: result.lastSyncId,
322
+ }),
323
+ },
324
+ ],
325
+ };
326
+ }
327
+ catch (error) {
328
+ return {
329
+ content: [
330
+ {
331
+ type: "text",
332
+ text: JSON.stringify({
333
+ success: false,
334
+ error: error instanceof Error ? error.message : String(error),
335
+ }),
336
+ },
337
+ ],
338
+ };
339
+ }
340
+ });
341
+ const giveFeedbackTool = tool("linear_agent_give_feedback", "Provide feedback to a child agent session to continue its processing.", {
342
+ agentSessionId: z
343
+ .string()
344
+ .describe("The ID of the child agent session to provide feedback to"),
345
+ message: z
346
+ .string()
347
+ .describe("The feedback message to send to the child agent session"),
348
+ }, async ({ agentSessionId, message }) => {
349
+ // Validate parameters
350
+ if (!agentSessionId) {
351
+ return {
352
+ content: [
353
+ {
354
+ type: "text",
355
+ text: JSON.stringify({
356
+ success: false,
357
+ error: "agentSessionId is required",
358
+ }),
359
+ },
360
+ ],
361
+ };
362
+ }
363
+ if (!message) {
364
+ return {
365
+ content: [
366
+ {
367
+ type: "text",
368
+ text: JSON.stringify({
369
+ success: false,
370
+ error: "message is required",
371
+ }),
372
+ },
373
+ ],
374
+ };
375
+ }
376
+ // Deliver the feedback through the callback if provided
377
+ let delivered = false;
378
+ if (options.onFeedbackDelivery) {
379
+ console.log(`[CyrusTools] Delivering feedback to child session ${agentSessionId}`);
380
+ try {
381
+ delivered = await options.onFeedbackDelivery(agentSessionId, message);
382
+ if (delivered) {
383
+ console.log(`[CyrusTools] Feedback delivered successfully to parent session`);
384
+ }
385
+ else {
386
+ console.log(`[CyrusTools] No parent session found for child ${agentSessionId}`);
387
+ }
388
+ }
389
+ catch (error) {
390
+ console.error(`[CyrusTools] Failed to deliver feedback:`, error);
391
+ }
392
+ }
393
+ // Return success even if delivery wasn't possible
394
+ // (the child session might not have a parent)
395
+ return {
396
+ content: [
397
+ {
398
+ type: "text",
399
+ text: JSON.stringify({
400
+ success: true,
401
+ delivered,
402
+ }),
403
+ },
404
+ ],
405
+ };
406
+ });
407
+ const getChildIssuesTool = tool("linear_get_child_issues", "Get all child issues (sub-issues) for a given Linear issue. Takes an issue identifier like 'CYHOST-91' and returns a list of child issue ids and their titles.", {
408
+ issueId: z
409
+ .string()
410
+ .describe("The ID or identifier of the parent issue (e.g., 'CYHOST-91' or UUID)"),
411
+ limit: z
412
+ .number()
413
+ .optional()
414
+ .describe("Maximum number of child issues to return (default: 50, max: 250)"),
415
+ includeCompleted: z
416
+ .boolean()
417
+ .optional()
418
+ .describe("Whether to include completed child issues (default: true)"),
419
+ includeArchived: z
420
+ .boolean()
421
+ .optional()
422
+ .describe("Whether to include archived child issues (default: false)"),
423
+ }, async ({ issueId, limit = 50, includeCompleted = true, includeArchived = false, }) => {
424
+ try {
425
+ // Validate and clamp limit
426
+ const finalLimit = Math.min(Math.max(1, limit), 250);
427
+ console.log(`Getting child issues for ${issueId} (limit: ${finalLimit})`);
428
+ // Fetch the parent issue first
429
+ const issue = await linearClient.issue(issueId);
430
+ if (!issue) {
431
+ return {
432
+ content: [
433
+ {
434
+ type: "text",
435
+ text: JSON.stringify({
436
+ success: false,
437
+ error: `Issue ${issueId} not found`,
438
+ }),
439
+ },
440
+ ],
441
+ };
442
+ }
443
+ // Build the filter for child issues
444
+ const filter = {};
445
+ if (!includeCompleted) {
446
+ filter.state = { type: { neq: "completed" } };
447
+ }
448
+ if (!includeArchived) {
449
+ filter.archivedAt = { null: true };
450
+ }
451
+ // Get child issues using the children() method
452
+ const childrenConnection = await issue.children({
453
+ first: finalLimit,
454
+ ...(Object.keys(filter).length > 0 && { filter }),
455
+ });
456
+ // Extract the child issues from the connection
457
+ const children = await childrenConnection.nodes;
458
+ // Process each child to get detailed information
459
+ const childrenData = await Promise.all(children.map(async (child) => {
460
+ const [state, assignee] = await Promise.all([
461
+ child.state,
462
+ child.assignee,
463
+ ]);
464
+ return {
465
+ id: child.id,
466
+ identifier: child.identifier,
467
+ title: child.title,
468
+ state: state?.name || "Unknown",
469
+ stateType: state?.type || null,
470
+ assignee: assignee?.name || null,
471
+ assigneeId: assignee?.id || null,
472
+ priority: child.priority,
473
+ priorityLabel: child.priorityLabel,
474
+ createdAt: child.createdAt.toISOString(),
475
+ updatedAt: child.updatedAt.toISOString(),
476
+ url: child.url,
477
+ archivedAt: child.archivedAt?.toISOString() || null,
478
+ };
479
+ }));
480
+ console.log(`Found ${childrenData.length} child issues for ${issueId}`);
481
+ return {
482
+ content: [
483
+ {
484
+ type: "text",
485
+ text: JSON.stringify({
486
+ success: true,
487
+ parentIssue: {
488
+ id: issue.id,
489
+ identifier: issue.identifier,
490
+ title: issue.title,
491
+ url: issue.url,
492
+ },
493
+ childCount: childrenData.length,
494
+ children: childrenData,
495
+ }, null, 2),
496
+ },
497
+ ],
498
+ };
499
+ }
500
+ catch (error) {
501
+ console.error(`Error getting child issues for ${issueId}:`, error);
502
+ return {
503
+ content: [
504
+ {
505
+ type: "text",
506
+ text: JSON.stringify({
507
+ success: false,
508
+ error: error instanceof Error ? error.message : String(error),
509
+ }),
510
+ },
511
+ ],
512
+ };
513
+ }
514
+ });
515
+ return createSdkMcpServer({
516
+ name: "cyrus-tools",
517
+ version: "1.0.0",
518
+ tools: [
519
+ uploadTool,
520
+ agentSessionTool,
521
+ agentSessionOnCommentTool,
522
+ giveFeedbackTool,
523
+ getChildIssuesTool,
524
+ ],
525
+ });
526
+ }
527
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/cyrus-tools/index.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -1,7 +1,8 @@
1
- import type { HookCallbackMatcher, HookEvent, McpServerConfig, SDKAssistantMessage, SDKMessage, SDKResultMessage, SDKSystemMessage, SDKUserMessage } from "@anthropic-ai/claude-code";
1
+ import type { HookCallbackMatcher, HookEvent, McpServerConfig, SDKAssistantMessage, SDKMessage, SDKResultMessage, SDKSystemMessage, SDKUserMessage } from "@anthropic-ai/claude-agent-sdk";
2
2
  export interface ClaudeRunnerConfig {
3
3
  workingDirectory?: string;
4
4
  allowedTools?: string[];
5
+ disallowedTools?: string[];
5
6
  allowedDirectories?: string[];
6
7
  resumeSessionId?: string;
7
8
  workspaceName?: string;
@@ -35,7 +36,7 @@ export interface ClaudeRunnerEvents {
35
36
  error: (error: Error) => void | Promise<void>;
36
37
  complete: (messages: SDKMessage[]) => void | Promise<void>;
37
38
  }
38
- export type { McpServerConfig, SDKAssistantMessage, SDKMessage, SDKResultMessage, SDKSystemMessage, SDKUserMessage, } from "@anthropic-ai/claude-code";
39
+ export type { McpServerConfig, SDKAssistantMessage, SDKMessage, SDKResultMessage, SDKSystemMessage, SDKUserMessage, } from "@anthropic-ai/claude-agent-sdk";
39
40
  export type { Message as APIAssistantMessage, MessageParam as APIUserMessage, } from "@anthropic-ai/sdk/resources/messages.js";
40
41
  export type ClaudeSystemMessage = SDKSystemMessage;
41
42
  export type ClaudeUserMessage = SDKUserMessage;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,mBAAmB,EACnB,SAAS,EACT,eAAe,EACf,mBAAmB,EACnB,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,MAAM,2BAA2B,CAAC;AAEnC,MAAM,WAAW,kBAAkB;IAClC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE;QAEhB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC;IAC1D,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9D;AAED,MAAM,WAAW,iBAAiB;IACjC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IAClC,OAAO,EAAE,CAAC,OAAO,EAAE,UAAU,KAAK,IAAI,CAAC;IACvC,SAAS,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IACnD,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,QAAQ,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3D;AAGD,YAAY,EACX,eAAe,EACf,mBAAmB,EACnB,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,GACd,MAAM,2BAA2B,CAAC;AAEnC,YAAY,EACX,OAAO,IAAI,mBAAmB,EAC9B,YAAY,IAAI,cAAc,GAC9B,MAAM,yCAAyC,CAAC;AAEjD,MAAM,MAAM,mBAAmB,GAAG,gBAAgB,CAAC;AACnD,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC;AAC/C,MAAM,MAAM,sBAAsB,GAAG,mBAAmB,CAAC;AACzD,MAAM,MAAM,mBAAmB,GAAG,gBAAgB,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,mBAAmB,EACnB,SAAS,EACT,eAAe,EACf,mBAAmB,EACnB,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,MAAM,gCAAgC,CAAC;AAExC,MAAM,WAAW,kBAAkB;IAClC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE;QAEhB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC;IAC1D,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9D;AAED,MAAM,WAAW,iBAAiB;IACjC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IAClC,OAAO,EAAE,CAAC,OAAO,EAAE,UAAU,KAAK,IAAI,CAAC;IACvC,SAAS,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IACnD,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,QAAQ,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3D;AAGD,YAAY,EACX,eAAe,EACf,mBAAmB,EACnB,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,GACd,MAAM,gCAAgC,CAAC;AAExC,YAAY,EACX,OAAO,IAAI,mBAAmB,EAC9B,YAAY,IAAI,cAAc,GAC9B,MAAM,yCAAyC,CAAC;AAEjD,MAAM,MAAM,mBAAmB,GAAG,gBAAgB,CAAC;AACnD,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC;AAC/C,MAAM,MAAM,sBAAsB,GAAG,mBAAmB,CAAC;AACzD,MAAM,MAAM,mBAAmB,GAAG,gBAAgB,CAAC"}
package/package.json CHANGED
@@ -1,31 +1,35 @@
1
1
  {
2
- "name": "cyrus-claude-runner",
3
- "version": "0.0.23",
4
- "description": "Claude process spawning and management for Cyrus",
5
- "type": "module",
6
- "main": "dist/index.js",
7
- "types": "dist/index.d.ts",
8
- "files": [
9
- "dist"
10
- ],
11
- "dependencies": {
12
- "@anthropic-ai/claude-code": "1.0.90",
13
- "@anthropic-ai/sdk": "^0.60.0"
14
- },
15
- "devDependencies": {
16
- "@types/node": "^20.0.0",
17
- "dotenv": "^16.5.0",
18
- "typescript": "^5.3.3",
19
- "vitest": "^1.1.0"
20
- },
21
- "publishConfig": {
22
- "access": "public"
23
- },
24
- "scripts": {
25
- "build": "tsc",
26
- "dev": "tsc --watch",
27
- "test": "vitest",
28
- "test:run": "vitest run",
29
- "typecheck": "tsc --noEmit"
30
- }
31
- }
2
+ "name": "cyrus-claude-runner",
3
+ "version": "0.0.25",
4
+ "description": "Claude process spawning and management for Cyrus",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "types": "dist/index.d.ts",
8
+ "files": [
9
+ "dist"
10
+ ],
11
+ "scripts": {
12
+ "build": "tsc",
13
+ "dev": "tsc --watch",
14
+ "test": "vitest",
15
+ "test:run": "vitest run",
16
+ "typecheck": "tsc --noEmit"
17
+ },
18
+ "dependencies": {
19
+ "@anthropic-ai/claude-agent-sdk": "^0.1.0",
20
+ "@anthropic-ai/sdk": "^0.64.0",
21
+ "@linear/sdk": "^58.1.0",
22
+ "fs-extra": "^11.3.0",
23
+ "zod": "^3.23.0"
24
+ },
25
+ "devDependencies": {
26
+ "@types/fs-extra": "^11.0.4",
27
+ "@types/node": "^20.0.0",
28
+ "dotenv": "^16.5.0",
29
+ "typescript": "^5.3.3",
30
+ "vitest": "^1.1.0"
31
+ },
32
+ "publishConfig": {
33
+ "access": "public"
34
+ }
35
+ }