mcpField
A
asd-ste100

asd-ste100

github.com/danyuchnAgent 工作流5.8k7.8k 次安装3 天前更新
代码仓库

关于 asd-ste100

为 Agent 和下游系统改写含糊或冗长的英文文本,借鉴 ASD-STE100 规则提升可解析性。它提供严格与宽松两种模式,但不包含官方核准词典。

主要功能

  1. 01严格与 STE 风格改写模式
  2. 02按结构规则简化句子
  3. 03检查六类常见表达问题
  4. 04提供改写前后对照
  5. 05保留原文事实与限定条件

适用场景

  1. 01简化 Agent 的错误信息或工具描述
  2. 02编写清晰的提示词与系统消息
  3. 03整理供其他 Agent 或翻译流程处理的文本
  4. 04检查改写是否影响安全条件或精度

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/danyuchn/asd-ste100-skill --skill asd-ste100

安装后在 Claude Code 中输入/asd-ste100确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

README.md
LICENSE
.claude-plugin/
marketplace.json
plugin.json
examples/
linter-edge-cases.md
before-after.md
references/
writing-rules.md
scripts/
ste-lint.py

详细介绍

简化技术英语(ASD-STE100)

ASD-STE100 是一项受控语言标准,由航空航天与国防行业(ASD,即欧洲航空航天与国防工业协会)制定,旨在避免维护技术人员误读英语说明。该标准消除了导致误读的两个主要因素:具有多个含义的词,以及存在多种可能结构的句子。

这项技能借鉴了同样严谨的方法,但面向不同的读者:AI Agent 或下游系统。它们必须解析一段英语文本——例如错误消息、工具描述、Agent 间指令或状态报告——且没有人在环路中消除歧义。如果维护技术人员可能把“close the valve”误读为形容词(“靠近的阀门”),而不是命令,那么语言模型也可能如此。

何时使用这项技能

  • Agent 的输出(解释、指令、日志消息、工具描述)读起来过于晦涩、充斥行话或存在歧义。
  • 文本将由另一个 Agent、翻译流程或英语非母语读者使用,误读会造成实际损失。
  • 你正在编写提示词、系统消息或工具描述,并希望在模型看到内容之前消除歧义。
  • 你希望进行改写前后的对比,准确说明违反了哪些规则,以及改写如何解决问题。请提出此要求——默认情况下只输出改写后的文本(参见“输出格式”)。

这项技能不适用于创意或营销文案——STE 刻意采用平实、直白的表达。不要将其用于以语气、细微差别或说服力为重点的文本。

两种模式

改写前先选择一种模式。如果用户没有说明模式,则根据文本类型推断。除非用户要求提供规则表,否则不要说明选择了哪种模式(参见“输出格式”)。

严格模式——适用于操作步骤、错误消息、工具和函数描述、Agent 间指令、安全文本。任何误读都会造成损失的文本都适用此模式。应用以下所有规则,包括严格的长度上限和“一词一义”原则。

STE 风格模式——适用于 README、PR 描述、变更日志和说明性文字。完整应用结构规则,并将词汇规则视为建议(有关这两类规则的划分,请参见“核心改写规则”)。实际上,这意味着保留句子长度上限、主动语态、简单时态、避免短语动词、分号、名词化和营销形容词,同时不再严格限制一词一义:说明性文字需要一定的表达变化,严格改写会让它听起来像是被彻底改变了风格,而不是变得更清晰。

这两种模式与结构规则和词汇规则的划分,是从不同角度描述同一区别。规则划分说明了这项技能无需 ASD 词典也能验证哪些规则;模式则说明针对特定类型的文本,应强制执行哪些规则。

来源和范围

此技能涵盖 ASD-STE100 第 9 版(2025 年 1 月)的规则类别:共 53 条写作规则,分为 9 个部分,涉及选词、语法、句子结构和文体;另有一部词典,收录约 900 个批准词(每个词仅对应一种含义和一种词性),以及约 1,200 个建议避免使用并附有替换词的词语。完整的规则摘要和引文请参阅 references/writing-rules.md。

