用途:该技能面向 SST v4(Ion)——一个由 Pulumi 驱动的 IaC 框架,用 TypeScript 描述 AWS 资源并由 SST/Pulumi 同步到账号。适用于编写或修改 sst.config.ts、构建 infra/ 模块、为基础设施写测试、执行部署或排查部署失败、以及在 Pulumi 类型之间迁移资源等场景。
主要能力:提供 sst.aws.* 高层组件(Function、Bucket、Dynamo、Cron、Service 等),可展开为多个底层资源,并保留到原始 Pulumi aws.* 资源的逃生通道。技能按情境给出参考文档:新增资源或模块看 authoring.md;模块间连接(link、SSM、IAM 范围)看 authoring.md 的 Sharing 节;基础设施测试看 testing.md;部署与排障、迁移看 deploy-and-troubleshoot.md。
使用方式:先读仓库建立地图——sst.config.ts(应用名、home、provider/区域、defaultTags、全局 $transform、run() 中 infra/ 模块的导入顺序即依赖顺序)、infra/(按域分文件,优先读 infra/CLAUDE.md)、infra/tests/、package.json 与 .nvmrc。用 npx sst version 确认是 v4/Ion。语法不确定时用 Context7 核对 SST/Pulumi,AWS 侧事实(限额、模型 ID、IAM 动作名、区域可用性)用 AWS 文档 MCP 核对。测试可运行 npx vitest,部署前用 npx sst diff 或 tsc --noEmit 检查,并用 aws sts get-caller-identity 确认目标账号。
限制与注意:SST 与 Pulumi 为第三方,需自行核对当前语法;v2/v3(SST Classic,基于 CDK)不适用这些模式。不要把 Pulumi Output<T> 直接插入普通模板字符串,应使用 $interpolate。资源类型迁移默认拆成两次 PR/部署。清理导出的状态文件,避免账号 ID 与 ARN 残留。具体收费、价格与平台支持资料暂未提供。