@crewx/cli 0.8.3-rc.9 → 0.8.4-rc.0

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 (222) hide show
  1. package/README.md +33 -33
  2. package/bin/crewx +2 -2
  3. package/dist/ai-provider.service.d.ts +34 -0
  4. package/dist/ai-provider.service.js +311 -0
  5. package/dist/ai-provider.service.js.map +1 -0
  6. package/dist/ai.service.d.ts +17 -0
  7. package/dist/ai.service.js +51 -0
  8. package/dist/ai.service.js.map +1 -0
  9. package/dist/app.module.d.ts +5 -0
  10. package/dist/app.module.js +165 -0
  11. package/dist/app.module.js.map +1 -0
  12. package/dist/cli/agent.handler.d.ts +2 -0
  13. package/dist/cli/agent.handler.js +186 -0
  14. package/dist/cli/agent.handler.js.map +1 -0
  15. package/dist/cli/builtin.handler.d.ts +3 -0
  16. package/dist/cli/builtin.handler.js +110 -0
  17. package/dist/cli/builtin.handler.js.map +1 -0
  18. package/dist/cli/chat.handler.d.ts +20 -0
  19. package/dist/cli/chat.handler.js +446 -0
  20. package/dist/cli/chat.handler.js.map +1 -0
  21. package/dist/cli/cli.handler.d.ts +4 -0
  22. package/dist/cli/cli.handler.js +119 -0
  23. package/dist/cli/cli.handler.js.map +1 -0
  24. package/dist/cli/doctor.handler.d.ts +38 -0
  25. package/dist/cli/doctor.handler.js +495 -0
  26. package/dist/cli/doctor.handler.js.map +1 -0
  27. package/dist/cli/execute.handler.d.ts +2 -0
  28. package/dist/cli/execute.handler.js +321 -0
  29. package/dist/cli/execute.handler.js.map +1 -0
  30. package/dist/cli/help.handler.d.ts +2 -0
  31. package/dist/cli/help.handler.js +10 -0
  32. package/dist/cli/help.handler.js.map +1 -0
  33. package/dist/cli/init.handler.d.ts +26 -0
  34. package/dist/cli/init.handler.js +450 -0
  35. package/dist/cli/init.handler.js.map +1 -0
  36. package/dist/cli/log.handler.d.ts +2 -0
  37. package/dist/cli/log.handler.js +69 -0
  38. package/dist/cli/log.handler.js.map +1 -0
  39. package/dist/cli/mcp.handler.d.ts +3 -0
  40. package/dist/cli/mcp.handler.js +121 -0
  41. package/dist/cli/mcp.handler.js.map +1 -0
  42. package/dist/cli/query.handler.d.ts +2 -0
  43. package/dist/cli/query.handler.js +379 -0
  44. package/dist/cli/query.handler.js.map +1 -0
  45. package/dist/cli/skill.handler.d.ts +2 -0
  46. package/dist/cli/skill.handler.js +252 -0
  47. package/dist/cli/skill.handler.js.map +1 -0
  48. package/dist/cli/slack-files.handler.d.ts +2 -0
  49. package/dist/cli/slack-files.handler.js +291 -0
  50. package/dist/cli/slack-files.handler.js.map +1 -0
  51. package/dist/cli/template.handler.d.ts +2 -0
  52. package/dist/cli/template.handler.js +188 -0
  53. package/dist/cli/template.handler.js.map +1 -0
  54. package/dist/cli/templates.handler.d.ts +2 -0
  55. package/dist/cli/templates.handler.js +100 -0
  56. package/dist/cli/templates.handler.js.map +1 -0
  57. package/dist/cli-options.d.ts +39 -0
  58. package/dist/cli-options.js +355 -0
  59. package/dist/cli-options.js.map +1 -0
  60. package/dist/commands/agent.js +23 -23
  61. package/dist/commands/init.js +36 -28
  62. package/dist/commands/resolve-prompt.d.ts +4 -4
  63. package/dist/commands/resolve-prompt.js +5 -5
  64. package/dist/config/timeout.config.d.ts +14 -0
  65. package/dist/config/timeout.config.js +34 -0
  66. package/dist/config/timeout.config.js.map +1 -0
  67. package/dist/conversation/base-conversation-history.provider.d.ts +12 -0
  68. package/dist/conversation/base-conversation-history.provider.js +45 -0
  69. package/dist/conversation/base-conversation-history.provider.js.map +1 -0
  70. package/dist/conversation/cli-conversation-history.provider.d.ts +16 -0
  71. package/dist/conversation/cli-conversation-history.provider.js +111 -0
  72. package/dist/conversation/cli-conversation-history.provider.js.map +1 -0
  73. package/dist/conversation/conversation-provider.factory.d.ts +10 -0
  74. package/dist/conversation/conversation-provider.factory.js +50 -0
  75. package/dist/conversation/conversation-provider.factory.js.map +1 -0
  76. package/dist/conversation/index.d.ts +6 -0
  77. package/dist/conversation/index.js +27 -0
  78. package/dist/conversation/index.js.map +1 -0
  79. package/dist/conversation/slack-conversation-history.provider.d.ts +29 -0
  80. package/dist/conversation/slack-conversation-history.provider.js +302 -0
  81. package/dist/conversation/slack-conversation-history.provider.js.map +1 -0
  82. package/dist/crewx.tool.d.ts +359 -0
  83. package/dist/crewx.tool.js +2501 -0
  84. package/dist/crewx.tool.js.map +1 -0
  85. package/dist/crewx.tool.spec.d.ts +1 -0
  86. package/dist/crewx.tool.spec.js +158 -0
  87. package/dist/crewx.tool.spec.js.map +1 -0
  88. package/dist/guards/bearer-auth.guard.d.ts +7 -0
  89. package/dist/guards/bearer-auth.guard.js +44 -0
  90. package/dist/guards/bearer-auth.guard.js.map +1 -0
  91. package/dist/health.controller.d.ts +6 -0
  92. package/dist/health.controller.js +32 -0
  93. package/dist/health.controller.js.map +1 -0
  94. package/dist/main.js +72 -71
  95. package/dist/main.js.map +1 -0
  96. package/dist/mcp.controller.d.ts +8 -0
  97. package/dist/mcp.controller.js +62 -0
  98. package/dist/mcp.controller.js.map +1 -0
  99. package/dist/package.json +3 -0
  100. package/dist/providers/dynamic-provider.factory.d.ts +15 -0
  101. package/dist/providers/dynamic-provider.factory.js +133 -0
  102. package/dist/providers/dynamic-provider.factory.js.map +1 -0
  103. package/dist/providers/logger.adapter.d.ts +6 -0
  104. package/dist/providers/logger.adapter.js +102 -0
  105. package/dist/providers/logger.adapter.js.map +1 -0
  106. package/dist/services/agent-loader.service.d.ts +35 -0
  107. package/dist/services/agent-loader.service.js +622 -0
  108. package/dist/services/agent-loader.service.js.map +1 -0
  109. package/dist/services/auth.service.d.ts +9 -0
  110. package/dist/services/auth.service.js +47 -0
  111. package/dist/services/auth.service.js.map +1 -0
  112. package/dist/services/config-validator.service.d.ts +29 -0
  113. package/dist/services/config-validator.service.js +483 -0
  114. package/dist/services/config-validator.service.js.map +1 -0
  115. package/dist/services/config.service.d.ts +45 -0
  116. package/dist/services/config.service.js +352 -0
  117. package/dist/services/config.service.js.map +1 -0
  118. package/dist/services/document-loader.service.d.ts +21 -0
  119. package/dist/services/document-loader.service.js +156 -0
  120. package/dist/services/document-loader.service.js.map +1 -0
  121. package/dist/services/help.service.d.ts +5 -0
  122. package/dist/services/help.service.js +139 -0
  123. package/dist/services/help.service.js.map +1 -0
  124. package/dist/services/intelligent-compression.service.d.ts +20 -0
  125. package/dist/services/intelligent-compression.service.js +179 -0
  126. package/dist/services/intelligent-compression.service.js.map +1 -0
  127. package/dist/services/mcp-client.service.d.ts +26 -0
  128. package/dist/services/mcp-client.service.js +81 -0
  129. package/dist/services/mcp-client.service.js.map +1 -0
  130. package/dist/services/parallel-processing.service.d.ts +108 -0
  131. package/dist/services/parallel-processing.service.js +333 -0
  132. package/dist/services/parallel-processing.service.js.map +1 -0
  133. package/dist/services/provider-bridge.service.d.ts +35 -0
  134. package/dist/services/provider-bridge.service.js +224 -0
  135. package/dist/services/provider-bridge.service.js.map +1 -0
  136. package/dist/services/remote-agent.service.d.ts +50 -0
  137. package/dist/services/remote-agent.service.js +171 -0
  138. package/dist/services/remote-agent.service.js.map +1 -0
  139. package/dist/services/result-formatter.service.d.ts +27 -0
  140. package/dist/services/result-formatter.service.js +126 -0
  141. package/dist/services/result-formatter.service.js.map +1 -0
  142. package/dist/services/skill-loader.service.d.ts +15 -0
  143. package/dist/services/skill-loader.service.js +278 -0
  144. package/dist/services/skill-loader.service.js.map +1 -0
  145. package/dist/services/skill.service.d.ts +67 -0
  146. package/dist/services/skill.service.js +670 -0
  147. package/dist/services/skill.service.js.map +1 -0
  148. package/dist/services/skill.service.spec.d.ts +1 -0
  149. package/dist/services/skill.service.spec.js +35 -0
  150. package/dist/services/skill.service.spec.js.map +1 -0
  151. package/dist/services/task-management.service.d.ts +65 -0
  152. package/dist/services/task-management.service.js +288 -0
  153. package/dist/services/task-management.service.js.map +1 -0
  154. package/dist/services/template.service.d.ts +61 -0
  155. package/dist/services/template.service.js +416 -0
  156. package/dist/services/template.service.js.map +1 -0
  157. package/dist/services/tool-call.service.d.ts +19 -0
  158. package/dist/services/tool-call.service.js +1061 -0
  159. package/dist/services/tool-call.service.js.map +1 -0
  160. package/dist/services/tracing.service.d.ts +200 -0
  161. package/dist/services/tracing.service.js +1290 -0
  162. package/dist/services/tracing.service.js.map +1 -0
  163. package/dist/slack/formatters/message.formatter.d.ts +32 -0
  164. package/dist/slack/formatters/message.formatter.js +352 -0
  165. package/dist/slack/formatters/message.formatter.js.map +1 -0
  166. package/dist/slack/services/slack-file-download.service.d.ts +58 -0
  167. package/dist/slack/services/slack-file-download.service.js +558 -0
  168. package/dist/slack/services/slack-file-download.service.js.map +1 -0
  169. package/dist/slack/slack-bot.d.ts +33 -0
  170. package/dist/slack/slack-bot.js +567 -0
  171. package/dist/slack/slack-bot.js.map +1 -0
  172. package/dist/stderr.logger.d.ts +8 -0
  173. package/dist/stderr.logger.js +26 -0
  174. package/dist/stderr.logger.js.map +1 -0
  175. package/dist/types/usage.types.d.ts +107 -0
  176. package/dist/types/usage.types.js +3 -0
  177. package/dist/types/usage.types.js.map +1 -0
  178. package/dist/utils/config-utils.d.ts +15 -0
  179. package/dist/utils/config-utils.js +69 -0
  180. package/dist/utils/config-utils.js.map +1 -0
  181. package/dist/utils/extract-text.d.ts +1 -0
  182. package/dist/utils/extract-text.js +15 -0
  183. package/dist/utils/extract-text.js.map +1 -0
  184. package/dist/utils/mcp-installer.d.ts +20 -0
  185. package/dist/utils/mcp-installer.js +199 -0
  186. package/dist/utils/mcp-installer.js.map +1 -0
  187. package/dist/utils/project-hash.d.ts +6 -0
  188. package/dist/utils/project-hash.js +70 -0
  189. package/dist/utils/project-hash.js.map +1 -0
  190. package/dist/utils/simple-security.d.ts +3 -0
  191. package/dist/utils/simple-security.js +20 -0
  192. package/dist/utils/simple-security.js.map +1 -0
  193. package/dist/utils/stdin-utils.d.ts +6 -0
  194. package/dist/utils/stdin-utils.js +109 -0
  195. package/dist/utils/stdin-utils.js.map +1 -0
  196. package/dist/utils/template-processor.d.ts +4 -0
  197. package/dist/utils/template-processor.js +266 -0
  198. package/dist/utils/template-processor.js.map +1 -0
  199. package/dist/utils/terminal-message-formatter.d.ts +23 -0
  200. package/dist/utils/terminal-message-formatter.js +136 -0
  201. package/dist/utils/terminal-message-formatter.js.map +1 -0
  202. package/dist/version.d.ts +1 -0
  203. package/dist/version.js +17 -0
  204. package/dist/version.js.map +1 -0
  205. package/dist/workspace.service.d.ts +44 -0
  206. package/dist/workspace.service.js +299 -0
  207. package/dist/workspace.service.js.map +1 -0
  208. package/package.json +18 -18
  209. package/dist/commands/task-db.d.ts +0 -33
  210. package/dist/commands/task-db.js +0 -107
  211. package/dist/examples/deny-secrets-plugin.d.ts +0 -22
  212. package/dist/examples/deny-secrets-plugin.js +0 -40
  213. package/dist/plugins/examples/echo-hook.d.ts +0 -24
  214. package/dist/plugins/examples/echo-hook.js +0 -60
  215. package/dist/plugins/examples/verify-echo-hook.d.ts +0 -8
  216. package/dist/plugins/examples/verify-echo-hook.js +0 -47
  217. package/dist/plugins/sqlite-tracing.d.ts +0 -11
  218. package/dist/plugins/sqlite-tracing.js +0 -19
  219. package/dist/repository/workspace.repository.d.ts +0 -26
  220. package/dist/repository/workspace.repository.js +0 -111
  221. package/dist/schema/tasks.d.ts +0 -7
  222. package/dist/schema/tasks.js +0 -48
