给 AI Agent 一个工位:AinoWork 开源发布,一条命令部署

给 AI 一个工位,而不只是一个对话框。本文手把手带你部署 AinoWork——开源·可私有化的团队 AI 工作台,一条命令就能跑起来。

一、这个工具解决什么问题

如果你用过 AI 编程工具,可能会遇到这样的场景:Agent 帮你生成了一段代码,但你想让它真正跑起来——npm installpytest、打开浏览器测试——却发现它只能在聊天窗口里"建议",没法干活。

AinoWork 做了一件事:给每个 AI Agent 分配一个独立的 Docker 容器作为"工位"。容器里有真实的文件系统、Shell、Chromium 浏览器和 Git。Agent 在隔离环境里真正执行代码,搞砸了不影响宿主机。

它基于 Hermes Agent(Nous Research 开源的 LLM Agent 框架)构建,可以理解为给 Hermes Agent 加了一个 Web 工作台和 Docker 沙箱。

二、环境准备

开始部署前,确认你的环境满足以下条件:

依赖 版本要求 检查命令
Docker 24.0+ docker --version
Docker Compose v2+ docker compose version
操作系统 macOS / Linux / Windows(WSL2)
内存 ≥ 8GB
磁盘 ≥ 20GB 可用
# 确认 Docker 版本
docker --version
# Docker version 24.0.7, ...

# 确认 Compose 版本
docker compose version
# Docker Compose version v2.21.0

三、一条命令部署

3.1 下载启动包

curl -fsSL https://raw.githubusercontent.com/oinone/ainowork/refs/heads/master/docker/ainowork-starter.zip -o ainowork-starter.zip

3.2 解压并启动

unzip ainowork-starter.zip && cd ainowork-starter
bash start-mac.sh   # macOS
# bash start-linux.sh   # Linux
# start-win.ps1         # Windows PowerShell

启动脚本会自动完成三件事:

  1. 创建 ainowork Docker bridge 网络
  2. 预拉取沙箱镜像,为后续运行做准备(ainowork-sandbox:1.0.0
  3. 启动 5 个基础服务容器(包含前后端所有镜像拉取)

3.3 确认部署成功

docker ps

输出中看到 5 个 Up 状态的容器即表示成功:

CONTAINER ID   IMAGE                        STATUS          PORTS
...            ainowork-frontend:1.0.0      Up (healthy)    0.0.0.0:3000->443/tcp
...            ainowork-backend:1.0.0       Up (healthy)    3003/tcp
...            redis:8-alpine               Up (healthy)    6379/tcp
...            postgres:16-alpine           Up (healthy)    5432/tcp
...            alpine-socat:1.8.1.1         Up

浏览器打开 https://localhost:3000,使用默认账号登录:

  • 邮箱:admin@ainowork.dev
  • 密码:admin123456

四、快速上手

登录后,点击"新建项目"创建一个空白项目。空项目的工作区如下——左侧文件树、中间编辑器区、右侧 Agent 对话面板:

在这里插入图片描述

接下来的完整配置和体验步骤,浏览器直接访问内置帮助文档:

https://localhost:3000/help/getting-started

帮助文档会引导你一步步完成:模型配置 → 接入 Git 仓库 → 创建第一个 Agent 会话 → 体验沙箱执行。照着做就行。

核心功能一览:

功能 说明
Docker 沙箱隔离 每个 Agent 会话独立容器,互不干扰
内置 Git 工作流 Clone、diff、stage、commit、push 全在对话中完成
浏览器自动化 Agent 通过 VNC 操控真实 Chromium
WebSocket 终端 随时进入 Agent 沙箱的实时 Shell
多用户 RBAC 团队共享,基于角色的权限控制
技能市场 高频任务沉淀为可复用技能,一人创建全员共享

和通用云端 Agent 的区别

对比维度 通用云端 Agent AinoWork
部署方式 纯云端 SaaS ✅ 可私有化 / 本地 / VPC 部署
数据归属 托管在厂商云端 ✅ 留在自己环境,不出域
模型选择 平台绑定 ✅ 自带 Key,多模型可配
团队管理 员工个人账号 ✅ 多用户 RBAC,团队协作
能力沉淀 随人流失 ✅ 技能市场,团队共享

在这里插入图片描述

技术栈

层次 技术栈
后端 Python 3.12+ / FastAPI / SQLAlchemy 2.0 异步 / Celery / Redis
前端 React 19 / TypeScript 5.8 / Vite 6 / Tailwind CSS v4
AI 引擎 Hermes Agent(Nous Research 开源 LLM Agent 框架)
基础设施 Docker / PostgreSQL 16 / Redis 8

在这里插入图片描述

五、避坑指南

避坑 1:3000 端口冲突

前端默认暴露在宿主机的 3000 端口。如果本机已有其他服务占用 3000,编辑 ainowork-starter/.env 文件,修改 FRONTEND_PORT=3001(或其他空闲端口),然后 docker compose down -v && docker compose up -d 重启。

避坑 2:登录后 Agent 不工作

登录后必须先配置 LLM API Key,否则 Agent 没有模型可用。进入"设置 → 模型配置",填入 API Key 和端点地址。如果使用国内模型,注意确认 API 端点是否兼容 OpenAI 接口格式。

避坑 3:Windows 启动报错

Windows 需要 WSL2 + Docker Desktop,且 Docker Desktop 必须切换到 Linux 容器模式。如果 start-win.ps1 报错,检查:① WSL2 是否已安装并设为默认;② Docker Desktop 是否使用 Linux 容器(非 Windows 容器)。

六、总结

AinoWork 解决了 AI Agent "能说不能做"的问题——通过 Docker 沙箱给 Agent 一个真正干活的工位。一条命令部署,开箱即用,数据留在自己环境里。

部署完成后,试试创建一个工作区,让 Agent 完成第一个真实的开发任务。

常见问题

Q:AinoWork 和直接用 Hermes Agent 有什么区别?

A:Hermes Agent 是 Nous Research 开源的 LLM Agent 框架,核心是自进化的 Agent 循环——Agent 从经验中学习、创建和优化技能。但它是 CLI 工具,Agent 代码直接在宿主机上跑,没有执行环境隔离。

AinoWork 在 Hermes Agent 之上加了三个关键能力:① 独立 Docker 沙箱——每个 Agent 跑在隔离容器里,rm -rf 不影响宿主机;② Web 工作台——可视化管理工作区,不用敲命令行;③ 多用户 RBAC + 技能市场——团队共享 Agent 能力,不随个人流失。简单说:Hermes Agent 给了 Agent “大脑”,AinoWork 给了它"工位"。

Q:安全性怎么样?

A:直接使用 Hermes Agent 时,Agent 代码在宿主机上执行,误操作可能影响本机环境。AinoWork 给每个 Agent 分配独立 Docker 容器,通过 Docker Socket Proxy 隔离宿主机。Agent 的误操作被限制在容器内,宿主机不受影响。

Q:支持国产模型吗?

A:支持。所有兼容 OpenAI 接口的模型都能接入,包括国内主流大模型,在模型配置中填入 API 端点即可。


AinoWork 是开源·可私有化的团队 AI 工作台。给 AI 一个工位,而不只是一个对话框。

  • GitHub:https://github.com/oinone/ainowork
  • Gitee:https://gitee.com/oinone/ainowork
Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