@crewx/cli 0.8.0-rc.66 → 0.8.0-rc.82

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 (281) hide show
  1. package/bin/crewx +2 -0
  2. package/dist/bootstrap/crewx-cli.d.ts +11 -0
  3. package/dist/bootstrap/crewx-cli.js +31 -0
  4. package/dist/builtin.d.ts +15 -0
  5. package/dist/{cli/builtin.handler.js → builtin.js} +21 -7
  6. package/dist/commands/agent.d.ts +12 -0
  7. package/dist/commands/agent.js +246 -0
  8. package/dist/commands/doctor.d.ts +12 -0
  9. package/dist/commands/doctor.js +190 -0
  10. package/dist/commands/execute.d.ts +21 -0
  11. package/dist/commands/execute.js +117 -0
  12. package/dist/commands/hook/install.d.ts +21 -0
  13. package/dist/commands/hook/install.js +175 -0
  14. package/dist/commands/hook/paths.d.ts +19 -0
  15. package/dist/commands/hook/paths.js +94 -0
  16. package/dist/commands/hook/status.d.ts +7 -0
  17. package/dist/commands/hook/status.js +86 -0
  18. package/dist/commands/hook/uninstall.d.ts +8 -0
  19. package/dist/commands/hook/uninstall.js +71 -0
  20. package/dist/commands/hook-dispatch.d.ts +15 -0
  21. package/dist/commands/hook-dispatch.js +180 -0
  22. package/dist/commands/init.d.ts +24 -0
  23. package/dist/commands/init.js +133 -0
  24. package/dist/commands/kill.d.ts +12 -0
  25. package/dist/commands/kill.js +49 -0
  26. package/dist/commands/log.d.ts +13 -0
  27. package/dist/commands/log.js +97 -0
  28. package/dist/commands/parse-agent-message.d.ts +31 -0
  29. package/dist/commands/parse-agent-message.js +52 -0
  30. package/dist/commands/parse-common-flags.d.ts +36 -0
  31. package/dist/commands/parse-common-flags.js +105 -0
  32. package/dist/commands/ps.d.ts +12 -0
  33. package/dist/commands/ps.js +71 -0
  34. package/dist/commands/query.d.ts +21 -0
  35. package/dist/commands/query.js +117 -0
  36. package/dist/commands/result.d.ts +13 -0
  37. package/dist/commands/result.js +73 -0
  38. package/dist/commands/slack.d.ts +12 -0
  39. package/dist/commands/slack.js +559 -0
  40. package/dist/commands/task-db.d.ts +33 -0
  41. package/dist/commands/task-db.js +107 -0
  42. package/dist/examples/deny-secrets-plugin.d.ts +22 -0
  43. package/dist/examples/deny-secrets-plugin.js +40 -0
  44. package/dist/index.d.ts +1 -0
  45. package/dist/index.js +5 -0
  46. package/dist/logging.d.ts +21 -0
  47. package/dist/logging.js +86 -0
  48. package/dist/main.d.ts +10 -0
  49. package/dist/main.js +246 -256
  50. package/dist/plugins/examples/echo-hook.d.ts +24 -0
  51. package/dist/plugins/examples/echo-hook.js +60 -0
  52. package/dist/plugins/examples/verify-echo-hook.d.ts +8 -0
  53. package/dist/plugins/examples/verify-echo-hook.js +47 -0
  54. package/dist/plugins/sqlite-tracing.d.ts +13 -0
  55. package/dist/plugins/sqlite-tracing.js +20 -0
  56. package/dist/register-builtin-tools.d.ts +5 -0
  57. package/dist/register-builtin-tools.js +9 -0
  58. package/dist/slack/file-download.d.ts +17 -0
  59. package/dist/slack/file-download.js +134 -0
  60. package/dist/slack/markdown.d.ts +5 -0
  61. package/dist/slack/markdown.js +33 -0
  62. package/dist/utils/env-defaults.d.ts +5 -0
  63. package/dist/utils/env-defaults.js +10 -0
  64. package/dist/utils/version.d.ts +1 -0
  65. package/dist/utils/version.js +28 -0
  66. package/package.json +32 -115
  67. package/README.md +0 -663
  68. package/dist/ai-provider.service.d.ts +0 -36
  69. package/dist/ai-provider.service.js +0 -315
  70. package/dist/ai-provider.service.js.map +0 -1
  71. package/dist/ai.service.d.ts +0 -17
  72. package/dist/ai.service.js +0 -51
  73. package/dist/ai.service.js.map +0 -1
  74. package/dist/app.module.d.ts +0 -5
  75. package/dist/app.module.js +0 -165
  76. package/dist/app.module.js.map +0 -1
  77. package/dist/cli/agent.handler.d.ts +0 -2
  78. package/dist/cli/agent.handler.js +0 -186
  79. package/dist/cli/agent.handler.js.map +0 -1
  80. package/dist/cli/builtin.handler.d.ts +0 -3
  81. package/dist/cli/builtin.handler.js.map +0 -1
  82. package/dist/cli/chat.handler.d.ts +0 -20
  83. package/dist/cli/chat.handler.js +0 -446
  84. package/dist/cli/chat.handler.js.map +0 -1
  85. package/dist/cli/cli.handler.d.ts +0 -4
  86. package/dist/cli/cli.handler.js +0 -119
  87. package/dist/cli/cli.handler.js.map +0 -1
  88. package/dist/cli/doctor.handler.d.ts +0 -38
  89. package/dist/cli/doctor.handler.js +0 -495
  90. package/dist/cli/doctor.handler.js.map +0 -1
  91. package/dist/cli/execute.handler.d.ts +0 -2
  92. package/dist/cli/execute.handler.js +0 -376
  93. package/dist/cli/execute.handler.js.map +0 -1
  94. package/dist/cli/help.handler.d.ts +0 -2
  95. package/dist/cli/help.handler.js +0 -10
  96. package/dist/cli/help.handler.js.map +0 -1
  97. package/dist/cli/init.handler.d.ts +0 -26
  98. package/dist/cli/init.handler.js +0 -450
  99. package/dist/cli/init.handler.js.map +0 -1
  100. package/dist/cli/log.handler.d.ts +0 -2
  101. package/dist/cli/log.handler.js +0 -69
  102. package/dist/cli/log.handler.js.map +0 -1
  103. package/dist/cli/mcp.handler.d.ts +0 -3
  104. package/dist/cli/mcp.handler.js +0 -121
  105. package/dist/cli/mcp.handler.js.map +0 -1
  106. package/dist/cli/query.handler.d.ts +0 -2
  107. package/dist/cli/query.handler.js +0 -392
  108. package/dist/cli/query.handler.js.map +0 -1
  109. package/dist/cli/skill.handler.d.ts +0 -2
  110. package/dist/cli/skill.handler.js +0 -252
  111. package/dist/cli/skill.handler.js.map +0 -1
  112. package/dist/cli/slack-files.handler.d.ts +0 -2
  113. package/dist/cli/slack-files.handler.js +0 -291
  114. package/dist/cli/slack-files.handler.js.map +0 -1
  115. package/dist/cli/template.handler.d.ts +0 -2
  116. package/dist/cli/template.handler.js +0 -188
  117. package/dist/cli/template.handler.js.map +0 -1
  118. package/dist/cli/templates.handler.d.ts +0 -2
  119. package/dist/cli/templates.handler.js +0 -100
  120. package/dist/cli/templates.handler.js.map +0 -1
  121. package/dist/cli-options.d.ts +0 -40
  122. package/dist/cli-options.js +0 -371
  123. package/dist/cli-options.js.map +0 -1
  124. package/dist/config/timeout.config.d.ts +0 -14
  125. package/dist/config/timeout.config.js +0 -34
  126. package/dist/config/timeout.config.js.map +0 -1
  127. package/dist/conversation/base-conversation-history.provider.d.ts +0 -12
  128. package/dist/conversation/base-conversation-history.provider.js +0 -45
  129. package/dist/conversation/base-conversation-history.provider.js.map +0 -1
  130. package/dist/conversation/cli-box-reader.adapter.d.ts +0 -6
  131. package/dist/conversation/cli-box-reader.adapter.js +0 -10
  132. package/dist/conversation/cli-box-reader.adapter.js.map +0 -1
  133. package/dist/conversation/cli-conversation-history.provider.d.ts +0 -16
  134. package/dist/conversation/cli-conversation-history.provider.js +0 -112
  135. package/dist/conversation/cli-conversation-history.provider.js.map +0 -1
  136. package/dist/conversation/cli-task-reader.adapter.d.ts +0 -6
  137. package/dist/conversation/cli-task-reader.adapter.js +0 -25
  138. package/dist/conversation/cli-task-reader.adapter.js.map +0 -1
  139. package/dist/conversation/conversation-provider.factory.d.ts +0 -10
  140. package/dist/conversation/conversation-provider.factory.js +0 -50
  141. package/dist/conversation/conversation-provider.factory.js.map +0 -1
  142. package/dist/conversation/index.d.ts +0 -8
  143. package/dist/conversation/index.js +0 -29
  144. package/dist/conversation/index.js.map +0 -1
  145. package/dist/conversation/slack-conversation-history.provider.d.ts +0 -29
  146. package/dist/conversation/slack-conversation-history.provider.js +0 -302
  147. package/dist/conversation/slack-conversation-history.provider.js.map +0 -1
  148. package/dist/crewx.tool.d.ts +0 -360
  149. package/dist/crewx.tool.js +0 -2531
  150. package/dist/crewx.tool.js.map +0 -1
  151. package/dist/crewx.tool.spec.d.ts +0 -1
  152. package/dist/crewx.tool.spec.js +0 -222
  153. package/dist/crewx.tool.spec.js.map +0 -1
  154. package/dist/guards/bearer-auth.guard.d.ts +0 -7
  155. package/dist/guards/bearer-auth.guard.js +0 -44
  156. package/dist/guards/bearer-auth.guard.js.map +0 -1
  157. package/dist/health.controller.d.ts +0 -6
  158. package/dist/health.controller.js +0 -32
  159. package/dist/health.controller.js.map +0 -1
  160. package/dist/main.js.map +0 -1
  161. package/dist/mcp.controller.d.ts +0 -8
  162. package/dist/mcp.controller.js +0 -62
  163. package/dist/mcp.controller.js.map +0 -1
  164. package/dist/package.json +0 -3
  165. package/dist/providers/dynamic-provider.factory.d.ts +0 -17
  166. package/dist/providers/dynamic-provider.factory.js +0 -138
  167. package/dist/providers/dynamic-provider.factory.js.map +0 -1
  168. package/dist/providers/logger.adapter.d.ts +0 -7
  169. package/dist/providers/logger.adapter.js +0 -107
  170. package/dist/providers/logger.adapter.js.map +0 -1
  171. package/dist/services/agent-loader.service.d.ts +0 -35
  172. package/dist/services/agent-loader.service.js +0 -623
  173. package/dist/services/agent-loader.service.js.map +0 -1
  174. package/dist/services/auth.service.d.ts +0 -9
  175. package/dist/services/auth.service.js +0 -47
  176. package/dist/services/auth.service.js.map +0 -1
  177. package/dist/services/config-validator.service.d.ts +0 -29
  178. package/dist/services/config-validator.service.js +0 -483
  179. package/dist/services/config-validator.service.js.map +0 -1
  180. package/dist/services/config.service.d.ts +0 -45
  181. package/dist/services/config.service.js +0 -352
  182. package/dist/services/config.service.js.map +0 -1
  183. package/dist/services/document-loader.service.d.ts +0 -26
  184. package/dist/services/document-loader.service.js +0 -186
  185. package/dist/services/document-loader.service.js.map +0 -1
  186. package/dist/services/help.service.d.ts +0 -5
  187. package/dist/services/help.service.js +0 -139
  188. package/dist/services/help.service.js.map +0 -1
  189. package/dist/services/intelligent-compression.service.d.ts +0 -20
  190. package/dist/services/intelligent-compression.service.js +0 -179
  191. package/dist/services/intelligent-compression.service.js.map +0 -1
  192. package/dist/services/mcp-client.service.d.ts +0 -26
  193. package/dist/services/mcp-client.service.js +0 -81
  194. package/dist/services/mcp-client.service.js.map +0 -1
  195. package/dist/services/parallel-processing.service.d.ts +0 -108
  196. package/dist/services/parallel-processing.service.js +0 -333
  197. package/dist/services/parallel-processing.service.js.map +0 -1
  198. package/dist/services/provider-bridge.service.d.ts +0 -35
  199. package/dist/services/provider-bridge.service.js +0 -224
  200. package/dist/services/provider-bridge.service.js.map +0 -1
  201. package/dist/services/remote-agent.service.d.ts +0 -50
  202. package/dist/services/remote-agent.service.js +0 -171
  203. package/dist/services/remote-agent.service.js.map +0 -1
  204. package/dist/services/result-formatter.service.d.ts +0 -27
  205. package/dist/services/result-formatter.service.js +0 -126
  206. package/dist/services/result-formatter.service.js.map +0 -1
  207. package/dist/services/skill-loader.service.d.ts +0 -15
  208. package/dist/services/skill-loader.service.js +0 -278
  209. package/dist/services/skill-loader.service.js.map +0 -1
  210. package/dist/services/skill.service.d.ts +0 -69
  211. package/dist/services/skill.service.js +0 -779
  212. package/dist/services/skill.service.js.map +0 -1
  213. package/dist/services/skill.service.spec.d.ts +0 -1
  214. package/dist/services/skill.service.spec.js +0 -168
  215. package/dist/services/skill.service.spec.js.map +0 -1
  216. package/dist/services/task-management.service.d.ts +0 -71
  217. package/dist/services/task-management.service.js +0 -324
  218. package/dist/services/task-management.service.js.map +0 -1
  219. package/dist/services/template.service.d.ts +0 -61
  220. package/dist/services/template.service.js +0 -416
  221. package/dist/services/template.service.js.map +0 -1
  222. package/dist/services/tool-call.service.d.ts +0 -16
  223. package/dist/services/tool-call.service.js +0 -302
  224. package/dist/services/tool-call.service.js.map +0 -1
  225. package/dist/services/tracing.service.d.ts +0 -197
  226. package/dist/services/tracing.service.js +0 -1267
  227. package/dist/services/tracing.service.js.map +0 -1
  228. package/dist/slack/formatters/message.formatter.d.ts +0 -43
  229. package/dist/slack/formatters/message.formatter.js +0 -505
  230. package/dist/slack/formatters/message.formatter.js.map +0 -1
  231. package/dist/slack/services/slack-file-download.service.d.ts +0 -58
  232. package/dist/slack/services/slack-file-download.service.js +0 -558
  233. package/dist/slack/services/slack-file-download.service.js.map +0 -1
  234. package/dist/slack/slack-bot.d.ts +0 -33
  235. package/dist/slack/slack-bot.js +0 -568
  236. package/dist/slack/slack-bot.js.map +0 -1
  237. package/dist/stderr.logger.d.ts +0 -8
  238. package/dist/stderr.logger.js +0 -26
  239. package/dist/stderr.logger.js.map +0 -1
  240. package/dist/types/usage.types.d.ts +0 -107
  241. package/dist/types/usage.types.js +0 -3
  242. package/dist/types/usage.types.js.map +0 -1
  243. package/dist/utils/config-utils.d.ts +0 -15
  244. package/dist/utils/config-utils.js +0 -69
  245. package/dist/utils/config-utils.js.map +0 -1
  246. package/dist/utils/extract-text.d.ts +0 -1
  247. package/dist/utils/extract-text.js +0 -15
  248. package/dist/utils/extract-text.js.map +0 -1
  249. package/dist/utils/mcp-installer.d.ts +0 -20
  250. package/dist/utils/mcp-installer.js +0 -199
  251. package/dist/utils/mcp-installer.js.map +0 -1
  252. package/dist/utils/project-hash.d.ts +0 -6
  253. package/dist/utils/project-hash.js +0 -70
  254. package/dist/utils/project-hash.js.map +0 -1
  255. package/dist/utils/simple-security.d.ts +0 -3
  256. package/dist/utils/simple-security.js +0 -20
  257. package/dist/utils/simple-security.js.map +0 -1
  258. package/dist/utils/stdin-utils.d.ts +0 -6
  259. package/dist/utils/stdin-utils.js +0 -109
  260. package/dist/utils/stdin-utils.js.map +0 -1
  261. package/dist/utils/template-processor.d.ts +0 -27
  262. package/dist/utils/template-processor.js +0 -395
  263. package/dist/utils/template-processor.js.map +0 -1
  264. package/dist/utils/terminal-message-formatter.d.ts +0 -23
  265. package/dist/utils/terminal-message-formatter.js +0 -136
  266. package/dist/utils/terminal-message-formatter.js.map +0 -1
  267. package/dist/version.d.ts +0 -1
  268. package/dist/version.js +0 -17
  269. package/dist/version.js.map +0 -1
  270. package/dist/workspace.service.d.ts +0 -44
  271. package/dist/workspace.service.js +0 -299
  272. package/dist/workspace.service.js.map +0 -1
  273. package/scripts/backfill-tokens.js +0 -218
  274. package/scripts/postbuild-cli.mjs +0 -88
  275. package/scripts/postinstall-cli.mjs +0 -30
  276. package/templates/agents/default.yaml +0 -490
  277. package/templates/agents/minimal.yaml +0 -16
  278. package/templates/documents/conversation-history-default.hbs +0 -17
  279. package/templates/documents/crewx-manual.md +0 -2278
  280. package/templates/documents/crewx-quick-guide.md +0 -147
  281. package/templates/versions.json +0 -19
