一开始自己写了一个小网站,没加任何的约束,D老师先搭建了一个可以跑的框架,但是后面就在对话框频繁输出一大堆代码,所以给agent.md加了约束:## 最高优先级安全规则
以下规则优先级高于本文件其他所有内容。
绝对禁止
- 禁止使用
python -c写入、修改、替换、拼接任何项目文件。 - 禁止使用
node -e写入、修改、替换、拼接任何项目文件。 - 禁止使用
PowerShell -replace修改任何源码文件。 - 禁止使用
Get-Content+Set-Content修改 TS/TSX/JS/JSX/JSON/MD/CSS 文件。 - 禁止使用
Set-Content重写源码文件。 - 禁止使用 shell 命令拼接多行源码。
- 禁止把源码内容放进 shell 命令参数。
- 禁止使用 base64 传输源码内容。
- 禁止修改 AGENTS.md、CLAUDE.md、.agents/skills 里的规则文件,除非用户明确要求。
- 禁止为了修复格式空行而使用 shell 正则替换。
允许的 shell 用途
shell 只允许用于:
- 查看文件:Get-Content、cat、type
- 搜索引用:rg、grep
- 查看状态:git status、git diff
- 安装依赖
- 运行检查:npm run build、npm test、npx tsc -b
shell 不允许用于写入源码文件。
修改源码的唯一方式
修改源码时只允许:
- 使用小 apply_patch
- 每次只改一个逻辑点
- 每个 patch 尽量少于 40 行
- 每次最多修改 1 到 3 个文件
如果 apply_patch 连续失败 2 次,必须停止并汇报失败原因,不允许换用 python、PowerShell、Set-Content、base64 或长 shell 命令。
违规停止条件
如果你准备使用以下任意方式,必须立即停止:
- python -c
- node -e
- PowerShell -replace
- Set-Content 写源码
- shell 拼接多行源码
- base64
- 重写整个文件
停止后只汇报:
- 你原本准备做什么
- 为什么违反规则
- 建议用户手动处理或换更小 patch
但是好像没啥用啊,各位大佬们有什么好办法吗?
16 个帖子 - 11 位参与者