skills/deployment/SKILL.md
Deploy services to Railway, Vercel, or Netlify. Use when: deploying a new service, updating a deployed service, or debugging deployment issues. Don't use when: local development only. Outputs: deployed URL, health check confirmation, env var checklist.
npx skillsauth add roviq-ai/agency-ops-center deploymentInstall 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.
This skill governs the deployment of applications to production environments (Railway, Vercel, Netlify). It enforces verification steps to prevent "false positives" where infrastructure is up but the app is broken.
For backend services, APIs, and Dockerized apps.
PORT env var)..env files./health or /) returns 200 OK without auth.For frontend apps (Next.js, React, static sites).
npm run build (or equivalent) passes locally.NEXT_PUBLIC_ and server-side keys to Vercel project settings."Deployed" means "User flows work", not just "Service is green".
curl -I [url] to verify 200 OK.Spawn a Playwright agent to test critical user flows immediately after deployment.
Spawn Template:
sessions_spawn({
task: "Test [app-name] deployment at [url]. 1. Sign up a new user. 2. Verify dashboard loads. 3. Take screenshots of success/failure. Report critical bugs immediately.",
label: "qa-deployment-verify",
model: "google-antigravity/gemini-3-pro-high"
})
Use this to ensure no secrets are missing.
| Variable Name | Required? | Present in Prod? | Source | | ------------- | --------- | ---------------- | ------ | | DATABASE_URL | Yes | [ ] | Railway/Supabase | | API_KEY_X | Yes | [ ] | Provider X | | AUTH_SECRET | Yes | [ ] | Generated |
Symptom: Agent says "Deployment complete" because build passed, but app crashes on load or auth loops. Fix: Never mark task complete until E2E test passes.
Symptom: Infinite redirect between / and /login.
Fix: Use routing="hash" or path correctly configured. Ensure middleware matches router guards.
Symptom: Drizzle/Prisma complains about existing tables during migration. Fix: If safe (dev/staging), drop tables and re-run migration. Don't over-engineer schema diffs if a clean slate works.
Symptom: App crashes with "property of undefined" or 500 errors on API calls.
Fix: env | grep [KEY] locally to verify what you think you have. Check dashboard for prod.
Symptom: Sandbox code cannot reach external DB or API. Fix: Use Railway-hosted runners or specific proxies if needed. Don't assume localhost access to remote resources works without config.
tools
Fetches current top trending topics on X (Twitter) for any country using public aggregators.
development
Use when: user needs UX flows, information architecture, design critique, or design-system tokens. Don't use when: building a full static site (use frontend-design-ultimate) or redesigning an existing app (use human-optimized-frontend). Routing tree: "Building new site from scratch?" → frontend-design-ultimate; "Need UX critique or design tokens?" → ui-ux-pro-max; "Redesigning existing frontend with quantified eval?" → human-optimized-frontend; "Need design workflow (wireframe → theme → code)?" → frontend-design (superdesign); "Extracting design from existing codebase?" → frontend-design-extractor
development
Use when: generating a design system from brand colors. Don't use when: need full site build (use frontend-design-ultimate).
development
Use when: building new UI from scratch and need design workflow (layout → theme → animation → code). Don't use when: extracting design from existing code (use frontend-design-extractor) or need full production site (use frontend-design-ultimate). Routing tree: "Building new site from scratch?" → frontend-design-ultimate; "Need UX critique or design tokens?" → ui-ux-pro-max; "Redesigning existing frontend with quantified eval?" → human-optimized-frontend; "Need design workflow (wireframe → theme → code)?" → frontend-design (superdesign); "Extracting design from existing codebase?" → frontend-design-extractor