UNPKG

claude-flow

Version:

Ruflo - Enterprise AI agent orchestration for Claude Code. Deploy 60+ specialized agents in coordinated swarms with self-learning, fault-tolerant consensus, vector memory, and MCP integration

1,077 lines 51.8 kB
/** * Plugin Discovery Service * Discovers plugin registries via IPNS and fetches from IPFS * Parallel implementation to pattern store for plugins */ import * as crypto from 'crypto'; import { resolveIPNS, fetchFromIPFS } from '../../transfer/ipfs/client.js'; /** * Fetch real npm download stats for a package */ async function fetchNpmStats(packageName) { try { // Fetch last week downloads const downloadsUrl = `https://api.npmjs.org/downloads/point/last-week/${encodeURIComponent(packageName)}`; const downloadsRes = await fetch(downloadsUrl, { signal: AbortSignal.timeout(3000) }); if (!downloadsRes.ok) return null; const downloadsData = await downloadsRes.json(); // Fetch package info for version const packageUrl = `https://registry.npmjs.org/${encodeURIComponent(packageName)}/latest`; const packageRes = await fetch(packageUrl, { signal: AbortSignal.timeout(3000) }); let version = 'unknown'; if (packageRes.ok) { const packageData = await packageRes.json(); version = packageData.version || 'unknown'; } return { downloads: downloadsData.downloads || 0, version, }; } catch { return null; } } /** * Default plugin store configuration */ /** * Live IPFS Registry CID - Updated 2026-01-24 * This is the current pinned registry on Pinata */ export const LIVE_REGISTRY_CID = 'QmXbfEAaR7D2Ujm4GAkbwcGZQMHqAMpwDoje4583uNP834'; /** * Pre-trained Model Registry CID - Updated 2026-01-24 * Contains 8 pre-trained learning pattern models with 40 patterns * Trained on 110,600+ examples with 90.5% average accuracy */ export const MODEL_REGISTRY_CID = 'QmNr1yYMKi7YBaL8JSztQyuB5ZUaTdRMLxJC1pBpGbjsTc'; export const DEFAULT_PLUGIN_STORE_CONFIG = { registries: [ { name: 'claude-flow-official', description: 'Official Claude Flow plugin registry', // Use direct CID for reliable resolution (IPNS can be slow) ipnsName: LIVE_REGISTRY_CID, gateway: 'https://gateway.pinata.cloud', publicKey: 'ed25519:21490c8ef5e6d9fea573382e52fbad7d0fa40c3eb124e6746706da7a420ae2d2', trusted: true, official: true, }, { name: 'community-plugins', description: 'Community-contributed plugins', ipnsName: LIVE_REGISTRY_CID, // Same registry for now gateway: 'https://ipfs.io', publicKey: 'ed25519:21490c8ef5e6d9fea573382e52fbad7d0fa40c3eb124e6746706da7a420ae2d2', trusted: true, official: false, }, ], defaultRegistry: 'claude-flow-official', gateway: 'https://gateway.pinata.cloud', timeout: 30000, cacheDir: '.claude-flow/plugins/cache', cacheExpiry: 3600000, // 1 hour requireVerification: true, requireSecurityAudit: false, minTrustLevel: 'community', trustedAuthors: [], blockedPlugins: [], allowedPermissions: ['network', 'filesystem', 'memory', 'hooks'], requirePermissionPrompt: true, }; /** * Plugin Discovery Service */ export class PluginDiscoveryService { config; cache = new Map(); constructor(config = {}) { this.config = { ...DEFAULT_PLUGIN_STORE_CONFIG, ...config }; } /** * Discover plugin registry via IPNS */ async discoverRegistry(registryName) { const targetRegistry = registryName || this.config.defaultRegistry; const registry = this.config.registries.find(r => r.name === targetRegistry); if (!registry) { return { success: false, error: `Unknown registry: ${targetRegistry}`, }; } console.log(`[PluginDiscovery] Resolving ${registry.name} via IPNS...`); // Check cache first const cached = this.cache.get(registry.ipnsName); if (cached && Date.now() - cached.timestamp < this.config.cacheExpiry) { console.log(`[PluginDiscovery] Cache hit for ${registry.name}`); return { success: true, registry: cached.registry, fromCache: true, source: registry.name, }; } try { // Check if ipnsName is actually a direct CID (CIDv1 starts with 'baf', CIDv0 starts with 'Qm') const isDirectCid = registry.ipnsName.startsWith('baf') || registry.ipnsName.startsWith('Qm'); let cid; if (isDirectCid) { // Use the CID directly - no IPNS resolution needed cid = registry.ipnsName; console.log(`[PluginDiscovery] Using direct CID: ${cid}`); } else { // Resolve IPNS to get current CID cid = await resolveIPNS(registry.ipnsName, registry.gateway); if (!cid) { // Fallback to demo registry return this.createDemoRegistryAsync(registry); } console.log(`[PluginDiscovery] Resolved IPNS to CID: ${cid}`); } // Fetch registry from IPFS const registryData = await fetchFromIPFS(cid, registry.gateway); if (!registryData) { return this.createDemoRegistryAsync(registry); } // Verify registry signature if required if (this.config.requireVerification && registryData.registrySignature) { const verified = this.verifyRegistrySignature(registryData, registry.publicKey); if (!verified) { console.warn(`[PluginDiscovery] Registry signature verification failed`); } } // Cache the result this.cache.set(registry.ipnsName, { registry: registryData, timestamp: Date.now(), }); return { success: true, registry: registryData, cid, source: registry.name, fromCache: false, }; } catch (error) { console.error(`[PluginDiscovery] Failed to discover registry:`, error); // Return demo registry on error return this.createDemoRegistryAsync(registry); } } /** * Create demo plugin registry with real npm stats */ async createDemoRegistryAsync(registry) { console.log(`[PluginDiscovery] Using demo registry for ${registry.name}`); // Get plugins with real npm stats const plugins = await this.getDemoPluginsWithStats(); const demoRegistry = { version: '1.0.0', type: 'plugins', updatedAt: new Date().toISOString(), ipnsName: registry.ipnsName, plugins, categories: [ { id: 'ai-ml', name: 'AI/ML', description: 'AI and machine learning plugins', pluginCount: 1 }, { id: 'security', name: 'Security', description: 'Security and compliance plugins', pluginCount: 1 }, { id: 'devops', name: 'DevOps', description: 'CI/CD and deployment plugins', pluginCount: 1 }, { id: 'integrations', name: 'Integrations', description: 'Third-party integrations', pluginCount: 2 }, { id: 'agents', name: 'Agents', description: 'Custom agent types', pluginCount: 1 }, ], authors: [ { id: 'claude-flow-team', displayName: 'Claude Flow Team', verified: true, plugins: plugins.length, totalDownloads: plugins.reduce((sum, p) => sum + p.downloads, 0), reputation: 100, }, ], totalPlugins: plugins.length, totalDownloads: plugins.reduce((sum, p) => sum + p.downloads, 0), totalAuthors: 1, featured: ['@claude-flow/plugin-agentic-qe', '@claude-flow/plugin-prime-radiant', '@claude-flow/security', '@claude-flow/claims', '@claude-flow/teammate-plugin'], trending: ['@claude-flow/plugin-agentic-qe', '@claude-flow/plugin-prime-radiant'], newest: ['@claude-flow/plugin-agentic-qe', '@claude-flow/plugin-prime-radiant'], official: ['@claude-flow/plugin-agentic-qe', '@claude-flow/plugin-prime-radiant', '@claude-flow/security', '@claude-flow/claims'], compatibilityMatrix: [ { pluginId: '@claude-flow/neural', pluginVersion: '3.0.0', claudeFlowVersions: ['3.x'], tested: true }, { pluginId: '@claude-flow/security', pluginVersion: '3.0.0', claudeFlowVersions: ['3.x'], tested: true }, ], }; // Cache the demo registry this.cache.set(registry.ipnsName, { registry: demoRegistry, timestamp: Date.now(), }); return { success: true, registry: demoRegistry, cid: `bafybeiplugin${crypto.randomBytes(16).toString('hex')}`, source: `${registry.name} (demo)`, fromCache: false, }; } /** * Get demo plugins */ getDemoPlugins() { const baseTime = new Date().toISOString(); const officialAuthor = { id: 'claude-flow-team', displayName: 'Claude Flow Team', verified: true, plugins: 5, totalDownloads: 50000, reputation: 100, }; const communityAuthor = { id: 'community-contributor', displayName: 'Community Contributors', verified: false, plugins: 7, totalDownloads: 15000, reputation: 85, }; return [ { id: '@claude-flow/neural', name: '@claude-flow/neural', displayName: 'Neural Patterns', description: 'Neural pattern training and inference with WASM SIMD acceleration, MoE routing, and Flash Attention optimization', version: '3.0.0', cid: 'bafybeineuralpatternplugin', size: 245000, checksum: 'sha256:abc123neural', author: officialAuthor, license: 'MIT', categories: ['ai-ml'], tags: ['neural', 'training', 'inference', 'wasm', 'simd'], keywords: ['neural', 'patterns', 'ml'], downloads: 15000, rating: 4.9, ratingCount: 245, lastUpdated: baseTime, createdAt: '2024-01-01T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [{ name: '@claude-flow/core', version: '^3.0.0' }], type: 'core', hooks: ['neural:train', 'neural:inference', 'pattern:learn'], commands: ['neural train', 'neural predict', 'neural patterns'], permissions: ['memory', 'network'], exports: ['NeuralTrainer', 'PatternRecognizer', 'FlashAttention'], verified: true, trustLevel: 'official', }, { id: '@claude-flow/security', name: '@claude-flow/security', displayName: 'Security Scanner', description: 'Security scanning, CVE detection, and compliance auditing with threat modeling', version: '3.0.0', cid: 'bafybeisecurityplugin', size: 180000, checksum: 'sha256:def456security', author: officialAuthor, license: 'MIT', categories: ['security'], tags: ['security', 'cve', 'audit', 'compliance', 'threats'], keywords: ['security', 'scanner'], downloads: 12000, rating: 4.8, ratingCount: 189, lastUpdated: baseTime, createdAt: '2024-01-15T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [{ name: '@claude-flow/core', version: '^3.0.0' }], type: 'command', hooks: ['security:scan', 'security:audit'], commands: ['security scan', 'security audit', 'security cve', 'security threats'], permissions: ['filesystem', 'network'], exports: ['SecurityScanner', 'CVEDetector', 'ThreatModeler'], verified: true, trustLevel: 'official', securityAudit: { auditor: 'claude-flow-security-team', auditDate: '2024-12-01T00:00:00Z', auditVersion: '3.0.0', passed: true, issues: [], }, }, { id: '@claude-flow/embeddings', name: '@claude-flow/embeddings', displayName: 'Vector Embeddings', description: 'Vector embeddings service with sql.js, document chunking, and hyperbolic embeddings', version: '3.0.0', cid: 'bafybeiembeddingsplugin', size: 320000, checksum: 'sha256:ghi789embeddings', author: officialAuthor, license: 'MIT', categories: ['ai-ml'], tags: ['embeddings', 'vectors', 'search', 'sqlite', 'hyperbolic'], keywords: ['embeddings', 'vectors'], downloads: 8500, rating: 4.7, ratingCount: 156, lastUpdated: baseTime, createdAt: '2024-02-01T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [ { name: '@claude-flow/core', version: '^3.0.0' }, { name: 'sql.js', version: '^1.8.0' }, ], type: 'core', hooks: ['embeddings:embed', 'embeddings:search'], commands: ['embeddings embed', 'embeddings batch', 'embeddings search'], permissions: ['memory', 'filesystem'], exports: ['EmbeddingsService', 'VectorStore', 'DocumentChunker'], verified: true, trustLevel: 'official', }, { id: '@claude-flow/claims', name: '@claude-flow/claims', displayName: 'Claims Authorization', description: 'Claims-based authorization system for fine-grained access control', version: '3.0.0', cid: 'bafybeiclaimsplugin', size: 95000, checksum: 'sha256:jkl012claims', author: officialAuthor, license: 'MIT', categories: ['security'], tags: ['claims', 'authorization', 'access-control', 'permissions'], keywords: ['claims', 'auth'], downloads: 6200, rating: 4.6, ratingCount: 98, lastUpdated: baseTime, createdAt: '2024-02-15T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [{ name: '@claude-flow/core', version: '^3.0.0' }], type: 'core', hooks: ['claims:check', 'claims:grant'], commands: ['claims check', 'claims grant', 'claims revoke', 'claims list'], permissions: ['config'], exports: ['ClaimsManager', 'PermissionChecker'], verified: true, trustLevel: 'official', }, { id: '@claude-flow/performance', name: '@claude-flow/performance', displayName: 'Performance Profiler', description: 'Performance profiling, benchmarking, and optimization recommendations', version: '3.0.0', cid: 'bafybeiperformanceplugin', size: 145000, checksum: 'sha256:mno345performance', author: officialAuthor, license: 'MIT', categories: ['devops'], tags: ['performance', 'profiling', 'benchmarks', 'optimization'], keywords: ['performance', 'profiler'], downloads: 7800, rating: 4.8, ratingCount: 134, lastUpdated: baseTime, createdAt: '2024-03-01T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [{ name: '@claude-flow/core', version: '^3.0.0' }], type: 'command', hooks: ['performance:start', 'performance:stop'], commands: ['performance benchmark', 'performance profile', 'performance metrics'], permissions: ['memory'], exports: ['PerformanceProfiler', 'Benchmarker'], verified: true, trustLevel: 'official', }, { id: 'community-analytics', name: 'community-analytics', displayName: 'Analytics Dashboard', description: 'Analytics and metrics visualization for Claude Flow operations', version: '1.2.0', cid: 'bafybeianalyticsplugin', size: 210000, checksum: 'sha256:pqr678analytics', author: communityAuthor, license: 'MIT', categories: ['integrations'], tags: ['analytics', 'metrics', 'dashboard', 'visualization'], keywords: ['analytics', 'dashboard'], downloads: 3400, rating: 4.4, ratingCount: 67, lastUpdated: baseTime, createdAt: '2024-06-01T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [{ name: '@claude-flow/core', version: '^3.0.0' }], type: 'integration', hooks: ['analytics:track', 'analytics:report'], commands: ['analytics dashboard', 'analytics export'], permissions: ['memory', 'network'], exports: ['AnalyticsTracker', 'Dashboard'], verified: false, trustLevel: 'community', }, { id: 'custom-agents', name: 'custom-agents', displayName: 'Custom Agent Pack', description: 'Additional specialized agent types for domain-specific tasks', version: '2.0.1', cid: 'bafybeicustomagentsplugin', size: 175000, checksum: 'sha256:stu901agents', author: communityAuthor, license: 'Apache-2.0', categories: ['agents'], tags: ['agents', 'custom', 'specialized', 'domain-specific'], keywords: ['agents', 'custom'], downloads: 2100, rating: 4.3, ratingCount: 45, lastUpdated: baseTime, createdAt: '2024-08-01T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [{ name: '@claude-flow/core', version: '^3.0.0' }], type: 'agent', hooks: ['agent:spawn', 'agent:complete'], commands: ['agents custom list', 'agents custom spawn'], permissions: ['agents', 'memory'], exports: ['DataScienceAgent', 'DevOpsAgent', 'ContentAgent'], verified: false, trustLevel: 'community', }, { id: 'slack-integration', name: 'slack-integration', displayName: 'Slack Integration', description: 'Slack integration for notifications and collaborative workflows', version: '1.0.0', cid: 'bafybeislackplugin', size: 85000, checksum: 'sha256:vwx234slack', author: communityAuthor, license: 'MIT', categories: ['integrations'], tags: ['slack', 'notifications', 'collaboration', 'messaging'], keywords: ['slack', 'integration'], downloads: 1800, rating: 4.5, ratingCount: 38, lastUpdated: baseTime, createdAt: '2024-09-01T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [ { name: '@claude-flow/core', version: '^3.0.0' }, { name: '@slack/web-api', version: '^6.0.0' }, ], type: 'integration', hooks: ['notification:send'], commands: ['slack notify', 'slack connect'], permissions: ['network', 'credentials'], exports: ['SlackNotifier', 'SlackBot'], verified: false, trustLevel: 'community', }, // Plugin SDK - Unified Plugin SDK for creating plugins { id: '@claude-flow/plugins', name: '@claude-flow/plugins', displayName: 'Plugin SDK', description: 'Unified Plugin SDK for Claude Flow V3 - Worker, Hook, and Provider Integration. Create, test, and publish Claude Flow plugins.', version: '3.0.0-alpha.2', cid: 'bafybeipluginsdk2024xyz', size: 156000, checksum: 'sha256:pluginsdk2024abc', author: officialAuthor, license: 'MIT', categories: ['devops'], tags: ['plugin', 'sdk', 'development', 'toolkit', 'workers', 'hooks', 'providers'], keywords: ['plugin', 'sdk', 'development'], downloads: 0, rating: 0, ratingCount: 0, lastUpdated: baseTime, createdAt: '2024-04-01T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [ { name: '@claude-flow/core', version: '^3.0.0' }, ], type: 'core', hooks: [ 'plugin:create', 'plugin:validate', 'plugin:test', ], commands: [ 'plugins create', 'plugins validate', 'plugins test', ], permissions: ['filesystem'], exports: [ 'PluginBuilder', 'WorkerPlugin', 'HookPlugin', 'ProviderPlugin', ], verified: true, trustLevel: 'official', }, // Agentic QE - AI-powered quality engineering { id: '@claude-flow/plugin-agentic-qe', name: '@claude-flow/plugin-agentic-qe', displayName: 'Agentic Quality Engineering', description: 'AI-powered quality engineering with 58 agents that write tests, find bugs, predict defects, scan security, and perform chaos engineering safely.', version: '3.0.0-alpha.3', cid: 'bafybeiagenticqeplugin2024', size: 285000, checksum: 'sha256:agenticqe2024xyz', author: officialAuthor, license: 'MIT', categories: ['ai-ml', 'devops', 'security'], tags: ['testing', 'qe', 'tdd', 'security', 'chaos-engineering', 'coverage', 'defect-prediction', 'agents'], keywords: ['quality', 'testing', 'agents', 'tdd', 'security'], downloads: 1200, rating: 4.8, ratingCount: 24, lastUpdated: baseTime, createdAt: '2026-01-20T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [ { name: '@claude-flow/core', version: '^3.0.0' }, ], type: 'integration', hooks: [ 'aqe:generate-tests', 'aqe:analyze-coverage', 'aqe:security-scan', 'aqe:predict-defects', 'aqe:chaos-inject', ], commands: [ 'aqe generate-tests', 'aqe tdd-cycle', 'aqe security-scan', 'aqe predict-defects', 'aqe chaos-inject', 'aqe quality-gate', 'aqe visual-regression', ], permissions: ['filesystem', 'network', 'memory'], exports: [ 'TestGenerator', 'CoverageAnalyzer', 'SecurityScanner', 'DefectPredictor', 'ChaosInjector', 'QualityGate', ], verified: true, trustLevel: 'official', securityAudit: { auditor: 'claude-flow-security-team', auditDate: '2026-01-20T00:00:00Z', auditVersion: '3.0.0-alpha.3', passed: true, issues: [], }, }, // Prime Radiant - Mathematical coherence and consensus verification { id: '@claude-flow/plugin-prime-radiant', name: '@claude-flow/plugin-prime-radiant', displayName: 'Prime Radiant', description: 'Mathematical AI that catches contradictions, verifies consensus, prevents hallucinations, and analyzes swarm stability using sheaf cohomology and spectral graph theory.', version: '0.1.5', cid: 'bafybeiprimeradiantplugin2024', size: 195000, checksum: 'sha256:primeradiant2024xyz', author: officialAuthor, license: 'MIT', categories: ['ai-ml', 'agents'], tags: ['coherence', 'consensus', 'mathematics', 'validation', 'hallucination-prevention', 'spectral', 'causal'], keywords: ['coherence', 'consensus', 'validation', 'mathematics'], downloads: 850, rating: 4.9, ratingCount: 18, lastUpdated: baseTime, createdAt: '2026-01-20T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [ { name: '@claude-flow/core', version: '^3.0.0' }, ], type: 'integration', hooks: [ 'pr:pre-memory-store', 'pr:pre-consensus', 'pr:post-swarm-task', 'pr:pre-rag-retrieval', ], commands: [ 'pr coherence-check', 'pr consensus-verify', 'pr spectral-analyze', 'pr causal-infer', 'pr memory-gate', 'pr quantum-topology', ], permissions: ['memory', 'hooks'], exports: [ 'CoherenceChecker', 'ConsensusVerifier', 'SpectralAnalyzer', 'CausalInference', 'MemoryGate', 'QuantumTopology', ], verified: true, trustLevel: 'official', securityAudit: { auditor: 'claude-flow-security-team', auditDate: '2026-01-20T00:00:00Z', auditVersion: '0.1.5', passed: true, issues: [], }, }, // Domain-specific plugins { id: '@claude-flow/plugin-healthcare-clinical', name: '@claude-flow/plugin-healthcare-clinical', displayName: 'Healthcare Clinical', description: 'HIPAA-compliant clinical workflow automation with patient data protection, medical terminology NLP, and healthcare interoperability standards.', version: '0.1.0', cid: 'bafybeihealthcareplugin2024', size: 210000, checksum: 'sha256:healthcare2024xyz', author: officialAuthor, license: 'MIT', categories: ['integrations', 'security'], tags: ['healthcare', 'hipaa', 'clinical', 'medical', 'nlp'], keywords: ['healthcare', 'clinical', 'hipaa'], downloads: 0, rating: 0, ratingCount: 0, lastUpdated: baseTime, createdAt: '2026-01-20T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [{ name: '@claude-flow/core', version: '^3.0.0' }], type: 'integration', hooks: ['healthcare:validate', 'healthcare:anonymize'], commands: ['healthcare analyze', 'healthcare validate', 'healthcare report'], permissions: ['memory', 'network'], exports: ['ClinicalAnalyzer', 'HIPAAValidator', 'MedicalNLP'], verified: true, trustLevel: 'official', }, { id: '@claude-flow/plugin-financial-risk', name: '@claude-flow/plugin-financial-risk', displayName: 'Financial Risk Analysis', description: 'SOX/PCI-compliant financial analysis with risk modeling, fraud detection, regulatory compliance, and audit trail generation.', version: '0.1.0', cid: 'bafybeifinancialriskplugin2024', size: 195000, checksum: 'sha256:financialrisk2024xyz', author: officialAuthor, license: 'MIT', categories: ['integrations', 'security'], tags: ['financial', 'risk', 'sox', 'pci', 'compliance', 'fraud'], keywords: ['financial', 'risk', 'compliance'], downloads: 0, rating: 0, ratingCount: 0, lastUpdated: baseTime, createdAt: '2026-01-20T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [{ name: '@claude-flow/core', version: '^3.0.0' }], type: 'integration', hooks: ['financial:assess-risk', 'financial:audit'], commands: ['financial risk-assess', 'financial compliance-check', 'financial audit-trail'], permissions: ['memory', 'network'], exports: ['RiskModeler', 'FraudDetector', 'ComplianceChecker'], verified: true, trustLevel: 'official', }, { id: '@claude-flow/plugin-legal-contracts', name: '@claude-flow/plugin-legal-contracts', displayName: 'Legal Contracts', description: 'Attorney-client privilege aware contract analysis with clause extraction, risk identification, and compliance checking.', version: '0.1.0', cid: 'bafybeilegalcontractsplugin2024', size: 175000, checksum: 'sha256:legalcontracts2024xyz', author: officialAuthor, license: 'MIT', categories: ['integrations'], tags: ['legal', 'contracts', 'compliance', 'nlp', 'analysis'], keywords: ['legal', 'contracts', 'analysis'], downloads: 0, rating: 0, ratingCount: 0, lastUpdated: baseTime, createdAt: '2026-01-20T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [{ name: '@claude-flow/core', version: '^3.0.0' }], type: 'integration', hooks: ['legal:analyze', 'legal:extract-clauses'], commands: ['legal analyze', 'legal extract-clauses', 'legal risk-assess'], permissions: ['memory', 'filesystem'], exports: ['ContractAnalyzer', 'ClauseExtractor', 'LegalRiskAssessor'], verified: true, trustLevel: 'official', }, // Development intelligence plugins { id: '@claude-flow/plugin-code-intelligence', name: '@claude-flow/plugin-code-intelligence', displayName: 'Code Intelligence', description: 'Advanced code analysis with semantic understanding, architectural pattern detection, and intelligent refactoring suggestions.', version: '0.1.0', cid: 'bafybeicodeintelligenceplugin2024', size: 245000, checksum: 'sha256:codeintelligence2024xyz', author: officialAuthor, license: 'MIT', categories: ['ai-ml', 'devops'], tags: ['code', 'analysis', 'patterns', 'refactoring', 'intelligence'], keywords: ['code', 'intelligence', 'analysis'], downloads: 0, rating: 0, ratingCount: 0, lastUpdated: baseTime, createdAt: '2026-01-20T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [{ name: '@claude-flow/core', version: '^3.0.0' }], type: 'integration', hooks: ['code:analyze', 'code:suggest-refactor'], commands: ['code analyze', 'code patterns', 'code suggest-refactor'], permissions: ['filesystem', 'memory'], exports: ['CodeAnalyzer', 'PatternDetector', 'RefactoringEngine'], verified: true, trustLevel: 'official', }, { id: '@claude-flow/plugin-test-intelligence', name: '@claude-flow/plugin-test-intelligence', displayName: 'Test Intelligence', description: 'Intelligent test generation, coverage analysis, and test optimization with mutation testing and flaky test detection.', version: '0.1.0', cid: 'bafybeitestintelligenceplugin2024', size: 215000, checksum: 'sha256:testintelligence2024xyz', author: officialAuthor, license: 'MIT', categories: ['ai-ml', 'devops'], tags: ['testing', 'coverage', 'mutation', 'generation', 'intelligence'], keywords: ['test', 'intelligence', 'coverage'], downloads: 0, rating: 0, ratingCount: 0, lastUpdated: baseTime, createdAt: '2026-01-20T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [{ name: '@claude-flow/core', version: '^3.0.0' }], type: 'integration', hooks: ['test:generate', 'test:analyze-coverage'], commands: ['test generate', 'test coverage-gaps', 'test mutation'], permissions: ['filesystem', 'memory'], exports: ['TestGenerator', 'CoverageAnalyzer', 'MutationTester'], verified: true, trustLevel: 'official', }, { id: '@claude-flow/plugin-perf-optimizer', name: '@claude-flow/plugin-perf-optimizer', displayName: 'Performance Optimizer', description: 'AI-powered performance optimization with bottleneck detection, memory profiling, and automated performance tuning.', version: '0.1.0', cid: 'bafybeiperfoptimizerplugin2024', size: 225000, checksum: 'sha256:perfoptimizer2024xyz', author: officialAuthor, license: 'MIT', categories: ['devops', 'ai-ml'], tags: ['performance', 'optimization', 'profiling', 'bottleneck', 'tuning'], keywords: ['performance', 'optimizer', 'profiling'], downloads: 0, rating: 0, ratingCount: 0, lastUpdated: baseTime, createdAt: '2026-01-20T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [{ name: '@claude-flow/core', version: '^3.0.0' }], type: 'integration', hooks: ['perf:analyze', 'perf:optimize'], commands: ['perf analyze', 'perf optimize', 'perf profile'], permissions: ['memory', 'filesystem'], exports: ['PerformanceAnalyzer', 'BottleneckDetector', 'AutoTuner'], verified: true, trustLevel: 'official', }, // Advanced AI/reasoning plugins { id: '@claude-flow/plugin-neural-coordination', name: '@claude-flow/plugin-neural-coordination', displayName: 'Neural Coordination', description: 'Advanced neural network coordination for multi-agent systems with emergent behavior modeling and collective intelligence.', version: '0.1.0', cid: 'bafybeineuralcoordinationplugin2024', size: 275000, checksum: 'sha256:neuralcoordination2024xyz', author: officialAuthor, license: 'MIT', categories: ['ai-ml', 'agents'], tags: ['neural', 'coordination', 'multi-agent', 'emergent', 'collective'], keywords: ['neural', 'coordination', 'agents'], downloads: 0, rating: 0, ratingCount: 0, lastUpdated: baseTime, createdAt: '2026-01-20T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [{ name: '@claude-flow/core', version: '^3.0.0' }], type: 'integration', hooks: ['neural:coordinate', 'neural:emergent'], commands: ['neural coordinate', 'neural emergent-analyze', 'neural collective'], permissions: ['memory', 'network'], exports: ['NeuralCoordinator', 'EmergentModeler', 'CollectiveIntelligence'], verified: true, trustLevel: 'official', }, { id: '@claude-flow/plugin-cognitive-kernel', name: '@claude-flow/plugin-cognitive-kernel', displayName: 'Cognitive Kernel', description: 'Core cognitive processing engine with working memory, attention mechanisms, and meta-cognitive monitoring.', version: '0.1.0', cid: 'bafybeicognitivekernelplugin2024', size: 295000, checksum: 'sha256:cognitivekernel2024xyz', author: officialAuthor, license: 'MIT', categories: ['ai-ml'], tags: ['cognitive', 'kernel', 'attention', 'memory', 'meta-cognition'], keywords: ['cognitive', 'kernel', 'attention'], downloads: 0, rating: 0, ratingCount: 0, lastUpdated: baseTime, createdAt: '2026-01-20T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [{ name: '@claude-flow/core', version: '^3.0.0' }], type: 'core', hooks: ['cognitive:process', 'cognitive:attend'], commands: ['cognitive process', 'cognitive attend', 'cognitive monitor'], permissions: ['memory'], exports: ['CognitiveProcessor', 'AttentionMechanism', 'MetaCognitiveMonitor'], verified: true, trustLevel: 'official', }, { id: '@claude-flow/plugin-quantum-optimizer', name: '@claude-flow/plugin-quantum-optimizer', displayName: 'Quantum Optimizer', description: 'Quantum-inspired optimization algorithms for combinatorial problems with QAOA simulation and variational circuits.', version: '0.1.0', cid: 'bafybeiquantumoptimizerplugin2024', size: 265000, checksum: 'sha256:quantumoptimizer2024xyz', author: officialAuthor, license: 'MIT', categories: ['ai-ml'], tags: ['quantum', 'optimization', 'qaoa', 'variational', 'combinatorial'], keywords: ['quantum', 'optimizer', 'qaoa'], downloads: 0, rating: 0, ratingCount: 0, lastUpdated: baseTime, createdAt: '2026-01-20T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [{ name: '@claude-flow/core', version: '^3.0.0' }], type: 'integration', hooks: ['quantum:optimize', 'quantum:simulate'], commands: ['quantum optimize', 'quantum simulate', 'quantum variational'], permissions: ['memory'], exports: ['QuantumOptimizer', 'QAOASimulator', 'VariationalCircuit'], verified: true, trustLevel: 'official', }, { id: '@claude-flow/plugin-hyperbolic-reasoning', name: '@claude-flow/plugin-hyperbolic-reasoning', displayName: 'Hyperbolic Reasoning', description: 'Hyperbolic geometry for hierarchical reasoning with Poincare embeddings and geodesic attention mechanisms.', version: '0.1.0', cid: 'bafybeihyperbolicreasoningplugin2024', size: 235000, checksum: 'sha256:hyperbolicreasoning2024xyz', author: officialAuthor, license: 'MIT', categories: ['ai-ml'], tags: ['hyperbolic', 'reasoning', 'poincare', 'geodesic', 'hierarchical'], keywords: ['hyperbolic', 'reasoning', 'geometry'], downloads: 0, rating: 0, ratingCount: 0, lastUpdated: baseTime, createdAt: '2026-01-20T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [{ name: '@claude-flow/core', version: '^3.0.0' }], type: 'integration', hooks: ['hyperbolic:embed', 'hyperbolic:reason'], commands: ['hyperbolic embed', 'hyperbolic reason', 'hyperbolic geodesic'], permissions: ['memory'], exports: ['HyperbolicEmbedder', 'PoincareSpace', 'GeodesicAttention'], verified: true, trustLevel: 'official', }, // Gas Town Bridge - Multi-agent orchestrator integration { id: '@claude-flow/plugin-gastown-bridge', name: '@claude-flow/plugin-gastown-bridge', displayName: 'Gas Town Bridge', description: 'Gas Town orchestrator integration with WASM-accelerated formula parsing, Beads sync, convoy management, and graph analysis (352x faster).', version: '0.1.0', cid: 'bafybeigastownbridgeplugin2024', size: 485000, checksum: 'sha256:gastownbridge2024xyz', author: officialAuthor, license: 'MIT', categories: ['integrations', 'agents'], tags: ['gastown', 'orchestration', 'beads', 'formulas', 'wasm', 'convoy', 'workflows'], keywords: ['gastown', 'orchestration', 'beads'], downloads: 0, rating: 0, ratingCount: 0, lastUpdated: baseTime, createdAt: '2026-01-24T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [{ name: '@claude-flow/core', version: '^3.0.0' }], type: 'integration', hooks: ['gastown:sync', 'gastown:formula', 'gastown:convoy'], commands: ['gastown beads', 'gastown convoy', 'gastown formula', 'gastown sync'], permissions: ['filesystem', 'memory', 'network'], exports: ['BeadsBridge', 'ConvoyManager', 'FormulaEngine', 'GastownSync'], verified: true, trustLevel: 'official', securityAudit: { auditor: 'claude-flow-security-team', auditDate: '2026-01-24T00:00:00Z', auditVersion: '0.1.0', passed: true, issues: [], }, }, // Teammate Plugin - Claude Code v2.1.19+ integration { id: '@claude-flow/teammate-plugin', name: '@claude-flow/teammate-plugin', displayName: 'Teammate Plugin', description: 'Native TeammateTool integration for Claude Code v2.1.19+. Multi-agent team orchestration with plan approval workflows, delegation, messaging, and BMSSP-optimized topology routing. 21 MCP tools.', version: '1.0.0-alpha.1', cid: 'bafybeiteammateplugin2026', size: 387000, checksum: 'sha256:e335dd24ec2e68e8952c517794421a0b18dfb23f', author: officialAuthor, license: 'MIT', categories: ['agents', 'integrations'], tags: ['teammate', 'claude-code', 'multi-agent', 'swarm', 'orchestration', 'bmssp'], keywords: ['teammate', 'claude-code', 'multi-agent'], downloads: 0, rating: 0, ratingCount: 0, lastUpdated: baseTime, createdAt: '2026-01-25T00:00:00Z', minClaudeFlowVersion: '3.0.0', dependencies: [ { name: '@claude-flow/core', version: '^3.0.0' }, { name: 'eventemitter3', version: '^5.0.1' }, ], type: 'integration', hooks: ['teammate:spawn', 'teammate:message', 'teammate:plan', 'teammate:delegate'], commands: ['teammate spawn', 'teammate team', 'teammate message', 'teammate plan'], permissions: ['filesystem', 'memory', 'network'], exports: ['TeammateBridge', 'createTeammateBridge', 'TEAMMATE_MCP_TOOLS', 'TopologyOptimizer', 'SemanticRouter'], verified: true, trustLevel: 'official', securityAudit: { auditor: 'claude-flow-security-team', auditDate: '2026-01-25T00:00:00Z', auditVersion: '1.0.0-alpha.1', passed: true, issues: [], }, }, ]; } /** * Get demo plugins with real npm stats */ async getDemoPluginsWithStats() { const basePlugins = this.getDemoPlugins(); // Only fetch stats for real npm packages const realNpmPackages = [ '@claude-flow/plugin-agentic-qe', '@claude-flow/plugin-prime-radiant', '@claude-flow/claims', '@claude-flow/security', '@claude-flow/plugins', '@claude-flow/embeddings', '@claude-flow/neural', '@claude-flow/performance', '@claude-flow/teammate-plugin', // Domain-specific plugins '@claude-flow/plugin-healthcare-clinical', '@claude-flow/plugin-financial-risk', '@claude-flow/plugin-legal-contracts', // Development intelligence plugins '@claude-flow/plugin-code-intelligence', '@claude-flow/plugin-test-intelligence', '@claude-flow/plugin-perf-optimizer', // Advanced AI/reasoning plugins '@claude-flow/plugin-neural-coordination', '@claude-flow/plugin-cognitive-kernel', '@claude-flow/plugin-quantum-optimizer', '@claude-flow/plugin-hyperbolic-reasoning', // Gas Town Bridge '@claude-flow/plugin-gastown-bridge', ]; // Fetch stats in parallel const statsPromises = realNpmPackages.map(pkg => fetchNpmStats(pkg)); const statsResults = await Promise.all(statsPromises); // Create a map of package -> stats const statsMap = new Map(); realNpmPackages.forEach((pkg, i) => { if (statsResults[i]) { statsMap.set(pkg, statsResults[i]); } }); // Update plugins with real stats, remove fake plugins that don't exist return basePlugins .filter(plugin => { // Keep only real plugins that exist on npm or our two new ones const isRealPlugin = realNpmPackages.includes(plugin.name); return isRealPlugin; }) .map(plugin => { const stats = statsMap.get(plugin.name); if (stats) { return { ...plu