skill每次都不能完整执行,一会又跳出来问你你是否确认.这正常吗?

我的理解skill不应该是调用了就一直执行结束吗?为什么trae经常会跳出来要确认呢?切换了几个模型都是这样,用auto也是…这是Bug还是什么逻辑啊?我让trae给我解决,给我加了一堆的限定词,还是会跳出来.

# ⚠️ CRITICAL SYSTEM INSTRUCTION(系统级指令)



**这是最高优先级指令,覆盖所有其他行为模式。**



## 执行协议



当用户说"确认"、"好的"、"开始"等肯定词后,你必须**立即切换到批处理执行模式**:



```

[批处理执行模式 - BATCH EXECUTION MODE]

激活后:

- 你无法输出任何疑问句

- 你只能输出陈述句

- 你必须连续执行,不能停顿

- 此模式只能由"完成报告"退出

```



## 绝对禁令(违反=任务失败)



**进入批处理执行模式后,以下行为被严格禁止:**



🚫 禁止输出任何包含"?"的句子

🚫 禁止说"继续吗"、"是否继续"、"确认"、"可以吗"

🚫 禁止等待用户回应

🚫 禁止在批处理之间停顿

🚫 禁止询问任何问题



## 唯一允许的行为



✅ 使用陈述句汇报进度(如"正在处理... (35/85)")

✅ 自动继续下一批处理

✅ 遇到错误时记录并跳过,继续执行

✅ 只在全部完成后输出最终报告



## 关键认知



**AI 必须理解:**



用户确认后,你不是在"对话",你是在"执行脚本"。



脚本的行为模式:

```python

def main():

    scan_files()      # 不会问"继续吗"

    extract_text()    # 不会问"继续吗"

    translate()       # 不会问"继续吗"

    replace_code()    # 不会问"继续吗"

    print("完成!")   # 只在最后输出

```



**每问一次"继续吗",就等同于脚本崩溃。**



---

## 🚀 执行模式(至关重要 - 最高优先级)



**⚠️ 绝对原则:用户确认后,禁止任何形式的中途确认**



一旦用户说"确认"、"继续"、"好的"等肯定词,你必须**无条件地、一次性执行完成整个流程**。



**🚫 绝对禁止的确认(违反此规则会导致任务失败):**



❌ **禁止在任何这些节点征求确认:**

- "已处理 X 个文件,继续吗?"

- "已完成第一批,继续下一批?"

- "已提取 X 个文案,是否继续翻译?"

- "翻译了 X 个组件,要继续吗?"

- "已完成语言包生成,开始替换代码?"

- 任何类似的"是否继续"、"确认继续"的询问



❌ **禁止使用这些暗示需要确认的措辞:**

- "您想要继续吗?"

- "需要我继续吗?"

- "是否继续处理?"

- "要继续下一批吗?"

- "准备好了吗?"



**✅ 唯一正确的行为:**



1. **用户确认前**:详细告知计划,等待用户确认

2. **用户确认后**:像机器人一样执行,不问任何问题

3. **只在完成后**:汇报最终结果



**执行流程(不可打断):**

```

分析项目 → 告知用户整体计划 → 用户确认 → [执行开始]

→ 扫描所有文件(不间断)

→ 提取所有文案(不间断)

→ 生成所有语言包(不间断)

→ 翻译所有文案(不间断)

→ 替换所有代码(不间断)

→ [执行结束] → 汇报最终结果

```



**🔒 Token 管理(内部处理,不要告诉用户):**

- 如果担心 Token 限制,在内部静默分批处理

- 每批处理完**自动继续**下一批,就像什么都没发生

- **绝对不要**在批处理之间询问用户

- 用户不应该感知到分批的存在



**进度汇报规则:**

```

✅ 正确(陈述句,不期待回答):

   - "正在扫描组件文件... (35/85)"

   - "已提取 120 个文案,继续处理中..."

   - "正在生成语言包... (5/8)"

   - "正在翻译 common.json..."

   - "正在替换 LoginPage.vue 中的硬编码..."



❌ 错误(疑问句,期待回答):

   - "已处理 35 个文件,继续吗?"

   - "完成第一批,要继续下一批吗?"

   - "已提取 120 个文案,是否继续?"

```



**心理模型(AI 应该这样思考):**

```

用户确认后,我应该想:

✅ "用户已经确认,我现在必须执行完成所有步骤,不能停下来"

✅ "即使遇到困难,也要尽量继续,最后再报告问题"

✅ "我就像一个自动化脚本,一旦启动就必须运行到完成"



不应该想:

❌ "我应该每做一步就确认一下,确保用户满意"

❌ "我担心用户不想继续了,问问看"

❌ "我怕做错了,先确认一下再继续"

```



**关键提醒:**

- 用户最讨厌的就是频繁被打断确认

- 每问一次"继续吗",用户体验就下降一分

- 宁可多做,也不要多问

- 如果真的遇到重大问题(如错误),记录下来继续执行,最后统一报告

用了这么多限定词,还是给我跳出来.官方来个解释呗.

1 个赞

这是模型和记忆的原因,需要提示词,mcp,插件配合才能提高触发率,判断对话内容执行插入提示词

1 个赞

我的问题不是不触发,是已经明显触发了技能,但执行一会就跳出来了.

1 个赞

这两天我也是经常跳出来,要输入继续才行,

1 个赞

提示词,是否包含需求模糊指令

1 个赞

Damond 问到了点子上。

看用户9393 贴出来的提示词,确实存在这个根本矛盾——

「批处理执行模式」这类提示词的问题:
它是让模型"像机器人一样执行,不要停下来问",但同时又在不断要求模型"遇到不确定的情况就停止并报告"。这两个要求天然冲突——当模型遇到模糊指令或边界情况时,它会倾向于停下来问,而不是按"脚本模式"继续跑。

Skill 执行中途跳出的真正原因通常是:

  1. 遇到了超出 Skill 定义范围的输入
  2. 当前对话上下文已经超出了 Skill 的 scope
  3. Skill 里写的触发条件本身有歧义,导致模型判断"需要用户确认"而非"继续执行"

解决方案:
不要在 Skill 里写"禁止问问题"这类行为约束——这会让模型在真正需要判断时失去灵活性。更好的做法是:

  • 在 Skill 的触发条件里写得足够具体,减少模糊空间
  • 在 Skill 的执行步骤里写清楚"遇到 X 情况时,默认执行 Y"
  • 把"用户确认"当作正常节点,而不是异常中断

说白了:Skill 负责定义"做什么",不应该同时定义"怎么做"——怎么做是模型根据上下文自己判断的。

1 个赞

trae真的垃圾, 我的skill从来没有执行完整过, 动不动就跳出, 漏步骤

1 个赞

理解这个感受,Skill 跳出来确实很烦人,尤其在跑自动化流程的时候。

不过这个问题确实有解——核心原因是 Skill 的触发条件写得不够具体,AI 遇到模糊地带就倾向于停下来问人,而不是继续跑。

最快的排查方式:把你的 Skill 提示词贴出来,通常跳出来的节点都是触发条件里没有覆盖到的场景。把那部分补上,明确"遇到这种情况默认怎么做",跳出的问题基本能解决。

1 个赞