@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,12 @@
1
+ import type { Assistant } from 'codemie-sdk';
2
+ import type { CodemieAssistant } from '../../../../../env/types.js';
3
+ import type { ConfigurationResult } from './types.js';
4
+ /**
5
+ * Prompt user to manually configure registration modes for selected assistants
6
+ * Returns a map of assistant IDs to registration modes and the action taken
7
+ * @param assistants - All selected assistants (both new and already registered)
8
+ * @param registeredIds - Set of IDs of already registered assistants
9
+ * @param registeredAssistants - Array of registered assistants with saved modes
10
+ */
11
+ export declare function promptManualConfiguration(assistants: Assistant[], registeredIds: Set<string>, registeredAssistants: CodemieAssistant[]): Promise<ConfigurationResult>;
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/cli/commands/assistants/setup/manualConfiguration/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,KAAK,EAAsB,mBAAmB,EAAoB,MAAM,YAAY,CAAC;AAyB5F;;;;;;GAMG;AACH,wBAAsB,yBAAyB,CAC9C,UAAU,EAAE,SAAS,EAAE,EACvB,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,EAC1B,oBAAoB,EAAE,gBAAgB,EAAE,GACtC,OAAO,CAAC,mBAAmB,CAAC,CAyB9B"}
@@ -0,0 +1,48 @@
1
+ import { createInteractivePrompt } from './interactive-prompt.js';
2
+ import { REGISTRATION_MODE } from './constants.js';
3
+ import { ACTION_TYPE } from '../constants.js';
4
+ /**
5
+ * Initialize state with saved registration modes or default to 'agent'
6
+ */
7
+ function initializeState(assistants, registeredIds, savedModes) {
8
+ return {
9
+ registrations: assistants.map((assistant) => ({
10
+ assistant,
11
+ mode: savedModes.get(assistant.id) || REGISTRATION_MODE.AGENT,
12
+ isAlreadyRegistered: registeredIds.has(assistant.id),
13
+ })),
14
+ cursorIndex: 0,
15
+ areNavigationButtonsFocused: true,
16
+ focusedButton: ACTION_TYPE.APPLY,
17
+ };
18
+ }
19
+ /**
20
+ * Prompt user to manually configure registration modes for selected assistants
21
+ * Returns a map of assistant IDs to registration modes and the action taken
22
+ * @param assistants - All selected assistants (both new and already registered)
23
+ * @param registeredIds - Set of IDs of already registered assistants
24
+ * @param registeredAssistants - Array of registered assistants with saved modes
25
+ */
26
+ export async function promptManualConfiguration(assistants, registeredIds, registeredAssistants) {
27
+ const savedModes = new Map();
28
+ for (const registered of registeredAssistants) {
29
+ if (registered.registrationMode) {
30
+ // Use saved mode, defaulting to AGENT for any other value (e.g., legacy 'both')
31
+ const mode = (registered.registrationMode === REGISTRATION_MODE.AGENT || registered.registrationMode === REGISTRATION_MODE.SKILL)
32
+ ? registered.registrationMode
33
+ : REGISTRATION_MODE.AGENT;
34
+ savedModes.set(registered.id, mode);
35
+ }
36
+ }
37
+ const state = initializeState(assistants, registeredIds, savedModes);
38
+ const action = await createInteractivePrompt(state);
39
+ const registrationModes = new Map();
40
+ for (const registration of state.registrations) {
41
+ registrationModes.set(registration.assistant.id, registration.mode);
42
+ }
43
+ return {
44
+ registrationModes,
45
+ action,
46
+ };
47
+ }
48
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/cli/commands/assistants/setup/manualConfiguration/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C;;GAEG;AACH,SAAS,eAAe,CACvB,UAAuB,EACvB,aAA0B,EAC1B,UAAyC;IAEzC,OAAO;QACN,aAAa,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC7C,SAAS;YACT,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,iBAAiB,CAAC,KAAK;YAC7D,mBAAmB,EAAE,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;SACpD,CAAC,CAAC;QACH,WAAW,EAAE,CAAC;QACd,2BAA2B,EAAE,IAAI;QACjC,aAAa,EAAE,WAAW,CAAC,KAAK;KAChC,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC9C,UAAuB,EACvB,aAA0B,EAC1B,oBAAwC;IAExC,MAAM,UAAU,GAAG,IAAI,GAAG,EAA4B,CAAC;IACvD,KAAK,MAAM,UAAU,IAAI,oBAAoB,EAAE,CAAC;QAC/C,IAAI,UAAU,CAAC,gBAAgB,EAAE,CAAC;YACjC,gFAAgF;YAChF,MAAM,IAAI,GAAG,CAAC,UAAU,CAAC,gBAAgB,KAAK,iBAAiB,CAAC,KAAK,IAAI,UAAU,CAAC,gBAAgB,KAAK,iBAAiB,CAAC,KAAK,CAAC;gBAChI,CAAC,CAAC,UAAU,CAAC,gBAAgB;gBAC7B,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC;YAC3B,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACrC,CAAC;IACF,CAAC;IAED,MAAM,KAAK,GAAG,eAAe,CAAC,UAAU,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;IAErE,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAAC,KAAK,CAAC,CAAC;IAEpD,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAA4B,CAAC;IAC9D,KAAK,MAAM,YAAY,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;QAChD,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;IACrE,CAAC;IAED,OAAO;QACN,iBAAiB;QACjB,MAAM;KACN,CAAC;AACH,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { ConfigurationState, ConfigurationAction } from './types.js';
2
+ /**
3
+ * Interactive prompt for configuring assistant registration modes
4
+ */
5
+ export declare function createInteractivePrompt(state: ConfigurationState): Promise<ConfigurationAction>;
6
+ //# sourceMappingURL=interactive-prompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactive-prompt.d.ts","sourceRoot":"","sources":["../../../../../../src/cli/commands/assistants/setup/manualConfiguration/interactive-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAK1E;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CA6F/F"}
@@ -0,0 +1,90 @@
1
+ import { ANSI, KEY, KEEP_ALIVE_INTERVAL } from './constants.js';
2
+ import { renderUI } from './ui.js';
3
+ import { createActionHandlers } from './actions.js';
4
+ /**
5
+ * Interactive prompt for configuring assistant registration modes
6
+ */
7
+ export function createInteractivePrompt(state) {
8
+ return new Promise((resolve) => {
9
+ let keepAliveTimer = null;
10
+ /**
11
+ * Render UI to stdout
12
+ */
13
+ function render() {
14
+ const output = ANSI.CLEAR_SCREEN + ANSI.HIDE_CURSOR + renderUI(state);
15
+ process.stdout.write(output);
16
+ }
17
+ /**
18
+ * Cleanup and restore terminal
19
+ */
20
+ function cleanup() {
21
+ if (keepAliveTimer) {
22
+ clearInterval(keepAliveTimer);
23
+ keepAliveTimer = null;
24
+ }
25
+ process.stdin.setRawMode(false);
26
+ process.stdin.pause();
27
+ process.stdin.removeAllListeners('data');
28
+ process.stdout.write(ANSI.SHOW_CURSOR + ANSI.CLEAR_SCREEN);
29
+ }
30
+ /**
31
+ * Resolve promise and cleanup
32
+ */
33
+ function stop(action) {
34
+ cleanup();
35
+ resolve(action);
36
+ }
37
+ /**
38
+ * Start interactive mode
39
+ */
40
+ function start() {
41
+ const actions = createActionHandlers(state, render, stop);
42
+ process.stdin.setRawMode(true);
43
+ process.stdin.resume();
44
+ process.stdin.setEncoding('utf8');
45
+ process.stdin.on('data', (key) => {
46
+ switch (key) {
47
+ case KEY.UP:
48
+ actions.handleArrowUp();
49
+ break;
50
+ case KEY.DOWN:
51
+ actions.handleArrowDown();
52
+ break;
53
+ case KEY.LEFT:
54
+ actions.handleArrowLeft();
55
+ break;
56
+ case KEY.RIGHT:
57
+ actions.handleArrowRight();
58
+ break;
59
+ case KEY.SPACE:
60
+ actions.handleSpace();
61
+ break;
62
+ case KEY.TAB:
63
+ actions.handleTab();
64
+ break;
65
+ case KEY.SHIFT_TAB:
66
+ actions.handleShiftTab();
67
+ break;
68
+ case KEY.ENTER:
69
+ actions.handleEnter();
70
+ break;
71
+ case KEY.ESC:
72
+ actions.handleBack();
73
+ break;
74
+ case KEY.CTRL_C:
75
+ actions.handleCancel();
76
+ break;
77
+ default:
78
+ // Ignore other keys
79
+ break;
80
+ }
81
+ });
82
+ // Keep-alive timer to prevent process from exiting
83
+ keepAliveTimer = setInterval(() => {
84
+ }, KEEP_ALIVE_INTERVAL);
85
+ render();
86
+ }
87
+ start();
88
+ });
89
+ }
90
+ //# sourceMappingURL=interactive-prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactive-prompt.js","sourceRoot":"","sources":["../../../../../../src/cli/commands/assistants/setup/manualConfiguration/interactive-prompt.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ import type { Assistant } from 'codemie-sdk';
2
+ import type { ACTION_TYPE } from '../constants.js';
3
+ /**
4
+ * Registration mode for an assistant
5
+ * - agent: Register as Claude agent only (~/.claude/agents/{slug}.md)
6
+ * - skill: Register as Claude skill only (~/.codemie/skills/{slug}/SKILL.md)
7
+ */
8
+ export type RegistrationMode = 'agent' | 'skill';
9
+ /**
10
+ * Action taken by the user in the configuration UI
11
+ */
12
+ export type ConfigurationAction = typeof ACTION_TYPE.APPLY | typeof ACTION_TYPE.CANCEL | typeof ACTION_TYPE.BACK;
13
+ /**
14
+ * Represents a single assistant with its registration mode
15
+ */
16
+ export interface AssistantRegistration {
17
+ assistant: Assistant;
18
+ mode: RegistrationMode;
19
+ isAlreadyRegistered: boolean;
20
+ }
21
+ /**
22
+ * State for the manual configuration UI
23
+ */
24
+ export interface ConfigurationState {
25
+ registrations: AssistantRegistration[];
26
+ cursorIndex: number;
27
+ areNavigationButtonsFocused: boolean;
28
+ focusedButton: typeof ACTION_TYPE.APPLY | typeof ACTION_TYPE.CANCEL;
29
+ }
30
+ /**
31
+ * Result returned from the configuration UI
32
+ */
33
+ export interface ConfigurationResult {
34
+ registrationModes: Map<string, RegistrationMode>;
35
+ action: ConfigurationAction;
36
+ }
37
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/cli/commands/assistants/setup/manualConfiguration/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnD;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,OAAO,CAAC;AAEjD;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,OAAO,WAAW,CAAC,KAAK,GAAG,OAAO,WAAW,CAAC,MAAM,GAAG,OAAO,WAAW,CAAC,IAAI,CAAC;AAEjH;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACrC,SAAS,EAAE,SAAS,CAAC;IACrB,IAAI,EAAE,gBAAgB,CAAC;IACvB,mBAAmB,EAAE,OAAO,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,aAAa,EAAE,qBAAqB,EAAE,CAAC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,2BAA2B,EAAE,OAAO,CAAC;IACrC,aAAa,EAAE,OAAO,WAAW,CAAC,KAAK,GAAG,OAAO,WAAW,CAAC,MAAM,CAAC;CACpE;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACjD,MAAM,EAAE,mBAAmB,CAAC;CAC5B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../src/cli/commands/assistants/setup/manualConfiguration/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ import type { ConfigurationState } from './types.js';
2
+ /**
3
+ * Render full UI
4
+ */
5
+ export declare function renderUI(state: ConfigurationState): string;
6
+ //# sourceMappingURL=ui.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../../../../../src/cli/commands/assistants/setup/manualConfiguration/ui.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAoB,MAAM,YAAY,CAAC;AAqGvE;;GAEG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,kBAAkB,GAAG,MAAM,CAiB1D"}
@@ -0,0 +1,103 @@
1
+ import chalk from 'chalk';
2
+ import { MODE_LABELS, MODE_CYCLE_ORDER, UI_TEXT } from './constants.js';
3
+ import { COLOR, ACTION_TYPE } from '../constants.js';
4
+ /**
5
+ * Build top line (purple separator)
6
+ */
7
+ function buildTopLine() {
8
+ const width = 60;
9
+ return chalk.rgb(COLOR.PURPLE.r, COLOR.PURPLE.g, COLOR.PURPLE.b)('─'.repeat(width));
10
+ }
11
+ /**
12
+ * Build title section
13
+ */
14
+ function buildTitle() {
15
+ return chalk.rgb(COLOR.PURPLE.r, COLOR.PURPLE.g, COLOR.PURPLE.b).bold(UI_TEXT.TITLE);
16
+ }
17
+ /**
18
+ * Build subtitle section
19
+ */
20
+ function buildSubtitle() {
21
+ return chalk.dim(UI_TEXT.SUBTITLE);
22
+ }
23
+ /**
24
+ * Build mode switch display
25
+ * Shows: [Claude Agent] [Claude Skill]
26
+ * Active mode is highlighted in purple
27
+ */
28
+ function buildModeSwitch(currentMode, isCursor) {
29
+ const switches = MODE_CYCLE_ORDER.map((mode) => {
30
+ const label = MODE_LABELS[mode];
31
+ const isActive = mode === currentMode;
32
+ if (isActive && isCursor) {
33
+ return chalk.rgb(COLOR.PURPLE.r, COLOR.PURPLE.g, COLOR.PURPLE.b).bold(`[${label}]`);
34
+ }
35
+ else if (isActive) {
36
+ return chalk.bold(`[${label}]`);
37
+ }
38
+ else {
39
+ return chalk.dim(`[${label}]`);
40
+ }
41
+ });
42
+ return switches.join(' ');
43
+ }
44
+ /**
45
+ * Build single assistant line
46
+ */
47
+ function buildAssistantLine(registration, isCursor) {
48
+ const cursor = isCursor ? chalk.rgb(COLOR.PURPLE.r, COLOR.PURPLE.g, COLOR.PURPLE.b)('› ') : ' ';
49
+ const name = isCursor ? chalk.bold(registration.assistant.name) : chalk.white(registration.assistant.name);
50
+ const badge = registration.isAlreadyRegistered ? chalk.dim(' (Already registered)') : '';
51
+ const modeSwitch = buildModeSwitch(registration.mode, isCursor);
52
+ return `${cursor}${name}${badge}\n Mode: ${modeSwitch}`;
53
+ }
54
+ /**
55
+ * Build assistants list
56
+ */
57
+ function buildAssistantsList(state) {
58
+ const lines = state.registrations.map((registration, index) => {
59
+ const isCursor = !state.areNavigationButtonsFocused && state.cursorIndex === index;
60
+ return buildAssistantLine(registration, isCursor);
61
+ });
62
+ return lines.join('\n\n');
63
+ }
64
+ /**
65
+ * Build buttons (Apply / Cancel)
66
+ */
67
+ function buildButtons(state) {
68
+ const { areNavigationButtonsFocused, focusedButton } = state;
69
+ const applyButton = areNavigationButtonsFocused && focusedButton === ACTION_TYPE.APPLY
70
+ ? chalk.bgRgb(COLOR.PURPLE.r, COLOR.PURPLE.g, COLOR.PURPLE.b).black(` ${UI_TEXT.APPLY_BUTTON} `)
71
+ : chalk.dim(`[${UI_TEXT.APPLY_BUTTON}]`);
72
+ const cancelButton = areNavigationButtonsFocused && focusedButton === ACTION_TYPE.CANCEL
73
+ ? chalk.bgRgb(COLOR.PURPLE.r, COLOR.PURPLE.g, COLOR.PURPLE.b).black(` ${UI_TEXT.CANCEL_BUTTON} `)
74
+ : chalk.dim(`[${UI_TEXT.CANCEL_BUTTON}]`);
75
+ return ` ${applyButton} ${cancelButton}`;
76
+ }
77
+ /**
78
+ * Build instructions line
79
+ */
80
+ function buildInstructions() {
81
+ return chalk.dim(UI_TEXT.INSTRUCTIONS);
82
+ }
83
+ /**
84
+ * Render full UI
85
+ */
86
+ export function renderUI(state) {
87
+ const parts = [
88
+ buildTopLine(),
89
+ buildTitle(),
90
+ '',
91
+ buildSubtitle(),
92
+ '',
93
+ buildAssistantsList(state),
94
+ '',
95
+ buildTopLine(),
96
+ '',
97
+ buildButtons(state),
98
+ '',
99
+ buildInstructions(),
100
+ ];
101
+ return parts.join('\n');
102
+ }
103
+ //# sourceMappingURL=ui.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui.js","sourceRoot":"","sources":["../../../../../../src/cli/commands/assistants/setup/manualConfiguration/ui.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Action Handlers
3
+ *
4
+ * All user interaction handlers for the selection UI
5
+ */
6
+ import type { SelectionState } from './types.js';
7
+ import type { DataFetcher } from '../data.js';
8
+ import type { InteractivePrompt } from './interactive-prompt.js';
9
+ export interface ActionHandlers {
10
+ handlePanelSwitch: (direction: 'next' | 'prev') => void;
11
+ handleSearchUpdate: (query: string) => void;
12
+ handleFocusSearch: () => void;
13
+ handleFocusList: () => void;
14
+ handleCursorMove: (direction: 'up' | 'down') => void;
15
+ handleToggleSelection: () => void;
16
+ handleConfirm: () => void;
17
+ handleCancel: () => void;
18
+ handlePageNext: () => void;
19
+ handlePagePrev: () => void;
20
+ handleButtonToggle: () => void;
21
+ handleButtonSwitch: (direction: 'left' | 'right') => void;
22
+ }
23
+ export interface ActionHandlerDependencies {
24
+ state: SelectionState;
25
+ fetcher: DataFetcher;
26
+ prompt: () => InteractivePrompt | null;
27
+ setPrompt: (p: InteractivePrompt | null) => void;
28
+ setCancelled: (cancelled: boolean) => void;
29
+ }
30
+ export declare function createActionHandlers(deps: ActionHandlerDependencies): ActionHandlers;
31
+ //# sourceMappingURL=actions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../../../../src/cli/commands/assistants/setup/selection/actions.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAIjE,MAAM,WAAW,cAAc;IAC7B,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IACxD,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,iBAAiB,EAAE,MAAM,IAAI,CAAC;IAC9B,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,gBAAgB,EAAE,CAAC,SAAS,EAAE,IAAI,GAAG,MAAM,KAAK,IAAI,CAAC;IACrD,qBAAqB,EAAE,MAAM,IAAI,CAAC;IAClC,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAC/B,kBAAkB,EAAE,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,KAAK,IAAI,CAAC;CAC3D;AAED,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,cAAc,CAAC;IACtB,OAAO,EAAE,WAAW,CAAC;IACrB,MAAM,EAAE,MAAM,iBAAiB,GAAG,IAAI,CAAC;IACvC,SAAS,EAAE,CAAC,CAAC,EAAE,iBAAiB,GAAG,IAAI,KAAK,IAAI,CAAC;IACjD,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;CAC5C;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,yBAAyB,GAAG,cAAc,CAgVpF"}