自托管 AI 智能体
Doitx 是一个面向持久型队友的开源 AI 智能体。每个机器人都能使用浏览器和终端、把例行任务保存为 Markdown,并在工作触及你设定的边界时暂停等待批准。自托管意味着这套系统运行在你自己的机器上。
软件以 Apache-2.0 许可证发布。托管的 Doitx Cloud 处于 beta 阶段。这一页是运行它所需的设置步骤。GitHub 上的完整自托管指南还涵盖备份、升级、密钥、受限网络和生产环境 Compose。
自托管给你带来什么
数据归属
Postgres、机器人文件、浏览器配置和审计日志都留在你自己运行的部署上。你发送给模型提供商的内容由该提供商按其条款处理。提供商和密钥都由你选择。
模型选择
连接 Doitx 路由器,或运维方自建的 OpenAI 兼容服务器。每个人使用自己的密钥,每个机器人可以使用不同的模型。
成本控制
开源软件本身不收席位费。你只需为连接的模型提供商和你选择的远程算力提供商付费。默认使用本地 Docker 算力,因此单台机器不需要 E2B、Daytona、CreateOS 或 Boat 账号。
目前仅限自托管
以下功能可在你自己的部署中启用,Doitx Cloud 尚未提供。每项都在 .env 中开启。
- Telegram、WhatsApp、iMessage 与短信、飞书与 Lark。 填入对应平台的凭据:
TELEGRAM_BOT_TOKEN、WHATSAPP_*、SENDBLUE_*(iMessage 与短信)或LARK_*。 - 图像与视频生成。
MEDIA_GENERATION_PROVIDER=fal、MEDIA_GENERATION_API_KEY,以及图像或视频模型(MEDIA_GENERATION_IMAGE_MODEL、MEDIA_GENERATION_VIDEO_MODEL)。 - 使用 Stripe Link 付款。
PAYMENT_WALLET_PROVIDER=link。每笔付款都会在 Link 中等待你批准。 - Cursor 云端智能体。
CLOUD_AGENT_PROVIDER=cursor、CURSOR_API_KEY和CLOUD_AGENT_SPACE_ID。 - 工单看板。
TICKET_BOARD_ENABLED=true。 - 本地模型与本地 MCP 服务器。
RAKAZO_LOCAL_MODELS,以及MCP_STDIO_ENABLED配合MCP_STDIO_ALLOWED_COMMANDS。
完整指南列出了每一项的全部设置。
环境要求
- 使用已发布的镜像。 需要 Docker Engine 26 或更高版本(API 1.45 或更高,用于机器人主目录卷子路径)、Compose 插件、curl 和 OpenSSL。无需安装 Node.js。
- 源码检出。 需要 Node.js 22.x 系列的 22.22.2 或更高版本、Node.js 24.x,或 Node.js 26 及更高版本,加上 pnpm 9 和 Docker。不支持 Node.js 23.x 和 25.x。
用已发布的镜像安装
在应运行 Doitx 的机器上,从一个空目录开始:
mkdir -p doitx && cd doitx &&
curl -fsSLO https://raw.githubusercontent.com/iishows/doitx/main/infra/compose/install-images.sh &&
bash install-images.sh安装程序会下载 Compose 文件和 .env.images.example,生成带随机密钥的 .env,并启动 Doitx。再次运行时它会保留已有的 .env。默认镜像标签是 edge(从主分支构建,支持 linux/amd64 与 linux/arm64)。
打开 http://127.0.0.1:5173 并创建账号。第一个注册的用户成为部署所有者。在应用里连接模型,或在启动前设置 RAKAZO_DOITX_API_KEY。本地 Docker 算力默认开启。




