OpenHands AI 编程全攻略:从入门到实战,手把手教你用 AI 提效开发
前言
在 AI 编程时代,OpenHands(原 OpenDevin)作为一款开源的 AI 软件开发代理框架,凭借其低门槛、高扩展性和强大的 Agent 能力,成为了开发者提升编程效率的利器。它支持自然语言交互、多 LLM 适配,还能实现代码生成、环境部署、任务自动化等一系列开发操作,不管是新手还是资深开发者,都能快速上手。
本文结合 OpenHands 官方文档和实际实操经验,用通俗易懂的方式讲清 OpenHands 的核心概念、安装部署和实战用法,让你轻松解锁 AI 编程新姿势~
一、先搞懂:OpenHands 到底是什么?
OpenHands 是一个聚焦AI 驱动开发的开源社区和工具集,核心是打造能自主完成开发任务的 AI Agent(智能代理),简单说就是你的 AI 编程助手,能听懂自然语言指令,帮你写代码、跑程序、调 bug、部署项目。
它基于CodeAct 范式开发(核心是让 LLM 通过「写代码 - 跑代码 - 看结果」的循环完成复杂任务),区别于传统的代码补全工具,OpenHands 能实现端到端的开发闭环,从需求分析到代码实现、运行测试,全程自动化完成。
OpenHands 的核心产品形态(官方核心能力)
OpenHands 提供了多种使用方式,适配不同开发场景,核心分为 5 类,底层由SDK驱动,从简易到企业级全覆盖:
| 产品形态 | 核心特点 | 适用人群 / 场景 |
|---|---|---|
| Software Agent SDK | 可组合的 Python 库,OpenHands 的核心引擎,支持自定义 Agent、本地运行 / 云端扩缩容 | 开发工程师、AI 开发者,需要二次开发 / 定制 Agent |
| CLI | 命令行工具,上手最简单,支持 Claude/GPT 等任意 LLM,类似 Claude Code/Codex | 习惯命令行操作的开发者,快速执行简单 AI 编程任务 |
| Local GUI | 本地图形界面,带 REST API 和 React 前端,体验类似 Devin/Jules | 普通开发者,可视化操作,本地运行 AI Agent |
| Cloud | 云端商业化部署的 GUI,带免费 $10 额度,集成 GitHub/Slack/Jira 等工具,支持多用户 / 权限管理 | 团队开发,需要云端协作、资源管控的场景 |
| Enterprise | 企业级私有化部署,基于 K8s 部署在自有 VPC,源码可见(需授权),含专属支持 | 大型企业,需要数据私有化、定制化服务和高级支持 |
核心优势
- 低门槛:自然语言交互,无需复杂编码,小白也能快速上手;
- 全开源:核心模块基于 MIT 协议开源,可自由查看 / 修改源码(企业版除外);
- 高兼容:支持 OpenAI、Anthropic 等主流 LLM,可自定义模型配置;
- 强能力:覆盖代码生成、环境搭建、任务自动化、团队协作等全开发流程;
- 易部署:支持 Docker 一键部署、本地 / 云端 / 私有化多环境运行。
二、准备工作:环境要求与核心依赖
OpenHands 的部署和使用非常轻量化,核心依赖只有两个,提前准备好即可:
- Python 环境:3.8 及以上版本(SDK/CLI 使用);
- Docker(可选但推荐):快速部署 Local GUI / 云端版本,无需手动处理依赖;
- LLM API 密钥:需要 OpenAI(GPT-3.5/4)、Anthropic(Claude)或自定义模型(如 DeepSeek-R1)的 API Key,用于驱动 AI Agent。
可选工具:内网穿透工具(如 cpolar),用于远程访问本地部署的 OpenHands,适合团队协作。
三、快速上手:3 种最常用的安装部署方式
根据不同使用场景,推荐 3 种最实用的部署方式,从一键启动到定制化部署,按需选择即可。
方式 1:Docker 一键部署 Local GUI(推荐!小白首选)
Docker 部署是最简单的方式,无需处理复杂依赖,一条命令即可启动 OpenHands 图形界面,支持 Windows/Linux/MacOS。
步骤 1:安装 Docker
已安装 Docker 的可跳过,未安装的参考Docker 官方文档完成安装,确保 Docker 服务正常运行。
步骤 2:拉取并启动 OpenHands 容器
打开终端 / 命令行,执行以下命令(Linux/MacOS 加 sudo,Windows 直接执行):
# 拉取并启动OpenHands最新版,映射3000端口(本地访问)
docker run -it --rm -p 3000:3000 -v ~/.local/share/OpenHands:/opt/OpenHands/workspace ghcr.io/all-hands-ai/openhands:main
国内环境优化:若拉取镜像缓慢,可使用华为云 / 阿里云镜像源,或参考华为云部署的镜像拉取命令。
步骤 3:本地访问 OpenHands
启动成功后,打开浏览器,输入地址:http://localhost:3000,即可进入 OpenHands 图形界面。
方式 2:Pip 安装(轻量版,CLI/SDK 使用)
适合习惯命令行操作,或需要使用 OpenHands SDK 进行二次开发的开发者,纯 Python 环境即可运行。
步骤 1:安装 OpenHands
# 从PyPI安装最新版
pip install openhands
步骤 2:启动服务
# 启动OpenHands服务(默认带简易界面和CLI)
openhands start
启动后同样访问http://localhost:3000即可使用。
方式 3:Linux 服务器部署(含公网访问,团队协作)
若需要在服务器部署并实现公网远程访问,可结合Docker+cpolar 内网穿透实现,适合团队共享使用。
步骤 1:服务器部署 OpenHands(同方式 1 的 Docker 命令)
步骤 2:安装 cpolar 内网穿透工具
# 一键安装cpolar
sudo curl https://get.cpolar.sh | sh
# 启动cpolar服务
sudo systemctl start cpolar
# 设置开机自启
sudo systemctl enable cpolar
步骤 3:配置公网访问
- 访问 cpolar 管理界面:
http://服务器IP:9200,用注册账号登录; - 点击隧道管理 - 创建隧道,配置参数:
- 隧道名称:openhands(自定义);
- 协议:HTTP;
- 本地地址:3000(OpenHands 默认端口);
- 地区:根据服务器位置选择(如 China Top);
- 创建成功后,在在线隧道列表获取公网地址,即可在任意设备访问服务器上的 OpenHands。
四、首次使用:配置 LLM 模型(关键步骤)
OpenHands 本身不提供大模型,需要对接外部 LLM,首次打开界面会弹出模型配置窗口,按以下步骤操作即可。
步骤 1:基础配置(主流 LLM,如 GPT/Claude)
- 在配置界面选择LLM 提供商(如 OpenAI/Anthropic);
- 输入你的API Key(从对应大模型平台获取,如 OpenAI 官网 - 个人中心 - API Keys);
- 选择模型(如 gpt-3.5-turbo、claude-3-sonnet);
- 点击Save保存,完成基础配置。
步骤 2:自定义模型配置(如 DeepSeek-R1 / 国产模型)
若需要使用自定义模型(如华为云 MaaS 的 DeepSeek-R1),开启高级配置(Advanced),按以下参数填写:
- Custom Model:模型标识(如 openrouter/DeepSeek-R1);
- Base URL:模型 API 地址(从模型平台获取);
- API Key:模型平台的 API 密钥;
- 其他参数保持默认,点击Save Changes保存。
五、实战操作:用 OpenHands 完成第一个 AI 编程任务
配置完成后,即可开始使用 OpenHands 的核心能力,以Local GUI为例,手把手教你用自然语言让 AI 帮你写代码、跑程序。
核心界面介绍
OpenHands 的图形界面非常直观,核心功能区分为 6 部分:
- 聊天面板:输入自然语言指令,查看 AI 的回复和操作步骤;
- Changes:查看 AI 执行的文件更改记录(如创建 / 修改代码文件);
- VS Code:嵌入式代码编辑器,可直接浏览 / 修改 AI 生成的代码;
- Terminal:内置终端,AI 可自动运行命令,你也可以手动操作;
- Jupyter:Python 代码运行环境,适合数据可视化 / 脚本运行;
- App:Web 服务预览,AI 部署的网页项目可直接在这里查看效果。
实战案例:让 AI 生成一个 Hello World 程序 + 运行
步骤 1:发起任务
在聊天面板的输入框中,输入自然语言指令:帮我写一个Python的Hello World程序,并运行它,点击发送。
步骤 2:AI 自动执行
OpenHands 会自动完成以下操作:
- 分析需求,生成 Python 代码文件(如 hello.py);
- 在内置 Terminal 中运行
python hello.py命令; - 在聊天面板返回运行结果,同时在 Changes/VS Code 中展示文件内容。
步骤 3:验证结果
在 Terminal 中可看到输出Hello World!,在 VS Code 中可直接修改代码,再次让 AI 重新运行,实现交互式开发。
进阶案例:生成一个简易网页计算器
输入指令:用HTML+CSS+JavaScript写一个简易的网页计算器,支持加减乘除,并且启动一个本地服务让我预览,OpenHands 会自动完成:
- 生成 3 个文件:index.html(结构)、style.css(样式)、script.js(逻辑);
- 启动本地 Web 服务(如 Python 的 http.server);
- 在App面板中生成预览链接,直接点击即可使用计算器。
如果对效果不满意,可继续输入指令:把计算器的样式改成深色主题,按钮变大一点,AI 会自动修改代码并刷新预览。
六、高级用法:解锁 OpenHands 更多能力
1. 使用 CLI 命令行操作
适合快速执行简单任务,打开终端输入openhands即可进入 CLI 模式,直接输入自然语言指令即可,例如:
openhands
# 进入后输入:写一个bash脚本,实现批量重命名当前目录的txt文件
2. 自定义 AI Agent(SDK 使用)
OpenHands SDK 是核心引擎,可通过 Python 代码自定义 Agent 的行为,实现个性化需求,核心是基于CodeAct 范式编写 Agent 逻辑。
简单示例:创建一个能自动执行 Python 代码的简易 Agent
from openhands import MinimalAgent, State
# 初始化Agent
agent = MinimalAgent()
agent.reset()
# 定义任务状态
state = State(history=[])
# 执行任务:生成并运行斐波那契数列代码
result = agent.step(state, prompt="写一个Python函数,生成前10个斐波那契数,并打印结果")
print(result)
3. 团队协作(Cloud/Enterprise 版)
OpenHands Cloud/Enterprise 版支持多用户协作和资源管控:
- 集成 GitHub/GitLab:AI 可直接拉取 / 提交代码,实现代码托管联动;
- 集成 Slack/Jira:任务进度自动同步到协作工具,无需手动通知;
- RBAC 权限管理:为团队成员分配不同权限,管控 AI 使用额度;
- 对话共享:将 AI 开发过程分享给团队成员,实现协同调试。
七、避坑指南:常见问题与解决方法
- 镜像拉取失败:国内环境建议使用国内 Docker 镜像源,或直接下载华为云 / 阿里云的 OpenHands 镜像;
- 模型调用失败:检查 API Key 是否正确、模型是否支持、网络是否能访问模型平台(国内环境可能需要代理);
- 端口占用:若 3000 端口被占用,启动时修改映射端口,如
-p 3001:3000; - AI 执行无响应:检查 Docker 服务是否正常,或重启 OpenHands 容器,同时确保 LLM 模型的调用额度充足;
- 公网访问无法打开:检查 cpolar 隧道配置是否正确,服务器防火墙是否开放对应端口。
八、总结
OpenHands 作为一款开源的 AI 编程框架,真正实现了自然语言到代码的端到端转化,它不是简单的代码补全工具,而是能自主完成开发任务的 AI 助手,不管是个人开发提效,还是团队协作,都能发挥巨大作用。
核心学习重点:
- 先通过Docker 一键部署快速上手,熟悉图形界面的基本操作;
- 掌握模型配置,对接自己常用的 LLM;
- 用自然语言指令尝试简单任务,逐步过渡到复杂项目开发;
- 进阶学习SDK 二次开发,自定义 AI Agent,实现个性化需求。
OpenHands 的社区还在快速发展,后续会推出更多功能(如多 Agent 协作、更丰富的工具集成),关注OpenHands 官方文档和 GitHub 仓库,获取最新更新~
附:官方资源
- OpenHands 官方文档:https://docs.openhands.dev/overview/introduction
- GitHub 仓库:https://github.com/all-hands-ai/openhands
- 社区交流:Slack(官方推荐,可获取最新技术支持)
创作不易,如果这篇教程对你有帮助,欢迎点赞 + 收藏 + 关注~ 后续会持续更新 OpenHands 进阶用法和 AI 编程技巧!
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)