@mycelish/cli 0.1.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.
- package/LICENSE +21 -0
- package/dist/__tests__/init-auto.test.d.ts +2 -0
- package/dist/__tests__/init-auto.test.d.ts.map +1 -0
- package/dist/__tests__/init-auto.test.js +60 -0
- package/dist/__tests__/init-auto.test.js.map +1 -0
- package/dist/commands/add.d.ts +20 -0
- package/dist/commands/add.d.ts.map +1 -0
- package/dist/commands/add.js +99 -0
- package/dist/commands/add.js.map +1 -0
- package/dist/commands/add.test.d.ts +25 -0
- package/dist/commands/add.test.d.ts.map +1 -0
- package/dist/commands/add.test.js +574 -0
- package/dist/commands/add.test.js.map +1 -0
- package/dist/commands/disable.d.ts +33 -0
- package/dist/commands/disable.d.ts.map +1 -0
- package/dist/commands/disable.js +201 -0
- package/dist/commands/disable.js.map +1 -0
- package/dist/commands/disable.test.d.ts +6 -0
- package/dist/commands/disable.test.d.ts.map +1 -0
- package/dist/commands/disable.test.js +290 -0
- package/dist/commands/disable.test.js.map +1 -0
- package/dist/commands/doctor.d.ts +11 -0
- package/dist/commands/doctor.d.ts.map +1 -0
- package/dist/commands/doctor.js +33 -0
- package/dist/commands/doctor.js.map +1 -0
- package/dist/commands/doctor.test.d.ts +17 -0
- package/dist/commands/doctor.test.d.ts.map +1 -0
- package/dist/commands/doctor.test.js +691 -0
- package/dist/commands/doctor.test.js.map +1 -0
- package/dist/commands/enable.d.ts +33 -0
- package/dist/commands/enable.d.ts.map +1 -0
- package/dist/commands/enable.js +199 -0
- package/dist/commands/enable.js.map +1 -0
- package/dist/commands/enable.test.d.ts +6 -0
- package/dist/commands/enable.test.d.ts.map +1 -0
- package/dist/commands/enable.test.js +301 -0
- package/dist/commands/enable.test.js.map +1 -0
- package/dist/commands/health-checks/config-check.d.ts +34 -0
- package/dist/commands/health-checks/config-check.d.ts.map +1 -0
- package/dist/commands/health-checks/config-check.js +267 -0
- package/dist/commands/health-checks/config-check.js.map +1 -0
- package/dist/commands/health-checks/formatter.d.ts +13 -0
- package/dist/commands/health-checks/formatter.d.ts.map +1 -0
- package/dist/commands/health-checks/formatter.js +72 -0
- package/dist/commands/health-checks/formatter.js.map +1 -0
- package/dist/commands/health-checks/index.d.ts +8 -0
- package/dist/commands/health-checks/index.d.ts.map +1 -0
- package/dist/commands/health-checks/index.js +7 -0
- package/dist/commands/health-checks/index.js.map +1 -0
- package/dist/commands/health-checks/mcp-check.d.ts +9 -0
- package/dist/commands/health-checks/mcp-check.d.ts.map +1 -0
- package/dist/commands/health-checks/mcp-check.js +37 -0
- package/dist/commands/health-checks/mcp-check.js.map +1 -0
- package/dist/commands/health-checks/memory-check.d.ts +15 -0
- package/dist/commands/health-checks/memory-check.d.ts.map +1 -0
- package/dist/commands/health-checks/memory-check.js +92 -0
- package/dist/commands/health-checks/memory-check.js.map +1 -0
- package/dist/commands/health-checks/runner.d.ts +9 -0
- package/dist/commands/health-checks/runner.d.ts.map +1 -0
- package/dist/commands/health-checks/runner.js +74 -0
- package/dist/commands/health-checks/runner.js.map +1 -0
- package/dist/commands/health-checks/tool-version-check.d.ts +9 -0
- package/dist/commands/health-checks/tool-version-check.d.ts.map +1 -0
- package/dist/commands/health-checks/tool-version-check.js +35 -0
- package/dist/commands/health-checks/tool-version-check.js.map +1 -0
- package/dist/commands/health-checks/types.d.ts +16 -0
- package/dist/commands/health-checks/types.d.ts.map +1 -0
- package/dist/commands/health-checks/types.js +2 -0
- package/dist/commands/health-checks/types.js.map +1 -0
- package/dist/commands/init.d.ts +120 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +436 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/init.test.d.ts +16 -0
- package/dist/commands/init.test.d.ts.map +1 -0
- package/dist/commands/init.test.js +286 -0
- package/dist/commands/init.test.js.map +1 -0
- package/dist/commands/marketplace.d.ts +13 -0
- package/dist/commands/marketplace.d.ts.map +1 -0
- package/dist/commands/marketplace.js +85 -0
- package/dist/commands/marketplace.js.map +1 -0
- package/dist/commands/marketplace.test.d.ts +2 -0
- package/dist/commands/marketplace.test.d.ts.map +1 -0
- package/dist/commands/marketplace.test.js +78 -0
- package/dist/commands/marketplace.test.js.map +1 -0
- package/dist/commands/migrate.d.ts +15 -0
- package/dist/commands/migrate.d.ts.map +1 -0
- package/dist/commands/migrate.js +179 -0
- package/dist/commands/migrate.js.map +1 -0
- package/dist/commands/migrate.test.d.ts +2 -0
- package/dist/commands/migrate.test.d.ts.map +1 -0
- package/dist/commands/migrate.test.js +109 -0
- package/dist/commands/migrate.test.js.map +1 -0
- package/dist/commands/preset.d.ts +11 -0
- package/dist/commands/preset.d.ts.map +1 -0
- package/dist/commands/preset.js +99 -0
- package/dist/commands/preset.js.map +1 -0
- package/dist/commands/preset.test.d.ts +2 -0
- package/dist/commands/preset.test.d.ts.map +1 -0
- package/dist/commands/preset.test.js +106 -0
- package/dist/commands/preset.test.js.map +1 -0
- package/dist/commands/remote.d.ts +9 -0
- package/dist/commands/remote.d.ts.map +1 -0
- package/dist/commands/remote.js +212 -0
- package/dist/commands/remote.js.map +1 -0
- package/dist/commands/remote.test.d.ts +2 -0
- package/dist/commands/remote.test.d.ts.map +1 -0
- package/dist/commands/remote.test.js +125 -0
- package/dist/commands/remote.test.js.map +1 -0
- package/dist/commands/remove.d.ts +34 -0
- package/dist/commands/remove.d.ts.map +1 -0
- package/dist/commands/remove.js +296 -0
- package/dist/commands/remove.js.map +1 -0
- package/dist/commands/remove.test.d.ts +2 -0
- package/dist/commands/remove.test.d.ts.map +1 -0
- package/dist/commands/remove.test.js +109 -0
- package/dist/commands/remove.test.js.map +1 -0
- package/dist/commands/serve.d.ts +3 -0
- package/dist/commands/serve.d.ts.map +1 -0
- package/dist/commands/serve.js +29 -0
- package/dist/commands/serve.js.map +1 -0
- package/dist/commands/serve.test.d.ts +2 -0
- package/dist/commands/serve.test.d.ts.map +1 -0
- package/dist/commands/serve.test.js +74 -0
- package/dist/commands/serve.test.js.map +1 -0
- package/dist/commands/status.d.ts +49 -0
- package/dist/commands/status.d.ts.map +1 -0
- package/dist/commands/status.js +272 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/status.test.d.ts +11 -0
- package/dist/commands/status.test.d.ts.map +1 -0
- package/dist/commands/status.test.js +334 -0
- package/dist/commands/status.test.js.map +1 -0
- package/dist/commands/sync.d.ts +38 -0
- package/dist/commands/sync.d.ts.map +1 -0
- package/dist/commands/sync.js +286 -0
- package/dist/commands/sync.js.map +1 -0
- package/dist/commands/sync.test.d.ts +6 -0
- package/dist/commands/sync.test.d.ts.map +1 -0
- package/dist/commands/sync.test.js +341 -0
- package/dist/commands/sync.test.js.map +1 -0
- package/dist/commands/teams.d.ts +18 -0
- package/dist/commands/teams.d.ts.map +1 -0
- package/dist/commands/teams.js +68 -0
- package/dist/commands/teams.js.map +1 -0
- package/dist/commands/teams.test.d.ts +2 -0
- package/dist/commands/teams.test.d.ts.map +1 -0
- package/dist/commands/teams.test.js +94 -0
- package/dist/commands/teams.test.js.map +1 -0
- package/dist/core/adapter-base.d.ts +51 -0
- package/dist/core/adapter-base.d.ts.map +1 -0
- package/dist/core/adapter-base.js +89 -0
- package/dist/core/adapter-base.js.map +1 -0
- package/dist/core/add-helpers.d.ts +55 -0
- package/dist/core/add-helpers.d.ts.map +1 -0
- package/dist/core/add-helpers.js +273 -0
- package/dist/core/add-helpers.js.map +1 -0
- package/dist/core/agent-teams.d.ts +10 -0
- package/dist/core/agent-teams.d.ts.map +1 -0
- package/dist/core/agent-teams.js +40 -0
- package/dist/core/agent-teams.js.map +1 -0
- package/dist/core/agent-teams.test.d.ts +2 -0
- package/dist/core/agent-teams.test.d.ts.map +1 -0
- package/dist/core/agent-teams.test.js +64 -0
- package/dist/core/agent-teams.test.js.map +1 -0
- package/dist/core/auto-adapter.d.ts +27 -0
- package/dist/core/auto-adapter.d.ts.map +1 -0
- package/dist/core/auto-adapter.js +324 -0
- package/dist/core/auto-adapter.js.map +1 -0
- package/dist/core/auto-adapter.test.d.ts +2 -0
- package/dist/core/auto-adapter.test.d.ts.map +1 -0
- package/dist/core/auto-adapter.test.js +125 -0
- package/dist/core/auto-adapter.test.js.map +1 -0
- package/dist/core/config-merger.d.ts +33 -0
- package/dist/core/config-merger.d.ts.map +1 -0
- package/dist/core/config-merger.js +238 -0
- package/dist/core/config-merger.js.map +1 -0
- package/dist/core/config-merger.test.d.ts +10 -0
- package/dist/core/config-merger.test.d.ts.map +1 -0
- package/dist/core/config-merger.test.js +406 -0
- package/dist/core/config-merger.test.js.map +1 -0
- package/dist/core/conflict-detector.d.ts +23 -0
- package/dist/core/conflict-detector.d.ts.map +1 -0
- package/dist/core/conflict-detector.js +58 -0
- package/dist/core/conflict-detector.js.map +1 -0
- package/dist/core/conflict-detector.test.d.ts +2 -0
- package/dist/core/conflict-detector.test.d.ts.map +1 -0
- package/dist/core/conflict-detector.test.js +40 -0
- package/dist/core/conflict-detector.test.js.map +1 -0
- package/dist/core/env-template.d.ts +22 -0
- package/dist/core/env-template.d.ts.map +1 -0
- package/dist/core/env-template.js +125 -0
- package/dist/core/env-template.js.map +1 -0
- package/dist/core/env-template.test.d.ts +2 -0
- package/dist/core/env-template.test.d.ts.map +1 -0
- package/dist/core/env-template.test.js +145 -0
- package/dist/core/env-template.test.js.map +1 -0
- package/dist/core/fs-helpers.d.ts +8 -0
- package/dist/core/fs-helpers.d.ts.map +1 -0
- package/dist/core/fs-helpers.js +26 -0
- package/dist/core/fs-helpers.js.map +1 -0
- package/dist/core/fs-helpers.test.d.ts +2 -0
- package/dist/core/fs-helpers.test.d.ts.map +1 -0
- package/dist/core/fs-helpers.test.js +51 -0
- package/dist/core/fs-helpers.test.js.map +1 -0
- package/dist/core/machine-overrides.d.ts +13 -0
- package/dist/core/machine-overrides.d.ts.map +1 -0
- package/dist/core/machine-overrides.js +155 -0
- package/dist/core/machine-overrides.js.map +1 -0
- package/dist/core/machine-overrides.test.d.ts +2 -0
- package/dist/core/machine-overrides.test.d.ts.map +1 -0
- package/dist/core/machine-overrides.test.js +160 -0
- package/dist/core/machine-overrides.test.js.map +1 -0
- package/dist/core/marketplace-registry.d.ts +14 -0
- package/dist/core/marketplace-registry.d.ts.map +1 -0
- package/dist/core/marketplace-registry.js +215 -0
- package/dist/core/marketplace-registry.js.map +1 -0
- package/dist/core/marketplace-registry.test.d.ts +2 -0
- package/dist/core/marketplace-registry.test.d.ts.map +1 -0
- package/dist/core/marketplace-registry.test.js +232 -0
- package/dist/core/marketplace-registry.test.js.map +1 -0
- package/dist/core/marketplace-sources.d.ts +39 -0
- package/dist/core/marketplace-sources.d.ts.map +1 -0
- package/dist/core/marketplace-sources.js +199 -0
- package/dist/core/marketplace-sources.js.map +1 -0
- package/dist/core/marketplace.d.ts +18 -0
- package/dist/core/marketplace.d.ts.map +1 -0
- package/dist/core/marketplace.js +211 -0
- package/dist/core/marketplace.js.map +1 -0
- package/dist/core/marketplace.test.d.ts +2 -0
- package/dist/core/marketplace.test.d.ts.map +1 -0
- package/dist/core/marketplace.test.js +177 -0
- package/dist/core/marketplace.test.js.map +1 -0
- package/dist/core/mcp-injector.d.ts +43 -0
- package/dist/core/mcp-injector.d.ts.map +1 -0
- package/dist/core/mcp-injector.js +164 -0
- package/dist/core/mcp-injector.js.map +1 -0
- package/dist/core/mcp-injector.test.d.ts +6 -0
- package/dist/core/mcp-injector.test.d.ts.map +1 -0
- package/dist/core/mcp-injector.test.js +315 -0
- package/dist/core/mcp-injector.test.js.map +1 -0
- package/dist/core/mcp-registry.d.ts +17 -0
- package/dist/core/mcp-registry.d.ts.map +1 -0
- package/dist/core/mcp-registry.js +52 -0
- package/dist/core/mcp-registry.js.map +1 -0
- package/dist/core/mcp-registry.test.d.ts +2 -0
- package/dist/core/mcp-registry.test.d.ts.map +1 -0
- package/dist/core/mcp-registry.test.js +78 -0
- package/dist/core/mcp-registry.test.js.map +1 -0
- package/dist/core/mcp-router.d.ts +21 -0
- package/dist/core/mcp-router.d.ts.map +1 -0
- package/dist/core/mcp-router.js +67 -0
- package/dist/core/mcp-router.js.map +1 -0
- package/dist/core/mcp-router.test.d.ts +2 -0
- package/dist/core/mcp-router.test.d.ts.map +1 -0
- package/dist/core/mcp-router.test.js +40 -0
- package/dist/core/mcp-router.test.js.map +1 -0
- package/dist/core/memory-scoper.d.ts +43 -0
- package/dist/core/memory-scoper.d.ts.map +1 -0
- package/dist/core/memory-scoper.js +165 -0
- package/dist/core/memory-scoper.js.map +1 -0
- package/dist/core/memory-scoper.test.d.ts +6 -0
- package/dist/core/memory-scoper.test.d.ts.map +1 -0
- package/dist/core/memory-scoper.test.js +467 -0
- package/dist/core/memory-scoper.test.js.map +1 -0
- package/dist/core/migrator/executor.d.ts +9 -0
- package/dist/core/migrator/executor.d.ts.map +1 -0
- package/dist/core/migrator/executor.js +233 -0
- package/dist/core/migrator/executor.js.map +1 -0
- package/dist/core/migrator/index.d.ts +8 -0
- package/dist/core/migrator/index.d.ts.map +1 -0
- package/dist/core/migrator/index.js +12 -0
- package/dist/core/migrator/index.js.map +1 -0
- package/dist/core/migrator/manifest.d.ts +8 -0
- package/dist/core/migrator/manifest.d.ts.map +1 -0
- package/dist/core/migrator/manifest.js +83 -0
- package/dist/core/migrator/manifest.js.map +1 -0
- package/dist/core/migrator/planner.d.ts +6 -0
- package/dist/core/migrator/planner.d.ts.map +1 -0
- package/dist/core/migrator/planner.js +112 -0
- package/dist/core/migrator/planner.js.map +1 -0
- package/dist/core/migrator/scanners.d.ts +19 -0
- package/dist/core/migrator/scanners.d.ts.map +1 -0
- package/dist/core/migrator/scanners.js +612 -0
- package/dist/core/migrator/scanners.js.map +1 -0
- package/dist/core/migrator/scanners.test.d.ts +2 -0
- package/dist/core/migrator/scanners.test.d.ts.map +1 -0
- package/dist/core/migrator/scanners.test.js +257 -0
- package/dist/core/migrator/scanners.test.js.map +1 -0
- package/dist/core/migrator.test.d.ts +2 -0
- package/dist/core/migrator.test.d.ts.map +1 -0
- package/dist/core/migrator.test.js +451 -0
- package/dist/core/migrator.test.js.map +1 -0
- package/dist/core/plugin-scanner.d.ts +30 -0
- package/dist/core/plugin-scanner.d.ts.map +1 -0
- package/dist/core/plugin-scanner.js +174 -0
- package/dist/core/plugin-scanner.js.map +1 -0
- package/dist/core/plugin-scanner.test.d.ts +2 -0
- package/dist/core/plugin-scanner.test.d.ts.map +1 -0
- package/dist/core/plugin-scanner.test.js +279 -0
- package/dist/core/plugin-scanner.test.js.map +1 -0
- package/dist/core/presets.d.ts +55 -0
- package/dist/core/presets.d.ts.map +1 -0
- package/dist/core/presets.js +84 -0
- package/dist/core/presets.js.map +1 -0
- package/dist/core/presets.test.d.ts +2 -0
- package/dist/core/presets.test.d.ts.map +1 -0
- package/dist/core/presets.test.js +40 -0
- package/dist/core/presets.test.js.map +1 -0
- package/dist/core/skill-parser.d.ts +21 -0
- package/dist/core/skill-parser.d.ts.map +1 -0
- package/dist/core/skill-parser.js +53 -0
- package/dist/core/skill-parser.js.map +1 -0
- package/dist/core/skill-parser.test.d.ts +2 -0
- package/dist/core/skill-parser.test.d.ts.map +1 -0
- package/dist/core/skill-parser.test.js +83 -0
- package/dist/core/skill-parser.test.js.map +1 -0
- package/dist/core/smart-memory.d.ts +22 -0
- package/dist/core/smart-memory.d.ts.map +1 -0
- package/dist/core/smart-memory.js +72 -0
- package/dist/core/smart-memory.js.map +1 -0
- package/dist/core/smart-memory.test.d.ts +2 -0
- package/dist/core/smart-memory.test.d.ts.map +1 -0
- package/dist/core/smart-memory.test.js +114 -0
- package/dist/core/smart-memory.test.js.map +1 -0
- package/dist/core/snapshot.d.ts +6 -0
- package/dist/core/snapshot.d.ts.map +1 -0
- package/dist/core/snapshot.js +179 -0
- package/dist/core/snapshot.js.map +1 -0
- package/dist/core/snapshot.test.d.ts +2 -0
- package/dist/core/snapshot.test.d.ts.map +1 -0
- package/dist/core/snapshot.test.js +132 -0
- package/dist/core/snapshot.test.js.map +1 -0
- package/dist/core/symlink-manager.d.ts +78 -0
- package/dist/core/symlink-manager.d.ts.map +1 -0
- package/dist/core/symlink-manager.js +227 -0
- package/dist/core/symlink-manager.js.map +1 -0
- package/dist/core/symlink-manager.test.d.ts +8 -0
- package/dist/core/symlink-manager.test.d.ts.map +1 -0
- package/dist/core/symlink-manager.test.js +354 -0
- package/dist/core/symlink-manager.test.js.map +1 -0
- package/dist/core/sync-writer.d.ts +20 -0
- package/dist/core/sync-writer.d.ts.map +1 -0
- package/dist/core/sync-writer.js +150 -0
- package/dist/core/sync-writer.js.map +1 -0
- package/dist/core/sync-writer.test.d.ts +2 -0
- package/dist/core/sync-writer.test.d.ts.map +1 -0
- package/dist/core/sync-writer.test.js +134 -0
- package/dist/core/sync-writer.test.js.map +1 -0
- package/dist/core/toml-helpers.d.ts +9 -0
- package/dist/core/toml-helpers.d.ts.map +1 -0
- package/dist/core/toml-helpers.js +33 -0
- package/dist/core/toml-helpers.js.map +1 -0
- package/dist/core/tool-adapter.d.ts +24 -0
- package/dist/core/tool-adapter.d.ts.map +1 -0
- package/dist/core/tool-adapter.js +156 -0
- package/dist/core/tool-adapter.js.map +1 -0
- package/dist/core/tool-adapter.test.d.ts +2 -0
- package/dist/core/tool-adapter.test.d.ts.map +1 -0
- package/dist/core/tool-adapter.test.js +264 -0
- package/dist/core/tool-adapter.test.js.map +1 -0
- package/dist/core/tool-detector.d.ts +31 -0
- package/dist/core/tool-detector.d.ts.map +1 -0
- package/dist/core/tool-detector.js +67 -0
- package/dist/core/tool-detector.js.map +1 -0
- package/dist/core/tool-detector.test.d.ts +2 -0
- package/dist/core/tool-detector.test.d.ts.map +1 -0
- package/dist/core/tool-detector.test.js +126 -0
- package/dist/core/tool-detector.test.js.map +1 -0
- package/dist/core/watcher.d.ts +22 -0
- package/dist/core/watcher.d.ts.map +1 -0
- package/dist/core/watcher.js +68 -0
- package/dist/core/watcher.js.map +1 -0
- package/dist/core/watcher.test.d.ts +2 -0
- package/dist/core/watcher.test.d.ts.map +1 -0
- package/dist/core/watcher.test.js +26 -0
- package/dist/core/watcher.test.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +47 -0
- package/dist/index.js.map +1 -0
- package/dist/routes/async-handler.d.ts +6 -0
- package/dist/routes/async-handler.d.ts.map +1 -0
- package/dist/routes/async-handler.js +9 -0
- package/dist/routes/async-handler.js.map +1 -0
- package/dist/routes/marketplace.d.ts +3 -0
- package/dist/routes/marketplace.d.ts.map +1 -0
- package/dist/routes/marketplace.js +51 -0
- package/dist/routes/marketplace.js.map +1 -0
- package/dist/routes/migrate.d.ts +3 -0
- package/dist/routes/migrate.d.ts.map +1 -0
- package/dist/routes/migrate.js +22 -0
- package/dist/routes/migrate.js.map +1 -0
- package/dist/routes/plugin-map.d.ts +11 -0
- package/dist/routes/plugin-map.d.ts.map +1 -0
- package/dist/routes/plugin-map.js +37 -0
- package/dist/routes/plugin-map.js.map +1 -0
- package/dist/routes/plugins.d.ts +3 -0
- package/dist/routes/plugins.d.ts.map +1 -0
- package/dist/routes/plugins.js +51 -0
- package/dist/routes/plugins.js.map +1 -0
- package/dist/routes/remove.d.ts +3 -0
- package/dist/routes/remove.d.ts.map +1 -0
- package/dist/routes/remove.js +27 -0
- package/dist/routes/remove.js.map +1 -0
- package/dist/routes/state.d.ts +3 -0
- package/dist/routes/state.d.ts.map +1 -0
- package/dist/routes/state.js +177 -0
- package/dist/routes/state.js.map +1 -0
- package/dist/routes/sync.d.ts +3 -0
- package/dist/routes/sync.d.ts.map +1 -0
- package/dist/routes/sync.js +12 -0
- package/dist/routes/sync.js.map +1 -0
- package/dist/server.d.ts +4 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +59 -0
- package/dist/server.js.map +1 -0
- package/package.json +48 -0
|
@@ -0,0 +1,436 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* init command - Initialize Mycelium configuration
|
|
3
|
+
*
|
|
4
|
+
* Usage:
|
|
5
|
+
* mycelium init # Auto-setup: detect gh, create/clone repo, migrate, sync
|
|
6
|
+
* mycelium init --repo <url> # Clone existing config from a git repo
|
|
7
|
+
* mycelium init --global # Creates ~/.mycelium/ with default structure (manual)
|
|
8
|
+
* mycelium init --force # Overwrites existing configuration
|
|
9
|
+
*/
|
|
10
|
+
import { Command } from "commander";
|
|
11
|
+
import * as fs from "node:fs/promises";
|
|
12
|
+
import * as path from "node:path";
|
|
13
|
+
import { execFileSync } from "node:child_process";
|
|
14
|
+
import { stringify as yamlStringify } from "yaml";
|
|
15
|
+
import { expandPath, ensureDir, pathExists } from "@mycelish/core";
|
|
16
|
+
import { ensureGitignore, generateEnvTemplate, getMissingEnvVars } from "../core/env-template.js";
|
|
17
|
+
import { detectMcpOverrides, saveMachineOverrides, loadMachineOverrides } from "../core/machine-overrides.js";
|
|
18
|
+
import { DEFAULT_PORT } from "../core/fs-helpers.js";
|
|
19
|
+
/** Default repo name — consistent across all machines for frictionless sync */
|
|
20
|
+
export const DEFAULT_REPO_NAME = "mycelium-config";
|
|
21
|
+
/**
|
|
22
|
+
* Default manifest.yaml configuration
|
|
23
|
+
*/
|
|
24
|
+
export const DEFAULT_MANIFEST_CONFIG = {
|
|
25
|
+
version: "1.0",
|
|
26
|
+
tools: {
|
|
27
|
+
"claude-code": { enabled: true },
|
|
28
|
+
"codex": { enabled: true },
|
|
29
|
+
"gemini-cli": { enabled: true },
|
|
30
|
+
"opencode": { enabled: true },
|
|
31
|
+
"openclaw": { enabled: true },
|
|
32
|
+
"aider": { enabled: true },
|
|
33
|
+
},
|
|
34
|
+
memory: {
|
|
35
|
+
scopes: {
|
|
36
|
+
shared: {
|
|
37
|
+
sync_to: ["claude-code", "codex", "gemini-cli", "opencode", "openclaw", "aider"],
|
|
38
|
+
path: "global/memory/shared/",
|
|
39
|
+
files: [],
|
|
40
|
+
},
|
|
41
|
+
coding: {
|
|
42
|
+
sync_to: ["claude-code", "codex", "gemini-cli", "opencode", "aider"],
|
|
43
|
+
exclude_from: ["openclaw"],
|
|
44
|
+
path: "global/memory/coding/",
|
|
45
|
+
files: [],
|
|
46
|
+
},
|
|
47
|
+
personal: {
|
|
48
|
+
sync_to: ["openclaw"],
|
|
49
|
+
exclude_from: ["claude-code", "codex", "gemini-cli", "opencode", "aider"],
|
|
50
|
+
path: "global/memory/personal/",
|
|
51
|
+
files: [],
|
|
52
|
+
},
|
|
53
|
+
},
|
|
54
|
+
},
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* Default .env.example template content
|
|
58
|
+
*/
|
|
59
|
+
const ENV_EXAMPLE_CONTENT = `# Mycelium Environment Variables
|
|
60
|
+
# Copy this file to .env.local and fill in your secrets
|
|
61
|
+
|
|
62
|
+
# API Keys (optional, for MCPs that need them)
|
|
63
|
+
# OPENAI_API_KEY=your-key-here
|
|
64
|
+
# ANTHROPIC_API_KEY=your-key-here
|
|
65
|
+
|
|
66
|
+
# Custom MCP Environment Variables
|
|
67
|
+
# MY_CUSTOM_MCP_TOKEN=your-token-here
|
|
68
|
+
`;
|
|
69
|
+
/**
|
|
70
|
+
* Default .env.local content
|
|
71
|
+
*/
|
|
72
|
+
const ENV_LOCAL_CONTENT = `# Local secrets - DO NOT COMMIT THIS FILE
|
|
73
|
+
# Add your actual API keys and secrets here
|
|
74
|
+
|
|
75
|
+
`;
|
|
76
|
+
/**
|
|
77
|
+
* Default global mcps.yaml content
|
|
78
|
+
*/
|
|
79
|
+
const GLOBAL_MCPS_YAML_CONTENT = `# Global MCP configurations
|
|
80
|
+
# Add MCPs that should be available across all projects
|
|
81
|
+
|
|
82
|
+
mcps: {}
|
|
83
|
+
# Example:
|
|
84
|
+
# context7:
|
|
85
|
+
# command: npx
|
|
86
|
+
# args: ["-y", "@context7/mcp"]
|
|
87
|
+
# enabled: true
|
|
88
|
+
`;
|
|
89
|
+
/**
|
|
90
|
+
* Default project mcps.yaml content
|
|
91
|
+
*/
|
|
92
|
+
const PROJECT_MCPS_YAML_CONTENT = `# Project-specific MCP configurations
|
|
93
|
+
# Add MCPs that are specific to this project
|
|
94
|
+
# These will be merged with global MCPs
|
|
95
|
+
|
|
96
|
+
mcps: {}
|
|
97
|
+
# Example:
|
|
98
|
+
# my-project-mcp:
|
|
99
|
+
# command: node
|
|
100
|
+
# args: ["./scripts/mcp-server.js"]
|
|
101
|
+
# enabled: true
|
|
102
|
+
`;
|
|
103
|
+
/**
|
|
104
|
+
* Initialize global Mycelium configuration at ~/.mycelium/
|
|
105
|
+
*/
|
|
106
|
+
export async function initGlobal(options) {
|
|
107
|
+
const globalPath = expandPath("~/.mycelium");
|
|
108
|
+
const manifestPath = path.join(globalPath, "manifest.yaml");
|
|
109
|
+
// Check if already exists
|
|
110
|
+
const exists = await pathExists(manifestPath);
|
|
111
|
+
if (exists && !options.force) {
|
|
112
|
+
return {
|
|
113
|
+
success: true,
|
|
114
|
+
path: globalPath,
|
|
115
|
+
skipped: true,
|
|
116
|
+
message: `Global configuration already exists at ${globalPath}. Use --force to overwrite.`,
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
// Create directory structure
|
|
120
|
+
await ensureDir(globalPath);
|
|
121
|
+
await ensureDir(path.join(globalPath, "global/skills"));
|
|
122
|
+
await ensureDir(path.join(globalPath, "global/memory/shared"));
|
|
123
|
+
await ensureDir(path.join(globalPath, "global/memory/coding"));
|
|
124
|
+
await ensureDir(path.join(globalPath, "global/memory/personal"));
|
|
125
|
+
await ensureDir(path.join(globalPath, "machines"));
|
|
126
|
+
// Write manifest.yaml
|
|
127
|
+
const manifestContent = yamlStringify(DEFAULT_MANIFEST_CONFIG);
|
|
128
|
+
await fs.writeFile(manifestPath, manifestContent, "utf-8");
|
|
129
|
+
// Write .env.example
|
|
130
|
+
await fs.writeFile(path.join(globalPath, ".env.example"), ENV_EXAMPLE_CONTENT, "utf-8");
|
|
131
|
+
// Write .env.local
|
|
132
|
+
await fs.writeFile(path.join(globalPath, ".env.local"), ENV_LOCAL_CONTENT, "utf-8");
|
|
133
|
+
// Write global/mcps.yaml
|
|
134
|
+
await fs.writeFile(path.join(globalPath, "global/mcps.yaml"), GLOBAL_MCPS_YAML_CONTENT, "utf-8");
|
|
135
|
+
return {
|
|
136
|
+
success: true,
|
|
137
|
+
path: globalPath,
|
|
138
|
+
skipped: false,
|
|
139
|
+
};
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Initialize project-specific Mycelium configuration at .mycelium/
|
|
143
|
+
*/
|
|
144
|
+
export async function initProject(options) {
|
|
145
|
+
const projectRoot = options.projectRoot || process.cwd();
|
|
146
|
+
const projectPath = path.join(projectRoot, ".mycelium");
|
|
147
|
+
const mcpsPath = path.join(projectPath, "mcps.yaml");
|
|
148
|
+
// Check if already exists
|
|
149
|
+
const exists = await pathExists(mcpsPath);
|
|
150
|
+
if (exists && !options.force) {
|
|
151
|
+
return {
|
|
152
|
+
success: true,
|
|
153
|
+
path: projectPath,
|
|
154
|
+
skipped: true,
|
|
155
|
+
message: `Project configuration already exists at ${projectPath}. Use --force to overwrite.`,
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
// Create directory structure
|
|
159
|
+
await ensureDir(projectPath);
|
|
160
|
+
await ensureDir(path.join(projectPath, "memory"));
|
|
161
|
+
// Write mcps.yaml
|
|
162
|
+
await fs.writeFile(mcpsPath, PROJECT_MCPS_YAML_CONTENT, "utf-8");
|
|
163
|
+
return {
|
|
164
|
+
success: true,
|
|
165
|
+
path: projectPath,
|
|
166
|
+
skipped: false,
|
|
167
|
+
};
|
|
168
|
+
}
|
|
169
|
+
// ============================================================================
|
|
170
|
+
// Zero-friction auto-setup
|
|
171
|
+
// ============================================================================
|
|
172
|
+
/** Check if gh CLI is available and authenticated */
|
|
173
|
+
export function isGhAvailable() {
|
|
174
|
+
try {
|
|
175
|
+
execFileSync("gh", ["auth", "status"], { stdio: "pipe", encoding: "utf-8" });
|
|
176
|
+
return true;
|
|
177
|
+
}
|
|
178
|
+
catch {
|
|
179
|
+
return false;
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
/** Check if a GitHub repo exists */
|
|
183
|
+
export function ghRepoExists(repoName) {
|
|
184
|
+
try {
|
|
185
|
+
execFileSync("gh", ["repo", "view", repoName, "--json", "name"], { stdio: "pipe", encoding: "utf-8" });
|
|
186
|
+
return true;
|
|
187
|
+
}
|
|
188
|
+
catch {
|
|
189
|
+
return false;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
/** Get the GitHub username */
|
|
193
|
+
export function getGhUsername() {
|
|
194
|
+
return execFileSync("gh", ["api", "user", "--jq", ".login"], { stdio: "pipe", encoding: "utf-8" }).trim();
|
|
195
|
+
}
|
|
196
|
+
/** Create a private GitHub repo and clone to ~/.mycelium */
|
|
197
|
+
export async function createAndCloneRepo(repoName) {
|
|
198
|
+
const myceliumDir = expandPath("~/.mycelium");
|
|
199
|
+
console.log(`Creating private repo: ${repoName}`);
|
|
200
|
+
execFileSync("gh", ["repo", "create", repoName, "--private", "--description", "Mycelium AI tool config sync"], { stdio: "pipe" });
|
|
201
|
+
// Init locally, add remote, push
|
|
202
|
+
await ensureDir(myceliumDir);
|
|
203
|
+
execFileSync("git", ["-C", myceliumDir, "init"], { stdio: "pipe" });
|
|
204
|
+
const url = getCloneUrl(repoName);
|
|
205
|
+
execFileSync("git", ["-C", myceliumDir, "remote", "add", "origin", url], { stdio: "pipe" });
|
|
206
|
+
}
|
|
207
|
+
/** Clone an existing repo to ~/.mycelium, trying SSH first then HTTPS */
|
|
208
|
+
export async function cloneRepo(repoUrl) {
|
|
209
|
+
const myceliumDir = expandPath("~/.mycelium");
|
|
210
|
+
// Remove empty dir if exists
|
|
211
|
+
try {
|
|
212
|
+
const entries = await fs.readdir(myceliumDir);
|
|
213
|
+
if (entries.length === 0) {
|
|
214
|
+
await fs.rmdir(myceliumDir);
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
catch { /* doesn't exist */ }
|
|
218
|
+
execFileSync("git", ["clone", repoUrl, myceliumDir], { stdio: "pipe" });
|
|
219
|
+
}
|
|
220
|
+
/** Get clone URL for a GitHub repo, trying SSH first then HTTPS */
|
|
221
|
+
export function getCloneUrl(repoFullName) {
|
|
222
|
+
// Try SSH first (faster, no token needed if keys are set up)
|
|
223
|
+
try {
|
|
224
|
+
execFileSync("ssh", ["-T", "git@github.com"], { stdio: "pipe", timeout: 5000 });
|
|
225
|
+
// If SSH doesn't throw a connection error, use SSH URL
|
|
226
|
+
return `git@github.com:${repoFullName}.git`;
|
|
227
|
+
}
|
|
228
|
+
catch {
|
|
229
|
+
// Fall back to HTTPS (works with gh auth)
|
|
230
|
+
}
|
|
231
|
+
return `https://github.com/${repoFullName}.git`;
|
|
232
|
+
}
|
|
233
|
+
/** Check if ~/.mycelium is already a git repo with a remote */
|
|
234
|
+
export function hasGitRemote() {
|
|
235
|
+
const myceliumDir = expandPath("~/.mycelium");
|
|
236
|
+
try {
|
|
237
|
+
const remote = execFileSync("git", ["-C", myceliumDir, "remote", "get-url", "origin"], { stdio: "pipe", encoding: "utf-8" }).trim();
|
|
238
|
+
return remote.length > 0;
|
|
239
|
+
}
|
|
240
|
+
catch {
|
|
241
|
+
return false;
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Zero-friction auto-setup flow:
|
|
246
|
+
* 1. Check if ~/.mycelium exists with config
|
|
247
|
+
* 2. If not, check gh CLI → create/clone repo
|
|
248
|
+
* 3. Run migration if tools detected
|
|
249
|
+
* 4. Setup env template
|
|
250
|
+
* 5. Auto-sync
|
|
251
|
+
*/
|
|
252
|
+
export async function autoSetup(options) {
|
|
253
|
+
const myceliumDir = expandPath("~/.mycelium");
|
|
254
|
+
const manifestExists = await pathExists(path.join(myceliumDir, "manifest.yaml"));
|
|
255
|
+
const migrationExists = await pathExists(path.join(myceliumDir, "migration-manifest.json"));
|
|
256
|
+
const hasRemote = hasGitRemote();
|
|
257
|
+
// Step 1: Handle repo setup
|
|
258
|
+
if (options.repo) {
|
|
259
|
+
// Explicit repo URL provided
|
|
260
|
+
if (migrationExists && !options.force) {
|
|
261
|
+
console.log("Config already exists at ~/.mycelium/. Use --force to overwrite.");
|
|
262
|
+
return;
|
|
263
|
+
}
|
|
264
|
+
console.log(`Cloning config from ${options.repo}...`);
|
|
265
|
+
await cloneRepo(options.repo);
|
|
266
|
+
console.log("Config cloned successfully.");
|
|
267
|
+
}
|
|
268
|
+
else if (!manifestExists && !migrationExists) {
|
|
269
|
+
// Fresh machine — try gh auto-setup
|
|
270
|
+
if (isGhAvailable()) {
|
|
271
|
+
const username = getGhUsername();
|
|
272
|
+
const repoName = `${username}/${DEFAULT_REPO_NAME}`;
|
|
273
|
+
console.log(`GitHub CLI detected (${username}).`);
|
|
274
|
+
if (ghRepoExists(repoName)) {
|
|
275
|
+
console.log(`Found existing repo: ${repoName}`);
|
|
276
|
+
await cloneRepo(getCloneUrl(repoName));
|
|
277
|
+
console.log("Config cloned from GitHub.");
|
|
278
|
+
}
|
|
279
|
+
else {
|
|
280
|
+
console.log(`No existing config repo found.`);
|
|
281
|
+
// Init fresh + create repo
|
|
282
|
+
const result = await initGlobal({ force: true });
|
|
283
|
+
console.log(`Initialized at ${result.path}`);
|
|
284
|
+
await createAndCloneRepo(repoName);
|
|
285
|
+
console.log(`Created private repo: ${repoName}`);
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
else {
|
|
289
|
+
// No gh — just init locally
|
|
290
|
+
console.log("GitHub CLI not detected. Initializing locally.");
|
|
291
|
+
const result = await initGlobal({ force: true });
|
|
292
|
+
console.log(`Initialized at ${result.path}`);
|
|
293
|
+
console.log("Tip: Install gh CLI for automatic multi-PC sync.");
|
|
294
|
+
}
|
|
295
|
+
}
|
|
296
|
+
else {
|
|
297
|
+
console.log("Config already exists at ~/.mycelium/.");
|
|
298
|
+
if (!hasRemote && isGhAvailable()) {
|
|
299
|
+
console.log("No git remote found. Setting up sync...");
|
|
300
|
+
const username = getGhUsername();
|
|
301
|
+
const repoName = `${username}/${DEFAULT_REPO_NAME}`;
|
|
302
|
+
if (!ghRepoExists(repoName)) {
|
|
303
|
+
await createAndCloneRepo(repoName);
|
|
304
|
+
console.log(`Created private repo: ${repoName}`);
|
|
305
|
+
}
|
|
306
|
+
else {
|
|
307
|
+
// Repo exists but not linked — add remote
|
|
308
|
+
try {
|
|
309
|
+
execFileSync("git", ["-C", myceliumDir, "init"], { stdio: "pipe" });
|
|
310
|
+
execFileSync("git", ["-C", myceliumDir, "remote", "add", "origin", getCloneUrl(repoName)], { stdio: "pipe" });
|
|
311
|
+
console.log(`Linked to existing repo: ${repoName}`);
|
|
312
|
+
}
|
|
313
|
+
catch {
|
|
314
|
+
console.log(`Remote already configured.`);
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
}
|
|
319
|
+
// Step 2: Run migration if tools have config to import
|
|
320
|
+
const skillsDir = path.join(myceliumDir, "global", "skills");
|
|
321
|
+
let hasSkills = false;
|
|
322
|
+
try {
|
|
323
|
+
const entries = await fs.readdir(skillsDir);
|
|
324
|
+
hasSkills = entries.length > 0;
|
|
325
|
+
}
|
|
326
|
+
catch { /* no skills dir yet */ }
|
|
327
|
+
if (!hasSkills) {
|
|
328
|
+
console.log("\nScanning installed tools for migration...");
|
|
329
|
+
try {
|
|
330
|
+
const { scanAllTools, executeMigration, generateMigrationPlan } = await import("../core/migrator/index.js");
|
|
331
|
+
const scanResults = await scanAllTools();
|
|
332
|
+
const totalItems = scanResults.reduce((sum, r) => sum + r.skills.length + r.mcps.length + r.memory.length + (r.hooks?.length ?? 0), 0);
|
|
333
|
+
if (totalItems > 0) {
|
|
334
|
+
const plan = generateMigrationPlan(scanResults);
|
|
335
|
+
console.log(`Found ${totalItems} items to migrate. Applying...`);
|
|
336
|
+
const result = await executeMigration(plan);
|
|
337
|
+
console.log(`Migrated: ${result.skillsImported} skills, ${result.mcpsImported} MCPs, ${result.memoryImported} memory`);
|
|
338
|
+
}
|
|
339
|
+
else {
|
|
340
|
+
console.log("No tool configs found to migrate.");
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
catch (err) {
|
|
344
|
+
console.warn("Migration scan failed:", err instanceof Error ? err.message : String(err));
|
|
345
|
+
}
|
|
346
|
+
}
|
|
347
|
+
// Step 3: Env template + gitignore
|
|
348
|
+
await ensureGitignore();
|
|
349
|
+
const keys = await generateEnvTemplate();
|
|
350
|
+
if (keys.length > 0) {
|
|
351
|
+
console.log(`Generated .env.template with ${keys.length} keys`);
|
|
352
|
+
}
|
|
353
|
+
// Step 4: Check missing env vars
|
|
354
|
+
const missing = await getMissingEnvVars();
|
|
355
|
+
if (missing.length > 0) {
|
|
356
|
+
console.log(`\nMissing env vars: ${missing.join(", ")}`);
|
|
357
|
+
console.log("Run: mycelium env setup");
|
|
358
|
+
}
|
|
359
|
+
// Step 5: Auto-detect machine overrides
|
|
360
|
+
const mcpsPath = path.join(myceliumDir, "global", "mcps.yaml");
|
|
361
|
+
try {
|
|
362
|
+
const mcpsContent = await fs.readFile(mcpsPath, "utf-8");
|
|
363
|
+
const { _parseMcpsForOverrides } = await import("./remote.js");
|
|
364
|
+
const mcps = _parseMcpsForOverrides(mcpsContent);
|
|
365
|
+
const detected = detectMcpOverrides(mcps);
|
|
366
|
+
if (detected.length > 0) {
|
|
367
|
+
const existing = await loadMachineOverrides();
|
|
368
|
+
const now = new Date().toISOString();
|
|
369
|
+
for (const d of detected) {
|
|
370
|
+
existing.mcps[d.name] = { command: d.newCommand, detectedAt: now };
|
|
371
|
+
}
|
|
372
|
+
existing.updatedAt = now;
|
|
373
|
+
await saveMachineOverrides(existing);
|
|
374
|
+
console.log(`Detected ${detected.length} machine-specific MCP path(s).`);
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
catch { /* machine overrides detection is optional — skip if no MCPs configured yet */ }
|
|
378
|
+
// Step 6: Initial push if repo is set up
|
|
379
|
+
if (hasGitRemote()) {
|
|
380
|
+
try {
|
|
381
|
+
const dir = myceliumDir;
|
|
382
|
+
execFileSync("git", ["-C", dir, "add", "-A"], { stdio: "pipe" });
|
|
383
|
+
try {
|
|
384
|
+
execFileSync("git", ["-C", dir, "commit", "-m", "mycelium init: initial config"], { stdio: "pipe" });
|
|
385
|
+
try {
|
|
386
|
+
execFileSync("git", ["-C", dir, "push", "-u", "origin", "main"], { stdio: "pipe" });
|
|
387
|
+
}
|
|
388
|
+
catch {
|
|
389
|
+
execFileSync("git", ["-C", dir, "push", "-u", "origin", "master"], { stdio: "pipe" });
|
|
390
|
+
}
|
|
391
|
+
console.log("\nConfig pushed to GitHub.");
|
|
392
|
+
}
|
|
393
|
+
catch {
|
|
394
|
+
// Nothing to commit or already pushed
|
|
395
|
+
}
|
|
396
|
+
}
|
|
397
|
+
catch {
|
|
398
|
+
// Push failed — non-critical
|
|
399
|
+
}
|
|
400
|
+
}
|
|
401
|
+
console.log("\nSetup complete. Next steps:");
|
|
402
|
+
console.log(" mycelium sync # Push config to all installed tools");
|
|
403
|
+
console.log(` mycelium serve # Start dashboard at http://localhost:${DEFAULT_PORT}`);
|
|
404
|
+
if (!hasGitRemote()) {
|
|
405
|
+
console.log(" mycelium push # Push config to remote (after setting up git)");
|
|
406
|
+
}
|
|
407
|
+
}
|
|
408
|
+
// ============================================================================
|
|
409
|
+
// Commander.js Command
|
|
410
|
+
// ============================================================================
|
|
411
|
+
/**
|
|
412
|
+
* Commander.js command for `mycelium init`
|
|
413
|
+
*/
|
|
414
|
+
export const initCommand = new Command("init")
|
|
415
|
+
.description("Initialize Mycelium — auto-detect tools, create GitHub repo, migrate, sync")
|
|
416
|
+
.option("-g, --global", "Initialize global configuration at ~/.mycelium/ (manual mode)")
|
|
417
|
+
.option("-f, --force", "Overwrite existing configuration")
|
|
418
|
+
.option("-r, --repo <url>", "Clone config from an existing git repo URL")
|
|
419
|
+
.action(async (options) => {
|
|
420
|
+
const force = options.force ?? false;
|
|
421
|
+
if (options.global) {
|
|
422
|
+
// Manual mode — just create directory structure
|
|
423
|
+
const result = await initGlobal({ force });
|
|
424
|
+
if (result.skipped) {
|
|
425
|
+
console.log(result.message);
|
|
426
|
+
}
|
|
427
|
+
else {
|
|
428
|
+
console.log(`Global Mycelium configuration initialized at ${result.path}`);
|
|
429
|
+
}
|
|
430
|
+
}
|
|
431
|
+
else {
|
|
432
|
+
// Zero-friction auto-setup
|
|
433
|
+
await autoSetup({ repo: options.repo, force });
|
|
434
|
+
}
|
|
435
|
+
});
|
|
436
|
+
//# sourceMappingURL=init.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tests for init command - written FIRST following TDD
|
|
3
|
+
*
|
|
4
|
+
* Test cases:
|
|
5
|
+
* 1. initGlobal - creates ~/.mycelium/ directory structure
|
|
6
|
+
* 2. initGlobal - creates manifest.yaml with default config
|
|
7
|
+
* 3. initGlobal - creates .env.example template
|
|
8
|
+
* 4. initGlobal - creates empty .env.local (gitignored)
|
|
9
|
+
* 5. initGlobal - does NOT overwrite existing config without --force
|
|
10
|
+
* 6. initGlobal - overwrites with --force flag
|
|
11
|
+
* 7. initProject - creates .mycelium/ in project root
|
|
12
|
+
* 8. initProject - creates project mcps.yaml
|
|
13
|
+
* 9. initProject - does NOT overwrite existing config without --force
|
|
14
|
+
*/
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=init.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.test.d.ts","sourceRoot":"","sources":["../../src/commands/init.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG"}
|