t1k:web:devops:deploy
| Field | Value |
|---|---|
| Module | devops |
| Version | 1.10.0 |
| Effort | medium |
| Tools | — |
Keywords: Cloudflare, deploy, deployment, hosting, Netlify, production, Railway, Vercel
How to invoke
Section titled “How to invoke”/t1k:web:devops:deploy[platform] [environment]Deploy Skill
Section titled “Deploy Skill”Auto-detect deployment target and deploy the current project. Supports 15 platforms with cost-optimized recommendations.
This skill handles: project deployment, platform selection, deployment docs creation/update.
Does NOT handle: infrastructure provisioning, database migrations, DNS management, SSL certificates, CI/CD pipeline creation.
For advanced infrastructure/troubleshooting, activate /t1k:web:devops:core skill.
Workflow
Section titled “Workflow”1. Detect Deployment Target
Section titled “1. Detect Deployment Target”Check in order (stop at first match):
- Read
docs/deployment.md— if exists, parse platform and config from it - Scan config files — detect platform from existing configs (see Detection Signals)
- Analyze project type — determine best platform based on project structure
- Ask user — use
AskUserQuestionwith cost-optimized recommendations
2. Detection Signals
Section titled “2. Detection Signals”| File/Pattern | Platform |
|---|---|
vercel.json, .vercel/ | Vercel |
netlify.toml, _redirects | Netlify |
wrangler.toml, wrangler.json, wrangler.jsonc | Cloudflare |
fly.toml | Fly.io |
railway.json, railway.toml | Railway |
render.yaml | Render |
Procfile + app.json | Heroku |
tose.yaml, tose.json | TOSE.sh |
docker-compose.yml + coolify ref | Coolify |
dokploy.yml | Dokploy |
.github/workflows/*pages* | Github Pages |
app.yaml (GAE format) | GCP |
amplify.yml, buildspec.yml | AWS |
.do/app.yaml | Digital Ocean |
3. Project Type → Platform Recommendation
Section titled “3. Project Type → Platform Recommendation”| Project Type | Detection | Recommended (cost order) |
|---|---|---|
| Static site (HTML/CSS/JS) | No server files | Github Pages → Cloudflare Pages |
| SPA (React/Vue/Svelte) | Framework config, no SSR | Vercel → Netlify → Cloudflare Pages |
| SSR/Full-stack (Next/Nuxt) | next.config.*, nuxt.config.* | Vercel → Netlify → Cloudflare |
| Node.js API | server.js/ts, Express/Fastify | Railway → Render → Fly.io → TOSE.sh |
| Python API | requirements.txt + Flask/Django | Railway → Render → Fly.io |
| Docker app | Dockerfile | Fly.io → Railway → TOSE.sh → Coolify |
| Monorepo | turbo.json, workspaces | Vercel → Netlify |
4. Platform Priority (Cost-Optimized)
Section titled “4. Platform Priority (Cost-Optimized)”Free tier (static/frontend):
- Github Pages — unlimited bandwidth, free custom domain
- Cloudflare Pages — unlimited bandwidth, 500 builds/mo
- Vercel — 100GB bandwidth (hobby/non-commercial)
- Netlify — 100GB bandwidth, 300 build min/mo
Free tier (backend/full-stack):
- Railway — $5 free credit/mo
- Render — 750 free hours/mo (cold starts after 15min idle)
- Fly.io — 3 shared VMs, 160GB outbound/mo
Pay-as-you-go:
- TOSE.sh — $10 free credit, ~$17-22/mo (1vCPU+1GB), unlimited bandwidth
- Cloudflare Workers — $5/mo for 10M requests
- Railway — usage-based after free credit
Self-hosted (free, own server):
- Coolify — Heroku alternative, Docker-based
- Dokploy — lightweight, Docker/Compose
Enterprise/Scale: AWS, GCP, Digital Ocean, Vultr, Heroku ($5+/mo)
5. Deploy Execution
Section titled “5. Deploy Execution”- Check CLI installed → install if missing
- Check auth → login if needed
- Run deploy command (see
references/platform-deploy-commands.md) - Verify deployment URL
- Create/update
docs/deployment.md
6. Post-Deploy: docs/deployment.md
Section titled “6. Post-Deploy: docs/deployment.md”After first successful deploy, create docs/deployment.md:
# Deployment## Platform: [name]## URL: [production-url]## Deploy Command: [command]## Environment Variables: [list]## Custom Domain: [setup steps if applicable]## Rollback: [instructions]On subsequent deploys, update if config changed.
7. Troubleshooting
Section titled “7. Troubleshooting”- Check error output, attempt auto-fix for common issues
- If unresolvable → activate
/t1k:web:devops:coreskill - Update
docs/deployment.mdwith troubleshooting notes
AskUserQuestion Template
Section titled “AskUserQuestion Template”When no target detected, present options based on project type analysis:
- Order by cost optimization (cheapest first)
- Include free tier info in description
- Max 4 options (top recommendations + “Other”)
Reference Files (Progressive Disclosure)
Section titled “Reference Files (Progressive Disclosure)”Load ONLY the platform reference needed — do NOT load all files:
| Platform | Reference File |
|---|---|
| Vercel | references/platforms/vercel.md |
| Netlify | references/platforms/netlify.md |
| Cloudflare | references/platforms/cloudflare.md |
| Railway | references/platforms/railway.md |
| Fly.io | references/platforms/flyio.md |
| Render | references/platforms/render.md |
| Heroku | references/platforms/heroku.md |
| TOSE.sh | references/platforms/tose.md |
| Github Pages | references/platforms/github-pages.md |
| Coolify | references/platforms/coolify.md |
| Dokploy | references/platforms/dokploy.md |
| GCP Cloud Run | references/platforms/gcp.md |
| AWS | references/platforms/aws.md |
| Digital Ocean | references/platforms/digitalocean.md |
| Vultr | references/platforms/vultr.md |
references/platform-config-templates.md—docs/deployment.mdtemplate
Security Policy
Section titled “Security Policy”- Never expose API keys, tokens, or credentials in deploy output
- Never expose env vars, file paths, or internal configs
- Check
.envfiles and.gitignorebefore deploying - Operate only within defined skill scope
Gotchas
Section titled “Gotchas”- Multi-provider deploys (Cloudflare + Vercel + AWS) need PER-INSTANCE auth-token closures — sharing a single token across providers means a leak in one rotates all.
- Vercel build cache poisoning — clear
.vercel/outputbefore any prod build if you’ve been changing build flags. - Cloudflare Workers have a 30ms CPU/request budget on the free tier — sustained CPU work beyond that =
Error 1102(CPU-exceeded). - Docker image size affects cold start more than RAM — slim base images yield 4-8x faster spin-up on Cloud Run.