@mycelish/cli 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (296) hide show
  1. package/dist/__tests__/mcp-server.test.d.ts +2 -0
  2. package/dist/__tests__/mcp-server.test.d.ts.map +1 -0
  3. package/dist/__tests__/mcp-server.test.js +60 -0
  4. package/dist/__tests__/mcp-server.test.js.map +1 -0
  5. package/dist/__tests__/unified-item-state.integration.test.d.ts +7 -0
  6. package/dist/__tests__/unified-item-state.integration.test.d.ts.map +1 -0
  7. package/dist/__tests__/unified-item-state.integration.test.js +217 -0
  8. package/dist/__tests__/unified-item-state.integration.test.js.map +1 -0
  9. package/dist/commands/add.d.ts.map +1 -1
  10. package/dist/commands/add.js +9 -0
  11. package/dist/commands/add.js.map +1 -1
  12. package/dist/commands/disable.d.ts +8 -6
  13. package/dist/commands/disable.d.ts.map +1 -1
  14. package/dist/commands/disable.js +143 -136
  15. package/dist/commands/disable.js.map +1 -1
  16. package/dist/commands/disable.test.js +117 -23
  17. package/dist/commands/disable.test.js.map +1 -1
  18. package/dist/commands/doctor.d.ts +1 -1
  19. package/dist/commands/doctor.d.ts.map +1 -1
  20. package/dist/commands/doctor.js +1 -1
  21. package/dist/commands/doctor.js.map +1 -1
  22. package/dist/commands/enable.d.ts +8 -6
  23. package/dist/commands/enable.d.ts.map +1 -1
  24. package/dist/commands/enable.js +128 -133
  25. package/dist/commands/enable.js.map +1 -1
  26. package/dist/commands/enable.test.js +192 -24
  27. package/dist/commands/enable.test.js.map +1 -1
  28. package/dist/commands/health-checks/index.d.ts +2 -1
  29. package/dist/commands/health-checks/index.d.ts.map +1 -1
  30. package/dist/commands/health-checks/index.js +2 -1
  31. package/dist/commands/health-checks/index.js.map +1 -1
  32. package/dist/commands/health-checks/mcp-check.d.ts +5 -1
  33. package/dist/commands/health-checks/mcp-check.d.ts.map +1 -1
  34. package/dist/commands/health-checks/mcp-check.js +32 -1
  35. package/dist/commands/health-checks/mcp-check.js.map +1 -1
  36. package/dist/commands/health-checks/plugin-takeover-check.d.ts +15 -0
  37. package/dist/commands/health-checks/plugin-takeover-check.d.ts.map +1 -0
  38. package/dist/commands/health-checks/plugin-takeover-check.js +274 -0
  39. package/dist/commands/health-checks/plugin-takeover-check.js.map +1 -0
  40. package/dist/commands/health-checks/runner.d.ts.map +1 -1
  41. package/dist/commands/health-checks/runner.js +18 -0
  42. package/dist/commands/health-checks/runner.js.map +1 -1
  43. package/dist/commands/init.d.ts.map +1 -1
  44. package/dist/commands/init.js +33 -0
  45. package/dist/commands/init.js.map +1 -1
  46. package/dist/commands/mcp.d.ts +9 -0
  47. package/dist/commands/mcp.d.ts.map +1 -0
  48. package/dist/commands/mcp.js +17 -0
  49. package/dist/commands/mcp.js.map +1 -0
  50. package/dist/commands/migrate.d.ts.map +1 -1
  51. package/dist/commands/migrate.js +51 -0
  52. package/dist/commands/migrate.js.map +1 -1
  53. package/dist/commands/preset.test.js +7 -3
  54. package/dist/commands/preset.test.js.map +1 -1
  55. package/dist/commands/remove.d.ts +25 -23
  56. package/dist/commands/remove.d.ts.map +1 -1
  57. package/dist/commands/remove.js +118 -247
  58. package/dist/commands/remove.js.map +1 -1
  59. package/dist/commands/remove.test.js +152 -78
  60. package/dist/commands/remove.test.js.map +1 -1
  61. package/dist/commands/report.d.ts +8 -0
  62. package/dist/commands/report.d.ts.map +1 -0
  63. package/dist/commands/report.js +149 -0
  64. package/dist/commands/report.js.map +1 -0
  65. package/dist/commands/report.test.d.ts +2 -0
  66. package/dist/commands/report.test.d.ts.map +1 -0
  67. package/dist/commands/report.test.js +23 -0
  68. package/dist/commands/report.test.js.map +1 -0
  69. package/dist/commands/status.d.ts +9 -4
  70. package/dist/commands/status.d.ts.map +1 -1
  71. package/dist/commands/status.js +81 -10
  72. package/dist/commands/status.js.map +1 -1
  73. package/dist/commands/status.test.js +92 -0
  74. package/dist/commands/status.test.js.map +1 -1
  75. package/dist/commands/sync.d.ts.map +1 -1
  76. package/dist/commands/sync.js +138 -7
  77. package/dist/commands/sync.js.map +1 -1
  78. package/dist/commands/sync.test.js +91 -6
  79. package/dist/commands/sync.test.js.map +1 -1
  80. package/dist/core/adapter-base.d.ts +2 -0
  81. package/dist/core/adapter-base.d.ts.map +1 -1
  82. package/dist/core/adapter-base.js +2 -1
  83. package/dist/core/adapter-base.js.map +1 -1
  84. package/dist/core/auto-adapter.d.ts.map +1 -1
  85. package/dist/core/auto-adapter.js +58 -3
  86. package/dist/core/auto-adapter.js.map +1 -1
  87. package/dist/core/auto-adapter.test.js +155 -0
  88. package/dist/core/auto-adapter.test.js.map +1 -1
  89. package/dist/core/config-merger.d.ts +6 -5
  90. package/dist/core/config-merger.d.ts.map +1 -1
  91. package/dist/core/config-merger.js +119 -136
  92. package/dist/core/config-merger.js.map +1 -1
  93. package/dist/core/config-merger.test.d.ts +1 -1
  94. package/dist/core/config-merger.test.js +72 -88
  95. package/dist/core/config-merger.test.js.map +1 -1
  96. package/dist/core/file-syncer.d.ts +33 -0
  97. package/dist/core/file-syncer.d.ts.map +1 -0
  98. package/dist/core/file-syncer.js +138 -0
  99. package/dist/core/file-syncer.js.map +1 -0
  100. package/dist/core/file-syncer.test.d.ts +2 -0
  101. package/dist/core/file-syncer.test.d.ts.map +1 -0
  102. package/dist/core/file-syncer.test.js +131 -0
  103. package/dist/core/file-syncer.test.js.map +1 -0
  104. package/dist/core/global-tracer.d.ts +4 -0
  105. package/dist/core/global-tracer.d.ts.map +1 -0
  106. package/dist/core/global-tracer.js +36 -0
  107. package/dist/core/global-tracer.js.map +1 -0
  108. package/dist/core/item-loader.d.ts +18 -0
  109. package/dist/core/item-loader.d.ts.map +1 -0
  110. package/dist/core/item-loader.js +40 -0
  111. package/dist/core/item-loader.js.map +1 -0
  112. package/dist/core/item-loader.test.d.ts +2 -0
  113. package/dist/core/item-loader.test.d.ts.map +1 -0
  114. package/dist/core/item-loader.test.js +52 -0
  115. package/dist/core/item-loader.test.js.map +1 -0
  116. package/dist/core/manifest-migrator.d.ts +15 -0
  117. package/dist/core/manifest-migrator.d.ts.map +1 -0
  118. package/dist/core/manifest-migrator.js +38 -0
  119. package/dist/core/manifest-migrator.js.map +1 -0
  120. package/dist/core/manifest-migrator.test.d.ts +2 -0
  121. package/dist/core/manifest-migrator.test.d.ts.map +1 -0
  122. package/dist/core/manifest-migrator.test.js +53 -0
  123. package/dist/core/manifest-migrator.test.js.map +1 -0
  124. package/dist/core/manifest-state.d.ts +117 -0
  125. package/dist/core/manifest-state.d.ts.map +1 -0
  126. package/dist/core/manifest-state.js +218 -0
  127. package/dist/core/manifest-state.js.map +1 -0
  128. package/dist/core/manifest-state.test.d.ts +2 -0
  129. package/dist/core/manifest-state.test.d.ts.map +1 -0
  130. package/dist/core/manifest-state.test.js +130 -0
  131. package/dist/core/manifest-state.test.js.map +1 -0
  132. package/dist/core/marketplace-registry.d.ts +0 -1
  133. package/dist/core/marketplace-registry.d.ts.map +1 -1
  134. package/dist/core/marketplace-registry.js +0 -16
  135. package/dist/core/marketplace-registry.js.map +1 -1
  136. package/dist/core/marketplace-registry.test.js +1 -14
  137. package/dist/core/marketplace-registry.test.js.map +1 -1
  138. package/dist/core/mcp-injector.d.ts +2 -2
  139. package/dist/core/mcp-injector.d.ts.map +1 -1
  140. package/dist/core/mcp-injector.js +6 -6
  141. package/dist/core/mcp-injector.js.map +1 -1
  142. package/dist/core/mcp-injector.test.js +33 -26
  143. package/dist/core/mcp-injector.test.js.map +1 -1
  144. package/dist/core/mcp-registry.js +1 -1
  145. package/dist/core/mcp-registry.js.map +1 -1
  146. package/dist/core/mcp-registry.test.js +1 -1
  147. package/dist/core/mcp-registry.test.js.map +1 -1
  148. package/dist/core/memory-scoper.test.js +2 -13
  149. package/dist/core/memory-scoper.test.js.map +1 -1
  150. package/dist/core/migrator/executor.js +2 -2
  151. package/dist/core/migrator/executor.js.map +1 -1
  152. package/dist/core/plugin-state.d.ts +7 -0
  153. package/dist/core/plugin-state.d.ts.map +1 -0
  154. package/dist/core/plugin-state.js +88 -0
  155. package/dist/core/plugin-state.js.map +1 -0
  156. package/dist/core/plugin-takeover.d.ts +50 -0
  157. package/dist/core/plugin-takeover.d.ts.map +1 -0
  158. package/dist/core/plugin-takeover.js +263 -0
  159. package/dist/core/plugin-takeover.js.map +1 -0
  160. package/dist/core/plugin-takeover.test.d.ts +2 -0
  161. package/dist/core/plugin-takeover.test.d.ts.map +1 -0
  162. package/dist/core/plugin-takeover.test.js +243 -0
  163. package/dist/core/plugin-takeover.test.js.map +1 -0
  164. package/dist/core/self-register.d.ts +5 -0
  165. package/dist/core/self-register.d.ts.map +1 -0
  166. package/dist/core/self-register.js +43 -0
  167. package/dist/core/self-register.js.map +1 -0
  168. package/dist/core/self-register.test.d.ts +2 -0
  169. package/dist/core/self-register.test.d.ts.map +1 -0
  170. package/dist/core/self-register.test.js +77 -0
  171. package/dist/core/self-register.test.js.map +1 -0
  172. package/dist/core/smart-memory.d.ts +5 -5
  173. package/dist/core/smart-memory.d.ts.map +1 -1
  174. package/dist/core/smart-memory.js +1 -10
  175. package/dist/core/smart-memory.js.map +1 -1
  176. package/dist/core/smart-memory.test.js +3 -30
  177. package/dist/core/smart-memory.test.js.map +1 -1
  178. package/dist/core/state-verifier.d.ts +36 -0
  179. package/dist/core/state-verifier.d.ts.map +1 -0
  180. package/dist/core/state-verifier.js +159 -0
  181. package/dist/core/state-verifier.js.map +1 -0
  182. package/dist/core/state-verifier.test.d.ts +2 -0
  183. package/dist/core/state-verifier.test.d.ts.map +1 -0
  184. package/dist/core/state-verifier.test.js +188 -0
  185. package/dist/core/state-verifier.test.js.map +1 -0
  186. package/dist/core/symlink-manager.d.ts +1 -1
  187. package/dist/core/symlink-manager.d.ts.map +1 -1
  188. package/dist/core/symlink-manager.js +1 -1
  189. package/dist/core/symlink-manager.js.map +1 -1
  190. package/dist/core/symlink-manager.test.js +4 -4
  191. package/dist/core/symlink-manager.test.js.map +1 -1
  192. package/dist/core/sync-writer.d.ts +2 -1
  193. package/dist/core/sync-writer.d.ts.map +1 -1
  194. package/dist/core/sync-writer.js +108 -22
  195. package/dist/core/sync-writer.js.map +1 -1
  196. package/dist/core/sync-writer.test.js +31 -0
  197. package/dist/core/sync-writer.test.js.map +1 -1
  198. package/dist/core/tool-adapter.d.ts.map +1 -1
  199. package/dist/core/tool-adapter.js +45 -6
  200. package/dist/core/tool-adapter.js.map +1 -1
  201. package/dist/core/trace-store.d.ts +36 -0
  202. package/dist/core/trace-store.d.ts.map +1 -0
  203. package/dist/core/trace-store.js +145 -0
  204. package/dist/core/trace-store.js.map +1 -0
  205. package/dist/core/trace-store.test.d.ts +2 -0
  206. package/dist/core/trace-store.test.d.ts.map +1 -0
  207. package/dist/core/trace-store.test.js +102 -0
  208. package/dist/core/trace-store.test.js.map +1 -0
  209. package/dist/core/tracer.d.ts +27 -0
  210. package/dist/core/tracer.d.ts.map +1 -0
  211. package/dist/core/tracer.js +62 -0
  212. package/dist/core/tracer.js.map +1 -0
  213. package/dist/core/tracer.test.d.ts +2 -0
  214. package/dist/core/tracer.test.d.ts.map +1 -0
  215. package/dist/core/tracer.test.js +54 -0
  216. package/dist/core/tracer.test.js.map +1 -0
  217. package/dist/core/watcher.d.ts.map +1 -1
  218. package/dist/core/watcher.js +9 -2
  219. package/dist/core/watcher.js.map +1 -1
  220. package/dist/core/watcher.test.js +9 -0
  221. package/dist/core/watcher.test.js.map +1 -1
  222. package/dist/index.js +4 -0
  223. package/dist/index.js.map +1 -1
  224. package/dist/mcp/prompts.d.ts +3 -0
  225. package/dist/mcp/prompts.d.ts.map +1 -0
  226. package/dist/mcp/prompts.js +40 -0
  227. package/dist/mcp/prompts.js.map +1 -0
  228. package/dist/mcp/resources.d.ts +6 -0
  229. package/dist/mcp/resources.d.ts.map +1 -0
  230. package/dist/mcp/resources.js +24 -0
  231. package/dist/mcp/resources.js.map +1 -0
  232. package/dist/mcp/server.d.ts +7 -0
  233. package/dist/mcp/server.d.ts.map +1 -0
  234. package/dist/mcp/server.js +27 -0
  235. package/dist/mcp/server.js.map +1 -0
  236. package/dist/mcp/server.test.d.ts +2 -0
  237. package/dist/mcp/server.test.d.ts.map +1 -0
  238. package/dist/mcp/server.test.js +9 -0
  239. package/dist/mcp/server.test.js.map +1 -0
  240. package/dist/mcp/tools/config-tools.d.ts +3 -0
  241. package/dist/mcp/tools/config-tools.d.ts.map +1 -0
  242. package/dist/mcp/tools/config-tools.js +80 -0
  243. package/dist/mcp/tools/config-tools.js.map +1 -0
  244. package/dist/mcp/tools/config-tools.test.d.ts +2 -0
  245. package/dist/mcp/tools/config-tools.test.d.ts.map +1 -0
  246. package/dist/mcp/tools/config-tools.test.js +207 -0
  247. package/dist/mcp/tools/config-tools.test.js.map +1 -0
  248. package/dist/mcp/tools/item-tools.d.ts +3 -0
  249. package/dist/mcp/tools/item-tools.d.ts.map +1 -0
  250. package/dist/mcp/tools/item-tools.js +95 -0
  251. package/dist/mcp/tools/item-tools.js.map +1 -0
  252. package/dist/mcp/tools/item-tools.test.d.ts +2 -0
  253. package/dist/mcp/tools/item-tools.test.d.ts.map +1 -0
  254. package/dist/mcp/tools/item-tools.test.js +184 -0
  255. package/dist/mcp/tools/item-tools.test.js.map +1 -0
  256. package/dist/mcp/tools/marketplace-tools.d.ts +3 -0
  257. package/dist/mcp/tools/marketplace-tools.d.ts.map +1 -0
  258. package/dist/mcp/tools/marketplace-tools.js +35 -0
  259. package/dist/mcp/tools/marketplace-tools.js.map +1 -0
  260. package/dist/mcp/tools/marketplace-tools.test.d.ts +2 -0
  261. package/dist/mcp/tools/marketplace-tools.test.d.ts.map +1 -0
  262. package/dist/mcp/tools/marketplace-tools.test.js +48 -0
  263. package/dist/mcp/tools/marketplace-tools.test.js.map +1 -0
  264. package/dist/mcp/tools/memory-tools.d.ts +3 -0
  265. package/dist/mcp/tools/memory-tools.d.ts.map +1 -0
  266. package/dist/mcp/tools/memory-tools.js +68 -0
  267. package/dist/mcp/tools/memory-tools.js.map +1 -0
  268. package/dist/mcp/tools/memory-tools.test.d.ts +2 -0
  269. package/dist/mcp/tools/memory-tools.test.d.ts.map +1 -0
  270. package/dist/mcp/tools/memory-tools.test.js +144 -0
  271. package/dist/mcp/tools/memory-tools.test.js.map +1 -0
  272. package/dist/mcp/tools/observe-tools.d.ts +3 -0
  273. package/dist/mcp/tools/observe-tools.d.ts.map +1 -0
  274. package/dist/mcp/tools/observe-tools.js +37 -0
  275. package/dist/mcp/tools/observe-tools.js.map +1 -0
  276. package/dist/mcp/tools/observe-tools.test.d.ts +2 -0
  277. package/dist/mcp/tools/observe-tools.test.d.ts.map +1 -0
  278. package/dist/mcp/tools/observe-tools.test.js +71 -0
  279. package/dist/mcp/tools/observe-tools.test.js.map +1 -0
  280. package/dist/routes/plugins.d.ts.map +1 -1
  281. package/dist/routes/plugins.js +63 -37
  282. package/dist/routes/plugins.js.map +1 -1
  283. package/dist/routes/plugins.test.d.ts +2 -0
  284. package/dist/routes/plugins.test.d.ts.map +1 -0
  285. package/dist/routes/plugins.test.js +56 -0
  286. package/dist/routes/plugins.test.js.map +1 -0
  287. package/dist/routes/remove.d.ts.map +1 -1
  288. package/dist/routes/remove.js +6 -15
  289. package/dist/routes/remove.js.map +1 -1
  290. package/dist/routes/state.d.ts.map +1 -1
  291. package/dist/routes/state.js +35 -70
  292. package/dist/routes/state.js.map +1 -1
  293. package/dist/routes/sync.d.ts.map +1 -1
  294. package/dist/routes/sync.js +10 -3
  295. package/dist/routes/sync.js.map +1 -1
  296. package/package.json +6 -2
