Deployment
Supabase Project
Current Supabase project ref:
fvngkfrmienkltuwtoxa
Project config lives in:
sable-agents-demo/supabase/config.toml
Migrations
Add a new migration under sable-agents-demo/supabase/migrations/, test it, and submit it in a PR.
After merge, .github/workflows/sable-migrate.yml applies committed migrations to production when its
path gate and required repository secrets are satisfied. Do not run production db push from a
workstation.
Edge Functions
Submit changed functions and supabase/config.toml in a PR. After merge,
.github/workflows/sable-deploy.yml deploys the checked-in function set when its path gate and required
repository secrets are satisfied. Do not deploy an Edge Function from a workstation.
fathom-webhook and spine-mcp must be deployed with JWT verification disabled. Fathom
authenticates with signed webhook headers; spine-mcp is dialed by the SABLE Claude Managed Agent
with a static bearer (SPINE_MCP_TOKEN) from its vault — neither is a Supabase JWT, and each function
enforces its own auth. If spine-mcp is deployed with the gate on, CMA's calls are rejected as
"Invalid JWT" before the function runs and every "Go SABLE" run fails. The required settings are
pinned in config.toml and applied by the automated deployment workflow.
Web App
The app deploys from:
sable-agents-demo/web
It uses Vercel's zero-config serverless routing for api/*.js.
Production target:
Team: cprinos-7741s-projects
Project: sable
Root directory: sable-agents-demo/web
URL: https://sable.indigotrigger.ai
Every feature branch receives a PR preview. Production is deployed only by Vercel's Git integration
after the checked PR merges to main. vercel project inspect sable --scope cprinos-7741s-projects
is permitted for read-only verification; direct production deploy, promote, redeploy, and alias
commands are prohibited.
Docs Site
Current production URL:
https://docs-site-seven-eta.vercel.app/
Build from:
cd sable-agents-demo/docs-site
npm run build
Docusaurus writes static output to build/. That folder is generated and should not be treated as source.
The docs site has its own vercel.json so its Git deployment uses npm run build and publishes the
generated build/ directory. Build locally and submit the result through the repository workflow; do
not deploy production docs directly from a workstation.
Board Orchestrator
Submit Trigger.dev task changes in a PR. After merge, .github/workflows/sable-deploy.yml deploys the
worker when its path gate and repository access token are satisfied. Do not deploy Trigger tasks from
a workstation. Start cutover configuration with the data plane and changed Edge Functions present.
Use SABLE_REPORT_DELIVERY_MODE=shadow and follow
Board Reliability And Cutover. Do not leave built-in Claude Managed Agent
board schedules and Trigger board schedules active together.
Operators verify the generated weekday ET schedules in the Trigger dashboard after the automated deployment.