@sylix/coworker 2.0.12 → 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 (221) hide show
  1. package/LICENSE +99 -0
  2. package/dist/cli/index.d.ts.map +1 -1
  3. package/dist/cli/index.js +3 -8
  4. package/dist/cli/index.js.map +1 -1
  5. package/dist/commands/slash/mem.d.ts +3 -0
  6. package/dist/commands/slash/mem.d.ts.map +1 -0
  7. package/dist/commands/slash/mem.js +167 -0
  8. package/dist/commands/slash/mem.js.map +1 -0
  9. package/dist/commands/slash/registry.d.ts.map +1 -1
  10. package/dist/commands/slash/registry.js +2 -0
  11. package/dist/commands/slash/registry.js.map +1 -1
  12. package/dist/core/CoWorkerAgent.d.ts +4 -1
  13. package/dist/core/CoWorkerAgent.d.ts.map +1 -1
  14. package/dist/core/CoWorkerAgent.js +159 -12
  15. package/dist/core/CoWorkerAgent.js.map +1 -1
  16. package/dist/services/BrowserService.d.ts.map +1 -1
  17. package/dist/services/BrowserService.js +111 -0
  18. package/dist/services/BrowserService.js.map +1 -1
  19. package/dist/services/ChromeExtensionService.d.ts +63 -0
  20. package/dist/services/ChromeExtensionService.d.ts.map +1 -0
  21. package/dist/services/ChromeExtensionService.js +237 -0
  22. package/dist/services/ChromeExtensionService.js.map +1 -0
  23. package/dist/services/browser/browser-manager.d.ts +2 -0
  24. package/dist/services/browser/browser-manager.d.ts.map +1 -1
  25. package/dist/services/browser/browser-manager.js +13 -4
  26. package/dist/services/browser/browser-manager.js.map +1 -1
  27. package/dist/services/browser/protocol.d.ts +4 -4
  28. package/dist/services/browser/sandbox/quickjs-sandbox.d.ts.map +1 -1
  29. package/dist/services/browser/sandbox/quickjs-sandbox.js +71 -1
  30. package/dist/services/browser/sandbox/quickjs-sandbox.js.map +1 -1
  31. package/dist/services/compact/CompactService.d.ts +22 -0
  32. package/dist/services/compact/CompactService.d.ts.map +1 -0
  33. package/dist/services/compact/CompactService.js +156 -0
  34. package/dist/services/compact/CompactService.js.map +1 -0
  35. package/dist/session/db.d.ts +29 -0
  36. package/dist/session/db.d.ts.map +1 -1
  37. package/dist/session/db.js +74 -0
  38. package/dist/session/db.js.map +1 -1
  39. package/dist/tasks/LocalBashTask.d.ts +18 -0
  40. package/dist/tasks/LocalBashTask.d.ts.map +1 -0
  41. package/dist/tasks/LocalBashTask.js +83 -0
  42. package/dist/tasks/LocalBashTask.js.map +1 -0
  43. package/dist/tasks/Task.d.ts +34 -0
  44. package/dist/tasks/Task.d.ts.map +1 -0
  45. package/dist/tasks/Task.js +98 -0
  46. package/dist/tasks/Task.js.map +1 -0
  47. package/dist/tasks/diskOutput.d.ts +13 -0
  48. package/dist/tasks/diskOutput.d.ts.map +1 -0
  49. package/dist/tasks/diskOutput.js +168 -0
  50. package/dist/tasks/diskOutput.js.map +1 -0
  51. package/dist/tasks/index.d.ts +7 -0
  52. package/dist/tasks/index.d.ts.map +1 -0
  53. package/dist/tasks/index.js +19 -0
  54. package/dist/tasks/index.js.map +1 -0
  55. package/dist/tools/AgentTool.d.ts +41 -0
  56. package/dist/tools/AgentTool.d.ts.map +1 -0
  57. package/dist/tools/AgentTool.js +32 -0
  58. package/dist/tools/AgentTool.js.map +1 -0
  59. package/dist/tools/AskUserQuestionTool.d.ts +71 -0
  60. package/dist/tools/AskUserQuestionTool.d.ts.map +1 -0
  61. package/dist/tools/AskUserQuestionTool.js +33 -0
  62. package/dist/tools/AskUserQuestionTool.js.map +1 -0
  63. package/dist/tools/BashTool.d.ts +43 -0
  64. package/dist/tools/BashTool.d.ts.map +1 -0
  65. package/dist/tools/BashTool.js +97 -0
  66. package/dist/tools/BashTool.js.map +1 -0
  67. package/dist/tools/BriefTool.d.ts +23 -0
  68. package/dist/tools/BriefTool.d.ts.map +1 -0
  69. package/dist/tools/BriefTool.js +61 -0
  70. package/dist/tools/BriefTool.js.map +1 -0
  71. package/dist/tools/ConfigTool.d.ts +35 -0
  72. package/dist/tools/ConfigTool.d.ts.map +1 -0
  73. package/dist/tools/ConfigTool.js +81 -0
  74. package/dist/tools/ConfigTool.js.map +1 -0
  75. package/dist/tools/EnterPlanModeTool.d.ts +23 -0
  76. package/dist/tools/EnterPlanModeTool.d.ts.map +1 -0
  77. package/dist/tools/EnterPlanModeTool.js +21 -0
  78. package/dist/tools/EnterPlanModeTool.js.map +1 -0
  79. package/dist/tools/ExitPlanModeTool.d.ts +23 -0
  80. package/dist/tools/ExitPlanModeTool.d.ts.map +1 -0
  81. package/dist/tools/ExitPlanModeTool.js +21 -0
  82. package/dist/tools/ExitPlanModeTool.js.map +1 -0
  83. package/dist/tools/FileEditTool.d.ts +41 -0
  84. package/dist/tools/FileEditTool.d.ts.map +1 -0
  85. package/dist/tools/FileEditTool.js +81 -0
  86. package/dist/tools/FileEditTool.js.map +1 -0
  87. package/dist/tools/FileReadTool.d.ts +35 -0
  88. package/dist/tools/FileReadTool.d.ts.map +1 -0
  89. package/dist/tools/FileReadTool.js +74 -0
  90. package/dist/tools/FileReadTool.js.map +1 -0
  91. package/dist/tools/FileWriteTool.d.ts +29 -0
  92. package/dist/tools/FileWriteTool.d.ts.map +1 -0
  93. package/dist/tools/FileWriteTool.js +67 -0
  94. package/dist/tools/FileWriteTool.js.map +1 -0
  95. package/dist/tools/GlobTool.d.ts +30 -0
  96. package/dist/tools/GlobTool.d.ts.map +1 -0
  97. package/dist/tools/GlobTool.js +98 -0
  98. package/dist/tools/GlobTool.js.map +1 -0
  99. package/dist/tools/GrepTool.d.ts +36 -0
  100. package/dist/tools/GrepTool.d.ts.map +1 -0
  101. package/dist/tools/GrepTool.js +112 -0
  102. package/dist/tools/GrepTool.js.map +1 -0
  103. package/dist/tools/LSPToolWrapper.d.ts +42 -0
  104. package/dist/tools/LSPToolWrapper.d.ts.map +1 -0
  105. package/dist/tools/LSPToolWrapper.js +49 -0
  106. package/dist/tools/LSPToolWrapper.js.map +1 -0
  107. package/dist/tools/ListMcpResourcesTool.d.ts +11 -0
  108. package/dist/tools/ListMcpResourcesTool.d.ts.map +1 -0
  109. package/dist/tools/ListMcpResourcesTool.js +19 -0
  110. package/dist/tools/ListMcpResourcesTool.js.map +1 -0
  111. package/dist/tools/NotebookEditTool.d.ts +41 -0
  112. package/dist/tools/NotebookEditTool.d.ts.map +1 -0
  113. package/dist/tools/NotebookEditTool.js +30 -0
  114. package/dist/tools/NotebookEditTool.js.map +1 -0
  115. package/dist/tools/SchemaGenerator.d.ts +3 -0
  116. package/dist/tools/SchemaGenerator.d.ts.map +1 -0
  117. package/dist/tools/SchemaGenerator.js +69 -0
  118. package/dist/tools/SchemaGenerator.js.map +1 -0
  119. package/dist/tools/SkillTool.d.ts +29 -0
  120. package/dist/tools/SkillTool.d.ts.map +1 -0
  121. package/dist/tools/SkillTool.js +28 -0
  122. package/dist/tools/SkillTool.js.map +1 -0
  123. package/dist/tools/TaskCreateTool.d.ts +41 -0
  124. package/dist/tools/TaskCreateTool.d.ts.map +1 -0
  125. package/dist/tools/TaskCreateTool.js +67 -0
  126. package/dist/tools/TaskCreateTool.js.map +1 -0
  127. package/dist/tools/TaskGetTool.d.ts +23 -0
  128. package/dist/tools/TaskGetTool.d.ts.map +1 -0
  129. package/dist/tools/TaskGetTool.js +66 -0
  130. package/dist/tools/TaskGetTool.js.map +1 -0
  131. package/dist/tools/TaskListTool.d.ts +11 -0
  132. package/dist/tools/TaskListTool.d.ts.map +1 -0
  133. package/dist/tools/TaskListTool.js +64 -0
  134. package/dist/tools/TaskListTool.js.map +1 -0
  135. package/dist/tools/TaskOutputTool.d.ts +29 -0
  136. package/dist/tools/TaskOutputTool.d.ts.map +1 -0
  137. package/dist/tools/TaskOutputTool.js +66 -0
  138. package/dist/tools/TaskOutputTool.js.map +1 -0
  139. package/dist/tools/TaskStopTool.d.ts +23 -0
  140. package/dist/tools/TaskStopTool.d.ts.map +1 -0
  141. package/dist/tools/TaskStopTool.js +66 -0
  142. package/dist/tools/TaskStopTool.js.map +1 -0
  143. package/dist/tools/TaskUpdateTool.d.ts +79 -0
  144. package/dist/tools/TaskUpdateTool.d.ts.map +1 -0
  145. package/dist/tools/TaskUpdateTool.js +73 -0
  146. package/dist/tools/TaskUpdateTool.js.map +1 -0
  147. package/dist/tools/TodoWriteTool.d.ts +63 -0
  148. package/dist/tools/TodoWriteTool.d.ts.map +1 -0
  149. package/dist/tools/TodoWriteTool.js +79 -0
  150. package/dist/tools/TodoWriteTool.js.map +1 -0
  151. package/dist/tools/Tool.d.ts +32 -0
  152. package/dist/tools/Tool.d.ts.map +1 -0
  153. package/dist/tools/Tool.js +20 -0
  154. package/dist/tools/Tool.js.map +1 -0
  155. package/dist/tools/ToolContext.d.ts +12 -0
  156. package/dist/tools/ToolContext.d.ts.map +1 -0
  157. package/dist/tools/ToolContext.js +3 -0
  158. package/dist/tools/ToolContext.js.map +1 -0
  159. package/dist/tools/ToolSearchTool.d.ts +23 -0
  160. package/dist/tools/ToolSearchTool.d.ts.map +1 -0
  161. package/dist/tools/ToolSearchTool.js +62 -0
  162. package/dist/tools/ToolSearchTool.js.map +1 -0
  163. package/dist/tools/WebFetchTool.d.ts +29 -0
  164. package/dist/tools/WebFetchTool.d.ts.map +1 -0
  165. package/dist/tools/WebFetchTool.js +42 -0
  166. package/dist/tools/WebFetchTool.js.map +1 -0
  167. package/dist/tools/WebSearchTool.d.ts +23 -0
  168. package/dist/tools/WebSearchTool.d.ts.map +1 -0
  169. package/dist/tools/WebSearchTool.js +38 -0
  170. package/dist/tools/WebSearchTool.js.map +1 -0
  171. package/dist/tools/bash/readOnly.d.ts +7 -0
  172. package/dist/tools/bash/readOnly.d.ts.map +1 -0
  173. package/dist/tools/bash/readOnly.js +41 -0
  174. package/dist/tools/bash/readOnly.js.map +1 -0
  175. package/dist/tools/bash/sandbox.d.ts +3 -0
  176. package/dist/tools/bash/sandbox.d.ts.map +1 -0
  177. package/dist/tools/bash/sandbox.js +27 -0
  178. package/dist/tools/bash/sandbox.js.map +1 -0
  179. package/dist/tools/bash/semantic.d.ts +5 -0
  180. package/dist/tools/bash/semantic.d.ts.map +1 -0
  181. package/dist/tools/bash/semantic.js +106 -0
  182. package/dist/tools/bash/semantic.js.map +1 -0
  183. package/dist/tools/index.d.ts +26 -0
  184. package/dist/tools/index.d.ts.map +1 -0
  185. package/dist/tools/index.js +74 -0
  186. package/dist/tools/index.js.map +1 -0
  187. package/dist/utils/claudeInChrome/chromeNativeHost.d.ts +3 -0
  188. package/dist/utils/claudeInChrome/chromeNativeHost.d.ts.map +1 -0
  189. package/dist/utils/claudeInChrome/chromeNativeHost.js +376 -0
  190. package/dist/utils/claudeInChrome/chromeNativeHost.js.map +1 -0
  191. package/dist/utils/claudeInChrome/common.d.ts +32 -0
  192. package/dist/utils/claudeInChrome/common.d.ts.map +1 -0
  193. package/dist/utils/claudeInChrome/common.js +301 -0
  194. package/dist/utils/claudeInChrome/common.js.map +1 -0
  195. package/dist/utils/claudeInChrome/mcpServer.d.ts +2 -0
  196. package/dist/utils/claudeInChrome/mcpServer.d.ts.map +1 -0
  197. package/dist/utils/claudeInChrome/mcpServer.js +143 -0
  198. package/dist/utils/claudeInChrome/mcpServer.js.map +1 -0
  199. package/dist/utils/claudeInChrome/setup.d.ts +22 -0
  200. package/dist/utils/claudeInChrome/setup.d.ts.map +1 -0
  201. package/dist/utils/claudeInChrome/setup.js +202 -0
  202. package/dist/utils/claudeInChrome/setup.js.map +1 -0
  203. package/dist/utils/contextManager.d.ts +1 -1
  204. package/dist/utils/contextManager.d.ts.map +1 -1
  205. package/dist/utils/contextManager.js +1 -1
  206. package/dist/utils/contextManager.js.map +1 -1
  207. package/dist/utils/features.d.ts +3 -0
  208. package/dist/utils/features.d.ts.map +1 -0
  209. package/dist/utils/features.js +31 -0
  210. package/dist/utils/features.js.map +1 -0
  211. package/dist/utils/inputbar.d.ts +2 -2
  212. package/dist/utils/inputbar.d.ts.map +1 -1
  213. package/dist/utils/inputbar.js +7 -6
  214. package/dist/utils/inputbar.js.map +1 -1
  215. package/dist/utils/output.js +1 -1
  216. package/dist/utils/output.js.map +1 -1
  217. package/dist/utils/permissions.d.ts +18 -0
  218. package/dist/utils/permissions.d.ts.map +1 -0
  219. package/dist/utils/permissions.js +25 -0
  220. package/dist/utils/permissions.js.map +1 -0
  221. package/package.json +3 -2
