aionclaw任务循环源于逻辑或配置错误而非模型能力问题:指令矛盾、外部依赖未加载、子任务闭环、上下文膨胀、技能未设退出条件。需检查prompt互斥性、显式加载依赖、设置max_loop、裁剪上下文、完善on_success/on_failure跳转。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

当你在 AionClaw 中执行一个任务时,发现模型被反复调用、同一段思考或操作循环出现多次,甚至触发 “检测到模型循环,请求已被中断” 报错,这说明任务链路在逻辑层或配置层已陷入非收敛状态,不是模型能力问题,而是输入约束、上下文管理或技能调用路径出了偏差。
任务指令存在隐性矛盾或闭环依赖
第一步:检查 prompt 中是否存在互斥要求。例如同时写明“保持原始函数签名不变”和“将返回类型从 string 改为 number”,模型无法同时满足,只能来回修正→回滚→再修正。
第二步:确认是否引入了未声明的外部依赖。比如指令中提到“参考 config.json 中的超时值”,但该文件未被显式加载进上下文,模型每次都会尝试重新读取、失败、重试。
第三步:排查子任务是否形成调用闭环。典型如:Agent A 调用工具生成报告 → 报告内容触发 Agent B 分析 → Agent B 的分析结果又作为新输入喂回 Agent A。若缺少终止条件或版本隔离,就会无限嵌套。
【关键点】AionClaw 默认不自动截断递归调用深度,必须在 skill 定义中显式设置 max_loop=3 或类似参数,否则会持续重试直到超时或被 TaoToken 层强制熔断。
上下文膨胀导致目标漂移
方法一:手动清空当前会话历史后重试。AionClaw 的长期记忆机制会把前 15 轮交互默认载入新任务上下文,若此前已处理过 8 个文件、修改过 3 次配置,新任务启动时模型实际看到的是“一堆已完成动作+模糊的新指令”,极易忽略当前目标。
方法二:在任务发起时添加硬性上下文裁剪指令,例如:“本次仅基于以下三行输入决策,其余历史全部忽略:
— 输入文件路径:/data/in.csv
— 目标字段:sales_amount
— 输出格式:JSON array”。这比依赖自动 truncation 更可靠。
注意:macOS 版 AionClaw v2.4.1 存在一个已知 bug——当本地文件树扫描开启且项目含 >50 个 .py 文件时,自动上下文注入会漏掉 termination token,导致模型误判任务未结束。
技能(Skill)执行链未定义退出条件
① 打开对应技能的 YAML 定义文件,定位到 actions 列表。
② 检查每个 action 的 on_success 和 on_failure 字段是否都指向明确跳转,禁止出现 “on_success: self” 或空值。
③ 若该技能调用了 Hermes Agent 进化模块,需确认 evolution_rules.yml 中对该 skill 的 converge_threshold 是否设为 0(表示永不收敛),这是导致反复请求的高发配置错误。
这一步操作起来很简单,直接用文本编辑器打开 ~/.aionclaw/skills/your_skill.yaml 就能改。改完保存后不用重启,AionClaw 会在下次调用时热加载新规则。











