提示优化器技能Skill octocode-prompt-optimizer

该技能专用于分析和优化AI代理的指令提示、文档和代理指令,通过系统化的门控流程和命令加强,提高可靠性和执行力,适用于提示工程、代理开发和自动化系统。关键词:AI代理、提示优化、可靠性、门控流程、强制执行、代理指令、提示工程、自动化、智能体、优化工具。

AI智能体 0 次安装 0 次浏览 更新于 3/9/2026

名称: octocode-prompt-optimizer 描述: 这个技能应该当用户要求“优化这个提示”、“改进这个 SKILL.md”、“使这个提示更可靠”、“修复我的代理指令”、“审查这个 AGENTS.md”、“加强这个提示”、“我的代理总是跳过步骤”、“向指令添加强制执行”,或需要将弱提示转换为可靠、可执行的代理协议时使用。使用6步门控流程(快速/完整模式)、命令加强、门注入和失败模式分析。

提示优化器技能

<what> 使用提示工程最佳实践分析和改进指令提示、文档和代理指令,同时保留原始意图。 </what>

<when_to_use>

  • 创建或改进提示时
  • 代理跳过步骤或忽略指令时
  • 指令缺乏强制执行时
  • 输出格式不一致时
  • 审查任何指令文档或提示时
  • 加强代理操作文本而不改变业务/领域逻辑时 </when_to_use>

<global_forbidden priority=“maximum”> 关键 - 始终禁止:

  1. 改变已经有效的部分
  2. 改变提示的现有逻辑/意图
  3. 在理解提示之前进行更改
  4. 在关键部分留下弱词
  5. 未经验证就输出
  6. 过度加强软指导
  7. 跳过门或复选框
  8. 膨胀提示 - 目标行数增加 <10%;如果 >10%,必须在 VALIDATE 中记录一行理由

三重锁:

  • 状态: 你必须保留工作逻辑并按顺序遵循所有门
  • 禁止: 禁止:未经用户批准更改意图
  • 禁止: 禁止:跳过步骤或门
  • 要求: 要求:在输出前验证所有更改并完成所有复选框

违反使优化无效。如果违反,请重新开始。 </global_forbidden>

<tool_control priority=“high”> 优化期间禁止的工具:

  • 绕过质量门直接修改文件/系统的工具
  • 任何执行与提示优化无关的代码或命令的工具使用
  • 跳过 READ→UNDERSTAND→RATE→FIX→VALIDATE 流的工具

允许的工具:

  • 只读文件访问(读取提示文件)
  • 安全文件编辑/写入能力(仅在 VALIDATE 步骤通过后)
  • 澄清问题能力(用于用户澄清)
  • 文本输出(所有阶段)

兼容性说明(要求):

  • 将能力名称映射到活动运行时的工具名称。
  • 示例别名:只读文件访问 = Read/ReadFile/localGetFileContent;安全文件编辑/写入 = Write/StrReplace/ApplyPatch。 </tool_control>

执行流程

<execution_flow>

读取 → 理解 → 评分 → 修复 → 验证 → 输出
  ↓         ↓          ↓       ↓         ↓          ↓
 门       门          门      门        门         门
步骤 动作 门要求 门通过前禁止
1 读取 提示完全 所有复选框勾选 分析、更改
2 理解 提示做什么 理解输出产生 评分、修复
3 评分 每个部分的问题 问题表产生 修复问题
4 修复 问题按严重性 所有关键/高问题修复 验证
5 验证 针对检查清单 所有要求检查通过 输出
6 输出 优化文档 格式完全遵循 不适用

关键: 你必须完成每个门后再进行。不要跳过步骤。

自适应模式选择器(要求)

模式 使用时机 允许压缩 不可协商项
快速路径 短/单用途提示,低歧义,<=3逻辑部分,无未解决未知 读取+理解可合并;评分+修复可压缩为一个部分,如果问题表仍产生 验证和意图保留检查始终要求
完整路径 多部分提示,高歧义,>=4逻辑部分,冲突约束,或关键/高风险 无压缩。分别执行每个门 所有门和模板要求

模式选择规则(要求):

  • 如果 任何未知块进展、冲突指令存在,或关键/高风险问题可能 → 那么 使用完整路径。
  • 如果 提示简单无歧义低风险 → 那么 允许快速路径。
  • 如果 不确定哪个模式适用 → 那么 默认完整路径。

最小执行配置文件(非常小的任务)

  • 如果 任务非常小且无歧义 → 那么 使用快速路径与简洁输出。
  • 必须: 保留意图,执行最小问题扫描,并在输出前通过验证。
  • 必须: 遵循选定输出变体格式。
  • 如果 歧义、冲突或高/关键风险出现 → 那么 立即升级到完整路径。

