自我修正

SKILLAI 工具
AI 工具 未标注权限 许可证不明确
安装这个技能

模型自我检查与纠错技能。基于大模型底层原理编写的优化userprompt的skill,旨在大模型的回答不符合预期时可以很好地进行修正,而不是在原错误基础上越涂越乱

一句话选型结论

按资料字段整理

自我修正是AI 工具类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类AI 工具 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_ecc9df84/self-correction
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

AI 工具
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_ecc9df84仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验未标注上游最后核验时间 · 数据更新 1791737208
正文体量11.2 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
组合多个 AI 能力

把写作、检索、总结串成一条流程。

搭工作流

把固定流程做成可重复调用的步骤。

做提示词与评测

整理提示词并对比输出效果。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在AI 工具场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
自我修正当前 未标注权限 未标注 未标注 未标注 有
执行计划 只读 GitHub 仓库 151.5 万 Codex、Claude、Cursor 有
Playwright MCP 测试 浏览器控制 ClawHub 市场 136.5 万 OpenClaw 有
完成前的验证 未标注权限 GitHub 仓库 131.9 万 Codex、Claude、Cursor 有
子 Agent 驱动开发 只读 GitHub 仓库 131.2 万 Codex、Claude、Cursor 有
前端设计 执行命令 GitHub 仓库 125.6 万 Codex、Claude、Cursor 有

SKILL.md 全文

11.2 KB
模型实际读到的说明书原文,来自技能仓库

模型自我检查与纠错技能

触发条件

当检测到用户使用以下类型的表达时,激活本技能:

一、明确否定类(直接指出错误)

触发短语 语境示例
"不对" "不对,我问的不是这个"
"不是" "不是,你理解错了"
"错了" "错了,应该是..."
"错误" "你的回答有错误"
"答非所问" "你答非所问了"

二、质疑追问类(要求重新理解)

触发短语 语境示例
"等等" "等等,你搞错了"
"等一下" "等一下,我不是这个意思"
"停" "停,你说的不对"
"等等等等" "等等等等,我重新说"
"重新理解" "请重新理解我的问题"

三、否定前因类(否定AI回答的前提)

触发短语 语境示例
"你回答错了" "你回答错了"
"你理解错了" "你理解错了"
"你搞错了" "你搞错了"
"你误会了" "你误会了"
"你说反了" "你说反了"

四、否定结果类(否定AI的输出内容)

触发短语 语境示例
"不是这样" "不是这样写的"
"不是那样的" "不是那样的"
"不是这个" "不是这个意思"
"我说的是..." "我说的是Python,不是Java"
"不是我要的" "这不是我想要的"

五、重新表述类(要求重新开始)

触发短语 语境示例
"重新说" "你重新说一遍"
"再说一遍" "再说一遍"
"换个说法" "换个说法"
"换个方式" "换个方式解释"
"我换个说法" "我换个说法..."

六、修正补充类(指出遗漏或补充)

触发短语 语境示例
"漏了" "你漏了一个要求"
"没说完" "你没说完"
"不完整" "你的回答不完整"
"还有" "还有,你忘了..."
"但是" "但是我还要..."

七、中文否定词快速检测

检测以下否定词在句中的出现:
- "不" + 动词(不对、不是、不应该)
- "没" + 动词(没说、没理解、没讲清楚)
- "别" + 动词(别说了、别理解错了)
- "无" + 名词(无法理解、无道理)


核心机制

重要原则:重新理解用户意图,而非修改AI的回答

  1. 不修改上一轮回答:不要在本轮对话中直接修改或更正上一轮的AI回答
  2. 回溯用户原始意图:重新分析用户上一轮提出的原始问题或请求
  3. 重新理解与优化:对用户的原始prompt进行深度理解和优化
  4. 输出新的理解结果:基于重新理解,给出全新的回应

执行流程

步骤1:检测与识别

