Skip to content
Agentmart
Submit a tool

designing-cicd

Design GitHub Actions CI/CD topology — trigger selection (push / pull_request / workflow_run / workflow_dispatch), job sequencing via needs, concurrency…

Skill by hierovision

IndexedMIT★ 1
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/hierovision-designing-cicd

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Design GitHub Actions CI/CD topology — trigger selection (push / pull_request / workflow_run / workflow_dispatch), job sequencing via needs, concurrency (queue vs cancel-in-progress), environment protection rules, secrets vs vars, matrix, caching/artifacts, and required checks. Golden paths test → build → deploy and migrate-before-deploy. Use whenever the user asks "how should CI work", "sequence deploy vs migration", "gate prod", "set up GitHub Actions", or surfaces a release/operate pipeline needing design — even without saying "CI/CD". Routes implementation to implementing-features; pairs with deploying-with-supabase / deploying-to-azure-swa for the deploy step and securing-ci for token/secret safety. Not for writing application code (implementing-features), reviewing a diff (reviewing-code), or authoring tests (the test trio).

Use cases: design, testing, devops, cloud

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/designing-cicd

What's inside

Skill name
designing-cicd
Description
Design GitHub Actions CI/CD topology — trigger selection (push / pull_request / workflow_run / workflow_dispatch), job sequencing via needs, concurrency (queue vs cancel-in-progress), environment protection rules, secrets vs vars, matrix, caching/artifacts, and required checks. Golden paths test → build → deploy and migrate-before-deploy. Use whenever the user asks "how should CI work", "sequence deploy vs migration", "gate prod", "set up GitHub Actions", or surfaces a release/operate pipeline needing design — even without saying "CI/CD". Routes implementation to implementing-features; pairs with deploying-with-supabase / deploying-to-azure-swa for the deploy step and securing-ci for token/secret safety. Not for writing application code (implementing-features), reviewing a diff (reviewing-code), or authoring tests (the test trio).
License
MIT
Instructions
202 lines in SKILL.md · view on GitHub

Before installing

  • Ships executable scripts

Files (6)

  • SKILL.md
  • evals.json · evals/
  • ci.yml · evals/fixtures/phasewave/cicd-migrate/.github/workflows/
  • AGENTS.md · evals/fixtures/phasewave/cicd-migrate/
  • verify-cicd.cjs · evals/fixtures/phasewave/cicd-migrate/scripts/
  • gh-actions-topology.md · references/

SKILL.md (first lines)

# Designing CI/CD

Turn a release/operate pipeline into a verifiable GitHub Actions topology
that a separate build session can implement cold. A design pass is **done**
when the workflow topology exists (as a plan artifact and/or a drafted
workflow file), every gate is an observable, checkable rule, and the user
has approved it. The skill is **design-only** — it does not commit, edit
source, or run deployments. It stops at approval; implementation routes to
`implementing-features`.

This skill closes the library's release/operate gap: no other skill
covers CI topology, job DAGs, `concurrency`, `environment` protection, or
deploy-vs-migrate ordering.

## The design pass

Copy this checklist and check off items as you complete them.

```
CI/CD Design Progress:
- [ ] 1. Identify the pipeline's purpose + which triggers fire it
- [ ] 2. Select triggers (push / pull_request / workflow_run / workflow_dispatch)
- [ ] 3. Build the job DAG via `needs`
- [ ] 4. Add `concurrency` (one deploy at a time; queue, don't cancel prod)
- [ ] 5. Add `environment` + protection rules (reviewers / wait timer / deploy branches)
- [ ] 6. Separate secrets from vars
- [ ] 7. Choose matrix dimensions (only where it speeds feedback)
- [ ] 8. Wire caching + artifacts (reuse, don't rebuild)
- [ ] 9. Mark required checks + branch protection
- [ ] 10. Apply the migrate-before-deploy golden path
- [ ] 11. Present topology + approval question; STOP
```

### Step 1 — Identify purpose + trigger set

Name what the pipeline delivers (test gate, preview deploy, prod release,
migration). Pick triggers deliberately — each has a distinct failure mode:

- `push` to `main` — fires on every merge; the usual prod/release trigger.
- `pull_request` — the validation gate (test + build) before merge; never
  the deploy trigger for prod (PR refs can't see protected secrets).
- `workflow_run` — chain a downstream workflow (e.g. deploy) after an
  upstream one (e.g. CI) completes; the correct way to "deploy after CI
  passed" without polluting the PR trigger.
- `workflow_dispatch` — manual promotion / rollback; pairs with an
  `environment` and protection rules.

Do **not** deploy from `pull_request` with production secrets — PRs from
forks/branches must not hold deploy power. Route deploy through
`workflow_run` or `workflow_dispatch`.

### Step 2 — Select triggers

Map each chosen trigger to a job group (see
[references/gh-actions-topology.md](references/gh-actions-topology.md) for
the event/context matrix). A pipeline usually needs: a `pull_request`
validation job, a `push`/`workflow_run` deploy job, and an optional
`workflow_dispatch` promotion job. List the triggers in the plan so an
implementer doesn't guess.

### Step 3 — Build the job DAG via `needs`

Jobs run in parallel by default; `needs:` makes them a DAG. Common shape:

```
test  ─┐
build ─┼─▶ deploy          (deploy waits for both)
migrate─┘
```

Every job a later gate depends on must be named in `needs`. A deploy that
does not `needs:` the migrate job can race it — the cardinal ordering bug.

### Step 4 — Add `concurrency`

Prevent overlapping runs from clobbering the same environment:

```yaml
concurrency:
  group: deploy-prod-${{ github.ref }}
  cancel-in-progress: false   # queue, don't cancel an in-flight prod deploy
```

- **Non-prod / PR validation**: `cancel-in-progress: true` is fine (drop
  stale runs on new pushes).
- **Prod deploy**: `cancel-in-progress: false` — queue new runs behind the
  in-flight one. Cancelling a prod deploy mid-flight leaves a half-shipped
  environment. Use a per-environment `group` so staging and prod don't
  serialize each other.

A topology with no `concurrency` on deploy is a finding (two merges can
ship concurrently and corrupt state).

### Step 5 — Add `environment` + protection rules

Gate prod with a named `environment` so GitHub enforces protection rules:

```yaml
deploy:
  environment:
    name: production
    url: ${{ steps.deploy.outputs.url }}
  needs: [test, build, migrate]
```

Protection rules (set in repo Settings → Environments, referenced here by
name): required reviewers, wait timer, and restricted deployment branches.
The plan should name the environment and which rules apply — an
ungated `production` environment is a finding.

### Step 6 — Separate secrets from vars

- **Secrets** (`${{ secrets.X }}`) — never logged, never echoable. Deploy
  tokens, `SUPABASE_ACCESS_TOKEN`, cloud credentials.
- **Vars** (`${{ vars.X }}`) — non-sensitive config (region, project id,
  static URLs). Safe to print in logs.

The plan lists each value as secret or var; a token placed in `vars` is a
security finding (route to `securing-ci`). Never `echo` a secret; GitHub

From hierovision/ai-framework, MIT.

More from hierovision/ai-framework

Signals

Stars
1
Forks
0
Open issues
7
Last commit (this folder)
Oct 1, 2026 (27 days ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from hierovision

Cite this page

designing-cicd skill. Agent Mart. https://agentmart.dev/skills/hierovision-designing-cicd (last updated 2026-10-24)