@h4shed/syncpulse-hub 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.
Files changed (33) hide show
  1. package/README.md +77 -0
  2. package/dist/ecosystem/PackageRegistry.d.ts +23 -0
  3. package/dist/ecosystem/PackageRegistry.d.ts.map +1 -0
  4. package/dist/ecosystem/PackageRegistry.js +68 -0
  5. package/dist/ecosystem/PackageRegistry.js.map +1 -0
  6. package/dist/index.d.ts +27 -0
  7. package/dist/index.d.ts.map +1 -0
  8. package/dist/index.js +87 -0
  9. package/dist/index.js.map +1 -0
  10. package/dist/orchestration/OrchestrationEngine.d.ts +17 -0
  11. package/dist/orchestration/OrchestrationEngine.d.ts.map +1 -0
  12. package/dist/orchestration/OrchestrationEngine.js +51 -0
  13. package/dist/orchestration/OrchestrationEngine.js.map +1 -0
  14. package/dist/setup/SetupOrchestrator.d.ts +14 -0
  15. package/dist/setup/SetupOrchestrator.d.ts.map +1 -0
  16. package/dist/setup/SetupOrchestrator.js +148 -0
  17. package/dist/setup/SetupOrchestrator.js.map +1 -0
  18. package/dist/updates/UpdateChecker.d.ts +28 -0
  19. package/dist/updates/UpdateChecker.d.ts.map +1 -0
  20. package/dist/updates/UpdateChecker.js +125 -0
  21. package/dist/updates/UpdateChecker.js.map +1 -0
  22. package/dist/validation/DeploymentValidator.d.ts +35 -0
  23. package/dist/validation/DeploymentValidator.d.ts.map +1 -0
  24. package/dist/validation/DeploymentValidator.js +170 -0
  25. package/dist/validation/DeploymentValidator.js.map +1 -0
  26. package/package.json +46 -0
  27. package/src/ecosystem/PackageRegistry.ts +96 -0
  28. package/src/index.ts +132 -0
  29. package/src/orchestration/OrchestrationEngine.ts +73 -0
  30. package/src/setup/SetupOrchestrator.ts +187 -0
  31. package/src/updates/UpdateChecker.ts +175 -0
  32. package/src/validation/DeploymentValidator.ts +213 -0
  33. package/tsconfig.json +12 -0
