Deploy prod
Deploy main to Vercel production the safe way (clean worktree, env baked in) and smoke it with Reelier at Level 0 — zero tokens. Use after any merge to main; Vercel git integration does NOT reliably auto-deploy main.From its SKILL.md
npx -y skills add seldonframe/seldonframe --skill deploy-prodAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- runs commandsInstructs the agent to run 8 commands, including `git fetch origin main` and 7 more.
SKILL.md
2.4 KB, 564 tokens by cl100k_base, as published. Nobody here has run it
deploy-prod — clean-worktree deploy + Reelier smoke
Vercel's git integration does not reliably auto-deploy main (verified 2026-07-18), and deploying from the dirty local checkout is forbidden. This is the canonical sequence.
Steps
- Get the merge sha:
git fetch origin mainand note the commit to deploy. - Clean worktree deploy (env vars are baked at build, so this also picks up flag changes):
git worktree add "$env:TEMP\sf-main-deploy" <sha> Copy-Item .vercel "$env:TEMP\sf-main-deploy\.vercel" -Recurse -Force Set-Location "$env:TEMP\sf-main-deploy"; npx vercel deploy --prod - Verify:
npx vercel inspect <deployment-url>→target production+status Ready. - Smoke with Reelier (default — NOT the smoke-runner agent):
Level-0 deterministic replay: ~1-3s, 0 LLM tokens, per-step receipts inSet-Location C:\Users\maxim\CascadeProjects\reelier node dist/cli.js run skills/sf-post-deploy-smoke.skill.md.reelier/runs/. Exit 0 = deploy smoked. This replaces a ~35-60k-token smoke-runner agent dispatch. - Escalation only on divergence: if a step fails, do NOT immediately re-run — a failed
sentinel usually means the page copy changed (update the skill's assert) or the deploy
is genuinely broken (check
npx vercel logs). Dispatch the smoke-runner agent ONLY when the reelier failure needs judgment (e.g. deciding whether copy drift is intentional). - If the deploy touched migrations: verify on Neon that the new table/column exists
(
information_schema) — the build runsdb:migrate, but confirm, don't assume. - Clean up:
git worktree remove "$env:TEMP\sf-main-deploy" --force; git worktree prune.
Why Reelier-first
Deterministic replay with assertions IS the smoke test: same checks every time, receipts
written, zero spend. The agent is the escalation path, not the default — the same
L0-first/escalate-on-divergence ladder the replay product itself uses. When the smoke
skill's sentinels drift because marketing copy changed, updating the assert line in
reelier/skills/sf-post-deploy-smoke.skill.md is the fix (and gets a changelog line).
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.
Gives 0 of the 12 instructions most ship operate skills give in 564 tokens
Counted across 1,077 of the 1,713 authors here whose files we hold, read 2026-09-06
- Create GitHub releasein 44 of 1077, across 43 files
- Run the test suitein 30 of 1077, across 25 files
- Create and push git tagin 27 of 1077, across 26 files
- Push commits and tagsin 27 of 1077
- Create annotated tagin 25 of 1077, across 22 files
- Ensure working tree is cleanin 24 of 1077
- Check for product marketing context firstin 23 of 1077, across 6 files
- Commit version bump changesin 22 of 1077, across 21 files
- Update CHANGELOG.mdin 21 of 1077, across 20 files
- Structure launch marketing across three channel typesin 20 of 1077, across 5 files
- Commit and tag the releasein 20 of 1077, across 18 files
- Update the CHANGELOG for new releasesin 19 of 1077
Said here and by no other author read
- Copy vercel configuration
- Inspect the Vercel deployment
- Smoke test with Reelier
- Verify migrations on Neon
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.