Claude Code 默认跳过权限检查配置(Windows 版)
本文介绍了两种在Windows系统中为Claude Code默认添加--dangerously-skip-permissions参数的方法。推荐方案是创建自定义包装脚本(方案一),通过修改PATH环境变量实现永久生效且不会被更新覆盖。方案二直接修改原文件虽然简单但每次更新都需要重新修改。文章还列举了其他不可行的方法,并强调了跳过权限模式的安全风险,建议仅在隔离环境中使用。最后提供了不同使用场景下的
Claude Code 默认跳过权限检查配置(Windows 版)
问题背景
在使用 Claude Code 时,每次都需要手动添加 --dangerously-skip-permissions 参数:
claude --dangerously-skip-permissions
这显然不够优雅。有没有办法让 claude 命令默认就带上这个参数?
解决方案对比
| 方案 | 优点 | 缺点 |
|---|---|---|
| 方案一:包装脚本 | ✅ 不会被更新覆盖 ✅ 一劳永逸 |
需要手动创建脚本 |
| 方案二:修改原文件 | 简单直接 | ❌ 每次更新都要重新修改 |
方案一:创建自定义包装脚本(推荐)
操作步骤
1. 创建脚本目录
mkdir C:\Users\Administrator\claude-scripts
💡 将
Administrator替换为你的实际用户名
2. 创建包装脚本
在 C:\Users\Administrator\claude-scripts 目录下创建 claude.bat 文件,内容如下:
@echo off
REM Claude Code wrapper script with --dangerously-skip-permissions
REM This file is NOT overwritten during Claude Code updates
REM Call the original claude.cmd with --dangerously-skip-permissions
call "%~dp0..\AppData\Roaming\npm\claude.cmd" --dangerously-skip-permissions %*
3. 添加到系统 PATH
方法一:PowerShell 命令(推荐)
[Environment]::SetEnvironmentVariable('PATH', 'C:\Users\Administrator\claude-scripts;' + [Environment]::GetEnvironmentVariable('PATH', 'User'), 'User')
方法二:图形界面
- 右键「此电脑」→ 属性 → 高级系统设置
- 环境变量 → 用户变量 → 找到
Path - 新建 → 添加
C:\Users\Administrator\claude-scripts - 将该目录上移到最顶部(确保优先查找)
4. 验证配置
打开新的 cmd 窗口,运行:
claude --version
如果正常显示版本号,说明配置成功!
原理解析
用户输入 claude
↓
系统在 PATH 中查找 claude.bat/cmd
↓
找到 C:\Users\...\claude-scripts\claude.bat(你的包装脚本)
↓
执行包装脚本,自动追加 --dangerously-skip-permissions
↓
调用真正的 C:\...\npm\claude.cmd
↓
Claude Code 以跳过权限模式启动
方案二:直接修改 claude.cmd(不推荐)
⚠️ 警告:每次 Claude Code 更新后都需要重新修改
操作步骤
1. 找到原文件
C:\Users\<用户名>\AppData\Roaming\npm\claude.cmd
2. 编辑文件
用记事本或 VS Code 打开,找到最后一行(约第 17 行):
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\node_modules\@anthropic-ai\claude-code\cli.js" %*
修改为:
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\node_modules\@anthropic-ai\claude-code\cli.js" --dangerously-skip-permissions %*
3. 保存并测试
claude --help | findstr skip
其他尝试过但不可行的方法
❌ 修改 settings.json
在 ~/.claude/settings.json 中添加:
{
"permissionMode": "bypassPermissions"
}
结果:与 --dangerously-skip-permissions 效果有细微差别,某些场景仍需确认。
❌ 环境变量
set CLAUDE_PERMISSION_MODE=bypassPermissions
结果:Claude Code 并不识别这个环境变量。
❌ Shell Alias(Git Bash)
alias claude='claude --dangerously-skip-permissions'
结果:仅适用于 bash/zsh,不适用于 Windows cmd。
验证方法汇总
| 测试命令 | 预期结果 |
|---|---|
claude --version |
显示版本号 |
claude --help |
帮助信息中包含 --dangerously-skip-permissions |
直接运行 claude |
启动时显示 “Running in dangerously-skip-permissions mode” |
注意事项
⚠️ 安全警告:
--dangerously-skip-permissions会跳过所有权限检查- 任何工具都可以在无需确认的情况下执行
- 强烈建议仅在隔离环境(如虚拟机、容器)中使用
✅ 最佳实践:
- 日常开发:使用普通模式,谨慎确认权限
- CI/CD 或自动化脚本:考虑使用包装脚本模式
- 沙盒环境:可以放心使用跳过权限模式
总结
| 你的需求 | 推荐方案 |
|---|---|
| 个人开发机,追求便捷 | 方案一(包装脚本) |
| 临时使用,不想折腾 | 手动输入完整命令 |
| CI/CD 自动化 | 方案一 + 环境变量控制 |
方案一是我最推荐的,一次配置,永久生效,再也不用担心 Claude Code 更新覆盖配置了!
📌 小贴士:如果需要在不同场景间切换,可以创建两个不同的脚本:
claude-safe.bat- 普通模式claude.bat- 跳过权限模式
这样既保证了灵活性,又不失便捷性。
更多推荐




所有评论(0)