Skip to main content

expo-cicd-workflows

"Implement — Helps understand and write EAS workflow YAML files for Expo projects. Use this skill when the user asks about"

跳到安装

来源信息

仓库
thiagofernandes1987-create/APEX
最近来源活动
2026年4月18日 09:35
检测到的 SKILL.md 语言
英语
星标
2
分支
0

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
expo-cicd-workflows
description
"Implement — Helps understand and write EAS workflow YAML files for Expo projects. Use this skill when the user asks about"
# EAS Workflows Skill Help developers write and edit EAS CI/CD workflow YAML files. ## When to Use - You need to create, edit, or validate `.eas/workflows/*.yml` files for an Expo project. - The task involves EAS build pipelines, deployment automation, workflow triggers, or Expo CI/CD configuration. - You need schema-backed workflow guidance rather than relying on stale memorized syntax. ## Reference Documentation Fetch these resources before generating or validating workflow files. Use the fetch script (implemented using Node.js) in this skill's `scripts/` directory; it caches responses using ETags for efficiency: ```bash # Fetch resources node {baseDir}/scripts/fetch.js <url> ``` 1. **JSON Schema** — https://api.expo.dev/v2/workflows/schema - It is NECESSARY to fetch this schema - Source of truth for validation - All job types and their required/optional parameters - Trigger types and configurations - Runner types, VM images, and all enums 2. **Syntax Documentation** — https://raw.githubusercontent.com/expo/expo/refs/heads/main/docs/pages/eas/workflows/syntax.mdx - Overview of workflow YAML syntax - Examples and English explanations - Expression syntax and contexts 3. **Pre-packaged Jobs** — https://raw.githubusercontent.com/expo/expo/refs/heads/main/docs/pages/eas/workflows/pre-packaged-jobs.mdx - Documentation for supported pre-packaged job types - Job-specific parameters and outputs Do not rely on memorized values; these resources evolve as new features are added. ## Workflow File Location Workflows live in `.eas/workflows/*.yml` (or `.yaml`). ## Top-Level Structure A workflow file has these top-level keys: - `name` — Display name for the workflow - `on` — Triggers that start the workflow (at least one required) - `jobs` — Job definitions (required) - `defaults` — Shared defaults for all jobs - `concurrency` — Control parallel workflow runs Consult the schema for the full specification of each section. ## Expressions Use `${{ }}` syntax for dynamic values. The schema defines available contexts: - `github.*` — GitHub repository and event information - `inputs.*` — Values from `workflow_dispatch` inputs - `needs.*` — Outputs and status from dependent jobs - `jobs.*` — Job outputs (alternative syntax) - `steps.*` — Step outputs within custom jobs - `workflow.*` — Workflow metadata ## Generating Workflows When generating or editing workflows: 1. Fetch the schema to get current job types, parameters, and allowed values 2. Validate that required fields are present for each job type 3. Verify job references in `needs` and `after` exist in the workflow 4. Check that expressions reference valid contexts and outputs 5. Ensure `if` conditions respect the schema's length constraints ## Validation After generating or editing a workflow file, validate it against the schema: ```sh # Install dependencies if missing [ -d "{baseDir}/scripts/node_modules" ] || npm install --prefix {baseDir}/scripts node {baseDir}/scripts/validate.js <workflow.yml> [workflow2.yml ...] ``` The validator fetches the latest schema and checks the YAML structure. Fix any reported errors before considering the workflow complete. ## Answering Questions When users ask about available options (job types, triggers, runner types, etc.), fetch the schema and derive the answer from it rather than relying on potentially outdated information. ## Diff History - **v00.33.0**: Ingested from antigravity-awesome-skills community repo --- ## Why This Skill Exists Implement — Helps understand and write EAS workflow YAML files for Expo projects. Use this skill when the user asks about <!-- SR_40: auto-generated from frontmatter `purpose`/`description` (OPP-Phase3). Expand with domain-specific rationale. --> ## What If Fails - condition: Código não disponível para análise <!-- SR_40: auto-generated from frontmatter `what_if_fails` (OPP-Phase3). -->
在 GitHub 查看