pulseed 0.4.6 → 0.4.8

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 (288) hide show
  1. package/README.md +4 -0
  2. package/dist/base/llm/provider-config.d.ts.map +1 -1
  3. package/dist/base/llm/provider-config.js +33 -8
  4. package/dist/base/llm/provider-config.js.map +1 -1
  5. package/dist/base/state/state-lock.d.ts +3 -1
  6. package/dist/base/state/state-lock.d.ts.map +1 -1
  7. package/dist/base/state/state-lock.js +52 -10
  8. package/dist/base/state/state-lock.js.map +1 -1
  9. package/dist/base/state/state-manager-goal-write.d.ts +4 -0
  10. package/dist/base/state/state-manager-goal-write.d.ts.map +1 -1
  11. package/dist/base/state/state-manager-goal-write.js +45 -3
  12. package/dist/base/state/state-manager-goal-write.js.map +1 -1
  13. package/dist/base/state/state-manager-wal.d.ts.map +1 -1
  14. package/dist/base/state/state-manager-wal.js +12 -0
  15. package/dist/base/state/state-manager-wal.js.map +1 -1
  16. package/dist/base/state/state-manager.d.ts +1 -1
  17. package/dist/base/state/state-manager.d.ts.map +1 -1
  18. package/dist/base/state/state-manager.js +129 -88
  19. package/dist/base/state/state-manager.js.map +1 -1
  20. package/dist/index.d.ts +6 -1
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +3 -0
  23. package/dist/index.js.map +1 -1
  24. package/dist/interface/chat/chat-event-state.d.ts.map +1 -1
  25. package/dist/interface/chat/chat-event-state.js +12 -24
  26. package/dist/interface/chat/chat-event-state.js.map +1 -1
  27. package/dist/interface/chat/chat-events.d.ts +9 -1
  28. package/dist/interface/chat/chat-events.d.ts.map +1 -1
  29. package/dist/interface/chat/chat-runner.d.ts +19 -0
  30. package/dist/interface/chat/chat-runner.d.ts.map +1 -1
  31. package/dist/interface/chat/chat-runner.js +101 -5
  32. package/dist/interface/chat/chat-runner.js.map +1 -1
  33. package/dist/interface/chat/cross-platform-session.d.ts.map +1 -1
  34. package/dist/interface/chat/cross-platform-session.js +36 -0
  35. package/dist/interface/chat/cross-platform-session.js.map +1 -1
  36. package/dist/interface/cli/cli-command-registry.d.ts.map +1 -1
  37. package/dist/interface/cli/cli-command-registry.js +23 -3
  38. package/dist/interface/cli/cli-command-registry.js.map +1 -1
  39. package/dist/interface/cli/commands/approval.d.ts +3 -0
  40. package/dist/interface/cli/commands/approval.d.ts.map +1 -0
  41. package/dist/interface/cli/commands/approval.js +112 -0
  42. package/dist/interface/cli/commands/approval.js.map +1 -0
  43. package/dist/interface/cli/commands/chat.d.ts.map +1 -1
  44. package/dist/interface/cli/commands/chat.js +9 -0
  45. package/dist/interface/cli/commands/chat.js.map +1 -1
  46. package/dist/interface/cli/commands/daemon.d.ts.map +1 -1
  47. package/dist/interface/cli/commands/daemon.js +35 -7
  48. package/dist/interface/cli/commands/daemon.js.map +1 -1
  49. package/dist/interface/cli/commands/doctor.d.ts +3 -0
  50. package/dist/interface/cli/commands/doctor.d.ts.map +1 -1
  51. package/dist/interface/cli/commands/doctor.js +136 -1
  52. package/dist/interface/cli/commands/doctor.js.map +1 -1
  53. package/dist/interface/cli/commands/setup/import/apply.d.ts +3 -0
  54. package/dist/interface/cli/commands/setup/import/apply.d.ts.map +1 -0
  55. package/dist/interface/cli/commands/setup/import/apply.js +226 -0
  56. package/dist/interface/cli/commands/setup/import/apply.js.map +1 -0
  57. package/dist/interface/cli/commands/setup/import/constants.d.ts +5 -0
  58. package/dist/interface/cli/commands/setup/import/constants.d.ts.map +1 -0
  59. package/dist/interface/cli/commands/setup/import/constants.js +24 -0
  60. package/dist/interface/cli/commands/setup/import/constants.js.map +1 -0
  61. package/dist/interface/cli/commands/setup/import/discovery.d.ts +3 -0
  62. package/dist/interface/cli/commands/setup/import/discovery.d.ts.map +1 -0
  63. package/dist/interface/cli/commands/setup/import/discovery.js +171 -0
  64. package/dist/interface/cli/commands/setup/import/discovery.js.map +1 -0
  65. package/dist/interface/cli/commands/setup/import/flow.d.ts +5 -0
  66. package/dist/interface/cli/commands/setup/import/flow.d.ts.map +1 -0
  67. package/dist/interface/cli/commands/setup/import/flow.js +156 -0
  68. package/dist/interface/cli/commands/setup/import/flow.js.map +1 -0
  69. package/dist/interface/cli/commands/setup/import/fs-utils.d.ts +10 -0
  70. package/dist/interface/cli/commands/setup/import/fs-utils.d.ts.map +1 -0
  71. package/dist/interface/cli/commands/setup/import/fs-utils.js +109 -0
  72. package/dist/interface/cli/commands/setup/import/fs-utils.js.map +1 -0
  73. package/dist/interface/cli/commands/setup/import/mcp.d.ts +4 -0
  74. package/dist/interface/cli/commands/setup/import/mcp.d.ts.map +1 -0
  75. package/dist/interface/cli/commands/setup/import/mcp.js +73 -0
  76. package/dist/interface/cli/commands/setup/import/mcp.js.map +1 -0
  77. package/dist/interface/cli/commands/setup/import/parse.d.ts +7 -0
  78. package/dist/interface/cli/commands/setup/import/parse.d.ts.map +1 -0
  79. package/dist/interface/cli/commands/setup/import/parse.js +40 -0
  80. package/dist/interface/cli/commands/setup/import/parse.js.map +1 -0
  81. package/dist/interface/cli/commands/setup/import/provider.d.ts +6 -0
  82. package/dist/interface/cli/commands/setup/import/provider.d.ts.map +1 -0
  83. package/dist/interface/cli/commands/setup/import/provider.js +231 -0
  84. package/dist/interface/cli/commands/setup/import/provider.js.map +1 -0
  85. package/dist/interface/cli/commands/setup/import/telegram.d.ts +5 -0
  86. package/dist/interface/cli/commands/setup/import/telegram.d.ts.map +1 -0
  87. package/dist/interface/cli/commands/setup/import/telegram.js +109 -0
  88. package/dist/interface/cli/commands/setup/import/telegram.js.map +1 -0
  89. package/dist/interface/cli/commands/setup/import/types.d.ts +58 -0
  90. package/dist/interface/cli/commands/setup/import/types.d.ts.map +1 -0
  91. package/dist/interface/cli/commands/setup/import/types.js +2 -0
  92. package/dist/interface/cli/commands/setup/import/types.js.map +1 -0
  93. package/dist/interface/cli/commands/setup/steps-adapter.d.ts +1 -1
  94. package/dist/interface/cli/commands/setup/steps-adapter.d.ts.map +1 -1
  95. package/dist/interface/cli/commands/setup/steps-adapter.js +32 -5
  96. package/dist/interface/cli/commands/setup/steps-adapter.js.map +1 -1
  97. package/dist/interface/cli/commands/setup/steps-identity.d.ts +2 -2
  98. package/dist/interface/cli/commands/setup/steps-identity.d.ts.map +1 -1
  99. package/dist/interface/cli/commands/setup/steps-identity.js +10 -4
  100. package/dist/interface/cli/commands/setup/steps-identity.js.map +1 -1
  101. package/dist/interface/cli/commands/setup/steps-provider.d.ts +4 -4
  102. package/dist/interface/cli/commands/setup/steps-provider.d.ts.map +1 -1
  103. package/dist/interface/cli/commands/setup/steps-provider.js +109 -42
  104. package/dist/interface/cli/commands/setup/steps-provider.js.map +1 -1
  105. package/dist/interface/cli/commands/setup/steps-runtime.d.ts.map +1 -1
  106. package/dist/interface/cli/commands/setup/steps-runtime.js +2 -3
  107. package/dist/interface/cli/commands/setup/steps-runtime.js.map +1 -1
  108. package/dist/interface/cli/commands/setup-wizard.d.ts.map +1 -1
  109. package/dist/interface/cli/commands/setup-wizard.js +349 -64
  110. package/dist/interface/cli/commands/setup-wizard.js.map +1 -1
  111. package/dist/interface/cli/commands/telegram.d.ts.map +1 -1
  112. package/dist/interface/cli/commands/telegram.js +22 -20
  113. package/dist/interface/cli/commands/telegram.js.map +1 -1
  114. package/dist/interface/cli/ensure-api-key.d.ts +3 -1
  115. package/dist/interface/cli/ensure-api-key.d.ts.map +1 -1
  116. package/dist/interface/cli/ensure-api-key.js +20 -13
  117. package/dist/interface/cli/ensure-api-key.js.map +1 -1
  118. package/dist/interface/cli/setup.d.ts.map +1 -1
  119. package/dist/interface/cli/setup.js +1 -1
  120. package/dist/interface/cli/setup.js.map +1 -1
  121. package/dist/interface/cli/utils.d.ts.map +1 -1
  122. package/dist/interface/cli/utils.js +1 -0
  123. package/dist/interface/cli/utils.js.map +1 -1
  124. package/dist/orchestrator/execution/agent-loop/agent-loop-session-state.d.ts +1 -0
  125. package/dist/orchestrator/execution/agent-loop/agent-loop-session-state.d.ts.map +1 -1
  126. package/dist/orchestrator/execution/agent-loop/agent-loop-session-state.js +91 -1
  127. package/dist/orchestrator/execution/agent-loop/agent-loop-session-state.js.map +1 -1
  128. package/dist/orchestrator/execution/pipeline-executor.d.ts +1 -0
  129. package/dist/orchestrator/execution/pipeline-executor.d.ts.map +1 -1
  130. package/dist/orchestrator/execution/pipeline-executor.js +39 -8
  131. package/dist/orchestrator/execution/pipeline-executor.js.map +1 -1
  132. package/dist/orchestrator/execution/result-reconciler.d.ts.map +1 -1
  133. package/dist/orchestrator/execution/result-reconciler.js +79 -54
  134. package/dist/orchestrator/execution/result-reconciler.js.map +1 -1
  135. package/dist/orchestrator/execution/task/task-execution-helpers.d.ts +2 -1
  136. package/dist/orchestrator/execution/task/task-execution-helpers.d.ts.map +1 -1
  137. package/dist/orchestrator/execution/task/task-execution-helpers.js +11 -1
  138. package/dist/orchestrator/execution/task/task-execution-helpers.js.map +1 -1
  139. package/dist/orchestrator/execution/task/task-lifecycle.d.ts +1 -1
  140. package/dist/orchestrator/execution/task/task-lifecycle.d.ts.map +1 -1
  141. package/dist/orchestrator/execution/task/task-lifecycle.js +33 -0
  142. package/dist/orchestrator/execution/task/task-lifecycle.js.map +1 -1
  143. package/dist/orchestrator/goal/goal-dependency-graph.d.ts.map +1 -1
  144. package/dist/orchestrator/goal/goal-dependency-graph.js +20 -8
  145. package/dist/orchestrator/goal/goal-dependency-graph.js.map +1 -1
  146. package/dist/orchestrator/goal/goal-refiner.d.ts +3 -5
  147. package/dist/orchestrator/goal/goal-refiner.d.ts.map +1 -1
  148. package/dist/orchestrator/goal/goal-refiner.js +3 -5
  149. package/dist/orchestrator/goal/goal-refiner.js.map +1 -1
  150. package/dist/orchestrator/strategy/cross-goal-portfolio.d.ts.map +1 -1
  151. package/dist/orchestrator/strategy/cross-goal-portfolio.js +20 -12
  152. package/dist/orchestrator/strategy/cross-goal-portfolio.js.map +1 -1
  153. package/dist/orchestrator/strategy/portfolio-manager.d.ts.map +1 -1
  154. package/dist/orchestrator/strategy/portfolio-manager.js +8 -4
  155. package/dist/orchestrator/strategy/portfolio-manager.js.map +1 -1
  156. package/dist/orchestrator/strategy/strategy-manager-base.d.ts.map +1 -1
  157. package/dist/orchestrator/strategy/strategy-manager-base.js +29 -24
  158. package/dist/orchestrator/strategy/strategy-manager-base.js.map +1 -1
  159. package/dist/platform/dream/dream-soil-sync.d.ts +2 -0
  160. package/dist/platform/dream/dream-soil-sync.d.ts.map +1 -1
  161. package/dist/platform/dream/dream-soil-sync.js +19 -0
  162. package/dist/platform/dream/dream-soil-sync.js.map +1 -1
  163. package/dist/platform/drive/satisficing-judge.d.ts.map +1 -1
  164. package/dist/platform/drive/satisficing-judge.js +20 -6
  165. package/dist/platform/drive/satisficing-judge.js.map +1 -1
  166. package/dist/platform/knowledge/knowledge-manager-lint.d.ts.map +1 -1
  167. package/dist/platform/knowledge/knowledge-manager-lint.js +4 -3
  168. package/dist/platform/knowledge/knowledge-manager-lint.js.map +1 -1
  169. package/dist/platform/knowledge/knowledge-manager.d.ts.map +1 -1
  170. package/dist/platform/knowledge/knowledge-manager.js +2 -1
  171. package/dist/platform/knowledge/knowledge-manager.js.map +1 -1
  172. package/dist/platform/knowledge/knowledge-search.d.ts.map +1 -1
  173. package/dist/platform/knowledge/knowledge-search.js +15 -3
  174. package/dist/platform/knowledge/knowledge-search.js.map +1 -1
  175. package/dist/platform/knowledge/learning/learning-cross-goal.d.ts.map +1 -1
  176. package/dist/platform/knowledge/learning/learning-cross-goal.js +9 -5
  177. package/dist/platform/knowledge/learning/learning-cross-goal.js.map +1 -1
  178. package/dist/platform/observation/observation-apply.d.ts.map +1 -1
  179. package/dist/platform/observation/observation-apply.js +93 -99
  180. package/dist/platform/observation/observation-apply.js.map +1 -1
  181. package/dist/platform/soil/compiled-memory-projections.d.ts +12 -0
  182. package/dist/platform/soil/compiled-memory-projections.d.ts.map +1 -0
  183. package/dist/platform/soil/compiled-memory-projections.js +238 -0
  184. package/dist/platform/soil/compiled-memory-projections.js.map +1 -0
  185. package/dist/platform/soil/content-projections.d.ts +3 -7
  186. package/dist/platform/soil/content-projections.d.ts.map +1 -1
  187. package/dist/platform/soil/content-projections.js +67 -105
  188. package/dist/platform/soil/content-projections.js.map +1 -1
  189. package/dist/platform/soil/context-compiler.d.ts +34 -0
  190. package/dist/platform/soil/context-compiler.d.ts.map +1 -0
  191. package/dist/platform/soil/context-compiler.js +298 -0
  192. package/dist/platform/soil/context-compiler.js.map +1 -0
  193. package/dist/platform/soil/context-evaluation.d.ts +63 -0
  194. package/dist/platform/soil/context-evaluation.d.ts.map +1 -0
  195. package/dist/platform/soil/context-evaluation.js +90 -0
  196. package/dist/platform/soil/context-evaluation.js.map +1 -0
  197. package/dist/platform/soil/contracts.d.ts +269 -30
  198. package/dist/platform/soil/contracts.d.ts.map +1 -1
  199. package/dist/platform/soil/contracts.js +87 -0
  200. package/dist/platform/soil/contracts.js.map +1 -1
  201. package/dist/platform/soil/doctor.d.ts +5 -1
  202. package/dist/platform/soil/doctor.d.ts.map +1 -1
  203. package/dist/platform/soil/doctor.js +94 -1
  204. package/dist/platform/soil/doctor.js.map +1 -1
  205. package/dist/platform/soil/feedback-store.d.ts +10 -0
  206. package/dist/platform/soil/feedback-store.d.ts.map +1 -0
  207. package/dist/platform/soil/feedback-store.js +38 -0
  208. package/dist/platform/soil/feedback-store.js.map +1 -0
  209. package/dist/platform/soil/health.d.ts +35 -0
  210. package/dist/platform/soil/health.d.ts.map +1 -0
  211. package/dist/platform/soil/health.js +126 -0
  212. package/dist/platform/soil/health.js.map +1 -0
  213. package/dist/platform/soil/index-store.d.ts.map +1 -1
  214. package/dist/platform/soil/index-store.js +10 -1
  215. package/dist/platform/soil/index-store.js.map +1 -1
  216. package/dist/platform/soil/index.d.ts +4 -0
  217. package/dist/platform/soil/index.d.ts.map +1 -1
  218. package/dist/platform/soil/index.js +4 -0
  219. package/dist/platform/soil/index.js.map +1 -1
  220. package/dist/platform/soil/projection-support.d.ts +48 -0
  221. package/dist/platform/soil/projection-support.d.ts.map +1 -0
  222. package/dist/platform/soil/projection-support.js +107 -0
  223. package/dist/platform/soil/projection-support.js.map +1 -0
  224. package/dist/platform/soil/runtime-rebuild.d.ts.map +1 -1
  225. package/dist/platform/soil/runtime-rebuild.js +1 -2
  226. package/dist/platform/soil/runtime-rebuild.js.map +1 -1
  227. package/dist/platform/soil/sqlite-repository.d.ts.map +1 -1
  228. package/dist/platform/soil/sqlite-repository.js +51 -15
  229. package/dist/platform/soil/sqlite-repository.js.map +1 -1
  230. package/dist/runtime/command-dispatcher.d.ts +2 -0
  231. package/dist/runtime/command-dispatcher.d.ts.map +1 -1
  232. package/dist/runtime/command-dispatcher.js +11 -0
  233. package/dist/runtime/command-dispatcher.js.map +1 -1
  234. package/dist/runtime/control/daemon-runtime-control-executor.d.ts +13 -0
  235. package/dist/runtime/control/daemon-runtime-control-executor.d.ts.map +1 -0
  236. package/dist/runtime/control/daemon-runtime-control-executor.js +46 -0
  237. package/dist/runtime/control/daemon-runtime-control-executor.js.map +1 -0
  238. package/dist/runtime/control/index.d.ts +7 -0
  239. package/dist/runtime/control/index.d.ts.map +1 -0
  240. package/dist/runtime/control/index.js +4 -0
  241. package/dist/runtime/control/index.js.map +1 -0
  242. package/dist/runtime/control/runtime-control-intent.d.ts +7 -0
  243. package/dist/runtime/control/runtime-control-intent.d.ts.map +1 -0
  244. package/dist/runtime/control/runtime-control-intent.js +31 -0
  245. package/dist/runtime/control/runtime-control-intent.js.map +1 -0
  246. package/dist/runtime/control/runtime-control-service.d.ts +44 -0
  247. package/dist/runtime/control/runtime-control-service.d.ts.map +1 -0
  248. package/dist/runtime/control/runtime-control-service.js +143 -0
  249. package/dist/runtime/control/runtime-control-service.js.map +1 -0
  250. package/dist/runtime/daemon/client.d.ts +4 -0
  251. package/dist/runtime/daemon/client.d.ts.map +1 -1
  252. package/dist/runtime/daemon/client.js +9 -5
  253. package/dist/runtime/daemon/client.js.map +1 -1
  254. package/dist/runtime/daemon/runner.d.ts +2 -0
  255. package/dist/runtime/daemon/runner.d.ts.map +1 -1
  256. package/dist/runtime/daemon/runner.js +72 -1
  257. package/dist/runtime/daemon/runner.js.map +1 -1
  258. package/dist/runtime/event/server.d.ts +1 -0
  259. package/dist/runtime/event/server.d.ts.map +1 -1
  260. package/dist/runtime/event/server.js +36 -0
  261. package/dist/runtime/event/server.js.map +1 -1
  262. package/dist/runtime/store/index.d.ts +3 -0
  263. package/dist/runtime/store/index.d.ts.map +1 -1
  264. package/dist/runtime/store/index.js +2 -0
  265. package/dist/runtime/store/index.js.map +1 -1
  266. package/dist/runtime/store/runtime-operation-schemas.d.ts +213 -0
  267. package/dist/runtime/store/runtime-operation-schemas.d.ts.map +1 -0
  268. package/dist/runtime/store/runtime-operation-schemas.js +62 -0
  269. package/dist/runtime/store/runtime-operation-schemas.js.map +1 -0
  270. package/dist/runtime/store/runtime-operation-store.d.ts +17 -0
  271. package/dist/runtime/store/runtime-operation-store.d.ts.map +1 -0
  272. package/dist/runtime/store/runtime-operation-store.js +57 -0
  273. package/dist/runtime/store/runtime-operation-store.js.map +1 -0
  274. package/dist/runtime/store/runtime-schemas.d.ts +4 -4
  275. package/dist/runtime/types/daemon.d.ts +3 -0
  276. package/dist/runtime/types/daemon.d.ts.map +1 -1
  277. package/dist/runtime/types/daemon.js +1 -0
  278. package/dist/runtime/types/daemon.js.map +1 -1
  279. package/dist/runtime/types/envelope.d.ts +2 -2
  280. package/dist/tools/execution/RunAdapterTool/RunAdapterTool.d.ts.map +1 -1
  281. package/dist/tools/execution/RunAdapterTool/RunAdapterTool.js +20 -0
  282. package/dist/tools/execution/RunAdapterTool/RunAdapterTool.js.map +1 -1
  283. package/dist/tools/execution/SoilDoctorTool/prompt.d.ts +1 -1
  284. package/dist/tools/execution/SoilDoctorTool/prompt.d.ts.map +1 -1
  285. package/dist/tools/execution/SoilDoctorTool/prompt.js +1 -1
  286. package/dist/tools/execution/SoilDoctorTool/prompt.js.map +1 -1
  287. package/dist/tools/system/EnvTool/EnvTool.d.ts +4 -4
  288. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply.js","sourceRoot":"","sources":["../../../../../../src/interface/cli/commands/setup/import/apply.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { SetupImportSourceId } from "./types.js";
