finish-setup
Installation
SKILL.md
Finish provisioning a freshly scaffolded SaaS project. Configure what exists, link what doesn't — never create cloud resources the user did not ask for (no new databases, no new Vercel projects). Report every change made and every step that still needs a human.
If an argument names a single service, run only that section.
Preflight
- Read
.env.exampleand the project's env loading (lib/env.tsor equivalent) to learn which integrations are expected. - Read
.env/.env.local(never print secret values — report only SET or UNSET per key). - List which MCP servers are reachable. For each unreachable MCP that a section below needs, skip that section and add it to the final report with the missing env var.
- Detect the stack: billing plan definitions (
lib/billing/plans.tsor similar), migration setup (drizzle.config.ts,db/migrations/), email templates (emails/), analytics keys (NEXT_PUBLIC_POSTHOG_KEYor similar).
Database (Neon MCP)
- Confirm
DATABASE_URLis set and the Neon MCP can see the project's database. If unset, stop this section and tell the user to create a database and setDATABASE_URL— do not create one. - Compare applied migrations against the local migrations directory. If migrations are pending, run the project's migrate script (
db:migrateor equivalent) locally — not via MCP — and confirm the result. - Verify the auth tables exist (sessions, users, organizations if multi-tenant).