@@ -0,0 +1,274 @@
1
+ /**
2
+ * Health check for taken-over plugins.
3
+ * Verifies 8 invariants:
4
+ * 1. Every symlink in ~/.claude/{skills,agents,commands}/ has valid target
5
+ * 2. Every disabled item with pluginOrigin has NO symlink
6
+ * 3. Every enabled item with pluginOrigin HAS symlink pointing to plugin cache
7
+ * 4. Taken-over plugins have enabledPlugins[id] === false in settings.json
8
+ * 5. Released plugins have enabledPlugins[id] === true
9
+ * 6. Live cache components match takenOverPlugins entries
10
+ * 7. No phantom entries (skill name matches pluginId pattern)
11
+ * 8. No orphaned symlinks (symlinks pointing to non-existent targets)
12
+ */
13
+ import * as fs from "node:fs/promises";
14
+ import * as path from "node:path";
15
+ import * as os from "node:os";
16
+ import { expandPath } from "@mycelish/core";
17
+ import { loadStateManifest, ITEM_SECTIONS } from "../../core/manifest-state.js";
18
+ import { readFileIfExists } from "../../core/fs-helpers.js";
19
+ import { scanPluginComponents } from "../../core/plugin-scanner.js";
20
+ import { PLUGIN_COMPONENT_DIRS, getSymlinkPath } from "../../core/plugin-takeover.js";
21
+ import { getTracer } from "../../core/global-tracer.js";
22
+ const CLAUDE_HOME = path.join(os.homedir(), ".claude");
23
+ const SETTINGS_PATH = path.join(CLAUDE_HOME, "settings.json");
24
+ const PLUGIN_CACHE_DIR = path.join(CLAUDE_HOME, "plugins", "cache");
25
+ export async function checkTakenOverPlugins() {
26
+ const results = [];
27
+ const manifest = await loadStateManifest(expandPath("~/.mycelium"));
28
+ if (!manifest) {
29
+ return results;
30
+ }
31
+ // Load Claude Code settings to verify plugin states
32
+ let enabledPlugins = {};
33
+ try {
34
+ const raw = await readFileIfExists(SETTINGS_PATH);
35
+ if (raw) {
36
+ const settings = JSON.parse(raw);
37
+ enabledPlugins = settings.enabledPlugins ?? {};
38
+ }
39
+ }
40
+ catch {
41
+ // settings unreadable
42
+ }
43
+ // Check 4: Taken-over plugins disabled + Check 6: Cache components match
44
+ if (manifest.takenOverPlugins && Object.keys(manifest.takenOverPlugins).length > 0) {
45
+ for (const [pluginId, info] of Object.entries(manifest.takenOverPlugins)) {
46
+ // Check cache dir exists
47
+ const cacheExists = await fs.access(info.cachePath).then(() => true, () => false);
48
+ if (!cacheExists) {
49
+ results.push({
50
+ name: `plugin-takeover:${pluginId}`,
51
+ status: "warn",
52
+ message: `Taken-over plugin cache missing: ${info.cachePath}`,
53
+ fix: `Run 'mycelium plugin release ${pluginId}' to release the plugin`,
54
+ });
55
+ continue;
56
+ }
57
+ // Check 4: Plugin is still disabled in settings
58
+ if (enabledPlugins[pluginId] === true) {
59
+ results.push({
60
+ name: `plugin-takeover:${pluginId}`,
61
+ status: "warn",
62
+ message: `Plugin ${pluginId} was re-enabled in Claude Code settings but is still marked as taken over`,
63
+ fix: `Run 'mycelium plugin release ${pluginId}' or disable it again in Claude Code`,
64
+ });
65
+ continue;
66
+ }
67
+ // Check 6: Live cache components match takenOverPlugins entries
68
+ try {
69
+ const components = await scanPluginComponents(info.cachePath);
70
+ const liveComponentNames = components.map(c => c.name);
71
+ const registeredComponents = info.allComponents ?? info.allSkills;
72
+ const missing = registeredComponents.filter(name => !liveComponentNames.includes(name));
73
+ const extra = liveComponentNames.filter(name => !registeredComponents.includes(name));
74
+ if (missing.length > 0 || extra.length > 0) {
75
+ const issues = [];
76
+ if (missing.length > 0)
77
+ issues.push(`missing: ${missing.join(", ")}`);
78
+ if (extra.length > 0)
79
+ issues.push(`extra: ${extra.join(", ")}`);
80
+ results.push({
81
+ name: `plugin-takeover:${pluginId}:cache-mismatch`,
82
+ status: "warn",
83
+ message: `Plugin ${pluginId} cache components don't match manifest (${issues.join("; ")})`,
84
+ fix: `Run 'mycelium plugin release ${pluginId}' and re-take it over`,
85
+ });
86
+ }
87
+ }
88
+ catch (err) {
89
+ results.push({
90
+ name: `plugin-takeover:${pluginId}:scan-error`,
91
+ status: "warn",
92
+ message: `Failed to scan plugin cache: ${err.message}`,
93
+ });
94
+ }
95
+ results.push({
96
+ name: `plugin-takeover:${pluginId}`,
97
+ status: "pass",
98
+ message: `Plugin ${pluginId} taken over: ${info.allSkills?.length ?? info.allComponents?.length ?? 0} components managed`,
99
+ });
100
+ }
101
+ }
102
+ // Collect all items with pluginOrigin for checks 2 & 3
103
+ const itemsWithPluginOrigin = [];
104
+ for (const { key, type } of ITEM_SECTIONS) {
105
+ if (type !== "skill" && type !== "agent" && type !== "command")
106
+ continue;
107
+ const section = manifest[key];
108
+ if (!section || typeof section !== "object" || Array.isArray(section))
109
+ continue;
110
+ for (const [itemName, config] of Object.entries(section)) {
111
+ if (config.pluginOrigin) {
112
+ itemsWithPluginOrigin.push({
113
+ name: itemName,
114
+ type: type,
115
+ state: config.state ?? "enabled",
116
+ pluginOrigin: config.pluginOrigin,
117
+ });
118
+ }
119
+ }
120
+ }
121
+ // Check 2: Disabled items with pluginOrigin should have NO symlink
122
+ const disabledWithOrigin = itemsWithPluginOrigin.filter(item => item.state === "disabled" || item.state === "deleted");
123
+ for (const item of disabledWithOrigin) {
124
+ const symlinkPath = getSymlinkPath(item.type, item.name);
125
+ try {
126
+ await fs.lstat(symlinkPath);
127
+ // Symlink exists but item is disabled
128
+ results.push({
129
+ name: `plugin-origin:${item.name}:disabled-has-symlink`,
130
+ status: "fail",
131
+ message: `Disabled ${item.type} "${item.name}" still has symlink at ${symlinkPath}`,
132
+ fix: `Run 'mycelium sync' to clean up orphaned symlinks`,
133
+ });
134
+ }
135
+ catch {
136
+ // Symlink doesn't exist - this is correct
137
+ }
138
+ }
139
+ // Check 3: Enabled items with pluginOrigin should HAVE symlink
140
+ const enabledWithOrigin = itemsWithPluginOrigin.filter(item => item.state === "enabled");
141
+ for (const item of enabledWithOrigin) {
142
+ const symlinkPath = getSymlinkPath(item.type, item.name);
143
+ try {
144
+ const stats = await fs.lstat(symlinkPath);
145
+ if (!stats.isSymbolicLink()) {
146
+ results.push({
147
+ name: `plugin-origin:${item.name}:not-symlink`,
148
+ status: "warn",
149
+ message: `Enabled ${item.type} "${item.name}" exists but is not a symlink`,
150
+ fix: `Run 'mycelium sync' to fix`,
151
+ });
152
+ continue;
153
+ }
154
+ // Verify it points to the plugin cache
155
+ const target = await fs.readlink(symlinkPath);
156
+ const expectedCachePrefix = item.pluginOrigin.cachePath;
157
+ if (!target.startsWith(expectedCachePrefix)) {
158
+ results.push({
159
+ name: `plugin-origin:${item.name}:wrong-target`,
160
+ status: "warn",
161
+ message: `Enabled ${item.type} "${item.name}" symlink points to wrong location: ${target}`,
162
+ fix: `Run 'mycelium sync' to fix`,
163
+ });
164
+ }
165
+ }
166
+ catch {
167
+ // Symlink doesn't exist but item is enabled
168
+ results.push({
169
+ name: `plugin-origin:${item.name}:missing-symlink`,
170
+ status: "fail",
171
+ message: `Enabled ${item.type} "${item.name}" missing symlink at ${symlinkPath}`,
172
+ fix: `Run 'mycelium sync' to create symlink`,
173
+ });
174
+ }
175
+ }
176
+ // Check 1 & 8: Every symlink has valid target (combined check)
177
+ for (const [type, { dir }] of Object.entries(PLUGIN_COMPONENT_DIRS)) {
178
+ try {
179
+ const entries = await fs.readdir(dir, { withFileTypes: true });
180
+ for (const entry of entries) {
181
+ if (!entry.isSymbolicLink())
182
+ continue;
183
+ const symlinkPath = path.join(dir, entry.name);
184
+ try {
185
+ // lstat checks the symlink itself
186
+ await fs.lstat(symlinkPath);
187
+ // stat follows the symlink to check the target
188
+ await fs.stat(symlinkPath);
189
+ // Both succeed - valid symlink
190
+ }
191
+ catch (err) {
192
+ // Check 8: Orphaned symlink (target doesn't exist)
193
+ try {
194
+ const target = await fs.readlink(symlinkPath);
195
+ results.push({
196
+ name: `symlink:${type}:${entry.name}:orphaned`,
197
+ status: "warn",
198
+ message: `Orphaned ${type} symlink "${entry.name}" points to non-existent target: ${target}`,
199
+ fix: `Run 'mycelium sync' to clean up`,
200
+ });
201
+ }
202
+ catch {
203
+ // Can't even read the symlink
204
+ results.push({
205
+ name: `symlink:${type}:${entry.name}:invalid`,
206
+ status: "fail",
207
+ message: `Invalid ${type} symlink "${entry.name}" - cannot read link`,
208
+ fix: `Manually remove ${symlinkPath}`,
209
+ });
210
+ }
211
+ }
212
+ }
213
+ }
214
+ catch {
215
+ // Directory doesn't exist - not an error for health check
216
+ }
217
+ }
218
+ // Check 5: Released plugins should have enabledPlugins[id] === true
219
+ // We check this by finding plugins that are NOT in takenOverPlugins but have items with pluginOrigin
220
+ const takenOverIds = new Set(Object.keys(manifest.takenOverPlugins ?? {}));
221
+ const releasedPluginIds = new Set();
222
+ for (const item of itemsWithPluginOrigin) {
223
+ const pluginId = item.pluginOrigin.pluginId;
224
+ if (!takenOverIds.has(pluginId)) {
225
+ releasedPluginIds.add(pluginId);
226
+ }
227
+ }
228
+ for (const pluginId of releasedPluginIds) {
229
+ if (enabledPlugins[pluginId] === false) {
230
+ results.push({
231
+ name: `plugin-release:${pluginId}:still-disabled`,
232
+ status: "warn",
233
+ message: `Plugin ${pluginId} was released but is still disabled in Claude Code settings`,
234
+ fix: `Enable ${pluginId} in Claude Code or run 'mycelium plugin takeover ${pluginId}' again`,
235
+ });
236
+ }
237
+ }
238
+ // Check 7: No phantom entries (skill name matches pluginId pattern)
239
+ for (const { key, type } of ITEM_SECTIONS) {
240
+ if (type !== "skill")
241
+ continue; // Only check skills section for phantom entries
242
+ const section = manifest[key];
243
+ if (!section || typeof section !== "object" || Array.isArray(section))
244
+ continue;
245
+ for (const itemName of Object.keys(section)) {
246
+ // Check if name matches pattern "name@marketplace"
247
+ if (itemName.includes("@") && itemName.split("@").length === 2) {
248
+ const [plugin, marketplace] = itemName.split("@");
249
+ if (plugin && marketplace) {
250
+ results.push({
251
+ name: `phantom:${itemName}`,
252
+ status: "fail",
253
+ message: `Phantom entry detected: skill name "${itemName}" matches plugin ID pattern`,
254
+ fix: `Remove "${itemName}" from manifest.yaml - plugin names should not be registered as skills`,
255
+ });
256
+ }
257
+ }
258
+ }
259
+ }
260
+ // Log health check results to trace DB
261
+ if (results.length > 0) {
262
+ const log = getTracer().createTrace("doctor");
263
+ const fails = results.filter(r => r.status === "fail").length;
264
+ const warns = results.filter(r => r.status === "warn").length;
265
+ const passes = results.filter(r => r.status === "pass").length;
266
+ const level = fails > 0 ? "error" : warns > 0 ? "warn" : "info";
267
+ log[level]({ scope: "plugin", op: "health-check", msg: `Plugin takeover health: ${passes} pass, ${warns} warn, ${fails} fail` });
268
+ for (const r of results.filter(r => r.status === "fail" || r.status === "warn")) {
269
+ log[r.status === "fail" ? "error" : "warn"]({ scope: "plugin", op: "health-check", msg: r.message, item: r.name });
270
+ }
271
+ }
272
+ return results;
273
+ }
274
+ //# sourceMappingURL=plugin-takeover-check.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-takeover-check.js","sourceRoot":"","sources":["../../../src/commands/health-checks/plugin-takeover-check.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../../src/commands/health-checks/runner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAoBH,OAAO,KAAK,EAAoB,YAAY,EAAE,MAAM,YAAY,CAAC;AAEjE;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,YAAY,CAAC,CAuE1D"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../../src/commands/health-checks/runner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAoBH,OAAO,KAAK,EAAoB,YAAY,EAAE,MAAM,YAAY,CAAC;AAEjE;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,YAAY,CAAC,CAyF1D"}
@@ -59,6 +59,24 @@ export async function runAllChecks() {
59
59
  const memoryPath = resolvePath(desc.paths.globalMemory) ?? "";
60
60
  checks.push(await checkMemoryFileSize(memoryPath, maxLines));
61
61
  }
