claude-flow-novice 2.3.5 ā 2.3.6
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/dist/src/booster/performance-benchmark.js +1 -1
- package/dist/src/booster/wasm-demo.js +1 -1
- package/dist/src/cli/command-registry.js +2 -2
- package/dist/src/cli/help-formatter.js +137 -109
- package/dist/src/cli/simple-cli.js +2528 -2121
- package/dist/src/cli/simple-commands/sparc/refinement.js +3 -3
- package/dist/src/cli/validation-helper.js +98 -49
- package/dist/src/commands/suggest-templates.js +4 -4
- package/dist/src/core/version.js +23 -15
- package/dist/src/memory/swarm-memory.js +603 -470
- package/dist/src/slash-commands/fullstack.js +2 -2
- package/dist/src/slash-commands/parse-epic.js +1 -1
- package/package.json +1 -1
- package/scripts/postinstall.js +40 -6
- package/dist/scripts/.claude-flow/metrics/agent-metrics.json +0 -1
- package/dist/scripts/.claude-flow/metrics/performance.json +0 -9
- package/dist/scripts/.claude-flow/metrics/task-metrics.json +0 -10
- package/dist/scripts/CLEANUP_OPTIMIZATION_REPORT.json +0 -312
- package/dist/scripts/CLEANUP_PERFORMANCE_OPTIMIZATION.md +0 -387
- package/dist/scripts/CLEANUP_QUICK_START.md +0 -268
- package/dist/scripts/CLEANUP_TEST_RESULTS.md +0 -205
- package/dist/scripts/README.md +0 -339
- package/dist/scripts/ace-query.sh +0 -384
- package/dist/scripts/agent-token-analysis.js +0 -430
- package/dist/scripts/auto-setup.js +0 -332
- package/dist/scripts/build/README.md +0 -167
- package/dist/scripts/build/build-config.js +0 -27
- package/dist/scripts/build/build-prompt-copier.sh +0 -30
- package/dist/scripts/build/performance-monitor.js +0 -869
- package/dist/scripts/build/prepare-publish.js +0 -150
- package/dist/scripts/build/typescript-fixer.js +0 -621
- package/dist/scripts/build/unified-builder.sh +0 -428
- package/dist/scripts/build/update-bin-version.js +0 -32
- package/dist/scripts/build/validate-agents.js +0 -238
- package/dist/scripts/build-index.js +0 -43
- package/dist/scripts/build-orchestrator.js +0 -320
- package/dist/scripts/check-routing-stats.cjs +0 -122
- package/dist/scripts/ci-validation.js +0 -375
- package/dist/scripts/cleanup-blocking-coordination.sh +0 -420
- package/dist/scripts/cleanup-idle-sessions.sh +0 -118
- package/dist/scripts/collect-build-metrics.js +0 -65
- package/dist/scripts/demo/README.md +0 -79
- package/dist/scripts/demo/autoscaling-demo-simplified.js +0 -963
- package/dist/scripts/demo/comprehensive-dashboard-test.js +0 -693
- package/dist/scripts/demo/confidence-log.js +0 -87
- package/dist/scripts/demo/confidence-report.js +0 -82
- package/dist/scripts/demo/demo-multi-swarm-coordination.js +0 -325
- package/dist/scripts/demo/demo-production-deployment.js +0 -399
- package/dist/scripts/demo/demo-visualization-system.js +0 -149
- package/dist/scripts/demo/performance-analysis.cjs +0 -71
- package/dist/scripts/demo/performance-analysis.js +0 -71
- package/dist/scripts/demo/test-autoscaling-demo.js +0 -314
- package/dist/scripts/dependency-optimizer.js +0 -349
- package/dist/scripts/dependency-security-assessment.js +0 -331
- package/dist/scripts/deploy-sdk.sh +0 -176
- package/dist/scripts/deployment-readiness-report.json +0 -179
- package/dist/scripts/dev/README.md +0 -264
- package/dist/scripts/dev/claude-flow-wrapper.sh +0 -35
- package/dist/scripts/dev/claude-monitor.py +0 -419
- package/dist/scripts/dev/claude-sparc.sh +0 -562
- package/dist/scripts/dev/claude-wrapper.sh +0 -17
- package/dist/scripts/dev/demo-phase3-compliance.js +0 -172
- package/dist/scripts/dev/demo-task-system.ts +0 -224
- package/dist/scripts/dev/deployment-validator.js +0 -315
- package/dist/scripts/dev/spawn-claude-terminal.sh +0 -32
- package/dist/scripts/dev/start-portal.sh +0 -506
- package/dist/scripts/dev/start-web-ui.js +0 -15
- package/dist/scripts/dev/stop-portal.sh +0 -311
- package/dist/scripts/dev/validate-examples.ts +0 -288
- package/dist/scripts/dev/validate-phase2.cjs +0 -451
- package/dist/scripts/dev/validate-phase2.js +0 -785
- package/dist/scripts/dev/validate-phase3.cjs +0 -208
- package/dist/scripts/dev/validate-security-remediation.js +0 -1
- package/dist/scripts/ecosystem.config.cjs +0 -90
- package/dist/scripts/enhanced-memory-spiral-killer.sh +0 -221
- package/dist/scripts/fix-js-extensions.js +0 -167
- package/dist/scripts/generate-basic-types.js +0 -73
- package/dist/scripts/generate-changelog.js +0 -318
- package/dist/scripts/git-hooks/pre-commit.sh +0 -143
- package/dist/scripts/health-checks.js +0 -634
- package/dist/scripts/hook-wrapper.sh +0 -54
- package/dist/scripts/install/README.md +0 -375
- package/dist/scripts/install/REDIS_SETUP_VALIDATION.json +0 -245
- package/dist/scripts/install/check-prerequisites.js +0 -303
- package/dist/scripts/install/config-wizard.js +0 -606
- package/dist/scripts/install/dependency-checker.js +0 -385
- package/dist/scripts/install/health-check.js +0 -765
- package/dist/scripts/install/install.js +0 -256
- package/dist/scripts/install/installation-benchmark.js +0 -461
- package/dist/scripts/install/quick-install.js +0 -720
- package/dist/scripts/install/quick-start-wizard.js +0 -295
- package/dist/scripts/install/redis-cli.js +0 -289
- package/dist/scripts/install/redis-install-guides.md +0 -407
- package/dist/scripts/install/redis-setup.js +0 -559
- package/dist/scripts/install/redis-test.js +0 -278
- package/dist/scripts/install/service-manager.js +0 -672
- package/dist/scripts/install/setup.js +0 -832
- package/dist/scripts/install/uninstall.js +0 -526
- package/dist/scripts/install/update.js +0 -461
- package/dist/scripts/install-pre-commit-hook.sh +0 -127
- package/dist/scripts/legacy/README.md +0 -272
- package/dist/scripts/legacy/batch-fix-ts.sh +0 -54
- package/dist/scripts/legacy/build-migration.sh +0 -105
- package/dist/scripts/legacy/build-monitor.js +0 -209
- package/dist/scripts/legacy/build-with-filter.sh +0 -84
- package/dist/scripts/legacy/build-workaround.sh +0 -71
- package/dist/scripts/legacy/fix-ts-advanced.js +0 -358
- package/dist/scripts/legacy/fix-ts-final.sh +0 -50
- package/dist/scripts/legacy/fix-ts-targeted.sh +0 -49
- package/dist/scripts/legacy/fix-typescript-errors.js +0 -305
- package/dist/scripts/legacy/force-build.sh +0 -63
- package/dist/scripts/legacy/optimize-performance.js +0 -400
- package/dist/scripts/legacy/performance-monitor.js +0 -263
- package/dist/scripts/legacy/performance-monitoring.js +0 -532
- package/dist/scripts/legacy/performance-test-runner.js +0 -645
- package/dist/scripts/legacy/quick-fix-ts.js +0 -281
- package/dist/scripts/legacy/safe-build.sh +0 -63
- package/dist/scripts/memory-monitor-coordinator.js +0 -451
- package/dist/scripts/migrate-to-sdk.sh +0 -520
- package/dist/scripts/migration/QUICK-START.md +0 -189
- package/dist/scripts/migration/QUICK-START.md.backup-1760135091363 +0 -189
- package/dist/scripts/migration/README.md +0 -464
- package/dist/scripts/migration/TASK-1.3.2-COMPLETION-REPORT.md +0 -500
- package/dist/scripts/migration/TASK-1.3.2-COMPLETION-REPORT.md.backup-1760135091348 +0 -500
- package/dist/scripts/migration/UPDATE-PATHS-README.md +0 -464
- package/dist/scripts/migration/UPDATE-PATHS-README.md.backup-1760135091337 +0 -464
- package/dist/scripts/migration/example-patterns.json +0 -19
- package/dist/scripts/migration/install-arm64.js +0 -78
- package/dist/scripts/migration/install.js +0 -83
- package/dist/scripts/migration/migrate-hooks.js +0 -173
- package/dist/scripts/migration/migration-examples.ts +0 -318
- package/dist/scripts/migration/reorganize-workspace.js +0 -504
- package/dist/scripts/migration/test-update-paths.js +0 -359
- package/dist/scripts/migration/update-paths.js +0 -664
- package/dist/scripts/migration/validate-migration.js +0 -647
- package/dist/scripts/monitor-loop.sh +0 -65
- package/dist/scripts/monitor-memory.sh +0 -47
- package/dist/scripts/monitor-migration.js +0 -339
- package/dist/scripts/monitor.py +0 -43
- package/dist/scripts/monitoring/README.md +0 -178
- package/dist/scripts/monitoring/alert-monitor.sh +0 -220
- package/dist/scripts/monitoring/analyze-resources.sh +0 -199
- package/dist/scripts/monitoring/dashboards/rate-limiting-dashboard.json +0 -211
- package/dist/scripts/monitoring/dynamic-monitor.sh +0 -85
- package/dist/scripts/monitoring/launch-stability-test.sh +0 -184
- package/dist/scripts/monitoring/monitor-test.sh +0 -93
- package/dist/scripts/monitoring/pre-test-validation.sh +0 -208
- package/dist/scripts/monitoring/quick-test-alerting.sh +0 -118
- package/dist/scripts/monitoring/quick-test-rate-limiting.sh +0 -206
- package/dist/scripts/monitoring/rate-limiting-monitor.sh +0 -380
- package/dist/scripts/monitoring/resource-monitor.sh +0 -126
- package/dist/scripts/monitoring/stability-monitor.js +0 -429
- package/dist/scripts/monitoring/test-monitor-quick.sh +0 -54
- package/dist/scripts/monitoring/view-alerts.sh +0 -307
- package/dist/scripts/npm-metrics-collector.js +0 -482
- package/dist/scripts/npm-package-validation.cjs +0 -299
- package/dist/scripts/optimization/build-optimizer.js +0 -438
- package/dist/scripts/optimization/config-validator.js +0 -761
- package/dist/scripts/optimization/test-optimization.js +0 -432
- package/dist/scripts/optimization/unified-activation.js +0 -839
- package/dist/scripts/optimize-package-swarm.js +0 -54
- package/dist/scripts/performance/ACTIVATION_COMMANDS.md +0 -292
- package/dist/scripts/performance/sqlite-enhanced-activation.sh +0 -583
- package/dist/scripts/performance/test-enhanced-backend.sh +0 -504
- package/dist/scripts/performance-monitor.js +0 -644
- package/dist/scripts/performance-test-runner.js +0 -698
- package/dist/scripts/post-deployment-monitoring.js +0 -350
- package/dist/scripts/post-edit-pipeline.js +0 -2091
- package/dist/scripts/post-install-claude-md.js +0 -78
- package/dist/scripts/postinstall.js +0 -60
- package/dist/scripts/pre-publish-validation.cjs +0 -212
- package/dist/scripts/pre-publish-validation.js +0 -429
- package/dist/scripts/redis-lua/cleanup-blocking-coordination.lua +0 -198
- package/dist/scripts/release-announcement.js +0 -425
- package/dist/scripts/release-notification.js +0 -248
- package/dist/scripts/release-rollback.js +0 -376
- package/dist/scripts/release-validation.js +0 -460
- package/dist/scripts/rollback-sdk.sh +0 -66
- package/dist/scripts/run-production-validation.ts +0 -590
- package/dist/scripts/run-stability-validation.sh +0 -687
- package/dist/scripts/security/README.md +0 -339
- package/dist/scripts/security/deployment-validation.cjs +0 -279
- package/dist/scripts/security/envelope-encryption-confidence-report.cjs +0 -422
- package/dist/scripts/security/install-git-hooks.sh +0 -132
- package/dist/scripts/security/install-git-secrets.sh +0 -295
- package/dist/scripts/security/rotate-api-keys.js +0 -469
- package/dist/scripts/security/ruv-swarm-safe.js +0 -74
- package/dist/scripts/security/security-audit.cjs +0 -538
- package/dist/scripts/security/setup-redis-auth.sh +0 -397
- package/dist/scripts/security/validate-envelope-encryption.cjs +0 -340
- package/dist/scripts/security-scan.js +0 -492
- package/dist/scripts/src/web/frontend/.claude-flow/metrics/agent-metrics.json +0 -1
- package/dist/scripts/src/web/frontend/.claude-flow/metrics/performance.json +0 -9
- package/dist/scripts/src/web/frontend/.claude-flow/metrics/task-metrics.json +0 -10
- package/dist/scripts/switch-api.sh +0 -159
- package/dist/scripts/sync-agents.js +0 -290
- package/dist/scripts/test/50-agent-test.js +0 -625
- package/dist/scripts/test/NEW_STABILITY_TEST_GUIDE.md +0 -407
- package/dist/scripts/test/README.md +0 -236
- package/dist/scripts/test/STABILITY_TEST_EXAMPLE.md +0 -347
- package/dist/scripts/test/STABILITY_TEST_README.md +0 -480
- package/dist/scripts/test/agent-worker.js +0 -309
- package/dist/scripts/test/ai-coordination-test.js +0 -650
- package/dist/scripts/test/ai-mesh-coordination-test.js +0 -416
- package/dist/scripts/test/check-links.ts +0 -274
- package/dist/scripts/test/check-performance-regression.ts +0 -168
- package/dist/scripts/test/cli-agent-coordination-test.js +0 -313
- package/dist/scripts/test/coordinator-multilingual-test.js +0 -396
- package/dist/scripts/test/coordinator-transparency-demo.js +0 -585
- package/dist/scripts/test/coverage-report.ts +0 -692
- package/dist/scripts/test/generate-swarm-tests.js +0 -633
- package/dist/scripts/test/integration-test-validation.cjs +0 -253
- package/dist/scripts/test/load-test-swarm.js +0 -576
- package/dist/scripts/test/mesh-coordination-zero-overlap-test.js +0 -740
- package/dist/scripts/test/multilingual-hello-world-test.js +0 -390
- package/dist/scripts/test/quick-multilingual-demo.js +0 -464
- package/dist/scripts/test/real-agent-test.js +0 -312
- package/dist/scripts/test/run-phase3-compliance-tests.js +0 -427
- package/dist/scripts/test/run-stability-test-examples.sh +0 -292
- package/dist/scripts/test/stability-results/stability-metrics.jsonl +0 -83
- package/dist/scripts/test/stability-results/stability-test-report.json +0 -128
- package/dist/scripts/test/stability-results/stability-test.log +0 -1827
- package/dist/scripts/test/stability-test-50-agents.js +0 -734
- package/dist/scripts/test/test-batch-tasks.ts +0 -29
- package/dist/scripts/test/test-byzantine-resolution.js +0 -246
- package/dist/scripts/test/test-claude-spawn-options.sh +0 -63
- package/dist/scripts/test/test-cli-wizard.js +0 -331
- package/dist/scripts/test/test-comprehensive.js +0 -401
- package/dist/scripts/test/test-coordination-features.ts +0 -238
- package/dist/scripts/test/test-fallback-systems.js +0 -276
- package/dist/scripts/test/test-init-command.ts +0 -302
- package/dist/scripts/test/test-mcp.ts +0 -251
- package/dist/scripts/test/test-runner.ts +0 -568
- package/dist/scripts/test/test-swarm-integration.sh +0 -92
- package/dist/scripts/test/test-swarm.ts +0 -142
- package/dist/scripts/test/validation-summary.ts +0 -408
- package/dist/scripts/test-cleanup-performance.sh +0 -416
- package/dist/scripts/test-dashboard-auth.cjs +0 -203
- package/dist/scripts/test-docker-deployment.sh +0 -207
- package/dist/scripts/test-npm-package.cjs +0 -167
- package/dist/scripts/test-provider-routing.cjs +0 -226
- package/dist/scripts/test-routing-telemetry.cjs +0 -147
- package/dist/scripts/test-runner.cjs +0 -154
- package/dist/scripts/test-zai-10k.cjs +0 -81
- package/dist/scripts/test-zai-api.cjs +0 -191
- package/dist/scripts/test-zai-diagnostic.cjs +0 -151
- package/dist/scripts/test-zai-final.cjs +0 -128
- package/dist/scripts/test-zai-with-env.cjs +0 -85
- package/dist/scripts/toggle-cost-savings.cjs +0 -302
- package/dist/scripts/unified-memory-monitor.js +0 -526
- package/dist/scripts/utils/README.md +0 -261
- package/dist/scripts/utils/clean-build-artifacts.sh +0 -94
- package/dist/scripts/utils/cleanup-root.sh +0 -69
- package/dist/scripts/utils/fix-cliffy-imports.js +0 -307
- package/dist/scripts/utils/fix-duplicate-imports.js +0 -114
- package/dist/scripts/utils/fix-error-handling.cjs +0 -70
- package/dist/scripts/utils/fix-import-paths.js +0 -104
- package/dist/scripts/utils/fix-imports.js +0 -116
- package/dist/scripts/utils/fix-shebang.js +0 -78
- package/dist/scripts/utils/fix-test-modules.js +0 -27
- package/dist/scripts/utils/fix-timezone-issue-246.js +0 -200
- package/dist/scripts/utils/fix-ts-comprehensive.py +0 -182
- package/dist/scripts/utils/fix-ts-targeted-batch.js +0 -250
- package/dist/scripts/utils/remove-benchmark-conflicts.sh +0 -140
- package/dist/scripts/utils/simple-test-fixer.js +0 -190
- package/dist/scripts/utils/validate-metrics-structure.cjs +0 -144
- package/dist/scripts/validate-agent-hooks.js +0 -506
- package/dist/scripts/validate-changelog.js +0 -241
- package/dist/scripts/validate-coordination-cli.js +0 -69
- package/dist/scripts/validate-coordination-toggle-integration.cjs +0 -501
- package/dist/scripts/validate-docker-infrastructure.sh +0 -502
- package/dist/scripts/validate-entry-points.js +0 -300
- package/dist/scripts/validate-memory-monitoring.sh +0 -225
- package/dist/scripts/validate-stage3-performance.ts +0 -377
- package/dist/scripts/validate-template-bundling.js +0 -180
- package/dist/scripts/validation/README.md +0 -33
- package/dist/scripts/validation/acl-security-validation.cjs +0 -214
- package/dist/scripts/validation/acl-security-validation.js +0 -402
- package/dist/scripts/validation/byzantine-verification.js +0 -407
- package/dist/scripts/validation/final-phase-2-consensus.cjs +0 -219
- package/dist/scripts/validation/final-security-validation.js +0 -791
- package/dist/scripts/validation/final-wasm-validation.cjs +0 -840
- package/dist/scripts/validation/integration-test-analysis.js +0 -105
- package/dist/scripts/validation/phase-0-comprehensive-validation.js +0 -474
- package/dist/scripts/validation/phase-0-consensus-report.js +0 -139
- package/dist/scripts/validation/phase-0-final-report.js +0 -112
- package/dist/scripts/validation/phase-0-redis-consensus-report.js +0 -129
- package/dist/scripts/validation/phase-0-validation-improved.js +0 -490
- package/dist/scripts/validation/phase-0-validation-test.js +0 -65
- package/dist/scripts/validation/phase-1-consensus-report.cjs +0 -342
- package/dist/scripts/validation/phase-1-consensus-validation.cjs +0 -551
- package/dist/scripts/validation/phase-1-consensus-validation.js +0 -551
- package/dist/scripts/validation/phase-2-consensus-report.cjs +0 -186
- package/dist/scripts/validation/phase-2-validation.cjs +0 -171
- package/dist/scripts/validation/phase-2-validation.js +0 -171
- package/dist/scripts/validation/phase-4-consensus-report.js +0 -181
- package/dist/scripts/validation/phase-4-final-validation.js +0 -351
- package/dist/scripts/validation/phase-5-consensus-report.cjs +0 -113
- package/dist/scripts/validation/phase-5-consensus-report.js +0 -113
- package/dist/scripts/validation/security-analysis.js +0 -49
- package/dist/scripts/validation/security-validation.js +0 -492
- package/dist/scripts/validation/simple-security-validation.js +0 -464
- package/dist/scripts/verify-installation.js +0 -112
- package/dist/scripts/verify-mcp-server.js +0 -86
- package/dist/scripts/verify-sdk-phase1.cjs +0 -293
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/accessibility/browser/accessibilityService.js +0 -88
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/accessibility/common/accessibility.js +0 -9
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/action/common/action.js +0 -7
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/action/common/actionCommonCategories.js +0 -13
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/actionWidget/browser/actionList.js +0 -276
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/actionWidget/browser/actionWidget.js +0 -248
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/actionWidget/common/actionWidget.js +0 -5
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/actions/common/actions.js +0 -409
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/audioCues/browser/audioCueService.js +0 -176
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/clipboard/browser/clipboardService.js +0 -141
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/clipboard/common/clipboardService.js +0 -6
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/commands/common/commands.js +0 -80
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/configuration/common/configuration.js +0 -86
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/configuration/common/configurationModels.js +0 -554
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/configuration/common/configurationRegistry.js +0 -317
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/configuration/common/configurations.js +0 -41
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextkey/browser/contextKeyService.js +0 -432
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextkey/common/contextkey.js +0 -1547
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextkey/common/contextkeys.js +0 -18
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextview/browser/contextMenuHandler.js +0 -124
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextview/browser/contextMenuService.js +0 -101
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextview/browser/contextView.js +0 -7
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextview/browser/contextViewService.js +0 -72
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/dialogs/common/dialogs.js +0 -2
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/dnd/browser/dnd.js +0 -36
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/editor/common/editor.js +0 -17
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/environment/common/environment.js +0 -2
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/extensions/common/extensions.js +0 -47
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/files/common/files.js +0 -9
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/history/browser/contextScopedHistoryWidget.js +0 -105
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/instantiation/common/descriptors.js +0 -11
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/instantiation/common/extensions.js +0 -15
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/keybinding/common/abstractKeybindingService.js +0 -277
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/keybinding/common/baseResolvedKeybinding.js +0 -53
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/quickinput/browser/commandsQuickAccess.js +0 -354
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/theme/browser/defaultStyles.js +0 -162
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/theme/common/colorRegistry.js +0 -482
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/abap/abap.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/apex/apex.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/azcli/azcli.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/bat/bat.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/bicep/bicep.js +0 -11
|
@@ -1,559 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Claude Flow Novice - Redis Setup Script
|
|
5
|
-
*
|
|
6
|
-
* Handles Redis installation, configuration, and optimization
|
|
7
|
-
*/
|
|
8
|
-
|
|
9
|
-
import { execSync, spawn } from 'child_process';
|
|
10
|
-
import { existsSync, writeFileSync, readFileSync, chmodSync } from 'fs';
|
|
11
|
-
import { join, dirname } from 'path';
|
|
12
|
-
import { homedir, platform } from 'os';
|
|
13
|
-
import chalk from 'chalk';
|
|
14
|
-
import ora from 'ora';
|
|
15
|
-
|
|
16
|
-
class RedisSetup {
|
|
17
|
-
constructor(options = {}) {
|
|
18
|
-
this.platform = platform();
|
|
19
|
-
this.homeDir = homedir();
|
|
20
|
-
this.configDir = join(this.homeDir, '.claude-flow-novice', 'config');
|
|
21
|
-
this.redisConfig = {
|
|
22
|
-
port: options.port || 6379,
|
|
23
|
-
host: options.host || 'localhost',
|
|
24
|
-
password: options.password || null,
|
|
25
|
-
maxMemory: options.maxMemory || '256mb',
|
|
26
|
-
persistence: options.persistence !== false,
|
|
27
|
-
optimization: {
|
|
28
|
-
tcpKeepAlive: 300,
|
|
29
|
-
timeout: 0,
|
|
30
|
-
databases: 16,
|
|
31
|
-
...options.optimization
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
this.skipInstallation = options.skipInstallation || false;
|
|
35
|
-
this.interactive = options.interactive !== false;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
async setup() {
|
|
39
|
-
console.log(chalk.blue.bold('š§ Redis Setup\n'));
|
|
40
|
-
|
|
41
|
-
try {
|
|
42
|
-
await this.checkRedisInstallation();
|
|
43
|
-
await this.installRedisIfNeeded();
|
|
44
|
-
await this.configureRedis();
|
|
45
|
-
await this.optimizeRedis();
|
|
46
|
-
await this.startRedis();
|
|
47
|
-
await this.testRedisConnection();
|
|
48
|
-
|
|
49
|
-
console.log(chalk.green.bold('ā
Redis setup completed successfully!\n'));
|
|
50
|
-
return true;
|
|
51
|
-
} catch (error) {
|
|
52
|
-
console.error(chalk.red('ā Redis setup failed:'), error.message);
|
|
53
|
-
return false;
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
async checkRedisInstallation() {
|
|
58
|
-
const spinner = ora('Checking Redis installation...').start();
|
|
59
|
-
|
|
60
|
-
try {
|
|
61
|
-
// Check if Redis CLI is available
|
|
62
|
-
const version = execSync('redis-cli --version', { encoding: 'utf8', stdio: ['pipe', 'pipe', 'pipe'] }).trim();
|
|
63
|
-
|
|
64
|
-
// Check if Redis server is also available
|
|
65
|
-
try {
|
|
66
|
-
execSync('redis-server --version', { encoding: 'utf8', stdio: ['pipe', 'pipe', 'pipe'] });
|
|
67
|
-
spinner.succeed(`Redis installed: ${version}`);
|
|
68
|
-
this.redisInstalled = true;
|
|
69
|
-
return true;
|
|
70
|
-
} catch (serverError) {
|
|
71
|
-
spinner.warn(`Redis CLI found (${version}) but Redis server not found`);
|
|
72
|
-
this.redisInstalled = 'partial';
|
|
73
|
-
return false;
|
|
74
|
-
}
|
|
75
|
-
} catch (error) {
|
|
76
|
-
spinner.warn('Redis not found');
|
|
77
|
-
this.redisInstalled = false;
|
|
78
|
-
return false;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
async installRedisIfNeeded() {
|
|
83
|
-
if (this.skipInstallation) {
|
|
84
|
-
console.log(chalk.yellow('āļø Skipping Redis installation (manual mode)'));
|
|
85
|
-
return;
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
if (this.redisInstalled === true) {
|
|
89
|
-
console.log(chalk.green('ā
Redis already installed, skipping installation'));
|
|
90
|
-
return;
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
const spinner = ora('Installing Redis...').start();
|
|
94
|
-
|
|
95
|
-
try {
|
|
96
|
-
if (this.platform === 'win32') {
|
|
97
|
-
await this.installRedisWindows(spinner);
|
|
98
|
-
} else if (this.platform === 'darwin') {
|
|
99
|
-
await this.installRedisMacOS(spinner);
|
|
100
|
-
} else {
|
|
101
|
-
await this.installRedisLinux(spinner);
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
spinner.succeed('Redis installed successfully');
|
|
105
|
-
} catch (error) {
|
|
106
|
-
spinner.fail('Redis installation failed');
|
|
107
|
-
this.displayInstallationInstructions();
|
|
108
|
-
throw error;
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
async installRedisWindows(spinner) {
|
|
113
|
-
// Check if Chocolatey is available
|
|
114
|
-
let hasChoco = false;
|
|
115
|
-
try {
|
|
116
|
-
execSync('choco --version', { stdio: 'ignore' });
|
|
117
|
-
hasChoco = true;
|
|
118
|
-
} catch (error) {
|
|
119
|
-
// Try Scoop as alternative
|
|
120
|
-
try {
|
|
121
|
-
execSync('scoop --version', { stdio: 'ignore' });
|
|
122
|
-
spinner.text = 'Installing Redis via Scoop...';
|
|
123
|
-
await this.executeCommand('scoop install redis', { timeout: 300000 });
|
|
124
|
-
return;
|
|
125
|
-
} catch (scoopError) {
|
|
126
|
-
throw new Error(
|
|
127
|
-
'Package manager not found. Please install Chocolatey (https://chocolatey.org/install) or Scoop (https://scoop.sh/)'
|
|
128
|
-
);
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
if (hasChoco) {
|
|
133
|
-
// Install Redis via Chocolatey
|
|
134
|
-
spinner.text = 'Installing Redis via Chocolatey...';
|
|
135
|
-
await this.executeCommand('choco install redis-64 -y', { timeout: 300000 });
|
|
136
|
-
|
|
137
|
-
// Add Redis to PATH
|
|
138
|
-
const redisPaths = [
|
|
139
|
-
'C:\\ProgramData\\chocolatey\\bin\\redis-cli.exe',
|
|
140
|
-
'C:\\Program Files\\Redis\\redis-cli.exe'
|
|
141
|
-
];
|
|
142
|
-
|
|
143
|
-
for (const redisPath of redisPaths) {
|
|
144
|
-
if (existsSync(redisPath)) {
|
|
145
|
-
console.log(chalk.cyan(`\nš” Redis installed at: ${redisPath}`));
|
|
146
|
-
break;
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
async installRedisMacOS() {
|
|
153
|
-
// Check if Homebrew is available
|
|
154
|
-
try {
|
|
155
|
-
execSync('brew --version', { stdio: 'ignore' });
|
|
156
|
-
} catch (error) {
|
|
157
|
-
throw new Error('Homebrew not found. Please install Homebrew first: https://brew.sh/');
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
// Install Redis via Homebrew
|
|
161
|
-
await this.executeCommand('brew install redis', { timeout: 300000 });
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
async installRedisLinux() {
|
|
165
|
-
const distro = await this.detectLinuxDistribution();
|
|
166
|
-
|
|
167
|
-
switch (distro) {
|
|
168
|
-
case 'ubuntu':
|
|
169
|
-
case 'debian':
|
|
170
|
-
await this.executeCommand('sudo apt-get update && sudo apt-get install redis-server -y', { timeout: 300000 });
|
|
171
|
-
break;
|
|
172
|
-
case 'centos':
|
|
173
|
-
case 'rhel':
|
|
174
|
-
case 'fedora':
|
|
175
|
-
await this.executeCommand('sudo yum install redis -y', { timeout: 300000 });
|
|
176
|
-
break;
|
|
177
|
-
case 'arch':
|
|
178
|
-
await this.executeCommand('sudo pacman -S redis --noconfirm', { timeout: 300000 });
|
|
179
|
-
break;
|
|
180
|
-
default:
|
|
181
|
-
throw new Error(`Unsupported Linux distribution: ${distro}`);
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
async detectLinuxDistribution() {
|
|
186
|
-
try {
|
|
187
|
-
const releaseInfo = readFileSync('/etc/os-release', 'utf8');
|
|
188
|
-
if (releaseInfo.includes('ubuntu')) return 'ubuntu';
|
|
189
|
-
if (releaseInfo.includes('debian')) return 'debian';
|
|
190
|
-
if (releaseInfo.includes('centos')) return 'centos';
|
|
191
|
-
if (releaseInfo.includes('rhel')) return 'rhel';
|
|
192
|
-
if (releaseInfo.includes('fedora')) return 'fedora';
|
|
193
|
-
if (releaseInfo.includes('arch')) return 'arch';
|
|
194
|
-
} catch (error) {
|
|
195
|
-
// Fall back to detection via lsb_release
|
|
196
|
-
try {
|
|
197
|
-
const output = execSync('lsb_release -si', { encoding: 'utf8' }).toLowerCase().trim();
|
|
198
|
-
return output;
|
|
199
|
-
} catch (error) {
|
|
200
|
-
return 'unknown';
|
|
201
|
-
}
|
|
202
|
-
}
|
|
203
|
-
|
|
204
|
-
return 'unknown';
|
|
205
|
-
}
|
|
206
|
-
|
|
207
|
-
async configureRedis() {
|
|
208
|
-
const spinner = ora('Configuring Redis...').start();
|
|
209
|
-
|
|
210
|
-
try {
|
|
211
|
-
const configPath = await this.getRedisConfigPath();
|
|
212
|
-
const backupPath = `${configPath}.backup`;
|
|
213
|
-
|
|
214
|
-
// Create backup of original config
|
|
215
|
-
if (existsSync(configPath)) {
|
|
216
|
-
await this.executeCommand(`cp "${configPath}" "${backupPath}"`);
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
// Generate optimized configuration
|
|
220
|
-
const config = this.generateRedisConfig();
|
|
221
|
-
writeFileSync(configPath, config);
|
|
222
|
-
|
|
223
|
-
// Save configuration to claude-flow-novice config directory
|
|
224
|
-
const claudeRedisConfig = {
|
|
225
|
-
...this.redisConfig,
|
|
226
|
-
configFile: configPath,
|
|
227
|
-
platform: this.platform,
|
|
228
|
-
installedAt: new Date().toISOString()
|
|
229
|
-
};
|
|
230
|
-
|
|
231
|
-
writeFileSync(
|
|
232
|
-
join(this.configDir, 'redis.json'),
|
|
233
|
-
JSON.stringify(claudeRedisConfig, null, 2)
|
|
234
|
-
);
|
|
235
|
-
|
|
236
|
-
spinner.succeed('Redis configured successfully');
|
|
237
|
-
} catch (error) {
|
|
238
|
-
spinner.fail('Redis configuration failed');
|
|
239
|
-
throw error;
|
|
240
|
-
}
|
|
241
|
-
}
|
|
242
|
-
|
|
243
|
-
async getRedisConfigPath() {
|
|
244
|
-
const possiblePaths = [
|
|
245
|
-
'/etc/redis/redis.conf',
|
|
246
|
-
'/usr/local/etc/redis.conf',
|
|
247
|
-
'/etc/redis/redis/redis.conf',
|
|
248
|
-
join(this.homeDir, '.redis/redis.conf'),
|
|
249
|
-
'C:\\ProgramData\\Redis\\redis.conf',
|
|
250
|
-
'C:\\Redis\\redis.conf'
|
|
251
|
-
];
|
|
252
|
-
|
|
253
|
-
for (const path of possiblePaths) {
|
|
254
|
-
if (existsSync(path)) {
|
|
255
|
-
return path;
|
|
256
|
-
}
|
|
257
|
-
}
|
|
258
|
-
|
|
259
|
-
// Create default config location
|
|
260
|
-
const defaultPath = this.platform === 'win32'
|
|
261
|
-
? 'C:\\Redis\\redis.conf'
|
|
262
|
-
: '/etc/redis/redis.conf';
|
|
263
|
-
|
|
264
|
-
// Create directory if it doesn't exist
|
|
265
|
-
const configDir = dirname(defaultPath);
|
|
266
|
-
if (!existsSync(configDir)) {
|
|
267
|
-
await this.executeCommand(`mkdir -p "${configDir}"`);
|
|
268
|
-
}
|
|
269
|
-
|
|
270
|
-
return defaultPath;
|
|
271
|
-
}
|
|
272
|
-
|
|
273
|
-
generateRedisConfig() {
|
|
274
|
-
return `
|
|
275
|
-
# Claude Flow Novice Redis Configuration
|
|
276
|
-
# Generated on ${new Date().toISOString()}
|
|
277
|
-
|
|
278
|
-
# Network
|
|
279
|
-
bind 127.0.0.1
|
|
280
|
-
port ${this.redisConfig.port}
|
|
281
|
-
protected-mode yes
|
|
282
|
-
|
|
283
|
-
# Security
|
|
284
|
-
${this.redisConfig.password ? `requirepass ${this.redisConfig.password}` : '# requirepass your-password-here'}
|
|
285
|
-
|
|
286
|
-
# Memory Management
|
|
287
|
-
maxmemory ${this.redisConfig.maxMemory}
|
|
288
|
-
maxmemory-policy allkeys-lru
|
|
289
|
-
|
|
290
|
-
# Persistence
|
|
291
|
-
${this.redisConfig.persistence ? `
|
|
292
|
-
save 900 1
|
|
293
|
-
save 300 10
|
|
294
|
-
save 60 10000
|
|
295
|
-
` : `# save 900 1
|
|
296
|
-
# save 300 10
|
|
297
|
-
# save 60 10000`}
|
|
298
|
-
|
|
299
|
-
# Optimization
|
|
300
|
-
tcp-keepalive ${this.redisConfig.optimization.tcpKeepAlive}
|
|
301
|
-
timeout ${this.redisConfig.optimization.timeout}
|
|
302
|
-
databases ${this.redisConfig.optimization.databases}
|
|
303
|
-
|
|
304
|
-
# Performance
|
|
305
|
-
tcp-backlog 511
|
|
306
|
-
rdbcompression yes
|
|
307
|
-
rdbchecksum yes
|
|
308
|
-
|
|
309
|
-
# Logging
|
|
310
|
-
loglevel notice
|
|
311
|
-
logfile ""
|
|
312
|
-
|
|
313
|
-
# Client Configuration
|
|
314
|
-
maxclients 10000
|
|
315
|
-
|
|
316
|
-
# Memory Usage
|
|
317
|
-
hash-max-ziplist-entries 512
|
|
318
|
-
hash-max-ziplist-value 64
|
|
319
|
-
list-max-ziplist-size -2
|
|
320
|
-
list-compress-depth 0
|
|
321
|
-
set-max-intset-entries 512
|
|
322
|
-
zset-max-ziplist-entries 128
|
|
323
|
-
zset-max-ziplist-value 64
|
|
324
|
-
|
|
325
|
-
# Latency Monitoring
|
|
326
|
-
latency-monitor-threshold 100
|
|
327
|
-
|
|
328
|
-
# Slow Log
|
|
329
|
-
slowlog-log-slower-than 10000
|
|
330
|
-
slowlog-max-len 128
|
|
331
|
-
|
|
332
|
-
# Event Notification (for Claude Flow Novice)
|
|
333
|
-
notify-keyspace-events "Ex"
|
|
334
|
-
|
|
335
|
-
# Append Only File (additional persistence)
|
|
336
|
-
appendonly yes
|
|
337
|
-
appendfsync everysec
|
|
338
|
-
no-appendfsync-on-rewrite no
|
|
339
|
-
auto-aof-rewrite-percentage 100
|
|
340
|
-
auto-aof-rewrite-min-size 64mb
|
|
341
|
-
`.trim();
|
|
342
|
-
}
|
|
343
|
-
|
|
344
|
-
async optimizeRedis() {
|
|
345
|
-
const spinner = ora('Optimizing Redis settings...').start();
|
|
346
|
-
|
|
347
|
-
try {
|
|
348
|
-
if (this.platform === 'linux') {
|
|
349
|
-
// Linux-specific optimizations
|
|
350
|
-
await this.executeCommand('echo "vm.overcommit_memory = 1" | sudo tee -a /etc/sysctl.conf');
|
|
351
|
-
await this.executeCommand('sudo sysctl vm.overcommit_memory=1');
|
|
352
|
-
|
|
353
|
-
// Disable transparent huge pages
|
|
354
|
-
try {
|
|
355
|
-
await this.executeCommand('echo never | sudo tee /sys/kernel/mm/transparent_hugepage/enabled');
|
|
356
|
-
} catch (error) {
|
|
357
|
-
// Not all systems support this
|
|
358
|
-
}
|
|
359
|
-
}
|
|
360
|
-
|
|
361
|
-
spinner.succeed('Redis optimized successfully');
|
|
362
|
-
} catch (error) {
|
|
363
|
-
spinner.warn('Redis optimization completed with warnings');
|
|
364
|
-
console.warn(chalk.yellow('Some optimizations could not be applied'));
|
|
365
|
-
}
|
|
366
|
-
}
|
|
367
|
-
|
|
368
|
-
async startRedis() {
|
|
369
|
-
const spinner = ora('Starting Redis server...').start();
|
|
370
|
-
|
|
371
|
-
try {
|
|
372
|
-
if (this.platform === 'win32') {
|
|
373
|
-
await this.startRedisWindows();
|
|
374
|
-
} else if (this.platform === 'darwin') {
|
|
375
|
-
await this.startRedisMacOS();
|
|
376
|
-
} else {
|
|
377
|
-
await this.startRedisLinux();
|
|
378
|
-
}
|
|
379
|
-
|
|
380
|
-
// Wait for Redis to start
|
|
381
|
-
await this.waitForRedis();
|
|
382
|
-
|
|
383
|
-
spinner.succeed('Redis server started successfully');
|
|
384
|
-
} catch (error) {
|
|
385
|
-
spinner.fail('Redis server startup failed');
|
|
386
|
-
throw error;
|
|
387
|
-
}
|
|
388
|
-
}
|
|
389
|
-
|
|
390
|
-
async startRedisWindows() {
|
|
391
|
-
// Start Redis as a Windows service or directly
|
|
392
|
-
try {
|
|
393
|
-
await this.executeCommand('net start redis', { timeout: 30000 });
|
|
394
|
-
} catch (error) {
|
|
395
|
-
// Fallback to direct execution
|
|
396
|
-
await this.executeCommand('redis-server', { detached: true, stdio: 'ignore' });
|
|
397
|
-
}
|
|
398
|
-
}
|
|
399
|
-
|
|
400
|
-
async startRedisMacOS() {
|
|
401
|
-
// Start Redis via Homebrew services
|
|
402
|
-
try {
|
|
403
|
-
await this.executeCommand('brew services start redis', { timeout: 30000 });
|
|
404
|
-
} catch (error) {
|
|
405
|
-
// Fallback to direct execution
|
|
406
|
-
await this.executeCommand('redis-server /usr/local/etc/redis.conf', { detached: true, stdio: 'ignore' });
|
|
407
|
-
}
|
|
408
|
-
}
|
|
409
|
-
|
|
410
|
-
async startRedisLinux() {
|
|
411
|
-
// Start Redis via systemd
|
|
412
|
-
try {
|
|
413
|
-
await this.executeCommand('sudo systemctl start redis-server', { timeout: 30000 });
|
|
414
|
-
await this.executeCommand('sudo systemctl enable redis-server');
|
|
415
|
-
} catch (error) {
|
|
416
|
-
// Fallback to direct execution
|
|
417
|
-
await this.executeCommand('redis-server /etc/redis/redis.conf', { detached: true, stdio: 'ignore' });
|
|
418
|
-
}
|
|
419
|
-
}
|
|
420
|
-
|
|
421
|
-
async waitForRedis() {
|
|
422
|
-
const maxAttempts = 30;
|
|
423
|
-
const delay = 1000;
|
|
424
|
-
|
|
425
|
-
for (let i = 0; i < maxAttempts; i++) {
|
|
426
|
-
try {
|
|
427
|
-
execSync('redis-cli ping', { stdio: 'ignore', timeout: 5000 });
|
|
428
|
-
return;
|
|
429
|
-
} catch (error) {
|
|
430
|
-
await new Promise(resolve => setTimeout(resolve, delay));
|
|
431
|
-
}
|
|
432
|
-
}
|
|
433
|
-
|
|
434
|
-
throw new Error('Redis failed to start within the expected time');
|
|
435
|
-
}
|
|
436
|
-
|
|
437
|
-
async testRedisConnection() {
|
|
438
|
-
const spinner = ora('Testing Redis connection...').start();
|
|
439
|
-
|
|
440
|
-
try {
|
|
441
|
-
// Test basic connectivity
|
|
442
|
-
const response = execSync('redis-cli ping', { encoding: 'utf8' }).trim();
|
|
443
|
-
|
|
444
|
-
if (response === 'PONG') {
|
|
445
|
-
// Test memory operations
|
|
446
|
-
execSync('redis-cli set claude-flow-test "connection-test"', { stdio: 'ignore' });
|
|
447
|
-
const value = execSync('redis-cli get claude-flow-test', { encoding: 'utf8' }).trim();
|
|
448
|
-
execSync('redis-cli del claude-flow-test', { stdio: 'ignore' });
|
|
449
|
-
|
|
450
|
-
if (value === 'connection-test') {
|
|
451
|
-
spinner.succeed('Redis connection test passed');
|
|
452
|
-
} else {
|
|
453
|
-
throw new Error('Redis memory operations failed');
|
|
454
|
-
}
|
|
455
|
-
} else {
|
|
456
|
-
throw new Error('Redis not responding correctly');
|
|
457
|
-
}
|
|
458
|
-
} catch (error) {
|
|
459
|
-
spinner.fail('Redis connection test failed');
|
|
460
|
-
throw error;
|
|
461
|
-
}
|
|
462
|
-
}
|
|
463
|
-
|
|
464
|
-
displayInstallationInstructions() {
|
|
465
|
-
console.log(chalk.yellow('\nš Manual Installation Instructions:\n'));
|
|
466
|
-
|
|
467
|
-
if (this.platform === 'win32') {
|
|
468
|
-
console.log(chalk.cyan('Windows Installation Options:'));
|
|
469
|
-
console.log(' 1. Via Chocolatey (recommended):');
|
|
470
|
-
console.log(' - Install Chocolatey: https://chocolatey.org/install');
|
|
471
|
-
console.log(' - Run: choco install redis-64 -y\n');
|
|
472
|
-
console.log(' 2. Via Scoop:');
|
|
473
|
-
console.log(' - Install Scoop: https://scoop.sh/');
|
|
474
|
-
console.log(' - Run: scoop install redis\n');
|
|
475
|
-
console.log(' 3. Direct Download:');
|
|
476
|
-
console.log(' - Download: https://github.com/microsoftarchive/redis/releases');
|
|
477
|
-
console.log(' - Extract and add to PATH\n');
|
|
478
|
-
} else if (this.platform === 'darwin') {
|
|
479
|
-
console.log(chalk.cyan('macOS Installation:'));
|
|
480
|
-
console.log(' 1. Via Homebrew (recommended):');
|
|
481
|
-
console.log(' - Install Homebrew: https://brew.sh/');
|
|
482
|
-
console.log(' - Run: brew install redis\n');
|
|
483
|
-
console.log(' 2. Via MacPorts:');
|
|
484
|
-
console.log(' - Run: sudo port install redis\n');
|
|
485
|
-
} else {
|
|
486
|
-
console.log(chalk.cyan('Linux Installation:'));
|
|
487
|
-
console.log(' Ubuntu/Debian:');
|
|
488
|
-
console.log(' - Run: sudo apt-get update && sudo apt-get install redis-server\n');
|
|
489
|
-
console.log(' CentOS/RHEL/Fedora:');
|
|
490
|
-
console.log(' - Run: sudo yum install redis\n');
|
|
491
|
-
console.log(' Arch Linux:');
|
|
492
|
-
console.log(' - Run: sudo pacman -S redis\n');
|
|
493
|
-
}
|
|
494
|
-
|
|
495
|
-
console.log(chalk.yellow('After installation, run this script again to complete setup.\n'));
|
|
496
|
-
}
|
|
497
|
-
|
|
498
|
-
async getRedisInfo() {
|
|
499
|
-
try {
|
|
500
|
-
const info = execSync('redis-cli INFO server', { encoding: 'utf8' });
|
|
501
|
-
const lines = info.split('\n');
|
|
502
|
-
const data = {};
|
|
503
|
-
|
|
504
|
-
for (const line of lines) {
|
|
505
|
-
if (line.includes(':')) {
|
|
506
|
-
const [key, value] = line.split(':');
|
|
507
|
-
data[key.trim()] = value.trim();
|
|
508
|
-
}
|
|
509
|
-
}
|
|
510
|
-
|
|
511
|
-
return data;
|
|
512
|
-
} catch (error) {
|
|
513
|
-
return null;
|
|
514
|
-
}
|
|
515
|
-
}
|
|
516
|
-
|
|
517
|
-
async executeCommand(command, options = {}) {
|
|
518
|
-
return new Promise((resolve, reject) => {
|
|
519
|
-
const child = spawn(command, [], {
|
|
520
|
-
shell: true,
|
|
521
|
-
stdio: 'pipe',
|
|
522
|
-
...options
|
|
523
|
-
});
|
|
524
|
-
|
|
525
|
-
let stdout = '';
|
|
526
|
-
let stderr = '';
|
|
527
|
-
|
|
528
|
-
child.stdout?.on('data', (data) => stdout += data.toString());
|
|
529
|
-
child.stderr?.on('data', (data) => stderr += data.toString());
|
|
530
|
-
|
|
531
|
-
child.on('close', (code) => {
|
|
532
|
-
if (code === 0) {
|
|
533
|
-
resolve({ stdout, stderr });
|
|
534
|
-
} else {
|
|
535
|
-
reject(new Error(`Command failed with code ${code}: ${stderr}`));
|
|
536
|
-
}
|
|
537
|
-
});
|
|
538
|
-
|
|
539
|
-
child.on('error', reject);
|
|
540
|
-
|
|
541
|
-
if (options.timeout) {
|
|
542
|
-
setTimeout(() => {
|
|
543
|
-
child.kill();
|
|
544
|
-
reject(new Error('Command timeout'));
|
|
545
|
-
}, options.timeout);
|
|
546
|
-
}
|
|
547
|
-
});
|
|
548
|
-
}
|
|
549
|
-
}
|
|
550
|
-
|
|
551
|
-
// Execute Redis setup
|
|
552
|
-
if (import.meta.url === `file://${process.argv[1]}`) {
|
|
553
|
-
const redisSetup = new RedisSetup();
|
|
554
|
-
redisSetup.setup().then(success => {
|
|
555
|
-
process.exit(success ? 0 : 1);
|
|
556
|
-
}).catch(console.error);
|
|
557
|
-
}
|
|
558
|
-
|
|
559
|
-
export default RedisSetup;
|