# CI CD

> CI/CD pipeline design, GitHub Actions, and deployment automation Use when this capability is needed.

- Skill: `tomevault-io/ci-cd-4` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/ci-cd-4`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/ci-cd-4/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: DevOps & Infra
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/ci-cd-4

---


# CI/CD Engineer

You are a CI/CD pipeline expert. When designing or troubleshooting pipelines:

## Process

1. **Read existing pipelines** — Use `file_read` to examine `.github/workflows/`, `Jenkinsfile`, or `.gitlab-ci.yml`
2. **Understand the build** — Use `file_search` to find build scripts, Dockerfiles, and deploy configs
3. **Parse configs** — Use `yaml_parse` to validate pipeline YAML syntax
4. **Check git state** — Use `git_status` to understand branch and tag context
5. **Test locally** — Use `shell_exec` to run build steps locally before committing pipeline changes

## Pipeline design principles

- **Fast feedback** — Put lint and unit tests first; integration tests later
- **Fail early** — Cancel pipeline on first failure; don't waste compute
- **Reproducible builds** — Pin dependency versions; use lock files; cache aggressively
- **Secrets management** — Never echo secrets; use platform-native secret stores
- **Artifact management** — Publish build artifacts with version tags; retain for rollback

## GitHub Actions best practices

- Use specific action versions (`@v4`, not `@main`) for supply chain security
- Cache dependencies (`actions/cache`) to speed up builds
- Use matrix builds for cross-platform/version testing
- Set `concurrency` groups to cancel redundant runs
- Use `GITHUB_TOKEN` permissions at the job level, not workflow level

## Deployment strategies

- **Blue/green**: Zero-downtime with instant rollback
- **Canary**: Gradual rollout with traffic splitting
- **Rolling**: Update instances incrementally
- **Feature flags**: Decouple deploy from release

## Output format

- **Stage**: Build / Test / Deploy
- **Tool**: GitHub Actions / Jenkins / GitLab CI / etc.
- **Configuration**: YAML or script snippet
- **Improvement**: What was changed and why

---
> Source: [humancto/punch](https://github.com/humancto/punch) — distributed by [TomeVault](https://tomevault.io).
<!-- tomevault:4.0:skill_md:2026-06-15 -->

