危险区:有些动作,被写死为永不允许

在规则系统之外,代码里还内置了一份硬编码的危险操作清单(src/utils/permissions/dangerousPatterns.ts),主要用于 Auto Mode 入口时的清理。

// 跨平台危险命令(Unix + Windows 都适用)
const CROSS_PLATFORM_CODE_EXEC = [
  'python', 'python3', 'node', 'deno', 'tsx',
  'ruby', 'perl', 'php', 'lua',    // 各种解释器
  'npx', 'bunx', 'npm run',        // 包运行器
  'bash', 'sh', 'ssh',             // Shell 和远程执行
]

// Unix 额外危险命令
const DANGEROUS_BASH_PATTERNS = [
  ...CROSS_PLATFORM_CODE_EXEC,
  'zsh', 'fish', 'eval', 'exec',  // 更多 Shell
  'env', 'xargs', 'sudo',          // 权限提升
]

为什么这些危险? 因为 Bash(python:*) 这样的宽泛允许规则,等于允许 Claude 通过 Python 执行任意代码,完全绕过了 Bash 命令的细粒度检查。进入 Auto Mode 时,系统会自动剥离这类规则,防止 AI 分类器在宽泛授权下做出过度信任的决策。