SwagUCP:让AI代理替你购物的开放协议来了

GitHub May 2026
⭐ 11
来源:GitHub归档:May 2026
一款名为SwagUCP的全新开源插件,将Shopware 6打造成AI代理的一等端点。通过实现通用商务协议,它让自主代理能够无需人工干预,自主发现商店、完成授权并安全结账。

代理商务领域长期以来一直碎片化严重:每个AI代理框架都自创一套结账机制,迫使商家为每个框架定制集成。SwagUCP,这款为流行电商平台Shopware 6打造的插件,旨在通过实现通用商务协议(UCP)改变这一现状。UCP定义了一个标准化、可发现的接口——一个`.well-known/ucp`端点——任何AI代理都能查询它以了解如何发起结账会话。该插件处理了安全方面的难题:自动生成EC P-256密钥对用于签名webhook、域名白名单用于代理授权,以及对每个请求进行加密签名验证。这意味着,AI代理可以例如在Shopware商店中找到一双鞋,通过独立协商价格,然后完成结账——全程无需人工点击。

技术深度解析

SwagUCP并非又一个Shopify应用;它是一个更大理念——通用商务协议(UCP)——的参考实现。UCP的核心是一组RESTful端点和一个发现机制,任何AI代理都能用它来与商务系统交互。该插件为Shopware 6实现了这一协议,但协议本身是平台无关的。

通过`.well-known/ucp`进行发现

AI代理遇到Shopware商店时,首先会获取`https://store.example.com/.well-known/ucp`。该端点返回一个JSON文档,描述商店的UCP能力,包括支持的API版本、认证方法以及可用操作(例如`initiate_checkout`、`get_cart`、`confirm_order`)。这模仿了OAuth和其他网络协议使用的well-known URI标准(RFC 8615)。代理无需事先了解商店的API;它能动态发现。

通过RESTful API实现安全结账会话

一旦发现,代理可以调用`POST /ucp/checkout/session`,并附带包含购物车ID、客户标识符和配送详情的负载。插件验证请求,创建临时结账会话,并返回一个会话令牌。代理随后使用该令牌轮询完成状态或执行后续步骤,如支付授权。会话具有可配置的TTL(默认15分钟),以防止过期预留。

使用EC P-256进行Webhook签名

当结账状态发生变化时(例如支付确认、订单发货),SwagUCP会向代理注册的回调URL发送webhook。为确保真实性,每个webhook负载都使用椭圆曲线数字签名算法(ECDSA)和P-256曲线进行签名。插件在安装时自动生成密钥对——私钥保留在服务器上,公钥通过发现端点公开。代理可以使用公钥验证签名,防止伪造的webhook。这比简单的HMAC签名有了显著改进,后者需要共享密钥,在多代理环境中更难轮换和管理。

代理授权:域名白名单 + 加密签名

并非每个代理都应被允许结账。SwagUCP实现了一个双层授权系统。首先,商家配置域名白名单——仅允许来自已批准域名(例如`agent.mycompany.com`)的请求。其次,每个请求必须包含由代理私钥生成的加密签名,插件会对照代理注册的公钥进行验证。这能防止重放攻击,并确保只有授权代理才能发起交易。

GitHub仓库分析

仓库`agentic-commerce-lab/swagucp`是一个基于Symfony 6和Shopware 6插件SDK构建的PHP插件。代码结构清晰,API层、服务层和加密工具之间界限分明。测试覆盖率中等,包含针对签名验证和会话管理组件的单元测试。项目使用PHPStan进行静态分析,PHPUnit进行测试。截至本文撰写时,该仓库有11颗星和3个分支,表明尚处于早期采用阶段。提交历史显示开发活跃,最近的提交主要集中在文档和错误修复上。

数据表格:UCP vs. 专有代理商务解决方案

| 特性 | SwagUCP (UCP) | Shopify Functions | 自定义API集成 |
|---|---|---|---|
| 发现机制 | `.well-known/ucp` | 手动API文档 | 手动API文档 |
| 认证方式 | EC P-256签名 | OAuth 2.0 + API密钥 | 各不相同(API密钥、JWT) |
| Webhook安全 | ECDSA签名 | HMAC签名 | 各不相同 |
| 代理授权 | 域名白名单 + 加密 | 应用级权限 | 自定义实现 |
| 开放标准 | 是 (UCP) | 否 (Shopify专有) | 否 |
| 安装便捷性 | 插件安装 | 应用安装 + 配置 | 完全自定义开发 |
| 代理框架无关性 | 是 | 否 (Shopify特定) | 否 (每个代理自定义) |