62
+ // 8. Check taken-over plugins
63
+ try {
64
+ const { checkTakenOverPlugins } = await import("./plugin-takeover-check.js");
65
+ const pluginChecks = await checkTakenOverPlugins();
66
+ checks.push(...pluginChecks);
67
+ }
68
+ catch {
69
+ // plugin takeover check is optional
70
+ }
71
+ // 9. Check MCP self-registration
72
+ try {
73
+ const { checkSelfRegistration } = await import("./mcp-check.js");
74
+ const selfRegChecks = await checkSelfRegistration();
75
+ checks.push(...selfRegChecks);
76
+ }
77
+ catch {
78
+ // self-registration check is optional
79
+ }
62
80
  // Calculate summary
63
81
  const summary = {
64
82
  passed: checks.filter((c) => c.status === "pass").length,
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../src/commands/health-checks/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../src/commands/health-checks/runner.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAUpC,+EAA+E;AAC/E,eAAO,MAAM,iBAAiB,oBAAoB,CAAC;AAEnD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BnC,CAAC;AAqDF;;GAEG;AACH,wBAAsB,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC,CAyChF;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,CAAC,CA4BlF;AAMD,qDAAqD;AACrD,wBAAgB,aAAa,IAAI,OAAO,CAOvC;AAED,oCAAoC;AACpC,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAOtD;AAED,8BAA8B;AAC9B,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED,4DAA4D;AAC5D,wBAAsB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAWxE;AAED,yEAAyE;AACzE,wBAAsB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAW9D;AAED,mEAAmE;AACnE,wBAAgB,WAAW,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAUxD;AAED,+DAA+D;AAC/D,wBAAgB,YAAY,IAAI,OAAO,CAQtC;AAED;;;;;;;GAOG;AACH,wBAAsB,SAAS,CAAC,OAAO,EAAE;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,GAAG,OAAO,CAAC,IAAI,CAAC,CAyJhB;AAMD;;GAEG;AACH,eAAO,MAAM,WAAW,SAoBpB,CAAC"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAWpC,+EAA+E;AAC/E,eAAO,MAAM,iBAAiB,oBAAoB,CAAC;AAEnD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BnC,CAAC;AAqDF;;GAEG;AACH,wBAAsB,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC,CA2DhF;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,CAAC,CA4BlF;AAMD,qDAAqD;AACrD,wBAAgB,aAAa,IAAI,OAAO,CAOvC;AAED,oCAAoC;AACpC,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAOtD;AAED,8BAA8B;AAC9B,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED,4DAA4D;AAC5D,wBAAsB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAWxE;AAED,yEAAyE;AACzE,wBAAsB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAW9D;AAED,mEAAmE;AACnE,wBAAgB,WAAW,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAUxD;AAED,+DAA+D;AAC/D,wBAAgB,YAAY,IAAI,OAAO,CAQtC;AAED;;;;;;;GAOG;AACH,wBAAsB,SAAS,CAAC,OAAO,EAAE;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuKhB;AAMD;;GAEG;AACH,eAAO,MAAM,WAAW,SAoBpB,CAAC"}
@@ -11,6 +11,7 @@ import { Command } from "commander";
11
11
  import * as fs from "node:fs/promises";