@@ -0,0 +1,23 @@
1
+ import { z } from 'zod';
2
+ import { Tool, type ToolContext } from './Tool';
3
+ export declare const TaskStopInputSchema: z.ZodObject<{
4
+ task_id: z.ZodString;
5
+ }, "strip", z.ZodTypeAny, {
6
+ task_id?: string;
7
+ }, {
8
+ task_id?: string;
9
+ }>;
10
+ export type TaskStopInput = z.infer<typeof TaskStopInputSchema>;
11
+ export declare class TaskStopTool extends Tool<TaskStopInput, string> {
12
+ name: string;
13
+ description: string;
14
+ inputSchema: z.ZodObject<{
15
+ task_id: z.ZodString;
16
+ }, "strip", z.ZodTypeAny, {
17
+ task_id?: string;
18
+ }, {
19
+ task_id?: string;
20
+ }>;
21
+ execute(ctx: ToolContext, input: TaskStopInput): Promise<string>;
22
+ }
23
+ //# sourceMappingURL=TaskStopTool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskStopTool.d.ts","sourceRoot":"","sources":["../../src/tools/TaskStopTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,IAAI,EAAE,KAAK,WAAW,EAAE,MAAM,QAAQ,CAAC;AAEhD,eAAO,MAAM,mBAAmB;;;;;;EAE9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,qBAAa,YAAa,SAAQ,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC;IAC3D,IAAI,SAAc;IAClB,WAAW,SAA2B;IACtC,WAAW;;;;;;OAAuB;IAE5B,OAAO,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;CAgBvE"}
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.TaskStopTool = exports.TaskStopInputSchema = void 0;
37
+ const zod_1 = require("zod");
38
+ const Tool_1 = require("./Tool");
39
+ exports.TaskStopInputSchema = zod_1.z.object({
40
+ task_id: zod_1.z.string().describe('Task ID to cancel/stop'),
41
+ });
42
+ class TaskStopTool extends Tool_1.Tool {
43
+ constructor() {
44
+ super(...arguments);
45
+ this.name = 'TaskStop';
46
+ this.description = 'Cancel a running task';
47
+ this.inputSchema = exports.TaskStopInputSchema;
48
+ }
49
+ async execute(ctx, input) {
50
+ try {
51
+ const { TodoManager } = await Promise.resolve().then(() => __importStar(require('../todos/TodoManager')));
52
+ const taskListId = TodoManager.getTaskListIdFromEnv();
53
+ const taskManager = new TodoManager(taskListId);
54
+ const success = await taskManager.updateTask(input.task_id, { status: 'cancelled' });
55
+ if (!success) {
56
+ return JSON.stringify({ error: 'Task not found' });
57
+ }
58
+ return JSON.stringify({ task_id: input.task_id, status: 'stopped' });
59
+ }
60
+ catch (error) {
61
+ return `[Error] ${error.message}`;
62
+ }
63
+ }
64
+ }
65
+ exports.TaskStopTool = TaskStopTool;
66
+ //# sourceMappingURL=TaskStopTool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskStopTool.js","sourceRoot":"","sources":["../../src/tools/TaskStopTool.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAAwB;AACxB,iCAAgD;AAEnC,QAAA,mBAAmB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC1C,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;CACvD,CAAC,CAAC;AAIH,MAAa,YAAa,SAAQ,WAA2B;IAA7D;;QACE,SAAI,GAAG,UAAU,CAAC;QAClB,gBAAW,GAAG,uBAAuB,CAAC;QACtC,gBAAW,GAAG,2BAAmB,CAAC;IAkBpC,CAAC;IAhBC,KAAK,CAAC,OAAO,CAAC,GAAgB,EAAE,KAAoB;QAClD,IAAI,CAAC;YACH,MAAM,EAAE,WAAW,EAAE,GAAG,wDAAa,sBAAsB,GAAC,CAAC;YAC7D,MAAM,UAAU,GAAG,WAAW,CAAC,oBAAoB,EAAE,CAAC;YACtD,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,UAAU,CAAC,CAAC;YAEhD,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,WAAkB,EAAE,CAAC,CAAC;YAC5F,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC;YACrD,CAAC;YAED,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;QACvE,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,WAAW,KAAK,CAAC,OAAO,EAAE,CAAC;QACpC,CAAC;IACH,CAAC;CACF;AArBD,oCAqBC"}
@@ -0,0 +1,79 @@
1
+ import { z } from 'zod';
2
+ import { Tool, type ToolContext } from './Tool';
3
+ export declare const TaskUpdateInputSchema: z.ZodObject<{
4
+ task_id: z.ZodString;
5
+ updates: z.ZodObject<{
6
+ subject: z.ZodOptional<z.ZodString>;
7
+ description: z.ZodOptional<z.ZodString>;
8
+ status: z.ZodOptional<z.ZodEnum<["pending", "in_progress", "completed"]>>;
9
+ blockedBy: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
10
+ }, "strip", z.ZodTypeAny, {
11
+ description?: string;
12
+ subject?: string;
13
+ status?: "pending" | "in_progress" | "completed";
14
+ blockedBy?: string[];
15
+ }, {
16
+ description?: string;
17
+ subject?: string;
18
+ status?: "pending" | "in_progress" | "completed";
19
+ blockedBy?: string[];
20
+ }>;
21
+ }, "strip", z.ZodTypeAny, {
22
+ task_id?: string;
23
+ updates?: {
24
+ description?: string;
25
+ subject?: string;
26
+ status?: "pending" | "in_progress" | "completed";
27
+ blockedBy?: string[];
28
+ };
29
+ }, {
30
+ task_id?: string;
31
+ updates?: {
32
+ description?: string;
33
+ subject?: string;
34
+ status?: "pending" | "in_progress" | "completed";
35
+ blockedBy?: string[];
36
+ };
37
+ }>;
38
+ export type TaskUpdateInput = z.infer<typeof TaskUpdateInputSchema>;
39
+ export declare class TaskUpdateTool extends Tool<TaskUpdateInput, string> {
40
+ name: string;
41
+ description: string;
42
+ inputSchema: z.ZodObject<{
43
+ task_id: z.ZodString;
44
+ updates: z.ZodObject<{
45
+ subject: z.ZodOptional<z.ZodString>;
46
+ description: z.ZodOptional<z.ZodString>;
47
+ status: z.ZodOptional<z.ZodEnum<["pending", "in_progress", "completed"]>>;
48
+ blockedBy: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
49
+ }, "strip", z.ZodTypeAny, {
50
+ description?: string;
51
+ subject?: string;
52
+ status?: "pending" | "in_progress" | "completed";
53
+ blockedBy?: string[];
54
+ }, {
55
+ description?: string;
56
+ subject?: string;
57
+ status?: "pending" | "in_progress" | "completed";
58
+ blockedBy?: string[];
59
+ }>;
60
+ }, "strip", z.ZodTypeAny, {
61
+ task_id?: string;
62
+ updates?: {
63
+ description?: string;
64
+ subject?: string;
65
+ status?: "pending" | "in_progress" | "completed";
66
+ blockedBy?: string[];
67
+ };
68
+ }, {
69
+ task_id?: string;
70
+ updates?: {
71
+ description?: string;
72
+ subject?: string;
73
+ status?: "pending" | "in_progress" | "completed";
74
+ blockedBy?: string[];
75
+ };
76
+ }>;
77
+ execute(ctx: ToolContext, input: TaskUpdateInput): Promise<string>;
78
+ }
79
+ //# sourceMappingURL=TaskUpdateTool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskUpdateTool.d.ts","sourceRoot":"","sources":["../../src/tools/TaskUpdateTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,IAAI,EAAE,KAAK,WAAW,EAAE,MAAM,QAAQ,CAAC;AAEhD,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,qBAAa,cAAe,SAAQ,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC;IAC/D,IAAI,SAAgB;IACpB,WAAW,SAA6B;IACxC,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAyB;IAE9B,OAAO,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC;CAiBzE"}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.TaskUpdateTool = exports.TaskUpdateInputSchema = void 0;
37
+ const zod_1 = require("zod");
38
+ const Tool_1 = require("./Tool");
39
+ exports.TaskUpdateInputSchema = zod_1.z.object({
40
+ task_id: zod_1.z.string().describe('Task ID to update'),
41
+ updates: zod_1.z.object({
42
+ subject: zod_1.z.string().optional().describe('New task subject'),
43
+ description: zod_1.z.string().optional().describe('New task description'),
44
+ status: zod_1.z.enum(['pending', 'in_progress', 'completed']).optional().describe('New status'),
45
+ blockedBy: zod_1.z.array(zod_1.z.string()).optional().describe('Task IDs this task is blocked by'),
46
+ }).describe('Updates to apply to the task'),
47
+ });
48
+ class TaskUpdateTool extends Tool_1.Tool {
49
+ constructor() {
50
+ super(...arguments);
51
+ this.name = 'TaskUpdate';
52
+ this.description = 'Update an existing task';
53
+ this.inputSchema = exports.TaskUpdateInputSchema;
54
+ }
55
+ async execute(ctx, input) {
56
+ try {
57
+ const { TodoManager } = await Promise.resolve().then(() => __importStar(require('../todos/TodoManager')));
58
+ const taskListId = TodoManager.getTaskListIdFromEnv();
59
+ const taskManager = new TodoManager(taskListId);
60
+ const { task_id, updates } = input;
61
+ const success = await taskManager.updateTask(task_id, updates);
62
+ if (!success) {
63
+ return JSON.stringify({ error: 'Task not found' });
64
+ }
65
+ return JSON.stringify({ task_id, status: 'updated' });
66
+ }
67
+ catch (error) {
68
+ return `[Error] ${error.message}`;
69
+ }
70
+ }
71
+ }
72
+ exports.TaskUpdateTool = TaskUpdateTool;
73
+ //# sourceMappingURL=TaskUpdateTool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskUpdateTool.js","sourceRoot":"","sources":["../../src/tools/TaskUpdateTool.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAAwB;AACxB,iCAAgD;AAEnC,QAAA,qBAAqB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC5C,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;IACjD,OAAO,EAAE,OAAC,CAAC,MAAM,CAAC;QAChB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QAC3D,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;QACnE,MAAM,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;QACzF,SAAS,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;KACvF,CAAC,CAAC,QAAQ,CAAC,8BAA8B,CAAC;CAC5C,CAAC,CAAC;AAIH,MAAa,cAAe,SAAQ,WAA6B;IAAjE;;QACE,SAAI,GAAG,YAAY,CAAC;QACpB,gBAAW,GAAG,yBAAyB,CAAC;QACxC,gBAAW,GAAG,6BAAqB,CAAC;IAmBtC,CAAC;IAjBC,KAAK,CAAC,OAAO,CAAC,GAAgB,EAAE,KAAsB;QACpD,IAAI,CAAC;YACH,MAAM,EAAE,WAAW,EAAE,GAAG,wDAAa,sBAAsB,GAAC,CAAC;YAC7D,MAAM,UAAU,GAAG,WAAW,CAAC,oBAAoB,EAAE,CAAC;YACtD,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,UAAU,CAAC,CAAC;YAEhD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;YACnC,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC/D,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC;YACrD,CAAC;YAED,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;QACxD,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,WAAW,KAAK,CAAC,OAAO,EAAE,CAAC;QACpC,CAAC;IACH,CAAC;CACF;AAtBD,wCAsBC"}
@@ -0,0 +1,63 @@
1
+ import { z } from 'zod';
2
+ import { Tool, type ToolContext } from './Tool';
3
+ export declare const TodoWriteInputSchema: z.ZodObject<{
4
+ todos: z.ZodArray<z.ZodObject<{
5
+ content: z.ZodString;
6
+ status: z.ZodOptional<z.ZodEnum<["pending", "in_progress", "completed"]>>;
7
+ priority: z.ZodOptional<z.ZodEnum<["high", "medium", "low"]>>;
8
+ }, "strip", z.ZodTypeAny, {
9
+ status?: "pending" | "in_progress" | "completed";
10
+ content?: string;
11
+ priority?: "high" | "medium" | "low";
12
+ }, {
13
+ status?: "pending" | "in_progress" | "completed";
14
+ content?: string;
15
+ priority?: "high" | "medium" | "low";
16
+ }>, "many">;
17
+ }, "strip", z.ZodTypeAny, {
18
+ todos?: {
19
+ status?: "pending" | "in_progress" | "completed";
20
+ content?: string;
21
+ priority?: "high" | "medium" | "low";
22
+ }[];
23
+ }, {
24
+ todos?: {
25
+ status?: "pending" | "in_progress" | "completed";
26
+ content?: string;
27
+ priority?: "high" | "medium" | "low";
28
+ }[];
29
+ }>;
30
+ export type TodoWriteInput = z.infer<typeof TodoWriteInputSchema>;
31
+ export declare class TodoWriteTool extends Tool<TodoWriteInput, string> {
32
+ name: string;
33
+ description: string;
34
+ inputSchema: z.ZodObject<{
35
+ todos: z.ZodArray<z.ZodObject<{
36
+ content: z.ZodString;
37
+ status: z.ZodOptional<z.ZodEnum<["pending", "in_progress", "completed"]>>;
38
+ priority: z.ZodOptional<z.ZodEnum<["high", "medium", "low"]>>;
39
+ }, "strip", z.ZodTypeAny, {
40
+ status?: "pending" | "in_progress" | "completed";
41
+ content?: string;
42
+ priority?: "high" | "medium" | "low";
43
+ }, {
44
+ status?: "pending" | "in_progress" | "completed";
45
+ content?: string;
46
+ priority?: "high" | "medium" | "low";
47
+ }>, "many">;
48
+ }, "strip", z.ZodTypeAny, {
49
+ todos?: {
50
+ status?: "pending" | "in_progress" | "completed";
51
+ content?: string;
52
+ priority?: "high" | "medium" | "low";
53
+ }[];
54
+ }, {
55
+ todos?: {
56
+ status?: "pending" | "in_progress" | "completed";
57
+ content?: string;
58
+ priority?: "high" | "medium" | "low";
59
+ }[];
60
+ }>;
61
+ execute(ctx: ToolContext, input: TodoWriteInput): Promise<string>;
62
+ }
63
+ //# sourceMappingURL=TodoWriteTool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TodoWriteTool.d.ts","sourceRoot":"","sources":["../../src/tools/TodoWriteTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,IAAI,EAAE,KAAK,WAAW,EAAE,MAAM,QAAQ,CAAC;AAEhD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;EAM/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,qBAAa,aAAc,SAAQ,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC;IAC7D,IAAI,SAAe;IACnB,WAAW,SAAmD;IAC9D,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;OAAwB;IAE7B,OAAO,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;CA0BxE"}
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.TodoWriteTool = exports.TodoWriteInputSchema = void 0;
37
+ const zod_1 = require("zod");
38
+ const Tool_1 = require("./Tool");
39
+ exports.TodoWriteInputSchema = zod_1.z.object({
40
+ todos: zod_1.z.array(zod_1.z.object({
41
+ content: zod_1.z.string().describe('Task description'),
42
+ status: zod_1.z.enum(['pending', 'in_progress', 'completed']).optional().describe('Task status'),
43
+ priority: zod_1.z.enum(['high', 'medium', 'low']).optional().describe('Task priority'),
44
+ })).describe('List of tasks to write'),
45
+ });
46
+ class TodoWriteTool extends Tool_1.Tool {
47
+ constructor() {
48
+ super(...arguments);
49
+ this.name = 'TodoWrite';
50
+ this.description = 'Write and update task list (TodoWrite format)';
51
+ this.inputSchema = exports.TodoWriteInputSchema;
52
+ }
53
+ async execute(ctx, input) {
54
+ try {
55
+ const { TodoManager } = await Promise.resolve().then(() => __importStar(require('../todos/TodoManager')));
56
+ const taskListId = TodoManager.getTaskListIdFromEnv();
57
+ const taskManager = new TodoManager(taskListId);
58
+ const results = [];
59
+ for (const todo of input.todos) {
60
+ const status = todo.status || 'pending';
61
+ if (todo.content.startsWith('task_')) {
62
+ const taskId = todo.content.replace('task_', '');
63
+ await taskManager.updateTask(taskId, { status });
64
+ results.push(`Updated ${todo.content}`);
65
+ }
66
+ else {
67
+ const id = await taskManager.createTask(todo.content, '', status);
68
+ results.push(`Created task_${id.substring(0, 8)}`);
69
+ }
70
+ }
71
+ return results.join('\n');
72
+ }
73
+ catch (error) {
74
+ return `[Error] ${error.message}`;
75
+ }
76
+ }
77
+ }
78
+ exports.TodoWriteTool = TodoWriteTool;
79
+ //# sourceMappingURL=TodoWriteTool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TodoWriteTool.js","sourceRoot":"","sources":["../../src/tools/TodoWriteTool.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAAwB;AACxB,iCAAgD;AAEnC,QAAA,oBAAoB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC3C,KAAK,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,CAAC;QACtB,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QAChD,MAAM,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC1F,QAAQ,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;KACjF,CAAC,CAAC,CAAC,QAAQ,CAAC,wBAAwB,CAAC;CACvC,CAAC,CAAC;AAIH,MAAa,aAAc,SAAQ,WAA4B;IAA/D;;QACE,SAAI,GAAG,WAAW,CAAC;QACnB,gBAAW,GAAG,+CAA+C,CAAC;QAC9D,gBAAW,GAAG,4BAAoB,CAAC;IA4BrC,CAAC;IA1BC,KAAK,CAAC,OAAO,CAAC,GAAgB,EAAE,KAAqB;QACnD,IAAI,CAAC;YACH,MAAM,EAAE,WAAW,EAAE,GAAG,wDAAa,sBAAsB,GAAC,CAAC;YAC7D,MAAM,UAAU,GAAG,WAAW,CAAC,oBAAoB,EAAE,CAAC;YACtD,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,UAAU,CAAC,CAAC;YAEhD,MAAM,OAAO,GAAa,EAAE,CAAC;YAE7B,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC;gBAExC,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;oBACrC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;oBACjD,MAAM,WAAW,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;oBACjD,OAAO,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC1C,CAAC;qBAAM,CAAC;oBACN,MAAM,EAAE,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;oBAClE,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;gBACrD,CAAC;YACH,CAAC;YAED,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,WAAW,KAAK,CAAC,OAAO,EAAE,CAAC;QACpC,CAAC;IACH,CAAC;CACF;AA/BD,sCA+BC"}
@@ -0,0 +1,32 @@
1
+ import { z } from 'zod';
2
+ import type { SessionManager } from '../session/SessionManager';
3
+ import type { SettingsManager } from '../config/SettingsManager';
4
+ import type { PermissionInterceptor } from '../permissions/PermissionInterceptor';
5
+ export interface ToolContext {
6
+ cwd: string;
7
+ session: SessionManager;
8
+ settings: SettingsManager;
9
+ permissions: PermissionInterceptor;
10
+ toolUseId: string;
11
+ }
12
+ export interface ToolResult {
13
+ content: string;
14
+ tool_use_id?: string;
15
+ }
16
+ export declare abstract class Tool<TInput = any, TOutput = string> {
17
+ abstract name: string;
18
+ abstract description: string;
19
+ abstract inputSchema: z.ZodType<TInput>;
20
+ abstract execute(ctx: ToolContext, input: TInput): Promise<TOutput>;
21
+ isEnabled(): boolean;
22
+ protected createResult(content: string, toolUseId?: string): ToolResult;
23
+ }
24
+ export type ToolDef<TInput = any, TOutput = string> = {
25
+ name: string;
26
+ description: string;
27
+ input_schema: z.ZodType<TInput>;
28
+ execute: (ctx: ToolContext, input: TInput) => Promise<TOutput>;
29
+ isEnabled: () => boolean;
30
+ };
31
+ export declare function buildTool<TInput, TOutput>(toolDef: ToolDef<TInput, TOutput>): ToolDef<TInput, TOutput>;
32
+ //# sourceMappingURL=Tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tool.d.ts","sourceRoot":"","sources":["../../src/tools/Tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAElF,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,cAAc,CAAC;IACxB,QAAQ,EAAE,eAAe,CAAC;IAC1B,WAAW,EAAE,qBAAqB,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,8BAAsB,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE,OAAO,GAAG,MAAM;IACvD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAExC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAEnE,SAAS,IAAI,OAAO;IAIpB,SAAS,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,UAAU;CAMxE;AAED,MAAM,MAAM,OAAO,CAAC,MAAM,GAAG,GAAG,EAAE,OAAO,GAAG,MAAM,IAAI;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,OAAO,EAAE,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/D,SAAS,EAAE,MAAM,OAAO,CAAC;CAC1B,CAAC;AAEF,wBAAgB,SAAS,CAAC,MAAM,EAAE,OAAO,EACvC,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAE1B"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Tool = void 0;
4
+ exports.buildTool = buildTool;
5
+ class Tool {
6
+ isEnabled() {
7
+ return true;
8
+ }
9
+ createResult(content, toolUseId) {
10
+ return {
11
+ content,
12
+ tool_use_id: toolUseId,
13
+ };
14
+ }
15
+ }
16
+ exports.Tool = Tool;
17
+ function buildTool(toolDef) {
18
+ return toolDef;
19
+ }
20
+ //# sourceMappingURL=Tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tool.js","sourceRoot":"","sources":["../../src/tools/Tool.ts"],"names":[],"mappings":";;;AA6CA,8BAIC;AA/BD,MAAsB,IAAI;IAOxB,SAAS;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IAES,YAAY,CAAC,OAAe,EAAE,SAAkB;QACxD,OAAO;YACL,OAAO;YACP,WAAW,EAAE,SAAS;SACvB,CAAC;IACJ,CAAC;CACF;AAjBD,oBAiBC;AAUD,SAAgB,SAAS,CACvB,OAAiC;IAEjC,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,12 @@
1
+ export interface ToolContext {
2
+ cwd: string;
3
+ session: any;
4
+ settings: any;
5
+ permissions: any;
6
+ toolUseId: string;
7
+ }
8
+ export interface ToolResult {
9
+ content: string;
10
+ tool_use_id?: string;
11
+ }
12
+ //# sourceMappingURL=ToolContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolContext.d.ts","sourceRoot":"","sources":["../../src/tools/ToolContext.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,GAAG,CAAC;IACb,QAAQ,EAAE,GAAG,CAAC;IACd,WAAW,EAAE,GAAG,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=ToolContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolContext.js","sourceRoot":"","sources":["../../src/tools/ToolContext.ts"],"names":[],"mappings":""}
@@ -0,0 +1,23 @@
1
+ import { z } from 'zod';
2
+ import { Tool, type ToolContext } from './Tool';
3
+ export declare const ToolSearchInputSchema: z.ZodObject<{
4
+ query: z.ZodString;
5
+ }, "strip", z.ZodTypeAny, {
6
+ query?: string;
7
+ }, {
8
+ query?: string;
9
+ }>;
10
+ export type ToolSearchInput = z.infer<typeof ToolSearchInputSchema>;
11
+ export declare class ToolSearchTool extends Tool<ToolSearchInput, string> {
12
+ name: string;
13
+ description: string;
14
+ inputSchema: z.ZodObject<{
15
+ query: z.ZodString;
16
+ }, "strip", z.ZodTypeAny, {
17
+ query?: string;
18
+ }, {
19
+ query?: string;
20
+ }>;
21
+ execute(ctx: ToolContext, input: ToolSearchInput): Promise<string>;
22
+ }
23
+ //# sourceMappingURL=ToolSearchTool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolSearchTool.d.ts","sourceRoot":"","sources":["../../src/tools/ToolSearchTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,IAAI,EAAE,KAAK,WAAW,EAAE,MAAM,QAAQ,CAAC;AAEhD,eAAO,MAAM,qBAAqB;;;;;;EAEhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,qBAAa,cAAe,SAAQ,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC;IAC/D,IAAI,SAAgB;IACpB,WAAW,SAA2C;IACtD,WAAW;;;;;;OAAyB;IAE9B,OAAO,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC;CAgBzE"}
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.ToolSearchTool = exports.ToolSearchInputSchema = void 0;
37
+ const zod_1 = require("zod");
38
+ const Tool_1 = require("./Tool");
39
+ exports.ToolSearchInputSchema = zod_1.z.object({
40
+ query: zod_1.z.string().describe('Search query for tools'),
41
+ });
42
+ class ToolSearchTool extends Tool_1.Tool {
43
+ constructor() {
44
+ super(...arguments);
45
+ this.name = 'ToolSearch';
46
+ this.description = 'Search for available tools by keyword';
47
+ this.inputSchema = exports.ToolSearchInputSchema;
48
+ }
49
+ async execute(ctx, input) {
50
+ const { getAllBaseTools } = await Promise.resolve().then(() => __importStar(require('./index')));
51
+ const tools = getAllBaseTools();
52
+ const query = input.query.toLowerCase();
53
+ const matches = tools.filter(t => t.name.toLowerCase().includes(query) ||
54
+ t.description.toLowerCase().includes(query));
55
+ if (matches.length === 0) {
56
+ return 'No tools found matching your query.';
57
+ }
58
+ return matches.map(t => `- ${t.name}: ${t.description}`).join('\n');
59
+ }
60
+ }
61
+ exports.ToolSearchTool = ToolSearchTool;
62
+ //# sourceMappingURL=ToolSearchTool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolSearchTool.js","sourceRoot":"","sources":["../../src/tools/ToolSearchTool.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAAwB;AACxB,iCAAgD;AAEnC,QAAA,qBAAqB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC5C,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;CACrD,CAAC,CAAC;AAIH,MAAa,cAAe,SAAQ,WAA6B;IAAjE;;QACE,SAAI,GAAG,YAAY,CAAC;QACpB,gBAAW,GAAG,uCAAuC,CAAC;QACtD,gBAAW,GAAG,6BAAqB,CAAC;IAkBtC,CAAC;IAhBC,KAAK,CAAC,OAAO,CAAC,GAAgB,EAAE,KAAsB;QACpD,MAAM,EAAE,eAAe,EAAE,GAAG,wDAAa,SAAS,GAAC,CAAC;QACpD,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC;QAEhC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QACxC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAC/B,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC;YACpC,CAAC,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAC5C,CAAC;QAEF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,qCAAqC,CAAC;QAC/C,CAAC;QAED,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtE,CAAC;CACF;AArBD,wCAqBC"}
@@ -0,0 +1,29 @@
1
+ import { z } from 'zod';
2
+ import { Tool, type ToolContext } from './Tool';
3
+ export declare const WebFetchInputSchema: z.ZodObject<{
4
+ url: z.ZodString;
5
+ format: z.ZodOptional<z.ZodEnum<["text", "markdown", "html"]>>;
6
+ }, "strip", z.ZodTypeAny, {
7
+ url?: string;
8
+ format?: "markdown" | "text" | "html";
9
+ }, {
10
+ url?: string;
11
+ format?: "markdown" | "text" | "html";
12
+ }>;
13
+ export type WebFetchInput = z.infer<typeof WebFetchInputSchema>;
14
+ export declare class WebFetchTool extends Tool<WebFetchInput, string> {
15
+ name: string;
16
+ description: string;
17
+ inputSchema: z.ZodObject<{
18
+ url: z.ZodString;
19
+ format: z.ZodOptional<z.ZodEnum<["text", "markdown", "html"]>>;
20
+ }, "strip", z.ZodTypeAny, {
21
+ url?: string;
22
+ format?: "markdown" | "text" | "html";
23
+ }, {
24
+ url?: string;
25
+ format?: "markdown" | "text" | "html";
26
+ }>;
27
+ execute(ctx: ToolContext, input: WebFetchInput): Promise<string>;
28
+ }
29
+ //# sourceMappingURL=WebFetchTool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebFetchTool.d.ts","sourceRoot":"","sources":["../../src/tools/WebFetchTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,IAAI,EAAE,KAAK,WAAW,EAAE,MAAM,QAAQ,CAAC;AAEhD,eAAO,MAAM,mBAAmB;;;;;;;;;EAG9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,qBAAa,YAAa,SAAQ,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC;IAC3D,IAAI,SAAc;IAClB,WAAW,SAA8B;IACzC,WAAW;;;;;;;;;OAAuB;IAE5B,OAAO,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;CAqBvE"}