UNPKG

@clduab11/gemini-flow

Version:

Revolutionary AI agent swarm coordination platform with Google Services integration, multimedia processing, and production-ready monitoring. Features 8 Google AI services, quantum computing capabilities, and enterprise-grade security.

754 lines (619 loc) 20 kB
/** * MCP Tool Type Definitions * Comprehensive TypeScript definitions for Claude Flow and RUV Swarm MCP tools */ // ============================================================================= // BASE MCP INTERFACES // ============================================================================= export interface MCPToolParams { [key: string]: any; } export interface MCPToolResult { success: boolean; data?: any; message?: string; error?: string; timestamp?: number; } export interface SwarmConfig { topology: "mesh" | "hierarchical" | "ring" | "star"; maxAgents?: number; strategy?: "balanced" | "specialized" | "adaptive"; } export interface AgentConfig { type: | "coordinator" | "researcher" | "coder" | "analyst" | "architect" | "tester" | "reviewer" | "optimizer" | "documenter" | "monitor" | "specialist"; name?: string; capabilities?: string[]; swarmId?: string; } export interface TaskConfig { task: string; strategy?: "parallel" | "sequential" | "adaptive" | "balanced"; priority?: "low" | "medium" | "high" | "critical"; maxAgents?: number; dependencies?: string[]; } export interface MemoryAction { action: "store" | "retrieve" | "list" | "delete" | "search"; key?: string; value?: string; namespace?: string; ttl?: number; } export interface NeuralTrainingConfig { pattern_type: "coordination" | "optimization" | "prediction"; training_data: string; epochs?: number; } // ============================================================================= // RUV SWARM MCP TOOLS // ============================================================================= export interface RuvSwarmTools { // Swarm Management "mcp__ruv-swarm__swarm_init": (params: { topology: "mesh" | "hierarchical" | "ring" | "star"; maxAgents?: number; strategy?: "balanced" | "specialized" | "adaptive"; }) => Promise<MCPToolResult>; "mcp__ruv-swarm__swarm_status": (params: { verbose?: boolean; }) => Promise<MCPToolResult>; "mcp__ruv-swarm__swarm_monitor": (params: { duration?: number; interval?: number; }) => Promise<MCPToolResult>; // Agent Management "mcp__ruv-swarm__agent_spawn": (params: { type: "researcher" | "coder" | "analyst" | "optimizer" | "coordinator"; name?: string; capabilities?: string[]; }) => Promise<MCPToolResult>; "mcp__ruv-swarm__agent_list": (params: { filter?: "all" | "active" | "idle" | "busy"; }) => Promise<MCPToolResult>; "mcp__ruv-swarm__agent_metrics": (params: { agentId?: string; metric?: "all" | "cpu" | "memory" | "tasks" | "performance"; }) => Promise<MCPToolResult>; // Task Orchestration "mcp__ruv-swarm__task_orchestrate": (params: { task: string; strategy?: "parallel" | "sequential" | "adaptive"; priority?: "low" | "medium" | "high" | "critical"; maxAgents?: number; }) => Promise<MCPToolResult>; "mcp__ruv-swarm__task_status": (params: { taskId?: string; detailed?: boolean; }) => Promise<MCPToolResult>; "mcp__ruv-swarm__task_results": (params: { taskId: string; format?: "summary" | "detailed" | "raw"; }) => Promise<MCPToolResult>; // Performance & Benchmarks "mcp__ruv-swarm__benchmark_run": (params: { type?: "all" | "wasm" | "swarm" | "agent" | "task"; iterations?: number; }) => Promise<MCPToolResult>; "mcp__ruv-swarm__features_detect": (params: { category?: "all" | "wasm" | "simd" | "memory" | "platform"; }) => Promise<MCPToolResult>; "mcp__ruv-swarm__memory_usage": (params: { detail?: "summary" | "detailed" | "by-agent"; }) => Promise<MCPToolResult>; // Neural Features "mcp__ruv-swarm__neural_status": (params: { agentId?: string; }) => Promise<MCPToolResult>; "mcp__ruv-swarm__neural_train": (params: { agentId?: string; iterations?: number; }) => Promise<MCPToolResult>; "mcp__ruv-swarm__neural_patterns": (params: { pattern?: | "all" | "convergent" | "divergent" | "lateral" | "systems" | "critical" | "abstract"; }) => Promise<MCPToolResult>; // DAA (Decentralized Autonomous Agents) "mcp__ruv-swarm__daa_init": (params: { enableCoordination?: boolean; enableLearning?: boolean; persistenceMode?: "auto" | "memory" | "disk"; }) => Promise<MCPToolResult>; "mcp__ruv-swarm__daa_agent_create": (params: { id: string; capabilities?: string[]; cognitivePattern?: | "convergent" | "divergent" | "lateral" | "systems" | "critical" | "adaptive"; enableMemory?: boolean; learningRate?: number; }) => Promise<MCPToolResult>; "mcp__ruv-swarm__daa_agent_adapt": (params: { agentId: string; agent_id?: string; feedback?: string; performanceScore?: number; suggestions?: string[]; }) => Promise<MCPToolResult>; "mcp__ruv-swarm__daa_workflow_create": (params: { id: string; name: string; steps?: any[]; dependencies?: object; strategy?: "parallel" | "sequential" | "adaptive"; }) => Promise<MCPToolResult>; "mcp__ruv-swarm__daa_workflow_execute": (params: { workflowId: string; workflow_id?: string; agentIds?: string[]; parallelExecution?: boolean; }) => Promise<MCPToolResult>; "mcp__ruv-swarm__daa_knowledge_share": (params: { sourceAgentId: string; source_agent?: string; targetAgentIds: string[]; target_agents?: string[]; knowledgeDomain?: string; knowledgeContent?: object; }) => Promise<MCPToolResult>; "mcp__ruv-swarm__daa_learning_status": (params: { agentId?: string; detailed?: boolean; }) => Promise<MCPToolResult>; "mcp__ruv-swarm__daa_cognitive_pattern": (params: { agentId?: string; agent_id?: string; action?: "analyze" | "change"; pattern?: | "convergent" | "divergent" | "lateral" | "systems" | "critical" | "adaptive"; analyze?: boolean; }) => Promise<MCPToolResult>; "mcp__ruv-swarm__daa_meta_learning": (params: { sourceDomain?: string; targetDomain?: string; transferMode?: "adaptive" | "direct" | "gradual"; agentIds?: string[]; }) => Promise<MCPToolResult>; "mcp__ruv-swarm__daa_performance_metrics": (params: { category?: "all" | "system" | "performance" | "efficiency" | "neural"; timeRange?: string; }) => Promise<MCPToolResult>; } // ============================================================================= // CLAUDE FLOW MCP TOOLS // ============================================================================= export interface ClaudeFlowTools { // Swarm Initialization & Management "mcp__claude-flow__swarm_init": (params: { topology: "hierarchical" | "mesh" | "ring" | "star"; maxAgents?: number; strategy?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__swarm_status": (params: { swarmId?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__swarm_monitor": (params: { swarmId?: string; interval?: number; }) => Promise<MCPToolResult>; "mcp__claude-flow__swarm_scale": (params: { swarmId?: string; targetSize?: number; }) => Promise<MCPToolResult>; "mcp__claude-flow__swarm_destroy": (params: { swarmId: string; }) => Promise<MCPToolResult>; // Agent Management "mcp__claude-flow__agent_spawn": (params: { type: | "coordinator" | "researcher" | "coder" | "analyst" | "architect" | "tester" | "reviewer" | "optimizer" | "documenter" | "monitor" | "specialist"; name?: string; capabilities?: any[]; swarmId?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__agent_list": (params: { swarmId?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__agent_metrics": (params: { agentId?: string; }) => Promise<MCPToolResult>; // Task Orchestration "mcp__claude-flow__task_orchestrate": (params: { task: string; strategy?: "parallel" | "sequential" | "adaptive" | "balanced"; priority?: "low" | "medium" | "high" | "critical"; dependencies?: any[]; }) => Promise<MCPToolResult>; "mcp__claude-flow__task_status": (params: { taskId: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__task_results": (params: { taskId: string; }) => Promise<MCPToolResult>; // Neural & AI Features "mcp__claude-flow__neural_status": (params: { modelId?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__neural_train": (params: { pattern_type: "coordination" | "optimization" | "prediction"; training_data: string; epochs?: number; }) => Promise<MCPToolResult>; "mcp__claude-flow__neural_patterns": (params: { action: "analyze" | "learn" | "predict"; operation?: string; outcome?: string; metadata?: object; }) => Promise<MCPToolResult>; "mcp__claude-flow__neural_predict": (params: { modelId: string; input: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__neural_compress": (params: { modelId: string; ratio?: number; }) => Promise<MCPToolResult>; "mcp__claude-flow__neural_explain": (params: { modelId: string; prediction: object; }) => Promise<MCPToolResult>; // Memory Management "mcp__claude-flow__memory_usage": (params: { action: "store" | "retrieve" | "list" | "delete" | "search"; key?: string; value?: string; namespace?: string; ttl?: number; }) => Promise<MCPToolResult>; "mcp__claude-flow__memory_search": (params: { pattern: string; namespace?: string; limit?: number; }) => Promise<MCPToolResult>; "mcp__claude-flow__memory_persist": (params: { sessionId?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__memory_namespace": (params: { namespace: string; action: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__memory_backup": (params: { path?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__memory_restore": (params: { backupPath: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__memory_compress": (params: { namespace?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__memory_sync": (params: { target: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__memory_analytics": (params: { timeframe?: string; }) => Promise<MCPToolResult>; // Performance & Analytics "mcp__claude-flow__performance_report": (params: { format?: "summary" | "detailed" | "json"; timeframe?: "24h" | "7d" | "30d"; }) => Promise<MCPToolResult>; "mcp__claude-flow__bottleneck_analyze": (params: { component?: string; metrics?: any[]; }) => Promise<MCPToolResult>; "mcp__claude-flow__token_usage": (params: { operation?: string; timeframe?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__benchmark_run": (params: { suite?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__metrics_collect": (params: { components?: any[]; }) => Promise<MCPToolResult>; "mcp__claude-flow__trend_analysis": (params: { metric: string; period?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__cost_analysis": (params: { timeframe?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__quality_assess": (params: { target: string; criteria?: any[]; }) => Promise<MCPToolResult>; "mcp__claude-flow__error_analysis": (params: { logs?: any[]; }) => Promise<MCPToolResult>; "mcp__claude-flow__usage_stats": (params: { component?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__health_check": (params: { components?: any[]; }) => Promise<MCPToolResult>; // GitHub Integration "mcp__claude-flow__github_repo_analyze": (params: { repo: string; analysis_type?: "code_quality" | "performance" | "security"; }) => Promise<MCPToolResult>; "mcp__claude-flow__github_pr_manage": (params: { repo: string; action: "review" | "merge" | "close"; pr_number?: number; }) => Promise<MCPToolResult>; "mcp__claude-flow__github_issue_track": (params: { repo: string; action: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__github_release_coord": (params: { repo: string; version: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__github_workflow_auto": (params: { repo: string; workflow: object; }) => Promise<MCPToolResult>; "mcp__claude-flow__github_code_review": (params: { repo: string; pr: number; }) => Promise<MCPToolResult>; "mcp__claude-flow__github_sync_coord": (params: { repos: any[]; }) => Promise<MCPToolResult>; "mcp__claude-flow__github_metrics": (params: { repo: string; }) => Promise<MCPToolResult>; // Workflow & Automation "mcp__claude-flow__workflow_create": (params: { name: string; steps: any[]; triggers?: any[]; }) => Promise<MCPToolResult>; "mcp__claude-flow__workflow_execute": (params: { workflowId: string; params?: object; }) => Promise<MCPToolResult>; "mcp__claude-flow__workflow_export": (params: { workflowId: string; format?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__workflow_template": (params: { action: string; template?: object; }) => Promise<MCPToolResult>; "mcp__claude-flow__automation_setup": (params: { rules: any[]; }) => Promise<MCPToolResult>; "mcp__claude-flow__pipeline_create": (params: { config: object; }) => Promise<MCPToolResult>; "mcp__claude-flow__scheduler_manage": (params: { action: string; schedule?: object; }) => Promise<MCPToolResult>; "mcp__claude-flow__trigger_setup": (params: { events: any[]; actions: any[]; }) => Promise<MCPToolResult>; "mcp__claude-flow__batch_process": (params: { items: any[]; operation: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__parallel_execute": (params: { tasks: any[]; }) => Promise<MCPToolResult>; // SPARC Development Mode "mcp__claude-flow__sparc_mode": (params: { mode: "dev" | "api" | "ui" | "test" | "refactor"; task_description: string; options?: object; }) => Promise<MCPToolResult>; // Decentralized Autonomous Agents (DAA) "mcp__claude-flow__daa_agent_create": (params: { agent_type: string; capabilities?: any[]; resources?: object; }) => Promise<MCPToolResult>; "mcp__claude-flow__daa_capability_match": (params: { task_requirements: any[]; available_agents?: any[]; }) => Promise<MCPToolResult>; "mcp__claude-flow__daa_resource_alloc": (params: { resources: object; agents?: any[]; }) => Promise<MCPToolResult>; "mcp__claude-flow__daa_lifecycle_manage": (params: { agentId: string; action: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__daa_communication": (params: { from: string; to: string; message: object; }) => Promise<MCPToolResult>; "mcp__claude-flow__daa_consensus": (params: { agents: any[]; proposal: object; }) => Promise<MCPToolResult>; "mcp__claude-flow__daa_fault_tolerance": (params: { agentId: string; strategy?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__daa_optimization": (params: { target: string; metrics?: any[]; }) => Promise<MCPToolResult>; // Model & AI Operations "mcp__claude-flow__model_load": (params: { modelPath: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__model_save": (params: { modelId: string; path: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__inference_run": (params: { modelId: string; data: any[]; }) => Promise<MCPToolResult>; "mcp__claude-flow__pattern_recognize": (params: { data: any[]; patterns?: any[]; }) => Promise<MCPToolResult>; "mcp__claude-flow__cognitive_analyze": (params: { behavior: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__learning_adapt": (params: { experience: object; }) => Promise<MCPToolResult>; "mcp__claude-flow__ensemble_create": (params: { models: any[]; strategy?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__transfer_learn": (params: { sourceModel: string; targetDomain: string; }) => Promise<MCPToolResult>; // System & Infrastructure "mcp__claude-flow__topology_optimize": (params: { swarmId?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__load_balance": (params: { swarmId?: string; tasks?: any[]; }) => Promise<MCPToolResult>; "mcp__claude-flow__coordination_sync": (params: { swarmId?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__wasm_optimize": (params: { operation?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__cache_manage": (params: { action: string; key?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__state_snapshot": (params: { name?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__context_restore": (params: { snapshotId: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__terminal_execute": (params: { command: string; args?: any[]; }) => Promise<MCPToolResult>; "mcp__claude-flow__config_manage": (params: { action: string; config?: object; }) => Promise<MCPToolResult>; "mcp__claude-flow__features_detect": (params: { component?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__security_scan": (params: { target: string; depth?: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__backup_create": (params: { destination?: string; components?: any[]; }) => Promise<MCPToolResult>; "mcp__claude-flow__restore_system": (params: { backupId: string; }) => Promise<MCPToolResult>; "mcp__claude-flow__log_analysis": (params: { logFile: string; patterns?: any[]; }) => Promise<MCPToolResult>; "mcp__claude-flow__diagnostic_run": (params: { components?: any[]; }) => Promise<MCPToolResult>; } // ============================================================================= // COMBINED MCP TOOLS INTERFACE // ============================================================================= export interface MCPTools extends RuvSwarmTools, ClaudeFlowTools {} // ============================================================================= // MODULE AUGMENTATION FOR MCP // ============================================================================= declare module "@anthropic/mcp" { interface Tools extends MCPTools {} } // Global type augmentation for dynamic MCP tool access declare global { namespace MCP { interface ToolRegistry extends MCPTools {} // Utility types for type-safe tool calls type ToolName = keyof MCPTools; type ToolParams<T extends ToolName> = Parameters<MCPTools[T]>[0]; type ToolResult<T extends ToolName> = ReturnType<MCPTools[T]>; // Helper type for tool function signatures type ToolFunction<T extends ToolName> = ( params: ToolParams<T>, ) => ToolResult<T>; } } // ============================================================================= // UTILITY TYPES & HELPERS // ============================================================================= export type MCPToolName = keyof MCPTools; export type MCPToolParameters<T extends MCPToolName> = Parameters< MCPTools[T] >[0]; export type MCPToolReturnType<T extends MCPToolName> = ReturnType<MCPTools[T]>; // Type guard for MCP tool names export function isMCPTool(name: string): name is MCPToolName { return name.startsWith("mcp__"); } // Type-safe MCP tool caller interface export interface MCPToolCaller { <T extends MCPToolName>( toolName: T, params: MCPToolParameters<T>, ): MCPToolReturnType<T>; } // Export all interfaces for external use export type { SwarmConfig, AgentConfig, TaskConfig, MemoryAction, NeuralTrainingConfig, RuvSwarmTools, ClaudeFlowTools, MCPTools, };