skills/knowledge/cicd/SKILL.md
CI/CD pipeline patterns and deployment strategies for automated, reliable software delivery. Use when the user asks to design a build pipeline, choose a deployment model (blue-green, canary, rolling), configure environment promotion, manage build artifacts, implement zero-downtime deployments, set up quality gates, or improve delivery workflow speed and reliability. Covers pipeline stage ordering, test parallelization, caching, secrets in CI, and rollback strategies.
npx skillsauth add krzysztofsurdy/code-virtuoso cicdInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Continuous Integration, Continuous Delivery, and Continuous Deployment form a spectrum of automation practices. Each builds on the previous one, progressively reducing manual intervention between a code change and its availability to users.
| Practice | What It Automates | Gate to Next Stage | |---|---|---| | Continuous Integration | Merging, building, and testing code on every commit | Automated tests must pass before merge | | Continuous Delivery | Packaging and promoting artifacts through environments | Manual approval before production deployment | | Continuous Deployment | Full path from commit to production without manual steps | Automated quality gates replace human approval |
Continuous Integration is the foundation. Without reliable, fast integration, neither delivery nor deployment is sustainable. Start here and expand outward.
A well-designed pipeline gives developers fast, trustworthy feedback while preventing broken code from reaching users.
| Principle | Meaning | |---|---| | Fast feedback | Run the cheapest, fastest checks first - lint and unit tests before integration tests and builds | | Fail early | Stop the pipeline at the first failure - do not waste time on downstream stages when upstream checks fail | | Reproducibility | Every pipeline run with the same inputs must produce the same outputs - pin dependencies, use immutable base images | | Idempotency | Re-running a pipeline stage should be safe and produce the same result | | Isolation | Each pipeline run operates in a clean environment - no shared state between runs | | Security by default | Secrets are injected at runtime, never stored in source - scan for vulnerabilities early |
| Strategy | Downtime | Rollback Speed | Infrastructure Cost | Complexity | Best For | |---|---|---|---|---|---| | Blue-Green | Zero | Instant (traffic switch) | 2x production | Low | Major releases, risk-averse teams | | Canary | Zero | Fast (route traffic back) | 1x + small canary slice | Medium | Data-driven teams, high-traffic services | | Rolling | Zero (if surge configured) | Slow (reverse rollout) | 1x (reuses existing) | Low | Stateless services, frequent small changes | | Recreate | Yes (brief) | Slow (full redeploy) | 1x | Minimal | Dev/staging environments, stateful apps that cannot run two versions | | Feature Flags | Zero | Instant (toggle off) | 1x | Medium | Progressive rollout, A/B testing, trunk-based development |
No single strategy fits every situation. Many teams combine approaches - for example, canary releases with feature flags for granular control over who sees new functionality.
A typical promotion path moves artifacts through increasingly production-like environments:
dev -> staging -> production
Key principles:
| Anti-Pattern | Problem | Fix | |---|---|---| | Rebuilding artifacts per environment | Different binary in staging vs production | Build once, promote the same artifact | | Long-running monolithic pipeline | Slow feedback, developers context-switch | Parallelize stages, split into focused pipelines | | Secrets in source control | Credential leaks, compliance violations | Use a secrets manager, inject at runtime | | Manual environment setup | Configuration drift, "works on my machine" | Infrastructure as code, containerized builds | | No rollback plan | Extended outages when deployments fail | Automate rollback, test it regularly | | Skipping staging | Production-only bugs discovered too late | Always promote through at least one pre-production environment |
| Reference | Contents | |---|---| | Pipeline Design | Pipeline stages, parallelization, caching, monorepo patterns, secrets management with multi-format examples | | Deployment Strategies | Blue-green, canary, rolling deployments, feature flags, zero-downtime migrations, rollback strategies | | Environment Management | Environment promotion, infrastructure as code, ephemeral environments, artifact versioning, health checks |
| Situation | Recommended Skill |
|---|---|
| Monitoring and observability for deployments | Install knowledge-virtuoso from krzysztofsurdy/code-virtuoso for microservices patterns (circuit breakers, health checks) |
| Security scanning in pipelines | Install knowledge-virtuoso from krzysztofsurdy/code-virtuoso for security practices (OWASP, secure coding) |
| Testing strategy for CI pipelines | Install knowledge-virtuoso from krzysztofsurdy/code-virtuoso for testing pyramid and test design |
| API versioning during deployments | Install knowledge-virtuoso from krzysztofsurdy/code-virtuoso for API design and evolution strategies |
development
Spawn and coordinate a pre-composed agent team from a team definition file. Reads team files from teams/, resolves agents and skills, picks the best spawning mode (peer or sequential), and runs the workflow. Use when the user asks to run a team, dispatch a development team, start a feature delivery, or coordinate multiple agents for a multi-phase task.
development
Pre-composed agent team library. Use when the user asks which teams are available, what a team does, when to pick one team over another, or to browse multi-agent compositions. Catalogs ready-to-run teams (development team, review squad, war room) with their purpose, agent roster, workflow type, and when to use each. The actual dispatching is handled by the dispatching-agent-teams skill.
tools
Ecosystem discovery advisor. Use when the user asks 'what skill should I use', 'what agent should I delegate to', 'which team fits this task', or when onboarding to available skills, agents, and teams. Scans ALL installed skills at runtime -- not limited to any single plugin or vendor. Triggers: 'which skill', 'which agent', 'what do I use for', 'orient me', 'what tools do I have'.
tools
Interactive tool to scaffold a complete Claude Code plugin -- plugin.json manifest, skills, agents, hooks, MCP servers, LSP servers, and an optional marketplace.json catalog entry. Use when the user asks to create a plugin, build a Claude Code plugin, scaffold a plugin marketplace, convert an existing .claude/ configuration into a plugin, or package skills and agents for distribution. Runs a guided questionnaire, writes all required files to disk, and prints test instructions.