@nexus-cortex/core 4.26.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/LICENSE +202 -0
- package/NOTICE +2 -0
- package/README.md +13 -0
- package/dist/adapters/AdapterRegistry.d.ts +118 -0
- package/dist/adapters/AdapterRegistry.d.ts.map +1 -0
- package/dist/adapters/AdapterRegistry.js +195 -0
- package/dist/adapters/AdapterRegistry.js.map +1 -0
- package/dist/adapters/ChatCompletionsAPIAdapter.d.ts +254 -0
- package/dist/adapters/ChatCompletionsAPIAdapter.d.ts.map +1 -0
- package/dist/adapters/ChatCompletionsAPIAdapter.js +531 -0
- package/dist/adapters/ChatCompletionsAPIAdapter.js.map +1 -0
- package/dist/adapters/FormatAdapter.interface.d.ts +66 -0
- package/dist/adapters/FormatAdapter.interface.d.ts.map +1 -0
- package/dist/adapters/FormatAdapter.interface.js +89 -0
- package/dist/adapters/FormatAdapter.interface.js.map +1 -0
- package/dist/adapters/GatewayTranslationLayer.d.ts +222 -0
- package/dist/adapters/GatewayTranslationLayer.d.ts.map +1 -0
- package/dist/adapters/GatewayTranslationLayer.js +679 -0
- package/dist/adapters/GatewayTranslationLayer.js.map +1 -0
- package/dist/adapters/GenerateContentAPIAdapter.d.ts +240 -0
- package/dist/adapters/GenerateContentAPIAdapter.d.ts.map +1 -0
- package/dist/adapters/GenerateContentAPIAdapter.js +489 -0
- package/dist/adapters/GenerateContentAPIAdapter.js.map +1 -0
- package/dist/adapters/GoogleGenAPIAdapter.d.ts +217 -0
- package/dist/adapters/GoogleGenAPIAdapter.d.ts.map +1 -0
- package/dist/adapters/GoogleGenAPIAdapter.js +310 -0
- package/dist/adapters/GoogleGenAPIAdapter.js.map +1 -0
- package/dist/adapters/MessagesAPIAdapter.d.ts +280 -0
- package/dist/adapters/MessagesAPIAdapter.d.ts.map +1 -0
- package/dist/adapters/MessagesAPIAdapter.js +586 -0
- package/dist/adapters/MessagesAPIAdapter.js.map +1 -0
- package/dist/adapters/ResponsesAPIAdapter.d.ts +323 -0
- package/dist/adapters/ResponsesAPIAdapter.d.ts.map +1 -0
- package/dist/adapters/ResponsesAPIAdapter.js +584 -0
- package/dist/adapters/ResponsesAPIAdapter.js.map +1 -0
- package/dist/adapters/ServerSideToolDetection.d.ts +105 -0
- package/dist/adapters/ServerSideToolDetection.d.ts.map +1 -0
- package/dist/adapters/ServerSideToolDetection.js +249 -0
- package/dist/adapters/ServerSideToolDetection.js.map +1 -0
- package/dist/adapters/ToolNamingHandler.d.ts +129 -0
- package/dist/adapters/ToolNamingHandler.d.ts.map +1 -0
- package/dist/adapters/ToolNamingHandler.js +227 -0
- package/dist/adapters/ToolNamingHandler.js.map +1 -0
- package/dist/adapters/index.d.ts +19 -0
- package/dist/adapters/index.d.ts.map +1 -0
- package/dist/adapters/index.js +23 -0
- package/dist/adapters/index.js.map +1 -0
- package/dist/adapters/node/NodeConfigProvider.d.ts +19 -0
- package/dist/adapters/node/NodeConfigProvider.d.ts.map +1 -0
- package/dist/adapters/node/NodeConfigProvider.js +37 -0
- package/dist/adapters/node/NodeConfigProvider.js.map +1 -0
- package/dist/adapters/node/NodeHistoryStoreAdapter.d.ts +26 -0
- package/dist/adapters/node/NodeHistoryStoreAdapter.d.ts.map +1 -0
- package/dist/adapters/node/NodeHistoryStoreAdapter.js +61 -0
- package/dist/adapters/node/NodeHistoryStoreAdapter.js.map +1 -0
- package/dist/adapters/node/NodePermissionAdapter.d.ts +21 -0
- package/dist/adapters/node/NodePermissionAdapter.d.ts.map +1 -0
- package/dist/adapters/node/NodePermissionAdapter.js +39 -0
- package/dist/adapters/node/NodePermissionAdapter.js.map +1 -0
- package/dist/adapters/node/NodeToolExecutorAdapter.d.ts +22 -0
- package/dist/adapters/node/NodeToolExecutorAdapter.d.ts.map +1 -0
- package/dist/adapters/node/NodeToolExecutorAdapter.js +33 -0
- package/dist/adapters/node/NodeToolExecutorAdapter.js.map +1 -0
- package/dist/adapters/node/index.d.ts +18 -0
- package/dist/adapters/node/index.d.ts.map +1 -0
- package/dist/adapters/node/index.js +18 -0
- package/dist/adapters/node/index.js.map +1 -0
- package/dist/agents/AgentStore.d.ts +172 -0
- package/dist/agents/AgentStore.d.ts.map +1 -0
- package/dist/agents/AgentStore.js +649 -0
- package/dist/agents/AgentStore.js.map +1 -0
- package/dist/agents/index.d.ts +9 -0
- package/dist/agents/index.d.ts.map +1 -0
- package/dist/agents/index.js +8 -0
- package/dist/agents/index.js.map +1 -0
- package/dist/agents/projectRoot.d.ts +2 -0
- package/dist/agents/projectRoot.d.ts.map +1 -0
- package/dist/agents/projectRoot.js +37 -0
- package/dist/agents/projectRoot.js.map +1 -0
- package/dist/commands/SlashCommandCompleter.d.ts +116 -0
- package/dist/commands/SlashCommandCompleter.d.ts.map +1 -0
- package/dist/commands/SlashCommandCompleter.js +321 -0
- package/dist/commands/SlashCommandCompleter.js.map +1 -0
- package/dist/commands/SlashCommandParser.d.ts +139 -0
- package/dist/commands/SlashCommandParser.d.ts.map +1 -0
- package/dist/commands/SlashCommandParser.js +338 -0
- package/dist/commands/SlashCommandParser.js.map +1 -0
- package/dist/commands/SlashCommandRegistry.d.ts +92 -0
- package/dist/commands/SlashCommandRegistry.d.ts.map +1 -0
- package/dist/commands/SlashCommandRegistry.js +983 -0
- package/dist/commands/SlashCommandRegistry.js.map +1 -0
- package/dist/commands/index.d.ts +13 -0
- package/dist/commands/index.d.ts.map +1 -0
- package/dist/commands/index.js +15 -0
- package/dist/commands/index.js.map +1 -0
- package/dist/commands/types.d.ts +154 -0
- package/dist/commands/types.d.ts.map +1 -0
- package/dist/commands/types.js +10 -0
- package/dist/commands/types.js.map +1 -0
- package/dist/config/AnthropicCredentialService.d.ts +107 -0
- package/dist/config/AnthropicCredentialService.d.ts.map +1 -0
- package/dist/config/AnthropicCredentialService.js +209 -0
- package/dist/config/AnthropicCredentialService.js.map +1 -0
- package/dist/config/InteractiveConfigurator.d.ts +26 -0
- package/dist/config/InteractiveConfigurator.d.ts.map +1 -0
- package/dist/config/InteractiveConfigurator.js +330 -0
- package/dist/config/InteractiveConfigurator.js.map +1 -0
- package/dist/config/MentorshipConfigService.d.ts +90 -0
- package/dist/config/MentorshipConfigService.d.ts.map +1 -0
- package/dist/config/MentorshipConfigService.js +318 -0
- package/dist/config/MentorshipConfigService.js.map +1 -0
- package/dist/config/RuntimeConfigRegistry.d.ts +20 -0
- package/dist/config/RuntimeConfigRegistry.d.ts.map +1 -0
- package/dist/config/RuntimeConfigRegistry.js +57 -0
- package/dist/config/RuntimeConfigRegistry.js.map +1 -0
- package/dist/config/SettingsLoader.d.ts +128 -0
- package/dist/config/SettingsLoader.d.ts.map +1 -0
- package/dist/config/SettingsLoader.js +487 -0
- package/dist/config/SettingsLoader.js.map +1 -0
- package/dist/config/SettingsSchema.d.ts +219 -0
- package/dist/config/SettingsSchema.d.ts.map +1 -0
- package/dist/config/SettingsSchema.js +855 -0
- package/dist/config/SettingsSchema.js.map +1 -0
- package/dist/config/SettingsWriter.d.ts +83 -0
- package/dist/config/SettingsWriter.d.ts.map +1 -0
- package/dist/config/SettingsWriter.js +256 -0
- package/dist/config/SettingsWriter.js.map +1 -0
- package/dist/config/index.d.ts +13 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +13 -0
- package/dist/config/index.js.map +1 -0
- package/dist/conversation/ContextBudgetManager.d.ts +172 -0
- package/dist/conversation/ContextBudgetManager.d.ts.map +1 -0
- package/dist/conversation/ContextBudgetManager.js +445 -0
- package/dist/conversation/ContextBudgetManager.js.map +1 -0
- package/dist/conversation/StoredCompactionManager.d.ts +208 -0
- package/dist/conversation/StoredCompactionManager.d.ts.map +1 -0
- package/dist/conversation/StoredCompactionManager.js +314 -0
- package/dist/conversation/StoredCompactionManager.js.map +1 -0
- package/dist/conversation/SummaryTemplates.d.ts +35 -0
- package/dist/conversation/SummaryTemplates.d.ts.map +1 -0
- package/dist/conversation/SummaryTemplates.js +174 -0
- package/dist/conversation/SummaryTemplates.js.map +1 -0
- package/dist/conversation/index.d.ts +8 -0
- package/dist/conversation/index.d.ts.map +1 -0
- package/dist/conversation/index.js +8 -0
- package/dist/conversation/index.js.map +1 -0
- package/dist/file-tracking/ContentAddressableStore.d.ts +86 -0
- package/dist/file-tracking/ContentAddressableStore.d.ts.map +1 -0
- package/dist/file-tracking/ContentAddressableStore.js +187 -0
- package/dist/file-tracking/ContentAddressableStore.js.map +1 -0
- package/dist/file-tracking/FileCheckpointManager.d.ts +103 -0
- package/dist/file-tracking/FileCheckpointManager.d.ts.map +1 -0
- package/dist/file-tracking/FileCheckpointManager.js +269 -0
- package/dist/file-tracking/FileCheckpointManager.js.map +1 -0
- package/dist/file-tracking/index.d.ts +7 -0
- package/dist/file-tracking/index.d.ts.map +1 -0
- package/dist/file-tracking/index.js +7 -0
- package/dist/file-tracking/index.js.map +1 -0
- package/dist/index.d.ts +54 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +73 -0
- package/dist/index.js.map +1 -0
- package/dist/interfaces/APITransport.d.ts +120 -0
- package/dist/interfaces/APITransport.d.ts.map +1 -0
- package/dist/interfaces/APITransport.js +14 -0
- package/dist/interfaces/APITransport.js.map +1 -0
- package/dist/interfaces/ConfigProvider.d.ts +52 -0
- package/dist/interfaces/ConfigProvider.d.ts.map +1 -0
- package/dist/interfaces/ConfigProvider.js +14 -0
- package/dist/interfaces/ConfigProvider.js.map +1 -0
- package/dist/interfaces/CredentialResolver.d.ts +57 -0
- package/dist/interfaces/CredentialResolver.d.ts.map +1 -0
- package/dist/interfaces/CredentialResolver.js +13 -0
- package/dist/interfaces/CredentialResolver.js.map +1 -0
- package/dist/interfaces/HistoryStore.d.ts +108 -0
- package/dist/interfaces/HistoryStore.d.ts.map +1 -0
- package/dist/interfaces/HistoryStore.js +14 -0
- package/dist/interfaces/HistoryStore.js.map +1 -0
- package/dist/interfaces/PermissionHandler.d.ts +74 -0
- package/dist/interfaces/PermissionHandler.d.ts.map +1 -0
- package/dist/interfaces/PermissionHandler.js +13 -0
- package/dist/interfaces/PermissionHandler.js.map +1 -0
- package/dist/interfaces/ToolExecutorRegistry.d.ts +126 -0
- package/dist/interfaces/ToolExecutorRegistry.d.ts.map +1 -0
- package/dist/interfaces/ToolExecutorRegistry.js +14 -0
- package/dist/interfaces/ToolExecutorRegistry.js.map +1 -0
- package/dist/interfaces/index.d.ts +19 -0
- package/dist/interfaces/index.d.ts.map +1 -0
- package/dist/interfaces/index.js +14 -0
- package/dist/interfaces/index.js.map +1 -0
- package/dist/mcp/McpClient.d.ts +142 -0
- package/dist/mcp/McpClient.d.ts.map +1 -0
- package/dist/mcp/McpClient.js +349 -0
- package/dist/mcp/McpClient.js.map +1 -0
- package/dist/mcp/McpClientManager.d.ts +148 -0
- package/dist/mcp/McpClientManager.d.ts.map +1 -0
- package/dist/mcp/McpClientManager.js +366 -0
- package/dist/mcp/McpClientManager.js.map +1 -0
- package/dist/mcp/McpConfigManager.d.ts +125 -0
- package/dist/mcp/McpConfigManager.d.ts.map +1 -0
- package/dist/mcp/McpConfigManager.js +448 -0
- package/dist/mcp/McpConfigManager.js.map +1 -0
- package/dist/mcp/McpServerRegistry.d.ts +102 -0
- package/dist/mcp/McpServerRegistry.d.ts.map +1 -0
- package/dist/mcp/McpServerRegistry.js +281 -0
- package/dist/mcp/McpServerRegistry.js.map +1 -0
- package/dist/mcp/index.d.ts +11 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +9 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/mcp/mcpToolNamespacing.d.ts +26 -0
- package/dist/mcp/mcpToolNamespacing.d.ts.map +1 -0
- package/dist/mcp/mcpToolNamespacing.js +36 -0
- package/dist/mcp/mcpToolNamespacing.js.map +1 -0
- package/dist/mcp/test-mcp-integration.d.ts +8 -0
- package/dist/mcp/test-mcp-integration.d.ts.map +1 -0
- package/dist/mcp/test-mcp-integration.js +115 -0
- package/dist/mcp/test-mcp-integration.js.map +1 -0
- package/dist/middleware/ErrorClassificationMiddleware.d.ts +116 -0
- package/dist/middleware/ErrorClassificationMiddleware.d.ts.map +1 -0
- package/dist/middleware/ErrorClassificationMiddleware.js +225 -0
- package/dist/middleware/ErrorClassificationMiddleware.js.map +1 -0
- package/dist/middleware/HelperModelMiddleware.d.ts +337 -0
- package/dist/middleware/HelperModelMiddleware.d.ts.map +1 -0
- package/dist/middleware/HelperModelMiddleware.js +1376 -0
- package/dist/middleware/HelperModelMiddleware.js.map +1 -0
- package/dist/middleware/MentorshipMiddleware.d.ts +210 -0
- package/dist/middleware/MentorshipMiddleware.d.ts.map +1 -0
- package/dist/middleware/MentorshipMiddleware.js +427 -0
- package/dist/middleware/MentorshipMiddleware.js.map +1 -0
- package/dist/middleware/PermissionsMiddleware.d.ts +193 -0
- package/dist/middleware/PermissionsMiddleware.d.ts.map +1 -0
- package/dist/middleware/PermissionsMiddleware.js +344 -0
- package/dist/middleware/PermissionsMiddleware.js.map +1 -0
- package/dist/middleware/RetryMiddleware.d.ts +159 -0
- package/dist/middleware/RetryMiddleware.d.ts.map +1 -0
- package/dist/middleware/RetryMiddleware.js +268 -0
- package/dist/middleware/RetryMiddleware.js.map +1 -0
- package/dist/middleware/SystemMessageMiddleware.d.ts +165 -0
- package/dist/middleware/SystemMessageMiddleware.d.ts.map +1 -0
- package/dist/middleware/SystemMessageMiddleware.js +354 -0
- package/dist/middleware/SystemMessageMiddleware.js.map +1 -0
- package/dist/middleware/contracts/MiddlewareContracts.d.ts +294 -0
- package/dist/middleware/contracts/MiddlewareContracts.d.ts.map +1 -0
- package/dist/middleware/contracts/MiddlewareContracts.js +12 -0
- package/dist/middleware/contracts/MiddlewareContracts.js.map +1 -0
- package/dist/middleware/helpers/HelperMiddlewareAdapter.interface.d.ts +211 -0
- package/dist/middleware/helpers/HelperMiddlewareAdapter.interface.d.ts.map +1 -0
- package/dist/middleware/helpers/HelperMiddlewareAdapter.interface.js +211 -0
- package/dist/middleware/helpers/HelperMiddlewareAdapter.interface.js.map +1 -0
- package/dist/middleware/helpers/HelperModelMiddlewareRegistry.d.ts +106 -0
- package/dist/middleware/helpers/HelperModelMiddlewareRegistry.d.ts.map +1 -0
- package/dist/middleware/helpers/HelperModelMiddlewareRegistry.js +148 -0
- package/dist/middleware/helpers/HelperModelMiddlewareRegistry.js.map +1 -0
- package/dist/middleware/helpers/adapters/ChatCompletionsAPIHelperAdapter.d.ts +76 -0
- package/dist/middleware/helpers/adapters/ChatCompletionsAPIHelperAdapter.d.ts.map +1 -0
- package/dist/middleware/helpers/adapters/ChatCompletionsAPIHelperAdapter.js +277 -0
- package/dist/middleware/helpers/adapters/ChatCompletionsAPIHelperAdapter.js.map +1 -0
- package/dist/middleware/helpers/adapters/GenerateContentAPIHelperAdapter.d.ts +57 -0
- package/dist/middleware/helpers/adapters/GenerateContentAPIHelperAdapter.d.ts.map +1 -0
- package/dist/middleware/helpers/adapters/GenerateContentAPIHelperAdapter.js +155 -0
- package/dist/middleware/helpers/adapters/GenerateContentAPIHelperAdapter.js.map +1 -0
- package/dist/middleware/helpers/adapters/GoogleGenAPIHelperAdapter.d.ts +124 -0
- package/dist/middleware/helpers/adapters/GoogleGenAPIHelperAdapter.d.ts.map +1 -0
- package/dist/middleware/helpers/adapters/GoogleGenAPIHelperAdapter.js +276 -0
- package/dist/middleware/helpers/adapters/GoogleGenAPIHelperAdapter.js.map +1 -0
- package/dist/middleware/helpers/adapters/MessagesAPIHelperAdapter.d.ts +71 -0
- package/dist/middleware/helpers/adapters/MessagesAPIHelperAdapter.d.ts.map +1 -0
- package/dist/middleware/helpers/adapters/MessagesAPIHelperAdapter.js +264 -0
- package/dist/middleware/helpers/adapters/MessagesAPIHelperAdapter.js.map +1 -0
- package/dist/middleware/helpers/adapters/ResponsesAPIHelperAdapter.d.ts +64 -0
- package/dist/middleware/helpers/adapters/ResponsesAPIHelperAdapter.d.ts.map +1 -0
- package/dist/middleware/helpers/adapters/ResponsesAPIHelperAdapter.js +189 -0
- package/dist/middleware/helpers/adapters/ResponsesAPIHelperAdapter.js.map +1 -0
- package/dist/middleware/helpers/adapters/index.d.ts +31 -0
- package/dist/middleware/helpers/adapters/index.d.ts.map +1 -0
- package/dist/middleware/helpers/adapters/index.js +40 -0
- package/dist/middleware/helpers/adapters/index.js.map +1 -0
- package/dist/middleware/helpers/index.d.ts +10 -0
- package/dist/middleware/helpers/index.d.ts.map +1 -0
- package/dist/middleware/helpers/index.js +13 -0
- package/dist/middleware/helpers/index.js.map +1 -0
- package/dist/middleware/index.d.ts +12 -0
- package/dist/middleware/index.d.ts.map +1 -0
- package/dist/middleware/index.js +13 -0
- package/dist/middleware/index.js.map +1 -0
- package/dist/middleware/permissions/ApprovalHandler.d.ts +22 -0
- package/dist/middleware/permissions/ApprovalHandler.d.ts.map +1 -0
- package/dist/middleware/permissions/ApprovalHandler.js +27 -0
- package/dist/middleware/permissions/ApprovalHandler.js.map +1 -0
- package/dist/middleware/permissions/AutoApproveHandler.d.ts +62 -0
- package/dist/middleware/permissions/AutoApproveHandler.d.ts.map +1 -0
- package/dist/middleware/permissions/AutoApproveHandler.js +68 -0
- package/dist/middleware/permissions/AutoApproveHandler.js.map +1 -0
- package/dist/middleware/permissions/BashCommandPolicy.d.ts +134 -0
- package/dist/middleware/permissions/BashCommandPolicy.d.ts.map +1 -0
- package/dist/middleware/permissions/BashCommandPolicy.js +239 -0
- package/dist/middleware/permissions/BashCommandPolicy.js.map +1 -0
- package/dist/middleware/permissions/BlacklistPolicy.d.ts +66 -0
- package/dist/middleware/permissions/BlacklistPolicy.d.ts.map +1 -0
- package/dist/middleware/permissions/BlacklistPolicy.js +82 -0
- package/dist/middleware/permissions/BlacklistPolicy.js.map +1 -0
- package/dist/middleware/permissions/CLIApprovalHandler.d.ts +124 -0
- package/dist/middleware/permissions/CLIApprovalHandler.d.ts.map +1 -0
- package/dist/middleware/permissions/CLIApprovalHandler.js +366 -0
- package/dist/middleware/permissions/CLIApprovalHandler.js.map +1 -0
- package/dist/middleware/permissions/DefaultPolicies.d.ts +53 -0
- package/dist/middleware/permissions/DefaultPolicies.d.ts.map +1 -0
- package/dist/middleware/permissions/DefaultPolicies.js +307 -0
- package/dist/middleware/permissions/DefaultPolicies.js.map +1 -0
- package/dist/middleware/permissions/DenyAllHandler.d.ts +58 -0
- package/dist/middleware/permissions/DenyAllHandler.d.ts.map +1 -0
- package/dist/middleware/permissions/DenyAllHandler.js +59 -0
- package/dist/middleware/permissions/DenyAllHandler.js.map +1 -0
- package/dist/middleware/permissions/FileOperationPolicy.d.ts +117 -0
- package/dist/middleware/permissions/FileOperationPolicy.d.ts.map +1 -0
- package/dist/middleware/permissions/FileOperationPolicy.js +222 -0
- package/dist/middleware/permissions/FileOperationPolicy.js.map +1 -0
- package/dist/middleware/permissions/IPCApprovalHandler.d.ts +94 -0
- package/dist/middleware/permissions/IPCApprovalHandler.d.ts.map +1 -0
- package/dist/middleware/permissions/IPCApprovalHandler.js +178 -0
- package/dist/middleware/permissions/IPCApprovalHandler.js.map +1 -0
- package/dist/middleware/permissions/PermissionAuditLogger.d.ts +169 -0
- package/dist/middleware/permissions/PermissionAuditLogger.d.ts.map +1 -0
- package/dist/middleware/permissions/PermissionAuditLogger.js +267 -0
- package/dist/middleware/permissions/PermissionAuditLogger.js.map +1 -0
- package/dist/middleware/permissions/PermissionConfig.d.ts +181 -0
- package/dist/middleware/permissions/PermissionConfig.d.ts.map +1 -0
- package/dist/middleware/permissions/PermissionConfig.js +110 -0
- package/dist/middleware/permissions/PermissionConfig.js.map +1 -0
- package/dist/middleware/permissions/PermissionConfigLoader.d.ts +89 -0
- package/dist/middleware/permissions/PermissionConfigLoader.d.ts.map +1 -0
- package/dist/middleware/permissions/PermissionConfigLoader.js +296 -0
- package/dist/middleware/permissions/PermissionConfigLoader.js.map +1 -0
- package/dist/middleware/permissions/PermissionEvaluator.d.ts +111 -0
- package/dist/middleware/permissions/PermissionEvaluator.d.ts.map +1 -0
- package/dist/middleware/permissions/PermissionEvaluator.js +196 -0
- package/dist/middleware/permissions/PermissionEvaluator.js.map +1 -0
- package/dist/middleware/permissions/PermissionPolicy.d.ts +59 -0
- package/dist/middleware/permissions/PermissionPolicy.d.ts.map +1 -0
- package/dist/middleware/permissions/PermissionPolicy.js +67 -0
- package/dist/middleware/permissions/PermissionPolicy.js.map +1 -0
- package/dist/middleware/permissions/PermissionProfileStore.d.ts +77 -0
- package/dist/middleware/permissions/PermissionProfileStore.d.ts.map +1 -0
- package/dist/middleware/permissions/PermissionProfileStore.js +167 -0
- package/dist/middleware/permissions/PermissionProfileStore.js.map +1 -0
- package/dist/middleware/permissions/WhitelistPolicy.d.ts +66 -0
- package/dist/middleware/permissions/WhitelistPolicy.d.ts.map +1 -0
- package/dist/middleware/permissions/WhitelistPolicy.js +82 -0
- package/dist/middleware/permissions/WhitelistPolicy.js.map +1 -0
- package/dist/middleware/permissions/index.d.ts +40 -0
- package/dist/middleware/permissions/index.d.ts.map +1 -0
- package/dist/middleware/permissions/index.js +30 -0
- package/dist/middleware/permissions/index.js.map +1 -0
- package/dist/middleware/permissions/profilePath.d.ts +15 -0
- package/dist/middleware/permissions/profilePath.d.ts.map +1 -0
- package/dist/middleware/permissions/profilePath.js +35 -0
- package/dist/middleware/permissions/profilePath.js.map +1 -0
- package/dist/models/ModelConfig.interface.d.ts +18 -0
- package/dist/models/ModelConfig.interface.d.ts.map +1 -0
- package/dist/models/ModelConfig.interface.js +157 -0
- package/dist/models/ModelConfig.interface.js.map +1 -0
- package/dist/models/cards/anthropic/claude-3-5-haiku.d.ts +11 -0
- package/dist/models/cards/anthropic/claude-3-5-haiku.d.ts.map +1 -0
- package/dist/models/cards/anthropic/claude-3-5-haiku.js +19 -0
- package/dist/models/cards/anthropic/claude-3-5-haiku.js.map +1 -0
- package/dist/models/cards/anthropic/claude-3-5-sonnet.d.ts +11 -0
- package/dist/models/cards/anthropic/claude-3-5-sonnet.d.ts.map +1 -0
- package/dist/models/cards/anthropic/claude-3-5-sonnet.js +19 -0
- package/dist/models/cards/anthropic/claude-3-5-sonnet.js.map +1 -0
- package/dist/models/cards/anthropic/claude-3-haiku.d.ts +11 -0
- package/dist/models/cards/anthropic/claude-3-haiku.d.ts.map +1 -0
- package/dist/models/cards/anthropic/claude-3-haiku.js +19 -0
- package/dist/models/cards/anthropic/claude-3-haiku.js.map +1 -0
- package/dist/models/cards/anthropic/claude-4-5-haiku.d.ts +11 -0
- package/dist/models/cards/anthropic/claude-4-5-haiku.d.ts.map +1 -0
- package/dist/models/cards/anthropic/claude-4-5-haiku.js +26 -0
- package/dist/models/cards/anthropic/claude-4-5-haiku.js.map +1 -0
- package/dist/models/cards/anthropic/claude-fable-5.d.ts +14 -0
- package/dist/models/cards/anthropic/claude-fable-5.d.ts.map +1 -0
- package/dist/models/cards/anthropic/claude-fable-5.js +30 -0
- package/dist/models/cards/anthropic/claude-fable-5.js.map +1 -0
- package/dist/models/cards/anthropic/claude-opus-4-1.d.ts +11 -0
- package/dist/models/cards/anthropic/claude-opus-4-1.d.ts.map +1 -0
- package/dist/models/cards/anthropic/claude-opus-4-1.js +19 -0
- package/dist/models/cards/anthropic/claude-opus-4-1.js.map +1 -0
- package/dist/models/cards/anthropic/claude-opus-4-5.d.ts +11 -0
- package/dist/models/cards/anthropic/claude-opus-4-5.d.ts.map +1 -0
- package/dist/models/cards/anthropic/claude-opus-4-5.js +27 -0
- package/dist/models/cards/anthropic/claude-opus-4-5.js.map +1 -0
- package/dist/models/cards/anthropic/claude-opus-4-6.d.ts +10 -0
- package/dist/models/cards/anthropic/claude-opus-4-6.d.ts.map +1 -0
- package/dist/models/cards/anthropic/claude-opus-4-6.js +26 -0
- package/dist/models/cards/anthropic/claude-opus-4-6.js.map +1 -0
- package/dist/models/cards/anthropic/claude-opus-4-7.d.ts +10 -0
- package/dist/models/cards/anthropic/claude-opus-4-7.d.ts.map +1 -0
- package/dist/models/cards/anthropic/claude-opus-4-7.js +26 -0
- package/dist/models/cards/anthropic/claude-opus-4-7.js.map +1 -0
- package/dist/models/cards/anthropic/claude-opus-4-8.d.ts +12 -0
- package/dist/models/cards/anthropic/claude-opus-4-8.d.ts.map +1 -0
- package/dist/models/cards/anthropic/claude-opus-4-8.js +28 -0
- package/dist/models/cards/anthropic/claude-opus-4-8.js.map +1 -0
- package/dist/models/cards/anthropic/claude-sonnet-4-5.d.ts +11 -0
- package/dist/models/cards/anthropic/claude-sonnet-4-5.d.ts.map +1 -0
- package/dist/models/cards/anthropic/claude-sonnet-4-5.js +27 -0
- package/dist/models/cards/anthropic/claude-sonnet-4-5.js.map +1 -0
- package/dist/models/cards/anthropic/claude-sonnet-4-6.d.ts +10 -0
- package/dist/models/cards/anthropic/claude-sonnet-4-6.d.ts.map +1 -0
- package/dist/models/cards/anthropic/claude-sonnet-4-6.js +26 -0
- package/dist/models/cards/anthropic/claude-sonnet-4-6.js.map +1 -0
- package/dist/models/cards/anthropic/claude-sonnet-4.d.ts +11 -0
- package/dist/models/cards/anthropic/claude-sonnet-4.d.ts.map +1 -0
- package/dist/models/cards/anthropic/claude-sonnet-4.js +19 -0
- package/dist/models/cards/anthropic/claude-sonnet-4.js.map +1 -0
- package/dist/models/cards/anthropic/index.d.ts +15 -0
- package/dist/models/cards/anthropic/index.d.ts.map +1 -0
- package/dist/models/cards/anthropic/index.js +15 -0
- package/dist/models/cards/anthropic/index.js.map +1 -0
- package/dist/models/cards/cloudflare/gemma-4-26b.d.ts +3 -0
- package/dist/models/cards/cloudflare/gemma-4-26b.d.ts.map +1 -0
- package/dist/models/cards/cloudflare/gemma-4-26b.js +17 -0
- package/dist/models/cards/cloudflare/gemma-4-26b.js.map +1 -0
- package/dist/models/cards/cloudflare/glm-4-7-flash.d.ts +3 -0
- package/dist/models/cards/cloudflare/glm-4-7-flash.d.ts.map +1 -0
- package/dist/models/cards/cloudflare/glm-4-7-flash.js +18 -0
- package/dist/models/cards/cloudflare/glm-4-7-flash.js.map +1 -0
- package/dist/models/cards/cloudflare/gpt-oss-120b.d.ts +3 -0
- package/dist/models/cards/cloudflare/gpt-oss-120b.d.ts.map +1 -0
- package/dist/models/cards/cloudflare/gpt-oss-120b.js +18 -0
- package/dist/models/cards/cloudflare/gpt-oss-120b.js.map +1 -0
- package/dist/models/cards/cloudflare/gpt-oss-20b.d.ts +3 -0
- package/dist/models/cards/cloudflare/gpt-oss-20b.d.ts.map +1 -0
- package/dist/models/cards/cloudflare/gpt-oss-20b.js +18 -0
- package/dist/models/cards/cloudflare/gpt-oss-20b.js.map +1 -0
- package/dist/models/cards/cloudflare/granite-4.d.ts +3 -0
- package/dist/models/cards/cloudflare/granite-4.d.ts.map +1 -0
- package/dist/models/cards/cloudflare/granite-4.js +17 -0
- package/dist/models/cards/cloudflare/granite-4.js.map +1 -0
- package/dist/models/cards/cloudflare/index.d.ts +24 -0
- package/dist/models/cards/cloudflare/index.d.ts.map +1 -0
- package/dist/models/cards/cloudflare/index.js +24 -0
- package/dist/models/cards/cloudflare/index.js.map +1 -0
- package/dist/models/cards/cloudflare/kimi-k2-5.d.ts +3 -0
- package/dist/models/cards/cloudflare/kimi-k2-5.d.ts.map +1 -0
- package/dist/models/cards/cloudflare/kimi-k2-5.js +17 -0
- package/dist/models/cards/cloudflare/kimi-k2-5.js.map +1 -0
- package/dist/models/cards/cloudflare/kimi-k2-6.d.ts +3 -0
- package/dist/models/cards/cloudflare/kimi-k2-6.d.ts.map +1 -0
- package/dist/models/cards/cloudflare/kimi-k2-6.js +20 -0
- package/dist/models/cards/cloudflare/kimi-k2-6.js.map +1 -0
- package/dist/models/cards/cloudflare/llama-3-3-70b.d.ts +3 -0
- package/dist/models/cards/cloudflare/llama-3-3-70b.d.ts.map +1 -0
- package/dist/models/cards/cloudflare/llama-3-3-70b.js +17 -0
- package/dist/models/cards/cloudflare/llama-3-3-70b.js.map +1 -0
- package/dist/models/cards/cloudflare/llama-4-scout.d.ts +3 -0
- package/dist/models/cards/cloudflare/llama-4-scout.d.ts.map +1 -0
- package/dist/models/cards/cloudflare/llama-4-scout.js +18 -0
- package/dist/models/cards/cloudflare/llama-4-scout.js.map +1 -0
- package/dist/models/cards/cloudflare/mistral-small-3-1.d.ts +3 -0
- package/dist/models/cards/cloudflare/mistral-small-3-1.d.ts.map +1 -0
- package/dist/models/cards/cloudflare/mistral-small-3-1.js +18 -0
- package/dist/models/cards/cloudflare/mistral-small-3-1.js.map +1 -0
- package/dist/models/cards/cloudflare/nemotron-3-120b.d.ts +3 -0
- package/dist/models/cards/cloudflare/nemotron-3-120b.d.ts.map +1 -0
- package/dist/models/cards/cloudflare/nemotron-3-120b.js +16 -0
- package/dist/models/cards/cloudflare/nemotron-3-120b.js.map +1 -0
- package/dist/models/cards/cloudflare/qwen3-30b.d.ts +3 -0
- package/dist/models/cards/cloudflare/qwen3-30b.d.ts.map +1 -0
- package/dist/models/cards/cloudflare/qwen3-30b.js +17 -0
- package/dist/models/cards/cloudflare/qwen3-30b.js.map +1 -0
- package/dist/models/cards/cloudflare/qwq-32b.d.ts +3 -0
- package/dist/models/cards/cloudflare/qwq-32b.d.ts.map +1 -0
- package/dist/models/cards/cloudflare/qwq-32b.js +18 -0
- package/dist/models/cards/cloudflare/qwq-32b.js.map +1 -0
- package/dist/models/cards/deepseek/deepseek-v4-flash.d.ts +11 -0
- package/dist/models/cards/deepseek/deepseek-v4-flash.d.ts.map +1 -0
- package/dist/models/cards/deepseek/deepseek-v4-flash.js +25 -0
- package/dist/models/cards/deepseek/deepseek-v4-flash.js.map +1 -0
- package/dist/models/cards/deepseek/deepseek-v4-pro.d.ts +11 -0
- package/dist/models/cards/deepseek/deepseek-v4-pro.d.ts.map +1 -0
- package/dist/models/cards/deepseek/deepseek-v4-pro.js +25 -0
- package/dist/models/cards/deepseek/deepseek-v4-pro.js.map +1 -0
- package/dist/models/cards/deepseek/index.d.ts +22 -0
- package/dist/models/cards/deepseek/index.d.ts.map +1 -0
- package/dist/models/cards/deepseek/index.js +22 -0
- package/dist/models/cards/deepseek/index.js.map +1 -0
- package/dist/models/cards/gemma/gemma-3-12b-it.d.ts +10 -0
- package/dist/models/cards/gemma/gemma-3-12b-it.d.ts.map +1 -0
- package/dist/models/cards/gemma/gemma-3-12b-it.js +16 -0
- package/dist/models/cards/gemma/gemma-3-12b-it.js.map +1 -0
- package/dist/models/cards/gemma/gemma-3-1b-it.d.ts +10 -0
- package/dist/models/cards/gemma/gemma-3-1b-it.d.ts.map +1 -0
- package/dist/models/cards/gemma/gemma-3-1b-it.js +16 -0
- package/dist/models/cards/gemma/gemma-3-1b-it.js.map +1 -0
- package/dist/models/cards/gemma/gemma-3-27b-it.d.ts +10 -0
- package/dist/models/cards/gemma/gemma-3-27b-it.d.ts.map +1 -0
- package/dist/models/cards/gemma/gemma-3-27b-it.js +16 -0
- package/dist/models/cards/gemma/gemma-3-27b-it.js.map +1 -0
- package/dist/models/cards/gemma/gemma-3-4b-it.d.ts +10 -0
- package/dist/models/cards/gemma/gemma-3-4b-it.d.ts.map +1 -0
- package/dist/models/cards/gemma/gemma-3-4b-it.js +16 -0
- package/dist/models/cards/gemma/gemma-3-4b-it.js.map +1 -0
- package/dist/models/cards/gemma/index.d.ts +9 -0
- package/dist/models/cards/gemma/index.d.ts.map +1 -0
- package/dist/models/cards/gemma/index.js +9 -0
- package/dist/models/cards/gemma/index.js.map +1 -0
- package/dist/models/cards/glm/glm-4-5-air.d.ts +17 -0
- package/dist/models/cards/glm/glm-4-5-air.d.ts.map +1 -0
- package/dist/models/cards/glm/glm-4-5-air.js +27 -0
- package/dist/models/cards/glm/glm-4-5-air.js.map +1 -0
- package/dist/models/cards/glm/glm-4-5.d.ts +16 -0
- package/dist/models/cards/glm/glm-4-5.d.ts.map +1 -0
- package/dist/models/cards/glm/glm-4-5.js +26 -0
- package/dist/models/cards/glm/glm-4-5.js.map +1 -0
- package/dist/models/cards/glm/glm-4-6.d.ts +17 -0
- package/dist/models/cards/glm/glm-4-6.d.ts.map +1 -0
- package/dist/models/cards/glm/glm-4-6.js +27 -0
- package/dist/models/cards/glm/glm-4-6.js.map +1 -0
- package/dist/models/cards/glm/glm-4-flash.d.ts +12 -0
- package/dist/models/cards/glm/glm-4-flash.d.ts.map +1 -0
- package/dist/models/cards/glm/glm-4-flash.js +20 -0
- package/dist/models/cards/glm/glm-4-flash.js.map +1 -0
- package/dist/models/cards/glm/glm-4.d.ts +12 -0
- package/dist/models/cards/glm/glm-4.d.ts.map +1 -0
- package/dist/models/cards/glm/glm-4.js +21 -0
- package/dist/models/cards/glm/glm-4.js.map +1 -0
- package/dist/models/cards/glm/index.d.ts +13 -0
- package/dist/models/cards/glm/index.d.ts.map +1 -0
- package/dist/models/cards/glm/index.js +13 -0
- package/dist/models/cards/glm/index.js.map +1 -0
- package/dist/models/cards/google/gemini-1-5-flash.d.ts +10 -0
- package/dist/models/cards/google/gemini-1-5-flash.d.ts.map +1 -0
- package/dist/models/cards/google/gemini-1-5-flash.js +18 -0
- package/dist/models/cards/google/gemini-1-5-flash.js.map +1 -0
- package/dist/models/cards/google/gemini-1-5-pro.d.ts +10 -0
- package/dist/models/cards/google/gemini-1-5-pro.d.ts.map +1 -0
- package/dist/models/cards/google/gemini-1-5-pro.js +18 -0
- package/dist/models/cards/google/gemini-1-5-pro.js.map +1 -0
- package/dist/models/cards/google/gemini-2-0-flash-lite.d.ts +10 -0
- package/dist/models/cards/google/gemini-2-0-flash-lite.d.ts.map +1 -0
- package/dist/models/cards/google/gemini-2-0-flash-lite.js +18 -0
- package/dist/models/cards/google/gemini-2-0-flash-lite.js.map +1 -0
- package/dist/models/cards/google/gemini-2-0-flash.d.ts +10 -0
- package/dist/models/cards/google/gemini-2-0-flash.d.ts.map +1 -0
- package/dist/models/cards/google/gemini-2-0-flash.js +24 -0
- package/dist/models/cards/google/gemini-2-0-flash.js.map +1 -0
- package/dist/models/cards/google/gemini-2-5-computer-use-preview.d.ts +18 -0
- package/dist/models/cards/google/gemini-2-5-computer-use-preview.d.ts.map +1 -0
- package/dist/models/cards/google/gemini-2-5-computer-use-preview.js +26 -0
- package/dist/models/cards/google/gemini-2-5-computer-use-preview.js.map +1 -0
- package/dist/models/cards/google/gemini-2-5-flash-lite.d.ts +10 -0
- package/dist/models/cards/google/gemini-2-5-flash-lite.d.ts.map +1 -0
- package/dist/models/cards/google/gemini-2-5-flash-lite.js +18 -0
- package/dist/models/cards/google/gemini-2-5-flash-lite.js.map +1 -0
- package/dist/models/cards/google/gemini-2-5-flash-sdk.d.ts +11 -0
- package/dist/models/cards/google/gemini-2-5-flash-sdk.d.ts.map +1 -0
- package/dist/models/cards/google/gemini-2-5-flash-sdk.js +25 -0
- package/dist/models/cards/google/gemini-2-5-flash-sdk.js.map +1 -0
- package/dist/models/cards/google/gemini-2-5-flash.d.ts +10 -0
- package/dist/models/cards/google/gemini-2-5-flash.d.ts.map +1 -0
- package/dist/models/cards/google/gemini-2-5-flash.js +24 -0
- package/dist/models/cards/google/gemini-2-5-flash.js.map +1 -0
- package/dist/models/cards/google/gemini-2-5-pro.d.ts +10 -0
- package/dist/models/cards/google/gemini-2-5-pro.d.ts.map +1 -0
- package/dist/models/cards/google/gemini-2-5-pro.js +24 -0
- package/dist/models/cards/google/gemini-2-5-pro.js.map +1 -0
- package/dist/models/cards/google/gemini-3-1-flash-lite-preview.d.ts +11 -0
- package/dist/models/cards/google/gemini-3-1-flash-lite-preview.d.ts.map +1 -0
- package/dist/models/cards/google/gemini-3-1-flash-lite-preview.js +20 -0
- package/dist/models/cards/google/gemini-3-1-flash-lite-preview.js.map +1 -0
- package/dist/models/cards/google/gemini-3-1-pro-preview.d.ts +10 -0
- package/dist/models/cards/google/gemini-3-1-pro-preview.d.ts.map +1 -0
- package/dist/models/cards/google/gemini-3-1-pro-preview.js +19 -0
- package/dist/models/cards/google/gemini-3-1-pro-preview.js.map +1 -0
- package/dist/models/cards/google/gemini-3-5-flash.d.ts +10 -0
- package/dist/models/cards/google/gemini-3-5-flash.d.ts.map +1 -0
- package/dist/models/cards/google/gemini-3-5-flash.js +19 -0
- package/dist/models/cards/google/gemini-3-5-flash.js.map +1 -0
- package/dist/models/cards/google/gemini-3-flash-preview.d.ts +11 -0
- package/dist/models/cards/google/gemini-3-flash-preview.d.ts.map +1 -0
- package/dist/models/cards/google/gemini-3-flash-preview.js +20 -0
- package/dist/models/cards/google/gemini-3-flash-preview.js.map +1 -0
- package/dist/models/cards/google/gemini-3.d.ts +11 -0
- package/dist/models/cards/google/gemini-3.d.ts.map +1 -0
- package/dist/models/cards/google/gemini-3.js +20 -0
- package/dist/models/cards/google/gemini-3.js.map +1 -0
- package/dist/models/cards/google/index.d.ts +17 -0
- package/dist/models/cards/google/index.d.ts.map +1 -0
- package/dist/models/cards/google/index.js +17 -0
- package/dist/models/cards/google/index.js.map +1 -0
- package/dist/models/cards/huggingface/index.d.ts +10 -0
- package/dist/models/cards/huggingface/index.d.ts.map +1 -0
- package/dist/models/cards/huggingface/index.js +10 -0
- package/dist/models/cards/huggingface/index.js.map +1 -0
- package/dist/models/cards/huggingface/llama-3-8b-instruct.d.ts +17 -0
- package/dist/models/cards/huggingface/llama-3-8b-instruct.d.ts.map +1 -0
- package/dist/models/cards/huggingface/llama-3-8b-instruct.js +25 -0
- package/dist/models/cards/huggingface/llama-3-8b-instruct.js.map +1 -0
- package/dist/models/cards/huggingface/mistral-7b-instruct.d.ts +10 -0
- package/dist/models/cards/huggingface/mistral-7b-instruct.d.ts.map +1 -0
- package/dist/models/cards/huggingface/mistral-7b-instruct.js +18 -0
- package/dist/models/cards/huggingface/mistral-7b-instruct.js.map +1 -0
- package/dist/models/cards/local/codellama-13b-local.d.ts +19 -0
- package/dist/models/cards/local/codellama-13b-local.d.ts.map +1 -0
- package/dist/models/cards/local/codellama-13b-local.js +28 -0
- package/dist/models/cards/local/codellama-13b-local.js.map +1 -0
- package/dist/models/cards/local/index.d.ts +17 -0
- package/dist/models/cards/local/index.d.ts.map +1 -0
- package/dist/models/cards/local/index.js +17 -0
- package/dist/models/cards/local/index.js.map +1 -0
- package/dist/models/cards/local/llama-3-8b-local.d.ts +25 -0
- package/dist/models/cards/local/llama-3-8b-local.d.ts.map +1 -0
- package/dist/models/cards/local/llama-3-8b-local.js +34 -0
- package/dist/models/cards/local/llama-3-8b-local.js.map +1 -0
- package/dist/models/cards/local/mistral-7b-ollama.d.ts +18 -0
- package/dist/models/cards/local/mistral-7b-ollama.d.ts.map +1 -0
- package/dist/models/cards/local/mistral-7b-ollama.js +27 -0
- package/dist/models/cards/local/mistral-7b-ollama.js.map +1 -0
- package/dist/models/cards/mercury/index.d.ts +10 -0
- package/dist/models/cards/mercury/index.d.ts.map +1 -0
- package/dist/models/cards/mercury/index.js +10 -0
- package/dist/models/cards/mercury/index.js.map +1 -0
- package/dist/models/cards/mercury/mercury-2.d.ts +24 -0
- package/dist/models/cards/mercury/mercury-2.d.ts.map +1 -0
- package/dist/models/cards/mercury/mercury-2.js +33 -0
- package/dist/models/cards/mercury/mercury-2.js.map +1 -0
- package/dist/models/cards/minimax/index.d.ts +10 -0
- package/dist/models/cards/minimax/index.d.ts.map +1 -0
- package/dist/models/cards/minimax/index.js +10 -0
- package/dist/models/cards/minimax/index.js.map +1 -0
- package/dist/models/cards/minimax/minimax-m2-stable.d.ts +21 -0
- package/dist/models/cards/minimax/minimax-m2-stable.d.ts.map +1 -0
- package/dist/models/cards/minimax/minimax-m2-stable.js +31 -0
- package/dist/models/cards/minimax/minimax-m2-stable.js.map +1 -0
- package/dist/models/cards/minimax/minimax-m2.d.ts +20 -0
- package/dist/models/cards/minimax/minimax-m2.d.ts.map +1 -0
- package/dist/models/cards/minimax/minimax-m2.js +30 -0
- package/dist/models/cards/minimax/minimax-m2.js.map +1 -0
- package/dist/models/cards/moonshot/index.d.ts +9 -0
- package/dist/models/cards/moonshot/index.d.ts.map +1 -0
- package/dist/models/cards/moonshot/index.js +9 -0
- package/dist/models/cards/moonshot/index.js.map +1 -0
- package/dist/models/cards/moonshot/kimi-chat-128k.d.ts +10 -0
- package/dist/models/cards/moonshot/kimi-chat-128k.d.ts.map +1 -0
- package/dist/models/cards/moonshot/kimi-chat-128k.js +18 -0
- package/dist/models/cards/moonshot/kimi-chat-128k.js.map +1 -0
- package/dist/models/cards/moonshot/kimi-chat-32k.d.ts +10 -0
- package/dist/models/cards/moonshot/kimi-chat-32k.d.ts.map +1 -0
- package/dist/models/cards/moonshot/kimi-chat-32k.js +18 -0
- package/dist/models/cards/moonshot/kimi-chat-32k.js.map +1 -0
- package/dist/models/cards/moonshot/kimi-chat.d.ts +12 -0
- package/dist/models/cards/moonshot/kimi-chat.d.ts.map +1 -0
- package/dist/models/cards/moonshot/kimi-chat.js +20 -0
- package/dist/models/cards/moonshot/kimi-chat.js.map +1 -0
- package/dist/models/cards/moonshot/kimi-k2-instruct.d.ts +17 -0
- package/dist/models/cards/moonshot/kimi-k2-instruct.d.ts.map +1 -0
- package/dist/models/cards/moonshot/kimi-k2-instruct.js +26 -0
- package/dist/models/cards/moonshot/kimi-k2-instruct.js.map +1 -0
- package/dist/models/cards/moonshot/kimi-k2-thinking.d.ts +18 -0
- package/dist/models/cards/moonshot/kimi-k2-thinking.d.ts.map +1 -0
- package/dist/models/cards/moonshot/kimi-k2-thinking.js +27 -0
- package/dist/models/cards/moonshot/kimi-k2-thinking.js.map +1 -0
- package/dist/models/cards/openai/gpt-4-1-mini.d.ts +10 -0
- package/dist/models/cards/openai/gpt-4-1-mini.d.ts.map +1 -0
- package/dist/models/cards/openai/gpt-4-1-mini.js +18 -0
- package/dist/models/cards/openai/gpt-4-1-mini.js.map +1 -0
- package/dist/models/cards/openai/gpt-4-1-nano.d.ts +10 -0
- package/dist/models/cards/openai/gpt-4-1-nano.d.ts.map +1 -0
- package/dist/models/cards/openai/gpt-4-1-nano.js +18 -0
- package/dist/models/cards/openai/gpt-4-1-nano.js.map +1 -0
- package/dist/models/cards/openai/gpt-4-1.d.ts +10 -0
- package/dist/models/cards/openai/gpt-4-1.d.ts.map +1 -0
- package/dist/models/cards/openai/gpt-4-1.js +18 -0
- package/dist/models/cards/openai/gpt-4-1.js.map +1 -0
- package/dist/models/cards/openai/gpt-4o-mini.d.ts +10 -0
- package/dist/models/cards/openai/gpt-4o-mini.d.ts.map +1 -0
- package/dist/models/cards/openai/gpt-4o-mini.js +19 -0
- package/dist/models/cards/openai/gpt-4o-mini.js.map +1 -0
- package/dist/models/cards/openai/gpt-4o.d.ts +10 -0
- package/dist/models/cards/openai/gpt-4o.d.ts.map +1 -0
- package/dist/models/cards/openai/gpt-4o.js +19 -0
- package/dist/models/cards/openai/gpt-4o.js.map +1 -0
- package/dist/models/cards/openai/gpt-5-1-reasoning.d.ts +14 -0
- package/dist/models/cards/openai/gpt-5-1-reasoning.d.ts.map +1 -0
- package/dist/models/cards/openai/gpt-5-1-reasoning.js +29 -0
- package/dist/models/cards/openai/gpt-5-1-reasoning.js.map +1 -0
- package/dist/models/cards/openai/gpt-5-1.d.ts +11 -0
- package/dist/models/cards/openai/gpt-5-1.d.ts.map +1 -0
- package/dist/models/cards/openai/gpt-5-1.js +27 -0
- package/dist/models/cards/openai/gpt-5-1.js.map +1 -0
- package/dist/models/cards/openai/gpt-5-2.d.ts +21 -0
- package/dist/models/cards/openai/gpt-5-2.d.ts.map +1 -0
- package/dist/models/cards/openai/gpt-5-2.js +37 -0
- package/dist/models/cards/openai/gpt-5-2.js.map +1 -0
- package/dist/models/cards/openai/gpt-5-4-mini.d.ts +11 -0
- package/dist/models/cards/openai/gpt-5-4-mini.d.ts.map +1 -0
- package/dist/models/cards/openai/gpt-5-4-mini.js +27 -0
- package/dist/models/cards/openai/gpt-5-4-mini.js.map +1 -0
- package/dist/models/cards/openai/gpt-5-4.d.ts +11 -0
- package/dist/models/cards/openai/gpt-5-4.d.ts.map +1 -0
- package/dist/models/cards/openai/gpt-5-4.js +27 -0
- package/dist/models/cards/openai/gpt-5-4.js.map +1 -0
- package/dist/models/cards/openai/gpt-5-5.d.ts +11 -0
- package/dist/models/cards/openai/gpt-5-5.d.ts.map +1 -0
- package/dist/models/cards/openai/gpt-5-5.js +27 -0
- package/dist/models/cards/openai/gpt-5-5.js.map +1 -0
- package/dist/models/cards/openai/gpt-5-chat-latest.d.ts +10 -0
- package/dist/models/cards/openai/gpt-5-chat-latest.d.ts.map +1 -0
- package/dist/models/cards/openai/gpt-5-chat-latest.js +26 -0
- package/dist/models/cards/openai/gpt-5-chat-latest.js.map +1 -0
- package/dist/models/cards/openai/gpt-5-codex.d.ts +11 -0
- package/dist/models/cards/openai/gpt-5-codex.d.ts.map +1 -0
- package/dist/models/cards/openai/gpt-5-codex.js +19 -0
- package/dist/models/cards/openai/gpt-5-codex.js.map +1 -0
- package/dist/models/cards/openai/gpt-5-mini.d.ts +10 -0
- package/dist/models/cards/openai/gpt-5-mini.d.ts.map +1 -0
- package/dist/models/cards/openai/gpt-5-mini.js +26 -0
- package/dist/models/cards/openai/gpt-5-mini.js.map +1 -0
- package/dist/models/cards/openai/gpt-5-nano.d.ts +10 -0
- package/dist/models/cards/openai/gpt-5-nano.d.ts.map +1 -0
- package/dist/models/cards/openai/gpt-5-nano.js +26 -0
- package/dist/models/cards/openai/gpt-5-nano.js.map +1 -0
- package/dist/models/cards/openai/gpt-5.d.ts +10 -0
- package/dist/models/cards/openai/gpt-5.d.ts.map +1 -0
- package/dist/models/cards/openai/gpt-5.js +26 -0
- package/dist/models/cards/openai/gpt-5.js.map +1 -0
- package/dist/models/cards/openai/index.d.ts +32 -0
- package/dist/models/cards/openai/index.d.ts.map +1 -0
- package/dist/models/cards/openai/index.js +38 -0
- package/dist/models/cards/openai/index.js.map +1 -0
- package/dist/models/cards/openai/o1-mini.d.ts +11 -0
- package/dist/models/cards/openai/o1-mini.d.ts.map +1 -0
- package/dist/models/cards/openai/o1-mini.js +28 -0
- package/dist/models/cards/openai/o1-mini.js.map +1 -0
- package/dist/models/cards/openai/o1-pro.d.ts +11 -0
- package/dist/models/cards/openai/o1-pro.d.ts.map +1 -0
- package/dist/models/cards/openai/o1-pro.js +28 -0
- package/dist/models/cards/openai/o1-pro.js.map +1 -0
- package/dist/models/cards/openai/o1.d.ts +11 -0
- package/dist/models/cards/openai/o1.d.ts.map +1 -0
- package/dist/models/cards/openai/o1.js +28 -0
- package/dist/models/cards/openai/o1.js.map +1 -0
- package/dist/models/cards/openai/o3-mini.d.ts +11 -0
- package/dist/models/cards/openai/o3-mini.d.ts.map +1 -0
- package/dist/models/cards/openai/o3-mini.js +30 -0
- package/dist/models/cards/openai/o3-mini.js.map +1 -0
- package/dist/models/cards/openai/o3-pro.d.ts +11 -0
- package/dist/models/cards/openai/o3-pro.d.ts.map +1 -0
- package/dist/models/cards/openai/o3-pro.js +28 -0
- package/dist/models/cards/openai/o3-pro.js.map +1 -0
- package/dist/models/cards/openai/o3.d.ts +11 -0
- package/dist/models/cards/openai/o3.d.ts.map +1 -0
- package/dist/models/cards/openai/o3.js +28 -0
- package/dist/models/cards/openai/o3.js.map +1 -0
- package/dist/models/cards/openai/o4-mini.d.ts +11 -0
- package/dist/models/cards/openai/o4-mini.d.ts.map +1 -0
- package/dist/models/cards/openai/o4-mini.js +27 -0
- package/dist/models/cards/openai/o4-mini.js.map +1 -0
- package/dist/models/cards/qwen/index.d.ts +13 -0
- package/dist/models/cards/qwen/index.d.ts.map +1 -0
- package/dist/models/cards/qwen/index.js +13 -0
- package/dist/models/cards/qwen/index.js.map +1 -0
- package/dist/models/cards/qwen/qwen-3-coder.d.ts +17 -0
- package/dist/models/cards/qwen/qwen-3-coder.d.ts.map +1 -0
- package/dist/models/cards/qwen/qwen-3-coder.js +27 -0
- package/dist/models/cards/qwen/qwen-3-coder.js.map +1 -0
- package/dist/models/cards/qwen/qwen-3-max-preview.d.ts +17 -0
- package/dist/models/cards/qwen/qwen-3-max-preview.d.ts.map +1 -0
- package/dist/models/cards/qwen/qwen-3-max-preview.js +27 -0
- package/dist/models/cards/qwen/qwen-3-max-preview.js.map +1 -0
- package/dist/models/cards/qwen/qwen-max.d.ts +10 -0
- package/dist/models/cards/qwen/qwen-max.d.ts.map +1 -0
- package/dist/models/cards/qwen/qwen-max.js +18 -0
- package/dist/models/cards/qwen/qwen-max.js.map +1 -0
- package/dist/models/cards/qwen/qwen-plus.d.ts +10 -0
- package/dist/models/cards/qwen/qwen-plus.d.ts.map +1 -0
- package/dist/models/cards/qwen/qwen-plus.js +18 -0
- package/dist/models/cards/qwen/qwen-plus.js.map +1 -0
- package/dist/models/cards/qwen/qwen-turbo.d.ts +10 -0
- package/dist/models/cards/qwen/qwen-turbo.d.ts.map +1 -0
- package/dist/models/cards/qwen/qwen-turbo.js +18 -0
- package/dist/models/cards/qwen/qwen-turbo.js.map +1 -0
- package/dist/models/cards/xai/grok-4-1-fast-non-reasoning.d.ts +15 -0
- package/dist/models/cards/xai/grok-4-1-fast-non-reasoning.d.ts.map +1 -0
- package/dist/models/cards/xai/grok-4-1-fast-non-reasoning.js +24 -0
- package/dist/models/cards/xai/grok-4-1-fast-non-reasoning.js.map +1 -0
- package/dist/models/cards/xai/grok-4-1.d.ts +14 -0
- package/dist/models/cards/xai/grok-4-1.d.ts.map +1 -0
- package/dist/models/cards/xai/grok-4-1.js +24 -0
- package/dist/models/cards/xai/grok-4-1.js.map +1 -0
- package/dist/models/cards/xai/grok-4-20-multi-agent.d.ts +13 -0
- package/dist/models/cards/xai/grok-4-20-multi-agent.d.ts.map +1 -0
- package/dist/models/cards/xai/grok-4-20-multi-agent.js +23 -0
- package/dist/models/cards/xai/grok-4-20-multi-agent.js.map +1 -0
- package/dist/models/cards/xai/grok-4-20-non-reasoning.d.ts +10 -0
- package/dist/models/cards/xai/grok-4-20-non-reasoning.d.ts.map +1 -0
- package/dist/models/cards/xai/grok-4-20-non-reasoning.js +19 -0
- package/dist/models/cards/xai/grok-4-20-non-reasoning.js.map +1 -0
- package/dist/models/cards/xai/grok-4-20-reasoning.d.ts +10 -0
- package/dist/models/cards/xai/grok-4-20-reasoning.d.ts.map +1 -0
- package/dist/models/cards/xai/grok-4-20-reasoning.js +20 -0
- package/dist/models/cards/xai/grok-4-20-reasoning.js.map +1 -0
- package/dist/models/cards/xai/grok-4-3.d.ts +11 -0
- package/dist/models/cards/xai/grok-4-3.d.ts.map +1 -0
- package/dist/models/cards/xai/grok-4-3.js +22 -0
- package/dist/models/cards/xai/grok-4-3.js.map +1 -0
- package/dist/models/cards/xai/grok-4-fast-non-reasoning.d.ts +13 -0
- package/dist/models/cards/xai/grok-4-fast-non-reasoning.d.ts.map +1 -0
- package/dist/models/cards/xai/grok-4-fast-non-reasoning.js +22 -0
- package/dist/models/cards/xai/grok-4-fast-non-reasoning.js.map +1 -0
- package/dist/models/cards/xai/grok-4-fast.d.ts +12 -0
- package/dist/models/cards/xai/grok-4-fast.d.ts.map +1 -0
- package/dist/models/cards/xai/grok-4-fast.js +21 -0
- package/dist/models/cards/xai/grok-4-fast.js.map +1 -0
- package/dist/models/cards/xai/grok-build-0-1-responses.d.ts +22 -0
- package/dist/models/cards/xai/grok-build-0-1-responses.d.ts.map +1 -0
- package/dist/models/cards/xai/grok-build-0-1-responses.js +39 -0
- package/dist/models/cards/xai/grok-build-0-1-responses.js.map +1 -0
- package/dist/models/cards/xai/grok-build-0-1.d.ts +17 -0
- package/dist/models/cards/xai/grok-build-0-1.d.ts.map +1 -0
- package/dist/models/cards/xai/grok-build-0-1.js +31 -0
- package/dist/models/cards/xai/grok-build-0-1.js.map +1 -0
- package/dist/models/cards/xai/grok-code-fast-1.d.ts +10 -0
- package/dist/models/cards/xai/grok-code-fast-1.d.ts.map +1 -0
- package/dist/models/cards/xai/grok-code-fast-1.js +22 -0
- package/dist/models/cards/xai/grok-code-fast-1.js.map +1 -0
- package/dist/models/cards/xai/index.d.ts +17 -0
- package/dist/models/cards/xai/index.d.ts.map +1 -0
- package/dist/models/cards/xai/index.js +18 -0
- package/dist/models/cards/xai/index.js.map +1 -0
- package/dist/models/configurators/AnthropicConfigurator.d.ts +57 -0
- package/dist/models/configurators/AnthropicConfigurator.d.ts.map +1 -0
- package/dist/models/configurators/AnthropicConfigurator.js +108 -0
- package/dist/models/configurators/AnthropicConfigurator.js.map +1 -0
- package/dist/models/configurators/CloudflareConfigurator.d.ts +46 -0
- package/dist/models/configurators/CloudflareConfigurator.d.ts.map +1 -0
- package/dist/models/configurators/CloudflareConfigurator.js +112 -0
- package/dist/models/configurators/CloudflareConfigurator.js.map +1 -0
- package/dist/models/configurators/DeepSeekConfigurator.d.ts +26 -0
- package/dist/models/configurators/DeepSeekConfigurator.d.ts.map +1 -0
- package/dist/models/configurators/DeepSeekConfigurator.js +81 -0
- package/dist/models/configurators/DeepSeekConfigurator.js.map +1 -0
- package/dist/models/configurators/GLMConfigurator.d.ts +22 -0
- package/dist/models/configurators/GLMConfigurator.d.ts.map +1 -0
- package/dist/models/configurators/GLMConfigurator.js +82 -0
- package/dist/models/configurators/GLMConfigurator.js.map +1 -0
- package/dist/models/configurators/GemmaConfigurator.d.ts +18 -0
- package/dist/models/configurators/GemmaConfigurator.d.ts.map +1 -0
- package/dist/models/configurators/GemmaConfigurator.js +89 -0
- package/dist/models/configurators/GemmaConfigurator.js.map +1 -0
- package/dist/models/configurators/GoogleConfigurator.d.ts +26 -0
- package/dist/models/configurators/GoogleConfigurator.d.ts.map +1 -0
- package/dist/models/configurators/GoogleConfigurator.js +91 -0
- package/dist/models/configurators/GoogleConfigurator.js.map +1 -0
- package/dist/models/configurators/GoogleSDKConfigurator.d.ts +29 -0
- package/dist/models/configurators/GoogleSDKConfigurator.d.ts.map +1 -0
- package/dist/models/configurators/GoogleSDKConfigurator.js +95 -0
- package/dist/models/configurators/GoogleSDKConfigurator.js.map +1 -0
- package/dist/models/configurators/HuggingFaceConfigurator.d.ts +31 -0
- package/dist/models/configurators/HuggingFaceConfigurator.d.ts.map +1 -0
- package/dist/models/configurators/HuggingFaceConfigurator.js +85 -0
- package/dist/models/configurators/HuggingFaceConfigurator.js.map +1 -0
- package/dist/models/configurators/LocalModelConfigurator.d.ts +30 -0
- package/dist/models/configurators/LocalModelConfigurator.d.ts.map +1 -0
- package/dist/models/configurators/LocalModelConfigurator.js +88 -0
- package/dist/models/configurators/LocalModelConfigurator.js.map +1 -0
- package/dist/models/configurators/MercuryConfigurator.d.ts +27 -0
- package/dist/models/configurators/MercuryConfigurator.d.ts.map +1 -0
- package/dist/models/configurators/MercuryConfigurator.js +91 -0
- package/dist/models/configurators/MercuryConfigurator.js.map +1 -0
- package/dist/models/configurators/MiniMaxConfigurator.d.ts +47 -0
- package/dist/models/configurators/MiniMaxConfigurator.d.ts.map +1 -0
- package/dist/models/configurators/MiniMaxConfigurator.js +103 -0
- package/dist/models/configurators/MiniMaxConfigurator.js.map +1 -0
- package/dist/models/configurators/MoonshotConfigurator.d.ts +21 -0
- package/dist/models/configurators/MoonshotConfigurator.d.ts.map +1 -0
- package/dist/models/configurators/MoonshotConfigurator.js +81 -0
- package/dist/models/configurators/MoonshotConfigurator.js.map +1 -0
- package/dist/models/configurators/OpenAIConfigurator.d.ts +52 -0
- package/dist/models/configurators/OpenAIConfigurator.d.ts.map +1 -0
- package/dist/models/configurators/OpenAIConfigurator.js +128 -0
- package/dist/models/configurators/OpenAIConfigurator.js.map +1 -0
- package/dist/models/configurators/OpenAIResponsesConfigurator.d.ts +23 -0
- package/dist/models/configurators/OpenAIResponsesConfigurator.d.ts.map +1 -0
- package/dist/models/configurators/OpenAIResponsesConfigurator.js +113 -0
- package/dist/models/configurators/OpenAIResponsesConfigurator.js.map +1 -0
- package/dist/models/configurators/QwenConfigurator.d.ts +26 -0
- package/dist/models/configurators/QwenConfigurator.d.ts.map +1 -0
- package/dist/models/configurators/QwenConfigurator.js +87 -0
- package/dist/models/configurators/QwenConfigurator.js.map +1 -0
- package/dist/models/configurators/XAIConfigurator.d.ts +52 -0
- package/dist/models/configurators/XAIConfigurator.d.ts.map +1 -0
- package/dist/models/configurators/XAIConfigurator.js +130 -0
- package/dist/models/configurators/XAIConfigurator.js.map +1 -0
- package/dist/models/configurators/index.d.ts +19 -0
- package/dist/models/configurators/index.d.ts.map +1 -0
- package/dist/models/configurators/index.js +19 -0
- package/dist/models/configurators/index.js.map +1 -0
- package/dist/models/index.d.ts +7 -0
- package/dist/models/index.d.ts.map +1 -0
- package/dist/models/index.js +7 -0
- package/dist/models/index.js.map +1 -0
- package/dist/models/registry/ModelAliasResolver.d.ts +109 -0
- package/dist/models/registry/ModelAliasResolver.d.ts.map +1 -0
- package/dist/models/registry/ModelAliasResolver.js +255 -0
- package/dist/models/registry/ModelAliasResolver.js.map +1 -0
- package/dist/models/registry/ModelCardLoader.d.ts +44 -0
- package/dist/models/registry/ModelCardLoader.d.ts.map +1 -0
- package/dist/models/registry/ModelCardLoader.js +124 -0
- package/dist/models/registry/ModelCardLoader.js.map +1 -0
- package/dist/models/registry/ModularModelRegistry.d.ts +86 -0
- package/dist/models/registry/ModularModelRegistry.d.ts.map +1 -0
- package/dist/models/registry/ModularModelRegistry.js +311 -0
- package/dist/models/registry/ModularModelRegistry.js.map +1 -0
- package/dist/models/registry/index.d.ts +8 -0
- package/dist/models/registry/index.d.ts.map +1 -0
- package/dist/models/registry/index.js +9 -0
- package/dist/models/registry/index.js.map +1 -0
- package/dist/orchestrator/APIClient.d.ts +274 -0
- package/dist/orchestrator/APIClient.d.ts.map +1 -0
- package/dist/orchestrator/APIClient.js +2770 -0
- package/dist/orchestrator/APIClient.js.map +1 -0
- package/dist/orchestrator/CortexOrchestrator.d.ts +986 -0
- package/dist/orchestrator/CortexOrchestrator.d.ts.map +1 -0
- package/dist/orchestrator/CortexOrchestrator.js +6374 -0
- package/dist/orchestrator/CortexOrchestrator.js.map +1 -0
- package/dist/orchestrator/OrchestratorFactory.d.ts +81 -0
- package/dist/orchestrator/OrchestratorFactory.d.ts.map +1 -0
- package/dist/orchestrator/OrchestratorFactory.js +433 -0
- package/dist/orchestrator/OrchestratorFactory.js.map +1 -0
- package/dist/orchestrator/PauseController.d.ts +126 -0
- package/dist/orchestrator/PauseController.d.ts.map +1 -0
- package/dist/orchestrator/PauseController.js +248 -0
- package/dist/orchestrator/PauseController.js.map +1 -0
- package/dist/orchestrator/SubAgentEventEmitter.d.ts +152 -0
- package/dist/orchestrator/SubAgentEventEmitter.d.ts.map +1 -0
- package/dist/orchestrator/SubAgentEventEmitter.js +372 -0
- package/dist/orchestrator/SubAgentEventEmitter.js.map +1 -0
- package/dist/orchestrator/SubAgentIPC.d.ts +242 -0
- package/dist/orchestrator/SubAgentIPC.d.ts.map +1 -0
- package/dist/orchestrator/SubAgentIPC.js +85 -0
- package/dist/orchestrator/SubAgentIPC.js.map +1 -0
- package/dist/orchestrator/SubAgentManager.d.ts +215 -0
- package/dist/orchestrator/SubAgentManager.d.ts.map +1 -0
- package/dist/orchestrator/SubAgentManager.js +477 -0
- package/dist/orchestrator/SubAgentManager.js.map +1 -0
- package/dist/orchestrator/SubAgentOrchestrator.d.ts +125 -0
- package/dist/orchestrator/SubAgentOrchestrator.d.ts.map +1 -0
- package/dist/orchestrator/SubAgentOrchestrator.js +395 -0
- package/dist/orchestrator/SubAgentOrchestrator.js.map +1 -0
- package/dist/orchestrator/SubAgentPermissionChecker.d.ts +132 -0
- package/dist/orchestrator/SubAgentPermissionChecker.d.ts.map +1 -0
- package/dist/orchestrator/SubAgentPermissionChecker.js +239 -0
- package/dist/orchestrator/SubAgentPermissionChecker.js.map +1 -0
- package/dist/orchestrator/SubAgentProcessManager.d.ts +228 -0
- package/dist/orchestrator/SubAgentProcessManager.d.ts.map +1 -0
- package/dist/orchestrator/SubAgentProcessManager.js +679 -0
- package/dist/orchestrator/SubAgentProcessManager.js.map +1 -0
- package/dist/orchestrator/SubAgentTypes.d.ts +428 -0
- package/dist/orchestrator/SubAgentTypes.d.ts.map +1 -0
- package/dist/orchestrator/SubAgentTypes.js +12 -0
- package/dist/orchestrator/SubAgentTypes.js.map +1 -0
- package/dist/orchestrator/apiErrorClassifier.d.ts +17 -0
- package/dist/orchestrator/apiErrorClassifier.d.ts.map +1 -0
- package/dist/orchestrator/apiErrorClassifier.js +38 -0
- package/dist/orchestrator/apiErrorClassifier.js.map +1 -0
- package/dist/orchestrator/assistantTextPresence.d.ts +32 -0
- package/dist/orchestrator/assistantTextPresence.d.ts.map +1 -0
- package/dist/orchestrator/assistantTextPresence.js +47 -0
- package/dist/orchestrator/assistantTextPresence.js.map +1 -0
- package/dist/orchestrator/citationVerification.d.ts +32 -0
- package/dist/orchestrator/citationVerification.d.ts.map +1 -0
- package/dist/orchestrator/citationVerification.js +47 -0
- package/dist/orchestrator/citationVerification.js.map +1 -0
- package/dist/orchestrator/coordinateVerification.d.ts +50 -0
- package/dist/orchestrator/coordinateVerification.d.ts.map +1 -0
- package/dist/orchestrator/coordinateVerification.js +114 -0
- package/dist/orchestrator/coordinateVerification.js.map +1 -0
- package/dist/orchestrator/cortexTrainingRecord.d.ts +88 -0
- package/dist/orchestrator/cortexTrainingRecord.d.ts.map +1 -0
- package/dist/orchestrator/cortexTrainingRecord.js +102 -0
- package/dist/orchestrator/cortexTrainingRecord.js.map +1 -0
- package/dist/orchestrator/index.d.ts +20 -0
- package/dist/orchestrator/index.d.ts.map +1 -0
- package/dist/orchestrator/index.js +18 -0
- package/dist/orchestrator/index.js.map +1 -0
- package/dist/orchestrator/mcpAutoInjectPolicy.d.ts +18 -0
- package/dist/orchestrator/mcpAutoInjectPolicy.d.ts.map +1 -0
- package/dist/orchestrator/mcpAutoInjectPolicy.js +24 -0
- package/dist/orchestrator/mcpAutoInjectPolicy.js.map +1 -0
- package/dist/orchestrator/staticSystemPromptPin.d.ts +20 -0
- package/dist/orchestrator/staticSystemPromptPin.d.ts.map +1 -0
- package/dist/orchestrator/staticSystemPromptPin.js +33 -0
- package/dist/orchestrator/staticSystemPromptPin.js.map +1 -0
- package/dist/orchestrator/toolBudgetSignal.d.ts +41 -0
- package/dist/orchestrator/toolBudgetSignal.d.ts.map +1 -0
- package/dist/orchestrator/toolBudgetSignal.js +77 -0
- package/dist/orchestrator/toolBudgetSignal.js.map +1 -0
- package/dist/orchestrator/toolNameMatcher.d.ts +21 -0
- package/dist/orchestrator/toolNameMatcher.d.ts.map +1 -0
- package/dist/orchestrator/toolNameMatcher.js +69 -0
- package/dist/orchestrator/toolNameMatcher.js.map +1 -0
- package/dist/session/CacheMetricsAccumulator.d.ts +72 -0
- package/dist/session/CacheMetricsAccumulator.d.ts.map +1 -0
- package/dist/session/CacheMetricsAccumulator.js +144 -0
- package/dist/session/CacheMetricsAccumulator.js.map +1 -0
- package/dist/session/CheckpointManager.d.ts +106 -0
- package/dist/session/CheckpointManager.d.ts.map +1 -0
- package/dist/session/CheckpointManager.js +223 -0
- package/dist/session/CheckpointManager.js.map +1 -0
- package/dist/session/JSONLHistoryStore.d.ts +154 -0
- package/dist/session/JSONLHistoryStore.d.ts.map +1 -0
- package/dist/session/JSONLHistoryStore.js +393 -0
- package/dist/session/JSONLHistoryStore.js.map +1 -0
- package/dist/session/MessageTypes.d.ts +269 -0
- package/dist/session/MessageTypes.d.ts.map +1 -0
- package/dist/session/MessageTypes.js +38 -0
- package/dist/session/MessageTypes.js.map +1 -0
- package/dist/session/SessionTimeline.d.ts +304 -0
- package/dist/session/SessionTimeline.d.ts.map +1 -0
- package/dist/session/SessionTimeline.js +396 -0
- package/dist/session/SessionTimeline.js.map +1 -0
- package/dist/session/index.d.ts +10 -0
- package/dist/session/index.d.ts.map +1 -0
- package/dist/session/index.js +10 -0
- package/dist/session/index.js.map +1 -0
- package/dist/system-messages/MessageValidator.d.ts +71 -0
- package/dist/system-messages/MessageValidator.d.ts.map +1 -0
- package/dist/system-messages/MessageValidator.js +305 -0
- package/dist/system-messages/MessageValidator.js.map +1 -0
- package/dist/system-messages/SystemMessageLoader.d.ts +154 -0
- package/dist/system-messages/SystemMessageLoader.d.ts.map +1 -0
- package/dist/system-messages/SystemMessageLoader.js +695 -0
- package/dist/system-messages/SystemMessageLoader.js.map +1 -0
- package/dist/system-messages/SystemMessageRegistry.d.ts +67 -0
- package/dist/system-messages/SystemMessageRegistry.d.ts.map +1 -0
- package/dist/system-messages/SystemMessageRegistry.interface.d.ts +166 -0
- package/dist/system-messages/SystemMessageRegistry.interface.d.ts.map +1 -0
- package/dist/system-messages/SystemMessageRegistry.interface.js +6 -0
- package/dist/system-messages/SystemMessageRegistry.interface.js.map +1 -0
- package/dist/system-messages/SystemMessageRegistry.js +164 -0
- package/dist/system-messages/SystemMessageRegistry.js.map +1 -0
- package/dist/system-messages/SystemMessageStore.d.ts +207 -0
- package/dist/system-messages/SystemMessageStore.d.ts.map +1 -0
- package/dist/system-messages/SystemMessageStore.js +748 -0
- package/dist/system-messages/SystemMessageStore.js.map +1 -0
- package/dist/system-messages/SystemReminderInjector.d.ts +148 -0
- package/dist/system-messages/SystemReminderInjector.d.ts.map +1 -0
- package/dist/system-messages/SystemReminderInjector.js +331 -0
- package/dist/system-messages/SystemReminderInjector.js.map +1 -0
- package/dist/system-messages/docTruncation.d.ts +31 -0
- package/dist/system-messages/docTruncation.d.ts.map +1 -0
- package/dist/system-messages/docTruncation.js +26 -0
- package/dist/system-messages/docTruncation.js.map +1 -0
- package/dist/system-messages/index.d.ts +12 -0
- package/dist/system-messages/index.d.ts.map +1 -0
- package/dist/system-messages/index.js +15 -0
- package/dist/system-messages/index.js.map +1 -0
- package/dist/system-messages/messages/ACTIVE_DISCOVERY.md +26 -0
- package/dist/system-messages/messages/EXAMPLES.md +73 -0
- package/dist/system-messages/messages/PERIODIC_REMINDER.md +6 -0
- package/dist/system-messages/messages/REASONING_GUIDE.md +12 -0
- package/dist/system-messages/messages/SYSTEM_PROMPT.md +47 -0
- package/dist/system-messages/messages/TASK_AGENT_GUIDE.md +5 -0
- package/dist/system-messages/messages/TOOL_USAGE_GUIDE.md +131 -0
- package/dist/system-messages/system-message-registry.json +233 -0
- package/dist/system-messages/turnVaryingClassifier.d.ts +20 -0
- package/dist/system-messages/turnVaryingClassifier.d.ts.map +1 -0
- package/dist/system-messages/turnVaryingClassifier.js +27 -0
- package/dist/system-messages/turnVaryingClassifier.js.map +1 -0
- package/dist/system-messages/types.d.ts +184 -0
- package/dist/system-messages/types.d.ts.map +1 -0
- package/dist/system-messages/types.js +7 -0
- package/dist/system-messages/types.js.map +1 -0
- package/dist/tools/ClientSideToolFilter.d.ts +35 -0
- package/dist/tools/ClientSideToolFilter.d.ts.map +1 -0
- package/dist/tools/ClientSideToolFilter.js +74 -0
- package/dist/tools/ClientSideToolFilter.js.map +1 -0
- package/dist/tools/ServerSideTools.d.ts +181 -0
- package/dist/tools/ServerSideTools.d.ts.map +1 -0
- package/dist/tools/ServerSideTools.js +309 -0
- package/dist/tools/ServerSideTools.js.map +1 -0
- package/dist/tools/ToolFactory.d.ts +88 -0
- package/dist/tools/ToolFactory.d.ts.map +1 -0
- package/dist/tools/ToolFactory.js +153 -0
- package/dist/tools/ToolFactory.js.map +1 -0
- package/dist/tools/context-management/InitCortexContext.d.ts +184 -0
- package/dist/tools/context-management/InitCortexContext.d.ts.map +1 -0
- package/dist/tools/context-management/InitCortexContext.js +1063 -0
- package/dist/tools/context-management/InitCortexContext.js.map +1 -0
- package/dist/tools/context-management/index.d.ts +8 -0
- package/dist/tools/context-management/index.d.ts.map +1 -0
- package/dist/tools/context-management/index.js +7 -0
- package/dist/tools/context-management/index.js.map +1 -0
- package/dist/tools/historical/GetConversationSegment.d.ts +131 -0
- package/dist/tools/historical/GetConversationSegment.d.ts.map +1 -0
- package/dist/tools/historical/GetConversationSegment.js +306 -0
- package/dist/tools/historical/GetConversationSegment.js.map +1 -0
- package/dist/tools/historical/HistoricalContextService.d.ts +229 -0
- package/dist/tools/historical/HistoricalContextService.d.ts.map +1 -0
- package/dist/tools/historical/HistoricalContextService.js +206 -0
- package/dist/tools/historical/HistoricalContextService.js.map +1 -0
- package/dist/tools/historical/ListCompactionBoundaries.d.ts +107 -0
- package/dist/tools/historical/ListCompactionBoundaries.d.ts.map +1 -0
- package/dist/tools/historical/ListCompactionBoundaries.js +175 -0
- package/dist/tools/historical/ListCompactionBoundaries.js.map +1 -0
- package/dist/tools/historical/ListSessions.d.ts +50 -0
- package/dist/tools/historical/ListSessions.d.ts.map +1 -0
- package/dist/tools/historical/ListSessions.js +93 -0
- package/dist/tools/historical/ListSessions.js.map +1 -0
- package/dist/tools/historical/LoadSession.d.ts +51 -0
- package/dist/tools/historical/LoadSession.d.ts.map +1 -0
- package/dist/tools/historical/LoadSession.js +89 -0
- package/dist/tools/historical/LoadSession.js.map +1 -0
- package/dist/tools/historical/RequestHistoricalContext.d.ts +122 -0
- package/dist/tools/historical/RequestHistoricalContext.d.ts.map +1 -0
- package/dist/tools/historical/RequestHistoricalContext.js +250 -0
- package/dist/tools/historical/RequestHistoricalContext.js.map +1 -0
- package/dist/tools/historical/SearchConversationHistory.d.ts +117 -0
- package/dist/tools/historical/SearchConversationHistory.d.ts.map +1 -0
- package/dist/tools/historical/SearchConversationHistory.js +239 -0
- package/dist/tools/historical/SearchConversationHistory.js.map +1 -0
- package/dist/tools/historical/index.d.ts +14 -0
- package/dist/tools/historical/index.d.ts.map +1 -0
- package/dist/tools/historical/index.js +14 -0
- package/dist/tools/historical/index.js.map +1 -0
- package/dist/tools/index.d.ts +15 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +21 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/mcp-management/ConfigureMcpServer.d.ts +41 -0
- package/dist/tools/mcp-management/ConfigureMcpServer.d.ts.map +1 -0
- package/dist/tools/mcp-management/ConfigureMcpServer.js +147 -0
- package/dist/tools/mcp-management/ConfigureMcpServer.js.map +1 -0
- package/dist/tools/mcp-management/DisableMcpServer.d.ts +39 -0
- package/dist/tools/mcp-management/DisableMcpServer.d.ts.map +1 -0
- package/dist/tools/mcp-management/DisableMcpServer.js +108 -0
- package/dist/tools/mcp-management/DisableMcpServer.js.map +1 -0
- package/dist/tools/mcp-management/EnableMcpServer.d.ts +49 -0
- package/dist/tools/mcp-management/EnableMcpServer.d.ts.map +1 -0
- package/dist/tools/mcp-management/EnableMcpServer.js +134 -0
- package/dist/tools/mcp-management/EnableMcpServer.js.map +1 -0
- package/dist/tools/mcp-management/GetMcpConfig.d.ts +52 -0
- package/dist/tools/mcp-management/GetMcpConfig.d.ts.map +1 -0
- package/dist/tools/mcp-management/GetMcpConfig.js +95 -0
- package/dist/tools/mcp-management/GetMcpConfig.js.map +1 -0
- package/dist/tools/mcp-management/InitMcpConfig.d.ts +113 -0
- package/dist/tools/mcp-management/InitMcpConfig.d.ts.map +1 -0
- package/dist/tools/mcp-management/InitMcpConfig.js +421 -0
- package/dist/tools/mcp-management/InitMcpConfig.js.map +1 -0
- package/dist/tools/mcp-management/ListAvailableMcpServers.d.ts +50 -0
- package/dist/tools/mcp-management/ListAvailableMcpServers.d.ts.map +1 -0
- package/dist/tools/mcp-management/ListAvailableMcpServers.js +92 -0
- package/dist/tools/mcp-management/ListAvailableMcpServers.js.map +1 -0
- package/dist/tools/mcp-management/SearchMcpServers.d.ts +44 -0
- package/dist/tools/mcp-management/SearchMcpServers.d.ts.map +1 -0
- package/dist/tools/mcp-management/SearchMcpServers.js +96 -0
- package/dist/tools/mcp-management/SearchMcpServers.js.map +1 -0
- package/dist/tools/mcp-management/index.d.ts +23 -0
- package/dist/tools/mcp-management/index.d.ts.map +1 -0
- package/dist/tools/mcp-management/index.js +16 -0
- package/dist/tools/mcp-management/index.js.map +1 -0
- package/dist/tools/registries/AddonToolRegistry.d.ts +70 -0
- package/dist/tools/registries/AddonToolRegistry.d.ts.map +1 -0
- package/dist/tools/registries/AddonToolRegistry.js +138 -0
- package/dist/tools/registries/AddonToolRegistry.js.map +1 -0
- package/dist/tools/registries/BaseToolRegistry.d.ts +38 -0
- package/dist/tools/registries/BaseToolRegistry.d.ts.map +1 -0
- package/dist/tools/registries/BaseToolRegistry.js +2058 -0
- package/dist/tools/registries/BaseToolRegistry.js.map +1 -0
- package/dist/tools/registries/index.d.ts +8 -0
- package/dist/tools/registries/index.d.ts.map +1 -0
- package/dist/tools/registries/index.js +8 -0
- package/dist/tools/registries/index.js.map +1 -0
- package/dist/tools/types/CanonicalTool.d.ts +130 -0
- package/dist/tools/types/CanonicalTool.d.ts.map +1 -0
- package/dist/tools/types/CanonicalTool.js +10 -0
- package/dist/tools/types/CanonicalTool.js.map +1 -0
- package/dist/tools/types/index.d.ts +7 -0
- package/dist/tools/types/index.d.ts.map +1 -0
- package/dist/tools/types/index.js +7 -0
- package/dist/tools/types/index.js.map +1 -0
- package/dist/training/AutoResearchGate.d.ts +64 -0
- package/dist/training/AutoResearchGate.d.ts.map +1 -0
- package/dist/training/AutoResearchGate.js +94 -0
- package/dist/training/AutoResearchGate.js.map +1 -0
- package/dist/training/AutoResearchStats.d.ts +128 -0
- package/dist/training/AutoResearchStats.d.ts.map +1 -0
- package/dist/training/AutoResearchStats.js +210 -0
- package/dist/training/AutoResearchStats.js.map +1 -0
- package/dist/training/BenchRunner.d.ts +177 -0
- package/dist/training/BenchRunner.d.ts.map +1 -0
- package/dist/training/BenchRunner.js +211 -0
- package/dist/training/BenchRunner.js.map +1 -0
- package/dist/training/DecisionPriorInjector.d.ts +18 -0
- package/dist/training/DecisionPriorInjector.d.ts.map +1 -0
- package/dist/training/DecisionPriorInjector.js +34 -0
- package/dist/training/DecisionPriorInjector.js.map +1 -0
- package/dist/training/DecisionStore.d.ts +78 -0
- package/dist/training/DecisionStore.d.ts.map +1 -0
- package/dist/training/DecisionStore.js +171 -0
- package/dist/training/DecisionStore.js.map +1 -0
- package/dist/training/ExperimentLedger.d.ts +138 -0
- package/dist/training/ExperimentLedger.d.ts.map +1 -0
- package/dist/training/ExperimentLedger.js +160 -0
- package/dist/training/ExperimentLedger.js.map +1 -0
- package/dist/training/ExperimentRunner.d.ts +88 -0
- package/dist/training/ExperimentRunner.d.ts.map +1 -0
- package/dist/training/ExperimentRunner.js +97 -0
- package/dist/training/ExperimentRunner.js.map +1 -0
- package/dist/training/ModelRouterMatrix.d.ts +197 -0
- package/dist/training/ModelRouterMatrix.d.ts.map +1 -0
- package/dist/training/ModelRouterMatrix.js +0 -0
- package/dist/training/ModelRouterMatrix.js.map +1 -0
- package/dist/training/ResearchBacklog.d.ts +102 -0
- package/dist/training/ResearchBacklog.d.ts.map +1 -0
- package/dist/training/ResearchBacklog.js +149 -0
- package/dist/training/ResearchBacklog.js.map +1 -0
- package/dist/training/TaskClassifier.d.ts +16 -0
- package/dist/training/TaskClassifier.d.ts.map +1 -0
- package/dist/training/TaskClassifier.js +70 -0
- package/dist/training/TaskClassifier.js.map +1 -0
- package/dist/training/ThompsonRouter.d.ts +53 -0
- package/dist/training/ThompsonRouter.d.ts.map +1 -0
- package/dist/training/ThompsonRouter.js +73 -0
- package/dist/training/ThompsonRouter.js.map +1 -0
- package/dist/training/VersionComparison.d.ts +90 -0
- package/dist/training/VersionComparison.d.ts.map +1 -0
- package/dist/training/VersionComparison.js +117 -0
- package/dist/training/VersionComparison.js.map +1 -0
- package/dist/ui/index.d.ts +13 -0
- package/dist/ui/index.d.ts.map +1 -0
- package/dist/ui/index.js +15 -0
- package/dist/ui/index.js.map +1 -0
- package/dist/ui/menu-types.d.ts +314 -0
- package/dist/ui/menu-types.d.ts.map +1 -0
- package/dist/ui/menu-types.js +138 -0
- package/dist/ui/menu-types.js.map +1 -0
- package/dist/ui/types.d.ts +86 -0
- package/dist/ui/types.d.ts.map +1 -0
- package/dist/ui/types.js +12 -0
- package/dist/ui/types.js.map +1 -0
- package/dist/utils/ContextResolver.d.ts +132 -0
- package/dist/utils/ContextResolver.d.ts.map +1 -0
- package/dist/utils/ContextResolver.js +269 -0
- package/dist/utils/ContextResolver.js.map +1 -0
- package/dist/utils/DiffParser.d.ts +101 -0
- package/dist/utils/DiffParser.d.ts.map +1 -0
- package/dist/utils/DiffParser.js +193 -0
- package/dist/utils/DiffParser.js.map +1 -0
- package/dist/utils/ErrorDetector.d.ts +99 -0
- package/dist/utils/ErrorDetector.d.ts.map +1 -0
- package/dist/utils/ErrorDetector.js +258 -0
- package/dist/utils/ErrorDetector.js.map +1 -0
- package/dist/utils/TokenCounter.d.ts +97 -0
- package/dist/utils/TokenCounter.d.ts.map +1 -0
- package/dist/utils/TokenCounter.js +193 -0
- package/dist/utils/TokenCounter.js.map +1 -0
- package/dist/utils/agentDiscovery.d.ts +12 -0
- package/dist/utils/agentDiscovery.d.ts.map +1 -0
- package/dist/utils/agentDiscovery.js +72 -0
- package/dist/utils/agentDiscovery.js.map +1 -0
- package/dist/utils/ids.d.ts +5 -0
- package/dist/utils/ids.d.ts.map +1 -0
- package/dist/utils/ids.js +14 -0
- package/dist/utils/ids.js.map +1 -0
- package/dist/utils/index.d.ts +14 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +14 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/logger.d.ts +22 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +44 -0
- package/dist/utils/logger.js.map +1 -0
- package/package.json +87 -0
|
@@ -0,0 +1,2058 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base Tool Registry
|
|
3
|
+
*
|
|
4
|
+
* Immutable registry of all 25 hardcoded base tools in pure canonical format.
|
|
5
|
+
* No provider-specific properties - adapters wrap these for each provider.
|
|
6
|
+
*
|
|
7
|
+
* Phase 1: Tool Architecture Refactor
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* All 25 base tools in pure canonical format
|
|
11
|
+
*/
|
|
12
|
+
const BASE_TOOLS = [
|
|
13
|
+
// =====================================
|
|
14
|
+
// FILE OPERATIONS
|
|
15
|
+
// =====================================
|
|
16
|
+
{
|
|
17
|
+
name: 'Read',
|
|
18
|
+
description: `Reads a file from the local filesystem. You can access any file directly by using this tool.
|
|
19
|
+
|
|
20
|
+
By default, it reads up to 2000 lines starting from the beginning of the file.
|
|
21
|
+
When you already know which part of the file you need, only read that part. This can be important for larger files.
|
|
22
|
+
Results are returned using cat -n format, with line numbers starting at 1.
|
|
23
|
+
This tool can read images (PNG, JPG, etc), PDFs (.pdf — for large PDFs provide the pages parameter, max 20 pages per request), and Jupyter notebooks (.ipynb — returns all cells with outputs).
|
|
24
|
+
Do NOT re-read a file you just edited to verify — Edit would have errored if the change failed, and the harness tracks file state for you.`,
|
|
25
|
+
schema: {
|
|
26
|
+
type: 'object',
|
|
27
|
+
properties: {
|
|
28
|
+
file_path: {
|
|
29
|
+
type: 'string',
|
|
30
|
+
description: 'Path to the file to read (relative or absolute)'
|
|
31
|
+
},
|
|
32
|
+
limit: {
|
|
33
|
+
type: 'number',
|
|
34
|
+
description: 'Maximum number of lines to read'
|
|
35
|
+
},
|
|
36
|
+
offset: {
|
|
37
|
+
type: 'number',
|
|
38
|
+
description: 'Line number to start reading from'
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
required: ['file_path']
|
|
42
|
+
},
|
|
43
|
+
category: 'base',
|
|
44
|
+
discoveryTier: 'essential',
|
|
45
|
+
metadata: {
|
|
46
|
+
immutable: true,
|
|
47
|
+
executionEnvironment: 'client',
|
|
48
|
+
version: '1.0.0'
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
name: 'Write',
|
|
53
|
+
description: `Writes a file to the local filesystem.
|
|
54
|
+
|
|
55
|
+
This tool will overwrite the existing file if there is one at the provided path.
|
|
56
|
+
If this is an existing file, you MUST use the Read tool first to read the file's contents. This tool will fail if you did not read the file first.
|
|
57
|
+
Prefer the Edit tool for modifying existing files — it only sends the diff. Only use this tool to create new files or for complete rewrites.
|
|
58
|
+
NEVER create documentation files (*.md) or README files unless explicitly requested by the User.`,
|
|
59
|
+
schema: {
|
|
60
|
+
type: 'object',
|
|
61
|
+
properties: {
|
|
62
|
+
file_path: {
|
|
63
|
+
type: 'string',
|
|
64
|
+
description: 'The absolute path to the file to write (must be absolute, not relative)'
|
|
65
|
+
},
|
|
66
|
+
content: {
|
|
67
|
+
type: 'string',
|
|
68
|
+
description: 'The content to write to the file'
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
required: ['file_path', 'content']
|
|
72
|
+
},
|
|
73
|
+
category: 'base',
|
|
74
|
+
discoveryTier: 'essential',
|
|
75
|
+
metadata: {
|
|
76
|
+
immutable: true,
|
|
77
|
+
executionEnvironment: 'client',
|
|
78
|
+
version: '1.0.0'
|
|
79
|
+
}
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
name: 'WriteBinary',
|
|
83
|
+
description: `Write base64-encoded binary data to a file. Use for images, PDFs, and other binary formats.
|
|
84
|
+
|
|
85
|
+
GUIDANCE:
|
|
86
|
+
- Accepts raw base64 or data URIs (data:image/png;base64,...)
|
|
87
|
+
- Auto-detects MIME type from file extension if not provided
|
|
88
|
+
- Creates parent directories automatically
|
|
89
|
+
- Use for screenshots, generated PDFs, downloaded images`,
|
|
90
|
+
schema: {
|
|
91
|
+
type: 'object',
|
|
92
|
+
properties: {
|
|
93
|
+
file_path: {
|
|
94
|
+
type: 'string',
|
|
95
|
+
description: 'Path to write (parent directories created automatically)'
|
|
96
|
+
},
|
|
97
|
+
data: {
|
|
98
|
+
type: 'string',
|
|
99
|
+
description: 'Base64-encoded binary content or data URI'
|
|
100
|
+
},
|
|
101
|
+
mime_type: {
|
|
102
|
+
type: 'string',
|
|
103
|
+
description: 'MIME type (auto-detected from extension if omitted)'
|
|
104
|
+
}
|
|
105
|
+
},
|
|
106
|
+
required: ['file_path', 'data']
|
|
107
|
+
},
|
|
108
|
+
category: 'base',
|
|
109
|
+
discoveryTier: 'standard',
|
|
110
|
+
metadata: {
|
|
111
|
+
immutable: true,
|
|
112
|
+
executionEnvironment: 'client',
|
|
113
|
+
version: '1.0.0'
|
|
114
|
+
}
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
name: 'Edit',
|
|
118
|
+
description: `Performs exact string replacements in files.
|
|
119
|
+
|
|
120
|
+
You must use your Read tool at least once in the conversation before editing. This tool will error if you attempt an edit without reading the file.
|
|
121
|
+
|
|
122
|
+
When editing text from Read tool output, preserve the exact indentation (tabs/spaces) as it appears AFTER the line number prefix. The line number prefix format is: line number + tab. Everything after that is the actual file content to match. Never include any part of the line number prefix in old_string or new_string.
|
|
123
|
+
|
|
124
|
+
ALWAYS prefer editing existing files over creating new ones.
|
|
125
|
+
The edit will FAIL if old_string is not unique in the file. Either provide a larger string with more surrounding context to make it unique or use replace_all to change every instance.
|
|
126
|
+
Use replace_all for replacing and renaming strings across the file.`,
|
|
127
|
+
schema: {
|
|
128
|
+
type: 'object',
|
|
129
|
+
properties: {
|
|
130
|
+
file_path: {
|
|
131
|
+
type: 'string',
|
|
132
|
+
description: 'The absolute path to the file to modify'
|
|
133
|
+
},
|
|
134
|
+
old_string: {
|
|
135
|
+
type: 'string',
|
|
136
|
+
description: 'The text to replace'
|
|
137
|
+
},
|
|
138
|
+
new_string: {
|
|
139
|
+
type: 'string',
|
|
140
|
+
description: 'The text to replace it with (must be different from old_string)'
|
|
141
|
+
},
|
|
142
|
+
replace_all: {
|
|
143
|
+
type: 'boolean',
|
|
144
|
+
description: 'Replace all occurrences of old_string (default false)'
|
|
145
|
+
}
|
|
146
|
+
},
|
|
147
|
+
required: ['file_path', 'old_string', 'new_string']
|
|
148
|
+
},
|
|
149
|
+
category: 'base',
|
|
150
|
+
discoveryTier: 'essential',
|
|
151
|
+
metadata: {
|
|
152
|
+
immutable: true,
|
|
153
|
+
executionEnvironment: 'client',
|
|
154
|
+
version: '1.0.0'
|
|
155
|
+
}
|
|
156
|
+
},
|
|
157
|
+
// =====================================
|
|
158
|
+
// SHELL OPERATIONS
|
|
159
|
+
// =====================================
|
|
160
|
+
{
|
|
161
|
+
name: 'Bash',
|
|
162
|
+
description: `Execute bash/shell commands. Working directory persists between calls. Default timeout: 120 seconds (configurable).
|
|
163
|
+
|
|
164
|
+
Avoid using bash to run cat, head, tail, sed, awk, or echo — use read, edit, or write instead. Reserve bash for actual shell operations that require execution (builds, tests, git, process management).
|
|
165
|
+
|
|
166
|
+
Always quote file paths containing spaces. Try to use absolute paths and avoid cd — if you must cd, it persists within this Bash call only, not across other tool calls.
|
|
167
|
+
|
|
168
|
+
DESTRUCTIVE COMMANDS — confirm with user first:
|
|
169
|
+
- Deleting: rm -rf, git branch -D, DROP TABLE
|
|
170
|
+
- Irreversible: git reset --hard, git push --force, git checkout -- (overwrites uncommitted changes)
|
|
171
|
+
- Broad impact: git clean -f, find -delete, pkill/killall
|
|
172
|
+
When in doubt, investigate before deleting. If a lock file exists, check what holds it rather than removing it. Resolve merge conflicts rather than discarding changes.
|
|
173
|
+
|
|
174
|
+
PARALLEL EXECUTION:
|
|
175
|
+
- Safe to parallel: ls, pwd, test -f, validation commands, independent greps
|
|
176
|
+
- Must be sequential: build→test→validate chains, file mutations, package installs
|
|
177
|
+
- Use && to chain sequential commands in a single call
|
|
178
|
+
|
|
179
|
+
For background execution, set run_in_background: true. Use bash_output to poll results.`,
|
|
180
|
+
schema: {
|
|
181
|
+
type: 'object',
|
|
182
|
+
properties: {
|
|
183
|
+
command: {
|
|
184
|
+
type: 'string',
|
|
185
|
+
description: 'The bash command to execute. Can use relative paths in shell context.'
|
|
186
|
+
},
|
|
187
|
+
description: {
|
|
188
|
+
type: 'string',
|
|
189
|
+
description: 'Clear description of what this command does'
|
|
190
|
+
},
|
|
191
|
+
timeout: {
|
|
192
|
+
type: 'number',
|
|
193
|
+
description: 'Timeout in milliseconds (default: 120000)'
|
|
194
|
+
},
|
|
195
|
+
run_in_background: {
|
|
196
|
+
type: 'boolean',
|
|
197
|
+
description: 'Set to true to run this command in the background. Use bash_output to read the output later.'
|
|
198
|
+
},
|
|
199
|
+
dangerouslyDisableSandbox: {
|
|
200
|
+
type: 'boolean',
|
|
201
|
+
description: 'Set this to true to dangerously disable sandbox mode and run commands without sandboxing.'
|
|
202
|
+
},
|
|
203
|
+
persistentSession: {
|
|
204
|
+
type: 'boolean',
|
|
205
|
+
description: 'Set to true to run command in a persistent tmux session. The session survives server restarts and can be inspected later. Requires tmux to be installed.'
|
|
206
|
+
},
|
|
207
|
+
sessionId: {
|
|
208
|
+
type: 'string',
|
|
209
|
+
description: 'ID of the persistent session to use or create. Auto-generated if not provided. Only used when persistentSession=true.'
|
|
210
|
+
},
|
|
211
|
+
captureHistory: {
|
|
212
|
+
type: 'boolean',
|
|
213
|
+
description: 'When using persistent sessions, capture entire scrollback history (not just visible output). Default: false.'
|
|
214
|
+
}
|
|
215
|
+
},
|
|
216
|
+
required: ['command']
|
|
217
|
+
},
|
|
218
|
+
category: 'base',
|
|
219
|
+
discoveryTier: 'essential',
|
|
220
|
+
metadata: {
|
|
221
|
+
immutable: true,
|
|
222
|
+
executionEnvironment: 'client',
|
|
223
|
+
version: '1.0.0'
|
|
224
|
+
}
|
|
225
|
+
},
|
|
226
|
+
{
|
|
227
|
+
name: 'BashOutput',
|
|
228
|
+
description: `Retrieve output from a running or completed background bash shell started with run_in_background: true.
|
|
229
|
+
|
|
230
|
+
- Returns only NEW output since your last check (incremental reads)
|
|
231
|
+
- Shows process status: Running or Exited with exit code
|
|
232
|
+
- Use repeatedly to poll a long-running command until it completes
|
|
233
|
+
- Use filter to search output with regex (e.g., filter: "ERROR|WARN")
|
|
234
|
+
|
|
235
|
+
WORKFLOW:
|
|
236
|
+
1. Start: Bash({ command: "npm test", run_in_background: true }) → returns bash_id
|
|
237
|
+
2. Poll: bash_output({ bash_id }) → check status + read new output
|
|
238
|
+
3. Done: When status shows "Exited", all output has been captured
|
|
239
|
+
4. Cleanup: kill_shell({ shell_id: bash_id }) if process hangs`,
|
|
240
|
+
schema: {
|
|
241
|
+
type: 'object',
|
|
242
|
+
properties: {
|
|
243
|
+
bash_id: {
|
|
244
|
+
type: 'string',
|
|
245
|
+
description: 'The ID of the background shell (returned by Bash with run_in_background: true)'
|
|
246
|
+
},
|
|
247
|
+
filter: {
|
|
248
|
+
type: 'string',
|
|
249
|
+
description: 'Regex to filter output lines (e.g., "ERROR|FAIL" to show only errors)'
|
|
250
|
+
}
|
|
251
|
+
},
|
|
252
|
+
required: ['bash_id']
|
|
253
|
+
},
|
|
254
|
+
category: 'base',
|
|
255
|
+
discoveryTier: 'standard',
|
|
256
|
+
metadata: {
|
|
257
|
+
immutable: true,
|
|
258
|
+
executionEnvironment: 'client',
|
|
259
|
+
version: '1.0.0'
|
|
260
|
+
}
|
|
261
|
+
},
|
|
262
|
+
{
|
|
263
|
+
name: 'KillShell',
|
|
264
|
+
description: `Stop a running background bash shell by its ID. Use when a background process hangs, takes too long, or is no longer needed. The shell ID is the same bash_id returned by Bash with run_in_background: true.`,
|
|
265
|
+
schema: {
|
|
266
|
+
type: 'object',
|
|
267
|
+
properties: {
|
|
268
|
+
shell_id: {
|
|
269
|
+
type: 'string',
|
|
270
|
+
description: 'The ID of the background shell to stop (same as bash_id from bash_output)'
|
|
271
|
+
}
|
|
272
|
+
},
|
|
273
|
+
required: ['shell_id']
|
|
274
|
+
},
|
|
275
|
+
category: 'base',
|
|
276
|
+
discoveryTier: 'standard',
|
|
277
|
+
metadata: {
|
|
278
|
+
immutable: true,
|
|
279
|
+
executionEnvironment: 'client',
|
|
280
|
+
version: '1.0.0'
|
|
281
|
+
}
|
|
282
|
+
},
|
|
283
|
+
// =====================================
|
|
284
|
+
// SEARCH OPERATIONS
|
|
285
|
+
// =====================================
|
|
286
|
+
{
|
|
287
|
+
name: 'Grep',
|
|
288
|
+
description: `Search for patterns in files using grep.
|
|
289
|
+
|
|
290
|
+
SEARCH STRATEGY — start narrow, broaden only on zero results:
|
|
291
|
+
1. First grep: exact string, current directory, no flags. If matches appear, Read those files — do not keep searching.
|
|
292
|
+
2. Match file types to the project language. TypeScript repo → glob:"**/*.ts". Python repo → glob:"**/*.py". Check project context (CORTEX.md) if unsure.
|
|
293
|
+
3. Stay in the current project directory. Never search parent directories or sibling projects — they are separate codebases.
|
|
294
|
+
4. If zero results: broaden the pattern OR the file type, not both at once. Do not repeat the same search from a different directory.
|
|
295
|
+
|
|
296
|
+
BEST PRACTICES:
|
|
297
|
+
- Accept user's relative paths (e.g., "./src", "tests/")
|
|
298
|
+
- Use glob parameter to filter by file type (e.g., "**/*.ts" for TypeScript, "**/*.py" for Python)
|
|
299
|
+
- Use output_mode='files_with_matches' to find files first, then Read specific ones
|
|
300
|
+
- For code searches: use exact strings or escape special regex chars
|
|
301
|
+
- For multi-line patterns, escape newlines properly in regex
|
|
302
|
+
|
|
303
|
+
CASE SENSITIVITY (important):
|
|
304
|
+
- Default is case-sensitive (no -i flag). Keep it that way for:
|
|
305
|
+
- Convention-based patterns that are uppercase by tradition: TODO, FIXME, XXX, HACK, BUG, NOTE
|
|
306
|
+
- Exact symbol/identifier searches (class names, function names, env vars)
|
|
307
|
+
- JSON keys, most config keys, most code tokens
|
|
308
|
+
- Only use -i:true when the user explicitly asks OR you're matching free-form natural-language content
|
|
309
|
+
- A case-insensitive search for "TODO" will also match "Todo" in identifiers like TodoItem, TodoWrite, todomethod — inflating counts dramatically. If counts seem unexpectedly high, re-run case-sensitive and verify.
|
|
310
|
+
|
|
311
|
+
VERIFY AGGREGATES:
|
|
312
|
+
- When output_mode='count' returns large numbers (>20 per file or >50 total), sample one match with output_mode='content' -n:true to confirm the pattern is matching what was intended. This catches case-insensitive over-matching and ambiguous regexes before you report the result.`,
|
|
313
|
+
schema: {
|
|
314
|
+
type: 'object',
|
|
315
|
+
properties: {
|
|
316
|
+
pattern: {
|
|
317
|
+
type: 'string',
|
|
318
|
+
description: 'The regex pattern to search for'
|
|
319
|
+
},
|
|
320
|
+
path: {
|
|
321
|
+
type: 'string',
|
|
322
|
+
description: 'File or directory to search in. Use "." or a relative/project-absolute path — never "/" or parent directories outside the project.'
|
|
323
|
+
},
|
|
324
|
+
glob: {
|
|
325
|
+
type: 'string',
|
|
326
|
+
description: 'Glob pattern to filter files'
|
|
327
|
+
},
|
|
328
|
+
output_mode: {
|
|
329
|
+
type: 'string',
|
|
330
|
+
enum: ['content', 'files_with_matches', 'count'],
|
|
331
|
+
description: 'Output mode'
|
|
332
|
+
},
|
|
333
|
+
'-A': {
|
|
334
|
+
type: 'number',
|
|
335
|
+
description: 'Number of lines to show after each match (rg -A). Requires output_mode: "content"'
|
|
336
|
+
},
|
|
337
|
+
'-B': {
|
|
338
|
+
type: 'number',
|
|
339
|
+
description: 'Number of lines to show before each match (rg -B). Requires output_mode: "content"'
|
|
340
|
+
},
|
|
341
|
+
'-C': {
|
|
342
|
+
type: 'number',
|
|
343
|
+
description: 'Number of lines to show before and after each match (rg -C). Requires output_mode: "content"'
|
|
344
|
+
},
|
|
345
|
+
'-n': {
|
|
346
|
+
type: 'boolean',
|
|
347
|
+
description: 'Show line numbers in output (rg -n). Requires output_mode: "content"'
|
|
348
|
+
},
|
|
349
|
+
'-i': {
|
|
350
|
+
type: 'boolean',
|
|
351
|
+
description: 'Case insensitive search (rg -i)'
|
|
352
|
+
},
|
|
353
|
+
type: {
|
|
354
|
+
type: 'string',
|
|
355
|
+
description: 'File type to search (rg --type). Common types: ts, js, py, rust, go, java'
|
|
356
|
+
},
|
|
357
|
+
head_limit: {
|
|
358
|
+
type: 'number',
|
|
359
|
+
description: 'Limit output to first N lines/entries, equivalent to "| head -N"'
|
|
360
|
+
},
|
|
361
|
+
multiline: {
|
|
362
|
+
type: 'boolean',
|
|
363
|
+
description: 'Enable multiline mode where . matches newlines and patterns can span lines (rg -U --multiline-dotall)'
|
|
364
|
+
}
|
|
365
|
+
},
|
|
366
|
+
required: ['pattern']
|
|
367
|
+
},
|
|
368
|
+
category: 'base',
|
|
369
|
+
discoveryTier: 'essential',
|
|
370
|
+
metadata: {
|
|
371
|
+
immutable: true,
|
|
372
|
+
executionEnvironment: 'client',
|
|
373
|
+
version: '1.0.0'
|
|
374
|
+
}
|
|
375
|
+
},
|
|
376
|
+
{
|
|
377
|
+
name: 'Glob',
|
|
378
|
+
description: `Find files matching a pattern.
|
|
379
|
+
|
|
380
|
+
BEST PRACTICES:
|
|
381
|
+
- Accept user's relative paths for 'path' parameter
|
|
382
|
+
- Match file type to project language: "**/*.ts" (TypeScript), "**/*.js" (JavaScript), "**/*.py" (Python)
|
|
383
|
+
- Pattern examples: "*.test.ts", "**/config.json", "src/**/*.ts"
|
|
384
|
+
- Returns files sorted by modification time (newest first)
|
|
385
|
+
- Stay in the current project directory — never glob parent or sibling directories`,
|
|
386
|
+
schema: {
|
|
387
|
+
type: 'object',
|
|
388
|
+
properties: {
|
|
389
|
+
pattern: {
|
|
390
|
+
type: 'string',
|
|
391
|
+
description: 'The glob pattern to match'
|
|
392
|
+
},
|
|
393
|
+
path: {
|
|
394
|
+
type: 'string',
|
|
395
|
+
description: 'Directory to search in'
|
|
396
|
+
}
|
|
397
|
+
},
|
|
398
|
+
required: ['pattern']
|
|
399
|
+
},
|
|
400
|
+
category: 'base',
|
|
401
|
+
discoveryTier: 'essential',
|
|
402
|
+
metadata: {
|
|
403
|
+
immutable: true,
|
|
404
|
+
executionEnvironment: 'client',
|
|
405
|
+
version: '1.0.0'
|
|
406
|
+
}
|
|
407
|
+
},
|
|
408
|
+
// =====================================
|
|
409
|
+
// WEB OPERATIONS
|
|
410
|
+
// =====================================
|
|
411
|
+
{
|
|
412
|
+
name: 'WebSearch',
|
|
413
|
+
description: `Search the web for current information. Use when you need facts, documentation, API references, or recent events beyond your training data.
|
|
414
|
+
|
|
415
|
+
WHEN TO USE: verifying claims, finding library docs, checking current versions, looking up error messages, researching APIs or services.
|
|
416
|
+
WHEN NOT TO USE: if the answer is in the codebase (use grep/read), or if you need to interact with the page (use browse).
|
|
417
|
+
|
|
418
|
+
Results are text snippets from search engines. May not include full page content — use web_fetch to read a specific URL from the results.`,
|
|
419
|
+
schema: {
|
|
420
|
+
type: 'object',
|
|
421
|
+
properties: {
|
|
422
|
+
query: {
|
|
423
|
+
type: 'string',
|
|
424
|
+
description: 'The search query'
|
|
425
|
+
},
|
|
426
|
+
allowed_domains: {
|
|
427
|
+
type: 'array',
|
|
428
|
+
items: { type: 'string' },
|
|
429
|
+
description: 'Only include results from these domains'
|
|
430
|
+
},
|
|
431
|
+
blocked_domains: {
|
|
432
|
+
type: 'array',
|
|
433
|
+
items: { type: 'string' },
|
|
434
|
+
description: 'Never include results from these domains'
|
|
435
|
+
},
|
|
436
|
+
mode: {
|
|
437
|
+
type: 'string',
|
|
438
|
+
enum: ['fast', 'interactive'],
|
|
439
|
+
description: "Default 'fast' uses the provider's native search. Set to 'interactive' to dispatch a nexus-browser subagent that can navigate, scroll, and interact with pages — slower but works when provider-native search isn't enough."
|
|
440
|
+
}
|
|
441
|
+
},
|
|
442
|
+
required: ['query']
|
|
443
|
+
},
|
|
444
|
+
category: 'base',
|
|
445
|
+
discoveryTier: 'essential',
|
|
446
|
+
metadata: {
|
|
447
|
+
immutable: true,
|
|
448
|
+
executionEnvironment: 'client',
|
|
449
|
+
version: '1.0.0'
|
|
450
|
+
}
|
|
451
|
+
},
|
|
452
|
+
{
|
|
453
|
+
name: 'WebFetch',
|
|
454
|
+
description: `Fetch and read content from a specific URL. Returns the page's text content (HTML stripped).
|
|
455
|
+
|
|
456
|
+
WHEN TO USE: reading documentation pages, API references, blog posts, changelogs, or any URL you already have.
|
|
457
|
+
WHEN NOT TO USE: if the page requires JavaScript rendering, login, or interaction (use browse instead). If you need to search first and don't have a URL (use web_search).
|
|
458
|
+
|
|
459
|
+
The 'prompt' parameter guides what to extract — use it to focus on specific sections rather than getting the entire page.`,
|
|
460
|
+
schema: {
|
|
461
|
+
type: 'object',
|
|
462
|
+
properties: {
|
|
463
|
+
url: {
|
|
464
|
+
type: 'string',
|
|
465
|
+
description: 'The URL to fetch content from'
|
|
466
|
+
},
|
|
467
|
+
prompt: {
|
|
468
|
+
type: 'string',
|
|
469
|
+
description: 'Instructions for analyzing the content'
|
|
470
|
+
},
|
|
471
|
+
mode: {
|
|
472
|
+
type: 'string',
|
|
473
|
+
enum: ['fast', 'interactive'],
|
|
474
|
+
description: "Default 'fast' uses the provider's native fetch. Set to 'interactive' to dispatch a nexus-browser subagent for JS-rendered SPAs, auth-gated pages, or anything that needs interaction."
|
|
475
|
+
}
|
|
476
|
+
},
|
|
477
|
+
required: ['url', 'prompt']
|
|
478
|
+
},
|
|
479
|
+
category: 'base',
|
|
480
|
+
discoveryTier: 'essential',
|
|
481
|
+
metadata: {
|
|
482
|
+
immutable: true,
|
|
483
|
+
executionEnvironment: 'client',
|
|
484
|
+
version: '1.0.0'
|
|
485
|
+
}
|
|
486
|
+
},
|
|
487
|
+
{
|
|
488
|
+
name: 'Browse',
|
|
489
|
+
description: 'Drive a headless browser via a nexus-browser subagent. Use for interactive page work (click, form-fill, login), JS-rendered SPA scraping, or anti-bot bypass. For static text search prefer web_search; for plain URL reads prefer web_fetch.',
|
|
490
|
+
schema: {
|
|
491
|
+
type: 'object',
|
|
492
|
+
properties: {
|
|
493
|
+
task: {
|
|
494
|
+
type: 'string',
|
|
495
|
+
description: 'What the browser subagent should accomplish. Be specific about the success criterion — what data or outcome should it return?'
|
|
496
|
+
},
|
|
497
|
+
url: {
|
|
498
|
+
type: 'string',
|
|
499
|
+
description: 'Optional starting URL. If omitted, the subagent picks a starting page based on the task.'
|
|
500
|
+
},
|
|
501
|
+
model: {
|
|
502
|
+
type: 'string',
|
|
503
|
+
description: "Optional model override. Defaults to parent's current model. Accepts Claude aliases (sonnet, opus, haiku), 'inherit', or any registered model ID (e.g. deepseek-v4-pro, grok-4.3) for cross-provider dispatch."
|
|
504
|
+
}
|
|
505
|
+
},
|
|
506
|
+
required: ['task']
|
|
507
|
+
},
|
|
508
|
+
category: 'base',
|
|
509
|
+
discoveryTier: 'essential',
|
|
510
|
+
metadata: {
|
|
511
|
+
immutable: true,
|
|
512
|
+
executionEnvironment: 'client',
|
|
513
|
+
version: '1.0.0'
|
|
514
|
+
}
|
|
515
|
+
},
|
|
516
|
+
{
|
|
517
|
+
name: 'SandboxTransfer',
|
|
518
|
+
description: 'Run a command in a remote sandbox (via MCP run_command) and save its stdout to a local file. Use for transferring PDFs, images, or data generated in the sandbox to the local filesystem.',
|
|
519
|
+
schema: {
|
|
520
|
+
type: 'object',
|
|
521
|
+
properties: {
|
|
522
|
+
command: {
|
|
523
|
+
type: 'string',
|
|
524
|
+
description: 'Shell command to run in the sandbox. Stdout is captured and written to local_path.'
|
|
525
|
+
},
|
|
526
|
+
local_path: {
|
|
527
|
+
type: 'string',
|
|
528
|
+
description: 'Local file path to write the output to.'
|
|
529
|
+
},
|
|
530
|
+
encoding: {
|
|
531
|
+
type: 'string',
|
|
532
|
+
enum: ['base64', 'utf8'],
|
|
533
|
+
description: 'How to decode stdout: "base64" (default) for binary, "utf8" for text.'
|
|
534
|
+
},
|
|
535
|
+
mime_type: {
|
|
536
|
+
type: 'string',
|
|
537
|
+
description: 'MIME type. Auto-detected from extension if omitted.'
|
|
538
|
+
},
|
|
539
|
+
timeout: {
|
|
540
|
+
type: 'number',
|
|
541
|
+
description: 'Command timeout in milliseconds (default: 60000).'
|
|
542
|
+
},
|
|
543
|
+
server: {
|
|
544
|
+
type: 'string',
|
|
545
|
+
description: 'MCP server name (default: "nexus-browser").'
|
|
546
|
+
}
|
|
547
|
+
},
|
|
548
|
+
required: ['command', 'local_path']
|
|
549
|
+
},
|
|
550
|
+
category: 'base',
|
|
551
|
+
discoveryTier: 'standard',
|
|
552
|
+
metadata: {
|
|
553
|
+
immutable: true,
|
|
554
|
+
executionEnvironment: 'client',
|
|
555
|
+
version: '1.0.0'
|
|
556
|
+
}
|
|
557
|
+
},
|
|
558
|
+
// =====================================
|
|
559
|
+
// AGENT OPERATIONS
|
|
560
|
+
// =====================================
|
|
561
|
+
{
|
|
562
|
+
name: 'Task',
|
|
563
|
+
description: `Launch a sub-agent or list available agents. Use subagent_type "list" to discover agents before dispatching.
|
|
564
|
+
|
|
565
|
+
When to use: broad codebase exploration (3+ queries), parallelizable independent work, tasks matching a specialized agent profile, or protecting main context from excessive output.
|
|
566
|
+
|
|
567
|
+
When NOT to use: single targeted lookups (use read/grep directly), tasks where you need the result to inform your very next step (use tools directly), or when you'd be delegating understanding instead of doing synthesis yourself.
|
|
568
|
+
|
|
569
|
+
WRITING THE PROMPT — Brief the agent like a colleague who just walked in:
|
|
570
|
+
- Explain what you're trying to accomplish and WHY
|
|
571
|
+
- Describe what you've already learned or ruled out
|
|
572
|
+
- Give enough context that the agent can make judgment calls
|
|
573
|
+
- Include file paths, line numbers, what specifically to change
|
|
574
|
+
- If you need a short response, say so ("report in under 200 words")
|
|
575
|
+
|
|
576
|
+
PARALLELISM: When launching multiple agents for independent work, make all calls in the same response so they run concurrently.`,
|
|
577
|
+
schema: {
|
|
578
|
+
type: 'object',
|
|
579
|
+
properties: {
|
|
580
|
+
description: {
|
|
581
|
+
type: 'string',
|
|
582
|
+
description: 'A short (3-5 word) description of what the agent will do'
|
|
583
|
+
},
|
|
584
|
+
prompt: {
|
|
585
|
+
type: 'string',
|
|
586
|
+
description: 'The task for the agent to perform. Must be self-contained — the agent has no memory of this conversation.'
|
|
587
|
+
},
|
|
588
|
+
subagent_type: {
|
|
589
|
+
type: 'string',
|
|
590
|
+
description: 'Use "list" to discover available agents, or pass an agent name to launch it'
|
|
591
|
+
},
|
|
592
|
+
model: {
|
|
593
|
+
type: 'string',
|
|
594
|
+
description: "Optional model override. Defaults to parent's current model ('inherit'). Accepts Claude aliases (sonnet, opus, haiku), 'inherit', any registered model ID (e.g. deepseek-v4-pro, grok-4.3, gemini-2.5-flash) for cross-provider dispatch, OR 'auto' to let the model router pick the most efficient model for the task. 'auto' delegates the choice to the router (works even when global routing is off), but only routes when the router has trustworthy benchmark data for the task type — otherwise it safely inherits the parent model. Use for cross-model benchmarks, cheap-model fanout, capability-tier routing, or hands-off auto-optimization via 'auto'."
|
|
595
|
+
},
|
|
596
|
+
resume: {
|
|
597
|
+
type: 'string',
|
|
598
|
+
description: 'Optional session ID to resume a previous sub-agent session'
|
|
599
|
+
}
|
|
600
|
+
},
|
|
601
|
+
required: ['description', 'prompt', 'subagent_type']
|
|
602
|
+
},
|
|
603
|
+
category: 'base',
|
|
604
|
+
discoveryTier: 'essential',
|
|
605
|
+
metadata: {
|
|
606
|
+
immutable: true,
|
|
607
|
+
executionEnvironment: 'client',
|
|
608
|
+
version: '1.0.0'
|
|
609
|
+
}
|
|
610
|
+
},
|
|
611
|
+
// =====================================
|
|
612
|
+
// UI/UX OPERATIONS
|
|
613
|
+
// =====================================
|
|
614
|
+
{
|
|
615
|
+
name: 'TodoCreate',
|
|
616
|
+
description: `Create a task for tracking multi-step work. All start as pending. Follow lifecycle: todo_update(in_progress) -> work -> todo_update(completed).`,
|
|
617
|
+
schema: {
|
|
618
|
+
type: 'object',
|
|
619
|
+
properties: {
|
|
620
|
+
content: {
|
|
621
|
+
type: 'string',
|
|
622
|
+
description: 'Brief task title in imperative form (e.g., "Fix authentication bug")'
|
|
623
|
+
},
|
|
624
|
+
description: {
|
|
625
|
+
type: 'string',
|
|
626
|
+
description: 'Detailed description of what needs to be done'
|
|
627
|
+
},
|
|
628
|
+
activeForm: {
|
|
629
|
+
type: 'string',
|
|
630
|
+
description: 'Present continuous form shown while in progress (e.g., "Fixing authentication bug")'
|
|
631
|
+
}
|
|
632
|
+
},
|
|
633
|
+
required: ['content']
|
|
634
|
+
},
|
|
635
|
+
category: 'base',
|
|
636
|
+
discoveryTier: 'standard',
|
|
637
|
+
metadata: {
|
|
638
|
+
immutable: true,
|
|
639
|
+
executionEnvironment: 'client',
|
|
640
|
+
version: '2.0.0'
|
|
641
|
+
}
|
|
642
|
+
},
|
|
643
|
+
{
|
|
644
|
+
name: 'TodoUpdate',
|
|
645
|
+
description: `Update task status or details by ID. Lifecycle: in_progress before work, completed after. Batch: comma-separated IDs (e.g., "1,2,3").`,
|
|
646
|
+
schema: {
|
|
647
|
+
type: 'object',
|
|
648
|
+
properties: {
|
|
649
|
+
taskId: {
|
|
650
|
+
type: 'string',
|
|
651
|
+
description: 'Task ID(s) to update. Single: "1". Batch: "1,2,3".'
|
|
652
|
+
},
|
|
653
|
+
status: {
|
|
654
|
+
type: 'string',
|
|
655
|
+
enum: ['pending', 'in_progress', 'completed'],
|
|
656
|
+
description: 'New status for the task'
|
|
657
|
+
},
|
|
658
|
+
content: {
|
|
659
|
+
type: 'string',
|
|
660
|
+
description: 'New task title (optional)'
|
|
661
|
+
},
|
|
662
|
+
description: {
|
|
663
|
+
type: 'string',
|
|
664
|
+
description: 'New description (optional)'
|
|
665
|
+
},
|
|
666
|
+
activeForm: {
|
|
667
|
+
type: 'string',
|
|
668
|
+
description: 'New active form (optional)'
|
|
669
|
+
}
|
|
670
|
+
},
|
|
671
|
+
required: ['taskId']
|
|
672
|
+
},
|
|
673
|
+
category: 'base',
|
|
674
|
+
discoveryTier: 'standard',
|
|
675
|
+
metadata: {
|
|
676
|
+
immutable: true,
|
|
677
|
+
executionEnvironment: 'client',
|
|
678
|
+
version: '2.0.0'
|
|
679
|
+
}
|
|
680
|
+
},
|
|
681
|
+
{
|
|
682
|
+
name: 'TodoList',
|
|
683
|
+
description: 'List all tasks with their current status. Use to check progress, find task IDs, or review what is pending.',
|
|
684
|
+
schema: {
|
|
685
|
+
type: 'object',
|
|
686
|
+
properties: {},
|
|
687
|
+
required: []
|
|
688
|
+
},
|
|
689
|
+
category: 'base',
|
|
690
|
+
discoveryTier: 'standard',
|
|
691
|
+
metadata: {
|
|
692
|
+
immutable: true,
|
|
693
|
+
executionEnvironment: 'client',
|
|
694
|
+
version: '2.0.0'
|
|
695
|
+
}
|
|
696
|
+
},
|
|
697
|
+
{
|
|
698
|
+
name: 'AskUserQuestion',
|
|
699
|
+
description: `Present structured multiple-choice questions to the user. Use to gather preferences, clarify ambiguous instructions, get decisions on implementation choices, or offer direction options.
|
|
700
|
+
|
|
701
|
+
Users can always select "Other" for custom input — you don't need to include it. If you recommend a specific option, make it the first in the list and add "(Recommended)" to the label. Use multiSelect: true when choices aren't mutually exclusive.
|
|
702
|
+
|
|
703
|
+
Do NOT use this to ask "should I proceed?" — just proceed. Use it for genuine decisions where you need the user's judgment.`,
|
|
704
|
+
schema: {
|
|
705
|
+
type: 'object',
|
|
706
|
+
properties: {
|
|
707
|
+
questions: {
|
|
708
|
+
type: 'array',
|
|
709
|
+
minLength: 1,
|
|
710
|
+
maxLength: 4,
|
|
711
|
+
items: {
|
|
712
|
+
type: 'object',
|
|
713
|
+
properties: {
|
|
714
|
+
question: {
|
|
715
|
+
type: 'string',
|
|
716
|
+
description: 'The complete question to ask the user'
|
|
717
|
+
},
|
|
718
|
+
header: {
|
|
719
|
+
type: 'string',
|
|
720
|
+
maxLength: 12,
|
|
721
|
+
description: 'Very short label displayed as a chip/tag (max 12 chars)'
|
|
722
|
+
},
|
|
723
|
+
options: {
|
|
724
|
+
type: 'array',
|
|
725
|
+
minLength: 2,
|
|
726
|
+
maxLength: 4,
|
|
727
|
+
items: {
|
|
728
|
+
type: 'object',
|
|
729
|
+
properties: {
|
|
730
|
+
label: {
|
|
731
|
+
type: 'string',
|
|
732
|
+
description: 'The display text for this option (1-5 words)'
|
|
733
|
+
},
|
|
734
|
+
description: {
|
|
735
|
+
type: 'string',
|
|
736
|
+
description: 'Explanation of what this option means'
|
|
737
|
+
}
|
|
738
|
+
},
|
|
739
|
+
required: ['label', 'description']
|
|
740
|
+
},
|
|
741
|
+
description: 'The available choices for this question'
|
|
742
|
+
},
|
|
743
|
+
multiSelect: {
|
|
744
|
+
type: 'boolean',
|
|
745
|
+
description: 'Allow multiple options to be selected',
|
|
746
|
+
default: false
|
|
747
|
+
}
|
|
748
|
+
},
|
|
749
|
+
required: ['question', 'header', 'options', 'multiSelect']
|
|
750
|
+
},
|
|
751
|
+
description: 'Questions to ask the user (1-4 questions)'
|
|
752
|
+
}
|
|
753
|
+
},
|
|
754
|
+
required: ['questions']
|
|
755
|
+
},
|
|
756
|
+
category: 'base',
|
|
757
|
+
discoveryTier: 'essential',
|
|
758
|
+
metadata: {
|
|
759
|
+
immutable: true,
|
|
760
|
+
executionEnvironment: 'client',
|
|
761
|
+
version: '1.0.0'
|
|
762
|
+
}
|
|
763
|
+
},
|
|
764
|
+
{
|
|
765
|
+
name: 'ExitPlanMode',
|
|
766
|
+
description: `Exit planning mode and present a plan for the user to approve before implementation begins.
|
|
767
|
+
|
|
768
|
+
Use plan mode for tasks with genuine ambiguity — multiple reasonable architectures, unclear requirements, or high-impact restructuring. Skip it for straightforward changes, obvious bug fixes, or when the user's request already implies a clear path. When in doubt, start working and use ask_user_question for narrow clarifications rather than entering a full planning phase.`,
|
|
769
|
+
schema: {
|
|
770
|
+
type: 'object',
|
|
771
|
+
properties: {
|
|
772
|
+
plan: {
|
|
773
|
+
type: 'string',
|
|
774
|
+
description: 'The plan to present to the user'
|
|
775
|
+
}
|
|
776
|
+
},
|
|
777
|
+
required: ['plan']
|
|
778
|
+
},
|
|
779
|
+
category: 'base',
|
|
780
|
+
discoveryTier: 'standard',
|
|
781
|
+
metadata: {
|
|
782
|
+
immutable: true,
|
|
783
|
+
executionEnvironment: 'client',
|
|
784
|
+
version: '1.0.0'
|
|
785
|
+
}
|
|
786
|
+
},
|
|
787
|
+
// =====================================
|
|
788
|
+
// NOTEBOOK OPERATIONS
|
|
789
|
+
// =====================================
|
|
790
|
+
{
|
|
791
|
+
name: 'NotebookEdit',
|
|
792
|
+
description: 'Edit Jupyter notebook (.ipynb) cells. Supports replacing, inserting, or deleting cells. Read the notebook first to get cell IDs.',
|
|
793
|
+
schema: {
|
|
794
|
+
type: 'object',
|
|
795
|
+
properties: {
|
|
796
|
+
notebook_path: {
|
|
797
|
+
type: 'string',
|
|
798
|
+
description: 'Path to the Jupyter notebook'
|
|
799
|
+
},
|
|
800
|
+
cell_id: {
|
|
801
|
+
type: 'string',
|
|
802
|
+
description: 'ID of the cell to edit'
|
|
803
|
+
},
|
|
804
|
+
cell_type: {
|
|
805
|
+
type: 'string',
|
|
806
|
+
enum: ['code', 'markdown'],
|
|
807
|
+
description: 'Type of cell'
|
|
808
|
+
},
|
|
809
|
+
edit_mode: {
|
|
810
|
+
type: 'string',
|
|
811
|
+
enum: ['replace', 'insert', 'delete'],
|
|
812
|
+
description: 'Edit operation type'
|
|
813
|
+
},
|
|
814
|
+
new_source: {
|
|
815
|
+
type: 'string',
|
|
816
|
+
description: 'New content for the cell'
|
|
817
|
+
}
|
|
818
|
+
},
|
|
819
|
+
required: ['notebook_path', 'new_source']
|
|
820
|
+
},
|
|
821
|
+
category: 'base',
|
|
822
|
+
discoveryTier: 'standard',
|
|
823
|
+
metadata: {
|
|
824
|
+
immutable: true,
|
|
825
|
+
executionEnvironment: 'client',
|
|
826
|
+
version: '1.0.0'
|
|
827
|
+
}
|
|
828
|
+
},
|
|
829
|
+
// =====================================
|
|
830
|
+
// EXTENSION OPERATIONS
|
|
831
|
+
// =====================================
|
|
832
|
+
{
|
|
833
|
+
name: 'SlashCommand',
|
|
834
|
+
description: 'Execute a registered slash command. Slash commands are user-defined or built-in shortcuts invoked with /name syntax. Only invoke commands that are listed as available — do not guess or invent command names.',
|
|
835
|
+
schema: {
|
|
836
|
+
type: 'object',
|
|
837
|
+
properties: {
|
|
838
|
+
command: {
|
|
839
|
+
type: 'string',
|
|
840
|
+
description: 'The slash command to execute with its arguments (e.g., "/review-pr 123")'
|
|
841
|
+
}
|
|
842
|
+
},
|
|
843
|
+
required: ['command']
|
|
844
|
+
},
|
|
845
|
+
category: 'base',
|
|
846
|
+
discoveryTier: 'standard',
|
|
847
|
+
metadata: {
|
|
848
|
+
immutable: true,
|
|
849
|
+
executionEnvironment: 'client',
|
|
850
|
+
version: '1.0.0'
|
|
851
|
+
}
|
|
852
|
+
},
|
|
853
|
+
{
|
|
854
|
+
name: 'Skill',
|
|
855
|
+
description: 'List or invoke specialized skills. Skills are text instruction files that provide step-by-step guidance for specific tasks. Use command "list" to see all available skills, or pass a skill name to load it.',
|
|
856
|
+
schema: {
|
|
857
|
+
type: 'object',
|
|
858
|
+
properties: {
|
|
859
|
+
command: {
|
|
860
|
+
type: 'string',
|
|
861
|
+
description: 'Use "list" to see all available skills, or a skill name to load it. E.g., "list", "pdf-documents", "spacetimedb-rust"'
|
|
862
|
+
}
|
|
863
|
+
},
|
|
864
|
+
required: ['command']
|
|
865
|
+
},
|
|
866
|
+
category: 'base',
|
|
867
|
+
discoveryTier: 'essential',
|
|
868
|
+
metadata: {
|
|
869
|
+
immutable: true,
|
|
870
|
+
executionEnvironment: 'client',
|
|
871
|
+
version: '1.0.0'
|
|
872
|
+
}
|
|
873
|
+
},
|
|
874
|
+
{
|
|
875
|
+
name: 'ResearchBacklog',
|
|
876
|
+
description: "Track & triage harness deficiencies for recursive auto-research self-improvement. During benchmarking, AUTO-ADD every harness deficiency found (action:add — auto-triages + prioritizes). Walk each through open→triaged→in_progress→fixed→verified→closed. OVERFITTING GUARD: action:fixed means it passes the discovery task; action:verified means it ALSO held on held-out tasks — only verify after held-out confirmation. Use action:next to get the highest-priority deficiency to work on.",
|
|
877
|
+
schema: {
|
|
878
|
+
type: 'object',
|
|
879
|
+
properties: {
|
|
880
|
+
action: {
|
|
881
|
+
type: 'string',
|
|
882
|
+
enum: ['add', 'triage', 'list', 'next', 'in_progress', 'fixed', 'verified', 'close', 'wont_fix', 'regressed'],
|
|
883
|
+
description: 'add (auto-triages) | triage | list | next | in_progress | fixed (discovery task) | verified (held-out — overfitting-cleared) | close | wont_fix | regressed'
|
|
884
|
+
},
|
|
885
|
+
title: { type: 'string', description: 'add: short deficiency title (dedupe key)' },
|
|
886
|
+
description: { type: 'string', description: 'add: what is wrong + how found' },
|
|
887
|
+
bugClass: { type: 'string', description: 'Adapter|Streaming|Caching|Loop control|Routing|Config|Model card|State|Infrastructure|TUI|Other' },
|
|
888
|
+
severity: { type: 'string', enum: ['low', 'medium', 'high', 'critical'] },
|
|
889
|
+
impact: { type: 'number', description: '1-5 harness degradation' },
|
|
890
|
+
effort: { type: 'number', description: '1-5 fix cost' },
|
|
891
|
+
confidence: { type: 'number', description: '0-1 real-deficiency vs model-noise' },
|
|
892
|
+
discoveredRound: { type: 'string' },
|
|
893
|
+
affectedModels: { type: 'array', items: { type: 'string' } },
|
|
894
|
+
id: { type: 'string', description: 'target deficiency id for triage/lifecycle ops' },
|
|
895
|
+
experimentTag: { type: 'string', description: 'in_progress: worktree experiment tag' },
|
|
896
|
+
ref: { type: 'string', description: 'fixed: commit · verified: held-out round · wont_fix: reason' },
|
|
897
|
+
status: { type: 'string', description: 'list: filter by status' }
|
|
898
|
+
},
|
|
899
|
+
required: ['action']
|
|
900
|
+
},
|
|
901
|
+
category: 'base',
|
|
902
|
+
discoveryTier: 'standard',
|
|
903
|
+
metadata: {
|
|
904
|
+
immutable: true,
|
|
905
|
+
executionEnvironment: 'client',
|
|
906
|
+
version: '1.0.0'
|
|
907
|
+
}
|
|
908
|
+
},
|
|
909
|
+
{
|
|
910
|
+
name: 'EndTurn',
|
|
911
|
+
description: `MANDATORY final step when your turn used any tool. You MUST call end_turn before your user-facing answer — the turn cannot complete until you do. It requires RECONSTRUCTING the evidence for your work, not ticking boxes:
|
|
912
|
+
|
|
913
|
+
- citations: list EACH specific reference in your draft with the exact verbatim source you copied it from this turn. If you cannot produce the verbatim source, the reference is unverified — delete it from your answer and do not list it (quote the code instead of asserting a coordinate). Inventing one is a failed answer, exactly like a non-matching edit old_string.
|
|
914
|
+
- verification: list each build/test/lint command you actually ran with the real result line you saw. Do not list a command you did not run.
|
|
915
|
+
- self_review: re-read your draft as a skeptical reviewer — what you did NOT check, what is assumed/possibly wrong, what one more tool call would verify. This pass exists to catch your own mistakes before they ship.
|
|
916
|
+
- summary / open_items: what you delivered and any gaps — do not hide them.
|
|
917
|
+
|
|
918
|
+
After end_turn returns, act on your own self_review, then produce your final plain-text answer and call no more tools.`,
|
|
919
|
+
schema: {
|
|
920
|
+
type: 'object',
|
|
921
|
+
properties: {
|
|
922
|
+
citations: {
|
|
923
|
+
type: 'array',
|
|
924
|
+
description: "Every specific reference in your draft (file:line, line numbers, URLs, API/function signatures, quotes). One entry each with the exact transcribed source. Empty array = you cited none.",
|
|
925
|
+
items: {
|
|
926
|
+
type: 'object',
|
|
927
|
+
properties: {
|
|
928
|
+
reference: { type: 'string', description: 'The claim/reference as it appears in your answer.' },
|
|
929
|
+
verbatim_source: { type: 'string', description: "The EXACT text copied from this turn's tool output that grounds it (a quoted code line, a URL from a fetched page) — character-for-character, like an edit old_string." }
|
|
930
|
+
},
|
|
931
|
+
required: ['reference', 'verbatim_source']
|
|
932
|
+
}
|
|
933
|
+
},
|
|
934
|
+
verification: {
|
|
935
|
+
type: 'array',
|
|
936
|
+
description: 'Every build/test/lint command you actually ran this turn. Empty array = none asked.',
|
|
937
|
+
items: {
|
|
938
|
+
type: 'object',
|
|
939
|
+
properties: {
|
|
940
|
+
command: { type: 'string', description: 'The command you ran.' },
|
|
941
|
+
observed_result: { type: 'string', description: "The actual result line you saw in this turn's tool output." }
|
|
942
|
+
},
|
|
943
|
+
required: ['command', 'observed_result']
|
|
944
|
+
}
|
|
945
|
+
},
|
|
946
|
+
summary: {
|
|
947
|
+
type: 'string',
|
|
948
|
+
description: 'One sentence: what you delivered this turn.'
|
|
949
|
+
},
|
|
950
|
+
open_items: {
|
|
951
|
+
type: 'array',
|
|
952
|
+
items: { type: 'string' },
|
|
953
|
+
description: 'Anything unverified/assumed/incomplete. Empty array if nothing.'
|
|
954
|
+
},
|
|
955
|
+
self_review: {
|
|
956
|
+
type: 'string',
|
|
957
|
+
description: 'Skeptical re-read of your draft: what you did NOT check, what is assumed or possibly wrong, what surface you may have missed, what one more tool call would verify. Be specific.'
|
|
958
|
+
}
|
|
959
|
+
},
|
|
960
|
+
required: ['citations', 'verification', 'summary', 'open_items', 'self_review']
|
|
961
|
+
},
|
|
962
|
+
category: 'base',
|
|
963
|
+
discoveryTier: 'standard',
|
|
964
|
+
metadata: {
|
|
965
|
+
immutable: true,
|
|
966
|
+
executionEnvironment: 'client',
|
|
967
|
+
version: '1.0.0'
|
|
968
|
+
}
|
|
969
|
+
},
|
|
970
|
+
// =====================================
|
|
971
|
+
// HISTORICAL RETRIEVAL TOOLS
|
|
972
|
+
// =====================================
|
|
973
|
+
{
|
|
974
|
+
name: 'SearchConversationHistory',
|
|
975
|
+
description: `Search conversation history across ALL previous sessions and current session.
|
|
976
|
+
|
|
977
|
+
Use this tool to:
|
|
978
|
+
- Find messages from previous conversations/sessions
|
|
979
|
+
- Search across all historical session data (default behavior)
|
|
980
|
+
- Locate specific topics or information from past interactions
|
|
981
|
+
|
|
982
|
+
By default searches ALL sessions. Use searchScope parameter to limit to current session only.`,
|
|
983
|
+
schema: {
|
|
984
|
+
type: 'object',
|
|
985
|
+
properties: {
|
|
986
|
+
query: {
|
|
987
|
+
type: 'string',
|
|
988
|
+
description: 'Search query string'
|
|
989
|
+
},
|
|
990
|
+
maxResults: {
|
|
991
|
+
type: 'number',
|
|
992
|
+
description: 'Maximum number of results to return',
|
|
993
|
+
default: 10
|
|
994
|
+
},
|
|
995
|
+
timeRange: {
|
|
996
|
+
type: 'object',
|
|
997
|
+
properties: {
|
|
998
|
+
start: { type: 'string', format: 'date-time' },
|
|
999
|
+
end: { type: 'string', format: 'date-time' }
|
|
1000
|
+
},
|
|
1001
|
+
description: 'Optional time range filter'
|
|
1002
|
+
},
|
|
1003
|
+
includeCompacted: {
|
|
1004
|
+
type: 'boolean',
|
|
1005
|
+
description: 'Include compacted messages in search',
|
|
1006
|
+
default: true
|
|
1007
|
+
},
|
|
1008
|
+
searchScope: {
|
|
1009
|
+
type: 'string',
|
|
1010
|
+
description: 'Search scope: "current" (current session only), "all" (all sessions), or array of specific session IDs. Defaults to "all" to search across all sessions.',
|
|
1011
|
+
default: 'all'
|
|
1012
|
+
}
|
|
1013
|
+
},
|
|
1014
|
+
required: ['query']
|
|
1015
|
+
},
|
|
1016
|
+
category: 'historical',
|
|
1017
|
+
discoveryTier: 'standard',
|
|
1018
|
+
metadata: {
|
|
1019
|
+
immutable: true,
|
|
1020
|
+
executionEnvironment: 'client',
|
|
1021
|
+
version: '1.0.0'
|
|
1022
|
+
}
|
|
1023
|
+
},
|
|
1024
|
+
{
|
|
1025
|
+
name: 'GetConversationSegment',
|
|
1026
|
+
description: `Retrieve a specific segment of conversation history at different detail levels.
|
|
1027
|
+
|
|
1028
|
+
Can retrieve by turn range or checkpoint ID in full, summary, or compressed format.`,
|
|
1029
|
+
schema: {
|
|
1030
|
+
type: 'object',
|
|
1031
|
+
properties: {
|
|
1032
|
+
turnRange: {
|
|
1033
|
+
type: 'object',
|
|
1034
|
+
properties: {
|
|
1035
|
+
start: {
|
|
1036
|
+
type: 'number',
|
|
1037
|
+
description: 'Starting turn number (1-based)'
|
|
1038
|
+
},
|
|
1039
|
+
end: {
|
|
1040
|
+
type: 'number',
|
|
1041
|
+
description: 'Ending turn number (inclusive)'
|
|
1042
|
+
}
|
|
1043
|
+
},
|
|
1044
|
+
description: 'Turn range to retrieve'
|
|
1045
|
+
},
|
|
1046
|
+
checkpointId: {
|
|
1047
|
+
type: 'string',
|
|
1048
|
+
description: 'Checkpoint ID to retrieve from'
|
|
1049
|
+
},
|
|
1050
|
+
format: {
|
|
1051
|
+
type: 'string',
|
|
1052
|
+
enum: ['full', 'summary', 'compressed'],
|
|
1053
|
+
description: 'Format of the returned segment',
|
|
1054
|
+
default: 'summary'
|
|
1055
|
+
}
|
|
1056
|
+
}
|
|
1057
|
+
},
|
|
1058
|
+
category: 'historical',
|
|
1059
|
+
discoveryTier: 'standard',
|
|
1060
|
+
metadata: {
|
|
1061
|
+
immutable: true,
|
|
1062
|
+
executionEnvironment: 'client',
|
|
1063
|
+
version: '1.0.0'
|
|
1064
|
+
}
|
|
1065
|
+
},
|
|
1066
|
+
{
|
|
1067
|
+
name: 'ListCompactionBoundaries',
|
|
1068
|
+
description: `List all compaction boundaries (conversation summaries) with IDs.
|
|
1069
|
+
|
|
1070
|
+
Shows where conversation has been compacted with token savings and metadata.`,
|
|
1071
|
+
schema: {
|
|
1072
|
+
type: 'object',
|
|
1073
|
+
properties: {
|
|
1074
|
+
includeMetadata: {
|
|
1075
|
+
type: 'boolean',
|
|
1076
|
+
description: 'Include detailed metadata in response',
|
|
1077
|
+
default: true
|
|
1078
|
+
}
|
|
1079
|
+
}
|
|
1080
|
+
},
|
|
1081
|
+
category: 'historical',
|
|
1082
|
+
discoveryTier: 'standard',
|
|
1083
|
+
metadata: {
|
|
1084
|
+
immutable: true,
|
|
1085
|
+
executionEnvironment: 'client',
|
|
1086
|
+
version: '1.0.0'
|
|
1087
|
+
}
|
|
1088
|
+
},
|
|
1089
|
+
{
|
|
1090
|
+
name: 'RequestHistoricalContext',
|
|
1091
|
+
description: `Request historical context using cheap helper model. Cost-effective for accessing archived context.
|
|
1092
|
+
|
|
1093
|
+
Uses FREE Gemma models to generate context from historical conversation data.`,
|
|
1094
|
+
schema: {
|
|
1095
|
+
type: 'object',
|
|
1096
|
+
properties: {
|
|
1097
|
+
query: {
|
|
1098
|
+
type: 'string',
|
|
1099
|
+
description: 'Query describing what historical context is needed'
|
|
1100
|
+
},
|
|
1101
|
+
detailLevel: {
|
|
1102
|
+
type: 'string',
|
|
1103
|
+
enum: ['brief', 'standard', 'detailed'],
|
|
1104
|
+
description: 'Detail level for the response',
|
|
1105
|
+
default: 'standard'
|
|
1106
|
+
},
|
|
1107
|
+
maxTokens: {
|
|
1108
|
+
type: 'number',
|
|
1109
|
+
description: 'Maximum tokens for the response',
|
|
1110
|
+
default: 1000
|
|
1111
|
+
},
|
|
1112
|
+
useHelperModel: {
|
|
1113
|
+
type: 'boolean',
|
|
1114
|
+
description: 'Whether to use helper model (vs main model)',
|
|
1115
|
+
default: true
|
|
1116
|
+
}
|
|
1117
|
+
},
|
|
1118
|
+
required: ['query']
|
|
1119
|
+
},
|
|
1120
|
+
category: 'historical',
|
|
1121
|
+
discoveryTier: 'standard',
|
|
1122
|
+
metadata: {
|
|
1123
|
+
immutable: true,
|
|
1124
|
+
executionEnvironment: 'client',
|
|
1125
|
+
version: '1.0.0'
|
|
1126
|
+
}
|
|
1127
|
+
},
|
|
1128
|
+
{
|
|
1129
|
+
name: 'ListSessions',
|
|
1130
|
+
description: `List all available conversation sessions to discover and browse past conversations.
|
|
1131
|
+
|
|
1132
|
+
Use this tool to:
|
|
1133
|
+
- Browse all previous conversation sessions
|
|
1134
|
+
- Find sessions by age (recent or old)
|
|
1135
|
+
- See session metadata (message count, creation date, last activity)
|
|
1136
|
+
- Get session IDs for use with load_session tool
|
|
1137
|
+
|
|
1138
|
+
Returns sessions sorted by most recent activity by default.`,
|
|
1139
|
+
schema: {
|
|
1140
|
+
type: 'object',
|
|
1141
|
+
properties: {
|
|
1142
|
+
limit: {
|
|
1143
|
+
type: 'number',
|
|
1144
|
+
description: 'Maximum number of sessions to return',
|
|
1145
|
+
default: 50
|
|
1146
|
+
},
|
|
1147
|
+
minAgeDays: {
|
|
1148
|
+
type: 'number',
|
|
1149
|
+
description: 'Filter sessions older than N days'
|
|
1150
|
+
},
|
|
1151
|
+
maxAgeDays: {
|
|
1152
|
+
type: 'number',
|
|
1153
|
+
description: 'Filter sessions newer than N days'
|
|
1154
|
+
},
|
|
1155
|
+
sortBy: {
|
|
1156
|
+
type: 'string',
|
|
1157
|
+
enum: ['newest', 'oldest'],
|
|
1158
|
+
description: 'Sort order by last activity',
|
|
1159
|
+
default: 'newest'
|
|
1160
|
+
}
|
|
1161
|
+
}
|
|
1162
|
+
},
|
|
1163
|
+
category: 'historical',
|
|
1164
|
+
discoveryTier: 'standard',
|
|
1165
|
+
metadata: {
|
|
1166
|
+
immutable: true,
|
|
1167
|
+
executionEnvironment: 'client',
|
|
1168
|
+
version: '1.0.0'
|
|
1169
|
+
}
|
|
1170
|
+
},
|
|
1171
|
+
{
|
|
1172
|
+
name: 'LoadSession',
|
|
1173
|
+
description: `Load full message history from a specific previous session.
|
|
1174
|
+
|
|
1175
|
+
Use this tool to:
|
|
1176
|
+
- Load complete conversation context from a past session
|
|
1177
|
+
- Access detailed message history beyond search results
|
|
1178
|
+
- Continue analysis from a previous conversation
|
|
1179
|
+
- Bring full context from identified sessions (via list_sessions or search_conversation_history)
|
|
1180
|
+
|
|
1181
|
+
Returns actual messages with full content. Use pagination (limit/offset) for large sessions.`,
|
|
1182
|
+
schema: {
|
|
1183
|
+
type: 'object',
|
|
1184
|
+
properties: {
|
|
1185
|
+
sessionId: {
|
|
1186
|
+
type: 'string',
|
|
1187
|
+
description: 'Session ID to load (from list_sessions or search_conversation_history results)'
|
|
1188
|
+
},
|
|
1189
|
+
limit: {
|
|
1190
|
+
type: 'number',
|
|
1191
|
+
description: 'Maximum number of messages to return',
|
|
1192
|
+
default: 100
|
|
1193
|
+
},
|
|
1194
|
+
offset: {
|
|
1195
|
+
type: 'number',
|
|
1196
|
+
description: 'Start from message offset (for pagination)',
|
|
1197
|
+
default: 0
|
|
1198
|
+
},
|
|
1199
|
+
includeSystemMessages: {
|
|
1200
|
+
type: 'boolean',
|
|
1201
|
+
description: 'Include system messages in results',
|
|
1202
|
+
default: false
|
|
1203
|
+
}
|
|
1204
|
+
},
|
|
1205
|
+
required: ['sessionId']
|
|
1206
|
+
},
|
|
1207
|
+
category: 'historical',
|
|
1208
|
+
discoveryTier: 'standard',
|
|
1209
|
+
metadata: {
|
|
1210
|
+
immutable: true,
|
|
1211
|
+
executionEnvironment: 'client',
|
|
1212
|
+
version: '1.0.0'
|
|
1213
|
+
}
|
|
1214
|
+
},
|
|
1215
|
+
// =====================================
|
|
1216
|
+
// ARTIFACT CREATION (formerly "addon")
|
|
1217
|
+
// =====================================
|
|
1218
|
+
{
|
|
1219
|
+
name: 'CreateArtifactTool',
|
|
1220
|
+
description: `Create artifacts in ANY language with flexible execution - the ultimate workspace for self-development and validation.
|
|
1221
|
+
|
|
1222
|
+
NOTE: "Artifact" and "sandbox" mean the same thing - your isolated runtime environment.
|
|
1223
|
+
Use the returned artifact ID with inspect_sandbox, interact_with_sandbox, modify_sandbox, stop_sandbox.
|
|
1224
|
+
|
|
1225
|
+
SUPPORTED LANGUAGES:
|
|
1226
|
+
- JavaScript/Node.js: Web servers, APIs, scripts
|
|
1227
|
+
- Python: Data processing, ML, web scrapers, Flask/FastAPI apps
|
|
1228
|
+
- Rust: High-performance tools, web scrapers, system utilities
|
|
1229
|
+
- Go: Concurrent services, APIs, CLI tools
|
|
1230
|
+
- Shell: Bash/sh scripts for automation
|
|
1231
|
+
- HTML: Static sites (auto-served with http-server)
|
|
1232
|
+
- Other: Any language with custom command parameter
|
|
1233
|
+
|
|
1234
|
+
EXECUTION MODES:
|
|
1235
|
+
- "oneshot": Run once then cleanup (default) - for one-time scripts
|
|
1236
|
+
- "dev": Hot reload on changes - for iterative development
|
|
1237
|
+
- "persistent": Keep running in tmux - for servers, long-running services
|
|
1238
|
+
|
|
1239
|
+
FLEXIBLE EXECUTION:
|
|
1240
|
+
Use 'command' parameter for custom execution:
|
|
1241
|
+
- Rust: "cargo run --release" or "cargo build && ./target/release/app"
|
|
1242
|
+
- Go: "go run main.go" or "go build && ./scraper"
|
|
1243
|
+
- Shell: "./script.sh" (auto-chmod +x)
|
|
1244
|
+
- Compiled: "./my-binary --args"
|
|
1245
|
+
|
|
1246
|
+
VISUAL FEEDBACK & ITERATION:
|
|
1247
|
+
- Set enableVisualFeedback=true for screenshots, DOM, console, network logs
|
|
1248
|
+
- Use to see and validate your creations
|
|
1249
|
+
- Perfect for iterative UI development and debugging
|
|
1250
|
+
|
|
1251
|
+
WORKFLOW FOR ITERATIVE DEVELOPMENT:
|
|
1252
|
+
1. Create artifact with enableVisualFeedback=true
|
|
1253
|
+
2. Use inspect_sandbox to observe runtime state (console logs, DOM, etc.)
|
|
1254
|
+
3. Use modify_sandbox for quick code edits (automatic hot reload)
|
|
1255
|
+
4. Use interact_with_sandbox to test user interactions (click, type, navigate)
|
|
1256
|
+
5. Use stop_sandbox to cleanup when finished
|
|
1257
|
+
|
|
1258
|
+
ARTIFACT LIFECYCLE:
|
|
1259
|
+
- Artifacts persist in memory until explicitly stopped with stop_sandbox
|
|
1260
|
+
- Use mode="dev" for rapid iteration with automatic hot reload
|
|
1261
|
+
- Use mode="persistent" for long-running servers (survives restarts via tmux)
|
|
1262
|
+
- Artifacts keep running in background until you stop them
|
|
1263
|
+
|
|
1264
|
+
EXAMPLES:
|
|
1265
|
+
|
|
1266
|
+
Rust Web Scraper (persistent):
|
|
1267
|
+
{
|
|
1268
|
+
"name": "rust-scraper",
|
|
1269
|
+
"mode": "persistent",
|
|
1270
|
+
"implementation": {
|
|
1271
|
+
"language": "rust",
|
|
1272
|
+
"code": "use reqwest::blocking::get; ...",
|
|
1273
|
+
"command": "cargo run --release"
|
|
1274
|
+
}
|
|
1275
|
+
}
|
|
1276
|
+
|
|
1277
|
+
Python Data Dashboard:
|
|
1278
|
+
{
|
|
1279
|
+
"name": "data-viz",
|
|
1280
|
+
"mode": "persistent",
|
|
1281
|
+
"implementation": {
|
|
1282
|
+
"language": "python",
|
|
1283
|
+
"code": "from flask import Flask ...",
|
|
1284
|
+
"fileName": "app.py"
|
|
1285
|
+
}
|
|
1286
|
+
}
|
|
1287
|
+
|
|
1288
|
+
Go API Server:
|
|
1289
|
+
{
|
|
1290
|
+
"name": "go-api",
|
|
1291
|
+
"mode": "persistent",
|
|
1292
|
+
"implementation": {
|
|
1293
|
+
"language": "go",
|
|
1294
|
+
"code": "package main ...",
|
|
1295
|
+
"command": "go run main.go"
|
|
1296
|
+
}
|
|
1297
|
+
}`,
|
|
1298
|
+
schema: {
|
|
1299
|
+
type: 'object',
|
|
1300
|
+
properties: {
|
|
1301
|
+
name: {
|
|
1302
|
+
type: 'string',
|
|
1303
|
+
description: 'Unique name for the addon tool'
|
|
1304
|
+
},
|
|
1305
|
+
description: {
|
|
1306
|
+
type: 'string',
|
|
1307
|
+
description: 'What the tool does'
|
|
1308
|
+
},
|
|
1309
|
+
parameters: {
|
|
1310
|
+
type: 'object',
|
|
1311
|
+
description: 'JSON Schema for tool parameters'
|
|
1312
|
+
},
|
|
1313
|
+
implementation: {
|
|
1314
|
+
type: 'object',
|
|
1315
|
+
description: 'Code implementation object. Required fields: "language" (javascript/python/rust/go/shell/html/other) and "code" (source code string). Optional: "fileName" (e.g., main.rs), "command" (custom run command like "cargo run"), "buildCommand" (pre-execution build), "dependencies" (package names array).',
|
|
1316
|
+
properties: {
|
|
1317
|
+
language: {
|
|
1318
|
+
type: 'string',
|
|
1319
|
+
enum: ['javascript', 'python', 'rust', 'go', 'shell', 'html', 'other'],
|
|
1320
|
+
description: 'Programming language: javascript, python, rust, go, shell, html, or other for custom runtimes'
|
|
1321
|
+
},
|
|
1322
|
+
code: {
|
|
1323
|
+
type: 'string',
|
|
1324
|
+
description: 'Source code that implements the tool. Can call other tools like Task. For web apps, include full HTML with embedded CSS/JS.'
|
|
1325
|
+
},
|
|
1326
|
+
fileName: {
|
|
1327
|
+
type: 'string',
|
|
1328
|
+
description: 'Optional: Specific filename (e.g., "main.rs", "app.go", "scraper.sh"). Auto-detected if not provided.'
|
|
1329
|
+
},
|
|
1330
|
+
command: {
|
|
1331
|
+
type: 'string',
|
|
1332
|
+
description: 'Optional: Custom command to run the artifact (e.g., "cargo run --release", "go build && ./app", "./scraper.sh"). Use for languages beyond javascript/python or custom build/run workflows.'
|
|
1333
|
+
},
|
|
1334
|
+
buildCommand: {
|
|
1335
|
+
type: 'string',
|
|
1336
|
+
description: 'Optional: Build command to run before executing (e.g., "cargo build --release", "go build -o app"). Automatically runs before the main command.'
|
|
1337
|
+
},
|
|
1338
|
+
dependencies: {
|
|
1339
|
+
type: 'array',
|
|
1340
|
+
items: { type: 'string' },
|
|
1341
|
+
description: 'Required packages (npm, pip, cargo dependencies, etc.)'
|
|
1342
|
+
}
|
|
1343
|
+
},
|
|
1344
|
+
required: ['language', 'code']
|
|
1345
|
+
},
|
|
1346
|
+
mode: {
|
|
1347
|
+
type: 'string',
|
|
1348
|
+
enum: ['oneshot', 'dev', 'persistent'],
|
|
1349
|
+
description: 'Execution mode: "oneshot" for one-time scripts, "dev" for hot reload development, "persistent" for long-running web servers and services',
|
|
1350
|
+
default: 'oneshot'
|
|
1351
|
+
},
|
|
1352
|
+
enableVisualFeedback: {
|
|
1353
|
+
type: 'boolean',
|
|
1354
|
+
description: 'Capture screenshots, DOM structure, console logs, and network activity. Use this to see your creation and iterate on the UI.',
|
|
1355
|
+
default: false
|
|
1356
|
+
},
|
|
1357
|
+
enableReactIntrospection: {
|
|
1358
|
+
type: 'boolean',
|
|
1359
|
+
description: 'Include a framework report (React/Vue/Svelte detection, React version) in the initial visual snapshot. sandbox_scan/sandbox_grab/sandbox_detect_framework work regardless of this flag.',
|
|
1360
|
+
default: false
|
|
1361
|
+
},
|
|
1362
|
+
uiConfig: {
|
|
1363
|
+
type: 'object',
|
|
1364
|
+
description: 'UI / framework options. For a REACT artifact, set framework="react" and put a component (define or default-export `App`) in implementation.code — it is built into a static, introspectable page (no need to hand-write index.html).',
|
|
1365
|
+
properties: {
|
|
1366
|
+
framework: {
|
|
1367
|
+
type: 'string',
|
|
1368
|
+
enum: ['express', 'fastapi', 'flask', 'nextjs', 'react'],
|
|
1369
|
+
description: "Web framework. 'react' builds a React artifact from implementation.code; introspect it with sandbox_scan/sandbox_grab/sandbox_detect_framework."
|
|
1370
|
+
},
|
|
1371
|
+
reactMode: {
|
|
1372
|
+
type: 'string',
|
|
1373
|
+
enum: ['cdn', 'bundled'],
|
|
1374
|
+
description: "React only. 'bundled' (default when available): esbuild + real source maps (sandbox_grab returns real src/App.tsx:line). 'cdn': zero-install in-browser Babel, faster start."
|
|
1375
|
+
},
|
|
1376
|
+
additionalFiles: {
|
|
1377
|
+
type: 'array',
|
|
1378
|
+
items: {
|
|
1379
|
+
type: 'object',
|
|
1380
|
+
properties: {
|
|
1381
|
+
path: { type: 'string', description: "Path under src/, e.g. 'components/Button.tsx'" },
|
|
1382
|
+
code: { type: 'string', description: 'Module source' }
|
|
1383
|
+
},
|
|
1384
|
+
required: ['path', 'code']
|
|
1385
|
+
},
|
|
1386
|
+
description: 'React bundled mode only: extra source modules importable from App.'
|
|
1387
|
+
}
|
|
1388
|
+
}
|
|
1389
|
+
},
|
|
1390
|
+
testCases: {
|
|
1391
|
+
type: 'array',
|
|
1392
|
+
items: {
|
|
1393
|
+
type: 'object',
|
|
1394
|
+
properties: {
|
|
1395
|
+
input: { type: 'object' },
|
|
1396
|
+
expectedOutput: { type: 'object' }
|
|
1397
|
+
}
|
|
1398
|
+
},
|
|
1399
|
+
description: 'Optional test cases for validation'
|
|
1400
|
+
}
|
|
1401
|
+
},
|
|
1402
|
+
required: ['name', 'description', 'parameters', 'implementation']
|
|
1403
|
+
},
|
|
1404
|
+
category: 'base',
|
|
1405
|
+
discoveryTier: 'standard',
|
|
1406
|
+
metadata: {
|
|
1407
|
+
immutable: true,
|
|
1408
|
+
executionEnvironment: 'client',
|
|
1409
|
+
version: '1.0.0'
|
|
1410
|
+
}
|
|
1411
|
+
},
|
|
1412
|
+
{
|
|
1413
|
+
name: 'InteractWithSandbox',
|
|
1414
|
+
description: `Interact with sandbox/artifact UI programmatically using Playwright.
|
|
1415
|
+
|
|
1416
|
+
WHEN TO USE: Test user interactions on artifacts created with create_artifact_tool.
|
|
1417
|
+
|
|
1418
|
+
Supports various interactions:
|
|
1419
|
+
- Click buttons, links, elements
|
|
1420
|
+
- Type into inputs and textareas
|
|
1421
|
+
- Navigate to different URLs
|
|
1422
|
+
- Scroll, hover, select elements
|
|
1423
|
+
- Press keyboard shortcuts (Ctrl+V, Ctrl+S, Escape, etc.)
|
|
1424
|
+
- Zoom in/out for visual inspection
|
|
1425
|
+
- Wait for animations and UI updates
|
|
1426
|
+
|
|
1427
|
+
COMMON USE CASES:
|
|
1428
|
+
- Test form submissions (type → click submit → verify)
|
|
1429
|
+
- Navigate multi-page flows
|
|
1430
|
+
- Paste code with Ctrl+V
|
|
1431
|
+
- Test interactive UI elements
|
|
1432
|
+
- Visual regression testing
|
|
1433
|
+
|
|
1434
|
+
TIP: Chain multiple actions in one call (click → type → click submit → wait).
|
|
1435
|
+
|
|
1436
|
+
WORKFLOW: create_artifact_tool → interact_with_sandbox → inspect_sandbox (see results)`,
|
|
1437
|
+
schema: {
|
|
1438
|
+
type: 'object',
|
|
1439
|
+
properties: {
|
|
1440
|
+
sandboxId: {
|
|
1441
|
+
type: 'string',
|
|
1442
|
+
description: 'ID of the sandbox to interact with'
|
|
1443
|
+
},
|
|
1444
|
+
actions: {
|
|
1445
|
+
type: 'array',
|
|
1446
|
+
description: 'Array of UI actions to execute sequentially. Each action requires "type" (click/type/navigate/scroll/hover/select/wait/keypress/zoom). Add "selector" for element targeting, "value" for text/URLs, "duration" for wait (ms), "key" for keypress (e.g., "Ctrl+V"), or "zoomLevel" for zoom (1.0=100%).',
|
|
1447
|
+
items: {
|
|
1448
|
+
type: 'object',
|
|
1449
|
+
properties: {
|
|
1450
|
+
type: {
|
|
1451
|
+
type: 'string',
|
|
1452
|
+
enum: ['click', 'type', 'navigate', 'scroll', 'hover', 'select', 'wait', 'keypress', 'zoom'],
|
|
1453
|
+
description: 'Type of interaction'
|
|
1454
|
+
},
|
|
1455
|
+
selector: { type: 'string', description: 'CSS selector for the element' },
|
|
1456
|
+
value: { type: 'string', description: 'Value to type or select' },
|
|
1457
|
+
key: { type: 'string', description: 'Key to press (e.g., "Enter", "Ctrl+V")' },
|
|
1458
|
+
zoomLevel: { type: 'number', description: 'Zoom level (1.0 = 100%)' },
|
|
1459
|
+
duration: { type: 'number', description: 'Wait duration in milliseconds' },
|
|
1460
|
+
deltaX: { type: 'number', description: 'Horizontal scroll delta' },
|
|
1461
|
+
deltaY: { type: 'number', description: 'Vertical scroll delta' }
|
|
1462
|
+
},
|
|
1463
|
+
required: ['type']
|
|
1464
|
+
}
|
|
1465
|
+
},
|
|
1466
|
+
captureAfterEachAction: {
|
|
1467
|
+
type: 'boolean',
|
|
1468
|
+
description: 'Capture screenshot after each action'
|
|
1469
|
+
},
|
|
1470
|
+
returnFinalSnapshot: {
|
|
1471
|
+
type: 'boolean',
|
|
1472
|
+
description: 'Return final screenshot'
|
|
1473
|
+
}
|
|
1474
|
+
},
|
|
1475
|
+
required: ['sandboxId', 'actions']
|
|
1476
|
+
},
|
|
1477
|
+
category: 'base',
|
|
1478
|
+
discoveryTier: 'standard',
|
|
1479
|
+
metadata: {
|
|
1480
|
+
immutable: true,
|
|
1481
|
+
executionEnvironment: 'client',
|
|
1482
|
+
version: '1.0.0'
|
|
1483
|
+
}
|
|
1484
|
+
},
|
|
1485
|
+
{
|
|
1486
|
+
name: 'ModifySandbox',
|
|
1487
|
+
description: `Modify sandbox/artifact code with automatic hot-reload.
|
|
1488
|
+
|
|
1489
|
+
WHEN TO USE: Edit artifact code without recreation (faster than create_artifact_tool for iterations).
|
|
1490
|
+
|
|
1491
|
+
Allows updating sandbox HTML/CSS/JS without recreating the sandbox.
|
|
1492
|
+
Changes are applied immediately and the browser reloads automatically.
|
|
1493
|
+
|
|
1494
|
+
COMMON USE CASES:
|
|
1495
|
+
- Fix bugs in artifact code
|
|
1496
|
+
- Add new features iteratively
|
|
1497
|
+
- Test different implementations quickly
|
|
1498
|
+
- Refine UI based on visual feedback
|
|
1499
|
+
- Quick typo fixes or styling tweaks
|
|
1500
|
+
|
|
1501
|
+
TIP: Changes apply immediately - no need to restart artifact.
|
|
1502
|
+
|
|
1503
|
+
WORKFLOW: create_artifact_tool → inspect_sandbox → modify_sandbox → inspect_sandbox (loop)`,
|
|
1504
|
+
schema: {
|
|
1505
|
+
type: 'object',
|
|
1506
|
+
properties: {
|
|
1507
|
+
sandboxId: {
|
|
1508
|
+
type: 'string',
|
|
1509
|
+
description: 'ID of the sandbox to modify'
|
|
1510
|
+
},
|
|
1511
|
+
code: {
|
|
1512
|
+
type: 'object',
|
|
1513
|
+
properties: {
|
|
1514
|
+
html: { type: 'string', description: 'Updated HTML content' },
|
|
1515
|
+
css: { type: 'string', description: 'Updated CSS content' },
|
|
1516
|
+
javascript: { type: 'string', description: 'Updated JavaScript content' }
|
|
1517
|
+
},
|
|
1518
|
+
description: 'Code to update (provide only what needs to change)'
|
|
1519
|
+
},
|
|
1520
|
+
reload: {
|
|
1521
|
+
type: 'boolean',
|
|
1522
|
+
description: 'Reload the sandbox after modification (default: true)'
|
|
1523
|
+
}
|
|
1524
|
+
},
|
|
1525
|
+
required: ['sandboxId', 'code']
|
|
1526
|
+
},
|
|
1527
|
+
category: 'base',
|
|
1528
|
+
discoveryTier: 'standard',
|
|
1529
|
+
metadata: {
|
|
1530
|
+
immutable: true,
|
|
1531
|
+
executionEnvironment: 'client',
|
|
1532
|
+
version: '1.0.0'
|
|
1533
|
+
}
|
|
1534
|
+
},
|
|
1535
|
+
{
|
|
1536
|
+
name: 'InspectSandbox',
|
|
1537
|
+
description: `Query sandbox/artifact state and extract information.
|
|
1538
|
+
|
|
1539
|
+
WHEN TO USE: After creating or modifying an artifact to observe its current runtime state.
|
|
1540
|
+
|
|
1541
|
+
Can retrieve:
|
|
1542
|
+
- Current URL
|
|
1543
|
+
- Page title
|
|
1544
|
+
- DOM structure (check element visibility, content)
|
|
1545
|
+
- Console logs (errors, warnings, info)
|
|
1546
|
+
- Network requests (API calls, resources)
|
|
1547
|
+
- Computed styles
|
|
1548
|
+
- JavaScript state via evaluation
|
|
1549
|
+
- Performance metrics
|
|
1550
|
+
- Screenshots
|
|
1551
|
+
|
|
1552
|
+
COMMON USE CASES:
|
|
1553
|
+
- Check console errors after modify_sandbox
|
|
1554
|
+
- Verify element visibility or text content
|
|
1555
|
+
- Extract data from the page
|
|
1556
|
+
- Debug runtime issues
|
|
1557
|
+
- Validate state after interactions
|
|
1558
|
+
|
|
1559
|
+
WORKFLOW: create_artifact_tool → inspect_sandbox → modify_sandbox → inspect_sandbox (loop)`,
|
|
1560
|
+
schema: {
|
|
1561
|
+
type: 'object',
|
|
1562
|
+
properties: {
|
|
1563
|
+
sandboxId: {
|
|
1564
|
+
type: 'string',
|
|
1565
|
+
description: 'ID of the sandbox to inspect'
|
|
1566
|
+
},
|
|
1567
|
+
query: {
|
|
1568
|
+
type: 'object',
|
|
1569
|
+
properties: {
|
|
1570
|
+
url: { type: 'boolean', description: 'Get current URL' },
|
|
1571
|
+
title: { type: 'boolean', description: 'Get page title' },
|
|
1572
|
+
dom: {
|
|
1573
|
+
type: 'object',
|
|
1574
|
+
properties: {
|
|
1575
|
+
selector: { type: 'string', description: 'CSS selector to query' },
|
|
1576
|
+
attribute: { type: 'string', description: 'Attribute to extract' }
|
|
1577
|
+
},
|
|
1578
|
+
description: 'Query DOM elements'
|
|
1579
|
+
},
|
|
1580
|
+
console: { type: 'boolean', description: 'Get console logs' },
|
|
1581
|
+
network: { type: 'boolean', description: 'Get network requests' },
|
|
1582
|
+
evaluate: { type: 'string', description: 'JavaScript expression to evaluate' },
|
|
1583
|
+
screenshot: { type: 'boolean', description: 'Take screenshot' }
|
|
1584
|
+
},
|
|
1585
|
+
description: 'What to query from the sandbox'
|
|
1586
|
+
}
|
|
1587
|
+
},
|
|
1588
|
+
required: ['sandboxId', 'query']
|
|
1589
|
+
},
|
|
1590
|
+
category: 'base',
|
|
1591
|
+
discoveryTier: 'standard',
|
|
1592
|
+
metadata: {
|
|
1593
|
+
immutable: true,
|
|
1594
|
+
executionEnvironment: 'client',
|
|
1595
|
+
version: '1.0.0'
|
|
1596
|
+
}
|
|
1597
|
+
},
|
|
1598
|
+
{
|
|
1599
|
+
name: 'SandboxScan',
|
|
1600
|
+
description: `Discover elements in a running sandbox/artifact. Same contract as the nexus-browser scan tool: each element carries a unique cssSelector (reuse it with InteractWithSandbox), isInteractive, relevanceScore — and componentName on React artifacts.
|
|
1601
|
+
|
|
1602
|
+
WORKFLOW (scan -> act -> scan): sandbox_scan -> interact_with_sandbox(click/type with cssSelector) -> sandbox_scan to verify.
|
|
1603
|
+
|
|
1604
|
+
FILTERS: tagName, hasText, isInteractive, id, className, placeholder, name, componentName (React).`,
|
|
1605
|
+
schema: {
|
|
1606
|
+
type: 'object',
|
|
1607
|
+
properties: {
|
|
1608
|
+
sandboxId: { type: 'string', description: 'ID of the sandbox to scan' },
|
|
1609
|
+
filter: {
|
|
1610
|
+
type: 'object',
|
|
1611
|
+
properties: {
|
|
1612
|
+
tagName: { type: 'string', description: "Exact lowercase tag, e.g. 'button'" },
|
|
1613
|
+
hasText: { type: 'string', description: 'Case-insensitive text substring' },
|
|
1614
|
+
isInteractive: { type: 'boolean', description: 'Only interactive elements' },
|
|
1615
|
+
id: { type: 'string', description: 'Exact id attribute' },
|
|
1616
|
+
className: { type: 'string', description: 'classList contains' },
|
|
1617
|
+
placeholder: { type: 'string', description: 'Placeholder substring' },
|
|
1618
|
+
name: { type: 'string', description: 'Exact name attribute' },
|
|
1619
|
+
componentName: { type: 'string', description: 'React component name' }
|
|
1620
|
+
},
|
|
1621
|
+
description: 'Optional element filters (AND-combined)'
|
|
1622
|
+
},
|
|
1623
|
+
limit: { type: 'number', description: 'Max elements (default 30, max 100)' },
|
|
1624
|
+
includeOffscreen: { type: 'boolean', description: 'Include offscreen elements' }
|
|
1625
|
+
},
|
|
1626
|
+
required: ['sandboxId']
|
|
1627
|
+
},
|
|
1628
|
+
category: 'base',
|
|
1629
|
+
discoveryTier: 'standard',
|
|
1630
|
+
metadata: { immutable: true, executionEnvironment: 'client', version: '1.0.0' }
|
|
1631
|
+
},
|
|
1632
|
+
{
|
|
1633
|
+
name: 'SandboxGrab',
|
|
1634
|
+
description: `Query ONE element in a running sandbox by cssSelector or coordinates. Same contract as the nexus-browser grab tool. Returns DOM detail (attributes, rect, computed style, parent chain, HTML preview) and — on React artifacts — react: { componentName, componentStack, props, sourceLocation }.
|
|
1635
|
+
|
|
1636
|
+
WHEN TO USE: after sandbox_scan to drill into a specific element, or with x/y after a click to learn WHICH component you hit.`,
|
|
1637
|
+
schema: {
|
|
1638
|
+
type: 'object',
|
|
1639
|
+
properties: {
|
|
1640
|
+
sandboxId: { type: 'string', description: 'ID of the sandbox' },
|
|
1641
|
+
selector: { type: 'string', description: 'CSS selector (use cssSelector from sandbox_scan)' },
|
|
1642
|
+
x: { type: 'number', description: 'X coordinate (alternative to selector)' },
|
|
1643
|
+
y: { type: 'number', description: 'Y coordinate (alternative to selector)' },
|
|
1644
|
+
maxLength: { type: 'number', description: 'Max text length (default 500)' }
|
|
1645
|
+
},
|
|
1646
|
+
required: ['sandboxId']
|
|
1647
|
+
},
|
|
1648
|
+
category: 'base',
|
|
1649
|
+
discoveryTier: 'standard',
|
|
1650
|
+
metadata: { immutable: true, executionEnvironment: 'client', version: '1.0.0' }
|
|
1651
|
+
},
|
|
1652
|
+
{
|
|
1653
|
+
name: 'SandboxDetectFramework',
|
|
1654
|
+
description: `Detect the frontend framework of a running sandbox/artifact. Same schema as the nexus-browser detect_framework tool: react, reactVersion, next, remix, gatsby, vue, svelte, angular, compiler, hasDevTools, rendererCount, heavyLibraries.
|
|
1655
|
+
|
|
1656
|
+
WHEN TO USE: once after creating an artifact — if react=true, prefer sandbox_scan/sandbox_grab for component-level verification instead of screenshot-only inspection.`,
|
|
1657
|
+
schema: {
|
|
1658
|
+
type: 'object',
|
|
1659
|
+
properties: {
|
|
1660
|
+
sandboxId: { type: 'string', description: 'ID of the sandbox' }
|
|
1661
|
+
},
|
|
1662
|
+
required: ['sandboxId']
|
|
1663
|
+
},
|
|
1664
|
+
category: 'base',
|
|
1665
|
+
discoveryTier: 'standard',
|
|
1666
|
+
metadata: { immutable: true, executionEnvironment: 'client', version: '1.0.0' }
|
|
1667
|
+
},
|
|
1668
|
+
{
|
|
1669
|
+
name: 'SandboxComponentTree',
|
|
1670
|
+
description: `Return the React component hierarchy of a running sandbox (host elements collapsed, components only). Equivalent to a DevTools-style component-tree view.
|
|
1671
|
+
|
|
1672
|
+
WHEN TO USE: understand a React artifact's structure — which components nest where, and (when available) each component's source file. Use after sandbox_detect_framework reports react:true.`,
|
|
1673
|
+
schema: {
|
|
1674
|
+
type: 'object',
|
|
1675
|
+
properties: {
|
|
1676
|
+
sandboxId: { type: 'string', description: 'ID of the sandbox' },
|
|
1677
|
+
rootSelector: { type: 'string', description: 'CSS selector for the tree root (default #root/#app)' },
|
|
1678
|
+
maxDepth: { type: 'number', description: 'Max component depth (default 8)' }
|
|
1679
|
+
},
|
|
1680
|
+
required: ['sandboxId']
|
|
1681
|
+
},
|
|
1682
|
+
category: 'base',
|
|
1683
|
+
discoveryTier: 'standard',
|
|
1684
|
+
metadata: { immutable: true, executionEnvironment: 'client', version: '1.0.0' }
|
|
1685
|
+
},
|
|
1686
|
+
{
|
|
1687
|
+
name: 'SandboxRenderTrace',
|
|
1688
|
+
description: `Trace React re-renders in a running sandbox — react-scan's role: which components re-rendered, how often, and total render time. Catches wasted re-renders (unstable props, context churn).
|
|
1689
|
+
|
|
1690
|
+
WORKFLOW: sandbox_render_trace(action:'start') -> interact_with_sandbox (click/type to drive renders) -> sandbox_render_trace(action:'stop') returns per-component render counts/timings, most-rendered first. Requires a React artifact in development build (the default).`,
|
|
1691
|
+
schema: {
|
|
1692
|
+
type: 'object',
|
|
1693
|
+
properties: {
|
|
1694
|
+
sandboxId: { type: 'string', description: 'ID of the sandbox' },
|
|
1695
|
+
action: { type: 'string', enum: ['start', 'stop'], description: "'start' resets+enables tracing; 'stop' returns the report" }
|
|
1696
|
+
},
|
|
1697
|
+
required: ['sandboxId', 'action']
|
|
1698
|
+
},
|
|
1699
|
+
category: 'base',
|
|
1700
|
+
discoveryTier: 'standard',
|
|
1701
|
+
metadata: { immutable: true, executionEnvironment: 'client', version: '1.0.0' }
|
|
1702
|
+
},
|
|
1703
|
+
{
|
|
1704
|
+
name: 'StopSandbox',
|
|
1705
|
+
description: `Stop a running sandbox/artifact and cleanup resources.
|
|
1706
|
+
|
|
1707
|
+
WHEN TO USE: Cleanup when finished, free resources, or start fresh. Artifacts persist until stopped.
|
|
1708
|
+
|
|
1709
|
+
Stops the artifact process and cleans up resources:
|
|
1710
|
+
- Kills the running process (Node.js/Python/Rust/Go/etc.)
|
|
1711
|
+
- Closes file watchers (hot reload in dev mode)
|
|
1712
|
+
- Optionally captures final snapshot
|
|
1713
|
+
- Optionally deletes artifact directory
|
|
1714
|
+
- Closes Playwright browser if no other artifacts need it
|
|
1715
|
+
|
|
1716
|
+
COMMON USE CASES:
|
|
1717
|
+
- Finished development and testing
|
|
1718
|
+
- Free memory and resources
|
|
1719
|
+
- Start over from scratch
|
|
1720
|
+
- Recover from errors
|
|
1721
|
+
- Cleanup before creating new version
|
|
1722
|
+
|
|
1723
|
+
NOTE: Artifacts keep running in background until explicitly stopped. Only stop if you need to free resources or restart.`,
|
|
1724
|
+
schema: {
|
|
1725
|
+
type: 'object',
|
|
1726
|
+
properties: {
|
|
1727
|
+
sandboxId: {
|
|
1728
|
+
type: 'string',
|
|
1729
|
+
description: 'Unique ID of the sandbox to stop'
|
|
1730
|
+
},
|
|
1731
|
+
cleanup: {
|
|
1732
|
+
type: 'boolean',
|
|
1733
|
+
description: 'Delete sandbox directory after stopping (default: false)'
|
|
1734
|
+
},
|
|
1735
|
+
captureFinalSnapshot: {
|
|
1736
|
+
type: 'boolean',
|
|
1737
|
+
description: 'Capture final visual snapshot before stopping (default: false)'
|
|
1738
|
+
}
|
|
1739
|
+
},
|
|
1740
|
+
required: ['sandboxId']
|
|
1741
|
+
},
|
|
1742
|
+
category: 'base',
|
|
1743
|
+
discoveryTier: 'standard',
|
|
1744
|
+
metadata: {
|
|
1745
|
+
immutable: true,
|
|
1746
|
+
executionEnvironment: 'client',
|
|
1747
|
+
version: '1.0.0'
|
|
1748
|
+
}
|
|
1749
|
+
},
|
|
1750
|
+
// =====================================
|
|
1751
|
+
// WORKSPACE MANAGEMENT
|
|
1752
|
+
// =====================================
|
|
1753
|
+
{
|
|
1754
|
+
name: 'WorkspaceManager',
|
|
1755
|
+
description: `Manage isolated git worktrees for multi-agent parallel development.
|
|
1756
|
+
|
|
1757
|
+
Use this tool to create, inspect, diff, and clean up git worktrees that give each agent
|
|
1758
|
+
an isolated copy of the codebase. Supports both local repos and external clones.
|
|
1759
|
+
|
|
1760
|
+
MODES:
|
|
1761
|
+
- create: Create a worktree from the current repo on a new branch
|
|
1762
|
+
- clone: Clone an external repo and optionally create a worktree branch
|
|
1763
|
+
- status: List all active worktrees
|
|
1764
|
+
- diff: Get diff between a worktree and its base branch (requires worktreePath)
|
|
1765
|
+
- cleanup: Remove a worktree, the branch it created, and (if cloned) its clone directory
|
|
1766
|
+
|
|
1767
|
+
WORKFLOW:
|
|
1768
|
+
1. workspace_manager(mode=create, branch=feature-x) → returns { worktreePath, branch, cloneDir? }
|
|
1769
|
+
2. Assign worktreePath to sub-agent via task tool prompt
|
|
1770
|
+
3. Agent works in isolated worktree (no conflicts with main)
|
|
1771
|
+
4. workspace_manager(mode=diff, worktreePath=<path>) → review changes
|
|
1772
|
+
5. workspace_manager(mode=cleanup, worktreePath=<path>, cloneDir=<dir if from clone>) → remove worktree + branch + clone dir`,
|
|
1773
|
+
schema: {
|
|
1774
|
+
type: 'object',
|
|
1775
|
+
properties: {
|
|
1776
|
+
mode: {
|
|
1777
|
+
type: 'string',
|
|
1778
|
+
enum: ['create', 'clone', 'status', 'diff', 'cleanup'],
|
|
1779
|
+
description: 'Operation mode'
|
|
1780
|
+
},
|
|
1781
|
+
repo: {
|
|
1782
|
+
type: 'string',
|
|
1783
|
+
description: 'For clone: "owner/repo" or full URL. For create: local repo path (defaults to project root).'
|
|
1784
|
+
},
|
|
1785
|
+
branch: {
|
|
1786
|
+
type: 'string',
|
|
1787
|
+
description: 'Branch name for worktree (create/clone). Auto-generated if not provided.'
|
|
1788
|
+
},
|
|
1789
|
+
baseBranch: {
|
|
1790
|
+
type: 'string',
|
|
1791
|
+
description: 'Base branch for diff comparison (default: main)'
|
|
1792
|
+
},
|
|
1793
|
+
worktreePath: {
|
|
1794
|
+
type: 'string',
|
|
1795
|
+
description: 'Path to specific worktree (required for diff/cleanup)'
|
|
1796
|
+
},
|
|
1797
|
+
cloneDir: {
|
|
1798
|
+
type: 'string',
|
|
1799
|
+
description: 'For cleanup: the clone directory to also remove (from a prior clone result)'
|
|
1800
|
+
},
|
|
1801
|
+
maxDiffLines: {
|
|
1802
|
+
type: 'number',
|
|
1803
|
+
description: 'Maximum diff lines to return (default: 5000)'
|
|
1804
|
+
}
|
|
1805
|
+
},
|
|
1806
|
+
required: ['mode']
|
|
1807
|
+
},
|
|
1808
|
+
category: 'base',
|
|
1809
|
+
discoveryTier: 'standard',
|
|
1810
|
+
metadata: {
|
|
1811
|
+
immutable: true,
|
|
1812
|
+
executionEnvironment: 'client',
|
|
1813
|
+
version: '1.0.0'
|
|
1814
|
+
}
|
|
1815
|
+
},
|
|
1816
|
+
// =====================================
|
|
1817
|
+
// PR MANAGEMENT
|
|
1818
|
+
// =====================================
|
|
1819
|
+
{
|
|
1820
|
+
name: 'PRAgent',
|
|
1821
|
+
description: `Manage GitHub pull requests — review, create, list, and post reviews.
|
|
1822
|
+
|
|
1823
|
+
MODES:
|
|
1824
|
+
- review: Fetch a PR's diff + metadata for analysis (read-only; does NOT check out the branch)
|
|
1825
|
+
- create: Set up workspace for creating a new PR
|
|
1826
|
+
- list: List open PRs for a repository
|
|
1827
|
+
- post-review: Post review comments (approve, request-changes, comment)
|
|
1828
|
+
|
|
1829
|
+
Returns structured context for the LLM to dispatch Task calls to specialized agents.
|
|
1830
|
+
Does NOT auto-spawn sub-agents — returns data for orchestrator to decide next steps.
|
|
1831
|
+
|
|
1832
|
+
WORKFLOW (PR Review):
|
|
1833
|
+
1. pr_agent(mode=review, repo=owner/repo, prNumber=42) → diff + metadata
|
|
1834
|
+
2. LLM dispatches parallel task agents for security, quality, architecture review
|
|
1835
|
+
3. pr_agent(mode=post-review, action=approve/request-changes, body=findings)
|
|
1836
|
+
|
|
1837
|
+
REQUIRES: gh CLI authenticated and available in PATH.`,
|
|
1838
|
+
schema: {
|
|
1839
|
+
type: 'object',
|
|
1840
|
+
properties: {
|
|
1841
|
+
repo: {
|
|
1842
|
+
type: 'string',
|
|
1843
|
+
description: 'Repository in "owner/repo" format'
|
|
1844
|
+
},
|
|
1845
|
+
mode: {
|
|
1846
|
+
type: 'string',
|
|
1847
|
+
enum: ['review', 'create', 'list', 'post-review'],
|
|
1848
|
+
description: 'Operation mode'
|
|
1849
|
+
},
|
|
1850
|
+
prNumber: {
|
|
1851
|
+
type: 'number',
|
|
1852
|
+
description: 'PR number (for review/post-review)'
|
|
1853
|
+
},
|
|
1854
|
+
branch: {
|
|
1855
|
+
type: 'string',
|
|
1856
|
+
description: 'Branch name (for create mode)'
|
|
1857
|
+
},
|
|
1858
|
+
action: {
|
|
1859
|
+
type: 'string',
|
|
1860
|
+
enum: ['approve', 'request-changes', 'comment'],
|
|
1861
|
+
description: 'Review action (for post-review mode)'
|
|
1862
|
+
},
|
|
1863
|
+
body: {
|
|
1864
|
+
type: 'string',
|
|
1865
|
+
description: 'Comment body (for post-review mode)'
|
|
1866
|
+
},
|
|
1867
|
+
diffOptions: {
|
|
1868
|
+
type: 'object',
|
|
1869
|
+
properties: {
|
|
1870
|
+
pathFilter: {
|
|
1871
|
+
type: 'string',
|
|
1872
|
+
description: 'Filter diff to specific path pattern'
|
|
1873
|
+
},
|
|
1874
|
+
maxLines: {
|
|
1875
|
+
type: 'number',
|
|
1876
|
+
description: 'Maximum diff lines to return (default: 5000)'
|
|
1877
|
+
}
|
|
1878
|
+
},
|
|
1879
|
+
description: 'Options for diff extraction'
|
|
1880
|
+
}
|
|
1881
|
+
},
|
|
1882
|
+
required: ['repo', 'mode']
|
|
1883
|
+
},
|
|
1884
|
+
category: 'base',
|
|
1885
|
+
discoveryTier: 'standard',
|
|
1886
|
+
metadata: {
|
|
1887
|
+
immutable: true,
|
|
1888
|
+
executionEnvironment: 'client',
|
|
1889
|
+
version: '1.0.0'
|
|
1890
|
+
}
|
|
1891
|
+
},
|
|
1892
|
+
{
|
|
1893
|
+
name: 'TmuxSession',
|
|
1894
|
+
description: `Manage persistent terminal sessions with tmux. Supports creating sessions, sending commands, capturing output, and taking visual screenshots.
|
|
1895
|
+
|
|
1896
|
+
Use cases:
|
|
1897
|
+
- Create persistent terminal sessions that survive disconnects
|
|
1898
|
+
- Run long-running commands in the background
|
|
1899
|
+
- Capture terminal output and history
|
|
1900
|
+
- Manage multiple concurrent terminal sessions
|
|
1901
|
+
- Execute commands in specific working directories
|
|
1902
|
+
- Set custom environment variables per session
|
|
1903
|
+
|
|
1904
|
+
Actions:
|
|
1905
|
+
- create: Create a new tmux session
|
|
1906
|
+
- send: Send command to existing session
|
|
1907
|
+
- capture: Capture session output/history
|
|
1908
|
+
- list: List all active sessions
|
|
1909
|
+
- kill: Terminate a session
|
|
1910
|
+
- snapshot: Capture visual screenshot (if supported)
|
|
1911
|
+
|
|
1912
|
+
Graceful degradation: Returns error if tmux is not installed.`,
|
|
1913
|
+
schema: {
|
|
1914
|
+
type: 'object',
|
|
1915
|
+
properties: {
|
|
1916
|
+
action: {
|
|
1917
|
+
type: 'string',
|
|
1918
|
+
enum: ['create', 'send', 'capture', 'list', 'kill', 'snapshot'],
|
|
1919
|
+
description: 'Action to perform on tmux session'
|
|
1920
|
+
},
|
|
1921
|
+
sessionId: {
|
|
1922
|
+
type: 'string',
|
|
1923
|
+
description: 'Session identifier (required for send, capture, kill, snapshot actions)'
|
|
1924
|
+
},
|
|
1925
|
+
command: {
|
|
1926
|
+
type: 'string',
|
|
1927
|
+
description: 'Command to send to session (required for send action)'
|
|
1928
|
+
},
|
|
1929
|
+
cwd: {
|
|
1930
|
+
type: 'string',
|
|
1931
|
+
description: 'Working directory for new session (optional for create action)'
|
|
1932
|
+
},
|
|
1933
|
+
env: {
|
|
1934
|
+
type: 'object',
|
|
1935
|
+
description: 'Environment variables for new session (optional for create action)',
|
|
1936
|
+
additionalProperties: { type: 'string' }
|
|
1937
|
+
},
|
|
1938
|
+
captureHistory: {
|
|
1939
|
+
type: 'boolean',
|
|
1940
|
+
description: 'Capture entire scrollback history (optional for capture action)',
|
|
1941
|
+
default: false
|
|
1942
|
+
},
|
|
1943
|
+
includeScreenshot: {
|
|
1944
|
+
type: 'boolean',
|
|
1945
|
+
description: 'Include visual screenshot (optional for snapshot action)',
|
|
1946
|
+
default: false
|
|
1947
|
+
}
|
|
1948
|
+
},
|
|
1949
|
+
required: ['action']
|
|
1950
|
+
},
|
|
1951
|
+
category: 'base',
|
|
1952
|
+
discoveryTier: 'standard',
|
|
1953
|
+
metadata: {
|
|
1954
|
+
immutable: true,
|
|
1955
|
+
executionEnvironment: 'client',
|
|
1956
|
+
version: '1.0.0'
|
|
1957
|
+
}
|
|
1958
|
+
},
|
|
1959
|
+
// =====================================
|
|
1960
|
+
// CODE EXECUTION & TOOL DISCOVERY
|
|
1961
|
+
// =====================================
|
|
1962
|
+
{
|
|
1963
|
+
name: 'CodeExecute',
|
|
1964
|
+
description: `Execute JavaScript code for token-efficient tool chaining. Only console.log() output enters the context window. Write code that calls multiple tools in sequence, processes results, and outputs only what matters. Top-level await supported.`,
|
|
1965
|
+
schema: {
|
|
1966
|
+
type: 'object',
|
|
1967
|
+
properties: {
|
|
1968
|
+
code: {
|
|
1969
|
+
type: 'string',
|
|
1970
|
+
description: 'JavaScript code to execute. Use console.log() to output results.'
|
|
1971
|
+
},
|
|
1972
|
+
timeout: {
|
|
1973
|
+
type: 'number',
|
|
1974
|
+
description: 'Execution timeout in ms (default 5000, max 30000)'
|
|
1975
|
+
}
|
|
1976
|
+
},
|
|
1977
|
+
required: ['code']
|
|
1978
|
+
},
|
|
1979
|
+
category: 'base',
|
|
1980
|
+
discoveryTier: 'standard',
|
|
1981
|
+
metadata: {
|
|
1982
|
+
immutable: true,
|
|
1983
|
+
executionEnvironment: 'client',
|
|
1984
|
+
version: '1.0.0'
|
|
1985
|
+
}
|
|
1986
|
+
},
|
|
1987
|
+
{
|
|
1988
|
+
name: 'SearchTools',
|
|
1989
|
+
description: `Search the tool registry to discover available tools by name, description, or category. Use when you need a capability not in the current tool list — deferred tool loading means not all tools are immediately visible.
|
|
1990
|
+
|
|
1991
|
+
Query forms: keyword search ("notebook jupyter"), category filter ("execution"), or direct name lookup. Returns tool schemas so you can call discovered tools immediately.`,
|
|
1992
|
+
schema: {
|
|
1993
|
+
type: 'object',
|
|
1994
|
+
properties: {
|
|
1995
|
+
query: {
|
|
1996
|
+
type: 'string',
|
|
1997
|
+
description: 'Search query to match tool names and descriptions'
|
|
1998
|
+
},
|
|
1999
|
+
category: {
|
|
2000
|
+
type: 'string',
|
|
2001
|
+
description: 'Filter by tool category'
|
|
2002
|
+
}
|
|
2003
|
+
}
|
|
2004
|
+
},
|
|
2005
|
+
category: 'base',
|
|
2006
|
+
discoveryTier: 'essential',
|
|
2007
|
+
metadata: {
|
|
2008
|
+
immutable: true,
|
|
2009
|
+
executionEnvironment: 'client',
|
|
2010
|
+
version: '1.0.0'
|
|
2011
|
+
}
|
|
2012
|
+
}
|
|
2013
|
+
];
|
|
2014
|
+
/**
|
|
2015
|
+
* Immutable registry of base tools
|
|
2016
|
+
*/
|
|
2017
|
+
export class BaseToolRegistry {
|
|
2018
|
+
tools;
|
|
2019
|
+
constructor() {
|
|
2020
|
+
this.tools = new Map();
|
|
2021
|
+
BASE_TOOLS.forEach(tool => {
|
|
2022
|
+
this.tools.set(tool.name, tool);
|
|
2023
|
+
});
|
|
2024
|
+
}
|
|
2025
|
+
/**
|
|
2026
|
+
* Get all base tools
|
|
2027
|
+
*/
|
|
2028
|
+
getAllTools() {
|
|
2029
|
+
return Array.from(this.tools.values());
|
|
2030
|
+
}
|
|
2031
|
+
/**
|
|
2032
|
+
* Get a specific tool by name
|
|
2033
|
+
*/
|
|
2034
|
+
getTool(name) {
|
|
2035
|
+
return this.tools.get(name);
|
|
2036
|
+
}
|
|
2037
|
+
/**
|
|
2038
|
+
* Check if a tool exists
|
|
2039
|
+
*/
|
|
2040
|
+
hasTool(name) {
|
|
2041
|
+
return this.tools.has(name);
|
|
2042
|
+
}
|
|
2043
|
+
/**
|
|
2044
|
+
* Get tools by category
|
|
2045
|
+
*/
|
|
2046
|
+
getToolsByCategory(category) {
|
|
2047
|
+
return Array.from(this.tools.values()).filter(tool => tool.category === category);
|
|
2048
|
+
}
|
|
2049
|
+
/**
|
|
2050
|
+
* Get count of tools
|
|
2051
|
+
*/
|
|
2052
|
+
getToolCount() {
|
|
2053
|
+
return this.tools.size;
|
|
2054
|
+
}
|
|
2055
|
+
}
|
|
2056
|
+
// Export singleton instance
|
|
2057
|
+
export const baseToolRegistry = new BaseToolRegistry();
|
|
2058
|
+
//# sourceMappingURL=BaseToolRegistry.js.map
|