@xortex/xcode 3.0.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 +21 -0
- package/README.md +171 -0
- package/bin/xcode +127 -0
- package/bin/xcode-test +84 -0
- package/bin/xcode.cmd +31 -0
- package/constants/apiLimits.ts +94 -0
- package/constants/betas.ts +52 -0
- package/constants/common.ts +33 -0
- package/constants/cyberRiskInstruction.ts +24 -0
- package/constants/errorIds.ts +15 -0
- package/constants/figures.ts +45 -0
- package/constants/files.ts +156 -0
- package/constants/github-app.ts +144 -0
- package/constants/keys.ts +11 -0
- package/constants/messages.ts +1 -0
- package/constants/oauth.ts +234 -0
- package/constants/outputStyles.ts +216 -0
- package/constants/product.ts +76 -0
- package/constants/prompts.ts +939 -0
- package/constants/spinnerVerbs.ts +204 -0
- package/constants/system.ts +95 -0
- package/constants/systemPromptSections.ts +68 -0
- package/constants/toolLimits.ts +56 -0
- package/constants/tools.ts +112 -0
- package/constants/turnCompletionVerbs.ts +12 -0
- package/constants/xml.ts +86 -0
- package/entrypoints/agentSdkTypes.ts +443 -0
- package/entrypoints/cli.tsx +307 -0
- package/entrypoints/init.ts +340 -0
- package/entrypoints/mcp.ts +196 -0
- package/entrypoints/sandboxTypes.ts +156 -0
- package/entrypoints/sdk/controlSchemas.ts +663 -0
- package/entrypoints/sdk/coreSchemas.ts +1889 -0
- package/entrypoints/sdk/coreTypes.generated.ts +2 -0
- package/entrypoints/sdk/coreTypes.ts +62 -0
- package/entrypoints/sdk/runtimeTypes.ts +140 -0
- package/entrypoints/sdk/sdkUtilityTypes.ts +3 -0
- package/entrypoints/sdk/toolTypes.ts +90 -0
- package/main.tsx +4686 -0
- package/package.json +120 -0
- package/services/AgentSummary/agentSummary.ts +179 -0
- package/services/MagicDocs/magicDocs.ts +254 -0
- package/services/MagicDocs/prompts.ts +127 -0
- package/services/PromptSuggestion/promptSuggestion.ts +523 -0
- package/services/PromptSuggestion/speculation.ts +991 -0
- package/services/SessionMemory/prompts.ts +324 -0
- package/services/SessionMemory/sessionMemory.ts +495 -0
- package/services/SessionMemory/sessionMemoryUtils.ts +207 -0
- package/services/analytics/config.ts +38 -0
- package/services/analytics/datadog.ts +307 -0
- package/services/analytics/firstPartyEventLogger.ts +449 -0
- package/services/analytics/firstPartyEventLoggingExporter.ts +806 -0
- package/services/analytics/growthbook.ts +1155 -0
- package/services/analytics/index.ts +173 -0
- package/services/analytics/metadata.ts +973 -0
- package/services/analytics/sink.ts +114 -0
- package/services/analytics/sinkKillswitch.ts +25 -0
- package/services/api/adminRequests.ts +119 -0
- package/services/api/bootstrap.ts +141 -0
- package/services/api/claude.ts +3422 -0
- package/services/api/client.ts +406 -0
- package/services/api/dumpPrompts.ts +226 -0
- package/services/api/emptyUsage.ts +22 -0
- package/services/api/errorUtils.ts +260 -0
- package/services/api/errors.ts +1207 -0
- package/services/api/filesApi.ts +748 -0
- package/services/api/firstTokenDate.ts +60 -0
- package/services/api/gemini.ts +359 -0
- package/services/api/geminiAdapter.ts +123 -0
- package/services/api/geminiClient.ts +291 -0
- package/services/api/grove.ts +357 -0
- package/services/api/logging.ts +788 -0
- package/services/api/metricsOptOut.ts +159 -0
- package/services/api/openRouterClient.ts +453 -0
- package/services/api/overageCreditGrant.ts +137 -0
- package/services/api/promptCacheBreakDetection.ts +727 -0
- package/services/api/referral.ts +281 -0
- package/services/api/sessionIngress.ts +514 -0
- package/services/api/ultrareviewQuota.ts +38 -0
- package/services/api/usage.ts +63 -0
- package/services/api/withRetry.ts +822 -0
- package/services/autoDream/autoDream.ts +324 -0
- package/services/autoDream/config.ts +21 -0
- package/services/autoDream/consolidationLock.ts +140 -0
- package/services/autoDream/consolidationPrompt.ts +65 -0
- package/services/awaySummary.ts +74 -0
- package/services/claudeAiLimits.ts +515 -0
- package/services/claudeAiLimitsHook.ts +23 -0
- package/services/compact/apiMicrocompact.ts +153 -0
- package/services/compact/autoCompact.ts +351 -0
- package/services/compact/compact.ts +1705 -0
- package/services/compact/compactWarningHook.ts +16 -0
- package/services/compact/compactWarningState.ts +18 -0
- package/services/compact/grouping.ts +63 -0
- package/services/compact/microCompact.ts +530 -0
- package/services/compact/postCompactCleanup.ts +77 -0
- package/services/compact/prompt.ts +374 -0
- package/services/compact/sessionMemoryCompact.ts +630 -0
- package/services/compact/timeBasedMCConfig.ts +43 -0
- package/services/diagnosticTracking.ts +397 -0
- package/services/extractMemories/extractMemories.ts +517 -0
- package/services/extractMemories/prompts.ts +154 -0
- package/services/internalLogging.ts +90 -0
- package/services/lsp/LSPClient.ts +447 -0
- package/services/lsp/LSPDiagnosticRegistry.ts +386 -0
- package/services/lsp/LSPServerInstance.ts +511 -0
- package/services/lsp/LSPServerManager.ts +420 -0
- package/services/lsp/config.ts +79 -0
- package/services/lsp/manager.ts +289 -0
- package/services/lsp/passiveFeedback.ts +328 -0
- package/services/mcp/InProcessTransport.ts +63 -0
- package/services/mcp/MCPConnectionManager.tsx +73 -0
- package/services/mcp/SdkControlTransport.ts +136 -0
- package/services/mcp/auth.ts +2465 -0
- package/services/mcp/channelAllowlist.ts +76 -0
- package/services/mcp/channelNotification.ts +316 -0
- package/services/mcp/channelPermissions.ts +240 -0
- package/services/mcp/claudeai.ts +164 -0
- package/services/mcp/client.ts +3348 -0
- package/services/mcp/config.ts +1578 -0
- package/services/mcp/elicitationHandler.ts +313 -0
- package/services/mcp/envExpansion.ts +38 -0
- package/services/mcp/headersHelper.ts +138 -0
- package/services/mcp/mcpStringUtils.ts +106 -0
- package/services/mcp/normalization.ts +23 -0
- package/services/mcp/oauthPort.ts +78 -0
- package/services/mcp/officialRegistry.ts +72 -0
- package/services/mcp/types.ts +258 -0
- package/services/mcp/useManageMCPConnections.ts +1141 -0
- package/services/mcp/utils.ts +575 -0
- package/services/mcp/vscodeSdkMcp.ts +112 -0
- package/services/mcp/xaa.ts +511 -0
- package/services/mcp/xaaIdpLogin.ts +487 -0
- package/services/mcpServerApproval.tsx +41 -0
- package/services/mockRateLimits.ts +882 -0
- package/services/notifier.ts +156 -0
- package/services/oauth/auth-code-listener.ts +211 -0
- package/services/oauth/client.ts +566 -0
- package/services/oauth/crypto.ts +23 -0
- package/services/oauth/getOauthProfile.ts +53 -0
- package/services/oauth/index.ts +198 -0
- package/services/plugins/PluginInstallationManager.ts +184 -0
- package/services/plugins/pluginCliCommands.ts +344 -0
- package/services/plugins/pluginOperations.ts +1088 -0
- package/services/policyLimits/index.ts +663 -0
- package/services/policyLimits/types.ts +27 -0
- package/services/preventSleep.ts +165 -0
- package/services/rateLimitMessages.ts +344 -0
- package/services/rateLimitMocking.ts +144 -0
- package/services/remoteManagedSettings/index.ts +638 -0
- package/services/remoteManagedSettings/securityCheck.tsx +74 -0
- package/services/remoteManagedSettings/syncCache.ts +112 -0
- package/services/remoteManagedSettings/syncCacheState.ts +96 -0
- package/services/remoteManagedSettings/types.ts +31 -0
- package/services/settingsSync/index.ts +581 -0
- package/services/settingsSync/types.ts +67 -0
- package/services/teamMemorySync/index.ts +1256 -0
- package/services/teamMemorySync/secretScanner.ts +324 -0
- package/services/teamMemorySync/teamMemSecretGuard.ts +44 -0
- package/services/teamMemorySync/types.ts +156 -0
- package/services/teamMemorySync/watcher.ts +387 -0
- package/services/tips/tipHistory.ts +17 -0
- package/services/tips/tipRegistry.ts +686 -0
- package/services/tips/tipScheduler.ts +58 -0
- package/services/tokenEstimation.ts +495 -0
- package/services/toolUseSummary/toolUseSummaryGenerator.ts +112 -0
- package/services/tools/StreamingToolExecutor.ts +530 -0
- package/services/tools/toolExecution.ts +1745 -0
- package/services/tools/toolHooks.ts +650 -0
- package/services/tools/toolOrchestration.ts +188 -0
- package/services/vcr.ts +406 -0
- package/services/voice.ts +525 -0
- package/services/voiceKeyterms.ts +106 -0
- package/services/voiceStreamSTT.ts +544 -0
- package/tools/AgentTool/AgentTool.tsx +1398 -0
- package/tools/AgentTool/UI.tsx +872 -0
- package/tools/AgentTool/agentColorManager.ts +66 -0
- package/tools/AgentTool/agentDisplay.ts +104 -0
- package/tools/AgentTool/agentMemory.ts +177 -0
- package/tools/AgentTool/agentMemorySnapshot.ts +197 -0
- package/tools/AgentTool/agentToolUtils.ts +686 -0
- package/tools/AgentTool/built-in/claudeCodeGuideAgent.ts +205 -0
- package/tools/AgentTool/built-in/exploreAgent.ts +83 -0
- package/tools/AgentTool/built-in/generalPurposeAgent.ts +34 -0
- package/tools/AgentTool/built-in/planAgent.ts +92 -0
- package/tools/AgentTool/built-in/statuslineSetup.ts +144 -0
- package/tools/AgentTool/built-in/verificationAgent.ts +152 -0
- package/tools/AgentTool/builtInAgents.ts +72 -0
- package/tools/AgentTool/constants.ts +12 -0
- package/tools/AgentTool/forkSubagent.ts +210 -0
- package/tools/AgentTool/loadAgentsDir.ts +755 -0
- package/tools/AgentTool/prompt.ts +287 -0
- package/tools/AgentTool/resumeAgent.ts +265 -0
- package/tools/AgentTool/runAgent.ts +973 -0
- package/tools/AskUserQuestionTool/AskUserQuestionTool.tsx +266 -0
- package/tools/AskUserQuestionTool/prompt.ts +44 -0
- package/tools/BashTool/BashTool.tsx +1144 -0
- package/tools/BashTool/BashToolResultMessage.tsx +191 -0
- package/tools/BashTool/UI.tsx +185 -0
- package/tools/BashTool/bashCommandHelpers.ts +265 -0
- package/tools/BashTool/bashPermissions.ts +2621 -0
- package/tools/BashTool/bashSecurity.ts +2592 -0
- package/tools/BashTool/commandSemantics.ts +140 -0
- package/tools/BashTool/commentLabel.ts +13 -0
- package/tools/BashTool/destructiveCommandWarning.ts +102 -0
- package/tools/BashTool/modeValidation.ts +115 -0
- package/tools/BashTool/pathValidation.ts +1303 -0
- package/tools/BashTool/prompt.ts +369 -0
- package/tools/BashTool/readOnlyValidation.ts +1990 -0
- package/tools/BashTool/sedEditParser.ts +322 -0
- package/tools/BashTool/sedValidation.ts +684 -0
- package/tools/BashTool/shouldUseSandbox.ts +153 -0
- package/tools/BashTool/toolName.ts +2 -0
- package/tools/BashTool/utils.ts +223 -0
- package/tools/BriefTool/BriefTool.ts +204 -0
- package/tools/BriefTool/UI.tsx +101 -0
- package/tools/BriefTool/attachments.ts +110 -0
- package/tools/BriefTool/prompt.ts +22 -0
- package/tools/BriefTool/upload.ts +174 -0
- package/tools/ConfigTool/ConfigTool.ts +467 -0
- package/tools/ConfigTool/UI.tsx +38 -0
- package/tools/ConfigTool/constants.ts +1 -0
- package/tools/ConfigTool/prompt.ts +93 -0
- package/tools/ConfigTool/supportedSettings.ts +211 -0
- package/tools/EnterPlanModeTool/EnterPlanModeTool.ts +126 -0
- package/tools/EnterPlanModeTool/UI.tsx +33 -0
- package/tools/EnterPlanModeTool/constants.ts +1 -0
- package/tools/EnterPlanModeTool/prompt.ts +170 -0
- package/tools/EnterWorktreeTool/EnterWorktreeTool.ts +127 -0
- package/tools/EnterWorktreeTool/UI.tsx +20 -0
- package/tools/EnterWorktreeTool/constants.ts +1 -0
- package/tools/EnterWorktreeTool/prompt.ts +30 -0
- package/tools/ExitPlanModeTool/ExitPlanModeV2Tool.ts +493 -0
- package/tools/ExitPlanModeTool/UI.tsx +82 -0
- package/tools/ExitPlanModeTool/constants.ts +2 -0
- package/tools/ExitPlanModeTool/prompt.ts +29 -0
- package/tools/ExitWorktreeTool/ExitWorktreeTool.ts +329 -0
- package/tools/ExitWorktreeTool/UI.tsx +25 -0
- package/tools/ExitWorktreeTool/constants.ts +1 -0
- package/tools/ExitWorktreeTool/prompt.ts +32 -0
- package/tools/FileEditTool/FileEditTool.ts +625 -0
- package/tools/FileEditTool/UI.tsx +289 -0
- package/tools/FileEditTool/constants.ts +11 -0
- package/tools/FileEditTool/prompt.ts +28 -0
- package/tools/FileEditTool/types.ts +85 -0
- package/tools/FileEditTool/utils.ts +775 -0
- package/tools/FileReadTool/FileReadTool.ts +1183 -0
- package/tools/FileReadTool/UI.tsx +185 -0
- package/tools/FileReadTool/imageProcessor.ts +94 -0
- package/tools/FileReadTool/limits.ts +92 -0
- package/tools/FileReadTool/prompt.ts +49 -0
- package/tools/FileWriteTool/FileWriteTool.ts +434 -0
- package/tools/FileWriteTool/UI.tsx +405 -0
- package/tools/FileWriteTool/prompt.ts +18 -0
- package/tools/GlobTool/GlobTool.ts +198 -0
- package/tools/GlobTool/UI.tsx +63 -0
- package/tools/GlobTool/prompt.ts +7 -0
- package/tools/GrepTool/GrepTool.ts +577 -0
- package/tools/GrepTool/UI.tsx +201 -0
- package/tools/GrepTool/prompt.ts +18 -0
- package/tools/LSPTool/LSPTool.ts +860 -0
- package/tools/LSPTool/UI.tsx +228 -0
- package/tools/LSPTool/formatters.ts +592 -0
- package/tools/LSPTool/prompt.ts +21 -0
- package/tools/LSPTool/schemas.ts +215 -0
- package/tools/LSPTool/symbolContext.ts +90 -0
- package/tools/ListMcpResourcesTool/ListMcpResourcesTool.ts +123 -0
- package/tools/ListMcpResourcesTool/UI.tsx +29 -0
- package/tools/ListMcpResourcesTool/prompt.ts +20 -0
- package/tools/MCPTool/MCPTool.ts +77 -0
- package/tools/MCPTool/UI.tsx +403 -0
- package/tools/MCPTool/classifyForCollapse.ts +604 -0
- package/tools/MCPTool/prompt.ts +3 -0
- package/tools/McpAuthTool/McpAuthTool.ts +215 -0
- package/tools/NotebookEditTool/NotebookEditTool.ts +490 -0
- package/tools/NotebookEditTool/UI.tsx +93 -0
- package/tools/NotebookEditTool/constants.ts +2 -0
- package/tools/NotebookEditTool/prompt.ts +3 -0
- package/tools/PowerShellTool/PowerShellTool.tsx +1001 -0
- package/tools/PowerShellTool/UI.tsx +131 -0
- package/tools/PowerShellTool/clmTypes.ts +211 -0
- package/tools/PowerShellTool/commandSemantics.ts +142 -0
- package/tools/PowerShellTool/commonParameters.ts +30 -0
- package/tools/PowerShellTool/destructiveCommandWarning.ts +109 -0
- package/tools/PowerShellTool/gitSafety.ts +176 -0
- package/tools/PowerShellTool/modeValidation.ts +404 -0
- package/tools/PowerShellTool/pathValidation.ts +2049 -0
- package/tools/PowerShellTool/powershellPermissions.ts +1648 -0
- package/tools/PowerShellTool/powershellSecurity.ts +1090 -0
- package/tools/PowerShellTool/prompt.ts +145 -0
- package/tools/PowerShellTool/readOnlyValidation.ts +1823 -0
- package/tools/PowerShellTool/toolName.ts +2 -0
- package/tools/REPLTool/constants.ts +46 -0
- package/tools/REPLTool/primitiveTools.ts +39 -0
- package/tools/ReadMcpResourceTool/ReadMcpResourceTool.ts +158 -0
- package/tools/ReadMcpResourceTool/UI.tsx +37 -0
- package/tools/ReadMcpResourceTool/prompt.ts +16 -0
- package/tools/RemoteTriggerTool/RemoteTriggerTool.ts +161 -0
- package/tools/RemoteTriggerTool/UI.tsx +17 -0
- package/tools/RemoteTriggerTool/prompt.ts +15 -0
- package/tools/ScheduleCronTool/CronCreateTool.ts +157 -0
- package/tools/ScheduleCronTool/CronDeleteTool.ts +95 -0
- package/tools/ScheduleCronTool/CronListTool.ts +97 -0
- package/tools/ScheduleCronTool/UI.tsx +60 -0
- package/tools/ScheduleCronTool/prompt.ts +135 -0
- package/tools/SendMessageTool/SendMessageTool.ts +917 -0
- package/tools/SendMessageTool/UI.tsx +31 -0
- package/tools/SendMessageTool/constants.ts +1 -0
- package/tools/SendMessageTool/prompt.ts +49 -0
- package/tools/SkillTool/SkillTool.ts +1108 -0
- package/tools/SkillTool/UI.tsx +128 -0
- package/tools/SkillTool/constants.ts +1 -0
- package/tools/SkillTool/prompt.ts +241 -0
- package/tools/SleepTool/prompt.ts +17 -0
- package/tools/SyntheticOutputTool/SyntheticOutputTool.ts +163 -0
- package/tools/TaskCreateTool/TaskCreateTool.ts +138 -0
- package/tools/TaskCreateTool/constants.ts +1 -0
- package/tools/TaskCreateTool/prompt.ts +56 -0
- package/tools/TaskGetTool/TaskGetTool.ts +128 -0
- package/tools/TaskGetTool/constants.ts +1 -0
- package/tools/TaskGetTool/prompt.ts +24 -0
- package/tools/TaskListTool/TaskListTool.ts +116 -0
- package/tools/TaskListTool/constants.ts +1 -0
- package/tools/TaskListTool/prompt.ts +49 -0
- package/tools/TaskOutputTool/TaskOutputTool.tsx +584 -0
- package/tools/TaskOutputTool/constants.ts +1 -0
- package/tools/TaskStopTool/TaskStopTool.ts +131 -0
- package/tools/TaskStopTool/UI.tsx +41 -0
- package/tools/TaskStopTool/prompt.ts +8 -0
- package/tools/TaskUpdateTool/TaskUpdateTool.ts +406 -0
- package/tools/TaskUpdateTool/constants.ts +1 -0
- package/tools/TaskUpdateTool/prompt.ts +77 -0
- package/tools/TeamCreateTool/TeamCreateTool.ts +240 -0
- package/tools/TeamCreateTool/UI.tsx +6 -0
- package/tools/TeamCreateTool/constants.ts +1 -0
- package/tools/TeamCreateTool/prompt.ts +113 -0
- package/tools/TeamDeleteTool/TeamDeleteTool.ts +139 -0
- package/tools/TeamDeleteTool/UI.tsx +20 -0
- package/tools/TeamDeleteTool/constants.ts +1 -0
- package/tools/TeamDeleteTool/prompt.ts +16 -0
- package/tools/TodoWriteTool/TodoWriteTool.ts +115 -0
- package/tools/TodoWriteTool/constants.ts +1 -0
- package/tools/TodoWriteTool/prompt.ts +184 -0
- package/tools/ToolSearchTool/ToolSearchTool.ts +471 -0
- package/tools/ToolSearchTool/constants.ts +1 -0
- package/tools/ToolSearchTool/prompt.ts +121 -0
- package/tools/TungstenTool/TungstenTool.ts +4 -0
- package/tools/WebFetchTool/UI.tsx +72 -0
- package/tools/WebFetchTool/WebFetchTool.ts +318 -0
- package/tools/WebFetchTool/preapproved.ts +166 -0
- package/tools/WebFetchTool/prompt.ts +46 -0
- package/tools/WebFetchTool/utils.ts +530 -0
- package/tools/WebSearchTool/UI.tsx +101 -0
- package/tools/WebSearchTool/WebSearchTool.ts +435 -0
- package/tools/WebSearchTool/prompt.ts +34 -0
- package/tools/WorkflowTool/constants.ts +2 -0
- package/tools/XMemIngestTool/XMemIngestTool.ts +140 -0
- package/tools/XMemIngestTool/prompt.ts +13 -0
- package/tools/XMemRetrieveTool/XMemRetrieveTool.ts +177 -0
- package/tools/XMemRetrieveTool/prompt.ts +16 -0
- package/tools/XMemSearchTool/XMemSearchTool.ts +172 -0
- package/tools/XMemSearchTool/prompt.ts +11 -0
- package/tools/shared/gitOperationTracking.ts +277 -0
- package/tools/shared/spawnMultiAgent.ts +1093 -0
- package/tools/testing/TestingPermissionTool.tsx +74 -0
- package/tools/utils.ts +40 -0
- package/utils/CircularBuffer.ts +84 -0
- package/utils/Cursor.ts +1530 -0
- package/utils/QueryGuard.ts +121 -0
- package/utils/Shell.ts +474 -0
- package/utils/ShellCommand.ts +465 -0
- package/utils/abortController.ts +99 -0
- package/utils/activityManager.ts +164 -0
- package/utils/advisor.ts +145 -0
- package/utils/agentContext.ts +178 -0
- package/utils/agentId.ts +99 -0
- package/utils/agentSwarmsEnabled.ts +44 -0
- package/utils/agenticSessionSearch.ts +307 -0
- package/utils/analyzeContext.ts +1382 -0
- package/utils/ansiToPng.ts +334 -0
- package/utils/ansiToSvg.ts +272 -0
- package/utils/api.ts +718 -0
- package/utils/apiPreconnect.ts +71 -0
- package/utils/appleTerminalBackup.ts +124 -0
- package/utils/argumentSubstitution.ts +145 -0
- package/utils/array.ts +13 -0
- package/utils/asciicast.ts +239 -0
- package/utils/attachments.ts +4091 -0
- package/utils/attribution.ts +393 -0
- package/utils/auth.ts +2002 -0
- package/utils/authFileDescriptor.ts +196 -0
- package/utils/authPortable.ts +19 -0
- package/utils/autoModeDenials.ts +26 -0
- package/utils/autoRunIssue.tsx +122 -0
- package/utils/autoUpdater.ts +561 -0
- package/utils/aws.ts +74 -0
- package/utils/awsAuthStatusManager.ts +81 -0
- package/utils/axios.ts +8 -0
- package/utils/background/remote/preconditions.ts +235 -0
- package/utils/background/remote/remoteSession.ts +98 -0
- package/utils/backgroundHousekeeping.ts +94 -0
- package/utils/bash/ParsedCommand.ts +318 -0
- package/utils/bash/ShellSnapshot.ts +582 -0
- package/utils/bash/ast.ts +2679 -0
- package/utils/bash/bashParser.ts +4436 -0
- package/utils/bash/bashPipeCommand.ts +294 -0
- package/utils/bash/commands.ts +1339 -0
- package/utils/bash/heredoc.ts +733 -0
- package/utils/bash/parser.ts +230 -0
- package/utils/bash/prefix.ts +204 -0
- package/utils/bash/registry.ts +53 -0
- package/utils/bash/shellCompletion.ts +259 -0
- package/utils/bash/shellPrefix.ts +28 -0
- package/utils/bash/shellQuote.ts +304 -0
- package/utils/bash/shellQuoting.ts +128 -0
- package/utils/bash/specs/alias.ts +14 -0
- package/utils/bash/specs/index.ts +18 -0
- package/utils/bash/specs/nohup.ts +13 -0
- package/utils/bash/specs/pyright.ts +91 -0
- package/utils/bash/specs/sleep.ts +13 -0
- package/utils/bash/specs/srun.ts +31 -0
- package/utils/bash/specs/time.ts +13 -0
- package/utils/bash/specs/timeout.ts +20 -0
- package/utils/bash/treeSitterAnalysis.ts +506 -0
- package/utils/betas.ts +434 -0
- package/utils/billing.ts +78 -0
- package/utils/binaryCheck.ts +53 -0
- package/utils/browser.ts +68 -0
- package/utils/bufferedWriter.ts +100 -0
- package/utils/bundledMode.ts +22 -0
- package/utils/caCerts.ts +115 -0
- package/utils/caCertsConfig.ts +88 -0
- package/utils/cachePaths.ts +38 -0
- package/utils/classifierApprovals.ts +88 -0
- package/utils/classifierApprovalsHook.ts +17 -0
- package/utils/claudeCodeHints.ts +193 -0
- package/utils/claudeDesktop.ts +152 -0
- package/utils/claudeInChrome/chromeNativeHost.ts +527 -0
- package/utils/claudeInChrome/common.ts +540 -0
- package/utils/claudeInChrome/mcpServer.ts +292 -0
- package/utils/claudeInChrome/prompt.ts +83 -0
- package/utils/claudeInChrome/setup.ts +400 -0
- package/utils/claudeInChrome/setupPortable.ts +233 -0
- package/utils/claudeInChrome/toolRendering.tsx +262 -0
- package/utils/claudemd.ts +1479 -0
- package/utils/cleanup.ts +602 -0
- package/utils/cleanupRegistry.ts +25 -0
- package/utils/cliArgs.ts +60 -0
- package/utils/cliHighlight.ts +54 -0
- package/utils/codeIndexing.ts +206 -0
- package/utils/collapseBackgroundBashNotifications.ts +84 -0
- package/utils/collapseHookSummaries.ts +59 -0
- package/utils/collapseReadSearch.ts +1109 -0
- package/utils/collapseTeammateShutdowns.ts +55 -0
- package/utils/color-diff-mock.ts +27 -0
- package/utils/combinedAbortSignal.ts +47 -0
- package/utils/commandLifecycle.ts +21 -0
- package/utils/commitAttribution.ts +961 -0
- package/utils/completionCache.ts +166 -0
- package/utils/computerUse/appNames.ts +196 -0
- package/utils/computerUse/cleanup.ts +86 -0
- package/utils/computerUse/common.ts +61 -0
- package/utils/computerUse/computerUseLock.ts +215 -0
- package/utils/computerUse/drainRunLoop.ts +79 -0
- package/utils/computerUse/escHotkey.ts +54 -0
- package/utils/computerUse/executor.ts +658 -0
- package/utils/computerUse/gates.ts +72 -0
- package/utils/computerUse/hostAdapter.ts +69 -0
- package/utils/computerUse/inputLoader.ts +30 -0
- package/utils/computerUse/mcpServer.ts +106 -0
- package/utils/computerUse/setup.ts +53 -0
- package/utils/computerUse/swiftLoader.ts +23 -0
- package/utils/computerUse/toolRendering.tsx +125 -0
- package/utils/computerUse/wrapper.tsx +336 -0
- package/utils/concurrentSessions.ts +204 -0
- package/utils/config.ts +1817 -0
- package/utils/configConstants.ts +21 -0
- package/utils/contentArray.ts +51 -0
- package/utils/context.ts +221 -0
- package/utils/contextAnalysis.ts +272 -0
- package/utils/contextSuggestions.ts +235 -0
- package/utils/controlMessageCompat.ts +32 -0
- package/utils/conversationRecovery.ts +597 -0
- package/utils/cron.ts +308 -0
- package/utils/cronJitterConfig.ts +75 -0
- package/utils/cronScheduler.ts +565 -0
- package/utils/cronTasks.ts +458 -0
- package/utils/cronTasksLock.ts +195 -0
- package/utils/crossProjectResume.ts +75 -0
- package/utils/crypto.ts +13 -0
- package/utils/cwd.ts +32 -0
- package/utils/debug.ts +268 -0
- package/utils/debugFilter.ts +157 -0
- package/utils/deepLink/banner.ts +123 -0
- package/utils/deepLink/parseDeepLink.ts +170 -0
- package/utils/deepLink/protocolHandler.ts +136 -0
- package/utils/deepLink/registerProtocol.ts +348 -0
- package/utils/deepLink/terminalLauncher.ts +557 -0
- package/utils/deepLink/terminalPreference.ts +54 -0
- package/utils/desktopDeepLink.ts +236 -0
- package/utils/detectRepository.ts +178 -0
- package/utils/diagLogs.ts +94 -0
- package/utils/diff.ts +177 -0
- package/utils/directMemberMessage.ts +69 -0
- package/utils/displayTags.ts +51 -0
- package/utils/doctorContextWarnings.ts +265 -0
- package/utils/doctorDiagnostic.ts +625 -0
- package/utils/dxt/helpers.ts +88 -0
- package/utils/dxt/zip.ts +226 -0
- package/utils/earlyInput.ts +191 -0
- package/utils/editor.ts +183 -0
- package/utils/effort.ts +329 -0
- package/utils/embeddedTools.ts +29 -0
- package/utils/env.ts +347 -0
- package/utils/envDynamic.ts +151 -0
- package/utils/envUtils.ts +183 -0
- package/utils/envValidation.ts +38 -0
- package/utils/errorLogSink.ts +235 -0
- package/utils/errors.ts +238 -0
- package/utils/exampleCommands.ts +184 -0
- package/utils/execFileNoThrow.ts +150 -0
- package/utils/execFileNoThrowPortable.ts +89 -0
- package/utils/execSyncWrapper.ts +38 -0
- package/utils/exportRenderer.tsx +98 -0
- package/utils/extraUsage.ts +23 -0
- package/utils/fastMode.ts +532 -0
- package/utils/file.ts +584 -0
- package/utils/fileHistory.ts +1115 -0
- package/utils/fileOperationAnalytics.ts +71 -0
- package/utils/filePersistence/filePersistence.ts +287 -0
- package/utils/filePersistence/outputsScanner.ts +126 -0
- package/utils/fileRead.ts +102 -0
- package/utils/fileReadCache.ts +96 -0
- package/utils/fileStateCache.ts +142 -0
- package/utils/findExecutable.ts +17 -0
- package/utils/fingerprint.ts +76 -0
- package/utils/forkedAgent.ts +689 -0
- package/utils/format.ts +308 -0
- package/utils/formatBriefTimestamp.ts +81 -0
- package/utils/fpsTracker.ts +47 -0
- package/utils/frontmatterParser.ts +370 -0
- package/utils/fsOperations.ts +770 -0
- package/utils/fullscreen.ts +202 -0
- package/utils/generatedFiles.ts +136 -0
- package/utils/generators.ts +88 -0
- package/utils/genericProcessUtils.ts +184 -0
- package/utils/getWorktreePaths.ts +70 -0
- package/utils/getWorktreePathsPortable.ts +27 -0
- package/utils/ghPrStatus.ts +106 -0
- package/utils/git/gitConfigParser.ts +277 -0
- package/utils/git/gitFilesystem.ts +699 -0
- package/utils/git/gitignore.ts +99 -0
- package/utils/git.ts +926 -0
- package/utils/gitDiff.ts +532 -0
- package/utils/gitSettings.ts +18 -0
- package/utils/github/ghAuthStatus.ts +29 -0
- package/utils/githubRepoPathMapping.ts +162 -0
- package/utils/glob.ts +130 -0
- package/utils/gracefulShutdown.ts +529 -0
- package/utils/groupToolUses.ts +182 -0
- package/utils/handlePromptSubmit.ts +610 -0
- package/utils/hash.ts +46 -0
- package/utils/headlessProfiler.ts +178 -0
- package/utils/heapDumpService.ts +303 -0
- package/utils/heatmap.ts +198 -0
- package/utils/highlightMatch.tsx +28 -0
- package/utils/hooks/AsyncHookRegistry.ts +309 -0
- package/utils/hooks/apiQueryHookHelper.ts +141 -0
- package/utils/hooks/execAgentHook.ts +339 -0
- package/utils/hooks/execHttpHook.ts +242 -0
- package/utils/hooks/execPromptHook.ts +211 -0
- package/utils/hooks/fileChangedWatcher.ts +191 -0
- package/utils/hooks/hookEvents.ts +192 -0
- package/utils/hooks/hookHelpers.ts +83 -0
- package/utils/hooks/hooksConfigManager.ts +400 -0
- package/utils/hooks/hooksConfigSnapshot.ts +133 -0
- package/utils/hooks/hooksSettings.ts +271 -0
- package/utils/hooks/postSamplingHooks.ts +70 -0
- package/utils/hooks/registerFrontmatterHooks.ts +67 -0
- package/utils/hooks/registerSkillHooks.ts +64 -0
- package/utils/hooks/sessionHooks.ts +447 -0
- package/utils/hooks/skillImprovement.ts +267 -0
- package/utils/hooks/ssrfGuard.ts +294 -0
- package/utils/hooks.ts +5022 -0
- package/utils/horizontalScroll.ts +137 -0
- package/utils/http.ts +136 -0
- package/utils/hyperlink.ts +39 -0
- package/utils/iTermBackup.ts +73 -0
- package/utils/ide.ts +1494 -0
- package/utils/idePathConversion.ts +90 -0
- package/utils/idleTimeout.ts +53 -0
- package/utils/imagePaste.ts +416 -0
- package/utils/imageResizer.ts +880 -0
- package/utils/imageStore.ts +167 -0
- package/utils/imageValidation.ts +104 -0
- package/utils/immediateCommand.ts +15 -0
- package/utils/inProcessTeammateHelpers.ts +102 -0
- package/utils/ink.ts +26 -0
- package/utils/intl.ts +94 -0
- package/utils/jetbrains.ts +191 -0
- package/utils/json.ts +277 -0
- package/utils/jsonRead.ts +16 -0
- package/utils/keyboardShortcuts.ts +14 -0
- package/utils/lazySchema.ts +8 -0
- package/utils/listSessionsImpl.ts +454 -0
- package/utils/localInstaller.ts +162 -0
- package/utils/lockfile.ts +43 -0
- package/utils/log.ts +362 -0
- package/utils/logoV2Utils.ts +347 -0
- package/utils/mailbox.ts +73 -0
- package/utils/managedEnv.ts +199 -0
- package/utils/managedEnvConstants.ts +191 -0
- package/utils/markdown.ts +381 -0
- package/utils/markdownConfigLoader.ts +600 -0
- package/utils/mcp/dateTimeParser.ts +121 -0
- package/utils/mcp/elicitationValidation.ts +336 -0
- package/utils/mcpInstructionsDelta.ts +130 -0
- package/utils/mcpOutputStorage.ts +189 -0
- package/utils/mcpValidation.ts +208 -0
- package/utils/mcpWebSocketTransport.ts +200 -0
- package/utils/memoize.ts +269 -0
- package/utils/memory/types.ts +12 -0
- package/utils/memory/versions.ts +8 -0
- package/utils/memoryFileDetection.ts +289 -0
- package/utils/messagePredicates.ts +8 -0
- package/utils/messageQueueManager.ts +547 -0
- package/utils/messages/mappers.ts +290 -0
- package/utils/messages/systemInit.ts +96 -0
- package/utils/messages.ts +5520 -0
- package/utils/model/agent.ts +157 -0
- package/utils/model/aliases.ts +35 -0
- package/utils/model/antModels.ts +64 -0
- package/utils/model/bedrock.ts +265 -0
- package/utils/model/check1mAccess.ts +72 -0
- package/utils/model/configs.ts +158 -0
- package/utils/model/contextWindowUpgradeCheck.ts +47 -0
- package/utils/model/deprecation.ts +101 -0
- package/utils/model/model.ts +654 -0
- package/utils/model/modelAllowlist.ts +170 -0
- package/utils/model/modelCapabilities.ts +118 -0
- package/utils/model/modelOptions.ts +589 -0
- package/utils/model/modelStrings.ts +170 -0
- package/utils/model/modelSupportOverrides.ts +50 -0
- package/utils/model/providers.ts +42 -0
- package/utils/model/validateModel.ts +159 -0
- package/utils/modelCost.ts +231 -0
- package/utils/modifiers.ts +36 -0
- package/utils/mtls.ts +179 -0
- package/utils/nativeInstaller/download.ts +523 -0
- package/utils/nativeInstaller/index.ts +18 -0
- package/utils/nativeInstaller/installer.ts +1708 -0
- package/utils/nativeInstaller/packageManagers.ts +336 -0
- package/utils/nativeInstaller/pidLock.ts +433 -0
- package/utils/notebook.ts +224 -0
- package/utils/objectGroupBy.ts +18 -0
- package/utils/pasteStore.ts +104 -0
- package/utils/path.ts +155 -0
- package/utils/pdf.ts +300 -0
- package/utils/pdfUtils.ts +70 -0
- package/utils/peerAddress.ts +21 -0
- package/utils/permissions/PermissionMode.ts +141 -0
- package/utils/permissions/PermissionPromptToolResultSchema.ts +127 -0
- package/utils/permissions/PermissionResult.ts +35 -0
- package/utils/permissions/PermissionRule.ts +40 -0
- package/utils/permissions/PermissionUpdate.ts +389 -0
- package/utils/permissions/PermissionUpdateSchema.ts +78 -0
- package/utils/permissions/autoModeState.ts +39 -0
- package/utils/permissions/bashClassifier.ts +61 -0
- package/utils/permissions/bypassPermissionsKillswitch.ts +155 -0
- package/utils/permissions/classifierDecision.ts +98 -0
- package/utils/permissions/classifierShared.ts +39 -0
- package/utils/permissions/dangerousPatterns.ts +80 -0
- package/utils/permissions/denialTracking.ts +45 -0
- package/utils/permissions/filesystem.ts +1777 -0
- package/utils/permissions/getNextPermissionMode.ts +101 -0
- package/utils/permissions/pathValidation.ts +485 -0
- package/utils/permissions/permissionExplainer.ts +250 -0
- package/utils/permissions/permissionRuleParser.ts +198 -0
- package/utils/permissions/permissionSetup.ts +1532 -0
- package/utils/permissions/permissions.ts +1486 -0
- package/utils/permissions/permissionsLoader.ts +296 -0
- package/utils/permissions/shadowedRuleDetection.ts +234 -0
- package/utils/permissions/shellRuleMatching.ts +228 -0
- package/utils/permissions/yoloClassifier.ts +1495 -0
- package/utils/planModeV2.ts +95 -0
- package/utils/plans.ts +397 -0
- package/utils/platform.ts +150 -0
- package/utils/plugins/addDirPluginSettings.ts +71 -0
- package/utils/plugins/cacheUtils.ts +196 -0
- package/utils/plugins/dependencyResolver.ts +305 -0
- package/utils/plugins/fetchTelemetry.ts +135 -0
- package/utils/plugins/gitAvailability.ts +69 -0
- package/utils/plugins/headlessPluginInstall.ts +174 -0
- package/utils/plugins/hintRecommendation.ts +164 -0
- package/utils/plugins/installCounts.ts +292 -0
- package/utils/plugins/installedPluginsManager.ts +1268 -0
- package/utils/plugins/loadPluginAgents.ts +348 -0
- package/utils/plugins/loadPluginCommands.ts +946 -0
- package/utils/plugins/loadPluginHooks.ts +287 -0
- package/utils/plugins/loadPluginOutputStyles.ts +178 -0
- package/utils/plugins/lspPluginIntegration.ts +387 -0
- package/utils/plugins/lspRecommendation.ts +374 -0
- package/utils/plugins/managedPlugins.ts +27 -0
- package/utils/plugins/marketplaceHelpers.ts +592 -0
- package/utils/plugins/marketplaceManager.ts +2643 -0
- package/utils/plugins/mcpPluginIntegration.ts +634 -0
- package/utils/plugins/mcpbHandler.ts +968 -0
- package/utils/plugins/officialMarketplace.ts +25 -0
- package/utils/plugins/officialMarketplaceGcs.ts +216 -0
- package/utils/plugins/officialMarketplaceStartupCheck.ts +439 -0
- package/utils/plugins/orphanedPluginFilter.ts +114 -0
- package/utils/plugins/parseMarketplaceInput.ts +162 -0
- package/utils/plugins/performStartupChecks.tsx +70 -0
- package/utils/plugins/pluginAutoupdate.ts +284 -0
- package/utils/plugins/pluginBlocklist.ts +127 -0
- package/utils/plugins/pluginDirectories.ts +178 -0
- package/utils/plugins/pluginFlagging.ts +208 -0
- package/utils/plugins/pluginIdentifier.ts +123 -0
- package/utils/plugins/pluginInstallationHelpers.ts +595 -0
- package/utils/plugins/pluginLoader.ts +3302 -0
- package/utils/plugins/pluginOptionsStorage.ts +400 -0
- package/utils/plugins/pluginPolicy.ts +20 -0
- package/utils/plugins/pluginStartupCheck.ts +341 -0
- package/utils/plugins/pluginVersioning.ts +157 -0
- package/utils/plugins/reconciler.ts +265 -0
- package/utils/plugins/refresh.ts +215 -0
- package/utils/plugins/schemas.ts +1681 -0
- package/utils/plugins/validatePlugin.ts +903 -0
- package/utils/plugins/walkPluginMarkdown.ts +69 -0
- package/utils/plugins/zipCache.ts +406 -0
- package/utils/plugins/zipCacheAdapters.ts +164 -0
- package/utils/powershell/dangerousCmdlets.ts +185 -0
- package/utils/powershell/parser.ts +1804 -0
- package/utils/powershell/staticPrefix.ts +316 -0
- package/utils/preflightChecks.tsx +151 -0
- package/utils/privacyLevel.ts +55 -0
- package/utils/process.ts +68 -0
- package/utils/processUserInput/processBashCommand.tsx +140 -0
- package/utils/processUserInput/processSlashCommand.tsx +922 -0
- package/utils/processUserInput/processTextPrompt.ts +100 -0
- package/utils/processUserInput/processUserInput.ts +605 -0
- package/utils/profilerBase.ts +46 -0
- package/utils/promptCategory.ts +49 -0
- package/utils/promptEditor.ts +188 -0
- package/utils/promptShellExecution.ts +183 -0
- package/utils/proxy.ts +426 -0
- package/utils/queryContext.ts +179 -0
- package/utils/queryHelpers.ts +552 -0
- package/utils/queryProfiler.ts +301 -0
- package/utils/queueProcessor.ts +95 -0
- package/utils/readEditContext.ts +227 -0
- package/utils/readFileInRange.ts +383 -0
- package/utils/releaseNotes.ts +360 -0
- package/utils/renderOptions.ts +113 -0
- package/utils/ripgrep.ts +679 -0
- package/utils/sandbox/sandbox-adapter.ts +985 -0
- package/utils/sandbox/sandbox-ui-utils.ts +12 -0
- package/utils/sanitization.ts +91 -0
- package/utils/screenshotClipboard.ts +121 -0
- package/utils/sdkEventQueue.ts +134 -0
- package/utils/secureStorage/fallbackStorage.ts +70 -0
- package/utils/secureStorage/index.ts +17 -0
- package/utils/secureStorage/keychainPrefetch.ts +116 -0
- package/utils/secureStorage/macOsKeychainHelpers.ts +111 -0
- package/utils/secureStorage/macOsKeychainStorage.ts +231 -0
- package/utils/secureStorage/plainTextStorage.ts +84 -0
- package/utils/semanticBoolean.ts +29 -0
- package/utils/semanticNumber.ts +36 -0
- package/utils/semver.ts +59 -0
- package/utils/sequential.ts +56 -0
- package/utils/sessionActivity.ts +133 -0
- package/utils/sessionEnvVars.ts +22 -0
- package/utils/sessionEnvironment.ts +166 -0
- package/utils/sessionFileAccessHooks.ts +250 -0
- package/utils/sessionIngressAuth.ts +140 -0
- package/utils/sessionRestore.ts +551 -0
- package/utils/sessionStart.ts +232 -0
- package/utils/sessionState.ts +150 -0
- package/utils/sessionStorage.ts +5105 -0
- package/utils/sessionStoragePortable.ts +793 -0
- package/utils/sessionTitle.ts +129 -0
- package/utils/sessionUrl.ts +64 -0
- package/utils/set.ts +53 -0
- package/utils/settings/allErrors.ts +32 -0
- package/utils/settings/applySettingsChange.ts +92 -0
- package/utils/settings/changeDetector.ts +488 -0
- package/utils/settings/constants.ts +202 -0
- package/utils/settings/internalWrites.ts +37 -0
- package/utils/settings/managedPath.ts +34 -0
- package/utils/settings/mdm/constants.ts +81 -0
- package/utils/settings/mdm/rawRead.ts +130 -0
- package/utils/settings/mdm/settings.ts +316 -0
- package/utils/settings/permissionValidation.ts +262 -0
- package/utils/settings/pluginOnlyPolicy.ts +60 -0
- package/utils/settings/schemaOutput.ts +8 -0
- package/utils/settings/settings.ts +1015 -0
- package/utils/settings/settingsCache.ts +80 -0
- package/utils/settings/toolValidationConfig.ts +103 -0
- package/utils/settings/types.ts +1149 -0
- package/utils/settings/validateEditTool.ts +45 -0
- package/utils/settings/validation.ts +265 -0
- package/utils/settings/validationTips.ts +164 -0
- package/utils/shell/bashProvider.ts +255 -0
- package/utils/shell/outputLimits.ts +14 -0
- package/utils/shell/powershellDetection.ts +107 -0
- package/utils/shell/powershellProvider.ts +123 -0
- package/utils/shell/prefix.ts +367 -0
- package/utils/shell/readOnlyCommandValidation.ts +1893 -0
- package/utils/shell/resolveDefaultShell.ts +14 -0
- package/utils/shell/shellProvider.ts +33 -0
- package/utils/shell/shellToolUtils.ts +22 -0
- package/utils/shell/specPrefix.ts +241 -0
- package/utils/shellConfig.ts +167 -0
- package/utils/sideQuery.ts +222 -0
- package/utils/sideQuestion.ts +155 -0
- package/utils/signal.ts +43 -0
- package/utils/sinks.ts +16 -0
- package/utils/skills/skillChangeDetector.ts +311 -0
- package/utils/slashCommandParsing.ts +60 -0
- package/utils/sleep.ts +84 -0
- package/utils/sliceAnsi.ts +91 -0
- package/utils/slowOperations.ts +286 -0
- package/utils/standaloneAgent.ts +23 -0
- package/utils/startupProfiler.ts +194 -0
- package/utils/staticRender.tsx +116 -0
- package/utils/stats.ts +1061 -0
- package/utils/statsCache.ts +434 -0
- package/utils/status.tsx +362 -0
- package/utils/statusNoticeDefinitions.tsx +198 -0
- package/utils/statusNoticeHelpers.ts +20 -0
- package/utils/stream.ts +76 -0
- package/utils/streamJsonStdoutGuard.ts +123 -0
- package/utils/streamlinedTransform.ts +201 -0
- package/utils/stringUtils.ts +235 -0
- package/utils/subprocessEnv.ts +99 -0
- package/utils/suggestions/commandSuggestions.ts +567 -0
- package/utils/suggestions/directoryCompletion.ts +263 -0
- package/utils/suggestions/shellHistoryCompletion.ts +119 -0
- package/utils/suggestions/skillUsageTracking.ts +55 -0
- package/utils/suggestions/slackChannelSuggestions.ts +209 -0
- package/utils/swarm/It2SetupPrompt.tsx +380 -0
- package/utils/swarm/backends/ITermBackend.ts +370 -0
- package/utils/swarm/backends/InProcessBackend.ts +339 -0
- package/utils/swarm/backends/PaneBackendExecutor.ts +354 -0
- package/utils/swarm/backends/TmuxBackend.ts +764 -0
- package/utils/swarm/backends/detection.ts +128 -0
- package/utils/swarm/backends/it2Setup.ts +245 -0
- package/utils/swarm/backends/registry.ts +464 -0
- package/utils/swarm/backends/teammateModeSnapshot.ts +87 -0
- package/utils/swarm/backends/types.ts +311 -0
- package/utils/swarm/constants.ts +33 -0
- package/utils/swarm/inProcessRunner.ts +1552 -0
- package/utils/swarm/leaderPermissionBridge.ts +54 -0
- package/utils/swarm/permissionSync.ts +928 -0
- package/utils/swarm/reconnection.ts +119 -0
- package/utils/swarm/spawnInProcess.ts +328 -0
- package/utils/swarm/spawnUtils.ts +146 -0
- package/utils/swarm/teamHelpers.ts +683 -0
- package/utils/swarm/teammateInit.ts +129 -0
- package/utils/swarm/teammateLayoutManager.ts +107 -0
- package/utils/swarm/teammateModel.ts +10 -0
- package/utils/swarm/teammatePromptAddendum.ts +18 -0
- package/utils/systemDirectories.ts +74 -0
- package/utils/systemPrompt.ts +123 -0
- package/utils/systemPromptType.ts +14 -0
- package/utils/systemTheme.ts +119 -0
- package/utils/taggedId.ts +54 -0
- package/utils/task/TaskOutput.ts +390 -0
- package/utils/task/diskOutput.ts +451 -0
- package/utils/task/framework.ts +308 -0
- package/utils/task/outputFormatting.ts +38 -0
- package/utils/task/sdkProgress.ts +36 -0
- package/utils/tasks.ts +862 -0
- package/utils/teamDiscovery.ts +81 -0
- package/utils/teamMemoryOps.ts +88 -0
- package/utils/teammate.ts +292 -0
- package/utils/teammateContext.ts +96 -0
- package/utils/teammateMailbox.ts +1183 -0
- package/utils/telemetry/betaSessionTracing.ts +491 -0
- package/utils/telemetry/bigqueryExporter.ts +252 -0
- package/utils/telemetry/events.ts +75 -0
- package/utils/telemetry/instrumentation.ts +825 -0
- package/utils/telemetry/logger.ts +26 -0
- package/utils/telemetry/perfettoTracing.ts +1120 -0
- package/utils/telemetry/pluginTelemetry.ts +289 -0
- package/utils/telemetry/sessionTracing.ts +927 -0
- package/utils/telemetry/skillLoadedEvent.ts +39 -0
- package/utils/telemetryAttributes.ts +71 -0
- package/utils/teleport/api.ts +466 -0
- package/utils/teleport/environmentSelection.ts +77 -0
- package/utils/teleport/environments.ts +120 -0
- package/utils/teleport/gitBundle.ts +292 -0
- package/utils/teleport.tsx +1226 -0
- package/utils/tempfile.ts +31 -0
- package/utils/terminal.ts +131 -0
- package/utils/terminalPanel.ts +191 -0
- package/utils/textHighlighting.ts +166 -0
- package/utils/theme.ts +639 -0
- package/utils/thinking.ts +162 -0
- package/utils/timeouts.ts +39 -0
- package/utils/tmuxSocket.ts +427 -0
- package/utils/todo/types.ts +18 -0
- package/utils/tokenBudget.ts +73 -0
- package/utils/tokens.ts +261 -0
- package/utils/toolErrors.ts +132 -0
- package/utils/toolPool.ts +79 -0
- package/utils/toolResultStorage.ts +1040 -0
- package/utils/toolSchemaCache.ts +26 -0
- package/utils/toolSearch.ts +756 -0
- package/utils/transcriptSearch.ts +202 -0
- package/utils/treeify.ts +170 -0
- package/utils/truncate.ts +179 -0
- package/utils/ultraplan/ccrSession.ts +349 -0
- package/utils/ultraplan/keyword.ts +127 -0
- package/utils/ultraplan/prompt.txt +1 -0
- package/utils/unaryLogging.ts +39 -0
- package/utils/undercover.ts +89 -0
- package/utils/user.ts +194 -0
- package/utils/userAgent.ts +10 -0
- package/utils/userPromptKeywords.ts +27 -0
- package/utils/uuid.ts +27 -0
- package/utils/warningHandler.ts +121 -0
- package/utils/which.ts +82 -0
- package/utils/windowsPaths.ts +173 -0
- package/utils/withResolvers.ts +13 -0
- package/utils/words.ts +800 -0
- package/utils/workloadContext.ts +57 -0
- package/utils/worktree.ts +1519 -0
- package/utils/worktreeModeEnabled.ts +11 -0
- package/utils/xdg.ts +65 -0
- package/utils/xmem.ts +6 -0
- package/utils/xml.ts +16 -0
- package/utils/yaml.ts +15 -0
- package/utils/zodToJsonSchema.ts +23 -0
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
import { getInitialSettings } from '../utils/settings/settings.js'
|
|
2
|
+
|
|
3
|
+
export function getSpinnerVerbs(): string[] {
|
|
4
|
+
const settings = getInitialSettings()
|
|
5
|
+
const config = settings.spinnerVerbs
|
|
6
|
+
if (!config) {
|
|
7
|
+
return SPINNER_VERBS
|
|
8
|
+
}
|
|
9
|
+
if (config.mode === 'replace') {
|
|
10
|
+
return config.verbs.length > 0 ? config.verbs : SPINNER_VERBS
|
|
11
|
+
}
|
|
12
|
+
return [...SPINNER_VERBS, ...config.verbs]
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
// Spinner verbs for loading messages
|
|
16
|
+
export const SPINNER_VERBS = [
|
|
17
|
+
'Accomplishing',
|
|
18
|
+
'Actioning',
|
|
19
|
+
'Actualizing',
|
|
20
|
+
'Architecting',
|
|
21
|
+
'Baking',
|
|
22
|
+
'Beaming',
|
|
23
|
+
"Beboppin'",
|
|
24
|
+
'Befuddling',
|
|
25
|
+
'Billowing',
|
|
26
|
+
'Blanching',
|
|
27
|
+
'Bloviating',
|
|
28
|
+
'Boogieing',
|
|
29
|
+
'Boondoggling',
|
|
30
|
+
'Booping',
|
|
31
|
+
'Bootstrapping',
|
|
32
|
+
'Brewing',
|
|
33
|
+
'Bunning',
|
|
34
|
+
'Burrowing',
|
|
35
|
+
'Calculating',
|
|
36
|
+
'Canoodling',
|
|
37
|
+
'Caramelizing',
|
|
38
|
+
'Cascading',
|
|
39
|
+
'Catapulting',
|
|
40
|
+
'Cerebrating',
|
|
41
|
+
'Channeling',
|
|
42
|
+
'Channelling',
|
|
43
|
+
'Choreographing',
|
|
44
|
+
'Churning',
|
|
45
|
+
'Clauding',
|
|
46
|
+
'Coalescing',
|
|
47
|
+
'Cogitating',
|
|
48
|
+
'Combobulating',
|
|
49
|
+
'Composing',
|
|
50
|
+
'Computing',
|
|
51
|
+
'Concocting',
|
|
52
|
+
'Considering',
|
|
53
|
+
'Contemplating',
|
|
54
|
+
'Cooking',
|
|
55
|
+
'Crafting',
|
|
56
|
+
'Creating',
|
|
57
|
+
'Crunching',
|
|
58
|
+
'Crystallizing',
|
|
59
|
+
'Cultivating',
|
|
60
|
+
'Deciphering',
|
|
61
|
+
'Deliberating',
|
|
62
|
+
'Determining',
|
|
63
|
+
'Dilly-dallying',
|
|
64
|
+
'Discombobulating',
|
|
65
|
+
'Doing',
|
|
66
|
+
'Doodling',
|
|
67
|
+
'Drizzling',
|
|
68
|
+
'Ebbing',
|
|
69
|
+
'Effecting',
|
|
70
|
+
'Elucidating',
|
|
71
|
+
'Embellishing',
|
|
72
|
+
'Enchanting',
|
|
73
|
+
'Envisioning',
|
|
74
|
+
'Evaporating',
|
|
75
|
+
'Fermenting',
|
|
76
|
+
'Fiddle-faddling',
|
|
77
|
+
'Finagling',
|
|
78
|
+
'Flambéing',
|
|
79
|
+
'Flibbertigibbeting',
|
|
80
|
+
'Flowing',
|
|
81
|
+
'Flummoxing',
|
|
82
|
+
'Fluttering',
|
|
83
|
+
'Forging',
|
|
84
|
+
'Forming',
|
|
85
|
+
'Frolicking',
|
|
86
|
+
'Frosting',
|
|
87
|
+
'Gallivanting',
|
|
88
|
+
'Galloping',
|
|
89
|
+
'Garnishing',
|
|
90
|
+
'Generating',
|
|
91
|
+
'Gesticulating',
|
|
92
|
+
'Germinating',
|
|
93
|
+
'Gitifying',
|
|
94
|
+
'Grooving',
|
|
95
|
+
'Gusting',
|
|
96
|
+
'Harmonizing',
|
|
97
|
+
'Hashing',
|
|
98
|
+
'Hatching',
|
|
99
|
+
'Herding',
|
|
100
|
+
'Honking',
|
|
101
|
+
'Hullaballooing',
|
|
102
|
+
'Hyperspacing',
|
|
103
|
+
'Ideating',
|
|
104
|
+
'Imagining',
|
|
105
|
+
'Improvising',
|
|
106
|
+
'Incubating',
|
|
107
|
+
'Inferring',
|
|
108
|
+
'Infusing',
|
|
109
|
+
'Ionizing',
|
|
110
|
+
'Jitterbugging',
|
|
111
|
+
'Julienning',
|
|
112
|
+
'Kneading',
|
|
113
|
+
'Leavening',
|
|
114
|
+
'Levitating',
|
|
115
|
+
'Lollygagging',
|
|
116
|
+
'Manifesting',
|
|
117
|
+
'Marinating',
|
|
118
|
+
'Meandering',
|
|
119
|
+
'Metamorphosing',
|
|
120
|
+
'Misting',
|
|
121
|
+
'Moonwalking',
|
|
122
|
+
'Moseying',
|
|
123
|
+
'Mulling',
|
|
124
|
+
'Mustering',
|
|
125
|
+
'Musing',
|
|
126
|
+
'Nebulizing',
|
|
127
|
+
'Nesting',
|
|
128
|
+
'Newspapering',
|
|
129
|
+
'Noodling',
|
|
130
|
+
'Nucleating',
|
|
131
|
+
'Orbiting',
|
|
132
|
+
'Orchestrating',
|
|
133
|
+
'Osmosing',
|
|
134
|
+
'Perambulating',
|
|
135
|
+
'Percolating',
|
|
136
|
+
'Perusing',
|
|
137
|
+
'Philosophising',
|
|
138
|
+
'Photosynthesizing',
|
|
139
|
+
'Pollinating',
|
|
140
|
+
'Pondering',
|
|
141
|
+
'Pontificating',
|
|
142
|
+
'Pouncing',
|
|
143
|
+
'Precipitating',
|
|
144
|
+
'Prestidigitating',
|
|
145
|
+
'Processing',
|
|
146
|
+
'Proofing',
|
|
147
|
+
'Propagating',
|
|
148
|
+
'Puttering',
|
|
149
|
+
'Puzzling',
|
|
150
|
+
'Quantumizing',
|
|
151
|
+
'Razzle-dazzling',
|
|
152
|
+
'Razzmatazzing',
|
|
153
|
+
'Recombobulating',
|
|
154
|
+
'Reticulating',
|
|
155
|
+
'Roosting',
|
|
156
|
+
'Ruminating',
|
|
157
|
+
'Sautéing',
|
|
158
|
+
'Scampering',
|
|
159
|
+
'Schlepping',
|
|
160
|
+
'Scurrying',
|
|
161
|
+
'Seasoning',
|
|
162
|
+
'Shenaniganing',
|
|
163
|
+
'Shimmying',
|
|
164
|
+
'Simmering',
|
|
165
|
+
'Skedaddling',
|
|
166
|
+
'Sketching',
|
|
167
|
+
'Slithering',
|
|
168
|
+
'Smooshing',
|
|
169
|
+
'Sock-hopping',
|
|
170
|
+
'Spelunking',
|
|
171
|
+
'Spinning',
|
|
172
|
+
'Sprouting',
|
|
173
|
+
'Stewing',
|
|
174
|
+
'Sublimating',
|
|
175
|
+
'Swirling',
|
|
176
|
+
'Swooping',
|
|
177
|
+
'Symbioting',
|
|
178
|
+
'Synthesizing',
|
|
179
|
+
'Tempering',
|
|
180
|
+
'Thinking',
|
|
181
|
+
'Thundering',
|
|
182
|
+
'Tinkering',
|
|
183
|
+
'Tomfoolering',
|
|
184
|
+
'Topsy-turvying',
|
|
185
|
+
'Transfiguring',
|
|
186
|
+
'Transmuting',
|
|
187
|
+
'Twisting',
|
|
188
|
+
'Undulating',
|
|
189
|
+
'Unfurling',
|
|
190
|
+
'Unravelling',
|
|
191
|
+
'Vibing',
|
|
192
|
+
'Waddling',
|
|
193
|
+
'Wandering',
|
|
194
|
+
'Warping',
|
|
195
|
+
'Whatchamacalliting',
|
|
196
|
+
'Whirlpooling',
|
|
197
|
+
'Whirring',
|
|
198
|
+
'Whisking',
|
|
199
|
+
'Wibbling',
|
|
200
|
+
'Working',
|
|
201
|
+
'Wrangling',
|
|
202
|
+
'Zesting',
|
|
203
|
+
'Zigzagging',
|
|
204
|
+
]
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
// Critical system constants extracted to break circular dependencies
|
|
2
|
+
|
|
3
|
+
import { feature } from 'bun:bundle'
|
|
4
|
+
import { getFeatureValue_CACHED_MAY_BE_STALE } from '../services/analytics/growthbook.js'
|
|
5
|
+
import { logForDebugging } from '../utils/debug.js'
|
|
6
|
+
import { isEnvDefinedFalsy } from '../utils/envUtils.js'
|
|
7
|
+
import { getAPIProvider } from '../utils/model/providers.js'
|
|
8
|
+
import { getWorkload } from '../utils/workloadContext.js'
|
|
9
|
+
|
|
10
|
+
const DEFAULT_PREFIX = `You are Claude Code, Anthropic's official CLI for Claude.`
|
|
11
|
+
const AGENT_SDK_CLAUDE_CODE_PRESET_PREFIX = `You are Claude Code, Anthropic's official CLI for Claude, running within the Claude Agent SDK.`
|
|
12
|
+
const AGENT_SDK_PREFIX = `You are a Claude agent, built on Anthropic's Claude Agent SDK.`
|
|
13
|
+
|
|
14
|
+
const CLI_SYSPROMPT_PREFIX_VALUES = [
|
|
15
|
+
DEFAULT_PREFIX,
|
|
16
|
+
AGENT_SDK_CLAUDE_CODE_PRESET_PREFIX,
|
|
17
|
+
AGENT_SDK_PREFIX,
|
|
18
|
+
] as const
|
|
19
|
+
|
|
20
|
+
export type CLISyspromptPrefix = (typeof CLI_SYSPROMPT_PREFIX_VALUES)[number]
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* All possible CLI sysprompt prefix values, used by splitSysPromptPrefix
|
|
24
|
+
* to identify prefix blocks by content rather than position.
|
|
25
|
+
*/
|
|
26
|
+
export const CLI_SYSPROMPT_PREFIXES: ReadonlySet<string> = new Set(
|
|
27
|
+
CLI_SYSPROMPT_PREFIX_VALUES,
|
|
28
|
+
)
|
|
29
|
+
|
|
30
|
+
export function getCLISyspromptPrefix(options?: {
|
|
31
|
+
isNonInteractive: boolean
|
|
32
|
+
hasAppendSystemPrompt: boolean
|
|
33
|
+
}): CLISyspromptPrefix {
|
|
34
|
+
const apiProvider = getAPIProvider()
|
|
35
|
+
if (apiProvider === 'vertex') {
|
|
36
|
+
return DEFAULT_PREFIX
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
if (options?.isNonInteractive) {
|
|
40
|
+
if (options.hasAppendSystemPrompt) {
|
|
41
|
+
return AGENT_SDK_CLAUDE_CODE_PRESET_PREFIX
|
|
42
|
+
}
|
|
43
|
+
return AGENT_SDK_PREFIX
|
|
44
|
+
}
|
|
45
|
+
return DEFAULT_PREFIX
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Check if attribution header is enabled.
|
|
50
|
+
* Enabled by default, can be disabled via env var or GrowthBook killswitch.
|
|
51
|
+
*/
|
|
52
|
+
function isAttributionHeaderEnabled(): boolean {
|
|
53
|
+
if (isEnvDefinedFalsy(process.env.CLAUDE_CODE_ATTRIBUTION_HEADER)) {
|
|
54
|
+
return false
|
|
55
|
+
}
|
|
56
|
+
return getFeatureValue_CACHED_MAY_BE_STALE('tengu_attribution_header', true)
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Get attribution header for API requests.
|
|
61
|
+
* Returns a header string with cc_version (including fingerprint) and cc_entrypoint.
|
|
62
|
+
* Enabled by default, can be disabled via env var or GrowthBook killswitch.
|
|
63
|
+
*
|
|
64
|
+
* When NATIVE_CLIENT_ATTESTATION is enabled, includes a `cch=00000` placeholder.
|
|
65
|
+
* Before the request is sent, Bun's native HTTP stack finds this placeholder
|
|
66
|
+
* in the request body and overwrites the zeros with a computed hash. The
|
|
67
|
+
* server verifies this token to confirm the request came from a real Claude
|
|
68
|
+
* Code client. See bun-anthropic/src/http/Attestation.zig for implementation.
|
|
69
|
+
*
|
|
70
|
+
* We use a placeholder (instead of injecting from Zig) because same-length
|
|
71
|
+
* replacement avoids Content-Length changes and buffer reallocation.
|
|
72
|
+
*/
|
|
73
|
+
export function getAttributionHeader(fingerprint: string): string {
|
|
74
|
+
if (!isAttributionHeaderEnabled()) {
|
|
75
|
+
return ''
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
const version = `${MACRO.VERSION}.${fingerprint}`
|
|
79
|
+
const entrypoint = process.env.CLAUDE_CODE_ENTRYPOINT ?? 'unknown'
|
|
80
|
+
|
|
81
|
+
// cch=00000 placeholder is overwritten by Bun's HTTP stack with attestation token
|
|
82
|
+
const cch = feature('NATIVE_CLIENT_ATTESTATION') ? ' cch=00000;' : ''
|
|
83
|
+
// cc_workload: turn-scoped hint so the API can route e.g. cron-initiated
|
|
84
|
+
// requests to a lower QoS pool. Absent = interactive default. Safe re:
|
|
85
|
+
// fingerprint (computed from msg chars + version only, line 78 above) and
|
|
86
|
+
// cch attestation (placeholder overwritten in serialized body bytes after
|
|
87
|
+
// this string is built). Server _parse_cc_header tolerates unknown extra
|
|
88
|
+
// fields so old API deploys silently ignore this.
|
|
89
|
+
const workload = getWorkload()
|
|
90
|
+
const workloadPair = workload ? ` cc_workload=${workload};` : ''
|
|
91
|
+
const header = `x-anthropic-billing-header: cc_version=${version}; cc_entrypoint=${entrypoint};${cch}${workloadPair}`
|
|
92
|
+
|
|
93
|
+
logForDebugging(`attribution header ${header}`)
|
|
94
|
+
return header
|
|
95
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import {
|
|
2
|
+
clearBetaHeaderLatches,
|
|
3
|
+
clearSystemPromptSectionState,
|
|
4
|
+
getSystemPromptSectionCache,
|
|
5
|
+
setSystemPromptSectionCacheEntry,
|
|
6
|
+
} from '../bootstrap/state.js'
|
|
7
|
+
|
|
8
|
+
type ComputeFn = () => string | null | Promise<string | null>
|
|
9
|
+
|
|
10
|
+
type SystemPromptSection = {
|
|
11
|
+
name: string
|
|
12
|
+
compute: ComputeFn
|
|
13
|
+
cacheBreak: boolean
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Create a memoized system prompt section.
|
|
18
|
+
* Computed once, cached until /clear or /compact.
|
|
19
|
+
*/
|
|
20
|
+
export function systemPromptSection(
|
|
21
|
+
name: string,
|
|
22
|
+
compute: ComputeFn,
|
|
23
|
+
): SystemPromptSection {
|
|
24
|
+
return { name, compute, cacheBreak: false }
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Create a volatile system prompt section that recomputes every turn.
|
|
29
|
+
* This WILL break the prompt cache when the value changes.
|
|
30
|
+
* Requires a reason explaining why cache-breaking is necessary.
|
|
31
|
+
*/
|
|
32
|
+
export function DANGEROUS_uncachedSystemPromptSection(
|
|
33
|
+
name: string,
|
|
34
|
+
compute: ComputeFn,
|
|
35
|
+
_reason: string,
|
|
36
|
+
): SystemPromptSection {
|
|
37
|
+
return { name, compute, cacheBreak: true }
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Resolve all system prompt sections, returning prompt strings.
|
|
42
|
+
*/
|
|
43
|
+
export async function resolveSystemPromptSections(
|
|
44
|
+
sections: SystemPromptSection[],
|
|
45
|
+
): Promise<(string | null)[]> {
|
|
46
|
+
const cache = getSystemPromptSectionCache()
|
|
47
|
+
|
|
48
|
+
return Promise.all(
|
|
49
|
+
sections.map(async s => {
|
|
50
|
+
if (!s.cacheBreak && cache.has(s.name)) {
|
|
51
|
+
return cache.get(s.name) ?? null
|
|
52
|
+
}
|
|
53
|
+
const value = await s.compute()
|
|
54
|
+
setSystemPromptSectionCacheEntry(s.name, value)
|
|
55
|
+
return value
|
|
56
|
+
}),
|
|
57
|
+
)
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Clear all system prompt section state. Called on /clear and /compact.
|
|
62
|
+
* Also resets beta header latches so a fresh conversation gets fresh
|
|
63
|
+
* evaluation of AFK/fast-mode/cache-editing headers.
|
|
64
|
+
*/
|
|
65
|
+
export function clearSystemPromptSections(): void {
|
|
66
|
+
clearSystemPromptSectionState()
|
|
67
|
+
clearBetaHeaderLatches()
|
|
68
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Constants related to tool result size limits
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Default maximum size in characters for tool results before they get persisted
|
|
7
|
+
* to disk. When exceeded, the result is saved to a file and the model receives
|
|
8
|
+
* a preview with the file path instead of the full content.
|
|
9
|
+
*
|
|
10
|
+
* Individual tools may declare a lower maxResultSizeChars, but this constant
|
|
11
|
+
* acts as a system-wide cap regardless of what tools declare.
|
|
12
|
+
*/
|
|
13
|
+
export const DEFAULT_MAX_RESULT_SIZE_CHARS = 50_000
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Maximum size for tool results in tokens.
|
|
17
|
+
* Based on analysis of tool result sizes, we set this to a reasonable upper bound
|
|
18
|
+
* to prevent excessively large tool results from consuming too much context.
|
|
19
|
+
*
|
|
20
|
+
* This is approximately 400KB of text (assuming ~4 bytes per token).
|
|
21
|
+
*/
|
|
22
|
+
export const MAX_TOOL_RESULT_TOKENS = 100_000
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Bytes per token estimate for calculating token count from byte size.
|
|
26
|
+
* This is a conservative estimate - actual token count may vary.
|
|
27
|
+
*/
|
|
28
|
+
export const BYTES_PER_TOKEN = 4
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Maximum size for tool results in bytes (derived from token limit).
|
|
32
|
+
*/
|
|
33
|
+
export const MAX_TOOL_RESULT_BYTES = MAX_TOOL_RESULT_TOKENS * BYTES_PER_TOKEN
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Default maximum aggregate size in characters for tool_result blocks within
|
|
37
|
+
* a SINGLE user message (one turn's batch of parallel tool results). When a
|
|
38
|
+
* message's blocks together exceed this, the largest blocks in that message
|
|
39
|
+
* are persisted to disk and replaced with previews until under budget.
|
|
40
|
+
* Messages are evaluated independently — a 150K result in one turn and a
|
|
41
|
+
* 150K result in the next are both untouched.
|
|
42
|
+
*
|
|
43
|
+
* This prevents N parallel tools from each hitting the per-tool max and
|
|
44
|
+
* collectively producing e.g. 10 × 40K = 400K in one turn's user message.
|
|
45
|
+
*
|
|
46
|
+
* Overridable at runtime via GrowthBook flag tengu_hawthorn_window — see
|
|
47
|
+
* getPerMessageBudgetLimit() in toolResultStorage.ts.
|
|
48
|
+
*/
|
|
49
|
+
export const MAX_TOOL_RESULTS_PER_MESSAGE_CHARS = 200_000
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* Maximum character length for tool summary strings in compact views.
|
|
53
|
+
* Used by getToolUseSummary() implementations to truncate long inputs
|
|
54
|
+
* for display in grouped agent rendering.
|
|
55
|
+
*/
|
|
56
|
+
export const TOOL_SUMMARY_MAX_LENGTH = 50
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
// biome-ignore-all assist/source/organizeImports: ANT-ONLY import markers must not be reordered
|
|
2
|
+
import { feature } from 'bun:bundle'
|
|
3
|
+
import { TASK_OUTPUT_TOOL_NAME } from '../tools/TaskOutputTool/constants.js'
|
|
4
|
+
import { EXIT_PLAN_MODE_V2_TOOL_NAME } from '../tools/ExitPlanModeTool/constants.js'
|
|
5
|
+
import { ENTER_PLAN_MODE_TOOL_NAME } from '../tools/EnterPlanModeTool/constants.js'
|
|
6
|
+
import { AGENT_TOOL_NAME } from '../tools/AgentTool/constants.js'
|
|
7
|
+
import { ASK_USER_QUESTION_TOOL_NAME } from '../tools/AskUserQuestionTool/prompt.js'
|
|
8
|
+
import { TASK_STOP_TOOL_NAME } from '../tools/TaskStopTool/prompt.js'
|
|
9
|
+
import { FILE_READ_TOOL_NAME } from '../tools/FileReadTool/prompt.js'
|
|
10
|
+
import { WEB_SEARCH_TOOL_NAME } from '../tools/WebSearchTool/prompt.js'
|
|
11
|
+
import { TODO_WRITE_TOOL_NAME } from '../tools/TodoWriteTool/constants.js'
|
|
12
|
+
import { GREP_TOOL_NAME } from '../tools/GrepTool/prompt.js'
|
|
13
|
+
import { WEB_FETCH_TOOL_NAME } from '../tools/WebFetchTool/prompt.js'
|
|
14
|
+
import { GLOB_TOOL_NAME } from '../tools/GlobTool/prompt.js'
|
|
15
|
+
import { SHELL_TOOL_NAMES } from '../utils/shell/shellToolUtils.js'
|
|
16
|
+
import { FILE_EDIT_TOOL_NAME } from '../tools/FileEditTool/constants.js'
|
|
17
|
+
import { FILE_WRITE_TOOL_NAME } from '../tools/FileWriteTool/prompt.js'
|
|
18
|
+
import { NOTEBOOK_EDIT_TOOL_NAME } from '../tools/NotebookEditTool/constants.js'
|
|
19
|
+
import { SKILL_TOOL_NAME } from '../tools/SkillTool/constants.js'
|
|
20
|
+
import { SEND_MESSAGE_TOOL_NAME } from '../tools/SendMessageTool/constants.js'
|
|
21
|
+
import { TASK_CREATE_TOOL_NAME } from '../tools/TaskCreateTool/constants.js'
|
|
22
|
+
import { TASK_GET_TOOL_NAME } from '../tools/TaskGetTool/constants.js'
|
|
23
|
+
import { TASK_LIST_TOOL_NAME } from '../tools/TaskListTool/constants.js'
|
|
24
|
+
import { TASK_UPDATE_TOOL_NAME } from '../tools/TaskUpdateTool/constants.js'
|
|
25
|
+
import { TOOL_SEARCH_TOOL_NAME } from '../tools/ToolSearchTool/prompt.js'
|
|
26
|
+
import { SYNTHETIC_OUTPUT_TOOL_NAME } from '../tools/SyntheticOutputTool/SyntheticOutputTool.js'
|
|
27
|
+
import { ENTER_WORKTREE_TOOL_NAME } from '../tools/EnterWorktreeTool/constants.js'
|
|
28
|
+
import { EXIT_WORKTREE_TOOL_NAME } from '../tools/ExitWorktreeTool/constants.js'
|
|
29
|
+
import { WORKFLOW_TOOL_NAME } from '../tools/WorkflowTool/constants.js'
|
|
30
|
+
import {
|
|
31
|
+
CRON_CREATE_TOOL_NAME,
|
|
32
|
+
CRON_DELETE_TOOL_NAME,
|
|
33
|
+
CRON_LIST_TOOL_NAME,
|
|
34
|
+
} from '../tools/ScheduleCronTool/prompt.js'
|
|
35
|
+
|
|
36
|
+
export const ALL_AGENT_DISALLOWED_TOOLS = new Set([
|
|
37
|
+
TASK_OUTPUT_TOOL_NAME,
|
|
38
|
+
EXIT_PLAN_MODE_V2_TOOL_NAME,
|
|
39
|
+
ENTER_PLAN_MODE_TOOL_NAME,
|
|
40
|
+
// Allow Agent tool for agents when user is ant (enables nested agents)
|
|
41
|
+
...(process.env.USER_TYPE === 'ant' ? [] : [AGENT_TOOL_NAME]),
|
|
42
|
+
ASK_USER_QUESTION_TOOL_NAME,
|
|
43
|
+
TASK_STOP_TOOL_NAME,
|
|
44
|
+
// Prevent recursive workflow execution inside subagents.
|
|
45
|
+
...(feature('WORKFLOW_SCRIPTS') ? [WORKFLOW_TOOL_NAME] : []),
|
|
46
|
+
])
|
|
47
|
+
|
|
48
|
+
export const CUSTOM_AGENT_DISALLOWED_TOOLS = new Set([
|
|
49
|
+
...ALL_AGENT_DISALLOWED_TOOLS,
|
|
50
|
+
])
|
|
51
|
+
|
|
52
|
+
/*
|
|
53
|
+
* Async Agent Tool Availability Status (Source of Truth)
|
|
54
|
+
*/
|
|
55
|
+
export const ASYNC_AGENT_ALLOWED_TOOLS = new Set([
|
|
56
|
+
FILE_READ_TOOL_NAME,
|
|
57
|
+
WEB_SEARCH_TOOL_NAME,
|
|
58
|
+
TODO_WRITE_TOOL_NAME,
|
|
59
|
+
GREP_TOOL_NAME,
|
|
60
|
+
WEB_FETCH_TOOL_NAME,
|
|
61
|
+
GLOB_TOOL_NAME,
|
|
62
|
+
...SHELL_TOOL_NAMES,
|
|
63
|
+
FILE_EDIT_TOOL_NAME,
|
|
64
|
+
FILE_WRITE_TOOL_NAME,
|
|
65
|
+
NOTEBOOK_EDIT_TOOL_NAME,
|
|
66
|
+
SKILL_TOOL_NAME,
|
|
67
|
+
SYNTHETIC_OUTPUT_TOOL_NAME,
|
|
68
|
+
TOOL_SEARCH_TOOL_NAME,
|
|
69
|
+
ENTER_WORKTREE_TOOL_NAME,
|
|
70
|
+
EXIT_WORKTREE_TOOL_NAME,
|
|
71
|
+
])
|
|
72
|
+
/**
|
|
73
|
+
* Tools allowed only for in-process teammates (not general async agents).
|
|
74
|
+
* These are injected by inProcessRunner.ts and allowed through filterToolsForAgent
|
|
75
|
+
* via isInProcessTeammate() check.
|
|
76
|
+
*/
|
|
77
|
+
export const IN_PROCESS_TEAMMATE_ALLOWED_TOOLS = new Set([
|
|
78
|
+
TASK_CREATE_TOOL_NAME,
|
|
79
|
+
TASK_GET_TOOL_NAME,
|
|
80
|
+
TASK_LIST_TOOL_NAME,
|
|
81
|
+
TASK_UPDATE_TOOL_NAME,
|
|
82
|
+
SEND_MESSAGE_TOOL_NAME,
|
|
83
|
+
// Teammate-created crons are tagged with the creating agentId and routed to
|
|
84
|
+
// that teammate's pendingUserMessages queue (see useScheduledTasks.ts).
|
|
85
|
+
...(feature('AGENT_TRIGGERS')
|
|
86
|
+
? [CRON_CREATE_TOOL_NAME, CRON_DELETE_TOOL_NAME, CRON_LIST_TOOL_NAME]
|
|
87
|
+
: []),
|
|
88
|
+
])
|
|
89
|
+
|
|
90
|
+
/*
|
|
91
|
+
* BLOCKED FOR ASYNC AGENTS:
|
|
92
|
+
* - AgentTool: Blocked to prevent recursion
|
|
93
|
+
* - TaskOutputTool: Blocked to prevent recursion
|
|
94
|
+
* - ExitPlanModeTool: Plan mode is a main thread abstraction.
|
|
95
|
+
* - TaskStopTool: Requires access to main thread task state.
|
|
96
|
+
* - TungstenTool: Uses singleton virtual terminal abstraction that conflicts between agents.
|
|
97
|
+
*
|
|
98
|
+
* ENABLE LATER (NEED WORK):
|
|
99
|
+
* - MCPTool: TBD
|
|
100
|
+
* - ListMcpResourcesTool: TBD
|
|
101
|
+
* - ReadMcpResourceTool: TBD
|
|
102
|
+
*/
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* Tools allowed in coordinator mode - only output and agent management tools for the coordinator
|
|
106
|
+
*/
|
|
107
|
+
export const COORDINATOR_MODE_ALLOWED_TOOLS = new Set([
|
|
108
|
+
AGENT_TOOL_NAME,
|
|
109
|
+
TASK_STOP_TOOL_NAME,
|
|
110
|
+
SEND_MESSAGE_TOOL_NAME,
|
|
111
|
+
SYNTHETIC_OUTPUT_TOOL_NAME,
|
|
112
|
+
])
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
// Past tense verbs for turn completion messages
|
|
2
|
+
// These verbs work naturally with "for [duration]" (e.g., "Worked for 5s")
|
|
3
|
+
export const TURN_COMPLETION_VERBS = [
|
|
4
|
+
'Baked',
|
|
5
|
+
'Brewed',
|
|
6
|
+
'Churned',
|
|
7
|
+
'Cogitated',
|
|
8
|
+
'Cooked',
|
|
9
|
+
'Crunched',
|
|
10
|
+
'Sautéed',
|
|
11
|
+
'Worked',
|
|
12
|
+
]
|
package/constants/xml.ts
ADDED
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
// XML tag names used to mark skill/command metadata in messages
|
|
2
|
+
export const COMMAND_NAME_TAG = 'command-name'
|
|
3
|
+
export const COMMAND_MESSAGE_TAG = 'command-message'
|
|
4
|
+
export const COMMAND_ARGS_TAG = 'command-args'
|
|
5
|
+
|
|
6
|
+
// XML tag names for terminal/bash command input and output in user messages
|
|
7
|
+
// These wrap content that represents terminal activity, not actual user prompts
|
|
8
|
+
export const BASH_INPUT_TAG = 'bash-input'
|
|
9
|
+
export const BASH_STDOUT_TAG = 'bash-stdout'
|
|
10
|
+
export const BASH_STDERR_TAG = 'bash-stderr'
|
|
11
|
+
export const LOCAL_COMMAND_STDOUT_TAG = 'local-command-stdout'
|
|
12
|
+
export const LOCAL_COMMAND_STDERR_TAG = 'local-command-stderr'
|
|
13
|
+
export const LOCAL_COMMAND_CAVEAT_TAG = 'local-command-caveat'
|
|
14
|
+
|
|
15
|
+
// All terminal-related tags that indicate a message is terminal output, not a user prompt
|
|
16
|
+
export const TERMINAL_OUTPUT_TAGS = [
|
|
17
|
+
BASH_INPUT_TAG,
|
|
18
|
+
BASH_STDOUT_TAG,
|
|
19
|
+
BASH_STDERR_TAG,
|
|
20
|
+
LOCAL_COMMAND_STDOUT_TAG,
|
|
21
|
+
LOCAL_COMMAND_STDERR_TAG,
|
|
22
|
+
LOCAL_COMMAND_CAVEAT_TAG,
|
|
23
|
+
] as const
|
|
24
|
+
|
|
25
|
+
export const TICK_TAG = 'tick'
|
|
26
|
+
|
|
27
|
+
// XML tag names for task notifications (background task completions)
|
|
28
|
+
export const TASK_NOTIFICATION_TAG = 'task-notification'
|
|
29
|
+
export const TASK_ID_TAG = 'task-id'
|
|
30
|
+
export const TOOL_USE_ID_TAG = 'tool-use-id'
|
|
31
|
+
export const TASK_TYPE_TAG = 'task-type'
|
|
32
|
+
export const OUTPUT_FILE_TAG = 'output-file'
|
|
33
|
+
export const STATUS_TAG = 'status'
|
|
34
|
+
export const SUMMARY_TAG = 'summary'
|
|
35
|
+
export const REASON_TAG = 'reason'
|
|
36
|
+
export const WORKTREE_TAG = 'worktree'
|
|
37
|
+
export const WORKTREE_PATH_TAG = 'worktreePath'
|
|
38
|
+
export const WORKTREE_BRANCH_TAG = 'worktreeBranch'
|
|
39
|
+
|
|
40
|
+
// XML tag names for ultraplan mode (remote parallel planning sessions)
|
|
41
|
+
export const ULTRAPLAN_TAG = 'ultraplan'
|
|
42
|
+
|
|
43
|
+
// XML tag name for remote /review results (teleported review session output).
|
|
44
|
+
// Remote session wraps its final review in this tag; local poller extracts it.
|
|
45
|
+
export const REMOTE_REVIEW_TAG = 'remote-review'
|
|
46
|
+
|
|
47
|
+
// run_hunt.sh's heartbeat echoes the orchestrator's progress.json inside this
|
|
48
|
+
// tag every ~10s. Local poller parses the latest for the task-status line.
|
|
49
|
+
export const REMOTE_REVIEW_PROGRESS_TAG = 'remote-review-progress'
|
|
50
|
+
|
|
51
|
+
// XML tag name for teammate messages (swarm inter-agent communication)
|
|
52
|
+
export const TEAMMATE_MESSAGE_TAG = 'teammate-message'
|
|
53
|
+
|
|
54
|
+
// XML tag name for external channel messages
|
|
55
|
+
export const CHANNEL_MESSAGE_TAG = 'channel-message'
|
|
56
|
+
export const CHANNEL_TAG = 'channel'
|
|
57
|
+
|
|
58
|
+
// XML tag name for cross-session UDS messages (another Claude session's inbox)
|
|
59
|
+
export const CROSS_SESSION_MESSAGE_TAG = 'cross-session-message'
|
|
60
|
+
|
|
61
|
+
// XML tag wrapping the rules/format boilerplate in a fork child's first message.
|
|
62
|
+
// Lets the transcript renderer collapse the boilerplate and show only the directive.
|
|
63
|
+
export const FORK_BOILERPLATE_TAG = 'fork-boilerplate'
|
|
64
|
+
// Prefix before the directive text, stripped by the renderer. Keep in sync
|
|
65
|
+
// across buildChildMessage (generates) and UserForkBoilerplateMessage (parses).
|
|
66
|
+
export const FORK_DIRECTIVE_PREFIX = 'Your directive: '
|
|
67
|
+
|
|
68
|
+
// Common argument patterns for slash commands that request help
|
|
69
|
+
export const COMMON_HELP_ARGS = ['help', '-h', '--help']
|
|
70
|
+
|
|
71
|
+
// Common argument patterns for slash commands that request current state/info
|
|
72
|
+
export const COMMON_INFO_ARGS = [
|
|
73
|
+
'list',
|
|
74
|
+
'show',
|
|
75
|
+
'display',
|
|
76
|
+
'current',
|
|
77
|
+
'view',
|
|
78
|
+
'get',
|
|
79
|
+
'check',
|
|
80
|
+
'describe',
|
|
81
|
+
'print',
|
|
82
|
+
'version',
|
|
83
|
+
'about',
|
|
84
|
+
'status',
|
|
85
|
+
'?',
|
|
86
|
+
]
|