‹ 首页

module-augmentation-guardrails

@lngyneric · 收录于 今天 · 上游提交 2 天前

当 TypeScript 对子路径导出出现类型丢失或声明冲突时使用本技能。通过规范的 module augmentation 写法避免覆盖上游导出。

适合你,如果 TypeScript 子路径导出出现类型丢失或声明冲突

/ 通过 npx 安装 校验哈希
npx oh-my-skill add lngyneric/ai-coach/module-augmentation-guardrails
/ 通过 bash 安装
curl -fsSL https://oh-my-skill.com/install.sh | bash -s -- lngyneric/ai-coach/module-augmentation-guardrails
/ 已经装过?验证本机副本,不用重装
npx oh-my-skill verify lngyneric/ai-coach/module-augmentation-guardrails
安装目标可用 --agent / --scope 或 --to 明确指定;省略时只会在唯一已存在的 agent 目录上自动选择,零命中或多命中会停止并提示。content_hash 缺失或不一致均拒装。
0GitHub stars
~339上下文体积 · 单文件
索引托管

怎么用

技能原文 SKILL.md作者撰写 · Apache-2.0 · 5802c88

TypeScript 模块增强防护

核心规则
  • 改类型前先核对 node_modules 中发布版声明文件。
  • augmentation 文件必须包含顶层 import "package/subpath";export {};
  • 仅增强已导出的 interface;非 interface 结构优先用本地 wrapper 类型。
  • 为子路径组件补扩展 props 时,要 augment 到真实导出子路径(如 markdown-flow-ui/slide),不要误写到相邻模块导致类型表面可用、运行接入点却不生效。
工作流
  1. 先确认是上游类型问题还是本地声明覆盖导致。
  2. 在 augmentation 中显式引入依赖类型(如 InteractionDefaultValueOptions)。
  3. 避免在 .d.ts 里重写整个模块结构。
  4. 变更后执行定向类型检查,确认导出成员未丢失。
  5. 若扩展字段依赖 React 类型(如 ReactNode),在声明文件顶层显式 import type,避免 TS 在模块增强中退化成 any
按 Apache-2.0 许可原样转载,未经改动 · 在 GitHub 查看 →

评论

登录即可评论;带「已验证安装」的,是发布者名下有本店的安装或持有记录。