首页 > 教程资讯 > 教程详情

Omnara 开源托管 Agent 平台:可自托管,接入任意模型与机器

AI 与前沿 编辑部小鹿 2026-10-22
文章分享

GitHub 项目 Omnara 在 README 中把自己写成开源托管 agent 平台,定位是 Claude Managed Agents 与 OpenAI Agents API 的可自托管替代方案。发布方称,开发者可以通过 API 在任意模型、任意机器上运行 AI agent,工具、密钥(secrets)、权限和流式输出(streaming)都做在平台里。许可为 Apache 2.0,可以免费自托管,也可以使用 Omnara Cloud。

谁在接入,运行落在哪里

按 README 的架构说明,用户的应用通过 REST API 或 TypeScript SDK 接入,团队则通过 CLI、控制台以及 Slack、Discord、GitHub 接入。API 负责启动、输入、事件流和审批。每个 agent 的事件日志存在 Postgres 里;README 写明,这份记录就是 agent 的状态,因此任意 worker 可以在崩溃或重启后把同一个 agent 接回来。Worker 是无状态进程,负责组装模型上下文、调用模型并执行工具,只在 agent 进行一轮操作时占用,所以一个 worker 可以服务多个 agent。

机器侧运行 omnarad 守护进程,由机器向外连接 Omnara,agent 可以在上面执行命令,不需要入站端口。README 还写到,平台另外使用 Redis、存放附件和工具输出的 blob storage,以及一套 memory filesystem。

模型、工具与运行环境

README 的功能说明列出可自带密钥接入的模型:OpenAI、Anthropic、OpenRouter、Amazon Bedrock、LiteLLM、Ollama,或任何兼容端点,包括用户自己托管的模型。FAQ 把兼容范围写成 OpenAI Responses、OpenAI Chat Completions 或 Anthropic Messages 端点。

工具包括内置工具、skill、MCP 与自定义工具。内置工具覆盖 shell 命令、文件、网页搜索与抓取,以及向人提问。权限由平台执行:每个工具可以立即运行、先询问一个人,或被禁止;在有人批准或拒绝之前,agent 会等待。

运行环境有两条路。一条是来自 11 家提供商的沙箱,名单为 Arker、Blaxel、boxd、CreateOS、Daytona、E2B、Freestyle、Modal、Superserve、Tenki、Unikraft。另一条是用户自己的 macOS 或 Linux 笔记本、虚拟机、容器:安装 Omnara 守护进程后即可跑命令、改文件,不需要入站端口或 SSH 密钥。README 称,一个 agent 可以同时使用多台机器;若笔记本离线,agent 可以改在沙箱里继续,再用 git 把工作同步回来。每一步都会保存,因此崩溃、重启或机器断开后可以从中断处继续。

用 YAML 启动,也可以交给编码 agent

Agent 用 YAML 描述指令、模型和机器。Omnara Cloud 的快速开始假定首个项目已带模型提供方 omnara-openrouter 和沙箱池 default-pool,示例配置使用模型名 anthropic/claude-fable-5.1。启动命令需要 Node.js 22 或更新版本:

npx omnara agents launch --file agent.yaml

终端里可以用 npx omnara agents chat <agent-id> 继续对话,也可以在控制台查看工具调用并回复。同一流程可以用 TypeScript SDK @omnara/sdk 或 REST API 完成。README 另给编码 agent 一条提示词:“Help me set up Omnara by following https://www.omnara.com/SKILL.md”。

编码 agent 还可以通过 MCP 管理 Omnara agent。README 写明,Claude Code、Codex、Cursor 或任何支持 OAuth 的 MCP 客户端可连接到 https://app.omnara.com/mcp,在浏览器里登录,不必粘贴 token。Claude 可从 connectors directory 添加;官方 MCP Registry 中的名称是 com.omnara/omnara。对应命令为 claude mcp add --transport http omnara https://app.omnara.com/mcp 与 codex mcp add omnara --url https://app.omnara.com/mcp,之后在 Claude Code 里用 /mcp 登录,或在 Codex 里执行 codex mcp login omnara。

仓库 examples/ 里每个例子是一份 agent.yaml 加一份 SKILL.md。README 列举的方向包括:在 Slack、Discord 或 GitHub pull request 里修问题并开 PR 的编程 agent、对照仓库检出做 PR review 的 agent、排查如 5xx 尖峰等生产问题的 SRE agent、在真实浏览器里做长任务的 agent,以及对比昨日用量与 7 日均值的 PostHog 分析 agent。

自托管与 README 里的价格对照

自托管需要 Docker 与 Compose。README 给出的启动命令是 docker compose -f compose.yaml --profile app up -d。打开 http://localhost:8000 注册;本地开发时,验证链接打印在 docker compose logs api 里,不需要邮件服务。若要从源码构建而不是用已发布镜像,命令是 docker compose --profile app up -d --build。新实例还没有模型和机器,需要在控制台添加模型提供方和模型,在 Machines 下连接这台电脑,并共享给项目。沙箱要等实例有公开 URL 之后才能用。把 CLI 指到本机的命令是 npx omnara config --api-url http://localhost:8000/api/v1 --issuer-url http://localhost:8000,然后执行 npx omnara login。自托管时,agent.yaml 里要换成自己的提供方和模型名,并把 machine_pool_name 换成 machine_name。

README 写明,本地默认配置是 intentionally insecure(刻意不安全)。正式部署应参照自托管指南和配置参考。FAQ 称,Omnara Cloud 与自托管部署上的 API、CLI、SDK 和配置格式相同。从源码参与开发时,README 要求 go.mod 中声明的 Go 版本、Node.js 24 或更新版本并带 Corepack、ripgrep,以及 Docker 与 Compose。

价格以发布方在 README 中的对照为准,不是第三方实测。对比表称:Claude Managed Agents 闭源,定价为 Claude token 费率再加每活跃会话小时 0.08 美元;OpenAI 一侧,harness(Codex)开源,托管服务属于 OpenAI,费用为模型费率再加上 OpenAI 工具和托管沙箱的标准费率。Omnara 自托管免费;Omnara Cloud 无平台费,自带密钥和机器免费,或按量使用其模型与沙箱。FAQ 把 Cloud 的按量部分写成:模型按提供商 token 费率,沙箱按活跃时间和保留存储计费。

同一张表还写了数据存放:自托管时,agent 历史在用户自己的 Postgres 中,可用于分析、评估和训练数据;Omnara Cloud 上由 Omnara 保存,并可通过 API 查询。表中对另外两家的表述是:Claude Managed Agents 的历史由 Anthropic 保存,可通过 API 读取和删除,目前不符合 Zero Data Retention 或 HIPAA BAA;OpenAI 保存历史,不支持 Zero Data Retention,且仅美国数据驻留。这些都是 README 对比表中的说法。

来源