CI Pipeline Patterns
SkillDev toolsGitHub Actions workflow templates, matrix builds, caching, and monorepo CI strategies
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the CI Pipeline Patterns skill
What this skill tells your AI
The instructions your AI receives, as published by vibeeval/vibecosystem in skills/ci-pipeline-patterns/SKILL.md and read by ahel’s review.
GitHub Actions Workflow Template
name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
lint-and-type:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with: { node-version: 20, cache: npm }
- run: npm ci
- run: npm run lint
- run: npm run type-check
test:
runs-on: ubuntu-latest
strategy:
matrix:
shard: [1, 2, 3, 4]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with: { node-version: 20, cache: npm }
- run: npm ci
- run: npm test -- --shard=${{ matrix.shard }}/4
build:
needs: [lint-and-type, test]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with: { node-version: 20, cache: npm }
- run: npm ci
- run: npm run build
- uses: actions/upload-artifact@v4
with: { name: build, path: dist/ }
Caching Strategies
# npm cache
- uses: actions/cache@v4
with:
path: ~/.npm
key: npm-${{ hashFiles('**/package-lock.json') }}
# Docker layer cache
- uses: docker/build-push-action@v5
with:
cache-from: type=gha
cache-to: type=gha,mode=max
# Turborepo remote cache
- run: npx turbo build --cache-dir=.turbo
Monorepo CI (Affected Only)
# Nx affected
- run: npx nx affected --target=test --base=origin/main
# Turborepo
- run: npx turbo run test --filter=...[origin/main]
# Manual path filter
- uses: dorny/paths-filter@v3
id: changes
with:
filters: |
api: ['packages/api/**']
web: ['packages/web/**']
Pipeline Security
# Secret scanning
- uses: trufflesecurity/trufflehog@main
with: { extra_args: --only-verified }
# Dependency audit
- run: npm audit --audit-level=high
# SAST
- uses: github/codeql-action/analyze@v3
Checklist
- Concurrency: cancel-in-progress aktif
- Cache: npm/pip/go module cache
- Paralel: test shard veya matrix
- Security: secret scan + dependency audit
- Artifact: build output upload
- Branch protection: require status checks
- Monorepo: affected-only strategy
- Timeout: job timeout belirlenmiş
Anti-Patterns
- Cache key'de sabit string (hash kullan)
- Her push'ta tüm testler (affected-only)
- Secret'ı log'a yazdırma (mask)
- Single job tüm adımlar (paralelize et)
- Manual deploy (CD otomatik olmalı)
Signals
- GitHub stars
- 530
- Forks
- 44
- Last commit
- Aug 2026
Advanced
- Catalog kind
- skill
- Gateway key
ci-pipeline-patterns- Source
- github.com/vibeeval/vibecosystem