skills/contradiction-fixer-yashu/SKILL.md
本技能检测 SKILL.md 中通过打补丁消解的矛盾,展示后经用户确认从根源修复,修复前自动备份。激活条件:用户消息须包含以下关键词之一:`检测SKILL矛盾`、`找文档矛盾`、`诊断补丁矛盾`、`修复文档矛盾`。
npx skillsauth add steelan9199/wechat-publisher contradiction-fixer-yashuInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
"如果一段论述需要打补丁才能自圆其说,说明根源的论述本身有问题。"
在编写 SKILL.md 时,作者有时会先写出自相矛盾的论述,再用一句补充说明(补丁)去消解矛盾。这种做法使文档冗长、逻辑松散,且补丁本身往往也经不起推敲。本技能自动检测这类"打补丁式矛盾",展示给用户,确认后从根源消除矛盾。
打补丁式矛盾是指:文档中存在自相矛盾的论述,作者没有修正原始论述,而是追加一句补充说明来"圆回来"。补丁消解了表面冲突,但原始论述的问题依然存在。
典型结构:原始论述 A -> (与 A 矛盾的论述 B) -> 补丁句 C:解释为什么 A 和 B "不冲突"
检测以下 5 类补丁模式:
一个笼统的论断被做出,随后补丁限定了它的适用范围。
补丁标记词:注意:此论断针对的是…而非…、需要注意的是、此处的X指的是…而非…
虚构场景:某技能文档讨论缓存策略,写道:
一个术语按其常规含义使用后,补丁重新定义了它的含义。
补丁标记词:此处"X"指的是…而非…、"X"在这里的含义是…
虚构场景:某技能文档讨论任务调度,写道:
一个理论框架被当作实际机制呈现后,补丁将其降格为"心智模型"。
补丁标记词:以下是一个…心智模型,而非…实际机制、此模型的价值在于…
虚构场景:某技能文档讨论搜索排序,写道:
两处论述看似矛盾,补丁明确声明它们"不冲突"。
补丁标记词:X与Y并不冲突、两者是同一Z的正反两面、这并不矛盾
虚构场景:某技能文档讨论日志策略,先写"日志级别越高越好,能捕获更多信息",后写"日志级别应尽量低,减少性能开销"。随后补丁:
一个段落在论证某结论时,自身承认了与结论相反的事实。
补丁标记词:虽然…但…(让步后不修正结论)、需要注意的是,现代…因此…
虚构场景:某技能文档讨论错误处理方式,写道:
修复不是"用新补丁覆盖旧补丁",而是从根源消除矛盾,使补丁句不再被需要。
| 补丁类型 | 根源修复方式 | | -------------- | ------------------------------------------------------------------ | | 限制性补丁 | 修正原始论断,使其从一开始就准确,无需限定范围 | | 术语重定义补丁 | 更换术语,使用字面含义与上下文一致的词 | | 机制降格补丁 | 删除独立框架,将洞察直接整合进正确的机制论述中 | | 否认冲突补丁 | 将矛盾双方合并到同一位置,当场解释它们为何不矛盾,无需后续补丁否认 | | 自相矛盾补丁 | 清理论证链,删除自相矛盾的让步句,保持论证一致性 |
读取用户指定的 SKILL.md 文件全文。
对照上述 5 类检测模式,逐段扫描全文。对每个疑似补丁:
将检测到的所有矛盾以表格形式展示给用户:
| # | 矛盾双方 | 补丁位置 | 补丁类型 | 补丁手法 | | --- | -------- | -------- | ---------- | ---------- | | 1 | A vs B | 第X行 | 限制性补丁 | 拆分子类型 | | ... | ... | ... | ... | ... |
询问用户是否需要修复。若用户拒绝,结束。若用户确认,进入步骤 5。
在目标文件同级目录下生成 SKILL.backup.md,复制原始文件内容。若已存在同名备份文件,覆盖之。
使用 SearchReplace 工具,对每处矛盾执行根源修复:
输出修复摘要,列出每处矛盾的修复方式。
content-media
自动启停视频课程录制所需的辅助程序。激活条件:用户消息须包含以下关键词之一:`我要录制视频课程`、`开始录制视频课程`、`准备录课`、`视频课程录完了`、`录课结束`、`停止录制`。
content-media
生成扁平的 SVG 图(架构图、中心辐射图、流程图、简易时序图、思维导图、组织架构图、2×2对比矩阵、时间线、循环图、鱼骨图),也支持把已有 SVG 文件转成 PNG 图片。激活条件(满足任一即可):生成类关键词 `画架构图`、`画中心辐射图`、`画流程图`、`画时序图`、`画思维导图`、`画脑图`、`画组织架构图`、`画树形图`、`画对比矩阵`、`画四象限`、`画时间线`、`画循环图`、`画鱼骨图`、`画因果分析图`;转换类关键词`SVG 转图片`、`把 SVG 转成图片`、`把 SVG 转成 PNG`。
testing
检查指定技能文档中的废话文字并输出诊断报告。激活条件:用户消息须包含以下关键词之一:`检查技能废话`、`这个技能文档有没有多余内容`、`清理技能文档废话`、`审查技能文档废话`、`清理技能文档历史说明`。
testing
评审一个技能是否「自包含」——即其知识、经验、规范是否全部内置在技能文件内(SKILL.md + references/),不依赖特定 AI 客户端专有的知识接口命令(如 read_me / modules: / show_widget / Visualizer)去外部拉取,也不硬编码某个 AI 软件的私有路径(如 .workbuddy)。同时检查工具依赖(node、浏览器、命令行)是否仅作为用户自备工具声明、未写死私有路径。当用户要求「评审这个技能是否自包含 / 独立」「检查技能知识是否内置」「审查技能的独立性 / 可移植性」「audit / review a skill for self-containment」时触发。产出评审报告:结论(自包含 / 不独立)+ 问题清单(文件:行号 + 引用的外部依赖 + 为何影响独立性)+ 整改建议。