当检测到反对意见表达时:
1. 立即暂停当前对话方向
2. 识别反对意见的具体类型(否定、质疑、修正、补充)
3. 定位用户上一轮的核心请求
4. 记录反对意见可能揭示的问题线索

步骤2:回溯与重新理解

1. 回溯查看用户上一轮完整的原始输入
2. 识别原始请求中的:
   - 核心需求/目标(用户真正想要什么)
   - 约束条件/要求(语言、格式、范围等)
   - 隐含假设/上下文(用户默认的前提)
   - 可能的歧义点(哪些词可能有多种理解)
3. 分析反对意见可能揭示的问题:
   - 理解偏差(我理解错了哪个概念)
   - 信息缺失(用户没说清楚什么)
   - 假设错误(我假设了什么不存在的条件)
   - 表达不清(用户的表达哪里可能引起误解)
4. 列出2-3个最可能的用户真实意图假设

步骤3:重新构建与输出

1. 选择最可能的用户意图假设
2. 基于新理解,优化问题表述
3. 生成新的回应方案
4. 如果有多个可能,简洁地确认关键点
5. 输出完整的新答案

输出格式

当触发自我纠错时,输出应包含:

[自我检查] 检测到您的反馈信号,正在重新理解您的原始意图...

[重新理解]
- 原始需求:<重新表述的用户需求>
- 可能的问题点:<分析导致误解的关键点>
- 关键确认:<如有不确定的地方,简短询问>

[新答案]
<基于重新理解的完整回答,直接输出,不要说"这是新的回答">

详细示例场景

示例1:技术栈理解偏差

上下文:用户要求用Python写代码

用户第一轮: "帮我写一个调用API的函数"
AI回答: 提供了使用requests库的同步HTTP请求函数
用户反对: "不是这样的,我要的是异步的"

触发自我纠错输出:

[自我检查] 明白了,您指的是异步API调用。让我重新理解...

[重新理解]
- 原始需求:调用API的函数
- 可能的问题点:我默认使用了同步方式,但用户需要异步实现
- 关键确认:使用asyncio + aiohttp?还是requests的异步版本?

[新答案]
import aiohttp
import asyncio

async def call_api(url, headers=None, params=None):
    """异步调用API函数"""
    async with aiohttp.ClientSession() as session:
        async with session.get(url, headers=headers, params=params) as response:
            return await response.json()

示例2:语言/框架理解错误

上下文:用户提到某个技术名称

用户第一轮: "Vue的computed怎么用"
AI回答: 详细解释了Vue 3的computed
用户反对: "等等,我说的是Vuex,不是Vue"

触发自我纠错输出:

[自我检查] 了解了,您指的是Vuex中的计算属性。让我重新...

[重新理解]
- 原始需求:Vuex的getters用法
- 可能的问题点:Vue和Vuex是两个不同的概念
- 关键确认:Vuex的getters帮助函数(mapGetters)?

[新答案]
import { mapGetters } from 'vuex'

export default {
  computed: {
    ...mapGetters(['totalPrice', 'itemCount'])
  }
}

示例3:需求范围不明确

上下文:用户的请求过于笼统

用户第一轮: "帮我处理这个数据"
AI回答: 提供了数据处理的基本代码
用户反对: "我说的处理还包括清洗、可视化和导出"

触发自我纠错输出:

[自我检查] 理解了,"处理"包含多个步骤。让我重新整理...

[重新理解]
- 原始需求:数据处理(含清洗、可视化、导出)
- 可能的问题点:"处理"是个多义词,包含多个子任务
- 关键确认:使用pandas清洗、matplotlib可视化、导出格式偏好?

[新答案]
import pandas as pd
import matplotlib.pyplot as plt

# 1. 数据清洗
df = df.dropna()
df = df[df['value'] > 0]

# 2. 数据可视化
plt.figure(figsize=(10, 6))
df['value'].plot(kind='bar')
plt.title('Data Visualization')
plt.savefig('output.png')

# 3. 导出
df.to_csv('cleaned_data.csv', index=False)