@@ -1,302 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.ToolCallService = void 0;
13
- const common_1 = require("@nestjs/common");
14
- let ToolCallService = class ToolCallService {
15
- constructor() {
16
- this.logger = new common_1.Logger('ToolCallService');
17
- this.tools = new Map();
18
- }
19
- setCrewXTool(crewXTool) {
20
- this.crewXTool = crewXTool;
21
- this.registerMcpTools();
22
- }
23
- registerMcpTools() {
24
- if (!this.crewXTool) {
25
- this.logger.warn('CrewXTool not available, skipping MCP tools registration');
26
- return;
27
- }
28
- this.register({
29
- name: 'check_ai_providers',
30
- description: 'Check the status of available AI CLI tools (Claude, Gemini, GitHub Copilot). Returns information about which providers are installed and ready to use.',
31
- input_schema: {
32
- type: 'object',
33
- properties: {},
34
- required: [],
35
- },
36
- output_schema: {
37
- type: 'object',
38
- properties: {
39
- availableProviders: {
40
- type: 'array',
41
- items: { type: 'string' },
42
- description: 'List of available AI providers',
43
- },
44
- installation: {
45
- type: 'object',
46
- description: 'Installation status for each provider',
47
- },
48
- },
49
- required: ['availableProviders'],
50
- },
51
- }, {
52
- execute: async (context) => {
53
- const startTime = Date.now();
54
- try {
55
- const result = await this.crewXTool.checkAIProviders();
56
- return {
57
- success: result.success !== false,
58
- data: {
59
- availableProviders: result.availableProviders || [],
60
- installation: result.installation || {},
61
- recommendations: result.recommendations || [],
62
- },
63
- metadata: {
64
- executionTime: Date.now() - startTime,
65
- toolName: 'check_ai_providers',
66
- runId: context.runId,
67
- },
68
- };
69
- }
70
- catch (error) {
71
- return {
72
- success: false,
73
- error: `Failed to check AI providers: ${error.message}`,
74
- metadata: {
75
- executionTime: Date.now() - startTime,
76
- toolName: 'check_ai_providers',
77
- runId: context.runId,
78
- },
79
- };
80
- }
81
- },
82
- });
83
- this.register({
84
- name: 'query_agent',
85
- description: 'Query a specific AI agent in read-only mode. Use this to ask questions, request code analysis, explanations, or reviews. No file modifications will be performed. This is ideal for getting expert opinions or analysis from specialized agents.',
86
- input_schema: {
87
- type: 'object',
88
- properties: {
89
- agentId: {
90
- type: 'string',
91
- description: 'Agent ID to query (e.g., claude, gemini, copilot, or custom agents from agents.yaml). Use list_agents tool to see available agents.',
92
- },
93
- query: {
94
- type: 'string',
95
- description: 'Question or request to ask the agent',
96
- },
97
- context: {
98
- type: 'string',
99
- description: 'Additional context or background information (optional)',
100
- },
101
- },
102
- required: ['agentId', 'query'],
103
- },
104
- output_schema: {
105
- type: 'object',
106
- properties: {
107
- response: {
108
- type: 'string',
109
- description: 'Agent response to the query',
110
- },
111
- agent: {
112
- type: 'string',
113
- description: 'Agent that responded',
114
- },
115
- provider: {
116
- type: 'string',
117
- description: 'AI provider used',
118
- },
119
- taskId: {
120
- type: 'string',
121
- description: 'Task ID for tracking',
122
- },
123
- },
124
- required: ['response', 'agent'],
125
- },
126
- }, {
127
- execute: async (context) => {
128
- const startTime = Date.now();
129
- try {
130
- const result = await this.crewXTool.queryAgent({
131
- agentId: context.input.agentId,
132
- query: context.input.query,
133
- context: context.input.context,
134
- });
135
- return {
136
- success: result.success !== false,
137
- data: {
138
- response: result.response || result.content?.[0]?.text || 'No response',
139
- agent: result.agent,
140
- provider: result.provider,
141
- taskId: result.taskId,
142
- error: result.error,
143
- },
144
- metadata: {
145
- executionTime: Date.now() - startTime,
146
- toolName: 'query_agent',
147
- runId: context.runId,
148
- },
149
- };
150
- }
151
- catch (error) {
152
- return {
153
- success: false,
154
- error: `Failed to query agent: ${error.message}`,
155
- metadata: {
156
- executionTime: Date.now() - startTime,
157
- toolName: 'query_agent',
158
- runId: context.runId,
159
- },
160
- };
161
- }
162
- },
163
- });
164
- this.register({
165
- name: 'execute_agent',
166
- description: 'Execute tasks through a specialist agent. This allows file modifications and implementations. Use this when you need an agent to perform actual work like code generation, file editing, or system changes. Be cautious as this can modify files.',
167
- input_schema: {
168
- type: 'object',
169
- properties: {
170
- agentId: {
171
- type: 'string',
172
- description: 'Agent ID to execute (e.g., claude, gemini, copilot, or custom agents). Use list_agents to see available agents.',
173
- },
174
- task: {
175
- type: 'string',
176
- description: 'Task or implementation request for the agent to perform',
177
- },
178
- context: {
179
- type: 'string',
180
- description: 'Additional context or background information (optional)',
181
- },
182
- },
183
- required: ['agentId', 'task'],
184
- },
185
- output_schema: {
186
- type: 'object',
187
- properties: {
188
- implementation: {
189
- type: 'string',
190
- description: 'Implementation result or guidance',
191
- },
192
- agent: {
193
- type: 'string',
194
- description: 'Agent that executed the task',
195
- },
196
- provider: {
197
- type: 'string',
198
- description: 'AI provider used',
199
- },
200
- taskId: {
201
- type: 'string',
202
- description: 'Task ID for tracking',
203
- },
204
- },
205
- required: ['implementation', 'agent'],
206
- },
207
- }, {
208
- execute: async (context) => {
209
- const startTime = Date.now();
210
- try {
211
- const result = await this.crewXTool.executeAgent({
212
- agentId: context.input.agentId,
213
- task: context.input.task,
214
- context: context.input.context,
215
- });
216
- return {
217
- success: result.success !== false,
218
- data: {
219
- implementation: result.implementation || result.content?.[0]?.text || 'No implementation',
220
- agent: result.agent,
221
- provider: result.provider,
222
- taskId: result.taskId,
223
- error: result.error,
224
- recommendations: result.recommendations,
225
- },
226
- metadata: {
227
- executionTime: Date.now() - startTime,
228
- toolName: 'execute_agent',
229
- runId: context.runId,
230
- },
231
- };
232
- }
233
- catch (error) {
234
- return {
235
- success: false,
236
- error: `Failed to execute agent: ${error.message}`,
237
- metadata: {
238
- executionTime: Date.now() - startTime,
239
- toolName: 'execute_agent',
240
- runId: context.runId,
241
- },
242
- };
243
- }
244
- },
245
- });
246
- this.logger.log('MCP tools registered: check_ai_providers, query_agent, execute_agent');
247
- }
248
- register(definition, executor) {
249
- this.tools.set(definition.name, { definition, executor });
250
- this.logger.log(`Tool registered: ${definition.name}`);
251
- }
252
- list() {
253
- return Array.from(this.tools.values()).map(t => t.definition);
254
- }
255
- async execute(name, input, context) {
256
- const tool = this.tools.get(name);
257
- if (!tool) {
258
- this.logger.error(`Tool not found: ${name}`);
259
- return {
260
- success: false,
261
- error: `Tool not found: ${name}`,
262
- };
263
- }
264
- const executionContext = {
265
- input,
266
- runId: context?.runId,
267
- threadId: context?.threadId,
268
- resourceId: context?.resourceId,
269
- agentId: context?.agentId,
270
- tracingContext: context?.tracingContext,
271
- };
272
- this.logger.log(`Executing tool: ${name} with input:`, JSON.stringify(input));
273
- try {
274
- const result = await tool.executor.execute(executionContext);
275
- this.logger.log(`Tool ${name} executed successfully`, {
276
- success: result.success,
277
- runId: executionContext.runId,
278
- });
279
- return result;
280
- }
281
- catch (error) {
282
- this.logger.error(`Tool ${name} execution failed:`, error.message);
283
- return {
284
- success: false,
285
- error: `Tool execution failed: ${error.message}`,
286
- metadata: {
287
- toolName: name,
288
- runId: executionContext.runId,
289
- },
290
- };
291
- }
292
- }
293
- has(name) {
294
- return this.tools.has(name);
295
- }
296
- };
297
- exports.ToolCallService = ToolCallService;
298
- exports.ToolCallService = ToolCallService = __decorate([
299
- (0, common_1.Injectable)(),
300
- __metadata("design:paramtypes", [])
301
- ], ToolCallService);
302
- //# sourceMappingURL=tool-call.service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tool-call.service.js","sourceRoot":"","sources":["../../src/services/tool-call.service.ts"],"names":[],"mappings":"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"}
@@ -1,197 +0,0 @@
1
- import { OnModuleDestroy, OnModuleInit } from '@nestjs/common';
2
- export declare enum TaskStatus {
3
- PENDING = "pending",
4
- RUNNING = "running",
5
- SUCCESS = "success",
6
- FAILED = "failed"
7
- }
8
- export declare enum SpanKind {
9
- INTERNAL = "internal",
10
- CLIENT = "client",
11
- SERVER = "server",
12
- PRODUCER = "producer",
13
- CONSUMER = "consumer"
14
- }
15
- export interface ProcessLogEntry {
16
- timestamp: string;
17
- level: 'info' | 'warn' | 'error' | 'stdout' | 'stderr';
18
- message: string;
19
- }
20
- export interface TaskRecord {
21
- id: string;
22
- agent_id: string;
23
- user_id?: string;
24
- prompt: string;
25
- mode: 'query' | 'execute';
26
- status: TaskStatus;
27
- result?: string;
28
- error?: string;
29
- started_at: string;
30
- completed_at?: string;
31
- duration_ms?: number;
32
- metadata?: Record<string, unknown>;
33
- trace_id?: string;
34
- parent_task_id?: string;
35
- caller_agent_id?: string;
36
- model?: string;
37
- platform?: string;
38
- crewx_version?: string;
39
- input_tokens?: number;
40
- output_tokens?: number;
41
- cost_usd?: number;
42
- pid?: number;
43
- rendered_prompt?: string;
44
- command?: string;
45
- coding_agent_command?: string;
46
- exit_code?: number;
47
- logs?: ProcessLogEntry[];
48
- workspace_id?: string;
49
- workspace_name?: string;
50
- thread_id?: string;
51
- workspace_ref?: string;
52
- }
53
- export interface SpanRecord {
54
- id: string;
55
- task_id: string;
56
- parent_span_id?: string;
57
- name: string;
58
- kind: SpanKind;
59
- status: 'ok' | 'error';
60
- started_at: string;
61
- completed_at?: string;
62
- duration_ms?: number;
63
- input?: string;
64
- output?: string;
65
- error?: string;
66
- attributes?: Record<string, unknown>;
67
- }
68
- export interface ToolCallRecord {
69
- id: string;
70
- task_id: string;
71
- session_id?: string;
72
- tool_name: string;
73
- files?: string[];
74
- input?: Record<string, unknown>;
75
- output?: Record<string, unknown>;
76
- duration_ms?: number;
77
- timestamp: string;
78
- }
79
- export interface CreateToolCallInput {
80
- task_id: string;
81
- session_id?: string;
82
- tool_name: string;
83
- files?: string[];
84
- input?: Record<string, unknown>;
85
- output?: Record<string, unknown>;
86
- duration_ms?: number;
87
- }
88
- export interface CreateTaskInput {
89
- id?: string;
90
- agent_id: string;
91
- user_id?: string;
92
- prompt: string;
93
- mode: 'query' | 'execute';
94
- metadata?: Record<string, unknown>;
95
- trace_id?: string;
96
- parent_task_id?: string;
97
- caller_agent_id?: string;
98
- model?: string;
99
- platform?: 'cli' | 'slack' | 'mcp';
100
- crewx_version?: string;
101
- input_tokens?: number;
102
- output_tokens?: number;
103
- cost_usd?: number;
104
- pid?: number;
105
- rendered_prompt?: string;
106
- command?: string;
107
- coding_agent_command?: string;
108
- exit_code?: number;
109
- workspace_id?: string;
110
- workspace_name?: string;
111
- thread_id?: string;
112
- workspace_ref?: string;
113
- }
114
- export interface CreateSpanInput {
115
- task_id: string;
116
- parent_span_id?: string;
117
- name: string;
118
- kind?: SpanKind;
119
- input?: string;
120
- attributes?: Record<string, unknown>;
121
- }
122
- export interface TracingServiceOptions {
123
- dbPath?: string;
124
- }
125
- export declare class TracingService implements OnModuleInit, OnModuleDestroy {
126
- private readonly logger;
127
- private db;
128
- private dbPath;
129
- constructor(options?: TracingServiceOptions);
130
- onModuleInit(): void;
131
- onModuleDestroy(): void;
132
- private initializeDatabase;
133
- private columnExists;
134
- private migrateSchemaPhase3a;
135
- private migrateSchemaPhase4;
136
- private migrateSchemaPhase5;
137
- private migrateWorkspaceRenaming;
138
- private migrateSchemaPhase6;
139
- private migrateSchemaPhase7;
140
- private createToolCallsTable;
141
- private createThreadBoxesTable;
142
- close(): void;
143
- private now;
144
- private estimateTokens;
145
- createTask(input: CreateTaskInput): string | null;
146
- private extractUsageFromLogs;
147
- completeTask(taskId: string, result?: string, exitCode?: number | null, usage?: {
148
- inputTokens: number;
149
- outputTokens: number;
150
- }): boolean;
151
- failTask(taskId: string, error: string, exitCode?: number | null, usage?: {
152
- inputTokens: number;
153
- outputTokens: number;
154
- }): boolean;
155
- updateTaskPid(taskId: string, pid: number): boolean;
156
- updateTaskCodingAgentCommand(taskId: string, command: string): boolean;
157
- updateTaskRenderedPrompt(taskId: string, renderedPrompt: string): boolean;
158
- appendTaskLog(taskId: string, entry: ProcessLogEntry): boolean;
159
- getTask(taskId: string): TaskRecord | null;
160
- listTasks(options?: {
161
- limit?: number;
162
- offset?: number;
163
- agentId?: string;
164
- }): TaskRecord[];
165
- createSpan(input: CreateSpanInput): string | null;
166
- completeSpan(spanId: string, output?: string): boolean;
167
- failSpan(spanId: string, error: string): boolean;
168
- getSpansForTask(taskId: string): SpanRecord[];
169
- getSpan(spanId: string): SpanRecord | null;
170
- logToolCall(input: CreateToolCallInput): string | null;
171
- getToolCallsForTask(taskId: string): ToolCallRecord[];
172
- getToolCallStats(taskId: string): {
173
- totalCalls: number;
174
- uniqueTools: number;
175
- toolsUsed: string[];
176
- } | null;
177
- cleanupOldTasks(daysToKeep?: number): number;
178
- getStats(): {
179
- taskCount: number;
180
- spanCount: number;
181
- toolCallCount: number;
182
- dbSizeBytes: number;
183
- } | null;
184
- private migrateDbFileName;
185
- private resolveDbPath;
186
- resolveWorkspaceIdForPath(dirPath: string): {
187
- workspaceId: string;
188
- workspaceName: string;
189
- };
190
- private resolveWorkspaceContext;
191
- private resolveWorkspaceSlug;
192
- private ensureWorkspaceRow;
193
- private resolveWorkspaceName;
194
- private extractRepoName;
195
- isEnabled(): boolean;
196
- getDbPath(): string;
197
- }