@mxf-dev/core 2.0.5 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/config/ConfigManager.d.ts +64 -0
- package/dist/config/ConfigManager.d.ts.map +1 -1
- package/dist/config/ConfigManager.js +68 -1
- package/dist/config/ConfigManager.js.map +1 -1
- package/dist/config/ModelContextLimits.d.ts.map +1 -1
- package/dist/config/ModelContextLimits.js +7 -1
- package/dist/config/ModelContextLimits.js.map +1 -1
- package/dist/constants/CoreTools.d.ts +6 -5
- package/dist/constants/CoreTools.d.ts.map +1 -1
- package/dist/constants/CoreTools.js +6 -5
- package/dist/constants/CoreTools.js.map +1 -1
- package/dist/constants/DefaultPhaseProfiles.d.ts.map +1 -1
- package/dist/constants/DefaultPhaseProfiles.js +29 -0
- package/dist/constants/DefaultPhaseProfiles.js.map +1 -1
- package/dist/constants/ReservedIdentities.d.ts +14 -0
- package/dist/constants/ReservedIdentities.d.ts.map +1 -0
- package/dist/constants/ReservedIdentities.js +42 -0
- package/dist/constants/ReservedIdentities.js.map +1 -0
- package/dist/database/adapters/mongodb/MongoChannelRepository.d.ts.map +1 -1
- package/dist/database/adapters/mongodb/MongoChannelRepository.js +2 -1
- package/dist/database/adapters/mongodb/MongoChannelRepository.js.map +1 -1
- package/dist/database/adapters/mongodb/MongoKnowledgeGraphRepository.d.ts +16 -16
- package/dist/database/adapters/mongodb/MongoKnowledgeGraphRepository.d.ts.map +1 -1
- package/dist/database/adapters/mongodb/MongoKnowledgeGraphRepository.js +98 -36
- package/dist/database/adapters/mongodb/MongoKnowledgeGraphRepository.js.map +1 -1
- package/dist/events/ClientEventBus.d.ts +28 -0
- package/dist/events/ClientEventBus.d.ts.map +1 -1
- package/dist/events/ClientEventBus.js +87 -40
- package/dist/events/ClientEventBus.js.map +1 -1
- package/dist/events/EventBus.d.ts +19 -1
- package/dist/events/EventBus.d.ts.map +1 -1
- package/dist/events/EventBus.js +23 -0
- package/dist/events/EventBus.js.map +1 -1
- package/dist/events/EventBusBase.d.ts +37 -6
- package/dist/events/EventBusBase.d.ts.map +1 -1
- package/dist/events/EventBusBase.js +75 -27
- package/dist/events/EventBusBase.js.map +1 -1
- package/dist/events/EventNames.d.ts +50 -36
- package/dist/events/EventNames.d.ts.map +1 -1
- package/dist/events/EventNames.js +38 -36
- package/dist/events/EventNames.js.map +1 -1
- package/dist/events/PublicEvents.d.ts +5 -1
- package/dist/events/PublicEvents.d.ts.map +1 -1
- package/dist/events/PublicEvents.js +7 -0
- package/dist/events/PublicEvents.js.map +1 -1
- package/dist/events/ServerEventBus.d.ts +7 -54
- package/dist/events/ServerEventBus.d.ts.map +1 -1
- package/dist/events/ServerEventBus.js +10 -96
- package/dist/events/ServerEventBus.js.map +1 -1
- package/dist/events/event-definitions/ConfigEvents.d.ts +6 -0
- package/dist/events/event-definitions/ConfigEvents.d.ts.map +1 -1
- package/dist/events/event-definitions/ConfigEvents.js +0 -5
- package/dist/events/event-definitions/ConfigEvents.js.map +1 -1
- package/dist/events/event-definitions/ControlLoopEvents.d.ts +35 -0
- package/dist/events/event-definitions/ControlLoopEvents.d.ts.map +1 -1
- package/dist/events/event-definitions/ControlLoopEvents.js +6 -0
- package/dist/events/event-definitions/ControlLoopEvents.js.map +1 -1
- package/dist/events/event-definitions/SdkEvents.d.ts +55 -0
- package/dist/events/event-definitions/SdkEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/SdkEvents.js +36 -0
- package/dist/events/event-definitions/SdkEvents.js.map +1 -0
- package/dist/events/event-definitions/SystemEvents.d.ts +16 -0
- package/dist/events/event-definitions/SystemEvents.d.ts.map +1 -1
- package/dist/events/event-definitions/SystemEvents.js +2 -0
- package/dist/events/event-definitions/SystemEvents.js.map +1 -1
- package/dist/events/event-definitions/TaskEvents.d.ts +2 -7
- package/dist/events/event-definitions/TaskEvents.d.ts.map +1 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/interfaces/AgentInterfaces.d.ts +5 -0
- package/dist/interfaces/AgentInterfaces.d.ts.map +1 -1
- package/dist/interfaces/Channel.d.ts +3 -0
- package/dist/interfaces/Channel.d.ts.map +1 -1
- package/dist/interfaces/ChannelConfig.d.ts +4 -2
- package/dist/interfaces/ChannelConfig.d.ts.map +1 -1
- package/dist/interfaces/ConversationMessage.d.ts +1 -1
- package/dist/interfaces/ConversationMessage.d.ts.map +1 -1
- package/dist/interfaces/IMemoryPersistence.d.ts +47 -1
- package/dist/interfaces/IMemoryPersistence.d.ts.map +1 -1
- package/dist/interfaces/SocketServiceInterface.d.ts +3 -2
- package/dist/interfaces/SocketServiceInterface.d.ts.map +1 -1
- package/dist/interfaces/TaskInterfaces.d.ts +14 -1
- package/dist/interfaces/TaskInterfaces.d.ts.map +1 -1
- package/dist/models/agent.d.ts +0 -1
- package/dist/models/agent.d.ts.map +1 -1
- package/dist/models/agent.js +0 -5
- package/dist/models/agent.js.map +1 -1
- package/dist/models/agentIdentityReservation.d.ts +42 -0
- package/dist/models/agentIdentityReservation.d.ts.map +1 -0
- package/dist/models/agentIdentityReservation.js +52 -0
- package/dist/models/agentIdentityReservation.js.map +1 -0
- package/dist/models/channel.d.ts +4 -0
- package/dist/models/channel.d.ts.map +1 -1
- package/dist/models/channel.js +8 -0
- package/dist/models/channel.js.map +1 -1
- package/dist/models/channelKey.d.ts +1 -0
- package/dist/models/channelKey.d.ts.map +1 -1
- package/dist/models/channelKey.js +5 -0
- package/dist/models/channelKey.js.map +1 -1
- package/dist/models/memory.d.ts +1 -1
- package/dist/models/memory.d.ts.map +1 -1
- package/dist/models/memory.js +9 -12
- package/dist/models/memory.js.map +1 -1
- package/dist/models/memoryStrata.d.ts +3 -16
- package/dist/models/memoryStrata.d.ts.map +1 -1
- package/dist/models/memoryStrata.js +3 -5
- package/dist/models/memoryStrata.js.map +1 -1
- package/dist/models/plan.d.ts +2 -2
- package/dist/models/plan.d.ts.map +1 -1
- package/dist/models/plan.js +1 -1
- package/dist/models/plan.js.map +1 -1
- package/dist/models/taskEffectiveness.d.ts +1 -0
- package/dist/models/taskEffectiveness.d.ts.map +1 -1
- package/dist/models/taskEffectiveness.js +7 -1
- package/dist/models/taskEffectiveness.js.map +1 -1
- package/dist/models/user.d.ts +4 -0
- package/dist/models/user.d.ts.map +1 -1
- package/dist/models/user.js +8 -0
- package/dist/models/user.js.map +1 -1
- package/dist/prompts/MxfAgentSystemPrompt.d.ts.map +1 -1
- package/dist/prompts/MxfAgentSystemPrompt.js +9 -1
- package/dist/prompts/MxfAgentSystemPrompt.js.map +1 -1
- package/dist/prompts/SystemLlmStanceGuidance.d.ts +37 -0
- package/dist/prompts/SystemLlmStanceGuidance.d.ts.map +1 -0
- package/dist/prompts/SystemLlmStanceGuidance.js +48 -0
- package/dist/prompts/SystemLlmStanceGuidance.js.map +1 -0
- package/dist/protocols/mcp/LlmTestEnvironmentGuard.d.ts +16 -0
- package/dist/protocols/mcp/LlmTestEnvironmentGuard.d.ts.map +1 -0
- package/dist/protocols/mcp/LlmTestEnvironmentGuard.js +25 -0
- package/dist/protocols/mcp/LlmTestEnvironmentGuard.js.map +1 -0
- package/dist/protocols/mcp/McpServerTypes.d.ts +9 -0
- package/dist/protocols/mcp/McpServerTypes.d.ts.map +1 -1
- package/dist/protocols/mcp/providers/AnthropicMcpClient.d.ts.map +1 -1
- package/dist/protocols/mcp/providers/AnthropicMcpClient.js +1 -0
- package/dist/protocols/mcp/providers/AnthropicMcpClient.js.map +1 -1
- package/dist/protocols/mcp/providers/AzureOpenAiMcpClient.d.ts.map +1 -1
- package/dist/protocols/mcp/providers/AzureOpenAiMcpClient.js +1 -0
- package/dist/protocols/mcp/providers/AzureOpenAiMcpClient.js.map +1 -1
- package/dist/protocols/mcp/providers/BaseMcpClient.d.ts +4 -0
- package/dist/protocols/mcp/providers/BaseMcpClient.d.ts.map +1 -1
- package/dist/protocols/mcp/providers/BaseMcpClient.js +10 -0
- package/dist/protocols/mcp/providers/BaseMcpClient.js.map +1 -1
- package/dist/protocols/mcp/providers/CustomMcpClient.d.ts.map +1 -1
- package/dist/protocols/mcp/providers/CustomMcpClient.js +7 -0
- package/dist/protocols/mcp/providers/CustomMcpClient.js.map +1 -1
- package/dist/protocols/mcp/providers/GeminiMcpClient.d.ts.map +1 -1
- package/dist/protocols/mcp/providers/GeminiMcpClient.js +1 -0
- package/dist/protocols/mcp/providers/GeminiMcpClient.js.map +1 -1
- package/dist/protocols/mcp/providers/OllamaMcpClient.d.ts +1 -0
- package/dist/protocols/mcp/providers/OllamaMcpClient.d.ts.map +1 -1
- package/dist/protocols/mcp/providers/OllamaMcpClient.js +1 -0
- package/dist/protocols/mcp/providers/OllamaMcpClient.js.map +1 -1
- package/dist/protocols/mcp/providers/OpenAiMcpClient.d.ts.map +1 -1
- package/dist/protocols/mcp/providers/OpenAiMcpClient.js +1 -0
- package/dist/protocols/mcp/providers/OpenAiMcpClient.js.map +1 -1
- package/dist/protocols/mcp/providers/OpenRouterMcpClient.d.ts.map +1 -1
- package/dist/protocols/mcp/providers/OpenRouterMcpClient.js +2 -0
- package/dist/protocols/mcp/providers/OpenRouterMcpClient.js.map +1 -1
- package/dist/protocols/mcp/providers/XaiMcpClient.d.ts.map +1 -1
- package/dist/protocols/mcp/providers/XaiMcpClient.js +1 -0
- package/dist/protocols/mcp/providers/XaiMcpClient.js.map +1 -1
- package/dist/protocols/mcp/security/BrowserTargetGuard.d.ts +14 -0
- package/dist/protocols/mcp/security/BrowserTargetGuard.d.ts.map +1 -0
- package/dist/protocols/mcp/security/BrowserTargetGuard.js +55 -0
- package/dist/protocols/mcp/security/BrowserTargetGuard.js.map +1 -0
- package/dist/protocols/mcp/security/ExternalMcpRegistrationPolicy.d.ts +24 -0
- package/dist/protocols/mcp/security/ExternalMcpRegistrationPolicy.d.ts.map +1 -0
- package/dist/protocols/mcp/security/ExternalMcpRegistrationPolicy.js +33 -0
- package/dist/protocols/mcp/security/ExternalMcpRegistrationPolicy.js.map +1 -0
- package/dist/protocols/mcp/security/HttpTargetGuard.d.ts.map +1 -1
- package/dist/protocols/mcp/security/HttpTargetGuard.js +68 -6
- package/dist/protocols/mcp/security/HttpTargetGuard.js.map +1 -1
- package/dist/protocols/mcp/security/McpSecurityGuard.d.ts.map +1 -1
- package/dist/protocols/mcp/security/McpSecurityGuard.js +7 -5
- package/dist/protocols/mcp/security/McpSecurityGuard.js.map +1 -1
- package/dist/protocols/mcp/security/McpToolPolicy.d.ts +18 -0
- package/dist/protocols/mcp/security/McpToolPolicy.d.ts.map +1 -1
- package/dist/protocols/mcp/security/McpToolPolicy.js +60 -0
- package/dist/protocols/mcp/security/McpToolPolicy.js.map +1 -1
- package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts +25 -0
- package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts.map +1 -1
- package/dist/protocols/mcp/services/ExternalMcpServerManager.js +93 -17
- package/dist/protocols/mcp/services/ExternalMcpServerManager.js.map +1 -1
- package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts +2 -2
- package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts.map +1 -1
- package/dist/protocols/mcp/services/ExternalServerConfigs.js +25 -8
- package/dist/protocols/mcp/services/ExternalServerConfigs.js.map +1 -1
- package/dist/protocols/mcp/tools/AnalyticsTools.d.ts +3 -37
- package/dist/protocols/mcp/tools/AnalyticsTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/AnalyticsTools.js +134 -614
- package/dist/protocols/mcp/tools/AnalyticsTools.js.map +1 -1
- package/dist/protocols/mcp/tools/CodeAnalysisTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/CodeAnalysisTools.js +16 -13
- package/dist/protocols/mcp/tools/CodeAnalysisTools.js.map +1 -1
- package/dist/protocols/mcp/tools/EffectivenessTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/EffectivenessTools.js +94 -30
- package/dist/protocols/mcp/tools/EffectivenessTools.js.map +1 -1
- package/dist/protocols/mcp/tools/GitTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/GitTools.js +9 -5
- package/dist/protocols/mcp/tools/GitTools.js.map +1 -1
- package/dist/protocols/mcp/tools/InfrastructureTools.d.ts +10 -40
- package/dist/protocols/mcp/tools/InfrastructureTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/InfrastructureTools.js +29 -70
- package/dist/protocols/mcp/tools/InfrastructureTools.js.map +1 -1
- package/dist/protocols/mcp/tools/JsonTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/JsonTools.js +4 -4
- package/dist/protocols/mcp/tools/JsonTools.js.map +1 -1
- package/dist/protocols/mcp/tools/KnowledgeGraphTools.d.ts +55 -592
- package/dist/protocols/mcp/tools/KnowledgeGraphTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/KnowledgeGraphTools.js +169 -119
- package/dist/protocols/mcp/tools/KnowledgeGraphTools.js.map +1 -1
- package/dist/protocols/mcp/tools/MemorySearchTools.d.ts +6 -6
- package/dist/protocols/mcp/tools/MemorySearchTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/MemorySearchTools.js +107 -39
- package/dist/protocols/mcp/tools/MemorySearchTools.js.map +1 -1
- package/dist/protocols/mcp/tools/MemoryUtilityTools.d.ts +4 -5
- package/dist/protocols/mcp/tools/MemoryUtilityTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/MemoryUtilityTools.js +59 -208
- package/dist/protocols/mcp/tools/MemoryUtilityTools.js.map +1 -1
- package/dist/protocols/mcp/tools/PlanningTools.d.ts +2 -1
- package/dist/protocols/mcp/tools/PlanningTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/PlanningTools.js +111 -49
- package/dist/protocols/mcp/tools/PlanningTools.js.map +1 -1
- package/dist/protocols/mcp/tools/ProjectContextTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/ProjectContextTools.js +18 -12
- package/dist/protocols/mcp/tools/ProjectContextTools.js.map +1 -1
- package/dist/protocols/mcp/tools/SafetyTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/SafetyTools.js +16 -13
- package/dist/protocols/mcp/tools/SafetyTools.js.map +1 -1
- package/dist/protocols/mcp/tools/SearchProjectTools.d.ts +24 -7
- package/dist/protocols/mcp/tools/SearchProjectTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/SearchProjectTools.js +226 -126
- package/dist/protocols/mcp/tools/SearchProjectTools.js.map +1 -1
- package/dist/protocols/mcp/tools/TaskPlanningTools.d.ts +0 -32
- package/dist/protocols/mcp/tools/TaskPlanningTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/TaskPlanningTools.js +363 -450
- package/dist/protocols/mcp/tools/TaskPlanningTools.js.map +1 -1
- package/dist/protocols/mcp/tools/TestTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/TestTools.js +18 -11
- package/dist/protocols/mcp/tools/TestTools.js.map +1 -1
- package/dist/protocols/mcp/tools/TypeScriptTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/TypeScriptTools.js +22 -12
- package/dist/protocols/mcp/tools/TypeScriptTools.js.map +1 -1
- package/dist/protocols/mcp/tools/UserInputTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/UserInputTools.js +14 -1
- package/dist/protocols/mcp/tools/UserInputTools.js.map +1 -1
- package/dist/protocols/mcp/tools/UserMemoryTools.d.ts +3 -1
- package/dist/protocols/mcp/tools/UserMemoryTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/UserMemoryTools.js +27 -62
- package/dist/protocols/mcp/tools/UserMemoryTools.js.map +1 -1
- package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js +14 -60
- package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js.map +1 -1
- package/dist/protocols/mcp/tools/shell/ShellSandbox.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/shell/ShellSandbox.js +9 -27
- package/dist/protocols/mcp/tools/shell/ShellSandbox.js.map +1 -1
- package/dist/repositories/interfaces/IChannelRepository.d.ts +2 -0
- package/dist/repositories/interfaces/IChannelRepository.d.ts.map +1 -1
- package/dist/repositories/interfaces/IKnowledgeGraphRepository.d.ts +40 -30
- package/dist/repositories/interfaces/IKnowledgeGraphRepository.d.ts.map +1 -1
- package/dist/schemas/EventPayloadSchema.d.ts +41 -1
- package/dist/schemas/EventPayloadSchema.d.ts.map +1 -1
- package/dist/schemas/EventPayloadSchema.js +54 -1
- package/dist/schemas/EventPayloadSchema.js.map +1 -1
- package/dist/schemas/MxpProtocolSchemas.d.ts +6 -6
- package/dist/services/AgentPerformanceService.d.ts +11 -0
- package/dist/services/AgentPerformanceService.d.ts.map +1 -1
- package/dist/services/AgentPerformanceService.js +59 -33
- package/dist/services/AgentPerformanceService.js.map +1 -1
- package/dist/services/AutoCorrectionService.d.ts +3 -0
- package/dist/services/AutoCorrectionService.d.ts.map +1 -1
- package/dist/services/AutoCorrectionService.js +19 -2
- package/dist/services/AutoCorrectionService.js.map +1 -1
- package/dist/services/BackgroundTaskManager.d.ts +29 -7
- package/dist/services/BackgroundTaskManager.d.ts.map +1 -1
- package/dist/services/BackgroundTaskManager.js +171 -60
- package/dist/services/BackgroundTaskManager.js.map +1 -1
- package/dist/services/BrowserManager.d.ts +2 -0
- package/dist/services/BrowserManager.d.ts.map +1 -1
- package/dist/services/BrowserManager.js +18 -15
- package/dist/services/BrowserManager.js.map +1 -1
- package/dist/services/ChannelContextMemoryOperations.d.ts +8 -1
- package/dist/services/ChannelContextMemoryOperations.d.ts.map +1 -1
- package/dist/services/ChannelContextMemoryOperations.js +89 -165
- package/dist/services/ChannelContextMemoryOperations.js.map +1 -1
- package/dist/services/ChannelContextMessageOperations.d.ts +4 -3
- package/dist/services/ChannelContextMessageOperations.d.ts.map +1 -1
- package/dist/services/ChannelContextMessageOperations.js +72 -212
- package/dist/services/ChannelContextMessageOperations.js.map +1 -1
- package/dist/services/MemoryService.d.ts +52 -21
- package/dist/services/MemoryService.d.ts.map +1 -1
- package/dist/services/MemoryService.js +775 -548
- package/dist/services/MemoryService.js.map +1 -1
- package/dist/services/PatternLearningService.d.ts +5 -0
- package/dist/services/PatternLearningService.d.ts.map +1 -1
- package/dist/services/PatternLearningService.js +26 -3
- package/dist/services/PatternLearningService.js.map +1 -1
- package/dist/services/PerformanceOptimizationService.d.ts +2 -1
- package/dist/services/PerformanceOptimizationService.d.ts.map +1 -1
- package/dist/services/PerformanceOptimizationService.js +21 -6
- package/dist/services/PerformanceOptimizationService.js.map +1 -1
- package/dist/services/PredictiveAnalyticsService.d.ts +1 -0
- package/dist/services/PredictiveAnalyticsService.d.ts.map +1 -1
- package/dist/services/PredictiveAnalyticsService.js +18 -6
- package/dist/services/PredictiveAnalyticsService.js.map +1 -1
- package/dist/services/ProactiveValidationService.d.ts +6 -0
- package/dist/services/ProactiveValidationService.d.ts.map +1 -1
- package/dist/services/ProactiveValidationService.js +58 -39
- package/dist/services/ProactiveValidationService.js.map +1 -1
- package/dist/services/TaskEffectivenessService.d.ts +55 -31
- package/dist/services/TaskEffectivenessService.d.ts.map +1 -1
- package/dist/services/TaskEffectivenessService.js +243 -125
- package/dist/services/TaskEffectivenessService.js.map +1 -1
- package/dist/services/ToolExecutionInterceptor.d.ts +4 -0
- package/dist/services/ToolExecutionInterceptor.d.ts.map +1 -1
- package/dist/services/ToolExecutionInterceptor.js +31 -5
- package/dist/services/ToolExecutionInterceptor.js.map +1 -1
- package/dist/services/UserInputRequestManager.d.ts +13 -3
- package/dist/services/UserInputRequestManager.d.ts.map +1 -1
- package/dist/services/UserInputRequestManager.js +42 -6
- package/dist/services/UserInputRequestManager.js.map +1 -1
- package/dist/services/UserMemoryService.d.ts +2 -0
- package/dist/services/UserMemoryService.d.ts.map +1 -1
- package/dist/services/UserMemoryService.js +9 -4
- package/dist/services/UserMemoryService.js.map +1 -1
- package/dist/services/ValidationAnalyticsService.d.ts +4 -0
- package/dist/services/ValidationAnalyticsService.d.ts.map +1 -1
- package/dist/services/ValidationAnalyticsService.js +30 -8
- package/dist/services/ValidationAnalyticsService.js.map +1 -1
- package/dist/services/ValidationCacheService.d.ts +3 -1
- package/dist/services/ValidationCacheService.d.ts.map +1 -1
- package/dist/services/ValidationCacheService.js +25 -4
- package/dist/services/ValidationCacheService.js.map +1 -1
- package/dist/services/ValidationMiddleware.d.ts +7 -0
- package/dist/services/ValidationMiddleware.d.ts.map +1 -1
- package/dist/services/ValidationMiddleware.js +53 -10
- package/dist/services/ValidationMiddleware.js.map +1 -1
- package/dist/services/ValidationPerformanceService.d.ts +3 -0
- package/dist/services/ValidationPerformanceService.d.ts.map +1 -1
- package/dist/services/ValidationPerformanceService.js +28 -11
- package/dist/services/ValidationPerformanceService.js.map +1 -1
- package/dist/services/WebSearchService.d.ts.map +1 -1
- package/dist/services/WebSearchService.js +9 -0
- package/dist/services/WebSearchService.js.map +1 -1
- package/dist/services/dag/TaskDagService.d.ts +3 -0
- package/dist/services/dag/TaskDagService.d.ts.map +1 -1
- package/dist/services/dag/TaskDagService.js +18 -0
- package/dist/services/dag/TaskDagService.js.map +1 -1
- package/dist/services/kg/EntityQValueManager.d.ts +3 -1
- package/dist/services/kg/EntityQValueManager.d.ts.map +1 -1
- package/dist/services/kg/EntityQValueManager.js +10 -10
- package/dist/services/kg/EntityQValueManager.js.map +1 -1
- package/dist/services/kg/GraphSurpriseCalculator.d.ts +0 -4
- package/dist/services/kg/GraphSurpriseCalculator.d.ts.map +1 -1
- package/dist/services/kg/GraphSurpriseCalculator.js +0 -9
- package/dist/services/kg/GraphSurpriseCalculator.js.map +1 -1
- package/dist/services/kg/KnowledgeGraphService.d.ts +12 -12
- package/dist/services/kg/KnowledgeGraphService.d.ts.map +1 -1
- package/dist/services/kg/KnowledgeGraphService.js +43 -51
- package/dist/services/kg/KnowledgeGraphService.js.map +1 -1
- package/dist/services/kg/OrparGraphIntegration.d.ts.map +1 -1
- package/dist/services/kg/OrparGraphIntegration.js +6 -5
- package/dist/services/kg/OrparGraphIntegration.js.map +1 -1
- package/dist/services/orpar-memory/CycleConsolidationTrigger.d.ts +1 -0
- package/dist/services/orpar-memory/CycleConsolidationTrigger.d.ts.map +1 -1
- package/dist/services/orpar-memory/CycleConsolidationTrigger.js +8 -1
- package/dist/services/orpar-memory/CycleConsolidationTrigger.js.map +1 -1
- package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts +8 -1
- package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts.map +1 -1
- package/dist/services/orpar-memory/OrparMemoryCoordinator.js +93 -45
- package/dist/services/orpar-memory/OrparMemoryCoordinator.js.map +1 -1
- package/dist/services/orpar-memory/SurpriseOrparAdapter.d.ts +1 -0
- package/dist/services/orpar-memory/SurpriseOrparAdapter.d.ts.map +1 -1
- package/dist/services/orpar-memory/SurpriseOrparAdapter.js +8 -1
- package/dist/services/orpar-memory/SurpriseOrparAdapter.js.map +1 -1
- package/dist/types/ChannelContext.d.ts +2 -1
- package/dist/types/ChannelContext.d.ts.map +1 -1
- package/dist/types/EffectivenessTypes.d.ts +4 -1
- package/dist/types/EffectivenessTypes.d.ts.map +1 -1
- package/dist/types/SystemLlmStanceTypes.d.ts +123 -0
- package/dist/types/SystemLlmStanceTypes.d.ts.map +1 -0
- package/dist/types/SystemLlmStanceTypes.js +101 -0
- package/dist/types/SystemLlmStanceTypes.js.map +1 -0
- package/dist/types/TaskCompletionTypes.d.ts +7 -5
- package/dist/types/TaskCompletionTypes.d.ts.map +1 -1
- package/dist/types/TaskTypes.d.ts +8 -1
- package/dist/types/TaskTypes.d.ts.map +1 -1
- package/dist/utils/GlobMatcher.d.ts +37 -0
- package/dist/utils/GlobMatcher.d.ts.map +1 -0
- package/dist/utils/GlobMatcher.js +131 -0
- package/dist/utils/GlobMatcher.js.map +1 -0
- package/dist/utils/PromptTemplateReplacer.d.ts +5 -0
- package/dist/utils/PromptTemplateReplacer.d.ts.map +1 -1
- package/dist/utils/PromptTemplateReplacer.js +13 -0
- package/dist/utils/PromptTemplateReplacer.js.map +1 -1
- package/package.json +1 -1
- package/src/config/ConfigManager.ts +126 -1
- package/src/config/ModelContextLimits.ts +7 -1
- package/src/constants/CoreTools.ts +6 -5
- package/src/constants/DefaultPhaseProfiles.ts +29 -0
- package/src/constants/ReservedIdentities.ts +51 -0
- package/src/database/adapters/mongodb/MongoChannelRepository.ts +2 -1
- package/src/database/adapters/mongodb/MongoKnowledgeGraphRepository.ts +115 -36
- package/src/events/ClientEventBus.ts +117 -48
- package/src/events/EventBus.ts +32 -2
- package/src/events/EventBusBase.ts +132 -39
- package/src/events/EventNames.ts +43 -36
- package/src/events/PublicEvents.ts +8 -0
- package/src/events/ServerEventBus.ts +9 -128
- package/src/events/event-definitions/ConfigEvents.ts +8 -0
- package/src/events/event-definitions/ControlLoopEvents.ts +12 -0
- package/src/events/event-definitions/SdkEvents.ts +58 -0
- package/src/events/event-definitions/SystemEvents.ts +24 -0
- package/src/events/event-definitions/TaskEvents.ts +2 -2
- package/src/index.ts +15 -0
- package/src/interfaces/AgentInterfaces.ts +5 -0
- package/src/interfaces/Channel.ts +4 -0
- package/src/interfaces/ChannelConfig.ts +8 -2
- package/src/interfaces/ConversationMessage.ts +6 -0
- package/src/interfaces/IMemoryPersistence.ts +55 -1
- package/src/interfaces/SocketServiceInterface.ts +3 -2
- package/src/interfaces/TaskInterfaces.ts +16 -1
- package/src/models/agent.ts +0 -6
- package/src/models/agentIdentityReservation.ts +77 -0
- package/src/models/channel.ts +12 -0
- package/src/models/channelKey.ts +10 -0
- package/src/models/memory.ts +18 -19
- package/src/models/memoryStrata.ts +9 -23
- package/src/models/plan.ts +3 -3
- package/src/models/taskEffectiveness.ts +9 -2
- package/src/models/user.ts +12 -0
- package/src/prompts/MxfAgentSystemPrompt.ts +9 -1
- package/src/prompts/SystemLlmStanceGuidance.ts +67 -0
- package/src/protocols/mcp/LlmTestEnvironmentGuard.ts +30 -0
- package/src/protocols/mcp/McpServerTypes.ts +9 -0
- package/src/protocols/mcp/providers/AnthropicMcpClient.ts +2 -0
- package/src/protocols/mcp/providers/AzureOpenAiMcpClient.ts +1 -0
- package/src/protocols/mcp/providers/BaseMcpClient.ts +13 -0
- package/src/protocols/mcp/providers/CustomMcpClient.ts +7 -0
- package/src/protocols/mcp/providers/GeminiMcpClient.ts +2 -0
- package/src/protocols/mcp/providers/OllamaMcpClient.ts +3 -1
- package/src/protocols/mcp/providers/OpenAiMcpClient.ts +2 -0
- package/src/protocols/mcp/providers/OpenRouterMcpClient.ts +3 -0
- package/src/protocols/mcp/providers/XaiMcpClient.ts +2 -0
- package/src/protocols/mcp/security/BrowserTargetGuard.ts +64 -0
- package/src/protocols/mcp/security/ExternalMcpRegistrationPolicy.ts +38 -0
- package/src/protocols/mcp/security/HttpTargetGuard.ts +77 -6
- package/src/protocols/mcp/security/McpSecurityGuard.ts +7 -5
- package/src/protocols/mcp/security/McpToolPolicy.ts +74 -0
- package/src/protocols/mcp/services/ExternalMcpServerManager.ts +146 -17
- package/src/protocols/mcp/services/ExternalServerConfigs.ts +26 -8
- package/src/protocols/mcp/tools/AnalyticsTools.ts +167 -641
- package/src/protocols/mcp/tools/CodeAnalysisTools.ts +44 -14
- package/src/protocols/mcp/tools/EffectivenessTools.ts +185 -45
- package/src/protocols/mcp/tools/GitTools.ts +15 -5
- package/src/protocols/mcp/tools/InfrastructureTools.ts +42 -90
- package/src/protocols/mcp/tools/JsonTools.ts +7 -4
- package/src/protocols/mcp/tools/KnowledgeGraphTools.ts +313 -164
- package/src/protocols/mcp/tools/MemorySearchTools.ts +158 -46
- package/src/protocols/mcp/tools/MemoryUtilityTools.ts +85 -232
- package/src/protocols/mcp/tools/PlanningTools.ts +137 -59
- package/src/protocols/mcp/tools/ProjectContextTools.ts +33 -12
- package/src/protocols/mcp/tools/SafetyTools.ts +49 -13
- package/src/protocols/mcp/tools/SearchProjectTools.ts +294 -153
- package/src/protocols/mcp/tools/TaskPlanningTools.ts +437 -514
- package/src/protocols/mcp/tools/TestTools.ts +41 -11
- package/src/protocols/mcp/tools/TypeScriptTools.ts +61 -12
- package/src/protocols/mcp/tools/UserInputTools.ts +15 -1
- package/src/protocols/mcp/tools/UserMemoryTools.ts +27 -62
- package/src/protocols/mcp/tools/shell/ShellExecuteHandler.ts +26 -84
- package/src/protocols/mcp/tools/shell/ShellSandbox.ts +13 -31
- package/src/repositories/interfaces/IChannelRepository.ts +2 -0
- package/src/repositories/interfaces/IKnowledgeGraphRepository.ts +45 -27
- package/src/schemas/EventPayloadSchema.ts +85 -2
- package/src/services/AgentPerformanceService.ts +85 -36
- package/src/services/AutoCorrectionService.ts +25 -6
- package/src/services/BackgroundTaskManager.ts +217 -79
- package/src/services/BrowserManager.ts +20 -16
- package/src/services/ChannelContextMemoryOperations.ts +169 -202
- package/src/services/ChannelContextMessageOperations.ts +112 -274
- package/src/services/MemoryService.ts +1053 -760
- package/src/services/PatternLearningService.ts +32 -7
- package/src/services/PerformanceOptimizationService.ts +26 -9
- package/src/services/PredictiveAnalyticsService.ts +23 -10
- package/src/services/ProactiveValidationService.ts +66 -40
- package/src/services/TaskEffectivenessService.ts +421 -206
- package/src/services/ToolExecutionInterceptor.ts +40 -9
- package/src/services/UserInputRequestManager.ts +51 -6
- package/src/services/UserMemoryService.ts +12 -3
- package/src/services/ValidationAnalyticsService.ts +36 -11
- package/src/services/ValidationCacheService.ts +30 -7
- package/src/services/ValidationMiddleware.ts +62 -14
- package/src/services/ValidationPerformanceService.ts +47 -25
- package/src/services/WebSearchService.ts +16 -4
- package/src/services/dag/TaskDagService.ts +20 -1
- package/src/services/kg/EntityQValueManager.ts +21 -10
- package/src/services/kg/GraphSurpriseCalculator.ts +0 -14
- package/src/services/kg/KnowledgeGraphService.ts +56 -48
- package/src/services/kg/OrparGraphIntegration.ts +11 -5
- package/src/services/orpar-memory/CycleConsolidationTrigger.ts +10 -1
- package/src/services/orpar-memory/OrparMemoryCoordinator.ts +142 -71
- package/src/services/orpar-memory/SurpriseOrparAdapter.ts +10 -1
- package/src/types/ChannelContext.ts +3 -1
- package/src/types/EffectivenessTypes.ts +6 -2
- package/src/types/SystemLlmStanceTypes.ts +162 -0
- package/src/types/TaskCompletionTypes.ts +9 -9
- package/src/types/TaskTypes.ts +12 -1
- package/src/utils/GlobMatcher.ts +157 -0
- package/src/utils/PromptTemplateReplacer.ts +17 -0
|
@@ -62,6 +62,7 @@ export interface ChannelTask {
|
|
|
62
62
|
maxParticipants?: number;
|
|
63
63
|
coordinationMode?: 'independent' | 'collaborative' | 'sequential' | 'hierarchical';
|
|
64
64
|
leadAgentId?: AgentId;
|
|
65
|
+
completionAgentId?: AgentId;
|
|
65
66
|
agentSelectionCriteria?: {
|
|
66
67
|
minimumCapabilityMatch?: number;
|
|
67
68
|
excludeBusyAgents?: boolean;
|
|
@@ -110,6 +111,7 @@ export interface CreateTaskRequest {
|
|
|
110
111
|
maxParticipants?: number;
|
|
111
112
|
coordinationMode?: 'independent' | 'collaborative' | 'sequential' | 'hierarchical';
|
|
112
113
|
leadAgentId?: AgentId;
|
|
114
|
+
completionAgentId?: AgentId;
|
|
113
115
|
agentSelectionCriteria?: {
|
|
114
116
|
minimumCapabilityMatch?: number;
|
|
115
117
|
excludeBusyAgents?: boolean;
|
|
@@ -134,6 +136,12 @@ export interface UpdateTaskRequest {
|
|
|
134
136
|
metadata?: Record<string, any>;
|
|
135
137
|
tags?: string[];
|
|
136
138
|
}
|
|
139
|
+
/**
|
|
140
|
+
* Fields that may be changed without performing a task lifecycle transition.
|
|
141
|
+
* Status and assignment changes go through dedicated operations so actor
|
|
142
|
+
* authorization and legal-state predicates remain on the database write.
|
|
143
|
+
*/
|
|
144
|
+
export type NonLifecycleTaskUpdateRequest = Omit<UpdateTaskRequest, 'status' | 'assignedAgentId'>;
|
|
137
145
|
/**
|
|
138
146
|
* Agent assignment analysis from SystemLLM
|
|
139
147
|
*/
|
|
@@ -214,7 +222,6 @@ export interface TaskOrchestrationConfig {
|
|
|
214
222
|
taskTimeoutMinutes: number;
|
|
215
223
|
enableLlmAssignment: boolean;
|
|
216
224
|
llmConfidenceThreshold: number;
|
|
217
|
-
fallbackStrategy: AssignmentStrategy;
|
|
218
225
|
enableTaskDependencies: boolean;
|
|
219
226
|
enableLateJoinHandling: boolean;
|
|
220
227
|
preventSimultaneousStart: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskTypes.d.ts","sourceRoot":"","sources":["../../src/types/TaskTypes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEhE;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,aAAa,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;AAEvG;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEzD;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,YAAY,GAAG,mBAAmB,GAAG,kBAAkB,GAAG,QAAQ,GAAG,aAAa,GAAG,MAAM,CAAC;AAE7H;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,SAAS,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,YAAY,CAAC;IAGvB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAGhC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,EAAE,CAAC;IAC7B,eAAe,EAAE,QAAQ,GAAG,UAAU,GAAG,cAAc,CAAC;IACxD,sBAAsB,CAAC,EAAE,UAAU,GAAG,YAAY,GAAG,eAAe,CAAC;IAGrE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,eAAe,CAAC,EAAE,OAAO,EAAE,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;IAGzB,gBAAgB,CAAC,EAAE,aAAa,GAAG,eAAe,GAAG,YAAY,GAAG,cAAc,CAAC;IACnF,WAAW,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"TaskTypes.d.ts","sourceRoot":"","sources":["../../src/types/TaskTypes.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Glob matching for relative file paths without regular expressions.
|
|
3
|
+
*
|
|
4
|
+
* Supported syntax:
|
|
5
|
+
* - `*` any run of characters inside one path segment (never crosses `/`)
|
|
6
|
+
* - `?` exactly one character inside a path segment
|
|
7
|
+
* - `**` as a whole segment: zero or more whole directories. A `**` that
|
|
8
|
+
* is part of a larger segment behaves like `*`.
|
|
9
|
+
* Every other character is literal, including regex metacharacters.
|
|
10
|
+
*
|
|
11
|
+
* The matcher walks the pattern and the candidate with a single backtrack
|
|
12
|
+
* point per wildcard, so cost is bounded by pattern length × candidate
|
|
13
|
+
* length. A compiled regular expression is not used because patterns such
|
|
14
|
+
* as `*a*a*a*b` made the engine backtrack for seconds per file name, and
|
|
15
|
+
* the filesystem walk runs the matcher once per directory entry on the
|
|
16
|
+
* server's event loop.
|
|
17
|
+
*/
|
|
18
|
+
/** Upper bound on `*` runs plus `?` characters in one pattern. */
|
|
19
|
+
export declare const MAX_GLOB_WILDCARDS = 32;
|
|
20
|
+
export interface GlobMatcher {
|
|
21
|
+
/**
|
|
22
|
+
* True when the pattern contains a path separator. Such a pattern must
|
|
23
|
+
* be tested against a relative path; a pattern without one addresses a
|
|
24
|
+
* bare file name.
|
|
25
|
+
*/
|
|
26
|
+
readonly matchesPath: boolean;
|
|
27
|
+
/** Return true when `candidate` (segments separated by `/`) matches the whole pattern. */
|
|
28
|
+
test(candidate: string): boolean;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Compile a glob pattern into a matcher.
|
|
32
|
+
*
|
|
33
|
+
* @throws Error when the pattern is empty or uses more than
|
|
34
|
+
* {@link MAX_GLOB_WILDCARDS} wildcards.
|
|
35
|
+
*/
|
|
36
|
+
export declare function createGlobMatcher(pattern: string, caseSensitive: boolean): GlobMatcher;
|
|
37
|
+
//# sourceMappingURL=GlobMatcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GlobMatcher.d.ts","sourceRoot":"","sources":["../../src/utils/GlobMatcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,kEAAkE;AAClE,eAAO,MAAM,kBAAkB,KAAK,CAAC;AAErC,MAAM,WAAW,WAAW;IACxB;;;;OAIG;IACH,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,0FAA0F;IAC1F,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;CACpC;AA+FD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,GAAG,WAAW,CAyBtF"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Glob matching for relative file paths without regular expressions.
|
|
3
|
+
*
|
|
4
|
+
* Supported syntax:
|
|
5
|
+
* - `*` any run of characters inside one path segment (never crosses `/`)
|
|
6
|
+
* - `?` exactly one character inside a path segment
|
|
7
|
+
* - `**` as a whole segment: zero or more whole directories. A `**` that
|
|
8
|
+
* is part of a larger segment behaves like `*`.
|
|
9
|
+
* Every other character is literal, including regex metacharacters.
|
|
10
|
+
*
|
|
11
|
+
* The matcher walks the pattern and the candidate with a single backtrack
|
|
12
|
+
* point per wildcard, so cost is bounded by pattern length × candidate
|
|
13
|
+
* length. A compiled regular expression is not used because patterns such
|
|
14
|
+
* as `*a*a*a*b` made the engine backtrack for seconds per file name, and
|
|
15
|
+
* the filesystem walk runs the matcher once per directory entry on the
|
|
16
|
+
* server's event loop.
|
|
17
|
+
*/
|
|
18
|
+
/** Upper bound on `*` runs plus `?` characters in one pattern. */
|
|
19
|
+
export const MAX_GLOB_WILDCARDS = 32;
|
|
20
|
+
const countWildcards = (pattern) => {
|
|
21
|
+
let wildcards = 0;
|
|
22
|
+
for (let index = 0; index < pattern.length; index += 1) {
|
|
23
|
+
const character = pattern[index];
|
|
24
|
+
if (character === '?') {
|
|
25
|
+
wildcards += 1;
|
|
26
|
+
}
|
|
27
|
+
else if (character === '*' && pattern[index - 1] !== '*') {
|
|
28
|
+
wildcards += 1;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return wildcards;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* Match one path segment against a segment pattern containing `*` and `?`.
|
|
35
|
+
* Classic greedy wildcard matching with one backtrack point: O(p × t).
|
|
36
|
+
*/
|
|
37
|
+
const matchSegment = (pattern, text) => {
|
|
38
|
+
let patternIndex = 0;
|
|
39
|
+
let textIndex = 0;
|
|
40
|
+
let starIndex = -1;
|
|
41
|
+
let starTextIndex = -1;
|
|
42
|
+
while (textIndex < text.length) {
|
|
43
|
+
const patternCharacter = pattern[patternIndex];
|
|
44
|
+
if (patternIndex < pattern.length &&
|
|
45
|
+
(patternCharacter === '?' || patternCharacter === text[textIndex])) {
|
|
46
|
+
patternIndex += 1;
|
|
47
|
+
textIndex += 1;
|
|
48
|
+
}
|
|
49
|
+
else if (patternIndex < pattern.length && patternCharacter === '*') {
|
|
50
|
+
starIndex = patternIndex;
|
|
51
|
+
starTextIndex = textIndex;
|
|
52
|
+
patternIndex += 1;
|
|
53
|
+
}
|
|
54
|
+
else if (starIndex !== -1) {
|
|
55
|
+
patternIndex = starIndex + 1;
|
|
56
|
+
starTextIndex += 1;
|
|
57
|
+
textIndex = starTextIndex;
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
return false;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
while (patternIndex < pattern.length && pattern[patternIndex] === '*') {
|
|
64
|
+
patternIndex += 1;
|
|
65
|
+
}
|
|
66
|
+
return patternIndex === pattern.length;
|
|
67
|
+
};
|
|
68
|
+
/**
|
|
69
|
+
* Match path segments against pattern segments. A `globstar` pattern
|
|
70
|
+
* segment plays the role `*` plays inside a segment: it absorbs zero or
|
|
71
|
+
* more whole path segments, with one backtrack point.
|
|
72
|
+
*/
|
|
73
|
+
const matchSegments = (patternSegments, pathSegments) => {
|
|
74
|
+
let patternIndex = 0;
|
|
75
|
+
let pathIndex = 0;
|
|
76
|
+
let globstarIndex = -1;
|
|
77
|
+
let globstarPathIndex = -1;
|
|
78
|
+
while (pathIndex < pathSegments.length) {
|
|
79
|
+
const patternSegment = patternSegments[patternIndex];
|
|
80
|
+
if (patternIndex < patternSegments.length && patternSegment.kind === 'globstar') {
|
|
81
|
+
globstarIndex = patternIndex;
|
|
82
|
+
globstarPathIndex = pathIndex;
|
|
83
|
+
patternIndex += 1;
|
|
84
|
+
}
|
|
85
|
+
else if (patternIndex < patternSegments.length &&
|
|
86
|
+
patternSegment.kind === 'segment' &&
|
|
87
|
+
matchSegment(patternSegment.text, pathSegments[pathIndex])) {
|
|
88
|
+
patternIndex += 1;
|
|
89
|
+
pathIndex += 1;
|
|
90
|
+
}
|
|
91
|
+
else if (globstarIndex !== -1) {
|
|
92
|
+
patternIndex = globstarIndex + 1;
|
|
93
|
+
globstarPathIndex += 1;
|
|
94
|
+
pathIndex = globstarPathIndex;
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
return false;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
while (patternIndex < patternSegments.length &&
|
|
101
|
+
patternSegments[patternIndex].kind === 'globstar') {
|
|
102
|
+
patternIndex += 1;
|
|
103
|
+
}
|
|
104
|
+
return patternIndex === patternSegments.length;
|
|
105
|
+
};
|
|
106
|
+
/**
|
|
107
|
+
* Compile a glob pattern into a matcher.
|
|
108
|
+
*
|
|
109
|
+
* @throws Error when the pattern is empty or uses more than
|
|
110
|
+
* {@link MAX_GLOB_WILDCARDS} wildcards.
|
|
111
|
+
*/
|
|
112
|
+
export function createGlobMatcher(pattern, caseSensitive) {
|
|
113
|
+
if (typeof pattern !== 'string' || pattern.length === 0) {
|
|
114
|
+
throw new Error('Glob pattern must be a non-empty string');
|
|
115
|
+
}
|
|
116
|
+
const wildcards = countWildcards(pattern);
|
|
117
|
+
if (wildcards > MAX_GLOB_WILDCARDS) {
|
|
118
|
+
throw new Error(`Glob pattern uses ${wildcards} wildcards; at most ${MAX_GLOB_WILDCARDS} are supported`);
|
|
119
|
+
}
|
|
120
|
+
const normalizedPattern = caseSensitive ? pattern : pattern.toLowerCase();
|
|
121
|
+
const patternSegments = normalizedPattern.split('/').map(segment => (segment === '**' ? { kind: 'globstar' } : { kind: 'segment', text: segment }));
|
|
122
|
+
const matchesPath = pattern.includes('/');
|
|
123
|
+
return {
|
|
124
|
+
matchesPath,
|
|
125
|
+
test(candidate) {
|
|
126
|
+
const normalizedCandidate = caseSensitive ? candidate : candidate.toLowerCase();
|
|
127
|
+
return matchSegments(patternSegments, normalizedCandidate.split('/'));
|
|
128
|
+
}
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=GlobMatcher.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GlobMatcher.js","sourceRoot":"","sources":["../../src/utils/GlobMatcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,7 +30,9 @@
|
|
|
30
30
|
* - {{ISO_TIMESTAMP}}: Current ISO 8601 timestamp
|
|
31
31
|
* - {{AGENT_ID}}: Agent ID (context-based)
|
|
32
32
|
* - {{CHANNEL_ID}}: Channel ID (context-based)
|
|
33
|
+
* - {{SYSTEM_LLM_STANCE}} / {{SYSTEM_LLM_STANCE_GUIDANCE}}: the channel's SystemLLM stance and what it means for the agent
|
|
33
34
|
*/
|
|
35
|
+
import { type SystemLlmStance } from '../types/SystemLlmStanceTypes.js';
|
|
34
36
|
/**
|
|
35
37
|
* Available prompt templates as constants
|
|
36
38
|
* Export these for use in prompt builders
|
|
@@ -51,6 +53,8 @@ export declare const PROMPT_TEMPLATES: {
|
|
|
51
53
|
readonly LLM_PROVIDER: "{{LLM_PROVIDER}}";
|
|
52
54
|
readonly LLM_MODEL: "{{LLM_MODEL}}";
|
|
53
55
|
readonly SYSTEM_LLM_STATUS: "{{SYSTEM_LLM_STATUS}}";
|
|
56
|
+
readonly SYSTEM_LLM_STANCE: "{{SYSTEM_LLM_STANCE}}";
|
|
57
|
+
readonly SYSTEM_LLM_STANCE_GUIDANCE: "{{SYSTEM_LLM_STANCE_GUIDANCE}}";
|
|
54
58
|
readonly OS_PLATFORM: "{{OS_PLATFORM}}";
|
|
55
59
|
readonly CURRENT_ORPAR_PHASE: "{{CURRENT_ORPAR_PHASE}}";
|
|
56
60
|
readonly CURRENT_ORPAR_PHASE_GUIDANCE: "{{CURRENT_ORPAR_PHASE_GUIDANCE}}";
|
|
@@ -71,6 +75,7 @@ export interface TemplateContext {
|
|
|
71
75
|
llmProvider?: string;
|
|
72
76
|
llmModel?: string;
|
|
73
77
|
systemLlmEnabled?: boolean;
|
|
78
|
+
systemLlmStance?: SystemLlmStance;
|
|
74
79
|
currentOrparPhase?: 'Observe' | 'Reason' | 'Plan' | 'Act' | 'Reflect' | null;
|
|
75
80
|
currentTaskId?: string;
|
|
76
81
|
currentTaskTitle?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PromptTemplateReplacer.d.ts","sourceRoot":"","sources":["../../src/utils/PromptTemplateReplacer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH
|
|
1
|
+
{"version":3,"file":"PromptTemplateReplacer.d.ts","sourceRoot":"","sources":["../../src/utils/PromptTemplateReplacer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAA4B,KAAK,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAGlG;;;GAGG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;CAoCnB,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,eAAe;IAE5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAG5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAGlB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,eAAe,CAAC,EAAE,eAAe,CAAC;IAGlC,iBAAiB,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,SAAS,GAAG,IAAI,CAAC;IAG7E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAG7B,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC;AAED;;GAEG;AACH,qBAAa,sBAAsB;IAC/B;;;;;;OAMG;WACW,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,MAAM;IAgBjF;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,wBAAwB;IAwCvC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,uBAAuB;IAkGtC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa;IAgB5B;;OAEG;WACW,wBAAwB,IAAI;QACtC,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,EAAE,MAAM,CAAC;KACtB;CA6BJ"}
|
|
@@ -30,7 +30,10 @@
|
|
|
30
30
|
* - {{ISO_TIMESTAMP}}: Current ISO 8601 timestamp
|
|
31
31
|
* - {{AGENT_ID}}: Agent ID (context-based)
|
|
32
32
|
* - {{CHANNEL_ID}}: Channel ID (context-based)
|
|
33
|
+
* - {{SYSTEM_LLM_STANCE}} / {{SYSTEM_LLM_STANCE_GUIDANCE}}: the channel's SystemLLM stance and what it means for the agent
|
|
33
34
|
*/
|
|
35
|
+
import { DEFAULT_SYSTEMLLM_STANCE } from '../types/SystemLlmStanceTypes.js';
|
|
36
|
+
import { buildSystemLlmStanceGuidance } from '../prompts/SystemLlmStanceGuidance.js';
|
|
34
37
|
/**
|
|
35
38
|
* Available prompt templates as constants
|
|
36
39
|
* Export these for use in prompt builders
|
|
@@ -55,6 +58,8 @@ export const PROMPT_TEMPLATES = {
|
|
|
55
58
|
LLM_PROVIDER: '{{LLM_PROVIDER}}',
|
|
56
59
|
LLM_MODEL: '{{LLM_MODEL}}',
|
|
57
60
|
SYSTEM_LLM_STATUS: '{{SYSTEM_LLM_STATUS}}',
|
|
61
|
+
SYSTEM_LLM_STANCE: '{{SYSTEM_LLM_STANCE}}',
|
|
62
|
+
SYSTEM_LLM_STANCE_GUIDANCE: '{{SYSTEM_LLM_STANCE_GUIDANCE}}',
|
|
58
63
|
OS_PLATFORM: '{{OS_PLATFORM}}',
|
|
59
64
|
// Control loop state
|
|
60
65
|
CURRENT_ORPAR_PHASE: '{{CURRENT_ORPAR_PHASE}}',
|
|
@@ -165,6 +170,14 @@ export class PromptTemplateReplacer {
|
|
|
165
170
|
const statusStr = context.systemLlmEnabled ? 'Enabled' : 'Disabled';
|
|
166
171
|
result = result.replace(/\{\{SYSTEM_LLM_STATUS\}\}/g, statusStr);
|
|
167
172
|
}
|
|
173
|
+
// Replace the SystemLLM stance and its guidance. Always replaced: an
|
|
174
|
+
// agent that does not know the stance is told the supportive one, which
|
|
175
|
+
// is the stance a server that never sends one is running.
|
|
176
|
+
const stance = context.systemLlmStance ?? DEFAULT_SYSTEMLLM_STANCE;
|
|
177
|
+
const stanceGuidance = buildSystemLlmStanceGuidance(stance);
|
|
178
|
+
result = result.replace(/\{\{SYSTEM_LLM_STANCE\}\}/g, stance);
|
|
179
|
+
// Function replacer: the guidance is prose and must not be parsed for `$` patterns.
|
|
180
|
+
result = result.replace(/\{\{SYSTEM_LLM_STANCE_GUIDANCE\}\}/g, () => stanceGuidance);
|
|
168
181
|
// Replace ORPAR phase - always replace to avoid leftover template markers
|
|
169
182
|
// When phase is null, show "(Not in active cycle)" to indicate ORPAR is available but not running
|
|
170
183
|
const orparPhaseValue = context.currentOrparPhase || '(Not in active cycle)';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PromptTemplateReplacer.js","sourceRoot":"","sources":["../../src/utils/PromptTemplateReplacer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH
|
|
1
|
+
{"version":3,"file":"PromptTemplateReplacer.js","sourceRoot":"","sources":["../../src/utils/PromptTemplateReplacer.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -33,6 +33,12 @@ import { EventBus } from '../events/EventBus.js';
|
|
|
33
33
|
import { createBaseEventPayload } from '../schemas/EventPayloadSchema.js';
|
|
34
34
|
import { EventName } from '../events/EventNames.js';
|
|
35
35
|
import { ChannelSystemLlmChangeEvent as SharedChannelSystemLlmChangeEvent } from '../events/event-definitions/ConfigEvents.js';
|
|
36
|
+
import {
|
|
37
|
+
capStance,
|
|
38
|
+
DEFAULT_SYSTEMLLM_STANCE,
|
|
39
|
+
DEFAULT_SYSTEMLLM_STANCE_CEILING,
|
|
40
|
+
type SystemLlmStance
|
|
41
|
+
} from '../types/SystemLlmStanceTypes.js';
|
|
36
42
|
|
|
37
43
|
/**
|
|
38
44
|
* LLM model configuration
|
|
@@ -206,6 +212,18 @@ export interface SdkConfig {
|
|
|
206
212
|
reflection?: boolean;
|
|
207
213
|
coordination?: boolean;
|
|
208
214
|
};
|
|
215
|
+
|
|
216
|
+
/**
|
|
217
|
+
* Server-wide stance: how SystemLLM talks to agents (see SystemLlmStanceTypes).
|
|
218
|
+
* Set from SYSTEMLLM_STANCE at boot. Unset means supportive.
|
|
219
|
+
*/
|
|
220
|
+
stance?: SystemLlmStance;
|
|
221
|
+
|
|
222
|
+
/**
|
|
223
|
+
* Server-wide ceiling on the effective stance of every channel. Set from
|
|
224
|
+
* SYSTEMLLM_STANCE_MAX at boot. Unset means no ceiling.
|
|
225
|
+
*/
|
|
226
|
+
stanceCeiling?: SystemLlmStance;
|
|
209
227
|
};
|
|
210
228
|
|
|
211
229
|
/**
|
|
@@ -223,6 +241,8 @@ export interface SdkConfig {
|
|
|
223
241
|
reflection?: boolean;
|
|
224
242
|
coordination?: boolean;
|
|
225
243
|
};
|
|
244
|
+
/** Channel stance; unset means inherit the server-wide stance. */
|
|
245
|
+
stance?: SystemLlmStance;
|
|
226
246
|
}>;
|
|
227
247
|
|
|
228
248
|
/**
|
|
@@ -677,6 +697,33 @@ export interface IConfigManager {
|
|
|
677
697
|
* @param channelId - Optional channel ID (if not provided, sets global)
|
|
678
698
|
*/
|
|
679
699
|
setChannelSystemLlmOperationOverride(operation: string, enabled: boolean, channelId?: string): Observable<boolean>;
|
|
700
|
+
|
|
701
|
+
/**
|
|
702
|
+
* Effective SystemLLM stance for a channel: the channel's own stance when it
|
|
703
|
+
* has one, otherwise the server-wide stance, otherwise supportive.
|
|
704
|
+
* @param channelId - Optional channel ID (if not provided, returns the server-wide stance)
|
|
705
|
+
*/
|
|
706
|
+
getChannelSystemLlmStance(channelId?: string): SystemLlmStance;
|
|
707
|
+
|
|
708
|
+
/**
|
|
709
|
+
* Set the SystemLLM stance
|
|
710
|
+
* @param stance - The stance
|
|
711
|
+
* @param channelId - Optional channel ID (if not provided, sets the server-wide stance)
|
|
712
|
+
*/
|
|
713
|
+
setChannelSystemLlmStance(stance: SystemLlmStance, channelId?: string): Observable<boolean>;
|
|
714
|
+
|
|
715
|
+
/**
|
|
716
|
+
* Remove a channel's own stance so it inherits the server-wide one again.
|
|
717
|
+
* @param channelId - Channel ID
|
|
718
|
+
*/
|
|
719
|
+
clearChannelSystemLlmStance(channelId: string): void;
|
|
720
|
+
|
|
721
|
+
/**
|
|
722
|
+
* Set the server-wide ceiling on the effective stance. Channel stances above
|
|
723
|
+
* it resolve to it.
|
|
724
|
+
* @param ceiling - The most adversarial stance any channel may reach
|
|
725
|
+
*/
|
|
726
|
+
setChannelSystemLlmStanceCeiling(ceiling: SystemLlmStance): void;
|
|
680
727
|
}
|
|
681
728
|
|
|
682
729
|
/**
|
|
@@ -1262,6 +1309,76 @@ export class ConfigManager implements IConfigManager {
|
|
|
1262
1309
|
return from(Promise.resolve(true));
|
|
1263
1310
|
}
|
|
1264
1311
|
|
|
1312
|
+
/**
|
|
1313
|
+
* Effective SystemLLM stance for a channel.
|
|
1314
|
+
*
|
|
1315
|
+
* A channel entry without a stance inherits the server-wide one: unlike the
|
|
1316
|
+
* enabled flag, a channel-specific entry does not shadow the global value
|
|
1317
|
+
* unless it names a stance of its own.
|
|
1318
|
+
*/
|
|
1319
|
+
public getChannelSystemLlmStance(channelId?: string): SystemLlmStance {
|
|
1320
|
+
const ceiling = this.config.channelSystemLlm.stanceCeiling ?? DEFAULT_SYSTEMLLM_STANCE_CEILING;
|
|
1321
|
+
if (channelId && this.config.channelSystemLlmById) {
|
|
1322
|
+
const channelStance = this.config.channelSystemLlmById.get(channelId)?.stance;
|
|
1323
|
+
if (channelStance) {
|
|
1324
|
+
return capStance(channelStance, ceiling);
|
|
1325
|
+
}
|
|
1326
|
+
}
|
|
1327
|
+
return capStance(this.config.channelSystemLlm.stance ?? DEFAULT_SYSTEMLLM_STANCE, ceiling);
|
|
1328
|
+
}
|
|
1329
|
+
|
|
1330
|
+
/**
|
|
1331
|
+
* Set the server-wide ceiling. Installed once at boot from
|
|
1332
|
+
* SYSTEMLLM_STANCE_MAX; it is read on every stance resolution, so it
|
|
1333
|
+
* applies to channels loaded before and after it is set.
|
|
1334
|
+
*/
|
|
1335
|
+
public setChannelSystemLlmStanceCeiling(ceiling: SystemLlmStance): void {
|
|
1336
|
+
this.config.channelSystemLlm.stanceCeiling = ceiling;
|
|
1337
|
+
}
|
|
1338
|
+
|
|
1339
|
+
/**
|
|
1340
|
+
* Set the SystemLLM stance, server-wide or for one channel.
|
|
1341
|
+
*/
|
|
1342
|
+
public setChannelSystemLlmStance(stance: SystemLlmStance, channelId?: string): Observable<boolean> {
|
|
1343
|
+
let enabled: boolean;
|
|
1344
|
+
let operationOverrides: Record<string, boolean> | undefined;
|
|
1345
|
+
|
|
1346
|
+
if (channelId) {
|
|
1347
|
+
if (!this.config.channelSystemLlmById) {
|
|
1348
|
+
this.config.channelSystemLlmById = new Map();
|
|
1349
|
+
}
|
|
1350
|
+
const existingConfig = this.config.channelSystemLlmById.get(channelId) || { enabled: true };
|
|
1351
|
+
existingConfig.stance = stance;
|
|
1352
|
+
this.config.channelSystemLlmById.set(channelId, existingConfig);
|
|
1353
|
+
enabled = existingConfig.enabled;
|
|
1354
|
+
operationOverrides = existingConfig.operationOverrides;
|
|
1355
|
+
} else {
|
|
1356
|
+
this.config.channelSystemLlm.stance = stance;
|
|
1357
|
+
enabled = this.config.channelSystemLlm.enabled;
|
|
1358
|
+
operationOverrides = this.config.channelSystemLlm.operationOverrides;
|
|
1359
|
+
}
|
|
1360
|
+
|
|
1361
|
+
this.emitChannelSystemLlmChanged(enabled, undefined, operationOverrides, channelId, stance);
|
|
1362
|
+
this.emitConfigUpdated(['channelSystemLlm']);
|
|
1363
|
+
|
|
1364
|
+
return from(Promise.resolve(true));
|
|
1365
|
+
}
|
|
1366
|
+
|
|
1367
|
+
/**
|
|
1368
|
+
* Remove a channel's own stance so it inherits the server-wide one again.
|
|
1369
|
+
*
|
|
1370
|
+
* Called when a channel document is loaded without a stance, which happens
|
|
1371
|
+
* on every channel load. Deliberately emits nothing: it restores the
|
|
1372
|
+
* default rather than announcing a change, and the load path already emits
|
|
1373
|
+
* one CHANNEL_SYSTEM_LLM_CHANGED through setChannelSystemLlmEnabled.
|
|
1374
|
+
*/
|
|
1375
|
+
public clearChannelSystemLlmStance(channelId: string): void {
|
|
1376
|
+
const existingConfig = this.config.channelSystemLlmById?.get(channelId);
|
|
1377
|
+
if (existingConfig && existingConfig.stance !== undefined) {
|
|
1378
|
+
delete existingConfig.stance;
|
|
1379
|
+
}
|
|
1380
|
+
}
|
|
1381
|
+
|
|
1265
1382
|
/**
|
|
1266
1383
|
* Merge configurations
|
|
1267
1384
|
* @param baseConfig - Base configuration
|
|
@@ -1412,14 +1529,22 @@ export class ConfigManager implements IConfigManager {
|
|
|
1412
1529
|
* @param reason - Optional reason for the change
|
|
1413
1530
|
* @param operationOverrides - Optional operation-specific overrides
|
|
1414
1531
|
* @param channelId - Optional channel ID for channel-specific changes
|
|
1532
|
+
* @param stance - Stance after the change, when the change set one
|
|
1415
1533
|
* @private
|
|
1416
1534
|
*/
|
|
1417
|
-
private emitChannelSystemLlmChanged(
|
|
1535
|
+
private emitChannelSystemLlmChanged(
|
|
1536
|
+
enabled: boolean,
|
|
1537
|
+
reason?: string,
|
|
1538
|
+
operationOverrides?: Record<string, boolean>,
|
|
1539
|
+
channelId?: string,
|
|
1540
|
+
stance?: SystemLlmStance
|
|
1541
|
+
): void {
|
|
1418
1542
|
const data: ChannelSystemLlmChangeEvent = {
|
|
1419
1543
|
enabled,
|
|
1420
1544
|
reason,
|
|
1421
1545
|
operationOverrides,
|
|
1422
1546
|
channelId,
|
|
1547
|
+
stance,
|
|
1423
1548
|
timestamp: Date.now()
|
|
1424
1549
|
};
|
|
1425
1550
|
const payload = createBaseEventPayload<ChannelSystemLlmChangeEvent>(
|
|
@@ -39,7 +39,13 @@ const DEFAULT_CONTEXT_LIMIT = 128_000;
|
|
|
39
39
|
* then walks prefixes so "claude-3.5-sonnet-20241022" matches "claude-3.5-sonnet".
|
|
40
40
|
*/
|
|
41
41
|
const MODEL_CONTEXT_LIMITS: Record<string, number> = {
|
|
42
|
-
// Claude models
|
|
42
|
+
// Claude models. The `-latest` rows are OpenRouter's `~anthropic/...-latest`
|
|
43
|
+
// aliases, which resolve to the newest model in each family. Windows are
|
|
44
|
+
// as OpenRouter listed them on 2026-08-21; they move with each release.
|
|
45
|
+
'claude-fable-latest': 1_000_000,
|
|
46
|
+
'claude-opus-latest': 1_000_000,
|
|
47
|
+
'claude-sonnet-latest': 1_000_000,
|
|
48
|
+
'claude-haiku-latest': 200_000,
|
|
43
49
|
'claude-opus-4': 200_000,
|
|
44
50
|
'claude-sonnet-4': 200_000,
|
|
45
51
|
'claude-3.5-sonnet': 200_000,
|
|
@@ -19,18 +19,19 @@
|
|
|
19
19
|
*/
|
|
20
20
|
|
|
21
21
|
/**
|
|
22
|
-
* Core MXF Tools - Essential tools
|
|
22
|
+
* Core MXF Tools - Essential tools available when allowedTools is omitted
|
|
23
23
|
*
|
|
24
24
|
* These tools provide a curated selection that demonstrates the MXF ecosystem
|
|
25
25
|
* without overwhelming agents with all 180+ available tools.
|
|
26
26
|
*
|
|
27
|
-
* IMPORTANT: allowedTools always takes priority
|
|
28
|
-
*
|
|
27
|
+
* IMPORTANT: allowedTools always takes priority when specified. An explicit
|
|
28
|
+
* empty array denies every tool; this core set is used only when the policy is
|
|
29
|
+
* undefined.
|
|
29
30
|
*/
|
|
30
31
|
|
|
31
32
|
/**
|
|
32
|
-
* Essential core MXF tools
|
|
33
|
-
*
|
|
33
|
+
* Essential core MXF tools available as the fallback when allowedTools is
|
|
34
|
+
* undefined.
|
|
34
35
|
*/
|
|
35
36
|
export const CORE_MXF_TOOLS = [
|
|
36
37
|
// Meta-discovery tools (most important - gateway to other tools)
|
|
@@ -560,6 +560,13 @@ export const MODEL_COST_ESTIMATES: Record<string, ParameterCostEstimate> = {
|
|
|
560
560
|
outputCostPer1k: 0.00125,
|
|
561
561
|
tier: 'budget'
|
|
562
562
|
},
|
|
563
|
+
// OpenRouter `~anthropic/...-latest` aliases resolve to the newest model in
|
|
564
|
+
// each family; these rows carry the family's current rate.
|
|
565
|
+
'~anthropic/claude-haiku-latest': {
|
|
566
|
+
inputCostPer1k: 0.00100,
|
|
567
|
+
outputCostPer1k: 0.00500,
|
|
568
|
+
tier: 'budget'
|
|
569
|
+
},
|
|
563
570
|
|
|
564
571
|
// Standard tier (under $5.00/1M tokens)
|
|
565
572
|
'google/gemini-2.5-pro': {
|
|
@@ -582,6 +589,12 @@ export const MODEL_COST_ESTIMATES: Record<string, ParameterCostEstimate> = {
|
|
|
582
589
|
reasoningCostPer1k: 0.01500,
|
|
583
590
|
tier: 'premium'
|
|
584
591
|
},
|
|
592
|
+
'~anthropic/claude-sonnet-latest': {
|
|
593
|
+
inputCostPer1k: 0.00200,
|
|
594
|
+
outputCostPer1k: 0.01000,
|
|
595
|
+
reasoningCostPer1k: 0.01000,
|
|
596
|
+
tier: 'premium'
|
|
597
|
+
},
|
|
585
598
|
'openai/gpt-4.1': {
|
|
586
599
|
inputCostPer1k: 0.00250,
|
|
587
600
|
outputCostPer1k: 0.01000,
|
|
@@ -595,6 +608,22 @@ export const MODEL_COST_ESTIMATES: Record<string, ParameterCostEstimate> = {
|
|
|
595
608
|
outputCostPer1k: 0.07500,
|
|
596
609
|
reasoningCostPer1k: 0.07500,
|
|
597
610
|
tier: 'ultra_premium'
|
|
611
|
+
},
|
|
612
|
+
// The `~anthropic/...-latest` alias rows carry the rates OpenRouter listed
|
|
613
|
+
// for them on 2026-08-21 (USD per 1k tokens); they move with each release.
|
|
614
|
+
'~anthropic/claude-opus-latest': {
|
|
615
|
+
inputCostPer1k: 0.00500,
|
|
616
|
+
outputCostPer1k: 0.02500,
|
|
617
|
+
reasoningCostPer1k: 0.02500,
|
|
618
|
+
tier: 'ultra_premium'
|
|
619
|
+
},
|
|
620
|
+
// Listed so a configured fable model is priced; nothing in the framework,
|
|
621
|
+
// demos, or tests selects it.
|
|
622
|
+
'~anthropic/claude-fable-latest': {
|
|
623
|
+
inputCostPer1k: 0.01000,
|
|
624
|
+
outputCostPer1k: 0.05000,
|
|
625
|
+
reasoningCostPer1k: 0.05000,
|
|
626
|
+
tier: 'ultra_premium'
|
|
598
627
|
}
|
|
599
628
|
};
|
|
600
629
|
|