Skip to content
Back to skills

Gmacko Release Deploy Web

ASecurity

Use when (1) deploying web application to Vercel staging or production, (2) monitoring deployment progress, (3) running post-deployment verification. Manages Vercel deployment workflow with safety checks.

  • 666 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added February 8, 2026
devopsgobashnextjsnodegitapidatabaseperformance

Works with

  • cli
  • api

Security analysis

A100/100

Scanned February 12, 2026

npx -y skills add majiayu000/claude-skill-registry --skill gmacko-release-deploy-web --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Gmacko Release Deploy Web?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Gmacko Release Deploy Web
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/majiayu000-gmacko-release-deploy-web/badge)](https://www.skillsdirectory.com/skills/majiayu000-gmacko-release-deploy-web)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: gmacko-release-deploy-web
description: Use when (1) deploying web application to Vercel staging or production, (2) monitoring deployment progress, (3) running post-deployment verification. Manages Vercel deployment workflow with safety checks.
license: MIT
compatibility: opencode
metadata:
  phase: release
  tier: workhorse
  permission: ask
---

# Gmacko Web Deployment (Vercel)

Deploy the Next.js web application to Vercel with proper verification and rollback planning.

## When to Use

- Release preparation is complete
- Ready to deploy to staging or production
- Need to verify a deployment
- Need to rollback a deployment

## Prerequisites

- Release summary exists: `docs/ai/releases/[date]-v[version].md`
- Vercel CLI authenticated: `vercel whoami`
- Vercel project linked: `vercel link`

## Workflow

```dot
digraph deploy_web {
    rankdir=TB;
    node [shape=box];
    
    start [label="Start Deployment" shape=ellipse];
    confirm_env [label="1. Confirm Environment"];
    pre_checks [label="2. Pre-Deployment Checks"];
    ready [label="Ready?" shape=diamond];
    deploy [label="3. Execute Deployment"];
    monitor [label="4. Monitor Progress"];
    success [label="Success?" shape=diamond];
    verify [label="5. Post-Deploy Verification"];
    healthy [label="Healthy?" shape=diamond];
    document [label="6. Document Deployment"];
    rollback [label="Rollback"];
    done [label="Deployment Complete" shape=ellipse];
    failed [label="Deployment Failed" shape=ellipse];
    
    start -> confirm_env -> pre_checks -> ready;
    ready -> deploy [label="yes"];
    ready -> failed [label="no"];
    deploy -> monitor -> success;
    success -> verify [label="yes"];
    success -> rollback [label="no"];
    verify -> healthy;
    healthy -> document [label="yes"];
    healthy -> rollback [label="no"];
    rollback -> failed;
    document -> done;
}
```

## Execution Steps

### Step 1: Confirm Environment

**CRITICAL**: Always confirm target environment before deployment.

Ask user:
> I'm preparing to deploy to Vercel.
>
> **Target Environment**: [staging/production]
> **Branch**: [current branch]
> **Version**: [version from release summary]
>
> Please confirm:
> 1. Is this the correct environment? (yes/no)
> 2. Have you reviewed the release summary? (yes/no)
> 3. Is this a good time to deploy? (yes/no)

For **production** deployments, require explicit confirmation:
> ⚠️ **PRODUCTION DEPLOYMENT**
>
> This will affect live users. Please type "deploy to production" to confirm.

### Step 2: Pre-Deployment Checks

Run verification before deploying:

```bash
# Check current deployment status
vercel ls --limit 5

# Verify build succeeds locally
pnpm build

# Check for uncommitted changes
git status

# Verify we're on the right branch
git branch --show-current

# Check Vercel project is linked
vercel project ls
```

Checklist:
```markdown
## Pre-Deployment Checklist

- [ ] Build passes locally
- [ ] No uncommitted changes
- [ ] On correct branch
- [ ] Vercel project linked
- [ ] Environment variables verified
- [ ] Database migrations applied (if any)
```

### Step 3: Execute Deployment

**For Staging**:
```bash
# Deploy to preview (staging)
vercel

# Or deploy specific branch
vercel --target preview
```

**For Production**:
```bash
# Deploy to production
vercel --prod

# With specific scope
vercel --prod --scope gmacko
```

Capture deployment URL:
```bash
DEPLOYMENT_URL=$(vercel --prod 2>&1 | grep -o 'https://[^ ]*')
echo "Deployment URL: $DEPLOYMENT_URL"
```

### Step 4: Monitor Progress

Monitor deployment status:

```bash
# List recent deployments
vercel ls --limit 3

# Get deployment status
vercel inspect [deployment-url]

# Watch build logs (if available)
vercel logs [deployment-url] --follow
```

Report progress:
```
Deployment Status
=================
URL: https://my-app-abc123.vercel.app
Status: BUILDING / READY / ERROR
Build Duration: Xs

Build Logs:
[Show relevant log excerpts]
```

### Step 5: Post-Deployment Verification

Run smoke tests on deployed environment:

```markdown
## Smoke Test Checklist

### Critical Paths
- [ ] Homepage loads (< 3s)
- [ ] Sign in works
- [ ] Sign up works
- [ ] Dashboard loads (authenticated)
- [ ] Core feature works

### API Health
- [ ] tRPC endpoints responding
- [ ] Database queries working
- [ ] Auth middleware functioning

### Integrations
- [ ] Clerk authentication
- [ ] Stripe payments (test mode)
- [ ] PostHog tracking
- [ ] Sentry error reporting
```

Check for errors:
```bash
# Check Sentry for new errors
# (Manual: Visit Sentry dashboard)

# Check Vercel logs for errors
vercel logs [deployment-url] --since 5m
```

### Step 6: Document Deployment

Update release summary:

```markdown
## Deployment Record

### Web (Vercel)
- **Deployed at**: [timestamp]
- **Deployment URL**: [url]
- **Deployment ID**: [id]
- **Status**: SUCCESS / FAILED
- **Build time**: [Xs]

### Verification
- Smoke tests: PASSED / FAILED
- Error rate: Normal / Elevated
- Performance: Normal / Degraded

### Notes
[Any observations or issues]
```

Report to user:
```
DEPLOYMENT COMPLETE
===================

Environment: Production
URL: https://app.example.com
Deployment ID: dpl_xxxxx

Smoke Tests: 5/5 PASSED
Error Rate: Normal
Response Time: ~200ms avg

Deployment successful! Monitoring for issues...
```

## Rollback Procedure

If issues detected:

```bash
# List previous deployments
vercel ls --limit 10

# Rollback to previous deployment
vercel rollback

# Or rollback to specific deployment
vercel rollback [deployment-url-or-id]
```

Document rollback:
```markdown
## Rollback Record

- **Rolled back at**: [timestamp]
- **Reason**: [description]
- **Rolled back to**: [deployment-id]
- **Status**: SUCCESS

### Post-Rollback Verification
- [ ] Previous version accessible
- [ ] Core functionality working
- [ ] No data loss
```

## Environment-Specific Notes

### Staging
- Deployed from feature branches or `staging` branch
- Used for QA and demos
- Can have test data

### Production
- Deployed from `main` branch only
- Affects real users
- Requires extra confirmation
- Consider deployment timing (avoid peak hours)

## Error Handling

### Build Failure
1. Check build logs: `vercel logs [url]`
2. Common causes:
   - Type errors (run `pnpm typecheck`)
   - Missing dependencies
   - Environment variable issues
3. Fix locally, push, redeploy

### Runtime Errors
1. Check Sentry dashboard
2. Check Vercel function logs
3. Rollback if critical
4. Fix and redeploy

### Performance Issues
1. Check Vercel Analytics
2. Compare with baseline
3. Identify slow endpoints/pages
4. Consider rollback if severe

## Red Flags

| Rationalization | Correction |
|-----------------|------------|
| "Just push to main, it'll be fine" | Follow full deployment process |
| "Skip smoke tests, build passed" | ALWAYS verify deployed functionality |
| "Production during peak hours is fine" | Deploy during low-traffic periods when possible |
| "Skip confirmation for staging" | Confirm environment for ALL deployments |
| "Rollback isn't necessary" | Always have rollback plan ready |

## Integration

- **Input**: Target environment, version
- **References**: Release summary, deployment history
- **Output**: Updated release record, deployment URL
- **Next**: `gmacko-release-close` or monitor

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.