此技能不会逐字转载 ASD 约 900 词的批准词典。ASD-STE100 可免费获取,但不可免费再分发:第 9 版第 2 页声明,“未经 ASD 官员书面授权,不得全部或部分复制或出版该标准”,并且仅授予以下 8 类对象免费复制权(ASD/AIA/AIAC 成员协会及其成员公司和客户、成员国国防部、A4A、适航主管部门,以及以教育为目的的大学和研究机构)。本项目不属于其中任何一类,因此词典不会收录在此代码仓库中。

此技能改为应用其基本原则(尽可能选择最简单、最常见的词,并始终以同一种方式使用),而不是对照固定词表进行检查。需要使用 ASD 确切认可的措辞时(例如实际的飞机维护文档),请获取该标准,并逐词对照原版词典进行核查。请通过官方下载页面申请获取——请注意,这是一个会通过电子邮件向你发送链接的申请表,而非直接下载链接。

核心改写规则

STE 的规则分为两类,此技能只能完整落实其中一类。结构规则本身完整:它们描述句子的形式,只根据规则说明即可应用。词汇规则完全由官方约 900 词的词典定义;此技能特意不转载该词典(见“来源和范围”)。没有该词典,词汇规则就无法作为可核查的标准,只能转变为倾向使用简单词语的偏好。

请放心应用结构规则。应用词汇规则时,应将其视为改进方向,并在输出中明确说明,而不要暗示已通过无法核实的词典合规检查。

结构规则——请遵守
规则应做不应做
使用主动语态“Agent 删除文件。”“文件被删除(由 Agent 执行)。”——除非确实不知道执行者或执行者无关紧要
不使用短语动词(规则 9.3)“拆下面板。”/“开始任务。”“把面板拿下来。”/“启动任务。”——双词动词的含义无法从各组成词推断出来
每句只写一条指令“打开文件。读取第 3 行。”“打开文件并读取第 3 行,然后检查内容是否匹配。”
句子长度指令/操作步骤不超过 20 词,描述不超过 25 词使用冗长的复合句/从句
不使用分号(规则 8.1)拆分为多个句子完全不使用分号——STE 明确禁止该标点,而不仅仅禁止用它连接分句。(规则 8.1 允许使用其他所有标准标点。STE 并不禁止破折号,但它通常意味着该句应当拆分。)
名词堆叠名词短语最多由 3 个词组成,例如“fuel pump valve”堆叠 4 个或更多名词,例如“high pressure fuel pump inlet valve assembly”
不使用省略句明确写出主语、动词和冠词,即使句子因此变长为节省篇幅而省略词语(“Files not backed up will be lost” → 无法确定指的是哪些文件)
保留情态表达“The request may have failed.” 应保留 “may have”将不确定表达改成事实(“The request failed.”),或凭空添加原文未表达的确定性
段落限制每段只讲一个主题,且不超过 6 句在一个段落中讨论多个主题
用列表表示步骤序列有 3 个或更多步骤或条件时,使用编号或项目符号列表把一系列步骤塞进一个陈述句中
词汇规则——仅指引方向
规则应做不应做这样做为何较弱
一词一义为一种动作选定一个动词,并始终重复使用(例如始终用“check”,不要为同一种动作混用“check”/“verify”/“confirm”)在文档中用不同近义词表达同一概念文档内的一致性可以检查;但没有词典,就无法确定哪个词是获准使用的。
每个词只用一种词性“Apply oil to the valve”(oil = 名词)“Oil the valve”(oil = 动词)“oil”是否仅获准用作名词属于词典信息。若名词形式和动词形式读起来都同样自然,优先使用名词形式。不要声称符合规范。
用动词,不用名词(规则 3.7)“Analyze the log.”“Perform an analysis of the log.”——把动作改成名词会让句子变长,还会隐藏动作的执行者规则 3.7 规定“使用获准使用的动词来描述动作”。在任何地方优先使用动词形式都可以安全做到;但要知道哪个动词获准使用,则需要查词典。
领域术语保留必要的技术名词/动词;若并非常见英语,则定义一次(STE 允许使用超出基础词典范围的项目专用词汇表)使用从未定义的行话词汇表扩展许可确实属于 STE,但作为扩展基础的词典并不存在。
简单时态——遵循规则,但有一项例外