2
+ export declare const SOURCE_LABELS: Record<SetupImportSourceId, string>;
3
+ export declare const CONFIG_FILENAMES: readonly ["provider.json", "config.json", "config.yaml", "config.yml", "settings.json", "agent.json", "openclaw.json", "openclaw.config.json", "clawdbot.json", "moltbot.json", "hermes.config.json"];
4
+ export declare const MCP_FILENAMES: readonly ["mcp-servers.json", "mcp.json", "mcpServers.json", "servers.json"];
5
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../../src/interface/cli/commands/setup/import/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAG7D,CAAC;AAEF,eAAO,MAAM,gBAAgB,uMAYnB,CAAC;AAEX,eAAO,MAAM,aAAa,8EAKhB,CAAC"}
@@ -0,0 +1,24 @@
1
+ export const SOURCE_LABELS = {
2
+ hermes: "Hermes Agent",
3
+ openclaw: "OpenClaw",
4
+ };
5
+ export const CONFIG_FILENAMES = [
6
+ "provider.json",
7
+ "config.json",
8
+ "config.yaml",
9
+ "config.yml",
10
+ "settings.json",
11
+ "agent.json",
12
+ "openclaw.json",
13
+ "openclaw.config.json",
14
+ "clawdbot.json",
15
+ "moltbot.json",
16
+ "hermes.config.json",
17
+ ];
18
+ export const MCP_FILENAMES = [
19
+ "mcp-servers.json",
20
+ "mcp.json",
21
+ "mcpServers.json",
22
+ "servers.json",
23
+ ];
24
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../src/interface/cli/commands/setup/import/constants.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,aAAa,GAAwC;IAChE,MAAM,EAAE,cAAc;IACtB,QAAQ,EAAE,UAAU;CACrB,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,eAAe;IACf,aAAa;IACb,aAAa;IACb,YAAY;IACZ,eAAe;IACf,YAAY;IACZ,eAAe;IACf,sBAAsB;IACtB,eAAe;IACf,cAAc;IACd,oBAAoB;CACZ,CAAC;AAEX,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,kBAAkB;IAClB,UAAU;IACV,iBAAiB;IACjB,cAAc;CACN,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { SetupImportSource } from "./types.js";
2
+ export declare function detectSetupImportSources(): SetupImportSource[];
3
+ //# sourceMappingURL=discovery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../../../../../src/interface/cli/commands/setup/import/discovery.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAEV,iBAAiB,EAElB,MAAM,YAAY,CAAC;AAyKpB,wBAAgB,wBAAwB,IAAI,iBAAiB,EAAE,CAK9D"}
@@ -0,0 +1,171 @@
1
+ import * as os from "node:os";
2
+ import * as path from "node:path";
3
+ import { CONFIG_FILENAMES, MCP_FILENAMES, SOURCE_LABELS } from "./constants.js";
4
+ import { listImmediateDirs, pathExists, readEnvFile, readJson, safeImportName, unique, } from "./fs-utils.js";
5
+ import { extractMcpServers } from "./mcp.js";
6
+ import { buildProviderItem, extractProviderSettings } from "./provider.js";
7
+ import { buildTelegramItem, extractTelegramSettings, telegramCredentialItems } from "./telegram.js";
8
+ function candidateFiles(rootDir, filenames) {
9
+ return unique([
10
+ ...filenames.map((name) => path.join(rootDir, name)),
11
+ ...filenames.map((name) => path.join(rootDir, "config", name)),
12
+ ]).filter(pathExists);
13
+ }
14
+ function workspaceRoots(rootDir) {
15
+ return unique([
16
+ path.join(rootDir, "workspace"),
17
+ path.join(rootDir, "workspace.default"),
18
+ path.join(rootDir, "workspace-main"),
19
+ ...listImmediateDirs(rootDir).filter((dir) => path.basename(dir).startsWith("workspace-")),
20
+ ]);
21
+ }
22
+ function findSkillDirs(source, rootDir) {
23
+ const roots = unique([
24
+ path.join(rootDir, "skills"),
25
+ path.join(rootDir, "agent", "skills"),
26
+ path.join(rootDir, "agents", "skills"),
27
+ ...workspaceRoots(rootDir).flatMap((workspaceRoot) => [
28
+ path.join(workspaceRoot, "skills"),
29
+ path.join(workspaceRoot, ".agents", "skills"),
30
+ ]),
31
+ ]);
32
+ const candidates = [];
33
+ for (const skillRoot of roots) {
34
+ for (const dir of listImmediateDirs(skillRoot)) {
35
+ if (pathExists(path.join(dir, "SKILL.md")))
36
+ candidates.push(dir);
37
+ for (const nested of listImmediateDirs(dir)) {
38
+ if (pathExists(path.join(nested, "SKILL.md")))
39
+ candidates.push(nested);
40
+ }
41
+ }
42
+ }
43
+ return unique(candidates);
44
+ }
45
+ function findPluginDirs(rootDir) {
46
+ const candidates = [];
47
+ for (const pluginRoot of [path.join(rootDir, "plugins"), path.join(rootDir, "extensions")]) {
48
+ for (const dir of listImmediateDirs(pluginRoot)) {
49
+ if (pathExists(path.join(dir, "plugin.yaml")) || pathExists(path.join(dir, "plugin.json"))) {
50
+ candidates.push(dir);
51
+ }
52
+ }
53
+ }
54
+ return unique(candidates);
55
+ }
56
+ function sourceRoots(source) {
57
+ const home = os.homedir();
58
+ if (source === "hermes") {
59
+ return unique([
60
+ process.env["PULSEED_IMPORT_HERMES_HOME"] ?? "",
61
+ process.env["PULSEED_HERMES_HOME"] ?? "",
62
+ process.env["HERMES_HOME"] ?? "",
63
+ path.join(home, ".hermes"),
64
+ path.join(home, ".hermes-agent"),
65
+ path.join(home, "Library", "Application Support", "Hermes Agent"),
66
+ ].filter(Boolean));
67
+ }
68
+ return unique([
69
+ process.env["PULSEED_IMPORT_OPENCLAW_HOME"] ?? "",
70
+ process.env["PULSEED_OPENCLAW_HOME"] ?? "",
71
+ process.env["OPENCLAW_HOME"] ?? "",
72
+ path.join(home, ".openclaw"),
73
+ path.join(home, ".clawdbot"),
74
+ path.join(home, ".moltbot"),
75
+ path.join(home, ".config", "openclaw"),
76
+ path.join(home, "Library", "Application Support", "OpenClaw"),
77
+ ].filter(Boolean));
78
+ }
79
+ function providerItems(source, rootDir) {
80
+ const env = {
81
+ ...readEnvFile(path.join(rootDir, ".env")),
82
+ ...readEnvFile(path.join(rootDir, "config", ".env")),
83
+ };
84
+ return candidateFiles(rootDir, CONFIG_FILENAMES).flatMap((configPath) => {
85
+ const settings = extractProviderSettings(readJson(configPath), source, { env });
86
+ return settings ? [buildProviderItem(source, configPath, settings)] : [];
87
+ });
88
+ }
89
+ function telegramItems(source, rootDir) {
90
+ const env = {
91
+ ...readEnvFile(path.join(rootDir, ".env")),
92
+ ...readEnvFile(path.join(rootDir, "config", ".env")),
93
+ };
94
+ const configItems = candidateFiles(rootDir, CONFIG_FILENAMES).flatMap((configPath) => {
95
+ const settings = extractTelegramSettings(readJson(configPath), env);
96
+ return settings ? [buildTelegramItem(source, configPath, settings)] : [];
97
+ });
98
+ return [...configItems, ...telegramCredentialItems(source, rootDir)];
99
+ }
100
+ function skillItems(source, rootDir) {
101
+ return findSkillDirs(source, rootDir).map((skillDir) => {
102
+ const name = path.basename(skillDir);
103
+ return {
104
+ id: `${source}:skill:${safeImportName(skillDir)}`,
105
+ source,
106
+ sourceLabel: SOURCE_LABELS[source],
107
+ kind: "skill",
108
+ label: name,
109
+ sourcePath: skillDir,
110
+ decision: "import",
111
+ reason: "SKILL.md found",
112
+ };
113
+ });
114
+ }
115
+ function mcpItems(source, rootDir) {
116
+ return candidateFiles(rootDir, [...MCP_FILENAMES, ...CONFIG_FILENAMES]).flatMap((mcpPath) => extractMcpServers(readJson(mcpPath), source).map((server) => ({
117
+ id: `${source}:mcp:${server.id}`,
118
+ source,
119
+ sourceLabel: SOURCE_LABELS[source],
120
+ kind: "mcp",
121
+ label: server.name,
122
+ sourcePath: mcpPath,
123
+ decision: "copy_disabled",
124
+ reason: "MCP servers are imported disabled until reviewed",
125
+ mcpServer: server,
126
+ })));
127
+ }
128
+ function pluginItems(source, rootDir) {
129
+ return findPluginDirs(rootDir).map((pluginDir) => {
130
+ const name = path.basename(pluginDir);
131
+ return {
132
+ id: `${source}:plugin:${name}`,
133
+ source,
134
+ sourceLabel: SOURCE_LABELS[source],
135
+ kind: "plugin",
136
+ label: name,
137
+ sourcePath: pluginDir,
138
+ decision: "copy_disabled",
139
+ reason: "plugins are quarantined until PulSeed compatibility is reviewed",
140
+ };
141
+ });
142
+ }
143
+ function detectSource(source) {
144
+ for (const rootDir of sourceRoots(source)) {
145
+ if (!pathExists(rootDir))
146
+ continue;
147
+ const items = [
148
+ ...providerItems(source, rootDir),
149
+ ...telegramItems(source, rootDir),
150
+ ...skillItems(source, rootDir),
151
+ ...mcpItems(source, rootDir),
152
+ ...pluginItems(source, rootDir),
153
+ ];
154
+ if (items.length > 0) {
155
+ return {
156
+ id: source,
157
+ label: SOURCE_LABELS[source],
158
+ rootDir,
159
+ items,
160
+ };
161
+ }
162
+ }
163
+ return undefined;
164
+ }
165
+ export function detectSetupImportSources() {
166
+ return ["hermes", "openclaw"].flatMap((source) => {
167
+ const detected = detectSource(source);
168
+ return detected ? [detected] : [];
169
+ });
170
+ }
171
+ //# sourceMappingURL=discovery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../../../../../src/interface/cli/commands/setup/import/discovery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,EACL,iBAAiB,EACjB,UAAU,EACV,WAAW,EACX,QAAQ,EACR,cAAc,EACd,MAAM,GACP,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAOpG,SAAS,cAAc,CAAC,OAAe,EAAE,SAA4B;IACnE,OAAO,MAAM,CAAC;QACZ,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACpD,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;KAC/D,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,cAAc,CAAC,OAAe;IACrC,OAAO,MAAM,CAAC;QACZ,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC;QAC/B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,mBAAmB,CAAC;QACvC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAAC;QACpC,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;KAC3F,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CAAC,MAA2B,EAAE,OAAe;IACjE,MAAM,KAAK,GAAG,MAAM,CAAC;QACnB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC;QACrC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC;QACtC,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC;YACpD,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,EAAE,QAAQ,CAAC;SAC9C,CAAC;KACH,CAAC,CAAC;IACH,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,KAAK,MAAM,SAAS,IAAI,KAAK,EAAE,CAAC;QAC9B,KAAK,MAAM,GAAG,IAAI,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;YAC/C,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;gBAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACjE,KAAK,MAAM,MAAM,IAAI,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC5C,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;oBAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC,UAAU,CAAC,CAAC;AAC5B,CAAC;AAED,SAAS,cAAc,CAAC,OAAe;IACrC,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,KAAK,MAAM,UAAU,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC;QAC3F,KAAK,MAAM,GAAG,IAAI,iBAAiB,CAAC,UAAU,CAAC,EAAE,CAAC;YAChD,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC;gBAC3F,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC,UAAU,CAAC,CAAC;AAC5B,CAAC;AAED,SAAS,WAAW,CAAC,MAA2B;IAC9C,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;IAC1B,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACxB,OAAO,MAAM,CAAC;YACZ,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,IAAI,EAAE;YAC/C,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,IAAI,EAAE;YACxC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE;YAChC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,CAAC;YAChC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,qBAAqB,EAAE,cAAc,CAAC;SAClE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IACrB,CAAC;IACC,OAAO,MAAM,CAAC;QACZ,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,IAAI,EAAE;QACjD,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,IAAI,EAAE;QAC1C,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE;QAClC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC;QACtC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,qBAAqB,EAAE,UAAU,CAAC;KAC9D,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;AACvB,CAAC;AAED,SAAS,aAAa,CAAC,MAA2B,EAAE,OAAe;IACjE,MAAM,GAAG,GAAG;QACV,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1C,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;KACrD,CAAC;IACF,OAAO,cAAc,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;QACtE,MAAM,QAAQ,GAAG,uBAAuB,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QAChF,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3E,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CAAC,MAA2B,EAAE,OAAe;IACjE,MAAM,GAAG,GAAG;QACV,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1C,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;KACrD,CAAC;IACF,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;QACnF,MAAM,QAAQ,GAAG,uBAAuB,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,CAAC;QACpE,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3E,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,WAAW,EAAE,GAAG,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AACvE,CAAC;AAED,SAAS,UAAU,CAAC,MAA2B,EAAE,OAAe;IAC9D,OAAO,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;QACrD,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACrC,OAAO;YACL,EAAE,EAAE,GAAG,MAAM,UAAU,cAAc,CAAC,QAAQ,CAAC,EAAE;YACjD,MAAM;YACN,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC;YAClC,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,IAAI;YACX,UAAU,EAAE,QAAQ;YACpB,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,gBAAgB;SACzB,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,QAAQ,CAAC,MAA2B,EAAE,OAAe;IAC5D,OAAO,cAAc,CAAC,OAAO,EAAE,CAAC,GAAG,aAAa,EAAE,GAAG,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAC1F,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC5D,EAAE,EAAE,GAAG,MAAM,QAAQ,MAAM,CAAC,EAAE,EAAE;QAChC,MAAM;QACN,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC;QAClC,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,MAAM,CAAC,IAAI;QAClB,UAAU,EAAE,OAAO;QACnB,QAAQ,EAAE,eAAe;QACzB,MAAM,EAAE,kDAAkD;QAC1D,SAAS,EAAE,MAAM;KAClB,CAAC,CAAC,CACJ,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,MAA2B,EAAE,OAAe;IAC/D,OAAO,cAAc,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;QAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACtC,OAAO;YACL,EAAE,EAAE,GAAG,MAAM,WAAW,IAAI,EAAE;YAC9B,MAAM;YACN,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC;YAClC,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,IAAI;YACX,UAAU,EAAE,SAAS;YACrB,QAAQ,EAAE,eAAe;YACzB,MAAM,EAAE,iEAAiE;SAC1E,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,YAAY,CAAC,MAA2B;IAC/C,KAAK,MAAM,OAAO,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1C,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;YAAE,SAAS;QACnC,MAAM,KAAK,GAAG;YACZ,GAAG,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC;YACjC,GAAG,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC;YACjC,GAAG,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC;YAC9B,GAAG,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;YAC5B,GAAG,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC;SAChC,CAAC;QACF,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,OAAO;gBACL,EAAE,EAAE,MAAM;gBACV,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC;gBAC5B,OAAO;gBACP,KAAK;aACN,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,wBAAwB;IACtC,OAAQ,CAAC,QAAQ,EAAE,UAAU,CAAW,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;QAC1D,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;QACtC,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { ProviderConfig } from "../../../../../base/llm/provider-config.js";
2
+ import type { SetupImportProviderSettings, SetupImportSelection } from "./types.js";
3
+ export declare function providerConfigPatchFromImport(settings: SetupImportProviderSettings | undefined): Partial<ProviderConfig> | undefined;
4
+ export declare function stepSetupImport(): Promise<SetupImportSelection | undefined>;
5
+ //# sourceMappingURL=flow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flow.d.ts","sourceRoot":"","sources":["../../../../../../src/interface/cli/commands/setup/import/flow.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAIjF,OAAO,KAAK,EAEV,2BAA2B,EAC3B,oBAAoB,EAErB,MAAM,YAAY,CAAC;AAwEpB,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,2BAA2B,GAAG,SAAS,GAChD,OAAO,CAAC,cAAc,CAAC,GAAG,SAAS,CAErC;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAyGjF"}
@@ -0,0 +1,156 @@
1
+ import * as p from "@clack/prompts";
2
+ import { maskKey } from "../../setup-shared.js";
3
+ import { guardCancel } from "../utils.js";
4
+ import { detectSetupImportSources } from "./discovery.js";
5
+ function sourceSummary(sources) {
6
+ return sources
7
+ .map((source) => {
8
+ const counts = source.items.reduce((acc, item) => {
9
+ acc[item.kind] = (acc[item.kind] ?? 0) + 1;
10
+ return acc;
11
+ }, {});
12
+ const suffix = Object.entries(counts)
13
+ .map(([kind, count]) => `${kind}: ${count}`)
14
+ .join(", ");
15
+ return `${source.label}\n root: ${source.rootDir}\n ${suffix}`;
16
+ })
17
+ .join("\n\n");
18
+ }
19
+ function providerPreview(settings) {
20
+ if (!settings)
21
+ return undefined;
22
+ return [
23
+ settings.provider ? `provider=${settings.provider}` : undefined,
24
+ settings.model ? `model=${settings.model}` : undefined,
25
+ settings.adapter ? `adapter=${settings.adapter}` : undefined,
26
+ settings.apiKey ? `api_key=${maskKey(settings.apiKey)}` : undefined,
27
+ settings.baseUrl ? `base_url=${settings.baseUrl}` : undefined,
28
+ ].filter(Boolean).join(", ");
29
+ }
30
+ function itemPreview(item) {
31
+ const decision = item.decision === "copy_disabled" ? "copy disabled" : item.decision;
32
+ const details = item.kind === "provider"
33
+ ? providerPreview(item.providerSettings)
34
+ : item.kind === "telegram"
35
+ ? [
36
+ item.telegramSettings?.botToken ? `bot_token=${maskKey(item.telegramSettings.botToken)}` : undefined,
37
+ item.telegramSettings?.allowedUserIds?.length ? `allowed_users=${item.telegramSettings.allowedUserIds.length}` : undefined,
38
+ ].filter(Boolean).join(", ")
39
+ : item.reason;
40
+ return `[${item.sourceLabel}] ${item.kind}: ${item.label}\n ${decision}${details ? ` - ${details}` : ""}`;
41
+ }
42
+ function preview(sources) {
43
+ return sources
44
+ .flatMap((source) => source.items)
45
+ .map(itemPreview)
46
+ .join("\n\n");
47
+ }
48
+ function mergeProviderSettings(items) {
49
+ return items.find((item) => item.decision !== "skip" && item.providerSettings)?.providerSettings;
50
+ }
51
+ function itemOptionLabel(item) {
52
+ const decision = item.decision === "copy_disabled" ? "copy disabled" : item.decision;
53
+ return `${item.sourceLabel}: ${item.kind} / ${item.label} (${decision})`;
54
+ }
55
+ function defaultProviderConfigFromImport(settings) {
56
+ if (!settings)
57
+ return undefined;
58
+ return {
59
+ ...(settings.provider ? { provider: settings.provider } : {}),
60
+ ...(settings.model ? { model: settings.model } : {}),
61
+ ...(settings.adapter ? { adapter: settings.adapter } : {}),
62
+ ...(settings.apiKey ? { api_key: settings.apiKey } : {}),
63
+ ...(settings.baseUrl ? { base_url: settings.baseUrl } : {}),
64
+ ...(settings.codexCliPath ? { codex_cli_path: settings.codexCliPath } : {}),
65
+ ...(settings.openclaw ? { openclaw: settings.openclaw } : {}),
66
+ };
67
+ }
68
+ export function providerConfigPatchFromImport(settings) {
69
+ return defaultProviderConfigFromImport(settings);
70
+ }
71
+ export async function stepSetupImport() {
72
+ const detectedSources = detectSetupImportSources();
73
+ if (detectedSources.length === 0)
74
+ return undefined;
75
+ p.note(sourceSummary(detectedSources), "Existing agent configs found");
76
+ const wantsImport = guardCancel(await p.confirm({
77
+ message: "Import settings from Hermes Agent / OpenClaw into PulSeed?",
78
+ initialValue: true,
79
+ }));
80
+ if (!wantsImport)
81
+ return undefined;
82
+ let sources = detectedSources;
83
+ if (detectedSources.length > 1) {
84
+ const sourceChoice = guardCancel(await p.select({
85
+ message: "Which existing agent should PulSeed import from?",
86
+ options: detectedSources.map((source) => ({
87
+ value: source.id,
88
+ label: source.label,
89
+ hint: source.rootDir,
90
+ })),
91
+ initialValue: detectedSources.find((source) => source.id === "hermes")?.id ?? detectedSources[0]?.id,
92
+ }));
93
+ sources = detectedSources.filter((source) => source.id === sourceChoice);
94
+ }
95
+ p.note(preview(sources), "Import preview");
96
+ const mode = guardCancel(await p.select({
97
+ message: "How should PulSeed import these settings?",
98
+ options: [
99
+ {
100
+ value: "recommended",
101
+ label: "Import recommended items",
102
+ hint: "provider and skills import; MCP/plugins are copied disabled",
103
+ },
104
+ {
105
+ value: "choose",
106
+ label: "Choose items",
107
+ },
108
+ {
109
+ value: "skip",
110
+ label: "Skip import",
111
+ },
112
+ ],
113
+ initialValue: "recommended",
114
+ }));
115
+ if (mode === "skip")
116
+ return undefined;
117
+ const allItems = sources.flatMap((source) => source.items);
118
+ let items = allItems;
119
+ if (mode === "choose") {
120
+ const selectedIds = new Set(guardCancel(await p.multiselect({
121
+ message: "Select items to import:",
122
+ options: allItems.map((item) => ({
123
+ value: item.id,
124
+ label: itemOptionLabel(item),
125
+ hint: item.reason,
126
+ })),
127
+ initialValues: allItems.map((item) => item.id),
128
+ })));
129
+ items = allItems.map((item) => selectedIds.has(item.id) ? item : { ...item, decision: "skip" });
130
+ }
131
+ const selectedItems = items.filter((item) => item.decision !== "skip");
132
+ const providerItems = selectedItems.filter((item) => item.providerSettings);
133
+ if (providerItems.length > 1) {
134
+ const providerChoice = guardCancel(await p.select({
135
+ message: "Which provider settings should PulSeed use as setup defaults?",
136
+ options: providerItems.map((item) => ({
137
+ value: item.id,
138
+ label: `${item.sourceLabel}: ${item.label}`,
139
+ hint: providerPreview(item.providerSettings),
140
+ })),
141
+ initialValue: providerItems[0]?.id,
142
+ }));
143
+ items = items.map((item) => item.providerSettings && item.id !== providerChoice
144
+ ? { ...item, decision: "skip" }
145
+ : item);
146
+ }
147
+ const providerSettings = mergeProviderSettings(items);
148
+ if (providerSettings) {
149
+ p.log.info("Imported provider settings will be used as defaults. Seedy naming will still be asked.");
150
+ }
151
+ else {
152
+ p.log.info("Import selected. Seedy naming will still be asked.");
153
+ }
154
+ return { sources, items, providerSettings };
155
+ }
156
+ //# sourceMappingURL=flow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flow.js","sourceRoot":"","sources":["../../../../../../src/interface/cli/commands/setup/import/flow.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AAEpC,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAQ1D,SAAS,aAAa,CAAC,OAA4B;IACjD,OAAO,OAAO;SACX,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QACd,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAyB,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YACvE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YAC3C,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CAAC;QACP,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;aAClC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,KAAK,KAAK,EAAE,CAAC;aAC3C,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,OAAO,GAAG,MAAM,CAAC,KAAK,aAAa,MAAM,CAAC,OAAO,OAAO,MAAM,EAAE,CAAC;IACnE,CAAC,CAAC;SACD,IAAI,CAAC,MAAM,CAAC,CAAC;AAClB,CAAC;AAED,SAAS,eAAe,CAAC,QAAiD;IACxE,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChC,OAAO;QACL,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS;QAC/D,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS;QACtD,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS;QAC5D,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;QACnE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS;KAC9D,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,WAAW,CAAC,IAAqB;IACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,KAAK,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;IACrF,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,KAAK,UAAU;QACtC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC;QACxC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU;YACxB,CAAC,CAAC;gBACE,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC,CAAC,aAAa,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;gBACpG,IAAI,CAAC,gBAAgB,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,iBAAiB,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS;aAC3H,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YAChC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;IAChB,OAAO,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,OAAO,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,MAAM,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AAC7G,CAAC;AAED,SAAS,OAAO,CAAC,OAA4B;IAC3C,OAAO,OAAO;SACX,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;SACjC,GAAG,CAAC,WAAW,CAAC;SAChB,IAAI,CAAC,MAAM,CAAC,CAAC;AAClB,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAwB;IACrD,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,MAAM,IAAI,IAAI,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;AACnG,CAAC;AAED,SAAS,eAAe,CAAC,IAAqB;IAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,KAAK,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;IACrF,OAAO,GAAG,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,KAAK,KAAK,QAAQ,GAAG,CAAC;AAC3E,CAAC;AAED,SAAS,+BAA+B,CACtC,QAAiD;IAEjD,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChC,OAAO;QACL,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpD,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxD,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3E,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,QAAiD;IAEjD,OAAO,+BAA+B,CAAC,QAAQ,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,MAAM,eAAe,GAAG,wBAAwB,EAAE,CAAC;IACnD,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAEnD,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,8BAA8B,CAAC,CAAC;IACvE,MAAM,WAAW,GAAG,WAAW,CAC7B,MAAM,CAAC,CAAC,OAAO,CAAC;QACd,OAAO,EAAE,4DAA4D;QACrE,YAAY,EAAE,IAAI;KACnB,CAAC,CACH,CAAC;IACF,IAAI,CAAC,WAAW;QAAE,OAAO,SAAS,CAAC;IAEnC,IAAI,OAAO,GAAG,eAAe,CAAC;IAC9B,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,YAAY,GAAG,WAAW,CAC9B,MAAM,CAAC,CAAC,MAAM,CAAC;YACb,OAAO,EAAE,kDAAkD;YAC3D,OAAO,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBACxC,KAAK,EAAE,MAAM,CAAC,EAAE;gBAChB,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,IAAI,EAAE,MAAM,CAAC,OAAO;aACrB,CAAC,CAAC;YACH,YAAY,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,QAAQ,CAAC,EAAE,EAAE,IAAI,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE;SACrG,CAAC,CACH,CAAC;QACF,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,YAAY,CAAC,CAAC;IAC3E,CAAC;IAGD,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAC3C,MAAM,IAAI,GAAG,WAAW,CACtB,MAAM,CAAC,CAAC,MAAM,CAAC;QACb,OAAO,EAAE,2CAA2C;QACpD,OAAO,EAAE;YACP;gBACE,KAAK,EAAE,aAAsB;gBAC7B,KAAK,EAAE,0BAA0B;gBACjC,IAAI,EAAE,6DAA6D;aACpE;YACD;gBACE,KAAK,EAAE,QAAiB;gBACxB,KAAK,EAAE,cAAc;aACtB;YACD;gBACE,KAAK,EAAE,MAAe;gBACtB,KAAK,EAAE,aAAa;aACrB;SACF;QACD,YAAY,EAAE,aAAsB;KACrC,CAAC,CACH,CAAC;IAEF,IAAI,IAAI,KAAK,MAAM;QAAE,OAAO,SAAS,CAAC;IAEtC,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3D,IAAI,KAAK,GAAG,QAAQ,CAAC;IACrB,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,MAAM,WAAW,GAAG,IAAI,GAAG,CACzB,WAAW,CACT,MAAM,CAAC,CAAC,WAAW,CAAC;YAClB,OAAO,EAAE,yBAAyB;YAClC,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC/B,KAAK,EAAE,IAAI,CAAC,EAAE;gBACd,KAAK,EAAE,eAAe,CAAC,IAAI,CAAC;gBAC5B,IAAI,EAAE,IAAI,CAAC,MAAM;aAClB,CAAC,CAAC;YACH,aAAa,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;SAC/C,CAAC,CACH,CACF,CAAC;QACF,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAC5B,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAe,EAAE,CACzE,CAAC;IACJ,CAAC;IAED,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC;IACvE,MAAM,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC5E,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,cAAc,GAAG,WAAW,CAChC,MAAM,CAAC,CAAC,MAAM,CAAC;YACb,OAAO,EAAE,+DAA+D;YACxE,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBACpC,KAAK,EAAE,IAAI,CAAC,EAAE;gBACd,KAAK,EAAE,GAAG,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,KAAK,EAAE;gBAC3C,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC;aAC7C,CAAC,CAAC;YACH,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE;SACnC,CAAC,CACH,CAAC;QACF,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACzB,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,EAAE,KAAK,cAAc;YACjD,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAe,EAAE;YACxC,CAAC,CAAC,IAAI,CACT,CAAC;IACJ,CAAC;IAED,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;IACtD,IAAI,gBAAgB,EAAE,CAAC;QACrB,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,wFAAwF,CAAC,CAAC;IACvG,CAAC;SAAM,CAAC;QACN,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;IACnE,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC;AAC9C,CAAC"}
@@ -0,0 +1,10 @@
1
+ export declare function unique<T>(values: T[]): T[];
2
+ export declare function pathExists(filePath: string): boolean;
3
+ export declare function pathExistsAsync(filePath: string): Promise<boolean>;
4
+ export declare function readJson(filePath: string): unknown | undefined;
5
+ export declare function readEnvFile(filePath: string): Record<string, string>;
6
+ export declare function listImmediateDirs(parentDir: string): string[];
7
+ export declare function safeImportName(value: string): string;
8
+ export declare function uniqueImportPath(parentDir: string, name: string): Promise<string>;
9
+ export declare function copyDirectoryNoSymlinks(sourceDir: string, targetDir: string): Promise<void>;
10
+ //# sourceMappingURL=fs-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fs-utils.d.ts","sourceRoot":"","sources":["../../../../../../src/interface/cli/commands/setup/import/fs-utils.ts"],"names":[],"mappings":"AAKA,wBAAgB,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAE1C;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAOpD;AAED,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAOxE;AAED,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAU9D;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAiBpE;AAED,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAQ7D;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKpD;AAED,wBAAsB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CASvF;AAED,wBAAsB,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAsBjG"}
@@ -0,0 +1,109 @@
1
+ import * as fs from "node:fs";
2
+ import * as fsp from "node:fs/promises";
3
+ import * as path from "node:path";
4
+ import { load as parseYaml } from "js-yaml";
5
+ export function unique(values) {
6
+ return [...new Set(values)];
7
+ }
8
+ export function pathExists(filePath) {
9
+ try {
10
+ fs.accessSync(filePath);
11
+ return true;
12
+ }
13
+ catch {
14
+ return false;
15
+ }
16
+ }
17
+ export async function pathExistsAsync(filePath) {
18
+ try {
19
+ await fsp.access(filePath);
20
+ return true;
21
+ }
22
+ catch {
23
+ return false;
24
+ }
25
+ }
26
+ export function readJson(filePath) {
27
+ try {
28
+ const raw = fs.readFileSync(filePath, "utf-8");
29
+ if (filePath.endsWith(".yaml") || filePath.endsWith(".yml")) {
30
+ return parseYaml(raw);
31
+ }
32
+ return JSON.parse(raw);
33
+ }
34
+ catch {
35
+ return undefined;
36
+ }
37
+ }
38
+ export function readEnvFile(filePath) {
39
+ try {
40
+ const raw = fs.readFileSync(filePath, "utf-8");
41
+ const entries = raw
42
+ .split(/\r?\n/)
43
+ .flatMap((line) => {
44
+ const trimmed = line.trim();
45
+ if (!trimmed || trimmed.startsWith("#"))
46
+ return [];
47
+ const match = /^([A-Za-z_][A-Za-z0-9_]*)=(.*)$/.exec(trimmed);
48
+ if (!match)
49
+ return [];
50
+ const value = match[2].trim().replace(/^['"]|['"]$/g, "");
51
+ return [[match[1], value]];
52
+ });
53
+ return Object.fromEntries(entries);
54
+ }
55
+ catch {
56
+ return {};
57
+ }
58
+ }
59
+ export function listImmediateDirs(parentDir) {
60
+ try {
61
+ return fs.readdirSync(parentDir, { withFileTypes: true })
62
+ .filter((entry) => entry.isDirectory())
63
+ .map((entry) => path.join(parentDir, entry.name));
64
+ }
65
+ catch {
66
+ return [];
67
+ }
68
+ }
69
+ export function safeImportName(value) {
70
+ return value
71
+ .toLowerCase()
72
+ .replace(/[^a-z0-9._-]+/g, "-")
73
+ .replace(/^-+|-+$/g, "") || "imported";
74
+ }
75
+ export async function uniqueImportPath(parentDir, name) {
76
+ const baseName = safeImportName(name);
77
+ let candidate = path.join(parentDir, baseName);
78
+ let suffix = 2;
79
+ while (await pathExistsAsync(candidate)) {
80
+ candidate = path.join(parentDir, `${baseName}-${suffix}`);
81
+ suffix += 1;
82
+ }
83
+ return candidate;
84
+ }
85
+ export async function copyDirectoryNoSymlinks(sourceDir, targetDir) {
86
+ const stat = await fsp.lstat(sourceDir);
87
+ if (stat.isSymbolicLink()) {
88
+ throw new Error("refusing to copy symlink");
89
+ }
90
+ if (!stat.isDirectory()) {
91
+ throw new Error("source is not a directory");
92
+ }
93
+ await fsp.mkdir(targetDir, { recursive: true });
94
+ const entries = await fsp.readdir(sourceDir, { withFileTypes: true });
95
+ for (const entry of entries) {
96
+ const sourcePath = path.join(sourceDir, entry.name);
97
+ const targetPath = path.join(targetDir, entry.name);
98
+ const entryStat = await fsp.lstat(sourcePath);
99
+ if (entryStat.isSymbolicLink())
100
+ continue;
101
+ if (entryStat.isDirectory()) {
102
+ await copyDirectoryNoSymlinks(sourcePath, targetPath);
103
+ }
104
+ else if (entryStat.isFile()) {
105
+ await fsp.copyFile(sourcePath, targetPath);
106
+ }
107
+ }
108
+ }
109
+ //# sourceMappingURL=fs-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fs-utils.js","sourceRoot":"","sources":["../../../../../../src/interface/cli/commands/setup/import/fs-utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { MCPServerConfig } from "../../../../../base/types/mcp.js";
2
+ import type { SetupImportSourceId } from "./types.js";
3
+ export declare function extractMcpServers(raw: unknown, source: SetupImportSourceId): MCPServerConfig[];
4
+ //# sourceMappingURL=mcp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../../../../../src/interface/cli/commands/setup/import/mcp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAGxE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAkDtD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,mBAAmB,GAAG,eAAe,EAAE,CAyB9F"}