finish-setup
О программе
Навык finish-setup завершает подготовку вновь созданного SaaS-проекта, настраивая интегрированные сервисы, такие как Stripe, базы данных, DNS для электронной почты и аналитику. Он проверяет переменные окружения, создает соответствующие продукты Stripe для тарифных планов, проверяет миграции и сообщает обо всех изменениях, не создавая не запрошенные облачные ресурсы. Используйте этот навык после создания каркаса проекта или когда пользователь явно запрашивает завершение настройки для всего проекта или конкретных сервисов.
Быстрая установка
Claude Code
Рекомендуетсяnpx skills add raintree-technology/claude-starter -a claude-code/plugin add https://github.com/raintree-technology/claude-startergit clone https://github.com/raintree-technology/claude-starter.git ~/.claude/skills/finish-setupСкопируйте и вставьте эту команду в Claude Code для установки этого навыка
Документация
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).
Billing (Stripe MCP)
- Parse the plan definitions from the billing module: plan names, prices, intervals, per-seat flags.
- List existing Stripe products. For each plan with no matching product, create the product and price(s) to match the code exactly (amount, currency, interval, per-seat
usage_typeif applicable). Never delete or modify existing products without explicit confirmation. - Write the resulting price IDs to
.env(or the file the project reads them from) under the env var names the billing module expects. - Confirm the webhook endpoint the project exposes (e.g.
/api/auth/stripe/webhook) and tell the user the exact URL to register in the Stripe dashboard for the deployed domain — webhook registration needs the production URL, so leave it to the user unless a deployed URL is known.
Email (Resend MCP)
- Check domain verification status for the sending domain implied by the project's from-address.
- If unverified, list the exact DNS records (type, name, value) the user must add, then stop — do not retry verification on their behalf.
- Send one test email to the user's own address if they confirm.
Analytics (PostHog MCP)
- Confirm the project API key in env matches a reachable PostHog project.
- Verify the key is wired into the app (provider component or snippet).
- Offer to create a starter dashboard (signups, activation, revenue events) — create it only on confirmation.
Repository (GitHub MCP)
- If the project has no
originremote: offer to create a repo (ask for org/name/visibility), push the initial commit, and confirm CI triggers. - If a remote exists: verify the default branch is pushed and CI status for the latest commit.
Report
End with a checklist: each service → done / needs human (with the exact next action) / skipped (with the missing env var or MCP). Keep it short enough to act on without scrolling.
GitHub репозиторий
Frequently asked questions
What is the finish-setup skill?
finish-setup is a Claude Skill by raintree-technology. Skills package instructions and resources that Claude loads on demand, so Claude can perform finish-setup-related tasks without extra prompting.
How do I install finish-setup?
Use the install commands on this page: add finish-setup to Claude Code as a plugin, or clone its repository into your skills directory, then restart Claude so it picks up the skill.
What category does finish-setup belong to?
finish-setup is in the Meta category, tagged ai, mcp and data.
Is finish-setup free to use?
Yes. finish-setup is listed on AIMCP and free to install. It runs inside Claude, so no separate service account is required to use the skill itself.
Похожие навыки
Этот навык предоставляет проверенную в продакшене настройку для Content Collections — TypeScript-ориентированного инструмента, который преобразует файлы Markdown/MDX в типобезопасные коллекции данных с валидацией Zod. Используйте его при создании блогов, сайтов документации или контентных приложений на Vite + React для обеспечения типобезопасности и автоматической проверки содержимого. Он охватывает всё: от настройки плагина Vite и компиляции MDX до оптимизации развертывания и валидации схем.
Этот навык позволяет разработчикам создавать приложения на платформе прогнозных рынков Polymarket, включая интеграцию с API для торговли и получения рыночных данных. Он также обеспечивает потоковую передачу данных в реальном времени через WebSocket для отслеживания текущих сделок и рыночной активности. Используйте его для реализации торговых стратегий или создания инструментов, обрабатывающих обновления рынка в реальном времени.
Этот навык помогает разработчикам создавать плагины OpenCode, которые подключаются к более чем 25 типам событий, таким как команды, файлы и операции LSP. Он предоставляет структуру плагина, спецификации API событий и шаблоны реализации для модулей на JavaScript/TypeScript. Используйте его, когда вам нужно перехватывать, отслеживать или расширять жизненный цикл ассистента OpenCode AI с помощью пользовательской событийно-ориентированной логики.
SGLang — это высокопроизводительный фреймворк для обслуживания больших языковых моделей (LLM), специализирующийся на быстрой структурированной генерации JSON, regex и рабочих процессов агентов с использованием кэширования префиксов RadixAttention. Он обеспечивает значительно более высокую скорость вывода, особенно для задач с повторяющимися префиксами, что делает его идеальным для сложных структурированных результатов и многократных диалогов. Выбирайте SGLang вместо альтернатив, таких как vLLM, когда вам требуется ограниченное декодирование или вы создаете приложения с интенсивным совместным использованием префиксов.
