OpenHands是什么
OpenHands 是面向软件开发的开源 AI Agent 平台,早期项目名为 OpenDevin。它不只在聊天框里补全代码,而是可以理解开发任务、读取代码仓库、制定步骤、编辑文件、执行终端命令、运行测试并根据结果继续修复。用户可通过网页界面、终端界面、CLI 或 Software Agent SDK 使用,也可以选择官方云服务。
OpenHands 采用模型无关设计,可连接 OpenAI、Anthropic 及其他兼容模型服务,也支持适合智能体任务的本地模型。核心开源版本更适合单个开发者在可信环境中使用;团队权限、集中计费、工单与协作集成、大规模并发和私有云支持则属于 Cloud 或 Enterprise 范畴。
OpenHands核心功能
自主完成开发任务
用户可以提交“修复这个错误”“为接口增加测试”“迁移依赖版本”等目标,Agent 会读取仓库、搜索相关文件、修改代码并执行验证。它适合边界清晰且能够用测试检查的任务,但不能保证每次改动正确。复杂架构设计、生产事故和安全敏感修改仍需工程师审查。
终端、文件编辑和浏览能力
OpenHands 为智能体提供命令执行、文件读写、网页浏览和开发工具,使模型可以观察实际运行结果,而不是只输出代码片段。正因为这些能力权限较高,运行环境必须隔离,并只挂载任务真正需要的目录。
Git仓库集成
平台可围绕 GitHub、GitLab 和 Bitbucket 等代码仓库工作,读取分支、生成提交或通过云端工作流处理任务。连接仓库时应使用最小权限令牌;对于外部贡献或不可信 Issue,必须防范提示注入和恶意脚本,不能让 Agent 自动访问生产密钥。
Agent Canvas、网页界面与CLI
Agent Canvas 提供浏览器界面和后端连接能力,可在一个前端切换不同 Agent Server。喜欢终端工作流的开发者可以使用 CLI,团队也可通过远程服务器让任务在电脑关机后继续运行。不同版本的启动方式正在持续演进,安装时应以当前稳定版文档为准。
Software Agent SDK
OpenHands Software Agent SDK 提供 Python 和 REST 接口,可定义智能体、工具和工作流,并在本地或云端运行。Agent Server 还可以暴露兼容常见聊天客户端的服务入口。SDK适合构建代码审查、依赖更新、Issue处理和内部开发自动化,不等同于简单的模型聊天 SDK。
MCP与外部集成
OpenHands 支持 MCP 工具方向,可让 Agent 使用额外数据源和服务。Cloud 与 Enterprise 还提供 API、Slack、Jira 等集成方向。每增加一种工具都会扩大可访问范围,应为不同仓库、团队和环境划分独立凭证与权限。
OpenHands价格与套餐对比
以下为官方定价页当前公开方案。OpenHands 软件本身免费不代表整体使用零成本:本地版通常仍需支付模型 API、服务器或 GPU 费用;云端 Individual 可自带模型密钥,也可购买 OpenHands LLM credits 按模型成本价使用。
| 方案 | 价格 | 用户与会话 | 主要能力 | 适合对象 |
|---|---|---|---|---|
| Open Source | 免费 | 1名用户;本地会话不限 | 本地运行、网页GUI、终端界面、CLI、Git集成、SDK、MCP、自带模型密钥 | 个人开发者与开源研究 |
| Cloud Individual | 平台层免费;模型按量付费或自带密钥 | 1名用户;每天最多10个会话 | 托管运行环境、移动和桌面访问、Cloud API、Git、Jira、Slack集成 | 不想自行维护环境的个人 |
| Enterprise | 定制报价 | 用户不限;每位用户并发会话不限 | SaaS或私有VPC、自托管、RBAC、集中计费、SAML/SSO、大代码库SDK和优先支持 | 需要治理与规模化并发的组织 |
OpenHands LLM Provider 当前按模型供应商成本价、无额外加价的方向计费,具体输入、缓存输入和输出 token 单价随所选模型变化。生成 OpenHands LLM Key 前,官方文档要求账户至少购买 10 美元 Cloud credits。Cloud API Key 与 LLM Key 用途不同:前者调用 OpenHands Cloud,后者调用其模型提供层,不应混用。
部署版本对比
| 运行方式 | 代码与数据位置 | 维护成本 | 主要风险或限制 |
|---|---|---|---|
| 本机直接运行 | 本机目录和进程 | 低至中 | Agent可能直接读写主机文件,隔离最弱 |
| 本机Docker沙箱 | 容器及明确挂载目录 | 中 | 挂载目录仍可被修改或删除;需限制端口 |
| OpenHands Cloud | 官方托管运行环境 | 低 | 受每日会话、云端规则与模型费用影响 |
| 自建VM或服务器 | 自有主机或云服务器 | 中至高 | 需要认证、网络隔离、日志和密钥管理 |
| Enterprise私有VPC | 企业控制的VPC或基础设施 | 高,含官方支持 | 需商业许可、Kubernetes及企业运维能力 |
开源许可与企业版区别
OpenHands 核心项目采用 MIT 许可证,可查看、修改和用于商业项目。开源版面向单用户本地体验,包含核心 Agent、界面、CLI 和 SDK 方向。Enterprise 的自托管云组件属于 source-available,可查看源代码,但超过试用期运行需要购买许可,不能因为代码可见就当作 MIT 软件。
企业版提供 30 天试用方向,并增加多用户、权限控制、集中政策、审计、私有VPC、集成和支持。团队不应把单用户开源实例未经加固直接暴露为多人公共服务,因为基础实例并不自动具备完整的多租户身份认证、隔离和扩展能力。
OpenHands本地安装教程
- 检查环境:准备满足当前文档要求的 Node.js、Python工具链和 Docker;Windows用户同时核对虚拟化与 Docker Desktop。
- 选择稳定版本:优先安装官方稳定发行版,不要在重要项目中直接使用主分支构建。
- 准备独立项目目录:只把需要处理的仓库放入专门目录,不要把整个用户目录或系统盘挂载给 Agent。
- 启动沙箱:优先使用 Docker 隔离运行,并把服务绑定到本机回环地址,避免局域网或公网直接访问。
- 配置模型:在设置中添加独立的模型 API Key,先设置低额度和消费告警。
- 载入仓库:从干净分支开始,确认 Git 状态并备份重要改动。
- 提交小任务:提供验收条件、相关文件和测试命令,先观察 Agent 的计划和执行范围。
- 人工审查:查看差异、运行完整测试、安全扫描和构建流程,再决定是否提交或合并。
OpenHands Cloud使用流程
- 注册 Cloud Individual 账号并连接需要使用的 Git 提供商。
- 选择自带模型密钥,或购买少量 credits 使用 OpenHands 模型提供层。
- 仅授权目标仓库,设置提交身份和必要的环境变量。
- 创建会话,描述任务范围、预期行为、测试方法和禁止修改的区域。
- 检查终端输出、文件差异和测试结果;不要仅依据 Agent 的完成说明。
- 确认改动安全后再创建提交或拉取请求,并由代码所有者复核。
模型怎么选
编程 Agent 对工具调用、长上下文、错误恢复和指令遵循要求高,低价模型不一定能降低总成本:如果反复失败或生成大量无效 token,最终费用可能更高。小型格式化、文档和简单测试任务可尝试经济模型;跨文件重构、复杂调试和架构分析更适合能力较强的模型。
本地模型可以减少外部数据传输,但需要足够显存、推理速度和兼容接口。使用前应先在非敏感仓库评估任务成功率、运行时间、上下文长度和总成本,不能只比较每百万 token 单价。
安全注意事项
- Agent可以运行命令和修改文件,应始终使用沙箱、虚拟机或权限受限账号;
- 只挂载目标仓库,禁止访问个人文档、SSH目录、云凭证和生产数据库;
- 本地服务绑定回环地址,对外开放时增加强API密钥、认证和网络访问控制;
- 仓库内容、Issue和网页都可能包含提示注入,外部输入应按不可信数据处理;
- 密钥放入安全配置,避免出现在提示词、日志、提交和截图中;
- 高风险操作采用人工批准,禁止Agent自动部署生产环境或合并主分支。
适合哪些用户
- 希望让 AI 实际修改、运行和测试代码的开发者;
- 需要自动处理 Issue、依赖更新和代码维护的开源团队;
- 想基于开源 SDK 构建专用软件开发智能体的研究者;
- 需要私有VPC、权限治理和大规模并发的企业研发组织;
- 愿意审查 Agent 行为并具备 Git、容器和安全基础的工程人员。
优势与使用限制
OpenHands 的优势是开源、模型无关、可本地部署,并提供从交互界面到 SDK 和企业云的完整路径。它能读取真实仓库并通过执行反馈修正代码,比只给建议的聊天工具更适合端到端开发任务。
限制是自主执行带来更高权限和费用风险,任务耗时与效果强烈依赖模型、仓库结构和测试质量。本地部署需要容器与安全配置,云端免费账号有会话限制。AI 生成代码可能引入漏洞、许可证问题和隐藏回归,不能跳过人工代码审查。
常见问题
OpenHands免费吗
核心开源版和 Cloud Individual 平台层均免费,但模型 API、Cloud credits、本地服务器或 GPU 可能产生费用。Enterprise 为定制报价。
OpenHands是开源的吗
核心 OpenHands 项目采用 MIT 许可证。企业自托管云组件是 source-available,长期运行需要商业许可,两者必须区分。
OpenHands支持本地模型吗
支持连接兼容的本地模型服务,但 Agent 任务要求较高,需要足够硬件和经过验证的工具调用能力。
OpenHands会直接修改代码吗
会。它可以编辑挂载目录中的文件并执行命令,因此应在独立分支和沙箱中运行,完成后检查全部差异与测试。
OpenHands和普通AI代码补全有什么区别
普通补全主要在编辑器中预测代码;OpenHands可以规划多步骤任务、操作仓库、运行终端和测试,更接近可执行的软件开发 Agent。
桂公网安备45132202000164号