Skip to main content
skill CX Codex GP ChatGPT official · OpenAI

expo-cicd-workflows — Codex skill: what it does, how to install

This skill helps create and check EAS Workflow YAML for Expo projects. Use it for CI/CD questions, build pipelines, and deployment automation.

Install into Codex · Skills CLI (Vercel) All methods and platforms ↓
npx skills add openai/plugins --skill expo-cicd-workflows -a codex
Open on GitHub

What expo-cicd-workflows does

The skill works with EAS workflow files stored in .eas/workflows/ as .yml or .yaml. It covers the main sections such as name, on, jobs, defaults, and concurrency, plus ${{ }} expressions that read from github, inputs, needs, jobs, steps, and workflow contexts.

Before writing or changing a workflow, it retrieves the current JSON Schema and EAS documentation. The schema defines supported job types, triggers, parameters, VM images, and allowed values. This matters because those options change over time.

The skill then runs validate.js against the edited file or files. The check covers required job fields, references in needs and after, expression contexts, and if length limits. Its scripts run on Node.js, and missing dependencies can be installed with npm install. A workflow should not be treated as validated until it has been checked against the current schema.

What it helps with

  • write an EAS Workflow YAML file
  • check required fields for each job
  • catch broken needs and after references
  • verify expressions against available contexts
  • validate several workflow files together

Example prompts for the agent

  • Create an EAS Workflow for my Expo project in .eas/workflows/ and check its structure.
  • Validate this workflow file and report issues in jobs, needs, after, and ${{ }} expressions.
  • Use the current EAS schema to explain the available triggers and job types.

How to install expo-cicd-workflows

1Skills CLI (Vercel)

npx skills add openai/plugins --skill expo-cicd-workflows -a codex

2Manually: put the files in place

.agents/skills/expo-cicd-workflows/SKILL.md

For all projects use ~/.agents/skills/

Step by step, with commands for each platform: Codex skills: how to install, where they live, how to call them

Questions about expo-cicd-workflows

How do I install expo-cicd-workflows in Codex?

Run these steps in order: npx skills add openai/plugins --skill expo-cicd-workflows, then npx skills add openai/plugins --skill expo-cicd-workflows -a codex. The skill file will be at .agents/skills/expo-cicd-workflows/SKILL.md.

What does expo-cicd-workflows do?

It helps create, edit, and validate EAS Workflow YAML for Expo. The skill checks jobs, triggers, job dependencies, and expressions against the current schema.

What does the skill need to validate a workflow?

It fetches the current JSON Schema and EAS documentation before generating or checking a workflow. Its scripts use Node.js, and npm install supplies dependencies when scripts/node_modules is missing.

Source text

SKILL.md · MIT
---
name: expo-cicd-workflows
description: Helps understand and write EAS workflow YAML files for Expo projects. Use this skill when the user asks about CI/CD or workflows in an Expo or EAS context, mentions .eas/workflows/, or wants help with EAS build pipelines or deployment automation.
version: 1.0.0
license: MIT License
---

# EAS Workflows Skill

Help developers write and edit EAS CI/CD workflow YAML files.

## Reference Documentation

Fetch these resources before generating or validating workflow files. First resolve this skill's directory, then use the fetch script in its `scripts/` directory. It is implemented using Node.js and caches responses using ETags for efficiency:

```bash
# Fetch resources
node <skill-dir>/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 "<skill-dir>/scripts/node_modules" ] || npm install --prefix <skill-dir>/scripts

node <skill-dir>/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.

© Expo Team · MIT · openai/plugins

Similar skills

All skills for DevOps and infrastructure →

From the same set420

The whole set →
expo-ui-swift-ui The skill teaches the agent to work with the @expo/ui/swift-ui package, which brings SwiftUI Views and modifiers into React Native apps on Expo SDK 55. CX Codex GP ChatGPT 1installs expo-ui-jetpack-compose A skill that tells the agent how to build native Android UI with @expo/ui/jetpack-compose inside an Expo app. CX Codex GP ChatGPT 1installs expo-module This skill covers Expo native modules and views with Swift, Kotlin, and TypeScript. Use it when building or changing code through the Expo Modules API. CX Codex GP ChatGPT 1installs expo-dev-client A Claude skill that walks the agent through building an Expo development client and getting it onto TestFlight or a device. CX Codex GP ChatGPT 1installs expo-api-routes This skill tells the agent how to write server-side API routes in Expo Router and ship them to EAS Hosting. Useful when keys and database calls must stay off the client. CX Codex GP ChatGPT 1installs create-data-context Builds and maintains a semantic layer that records how data should be read, which metric counts as canonical, and what caveats to check. CX Codex GP ChatGPT 1installs connect-chatcut-desktop Walks the agent through installing, opening or repairing ChatCut Desktop when the chatcut_desktop tools are missing. Instructions only, no installer. CX Codex GP ChatGPT 1installs setup-zoom-webhooks A Claude and Claude skill that walks the agent through Zoom webhook setup: subscriptions, signature verification, idempotent handlers. CX Codex GP ChatGPT ★ 7,604repo stars

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor