@codemieai/code 0.0.36 → 0.0.38

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 (233) hide show
  1. package/README.md +33 -0
  2. package/dist/agents/codemie-code/tools/assistant-invocation.d.ts.map +1 -1
  3. package/dist/agents/codemie-code/tools/assistant-invocation.js +2 -2
  4. package/dist/agents/codemie-code/tools/assistant-invocation.js.map +1 -1
  5. package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -1
  6. package/dist/agents/core/BaseAgentAdapter.js +23 -9
  7. package/dist/agents/core/BaseAgentAdapter.js.map +1 -1
  8. package/dist/agents/core/extension/BaseExtensionInstaller.d.ts.map +1 -1
  9. package/dist/agents/core/extension/BaseExtensionInstaller.js +11 -4
  10. package/dist/agents/core/extension/BaseExtensionInstaller.js.map +1 -1
  11. package/dist/agents/core/session/BaseProcessor.d.ts +22 -1
  12. package/dist/agents/core/session/BaseProcessor.d.ts.map +1 -1
  13. package/dist/agents/plugins/claude/claude-acp.plugin.d.ts +5 -0
  14. package/dist/agents/plugins/claude/claude-acp.plugin.d.ts.map +1 -1
  15. package/dist/agents/plugins/claude/claude-acp.plugin.js +12 -2
  16. package/dist/agents/plugins/claude/claude-acp.plugin.js.map +1 -1
  17. package/dist/agents/plugins/claude/claude.plugin.d.ts +11 -0
  18. package/dist/agents/plugins/claude/claude.plugin.d.ts.map +1 -1
  19. package/dist/agents/plugins/claude/claude.plugin.js +59 -2
  20. package/dist/agents/plugins/claude/claude.plugin.js.map +1 -1
  21. package/dist/agents/plugins/claude/claude.session.d.ts +5 -0
  22. package/dist/agents/plugins/claude/claude.session.d.ts.map +1 -1
  23. package/dist/agents/plugins/claude/claude.session.js +101 -2
  24. package/dist/agents/plugins/claude/claude.session.js.map +1 -1
  25. package/dist/agents/plugins/claude/plugin/.claude-plugin/plugin.json +1 -1
  26. package/dist/agents/plugins/claude/plugin/commands/README.md +103 -22
  27. package/dist/agents/plugins/claude/plugin/commands/memory-refresh.md +329 -18
  28. package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.d.ts +0 -1
  29. package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.d.ts.map +1 -1
  30. package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.js +13 -19
  31. package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.js.map +1 -1
  32. package/dist/agents/plugins/claude/session/processors/claude.metrics-processor.d.ts.map +1 -1
  33. package/dist/agents/plugins/claude/session/processors/claude.metrics-processor.js +29 -4
  34. package/dist/agents/plugins/claude/session/processors/claude.metrics-processor.js.map +1 -1
  35. package/dist/cli/commands/assistants/chat.js +9 -6
  36. package/dist/cli/commands/assistants/chat.js.map +1 -1
  37. package/dist/cli/commands/assistants/constants.d.ts +2 -6
  38. package/dist/cli/commands/assistants/constants.d.ts.map +1 -1
  39. package/dist/cli/commands/assistants/constants.js +2 -5
  40. package/dist/cli/commands/assistants/constants.js.map +1 -1
  41. package/dist/cli/commands/assistants/index.d.ts.map +1 -1
  42. package/dist/cli/commands/assistants/index.js +1 -11
  43. package/dist/cli/commands/assistants/index.js.map +1 -1
  44. package/dist/cli/commands/assistants/setup/configuration/actions.d.ts +30 -0
  45. package/dist/cli/commands/assistants/setup/configuration/actions.d.ts.map +1 -0
  46. package/dist/cli/commands/assistants/setup/configuration/actions.js +63 -0
  47. package/dist/cli/commands/assistants/setup/configuration/actions.js.map +1 -0
  48. package/dist/cli/commands/assistants/setup/configuration/constants.d.ts +49 -0
  49. package/dist/cli/commands/assistants/setup/configuration/constants.d.ts.map +1 -0
  50. package/dist/cli/commands/assistants/setup/configuration/constants.js +56 -0
  51. package/dist/cli/commands/assistants/setup/configuration/constants.js.map +1 -0
  52. package/dist/cli/commands/assistants/setup/configuration/index.d.ts +9 -0
  53. package/dist/cli/commands/assistants/setup/configuration/index.d.ts.map +1 -0
  54. package/dist/cli/commands/assistants/setup/configuration/index.js +8 -0
  55. package/dist/cli/commands/assistants/setup/configuration/index.js.map +1 -0
  56. package/dist/cli/commands/assistants/setup/configuration/selection.d.ts +12 -0
  57. package/dist/cli/commands/assistants/setup/configuration/selection.d.ts.map +1 -0
  58. package/dist/cli/commands/assistants/setup/configuration/selection.js +94 -0
  59. package/dist/cli/commands/assistants/setup/configuration/selection.js.map +1 -0
  60. package/dist/cli/commands/assistants/setup/configuration/types.d.ts +22 -0
  61. package/dist/cli/commands/assistants/setup/configuration/types.d.ts.map +1 -0
  62. package/dist/cli/commands/assistants/setup/configuration/types.js +2 -0
  63. package/dist/cli/commands/assistants/setup/configuration/types.js.map +1 -0
  64. package/dist/cli/commands/assistants/setup/configuration/ui.d.ts +9 -0
  65. package/dist/cli/commands/assistants/setup/configuration/ui.d.ts.map +1 -0
  66. package/dist/cli/commands/assistants/setup/configuration/ui.js +86 -0
  67. package/dist/cli/commands/assistants/setup/configuration/ui.js.map +1 -0
  68. package/dist/cli/commands/assistants/setup/constants.d.ts +26 -0
  69. package/dist/cli/commands/assistants/setup/constants.d.ts.map +1 -0
  70. package/dist/cli/commands/assistants/setup/constants.js +21 -0
  71. package/dist/cli/commands/assistants/setup/constants.js.map +1 -0
  72. package/dist/cli/commands/assistants/setup/data.d.ts +30 -0
  73. package/dist/cli/commands/assistants/setup/data.d.ts.map +1 -0
  74. package/dist/cli/commands/assistants/setup/data.js +125 -0
  75. package/dist/cli/commands/assistants/setup/data.js.map +1 -0
  76. package/dist/cli/commands/assistants/setup/generators/claude-agent-generator.d.ts.map +1 -0
  77. package/dist/cli/commands/assistants/{generators → setup/generators}/claude-agent-generator.js +6 -2
  78. package/dist/cli/commands/assistants/setup/generators/claude-agent-generator.js.map +1 -0
  79. package/dist/cli/commands/assistants/setup/generators/claude-skill-generator.d.ts +12 -0
  80. package/dist/cli/commands/assistants/setup/generators/claude-skill-generator.d.ts.map +1 -0
  81. package/dist/cli/commands/assistants/setup/generators/claude-skill-generator.js +94 -0
  82. package/dist/cli/commands/assistants/setup/generators/claude-skill-generator.js.map +1 -0
  83. package/dist/cli/commands/assistants/setup/helpers.d.ts +27 -0
  84. package/dist/cli/commands/assistants/setup/helpers.d.ts.map +1 -0
  85. package/dist/cli/commands/assistants/setup/helpers.js +94 -0
  86. package/dist/cli/commands/assistants/setup/helpers.js.map +1 -0
  87. package/dist/cli/commands/assistants/setup/index.d.ts +17 -0
  88. package/dist/cli/commands/assistants/setup/index.d.ts.map +1 -0
  89. package/dist/cli/commands/assistants/setup/index.js +193 -0
  90. package/dist/cli/commands/assistants/setup/index.js.map +1 -0
  91. package/dist/cli/commands/assistants/setup/manualConfiguration/actions.d.ts +47 -0
  92. package/dist/cli/commands/assistants/setup/manualConfiguration/actions.d.ts.map +1 -0
  93. package/dist/cli/commands/assistants/setup/manualConfiguration/actions.js +140 -0
  94. package/dist/cli/commands/assistants/setup/manualConfiguration/actions.js.map +1 -0
  95. package/dist/cli/commands/assistants/setup/manualConfiguration/constants.d.ts +56 -0
  96. package/dist/cli/commands/assistants/setup/manualConfiguration/constants.d.ts.map +1 -0
  97. package/dist/cli/commands/assistants/setup/manualConfiguration/constants.js +61 -0
  98. package/dist/cli/commands/assistants/setup/manualConfiguration/constants.js.map +1 -0
  99. package/dist/cli/commands/assistants/setup/manualConfiguration/index.d.ts +12 -0
  100. package/dist/cli/commands/assistants/setup/manualConfiguration/index.d.ts.map +1 -0
  101. package/dist/cli/commands/assistants/setup/manualConfiguration/index.js +48 -0
  102. package/dist/cli/commands/assistants/setup/manualConfiguration/index.js.map +1 -0
  103. package/dist/cli/commands/assistants/setup/manualConfiguration/interactive-prompt.d.ts +6 -0
  104. package/dist/cli/commands/assistants/setup/manualConfiguration/interactive-prompt.d.ts.map +1 -0
  105. package/dist/cli/commands/assistants/setup/manualConfiguration/interactive-prompt.js +90 -0
  106. package/dist/cli/commands/assistants/setup/manualConfiguration/interactive-prompt.js.map +1 -0
  107. package/dist/cli/commands/assistants/setup/manualConfiguration/types.d.ts +37 -0
  108. package/dist/cli/commands/assistants/setup/manualConfiguration/types.d.ts.map +1 -0
  109. package/dist/cli/commands/assistants/setup/manualConfiguration/types.js +2 -0
  110. package/dist/cli/commands/assistants/setup/manualConfiguration/types.js.map +1 -0
  111. package/dist/cli/commands/assistants/setup/manualConfiguration/ui.d.ts +6 -0
  112. package/dist/cli/commands/assistants/setup/manualConfiguration/ui.d.ts.map +1 -0
  113. package/dist/cli/commands/assistants/setup/manualConfiguration/ui.js +103 -0
  114. package/dist/cli/commands/assistants/setup/manualConfiguration/ui.js.map +1 -0
  115. package/dist/cli/commands/assistants/setup/selection/actions.d.ts +31 -0
  116. package/dist/cli/commands/assistants/setup/selection/actions.d.ts.map +1 -0
  117. package/dist/cli/commands/assistants/setup/selection/actions.js +321 -0
  118. package/dist/cli/commands/assistants/setup/selection/actions.js.map +1 -0
  119. package/dist/cli/commands/assistants/setup/selection/constants.d.ts +79 -0
  120. package/dist/cli/commands/assistants/setup/selection/constants.d.ts.map +1 -0
  121. package/dist/cli/commands/assistants/setup/selection/constants.js +90 -0
  122. package/dist/cli/commands/assistants/setup/selection/constants.js.map +1 -0
  123. package/dist/cli/commands/assistants/setup/selection/index.d.ts +25 -0
  124. package/dist/cli/commands/assistants/setup/selection/index.d.ts.map +1 -0
  125. package/dist/cli/commands/assistants/setup/selection/index.js +127 -0
  126. package/dist/cli/commands/assistants/setup/selection/index.js.map +1 -0
  127. package/dist/cli/commands/assistants/setup/selection/interactive-prompt.d.ts +20 -0
  128. package/dist/cli/commands/assistants/setup/selection/interactive-prompt.d.ts.map +1 -0
  129. package/dist/cli/commands/assistants/setup/selection/interactive-prompt.js +328 -0
  130. package/dist/cli/commands/assistants/setup/selection/interactive-prompt.js.map +1 -0
  131. package/dist/cli/commands/assistants/setup/selection/types.d.ts +27 -0
  132. package/dist/cli/commands/assistants/setup/selection/types.d.ts.map +1 -0
  133. package/dist/cli/commands/assistants/setup/selection/types.js +2 -0
  134. package/dist/cli/commands/assistants/setup/selection/types.js.map +1 -0
  135. package/dist/cli/commands/assistants/setup/selection/ui.d.ts +11 -0
  136. package/dist/cli/commands/assistants/setup/selection/ui.d.ts.map +1 -0
  137. package/dist/cli/commands/assistants/setup/selection/ui.js +189 -0
  138. package/dist/cli/commands/assistants/setup/selection/ui.js.map +1 -0
  139. package/dist/cli/commands/assistants/setup/selection/utils.d.ts +36 -0
  140. package/dist/cli/commands/assistants/setup/selection/utils.d.ts.map +1 -0
  141. package/dist/cli/commands/assistants/setup/selection/utils.js +55 -0
  142. package/dist/cli/commands/assistants/setup/selection/utils.js.map +1 -0
  143. package/dist/cli/commands/assistants/setup/summary/index.d.ts +16 -0
  144. package/dist/cli/commands/assistants/setup/summary/index.d.ts.map +1 -0
  145. package/dist/cli/commands/assistants/setup/summary/index.js +48 -0
  146. package/dist/cli/commands/assistants/setup/summary/index.js.map +1 -0
  147. package/dist/cli/commands/hook.d.ts +72 -0
  148. package/dist/cli/commands/hook.d.ts.map +1 -1
  149. package/dist/cli/commands/hook.js +290 -110
  150. package/dist/cli/commands/hook.js.map +1 -1
  151. package/dist/cli/commands/log/cleaner.d.ts +37 -0
  152. package/dist/cli/commands/log/cleaner.d.ts.map +1 -0
  153. package/dist/cli/commands/log/cleaner.js +218 -0
  154. package/dist/cli/commands/log/cleaner.js.map +1 -0
  155. package/dist/cli/commands/log/filter.d.ts +55 -0
  156. package/dist/cli/commands/log/filter.d.ts.map +1 -0
  157. package/dist/cli/commands/log/filter.js +128 -0
  158. package/dist/cli/commands/log/filter.js.map +1 -0
  159. package/dist/cli/commands/log/follower.d.ts +36 -0
  160. package/dist/cli/commands/log/follower.d.ts.map +1 -0
  161. package/dist/cli/commands/log/follower.js +151 -0
  162. package/dist/cli/commands/log/follower.js.map +1 -0
  163. package/dist/cli/commands/log/formatter.d.ts +76 -0
  164. package/dist/cli/commands/log/formatter.d.ts.map +1 -0
  165. package/dist/cli/commands/log/formatter.js +261 -0
  166. package/dist/cli/commands/log/formatter.js.map +1 -0
  167. package/dist/cli/commands/log/index.d.ts +6 -0
  168. package/dist/cli/commands/log/index.d.ts.map +1 -0
  169. package/dist/cli/commands/log/index.js +400 -0
  170. package/dist/cli/commands/log/index.js.map +1 -0
  171. package/dist/cli/commands/log/parser.d.ts +20 -0
  172. package/dist/cli/commands/log/parser.d.ts.map +1 -0
  173. package/dist/cli/commands/log/parser.js +111 -0
  174. package/dist/cli/commands/log/parser.js.map +1 -0
  175. package/dist/cli/commands/log/reader.d.ts +66 -0
  176. package/dist/cli/commands/log/reader.d.ts.map +1 -0
  177. package/dist/cli/commands/log/reader.js +364 -0
  178. package/dist/cli/commands/log/reader.js.map +1 -0
  179. package/dist/cli/commands/log/types.d.ts +100 -0
  180. package/dist/cli/commands/log/types.d.ts.map +1 -0
  181. package/dist/cli/commands/log/types.js +5 -0
  182. package/dist/cli/commands/log/types.js.map +1 -0
  183. package/dist/cli/commands/profile/display.d.ts +1 -0
  184. package/dist/cli/commands/profile/display.d.ts.map +1 -1
  185. package/dist/cli/commands/profile/display.js +10 -2
  186. package/dist/cli/commands/profile/display.js.map +1 -1
  187. package/dist/cli/commands/profile/index.js +58 -22
  188. package/dist/cli/commands/profile/index.js.map +1 -1
  189. package/dist/cli/commands/setup.d.ts.map +1 -1
  190. package/dist/cli/commands/setup.js +143 -24
  191. package/dist/cli/commands/setup.js.map +1 -1
  192. package/dist/cli/index.js +2 -0
  193. package/dist/cli/index.js.map +1 -1
  194. package/dist/env/types.d.ts +10 -1
  195. package/dist/env/types.d.ts.map +1 -1
  196. package/dist/env/types.js.map +1 -1
  197. package/dist/index.d.ts +5 -0
  198. package/dist/index.d.ts.map +1 -1
  199. package/dist/index.js +10 -0
  200. package/dist/index.js.map +1 -1
  201. package/dist/providers/plugins/sso/session/SessionSyncer.d.ts +5 -0
  202. package/dist/providers/plugins/sso/session/SessionSyncer.d.ts.map +1 -1
  203. package/dist/providers/plugins/sso/session/SessionSyncer.js +102 -3
  204. package/dist/providers/plugins/sso/session/SessionSyncer.js.map +1 -1
  205. package/dist/providers/plugins/sso/session/processors/conversations/conversation-sync-processor.d.ts +0 -1
  206. package/dist/providers/plugins/sso/session/processors/conversations/conversation-sync-processor.d.ts.map +1 -1
  207. package/dist/providers/plugins/sso/session/processors/conversations/conversation-sync-processor.js +25 -48
  208. package/dist/providers/plugins/sso/session/processors/conversations/conversation-sync-processor.js.map +1 -1
  209. package/dist/providers/plugins/sso/session/processors/metrics/metrics-sync-processor.d.ts.map +1 -1
  210. package/dist/providers/plugins/sso/session/processors/metrics/metrics-sync-processor.js +8 -34
  211. package/dist/providers/plugins/sso/session/processors/metrics/metrics-sync-processor.js.map +1 -1
  212. package/dist/utils/config.d.ts +35 -8
  213. package/dist/utils/config.d.ts.map +1 -1
  214. package/dist/utils/config.js +243 -33
  215. package/dist/utils/config.js.map +1 -1
  216. package/dist/utils/logger.d.ts +8 -0
  217. package/dist/utils/logger.d.ts.map +1 -1
  218. package/dist/utils/logger.js +42 -0
  219. package/dist/utils/logger.js.map +1 -1
  220. package/dist/utils/native-installer.d.ts +1 -0
  221. package/dist/utils/native-installer.d.ts.map +1 -1
  222. package/dist/utils/native-installer.js +21 -7
  223. package/dist/utils/native-installer.js.map +1 -1
  224. package/package.json +2 -2
  225. package/dist/agents/plugins/claude/plugin/commands/memory-add.md +0 -325
  226. package/dist/agents/plugins/claude/plugin/commands/memory-init.md +0 -18
  227. package/dist/cli/commands/assistants/generators/claude-agent-generator.d.ts.map +0 -1
  228. package/dist/cli/commands/assistants/generators/claude-agent-generator.js.map +0 -1
  229. package/dist/cli/commands/assistants/list.d.ts +0 -11
  230. package/dist/cli/commands/assistants/list.d.ts.map +0 -1
  231. package/dist/cli/commands/assistants/list.js +0 -323
  232. package/dist/cli/commands/assistants/list.js.map +0 -1
  233. /package/dist/cli/commands/assistants/{generators → setup/generators}/claude-agent-generator.d.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/assistants/setup/helpers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAKvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8DAA8D,CAAC;AAGrG,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,YAAY,EAAE,gBAAgB,EAAE,CAAC;CAClC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,WAAW,EAAE,MAAM,EAAE,EACrB,aAAa,EAAE,CAAC,SAAS,GAAG,aAAa,CAAC,EAAE,EAC5C,oBAAoB,EAAE,gBAAgB,EAAE,GACvC,mBAAmB,CAWrB;AAsCD;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,SAAS,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAWpF;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,SAAS,EACpB,IAAI,GAAE,gBAA0C,GAC/C,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAoClC"}
