这套方案适合谁

  • 用 Claude Code 做主力编码 Agent 的独立开发者
  • 在做出海 SaaS(Next.js + Stripe + i18n)
  • 想避免每次新会话都重新解释项目 context
  • 月 token 预算 100-200 美金

准备工作

你需要

  • Claude Code CLI(2026-03 stable)
  • 一个 Next.js / Astro / Remix 出海 SaaS 仓库
  • Anthropic API key 或一家中转方的 key
  • 1-2 小时一次性配 Skills 的时间

步骤一:创建 .claude/skills/ 目录

仓库根目录/
├── .claude/
│   ├── skills/
│   │   ├── saas-architect/SKILL.md
│   │   ├── payment-stripe/SKILL.md
│   │   └── i18n-router/SKILL.md
│   └── settings.local.json
├── src/
└── ...

settings.local.json

{
  "permissions": {
    "allow": ["Bash(npm:*)", "Bash(pnpm:*)"]
  }
}

步骤二:写 saas-architect Skill

.claude/skills/saas-architect/SKILL.md

---
name: saas-architect
description: 出海 SaaS 架构选型(Next.js + Drizzle + Stripe + Cloudflare)
when_to_use: 用户问架构 / 选型 / 目录结构 / 数据库 ORM / 部署平台
---

# 出海 SaaS 默认架构

## 框架
Next.js 15 App Router

## 数据库
Postgres on Neon + Drizzle ORM

## 鉴权
Auth.js (NextAuth) + Magic Link + GitHub OAuth

## 支付
Stripe Checkout + Webhook(不用 Lemon Squeezy 因为 MoR 费率高)

## 部署
Vercel 国内不稳,Cloudflare Pages + Cloudflare D1(如果数据量小)

## 反例
- 不要用 Firebase(vendor lock)
- 不要用 MongoDB(强一致需求选 Postgres)
- 不要早期上 Kubernetes(Solopreneur 不需要)

步骤三:写 payment-stripe Skill

.claude/skills/payment-stripe/SKILL.md

---
name: payment-stripe
description: Stripe Checkout + Subscription 接入决策
when_to_use: 用户问支付 / Stripe / 订阅 / webhook / 退款
---

# Stripe 接入默认决策

## Checkout Session(推荐)
不要自己实现 Card Element,用 Stripe Checkout 托管页。

## Webhook
- 必处理:checkout.session.completed、customer.subscription.updated、invoice.payment_failed
- 用 Stripe CLI stripe listen 本地开发

## 多币种
Stripe 自动处理,但 product / price 要预先创建多套(USD / EUR / JPY)

## 退款
30 天内全额退,30 天以上需手动 review

## 反例
- 不要存 card number / cvc(违反 PCI)
- 不要在前端写 secret key
- 不要相信 client side 价格(webhook 验证)

步骤四:写 i18n-router Skill

.claude/skills/i18n-router/SKILL.md

---
name: i18n-router
description: Next.js 多语言路由 + SEO meta
when_to_use: 用户问 i18n / 多语言 / 翻译 / hreflang
---

# 多语言路由默认方案

## 路由
Next.js App Router 的 [locale] 段,10 种语言(en/zh/ja/ko/es/fr/de/pt-BR/ru/ar)

## 翻译
next-intl + JSON 文件,不用 react-intl(太重)

## hreflang
sitemap.xml 每个 page 列所有语言 alternate

## meta
每语言独立 title / description,避免直译

## 反例
- 不要把英文写死再用翻译插件
- 不要忽略 RTL(阿拉伯语方向)
- 不要忽略 hreflang(Google 会判重复内容)

步骤五:跑 Claude Code 触发 Skills

国内访问环境

国内直连 api.anthropic.com 跑 Claude Code 经常 timeout。Solopreneur 推荐配一家主推 GPT-5.5 / Claude 4.7 的低价 API 中转,免外卡 + 多模型聚合,Claude Code 用 ANTHROPIC_BASE_URL 一键切换。

export ANTHROPIC_BASE_URL=https://中转方域名
export ANTHROPIC_API_KEY=sk-中转方key
cd /path/to/saas-repo
claude

触发 Skills

会话内问:

> 我要做个 SaaS,给我推荐架构

Claude Code 自动加载 saas-architect Skill,按你预设的决策回答。

> 接入 Stripe 订阅

加载 payment-stripe Skill + 跑代码模板。

月预算样例(访问于 2026-05-20)

Solopreneur 用 Claude Code + Skills 写出海 SaaS:

月消耗 token月成本
Skills 加载(固定开销)5M≈ $20-30
Composer 写新 feature20M≈ $80-130
Agent 跑测试 + 重构10M≈ $50-80
月总计~35M≈ $150-240

caching 命中 30% 后实际 100-170 美金/月。

协作小坑

Skills 跟仓库不同步

  • 一定要 commit .claude/skills 到 git
  • 团队 PR 改 Skills 要走 review

Skills 写得太长

  • 每个 Skill ≤ 300 行(progressive disclosure 不必读全文)
  • 决策树 + 代码模板 + 反例三部分

Skills 跟 system prompt 重复

  • system prompt 只放「我是谁」级元信息
  • Skills 放具体技术决策

关联文章

Claude Code Skills 写 SaaS的落地条件

Claude Code Skills 写 SaaS最怕把法律主体、收款工具和产品代码混成一个问题。动手前看清回滚动作、费用影响和权限变化,金额较大或涉及税务时应交给专业顾问处理。

一个人运营时可以用表格压住复杂度:负责人、后台入口、到期日、费用来源和回滚动作各占一列,避免换服务商时才发现资料缺口。

涉及 Stripe、公司注册、税表或签证的内容,只能作为操作参考。当前页面没有覆盖你所在司法辖区的特殊规定时,不应把它当成法律或税务意见。