12
12
  import * as path from "node:path";
13
13
  import { execFileSync } from "node:child_process";
14
+ import { fileURLToPath } from "node:url";
14
15
  import { stringify as yamlStringify } from "yaml";
15
16
  import { expandPath, ensureDir, pathExists } from "@mycelish/core";
16
17
  import { ensureGitignore, generateEnvTemplate, getMissingEnvVars } from "../core/env-template.js";
@@ -132,6 +133,24 @@ export async function initGlobal(options) {
132
133
  await fs.writeFile(path.join(globalPath, ".env.local"), ENV_LOCAL_CONTENT, "utf-8");
133
134
  // Write global/mcps.yaml
134
135
  await fs.writeFile(path.join(globalPath, "global/mcps.yaml"), GLOBAL_MCPS_YAML_CONTENT, "utf-8");
136
+ // Copy bundled skills (e.g. debug-mycelium) if they don't already exist
137
+ const __dirname = path.dirname(fileURLToPath(import.meta.url));
138
+ const bundledSkillsDir = path.resolve(__dirname, "../../skills");
139
+ const globalSkillsDir = path.join(globalPath, "global", "skills");
140
+ try {
141
+ const entries = await fs.readdir(bundledSkillsDir);
142
+ const skills = entries.filter((f) => f.endsWith(".md"));
143
+ for (const skill of skills) {
144
+ const dest = path.join(globalSkillsDir, skill);
145
+ if (!(await pathExists(dest))) {
146
+ await fs.copyFile(path.join(bundledSkillsDir, skill), dest);
147
+ console.log(` Bundled skill: ${skill}`);
148
+ }
149
+ }
150
+ }
151
+ catch {
152
+ // bundled skills dir doesn't exist in this build — skip
153
+ }
135
154
  return {
136
155
  success: true,
137
156
  path: globalPath,
@@ -398,6 +417,20 @@ export async function autoSetup(options) {
398
417
  // Push failed — non-critical
399
418
  }
400
419
  }
420
+ // Self-register Mycelium as an MCP in all detected tools
421
+ try {
422
+ const { selfRegister } = await import("../core/self-register.js");
423
+ const { getTracer } = await import("../core/global-tracer.js");
424
+ const log = getTracer().createTrace("init");
425
+ const regResults = await selfRegister(log);
426
+ const registered = Object.entries(regResults).filter(([, ok]) => ok).map(([t]) => t);
427
+ if (registered.length > 0) {
428
+ console.log(`\n Mycelium MCP registered in: ${registered.join(", ")}`);
429
+ }
430
+ }
431
+ catch (err) {
432
+ console.warn("Self-registration failed:", err instanceof Error ? err.message : String(err));
433
+ }
401
434
  console.log("\nSetup complete. Next steps:");
402
435
  console.log(" mycelium sync # Push config to all installed tools");
403
436
  console.log(` mycelium serve # Start dashboard at http://localhost:${DEFAULT_PORT}`);
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * mcp command — starts the Mycelium MCP server (stdio transport).
3
+ *
4
+ * Usage:
5
+ * mycelium mcp # Start MCP server on stdio
6
+ */
7
+ import { Command } from "commander";
8
+ export declare const mcpCommand: Command;
9
+ //# sourceMappingURL=mcp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/commands/mcp.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,eAAO,MAAM,UAAU,SAWnB,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * mcp command — starts the Mycelium MCP server (stdio transport).
3
+ *
4
+ * Usage:
5
+ * mycelium mcp # Start MCP server on stdio
6
+ */
7
+ import { Command } from "commander";
8
+ export const mcpCommand = new Command("mcp")
9
+ .description("Start Mycelium MCP server (stdio transport)")
10
+ .action(async () => {
11
+ const { StdioServerTransport } = await import("@modelcontextprotocol/sdk/server/stdio.js");
12
+ const { createMyceliumMcpServer } = await import("../mcp/server.js");
13
+ const server = createMyceliumMcpServer();
14
+ const transport = new StdioServerTransport();
15
+ await server.connect(transport);
16
+ });
17
+ //# sourceMappingURL=mcp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../src/commands/mcp.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC;KACzC,WAAW,CAAC,6CAA6C,CAAC;KAC1D,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAC3C,2CAA2C,CAC5C,CAAC;IACF,MAAM,EAAE,uBAAuB,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAErE,MAAM,MAAM,GAAG,uBAAuB,EAAE,CAAC;IACzC,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../src/commands/migrate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiBpC,eAAO,MAAM,cAAc,SA0LvB,CAAC"}
1
+ {"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../src/commands/migrate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAsBpC,eAAO,MAAM,cAAc,SA0OvB,CAAC"}
@@ -13,6 +13,11 @@
13
13
  import { Command } from "commander";
14
14
  import { scanAllTools, scanTool, generateMigrationPlan, executeMigration, clearMigration, writeHooksYaml, } from "../core/migrator/index.js";
15
15
  import { createSnapshot, restoreSnapshot, listSnapshots, deleteSnapshot, } from "../core/snapshot.js";
16
+ import { migrateManifestV1ToV2 } from "../core/manifest-migrator.js";
17
+ import * as fs from "node:fs/promises";
18
+ import * as path from "node:path";
19
+ import { homedir } from "node:os";
20
+ import { getTracer } from "../core/global-tracer.js";
16
21
  export const migrateCommand = new Command("migrate")
17
22
  .description("Scan installed tools and migrate configs into Mycelium")
18
23
  .option("--apply", "Execute migration (default is dry-run)")
@@ -26,6 +31,7 @@ export const migrateCommand = new Command("migrate")
26
31
  .option("--snapshots", "List all saved snapshots")
27
32
  .option("--snapshot-delete <name>", "Delete a saved snapshot")
28
33
  .action(async (opts) => {
34
+ const log = getTracer().createTrace("migrate");
29
35
  const apply = opts.apply ?? false;
30
36
  const strategy = (opts.strategy ?? "latest");
31
37
  // Handle snapshot operations
@@ -89,6 +95,7 @@ export const migrateCommand = new Command("migrate")
89
95
  return;
90
96
  }
91
97
  // Scan
98
+ log.info({ scope: "migration", op: "scan", msg: "Scanning installed tools" });
92
99
  console.log("Scanning installed tools...\n");
93
100
  const scans = opts.tool
94
101
  ? [await scanTool(opts.tool)]
@@ -159,7 +166,49 @@ export const migrateCommand = new Command("migrate")
159
166
  console.log("\nRun with --apply to execute migration.");
160
167
  return;
161
168
  }
169
+ // Migrate v1 manifests (enabled → state) if needed
170
+ const myceliumDir = path.join(homedir(), ".mycelium");
171
+ const manifestPaths = ["skills.json", "mcps.json", "global.json"];
172
+ for (const manifestFile of manifestPaths) {
173
+ const manifestPath = path.join(myceliumDir, manifestFile);
174
+ try {
175
+ const raw = await fs.readFile(manifestPath, "utf-8");
176
+ const parsed = JSON.parse(raw);
177
+ // Detect v1 format: any item has "enabled" field
178
+ const sections = ["skills", "mcps", "hooks", "memory"];
179
+ const hasEnabledField = sections.some((s) => {
180
+ const items = parsed[s];
181
+ if (!items || typeof items !== "object")
182
+ return false;
183
+ return Object.values(items).some((v) => typeof v === "object" && v !== null && "enabled" in v);
184
+ });
185
+ if (hasEnabledField) {
186
+ // Check for plugin-skills.json
187
+ const pluginSkillsPath = path.join(myceliumDir, "plugin-skills.json");
188
+ let pluginSkills;
189
+ try {
190
+ const psRaw = await fs.readFile(pluginSkillsPath, "utf-8");
191
+ pluginSkills = JSON.parse(psRaw);
192
+ }
193
+ catch {
194
+ // No plugin-skills.json, that's fine
195
+ }
196
+ const migrated = migrateManifestV1ToV2(parsed, pluginSkills);
197
+ await fs.writeFile(manifestPath, JSON.stringify(migrated, null, 2) + "\n");
198
+ console.log(` Migrated ${manifestFile} from v1 (enabled) to v2 (state)`);
199
+ // Delete plugin-skills.json after importing its data
200
+ if (pluginSkills) {
201
+ await fs.rm(pluginSkillsPath, { force: true });
202
+ console.log(" Removed plugin-skills.json (data imported into manifests)");
203
+ }
204
+ }
205
+ }
206
+ catch {
207
+ // File doesn't exist, skip
208
+ }
209
+ }
162
210
  // Execute
211
+ log.info({ scope: "migration", op: "execute", msg: `Applying migration: ${plan.skills.length} skills, ${plan.mcps.length} MCPs` });
163
212
  console.log("\nApplying migration...");
164
213
  const result = await executeMigration(plan);
165
214
  // Write hooks from scanned data
@@ -168,10 +217,12 @@ export const migrateCommand = new Command("migrate")
168
217
  await writeHooksYaml(allHooks);
169
218
  console.log(`Wrote ${allHooks.length} hooks to hooks.yaml`);
170
219
  }
220
+ log.info({ scope: "migration", op: "complete", msg: `Imported ${result.skillsImported} skills, ${result.mcpsImported} MCPs, ${result.memoryImported} memory` });
171
221
  console.log(`\nDone! Imported ${result.skillsImported} skills, ${result.mcpsImported} MCPs, ${result.memoryImported} memory files.`);
172
222
  if (result.errors.length > 0) {
173
223
  console.error("Errors:");
174
224
  for (const e of result.errors) {
225
+ log.error({ scope: "migration", op: "execute", msg: e, error: e });
175
226
  console.error(` - ${e}`);
176
227
  }
177
228
  }