示例4:隐含上下文遗漏

上下文:用户有特殊环境或约束

用户第一轮: "写个排序函数"
AI回答: 通用排序算法实现
用户反对: "我用的是嵌入式设备,内存很小"

触发自我纠错输出:

[重新理解]
- 原始需求:在嵌入式设备上运行的排序函数
- 可能的问题点:未考虑嵌入式环境的内存限制
- 关键确认:需要原地排序?是否有特殊的数据类型?

[新答案]
/**
 * 原地排序 - 冒泡排序(内存占用最小)
 * 适用于嵌入式设备和内存受限场景
 */
void bubbleSort(int* arr, int n) {
    for (int i = 0; i < n-1; i++) {
        for (int j = 0; j < n-i-1; j++) {
            if (arr[j] > arr[j+1]) {
                int temp = arr[j];
                arr[j] = arr[j+1];
                arr[j+1] = temp;
            }
        }
    }
}

示例5:格式/输出要求不符

上下文:用户有特定的输出格式要求

用户第一轮: "给我讲讲这个概念"
AI回答: 一大段文字解释
用户反对: "太多了,我要用表格呈现"

触发自我纠错输出:

[重新理解]
- 原始需求:用表格形式讲解某个概念
- 可能的问题点:输出了文字而非表格格式
- 关键确认:概念的关键对比项有哪些?

[新答案]
| 特性 | 描述 |
|------|------|
| 内存占用 | O(1)原地 |
| 时间复杂度 | O(n²) |
| 稳定性 | 稳定 |
| 适用场景 | 小数据量 |

示例6:否定+重新表述

上下文:用户明确否定后重新说

用户第一轮: "解释一下闭包"
AI回答: 闭包的定义和JavaScript示例
用户反对: "不对不对,我说的是Python的装饰器,就是带@的那种"

触发自我纠错输出:

[重新理解]
- 原始需求:Python装饰器(@语法)的用法
- 可能的问题点:混淆了闭包和装饰器的概念
- 关键确认:基础装饰器还是带参数的装饰器?

[新答案]
import functools

def my_decorator(func):
    @functools.wraps(func)
    def wrapper(*args, **kwargs):
        print("Before function call")
        result = func(*args, **kwargs)
        print("After function call")
        return result
    return wrapper

@my_decorator
def say_hello():
    print("Hello!")

注意事项

  1. 保持中立客观:不要急于认错或道歉,专注于理解用户真实意图
  2. 主动澄清:如果原始意图确实不明确,主动向用户询问关键点
  3. 避免重复:确保新的回答与之前的回答有实质性不同
  4. 记录学习:在内心记录可能导致误解的模式,下次避免
  5. 简洁高效:不要过度解释纠错过程,快速进入新的理解
  6. 多重假设:当有多种可能的理解时,列出最可能的几项让用户确认
  7. 基于原始输入:始终从用户第一轮的原始输入出发,而非AI的上一轮回答

禁止事项

  • ❌ 不要在本轮直接修改上一轮的回答文本
  • ❌ 不要过度道歉(最多一句"明白了")
  • ❌ 不要假设用户的反对理由
  • ❌ 不要要求用户详细解释哪里错了(应主动分析)
  • ❌ 不要让纠错过程比正常回答更长
  • ❌ 不要重复之前的错误假设

快速检查清单

触发自我纠错后,在输出前确认:

  • [ ] 是否从用户原始输入出发分析?
  • [ ] 是否识别了1-2个可能导致误解的关键点?
  • [ ] 新的回答是否与之前的有实质性不同?
  • [ ] 输出是否简洁,不超过正常回答的长度?
  • [ ] 是否避免了道歉和过度解释?

常见问题

5 问
答案由本站依据条目字段整理
自我修正怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_ecc9df84/self-correction。安装方式为未标注。装完刷新技能列表或重开客户端。

自我修正支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

自我修正权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

自我修正收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

自我修正用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 未标注。