STE 允许使用不定式、祈使句、一般现在时、一般过去时、一般将来时,以及作形容词用的过去分词。它不允许使用现在完成时等其他复合形式:应写“we received the report”,而不是“we have received the report”。

飞机手册从不需要现在完成时,因此这项限制对该规范没有影响。其他文本则未必如此。“The job has completed”(任务已完成,且现在可以获取其输出)和“The job completed”(任务在过去某个时刻完成)表达的意思不同,而状态文本经常需要前一种表达。**如果复合形式承载了简单形式无法表达的信息——当前相关性,或如“may have failed”中的不确定语气——则保留该形式,并标注这一偏离。**其他情况下,遵循规则。

扫描清单

这六种习惯涵盖了机器生成的英语中大多数难以解析的问题。每一项都是机械的:你可以准确指出违反规则的词或标点,无需主观判断。重写前,先检查以下六项。

  1. 近义词轮换——同一事物在一篇文档中有多个称呼(“the user”、“the customer”、“the client”)。读者无法判断它们指的是同一对象还是三个对象。修正:选定一个称呼,每次都使用它。
  2. 模糊语叠加——辅助动词和限定语层层堆叠,导致句子什么也没明确断言(“it is important to note that this may potentially help to improve”)。修正:直接陈述观点,或删掉这句话。
  3. 名词化——把动作凝固成名词(“perform an analysis of”、“provides assistance to”)。修正:改用动词(“analyze”、“helps”)。
  4. 营销形容词——只宣称质量,却不加以证明的词:seamless、robust、powerful、cutting-edge、effortless、blazing-fast。修正:删掉,或换成足以支撑该说法的度量数据。
  5. 连句——用分号或破折号连接多个观点。修正:每个句子表达一个观点。
  6. 含糊的短语动词——spin up、reach out、dive into、kick off。修正:换成单个、直白的动词(start、contact、read、begin)。

流程

  1. 选择模式(Strict 或 STE 风格)。仅当用户询问规则表时才说明所选模式——参见“输出格式”。
  2. 通读输入文本一次,理解其含义——在弄清改写后必须保留哪些内容之前,不要开始改写。
  3. 逐句检查。标出违反“核心改写规则”表中规则的所有内容,以及“扫描清单”中的所有习惯用法。在 STE 风格模式下,标出词汇规则问题,但不强制执行这些规则。如需对结构规则进行机械式初检,可运行 scripts/ste-lint.py(通过 stdin 或文件参数输入;使用 --json 获取结构化输出);它会检查分号、句子长度、短语动词、名词化、营销形容词、同义词轮换、受支持列表项中的悬垂连词、被动语态和复合时态,并且按设计不会标出模糊措辞或情态表达。--baseline N 可容许 N 个硬性违规(适用于在现有文档上采用);--disable rule1,rule2 可停用指定规则。
  4. 改写每个标出的问题句,修正规则违规,同时准确保留原意。如果改写会丢失必要的精确性(安全条件、范围限定语或数字),则保留较长的表述并将其标出,不要悄悄简化。
    • 确定改写方案前,先检查情态表达。 保留不确定性的措辞(“may”“could”“sometimes”“is likely to”等)体现了作者的确信程度,而确信程度本身就是内容。为了缩短句子而把不确定的表述改成事实,并非简化,而是改变了说法。这是好意进行 STE 改写时最常见的错误,因为句长限制恰恰容易诱使人删掉这些表达。
    • 绝不要添加源文本未陈述的事实。如果某种改写读起来更顺畅,是因为它补充了原因、频率或机制,那么它就不再是改写。
  5. 输出改写后的文本(参见“输出格式”)。将模式选择和规则分析保留在内部,除非用户要求查看。
  6. 如果输入文本本身已符合要求,就如实说明——不要强行修改合规文本。