@@ -0,0 +1,188 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.handleTemplate = handleTemplate;
4
+ const common_1 = require("@nestjs/common");
5
+ const template_service_1 = require("../services/template.service");
6
+ const logger = new common_1.Logger('TemplateHandler');
7
+ async function handleTemplate(app, args) {
8
+ logger.log('Template command received');
9
+ try {
10
+ const templateService = app.get(template_service_1.TemplateService);
11
+ const subCommand = process.argv[3];
12
+ switch (subCommand) {
13
+ case 'init':
14
+ await handleTemplateInit(templateService, args);
15
+ break;
16
+ case 'list':
17
+ case 'ls':
18
+ await handleTemplateList(templateService);
19
+ break;
20
+ case 'show':
21
+ await handleTemplateShow(templateService, args);
22
+ break;
23
+ default:
24
+ showTemplateHelp();
25
+ break;
26
+ }
27
+ }
28
+ catch (error) {
29
+ const errorMessage = error instanceof Error ? error.message : String(error);
30
+ console.error(`\nāŒ Template command failed:\n${errorMessage}\n`);
31
+ logger.error(`Template command failed: ${errorMessage}`);
32
+ process.exit(1);
33
+ }
34
+ }
35
+ async function handleTemplateInit(templateService, args) {
36
+ const templateName = process.argv[4];
37
+ if (!templateName) {
38
+ console.error('\nāŒ Error: Template name is required\n');
39
+ console.log('Usage: crewx template init <template-name> [--force]\n');
40
+ console.log('Options:');
41
+ console.log(' --force Overwrite existing files\n');
42
+ console.log('Example:');
43
+ console.log(' mkdir my-project && cd my-project');
44
+ console.log(' crewx template init wbs-automation\n');
45
+ process.exit(1);
46
+ }
47
+ const force = process.argv.includes('--force');
48
+ const repo = process.env.CREWX_TEMPLATE_REPO || 'https://github.com/sowonlabs/crewx-templates';
49
+ console.log(`\nšŸ“¦ Downloading template: ${templateName}`);
50
+ console.log(`šŸ“‹ Repository: ${repo}`);
51
+ if (force) {
52
+ console.log(`āš ļø Force mode: Existing files will be overwritten`);
53
+ }
54
+ console.log('');
55
+ const result = await templateService.scaffoldProject(templateName, process.cwd(), force);
56
+ console.log(`\nšŸ“Š Summary:`);
57
+ if (result.created > 0) {
58
+ console.log(` Created: ${result.created} file${result.created > 1 ? 's' : ''}`);
59
+ }
60
+ if (result.skipped > 0) {
61
+ console.log(` Skipped: ${result.skipped} file${result.skipped > 1 ? 's' : ''}`);
62
+ }
63
+ if (result.skipped > 0 && !force) {
64
+ console.log(`\nā„¹ļø Some files were skipped. Use --force to overwrite existing files.`);
65
+ }
66
+ console.log(`\nāœ… Template initialized successfully!\n`);
67
+ console.log('Next steps:');
68
+ console.log(' 1. Review the generated files (especially crewx.yaml)');
69
+ console.log(' 2. Configure your agents and settings');
70
+ console.log(' 3. Start using your CrewX project\n');
71
+ console.log('Environment variable (optional):');
72
+ console.log(' export CREWX_TEMPLATE_REPO=https://github.com/your-org/your-templates');
73
+ console.log(' # Use this to download templates from your own repository\n');
74
+ }
75
+ async function handleTemplateList(templateService) {
76
+ const repo = process.env.CREWX_TEMPLATE_REPO || 'https://github.com/sowonlabs/crewx-templates';
77
+ console.log(`\nšŸ“¦ Template Repository: ${repo}\n`);
78
+ const templates = await templateService.fetchTemplateList();
79
+ if (!templates.length) {
80
+ console.log('āš ļø No templates found in templates.json or the repository is unreachable.');
81
+ console.log('Add entries to templates.json or check your CREWX_TEMPLATE_REPO setting.\n');
82
+ }
83
+ else {
84
+ const grouped = new Map();
85
+ for (const template of templates) {
86
+ const category = template.category || 'General';
87
+ const list = grouped.get(category) || [];
88
+ list.push(template);
89
+ grouped.set(category, list);
90
+ }
91
+ const longestName = templates.reduce((max, template) => Math.max(max, (template.id || template.name || '').length), 0);
92
+ const nameWidth = Math.max(longestName, 18);
93
+ console.log('Available templates:\n');
94
+ for (const category of [...grouped.keys()].sort((a, b) => a.localeCompare(b))) {
95
+ console.log(`${category}:`);
96
+ const entries = grouped.get(category) || [];
97
+ entries
98
+ .sort((a, b) => (a.id || a.name || '').localeCompare(b.id || b.name || ''))
99
+ .forEach((template) => {
100
+ const name = (template.id || template.name || '').padEnd(nameWidth, ' ');
101
+ const description = template.description || 'No description provided';
102
+ console.log(` • ${name} - ${description}`);
103
+ });
104
+ console.log('');
105
+ }
106
+ }
107
+ console.log('Usage:');
108
+ console.log(' mkdir my-project && cd my-project');
109
+ console.log(' crewx template init <template-name>\n');
110
+ console.log('To use your own template repository:');
111
+ console.log(' export CREWX_TEMPLATE_REPO=https://github.com/your-org/your-templates\n');
112
+ }
113
+ async function handleTemplateShow(templateService, args) {
114
+ const templateName = process.argv[4];
115
+ if (!templateName) {
116
+ console.error('\nāŒ Error: Template name is required\n');
117
+ console.log('Usage: crewx template show <template-name>\n');
118
+ process.exit(1);
119
+ }
120
+ const templates = await templateService.fetchTemplateList();
121
+ const normalized = templateName.toLowerCase();
122
+ const template = templates.find((entry) => (entry.id || entry.name || '').toLowerCase() === normalized);
123
+ if (!template) {
124
+ console.log(`\nāš ļø Template "${templateName}" not found in templates.json.`);
125
+ console.log('Use "crewx template list" to see available templates.\n');
126
+ return;
127
+ }
128
+ const repo = template.repo || process.env.CREWX_TEMPLATE_REPO || 'https://github.com/sowonlabs/crewx-templates';
129
+ console.log(`\nšŸ“¦ Template: ${template.displayName || template.id || template.name}`);
130
+ console.log(`ID: ${template.id || template.name}`);
131
+ console.log(`Repository: ${repo}`);
132
+ if (template.category) {
133
+ console.log(`Category: ${template.category}`);
134
+ }
135
+ if (template.tags?.length) {
136
+ console.log(`Tags: ${template.tags.join(', ')}`);
137
+ }
138
+ console.log('');
139
+ if (template.description) {
140
+ console.log('Description:');
141
+ console.log(` ${template.description}\n`);
142
+ }
143
+ if (template.readme) {
144
+ console.log('Documentation:');
145
+ console.log(` ${template.readme}\n`);
146
+ }
147
+ console.log('To initialize:');
148
+ console.log(` mkdir my-project && cd my-project`);
149
+ console.log(` crewx template init ${template.id || template.name}\n`);
150
+ }
151
+ function showTemplateHelp() {
152
+ console.log(`
153
+ šŸ“¦ CrewX Template Manager
154
+
155
+ Download and scaffold project templates from Git repositories.
156
+
157
+ Available commands:
158
+ crewx template init <name> [--force] - Download and initialize a template
159
+ crewx template list - List available templates
160
+ crewx template ls - Alias for list
161
+ crewx template show <name> - Show template details
162
+
163
+ Options:
164
+ --force Overwrite existing files (default: skip existing files)
165
+
166
+ Templates are downloaded from:
167
+ ${process.env.CREWX_TEMPLATE_REPO || 'https://github.com/sowonlabs/crewx-templates'}
168
+
169
+ Examples:
170
+ # Initialize a new WBS automation project
171
+ mkdir my-wbs-bot && cd my-wbs-bot
172
+ crewx template init wbs-automation
173
+
174
+ # Overwrite existing files
175
+ crewx template init wbs-automation --force
176
+
177
+ # List available templates
178
+ crewx template list
179
+
180
+ # Show template details
181
+ crewx template show wbs-automation
182
+
183
+ Environment variable (optional):
184
+ export CREWX_TEMPLATE_REPO=https://github.com/your-org/your-templates
185
+ # Download templates from your own repository (must be publicly accessible)
186
+ `);
187
+ }
188
+ //# sourceMappingURL=template.handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"template.handler.js","sourceRoot":"","sources":["../../src/cli/template.handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { CliOptions } from '../cli-options';
2
+ export declare function handleTemplates(app: any, args: CliOptions): Promise<void>;
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.handleTemplates = handleTemplates;
4
+ const common_1 = require("@nestjs/common");
5
+ const template_service_1 = require("../services/template.service");
6
+ const logger = new common_1.Logger('TemplatesHandler');
7
+ async function handleTemplates(app, args) {
8
+ logger.log('Templates command received');
9
+ try {
10
+ const templateService = app.get(template_service_1.TemplateService);
11
+ const subCommand = process.argv[3];
12
+ switch (subCommand) {
13
+ case 'list':
14
+ await handleTemplatesList(templateService);
15
+ break;
16
+ case 'update':
17
+ await handleTemplatesUpdate(templateService);
18
+ break;
19
+ default:
20
+ console.log(`
21
+ šŸ“¦ **CrewX Template Manager**
22
+
23
+ Available commands:
24
+ crewx templates list - List available templates from GitHub
25
+ crewx templates update - Clear cache and re-download templates
26
+
27
+ Templates are downloaded from:
28
+ https://github.com/sowonlabs/crewx/tree/main/templates
29
+
30
+ Examples:
31
+ # List available templates
32
+ crewx templates list
33
+
34
+ # Update template cache
35
+ crewx templates update
36
+
37
+ # Use a specific template during init
38
+ crewx init --template minimal
39
+ crewx init --template development --version v0.1.8
40
+ `);
41
+ break;
42
+ }
43
+ }
44
+ catch (error) {
45
+ const errorMessage = error instanceof Error ? error.message : String(error);
46
+ console.error(`āŒ Templates command failed: ${errorMessage}`);
47
+ logger.error(`Templates command failed: ${errorMessage}`);
48
+ process.exit(1);
49
+ }
50
+ }
51
+ async function handleTemplatesList(templateService) {
52
+ console.log('šŸ“¦ Fetching available templates...\n');
53
+ try {
54
+ const versions = await templateService.getVersions();
55
+ if (!versions) {
56
+ console.log('āš ļø Could not fetch template information from GitHub.');
57
+ console.log('Using local templates only.\n');
58
+ console.log('Available templates:');
59
+ console.log(' • default - Full setup with @crewx assistant');
60
+ console.log(' • minimal - Basic agents only (claude, gemini, copilot)');
61
+ return;
62
+ }
63
+ console.log('āœ… **Available Templates**\n');
64
+ console.log(`Latest version: ${versions.latest}\n`);
65
+ for (const [versionTag, versionInfo] of Object.entries(versions.versions)) {
66
+ console.log(`šŸ“Œ **${versionTag}** (${versionInfo.released})`);
67
+ if (versionInfo.description) {
68
+ console.log(` ${versionInfo.description}`);
69
+ }
70
+ if (versionInfo.minCrewxVersion) {
71
+ console.log(` Requires: CrewX >= ${versionInfo.minCrewxVersion}`);
72
+ }
73
+ console.log(` Templates: ${versionInfo.templates.join(', ')}`);
74
+ console.log('');
75
+ }
76
+ console.log('**Usage:**');
77
+ console.log(' crewx init --template <name> --version <version>');
78
+ console.log(' crewx init --template minimal # Use latest version');
79
+ console.log(' crewx init --template default --version v0.1.8\n');
80
+ }
81
+ catch (error) {
82
+ console.error(`āŒ Failed to list templates: ${error?.message || error}`);
83
+ console.log('\nāš ļø Using local templates as fallback:');
84
+ console.log(' • default - Full setup with @crewx assistant');
85
+ console.log(' • minimal - Basic agents only (claude, gemini, copilot)\n');
86
+ }
87
+ }
88
+ async function handleTemplatesUpdate(templateService) {
89
+ console.log('šŸ”„ Clearing template cache...\n');
90
+ try {
91
+ await templateService.clearCache();
92
+ console.log('āœ… Template cache cleared successfully!');
93
+ console.log('\nNext time you run `crewx init`, templates will be freshly downloaded from GitHub.\n');
94
+ }
95
+ catch (error) {
96
+ console.error(`āŒ Failed to clear cache: ${error?.message || error}`);
97
+ process.exit(1);
98
+ }
99
+ }
100
+ //# sourceMappingURL=templates.handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templates.handler.js","sourceRoot":"","sources":["../../src/cli/templates.handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ export interface CliOptions {
2
+ install: boolean;
3
+ log: boolean;
4
+ protocol: 'STDIO' | 'HTTP';
5
+ host?: string;
6
+ port: number;
7
+ allowTool: string[];
8
+ raw: boolean;
9
+ enableIntelligentCompression: boolean;
10
+ thread?: string;
11
+ command?: string;
12
+ subcommand?: string;
13
+ query?: string | string[];
14
+ execute?: string | string[];
15
+ doctor?: boolean;
16
+ logCommand?: boolean;
17
+ logAction?: string;
18
+ config?: string;
19
+ provider?: string;
20
+ providerConfig?: string;
21
+ template?: string;
22
+ templateVersion?: string;
23
+ force?: boolean;
24
+ templateSubcommand?: string;
25
+ templateProjectName?: string;
26
+ templateName?: string;
27
+ skillAction?: string;
28
+ skillTarget?: string;
29
+ skillParams?: string[];
30
+ slackAgent?: string;
31
+ slackMode?: 'query' | 'execute';
32
+ slackMentionOnly?: boolean;
33
+ http?: boolean;
34
+ key?: string;
35
+ mcpToolName?: string;
36
+ mcpParams?: string;
37
+ rawArgs?: string[];
38
+ }
39
+ export declare function parseCliOptions(): CliOptions;