Agent-net 开源 Webagent 框架,用 Go 编写,为公共商业 Agent 提供标准封装;开发者只需填充业务逻辑即可让网站拥有 Agent 间通信与交易能力,支持多 Agent 互操作。
Agent-net 团队发布了 Webagent,这是一个开源的 Go 工具包,用于构建面向公众的业务型 AI Agent。这支团队正在打造一个 AI Agent 之间的交易市场——让 AI Agent 可以相互发现、建立信任并互相支付。简单来说,你把网站给它,它就还你一个 Agent,然后让这个 Agent 去和其他 Agent 对话。企业不需要写编排代码,只需要填写一份声明式的 JSON 规范,从 9 个可插拔槽位中各选一个提供商,然后运行 webagent serve。
可用性:可以部署,但有条件限制。该仓库采用 Apache 2.0 协议开源,构建通过且能正常运行——目前已支持 Slack、WhatsApp 和 HTTP 通道的 Agent,背后由 MCP 工具驱动。但目前仍标为 v0 版本,浏览器动作提供商、OAuth 限定的 MCP、OTel 导出以及 AgentNet 身份认证和计费层都还未完成。
槽位与提供商
Webagent 由 Go 编写。一个 Agent 由一个 Brain(一个 LLM 加上指令)构成,Brain 绑定到 core/ 中定义的一组槽位。每个槽位都是一个服务提供商接口(SPI),在 spi/ 目录下有提供商注册表,并设有一个内置默认提供商:
| 槽位 | 内置提供商 | 默认值 |
|---|---|---|
| Retrieval | live, keyword, hybrid | live |
| Memory | sessions | session |
| Guardrail | basic, off | basic |
| Channel | a2a, web, slack, whatsapp(telegram 为 stub) | a2a |
| Secrets | env, file, static | env |
| Presenter | text, terminal(QR), web | text |
| Model | echo, openrouter, gateway | echo |
| Action | none, demo, mcp | none |
| Observability | none, log, memory | none |
该设计服务于三类角色、共用同一套契约:通过选单配置的企业、通过注册自定义提供商扩展功能的企业,以及发布适配器的合作伙伴。没有人需要去 fork 核心代码。每个提供商必须通过对应槽位的 conformance 测试套件才能获得认证。
安全由代码强制,而非 prompt 强制
最重要的架构决策是 action.Guard。Agent 持有的每一个工具——无论来自 Action 提供商还是由宿主注入——都会被包装起来,使得选定的 guardrail 在动作执行前先运行。模型无法绕过它。DESIGN.md 将整个项目定位在一个研究结论上:决定 Agent 成功与否的是架构,而非模型能力,并引用了 arXiv 2511.19477 以及同一模型下 85% 与 50% 的任务成功率差距。
默认的 echo brain 不需要任何凭证,因此 webagent validate 和 webagent serve 可以开箱即用,配合 zomato.json 和 bakery.json 两个示例规范即可运行。要驱动真实模型,webagent keys set openrouter 会将密钥存入 OS 配置目录,权限模式为 0600。密钥永远不会写入规范文件,而导出的环境变量始终优先生效。openrouter 和 gateway 都是 OpenAI 兼容客户端,带有工具调用循环。
已有 MCP 服务器的企业只需一个规范块就能成为一个 Acting Agent。MCP Action 提供商通过 Streamable HTTP(JSON 和 SSE)连接,支持 bearer 或 API-key 认证,在构建时完成握手,然后将每个工具交给 Agent(工具位于 guard 之后)。因此 validate 报告会显示真实的工具数量。
Slack 和 WhatsApp 通道适配器验证每个入站 webhook 签名,立即确认回复,通过平台 API 发送回复,忽略自身消息,并对重试投递进行去重。Slack 指向 /slack/events;Meta 的回调则发往 /whatsapp/webhook。
密钥遵循命名规则:任何以 Secret 结尾的配置键都是引用,在构建时通过选定的 vault 解析,因此规范文件可以安全提交。无法解析的引用会导致构建失败,而不是让通道在没有凭证的情况下启动。Observability 发出与 OpenTelemetry GenAI 规范对齐的每轮 TurnTrace,eval/ 测试工具包则运行带有检查的场景。
一份 JSON 规范、9 个槽位、各选一个提供商;其余交给 webagent serve
每个工具调用在执行前都经过 action.Guard
目前已支持:OpenRouter 或 gateway Brain、MCP 工具、Slack、WhatsApp、HTTP 通道
尚未完成:浏览器动作、OAuth MCP、OTel 导出、AgentNet 计费
Apache 2.0、Go、v0;上线生产前请阅读 deferred-hardening 清单
点击查看 GitHub 仓库和发布帖。所有荣誉归该项目的研究人员。另外,欢迎关注我们的 Twitter,别忘了加入我们的 15 万+ ML SubReddit 并订阅我们的 Newsletter。等一下!你用 telegram 吗?现在也可以加入我们了。
想与我们合作推广你的 GitHub 仓库或 Hugging Face 页面或产品发布或网络研讨会等?请联系我们。
Michal Sutter 是数据科学专业人士,拥有帕多瓦大学数据科学硕士学位。凭借统计学分析、机器学习和数据工程的坚实基础,Michal 擅长将复杂数据集转化为可操作的洞察。