Get Started in Minutes
Quick Start Tutorials
Step-by-step guides for the most common @waiyat/devops workflows. Pick a tutorial and follow along.
Run Your First Preflight Check
30 seconds
Scan your repository for CI/CD readiness, security gaps, and configuration issues.
Steps
- 1Open your terminal in any repository.
- 2Run: <code>npx @waiyat/devops@latest check</code>
- 3Review the 0-100 health score across 6 categories.
- 4Run: <code>npx @waiyat/devops@latest fix</code> to auto-heal safe issues.
Expected Output
Terminal
๐ Running DevOps Pre-Flight Diagnostics...
โ
Package manifest detected
โ
Git version control initialized
โ
Package Manager: pnpm
โ
TypeScript configured
โ
Dockerfile present
HEALTH SCORE: 74/100 [NEEDS ATTENTION]
Recommended: Run 'npx @waiyat/devops@latest fix'Scaffold CI/CD in One Command
1 minute
Generate a production-ready GitHub Actions workflow for your project stack.
Steps
- 1Detect your stack: <code>npx @waiyat/devops@latest check</code>
- 2Scaffold workflow: <code>npx @waiyat/devops@latest init --template nextjs</code>
- 3Preview before writing: add <code>--dry-run</code> flag
- 4Commit the generated <code>.github/workflows/ci.yml</code>
Expected Output
Terminal
๐ @waiyat/devops CLI - Centralized DevOps & CI/CD Automation Engine
โ๏ธ Detecting project environment...
โ Framework: Next.js (App Router)
โ Package Manager: pnpm
โ Node.js Target: v22
๐ Generating .github/workflows/ci.yml using template 'nextjs'...
โ Injected uses: Waiyat/devops/.github/workflows/reusable-ci.yml@main
โจ Successfully created .github/workflows/ci.ymlAudit & Harden Your Dockerfile
45 seconds
Check Dockerfiles for non-root users, multi-stage builds, and security best practices.
Steps
- 1Run: <code>npx @waiyat/devops@latest docker check</code>
- 2Review findings: non-root USER, missing healthcheck, etc.
- 3Fix: <code>npx @waiyat/devops@latest fix --issue docker</code>
- 4Or scaffold a hardened Dockerfile: <code>npx @waiyat/devops@latest docker init</code>
Expected Output
Terminal
๐ณ Auditing Dockerfile...
โ Container Least Privilege: Runs as root
โ Multi-stage Build: Single stage detected
โ Healthcheck: Missing HEALTHCHECK instruction
โ .dockerignore: File not present
Run 'npx @waiyat/devops@latest fix --issue docker' to auto-healGenerate CycloneDX SBOM
30 seconds
Create a software bill of materials for supply chain transparency and compliance.
Steps
- 1Run: <code>npx @waiyat/devops@latest sbom --json</code>
- 2Review the JSON output with package names, versions, and purls.
- 3Save to file: <code>npx @waiyat/devops@latest sbom --json > sbom.json</code>
- 4Attach sbom.json to your CI artifacts or release.
Expected Output
Terminal
{
"bomFormat": "CycloneDX",
"specVersion": "1.5",
"components": [
{ "name": "react", "version": "18.2.0", "purl": "pkg:npm/react@18.2.0" },
{ "name": "next", "version": "14.2.0", "purl": "pkg:npm/next@14.2.0" }
]
}Run DevSecOps Security Audit
1 minute
Scan for secrets, vulnerabilities, and policy compliance issues.
Steps
- 1Run: <code>npx @waiyat/devops@latest security</code>
- 2Check for leaked secrets: <code>npx @waiyat/devops@latest secrets</code>
- 3Audit dependencies: <code>npx @waiyat/devops@latest audit</code>
- 4Review policy: <code>npx @waiyat/devops@latest policy</code>
Expected Output
Terminal
๐ DevSecOps Security Audit
[SECRETS] No high-entropy secrets detected
[VULNERABILITIES] 2 moderate, 0 critical
[POLICY] Branch protection: Enabled
[POLICY] License compliance: MIT (approved)
Repository is security-compliant.Common Patterns
Copy-Paste Recipes
CI Pipeline with Security
yaml
name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
ci:
uses: Waiyat/devops/.github/workflows/reusable-ci.yml@main
with:
node-version: '22'
package-manager: 'pnpm'
security:
needs: ci
uses: Waiyat/devops/.github/workflows/reusable-security.yml@mainDocker CD Pipeline
yaml
name: Container CD
on:
push:
tags: ['v*.*.*']
jobs:
docker:
uses: Waiyat/devops/.github/workflows/reusable-cd-docker.yml@main
with:
image-name: 'ghcr.io/org/app'
platforms: 'linux/amd64,linux/arm64'Preflight in PR
yaml
name: PR Checks
on: pull_request
jobs:
check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: npx @waiyat/devops@latest check --pr
- run: npx @waiyat/devops@latest fix --dry-runSBOM in Release
yaml
name: Release
on:
push:
tags: ['v*.*.*']
jobs:
sbom:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: npx @waiyat/devops@latest sbom --json > sbom.json
- uses: actions/upload-artifact@v4
with:
name: sbom
path: sbom.json