ShapKit 文档

买后操作手册

从控制台下载签名源码开始:本地启动、第一次走通、加功能、接支付、部署到 Cloudflare,以及提交前门禁。运行时主线是 React Router + Cloudflare Workers。

1. 拿到源码

结账并履约后,系统会签发 License。源码主路径是控制台签名包下载,不必等待仓库邀请。

  1. 登录后打开 Dashboard → 源码交付。
  2. 选择可用版本,创建下载票据并下载签名源码包。
  3. 在本机解压,进入项目根目录,准备配置环境变量。

2. 本地启动

需要 Node.js ≥ 22 与 pnpm 9(建议 corepack enable)。本地数据库默认走 D1。

  1. 安装依赖:pnpm install。
  2. 复制环境模板:.env.example → .env.local,Workers 本地密钥用 .dev.vars;至少填 AUTH_SECRET、NEXT_PUBLIC_APP_URL、DATABASE_PROVIDER=d1。
  3. 跑预检与迁移:pnpm doctor,再 pnpm db:migrate:d1:local(或文档约定的 migrate 命令)。
  4. 启动开发:pnpm dev,浏览器打开本地地址(常见为 http://localhost:5173)。
pnpm install
cp .env.example .env.local
pnpm doctor
pnpm db:migrate:d1:local
pnpm dev

3. 第一次走通

先确认登录与控制台可用;支付可在 Test 模式验证,不阻塞本地改产品。

  1. 打开 /zh/register(或 /en/register)注册并进入 /dashboard。
  2. 在 Dashboard 查看账单、用量、源码交付、组织等入口是否正常。
  3. (可选)配置 Stripe/Creem Test,在 /zh/pricing 用测试卡完成一次买断,再到 /dashboard/billing 看履约态。
  4. 平台管理员可用 seed / platformRole=admin 进入 /zh/admin,检查配置中心就绪。

4. 日常改产品

新产品业务默认落在 src/modules/{domain}/;页面走 Marketing/Admin 的 /:locale 或 Dashboard 的 /dashboard/*。优先让 Agent 执行对应 Skill,而不是手写散落逻辑。

  1. 加页面:对 Agent 说 shape screen(或加载 shape-screen)。
  2. 加后端模块:说 shape service(新产品 → src/modules/)。
  3. 改库表:说 shape migrate,只追加 Drizzle sqlite migration,禁止手改生产库。

5. 接通支付

主售为 Pro / Duo 终身一次买断。渠道与 Price 映射优先在 Admin 配置中心维护;不要在业务代码里散落调用 Stripe SDK。

  1. 在 Admin → 配置中心填写 Stripe / Creem / PayPal 等密钥与 Webhook。
  2. 在商业目录 / 映射中配置 Pro、Duo 的 Price ID,并 Sync。
  3. 对 Agent 说 shape payments,按三栈分流核对结账与退款路径;独立开发者可优先接 Creem。

6. 部署到 Cloudflare

默认发布路径是 React Router + wrangler(Workers)。生产部署必须由你明确确认后再执行,Agent 不得擅自 wrangler deploy。

  1. 对 Agent 说 shape ship cf / shape-cloudflare,完成预检与构建。
  2. 确认环境变量与 D1 / R2 绑定后,再批准生产部署。
  3. 部署后核对三份 Ship 报告(平台差异、Webhook URL、环境变量缺口),并可用 Deploy Diagnostics 排查。
# 仅在你明确确认后由 Agent / 本人执行
# pnpm cf:deploy 或 wrangler deploy

7. Skills 链接与提交门禁

把官方 Skill Suite 链到 Cursor / Claude Code 等 Agent 目录,再在每次提交前跑门禁。

  1. 在项目根执行 pnpm skills:link,创建跨 Agent 的 symlink。
  2. 提交前:pnpm run shape:guard(含 Secret、分层边界等)。
  3. 合并 main / 打 tag 前:pnpm run shape:release(含 locale 等)。详见 Agent Skills 页。
pnpm skills:link
pnpm run shape:guard
pnpm run shape:release:locale