Bash 工具目录,负责 shell 命令执行、权限检查、输出流处理与 UI 呈现。
- 相对路径:
src/tools/BashTool - 直接文件数:18
- 直接子目录数:0
- 递归文件数:18
- 主要文件类型:
.tsx 15、.tsxx 3
- 该目录最常引用的仓库内目录:
src/utils(44)、src/utils/bash(24)、src/utils/permissions(23)、src(9)、src/types(6)、src/utils/sandbox(5)、src/services/analytics(3) - 最常引用该目录的仓库内目录:
src/utils(8)、src/components/permissions/BashPermissionRequest(6)、src/services/tools(4)、src/utils/permissions(4)、src/tools/PowerShellTool(3)、src/hooks(3)、src/components/TrustDialog(2)
| 文件 | 行数 | 导出/关键符号 | 说明 |
|---|---|---|---|
BashTool.tsx |
1144 | isSearchOrReadBashCommand, BashToolInput, Out, detectBlockedSleepPattern, BashTool |
工具实现或工具适配层;导出符号以 isSearchOrReadBashCommand, BashToolInput, Out, detectBlockedSleepPattern 为主,结合所在目录可判断其服务于 src/tools/BashTool 这条功能线。 |
BashToolResultMessage.tsx |
191 | 未显式导出或以默认导出为主 | 工具实现或工具适配层;文件名指向 Bash / Tool / Result / Message 这一职责,顶部注释说明:Extracts sandbox violations from stderr if present Returns both the cleaned stderr and the violations content |
UI.tsx |
185 | BackgroundHint, renderToolUseMessage, renderToolUseProgressMessage, renderToolUseQueuedMessage, renderToolResultMessage, renderToolUseErrorMessage |
界面组件或交互视图;导出符号以 BackgroundHint, renderToolUseMessage, renderToolUseProgressMessage, renderToolUseQueuedMessage 为主,结合所在目录可判断其服务于 src/tools/BashTool 这条功能线。 |
bashCommandHelpers.ts |
265 | CommandIdentityCheckers, checkCommandOperatorPermissions |
辅助函数集合;导出符号以 CommandIdentityCheckers, checkCommandOperatorPermissions 为主,结合所在目录可判断其服务于 src/tools/BashTool 这条功能线。 |
bashPermissions.ts |
2621 | MAX_SUBCOMMANDS_FOR_SECURITY_CHECK, MAX_SUGGESTED_RULES_FOR_COMPOUND, getSimpleCommandPrefix, getFirstWordPrefix, permissionRuleExtractPrefix, matchWildcardPattern |
权限相关逻辑;导出符号以 MAX_SUBCOMMANDS_FOR_SECURITY_CHECK, MAX_SUGGESTED_RULES_FOR_COMPOUND, getSimpleCommandPrefix, getFirstWordPrefix 为主,结合所在目录可判断其服务于 src/tools/BashTool 这条功能线。 |
bashSecurity.ts |
2592 | stripSafeHeredocSubstitutions, hasSafeHeredocSubstitution, bashCommandIsSafe_DEPRECATED, bashCommandIsSafeAsync_DEPRECATED |
工具实现;导出符号以 stripSafeHeredocSubstitutions, hasSafeHeredocSubstitution, bashCommandIsSafe_DEPRECATED, bashCommandIsSafeAsync_DEPRECATED 为主,结合所在目录可判断其服务于 src/tools/BashTool 这条功能线。 |
commandSemantics.ts |
140 | CommandSemantic, interpretCommandResult |
命令实现或命令适配层;导出符号以 CommandSemantic, interpretCommandResult 为主,顶部注释说明:Command semantics configuration for interpreting exit codes in different contexts. Many commands use exit codes to co... |
commentLabel.ts |
13 | extractBashCommentLabel |
工具实现;导出符号以 extractBashCommentLabel 为主,顶部注释说明:If the first line of a bash command is a # comment (not a #! shebang), return the comment text stripped of the `#... |
destructiveCommandWarning.ts |
102 | getDestructiveCommandWarning |
命令实现或命令适配层;导出符号以 getDestructiveCommandWarning 为主,顶部注释说明:Detects potentially destructive bash commands and returns a warning string for display in the permission dialog. This... |
modeValidation.ts |
115 | checkPermissionMode, getAutoAllowedCommands |
校验逻辑;导出符号以 checkPermissionMode, getAutoAllowedCommands 为主,结合所在目录可判断其服务于 src/tools/BashTool 这条功能线。 |
pathValidation.ts |
1303 | PathCommand, PATH_EXTRACTORS, COMMAND_OPERATION_TYPE, createPathChecker, checkPathConstraints, stripWrappersFromArgv |
校验逻辑;导出符号以 PathCommand, PATH_EXTRACTORS, COMMAND_OPERATION_TYPE, createPathChecker 为主,结合所在目录可判断其服务于 src/tools/BashTool 这条功能线。 |
prompt.ts |
369 | getDefaultTimeoutMs, getMaxTimeoutMs, getSimplePrompt |
提示词/提示模板定义;导出符号以 getDefaultTimeoutMs, getMaxTimeoutMs, getSimplePrompt 为主,结合所在目录可判断其服务于 src/tools/BashTool 这条功能线。 |
readOnlyValidation.ts |
1990 | isCommandSafeViaFlagParsing, checkReadOnlyConstraints |
校验逻辑;导出符号以 isCommandSafeViaFlagParsing, checkReadOnlyConstraints 为主,结合所在目录可判断其服务于 src/tools/BashTool 这条功能线。 |
sedEditParser.ts |
322 | SedEditInfo, isSedInPlaceEdit, parseSedEditCommand, applySedSubstitution |
解析逻辑;导出符号以 SedEditInfo, isSedInPlaceEdit, parseSedEditCommand, applySedSubstitution 为主,顶部注释说明:Parser for sed edit commands (-i flag substitutions) Extracts file paths and substitution patterns to enable file-edi... |
sedValidation.ts |
684 | isLinePrintingCommand, isPrintCommand, sedCommandIsAllowedByAllowlist, hasFileArgs, extractSedExpressions, checkSedConstraints |
校验逻辑;导出符号以 isLinePrintingCommand, isPrintCommand, sedCommandIsAllowedByAllowlist, hasFileArgs 为主,顶部注释说明:Helper: Validate flags against an allowlist Handles both single flags and combined flags (e.g., -nE) @param flags Arr... |
shouldUseSandbox.ts |
153 | shouldUseSandbox |
工具实现;导出符号以 shouldUseSandbox 为主,结合所在目录可判断其服务于 src/tools/BashTool 这条功能线。 |
toolName.ts |
2 | BASH_TOOL_NAME |
工具实现或工具适配层;导出符号以 BASH_TOOL_NAME 为主,顶部注释说明:Here to break circular dependency from prompt.ts |
utils.ts |
223 | stripEmptyLines, isImageOutput, parseDataUri, buildImageToolResult, resizeShellImageOutput, formatOutput |
通用辅助逻辑;导出符号以 stripEmptyLines, isImageOutput, parseDataUri, buildImageToolResult 为主,顶部注释说明:Strips leading and trailing lines that contain only whitespace/newlines. Unlike trim(), this preserves whitespace wit... |
该目录没有直接子目录。