Rakazo:把常驻 AI 队友跑在自己机器上的自托管方案
Open-source Grok Bot alternative. Choose your own model and sandbox.
秒懂
- 它是什么?
- Rakazo 用 Docker Compose 把持久化 bot、沙箱电脑和桌面客户端打包成一套可自托管系统,模型和算力都自带。它解决的是把 agent 长期留在自己基础设施上的问题,代价是你得自己管 Postgres、密钥和升级。
- 适合谁用?
- Rakazo 适合愿意自己管 Postgres、自己出模型密钥、并且需要 bot 在服务器上持续在线的团队;只想要一个开箱即用聊天界面、不愿碰 Docker 与数据库迁移的人不该选它。上手前先确认三件事:Node.js 版本落在 22.22.2 以上的 22.x、24.x 或 26+(23.x 和 25.x 明确不支持),SANDBOX_SUPERVISOR_TOKEN 与其余密钥各自独立生成,以及你打算用的沙箱提供商(e2b、daytona、box 或本地 Docker)是否已在 .env 中配对 API key。
- 能商用吗?
- 可以。Apache-2.0 是宽松许可证:你可以使用、修改并销售基于它的软件,只需保留版权和许可证声明。
- 还在维护吗?
- 在维护。仓库在最近一天内有新的提交。
- 用什么语言写的?
- 主要是 TypeScript(依据 GitHub 的语言统计)。
以上回答依据项目的 GitHub 数据(最近同步于 2026年9月15日)和我们的分析,不构成法律意见。
开源项目深度解析
它要解决的问题:让 bot 活过这一次对话
大多数聊天式 agent 的寿命等于一个标签页。关掉浏览器,上下文、正在跑的任务、积累的历史一起消失。Rakazo 的定位是 persistent AI teammates,README 把 persistent 放在功能列表第一条:每个 bot 有自己的对话、记忆、例程和历史。这个区别决定了它的技术形态,它必须有后端常驻进程、数据库和任务队列,而不是一个纯前端应用。目标用户也因此比较明确:需要 agent 长时间在线、能自己出模型密钥、并且接受运维一套服务的人。README 同时写明项目处于 beta,最近三个版本 v0.1.4、v0.1.5、v0.1.6 集中在 2026 年 9 月 7 日到 8 日两天内发布,节奏很快,说明接口和部署细节可能还在动。
架构里的分界线:API、沙箱与客户端
从 README 的技术栈和部署方式能看出一条清晰的分层。服务端是 TypeScript,Hono 加 oRPC 提供 API,PostgreSQL 配 Prisma 存数据,Graphile Worker 跑后台任务,Better Auth 负责认证。bot 执行动作的地方是沙箱电脑,README 区分了共享的 Team Computers 和隔离的 Private computers,能力覆盖浏览器、终端、文件和图形桌面。沙箱后端可以是本地 Docker,也可以是 E2B、Daytona 或 Box。前端有三套:Web、Electron 桌面、Expo 移动,README 明确说 Electron 和 Expo 是同一个 Rakazo API 的客户端,不是各自独立的实现。模型接入走 Pi,由使用者自带凭证。这个结构的直接后果是:bot 的状态属于服务端,客户端只是窗口,所以把后端放到 VPS 上,bot 就能在你关掉笔记本之后继续跑。
两条安装路径,命令不一样
不想克隆仓库的人走已发布镜像。README 给出的命令是创建目录后下载并执行 install-images.sh,脚本会拉取 Compose 文件、生成带随机密钥的 .env 并启动服务,重跑时会保留已有 .env。默认镜像标签是 edge,对应 main 分支构建,同时提供 linux/amd64 和 linux/arm64。启动后访问 127.0.0.1:5173,注册账号并连接模型,本地 Docker 电脑默认开启。要在服务器上跑,先执行 bash install-images.sh --prepare-only,编辑 .env 设置 SANDBOX_PROVIDER=box(或 e2b、daytona)及其 API key 和 RAKAZO_HOST,再执行一次安装脚本,然后在桌面应用里选 Existing instance 填 https 地址。源码开发路径要求更严:Node.js 必须是 22.22.2 以上的 22.x、24.x 或 26+,23.x 和 25.x 不支持,pnpm 9,外加 Docker。流程是先起 Postgres 容器,再 pnpm install、pnpm db:generate、pnpm db:migrate、pnpm sandbox:build、pnpm dev。密钥方面 README 要求 POSTGRES_PASSWORD、BETTER_AUTH_SECRET、ENCRYPTION_KEY、SCREEN_PROXY_SECRET 各自独立随机,Docker 沙箱还要一个专用的 SANDBOX_SUPERVISOR_TOKEN。
Postgres 数据卷是个容易踩的坑
README 在这里写得很直白:已有的 pgdata 卷会保留首次初始化时的用户、密码和数据库名,所以要么把这些值一直留在 .env 里,要么用 ALTER ROLE 就地改。只有备份之后,或者数据确实可以丢弃时,才重建卷。docker compose down -v 会删掉全部 Postgres 状态。默认 Compose 文件里 Postgres 只在网络内部可达,需要从宿主机用 pnpm 或数据库工具连接时,才叠加 docker-compose.postgres-host.yml 这个 overlay,它把 127.0.0.1:5433 发布到回环地址。密码还要求 URI 安全,README 建议用 openssl rand -hex 16。这些约束都不难满足,但它们说明 Rakazo 把数据库当成使用者自己的资产,出问题不负责兜底。
集成、语音与 Treg 的授权边界
应用集成有两条托管路线:Composio 用 COMPOSIO_API_KEY 开启,Pipedream Connect 需要 PIPEDREAM_CLIENT_ID、PIPEDREAM_CLIENT_SECRET、PIPEDREAM_PROJECT_ID 三个值。两者都是可选的,用户仍然可以从 Integrations 页面自行添加 HTTPS 的 MCP server、Treg 端点或 OpenAPI JSON 文档。README 说明连接器凭证在服务端加密,API 不会把它们返回。语音模式需要自带 ElevenLabs、OpenAI、Cartesia 或 Fish Audio 的密钥,可以朗读回复、听写和呼叫 bot。这里有一条容易被忽略的商业约束:Treg 按用量计费,自托管者自带 token,而把 Treg 嵌进托管产品对外销售的人需要先看 treg.to/integrate.md,其中要求托管转售必须有书面协议。这不是法律意见,但如果你的商业模式依赖转售,这条边界要先弄清楚。
桌面端的两种模式与它的取舍
Electron 应用首次启动会问一件事:在这台电脑上运行 Rakazo,还是连接已有服务器。选前者会用 Docker Compose 安装并启动已发布镜像,文件与 infra/compose/install-images.sh 相同,数据放在应用数据目录下,因此机器上必须有 Docker Desktop、OrbStack 或 Docker Engine。已安装的正式版本会把镜像标签钉在自己的版本号上,未打包的开发构建拉 edge。用 pnpm dev 跑开发环境的开发者应该选 Existing instance 并填 http://127.0.0.1:5173。公共服务器必须用 HTTPS,只有回环和私有局域网地址(不含 link-local)才允许 HTTP。应用保存前会检查 Rakazo 的健康端点,之后的启动直接进入该实例。有一点值得注意:退出应用后本地栈仍在运行,需要在应用菜单里手动 Stop Local Stack。对笔记本用户来说,这既意味着 bot 不会因为关窗口而中断,也意味着后台会一直占着资源。
什么时候它不合适:与云端 agent 平台的差别
Rakazo 的对立面是那些把沙箱、模型和运行环境全都托管好的云端 agent 平台。差别不在功能列表,而在谁承担运维。托管平台替你处理数据库、迁移、密钥轮换和沙箱编排,代价是数据经过对方服务器,模型选择受限于对方支持的清单。Rakazo 把这几样都交回给你:模型凭证通过 Pi 自带,沙箱提供商自己选,Postgres 自己跑,升级自己盯。所以如果你的场景是偶尔用一次、不需要 bot 常驻、也不想维护数据库,Rakazo 带来的只是额外负担。反过来,如果你的 agent 需要长时间持有文件、浏览器会话和记忆,而且这些内容不能放到第三方,那自托管的价值才成立。另一个现实约束是 beta 状态和发布节奏:两天内连发三个补丁版本,说明升级时值得先看 release notes 再动生产环境。
升级成本与许可证
已发布镜像路径的升级成本相对低,因为 install-images.sh 会保留已有 .env,重跑即可换到新镜像,edge 标签跟随 main 构建。源码路径要自己走 pnpm db:migrate,而 README 对数据卷的警告意味着迁移前需要备份,否则回退空间很小。Rakazo 使用 Apache-2.0 许可证,允许商用和修改,但 README 提到的 Treg 集成条款是独立于 Rakazo 许可证的另一层约束,两者不要混为一谈。关于许可证的具体义务,请以仓库中的 LICENSE 文件为准,这里不做法律判断。
编辑结论
Rakazo 适合愿意自己管 Postgres、自己出模型密钥、并且需要 bot 在服务器上持续在线的团队;只想要一个开箱即用聊天界面、不愿碰 Docker 与数据库迁移的人不该选它。上手前先确认三件事:Node.js 版本落在 22.22.2 以上的 22.x、24.x 或 26+(23.x 和 25.x 明确不支持),SANDBOX_SUPERVISOR_TOKEN 与其余密钥各自独立生成,以及你打算用的沙箱提供商(e2b、daytona、box 或本地 Docker)是否已在 .env 中配对 API key。如果之后要把 Treg 嵌进对外售卖的产品,先读 treg.to/integrate.md,那里写明托管转售需要书面协议。
社区笔记