@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,26 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.StderrLogger = void 0;
4
- const common_1 = require("@nestjs/common");
5
- class StderrLogger extends common_1.ConsoleLogger {
6
- constructor(context, options) {
7
- super(context ?? 'StderrLogger', options ?? {});
8
- }
9
- printMessage(message, color, context = '', isTimeDiffEnabled, includeContext) {
10
- const output = typeof message === 'string' ? message : JSON.stringify(message);
11
- const localeStringOptions = {
12
- year: 'numeric',
13
- hour: 'numeric',
14
- minute: 'numeric',
15
- second: 'numeric',
16
- day: '2-digit',
17
- month: '2-digit',
18
- };
19
- const timestamp = new Date(Date.now()).toLocaleString(undefined, localeStringOptions);
20
- const pidMessage = color(`[Nest] ${process.pid} - `);
21
- const contextMessage = includeContext ? `[${context}] ` : '';
22
- process.stderr.write(`${pidMessage}${timestamp} ${contextMessage}${output}\n`);
23
- }
24
- }
25
- exports.StderrLogger = StderrLogger;
26
- //# sourceMappingURL=stderr.logger.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stderr.logger.js","sourceRoot":"","sources":["../src/stderr.logger.ts"],"names":[],"mappings":";;;AAAA,2CAAyD;AAEzD,MAAa,YAAa,SAAQ,sBAAa;IAC7C,YAAY,OAAgB,EAAE,OAAyD;QACrF,KAAK,CAAC,OAAO,IAAI,cAAc,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;IAClD,CAAC;IAES,YAAY,CACpB,OAAY,EACZ,KAAkC,EAClC,UAAkB,EAAE,EACpB,iBAA2B,EAC3B,cAAwB;QAExB,MAAM,MAAM,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC/E,MAAM,mBAAmB,GAAG;YAC1B,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,SAAS;YACjB,GAAG,EAAE,SAAS;YACd,KAAK,EAAE,SAAS;SACjB,CAAC;QACF,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,cAAc,CACnD,SAAS,EACT,mBAA0B,CAC3B,CAAC;QAEF,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC;QACtD,MAAM,cAAc,GAAG,cAAc,CAAC,CAAC,CAAC,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAE7D,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,GAAG,UAAU,GAAG,SAAS,MAAM,cAAc,GAAG,MAAM,IAAI,CAC3D,CAAC;IACJ,CAAC;CACF;AAjCD,oCAiCC"}
@@ -1,107 +0,0 @@
1
- export interface TaskRecord {
2
- id: string;
3
- agent_id: string;
4
- user_id: string | null;
5
- prompt: string;
6
- mode: 'query' | 'execute';
7
- status: 'pending' | 'running' | 'success' | 'failed';
8
- result: string | null;
9
- error: string | null;
10
- started_at: string;
11
- completed_at: string | null;
12
- duration_ms: number | null;
13
- metadata: string | null;
14
- trace_id: string | null;
15
- parent_task_id: string | null;
16
- caller_agent_id: string | null;
17
- model: string | null;
18
- platform: string | null;
19
- crewx_version: string | null;
20
- input_tokens: number;
21
- output_tokens: number;
22
- cost_usd: number;
23
- pid: number | null;
24
- rendered_prompt: string | null;
25
- command: string | null;
26
- coding_agent_command: string | null;
27
- exit_code: number | null;
28
- logs: string | null;
29
- project_id: string | null;
30
- project_name: string | null;
31
- }
32
- export interface UsageSummary {
33
- total_tasks: number;
34
- total_input_tokens: number;
35
- total_output_tokens: number;
36
- total_tokens: number;
37
- total_cost_usd: number;
38
- success_count: number;
39
- failed_count: number;
40
- }
41
- export interface AgentUsageDto {
42
- agent_id: string;
43
- total_tasks: number;
44
- total_input_tokens: number;
45
- total_output_tokens: number;
46
- total_cost_usd: number;
47
- success_count: number;
48
- failed_count: number;
49
- avg_duration_ms: number | null;
50
- }
51
- export interface ProjectUsageDto {
52
- project_id: string;
53
- project_name: string;
54
- total_tasks: number;
55
- total_input_tokens: number;
56
- total_output_tokens: number;
57
- total_tokens: number;
58
- total_cost_usd: number;
59
- success_count: number;
60
- failed_count: number;
61
- avg_duration_ms: number | null;
62
- last_activity_at: string | null;
63
- agents: AgentUsageDto[];
64
- }
65
- export interface DailyUsageDto {
66
- date: string;
67
- total_tasks: number;
68
- total_input_tokens: number;
69
- total_output_tokens: number;
70
- total_cost_usd: number;
71
- }
72
- export interface UsageQueryParams {
73
- from?: string;
74
- to?: string;
75
- project_id?: string;
76
- agent_id?: string;
77
- }
78
- export interface ProjectUsageRow {
79
- project_id: string;
80
- project_name: string;
81
- total_tasks: number;
82
- total_input_tokens: number;
83
- total_output_tokens: number;
84
- total_cost_usd: number;
85
- success_count: number;
86
- failed_count: number;
87
- avg_duration_ms: number | null;
88
- last_activity_at: string | null;
89
- }
90
- export interface AgentUsageRow {
91
- project_id: string;
92
- agent_id: string;
93
- total_tasks: number;
94
- total_input_tokens: number;
95
- total_output_tokens: number;
96
- total_cost_usd: number;
97
- success_count: number;
98
- failed_count: number;
99
- avg_duration_ms: number | null;
100
- }
101
- export interface DailyUsageRow {
102
- date: string;
103
- total_tasks: number;
104
- total_input_tokens: number;
105
- total_output_tokens: number;
106
- total_cost_usd: number;
107
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=usage.types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"usage.types.js","sourceRoot":"","sources":["../../src/types/usage.types.ts"],"names":[],"mappings":""}
@@ -1,15 +0,0 @@
1
- export declare function getEnvVar(key: string, defaultValue?: string): string | undefined;
2
- export declare function getRequiredEnvVar(key: string, defaultValue?: string): string;
3
- export declare function getEnvVarAsBoolean(key: string, defaultValue?: boolean): boolean;
4
- export declare function getEnvVarAsNumber(key: string, defaultValue?: number): number | undefined;
5
- export interface EnvConfig {
6
- [key: string]: {
7
- key: string;
8
- defaultValue?: string | number | boolean;
9
- type?: 'string' | 'number' | 'boolean';
10
- required?: boolean;
11
- };
12
- }
13
- export declare function getEnvConfig<T extends EnvConfig>(config: T): {
14
- [K in keyof T]: T[K]['type'] extends 'number' ? number : T[K]['type'] extends 'boolean' ? boolean : string;
15
- };
@@ -1,69 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getEnvVar = getEnvVar;
4
- exports.getRequiredEnvVar = getRequiredEnvVar;
5
- exports.getEnvVarAsBoolean = getEnvVarAsBoolean;
6
- exports.getEnvVarAsNumber = getEnvVarAsNumber;
7
- exports.getEnvConfig = getEnvConfig;
8
- function getEnvVar(key, defaultValue) {
9
- const value = process.env[key];
10
- return value !== undefined ? value : defaultValue;
11
- }
12
- function getRequiredEnvVar(key, defaultValue) {
13
- const value = getEnvVar(key, defaultValue);
14
- if (value === undefined) {
15
- throw new Error(`Required environment variable '${key}' is not set`);
16
- }
17
- return value;
18
- }
19
- function getEnvVarAsBoolean(key, defaultValue = false) {
20
- const value = getEnvVar(key);
21
- if (value === undefined) {
22
- return defaultValue;
23
- }
24
- return value.toLowerCase() === 'true' || value === '1';
25
- }
26
- function getEnvVarAsNumber(key, defaultValue) {
27
- const value = getEnvVar(key);
28
- if (value === undefined) {
29
- return defaultValue;
30
- }
31
- const numValue = Number(value);
32
- if (isNaN(numValue)) {
33
- throw new Error(`Environment variable '${key}' value '${value}' is not a valid number`);
34
- }
35
- return numValue;
36
- }
37
- function getEnvConfig(config) {
38
- const result = {};
39
- for (const [configKey, configValue] of Object.entries(config)) {
40
- const { key, defaultValue, type = 'string', required = false } = configValue;
41
- try {
42
- let value;
43
- switch (type) {
44
- case 'boolean':
45
- value = getEnvVarAsBoolean(key, defaultValue);
46
- break;
47
- case 'number':
48
- value = getEnvVarAsNumber(key, defaultValue);
49
- if (value === undefined && required) {
50
- throw new Error(`Required environment variable '${key}' is not set`);
51
- }
52
- break;
53
- default:
54
- if (required) {
55
- value = getRequiredEnvVar(key, defaultValue);
56
- }
57
- else {
58
- value = getEnvVar(key, defaultValue);
59
- }
60
- }
61
- result[configKey] = value;
62
- }
63
- catch (error) {
64
- throw new Error(`Failed to read environment variable for '${configKey}': ${error instanceof Error ? error.message : String(error)}`);
65
- }
66
- }
67
- return result;
68
- }
69
- //# sourceMappingURL=config-utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config-utils.js","sourceRoot":"","sources":["../../src/utils/config-utils.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export declare function extractTextFromContent(content: any): string;
@@ -1,15 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.extractTextFromContent = extractTextFromContent;
4
- function extractTextFromContent(content) {
5
- if (typeof content === 'string')
6
- return content;
7
- if (Array.isArray(content)) {
8
- return content
9
- .filter((c) => c?.type === 'text' && c?.text)
10
- .map((c) => c.text)
11
- .join('\n');
12
- }
13
- return typeof content === 'object' ? JSON.stringify(content) : String(content ?? '');
14
- }
15
- //# sourceMappingURL=extract-text.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"extract-text.js","sourceRoot":"","sources":["../../src/utils/extract-text.ts"],"names":[],"mappings":";;AAIA,wDASC;AATD,SAAgB,sBAAsB,CAAC,OAAY;IACjD,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC;IAChD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,OAAO,OAAO;aACX,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,MAAM,IAAI,CAAC,EAAE,IAAI,CAAC;aACjD,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;aACvB,IAAI,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC;IACD,OAAO,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;AACvF,CAAC"}
@@ -1,20 +0,0 @@
1
- export interface MCPRegistrationResult {
2
- claude: {
3
- success: boolean;
4
- message: string;
5
- };
6
- gemini: {
7
- success: boolean;
8
- message: string;
9
- };
10
- copilot: {
11
- success: boolean;
12
- message: string;
13
- };
14
- }
15
- export declare function registerCrewXMCP(): Promise<MCPRegistrationResult>;
16
- export declare function checkMCPRegistration(): Promise<{
17
- claude: boolean;
18
- gemini: boolean;
19
- copilot: boolean;
20
- }>;
@@ -1,199 +0,0 @@
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.registerCrewXMCP = registerCrewXMCP;
37
- exports.checkMCPRegistration = checkMCPRegistration;
38
- const child_process_1 = require("child_process");
39
- const util_1 = require("util");
40
- const fs = __importStar(require("fs"));
41
- const path = __importStar(require("path"));
42
- const os = __importStar(require("os"));
43
- const execAsync = (0, util_1.promisify)(child_process_1.exec);
44
- async function registerCrewXMCP() {
45
- const result = {
46
- claude: { success: false, message: '' },
47
- gemini: { success: false, message: '' },
48
- copilot: { success: false, message: '' },
49
- };
50
- const claudeAvailable = await checkCommandAvailable('claude');
51
- const geminiAvailable = await checkCommandAvailable('gemini');
52
- const copilotAvailable = await checkCommandAvailable('copilot');
53
- if (claudeAvailable) {
54
- try {
55
- result.claude = await registerClaudeMCP();
56
- }
57
- catch (error) {
58
- result.claude = { success: false, message: error.message };
59
- }
60
- }
61
- else {
62
- result.claude = { success: false, message: 'Claude CLI not installed' };
63
- }
64
- if (geminiAvailable) {
65
- try {
66
- result.gemini = await registerGeminiMCP();
67
- }
68
- catch (error) {
69
- result.gemini = { success: false, message: error.message };
70
- }
71
- }
72
- else {
73
- result.gemini = { success: false, message: 'Gemini CLI not installed' };
74
- }
75
- if (copilotAvailable) {
76
- try {
77
- result.copilot = await registerCopilotMCP();
78
- }
79
- catch (error) {
80
- result.copilot = { success: false, message: error.message };
81
- }
82
- }
83
- else {
84
- result.copilot = { success: false, message: 'Copilot CLI not installed' };
85
- }
86
- return result;
87
- }
88
- async function checkCommandAvailable(command) {
89
- try {
90
- await execAsync(`which ${command}`);
91
- return true;
92
- }
93
- catch {
94
- return false;
95
- }
96
- }
97
- async function registerClaudeMCP() {
98
- try {
99
- try {
100
- await execAsync('claude mcp remove crewx -s user');
101
- }
102
- catch {
103
- }
104
- const { stdout, stderr } = await execAsync('claude mcp add -s user crewx crewx mcp');
105
- if (stderr && !stderr.includes('File modified')) {
106
- return { success: false, message: stderr };
107
- }
108
- return {
109
- success: true,
110
- message: 'Claude MCP registered successfully. Use: claude "Use crewx_listAgents tool"'
111
- };
112
- }
113
- catch (error) {
114
- return { success: false, message: error.message };
115
- }
116
- }
117
- async function registerGeminiMCP() {
118
- try {
119
- try {
120
- await execAsync('gemini mcp remove crewx');
121
- }
122
- catch {
123
- }
124
- const { stdout, stderr } = await execAsync('gemini mcp add -s user --trust crewx crewx mcp');
125
- if (stderr && stderr.includes('error')) {
126
- return { success: false, message: stderr };
127
- }
128
- return {
129
- success: true,
130
- message: 'Gemini MCP registered successfully. Use: gemini -p "Use crewx_listAgents" --allowed-mcp-server-names=crewx --yolo'
131
- };
132
- }
133
- catch (error) {
134
- return { success: false, message: error.message };
135
- }
136
- }
137
- async function registerCopilotMCP() {
138
- try {
139
- const homeDir = os.homedir();
140
- const copilotConfigDir = path.join(homeDir, '.config', 'github-copilot');
141
- const copilotConfigPath = path.join(copilotConfigDir, 'mcp-servers.json');
142
- if (!fs.existsSync(copilotConfigDir)) {
143
- fs.mkdirSync(copilotConfigDir, { recursive: true });
144
- }
145
- let config = { mcpServers: {} };
146
- if (fs.existsSync(copilotConfigPath)) {
147
- const content = fs.readFileSync(copilotConfigPath, 'utf-8');
148
- config = JSON.parse(content);
149
- }
150
- config.mcpServers = config.mcpServers || {};
151
- config.mcpServers.crewx = {
152
- command: 'crewx',
153
- args: ['mcp']
154
- };
155
- fs.writeFileSync(copilotConfigPath, JSON.stringify(config, null, 2));
156
- return {
157
- success: true,
158
- message: 'Copilot MCP config updated. Note: MCP tools may not work in CLI mode (VS Code only)'
159
- };
160
- }
161
- catch (error) {
162
- return { success: false, message: error.message };
163
- }
164
- }
165
- async function checkMCPRegistration() {
166
- const result = {
167
- claude: false,
168
- gemini: false,
169
- copilot: false,
170
- };
171
- try {
172
- const homeDir = os.homedir();
173
- const claudeConfigPath = path.join(homeDir, '.claude.json');
174
- if (fs.existsSync(claudeConfigPath)) {
175
- const content = fs.readFileSync(claudeConfigPath, 'utf-8');
176
- result.claude = content.includes('"crewx"');
177
- }
178
- }
179
- catch {
180
- }
181
- try {
182
- const { stdout } = await execAsync('gemini mcp list');
183
- result.gemini = stdout.includes('crewx');
184
- }
185
- catch {
186
- }
187
- try {
188
- const homeDir = os.homedir();
189
- const copilotConfigPath = path.join(homeDir, '.config', 'github-copilot', 'mcp-servers.json');
190
- if (fs.existsSync(copilotConfigPath)) {
191
- const content = fs.readFileSync(copilotConfigPath, 'utf-8');
192
- result.copilot = content.includes('"crewx"');
193
- }
194
- }
195
- catch {
196
- }
197
- return result;
198
- }
199
- //# sourceMappingURL=mcp-installer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mcp-installer.js","sourceRoot":"","sources":["../../src/utils/mcp-installer.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- export declare function hashProjectPath(projectPath: string): string;
2
- export declare function resolveProjectName(projectPath: string): string;
3
- export declare function getProjectIdentity(projectPath: string): {
4
- project_id: string;
5
- project_name: string;
6
- };
@@ -1,70 +0,0 @@
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.hashProjectPath = hashProjectPath;
37
- exports.resolveProjectName = resolveProjectName;
38
- exports.getProjectIdentity = getProjectIdentity;
39
- const crypto_1 = require("crypto");
40
- const child_process_1 = require("child_process");
41
- const path = __importStar(require("path"));
42
- function hashProjectPath(projectPath) {
43
- const normalized = path.resolve(projectPath);
44
- return (0, crypto_1.createHash)('sha256').update(normalized).digest('hex').slice(0, 16);
45
- }
46
- function resolveProjectName(projectPath) {
47
- const normalized = path.resolve(projectPath);
48
- try {
49
- const remoteUrl = (0, child_process_1.execSync)('git remote get-url origin', {
50
- cwd: normalized,
51
- encoding: 'utf-8',
52
- stdio: ['pipe', 'pipe', 'pipe'],
53
- }).trim();
54
- if (remoteUrl) {
55
- const match = remoteUrl.match(/([^/\\:]+?)(?:\.git)?$/);
56
- if (match?.[1])
57
- return match[1];
58
- }
59
- }
60
- catch {
61
- }
62
- return path.basename(normalized);
63
- }
64
- function getProjectIdentity(projectPath) {
65
- return {
66
- project_id: hashProjectPath(projectPath),
67
- project_name: resolveProjectName(projectPath),
68
- };
69
- }
70
- //# sourceMappingURL=project-hash.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"project-hash.js","sourceRoot":"","sources":["../../src/utils/project-hash.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAWA,0CAGC;AAWD,gDAwBC;AAKD,gDAKC;AA3DD,mCAAoC;AACpC,iDAAyC;AACzC,2CAA6B;AAS7B,SAAgB,eAAe,CAAC,WAAmB;IACjD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7C,OAAO,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAC5E,CAAC;AAWD,SAAgB,kBAAkB,CAAC,WAAmB;IACpD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAG7C,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,IAAA,wBAAQ,EAAC,2BAA2B,EAAE;YACtD,GAAG,EAAE,UAAU;YACf,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;SAChC,CAAC,CAAC,IAAI,EAAE,CAAC;QAEV,IAAI,SAAS,EAAE,CAAC;YAId,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;YACxD,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC;gBAAE,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;IAET,CAAC;IAGD,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AACnC,CAAC;AAKD,SAAgB,kBAAkB,CAAC,WAAmB;IACpD,OAAO;QACL,UAAU,EAAE,eAAe,CAAC,WAAW,CAAC;QACxC,YAAY,EAAE,kBAAkB,CAAC,WAAW,CAAC;KAC9C,CAAC;AACJ,CAAC"}
@@ -1,3 +0,0 @@
1
- export declare class CliOptionSorter {
2
- static sortOptions(options: string[]): string[];
3
- }
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CliOptionSorter = void 0;
4
- class CliOptionSorter {
5
- static sortOptions(options) {
6
- return [...options].sort((a, b) => {
7
- const aIsLong = a.startsWith('--');
8
- const aIsShort = a.startsWith('-') && !a.startsWith('--');
9
- const bIsLong = b.startsWith('--');
10
- const bIsShort = b.startsWith('-') && !b.startsWith('--');
11
- if (aIsLong && bIsShort)
12
- return -1;
13
- if (bIsLong && aIsShort)
14
- return 1;
15
- return 0;
16
- });
17
- }
18
- }
19
- exports.CliOptionSorter = CliOptionSorter;
20
- //# sourceMappingURL=simple-security.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"simple-security.js","sourceRoot":"","sources":["../../src/utils/simple-security.ts"],"names":[],"mappings":";;;AAQA,MAAa,eAAe;IAO1B,MAAM,CAAC,WAAW,CAAC,OAAiB;QAClC,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAChC,MAAM,OAAO,GAAG,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACnC,MAAM,QAAQ,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAC1D,MAAM,OAAO,GAAG,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACnC,MAAM,QAAQ,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAG1D,IAAI,OAAO,IAAI,QAAQ;gBAAE,OAAO,CAAC,CAAC,CAAC;YACnC,IAAI,OAAO,IAAI,QAAQ;gBAAE,OAAO,CAAC,CAAC;YAGlC,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAtBD,0CAsBC"}
@@ -1,6 +0,0 @@
1
- import { parseStructuredPayload as sdkParseStructuredPayload, type StructuredPayload } from '@crewx/sdk';
2
- export { sdkParseStructuredPayload as parseStructuredPayload };
3
- export type { StructuredPayload } from '@crewx/sdk';
4
- export declare function readStdin(): Promise<string | null>;
5
- export declare function formatPipedContext(pipedContent: string): string;
6
- export declare function buildContextFromStructuredPayload(payload: StructuredPayload | null): string | undefined;