1实现原理 · 为什么它能做到
整份 skill 是纯 prompt 编排,无任何脚本/资产:正文只有一段祈使指令,让模型执行一次「沟通修复」——承认上一条消息没被理解、补充少量上下文后重讲。能生效完全靠模型对指令的语言学执行,而非代码逻辑。
Wait, I don't understand where you've got to here. Re-pitch that: give me a little bit of context, talk in ASD-STE100 Simplified Technical English, and use the ubiquitous language from `CONTEXT.md` (follow `CONTEXT-MAP.md` to the right one if the repo has more than one).
触发被显式限制为用户手动调用:Claude Code 侧 disable-model-invocation: true,OpenAI/Codex 侧 allow_implicit_invocation: false,模型不得自行触发;正文起始句的作用是规定「模型看到用户困惑时应做什么」,而不是让模型主动喊停。
disable-model-invocation: true
措辞靠双重语言约束实现:STE100 Simplified Technical English(受控技术英语,约束句法/词汇)压缩表达复杂度;CONTEXT.md 的 ubiquitous language 把术语钉死在仓库统一词汇上,多 context 仓库先经 CONTEXT-MAP.md 定位到正确的 CONTEXT.md。
talk in ASD-STE100 Simplified Technical English, and use the ubiquitous language from `CONTEXT.md` (follow `CONTEXT-MAP.md` to the right one if the repo has more than one)
CONTEXT.md/CONTEXT-MAP.md 约定不是 wait-what 自带的,而是 mattpocock 多 skill 共享生态(本体定义在 engineering/domain-modeling/CONTEXT-FORMAT.md:单 context 一个根 CONTEXT.md;多 context 由 CONTEXT-MAP.md 列出各 context 位置与关系;由 domain-modeling 等 skill 懒创建)。wait-what 是纯消费方。
If `CONTEXT-MAP.md` exists, read it to find contexts - If only a root `CONTEXT.md` exists, single context - If neither exists, create a root `CONTEXT.md` lazily when the first term is resolved
作者在 ask-matt 中给出了生态定位:wait-what 是「事后矫正」(message 没落地的补救,会话中途任意 skill 内可用),与「事前预防」的 grill-with-docs(提前约定共享语言)互补。
`/wait-what` is the corrective for a message that didn't land. Use it mid-conversation, inside any other skill, and the agent re-pitches what it just said with the context you were missing, in plain English, using the `CONTEXT.md` vocabulary. It works after the fact; `/grill-with-docs` is the upfront cure
2核心能力
4风险提醒 风险提醒:绿色 · 放心使用
- STE100 严格度不可控:规则文件未随附、无链接,完全依赖模型内置知识,不同模型执行差异大;需严格合规级 STE100 的场合不适用 — 仓库内无任何 STE100 参考文件(grep 仅本 skill 一处提及)
- CONTEXT.md 缺失时无降级指令:正文只说了「follow CONTEXT-MAP.md to the right one」,未说明仓库两者皆无时怎么办(对比同系 domain.md 的「proceed silently」),模型可能空转或臆造术语表 — SKILL.md 正文无 fallback 分支;约定创建方是其它 skill
- 无结构化输出/自检:重述质量与「是否真的补上缺失上下文」全凭模型临场发挥,prompt 极短、无校验步骤,可能只是机械复述 — 正文仅一段祈使句,无输出格式或质量门禁
- 注入面虽小但存在:正文模拟用户困惑口吻,若会话上下文含对抗性指令,可能诱导模型「承认没讲清」并按恶意措辞重述(影响限于输出文本) — injection_surface 分析见 security 段
5第二遍独立确认
- [ok] 第一遍断言「无外部 CLI/API/网络/包依赖」 — 两文件逐字节重读:无 URL、无命令、无包引用、无 import;仓库级 grep 显示 STE100 全仓库唯一提及即本 skill,无配套规则文件
- [ok] 第一遍断言「目录内无脚本/资产/隐藏文件」 — find 全目录仅 productivity/wait-what/SKILL.md 与 productivity/wait-what/agents/openai.yaml 两文件,无点文件
- [ok] disable-model-invocation 语义=仅用户触发 — productivity/README.md 原文「Reachable only when you type them (Claude Code: `disable-model-invocation: true`; Codex: `policy.allow_implicit_invocation: false`)」与两文件元数据一致
- [ok] CONTEXT.md/CONTEXT-MAP.md 约定来源(wait-what 自身不携带) — engineering/domain-modeling/CONTEXT-FORMAT.md 定义了单/多 context 布局与读取规则(含「create a root CONTEXT.md lazily」);setup-matt-pocock-skills/domain.md 也引用该约定;wait-what 目录内确无此类文件
- [ok] 作者生态定位描述(ask-matt 提及 wait-what)与正文能力相符性 — ask-matt/SKILL.md 原文「re-pitches what it just said with the context you were missing, in plain English, using the CONTEXT.md vocabulary. It works after the fact」与 SKILL.md 正文指令一一对应,无夸大
- [ok] 功能声明 vs 实现相符性 — description「Stop. That last message did not land: re-pitch it.」与正文一致;宣称的只是 prompt 能做的事,无吹牛
- [ok] license 元数据 — GitHub API 返回 license.spdx_id=MIT;但本 commit checkout(git ls-files + find)无 LICENSE 文件——记录来源为 API,非树内文件
- [ok] stars/last_push 元数据 — API 2026-09-06 采集:stargazers_count=253948,pushed_at=2026-09-04T08:45:43Z 与 HEAD 3cca18b(2026-09-04)一致
6结论
7953c2143da38542…3cca18b368