@codebolt/codeboltjs 2.0.13 → 2.0.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/dist/agentlib/agent.js +3 -7
  2. package/dist/agentlib/followupquestionbuilder.d.ts +75 -0
  3. package/dist/agentlib/followupquestionbuilder.js +193 -0
  4. package/dist/agentlib/llmoutputhandler.d.ts +102 -0
  5. package/dist/agentlib/llmoutputhandler.js +451 -0
  6. package/dist/agentlib/promptbuilder.d.ts +171 -17
  7. package/dist/agentlib/promptbuilder.js +367 -49
  8. package/dist/agentlib/systemprompt.js +3 -3
  9. package/dist/agentlib/usermessage.d.ts +1 -1
  10. package/dist/agentlib/usermessage.js +5 -1
  11. package/dist/core/Codebolt.d.ts +52 -20
  12. package/dist/core/Codebolt.js +43 -1
  13. package/dist/core/websocket.js +2 -1
  14. package/dist/modules/llm.d.ts +23 -3
  15. package/dist/modules/llm.js +20 -3
  16. package/dist/modules/project.d.ts +3 -3
  17. package/dist/modules/project.js +1 -1
  18. package/dist/modules/state.d.ts +5 -3
  19. package/dist/modules/state.js +2 -0
  20. package/dist/modules/task.d.ts +126 -11
  21. package/dist/modules/task.js +262 -20
  22. package/dist/notificationfunctions/agent.d.ts +48 -0
  23. package/dist/notificationfunctions/agent.js +115 -0
  24. package/dist/notificationfunctions/browser.d.ts +60 -0
  25. package/dist/notificationfunctions/browser.js +145 -0
  26. package/dist/notificationfunctions/chat.d.ts +53 -0
  27. package/dist/notificationfunctions/chat.js +125 -0
  28. package/dist/notificationfunctions/codeutils.d.ts +60 -0
  29. package/dist/notificationfunctions/codeutils.js +145 -0
  30. package/dist/notificationfunctions/crawler.d.ts +59 -0
  31. package/dist/notificationfunctions/crawler.js +159 -0
  32. package/dist/notificationfunctions/dbmemory.d.ts +50 -0
  33. package/dist/notificationfunctions/dbmemory.js +132 -0
  34. package/dist/notificationfunctions/fs.d.ts +125 -0
  35. package/dist/notificationfunctions/fs.js +472 -0
  36. package/dist/notificationfunctions/git.d.ts +174 -0
  37. package/dist/notificationfunctions/git.js +521 -0
  38. package/dist/notificationfunctions/history.d.ts +38 -0
  39. package/dist/notificationfunctions/history.js +97 -0
  40. package/dist/notificationfunctions/index.d.ts +79 -0
  41. package/dist/notificationfunctions/index.js +102 -0
  42. package/dist/notificationfunctions/llm.d.ts +39 -0
  43. package/dist/notificationfunctions/llm.js +99 -0
  44. package/dist/notificationfunctions/mcp.d.ts +67 -0
  45. package/dist/notificationfunctions/mcp.js +192 -0
  46. package/dist/notificationfunctions/search.d.ts +50 -0
  47. package/dist/notificationfunctions/search.js +146 -0
  48. package/dist/notificationfunctions/system.d.ts +25 -0
  49. package/dist/notificationfunctions/system.js +59 -0
  50. package/dist/notificationfunctions/terminal.d.ts +26 -0
  51. package/dist/notificationfunctions/terminal.js +64 -0
  52. package/dist/notificationfunctions/todo.d.ts +63 -0
  53. package/dist/notificationfunctions/todo.js +164 -0
  54. package/dist/notificationfunctions/utils.d.ts +81 -0
  55. package/dist/notificationfunctions/utils.js +177 -0
  56. package/dist/types/InternalTypes.d.ts +1 -0
  57. package/dist/types/commonTypes.d.ts +26 -3
  58. package/dist/types/index.d.ts +2 -2
  59. package/dist/types/libFunctionTypes.d.ts +80 -3
  60. package/dist/types/notificationFunctions/agent.d.ts +8 -0
  61. package/dist/types/notificationFunctions/agent.js +2 -0
  62. package/dist/types/notificationFunctions/browser.d.ts +10 -0
  63. package/dist/types/notificationFunctions/browser.js +2 -0
  64. package/dist/types/notificationFunctions/chat.d.ts +10 -0
  65. package/dist/types/notificationFunctions/chat.js +2 -0
  66. package/dist/types/notificationFunctions/codeutils.d.ts +10 -0
  67. package/dist/types/notificationFunctions/codeutils.js +2 -0
  68. package/dist/types/notificationFunctions/crawler.d.ts +10 -0
  69. package/dist/types/notificationFunctions/crawler.js +2 -0
  70. package/dist/types/notificationFunctions/dbmemory.d.ts +9 -0
  71. package/dist/types/notificationFunctions/dbmemory.js +2 -0
  72. package/dist/types/notificationFunctions/fs.d.ts +27 -0
  73. package/dist/types/notificationFunctions/fs.js +2 -0
  74. package/dist/types/notificationFunctions/git.d.ts +29 -0
  75. package/dist/types/notificationFunctions/git.js +2 -0
  76. package/dist/types/notificationFunctions/history.d.ts +10 -0
  77. package/dist/types/notificationFunctions/history.js +2 -0
  78. package/dist/types/notificationFunctions/index.d.ts +0 -0
  79. package/dist/types/notificationFunctions/index.js +1 -0
  80. package/dist/types/notificationFunctions/llm.d.ts +10 -0
  81. package/dist/types/notificationFunctions/llm.js +2 -0
  82. package/dist/types/notificationFunctions/mcp.d.ts +16 -0
  83. package/dist/types/notificationFunctions/mcp.js +2 -0
  84. package/dist/types/notificationFunctions/search.d.ts +11 -0
  85. package/dist/types/notificationFunctions/search.js +2 -0
  86. package/dist/types/notificationFunctions/system.d.ts +7 -0
  87. package/dist/types/notificationFunctions/system.js +2 -0
  88. package/dist/types/notificationFunctions/terminal.d.ts +7 -0
  89. package/dist/types/notificationFunctions/terminal.js +2 -0
  90. package/dist/types/notificationFunctions/todo.d.ts +11 -0
  91. package/dist/types/notificationFunctions/todo.js +2 -0
  92. package/dist/types/notifications/agent.d.ts +31 -0
  93. package/dist/types/notifications/agent.js +3 -0
  94. package/dist/types/notifications/browser.d.ts +53 -0
  95. package/dist/types/notifications/browser.js +3 -0
  96. package/dist/types/notifications/chat.d.ts +37 -0
  97. package/dist/types/notifications/chat.js +3 -0
  98. package/dist/types/notifications/codeutils.d.ts +55 -0
  99. package/dist/types/notifications/codeutils.js +3 -0
  100. package/dist/types/notifications/crawler.d.ts +55 -0
  101. package/dist/types/notifications/crawler.js +3 -0
  102. package/dist/types/notifications/dbmemory.d.ts +31 -0
  103. package/dist/types/notifications/dbmemory.js +3 -0
  104. package/dist/types/notifications/fs.d.ts +180 -0
  105. package/dist/types/notifications/fs.js +3 -0
  106. package/dist/types/notifications/git.d.ts +205 -0
  107. package/dist/types/notifications/git.js +3 -0
  108. package/dist/types/notifications/history.d.ts +32 -0
  109. package/dist/types/notifications/history.js +3 -0
  110. package/dist/types/notifications/llm.d.ts +45 -0
  111. package/dist/types/notifications/llm.js +2 -0
  112. package/dist/types/notifications/mcp.d.ts +63 -0
  113. package/dist/types/notifications/mcp.js +3 -0
  114. package/dist/types/notifications/search.d.ts +47 -0
  115. package/dist/types/notifications/search.js +3 -0
  116. package/dist/types/notifications/system.d.ts +20 -0
  117. package/dist/types/notifications/system.js +2 -0
  118. package/dist/types/notifications/terminal.d.ts +17 -0
  119. package/dist/types/notifications/terminal.js +2 -0
  120. package/dist/types/notifications/todo.d.ts +60 -0
  121. package/dist/types/notifications/todo.js +3 -0
  122. package/dist/types/socketMessageTypes.d.ts +3 -0
  123. package/dist/utils.d.ts +3 -0
  124. package/dist/utils.js +7 -1
  125. package/package.json +1 -1
