skills/b-open-io/prompts/devops-scripts

devops-scripts

SKILL.md

DevOps Scripts

Mechanical infrastructure checks are handled by scripts. The agent's job is to run them and act on the structured JSON they return — not to reinvent connectivity probes inline.

Scripts

health-check.sh — Service Connectivity

Checks Vercel deployment status, Railway project status, Redis connectivity, and PostgreSQL connectivity. Each service is checked independently; missing CLI tools produce an informative JSON error rather than crashing the script.

bash <skill-path>/scripts/health-check.sh

Reads from environment:

  • REDIS_URL — defaults to redis://localhost:6379
  • DATABASE_URL — defaults to postgresql://localhost:5432/dev
  • VERCEL_ORG_ID — optional, scopes the vercel ls check

Returns JSON:

{
  "overall": "ok",
  "services": {
    "vercel":   { "status": "ok",           "error": "" },
    "railway":  { "status": "missing_tool", "error": "railway CLI not found — install with: bun add -g @railway/cli" },
    "redis":    { "status": "ok",           "error": "" },
    "postgres": { "status": "error",        "error": "Connection refused" }
  }
}
status value Meaning
ok Service responded successfully
error CLI found but check failed — read error for details
missing_tool CLI not installed — error contains install instructions
skipped Not reached (should not appear in normal output)

Act on results:

  • overall: "ok" — all checked services healthy, proceed
  • overall: "error" — at least one service failed; read the error field and fix before deploying
  • Any missing_tool — tell the user which CLI to install; do not block deployment for unrelated services

verify-env.sh — Environment Variable Validation

Takes a list of variable names as arguments. Reports which are set and which are missing.

bash <skill-path>/scripts/verify-env.sh REDIS_URL DATABASE_URL VERCEL_TOKEN BSV_PRIVATE_KEY

Returns JSON:

{
  "all_set": false,
  "present": ["REDIS_URL", "DATABASE_URL"],
  "missing": ["VERCEL_TOKEN", "BSV_PRIVATE_KEY"]
}

Use this before any deployment or migration. If all_set is false, report each missing variable and where to set it (Vercel dashboard, Railway variables, or .env.local) — then stop. Do not proceed with a deployment that is missing required secrets.

When to Use Each Script

Situation Script
Pre-deploy smoke check Both — verify env first, then health-check
Diagnosing a broken staging environment health-check.sh
Setting up a new environment verify-env.sh with the project's required vars
Post-deploy validation health-check.sh
CI pre-flight gate verify-env.sh with secrets the pipeline needs

Typical Workflow

1. Run verify-env.sh with required vars → confirm all_set: true
2. Run health-check.sh → confirm overall: "ok"
3. Deploy
4. Run health-check.sh again post-deploy → confirm services still healthy

If any step produces an error, fix it before continuing. These scripts never retry or fall back silently — a clear failure now prevents a silent failure in production.

Weekly Installs
1
GitHub Stars
8
First Seen
6 days ago
Installed on
windsurf1
amp1
cline1
opencode1
cursor1
kimi-cli1