能付钱的 Agent:LangChain 用 Stripe Link 和托管深度智能体搭了个 Restock
让 Agent 花钱,难点不在「买」,在「安全地买」。LangChain 发了个开源示例 Restock:跑在 Slack 上的办公用品采购智能体,基于 Managed Deep Agents(MDA),能搜真实商品(Zinc)、构建购物车、通过 Stripe 的消费者钱包 Link 完成支付,团队已端到端验证过真实订单和退款到账。 为什么不走浏览器自动化 操纵零售商结账页面有三个问题:页面易变、网站主动阻止自动结账、支付详情必须对模型隐藏。Restock 改走支持 Machine Payments Protocol(MPP)的 API:商家直接返回 402 Payment Required 和支付指令,客户端携凭证重试,金额明确。MPP 生态还在扩张(Apify、Zinc 等已加入),示例用了 Zinc 但模式不绑定它。 凭证隔离:模型摸不到钱 这是整套设计里最值得抄的部分: 模型从不接触任何支付机密;Link 会话存在用户自有的 MDA Connection 里,钱包归用户 Link CLI 在 MDA 托管沙箱内登录;支付工具从私有沙箱文件读令牌、用后即删、只向模型返回公开摘要 支付走双重批准:先在 Slack 里人工审核购物车和预付额,再由用户在 Link 网站上批准——钱包本身对支付的同意 金额控制也在模型够不到的代码里:$25 预算是上限而非扣款额,用户选定 $23 预付,Zinc 留 $1 基础费用,实际零售商订单 $21.18(笔 $14.99 + 税 $1.20 + 运费 $4.99),退回 $0.82。 三种运行模式 环境变量 RESTOCK_MODE 切换:rehearsal(虚构商品+模拟批准,零成本试跑)、link-test(真实搜索和 Link 批准但不购买)、live(真金白银)。当前限制:仅美国配送、仅美元、每个部署对应一个办公室。 可复用的模式总结成一句话:让 Agent 搜索和构建购物车,把支出限额和批准逻辑留在模型无法触及的代码里,只有商家确认后才算订单已下达。代码在 GitHub 仓库 langchain-samples/restock-agent。 ...