🦞 ClawPay
AI代理的支付网关。自我主持。开源。没有SaaS。没有废话。
ClawPay是一个加密的卡库,带有一个策略引擎,让人工智能代理代表您进行支付——您可以控制规则。
你的客服浏览商店,挑选商品,到达收银台,然后打电话给ClawPay。ClawPay检查您的规则,必要时请求您的批准,并移交卡详细信息。代理人填写表格。完成。
作为一个 独立MCP服务器 (Claude、Cursor、任何MCP客户端)以及 OpenClaw插件 (Moltbot和其他OpenClaw代理)。
______________________________________________________________________
在您@us讨论安全问题之前
是的,我们知道。我们将收到以下回复:
“你在本地存储信用卡号码?这太疯狂了!” “这永远不会符合PCI标准!” “让法学硕士访问支付信息是鲁莽的!”
太酷了!让我们来谈谈什么是真正的鲁莽。
你给了一个AI代理完全访问你电脑的权限。 它可以读取您的文件、执行代码、浏览网页,并代表您单击按钮。它可以访问您的电子邮件、文档、终端和浏览器会话。您让它运行shell命令。您可以让它浏览经过身份验证的网页。你把整个数字生活都给了它,然后说“好的,继续吧”
但是你自己的机器上用AES-256加密的信用卡号呢? *那是* 我们在哪里划线?这就是安全问题吗?
它要求每个商家都采用它。
Target、沃尔玛、Shopify商店——当然,他们会做到的。但是东京的古董相机店呢?葡萄牙的小众补品店?独立艺术家在自托管的WooCommerce上?你的代理人刚刚通过谷歌搜索找到的随机电子商务网站?他们正在运行一个带有卡片字段的结账表单。就是这样。不 /.well-known/ucp.没有AP2授权。没有代理商务端点。只有等待16位数字的HTML输入。
UCP/AP2是结构化代理商务的正确长期解决方案。 ClawPay是其他99%的互联网的答案,它仍然只是一种结账方式。 当UCP实现普遍采用时,ClawPay就变得没有必要了。我们真诚地期待着那一天。但我们不会坐在这里等待,因为特工可以做任何事情 *除了* 为东西付钱。
我们选择了发货。 它完美吗?不。它比你的代理人已经获得的其他47件东西更危险吗?绝对不是。您的代理人已经可以 rm -rf 您的主目录,以您的身份发送电子邮件,并在您的社交媒体上发布。但当然,让我们假装信用卡是危险的部分。
代理技术的当前状态要求我们快速行动,并调整现有工具以与代理一起工作。我们等待“完美安全解决方案”的每一天,都是代理在任何交易的最关键步骤中瘫痪的一天。我们宁愿给人们一个有护栏的工具,也不愿让他们将卡号粘贴到聊天窗口中——说实话,这已经发生了。
ClawPay是一座务实的桥梁。 这不是最终的答案。这就是现在的答案。当商家支持时使用UCP/AP2。当商家不支持时使用ClawPay。当各地都有更好的基础设施时,我们很乐意弃用自己。在那之前,这是你最好的选择,而且比其他选择要好得多。
______________________________________________________________________
运作原理
┌─────────────┐ ┌──────────────┐ ┌───────────┐
│ AI Agent │────▶│ ClawPay │────▶│ Checkout │
│ (Moltbot, │ │ │ │ (Shopify, │
│ Claude, │ 1. request_card() │ │ Amazon, │
│ Cursor) │◀────│ 2. policy │ │ any site)│
│ │ │ 3. approve? │ │ │
│ │card │ 4. decrypt │ │ │
│ │info │ 5. return │ │ │
│ │────▶│ │────▶│ │
└─────────────┘ └──────────────┘ └───────────┘- 代理人在结账页面,需要付款
- 客服电话
request_card(amount, merchant, description) - ClawPay的策略引擎评估请求:
- 低于25美元? 自动批准。卡详细信息立即返回。 - 超过25美元? 需要人工批准。你会得到提示。 - 超过1000美元? 此 路 不通。没有卡片给你。 - 达到每日限额? 此 路 不通。 - 被封锁的商人? 此 路 不通。
- 如果获得批准,ClawPay将从本地保险库解密卡
- 代理人收到卡详细信息并填写结账表
代理人在不通过保单门的情况下,永远无法获得卡信息。
______________________________________________________________________
快速开始
安装
npx clawpay init这创造了 ~/.clawpay/ 使用加密密钥(存储在系统密钥链中)和默认配置。
添加您的卡
npx clawpay add-card卡详细信息使用AES-256-GCM加密并存储在本地。他们从不离开你的机器。
配置策略
编辑 ~/.clawpay/config.yaml:
policies:
autoApproveUnder: 25.00
requireApprovalAbove: 25.00
blockAbove: 1000.00
dailyLimit: 200.00
monthlyLimit: 2000.00
blockedKeywords:
- gambling
- crypto
blockedMerchants:
- sketchy-site.com
currency: USD
approval:
method: terminal # terminal | webhook | slack
timeout: 300 # seconds before auto-deny与任何MCP客户端一起使用
添加到您的Claude桌面/光标等MCP配置中:
{
"mcpServers": {
"clawpay": {
"command": "npx",
"args": ["clawpay", "serve"]
}
}
}与OpenClaw一起使用
ClawPay以本地人身份发货 开爪 插件。它注册 request_card 和 get_payment_policy 作为 可选代理工具 --这意味着您的代理(Moltbot等)不会使用它们,除非您明确启用它们。
选项A——通过npm安装(推荐)
openclaw plugins install clawpay选项B——手动安装(来源)
将此仓库克隆到您的OpenClaw中 extensions/ 目录:
cd /path/to/openclaw/extensions
git clone https://github.com/valdo99/clawpay.git
cd clawpay
npm install && npm run buildOpenClaw的目录结构预期:
openclaw/
extensions/
clawpay/
openclaw.plugin.json ← plugin manifest (required)
dist/
integrations/
openclaw-plugin.js ← entry point
core/
... ← vault, policy, approval
package.json配置插件
在您的OpenClaw配置中,添加ClawPay设置:
plugins:
clawpay:
auto_approve_under: 25
require_approval_above: 25
block_above: 1000
daily_limit: 200
monthly_limit: 2000
currency: USD
blocked_keywords:
- gambling
approval_method: terminal # terminal | webhook
approval_timeout: 300为您的代理启用工具
ClawPay工具注册为 optional: true 为了安全起见——在您明确允许之前,代理不能使用它们。在您的OpenClaw代理配置中:
agents:
list:
- id: main
tools:
allow:
- request_card
- get_payment_policy
# or allow all clawpay tools at once:
# - clawpay初始化保管库
在您的代理可以请求卡详细信息之前,您需要设置加密保管库:
npx clawpay init # generates encryption key, stores in keychain
npx clawpay add-card # encrypts and stores your card locally就是这样。您的OpenClaw代理现在可以呼叫 request_card 在结账时。策略引擎评估每个请求,批准处理程序会对任何高于自动批准阈值的请求进行处理。
______________________________________________________________________
MCP工具
request_card
主要工具。代理人在填写付款单之前会调用此功能。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| 金额 | 数量 | 是 | 总付款金额 |
| 商户 | 字符串 | 是 | 商户名称或域名 |
| description | string | yes | 正在购买什么 |
| currency | string | no | 货币代码(默认值:USD) |
退货 (如果批准):
{
"approved": true,
"cardholderName": "John Doe",
"number": "4242424242424242",
"expMonth": "12",
"expYear": "2027",
"cvv": "123",
"billingAddress": { ... }
}退货 (如果拒绝):
{
"approved": false,
"reason": "Amount $500 requires human approval — user denied."
}get_payment_policy
让代理在尝试购买之前检查您的规则。没有返回卡信息。
check_card_status
检查是否存储了卡。没有返回卡信息。
______________________________________________________________________
建筑
clawpay/
src/
core/
vault.ts # AES-256-GCM encrypted card storage
policy.ts # Rule evaluation engine
clawpay.ts # Main engine (vault + policy + approval)
integrations/
mcp-server.ts # Standalone MCP server (stdio)
openclaw-plugin.ts # OpenClaw extension
approval/
terminal.ts # CLI-based approval prompts
webhook.ts # Webhook/Slack approval
index.ts # Approval router
types/
index.ts # TypeScript types
bin/
cli.ts # CLI tool (init, add-card, status)
openclaw.plugin.json # OpenClaw plugin manifest拱顶: 您的卡使用AES-256-GCM加密。加密密钥存储在您的系统密钥链中(macOS密钥链、Linux密钥服务、Windows凭据管理器)。如果密钥链不可用,则回退到基于文件的密钥存储。加密的保险库位于 ~/.clawpay/vault.enc.
策略引擎: YAML驱动的规则。金额阈值、每日/每月限额、商户允许/阻止列表、关键字过滤器。全部在当地进行评估。
批准: 可插拔。终端提示本地使用,webhooks用于其他任何东西(Slack机器人、Telegram机器人、移动应用程序、您自己的仪表板)。易于添加新的审批渠道。
交易日志: 每个请求(批准或拒绝)都会记录到 ~/.clawpay/transactions.json 为了你的记录。
______________________________________________________________________
延长ClawPay
添加新的审批渠道
创建与此签名匹配的函数:
async function myApproval(
payment: PaymentRequest,
policyResult: PolicyResult,
timeoutMs: number
): Promise添加到 src/approval/ 并将其连接到路由器中 src/approval/index.ts.
用作图书馆
import { ClawPay } from "clawpay";
const cp = await ClawPay.load();
const result = await cp.requestCard({
amount: 29.99,
merchant: "cool-store.com",
description: "A very cool hat",
});
if (result.approved) {
// result.card has the details
}______________________________________________________________________
路线图
- \[\]UCP/AP2适配器--检测
/.well-known/ucp并在可用时使用适当的协议,否则退回原始卡输入 - \[\]多卡支持(个人与企业)
- \[\]每个商家的消费限额
- \[\]收据/订单确认解析
- \[\]用于审批通知的浏览器扩展
- \[\]交易仪表板(本地web UI)
- \[\]自定义策略规则插件系统
- \[\]E2E测试
______________________________________________________________________
常见问题解答
这个PCI兼容吗? 不,它并没有试图这样做。PCI-DSS适用于将持卡人数据存储/处理/传输作为服务的企业。这是一个自托管工具,可以在自己的机器上存储自己的卡,就像密码管理器一样。如果你自己运行这个,PCI对你的适用方式与对Stripe的适用方式不同。
如果我的机器被入侵了怎么办? 然后,攻击者也可以访问您机器上的其他所有内容——您的浏览器会话、保存的密码、Cookie、电子邮件、SSH密钥。坦率地说,加密卡保险库是你最不关心的问题。但是,是的,卡数据在静态时使用AES-256-GCM进行加密,密钥存在于您的系统密钥链中,该密钥也经过加密。
代理商可以在没有实际购买的情况下索要卡片吗? 他们可以问。政策引擎决定。如果代理要求提供“金额:0.01美元,商家:肯定不是骗局.com”的卡详细信息,它仍然必须通过你的规则。每个请求都会被记录下来。
为什么不直接使用UCP/AP2? 当商家支持时,你应该这样做。UCP是结构化代理商务的正确协议,AP2的加密授权是比ClawPay更好的信任模型。但UCP要求商家采用。如今,这意味着少数大型零售商。ClawPay现在可以与任何网站上的任何结账表单一起使用,无需与商家集成。可以时使用UCP,不能时使用ClawPay。
为什么不直接使用Stripe/虚拟卡/Apple Pay? 因为这些都不适用于今天由代理发起的任意网络结账。Stripe需要商家整合。虚拟卡需要一个平台。Apple Pay需要特定的浏览器和设备流量。ClawPay现在适用于任何结账、任何商家。
______________________________________________________________________
贡献
PR欢迎。尤其是:
- 新的审批渠道(Discord、Telegram、电子邮件、移动推送)
- 更好的政策规则
- 安全改进
- 测试
- 文档
______________________________________________________________________
许可证
麻省理工学院
______________________________________________________________________
*之所以建造,是因为无论支付基础设施是否准备就绪,世界都在走向代理化。*
