DigitalOcean Deployment Audit

VerifiedCaution

Diagnose and verify deployment health on DigitalOcean and Vercel by analyzing crash logs, validating environment variables, and identifying runtime issues.

Sby Skills Guide Bot
DevOpsIntermediate
3/9/2026
Claude Code
#deployment#digitalocean#environment-variables#vercel#troubleshooting

Recommended for

Automated summary

This skill audits the deployment health of a DigitalOcean and Vercel-hosted Next.js app (Unite-Hub / Synthex) by pulling crash logs, cross-checking environment variables, and producing a health report.

Strengths

  • Gives exact doctl commands to list apps and pull run_restarted logs
  • Cross-compares environment variables across .env.local, Vercel and the DigitalOcean app spec to surface mismatches
  • Writes structured, versioned outputs to docs/audit/DEPLOYMENT_HEALTH.md and AUDIT_ISSUES_REGISTRY.json
  • Ships a troubleshooting playbook for common failures (missing module, invalid env var, memory limit, database timeout) with fixes

Limitations

  • Tightly coupled to the Unite-Hub / Synthex stack (Supabase, NextAuth, Stripe), so it is not portable as-is
  • Assumes doctl or the DigitalOcean MCP is already installed and authenticated
  • Suggests manual fixes but does not automate remediation or redeployment
When to use it

Use it when a deployment fails, restarts in a loop, or before a release to confirm environment consistency and runtime health.

When not to use it

Avoid it for projects hosted outside DigitalOcean/Vercel or when bootstrapping a CI/CD pipeline from scratch.

Security analysis

Caution
Quality score74/100

No destructive, exfiltration, or obfuscated instructions are present; commands are read-only deployment diagnostics. However, the skill directs an agent to read secret environment variables, execute npm build scripts, and make network/cloud CLI calls, which is legitimate but carries real execution and secret-exposure risk. It should include explicit guidance to mask secret values in outputs.

Findings
  • •Reads `.env.local` and compares secret-bearing variables (SUPABASE_SERVICE_ROLE_KEY, NEXTAUTH_SECRET, STRIPE_SECRET_KEY, API keys) without instructing that values be redacted from the generated `docs/audit/DEPLOYMENT_HEALTH.md` summary
  • •Runs `npm run build`, which can execute project-defined lifecycle scripts and arbitrary code from the repository
  • •Invokes `doctl` CLI commands and pings external API endpoints, involving network access and cloud credentials
  • •The description references DigitalOcean MCP tools that are not included in the declared `allowed-tools` list, creating ambiguity about what may be executed
How this analysis is made

Examples

Diagnose a crash loop
My Synthex app on DigitalOcean keeps restarting. Pull the run_restarted logs and tell me what's crashing.
Check env parity before release
Audit the environment variables across .env.local, Vercel and the DigitalOcean app spec and flag any mismatches before we ship.
Full deployment health report
Run a full deployment audit for Unite-Hub and write the summary to docs/audit/DEPLOYMENT_HEALTH.md with issues in AUDIT_ISSUES_REGISTRY.json.

name: deployment-audit-skill description: Use DigitalOcean MCP and related tools to check deployment health, crash logs, environment consistency, and runtime issues for Unite-Hub / Synthex. Use when diagnosing deployment failures or verifying readiness. allowed-tools: Run, Read

Deployment Audit Skill

Purpose

Continuously monitor and troubleshoot deployments on DigitalOcean and Vercel for Synthex / Unite-Hub.

Typical Tasks

  1. Retrieve crash logs via DO CLI / MCP
    • doctl apps list
    • doctl apps logs <app-id> --type=run_restarted
    • doctl apps logs <app-id> <component> --type=run_restarted
  2. Check environment variable consistency across:
    • .env.local
    • Vercel project settings
    • DigitalOcean app spec
  3. Validate:
    • Correct Supabase URLs and keys
    • Correct Stripe keys (test vs live)
    • Correct callback/redirect URLs

Output

  • Human-readable audit summary in docs/audit/DEPLOYMENT_HEALTH.md
  • Issue entries in docs/audit/AUDIT_ISSUES_REGISTRY.json

Environment Checklist

Required Variables

NEXT_PUBLIC_SUPABASE_URL
NEXT_PUBLIC_SUPABASE_ANON_KEY
SUPABASE_SERVICE_ROLE_KEY
NEXTAUTH_URL
NEXTAUTH_SECRET
GOOGLE_CLIENT_ID
GOOGLE_CLIENT_SECRET
ANTHROPIC_API_KEY

Optional Variables

STRIPE_SECRET_KEY
STRIPE_WEBHOOK_SECRET
SENDGRID_API_KEY
RESEND_API_KEY
SEMRUSH_API_KEY
DATAFORSEO_LOGIN
DATAFORSEO_PASSWORD

Health Check Process

Step 1: Environment Sync

Compare variables across:

  • Local .env.local
  • Vercel environment variables
  • DigitalOcean app spec

Flag mismatches.

Step 2: Build Verification

  • Run npm run build
  • Check for TypeScript errors
  • Check for missing dependencies
  • Verify all routes compile

Step 3: Runtime Validation

  • Check recent deploy logs
  • Look for crash patterns
  • Identify memory/CPU spikes
  • Flag slow endpoints

Step 4: API Health

  • Ping key API endpoints
  • Verify authentication works
  • Check database connectivity
  • Validate external service connections

Common Issues & Fixes

Issue: "Module not found"

Cause: Missing dependency Fix: npm install <module>

Issue: "Invalid environment variable"

Cause: Variable not set or wrong format Fix: Check .env.local and deployment settings

Issue: "Memory limit exceeded"

Cause: Heavy computation or memory leak Fix: Optimize code, increase limit, or add caching

Issue: "Database connection timeout"

Cause: Too many connections or network issue Fix: Enable connection pooling, check Supabase status

From the file to a first result

The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.

View the source and supporting files

This download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.

1. Download the file

Download SKILL.md

From the root of a test project, save the file as .skill-downloads/digitalocean-deployment-audit-mmio7161/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.

Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.

mkdir -p '.skill-downloads/digitalocean-deployment-audit-mmio7161' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/digitalocean-deployment-audit-mmio7161/download' --output '.skill-downloads/digitalocean-deployment-audit-mmio7161/SKILL.md.part' && mv '.skill-downloads/digitalocean-deployment-audit-mmio7161/SKILL.md.part' '.skill-downloads/digitalocean-deployment-audit-mmio7161/SKILL.md'

2. Check prerequisites

Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.

Tools declared by the author (check availability in your agent): Run, Read

No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.

The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.

3. Load the skill

After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.

Claude Code
test -f '.skill-downloads/digitalocean-deployment-audit-mmio7161/SKILL.md' && test -s '.skill-downloads/digitalocean-deployment-audit-mmio7161/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/deployment-audit-skill' && cp -R '.skill-downloads/digitalocean-deployment-audit-mmio7161' '.claude/skills/deployment-audit-skill'

OpenSkills

OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.

Official OpenSkills installation
openskills install './.skill-downloads/digitalocean-deployment-audit-mmio7161'

openskills read 'digitalocean-deployment-audit-mmio7161'

Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.

For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.

openskills sync

Manual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.

4. Try a first task

Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:

Read .skill-downloads/digitalocean-deployment-audit-mmio7161/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.

Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.

Related skills