pulseed 0.4.6 → 0.4.7

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 (275) hide show
  1. package/README.md +4 -0
  2. package/dist/adapters/agents/openclaw-acp.d.ts +32 -0
  3. package/dist/adapters/agents/openclaw-acp.d.ts.map +1 -0
  4. package/dist/adapters/agents/openclaw-acp.js +212 -0
  5. package/dist/adapters/agents/openclaw-acp.js.map +1 -0
  6. package/dist/adapters/datasources/openclaw-datasource.d.ts +33 -0
  7. package/dist/adapters/datasources/openclaw-datasource.d.ts.map +1 -0
  8. package/dist/adapters/datasources/openclaw-datasource.js +176 -0
  9. package/dist/adapters/datasources/openclaw-datasource.js.map +1 -0
  10. package/dist/base/state/state-lock.d.ts +3 -1
  11. package/dist/base/state/state-lock.d.ts.map +1 -1
  12. package/dist/base/state/state-lock.js +52 -10
  13. package/dist/base/state/state-lock.js.map +1 -1
  14. package/dist/base/state/state-manager-goal-write.d.ts +4 -0
  15. package/dist/base/state/state-manager-goal-write.d.ts.map +1 -1
  16. package/dist/base/state/state-manager-goal-write.js +45 -3
  17. package/dist/base/state/state-manager-goal-write.js.map +1 -1
  18. package/dist/base/state/state-manager-wal.d.ts.map +1 -1
  19. package/dist/base/state/state-manager-wal.js +12 -0
  20. package/dist/base/state/state-manager-wal.js.map +1 -1
  21. package/dist/base/state/state-manager.d.ts +1 -1
  22. package/dist/base/state/state-manager.d.ts.map +1 -1
  23. package/dist/base/state/state-manager.js +129 -88
  24. package/dist/base/state/state-manager.js.map +1 -1
  25. package/dist/index.d.ts +6 -1
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +3 -0
  28. package/dist/index.js.map +1 -1
  29. package/dist/interface/chat/chat-event-state.d.ts.map +1 -1
  30. package/dist/interface/chat/chat-event-state.js +12 -24
  31. package/dist/interface/chat/chat-event-state.js.map +1 -1
  32. package/dist/interface/chat/chat-events.d.ts +9 -1
  33. package/dist/interface/chat/chat-events.d.ts.map +1 -1
  34. package/dist/interface/chat/chat-runner.d.ts +19 -0
  35. package/dist/interface/chat/chat-runner.d.ts.map +1 -1
  36. package/dist/interface/chat/chat-runner.js +101 -5
  37. package/dist/interface/chat/chat-runner.js.map +1 -1
  38. package/dist/interface/chat/cross-platform-session.d.ts.map +1 -1
  39. package/dist/interface/chat/cross-platform-session.js +36 -0
  40. package/dist/interface/chat/cross-platform-session.js.map +1 -1
  41. package/dist/interface/cli/commands/chat.d.ts.map +1 -1
  42. package/dist/interface/cli/commands/chat.js +9 -0
  43. package/dist/interface/cli/commands/chat.js.map +1 -1
  44. package/dist/interface/cli/commands/daemon.d.ts.map +1 -1
  45. package/dist/interface/cli/commands/daemon.js +14 -0
  46. package/dist/interface/cli/commands/daemon.js.map +1 -1
  47. package/dist/interface/cli/commands/doctor.d.ts +3 -0
  48. package/dist/interface/cli/commands/doctor.d.ts.map +1 -1
  49. package/dist/interface/cli/commands/doctor.js +136 -1
  50. package/dist/interface/cli/commands/doctor.js.map +1 -1
  51. package/dist/interface/cli/commands/setup/import/apply.d.ts +3 -0
  52. package/dist/interface/cli/commands/setup/import/apply.d.ts.map +1 -0
  53. package/dist/interface/cli/commands/setup/import/apply.js +140 -0
  54. package/dist/interface/cli/commands/setup/import/apply.js.map +1 -0
  55. package/dist/interface/cli/commands/setup/import/constants.d.ts +5 -0
  56. package/dist/interface/cli/commands/setup/import/constants.d.ts.map +1 -0
  57. package/dist/interface/cli/commands/setup/import/constants.js +19 -0
  58. package/dist/interface/cli/commands/setup/import/constants.js.map +1 -0
  59. package/dist/interface/cli/commands/setup/import/discovery.d.ts +3 -0
  60. package/dist/interface/cli/commands/setup/import/discovery.d.ts.map +1 -0
  61. package/dist/interface/cli/commands/setup/import/discovery.js +140 -0
  62. package/dist/interface/cli/commands/setup/import/discovery.js.map +1 -0
  63. package/dist/interface/cli/commands/setup/import/flow.d.ts +5 -0
  64. package/dist/interface/cli/commands/setup/import/flow.d.ts.map +1 -0
  65. package/dist/interface/cli/commands/setup/import/flow.js +138 -0
  66. package/dist/interface/cli/commands/setup/import/flow.js.map +1 -0
  67. package/dist/interface/cli/commands/setup/import/fs-utils.d.ts +9 -0
  68. package/dist/interface/cli/commands/setup/import/fs-utils.d.ts.map +1 -0
  69. package/dist/interface/cli/commands/setup/import/fs-utils.js +83 -0
  70. package/dist/interface/cli/commands/setup/import/fs-utils.js.map +1 -0
  71. package/dist/interface/cli/commands/setup/import/mcp.d.ts +4 -0
  72. package/dist/interface/cli/commands/setup/import/mcp.d.ts.map +1 -0
  73. package/dist/interface/cli/commands/setup/import/mcp.js +71 -0
  74. package/dist/interface/cli/commands/setup/import/mcp.js.map +1 -0
  75. package/dist/interface/cli/commands/setup/import/parse.d.ts +7 -0
  76. package/dist/interface/cli/commands/setup/import/parse.d.ts.map +1 -0
  77. package/dist/interface/cli/commands/setup/import/parse.js +40 -0
  78. package/dist/interface/cli/commands/setup/import/parse.js.map +1 -0
  79. package/dist/interface/cli/commands/setup/import/provider.d.ts +4 -0
  80. package/dist/interface/cli/commands/setup/import/provider.d.ts.map +1 -0
  81. package/dist/interface/cli/commands/setup/import/provider.js +142 -0
  82. package/dist/interface/cli/commands/setup/import/provider.js.map +1 -0
  83. package/dist/interface/cli/commands/setup/import/types.d.ts +53 -0
  84. package/dist/interface/cli/commands/setup/import/types.d.ts.map +1 -0
  85. package/dist/interface/cli/commands/setup/import/types.js +2 -0
  86. package/dist/interface/cli/commands/setup/import/types.js.map +1 -0
  87. package/dist/interface/cli/commands/setup/steps-adapter.d.ts +1 -1
  88. package/dist/interface/cli/commands/setup/steps-adapter.d.ts.map +1 -1
  89. package/dist/interface/cli/commands/setup/steps-adapter.js +32 -5
  90. package/dist/interface/cli/commands/setup/steps-adapter.js.map +1 -1
  91. package/dist/interface/cli/commands/setup/steps-identity.d.ts +2 -2
  92. package/dist/interface/cli/commands/setup/steps-identity.d.ts.map +1 -1
  93. package/dist/interface/cli/commands/setup/steps-identity.js +10 -4
  94. package/dist/interface/cli/commands/setup/steps-identity.js.map +1 -1
  95. package/dist/interface/cli/commands/setup/steps-provider.d.ts +4 -4
  96. package/dist/interface/cli/commands/setup/steps-provider.d.ts.map +1 -1
  97. package/dist/interface/cli/commands/setup/steps-provider.js +58 -10
  98. package/dist/interface/cli/commands/setup/steps-provider.js.map +1 -1
  99. package/dist/interface/cli/commands/setup/steps-runtime.d.ts.map +1 -1
  100. package/dist/interface/cli/commands/setup/steps-runtime.js +2 -3
  101. package/dist/interface/cli/commands/setup/steps-runtime.js.map +1 -1
  102. package/dist/interface/cli/commands/setup-wizard.d.ts.map +1 -1
  103. package/dist/interface/cli/commands/setup-wizard.js +309 -62
  104. package/dist/interface/cli/commands/setup-wizard.js.map +1 -1
  105. package/dist/interface/cli/setup.d.ts.map +1 -1
  106. package/dist/interface/cli/setup.js +1 -1
  107. package/dist/interface/cli/setup.js.map +1 -1
  108. package/dist/orchestrator/execution/agent-loop/agent-loop-session-state.d.ts +1 -0
  109. package/dist/orchestrator/execution/agent-loop/agent-loop-session-state.d.ts.map +1 -1
  110. package/dist/orchestrator/execution/agent-loop/agent-loop-session-state.js +91 -1
  111. package/dist/orchestrator/execution/agent-loop/agent-loop-session-state.js.map +1 -1
  112. package/dist/orchestrator/execution/pipeline-executor.d.ts +1 -0
  113. package/dist/orchestrator/execution/pipeline-executor.d.ts.map +1 -1
  114. package/dist/orchestrator/execution/pipeline-executor.js +39 -8
  115. package/dist/orchestrator/execution/pipeline-executor.js.map +1 -1
  116. package/dist/orchestrator/execution/result-reconciler.d.ts.map +1 -1
  117. package/dist/orchestrator/execution/result-reconciler.js +79 -54
  118. package/dist/orchestrator/execution/result-reconciler.js.map +1 -1
  119. package/dist/orchestrator/execution/task/task-execution-helpers.d.ts +2 -1
  120. package/dist/orchestrator/execution/task/task-execution-helpers.d.ts.map +1 -1
  121. package/dist/orchestrator/execution/task/task-execution-helpers.js +11 -1
  122. package/dist/orchestrator/execution/task/task-execution-helpers.js.map +1 -1
  123. package/dist/orchestrator/execution/task/task-lifecycle.d.ts +1 -1
  124. package/dist/orchestrator/execution/task/task-lifecycle.d.ts.map +1 -1
  125. package/dist/orchestrator/execution/task/task-lifecycle.js +33 -0
  126. package/dist/orchestrator/execution/task/task-lifecycle.js.map +1 -1
  127. package/dist/orchestrator/goal/goal-dependency-graph.d.ts.map +1 -1
  128. package/dist/orchestrator/goal/goal-dependency-graph.js +20 -8
  129. package/dist/orchestrator/goal/goal-dependency-graph.js.map +1 -1
  130. package/dist/orchestrator/goal/goal-refiner.d.ts +3 -5
  131. package/dist/orchestrator/goal/goal-refiner.d.ts.map +1 -1
  132. package/dist/orchestrator/goal/goal-refiner.js +3 -5
  133. package/dist/orchestrator/goal/goal-refiner.js.map +1 -1
  134. package/dist/orchestrator/knowledge/memory/memory-lifecycle.d.ts +2 -0
  135. package/dist/orchestrator/knowledge/memory/memory-lifecycle.d.ts.map +1 -0
  136. package/dist/orchestrator/knowledge/memory/memory-lifecycle.js +2 -0
  137. package/dist/orchestrator/knowledge/memory/memory-lifecycle.js.map +1 -0
  138. package/dist/orchestrator/strategy/cross-goal-portfolio.d.ts.map +1 -1
  139. package/dist/orchestrator/strategy/cross-goal-portfolio.js +20 -12
  140. package/dist/orchestrator/strategy/cross-goal-portfolio.js.map +1 -1
  141. package/dist/orchestrator/strategy/portfolio-manager.d.ts.map +1 -1
  142. package/dist/orchestrator/strategy/portfolio-manager.js +8 -4
  143. package/dist/orchestrator/strategy/portfolio-manager.js.map +1 -1
  144. package/dist/orchestrator/strategy/strategy-manager-base.d.ts.map +1 -1
  145. package/dist/orchestrator/strategy/strategy-manager-base.js +29 -24
  146. package/dist/orchestrator/strategy/strategy-manager-base.js.map +1 -1
  147. package/dist/platform/dream/dream-soil-sync.d.ts +2 -0
  148. package/dist/platform/dream/dream-soil-sync.d.ts.map +1 -1
  149. package/dist/platform/dream/dream-soil-sync.js +19 -0
  150. package/dist/platform/dream/dream-soil-sync.js.map +1 -1
  151. package/dist/platform/drive/satisficing-judge.d.ts.map +1 -1
  152. package/dist/platform/drive/satisficing-judge.js +20 -6
  153. package/dist/platform/drive/satisficing-judge.js.map +1 -1
  154. package/dist/platform/knowledge/knowledge-manager-lint.d.ts.map +1 -1
  155. package/dist/platform/knowledge/knowledge-manager-lint.js +4 -3
  156. package/dist/platform/knowledge/knowledge-manager-lint.js.map +1 -1
  157. package/dist/platform/knowledge/knowledge-manager.d.ts.map +1 -1
  158. package/dist/platform/knowledge/knowledge-manager.js +2 -1
  159. package/dist/platform/knowledge/knowledge-manager.js.map +1 -1
  160. package/dist/platform/knowledge/knowledge-search.d.ts.map +1 -1
  161. package/dist/platform/knowledge/knowledge-search.js +15 -3
  162. package/dist/platform/knowledge/knowledge-search.js.map +1 -1
  163. package/dist/platform/knowledge/learning/learning-cross-goal.d.ts.map +1 -1
  164. package/dist/platform/knowledge/learning/learning-cross-goal.js +9 -5
  165. package/dist/platform/knowledge/learning/learning-cross-goal.js.map +1 -1
  166. package/dist/platform/observation/observation-apply.d.ts.map +1 -1
  167. package/dist/platform/observation/observation-apply.js +93 -99
  168. package/dist/platform/observation/observation-apply.js.map +1 -1
  169. package/dist/platform/soil/compiled-memory-projections.d.ts +12 -0
  170. package/dist/platform/soil/compiled-memory-projections.d.ts.map +1 -0
  171. package/dist/platform/soil/compiled-memory-projections.js +238 -0
  172. package/dist/platform/soil/compiled-memory-projections.js.map +1 -0
  173. package/dist/platform/soil/content-projections.d.ts +3 -7
  174. package/dist/platform/soil/content-projections.d.ts.map +1 -1
  175. package/dist/platform/soil/content-projections.js +67 -105
  176. package/dist/platform/soil/content-projections.js.map +1 -1
  177. package/dist/platform/soil/context-compiler.d.ts +34 -0
  178. package/dist/platform/soil/context-compiler.d.ts.map +1 -0
  179. package/dist/platform/soil/context-compiler.js +298 -0
  180. package/dist/platform/soil/context-compiler.js.map +1 -0
  181. package/dist/platform/soil/context-evaluation.d.ts +63 -0
  182. package/dist/platform/soil/context-evaluation.d.ts.map +1 -0
  183. package/dist/platform/soil/context-evaluation.js +90 -0
  184. package/dist/platform/soil/context-evaluation.js.map +1 -0
  185. package/dist/platform/soil/contracts.d.ts +269 -30
  186. package/dist/platform/soil/contracts.d.ts.map +1 -1
  187. package/dist/platform/soil/contracts.js +87 -0
  188. package/dist/platform/soil/contracts.js.map +1 -1
  189. package/dist/platform/soil/doctor.d.ts +5 -1
  190. package/dist/platform/soil/doctor.d.ts.map +1 -1
  191. package/dist/platform/soil/doctor.js +94 -1
  192. package/dist/platform/soil/doctor.js.map +1 -1
  193. package/dist/platform/soil/feedback-store.d.ts +10 -0
  194. package/dist/platform/soil/feedback-store.d.ts.map +1 -0
  195. package/dist/platform/soil/feedback-store.js +38 -0
  196. package/dist/platform/soil/feedback-store.js.map +1 -0
  197. package/dist/platform/soil/health.d.ts +35 -0
  198. package/dist/platform/soil/health.d.ts.map +1 -0
  199. package/dist/platform/soil/health.js +126 -0
  200. package/dist/platform/soil/health.js.map +1 -0
  201. package/dist/platform/soil/index-store.d.ts.map +1 -1
  202. package/dist/platform/soil/index-store.js +10 -1
  203. package/dist/platform/soil/index-store.js.map +1 -1
  204. package/dist/platform/soil/index.d.ts +4 -0
  205. package/dist/platform/soil/index.d.ts.map +1 -1
  206. package/dist/platform/soil/index.js +4 -0
  207. package/dist/platform/soil/index.js.map +1 -1
  208. package/dist/platform/soil/projection-support.d.ts +48 -0
  209. package/dist/platform/soil/projection-support.d.ts.map +1 -0
  210. package/dist/platform/soil/projection-support.js +107 -0
  211. package/dist/platform/soil/projection-support.js.map +1 -0
  212. package/dist/platform/soil/runtime-rebuild.d.ts.map +1 -1
  213. package/dist/platform/soil/runtime-rebuild.js +1 -2
  214. package/dist/platform/soil/runtime-rebuild.js.map +1 -1
  215. package/dist/platform/soil/sqlite-repository.d.ts.map +1 -1
  216. package/dist/platform/soil/sqlite-repository.js +51 -15
  217. package/dist/platform/soil/sqlite-repository.js.map +1 -1
  218. package/dist/runtime/command-dispatcher.d.ts +2 -0
  219. package/dist/runtime/command-dispatcher.d.ts.map +1 -1
  220. package/dist/runtime/command-dispatcher.js +11 -0
  221. package/dist/runtime/command-dispatcher.js.map +1 -1
  222. package/dist/runtime/control/daemon-runtime-control-executor.d.ts +13 -0
  223. package/dist/runtime/control/daemon-runtime-control-executor.d.ts.map +1 -0
  224. package/dist/runtime/control/daemon-runtime-control-executor.js +46 -0
  225. package/dist/runtime/control/daemon-runtime-control-executor.js.map +1 -0
  226. package/dist/runtime/control/index.d.ts +7 -0
  227. package/dist/runtime/control/index.d.ts.map +1 -0
  228. package/dist/runtime/control/index.js +4 -0
  229. package/dist/runtime/control/index.js.map +1 -0
  230. package/dist/runtime/control/runtime-control-intent.d.ts +7 -0
  231. package/dist/runtime/control/runtime-control-intent.d.ts.map +1 -0
  232. package/dist/runtime/control/runtime-control-intent.js +31 -0
  233. package/dist/runtime/control/runtime-control-intent.js.map +1 -0
  234. package/dist/runtime/control/runtime-control-service.d.ts +44 -0
  235. package/dist/runtime/control/runtime-control-service.d.ts.map +1 -0
  236. package/dist/runtime/control/runtime-control-service.js +143 -0
  237. package/dist/runtime/control/runtime-control-service.js.map +1 -0
  238. package/dist/runtime/daemon/client.d.ts +4 -0
  239. package/dist/runtime/daemon/client.d.ts.map +1 -1
  240. package/dist/runtime/daemon/client.js +9 -5
  241. package/dist/runtime/daemon/client.js.map +1 -1
  242. package/dist/runtime/daemon/runner.d.ts +2 -0
  243. package/dist/runtime/daemon/runner.d.ts.map +1 -1
  244. package/dist/runtime/daemon/runner.js +72 -1
  245. package/dist/runtime/daemon/runner.js.map +1 -1
  246. package/dist/runtime/event/server.d.ts +1 -0
  247. package/dist/runtime/event/server.d.ts.map +1 -1
  248. package/dist/runtime/event/server.js +36 -0
  249. package/dist/runtime/event/server.js.map +1 -1
  250. package/dist/runtime/store/index.d.ts +3 -0
  251. package/dist/runtime/store/index.d.ts.map +1 -1
  252. package/dist/runtime/store/index.js +2 -0
  253. package/dist/runtime/store/index.js.map +1 -1
  254. package/dist/runtime/store/runtime-operation-schemas.d.ts +213 -0
  255. package/dist/runtime/store/runtime-operation-schemas.d.ts.map +1 -0
  256. package/dist/runtime/store/runtime-operation-schemas.js +62 -0
  257. package/dist/runtime/store/runtime-operation-schemas.js.map +1 -0
  258. package/dist/runtime/store/runtime-operation-store.d.ts +17 -0
  259. package/dist/runtime/store/runtime-operation-store.d.ts.map +1 -0
  260. package/dist/runtime/store/runtime-operation-store.js +57 -0
  261. package/dist/runtime/store/runtime-operation-store.js.map +1 -0
  262. package/dist/runtime/store/runtime-schemas.d.ts +2 -2
  263. package/dist/runtime/types/daemon.d.ts +3 -0
  264. package/dist/runtime/types/daemon.d.ts.map +1 -1
  265. package/dist/runtime/types/daemon.js +1 -0
  266. package/dist/runtime/types/daemon.js.map +1 -1
  267. package/dist/tools/execution/RunAdapterTool/RunAdapterTool.d.ts.map +1 -1
  268. package/dist/tools/execution/RunAdapterTool/RunAdapterTool.js +20 -0
  269. package/dist/tools/execution/RunAdapterTool/RunAdapterTool.js.map +1 -1
  270. package/dist/tools/execution/SoilDoctorTool/prompt.d.ts +1 -1
  271. package/dist/tools/execution/SoilDoctorTool/prompt.d.ts.map +1 -1
  272. package/dist/tools/execution/SoilDoctorTool/prompt.js +1 -1
  273. package/dist/tools/execution/SoilDoctorTool/prompt.js.map +1 -1
  274. package/dist/tools/system/EnvTool/EnvTool.d.ts +4 -4
  275. package/package.json +1 -1
