为什么asd-ste100-skill拒绝把may have failed简化成failed?简化技术英语情态保留原则深度解读
为什么asd-ste100-skill拒绝把may have failed简化成failed简化技术英语情态保留原则深度解读【免费下载链接】asd-ste100-skillASD-STE100 Simplified Technical English rules, repurposed as a Claude Code skill for rewriting ambiguous agent-facing English.项目地址: https://gitcode.com/gh_mirrors/as/asd-ste100-skillasd-ste100-skill 是一个把含糊、冗长的英文改写成 ASD-STE100 简化技术英语Simplified Technical English简称 STE的 Claude Code 技能。它有一个容易被忽略、却最能体现设计水准的原则情态保留——拒绝把 may have failed可能失败了简化成 failed失败了。为什么更短在这里反而是错的方向这篇文章带你深入理解这个简化技术英语改写技能背后的取舍逻辑。这个技能是做什么的先说背景。ASD-STE100 是航空航天与国防工业为维修手册制定的控制语言标准一个词只许有一个意思主动语态、简单时态、一句一条指令目的是让非英语母语的地面技师不会把维护指令读错。asd-ste100-skill 把同一套纪律搬给了另一类读者AI Agent。当一个 Agent 解析另一个 Agent 的输出错误信息、工具描述、Agent 间指令时没有人可以追问你到底是什么意思处境和看手册的技师几乎一模一样。技能的工作方式是逐句扫描原文标记出每一条被违反的规则然后改写——但前提是不丢失任何一个事实、条件和限定词。核心规则速览见 SKILL.md完整规则汇总和出处见 references/writing-rules.md。典型案例一条错误信息的改写看 README.md 中的对比完整案例在 examples/before-after.md改写前改写后An errormay have occurredwhile processing your request due to apossiblemismatch in the expected data format, whichcould be caused byan outdated client version.处理你的请求时可能发生了错误可能由数据格式不匹配导致而这可能是旧版本客户端引起的。Your requestmay have failed. The causemay bea data format that does not match what the server expects. An outdated clientcan causethis mismatch. Check your client version.你的请求可能失败了。原因可能是数据格式与服务器期望不符。旧版本客户端可能导致这种不匹配。请检查你的客户端版本。被标记的违规点其实是一句话塞进三个独立断言、28 个词超过 25 词的描述类上限。但请注意没被标记的部分may have occurred 和 could be caused by 都没有被改掉。作者这里是系统自己也不知道出了什么错这些模糊措辞hedge情态词是对无知的如实汇报。如果改写把它们删掉就凭空编造了确定性。为什么简化成 failed 是错的技能文档给了一条很直白的解释SKILL.mdHedges (may, could, sometimes) carry the authors confidence, andconfidence is content. A shorter sentence that upgrades a hedge to a fact is not a simplification —it is a different claim.情态词承载的是作者的置信度而置信度本身就是内容。把情态词升级为事实的短句不是简化——它是另一个论断。具体到 may have failed原文断言失败可能发生了。failed 断言失败确定发生了。两者读起来长短差不多含义却完全不同。这条规则文档里还特意强调这是善意的 STE 改写最常出错的地方——因为句子长度上限恰恰会诱惑你砍掉情态词这种占地方的成分。文档甚至坦承了这个原则的由来早期的示例文件里第一句真的被改写成了 The request failed读起来更干脆但错了——系统只是怀疑失败改写却断言了失败examples/before-after.md。规则冲突时为什么情态保留赢这里有个新手容易困惑的点。STE 的时态规则只允许简单时态一般现在/过去/将来禁止现在完成时和复合动词结构。而 may have failed 里的 have failed 正是一个复合形式——按时态规则它应该被拆掉。那到底听谁的技能文档给出了明确裁决examples/before-after.mdWhen the tense rule and the modality rule conflict, modality wins— dropping the auxiliary here would delete the uncertainty along with the tense.当时态规则与情态规则冲突时情态规则获胜——在这里删掉助动词会连不确定性一起删掉。SKILL.md 把这条例外总结得更完整飞机手册永远用不到现在完成时所以标准排除它毫无代价但其他文本不一定这么幸运。The job has completed任务已完成、输出现在可用和 the job completed任务在过去某个点完成是两个不同的陈述。当复合形式承载了简单形式无法表达的信息当前相关性或 may have failed 这类情态时保留它并声明这次偏离。情态保留原则在技能中的四处落地这个原则不是口号而是贯穿了技能的每个环节结构规则表单独一行 Keep modality——The request may have failed. 必须保留 may have禁止把情态词升级为事实SKILL.md。改写流程第 4 步先检查情态再动手改写且绝不添加原文没说过的事实——一个靠补充原因、频率或机制而读起来更好的改写已经不算改写了SKILL.md。能力边界Will not明确写进拒绝清单——不把 may have failed 变成 failed不把 could be caused by X 变成 X is the cause因为丢失情态词就是改变论断SKILL.md。输出格式改写完成后必须附一条说明解释我故意没简化什么、为什么——通常是简化会丢失必要的精确度SKILL.md。也就是说情态保留是可验证的每一处保留都会在输出中被点名而不是藏在某个改写的角落里。新手上手安装与触发安装只需一行命令git clone https://gitcode.com/gh_mirrors/as/asd-ste100-skill ~/.claude/skills/asd-ste100之后用一句话触发即可例如Disambiguate this tool description消歧这段工具描述Rewrite this error message so an agent cant misparse it改写这条错误信息让 Agent 无法误读Apply ASD-STE100 to this instruction对这条指令应用 ASD-STE100技能有两种模式Strict严格模式用于流程、错误信息、工具描述和STE-flavored风味模式用于 README、PR 描述等说明性文字。新手建议先从 Strict 模式看起规则边界最清晰。哪些文本适合哪些不适合 ✅⚠️适合不适合Agent 间消息、工具/函数描述创意写作、营销文案错误信息、系统提示词以语气、说服力和细微差别为核心诉求的文本任何机器或读者无法回头追问的英文最后提醒一个边界STE 修的是文本的形式不是内容。一段本来就没信息量的话改写后会变得又短又干净——但依然是空的。一句话总结情态保留原则提醒我们在面向 Agent 的技术英语改写中删掉一个 may 省下的不是字数而是作者不敢说满的那部分事实。简洁永远以不失真为前提。【免费下载链接】asd-ste100-skillASD-STE100 Simplified Technical English rules, repurposed as a Claude Code skill for rewriting ambiguous agent-facing English.项目地址: https://gitcode.com/gh_mirrors/as/asd-ste100-skill创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考