deployment
Skill4 starsChanged 32 days agoMITView on GitHub
This skill should be used when shipping an app to production — setting up CI/CD, deploys, preview environments, error monitoring, environment separation, or rollback. Trigger phrases include "deploy this", "set up CI/CD", "GitHub Actions", "add error tracking", "set up Sentry", "monitor production", "staging environment", "environment variables per environment", "how do I roll back", "preview deploys", "ship to production", "feature flags". It leans on what Vercel gives for free and adds only the missing pieces: a CI gate, Sentry, env hygiene, and a rollback plan.
- Reads credentials
33 other projects use a version of this.
Adopted by
Most recently taken up by
- artivilla/agent-skillstheir own version, first seen Nov 8, 2026
- vijaysuperpositionist/skillstheir own version, first seen Nov 1, 2026
- CrowdStrike/fusion-skillstheir own version, first seen Oct 30, 2026
- bmcszk/agent-skillstheir own version, first seen Oct 29, 2026
- microsoft/frontier-ghcp-ttt-rvastheir own version, first seen Oct 25, 2026
- SwastikPandey1024/agentic-engineering-ostheir own version, first seen Oct 20, 2026
Used with
Projects with it also use dependency-management, database and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
dkprogSkilldependency-management
Apply when wiring dependencies, integrating external services, or designing interfaces between modules. Ensures loose coupling through dependency injection, interface segregation, and proper abstraction boundaries.
Also in 3 projects that use this
mijunriSkilldatabase
数据库脚本与操作规范。脚本放在 db_scripts 目录,遵循查询优化、事务、安全等实践。
Also in 3 projects that use this
BlockSkilldebugging
Debugging guidelines and best practices
Also in 6 projects that use this
AnthropicSkilldocumentation
Write and maintain technical documentation. Trigger with "write docs for", "document this", "create a README", "write a runbook", "onboarding guide", or when the user needs help with any form of technical writing — API docs, architecture docs, or operational runbooks.
Also in 5 projects that use this
AnthropicSkillarchitecture
Create or evaluate an architecture decision record (ADR). Use when choosing between technologies (e.g., Kafka vs SQS), documenting a design decision with trade-offs and consequences, reviewing a system design proposal, or designing a new component from requirements and constraints.
Also in 5 projects that use this
pproencaSkillrefactoring
Code refactoring best practices based on Martin Fowler's catalog and Clean Code principles. This skill should be used when refactoring existing code, improving code structure, reducing complexity, eliminating code smells, or reviewing code for maintainability. Triggers on tasks involving extract method, rename, decompose conditional, reduce coupling, or improve readability.
Also in 3 projects that use this
Other versions33 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 33
- NVIDIA/TensorRT-Model-Optimizer★ 5.6ksame name
- NVIDIA/Model-Optimizer★ 5.6ksame name
- matrixorigin/Memoria★ 624same name
- StarRocks/starrocks-debug-skills★ 77same name
- nahid-sparktales/agent-dispatcher★ 59same name
- digitalocean-labs/do-app-platform-skills★ 38same name
- CrowdStrike/fusion-skills★ 29same name
- manu14357/Zelaxy★ 15same name
- DojoCodingLabs/code-sensei★ 14same name
- binnicordova/expo-boilerplate★ 11same name
23 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository21 other files it gives its agents.
- accessibilitySkill
- ai-featuresSkill
- api-designSkill
- architecture-primerSkill
- authSkill
- data-modelingSkill
- design-taste-frontendSkill
- frontend-performanceSkill
- image-to-codeSkill
- integrationsSkill
- landing-pageSkill
- multi-tenancySkill
- paymentsSkill
- pre-ship-securitySkill
- product-discoverySkill
- pwaSkill
- rls-auditSkill
- saas-routerSkill
- secure-codingSkill
- technical-seoSkill
- ui-designSkill
The file
We split this skill into the rules it gives an agent
8 rules. 0 are common, 4 are distinctive, and 4 are very specific to this project.
0
Common
Most of the 29 edited versions we read keep these.
4
Distinctive
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 15
Do you have automated tests / typecheck to gate merges on?
- Distinctive: line 16
Do you need a separate staging environment, or are preview deploys enough?
- Very specific: line 22
Only script a CI-driven deploy (vercel pull → vercel build → vercel deploy --prebuilt) if you must deploy *after* CI in one pipeline, or …
- Very specific: line 27
Create .github/workflows/ci.yml that runs on pull_request:
- Very specific: line 67
Gotcha: after a rollback, prod auto-assignment is off — new pushes to main won't go live until you vercel promote <good>.
- Very specific: line 69
Risky launch?: Use Vercel Rolling Releases (staged %) or a feature flag (the flags SDK / OpenFeature) to ship code dark and flip it without …
- Distinctive: line 79
Confirm analytics still records a visit: after any change to headers or rewrites.
- Distinctive: line 88
Write the rollback: before applying.
“Common” is measured: kept by at least 6 in 10 of the 29 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Deployment
This skill ships your app without over-building DevOps. The key insight: Vercel already does ~80% of CI/CD and rollback for free. The skill teaches what's free, then adds the thin layer Vercel doesn't give you.
Analogy: Vercel is a modern car with airbags, ABS, and a backup camera built in. You don't bolt on your own brakes — you learn the controls, then add the one thing it lacks (a dashcam, i.e. error monitoring).
Discovery (max 3 questions, only if unknown)
- Is the repo already connected to Vercel (or another host)?
- Do you have automated tests / typecheck to gate merges on?
- Do you need a separate staging environment, or are preview deploys enough?
Step 1 — Deploys & previews (mostly free)
- Connect the repo to Vercel once via the dashboard. After that: every push to a non-main branch gets an automatic Preview URL; every merge to
mainauto-deploys Production. Novercel deployin CI needed for the happy path. - The preview URL is your review environment — reviewers test the real deployed build on each PR, not a local guess.
- Only script a CI-driven deploy (
vercel pull→vercel build→vercel deploy --prebuilt) if you must deploy after CI in one pipeline, or for a non-connected repo. For a solo dev, native Git integration is less to maintain. - Backend / full-stack on InsForge: if the backend lives on InsForge (see the
data-modelingskill), the agent deploys edge functions, runs migrations, and can deploy the frontend through theinsforge-cliskill — one place, agent-operated. Vercel still fits the frontend if you prefer the most-proven host; choose by the same agentic-native vs mature-ecosystem rule. The CI gate, Sentry, env hygiene, and rollback steps below apply either way — they're host-independent.
Step 2 — Add a CI quality gate (the missing piece)
Create .github/workflows/ci.yml that runs on pull_request:
on: pull_request
jobs:
ci:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with: { node-version: 20, cache: npm }
- run: npm ci
- run: npm run lint
- run: npx tsc --noEmit
- run: npm test
- run: npm run build- Pin actions to a major tag (
@v4), never@main— reproducibility + supply-chain safety. - Enable branch protection on
main: require this workflow to pass before merge. That's what makes the gate real.
Step 3 — Error monitoring (Sentry, with verified source maps)
- Install
@sentry/react(runtime) and@sentry/vite-plugin(build-time source map upload). - Init early in
src/main.tsx, before render, withdsn: import.meta.env.VITE_SENTRY_DSN,environment: import.meta.env.MODE, and atracesSampleRate(~0.1). - Readable stack traces require source maps: set
build.sourcemap: trueand addsentryVitePlugin({ org, project, authToken })as the last Vite plugin.SENTRY_AUTH_TOKENis build-time only — neverVITE_-prefixed. - Alert on new + regression issues, not every event (default alerting is noisy).
- Verify once: throw a deliberate error in a preview deploy and confirm a readable stack trace appears in Sentry.
- Free telemetry:
@vercel/analytics+@vercel/speed-insightsrender in the root for pageviews + Core Web Vitals. Add an UptimeRobot check on the homepage for "whole site down" (which client-side Sentry can't report).
Step 4 — Environment variables per environment
- Vercel gives three scopes: Development, Preview, Production. "Staging" = a Custom Environment or a branch-scoped Preview var.
VITE_is the security boundary — only those vars reach the browser. Secrets must not carry it.- Local:
.env.local(git-ignored) + a committed.env.example. Mark secrets Sensitive (vercel env add NAME production --sensitive). - Keep variable names identical across envs, change only values.
vercel pull --environment=previewsyncs them down;vercel env lsaudits drift — the #1 cause of "works in preview, breaks in prod."
Step 5 — Rollback plan
- Instant Rollback is the default safety net (zero setup): dashboard → pick a previous good prod deploy → re-aliases in seconds, no rebuild. CLI:
vercel rollback <id>. - Gotcha: after a rollback, prod auto-assignment is off — new pushes to
mainwon't go live until youvercel promote <good>. git revertis the durable fix — rollback changes routing, not code; revert the bad commit so the next deploy is clean.- Risky launch? Use Vercel Rolling Releases (staged %) or a feature flag (the
flagsSDK / OpenFeature) to ship code dark and flip it without redeploying. Decision: small bug → instant rollback + revert; risky launch → rolling release or flag.
Step 6 — After every release, check the live thing
"Committed" and "deployed" are different states, and "deployed" and "working" are too. Each of these takes under a minute:
- Request the real URL of what you just shipped. Pages have returned 404 for weeks because the file existed and the deploy never ran.
- Compare deployed server functions with the repo — on a BaaS they ship by a separate command.
- Load secrets with
printf '%s', neverecho, and scan for trailing newlines:vercel env pull out.txt --environment production && grep '\\n"' out.txt. - Rebuild after changing a build-time variable (
VITE_*,NEXT_PUBLIC_*). - Confirm analytics still records a visit after any change to headers or rewrites.
- List every project and origin still connected to the repo, CORS and auth redirects; remove the dead ones.
Step 7 — Releasing without a staging environment
Many small products have only production. That is workable with discipline:
- Split migrations: additive first → deploy code → restrictive last.
- Rehearse inside
BEGIN … ROLLBACKagainst the real database. - Write the rollback before applying.
- Tests that touch production create their own data and credentials, clean up in
finally, and verify the cleanup. - Back up irreplaceable data to different infrastructure, with a job that aborts on an empty export.
Field notes
references/field-notes.md holds 21 deploy failures from production apps. The three that cost the most:
- Nine production variables ending in an invisible newline: payments dead, sitemap split.
- A product taking payments with its legal pages returning 404.
- Analytics silently off for 22 days after a header change.
Output
Deliver: the ci.yml, branch-protection instructions, the Sentry init + Vite plugin config, the env-scope plan, and a written rollback runbook.
Reference
actions/checkout + actions/setup-node, Vercel for GitHub / Instant Rollback / Rolling Releases docs, getsentry/sentry-javascript (~8.5k⭐), @sentry/vite-plugin, flags SDK / OpenFeature, InsForge deploy (agentic-native full-stack, via insforge-cli).
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

