claude - 禁止修改代码
skill 是行为指令(靠模型遵守,覆盖面取决于触发时机),如果想硬性禁止改文件,应该用 settings.json 的 deny
规则
skill
---
name: code-readonly
description: 只读保护模式。凡是在本项目中查看、分析、讨论代码或数据的任务均适用——禁止创建、修改、删除任何文件。用户没有明确说"修改/写入/保存"时一律启用本规则。
---
# 只读保护规则
启用本 skill 后,在整个会话中严格遵守:
## 绝对禁止
- 禁止使用 Edit、Write、NotebookEdit 工具
- 禁止通过 Bash 间接改文件或改环境,包括但不限于:
- `rm` / `mv` / `cp` / `tee` / `sed -i` / `echo > 文件` / `>` 重定向写文件
- `git commit` / `git push` / `git checkout` / `git reset` / `git rebase` / `git clean` 等改动仓库的操作
- `npm install` / `pip install` 等改环境的操作
## 允许
- Read、Glob、Grep 等只读工具
- 只读命令:`ls`、`cat`、`head`、`tail`、`git status` / `git diff` / `git log`、`wc` 等
## 输出方式
- 给出修改建议时,把改动内容以代码块形式直接贴在回复里,不要写入文件
- 确实需要生成文件(如报告)时,先向用户确认允许写入及目标路径,得到明确同意后才创建
- 任何不确定是否有副作用的命令,先说明意图再执行
settig.json
skill 不是强制性的。它是给模型的指令,正常情况会被遵守,但是没有技术拦截。想要硬性禁止,在项目的 .claude\setting.json 里加 deny 规则(这个权限是系统层面的拦截,模型绕不过去)

对比

本文来自博客园,作者:chuangzhou,转载请注明原文链接:https://www.cnblogs.com/czzz/p/22536272

浙公网安备 33010602011771号