@@ -0,0 +1,177 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.safeStringify = exports.createSuccessResponse = exports.createErrorResponse = exports.validateRequiredFields = exports.sendNotification = exports.validateNotificationStructure = exports.generateToolUseId = exports.NotificationErrorCodes = exports.NotificationError = void 0;
7
+ const websocket_1 = __importDefault(require("../core/websocket"));
8
+ /**
9
+ * Error class for notification-related errors
10
+ */
11
+ class NotificationError extends Error {
12
+ constructor(message, code, category, originalError) {
13
+ super(message);
14
+ this.code = code;
15
+ this.category = category;
16
+ this.originalError = originalError;
17
+ this.name = 'NotificationError';
18
+ }
19
+ }
20
+ exports.NotificationError = NotificationError;
21
+ /**
22
+ * Error codes for notification operations
23
+ */
24
+ var NotificationErrorCodes;
25
+ (function (NotificationErrorCodes) {
26
+ NotificationErrorCodes["CONNECTION_NOT_READY"] = "CONNECTION_NOT_READY";
27
+ NotificationErrorCodes["INVALID_DATA"] = "INVALID_DATA";
28
+ NotificationErrorCodes["TIMEOUT"] = "TIMEOUT";
29
+ NotificationErrorCodes["WEBSOCKET_ERROR"] = "WEBSOCKET_ERROR";
30
+ NotificationErrorCodes["VALIDATION_FAILED"] = "VALIDATION_FAILED";
31
+ })(NotificationErrorCodes || (exports.NotificationErrorCodes = NotificationErrorCodes = {}));
32
+ /**
33
+ * Generates a unique toolUseId for notifications
34
+ * @returns {string} A unique identifier in the format 'tool_timestamp_randomstring'
35
+ */
36
+ function generateToolUseId() {
37
+ const timestamp = Date.now();
38
+ const randomString = Math.random().toString(36).substr(2, 9);
39
+ return `tool_${timestamp}_${randomString}`;
40
+ }
41
+ exports.generateToolUseId = generateToolUseId;
42
+ /**
43
+ * Validates the basic structure of a notification
44
+ * @param notification The notification to validate
45
+ * @returns {boolean} True if the notification has required fields
46
+ */
47
+ function validateNotificationStructure(notification) {
48
+ if (!notification) {
49
+ return false;
50
+ }
51
+ // Check required fields
52
+ if (!notification.toolUseId || typeof notification.toolUseId !== 'string') {
53
+ return false;
54
+ }
55
+ if (!notification.type || typeof notification.type !== 'string') {
56
+ return false;
57
+ }
58
+ if (!notification.action || typeof notification.action !== 'string') {
59
+ return false;
60
+ }
61
+ return true;
62
+ }
63
+ exports.validateNotificationStructure = validateNotificationStructure;
64
+ /**
65
+ * Sends a notification through the WebSocket connection
66
+ * This is a fire-and-forget operation that handles errors gracefully
67
+ * @param notification The notification to send
68
+ * @param category The category of notification for error reporting
69
+ */
70
+ function sendNotification(notification, category = 'unknown') {
71
+ try {
72
+ // Generate toolUseId if not provided
73
+ if (!notification.toolUseId) {
74
+ notification.toolUseId = generateToolUseId();
75
+ }
76
+ // Validate notification structure
77
+ if (!validateNotificationStructure(notification)) {
78
+ const error = new NotificationError(`Invalid notification structure for ${category}`, NotificationErrorCodes.VALIDATION_FAILED, category);
79
+ console.error('[NotificationFunctions]', error.message, notification);
80
+ return;
81
+ }
82
+ // Check if WebSocket is ready
83
+ if (!websocket_1.default.isInitialized) {
84
+ const warning = `WebSocket not ready, ${category} notification may not be sent`;
85
+ console.warn('[NotificationFunctions]', warning, notification);
86
+ // Still attempt to send - the message manager will handle the error
87
+ }
88
+ // Send via WebSocket (fire and forget)
89
+ websocket_1.default.messageManager.send(notification);
90
+ // Log successful send (only in debug mode to avoid spam)
91
+ if (process.env.NODE_ENV === 'development' || process.env.DEBUG) {
92
+ console.log(`[NotificationFunctions] Sent ${category} notification:`, {
93
+ toolUseId: notification.toolUseId,
94
+ type: notification.type,
95
+ action: notification.action
96
+ });
97
+ }
98
+ }
99
+ catch (error) {
100
+ const notificationError = new NotificationError(`Failed to send ${category} notification: ${error instanceof Error ? error.message : 'Unknown error'}`, NotificationErrorCodes.WEBSOCKET_ERROR, category, error instanceof Error ? error : undefined);
101
+ console.error('[NotificationFunctions]', notificationError.message, notification);
102
+ }
103
+ }
104
+ exports.sendNotification = sendNotification;
105
+ /**
106
+ * Validates that required data fields are present and not empty
107
+ * @param data The data object to validate
108
+ * @param requiredFields Array of field names that must be present
109
+ * @param category The category for error reporting
110
+ * @returns {boolean} True if all required fields are present
111
+ */
112
+ function validateRequiredFields(data, requiredFields, category = 'unknown') {
113
+ if (!data || typeof data !== 'object') {
114
+ console.error(`[NotificationFunctions] Invalid data object for ${category}:`, data);
115
+ return false;
116
+ }
117
+ for (const field of requiredFields) {
118
+ if (!(field in data) || data[field] === null || data[field] === undefined || data[field] === '') {
119
+ console.error(`[NotificationFunctions] Missing required field '${field}' for ${category}:`, data);
120
+ return false;
121
+ }
122
+ }
123
+ return true;
124
+ }
125
+ exports.validateRequiredFields = validateRequiredFields;
126
+ /**
127
+ * Creates a standardized error response notification
128
+ * @param toolUseId The toolUseId to use for the response
129
+ * @param type The notification type
130
+ * @param action The response action
131
+ * @param error The error that occurred
132
+ * @returns A standardized error response notification
133
+ */
134
+ function createErrorResponse(toolUseId, type, action, error) {
135
+ return {
136
+ toolUseId,
137
+ type,
138
+ action,
139
+ content: error instanceof Error ? error.message : error,
140
+ isError: true
141
+ };
142
+ }
143
+ exports.createErrorResponse = createErrorResponse;
144
+ /**
145
+ * Creates a standardized success response notification
146
+ * @param toolUseId The toolUseId to use for the response
147
+ * @param type The notification type
148
+ * @param action The response action
149
+ * @param content The success content
150
+ * @returns A standardized success response notification
151
+ */
152
+ function createSuccessResponse(toolUseId, type, action, content) {
153
+ return {
154
+ toolUseId,
155
+ type,
156
+ action,
157
+ content,
158
+ isError: false
159
+ };
160
+ }
161
+ exports.createSuccessResponse = createSuccessResponse;
162
+ /**
163
+ * Utility function to safely stringify objects for logging
164
+ * @param obj The object to stringify
165
+ * @param maxLength Maximum length of the resulting string
166
+ * @returns A safe string representation
167
+ */
168
+ function safeStringify(obj, maxLength = 200) {
169
+ try {
170
+ const str = JSON.stringify(obj);
171
+ return str.length > maxLength ? str.substring(0, maxLength) + '...' : str;
172
+ }
173
+ catch (error) {
174
+ return '[Object - could not stringify]';
175
+ }
176
+ }
177
+ exports.safeStringify = safeStringify;
@@ -489,6 +489,7 @@ export interface Message {
489
489
  }[];
