如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
在本地、远程和云后端运行 OpenHands、Claude Code、Codex、Gemini 或任何 ACP 兼容代理。
快速入门 | 文档 | 自托管 | ACP 代理 | 自动化 | Slack
OpenHands Agent Canvas 将您的编码代理转变为自托管、始终在线的工程团队。它是一个开发者控制中心,用于发起对话和自动化日常任务——例如生成发布到 Slack 的报告,或自动将 GitHub 问题分解为任务。
默认情况下,它在您的本地机器上运行,但可以连接到多个“代理后端”,例如在 Docker 容器、虚拟机或公司基础设施中运行代理。您还可以选择在 OpenHands Cloud 或 OpenHands Enterprise 基础设施上运行代理。
Agent Canvas 开箱即运行开源的 OpenHands 代理,也可使用任何第三方代理,如 Claude Code 和 Codex。
| 功能 | 说明 |
|---|---|
| 灵活自托管 | 在本地、Docker、虚拟机或任何可运行代理服务器后端的环境中运行代理 |
| 切换不同后端 | 在本地、远程和云代理之间切换,无需中断工作流 |
| 创建自动化 | 创建与 Slack、GitHub、Linear 等集成的自动化和工作流。按计划运行或响应 webhook 事件触发 |
| 集成常用工具 | 将您的自动化与 Slack、GitHub、Notion 等第三方服务连接,实现工作流自动化 |
| 使用自定义模型 | 兼容任何 LLM |
| 支持任意代理 | 支持 OpenHands、Claude Code、Codex、Gemini 或任何符合代理客户端协议(ACP)的代理 |
如有问题或反馈,请提交 GitHub issue 或加入 Slack 中的 #proj-agent-canvas 频道。
[!NOTE]
OpenHands Agent 和 Agent Server 的源代码位于 https://github.com/OpenHands/software-agent-sdk%E3%80%82
Agent Canvas 的源代码位于 https://github.com/OpenHands/agent-canvas%E3%80%82
您可以在任何机器上安装 OpenHands 以运行代理:笔记本电脑、Mac Mini 等专用计算机,或云服务器。
在云服务器上运行 OpenHands 是最强大的方式。这使您的代理即使在笔记本电脑关闭时也能继续运行,并更容易通过 Slack、GitHub 和 Datadog 等第三方服务触发代理。详情请参见 SELF_HOSTING.md,尤其是安全强化相关内容。
值得注意的是,您可以在多个不同环境中运行后端,并从同一个 Agent Canvas 前端切换。例如,您可以与团队共享一个 Agent Server 用于代码审查和依赖更新代理,同时在个人笔记本电脑上运行个人代理。
[!WARNING] 此方式直接在您安装的机器上运行 agent-server——代理将拥有对您文件系统的完全访问权限!
前提条件:Node.js 22.12.x 或更高版本、uv
npm install -g @openhands/agent-canvas
agent-canvas
默认情况下,agent-canvas 命令启动完整的本地堆栈。您也可以拆分运行各个组件:
agent-canvas --frontend-only # 仅启动静态前端 + 入口服务
agent-canvas --backend-only # 仅启动代理服务器 + 自动化后端 + 入口服务
前提条件:
PROJECTS_PATH 的主机目录,包含您希望代理访问的项目文件夹。启动容器前请创建此目录。macOS / Linux:
export PROJECTS_PATH="$HOME/projects" # 包含您项目文件夹的目录
mkdir -p "$PROJECTS_PATH" "$HOME/.openhands"
docker run -it --rm \
-p 8000:8000 \
-v "$HOME/.openhands:/home/openhands/.openhands" \
-v "${PROJECTS_PATH}:/projects" \
ghcr.io/openhands/agent-canvas:1.0.0-rc.11
Windows(PowerShell / Windows 终端): 请参见 https://github.com/OpenHands/agent-canvas/blob/main/README.windows.md 获取等效命令。
代理将能够访问 PROJECTS_PATH 下的所有项目。
[!WARNING] 此方式直接在您安装的机器上运行 agent-server——代理将拥有对您文件系统的完全访问权限!
前提条件:Node.js 22.12.x 或更高版本、npm、uv(用于通过 uvx 运行代理服务器)
git clone https://github.com/OpenHands/agent-canvas.git
cd agent-canvas
npm install
npm run dev
通过 http://localhost:8000 访问 UI。您可以直接从 UI 添加其他后端。
Agent Canvas 由 https://github.com/OpenHands/software-agent-sdk/tree/main/openhands-agent-server/openhands/agent_server 提供支持,这是一个用于在单台机器上运行多个代理的 REST API。每个 Agent Server 运行在单个主机/端口上;Agent Canvas 可以连接到多个 Agent Server 并轻松切换。
您可以在任何地方运行 Agent Server:
Agent Server 通常与 https://github.com/OpenHands/automation 配合使用,后者允许您设置按计划运行或响应事件的代理。
来自真实用户的反馈,见证轩辕镜像的优质服务