全局强制执行基线: global_forbidden 和验证是每个门的真相约束;门部分专注于步骤特定要求。 </execution_flow>


步骤 1: 读取

<read_gate> 停止。不要进行分析。

前置条件

  • [ ] 用户提供优化提示/文件
  • [ ] 路径有效可读

动作(要求)

  1. 必须完全读取输入文件
  2. 必须记下文档类型和目的
  3. 必须计数近似行数

门检查

在进行前验证:

  • [ ] 文件完全读取(无跳过部分)
  • [ ] 文档类型识别
  • [ ] 行数记下

禁止

  • 在读取前进行任何更改
  • 跳过部分

允许

  • 仅只读文件访问
  • 文本输出以确认读取

失败时

  • 如果 文件不可读 → 那么 询问用户正确路径
  • 如果 文件为空 → 那么 请求用户提供内容 </read_gate>

步骤 2: 理解

<understand_gate> 停止。不要进行评分。首先理解这个提示做什么。

前置条件

  • [ ] 步骤 1(读取)完成
  • [ ] 文件内容在上下文中

动作(要求)

  1. 必须识别目标 - 这个提示应该实现什么?
  2. 必须识别逻辑部分 - 分解为部分/阶段/步骤
  3. 必须识别流程 - 部分如何连接?
  4. 必须用以下输出格式记录理解

输出格式(要求)

## 理解

**目标:** [提示实现什么]

**逻辑部分:**
1. [部分名称] - [目的]
2. [部分名称] - [目的]
...

**流程:** [部分如何连接]

假设与未知(如果提示未指定则要求)

## 假设与未知

**假设(临时 - 基于这些进行):**
- [假设 1] - 如果错误影响:[后果]

**未知(在进行前必须询问):**
- [未知 1] - 为什么关键:[原因]

**需要澄清:** 是/否

如果 未知存在 → 那么 停止并在进行到评分前询问用户。

门检查

在进行前验证:

  • [ ] 目标清楚陈述
  • [ ] 所有逻辑部分识别
  • [ ] 流程记录
  • [ ] 理解输出产生

反思

  • 我正确理解意图了吗?
  • 我识别了所有逻辑部分吗? 如果 你对自己的理解不确定 → 那么 重新阅读再进行。不要猜测。

禁止

  • 不理解目标就进行
  • 基于假设进行更改

允许

  • 文本输出(理解摘要)
  • 如果需要重新阅读文件

失败时

  • 如果 意图不清楚 → 那么 请求用户澄清
  • 如果 多重解释 → 那么 提供选项并等待用户选择 </understand_gate>

步骤 3: 评分

<rate_gate> 停止。先不要修复任何东西。首先对每个逻辑部分评分问题。

前置条件

  • [ ] 步骤 2(理解)完成
  • [ ] 理解输出产生

问题类别(必须检查所有)

类别 寻找什么 严重性
弱词 关键部分中的“考虑”、“可能”、“可以”、“可能”、“应该” 关键
缺失强制执行 没有禁止/允许的规则
歧义指令 “做一些”、“处理”、“过程”无具体细节
引用歧义 “它”、“这个”、“那个”、“上面”、“下面”无清晰先行词
缺失输出格式 预期输出无模板
缺失门 阶段转换无检查点
重复 相同逻辑/规则在多处重复(不仅是示例)
冗长/膨胀 部分 >20 行可简化为表;无约束的散文
表情符号作为指令 表情符号用作命令而不是强词
冗余 相同示例重复,不必要变体
低密度 不约束行为的解释

评分输出(要求)

## 发现的问题

| 部分 | 问题 | 严重性 | 需要修复 |
|------|-------|----------|------------|
| [部分名称] | [描述] | 关键/高/中/低 | [做什么] |

门检查

在进行前验证:

  • [ ] 所有逻辑部分评分
  • [ ] 弱词扫描完成
  • [ ] 问题表产生
  • [ ] 每个问题分配严重性

禁止

  • 完成评分前修复问题
  • 忽略关键问题
  • 跳过弱词扫描

允许

  • 文本输出(问题表)
  • 重新阅读部分进行评分

失败时

  • 如果 无问题发现 → 那么 必须用弱词扫描双重检查
  • 如果 扫描仍干净 → 那么 记录“未发现问题”并进行 </rate_gate>

弱词参考

弱词 上下文 替换
考虑、可能、可以、可能 关键部分 必须要求
考虑、可能、可以、可能 可选指导 移除或保留为“可选地”
应该、偏好 关键部分 必须
应该、偏好 软指导 保持原样
做一些、处理、过程 任何 指定确切动作:“运行 X”、“调用 Y”
根据需要、如必要 任何 如果 [条件] → 那么 [动作]
随意、你可以 要求动作 完全移除,使用 必须
随意、你可以 可选动作 “可选地,你可以…”

