CommunityCodierung & Entwicklunggithub.com

bentoms-dev/github-actions-cicd-engineer

Schnelle, sichere und wartbare CI/CD-Pipelines mit GitHub Actions erstellen. Verwenden Sie dies, wenn Sie Workflows erstellen oder reparieren, langsame CI beschleunigen, Caching, Matrizen oder Deployments hinzufügen, Secrets und Umgebungen verwalten, Workflows gegen Supply-Chain-Angriffe härten oder Releases und Preview-Deployments einrichten.

Was ist github-actions-cicd-engineer?

Diese Fähigkeit befähigt einen KI-Assistenten, als Experte für GitHub Actions CI/CD-Pipelines zu agieren. Ihr Schwerpunkt liegt auf dem Entwerfen und Optimieren von Workflows, die ein Gleichgewicht zwischen Geschwindigkeit (damit Entwickler nicht warten), Strenge (um Probleme zuverlässig zu erkennen) und Sicherheit (gegen Supply-Chain-Angriffe geschützt) herstellen. Der Anwendungsbereich umfasst die Definition von Pipeline-Strukturen für Pull-Requests und Merges auf den Hauptzweig, die Implementierung von Parallelität, Pfadfiltern und Dependency-Caching, die Härtung von Workflows mit dem Prinzip der geringsten Privilegien und SHA-Pinning, die Verwaltung von Bereitstellungen über GitHub-Umgebungen mit Schutzregeln und die Automatisierung von Versionierung und Changelogs. Die Fähigkeit unterstützt jede Plattform, die GitHub Actions ausführt, und bietet einen umfassenden Satz von Richtlinien, Best Practices sowie konkreten, sofort anwendbaren YAML-Konfigurationen.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/bentoms-dev/skills/tree/HEAD/skills/engineering/github-actions-cicd-engineer

Installed? Explore more Codierung & Entwicklung skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

GitHub Actions CI/CD Engineer

Sie erstellen Pipelines, die schnell genug sind, damit Entwickler nicht warten, streng genug, um Probleme zu erkennen, und abgesichert, damit sie nicht zur Kompromittierung des Repositorys genutzt werden können.

Pipeline-Struktur

  • Bei Pull-Requests: Installieren, Linten, Typprüfung, Unit- und Integrationstests, Build. Führen Sie unabhängige Jobs parallel aus.
  • Bei Merge auf den Hauptzweig: die gleichen Prüfungen, dann einmal Artefakte bauen und das gleiche Artefakt zuerst auf Staging, dann auf Produktion bereitstellen.
  • Früh scheitern: Führen Sie die günstigsten Prüfungen zuerst oder parallel zu teuren Prüfungen durch.
  • Verwenden Sie concurrency, um überholte Läufe auf demselben Branch abzubrechen:
concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: ${{ github.event_name == 'pull_request' }}
  • Verwenden Sie Pfadfilter, sodass dokumentationsbezogene Änderungen schwere Jobs überspringen, aber halten Sie erforderliche Prüfungen erfüllbar (verwenden Sie einen leichtgewichtigen Job, der immer läuft, oder bedingte Schritte).

Geschwindigkeit

  • Cachen Sie Abhängigkeiten mit dem integrierten Cache des Setup-Actions (actions/setup-node mit cache: npm, setup-python mit cache: pip) und cachen Sie Build-Ausgaben (Next.js .next/cache, Turborepo, Gradle), deren Schlüssel auf Lockfiles basieren.
  • Verwenden Sie npm ci (oder die entsprechende Frozen-Lockfile-Installation) für reproduzierbare Installationen.
  • Verteilen Sie langsame Testsuiten auf eine Matrix. Führen Sie End-to-End-Tests nur gegen eine gebaute App aus.
  • Verwenden Sie fail-fast: false bei Matrizen, wenn Sie jedes Ergebnis benötigen, und true, wenn Sie nur wissen müssen, dass es fehlgeschlagen ist.
  • Setzen Sie timeout-minutes für jeden Job, sodass hängende Läufe keine Minuten verbrauchen.

Sicherheitshärtung

  • Setzen Sie Berechtigungen mit dem Prinzip der geringsten Privilegien am Anfang jedes Workflows und erweitern Sie sie pro Job nur bei Bedarf:
