#1104·claudian

[错误]: 当技能内容包含触发关键字时,成功的"技能"工具调用显示为"被阻止"(基于启发式的假阳性)

作者: cenglin123创建于 2026年8月14日更新于 2026年9月17日
标签stale

提交前

  • 我搜索了现有的问题,没有找到同样的问题。
  • 我读过有关文件(例如README),但无法解决这个问题。

问题

使用开码提供者,当代理通过开码的'技能'工具加载技能时,工具调用成功——但克劳迪安使工具卡成为blocked(橙色屏蔽-关闭图标,aria-label' status: blocked'),只要装入的技能'SKILL.md'恰好包含一个关键词''出库'''''''''''拒绝进入''''''''拒绝用户''''''批准''''''''''''''''.

这是扫描工具调用结果文本的关键字heuristic的假阳性:heuristic还运行在成功结果上. optioncode 的 “ skill” 工具返回完整的“ SKILL. md” 文本作为其输出, 因此在 skill 文档中的任何触发词都使一个成功的负载看起来被屏蔽 。

根源(小于`main.js',v2.0.41):

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你来干什么? // 关键字对工具结果文本的推力 函数 XW(t, e) { 让 n = kr(t, {后退缩进: 2 }). to LowerCase (); 返回 !! (n. 包括 ("金库外") Q. 包括 ("拒绝访问") Q. n. 包括 ("用户拒绝") || n. 包括 ("核准") || . e 不包括("密度"); {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?

// handle ToolResult: 状态指派 e. is Error ? d. status = "error" (英语). : ! hde(d.name) * * * * d.status="被锁" // c= XW(结果文本,为Error) d. status = "已完成";


排除列表仅包含"["EnterPlanMode","ExitPlanMode","AskUserQuestion"]"——‘技能'工具未被排除在外.

具体例子:超级能手技能"放出-平行-代理"在其示例文本("工具批准流","工具批准-种族-条件. test.ts")中包含了"批准"一词. 装入它成功(开码评价"permission=skill typture=放出-平行-代理" )——允许,代理继续使用该技能),但克洛迪安显示被封卡.

** 超出化妆品的影响:** 工具状态为会议历史重建/恢复所用的记录器提供了素材,该记录器将`被锁'视为`错误':

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你来干什么?
让r = n "error" = n "block" ;
. . . . . . . .
如果 (!r) 返回“ [工具${t.name}${o} 状态=${n} ” ;
. . . . . . . .
返回 ${t.name} ${o} 状态=${n} 错误: ${a}`; // + 最多500个结果字符

因此,在历史重建/重现时,一个成功加载的技巧被串行到模型中为‘[Toole technology. status=blocked]错误: <first 500 chars of SKILL.md>`-将成功调用作为失败.

  • 复制步骤
  1. 使用装有技能包的开口码提供者(如[超能 (https://GitHub.com/obra/superpowers),通过`技能.paths'注册其技能)。
  2. 在克劳迪娅聊天时,请询问代理商让其装入"发送-平行-代理"技能(或任何其"SKILL.md"包含"批准"/"拒绝"/"拒绝"/"拒绝用户"/"在金库外"的技能).
  3. 观察 " 技能 " 工具卡。
  4. 牌上显示的是橙色盾牌起落** blocked**状态,虽然技能 . . . . . . .

内容来源: YishenTu/claudian