@@ -1,11 +1,13 @@
1
1
  // ─── pulseed doctor — installation health check ───
2
2
  import * as fs from "node:fs";
3
3
  import * as path from "node:path";
4
- import { getPulseedDirPath, getLogsDir, getGoalsDir } from "../../../base/utils/paths.js";
4
+ import yaml from "js-yaml";
5
+ import { getPulseedDirPath, getLogsDir, getGoalsDir, getPluginsDir } from "../../../base/utils/paths.js";
5
6
  import { execFileNoThrow } from "../../../base/utils/execFileNoThrow.js";
6
7
  import { getCliRunnerBuildPath } from "../../../base/utils/pulseed-meta.js";
7
8
  import { readJsonFileOrNull } from "../../../base/utils/json-io.js";
8
9
  import { DaemonConfigSchema } from "../../../base/types/daemon.js";
10
+ import { PluginManifestSchema } from "../../../base/types/plugin.js";
9
11
  import { PIDManager } from "../../../runtime/pid-manager.js";
10
12
  import { probeDaemonHealth } from "../../../runtime/daemon/client.js";
11
13
  import { ApprovalStore, OutboxStore, RuntimeHealthStore, compactRuntimeHealthKpi, createRuntimeStorePaths, } from "../../../runtime/store/index.js";
