rakazo README

The project's README from github.com/elie222/rakazo. As one markdown file: README.md.

Rakazo

GitHub stars Discord

Rakazo — AI teammates you actually own

Rakazo is an open-source platform for running persistent AI teammates. It is available on the web, as an Electron desktop app, and through an Expo mobile app. Bring your own model and computer provider, or run the complete stack locally.

Rakazo is in beta. Learn more at rakazo.com.

Features

Demo

https://github.com/user-attachments/assets/dccdeddb-2134-4a56-8eed-b2e591736b1c

Stack

Quick start (published images)

You need Docker Engine, the Compose plugin, curl, and OpenSSL. No clone or Node install.

mkdir -p rakazo && cd rakazo &&
curl -fsSLO https://raw.githubusercontent.com/elie222/rakazo/main/infra/compose/install-images.sh &&
bash install-images.sh

The installer downloads the Compose files, creates .env with random secrets, and starts Rakazo. It preserves an existing .env when rerun.

Open http://127.0.0.1:5173, create an account, and connect a model. Local Docker computers are on by default. Optional remote providers: e2b, daytona, or box with the matching API key.

Default image tag is edge (main builds, linux/amd64 + linux/arm64). Details and tags: self-hosting guide.

On restricted networks, override the installer download base (RAKAZO_DOWNLOAD_BASE), skip existing Compose files (--local / RAKAZO_DOWNLOAD_SKIP_EXISTING), or mirror the bootstrap script URL — see Restricted networks / mirror downloads.

For an agent-assisted install, use SETUP_PROMPT.md.

Run on a server

Bots stay on when the backend runs on a server. Use the same installer on a VPS, then connect from the desktop app, the mobile app, or a browser.

bash install-images.sh --prepare-only
# edit .env: SANDBOX_PROVIDER=box (or e2b / daytona) with its API key, RAKAZO_HOST=your.domain
bash install-images.sh

Put HTTPS in front of port 5173; docs/self-host.md covers the Caddy setup and host hardening. In the desktop app choose Existing instance and enter the https:// address.

Local development (source checkout)

You need Node.js 22.22.2 or newer in the 22.x line, Node.js 24.x, or Node.js 26+; pnpm 9; and Docker. Node.js 23.x and 25.x are not supported.

git clone https://github.com/elie222/rakazo.git
cd rakazo
cp .env.example .env

Set POSTGRES_PASSWORD (for example openssl rand -hex 16), then put the same value in DATABASE_URL. Set BETTER_AUTH_SECRET, ENCRYPTION_KEY, and SCREEN_PROXY_SECRET to independent long random values. Docker sandboxes also need a dedicated SANDBOX_SUPERVISOR_TOKEN. You can also set OPENROUTER_API_KEY, or connect a supported model provider during onboarding.

Managed app catalogs are optional. Set COMPOSIO_API_KEY for Composio, or the PIPEDREAM_CLIENT_ID, PIPEDREAM_CLIENT_SECRET, and PIPEDREAM_PROJECT_ID trio for Pipedream Connect. Users can add an HTTPS MCP server, Treg endpoint, or OpenAPI JSON document from Integrations without enabling either managed catalog. Connector credentials are encrypted on the server and are never returned by the API.

Treg is usage-metered. Self-hosters supply their own Treg token; operators embedding Treg in a hosted product should review Treg's integration terms, which require a written agreement for hosted resale.

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 dev

Postgres stays network-internal in the default Compose file (same as published images). The postgres-host overlay publishes loopback 127.0.0.1:5433 for host-side pnpm and DB tools. Without the overlay, open a shell with docker compose --env-file .env -f infra/compose/docker-compose.yml exec postgres sh -c 'psql -U "$POSTGRES_USER" -d "$POSTGRES_DB"'. Use a URI-safe POSTGRES_PASSWORD (openssl rand -hex 16). An existing pgdata volume keeps the user, password, and database from first init, so keep those values in .env, or change them in place with ALTER ROLE / rename. Recreate the volume only after a backup (or when the data is disposable); docker compose down -v deletes all Postgres state.

Open http://127.0.0.1:5173, create an account, connect a model, and create your first bot.

For deployment, provider selection, backups, and upgrades, see the self-hosting guide.

Desktop and mobile

The Electron and Expo apps are clients of the same Rakazo API used by the web app.

With the development stack running, launch Electron with:

pnpm --filter @rakazo/desktop dev

