Vibe Provision

io.github.totte-dev由 GitHub 帳號 totte-dev 發布v0.1.1更新於 Oct 25, 2026

Provision SaaS services from YAML and inject .env. Supports Clerk, Stripe, Resend and more.

概覽

AI 產生的概覽

一個本機 MCP 伺服器,讓 AI 助理依 YAML 設定開通 Clerk、Stripe、Resend、Neon、Upstash 等 SaaS 服務,並產生 .env 檔案。

可以做什麼
檢查所有已設定服務商的驗證與開通狀態,並將新服務加入 vibe.yaml 設定。呼叫各服務商 API 開通資源並產生 .env 輸出,可寫入本機 .env 檔案、Vercel 或 Terraform 目標。依環境合併基礎與覆寫 YAML 檔案,管理多環境設定。
適用情境
適合在建立 SaaS 應用時,讓助理依宣告式設定建立驗證、付款、郵件、資料庫或快取資源,而不必手動操作各服務商主控台。最好在已一次性完成服務商驗證後使用。
執行需求
透過 npx 在本機執行(需要 Node.js)。需用 CLI 的 auth 指令一次性完成各服務商驗證,憑證保存在使用者家目錄本機。每個所用服務需要對應的 API 金鑰或存取權杖。需能連線服務商 API;Vercel 輸出需要 Vercel CLI。
安裝前請注意
開通會在第三方帳號中建立真實資源,包括 Stripe 產品、價格與 webhook 端點,可能產生費用。憑證保存在本機並傳送給服務商 API。伺服器會寫入 .env 與狀態檔案,並可向 Vercel 或 Terraform 輸出注入環境變數。執行開通前請檢查產生的設定。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Vibe Provision,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

vibe-provision

Provision external SaaS services from YAML. One command to set up Clerk, Stripe, Resend and inject .env.

"AI can write code, but it can't click dashboards." — vibe-provision solves that.

Quick Start

bash
# 1. Generate a config templatenpx vibe-provision init
# 2. Authenticate with providers (one-time)npx vibe-provision auth
# 3. Provision resources and generate .envnpx vibe-provision up

That's it. Your .env is ready — run your dev server.

vp is a short alias: npx vp up works too.

vibe.yaml

yaml
project: my-saas-app
output:  - .env  - vercel        # auto-inject env vars to Vercel  - terraform     # generate terraform.tfvars.json
services:  auth:    provider: clerk    config:      app_name: "My SaaS App"      redirect_urls:        - http://localhost:3000/callback
  payments:    provider: stripe    config:      products:        - name: "Pro Plan"          prices:            - amount: 1900              currency: usd              interval: month      webhooks:        events:          - checkout.session.completed          - customer.subscription.updated
  email:    provider: resend    config:      domain: my-app.com
  database:    provider: neon    config:      region: aws-ap-northeast-1
  cache:    provider: upstash    config:      region: ap-northeast-1

AI (Cursor, Claude Code, etc.) can generate this file alongside your app code.

Supported Providers

ProviderCategoryWhat it createsAuth method
ClerkAuthRedirect URL config + env varsAPI key paste
StripePaymentsProducts, Prices, Webhook EndpointsAPI key paste
ResendEmailDomain registrationAPI key paste
SupabaseDB + AuthProject + API keysAccess token
NeonPostgresProject + databaseAPI key
UpstashRedisDatabaseEmail + API key

Output Targets

Control where env vars are written via the output section:

TargetDescription
.envLocal .env file (default)
vercelVercel environment variables via CLI
terraform.vibe-provision/terraform.tfvars.json with merge semantics

Environment-Specific Config

Use --env to manage multiple environments:

bash
npx vp up --env dev      # merges vibe.yaml + vibe.dev.yaml → .env.devnpx vp up --env staging  # merges vibe.yaml + vibe.staging.yaml → .env.stagingnpx vp up --env prod     # merges vibe.yaml + vibe.prod.yaml → .env.prodnpx vp up                # uses vibe.yaml only → .env

Base config (vibe.yaml) holds shared settings. Override files (vibe.{env}.yaml) deep-merge on top:

yaml
# vibe.dev.yaml — only override what differsservices:  payments:    provider: stripe    config:      webhooks:        url: https://dev.example.com/api/webhooks/stripe

MCP Server (AI Agent Integration)

vibe-provision includes an MCP server so AI agents (Claude Code, Cursor) can provision services directly.

Setup

Add to your .mcp.json (global or per-project):

json
{  "mcpServers": {    "vibe-provision": {      "command": "npx",      "args": ["vibe-provision", "mcp"]    }  }}

Available Tools

ToolDescription
vibe_provision_statusCheck auth and provisioning state for all providers
vibe_provision_upProvision resources and generate .env (requires prior auth)
vibe_provision_addAdd a new service to vibe.yaml

Example Flow

User: "Add Stripe payments to my app"  → AI generates vibe.yaml with stripe config  → AI calls vibe_provision_status → "stripe: NOT authenticated"  → AI: "Run npx vp auth in your terminal"  → User authenticates (one-time)  → AI calls vibe_provision_up → Products, Prices, Webhooks created  → .env updated, app ready to run

Idempotency

vibe-provision up is safe to run multiple times. It tracks created resources in .vibe-provision/state.json and skips anything that already exists.

How It Works

  1. init — generates a vibe.yaml template
  2. auth — walks you through authenticating each provider, stores credentials locally in ~/.vibe-provision/auth/
  3. up — reads vibe.yaml, calls provider APIs to create resources, writes to configured output targets

Credentials never leave your machine.

Examples

Development

bash
npm installnpm run lint          # type checknpm test              # run tests (47 tests)npm run dev -- init   # run CLI in dev mode

License

FSL-1.1-Apache-2.0 — Free to use for any purpose except competing hosted services. Converts to Apache 2.0 on 2028-03-26.

來源:README.md,提交 360aee8

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.1.1最新Sep 16, 2026

評分

已滿足適用檢查項的 40%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。