@@ -62,6 +64,16 @@ function formatLivePingDetail(latencyMs, error) {
62
64
  const latency = formatDurationMs(latencyMs);
63
65
  return error ? `live ping failed (${latency}; ${error})` : `live ping ok (${latency})`;
64
66
  }
67
+ function formatOctalMode(mode) {
68
+ return `0${(mode & 0o777).toString(8)}`;
69
+ }
70
+ function isGroupOrWorldAccessible(mode) {
71
+ return (mode & 0o077) !== 0;
72
+ }
73
+ function formatNameList(names, limit = 5) {
74
+ const shown = names.slice(0, limit).join(", ");
75
+ return names.length > limit ? `${shown}, +${names.length - limit} more` : shown;
76
+ }
65
77
  // ─── Individual checks ───
66
78
  export function checkNodeVersion() {
67
79
  const version = process.versions.node;
@@ -128,6 +140,126 @@ export function checkApiKey(baseDir) {
128
140
  detail: "ANTHROPIC_API_KEY / OPENAI_API_KEY not set (checked env + provider.json)",
129
141
  };
130
142
  }
143
+ export function checkStateDirectoryPermissions(baseDir) {
144
+ const dir = baseDir ?? getPulseedDirPath();
145
+ const displayDir = dir.replace(process.env["HOME"] ?? "", "~");
146
+ if (!fs.existsSync(dir)) {
147
+ return { name: "State permissions", status: "warn", detail: `${displayDir} not found` };
148
+ }
149
+ try {
150
+ const mode = fs.statSync(dir).mode;
151
+ if (isGroupOrWorldAccessible(mode)) {
152
+ return {
153
+ name: "State permissions",
154
+ status: "warn",
155
+ detail: `${displayDir} is ${formatOctalMode(mode)}; recommended 0700`,
156
+ };
157
+ }
158
+ return { name: "State permissions", status: "pass", detail: `${displayDir} is ${formatOctalMode(mode)}` };
159
+ }
160
+ catch {
161
+ return { name: "State permissions", status: "warn", detail: `${displayDir} could not be inspected` };
162
+ }
163
+ }
164
+ export function checkProviderConfigPermissions(baseDir) {
165
+ const dir = baseDir ?? getPulseedDirPath();
166
+ const configPath = path.join(dir, "provider.json");
167
+ const displayPath = configPath.replace(process.env["HOME"] ?? "", "~");
168
+ if (!fs.existsSync(configPath)) {
169
+ return { name: "Provider permissions", status: "warn", detail: `${displayPath} not found` };
170
+ }
171
+ let hasStoredApiKey = false;
172
+ try {
173
+ const content = fs.readFileSync(configPath, "utf-8");
174
+ const parsed = JSON.parse(content);
175
+ hasStoredApiKey =
176
+ parsed !== null &&
177
+ typeof parsed === "object" &&
178
+ typeof parsed["api_key"] === "string" &&
179
+ (parsed["api_key"] ?? "").length > 0;
180
+ }
181
+ catch {
182
+ return { name: "Provider permissions", status: "warn", detail: `${displayPath} could not be parsed` };
183
+ }
184
+ if (!hasStoredApiKey) {
185
+ return { name: "Provider permissions", status: "pass", detail: "no api_key stored in provider.json" };
186
+ }
187
+ try {
188
+ const mode = fs.statSync(configPath).mode;
189
+ if (isGroupOrWorldAccessible(mode)) {
190
+ return {
191
+ name: "Provider permissions",
192
+ status: "warn",
193
+ detail: `${displayPath} is ${formatOctalMode(mode)}; recommended 0600 because it stores api_key`,
194
+ };
195
+ }
196
+ return { name: "Provider permissions", status: "pass", detail: `${displayPath} is ${formatOctalMode(mode)}` };
197
+ }
198
+ catch {
199
+ return { name: "Provider permissions", status: "warn", detail: `${displayPath} could not be inspected` };
200
+ }
201
+ }
202
+ export function checkPluginPermissionWarnings(baseDir) {
203
+ const pluginsDir = getPluginsDir(baseDir ?? getPulseedDirPath());
204
+ if (!fs.existsSync(pluginsDir)) {
205
+ return { name: "Plugin permissions", status: "pass", detail: "no plugins installed" };
206
+ }
207
+ let entries;
208
+ try {
209
+ entries = fs.readdirSync(pluginsDir, { withFileTypes: true });
210
+ }
211
+ catch {
212
+ return { name: "Plugin permissions", status: "warn", detail: "could not read plugins directory" };
213
+ }
214
+ const shellPlugins = [];
215
+ let unreadableManifestCount = 0;
216
+ for (const entry of entries) {
217
+ if (!entry.isDirectory())
218
+ continue;
219
+ const pluginDir = path.join(pluginsDir, entry.name);
220
+ const yamlPath = path.join(pluginDir, "plugin.yaml");
221
+ const jsonPath = path.join(pluginDir, "plugin.json");
222
+ let raw;
223
+ try {
224
+ if (fs.existsSync(yamlPath)) {
225
+ raw = yaml.load(fs.readFileSync(yamlPath, "utf-8"));
226
+ }
227
+ else if (fs.existsSync(jsonPath)) {
228
+ raw = JSON.parse(fs.readFileSync(jsonPath, "utf-8"));
229
+ }
230
+ else {
231
+ continue;
232
+ }
233
+ }
234
+ catch {
235
+ unreadableManifestCount += 1;
236
+ continue;
237
+ }
238
+ const parsed = PluginManifestSchema.safeParse(raw);
239
+ if (!parsed.success) {
240
+ unreadableManifestCount += 1;
241
+ continue;
242
+ }
243
+ if (parsed.data.permissions.shell) {
244
+ shellPlugins.push(parsed.data.name);
245
+ }
246
+ }
247
+ if (shellPlugins.length > 0) {
248
+ return {
249
+ name: "Plugin permissions",
250
+ status: "warn",
251
+ detail: `${shellPlugins.length} plugin${shellPlugins.length === 1 ? "" : "s"} request shell permission: ${formatNameList(shellPlugins)}`,
252
+ };
253
+ }
254
+ if (unreadableManifestCount > 0) {
255
+ return {
256
+ name: "Plugin permissions",
257
+ status: "warn",
258
+ detail: `${unreadableManifestCount} plugin manifest${unreadableManifestCount === 1 ? "" : "s"} could not be inspected`,
259
+ };
260
+ }
261
+ return { name: "Plugin permissions", status: "pass", detail: "no shell-capable plugins found" };
262
+ }
131
263
  export function checkGoals(baseDir) {
132
264
  const goalsDir = getGoalsDir(baseDir ?? getPulseedDirPath());
133
265
  if (!fs.existsSync(goalsDir)) {
@@ -375,6 +507,9 @@ export async function cmdDoctor(_args) {
375
507
  checkPulseedDir(baseDir),
376
508
  checkProviderConfig(baseDir),
377
509
  checkApiKey(baseDir),
510
+ checkStateDirectoryPermissions(baseDir),
511
+ checkProviderConfigPermissions(baseDir),
512
+ checkPluginPermissionWarnings(baseDir),
378
513
  checkGoals(baseDir),
379
514
  checkLogDirectory(baseDir),
380
515
  checkBuild(),
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../../src/interface/cli/commands/doctor.ts"],"names":[],"mappings":"AAAA,qDAAqD;AAErD,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC1F,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EACL,aAAa,EACb,WAAW,EACX,kBAAkB,EAClB,uBAAuB,EACvB,uBAAuB,GAExB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,+BAA+B,EAAiC,MAAM,wCAAwC,CAAC;AACxH,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,2BAA2B,EAAE,MAAM,6DAA6D,CAAC;AAC1G,OAAO,EAAE,uCAAuC,EAAE,8BAA8B,EAAE,MAAM,4EAA4E,CAAC;AACrK,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAYrE,SAAS,wBAAwB,CAAC,OAAe,EAAE,cAAuB;IACxE,IAAI,CAAC,cAAc,IAAI,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACpD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC;QACpC,CAAC,CAAC,cAAc;QAChB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;AAC5C,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,OAAe;IAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IACrD,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;IAClE,MAAM,SAAS,GACb,CAAC,MAAM,kBAAkB,CAAC,UAAU,CAAC,CAAC;QACtC,CAAC,MAAM,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACnF,OAAO,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;AACtE,CAAC;AAED,SAAS,uBAAuB,CAAC,SAAiB;IAChD,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;IAClC,IAAI,EAAE,GAAG,KAAK;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;IACvD,IAAI,EAAE,GAAG,OAAO;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC;IAC1D,IAAI,EAAE,GAAG,QAAQ;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAC7D,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC;AAC7C,CAAC;AAED,SAAS,sBAAsB,CAAC,GAAqB;IACnD,MAAM,OAAO,GAAG,uBAAuB,CAAC,GAAG,CAAC,CAAC;IAC7C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IACD,OAAO,eAAe,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,WAAW,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,YAAY,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC;AAC7L,CAAC;AAED,SAAS,gBAAgB,CAAC,EAAU;IAClC,IAAI,EAAE,GAAG,IAAI;QAAE,OAAO,GAAG,EAAE,IAAI,CAAC;IAChC,IAAI,EAAE,GAAG,MAAM;QAAE,OAAO,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IACrD,OAAO,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;AACxC,CAAC;AAED,SAAS,aAAa,CAAC,KAAoB;IACzC,OAAO,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;AACjE,CAAC;AAED,SAAS,oBAAoB,CAAC,SAAiB,EAAE,KAAc;IAC7D,MAAM,OAAO,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAC5C,OAAO,KAAK,CAAC,CAAC,CAAC,qBAAqB,OAAO,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC,iBAAiB,OAAO,GAAG,CAAC;AACzF,CAAC;AAED,4BAA4B;AAE5B,MAAM,UAAU,gBAAgB;IAC9B,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;IACtC,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;IACzD,IAAI,KAAK,IAAI,EAAE,EAAE,CAAC;QAChB,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,OAAO,mBAAmB,EAAE,CAAC;IAC7F,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,OAAO,mBAAmB,EAAE,CAAC;AAC7F,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAAgB;IAC9C,MAAM,GAAG,GAAG,OAAO,IAAI,iBAAiB,EAAE,CAAC;IAC3C,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;IAC/D,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,SAAS,EAAE,CAAC;IACvF,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,YAAY,EAAE,CAAC;AAC1F,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAAgB;IAClD,MAAM,GAAG,GAAG,OAAO,IAAI,iBAAiB,EAAE,CAAC;IAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;IACnD,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;IAEvE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,YAAY,EAAE,CAAC;IACzF,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACrD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACpB,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,QAAQ,EAAE,CAAC;IACrF,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,kBAAkB,EAAE,CAAC;IAC/F,CAAC;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,OAAgB;IAC1C,oCAAoC;IACpC,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IACtD,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAEhD,IAAI,YAAY,IAAI,SAAS,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,gBAAgB,CAAC;QACpE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,uBAAuB,EAAE,CAAC;IACtF,CAAC;IAED,sBAAsB;IACtB,MAAM,GAAG,GAAG,OAAO,IAAI,iBAAiB,EAAE,CAAC;IAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;IAEnD,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YACrD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAY,CAAC;YAC9C,IACE,MAAM,KAAK,IAAI;gBACf,OAAO,MAAM,KAAK,QAAQ;gBAC1B,SAAS,IAAI,MAAM;gBACnB,OAAQ,MAAkC,CAAC,SAAS,CAAC,KAAK,QAAQ;gBACjE,MAAiC,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,EACxD,CAAC;gBACD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,gCAAgC,EAAE,CAAC;YACvF,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,+DAA+D;QACjE,CAAC;IACH,CAAC;IAED,OAAO;QACL,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,MAAM;QACd,MAAM,EAAE,0EAA0E;KACnF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,OAAgB;IACzC,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,IAAI,iBAAiB,EAAE,CAAC,CAAC;IAE7D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,2BAA2B,EAAE,CAAC;IAChF,CAAC;IAED,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAClE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBACnD,KAAK,IAAI,CAAC,CAAC;gBACX,SAAS;YACX,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACzB,SAAS;YACX,CAAC;YACD,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC;gBAChE,KAAK,IAAI,CAAC,CAAC;YACb,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,gCAAgC,EAAE,CAAC;IACrF,CAAC;IAED,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;QAChB,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC;IACzE,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,aAAa,EAAE,CAAC;AACxG,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,OAAgB;IAChD,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,IAAI,iBAAiB,EAAE,CAAC,CAAC;IAC3D,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;IAEnE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,YAAY,EAAE,CAAC;IACtF,CAAC;IAED,IAAI,CAAC;QACH,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC1C,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,WAAW,EAAE,CAAC;IACrF,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,eAAe,EAAE,CAAC;IACzF,CAAC;AACH,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,SAAS,GAAG,qBAAqB,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;IAC3E,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,IAAI,SAAS,CAAC;IAEzE,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,SAAS,EAAE,CAAC;IAC5E,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,iCAAiC,EAAE,CAAC;AACpG,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAAgB;IAChD,MAAM,GAAG,GAAG,OAAO,IAAI,iBAAiB,EAAE,CAAC;IAC3C,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;IACvC,MAAM,aAAa,GAAG,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;IAC1D,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;IAC7C,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACjD,MAAM,WAAW,GAAG,wBAAwB,CAAC,GAAG,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC;IAC7E,MAAM,aAAa,GAAG,MAAM,IAAI,kBAAkB,CAAC,WAAW,CAAC,CAAC,YAAY,EAAE,CAAC;IAC/E,MAAM,cAAc,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC,CAAC;IACrF,MAAM,WAAW,GAAG,cAAc,KAAK,IAAI;QACzC,CAAC,CAAC,iBAAiB,CAAC,SAAS,CAAC,cAAc,CAAC;QAC7C,CAAC,CAAC,IAAI,CAAC;IAET,IAAI,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;QACzC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,uBAAuB,EAAE,CAAC;IAC7E,CAAC;IAED,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,IAAI,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;IAC7D,IAAI,OAAO,KAAK,IAAI,IAAI,aAAa,EAAE,CAAC;QACtC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,mCAAmC,EAAE,CAAC;IACzF,CAAC;IAED,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,IAAI,OAAO,EAAE,WAAW,IAAI,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC;IACxF,MAAM,WAAW,GAAG,OAAO,EAAE,YAAY,IAAI,SAAS,CAAC,QAAQ,IAAI,IAAI,CAAC;IACxE,MAAM,YAAY,GAAG,OAAO,UAAU,KAAK,QAAQ,IAAI,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAChG,MAAM,aAAa,GAAG,OAAO,WAAW,KAAK,QAAQ,IAAI,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACnG,MAAM,YAAY,GAAG,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3E,MAAM,UAAU,GAAG,aAAa,EAAE,GAAG,CAAC;IACtC,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1E,MAAM,YAAY,GAAG,UAAU;QAC7B,CAAC,CAAC,uBAAuB,CAAC,UAAU,CAAC,EAAE,MAAM,IAAI,UAAU;QAC3D,CAAC,CAAC,UAAU,CAAC;IACf,MAAM,QAAQ,GAAG,MAAM,2BAA2B,CAAC,GAAG,CAAC,CAAC;IACxD,MAAM,WAAW,GACf,QAAQ,CAAC,WAAW,GAAG,CAAC;QACtB,CAAC,CAAC,gBAAgB,QAAQ,CAAC,SAAS,IAAI,QAAQ,CAAC,cAAc,KAAK,aAAa,CAAC,QAAQ,CAAC,YAAY,CAAC,gBAAgB,QAAQ,CAAC,cAAc,IAAI,QAAQ,CAAC,WAAW,WAAW,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,WAAW,KAAK,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,IAC7P,QAAQ,CAAC,2BAA2B,KAAK,IAAI;YAC3C,CAAC,CAAC,eAAe,gBAAgB,CAAC,QAAQ,CAAC,2BAA2B,CAAC,EAAE;YACzE,CAAC,CAAC,EACN,EAAE;QACJ,CAAC,CAAC,IAAI,CAAC;IACX,MAAM,SAAS,GAAG,YAAY;QAC5B,CAAC,CAAC,MAAM,iBAAiB,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,YAAY,CAAC,iBAAiB,EAAE,CAAC;QACtF,CAAC,CAAC,IAAI,CAAC;IACT,MAAM,eAAe,GAAG,SAAS;QAC/B,CAAC,CAAC,oBAAoB,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC;QACxF,CAAC,CAAC,IAAI,CAAC;IAET,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,UAAU,EAAE,CAAC;QAC9D,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,MAAM;YACd,MAAM,EACJ,YAAY,KAAK,SAAS;gBACxB,CAAC,CAAC,+BAA+B,UAAU,CAAC,CAAC,CAAC,KAAK,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;gBACtE,CAAC,CAAC,gCAAgC,UAAU,CAAC,CAAC,CAAC,KAAK,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;SAC5E,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO;gBACL,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE,UAAU,KAAK,IAAI;oBACzB,CAAC,CAAC,mCAAmC,UAAU,mBAAmB,WAAW,GAAG;oBAChF,CAAC,CAAC,oCAAoC,WAAW,GAAG;aACvD,CAAC;QACJ,CAAC;QACD,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;YACvC,MAAM,EAAE,UAAU,KAAK,IAAI;gBACzB,CAAC,CAAC,wBAAwB,UAAU,eAAe;gBACnD,CAAC,CAAC,uBAAuB;SAC5B,CAAC;IACJ,CAAC;IAED,IAAI,WAAW,IAAI,WAAW,KAAK,UAAU,IAAI,CAAC,aAAa,EAAE,CAAC;QAChE,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,iBAAiB,UAAU,oBAAoB,WAAW,UAAU;SAC7E,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAChB,YAAY,KAAK,MAAM;QACrB,CAAC,CAAC,6BAA6B,UAAU,GAAG;QAC5C,CAAC,CAAC,iBAAiB,UAAU,GAAG,CAAC;IACrC,MAAM,MAAM,GACV,WAAW,IAAI,WAAW,KAAK,UAAU;QACvC,CAAC,CAAC,GAAG,YAAY,mBAAmB,WAAW,EAAE;QACjD,CAAC,CAAC,YAAY,CAAC;IACnB,MAAM,gBAAgB,GAAG,UAAU;QACjC,CAAC,CAAC,GAAG,MAAM,KAAK,UAAU,GACtB,UAAU,EAAE,WAAW,KAAK,SAAS;YACnC,CAAC,CAAC,cAAc,uBAAuB,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE;YACjE,CAAC,CAAC,UAAU,EAAE,YAAY,KAAK,SAAS;gBACtC,CAAC,CAAC,eAAe,uBAAuB,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;gBACnE,CAAC,CAAC,EACR,GAAG,eAAe,CAAC,CAAC,CAAC,KAAK,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;QAC5F,CAAC,CAAC,GAAG,MAAM,8BAA8B,eAAe,CAAC,CAAC,CAAC,KAAK,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACnI,MAAM,qBAAqB,GAAG,SAAS,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC;IACnF,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,MAAM,EACJ,qBAAqB,KAAK,QAAQ;YAChC,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,qBAAqB,KAAK,UAAU;gBACpC,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,MAAM;QACd,MAAM,EAAE,gBAAgB;KACzB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAAgB;IACjD,MAAM,GAAG,GAAG,OAAO,IAAI,iBAAiB,EAAE,CAAC;IAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;IAEtD,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,yBAAyB,EAAE,CAAC;IACtF,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,2BAA2B,EAAE,CAAC;AACxF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAAgB;IACnD,MAAM,GAAG,GAAG,OAAO,IAAI,iBAAiB,EAAE,CAAC;IAC3C,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;IAE/D,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9E,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAC3C,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;QAC/D,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,OAAO,IAAI,EAAE,EAAE,CAAC;IACpF,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,6BAA6B,EAAE,CAAC;AACpG,CAAC;AAED,MAAM,UAAU,6BAA6B;IAC3C,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,kBAAkB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC/C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,MAAM,UAAU,GAAG,uCAAuC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;IAC/E,MAAM,aAAa,GAAG,8BAA8B,CAAC,iBAAiB,CAAC,MAAM,CAAC;IAC9E,MAAM,gBAAgB,GAAG,8BAA8B,CAAC,oBAAoB,CAAC,MAAM,CAAC;IACpF,MAAM,iBAAiB,GAAG,aAAa,GAAG,UAAU,CAAC,wBAAwB,CAAC,MAAM,CAAC;IACrF,MAAM,oBAAoB,GAAG,gBAAgB,GAAG,UAAU,CAAC,2BAA2B,CAAC,MAAM,CAAC;IAC9F,MAAM,QAAQ,GAAG,YAAY,iBAAiB,IAAI,aAAa,iBAAiB,oBAAoB,IAAI,gBAAgB,EAAE,CAAC;IAE3H,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACtB,OAAO;YACL,IAAI,EAAE,wBAAwB;YAC9B,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,GAAG,QAAQ,uBAAuB,UAAU,CAAC,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;SAC3F,CAAC;IACJ,CAAC;IACD,IAAI,UAAU,CAAC,2BAA2B,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtD,OAAO;YACL,IAAI,EAAE,wBAAwB;YAC9B,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,GAAG,QAAQ,0BAA0B,UAAU,CAAC,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;SACjG,CAAC;IACJ,CAAC;IACD,OAAO;QACL,IAAI,EAAE,wBAAwB;QAC9B,MAAM,EAAE,MAAM;QACd,MAAM,EAAE,GAAG,QAAQ,KAAK,UAAU,CAAC,WAAW,gBAAgB;KAC/D,CAAC;AACJ,CAAC;AAED,yBAAyB;AAEzB,SAAS,UAAU,CAAC,MAAmB;IACrC,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,MAAM,CAAC,CAAC,OAAO,QAAQ,CAAC;QAC7B,KAAK,MAAM,CAAC,CAAC,OAAO,QAAQ,CAAC;QAC7B,KAAK,MAAM,CAAC,CAAC,OAAO,QAAQ,CAAC;IAC/B,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,MAAmB;IACpC,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACpC,OAAO,GAAG,IAAI,IAAI,IAAI,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;AAC5C,CAAC;AAED,uBAAuB;AAEvB,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,KAAe;IAC7C,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAE1C,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAClD,MAAM,YAAY,GAAG,uBAAuB,CAAC,WAAW,CAAC,CAAC;QAC1D,MAAM,YAAY,GAA6B;YAC7C,KAAK,EAAE,CAAC,OAAe,EAAE,OAAiC,EAAE,EAAE;gBAC5D,OAAO,CAAC,GAAG,CAAC,mBAAmB,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC3F,CAAC;YACD,IAAI,EAAE,CAAC,OAAe,EAAE,OAAiC,EAAE,EAAE;gBAC3D,OAAO,CAAC,GAAG,CAAC,kBAAkB,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1F,CAAC;YACD,IAAI,EAAE,CAAC,OAAe,EAAE,OAAiC,EAAE,EAAE;gBAC3D,OAAO,CAAC,GAAG,CAAC,kBAAkB,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1F,CAAC;YACD,KAAK,EAAE,CAAC,OAAe,EAAE,OAAiC,EAAE,EAAE;gBAC5D,OAAO,CAAC,GAAG,CAAC,mBAAmB,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC3F,CAAC;SACF,CAAC;QAEF,MAAM,iBAAiB,GAAG,MAAM,+BAA+B,CAAC;YAC9D,WAAW;YACX,aAAa,EAAE,IAAI,aAAa,CAAC,YAAY,CAAC;YAC9C,WAAW,EAAE,IAAI,WAAW,CAAC,YAAY,CAAC;YAC1C,kBAAkB,EAAE,IAAI,kBAAkB,CAAC,YAAY,CAAC;YACxD,MAAM,EAAE,YAAY;SACrB,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CACT,4BAA4B,iBAAiB,CAAC,SAAS,CAAC,cAAc,mBAAmB,iBAAiB,CAAC,MAAM,CAAC,MAAM,mBAAmB,iBAAiB,CAAC,MAAM,CAAC,MAAM,YAAY,iBAAiB,CAAC,MAAM,CAAC,MAAM,IAAI,SAAS,EAAE,CACrO,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAkB;QAC5B,gBAAgB,EAAE;QAClB,eAAe,CAAC,OAAO,CAAC;QACxB,mBAAmB,CAAC,OAAO,CAAC;QAC5B,WAAW,CAAC,OAAO,CAAC;QACpB,UAAU,CAAC,OAAO,CAAC;QACnB,iBAAiB,CAAC,OAAO,CAAC;QAC1B,UAAU,EAAE;QACZ,6BAA6B,EAAE;QAC/B,MAAM,WAAW,CAAC,OAAO,CAAC;QAC1B,kBAAkB,CAAC,OAAO,CAAC;QAC3B,MAAM,cAAc,CAAC,OAAO,CAAC;KAC9B,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;IAChE,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;IAChE,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;IAEhE,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC9B,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAEjC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAChC,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,YAAY,MAAM,YAAY,MAAM,YAAY,MAAM,WAAW,CAAC,CAAC;IAE/E,OAAO,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5B,CAAC"}
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../../src/interface/cli/commands/doctor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { SetupImportReport, SetupImportSelection } from "./types.js";
2
+ export declare function applySetupImportSelection(baseDir: string, selection: SetupImportSelection): Promise<SetupImportReport>;
3
+ //# sourceMappingURL=apply.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply.d.ts","sourceRoot":"","sources":["../../../../../../src/interface/cli/commands/setup/import/apply.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAGV,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,YAAY,CAAC;AA+FpB,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,oBAAoB,GAC9B,OAAO,CAAC,iBAAiB,CAAC,CAoD5B"}
@@ -0,0 +1,140 @@
1
+ import * as path from "node:path";
2
+ import { readJsonFileOrNull, writeJsonFileAtomic } from "../../../../../base/utils/json-io.js";
3
+ import { copyDirectoryNoSymlinks, safeImportName, uniqueImportPath } from "./fs-utils.js";
4
+ function nextMcpId(existing, requested) {
5
+ const base = safeImportName(requested);
6
+ if (!existing.has(base))
7
+ return base;
8
+ let suffix = 2;
9
+ for (;;) {
10
+ const candidate = `${base}-${suffix}`;
11
+ if (!existing.has(candidate))
12
+ return candidate;
13
+ suffix += 1;
14
+ }
15
+ }
16
+ async function mergeMcpServers(baseDir, servers) {
17
+ if (servers.length === 0)
18
+ return undefined;
19
+ const configPath = path.join(baseDir, "mcp-servers.json");
20
+ const current = await readJsonFileOrNull(configPath);
21
+ const existingServers = Array.isArray(current?.servers) ? current.servers : [];
22
+ const existingIds = new Set(existingServers.map((server) => server.id));
23
+ const imported = servers.map((server) => {
24
+ const id = nextMcpId(existingIds, server.id);
25
+ existingIds.add(id);
26
+ return { ...server, id, enabled: false };
27
+ });
28
+ await writeJsonFileAtomic(configPath, { servers: [...existingServers, ...imported] });
29
+ return configPath;
30
+ }
31
+ async function applyFileItem(baseDir, item) {
32
+ if (!item.sourcePath) {
33
+ return {
34
+ id: item.id,
35
+ source: item.source,
36
+ kind: item.kind,
37
+ label: item.label,
38
+ decision: item.decision,
39
+ status: "skipped",
40
+ reason: "no source path",
41
+ };
42
+ }
43
+ if (item.kind === "skill") {
44
+ const parentDir = path.join(baseDir, "skills", "imported", item.source);
45
+ const targetPath = await uniqueImportPath(parentDir, item.label);
46
+ await copyDirectoryNoSymlinks(item.sourcePath, targetPath);
47
+ return {
48
+ id: item.id,
49
+ source: item.source,
50
+ kind: item.kind,
51
+ label: item.label,
52
+ decision: item.decision,
53
+ status: "applied",
54
+ targetPath,
55
+ };
56
+ }
57
+ if (item.kind === "plugin") {
58
+ const parentDir = path.join(baseDir, "plugins-imported-disabled", item.source);
59
+ const targetPath = await uniqueImportPath(parentDir, item.label);
60
+ await copyDirectoryNoSymlinks(item.sourcePath, targetPath);
61
+ return {
62
+ id: item.id,
63
+ source: item.source,
64
+ kind: item.kind,
65
+ label: item.label,
66
+ decision: item.decision,
67
+ status: "applied",
68
+ targetPath,
69
+ };
70
+ }
71
+ return {
72
+ id: item.id,
73
+ source: item.source,
74
+ kind: item.kind,
75
+ label: item.label,
76
+ decision: item.decision,
77
+ status: "skipped",
78
+ reason: "not a file copy item",
79
+ };
80
+ }
81
+ function reportItem(item, status, reason) {
82
+ return {
83
+ id: item.id,
84
+ source: item.source,
85
+ kind: item.kind,
86
+ label: item.label,
87
+ decision: item.decision,
88
+ status,
89
+ ...(reason ? { reason } : {}),
90
+ };
91
+ }
92
+ export async function applySetupImportSelection(baseDir, selection) {
93
+ const applied = [];
94
+ const selectedItems = selection.items.filter((item) => item.decision !== "skip");
95
+ for (const item of selectedItems) {
96
+ try {
97
+ if (item.kind === "provider") {
98
+ applied.push(reportItem(item, "applied", "provider settings seeded into setup answers"));
99
+ }
100
+ else if (item.kind === "skill" || item.kind === "plugin") {
101
+ applied.push(await applyFileItem(baseDir, item));
102
+ }
103
+ }
104
+ catch (err) {
105
+ applied.push(reportItem(item, "failed", err instanceof Error ? err.message : String(err)));
106
+ }
107
+ }
108
+ const mcpItems = selectedItems.filter((item) => item.kind === "mcp" && item.mcpServer);
109
+ try {
110
+ const targetPath = await mergeMcpServers(baseDir, mcpItems.map((item) => item.mcpServer));
111
+ for (const item of mcpItems) {
112
+ applied.push({
113
+ id: item.id,
114
+ source: item.source,
115
+ kind: item.kind,
116
+ label: item.label,
117
+ decision: item.decision,
118
+ status: targetPath ? "applied" : "skipped",
119
+ ...(targetPath ? { targetPath } : { reason: "no MCP server config" }),
120
+ });
121
+ }
122
+ }
123
+ catch (err) {
124
+ for (const item of mcpItems) {
125
+ applied.push(reportItem(item, "failed", err instanceof Error ? err.message : String(err)));
126
+ }
127
+ }
128
+ const createdAt = new Date().toISOString();
129
+ const report = {
130
+ created_at: createdAt,
131
+ sources: selection.sources.map(({ id, label, rootDir }) => ({ id, label, rootDir })),
132
+ items: applied,
133
+ };
134
+ const reportName = createdAt.replace(/[:.]/g, "-");
135
+ const sourceName = selection.sources.map((source) => source.id).join("-") || "import";
136
+ const reportPath = path.join(baseDir, "imports", sourceName, reportName, "report.json");
137
+ await writeJsonFileAtomic(reportPath, report);
138
+ return report;
139
+ }
140
+ //# sourceMappingURL=apply.js.map
@@ -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", "settings.json", "agent.json", "openclaw.config.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,wHAOnB,CAAC;AAEX,eAAO,MAAM,aAAa,8EAKhB,CAAC"}
@@ -0,0 +1,19 @@
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
+ "settings.json",
9
+ "agent.json",
10
+ "openclaw.config.json",
11
+ "hermes.config.json",
12
+ ];
13
+ export const MCP_FILENAMES = [
14
+ "mcp-servers.json",
15
+ "mcp.json",
16
+ "mcpServers.json",
17
+ "servers.json",
18
+ ];
19
+ //# 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,eAAe;IACf,YAAY;IACZ,sBAAsB;IACtB,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":"AAWA,OAAO,KAAK,EAEV,iBAAiB,EAElB,MAAM,YAAY,CAAC;AAyIpB,wBAAgB,wBAAwB,IAAI,iBAAiB,EAAE,CAK9D"}
@@ -0,0 +1,140 @@
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, readJson, unique, } from "./fs-utils.js";
5
+ import { extractMcpServers } from "./mcp.js";
6
+ import { buildProviderItem, extractProviderSettings } from "./provider.js";
7
+ function candidateFiles(rootDir, filenames) {
8
+ return unique([
9
+ ...filenames.map((name) => path.join(rootDir, name)),
10
+ ...filenames.map((name) => path.join(rootDir, "config", name)),
11
+ ]).filter(pathExists);
12
+ }
13
+ function findSkillDirs(rootDir) {
14
+ const roots = unique([
15
+ path.join(rootDir, "skills"),
16
+ path.join(rootDir, "agent", "skills"),
17
+ path.join(rootDir, "agents", "skills"),
18
+ ]);
19
+ const candidates = [];
20
+ for (const skillRoot of roots) {
21
+ for (const dir of listImmediateDirs(skillRoot)) {
22
+ if (pathExists(path.join(dir, "SKILL.md")))
23
+ candidates.push(dir);
24
+ for (const nested of listImmediateDirs(dir)) {
25
+ if (pathExists(path.join(nested, "SKILL.md")))
26
+ candidates.push(nested);
27
+ }
28
+ }
29
+ }
30
+ return unique(candidates);
31
+ }
32
+ function findPluginDirs(rootDir) {
33
+ const candidates = [];
34
+ for (const pluginRoot of [path.join(rootDir, "plugins"), path.join(rootDir, "extensions")]) {
35
+ for (const dir of listImmediateDirs(pluginRoot)) {
36
+ if (pathExists(path.join(dir, "plugin.yaml")) || pathExists(path.join(dir, "plugin.json"))) {
37
+ candidates.push(dir);
38
+ }
39
+ }
40
+ }
41
+ return unique(candidates);
42
+ }
43
+ function sourceRoots(source) {
44
+ const home = os.homedir();
45
+ if (source === "hermes") {
46
+ return unique([
47
+ process.env["PULSEED_IMPORT_HERMES_HOME"] ?? "",
48
+ process.env["PULSEED_HERMES_HOME"] ?? "",
49
+ process.env["HERMES_HOME"] ?? "",
50
+ path.join(home, ".hermes"),
51
+ path.join(home, ".hermes-agent"),
52
+ path.join(home, "Library", "Application Support", "Hermes Agent"),
53
+ ].filter(Boolean));
54
+ }
55
+ return unique([
56
+ process.env["PULSEED_IMPORT_OPENCLAW_HOME"] ?? "",
57
+ process.env["PULSEED_OPENCLAW_HOME"] ?? "",
58
+ process.env["OPENCLAW_HOME"] ?? "",
59
+ path.join(home, ".openclaw"),
60
+ path.join(home, ".config", "openclaw"),
61
+ path.join(home, "Library", "Application Support", "OpenClaw"),
62
+ ].filter(Boolean));
63
+ }
64
+ function providerItems(source, rootDir) {
65
+ return candidateFiles(rootDir, CONFIG_FILENAMES).flatMap((configPath) => {
66
+ const settings = extractProviderSettings(readJson(configPath), source);
67
+ return settings ? [buildProviderItem(source, configPath, settings)] : [];
68
+ });
69
+ }
70
+ function skillItems(source, rootDir) {
71
+ return findSkillDirs(rootDir).map((skillDir) => {
72
+ const name = path.basename(skillDir);
73
+ return {
74
+ id: `${source}:skill:${name}`,
75
+ source,
76
+ sourceLabel: SOURCE_LABELS[source],
77
+ kind: "skill",
78
+ label: name,
79
+ sourcePath: skillDir,
80
+ decision: "import",
81
+ reason: "SKILL.md found",
82
+ };
83
+ });
84
+ }
85
+ function mcpItems(source, rootDir) {
86
+ return candidateFiles(rootDir, MCP_FILENAMES).flatMap((mcpPath) => extractMcpServers(readJson(mcpPath), source).map((server) => ({
87
+ id: `${source}:mcp:${server.id}`,
88
+ source,
89
+ sourceLabel: SOURCE_LABELS[source],
90
+ kind: "mcp",
91
+ label: server.name,
92
+ sourcePath: mcpPath,
93
+ decision: "copy_disabled",
94
+ reason: "MCP servers are imported disabled until reviewed",
95
+ mcpServer: server,
96
+ })));
97
+ }
98
+ function pluginItems(source, rootDir) {
99
+ return findPluginDirs(rootDir).map((pluginDir) => {
100
+ const name = path.basename(pluginDir);
101
+ return {
102
+ id: `${source}:plugin:${name}`,
103
+ source,
104
+ sourceLabel: SOURCE_LABELS[source],
105
+ kind: "plugin",
106
+ label: name,
107
+ sourcePath: pluginDir,
108
+ decision: "copy_disabled",
109
+ reason: "plugins are quarantined until PulSeed compatibility is reviewed",
110
+ };
111
+ });
112
+ }
113
+ function detectSource(source) {
114
+ for (const rootDir of sourceRoots(source)) {
115
+ if (!pathExists(rootDir))
116
+ continue;
117
+ const items = [
118
+ ...providerItems(source, rootDir),
119
+ ...skillItems(source, rootDir),
120
+ ...mcpItems(source, rootDir),
121
+ ...pluginItems(source, rootDir),
122
+ ];
123
+ if (items.length > 0) {
124
+ return {
125
+ id: source,
126
+ label: SOURCE_LABELS[source],
127
+ rootDir,
128
+ items,
129
+ };
130
+ }
131
+ }
132
+ return undefined;
133
+ }
134
+ export function detectSetupImportSources() {
135
+ return ["hermes", "openclaw"].flatMap((source) => {
136
+ const detected = detectSource(source);
137
+ return detected ? [detected] : [];
138
+ });
139
+ }
140
+ //# 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":"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"}
@@ -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;AAmEpB,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,CAwFjF"}