直接答案
在 Claude Code 中运行/permissions 可以查看和管理权限规则;需要持久保存时,把 allow、ask、deny 写入 settings.json。Hooks 也写在同一类设置文件中,用于在工具调用前后执行格式化、测试或安全检查。权限规则的优先级是 deny → ask → allow,所以 deny 规则不会被 allow 覆盖。
这两项控制的是 Claude Code 在你电脑上的工具行为。接入 BetterToken 只会改变模型 API 的 Base URL、API Key 和路由,不会绕过本地权限或替你运行 hooks。
Permissions 和 hooks 应该怎么分工?
选择正确的配置范围
配置一组最小权限规则
1
先用 /permissions 查看现有规则
在 Claude Code 中输入:界面会显示 allow、ask、deny 规则及其来源文件。先确认是否已有团队或管理员规则,再决定添加到用户级还是项目级配置。
2
添加精细规则
下面的项目级示例允许常见测试和 lint,要求每次 请把命令改成项目中真实存在的脚本。不要为了减少弹窗而直接启用
git push 前确认,并禁止读取 .env 文件:bypassPermissions;官方只建议在隔离容器或虚拟机中使用它。3
重新打开 /permissions 验证
保存文件后再次运行
/permissions,确认每条规则显示在预期的来源下。然后分别触发一条 allow、ask 和 deny 规则,检查行为是否符合预期。添加一个可复制的格式化 Hook
下面的例子会在 Claude Code 使用Edit 或 Write 修改文件后运行项目的格式化脚本:
permissions,请把 hooks 合并到同一个顶层 JSON 对象中,不要保存成单独的 .claude/hooks.json。先在终端中手动确认 npm run format 能正常完成,再交给 hook 自动执行。
如何确认 Hook 已生效?
- 在 Claude Code 中输入
/hooks。 - 找到 PostToolUse,确认其中有
Edit|Write和npm run format。 - 让 Claude 修改一个测试文件。
- 检查 Hook 输出和文件格式,确认只执行一次且没有报错。
常见错误与解决方法
适用于 BetterToken 的边界
BetterToken 负责 Claude Code 的模型 API 接入、模型路由、余额和用量记录。下面这些行为仍由本地 Claude Code 控制:- 能否读取或修改某个文件
- 是否需要确认 Bash 命令
- Hook 何时运行、运行什么脚本
- Sandbox、MCP 和项目规则
401、Base URL 或模型映射,请查看 Claude Code 接入 BetterToken 指南。如果问题是命令确认或自动化脚本,请继续在本页的 permissions 与 hooks 中排查。
相关文档
- Claude Code 接入 BetterToken 指南
- Claude Code 中的 CLAUDE.md 是什么?
- Claude Code token 为什么消耗很多?
- Claude Code MCP 和 API Key / Base URL 有什么区别?