Deploy prod
Open-source AI front office for local service businesses: AI receptionist (voice/SMS/chat) + website + CRM + booking. Self-hostable or $29/mo flat. The open-source GoHighLevel alternative.
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
- 16 stars16 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
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.
SKILL.md
2.4 KB, 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).