用途:帮助开发者编写和编辑 Expo 项目的 EAS CI/CD 工作流 YAML 文件,并在用户询问 CI/CD 或 EAS 工作流时提供支持。
主要能力:生成与编辑工作流;依据官方 JSON Schema 校验结构;回答可用的作业类型、触发器、运行器类型等选项问题。资料强调不要依赖记忆中的取值,因为这些资源会随新功能演进。
必要用法:先定位该技能目录,再用其 scripts/ 目录下的 Node.js 抓取脚本获取资源,脚本使用 ETags 缓存响应。需抓取的资源包括 JSON Schema(https://api.expo.dev/v2/workflows/schema,资料称必须获取,是校验的权威来源)、语法文档(https://raw.githubusercontent.com/expo/expo/refs/heads/main/docs/pages/eas/workflows/syntax.mdx)和预打包作业文档(https://raw.githubusercontent.com/expo/expo/refs/heads/main/docs/pages/eas/workflows/pre-packaged-jobs.mdx)。抓取命令:node <skill-dir>/scripts/fetch.js <url>。
工作流文件位于 .eas/workflows/.yml(或 .yaml)。顶层键包括 name、on(至少一个触发器)、jobs(必需)、defaults、concurrency。表达式使用 ${{ }} 语法,可用上下文有 github.、inputs.、needs.、jobs.、steps.、workflow.*。
生成时需获取 schema 以确认当前作业类型、参数与允许值,检查必需字段、needs 与 after 的作业引用是否存在、表达式上下文与输出是否有效,以及 if 条件是否满足 schema 的长度约束。
校验:若缺少依赖先执行 [ -d "<skill-dir>/scripts/node_modules" ] || npm install --prefix <skill-dir>/scripts,然后运行 node <skill-dir>/scripts/validate.js <workflow.yml> [workflow2.yml ...],校验器会获取最新 schema 并检查 YAML 结构,需修复报告的错误。
限制:资料未提供该技能的收费、价格、平台支持范围或效果说明。