输出格式

默认:仅输出改写后的文本。 大多数调用方需要的是可直接粘贴到工具描述、错误字符串或提示词中的结果。直接输出简化后的文本。不要添加关于此技能的开场白、模式说明、违规数量、修改摘要、规则表或结束语,也不要主动提出进一步解释。

唯一允许添加的内容:如果第 4 步有意保留了较长的表述,则在文本后另起一行,以 Kept as-is: 开头,指出该表述以及简化后会丢失的精确信息。如果没有需要说明的内容,则省略此行。

按需提供:规则表。 用户要求查看推理过程时,例如“显示差异”“违反了哪些规则”“解释修改”“修改前后对比”,改为输出此表:

| Rule violated | Original | Simplified |
|---|---|---|
| Present perfect tense | "We have received your request." | "We received your request." |
| Noun cluster (4+ words) | "the agent task queue priority handler" | "the handler that sets task-queue priority" |

Mode: Strict. 7 violations found.

表格后附上一行说明你有意未简化的内容及原因(通常是简化会丢失必要的精确信息)。

边界

会:

  • 将含糊或晦涩的英文改写为简短、含义单一、使用主动语态的句子。
  • 默认仅返回改写后的文本;用户提出要求时,说明应用了哪些规则。
  • 保留原文中的每一项事实、条件和范围限定。
  • 保留每一处限定表达的力度,不添加原文未提及的主张。
  • 为必须保留的领域术语建议一条单行术语表条目。

不会:

  • 将 ASD 官方约 900 词的词典复现为仿佛自己逐字记住的内容——核对确切的获批措辞时,始终以官方提供的下载文件为准。
  • 简化创意、营销或说服性文案,因为这类文案的重点在于语气和细微差别。
  • 为缩短句子而悄悄删去安全条件、例外情况或范围限定——会指出这种取舍。
  • 将“可能已经失败”改成“失败了”,或将“可能由 X 导致”改成“原因是 X”——去掉限定表达会改变主张。
  • 保证文档符合航空航天/国防级 STE 标准。这是一款受 STE 启发的通用清晰度工具,并非经过认证的 STE 写作工具。
  • 让薄弱的内容变得真实或有用。STE 改善的是文本的形式,不是内容本身。按照这些规则改写空洞的段落,只会让它成为一段清晰、简短、标点规范的空洞段落。如果文本无话可说,再怎么改写也无济于事——应当直说,而不是润色。
  • 为缩短而牺牲清晰度。目标不是删词,而是消除歧义。压缩到一定程度后,读者花费的时间会增加,而非减少;因此,句意明确时就应停笔,而不是一味追求最短。

其他资源

  • references/writing-rules.md — 对 9 个规则部分和词典结构的更完整总结,并附有官方标准和二手资料的引用。
  • examples/before-after.md — 实例说明,包括官方 STE 示例和为此技能编写的 Agent 输出示例。
  • scripts/ste-lint.py — 仅使用标准库的确定性检查工具,用于检查结构规则,包括对受支持列表项中悬空连词的检查,以及按文件进行的同义词轮换检查(一词一义)。当硬性违规项超过 --baseline(默认值为 0)时,退出码为 1;建议性检查结果(被动语态、复合时态)不会导致运行失败;--disable 可关闭指定规则。它不会标记限定表达或情态表达:这些属于内容,而非风格;--selftest 会断言“可能已经失败”能通过检查。

评论

支持 Markdown