1 概述
主要可以通过以下方式来避免 Claude Code 误删数据。
- 在一个新文件夹下使用该工具,避免删除电脑中的历史数据。
- 开发代码时,即时提交已开发好或者基本开发好的功能模块,不要等所有功能都开发好了或者测试没问题了才提交。多次提交代码,确保代码能被即时保存到代码仓库。
- 通过设置 Claude Code 权限配置(permissions 或 hooks),确保执行危险命令前弹出人工确认或直接拒绝执行。
2 设置 Claude Code 权限配置
在 Claude Code 的配置文件中 ~/.claude/settings.json 设置 permissions 或 hooks。简单使用可以只设置 permissions,不设置 hooks。
Hook 先跑,能直接拦;Hook 放过 / 失效,才走 permissions
- PreToolUse Hook:自定义脚本,拦截
permissions识别不到的复杂绕过高危命令(eval、变量拼接等),兜底防护。 - permissions:静态简单规则,针对
rm/shred这类常规高危命令,触发弹窗让你手动确认。
配置完成后,使用 “ claude doctor” 命令检查配置是否有问题。
案例如下:
{ "env": { // 自定义配置 }, "theme": "auto", "permissions": { "ask": [ "Bash(rm *)", "Bash(rmdir *)", "Bash(shred *)", "Bash(git clean *)", "Bash(git reset --hard *)" ] }, "hooks": { "PreToolUse": [ { "matcher": "Bash", "hooks": [ { "type": "command", "command": "/path/to/test.sh(此处为自定义脚本文件路径等)" } ] } ] } }3 参考文献
(1) Claude Code 权限系统主文档
https://code.claude.com/docs/en/permissions#permission-system
(2) Claude Code Hooks 参考文档(PreToolUse 生命周期)
https://code.claude.com/docs/en/hooks
(3) Claude Code Hooks 使用指南
https://code.claude.com/docs/en/hooks-guide