On first run the desktop app asks whether to run Rakazo on this computer or connect to an existing server. This computer installs and starts the published images with Docker Compose (the same files as infra/compose/install-images.sh) under the app's data directory, so Docker Desktop, OrbStack, or Docker Engine must be installed; the app links to them when it is not. Installed builds pin the image tag to their own version; unpackaged builds pull edge. Developers running pnpm dev should pick Existing instance with http://127.0.0.1:5173 instead. Public servers must use HTTPS; HTTP is accepted only for loopback and private LAN addresses (not link-local). The app verifies Rakazo's health endpoint before saving, and later launches go straight to that instance. The stack keeps running after the app quits; Stop Local Stack in the application menu turns it off.

Use Change Rakazo Server… in the application menu to reconnect. Closing that window without saving returns to the previous instance. For development automation, set RAKAZO_WEB_URL to point the shell somewhere else without changing the saved instance, or RAKAZO_FORCE_SETUP=1 to run setup again.

Mobile build and release instructions live in docs/mobile-release.md.

UI language

The web (and Electron-hosted) UI supports English, Deutsch, 한국어, Türkçe, हिन्दी, Português (Brasil), 简体中文, Español, and Русский under Settings → Language. The Expo app supports English, 简体中文, and Русский under Account → Language. The marketing homepage (apps/www) is available in en/de/ko/zh via footer language links (/, /de/, /ko/, /zh/); other marketing pages stay English. The Russian marketing homepage and native Electron setup/menu remain separate follow-up work.

Development

apps/       web, api, worker, desktop, mobile, and public website
packages/   domain, contracts, persistence, adapters, UI, and test tooling
infra/      local services and computer images
docs/       architecture, operations, and release guides

Common checks:

pnpm lint
pnpm check
pnpm test
pnpm test:integration
pnpm test:e2e

See CONTRIBUTING.md for the development workflow and test matrix.

Documentation

Contributing

Contributions are welcome. Please read CONTRIBUTING.md before opening a pull request. For security vulnerabilities, follow SECURITY.md instead of filing a public issue.

Rakazo is licensed under the Apache License 2.0.

Questions and ideas are welcome in the Rakazo Discord community.

rakazo (elie222/rakazo)

Searching Database…

4.5K ·GitHub
这是什么?Rakazo 是一个开源平台,用于运行持久的 AI 队友(机器人),它们能长期保留自己的对话、记忆和例程。它被构建为 Grok Bot 的开源替代品,让你可以自带模型和自己的计算机/沙箱服务商,而不必依赖封闭方案。
这是要安装的应用,还是要基于它编码的框架?它是一个自托管平台,带有三个对接同一后端 API 的现成客户端:网页应用、Electron 桌面应用和 Expo 移动应用。
怎么让它跑起来?安装 Docker Engine、Compose 插件、curl 和 OpenSSL,然后运行官方镜像安装器,它会下载 Compose 文件、写入包含随机密钥的 .env 并启动 Rakazo——无需克隆仓库或安装 Node。
安装上有什么需要留意的坑吗?本地开发明确不支持 Node.js 23.x 和 25.x;如果你把 Rakazo 暴露在公网服务器上,必须在其前面加上 HTTPS——纯 HTTP 只适用于回环或内网局域网地址。
我接入的凭据(MCP 服务器、Treg 令牌等)会怎样?你通过集成(Integrations)添加的所有连接器凭据都会在服务器端加密,API 永远不会返回它们。
机器人在它的「计算机」上究竟能做什么?机器人可以在共享团队计算机或隔离的私人计算机上获得浏览器、终端、文件和图形桌面访问能力,底层由 Docker、E2B、Daytona、Box 或受信任的本地机器提供支持。
机器人之间能协作吗?可以——一个机器人可以把任务委派给同侪机器人,也可以临时拉起短生命周期的子代理来协助完成任务。
语音模式是什么?语音模式让你可以对机器人说话、口述消息或打电话给它,需要使用你自己的 ElevenLabs、OpenAI、Cartesia 或 Fish Audio API 密钥。
界面支持哪些语言?网页和 Electron 界面支持英语、德语、韩语、土耳其语、印地语、巴西葡萄牙语、简体中文、西班牙语和俄语;Expo 移动应用目前支持英语、简体中文和俄语。
What are similar projects?OpenMausBot, LibreChat, paseo, happy, os, ekko-studio, trueforge, vicoa
Creator
elie222
Size
62.2 MB
Stars
4.5K
Age
2mo
Commits · 90 Days