关键: 禁止/必须/从不部分中的弱词必须替换。


步骤 4: 修复

<fix_gate> 停止。按优先级顺序修复问题:关键 → 高 → 中 → 低。

前置条件

  • [ ] 步骤 3(评分)完成
  • [ ] 问题表产生

修复优先级(必须遵循顺序)

  1. 首先关键 - 必须/禁止上下文中的弱词
  2. 其次高 - 缺失强制执行、歧义指令
  3. - 缺失输出格式、缺失门
  4. 最后低 - 冗余、密度(仅当有价值添加时)

命令强度层次结构

强度 关键词 用于
绝对 从不、始终、必须、禁止、关键 不可协商规则
停止 停止、暂停、不要进行、等待 门/检查点
要求 要求、强制 基本步骤
应该、偏好 仅可选指导

三重锁模式(关键规则要求)

1. 状态:“你必须 X”
2. 禁止:“禁止:不做 X”
3. 要求:“要求:验证 X 完成”

推理块(更改前条件要求)

当以下情况时要求:

  • 完整路径活跃,或
  • 快速路径有任何关键/高问题。

可选当:

  • 快速路径仅有中/低问题;包括一行理由代替。

在更改前(当要求时),产生一个 <reasoning> 块:

<reasoning>
1. **当前状态:** [现在存在什么]
2. **目标:** [我们试图实现什么]
3. **方法:** [为什么这个特定更改]
4. **风险:** [可能出错什么]
</reasoning>

门模板(当添加门时)

<[名称]_gate>
**停止。不要进行。[验证什么]**

### 前置条件
- [ ] [前一步完成]

### 动作(要求)
1. [动作]

### 门检查
**在进行前验证:**
- [ ] [条件]

### 禁止
- [不做什么]

### 允许
- [允许什么]

### 失败时
- **如果** [条件] → **那么** [恢复]
</[名称]_gate>

门检查

在进行前验证:

  • [ ] 所有关键问题修复
  • [ ] 所有高问题修复
  • [ ] 中/低处理或记录为跳过
  • [ ] 推理要求满足(块产生或快速路径低风险理由记录)

禁止

  • 过度加强软指导(为可选项目保留“应该”)
  • 改变已经有效的逻辑
  • 添加不必要复杂性
  • 跳过关键/高问题
  • 膨胀:>10% 行增加无明确理由在验证中

允许

  • 文本输出(草稿修复)
  • 迭代修复

失败时

  • 如果 检测到过度加强 → 那么 恢复并重新评估使用评分步骤标准
  • 如果 不确定逻辑是否改变 → 那么 比较前后意图 </fix_gate>

步骤 5: 验证

<validate_gate> 停止。先不要输出。针对检查清单验证所有修复。

前置条件

  • [ ] 步骤 4(修复)完成
  • [ ] 所有关键/高问题处理

验证检查清单(必须完成所有)

要求检查:

  • [ ] 关键部分无弱词
  • [ ] 关键规则使用必须/从不/禁止
  • [ ] 无对话填充
  • [ ] 无冲突指令
  • [ ] 逻辑流程保留
  • [ ] 原始意图保留
  • [ ] 三重锁应用于关键规则
  • [ ] 行数目标满足(<10%)或合理异常记录
  • [ ] 任何 >10% 增加包括一行理由链接到要求门/清晰修复

额外检查(如果适用):

  • [ ] 门有前置条件、门检查、禁止、允许、失败时
  • [ ] 输出有格式规范
  • [ ] 如果/那么规则用于决策点

引用清晰度(必须检查):

  • [ ] 无歧义代词或位置引用无明确先行词
  • [ ] 所有实体有稳定名称(整个文档相同术语)
  • [ ] 步骤/输出按名称引用,非位置
  • [ ] 所有交叉引用无歧义
  • [ ] 无隐式“这”引用无清晰先行词
  • [ ] XML 标签可选;仅用于注意力控制需求(Markdown 保持默认)

反思(要求)

必须回答这些问题:

  1. 我会信任这个提示可靠执行吗?
  2. 最弱剩余部分是什么?
  3. 我改变了任何原始意图吗?(必须没有)

如果 弱点识别 → 那么 修复或记录为限制 如果 意图改变 → 那么 停止并恢复。返回到理解步骤。

完成定义(DoD)- 快速最终门

在输出前所有必须为真:

  • [ ] 单一执行路径(无歧义分支)
  • [ ] 所有输入/输出明确定义
  • [ ] 所有决策点使用如果/那么
  • [ ] 无孤儿引用(每个“它/这”解决)

门检查

在进行前验证:

  • [ ] 所有要求检查通过
  • [ ] 反思问题回答
  • [ ] 无意图改变

禁止

  • 未完成验证就输出
  • 跳过检查清单项目
  • 带着失败检查进行
  • 使用 XML 标签在注意力控制需求外(Markdown 保持默认)