490
490
  /** List of agents mentioned in the message */
491
491
  mentionedAgents: any[];
492
+ remixPrompt?: string;
492
493
  }
493
494
  /**
494
495
  * Interface for file listing result.
@@ -86,11 +86,34 @@ export interface AgentDetail {
86
86
  status: string;
87
87
  unique_id: string;
88
88
  }
89
+ export interface SubTask {
90
+ id: string;
91
+ title: string;
92
+ description?: string;
93
+ completed: boolean;
94
+ requirements?: string[];
95
+ }
89
96
  export interface Task {
90
- id?: string;
91
- title?: string;
97
+ id: string;
98
+ title: string;
92
99
  description?: string;
93
- completed?: boolean;
100
+ phase?: string;
101
+ category?: string;
102
+ agentId: string;
103
+ subtasks: SubTask[];
104
+ completed: boolean;
105
+ createdAt?: Date;
106
+ updatedAt?: Date;
107
+ priority?: 'low' | 'medium' | 'high';
108
+ tags?: string[];
109
+ }
110
+ export interface TaskResponse {
111
+ success: boolean;
112
+ data?: Task | Task[] | SubTask | string[] | string;
113
+ message?: string;
114
+ error?: string;
115
+ agentId?: string;
116
+ count?: number;
94
117
  }
95
118
  export interface VectorItem {
96
119
  id: string;
@@ -11,5 +11,5 @@
11
11
  * import type { LLMChatOptions, BrowserScreenshotOptions } from 'codeboltjs/types';
12
12
  * ```
13
13
  */