package/README.md ADDED
@@ -0,0 +1,77 @@
1
+ # 🎮 SyncPulse Hub
2
+
3
+ **Centralized installation and orchestration system for all @h4shed packages**
4
+
5
+ ## Features
6
+
7
+ - **Unified Installation**: Single command to install all 63 packages
8
+ - **Orchestrated Setup**: Parallel execution with dependency management
9
+ - **Pre-Deployment Validation**: Comprehensive testing before merge
10
+ - **Auto-Update Checking**: Automatic update detection in each chat session
11
+ - **Registry Management**: Centralized package registry and discovery
12
+
13
+ ## Quick Start
14
+
15
+ ```bash
16
+ # Orchestrated setup (entire ecosystem)
17
+ npm run setup
18
+
19
+ # Check for updates
20
+ npm run check-updates
21
+
22
+ # Build the hub
23
+ npm run build
24
+ ```
25
+
26
+ ## Architecture
27
+
28
+ ```
29
+ SyncPulse Hub
30
+ ├── PackageRegistry (63 packages)
31
+ ├── OrchestrationEngine (parallel execution)
32
+ ├── SetupOrchestrator (coordinated setup)
33
+ ├── DeploymentValidator (pre-merge testing)
34
+ └── UpdateChecker (auto-update detection)
35
+ ```
36
+
37
+ ## 63-Package Ecosystem
38
+
39
+ - **31 Skills**: Design, generative art, productivity, content creation
40
+ - **28 Tools**: Development tools, testing, styling, bundling
41
+ - **3 Core**: mcp-core, mcp-cli, docs
42
+ - **1 Session**: multi-account-session-tracking
43
+
44
+ See registry for complete list.
45
+
46
+ ## Integration
47
+
48
+ ### In Claude Chats
49
+ Auto-checks for updates on each session:
50
+ ```typescript
51
+ import { SyncPulseHub } from '@h4shed/syncpulse-hub';
52
+
53
+ // Called automatically
54
+ const hub = new SyncPulseHub('full');
55
+ await hub.checkUpdates();
56
+ ```
57
+
58
+ ### In CI/CD
59
+ Validates before merge:
60
+ ```bash
61
+ npm run build
62
+ npm run typecheck
63
+ npm run test
64
+
65
+ # Then validate deployment
66
+ node scripts/validate-deployment.sh
67
+ ```
68
+
69
+ ## Documentation
70
+
71
+ - **Architecture**: See SYNCPULSE_INTEGRATION_STRATEGY.md
72
+ - **Status**: See REVISED_ASSESSMENT_POST_INSTALL.md
73
+ - **Setup**: See scripts/setup-syncpulse-hub.sh
74
+
75
+ ## License
76
+
77
+ Apache 2.0
@@ -0,0 +1,23 @@
1
+ export interface Package {
2
+ id: string;
3
+ name: string;
4
+ version: string;
5
+ scope: string;
6
+ status: 'implemented' | 'partial' | 'scaffolded';
7
+ dependencies: string[];
8
+ entryPoint: string;
9
+ description: string;
10
+ }
11
+ export declare class PackageRegistry {
12
+ private packages;
13
+ private installed;
14
+ constructor();
15
+ private initializeRegistry;
16
+ getAllPackages(): Package[];
17
+ getPackagesByStatus(status: string): Package[];
18
+ markInstalled(id: string): void;
19
+ getInstalled(): string[];
20
+ checkNpmRegistry(_packageName: string): Promise<string | null>;
21
+ }
22
+ export declare const registry: PackageRegistry;
23
+ //# sourceMappingURL=PackageRegistry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PackageRegistry.d.ts","sourceRoot":"","sources":["../../src/ecosystem/PackageRegistry.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,aAAa,GAAG,SAAS,GAAG,YAAY,CAAC;IACjD,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,SAAS,CAAc;;IAQ/B,OAAO,CAAC,kBAAkB;IA+C1B,cAAc;IAId,mBAAmB,CAAC,MAAM,EAAE,MAAM;IAIlC,aAAa,CAAC,EAAE,EAAE,MAAM;IAIxB,YAAY;IAIN,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAIrE;AAED,eAAO,MAAM,QAAQ,iBAAwB,CAAC"}
@@ -0,0 +1,68 @@
1
+ export class PackageRegistry {
2
+ constructor() {
3
+ this.packages = new Map();
4
+ this.installed = new Set();
5
+ this.initializeRegistry();
6
+ }
7
+ initializeRegistry() {
8
+ const skills = [
9
+ { id: 'syncpulse', name: '@h4shed/skill-syncpulse', version: '0.2.0', status: 'implemented' },
10
+ { id: 'underworld-writer', name: '@h4shed/skill-underworld-writer', version: '1.0.4', status: 'implemented' },
11
+ { id: 'daily-review', name: '@h4shed/skill-daily-review', version: '1.0.2', status: 'partial' },
12
+ { id: 'agentic-flow-devkit', name: '@h4shed/skill-agentic-flow-devkit', version: '1.0.1', status: 'partial' },
13
+ { id: 'algorithmic-art', name: '@h4shed/skill-algorithmic-art', version: '1.0.4', status: 'partial' },
14
+ { id: 'ascii-mockup', name: '@h4shed/skill-ascii-mockup', version: '1.0.4', status: 'partial' },
15
+ { id: 'canvas-design', name: '@h4shed/skill-canvas-design', version: '1.0.4', status: 'partial' },
16
+ { id: 'frontend-design', name: '@h4shed/skill-frontend-design', version: '1.0.4', status: 'partial' },
17
+ { id: 'linkedin-journalist', name: '@h4shed/skill-linkedin-master-journalist', version: '1.0.2', status: 'partial' },
18
+ { id: 'mcp-builder', name: '@h4shed/skill-mcp-builder', version: '1.0.4', status: 'partial' },
19
+ { id: 'mermaid-terminal', name: '@h4shed/skill-mermaid-terminal', version: '1.0.2', status: 'partial' },
20
+ { id: 'nft-art', name: '@h4shed/skill-nft-generative-art', version: '1.0.0', status: 'scaffolded' },
21
+ { id: 'playwright', name: '@h4shed/skill-playwright-test-automation', version: '1.0.0', status: 'scaffolded' },
22
+ { id: 'pre-deploy-validator', name: '@h4shed/skill-pre-deploy-validator', version: '1.0.4', status: 'partial' },
23
+ { id: 'project-manager', name: '@h4shed/skill-project-manager', version: '1.0.2', status: 'partial' },
24
+ { id: 'project-status', name: '@h4shed/skill-project-status-tool', version: '1.0.2', status: 'partial' },
25
+ { id: 'skill-creator', name: '@h4shed/skill-skill-creator', version: '1.0.4', status: 'partial' },
26
+ { id: 'smart-contracts', name: '@h4shed/skill-smart-contract-tools', version: '1.0.0', status: 'scaffolded' },
27
+ { id: 'storybook', name: '@h4shed/skill-storybook-component-library', version: '1.0.0', status: 'scaffolded' },
28
+ { id: 'style-dictionary', name: '@h4shed/skill-style-dictionary-system', version: '1.0.0', status: 'scaffolded' },
29
+ { id: 'tailwindcss', name: '@h4shed/skill-tailwindcss-style-builder', version: '1.0.0', status: 'scaffolded' },
30
+ { id: 'theme-factory', name: '@h4shed/skill-theme-factory', version: '1.0.4', status: 'partial' },
31
+ { id: 'typescript-toolchain', name: '@h4shed/skill-typescript-toolchain', version: '1.0.0', status: 'scaffolded' },
32
+ { id: 'vercel-nextjs', name: '@h4shed/skill-vercel-nextjs-deployment', version: '1.0.0', status: 'scaffolded' },
33
+ { id: 'vite-bundler', name: '@h4shed/skill-vite-module-bundler', version: '1.0.0', status: 'scaffolded' },
34
+ { id: 'svg-generator', name: '@h4shed/skill-svg-generator', version: '1.0.2', status: 'partial' },
35
+ { id: 'ux-journeymapper', name: '@h4shed/skill-ux-journeymapper', version: '1.0.2', status: 'partial' },
36
+ { id: 'multi-account', name: '@h4shed/multi-account-session-tracking', version: '1.0.2', status: 'partial' },
37
+ ];
38
+ skills.forEach(skill => {
39
+ this.packages.set(skill.id, {
40
+ id: skill.id,
41
+ name: skill.name,
42
+ version: skill.version,
43
+ status: skill.status,
44
+ scope: 'skill',
45
+ dependencies: ['@h4shed/mcp-core'],
46
+ entryPoint: `dist/index.js`,
47
+ description: skill.name
48
+ });
49
+ });
50
+ }
51
+ getAllPackages() {
52
+ return Array.from(this.packages.values());
53
+ }
54
+ getPackagesByStatus(status) {
55
+ return this.getAllPackages().filter(p => p.status === status);
56
+ }
57
+ markInstalled(id) {
58
+ this.installed.add(id);
59
+ }
60
+ getInstalled() {
61
+ return Array.from(this.installed);
62
+ }
63
+ async checkNpmRegistry(_packageName) {
64
+ return null;
65
+ }
66
+ }
67
+ export const registry = new PackageRegistry();
68
+ //# sourceMappingURL=PackageRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PackageRegistry.js","sourceRoot":"","sources":["../../src/ecosystem/PackageRegistry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ export declare class SyncPulseHub {
2
+ private registry;
3
+ private orchestrator;
4
+ private validator;
5
+ private updateChecker;
6
+ private mode;
7
+ constructor(mode?: 'essential' | 'full' | 'custom');
8
+ setup(): Promise<void>;
9
+ checkUpdates(): Promise<void>;
10
+ getEcosystemInfo(): {
11
+ total: number;
12
+ skills: number;
13
+ tools: number;
14
+ core: number;
15
+ implemented: number;
16
+ partial: number;
17
+ scaffolded: number;
18
+ };
19
+ private printSuccessSummary;
20
+ }
21
+ export declare function initializeSyncPulseHub(mode?: string): Promise<SyncPulseHub>;
22
+ export { PackageRegistry } from './ecosystem/PackageRegistry';
23
+ export { OrchestrationEngine } from './orchestration/OrchestrationEngine';
24
+ export { SetupOrchestrator } from './setup/SetupOrchestrator';
25
+ export { DeploymentValidator } from './validation/DeploymentValidator';
26
+ export { UpdateChecker } from './updates/UpdateChecker';
27
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAeA,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,SAAS,CAAsB;IACvC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,IAAI,CAA2C;gBAE3C,IAAI,GAAE,WAAW,GAAG,MAAM,GAAG,QAAiB;IAapD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA+BtB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAcnC,gBAAgB;;;;;;;;;IAahB,OAAO,CAAC,mBAAmB;CAsB5B;AAGD,wBAAsB,sBAAsB,CAAC,IAAI,GAAE,MAAe,yBAIjE;AAGD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,87 @@
1
+ import { PackageRegistry } from './ecosystem/PackageRegistry';
2
+ import { SetupOrchestrator } from './setup/SetupOrchestrator';
3
+ import { DeploymentValidator } from './validation/DeploymentValidator';
4
+ import { UpdateChecker } from './updates/UpdateChecker';
5
+ export class SyncPulseHub {
6
+ constructor(mode = 'full') {
7
+ this.mode = 'full';
8
+ this.mode = mode;
9
+ this.registry = new PackageRegistry();
10
+ this.orchestrator = new SetupOrchestrator(mode);
11
+ this.validator = new DeploymentValidator();
12
+ this.updateChecker = new UpdateChecker();
13
+ console.log(`🎮 SyncPulse Hub initialized (mode: ${mode})`);
14
+ }
15
+ async setup() {
16
+ console.log('\n' + '═'.repeat(70));
17
+ console.log('🚀 SYNCPULSE HUB ORCHESTRATED SETUP');
18
+ console.log('═'.repeat(70) + '\n');
19
+ console.log('📋 Step 1: Beginning orchestrated setup...\n');
20
+ await this.orchestrator.orchestrateSetup();
21
+ console.log('📋 Step 2: Running pre-deployment validation...\n');
22
+ const validationResult = await this.validator.validateFullSetup();
23
+ if (!validationResult.passed) {
24
+ throw new Error('Deployment validation failed');
25
+ }
26
+ console.log('📋 Step 3: Checking for package updates...\n');
27
+ await this.updateChecker.checkForUpdates();
28
+ console.log('\n' + '═'.repeat(70));
29
+ console.log('✅ SYNCPULSE HUB SETUP COMPLETE!');
30
+ console.log('═'.repeat(70) + '\n');
31
+ this.printSuccessSummary();
32
+ }
33
+ async checkUpdates() {
34
+ const result = await this.updateChecker.checkForUpdates();
35
+ if (result.criticalUpdates.length > 0) {
36
+ console.log('\n⚠️ Critical updates available. Install immediately:');
37
+ result.criticalUpdates.forEach(u => {
38
+ console.log(` npm install ${u.name}@latest`);
39
+ });
40
+ }
41
+ }
42
+ getEcosystemInfo() {
43
+ const packages = this.registry.getAllPackages();
44
+ return {
45
+ total: packages.length,
46
+ skills: packages.filter(p => p.scope === 'skill').length,
47
+ tools: packages.filter(p => p.scope === 'tool').length,
48
+ core: packages.filter(p => p.scope === 'core').length,
49
+ implemented: packages.filter(p => p.status === 'implemented').length,
50
+ partial: packages.filter(p => p.status === 'partial').length,
51
+ scaffolded: packages.filter(p => p.status === 'scaffolded').length
52
+ };
53
+ }
54
+ printSuccessSummary() {
55
+ const info = this.getEcosystemInfo();
56
+ console.log('📊 INSTALLATION SUMMARY:');
57
+ console.log(` Total Packages: ${info.total}`);
58
+ console.log(` - Skills: ${info.skills}`);
59
+ console.log(` - Tools: ${info.tools}`);
60
+ console.log(` - Core: ${info.core}`);
61
+ console.log(`\n📈 IMPLEMENTATION STATUS:`);
62
+ console.log(` - Fully Implemented: ${info.implemented}`);
63
+ console.log(` - Partially Implemented: ${info.partial}`);
64
+ console.log(` - Scaffolded: ${info.scaffolded}`);
65
+ console.log(`\n🎯 NEXT STEPS:`);
66
+ console.log(` 1. Review configuration: cat .syncpulse-hub.config.json`);
67
+ console.log(` 2. List installed packages: npm ls --depth=0 | grep @h4shed`);
68
+ console.log(` 3. Check for updates: npm run update:check`);
69
+ console.log(` 4. View skill registry: npm run registry:view`);
70
+ console.log(`\n📚 DOCUMENTATION:`);
71
+ console.log(` - Architecture: SYNCPULSE_INTEGRATION_STRATEGY.md`);
72
+ console.log(` - Status: REVISED_ASSESSMENT_POST_INSTALL.md`);
73
+ console.log(` - CLI: npm run mcp:install`);
74
+ }
75
+ }
76
+ export async function initializeSyncPulseHub(mode = 'full') {
77
+ const hub = new SyncPulseHub(mode);
78
+ await hub.setup();
79
+ return hub;
80
+ }
81
+ export { PackageRegistry } from './ecosystem/PackageRegistry';
82
+ export { OrchestrationEngine } from './orchestration/OrchestrationEngine';
83
+ export { SetupOrchestrator } from './setup/SetupOrchestrator';
84
+ export { DeploymentValidator } from './validation/DeploymentValidator';
85
+ export { UpdateChecker } from './updates/UpdateChecker';
86
+ console.log('🎮 SyncPulse Hub module loaded');
87
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ export interface Task {
2
+ id: string;
3
+ name: string;
4
+ execute: () => Promise<void>;
5
+ dependencies: string[];
6
+ priority: number;
7
+ }
8
+ export declare class OrchestrationEngine {
9
+ private tasks;
10
+ private results;
11
+ private maxConcurrent;
12
+ addTask(task: Task): void;
13
+ executeParallel(): Promise<Map<string, any>>;
14
+ private buildExecutionQueue;
15
+ private executeTask;
16
+ }
17
+ //# sourceMappingURL=OrchestrationEngine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OrchestrationEngine.d.ts","sourceRoot":"","sources":["../../src/orchestration/OrchestrationEngine.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,KAAK,CAAgC;IAC7C,OAAO,CAAC,OAAO,CAA+B;IAC9C,OAAO,CAAC,aAAa,CAAa;IAElC,OAAO,CAAC,IAAI,EAAE,IAAI;IAIZ,eAAe,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAiBlD,OAAO,CAAC,mBAAmB;YA0Bb,WAAW;CAQ1B"}
@@ -0,0 +1,51 @@
1
+ export class OrchestrationEngine {
2
+ constructor() {
3
+ this.tasks = new Map();
4
+ this.results = new Map();
5
+ this.maxConcurrent = 4;
6
+ }
7
+ addTask(task) {
8
+ this.tasks.set(task.id, task);
9
+ }
10
+ async executeParallel() {
11
+ const queue = this.buildExecutionQueue();
12
+ for (const batch of queue) {
13
+ await Promise.all(batch.map(task => this.executeTask(task).catch(err => ({
14
+ error: true,
15
+ message: err.message
16
+ }))));
17
+ }
18
+ return this.results;
19
+ }
20
+ buildExecutionQueue() {
21
+ const batches = [];
22
+ const visited = new Set();
23
+ let remainingTasks = Array.from(this.tasks.values());
24
+ while (remainingTasks.length > 0) {
25
+ const batch = [];
26
+ const batchIds = new Set();
27
+ for (const task of remainingTasks) {
28
+ if (task.dependencies.every(dep => visited.has(dep))) {
29
+ batch.push(task);
30
+ batchIds.add(task.id);
31
+ }
32
+ }
33
+ if (batch.length === 0)
34
+ break;
35
+ batch.forEach(t => visited.add(t.id));
36
+ batches.push(batch);
37
+ remainingTasks = remainingTasks.filter(t => !batchIds.has(t.id));
38
+ }
39
+ return batches;
40
+ }
41
+ async executeTask(task) {
42
+ try {
43
+ await task.execute();
44
+ this.results.set(task.id, { success: true });
45
+ }
46
+ catch (error) {
47
+ this.results.set(task.id, { success: false, error });
48
+ }
49
+ }
50
+ }
51
+ //# sourceMappingURL=OrchestrationEngine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OrchestrationEngine.js","sourceRoot":"","sources":["../../src/orchestration/OrchestrationEngine.ts"],"names":[],"mappings":"AAYA,MAAM,OAAO,mBAAmB;IAAhC;QACU,UAAK,GAAsB,IAAI,GAAG,EAAE,CAAC;QACrC,YAAO,GAAqB,IAAI,GAAG,EAAE,CAAC;QACtC,kBAAa,GAAW,CAAC,CAAC;IAyDpC,CAAC;IAvDC,OAAO,CAAC,IAAU;QAChB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAEzC,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;YAC1B,MAAM,OAAO,CAAC,GAAG,CACf,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CACf,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACnC,KAAK,EAAE,IAAI;gBACX,OAAO,EAAE,GAAG,CAAC,OAAO;aACrB,CAAC,CAAC,CACJ,CACF,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAEO,mBAAmB;QACzB,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,IAAI,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QAErD,OAAO,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjC,MAAM,KAAK,GAAW,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;YAEnC,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;gBAClC,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;oBACrD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACjB,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACxB,CAAC;YACH,CAAC;YAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;gBAAE,MAAM;YAE9B,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACtC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACpB,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACnE,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,IAAU;QAClC,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;YACrB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,14 @@
1
+ export declare class SetupOrchestrator {
2
+ private engine;
3
+ private registry;
4
+ private mode;
5
+ constructor(mode?: 'essential' | 'full' | 'custom');
6
+ orchestrateSetup(): Promise<void>;
7
+ private buildTaskGraph;
8
+ private getPackagesByMode;
9
+ private executeNpm;
10
+ private executeBash;
11
+ private reportResults;
12
+ }
13
+ export declare function setupSyncPulseHub(mode?: string): Promise<void>;
14
+ //# sourceMappingURL=SetupOrchestrator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SetupOrchestrator.d.ts","sourceRoot":"","sources":["../../src/setup/SetupOrchestrator.ts"],"names":[],"mappings":"AAQA,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,IAAI,CAAkC;gBAElC,IAAI,GAAE,WAAW,GAAG,MAAM,GAAG,QAAiB;IAMpD,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAavC,OAAO,CAAC,cAAc;IAiFtB,OAAO,CAAC,iBAAiB;YAkBX,UAAU;YAWV,WAAW;IAWzB,OAAO,CAAC,aAAa;CA4BtB;AAED,wBAAsB,iBAAiB,CAAC,IAAI,SAAS,iBAGpD"}
@@ -0,0 +1,148 @@
1
+ import { OrchestrationEngine } from '../orchestration/OrchestrationEngine';
2
+ import { PackageRegistry } from '../ecosystem/PackageRegistry';
3
+ export class SetupOrchestrator {
4
+ constructor(mode = 'full') {
5
+ this.engine = new OrchestrationEngine();
6
+ this.registry = new PackageRegistry();
7
+ this.mode = mode;
8
+ }
9
+ async orchestrateSetup() {
10
+ console.log(`🎮 Setting up SyncPulse Hub in ${this.mode} mode...`);
11
+ this.buildTaskGraph();
12
+ const results = await this.engine.executeParallel();
13
+ this.reportResults(results);
14
+ }
15
+ buildTaskGraph() {
16
+ const packages = this.getPackagesByMode();
17
+ this.engine.addTask({
18
+ id: 'install-mcp-core',
19
+ name: 'Install @h4shed/mcp-core',
20
+ execute: async () => {
21
+ console.log('📦 Installing mcp-core...');
22
+ await this.executeNpm(['install', '@h4shed/mcp-core']);
23
+ },
24
+ dependencies: [],
25
+ priority: 1
26
+ });
27
+ this.engine.addTask({
28
+ id: 'install-mcp-cli',
29
+ name: 'Install @h4shed/mcp-cli',
30
+ execute: async () => {
31
+ console.log('📦 Installing mcp-cli...');
32
+ await this.executeNpm(['install', '@h4shed/mcp-cli']);
33
+ },
34
+ dependencies: ['install-mcp-core'],
35
+ priority: 2
36
+ });
37
+ this.engine.addTask({
38
+ id: 'init-mcp-core',
39
+ name: 'Initialize MCP Core',
40
+ execute: async () => {
41
+ console.log('⚙️ Initializing MCP core...');
42
+ await this.executeBash('npm run mcp:init');
43
+ },
44
+ dependencies: ['install-mcp-core'],
45
+ priority: 2
46
+ });
47
+ packages.filter(p => p.scope === 'skill').forEach((skill, idx) => {
48
+ this.engine.addTask({
49
+ id: `skill-${skill.id}`,
50
+ name: `Install skill: ${skill.name}`,
51
+ execute: async () => {
52
+ console.log(`📦 Installing skill: ${skill.name}...`);
53
+ await this.executeNpm(['install', skill.name]);
54
+ },
55
+ dependencies: ['install-mcp-core'],
56
+ priority: 3 + idx
57
+ });
58
+ });
59
+ packages.filter(p => p.scope === 'tool').slice(0, 4).forEach((tool, idx) => {
60
+ this.engine.addTask({
61
+ id: `tool-${tool.id}`,
62
+ name: `Install tool: ${tool.name}`,
63
+ execute: async () => {
64
+ console.log(`🛠️ Installing tool: ${tool.name}...`);
65
+ await this.executeNpm(['install', tool.name]);
66
+ },
67
+ dependencies: ['install-mcp-core'],
68
+ priority: 4 + idx
69
+ });
70
+ });
71
+ this.engine.addTask({
72
+ id: 'generate-registry',
73
+ name: 'Generate Skill Registry',
74
+ execute: async () => {
75
+ console.log('📋 Generating skill registry...');
76
+ await this.executeBash('npm run registry:generate');
77
+ },
78
+ dependencies: ['init-mcp-core'],
79
+ priority: 100
80
+ });
81
+ }
82
+ getPackagesByMode() {
83
+ const allPackages = this.registry.getAllPackages();
84
+ switch (this.mode) {
85
+ case 'essential':
86
+ return allPackages.filter(p => ['syncpulse', 'mcp-core', 'mcp-cli', 'pre-deploy-validator'].includes(p.id));
87
+ case 'full':
88
+ return allPackages;
89
+ case 'custom':
90
+ return allPackages;
91
+ default:
92
+ return allPackages.filter(p => p.status !== 'scaffolded');
93
+ }
94
+ }
95
+ async executeNpm(args) {
96
+ try {
97
+ const { execSync } = await import('child_process');
98
+ console.log(` $ npm ${args.join(' ')}`);
99
+ execSync(`npm ${args.join(' ')}`, { stdio: 'inherit' });
100
+ }
101
+ catch (error) {
102
+ console.error(`Failed to execute npm command: ${error}`);
103
+ throw error;
104
+ }
105
+ }
106
+ async executeBash(command) {
107
+ try {
108
+ const { execSync } = await import('child_process');
109
+ console.log(` $ ${command}`);
110
+ execSync(command, { stdio: 'inherit', shell: '/bin/bash' });
111
+ }
112
+ catch (error) {
113
+ console.error(`Failed to execute bash command: ${error}`);
114
+ throw error;
115
+ }
116
+ }
117
+ reportResults(results) {
118
+ console.log('\n' + '═'.repeat(65));
119
+ console.log('📊 ORCHESTRATION RESULTS');
120
+ console.log('═'.repeat(65));
121
+ let successful = 0;
122
+ let failed = 0;
123
+ results.forEach((result, taskId) => {
124
+ if (result.success) {
125
+ console.log(`✅ ${taskId}`);
126
+ successful++;
127
+ }
128
+ else {
129
+ console.log(`❌ ${taskId}: ${result.error?.message || 'Unknown error'}`);
130
+ failed++;
131
+ }
132
+ });
133
+ console.log('\n' + '─'.repeat(65));
134
+ console.log(`Summary: ${successful} successful, ${failed} failed`);
135
+ console.log('═'.repeat(65) + '\n');
136
+ if (failed === 0) {
137
+ console.log('🎉 All setup tasks completed successfully!');
138
+ }
139
+ else {
140
+ console.log('⚠️ Some tasks failed. Review log for details.');
141
+ }
142
+ }
143
+ }
144
+ export async function setupSyncPulseHub(mode = 'full') {
145
+ const orchestrator = new SetupOrchestrator(mode);
146
+ await orchestrator.orchestrateSetup();
147
+ }
148
+ //# sourceMappingURL=SetupOrchestrator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SetupOrchestrator.js","sourceRoot":"","sources":["../../src/setup/SetupOrchestrator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ export interface UpdateCheckResult {
2
+ timestamp: string;
3
+ checksPerformed: number;
4
+ updatesAvailable: PackageUpdate[];
5
+ criticalUpdates: PackageUpdate[];
6
+ totalUpdates: number;
7
+ }
8
+ export interface PackageUpdate {
9
+ name: string;
10
+ currentVersion: string;
11
+ latestVersion: string;
12
+ severity: 'critical' | 'major' | 'minor' | 'patch';
13
+ changelogUrl: string;
14
+ }
15
+ export declare class UpdateChecker {
16
+ private installedPackages;
17
+ private updateCheckIntervalHours;
18
+ private lastCheckFile;
19
+ checkForUpdates(): Promise<UpdateCheckResult>;
20
+ private checkPackageUpdate;
21
+ private getCurrentVersion;
22
+ private getLatestVersion;
23
+ private isNewer;
24
+ private calculateSeverity;
25
+ private reportUpdates;
26
+ }
27
+ export declare function checkUpdatesAutomatically(): Promise<UpdateCheckResult>;
28
+ //# sourceMappingURL=UpdateChecker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UpdateChecker.d.ts","sourceRoot":"","sources":["../../src/updates/UpdateChecker.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,aAAa,EAAE,CAAC;IAClC,eAAe,EAAE,aAAa,EAAE,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,UAAU,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;IACnD,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,iBAAiB,CAAkC;IAC3D,OAAO,CAAC,wBAAwB,CAAc;IAC9C,OAAO,CAAC,aAAa,CAA8C;IAE7D,eAAe,IAAI,OAAO,CAAC,iBAAiB,CAAC;YAqCrC,kBAAkB;YA2BlB,iBAAiB;YAUjB,gBAAgB;IAW9B,OAAO,CAAC,OAAO;IAWf,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,aAAa;CAkCtB;AAED,wBAAsB,yBAAyB,+BAG9C"}