permissions:
  contents: read
  • Pinnen Sie Drittanbieter-Actions auf einen vollständigen Commit-SHA, mit der Version in einem Kommentar (uses: owner/action@<sha> # v4.2.0). Lassen Sie Dependabot oder Renovate sie aktualisieren.
  • Verwenden Sie niemals pull_request_target oder workflow_run, um unvertrauten PR-Code mit Secrets auszuchecken und auszuführen. Geforkte PRs dürfen keine Secrets oder Schreib-Tokens erhalten.
  • Verhindern Sie Script-Injection: Interpolieren Sie niemals unvertrauten Kontext (github.event.pull_request.title, Issue-Bodies, Branch-Namen) direkt in run:. Übergeben Sie ihn über env: und zitieren Sie die Variable.
  • Verwenden Sie OIDC (id-token: write), um kurzlebige Cloud-Anmeldeinformationen anstelle von langlebigen, als Secrets gespeicherten Schlüsseln zu erhalten.
  • Legen Sie Deploy-Secrets in Umgebungen mit erforderlichen Reviewern und Branch-Schutz ab, nicht in repository-weiten Secrets.
  • Geben Sie keine Secrets aus; seien Sie vorsichtig mit set -x und Debug-Logging.
  • Aktivieren Sie Dependabot für npm und GitHub Actions und führen Sie einen Dependency-Audit oder Code-Scanning-Job aus.

Deployments

  • Stellen Sie über Umgebungen (staging, production) mit Schutzregeln und URLs bereit.
  • Machen Sie Deployments idempotent und rollback-fähig (stellen Sie vorheriges Artefakt oder Tag erneut bereit).
  • Führen Sie Datenbankmigrationen als einen eigenen, geordneten Schritt durch, der abwärtskompatibel mit der aktuell laufenden Version ist.
  • Verwenden Sie Preview-Deployments pro PR, wo die Plattform dies unterstützt, und kommentieren Sie die URL im PR.
  • Führen Sie Smoke-Tests gegen die bereitgestellte URL durch und lassen Sie den Job fehlschlagen, wenn sie fehlschlagen.

Wartbarkeit

  • Extrahieren Sie wiederholte Einrichtung in eine Composite Action oder einen wiederverwendbaren Workflow (workflow_call).
  • Benennen Sie Jobs und Schritte klar; erforderliche Statusprüfungen hängen von Jobnamen ab, also benennen Sie diese sorgfältig um.
  • Pinnen Sie Runner-Images (ubuntu-24.04), wenn Reproduzierbarkeit wichtiger als automatische Aktualisierungen ist.
  • Verwenden Sie actionlint, um Workflow-Dateien zu validieren.

Releases

  • Automatisieren Sie Versionierung und Changelogs aus Conventional Commits (z.B. release-please oder changesets).
  • Veröffentlichen Sie Pakete mit Provenance (npm publish --provenance) mittels OIDC, wo unterstützt.

Ausgabe

Beschreiben Sie die Pipeline (Trigger, Jobs, Abhängigkeiten zwischen ihnen), die erwartete Laufzeit vorher und nachher, gewährte Berechtigungen und warum, erforderliche Secrets und Umgebungen sowie jede manuelle Einrichtung, die in den Repository-Einstellungen erforderlich ist (Branch-Schutz, erforderliche Prüfungen, Umgebungen).


Tiefergehen: Security Audit Pro und Observability & Incident Response sind Premium-Skill-Pakete mit verknüpften Fähigkeiten, Produktionsvorlagen, Skripten und Evaluierungsaufforderungen.

Individual skills in this repo

This repo contains 5 individual skills — each has its own dedicated page.

bentoms-dev/ai-feature-engineer

Build reliable, safe and affordable LLM-powered features in real products. Use when adding chat, summarisation, extraction, classification, RAG search, tool calling or agents to an app, when writing prompts or evals, choosing models, controlling cost and latency, or defending against prompt injection.

bentoms-dev/docs-readme-writer

Write developer documentation people actually read and trust. Use when creating or improving a README, getting-started guide, API reference, architecture decision record (ADR), runbook, onboarding guide, changelog or contributing guide, or when docs are outdated, confusing or missing.

bentoms-dev/postgres-migrations-engineer

Design PostgreSQL schemas, write zero-downtime migrations and fix slow queries. Use when adding tables, columns, indexes or constraints, changing data on a live database, reviewing a migration for locking risks, reading EXPLAIN ANALYZE output, or working with Prisma, Drizzle, Knex, TypeORM, Rails or Django migrations.

bentoms-dev/shopify-theme-architect

Build, refactor and review Shopify Online Store 2.0 themes. Use when creating or editing Liquid sections, blocks, snippets, templates, theme settings, locales, or theme CSS/JS, and when reviewing a theme for performance, accessibility or merchant editability.

bentoms-dev/test-engineer

Write tests that catch real bugs and survive refactors. Use when adding tests to new or existing code, choosing between unit, integration and end-to-end tests, fixing flaky tests, setting up Vitest, Jest or Playwright, or reviewing a test suite for gaps and brittleness.

Verwandte Skills