数据要点: SwagUCP的关键差异化优势在于其开放、可发现的标准。虽然Shopify Functions提供类似功能,但它们被锁定在Shopify生态系统中。自定义集成虽然灵活,但需要大量工程投入。UCP的目标是成为跨任何平台的通用层。

关键参与者与案例研究

SwagUCP背后的团队Agentic Commerce Lab,是一个规模不大但雄心勃勃的开发团队,此前曾为Magento和WooCommerce从事AI集成项目。他们意识到每个电商平台都在为AI代理集成重复造轮子,于是着手创建一个能被任何平台采用的协议。他们的策略是首先为最流行的开源平台(Shopware、Magento、WooCommerce)构建参考实现,然后向更广泛的电商社区提议将UCP作为标准。

更多来自 GitHub

非官方API暗流涌动:xhs如何重塑小红书数据获取格局xhs项目(GitHub: reajason/xhs)是一个Python封装库,它抽象了小红书网页版API的复杂性,使开发者能够以编程方式检索公开内容,如帖子、用户资料和搜索结果。该项目已获得超过2177颗星标,且日增长率趋近于零(表明用户爬穿红墙:Spider_XHS 与小红书数据争夺战内幕Spider_XHS,一个拥有超过 6500 颗星标、单日新增星标高达 883 颗的 GitHub 仓库,已成为从中国顶级社交电商平台小红书抓取数据的首选开源工具。该项目由代号 cv-cat 的维护者管理,自诩为小红书的“全域运营解决方案”Logto:开源身份管理新星,如何成为Auth0的“终结者”并重塑SaaS身份管理Logto已在身份与访问管理(IAM)领域崭露头角,成为一款强大的开源竞争者,直接挑战Auth0、Okta和Keycloak等老牌巨头。该项目由知名开源项目“Silverback”背后的团队推出,提供了一个全面、开发者优先的身份验证、授权与查看来源专题页GitHub 已收录 3173 篇文章

时间归档

May 20263028 篇已发布文章

延伸阅读

通用商务协议:改写电商基础设施的开源标准一项名为“通用商务协议”(UCP)的全新开源规范,提出了一套跨平台商务的标准化数据模型与接口。若获广泛采用,它将大幅降低集成成本,开启一个可互操作的商务基础设施新时代。但该项目仍处于萌芽阶段——没有代码,没有社区,只有一个愿景。非官方API暗流涌动:xhs如何重塑小红书数据获取格局一款名为xhs的开源Python库正凭借其简洁的接口在开发者社区迅速走红,但GitHub星标突破2100的同时,关于其合法性、平台反制措施以及第三方数据访问未来的争议也日益白热化。爬穿红墙:Spider_XHS 与小红书数据争夺战内幕一个名为 Spider_XHS 的 GitHub 仓库突然爆火,它提供了一套完整的小红书数据抓取工具包。AINews 深入调查了这款工具背后的技术军备竞赛、对社交电商分析的影响,以及它游走的法律灰色地带。Logto:开源身份管理新星,如何成为Auth0的“终结者”并重塑SaaS身份管理Logto,一款开源的身份验证与授权基础设施,正以现代替代者姿态迅速崛起,直指Auth0和Okta。它基于OIDC和OAuth 2.1构建,原生支持多租户、单点登录(SSO)和基于角色的访问控制(RBAC),精准瞄准B2B SaaS与AI应

常见问题

GitHub 热点“SwagUCP: The Open Protocol That Lets AI Agents Shop for You”主要讲了什么?

The agentic commerce space has long been fragmented: every AI agent framework invents its own checkout mechanism, forcing merchants to build custom integrations for each one. SwagU…

这个 GitHub 项目在“how does SwagUCP verify AI agent identity”上为什么会引发关注?

SwagUCP is not just another Shopify app; it is a reference implementation of a much larger idea: the Universal Commerce Protocol (UCP). At its core, UCP defines a set of RESTful endpoints and a discovery mechanism that a…

从“SwagUCP EC P-256 key generation security”看,这个 GitHub 项目的热度表现如何?

当前相关 GitHub 项目总星标约为 11,近一日增长约为 0,这说明它在开源社区具有较强讨论度和扩散能力。