AionClaw代码修改必须严格限定作用域,否则会越界重写函数、误删注释或插入调试语句;需通过命令行--line-range、Web视觉框选或自然语言硬约束(使用“不得”“必须”“禁止”)三者之一明确边界,缺一不可。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

让AionClaw改代码时若不明确限定修改范围,它可能擅自重写整个函数、误删注释块、或在无关文件中插入调试语句,导致版本控制混乱和逻辑断裂。
启动前强制指定作用域
打开终端,进入项目根目录,执行:
python -m aionclaw --task-code-edit --target-file src/utils/validator.py --line-range 42-58
这一步必须加--line-range参数,否则AionClaw默认扫描整文件并基于上下文推测“合理改动”,极易越界。【不指定行范围会导致模型在else分支后额外补全一个未声明的异常处理块】
--target-file支持通配符,如--target-file "tests/**/test_*.py"可批量锁定测试文件,但需确保路径下不超过3个匹配项,否则超出免费模型token容量会触发静默截断。
在Web界面中用视觉锚点框定区域
方法一:双击代码行号左侧空白处,出现蓝色高亮条;按住Shift再单击另一行号,形成连续选区;点击右键→「仅在此范围内修改」。
方法二:鼠标拖选代码文本(非行号),松开后顶部工具栏自动弹出「锁定选区」按钮,点击即生效。注意:该操作仅对当前Tab页有效,切换文件后需重新框选。
视觉框选比命令行更直观,但有个隐藏限制:若选中内容含中文注释超过17行,AionClaw会自动忽略最后5行——这是Hermes Agent为防止token溢出做的硬裁剪,无法关闭。
用自然语言精准描述边界条件
第一步:在提示词开头写明「本次修改严格限定在以下三处」
第二步:逐条列出不可触碰的边界,例如:
• 不得修改第1–35行的初始化逻辑
• 第67行起的logging.info()调用必须保留,仅调整其参数字符串
• 所有以# TODO: migrate开头的注释块禁止删除或移动位置
第三步:结尾追加硬性约束:「若任一约束被违反,立即中止生成并返回错误码ERR_SCOPE_VIOLATION」。这句会触发AionClaw底层的scope guard模块,在语法树解析阶段就拦截越界操作。
自然语言描述必须使用“不得”“必须”“禁止”等绝对化动词,用“建议”“可以”“尽量”会导致Hermes引擎忽略该条限制。


