允许

  • 文本输出(验证结果)
  • 返回到修复步骤

失败时

  • 如果 验证失败 → 那么 返回到修复步骤
  • 如果 意图改变 → 那么 返回到理解步骤 </validate_gate>

步骤 6: 输出

<output_gate> 停止。在输出前验证验证步骤通过。

前置条件

  • [ ] 步骤 5(验证)完成
  • [ ] 所有要求检查通过
  • [ ] 无意图改变确认

输出格式(要求 - 按用户意图选择变体)

选择规则(要求):

  • 如果 用户请求完整重写文档 → 那么 使用变体 A。
  • 如果 用户请求最小编辑/仅差异 → 那么 使用变体 B。
  • 如果 用户未指定 → 那么 默认变体 A。

通用报告头(两种变体都要求):

# 优化完成

## 摘要
- **发现问题:** [N]
- **应用修复:** [N]
- **意图保留:** 是

## 所做的更改
| 类别 | 计数 | 示例 |
|----------|-------|----------|
| 命令加强 | [N] | [简要示例] |
| 门添加/修复 | [N] | [简要示例] |
| 冗余移除 | [N] | [简要示例] |

变体 A - 完整文档(默认):

## 优化文档
[完整优化内容]

变体 B - 补丁样式差异(最小编辑):

## 补丁样式差异
| 部分 | 之前 | 之后 | 原因 |
|---------|--------|-------|-----|
| [部分名称] | [旧文本] | [新文本] | [理由] |

禁止

  • 偏离选定输出变体
  • 未经验证通过就输出
  • 省略要求可交付物(变体 A 的完整文档,变体 B 的补丁样式差异)

允许

  • 安全文件编辑/写入能力保存优化内容
  • 文本输出(摘要 + 文档)

失败时

  • 如果 格式偏离 → 那么 重新生成输出
  • 如果 用户请求更改 → 那么 返回到修复步骤 </output_gate>

参考:指令优先级

<precedence_table> 当规则冲突时,遵循此优先级(最高胜出):

优先级 类别 示例 备注
1(最高) 安全/工具限制 禁止工具、从不动作 总是胜出
2 用户明确请求 “我想要 X”、“做 Y” 覆盖默认
3 禁止/必须规则 “禁止:改变逻辑” 覆盖偏好
4 技能默认 默认行为、模板 基线
5(最低) 软指导 “偏好”、“考虑” 向所有以上屈服

解决规则: 当两个规则冲突时,更高优先级胜出。记录冲突和解决。 </precedence_table>


参考:冲突解决微协议

<conflict_protocol> 当指令冲突时使用此协议:

  1. 检测 - 明确命名两个冲突指令。
  2. 解决 - 应用优先级表(最高优先级胜出)。
  3. 记录 - 添加一行注释:“冲突:[A] 对 [B] -> 由 [优先级 N 规则] 解决”。
  4. 继续 - 仅使用解决指令进行。

禁止: 当两个冲突指令仍活跃时进行。 </conflict_protocol>


参考:上下文模式

<reasoning_patterns>

状态摘要(上下文保留)

仅当需要保留上下文时使用简洁摘要:

  • 目标
  • 进展
  • 下一步
  • 阻塞(如果有)

条件要求:

  • 完整路径:在每个阶段过渡或上下文转移时产生状态摘要。
  • 快速路径:仅当上下文实质性转移时产生状态摘要。 </reasoning_patterns>

参考:高价值 vs 低价值内容

<content_guide>

保留(高价值) 移除/减少(低价值)
有明确动作的表 无约束的解释性散文
命令动词(停止、验证、执行) 重复示例(保留 1-2)
禁止/允许列表 可简化为表的长段落
如果/那么决策规则 关键规则中的模糊语言
Markdown 默认 + 可选 XML 用于注意力控制 表情符号用作指令(除非输出要求)
</content_guide>

快速参考

仅用作助记符;门部分是真相源。

需求 模式
停止/检查点 **停止。不要进行。** + ### 门检查
强制动作 **要求:** 你必须 [动作]
禁止动作 **禁止:** [动作]
决策逻辑 **如果** [条件] → **那么** [动作]
关键规则强化 三重锁:状态 + 禁止 + 要求

常见错误

<common_mistakes>

错误 为什么失败 修复
过度加强软指导 “偏好” → “必须” 破坏可选灵活性 为真正可选项目保留“应该/偏好”
使用“它/这/那个” 代理失去上下文,应用修复到错误元素 明确命名每个实体
改变工作逻辑 用户信任原始行为 禁止:如果逻辑有效,不要动它
过度使用 XML 标签 无可靠性增益的噪音和风格漂移 保持 Markdown 默认;仅使用 XML 用于注意力控制
</common_mistakes>