AnyAgent 致力于构建一个开源、本地优先的通用 Agent 桌面工作台。 首个场景是 Coding Agent:让项目、任务、历史、浏览器、权限和工具等工作资产留在用户的工作环境里,Agent 可以更换。
Your workspace, any agent.
项目目前处于早期开发阶段。长期目标与设计方向见 VISION.md,工程设计与评审入口见 docs/README.md。
M0 暂以 固定 ZCode 源码 整体 bootstrap,首个开发组合限定 macOS Apple Silicon。准备 Node 24.14.0 和 pnpm 10.33.2 后,在干净检出中运行:
pnpm m0:bootstrap
bash scripts/m0-smoke.sh before
set -o pipefail
pnpm m0:desktop 2>&1 | tee .anyagent-runtime/m0-desktop.log桌面启动器将测试数据写入被 Git 忽略的 .anyagent-runtime/,不读取现有 ZCode 凭据;模型认证需要在此独立配置。M0 基线用于验证构建、启动和原生基础对话,不代表长期 Core + Reference App 架构已经实现。
冒烟检查:首次启动后跳过上游账户登录;在模型设置中自行配置一个 Chat Completions 供应商和密钥,并选择可用模型。输入 Reply exactly M0_GO_OK_9243,待模型回复 M0_GO_OK_9243 后,在另一个终端运行 bash scripts/m0-smoke.sh after。检查会从隔离数据库核对这轮原生对话,确认自启动标记以来未改写常见 ZCode 数据目录,并检查日志中没有隐式公共配置请求失败。使用 mise 的全新检出需先执行 mise trust。日志留在被忽略的本地目录;不要提交包含凭据或私人内容的日志。
AnyAgent 同时面向两层目标:
- Universal Agent Desktop:一个完整可用的桌面参考产品。
- Desktop Agent App Starter Kit:帮助开发者把已有 Agent 做成桌面产品。
长期形态是 Core + Reference App,通过 Adapter 接入不同 Agent,逐步覆盖 Chat、Task、Browser、Terminal、Diff、Git、Permissions、Workspace 与发行能力。
当底层引擎变化时,用户不必搬走工作区、项目历史、任务上下文、浏览器状态和工具配置。价值在于工作资产连续,而不是接入数量。
项目面向直接使用桌面产品的人、编写 Adapter 接入自研 Agent 的开发者,以及在 Core 和参考产品之上定制产品的团队。
AgentEngine 管理自身的 loop、context、原生工具和私有运行状态;产品层提供可跨 Engine 复用的共享能力,并通过 Adapter 映射到具体 Engine。共享能力包括 Workspace、Session、Persistence、Browser、Permissions、MCP、Skills、Plugins、Tools、Hooks 与 Jobs;事件和能力声明通过产品契约表达。
Workspace 与 Engine 是两条独立轴线,目标环境可以是 Local、SSH、WSL 或 Docker;组合是否可用需要实际验证。Session 绑定原 Engine,跨引擎迁移使用显式 Handoff,统一交互不绕过宿主或引擎的权限边界。
项目暂不开放社区参与,不接受外部 Pull Request。待项目稳定后,再考虑开放。
AnyAgent 使用 Apache-2.0 许可。
本项目基于 ZCode 二次开发,感谢 ZCode 的开源贡献。