CLI —— 接入已有项目
@curless/cli 用一条命令把 agentbank 接入已有项目。
create-agentbank 生成一个新项目,而 curless init 把集成写进你已经有的仓库。它支持两种角色(由你在 init 时选择):
--role receive—— 一个向 agent 出售的店面后端:它开启一笔定价结账,钱进你的账户。使用 merchant SDK。--role paywall(默认) —— 对 agent 按次收费。检测你的框架 (MCP server / Next.js / Express / Python)并把付费墙放进去。
# Receive agent payments (a storefront backend)npx @curless/cli init --role receive --merchant curless_mch_… --api https://mcp.curless.ai
# Or a per-call paywall (framework auto-detected)npx @curless/cli init --role paywall --product prd_2UU8ZRCR --amount 4900 \ --currency USD --api https://mcp.curless.aiinit 会解析出对应的 recipe(--role receive → storefront recipe;--role paywall →
你被检测到的框架),从 AgentBank API
(GET /v1/integrations/recipes/:type)拉取它,把脚手架写进你的仓库,并配置好
.env.local(在 .gitignore 里为它加上保护)。recipe 的环境变量是服务端驱动的 —— CLI
只写这个 recipe 需要的那些键,填好非机密的部分(API base、商户 id、货币),并把每一个机密项都留空由你填写。
这些 recipe 使用生产版 SDK:店面 recipe 接好
@curless/agentbank-merchant-sdk;付费墙 recipe 使用
@curless/agentbank-mcp-pay 的 withPaywall(MCP),HTTP 框架则接好它的付款校验(verify)握手。
| 参数 | 含义 |
|---|---|
--role |
receive | paywall(默认 paywall) |
--product, -p |
Curless 商品引用(prd_…) |
--merchant, -m |
你的商户 id(curless_mch_…) |
--amount |
价格,以最小货币单位计(例如 4900) |
--currency |
ISO 货币(默认 USD) |
--api |
AgentBank API base —— 必填(或设置 $CURLESS_BASE_URL);本地开发:http://localhost:3000 |
--target, -t |
强制指定 recipe 类型 —— storefront | mcp-server | mcp-server-python | nextjs | express |
--force |
覆盖已存在的脚手架文件 |
- 一个脚手架文件 ——
receive用src/agentbank-storefront.ts,paywall用对应框架的付费墙文件 (src/curless-paywall.ts、app/api/unlock/route.ts等)。 - 带着该 recipe 环境变量键的
.env.local。receive角色写入AGENTBANK_API_URL、AGENTBANK_MERCHANT_ID、MERCHANT_CURRENCY(已填)以及AGENTBANK_MERCHANT_TOKEN(留空);paywall角色写入CURLESS_BASE_URL(已填)和CURLESS_SECRET_KEY(留空)。机密项绝不会替你写入。 - 在
.gitignore里加上一条.env.local。
没有 --force 时它绝不覆盖脚手架文件,也绝不会冲掉你已经设好的环境变量值。

