虚拟办公室项目推出通用Provider SDK,以统一契约对接OpenClaw、Codex CLI、Claude Code等六种AI编程工具。
My Virtual Office v0.7.0 真正的亮点不是又一个适配器,而是那份契约。
My Virtual Office 现在拥有了一个 Universal Provider SDK,让一个自托管的工作空间能够通过相同的清单驱动的集成层连接到 OpenClaw、Hermes、Codex CLI、Claude Code、OpenCode 和 Antigravity。
发布说明:https://github.com/eliautobot/my-virtual-office/releases/tag/v0.7.0
大多数 Agent UI 最终都会变成一堆提供商特有的碎片。每个框架都有自己的设置、会话、文件、认证模型、工具和流式结构。这在你想让 UI 保持一致感之前还能凑合用。
v0.7.0 将这些工作统一到了一份 provider 契约中。
这意味着 New Agent、Agent Desk、设置、原生文件、会话、AgentSkills、聊天流、状态、错误和审批都通过一个通用的 SDK 接口流转,而不是被当作一次性逻辑单独连接。
OpenClaw、Hermes、Codex CLI、Claude Code、OpenCode 和 Antigravity 共用一份 Universal Provider SDK 契约。
清单驱动的设置覆盖连接、模型、权限、发现、活动会话、认证状态、原生文件、New Agent、Agent Desk 和 AgentSkills。
provider 中立的渐进式流式处理,涵盖文本、thinking、工具调用/结果、审批、状态、完成、中断和错误。
原生外部 Agent 发现机制,暂时离线的 Agent 会保留为离线状态,这样可以在不删除原生文件的情况下安全地遗忘它们。
面向第三方 vo_provider_*.py 适配器的文档。
聊天窗口变得更难被弄坏了
这个版本在 OpenClaw、Hermes、Codex CLI、Claude Code 和 Provider SDK 流之间添加了一条共享的事件/ reducer 管道。
这个 reducer 保持 commentary、thinking、工具、结果和最终答案的顺序。它将快速返回的工具结果与对应的工具调用配对,在完成或取消时清除过时的 typing/running 卡片,修复延迟的最终气泡,并在不重复提供商推理的情况下恢复刷新的历史记录。
完整的聊天窗口和黄色的办公室内聊天气泡现在都与每个 Agent 所选的原生会话保持同步。次要聊天窗口的大小处理更好,保留手动水平调整大小,并在桌面和移动端正确重新停靠。
原生文件被严格锁定了
SDK 并不意味着提供商可以自由访问文件系统。
Provider 清单显式地允许白名单 Virtual Office 可以列出、读取、创建、编辑或删除的原生文件。凭据文件和解析声明的工作区文件保持隐藏。遍历和符号链接逃逸被拒绝。AgentSkills 需要有效的 frontmatter。覆盖和删除操作会创建可恢复的备份。
认证保持原生
Virtual Office 不打包或暴露提供商凭据。
OpenClaw、Hermes、Codex CLI 和 OpenCode 完成了已连接的验收测试。Claude Code 和 Antigravity 的生命周期、设置、原生文件和 skills 集成通过了,但模型支持的聊天需要用户通过原生 CLI 进行身份验证。
这个版本通过了所有六个 provider 契约和清单/UI 契约的针对实际产品的测试,外加 Python provider/产品测试、聊天会话检查、聊天流架构检查、收集检查、review-parser 检查、工作流检查和项目 CRUD 检查。
一个真实的 OpenCode 模型回合通过了渐进式 SDK 事件流完成。这个发布树还通过了个人账户标识符、用户特定的主路径、私有/tailnet 地址、高置信度 API 令牌和私钥的扫描。
My Virtual Office 是自托管且开源的。
发布说明和下载:https://github.com/eliautobot/my-virtual-office/releases/tag/v0.7.0