14
- export type { Message, ToolCall, Tool, UserMessage, LLMInferenceParams, APIResponse, CodeboltConfig, ProgressCallback, ErrorCallback, SuccessCallback, CompletionCallback, OpenAIMessage, OpenAITool, ConversationEntry, ToolResult, ToolDetails, UserMessageContent, CodeboltAPI, ReadFileOptions, WriteFileOptions, ListFilesOptions, SearchFilesOptions, GrepSearchOptions, BrowserNavigationOptions, BrowserScreenshotOptions, BrowserElementSelector, TerminalExecuteOptions, GitCommitOptions, GitLogOptions, LLMChatOptions, VectorAddOptions, VectorQueryOptions, AgentMessageHandler, AgentConfiguration, MemorySetOptions, MemoryGetOptions, TaskCreateOptions, TaskUpdateOptions, CodeAnalysisOptions, CodeParseOptions, DebugLogOptions, ProjectInfo, CrawlerOptions, MCPExecuteOptions, MCPConfigureOptions, StateUpdateOptions, ChatSendOptions, ChatHistoryOptions, NotificationOptions, PaginationOptions, FilterOptions, AsyncOperationOptions, APIEventMap } from './libFunctionTypes';
15
- export type { GitFileStatus, StatusResult, CommitSummary, DiffResult, AgentFunction, AgentDetail, Agent, Task, VectorItem, VectorQueryResult, FileEntry, SearchMatch, SearchResult, BrowserElement, CodeIssue, CodeAnalysis, CodeMatcher, MCPTool, MCPServer, ASTNode, Notification, DeepPartial, DeepRequired, Optional, Required } from './commonTypes';
14
+ export type { Message, ToolCall, Tool, UserMessage, LLMInferenceParams, APIResponse, CodeboltConfig, ProgressCallback, ErrorCallback, SuccessCallback, CompletionCallback, OpenAIMessage, OpenAITool, ConversationEntry, ToolResult, ToolDetails, UserMessageContent, CodeboltAPI, ReadFileOptions, WriteFileOptions, ListFilesOptions, SearchFilesOptions, GrepSearchOptions, BrowserNavigationOptions, BrowserScreenshotOptions, BrowserElementSelector, TerminalExecuteOptions, GitCommitOptions, GitLogOptions, LLMChatOptions, VectorAddOptions, VectorQueryOptions, AgentMessageHandler, AgentConfiguration, MemorySetOptions, MemoryGetOptions, TaskCreateOptions, TaskUpdateOptions, AddSubTaskOptions, UpdateSubTaskOptions, TaskFilterOptions, TaskMarkdownImportOptions, TaskMarkdownExportOptions, CodeAnalysisOptions, CodeParseOptions, DebugLogOptions, ProjectInfo, CrawlerOptions, MCPExecuteOptions, MCPConfigureOptions, StateUpdateOptions, ChatSendOptions, ChatHistoryOptions, NotificationOptions, PaginationOptions, FilterOptions, AsyncOperationOptions, APIEventMap } from './libFunctionTypes';
15
+ export type { GitFileStatus, StatusResult, CommitSummary, DiffResult, AgentFunction, AgentDetail, Agent, Task, SubTask, TaskResponse, VectorItem, VectorQueryResult, FileEntry, SearchMatch, SearchResult, BrowserElement, CodeIssue, CodeAnalysis, CodeMatcher, MCPTool, MCPServer, ASTNode, Notification, DeepPartial, DeepRequired, Optional, Required } from './commonTypes';
@@ -171,6 +171,7 @@ export interface UserMessageContent {
171
171
  * This is a simplified, user-friendly version of the internal message format
172
172
  */
173
173
  export interface UserMessage {
174
+ type: string;
174
175
  /** The user's message content */
175
176
  userMessage: string;
176
177
  /** Current file being worked on */
@@ -179,6 +180,8 @@ export interface UserMessage {
179
180
  mentionedFiles: string[];
180
181
  /** Full file paths mentioned */
181
182
  mentionedFullPaths: string[];
183
+ /** MCPs mentioned */
184
+ mentionedMCPs: string[];
182
185
  /** Folders mentioned */
183
186
  mentionedFolders: string[];
184
187
  /** Images uploaded with the message */
@@ -194,6 +197,8 @@ export interface UserMessage {
194
197
  threadId: string;
195
198
  /** Any text selection in the editor */
196
199
  selection?: any;
200
+ remixPrompt?: string;
201
+ mentionedAgents?: [];
197
202
  }
198
203
  /**
199
204
  * Interface for codebolt API functionality
@@ -206,6 +211,9 @@ export interface CodeboltAPI {
206
211
  getTools: (mcps: any[]) => Promise<{
207
212
  data: OpenAITool[];
208
213
  }>;
214
+ executeTool: (toolboxName: string, actualToolName: string, toolInput: any) => Promise<{
215
+ data: any;
216
+ }>;
209
217
  };
210
218
  fs: {
211
219
  readFile: (filepath: string) => Promise<string>;
@@ -219,6 +227,9 @@ export interface CodeboltAPI {
219
227
  projectPath: string;
220
228
  }>;
221
229
  };
230
+ chat: {
231
+ sendMessage: (message: string, metadata: any) => Promise<void>;
232
+ };
222
233
  }
223
234
  export interface ReadFileOptions {
224
235
  /** File path to read */
@@ -388,26 +399,92 @@ export interface MemoryGetOptions {
388
399
  export interface TaskCreateOptions {
389
400
  /** Task title */
390
401
  title: string;
402
+ /** Agent ID for task organization */
403
+ agentId?: string;
391
404
  /** Task description */
392
405
  description?: string;
406
+ /** Task phase */
407
+ phase?: string;
408
+ /** Task category */
409
+ category?: string;
393
410
  /** Task priority */
394
411
  priority?: 'low' | 'medium' | 'high';
395
- /** Due date */
396
- dueDate?: Date | string;
397
412
  /** Associated tags */
398
413
  tags?: string[];
399
414
  }
400
415
  export interface TaskUpdateOptions {
401
416
  /** Task ID */
402
- id: string;
417
+ taskId: string;
403
418
  /** New title */
404
419
  title?: string;
405
420
  /** New description */
406
421
  description?: string;
422
+ /** New phase */
423
+ phase?: string;
424
+ /** New category */
425
+ category?: string;
407
426
  /** Completion status */
408
427
  completed?: boolean;
409
428
  /** New priority */
410
429
  priority?: 'low' | 'medium' | 'high';
430
+ /** New tags */
431
+ tags?: string[];
432
+ /** New agent ID */
433
+ agentId?: string;
434
+ }
435
+ export interface AddSubTaskOptions {
436
+ /** Parent task ID */
437
+ taskId: string;
438
+ /** Subtask title */
439
+ title: string;
440
+ /** Subtask description */
441
+ description?: string;
442
+ /** Subtask requirements */
443
+ requirements?: string[];
444
+ }
445
+ export interface UpdateSubTaskOptions {
446
+ /** Parent task ID */
447
+ taskId: string;
448
+ /** Subtask ID */
449
+ subtaskId: string;
450
+ /** New title */
451
+ title?: string;
452
+ /** New description */
453
+ description?: string;
454
+ /** Completion status */
455
+ completed?: boolean;
456
+ /** New requirements */
457
+ requirements?: string[];
458
+ }
459
+ export interface TaskFilterOptions {
460
+ /** Filter by agent ID */
461
+ agentId?: string;
462
+ /** Filter by category */
463
+ category?: string;
464
+ /** Filter by phase */
465
+ phase?: string;
466
+ /** Filter by priority */
467
+ priority?: 'low' | 'medium' | 'high';
468
+ /** Filter by completion status */
469
+ completed?: boolean;
470
+ }
471
+ export interface TaskMarkdownImportOptions {
472
+ /** Markdown content to import */
473
+ markdown: string;
474
+ /** Agent ID for imported tasks */
475
+ agentId?: string;
476
+ /** Phase for imported tasks */
477
+ phase?: string;
478
+ /** Category for imported tasks */
479
+ category?: string;
480
+ }
481
+ export interface TaskMarkdownExportOptions {
482
+ /** Filter by phase */
483
+ phase?: string;
484
+ /** Filter by agent ID */
485
+ agentId?: string;
486
+ /** Filter by category */
487
+ category?: string;
411
488
  }
412
489
  export interface CodeAnalysisOptions {
413
490
  /** File or directory path */
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Interface for agent notification functions
3
+ */
4
+ export interface AgentNotifications {
5
+ StartSubagentTaskRequestNotify(parentAgentId: string, subagentId: string, task: string, priority?: string, dependencies?: string[], toolUseId?: string): void;
6
+ StartSubagentTaskResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
7
+ SubagentTaskCompletedNotify(parentAgentId: string, subagentId: string, taskId: string, result: any, status: string, toolUseId?: string): void;
8
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,10 @@
1
+ import { WebFetchResponseNotification, WebSearchResponseNotification } from '../notifications/browser';
2
+ /**
3
+ * Interface for browser notification functions
4
+ */
5
+ export interface BrowserNotifications {
6
+ WebFetchRequestNotify(url: string, method?: string, headers?: Record<string, string>, body?: any, timeout?: number, toolUseId?: string): void;
7
+ WebFetchResponseNotify(content: string | any, isError?: boolean, toolUseId?: string, data?: WebFetchResponseNotification['data']): void;
8
+ WebSearchRequestNotify(query: string, maxResults?: number, searchEngine?: string, filters?: any, toolUseId?: string): void;
9
+ WebSearchResponseNotify(content: string | any, isError?: boolean, toolUseId?: string, data?: WebSearchResponseNotification['data']): void;
10
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,10 @@
1
+ import { AgentTextResponseNotification, GetChatHistoryRequestNotification } from '../notifications/chat';
2
+ /**
3
+ * Interface for chat notification functions
4
+ */
5
+ export interface ChatNotifications {
6
+ UserMessageRequestNotify(message: string, payload?: any, toolUseId?: string): void;
7
+ AgentTextResponseNotify(content: string | any, isError?: boolean, toolUseId?: string, data?: AgentTextResponseNotification['data']): void;
8
+ GetChatHistoryRequestNotify(data?: GetChatHistoryRequestNotification['data'], toolUseId?: string): void;
9
+ GetChatHistoryResultNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
10
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,10 @@
1
+ import { GrepSearchResponseNotification, GlobSearchResponseNotification } from '../notifications/codeutils';
2
+ /**
3
+ * Interface for code utils notification functions
4
+ */
5
+ export interface CodeutilsNotifications {
6
+ GrepSearchRequestNotify(pattern: string, filePath?: string, recursive?: boolean, ignoreCase?: boolean, maxResults?: number, toolUseId?: string): void;
7
+ GrepSearchResponseNotify(content: string | any, isError?: boolean, toolUseId?: string, data?: GrepSearchResponseNotification['data']): void;
8
+ GlobSearchRequestNotify(pattern: string, basePath?: string, maxDepth?: number, includeDirectories?: boolean, toolUseId?: string): void;
9
+ GlobSearchResponseNotify(content: string | any, isError?: boolean, toolUseId?: string, data?: GlobSearchResponseNotification['data']): void;
10
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,10 @@
1
+ import { CrawlerSearchResponseNotification, CrawlerStartResponseNotification } from '../notifications/crawler';
2
+ /**
3
+ * Interface for crawler notification functions
4
+ */
5
+ export interface CrawlerNotifications {
6
+ CrawlerSearchRequestNotify(url: string, searchQuery?: string, maxDepth?: number, maxPages?: number, includeSubdomains?: boolean, followRedirects?: boolean, toolUseId?: string): void;
7
+ CrawlerSearchResponseNotify(content: string | any, isError?: boolean, toolUseId?: string, data?: CrawlerSearchResponseNotification['data']): void;
8
+ CrawlerStartRequestNotify(startUrl: string, options?: any, toolUseId?: string): void;
9
+ CrawlerStartResponseNotify(content: string | any, isError?: boolean, toolUseId?: string, data?: CrawlerStartResponseNotification['data']): void;
10
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Interface for database memory notification functions
3
+ */
4
+ export interface DbmemoryNotifications {
5
+ AddMemoryRequestNotify(key: string, value: any, toolUseId?: string): void;
6
+ AddMemoryResultNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
7
+ GetMemoryRequestNotify(key: string, toolUseId?: string): void;
8
+ GetMemoryResultNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
9
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Interface for file system notification functions
3
+ */
4
+ export interface FsNotifications {
5
+ FileCreateRequestNotify(fileName: string, source: string, filePath: string, toolUseId?: string): void;
6
+ FileCreateResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
7
+ FolderCreateRequestNotify(folderName: string, folderPath: string, toolUseId?: string): void;
8
+ FolderCreateResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
9
+ FileReadRequestNotify(filePath: string, startLine?: string, endLine?: string, toolUseId?: string): void;
10
+ FileReadResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
11
+ FileEditRequestNotify(fileName: string, filePath: string, newContent: string, toolUseId?: string): void;
12
+ FileEditResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
13
+ FileDeleteRequestNotify(fileName: string, filePath: string, toolUseId?: string): void;
14
+ FileDeleteResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
15
+ FolderDeleteRequestNotify(folderName: string, folderPath: string, toolUseId?: string): void;
16
+ FolderDeleteResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
17
+ ListDirectoryRequestNotify(dirPath: string, toolUseId?: string): void;
18
+ ListDirectoryResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
19
+ WriteToFileRequestNotify(filePath: string, text: string, toolUseId?: string): void;
20
+ WriteToFileResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
21
+ AppendToFileRequestNotify(filePath: string, text: string, toolUseId?: string): void;
22
+ AppendToFileResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
23
+ CopyFileRequestNotify(sourceFile: string, destinationFile: string, toolUseId?: string): void;
24
+ CopyFileResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
25
+ MoveFileRequestNotify(sourceFile: string, destinationFile: string, toolUseId?: string): void;
26
+ MoveFileResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
27
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Interface for git notification functions
3
+ */
4
+ export interface GitNotifications {
5
+ GitInitRequestNotify(path?: string, toolUseId?: string): void;
6
+ GitInitResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
7
+ GitPullRequestNotify(path?: string, toolUseId?: string): void;
8
+ GitPullResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
9
+ GitPushRequestNotify(path?: string, toolUseId?: string): void;
10
+ GitPushResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
11
+ GitStatusRequestNotify(path?: string, toolUseId?: string): void;
12
+ GitStatusResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
13
+ GitAddRequestNotify(path?: string, files?: string[], toolUseId?: string): void;
14
+ GitAddResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
15
+ GitCommitRequestNotify(path?: string, message?: string, toolUseId?: string): void;
16
+ GitCommitResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
17
+ GitCheckoutRequestNotify(path?: string, branchName?: string, toolUseId?: string): void;
18
+ GitCheckoutResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
19
+ GitBranchRequestNotify(path?: string, branchName?: string, toolUseId?: string): void;
20
+ GitBranchResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
21
+ GitLogsRequestNotify(path?: string, toolUseId?: string): void;
22
+ GitLogsResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
23
+ GitDiffRequestNotify(path?: string, toolUseId?: string): void;
24
+ GitDiffResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
25
+ GitRemoteAddRequestNotify(remoteName: string, remoteUrl: string, path?: string, toolUseId?: string): void;
26
+ GitRemoteAddResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
27
+ GitCloneRequestNotify(repoUrl: string, targetPath?: string, toolUseId?: string): void;
28
+ GitCloneResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
29
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,10 @@
1
+ import { SummarizePreviousConversationRequestNotification, SummarizeCurentMessageRequestNotification } from '../notifications/history';
2
+ /**
3
+ * Interface for history notification functions
4
+ */
5
+ export interface HistoryNotifications {
6
+ summarizePreviousConversation(data?: SummarizePreviousConversationRequestNotification['data'], toolUseId?: string): void;
7
+ sendSummarizePreviousResult(content: string | any, isError?: boolean, toolUseId?: string): void;
8
+ summarizeCurrentMessage(data: SummarizeCurentMessageRequestNotification['data'], toolUseId?: string): void;
9
+ sendSummarizeCurrentResult(content: string | any, isError?: boolean, toolUseId?: string): void;
10
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
File without changes
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1,10 @@
1
+ import { LLMRequestNotification, LLMGetTokenCountRequestNotification, LLMGetTokenCountResponseNotification } from '../notifications/llm';
2
+ /**
3
+ * Interface for LLM notification functions
4
+ */
5
+ export interface LlmNotifications {
6
+ sendInferenceRequest(data: LLMRequestNotification['data'], toolUseId?: string): void;
7
+ sendInferenceResponse(content: string | any, isError?: boolean, toolUseId?: string): void;
8
+ getTokenCount(data: LLMGetTokenCountRequestNotification['data'], toolUseId?: string): void;
9
+ sendTokenCountResponse(content: string | any, isError?: boolean, toolUseId?: string, data?: LLMGetTokenCountResponseNotification['data']): void;
10
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Interface for MCP notification functions
3
+ */
4
+ export interface McpNotifications {
5
+ GetEnabledMCPServersRequestNotify(toolUseId?: string): void;
6
+ GetEnabledMCPServersResultNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
7
+ ListToolsFromMCPServersRequestNotify(toolboxes: string[], toolUseId?: string): void;
8
+ ListToolsFromMCPServersResultNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
9
+ GetToolsRequestNotify(tools: {
10
+ toolbox: string;
11
+ toolName: string;
12
+ }[], toolUseId?: string): void;
13
+ GetToolsResultNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
14
+ ExecuteToolRequestNotify(toolbox: string, toolName: string, params: any, toolUseId?: string): void;
15
+ ExecuteToolResultNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
16
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Interface for search notification functions
3
+ */
4
+ export interface SearchNotifications {
5
+ SearchInitRequestNotify(engine?: string, toolUseId?: string): void;
6
+ SearchInitResultNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
7
+ SearchRequestNotify(query: string, toolUseId?: string): void;
8
+ SearchResultNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
9
+ GetFirstLinkRequestNotify(query: string, toolUseId?: string): void;
10
+ GetFirstLinkResultNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
11
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Interface for system notification functions
3
+ */
4
+ export interface SystemNotifications {
5
+ AgentInitNotify(onStopClicked?: boolean, toolUseId?: string): void;
6
+ AgentCompletionNotify(resultString: string, sessionId?: string, duration?: string, toolUseId?: string): void;
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Interface for terminal notification functions
3
+ */
4
+ export interface TerminalNotifications {
5
+ CommandExecutionRequestNotify(command: string, returnEmptyStringOnSuccess?: boolean, executeInMain?: boolean, toolUseId?: string): void;
6
+ CommandExecutionResponseNotify(content: string | any, isError?: boolean, toolUseId?: string): void;
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });