跳到主要内容Skip to main content
← Harness

OpenHands Agent CanvasOpenHands Agent Canvas

OpenHands(All-Hands-AI)
TypeScript Python 开源 MIT 自托管 平台型 WebUI 调度层 ACP 沙箱 定时任务 webhook 多后端 partial lifecycle: active 核验Checked 2026-10-01

它是个自托管的 agent 控制中心。官方 README 现在管它叫 Agent Canvas。

它带的是一整套栈:Web GUI、Terminal UI、CLI、REST API 都在里面。 它管的 agent 不止自家那一个。Codex、Claude Code、Gemini 都能挂上去跑。

官方定位原文:The self-hosted developer control center for coding agents and automations. Run OpenHands, Claude Code, Codex, Gemini, or any ACP-compatible agent across local, remote, and cloud backends.

It is a self-hosted control centre for agents — the official README now calls it Agent Canvas.

It ships as a whole stack: a web GUI, a terminal UI, a CLI and a REST API all live in it. And it drives more than its own agent — Codex, Claude Code and Gemini can all run on top of it.

Official positioning: The self-hosted developer control center for coding agents and automations. Run OpenHands, Claude Code, Codex, Gemini, or any ACP-compatible agent across local, remote, and cloud backends.

适合与不适合When to use it, when not to

适合:agent 要放自己服务器 7×24 跑;需要定时/webhook 触发(Slack / GitHub / Linear / Notion); 想一个界面统管 Codex / Claude Code / Gemini 等多种 agent;需要 per-conversation 容器隔离; 前端与运行时分离部署。

不适合:只想把 agent 嵌进自己的 Python 进程(用 software-agent-sdk 或 OpenAI Agents SDK); 单机临时用一下(它是一整套栈)。需要细粒度多用户权限的也不行。RBAC / SSO 仅 Enterprise,OSS 档单用户。

What it is good for:

  • Running agents 7×24 on your own server
  • Scheduled or webhook triggers (Slack / GitHub / Linear / Notion)
  • Managing several agents from one interface, including ACP-compatible ones such as Codex, Claude Code and Gemini
  • Per-conversation container isolation
  • Deploying the front end separately from the agent runtime
  • Long sessions that need the official condenser to hold down context cost

What it is not for:

  • Embedding an agent into your own Python process — use software-agent-sdk or OpenAI Agents SDK for that
  • A one-off job on a single machine — it is a whole stack, not a library
  • Multi-user, fine-grained permissions — the official comparison table puts Multi-user RBAC in Enterprise, so OSS self-hosting has a single key only

中文生态China availability 国产 / 国内可直接用 / 备案状态 · 快照domestic / direct access / CAC filing · snapshot 2026-10-20

出品属地Origin
国外出品foreign-made 国外主体(网信办公示名单未见对应备案主体)。foreign entity (no matching filing entity in the CAC registry).
国内使用Direct access
大陆可直连direct OK 官网直连实测 200。official site measured 200 direct.
备案状态CAC filing
未见于备案名单not in filing list:未见于网信办公示名单(2026-10-20 检索 13 批附件,https://www.cac.gov.cn/2024-04/02/c_1713729983803145.htm);该产品未面向大陆公众提供服务,备案不适用。not in the CAC public registry (13 batch attachments searched 2026-10-20, https://www.cac.gov.cn/2024-04/02/c_1713729983803145.htm); the product does not serve the mainland public, so filing does not apply.

备案信息以网信办《生成式人工智能服务已备案信息》公示名单为准(按批次滚动更新,本站只抄编号不解读);「大陆可直连」是本站从大陆网络直连实测的结果,不是厂商承诺。GitHub 类站点当日实测有波动,口径写在依据里。Filing status is quoted from the CAC public registry (updated batch by batch; this site copies the number and does not interpret it). "Direct access" is this site's own reachability measurement from a mainland network, not a vendor promise. GitHub-hosted sites fluctuated on the measurement day — the note says so.

固定坐标系Fixed coordinate system

8 个维度dimensions, 与同分区其他对象逐项可比each comparable item by item against others in the same section.

模型与开放条件Model & openness

官方口径:任何 LiteLLM 支持的模型都能接,它自己带 LiteLLM 网关层(已核验)。

已验证可用的 provider(Basic 设置下拉里能选):

  • OpenHands provider
  • Anthropic
  • OpenAI
  • Mistral AI

Custom Model 怎么写:用 provider 前缀指定,遵循 LiteLLM 的 provider 规范; 另有 Base URL 可自定义,本地与自托管模型由此接入。 官方说保存 local LLM profile 时会先向后端校验。

LLM profiles:最多 10 套配置并存。可在会话中或 /model 切换。 也可由内置 SwitchLLMTool 让 agent 动态选型。

⚠ 两处官方未给出。一是完整 provider 名单。二是「any LLM」的对齐度数据。 即它在工具调用与 structured output 上是否对齐。核验范围:llm-settings 页。

这一项对该对象尤其重要:它同时是别人的调度层。 「Codex / Claude Code 跑在它上面」这一情况比较特殊。能用哪些模型由那个 agent 决定。

官方 LLM settings 页原文:"This can be any model that is supported by litellm"

运行位置Where it runs

它有四种官方部署形态。这是本对象最有实用价值的部分。README 四个 Option 全核验。

  • Option 1 无沙箱本地跑:npm install -g @openhands/agent-canvas 然后 agent-canvas,起完整本地栈,要 Node.js 24+ 与 uv; 可用 --frontend-only / --backend-only 拆开跑
  • Option 2 Docker 沙箱:docker run 官方镜像, 需预先准备 PROJECTS_PATH 宿主目录,agent 可访问该目录下的项目
  • Option 3 每会话独立容器:OH_CONVERSATION_RUNTIME=docker agent-canvas, 每次新会话起自己的容器与 Agent Server,适合并发跑多个 agent
  • Option 4 从源码跑:clone + npm install + npm run dev

入口地址:http://localhost:8000(Docker 镜像是 /canvas)。

后端可以远程切换,这是它作为调度层的核心能力:官方说 Agent Server 可跑在笔记本 / Mac Mini / 云上 VM / OpenHands Cloud, Canvas 前端可以在多个 Server 之间切换。

关于 Option 3 的官方说明。容器会挂载会话的 workspace 与持久化状态。 容器替换后文件与对话历史仍在。

本地文件Local files

本地文件能碰多少,取决于你选哪种部署形态 —— 官方把这个变量讲得很清楚。

  • 无沙箱形态:agent 对文件系统有全量访问权限,官方两次打 WARNING
  • Docker 形态:访问范围收敛到 PROJECTS_PATH 挂载的目录
  • 每会话容器形态:官方提示共享同一宿主工作区的会话仍会共用同一批文件, 建议用独立目录或 worktree 避免冲突编辑
  • 后端远程时(云上 VM / Cloud backend):agent 在远端 workspace 里跑, SDK 用 Workspace(host=..., working_dir="workspace/project") 指定远端工作目录, 文件与命令操作都在服务端执行

官方未说明「把本地仓库自动同步到远程后端」的机制(已查 agent-server 与 runtime 页)—— 仓库需先位于远端,或自行搬运。

官方 WARNING 原文:"This runs the agent-server directly on the machine you're installing on — the agent will have full access to your filesystem!"

关机后的任务Tasks after shutdown

后台任务是它最突出的强项,也是它与其他 harness 站对象最大的差别。

把 agent 跑在云上服务器的最大好处有两个。一是关掉笔记本它还在跑。 二是更容易被第三方服务触发。比如 Slack、GitHub 或 Datadog。

配套是独立仓 OpenHands/automation,提供两种触发方式:

  • 定时(schedule)
  • webhook 事件

官方特性表列了可集成的第三方。它们是 Slack、GitHub、Linear 与 Notion。

对比本站其余对象:OpenAI Agents SDK、Deep Agents、Codex SDK 的 thread 状态 都在自己进程 / 自己机器上,关了就没了。 把「关掉笔记本后 agent 仍在跑」当卖点做的,只有这一个。

官方 README 原文:it "allows your agents to continue running even when your laptop is shut"

同一页亦点名 Slack、GitHub、Datadog 是更容易接入的触发渠道。

核验 OpenHands/automation(2026-10-01):Python,MIT,32★,活跃。

工具与扩展Tools & extensions

它有两条接入线:自身工具集 + MCP;另有 ACP 用来调度第三方 agent。

① 自带 agent(CodeAct / software-agent-sdk)的默认工具集, 官方 start-conversation API 示例列出:

  • terminal
  • file_editor
  • task_tracker
  • browser_tool_set(cli_mode 可关掉浏览器工具)

② MCP 支持已核验,官方有 MCP Servers 专页:

  • CLI 用 openhands mcp,Canvas 用 Customize > MCP Servers
  • 传输覆盖 http / sse / stdio
  • 认证支持 Bearer / API Key / OAuth
  • SDK 侧由 mcp_config(FastMCP 格式)注入 mcpServers

③ 通过 ACP(Agent Client Protocol) 调度第三方 agent (Claude Code、Codex、Gemini 等)。

⚠ 修正上一版档案:本对象并非只走 ACP —— MCP 同样是官方能力。

上下文与记忆Context & memory

上下文这一点,官方有明确机制:context condenser。本维度证据已补齐。

默认实现是 LLMSummarizingCondenser(继承 RollingCondenser), 参数 max_size / keep_first。它超阈值时保留最近的消息不动,只摘要较早的内容。

Canvas 侧的入口在 Settings > Condenser; LLM settings 页有 "Enable memory condensation" 与 "Memory condenser max history size" 两个开关。

官方还说明。配了 condenser 之后,超窗改为发 condensation 请求事件。 而不再抛 LLMContextWindowExceedError。agent 摘要旧历史后继续。

⚠ 按本站「状态 ≠ 上下文」的口径。run history 与容器可替换后的持久化属于状态侧。 上面的 condenser 才是上下文侧的官方手段。两者分开算。

官方 SDK 指南原文:context condenser "intelligently summarizing older parts of the conversation while preserving essential information"; 超阈值时 "Keeps recent messages intact"、"Summarizes older content"。

权限与限制Permissions & limits

这一块官方做得最细,也是最需要认真读的部分。

沙箱:官方给了两种收敛手段(见 local_files)。一是 Docker 沙箱,二是每会话独立容器。 但官方同时明确提供无沙箱形态,并两次挂 WARNING。

认证用的是 API key,不是用户体系:

  • 生成 key:openssl rand -base64 32,赋给 LOCAL_BACKEND_API_KEY
  • --public 模式下 key 不烘进前端,用户首次打开 UI 要手动粘贴 key 才能用; 之后每个 /api/* 请求都要带 X-Session-API-Key 头
  • 默认绑定 loopback-only(127.0.0.1)。官方说明这是为了让自动注入的 session key 不被局域网其他机器拿到
  • 要监听 0.0.0.0 时 key 不再注入,改用同样的 API-key 输入界面
  • 官方提醒用 export 而不是命令行参数传 key, 避免出现在 ps aux 进程列表里
  • 暴露到公网时官方另有防火墙要求(Cloud Firewall / AWS Security Group / GCP firewall rule)

⚠ 多用户与权限分级,官方把这一档划给 Enterprise。 官方部署对比表明示 Open Source 档「Users = 1」, Multi-user RBAC 与 SSO/SAML 只有 Enterprise 有(OSS 栏为「—」)。

因此 OSS 自托管不含用户 / 角色 / 审计体系。上面那把会话 key 就是全部。 需要多用户分级与审计,须上 Enterprise。

docs/SELF_HOSTING.md(核验 286 行)给的就是这套 API key 机制。

核验:已查 enterprise 页与部署对比表。

适合什么任务Best for

能做的事:

  • 把 agent 放到自己服务器上 7×24 跑
  • 定时或 webhook 触发(Slack / GitHub / Linear / Notion)
  • 用一个界面统管多种 agent(含 Codex、Claude Code、Gemini 等 ACP 兼容的)
  • 需要 per-conversation 隔离容器
  • 团队里前端 / 平台与 agent 运行时分离部署
  • 长会话需要官方 condenser 控制上下文成本

不适合做的事:

  • 只想要一个轻量库,把 agent 嵌进自己的 Python 进程 (那种需求请用 software-agent-sdk 或 OpenAI Agents SDK)
  • 单机临时用一下 —— 它是一整套栈,不是库
  • 需要多用户与细粒度权限分级 —— 官方把 Multi-user RBAC 划给 Enterprise, OSS 自托管只有单 key

头号误解Top misconception

  • 以为是 Python SDK —— 主仓是 TypeScript 的 Web 控制中心;编程入口在 OpenHands/software-agent-sdk(另 1,190★)Assuming it is a Python SDK — the main repo is a TypeScript web control centre; the programming entry point is OpenHands/software-agent-sdk (a further 1,190★)
  • 看仓库名与 description 以为是「AI 驱动的软件开发工具」 —— README 首屏标题已是 Agent Canvas,定位是控制中心Judging by the repo name and description that it is an "AI-driven software development tool" — the README's front-page title is now Agent Canvas, and the positioning is a control centre
  • 以为它是 Codex SDK / Claude Agent SDK 的竞品 —— 它是它们的调度层(README 明确说能跑这些 agent)Assuming it competes with Codex SDK / Claude Agent SDK — it is their orchestration layer (the README says it can run those agents)
  • 直接跑 Option 1 就上线 —— 官方在该选项上打 WARNING:agent 对你的文件系统有全量访问权限Going straight to Option 1 in production — the official docs put a WARNING on that option: the agent has full access to your filesystem
  • 把 --public 模式理解成「更方便」—— 它是不把 key 烘进前端的防护手段,用于非本机访问Reading --public mode as "more convenient" — it is the safeguard that keeps the key out of the front end, meant for non-local access
  • 以为「有 run history」就等于「有上下文管理」—— 前者是状态;后者有独立机制(LLMSummarizingCondenser / RollingCondenser)Assuming "has run history" means "has context management" — the former is state; the latter has its own mechanism (LLMSummarizingCondenser / RollingCondenser)
  • 以为它只用 ACP、不支持 MCP —— 官方 MCP Servers 专页写明 CLI 与 Canvas 均可配(http / sse / stdio + Bearer / API Key / OAuth);ACP 是调度第三方 agent 的另一条线Assuming it uses ACP only and does not support MCP — the MCP Servers page says both the CLI and the Canvas can configure it (http / sse / stdio plus Bearer / API Key / OAuth); ACP is the separate line for orchestrating third-party agents

未知项清单Known unknowns

  • 「any LLM」的 provider 能力对齐度(清单已核:原文 "any model that is supported by litellm")
  • 对话上下文压缩的端到端效果(机制已有官方 condenser,压缩率待实测)
  • OSS 档多用户方式(正式 RBAC / SSO 在 Enterprise,OSS 默认单用户)
  • ACP 与 MCP 的定位差异(两者都可用;边界官方未系统对比)
  • Enterprise 档的具体内容(官方仅标 Custom pricing / Contact Us;报价按 D9 口径本站不采)
  • Individual 每日 10 轮之外,超出后的行为(停用 / 提示升级 / 其它,官方页未写)
  • 后端远程部署时本地代码库的同步机制
  • software-agent-sdk 的 API 形态与版本独立节奏
  • 每会话容器在并发压测下的资源与稳定性

证据来源Evidence sources

判断可回到以下一手源复核。本站核验日Every judgement can be rechecked against the primary sources below. Verified on 2026-10-01,内容更新日content updated on 2026-10-01。

类型Type名称Name链接Link
repoOpenHands/OpenHands · 仓库(Agent Canvas 控制中心,89,675★,MIT,核验 2026-10-01)https://github.com/OpenHands/OpenHands
docs主README(Agent Canvas 定位、四种部署形态、ACP 接入、Repository boundaries 表)https://github.com/OpenHands/OpenHands/blob/main/README.md
docsdocs/SELF_HOSTING.md(API key、--public 模式、loopback 默认、防火墙要求)https://github.com/OpenHands/OpenHands/blob/main/docs/SELF_HOSTING.md
pricing官方定价页(核验 2026-10-01:Open Source 与 Cloud Individual 均为免费档、Enterprise 定制;Individual Max Daily Conversations = 10 而 Open Source 为 Unlimited;BYOK 与 "at cost, with no markup";Enterprise 可部署客户自有 VPC、SAML/SSO、RBAC、每用户无限并发)https://www.all-hands.dev/pricing
repoOpenHands/software-agent-sdk · 仓库(Python SDK 与 Agent Server 的真实所在,1,190★,MIT)https://github.com/OpenHands/software-agent-sdk
repoOpenHands/automation · 仓库(定时与 webhook 分发,32★,MIT)https://github.com/OpenHands/automation
changelogReleases(v1.24.0 @ 2026-09-25)https://github.com/OpenHands/OpenHands/releases
docs官方文档 · LLM settings / LLM profiles(any model supported by litellm、已验证 provider、最多 10 profiles、memory condensation,核验 2026-10-08)https://docs.openhands.dev/openhands/usage/settings/llm-settings
docs官方文档 · Context Condenser(SDK 指南:LLMSummarizingCondenser / RollingCondenser,核验 2026-10-08)https://docs.openhands.dev/sdk/guides/context-condenser
docs官方文档 · Runtime Architecture(Docker 沙箱、volume mounts、RemoteRuntime,核验 2026-10-08)https://docs.openhands.dev/openhands/usage/architecture/runtime
docs官方文档 · MCP Servers(CLI/Canvas 配置、http/sse/stdio 传输与认证,核验 2026-10-08)https://docs.openhands.dev/openhands/usage/cli/mcp-servers
docs官方文档 · Agent Server Package(远程 workspace、working_dir、session API key,核验 2026-10-08)https://docs.openhands.dev/sdk/arch/agent-server
docs官方文档 · OpenHands Enterprise vs OSS 部署对比表(Multi-user RBAC / SSO-SAML 仅 Enterprise,OSS Users = 1,核验 2026-10-08)https://docs.openhands.dev/enterprise
docs官方文档 · ACP Agents(README 指向)https://docs.openhands.dev/openhands/usage/agent-canvas/acp-agents
reponpm 包@openhands/agent-canvas(README 安装入口)https://www.npmjs.com/package/@openhands/agent-canvas

实测记录Measured runs

本站尚未完成实测。测试协议见 tasks/_protocol.md。

实测建议(按本对象形态定制):

#测什么为什么值得测
1software-agent-sdk 单独用(不启 Canvas)能不能跑最小 agent决定你到底需不需要这一整套栈
2长任务(跨天)condenser 的压缩效果与成本变化机制已知(LLMSummarizingCondenser),压缩率需实测
3每会话容器模式的真实隔离强度(同宿主工作区会共用文件这条要实测)官方已提示冲突风险
4Docker 形态下 agent 能否绕过 PROJECTS_PATH 触达宿主其他路径沙箱有效性是选型前提
5挂 Claude Code / Codex 作为 ACP agent 的实际接入成本它最独特的卖点,值不值得取决于这个
6webhook 触发的幂等性与重复触发处理定时/webhook 是它的主打场景

形态澄清:这不是 SDK,是平台,而且它在别人之上

本站三种编程底座形态里,它属于第 3 类 自带完整运行时, 而且是其中唯一带 Web UI 的一个。

三个容易踩的认知落差

① 主品牌已改成 Agent Canvas,但仓库名没变。

它现在的定位是 control center(控制中心)。它不再写作「一个开发工具」。 仓库 description 却还是老样子。

仓库 description 原文:"🙌 OpenHands: AI-Driven Development"; README 首屏标题已是 Agent Canvas。

② 它能跑的不只是 OpenHands 自己的 agent。

官方列了四种,并留了一个开放条件。

README 原文:"OpenHands, Claude Code, Codex, Gemini, or any ACP-compatible agent"

它不是本站收录的 Codex SDK 或 Claude Agent SDK 的竞品。它们是调度层与被调度者的关系。

所以选型问题不是「选它还是选 Codex」,而是「要不要一个界面来统管 Codex / Claude Code / Gemini」。

③ 真正的编程入口在另一个仓。

下面是官方给出的三仓分工,来源是这张表:

官方有一张 Repository boundaries 表,本档逐字记录。
仓库职责核验(2026-10-01)
OpenHands/OpenHands前端控制中心、后端选择、本地栈编排89,675★ · MIT · TypeScript
OpenHands/software-agent-sdkPython SDK、Agent Server、agents、tools、conversations、workspaces、events1,190★ · MIT · Python
OpenHands/automation定时调度、webhook、run history、分发32★ · MIT · Python
⚠ 89,675★ 是控制中心的星数,不是 SDK 的星数。 如果你要的是「嵌进自己 Python 进程的 SDK」,那对象是 software-agent-sdk(1,190★), 不是本条目。 本站本次未单独收录它 —— 见下方实测建议第 1 条。

档位:三档里两档是免费档,但「免费」有个硬上限

2026-10-01 核验官方定价页,结论可能与预期不同:没有「付费个人档」。 (报价按 D9 口径不存,见官方定价页。)

档位部署用户每日对话
Open Source(免费)本地1Unlimited
SaaS Individual(免费)云端110
Enterprise(定制,Contact Us)SaaS 或客户自有 VPCUnlimitedUnlimited

① 最关键的一条落差:云端免费档每天只有 10 轮对话。

官方对比表同一栏:Open Source = Unlimited,Individual = 10,Enterprise = Unlimited。 「免费」不等于「不限量」。想不限量只有两条路:本地跑,或者上 Enterprise。

② Individual 支持自带 key(BYOK)。

没有 key 时可用 OpenHands LLM provider,可在 Settings > API 生成 API key, 供 CLI / Local Web UI / Software Agent SDK 使用。 官方强调它按成本价、零加价、按量付费。

官方没有公开实际单价表,只能确认官方声明不加价(本站按 D9 口径也不存报价)。

官方 FAQ 原文:Open Source 与 Cloud 各档都支持自带 LLM key; 无 key 时走 OpenHands provider,官方强调 "at cost, with no markup"。

③ Individual 还有一批 OSS 档没有的东西。 它们包括云端访问(桌面 + 移动端)与 Cloud API(用于自动化与脚本)。 还有 Jira 与 Slack 集成、Secrets、组织支持。

④ Enterprise 实际是另一套东西,不是「多几个用户」:

  • 可部署在客户自有 VPC
  • Enterprise SAML/SSO、多用户 RBAC
  • 集中团队账单
  • 每用户无限并发会话
  • Large Codebase SDK
  • Named Customer Engineer + 共享 Slack 频道 + 优先支持

报价需联系销售。

四种部署形态:这是本对象最实用的部分

四个 Option 全部核验:

核验来源:官方 README 的 Quickstart 四个 Option。
形态命令要点沙箱要Node 24+/uv?
① 无沙箱本地npm i -g @openhands/agent-canvas → agent-canvas❌ 无是
② Docker 沙箱docker run ... ghcr.io/openhands/agent-canvas:1.24.0✅收敛到 PROJECTS_PATH否
③ 每会话独立容器OH_CONVERSATION_RUNTIME=docker agent-canvas✅每会话隔离是 + Docker
④ 从源码clone → npm install → npm run dev❌ 无是

① 和 ④ 官方都挂了同一条 WARNING。

This runs the agent-server directly on the machine you're installing on — the agent will have full access to your filesystem!

③ 适合并发:每次新会话起自己的容器与 Agent Server。 官方特别说明容器会挂载会话的 workspace 与持久化状态。容器替换后文件与对话历史仍在。 这对本站关心的「可靠长期运行」是正面证据。

但官方也提醒:用同一宿主工作区的会话仍会共用同一批文件, 建议用独立目录或 worktree 避免冲突编辑。

背景任务:这是它最突出的强项

官方的说法很直接:

The most powerful way to run OpenHands is on a server in the cloud. This allows your agents to continue running even when your laptop is shut, and makes it easier to trigger your agents through third-party services like Slack, GitHub, and Datadog.

配套是独立仓 OpenHands/automation。它提供两种触发方式:定时与 webhook。 官方特性表列了可集成的第三方。它们是 Slack、GitHub、Linear、Notion。

对照本站其他对象:OpenAI Agents SDK 的 session、Codex SDK 的 thread 都活在你自己进程 / 自己机器上,关掉就没了。 把「关掉笔记本后 agent 仍在跑」当卖点做的,只有这个对象。

核验 OpenHands/automation(2026-10-01):Python · MIT · 32★ · 活跃。

权限与安全:官方做得细,但你要选对形态

关键设计是API key 而非用户体系。

机制官方原文 / 参数作用
key 生成openssl rand -base64 32 → LOCAL_BACKEND_API_KEY256 位
--public 模式key 不烘进前端,用户首次打开 UI 要粘贴 key防止 key 被前端代码泄露
请求头每个 /api/* 都要带 X-Session-API-Key会话级鉴权
默认绑定loopback-only(127.0.0.1)官方说明:为了不让自动注入的 session key 被局域网其他机器拿到
监听全网卡--host 0.0.0.0 或 OH_BIND_HOST此时 key 不再注入,改用同样的输入界面
传 key 的姿势用 export 而非命令行参数避免出现在 ps aux 进程列表里
公网暴露官方要求另配防火墙(Cloud Firewall / AWS SG / GCP firewall rule)

多用户与权限分级已核(2026-10-08):正式的 RBAC / SSO 在 Enterprise 档, OSS 档默认单用户、单会话 key。 团队级使用需上 Enterprise,或自行在反代层做鉴权。

docs/SELF_HOSTING.md(核验 286 行)只覆盖「保护单个 key」; 官方 enterprise 页给出 RBAC / SSO 的归档。

上下文维度:官方给了 condenser(2026-10-08 更新)

这档对象持久化做得很好 —— run history、容器可替换后历史仍在。 对话上下文长了之后的处理,也有官方机制。它在 SDK 侧:context condenser。

按本站主张「状态 ≠ 上下文」:

  • 状态 ✅ 有官方证据(定时/webhook 触发、run history、容器可替换后历史保留)
  • 上下文 ✅ 有官方机制(condenser);实际压缩效果待实测

持久化 ≠ 上下文管理 —— 两者仍是两件事;但本对象现在能给出后者。

官方 sdk/guides 页给出 LLMSummarizingCondenser / RollingCondenser。

协议:MCP 与 ACP 各管一条线

两条线已核清(2026-10-08)。

① MCP —— 官方有 MCP Servers 专页:

  • CLI 用 openhands mcp,Canvas 里也能配
  • 传输覆盖 http / sse / stdio
  • 认证支持 Bearer / API Key / OAuth
  • 已有的 MCP server 生态可直接复用

② ACP(Agent Client Protocol) —— README 用它来调度第三方 agent ("Run OpenHands, Claude Code, Codex, Gemini, or any ACP-compatible agent")。

修正上一版档案:本对象并非只走 ACP,MCP 同样是官方能力。

核验说明

confidence: partial 的依据:

为什么不是 verified:并非缺轴。八维本轮均已核到官方机制(context 侧有官方 condenser,见 axes.context)。仍留 partial 是因为还存在官方确实没写、或需实测的项:

  • context 压缩的端到端效果
  • 本地→远端工作区的同步机制(官方未说明)
  • ACP 与 MCP 的定位边界
  • Enterprise 档的具体内容(官方只写 Custom pricing / Contact Us)

按 v3 铁律「未知就说未知」,故仍标 partial。

已核验(这部分扎实):

  • 仓库存在与星数(89,675)、许可(MIT,经 license API)
  • 最近推送(2026-10-01,仍活跃)、最新版 v1.24.0(releases @ 2026-09-25)
  • README 全文九节(定位、四项特性表、Quickstart 四种 Option、Architecture 与 Repository boundaries 表、More documentation)
  • docs/SELF_HOSTING.md 286 行的安全机制要点
  • 仓库顶层目录结构(helm/、vercel.json、electron-builder.config.mjs、 .openhands/、docker/ 等)
  • software-agent-sdk 与 automation 两仓元数据
software-agent-sdk(1,190★ · MIT · Python)、automation(32★ · MIT · Python)。

未核验:

  • 对话上下文压缩的实测效果
  • 本地→远端工作区的同步机制(官方未说明)
  • software-agent-sdk 的 API 形态
  • LLM profiles 的完整配置格式(官方页有,细节未逐条录入)

本轮(2026-10-01)补上的:官方定价页三档已核实 —— Open Source 与 Cloud Individual 均为免费档、Enterprise 定制; Individual 每日 10 轮对话上限(对照 Open Source 的 Unlimited); Individual 支持 BYOK、无 key 时走 OpenHands provider 且官方声明 at cost, no markup; Enterprise 可部署客户自有 VPC。还有 SAML/SSO、RBAC、每用户无限并发。 Enterprise 档的具体内容仍未核验(按 D9 口径本站也不存任何报价数字)。

相关条目Related entries

本页由This page is generated from the ai-agent-guide 数据层生成(CC BY 4.0)。data layer (CC BY 4.0). 方法论与坐标系定义见仓库内 METHODOLOGY.md。