@@ -0,0 +1,94 @@
1
+ /**
2
+ * Registration Operations Module
3
+ *
4
+ * Handles registration/unregistration business logic
5
+ */
6
+ import chalk from 'chalk';
7
+ import ora from 'ora';
8
+ import { logger } from '../../../../utils/logger.js';
9
+ import { MESSAGES } from '../../../../cli/commands/assistants/constants.js';
10
+ import { registerClaudeSubagent, unregisterClaudeSubagent } from '../../../../cli/commands/assistants/setup/generators/claude-agent-generator.js';
11
+ import { registerClaudeSkill, unregisterClaudeSkill } from '../../../../cli/commands/assistants/setup/generators/claude-skill-generator.js';
12
+ import { REGISTRATION_MODE } from '../../../../cli/commands/assistants/setup/manualConfiguration/constants.js';
13
+ /**
14
+ * Determine which assistants to register and unregister
15
+ */
16
+ export function determineChanges(selectedIds, allAssistants, registeredAssistants) {
17
+ const selectedSet = new Set(selectedIds);
18
+ const registeredIds = new Set(registeredAssistants.map(a => a.id));
19
+ const toRegister = allAssistants.filter(a => selectedSet.has(a.id) && !registeredIds.has(a.id));
20
+ const toUnregister = registeredAssistants.filter(a => !selectedSet.has(a.id));
21
+ return { toRegister, toUnregister };
22
+ }
23
+ /**
24
+ * Execute assistant operation with spinner
25
+ */
26
+ async function executeWithSpinner(spinnerMessage, operation, successMessage, errorMessage, onError) {
27
+ const isVerbose = process.env.CODEMIE_DEBUG === 'true';
28
+ const spinner = ora(spinnerMessage).start();
29
+ try {
30
+ const result = await operation();
31
+ if (isVerbose) {
32
+ spinner.succeed(chalk.green(successMessage));
33
+ }
34
+ else {
35
+ spinner.clear();
36
+ spinner.stop();
37
+ }
38
+ return result;
39
+ }
40
+ catch (error) {
41
+ if (isVerbose) {
42
+ spinner.fail(chalk.red(errorMessage));
43
+ }
44
+ else {
45
+ spinner.clear();
46
+ spinner.stop();
47
+ }
48
+ if (onError) {
49
+ onError(error);
50
+ }
51
+ return null;
52
+ }
53
+ }
54
+ /**
55
+ * Unregister an assistant
56
+ * Removes both Claude agent and skill files
57
+ */
58
+ export async function unregisterAssistant(assistant) {
59
+ await executeWithSpinner(MESSAGES.SETUP.SPINNER_UNREGISTERING(chalk.bold(assistant.name)), async () => {
60
+ await unregisterClaudeSubagent(assistant.slug);
61
+ await unregisterClaudeSkill(assistant.slug);
62
+ }, MESSAGES.SETUP.SUCCESS_UNREGISTERED(chalk.bold(assistant.name), chalk.cyan(assistant.slug)), MESSAGES.SETUP.ERROR_UNREGISTER_FAILED(assistant.name), (error) => logger.error('Assistant removal failed', { error, assistantId: assistant.id }));
63
+ }
64
+ /**
65
+ * Register an assistant with specified registration mode
66
+ * @param mode - 'agent' (Claude agent only) or 'skill' (Claude skill only)
67
+ */
68
+ export async function registerAssistant(assistant, mode = REGISTRATION_MODE.AGENT) {
69
+ const modeLabel = mode === REGISTRATION_MODE.SKILL ? 'skill' : 'agent';
70
+ const result = await executeWithSpinner(MESSAGES.SETUP.SPINNER_REGISTERING(chalk.bold(assistant.name)), async () => {
71
+ switch (mode) {
72
+ case REGISTRATION_MODE.AGENT:
73
+ await registerClaudeSubagent(assistant);
74
+ break;
75
+ case REGISTRATION_MODE.SKILL:
76
+ await registerClaudeSkill(assistant);
77
+ break;
78
+ }
79
+ return assistant.slug;
80
+ }, MESSAGES.SETUP.SUCCESS_REGISTERED(chalk.bold(assistant.name), chalk.cyan(`@${assistant.slug}`) + chalk.dim(` as ${modeLabel}`)), MESSAGES.SETUP.ERROR_REGISTER_FAILED(assistant.name), (error) => logger.error('Assistant generation failed', { error, assistantId: assistant.id, mode }));
81
+ if (!result) {
82
+ return null;
83
+ }
84
+ return {
85
+ id: assistant.id,
86
+ name: assistant.name,
87
+ slug: assistant.slug,
88
+ description: assistant.description,
89
+ project: assistant.project,
90
+ registeredAt: new Date().toISOString(),
91
+ registrationMode: mode
92
+ };
93
+ }
94
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../src/cli/commands/assistants/setup/helpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Setup Assistants Command - Orchestration
3
+ *
4
+ * Unified command to view, register, and unregister CodeMie assistants
5
+ */
6
+ import { Command } from 'commander';
7
+ export interface SetupCommandOptions {
8
+ profile?: string;
9
+ project?: string;
10
+ allProjects?: boolean;
11
+ verbose?: boolean;
12
+ }
13
+ /**
14
+ * Create assistants setup command
15
+ */
16
+ export declare function createAssistantsSetupCommand(): Command;
17
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/assistants/setup/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmBpC,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAQD;;GAEG;AACH,wBAAgB,4BAA4B,IAAI,OAAO,CAsBtD"}
@@ -0,0 +1,193 @@
1
+ /**
2
+ * Setup Assistants Command - Orchestration
3
+ *
4
+ * Unified command to view, register, and unregister CodeMie assistants
5
+ */
6
+ import { Command } from 'commander';
7
+ import chalk from 'chalk';
8
+ import { logger } from '../../../../utils/logger.js';
9
+ import { ConfigLoader } from '../../../../utils/config.js';
10
+ import { createErrorContext, formatErrorForUser } from '../../../../utils/errors.js';
11
+ import { MESSAGES, ACTIONS } from '../../../../cli/commands/assistants/constants.js';
12
+ import { getAuthenticatedClient } from '../../../../utils/auth.js';
13
+ import { promptAssistantSelection } from '../../../../cli/commands/assistants/setup/selection/index.js';
14
+ import { determineChanges, registerAssistant, unregisterAssistant } from '../../../../cli/commands/assistants/setup/helpers.js';
15
+ import { createDataFetcher } from '../../../../cli/commands/assistants/setup/data.js';
16
+ import { promptModeSelection, CONFIGURATION_CHOICE } from '../../../../cli/commands/assistants/setup/configuration/index.js';
17
+ import { promptManualConfiguration } from '../../../../cli/commands/assistants/setup/manualConfiguration/index.js';
18
+ import { REGISTRATION_MODE } from '../../../../cli/commands/assistants/setup/manualConfiguration/constants.js';
19
+ import { displaySummary } from '../../../../cli/commands/assistants/setup/summary/index.js';
20
+ import { ACTION_TYPE } from '../../../../cli/commands/assistants/setup/constants.js';
21
+ /**
22
+ * Create assistants setup command
23
+ */
24
+ export function createAssistantsSetupCommand() {
25
+ const command = new Command('setup');
26
+ command
27
+ .description(MESSAGES.SETUP.COMMAND_DESCRIPTION)
28
+ .option('--profile <name>', MESSAGES.SETUP.OPTION_PROFILE)
29
+ .option('--project <project>', MESSAGES.SETUP.OPTION_PROJECT)
30
+ .option('--all-projects', MESSAGES.SETUP.OPTION_ALL_PROJECTS)
31
+ .option('-v, --verbose', MESSAGES.SHARED.OPTION_VERBOSE)
32
+ .action(async (options) => {
33
+ if (options.verbose) {
34
+ enableVerboseLogging();
35
+ }
36
+ try {
37
+ await setupAssistants(options);
38
+ }
39
+ catch (error) {
40
+ handleError(error);
41
+ }
42
+ });
43
+ return command;
44
+ }
45
+ /**
46
+ * Enable verbose debug logging
47
+ */
48
+ function enableVerboseLogging() {
49
+ process.env.CODEMIE_DEBUG = 'true';
50
+ const logFilePath = logger.getLogFilePath();
51
+ if (logFilePath) {
52
+ console.log(chalk.dim(`Debug logs: ${logFilePath}\n`));
53
+ }
54
+ }
55
+ /**
56
+ * Handle command errors
57
+ */
58
+ function handleError(error) {
59
+ const context = createErrorContext(error);
60
+ logger.error('Failed to setup assistants', context);
61
+ console.error(formatErrorForUser(context));
62
+ process.exit(1);
63
+ }
64
+ /**
65
+ * Setup assistants - unified list/register/unregister
66
+ */
67
+ async function setupAssistants(options) {
68
+ // Load config and profile
69
+ const config = await ConfigLoader.load();
70
+ const profileName = options.profile || await ConfigLoader.getActiveProfileName() || 'default';
71
+ logger.debug('Setting up assistants', { profileName, options });
72
+ // Get authenticated client and current registrations
73
+ const client = await getAuthenticatedClient(config);
74
+ const registeredAssistants = config.codemieAssistants || [];
75
+ const registeredIds = new Set(registeredAssistants.map(a => a.id));
76
+ // Prompt user to select assistants
77
+ const { selectedIds, action } = await promptAssistantSelection(registeredIds, config, options, client);
78
+ if (action === ACTIONS.CANCEL) {
79
+ console.log(chalk.dim(MESSAGES.SETUP.NO_CHANGES_MADE));
80
+ return;
81
+ }
82
+ // Fetch full details for selected assistants
83
+ const fetcher = createDataFetcher({ config, client, options });
84
+ const selectedAssistants = await fetcher.fetchAssistantsByIds(selectedIds, []);
85
+ // Configure registration modes (skip if no assistants selected)
86
+ let registrationModes = new Map();
87
+ if (selectedAssistants.length > 0) {
88
+ // Loop to allow going back
89
+ let configurationComplete = false;
90
+ while (!configurationComplete) {
91
+ // Step 1: Show mode selection screen (Subagents, Skills, Manual)
92
+ const { choice, cancelled, back } = await promptModeSelection();
93
+ if (cancelled) {
94
+ console.log(chalk.dim(MESSAGES.SETUP.NO_CHANGES_MADE));
95
+ return;
96
+ }
97
+ if (back) {
98
+ // Go back to selection screen
99
+ return setupAssistants(options);
100
+ }
101
+ // Step 2: Handle choice
102
+ if (choice === CONFIGURATION_CHOICE.SUBAGENTS) { // Bulk register all as agents
103
+ for (const assistant of selectedAssistants) {
104
+ registrationModes.set(assistant.id, REGISTRATION_MODE.AGENT);
105
+ }
106
+ configurationComplete = true;
107
+ }
108
+ else if (choice === CONFIGURATION_CHOICE.SKILLS) { // Bulk register all as skills
109
+ for (const assistant of selectedAssistants) {
110
+ registrationModes.set(assistant.id, REGISTRATION_MODE.SKILL);
111
+ }
112
+ configurationComplete = true;
113
+ }
114
+ else { // Manual configuration - show individual configuration screen
115
+ const { registrationModes: modes, action: configAction } = await promptManualConfiguration(selectedAssistants, registeredIds, registeredAssistants);
116
+ if (configAction === ACTION_TYPE.CANCEL) {
117
+ console.log(chalk.dim(MESSAGES.SETUP.NO_CHANGES_MADE));
118
+ return;
119
+ }
120
+ if (configAction === ACTION_TYPE.BACK) {
121
+ // Go back to configuration mode selection
122
+ continue;
123
+ }
124
+ registrationModes = modes;
125
+ configurationComplete = true;
126
+ }
127
+ }
128
+ }
129
+ // Apply changes and get summary data
130
+ const { newRegistrations, registered, unregistered } = await applyChanges(selectedIds, selectedAssistants, registeredAssistants, registrationModes);
131
+ // Update config
132
+ config.codemieAssistants = newRegistrations;
133
+ await ConfigLoader.saveProfile(profileName, config);
134
+ // Display summary
135
+ displaySummary(registered, unregistered, profileName, config);
136
+ }
137
+ /**
138
+ * Apply registration changes
139
+ * Returns new registrations and lists of what changed
140
+ */
141
+ async function applyChanges(selectedIds, allAssistants, registeredAssistants, registrationModes) {
142
+ // Determine what needs to change
143
+ const { toRegister, toUnregister } = determineChanges(selectedIds, allAssistants, registeredAssistants);
144
+ const selectedSet = new Set(selectedIds);
145
+ const toReregister = registeredAssistants.filter(a => selectedSet.has(a.id));
146
+ if (toRegister.length === 0 && toUnregister.length === 0 && toReregister.length === 0) {
147
+ console.log(chalk.yellow(MESSAGES.SETUP.NO_CHANGES_TO_APPLY));
148
+ return { newRegistrations: registeredAssistants, registered: [], unregistered: [] };
149
+ }
150
+ // Unregister: both removed assistants and those needing re-registration
151
+ const toUnregisterAll = [...toUnregister, ...toReregister];
152
+ for (const assistant of toUnregisterAll) {
153
+ await unregisterAssistant(assistant);
154
+ }
155
+ // Register all selected assistants with their configured modes
156
+ const newRegistrations = [];
157
+ const allToRegister = [...toRegister, ...toReregister];
158
+ for (const assistant of allToRegister) {
159
+ const fullAssistant = getFullAssistant(assistant, allAssistants);
160
+ if (!fullAssistant)
161
+ continue;
162
+ const mode = registrationModes.get(fullAssistant.id) || REGISTRATION_MODE.AGENT;
163
+ const registered = await registerAssistant(fullAssistant, mode);
164
+ if (registered) {
165
+ newRegistrations.push(registered);
166
+ }
167
+ }
168
+ // Return results for summary
169
+ return {
170
+ newRegistrations,
171
+ registered: [...toRegister, ...getFullAssistants(toReregister, allAssistants)],
172
+ unregistered: toUnregister
173
+ };
174
+ }
175
+ /**
176
+ * Get full assistant details from the list
177
+ */
178
+ function getFullAssistant(assistant, allAssistants) {
179
+ // Check if it's already a full Assistant (has registeredAt = it's a CodemieAssistant)
180
+ if ('registeredAt' in assistant) {
181
+ return allAssistants.find(a => a.id === assistant.id) || null;
182
+ }
183
+ return assistant;
184
+ }
185
+ /**
186
+ * Get full assistant details for multiple assistants
187
+ */
188
+ function getFullAssistants(assistants, allAssistants) {
189
+ return assistants
190
+ .map(a => getFullAssistant(a, allAssistants))
191
+ .filter((a) => a !== null);
192
+ }
193
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/cli/commands/assistants/setup/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ import type { ConfigurationState, ConfigurationAction } from './types.js';
2
+ /**
3
+ * Create action handlers with closure over dependencies
4
+ */
5
+ export declare function createActionHandlers(state: ConfigurationState, render: () => void, resolve: (action: ConfigurationAction) => void): {
6
+ /**
7
+ * Handle up arrow
8
+ */
9
+ handleArrowUp(): void;
10
+ /**
11
+ * Handle down arrow
12
+ */
13
+ handleArrowDown(): void;
14
+ /**
15
+ * Handle left arrow
16
+ */
17
+ handleArrowLeft(): void;
18
+ /**
19
+ * Handle right arrow
20
+ */
21
+ handleArrowRight(): void;
22
+ /**
23
+ * Handle space key
24
+ */
25
+ handleSpace(): void;
26
+ /**
27
+ * Handle tab key
28
+ */
29
+ handleTab(): void;
30
+ /**
31
+ * Handle shift+tab key
32
+ */
33
+ handleShiftTab(): void;
34
+ /**
35
+ * Handle enter key
36
+ */
37
+ handleEnter(): void;
38
+ /**
39
+ * Handle back (Esc) - go back to configuration mode selection
40
+ */
41
+ handleBack(): void;
42
+ /**
43
+ * Handle cancel (Ctrl+C)
44
+ */
45
+ handleCancel(): void;
46
+ };
47
+ //# sourceMappingURL=actions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../../../../src/cli/commands/assistants/setup/manualConfiguration/actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAoB,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAoB5F;;GAEG;AACH,wBAAgB,oBAAoB,CACnC,KAAK,EAAE,kBAAkB,EACzB,MAAM,EAAE,MAAM,IAAI,EAClB,OAAO,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI;IAG7C;;OAEG;;IAYH;;OAEG;;IAcH;;OAEG;;IAaH;;OAEG;;IAaH;;OAEG;;IAUH;;OAEG;;IASH;;OAEG;;IASH;;OAEG;;IAWH;;OAEG;;IAKH;;OAEG;;EAKJ"}
@@ -0,0 +1,140 @@
1
+ import { MODE_CYCLE_ORDER } from './constants.js';
2
+ import { ACTION_TYPE } from '../constants.js';
3
+ /**
4
+ * Cycle registration mode forward or backward
5
+ */
6
+ function cycleMode(currentMode, direction) {
7
+ const currentIndex = MODE_CYCLE_ORDER.indexOf(currentMode);
8
+ let nextIndex;
9
+ if (direction === 'forward') {
10
+ nextIndex = (currentIndex + 1) % MODE_CYCLE_ORDER.length;
11
+ }
12
+ else {
13
+ nextIndex = (currentIndex - 1 + MODE_CYCLE_ORDER.length) % MODE_CYCLE_ORDER.length;
14
+ }
15
+ return MODE_CYCLE_ORDER[nextIndex];
16
+ }
17
+ /**
18
+ * Create action handlers with closure over dependencies
19
+ */
20
+ export function createActionHandlers(state, render, resolve) {
21
+ return {
22
+ /**
23
+ * Handle up arrow
24
+ */
25
+ handleArrowUp() {
26
+ if (state.areNavigationButtonsFocused) {
27
+ // Move to last item in list
28
+ state.areNavigationButtonsFocused = false;
29
+ state.cursorIndex = state.registrations.length - 1;
30
+ }
31
+ else if (state.cursorIndex > 0) {
32
+ state.cursorIndex--;
33
+ }
34
+ render();
35
+ },
36
+ /**
37
+ * Handle down arrow
38
+ */
39
+ handleArrowDown() {
40
+ if (!state.areNavigationButtonsFocused) {
41
+ if (state.cursorIndex < state.registrations.length - 1) {
42
+ state.cursorIndex++;
43
+ }
44
+ else {
45
+ // Move to buttons
46
+ state.areNavigationButtonsFocused = true;
47
+ state.focusedButton = ACTION_TYPE.APPLY;
48
+ }
49
+ }
50
+ render();
51
+ },
52
+ /**
53
+ * Handle left arrow
54
+ */
55
+ handleArrowLeft() {
56
+ if (state.areNavigationButtonsFocused) {
57
+ // Toggle between buttons
58
+ state.focusedButton = state.focusedButton === ACTION_TYPE.APPLY ? ACTION_TYPE.CANCEL : ACTION_TYPE.APPLY;
59
+ }
60
+ else {
61
+ // Cycle mode backward
62
+ const registration = state.registrations[state.cursorIndex];
63
+ registration.mode = cycleMode(registration.mode, 'backward');
64
+ }
65
+ render();
66
+ },
67
+ /**
68
+ * Handle right arrow
69
+ */
70
+ handleArrowRight() {
71
+ if (state.areNavigationButtonsFocused) {
72
+ // Toggle between buttons
73
+ state.focusedButton = state.focusedButton === ACTION_TYPE.APPLY ? ACTION_TYPE.CANCEL : ACTION_TYPE.APPLY;
74
+ }
75
+ else {
76
+ // Cycle mode forward
77
+ const registration = state.registrations[state.cursorIndex];
78
+ registration.mode = cycleMode(registration.mode, 'forward');
79
+ }
80
+ render();
81
+ },
82
+ /**
83
+ * Handle space key
84
+ */
85
+ handleSpace() {
86
+ if (!state.areNavigationButtonsFocused) {
87
+ // Cycle mode forward
88
+ const registration = state.registrations[state.cursorIndex];
89
+ registration.mode = cycleMode(registration.mode, 'forward');
90
+ render();
91
+ }
92
+ },
93
+ /**
94
+ * Handle tab key
95
+ */
96
+ handleTab() {
97
+ state.areNavigationButtonsFocused = !state.areNavigationButtonsFocused;
98
+ if (state.areNavigationButtonsFocused) {
99
+ state.focusedButton = ACTION_TYPE.APPLY;
100
+ }
101
+ render();
102
+ },
103
+ /**
104
+ * Handle shift+tab key
105
+ */
106
+ handleShiftTab() {
107
+ state.areNavigationButtonsFocused = !state.areNavigationButtonsFocused;
108
+ if (state.areNavigationButtonsFocused) {
109
+ state.focusedButton = ACTION_TYPE.CANCEL;
110
+ }
111
+ render();
112
+ },
113
+ /**
114
+ * Handle enter key
115
+ */
116
+ handleEnter() {
117
+ if (state.areNavigationButtonsFocused) {
118
+ // Execute focused button
119
+ resolve(state.focusedButton === ACTION_TYPE.APPLY ? ACTION_TYPE.APPLY : ACTION_TYPE.CANCEL);
120
+ }
121
+ else {
122
+ // From list: move to apply button and execute
123
+ resolve(ACTION_TYPE.APPLY);
124
+ }
125
+ },
126
+ /**
127
+ * Handle back (Esc) - go back to configuration mode selection
128
+ */
129
+ handleBack() {
130
+ resolve(ACTION_TYPE.BACK);
131
+ },
132
+ /**
133
+ * Handle cancel (Ctrl+C)
134
+ */
135
+ handleCancel() {
136
+ resolve(ACTION_TYPE.CANCEL);
137
+ },
138
+ };
139
+ }
140
+ //# sourceMappingURL=actions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../../../../src/cli/commands/assistants/setup/manualConfiguration/actions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ import type { RegistrationMode } from './types.js';
2
+ /**
3
+ * Registration mode values
4
+ */
5
+ export declare const REGISTRATION_MODE: {
6
+ readonly AGENT: "agent";
7
+ readonly SKILL: "skill";
8
+ };
9
+ /**
10
+ * ANSI escape codes for terminal control
11
+ */
12
+ export declare const ANSI: {
13
+ readonly CLEAR_SCREEN: "\u001B[2J\u001B[H";
14
+ readonly HIDE_CURSOR: "\u001B[?25l";
15
+ readonly SHOW_CURSOR: "\u001B[?25h";
16
+ readonly CLEAR_LINE: "\u001B[2K";
17
+ };
18
+ /**
19
+ * Key codes for keyboard input
20
+ */
21
+ export declare const KEY: {
22
+ readonly UP: "\u001B[A";
23
+ readonly DOWN: "\u001B[B";
24
+ readonly LEFT: "\u001B[D";
25
+ readonly RIGHT: "\u001B[C";
26
+ readonly ENTER: "\r";
27
+ readonly SPACE: " ";
28
+ readonly TAB: "\t";
29
+ readonly SHIFT_TAB: "\u001B[Z";
30
+ readonly ESC: "\u001B";
31
+ readonly CTRL_C: "\u0003";
32
+ };
33
+ /**
34
+ * Labels for registration modes
35
+ */
36
+ export declare const MODE_LABELS: Record<RegistrationMode, string>;
37
+ /**
38
+ * Order for cycling through modes
39
+ */
40
+ export declare const MODE_CYCLE_ORDER: RegistrationMode[];
41
+ /**
42
+ * UI text strings
43
+ */
44
+ export declare const UI_TEXT: {
45
+ readonly TITLE: "Configure Registration";
46
+ readonly SUBTITLE: "Select registration mode for each assistant:";
47
+ readonly INSTRUCTIONS: "↑↓: Navigate • ←→: Toggle Mode • Enter: Confirm • Esc: Cancel";
48
+ readonly APPLY_BUTTON: "Apply";
49
+ readonly CANCEL_BUTTON: "Cancel";
50
+ readonly NO_CHANGES: "No changes made";
51
+ };
52
+ /**
53
+ * Keep-alive timer interval (ms)
54
+ */
55
+ export declare const KEEP_ALIVE_INTERVAL = 60000;
56
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../../src/cli/commands/assistants/setup/manualConfiguration/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;CAGpB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,IAAI;;;;;CAKP,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,GAAG;;;;;;;;;;;CAWN,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAG/C,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,gBAAgB,EAG9C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO;;;;;;;CAOV,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,mBAAmB,QAAQ,CAAC"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Registration mode values
3
+ */
4
+ export const REGISTRATION_MODE = {
5
+ AGENT: 'agent',
6
+ SKILL: 'skill',
7
+ };
8
+ /**
9
+ * ANSI escape codes for terminal control
10
+ */
11
+ export const ANSI = {
12
+ CLEAR_SCREEN: '\x1B[2J\x1B[H',
13
+ HIDE_CURSOR: '\x1B[?25l',
14
+ SHOW_CURSOR: '\x1B[?25h',
15
+ CLEAR_LINE: '\x1B[2K',
16
+ };
17
+ /**
18
+ * Key codes for keyboard input
19
+ */
20
+ export const KEY = {
21
+ UP: '\x1B[A',
22
+ DOWN: '\x1B[B',
23
+ LEFT: '\x1B[D',
24
+ RIGHT: '\x1B[C',
25
+ ENTER: '\r',
26
+ SPACE: ' ',
27
+ TAB: '\t',
28
+ SHIFT_TAB: '\x1B[Z',
29
+ ESC: '\x1B',
30
+ CTRL_C: '\x03',
31
+ };
32
+ /**
33
+ * Labels for registration modes
34
+ */
35
+ export const MODE_LABELS = {
36
+ [REGISTRATION_MODE.AGENT]: 'Claude Agent',
37
+ [REGISTRATION_MODE.SKILL]: 'Claude Skill',
38
+ };
39
+ /**
40
+ * Order for cycling through modes
41
+ */
42
+ export const MODE_CYCLE_ORDER = [
43
+ REGISTRATION_MODE.AGENT,
44
+ REGISTRATION_MODE.SKILL,
45
+ ];
46
+ /**
47
+ * UI text strings
48
+ */
49
+ export const UI_TEXT = {
50
+ TITLE: 'Configure Registration',
51
+ SUBTITLE: 'Select registration mode for each assistant:',
52
+ INSTRUCTIONS: '↑↓: Navigate • ←→: Toggle Mode • Enter: Confirm • Esc: Cancel',
53
+ APPLY_BUTTON: 'Apply',
54
+ CANCEL_BUTTON: 'Cancel',
55
+ NO_CHANGES: 'No changes made',
56
+ };
57
+ /**
58
+ * Keep-alive timer interval (ms)
59
+ */
60
+ export const KEEP_ALIVE_INTERVAL = 60000;
61
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../src/cli/commands/assistants/setup/manualConfiguration/constants.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAChC,KAAK,EAAE,OAAgB;IACvB,KAAK,EAAE,OAAgB;CACd,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG;IACnB,YAAY,EAAE,eAAe;IAC7B,WAAW,EAAE,WAAW;IACxB,WAAW,EAAE,WAAW;IACxB,UAAU,EAAE,SAAS;CACZ,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,GAAG,GAAG;IAClB,EAAE,EAAE,QAAQ;IACZ,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,QAAQ;IACf,KAAK,EAAE,IAAI;IACX,KAAK,EAAE,GAAG;IACV,GAAG,EAAE,IAAI;IACT,SAAS,EAAE,QAAQ;IACnB,GAAG,EAAE,MAAM;IACX,MAAM,EAAE,MAAM;CACL,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAqC;IAC5D,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,cAAc;IACzC,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,cAAc;CAChC,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAuB;IACnD,iBAAiB,CAAC,KAAK;IACvB,iBAAiB,CAAC,KAAK;CACvB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG;IACtB,KAAK,EAAE,wBAAwB;IAC/B,QAAQ,EAAE,8CAA8C;IACxD,YAAY,EAAE,+DAA+D;IAC7E,YAAY,EAAE,OAAO;IACrB,aAAa,EAAE,QAAQ;IACvB,UAAU,EAAE,iBAAiB;CACpB,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC"}