如需由智能体辅助安装,请使用安装提示词。
在服务器上运行
当机器人需要持续运行时,在 VPS 上使用同一个安装程序。镜像版 Compose 会把 Web 应用绑定到回环地址 127.0.0.1:5173。在主机上终止 TLS 并代理到该地址。不要对外发布 3100 端口。Web 服务器会代理 /api。
bash install-images.sh --prepare-only
# Edit .env, then:
bash install-images.sh在执行第二条命令前,把 RAKAZO_HOST 设为域名,并把 BETTER_AUTH_URL、WEB_ORIGIN 和 API_URL 设为同一个 https:// 源。若要使用远程算力而非本地 Docker,把 SANDBOX_PROVIDER 设为 e2b、daytona、createos 或 boat,并填入该提供商的 API 密钥。
app.example.com {
reverse_proxy 127.0.0.1:5173
}把 app.example.com 换成你的域名。桌面客户端应使用 现有实例 选项并填入 https:// 地址。公网单机部署章节涵盖生产 Compose、主机加固、注册白名单和 SMTP。
如果下载被阻断,请使用受限网络指南。密钥名称与恢复方式见密钥清单。
从源码安装
这条路径用于开发 Doitx。仅运行的话,上面的已发布镜像就够了。
git clone https://github.com/iishows/doitx.git
cd doitx
cp .env.example .env把 POSTGRES_PASSWORD 和 POSTGRES_APP_PASSWORD 设为两个 URI 安全的随机值(例如 openssl rand -hex 16),并填入 DATABASE_MIGRATION_URL 和 DATABASE_URL。把 BETTER_AUTH_SECRET、ENCRYPTION_KEY 和 SCREEN_PROXY_SECRET 设为互不相同的长随机值。Docker 沙箱还需要专属的 SANDBOX_SUPERVISOR_TOKEN。这些值放在 .env 里,不要提交到 git。
使用 Docker Desktop 做主机侧开发时,在 .env 中设置 SANDBOX_CONTROL_VIA_LOOPBACK=true。这样 supervisor 会在回环端口上发布其控制服务,因为主机无法访问 Docker Desktop 的容器地址。当 supervisor 运行在 Compose 内时,不要设置它。
docker compose --env-file .env \
-f infra/compose/docker-compose.yml \
-f infra/compose/docker-compose.postgres-host.yml \
up postgres -d
pnpm install
pnpm db:generate
pnpm db:migrate
pnpm sandbox:build
pnpm devPostgres overlay 会为宿主机工具发布回环地址 127.0.0.1:5433。打开 http://127.0.0.1:5173。docker compose down -v 会删除 Postgres 数据。
桌面端与移动端
服务器已在运行时,Electron 应用的 现有实例 选项接收它的 https:// 地址。HTTP 只对回环地址和私有局域网地址放行。本机 选项会用 Docker Compose 在该机器上安装已发布的镜像。
在 Mac 上用桌面应用运行。本机会把 Doitx 安装到那台 Mac 上。一台 Mac Mini 可以常开作为常驻主机。
在移动应用中,于登录界面点击 使用自定义服务器,填入与 WEB_ORIGIN 相同的 HTTPS 源。
完整参考
FAQ
自托管 Doitx 需要什么?
使用已发布的镜像需要 Docker Engine 26 或更高版本、Compose 插件、curl 和 OpenSSL,这条路径无需 Node.js。源码检出需要 Node.js 22.x 系列的 22.22.2 或更高版本、Node.js 24.x,或 Node.js 26 及更高版本,加上 pnpm 9 和 Docker。不支持 Node.js 23.x 和 25.x。
我的数据存在哪里?
Postgres、机器人文件、浏览器配置和审计日志都留在你自己运行的部署上。你发送给模型提供商的内容由该提供商按其条款处理。提供商和密钥都由你选择。
模型选择和费用怎么算?
每个人为自己连接部署两种模型来源之一——Doitx 路由器或由运维方运行的本地端点——的密钥。每个机器人可以选择不同的模型。开源软件本身不收席位费,你只需为使用的模型和算力提供商付费。本地 Docker 算力是默认选项,不需要托管沙箱账号。
有托管的 Doitx 吗?
有。Doitx Cloud 正在 app.doitx.ai 进行 beta 测试,同时也支持自托管。
和 OpenClaw 相比如何?
两者都是开源项目,都运行在你掌控的硬件上。完成 Docker 或桌面端安装后,Doitx 就是一个面向持久型队友的聊天界面。OpenClaw 的入门指南还要多出向导、一个在终端运行或作为后台服务安装的 Gateway,以及单独一步来连接聊天应用。
相关内容
开始使用
按上面的步骤自托管,或从 Doitx Cloud 开始。