---
title: "Deploy Bytebot (Self-Hosted AI Desktop Agent)"
description: "Self-hosted AI desktop agent: a Linux desktop run by Claude, GPT or Gemini"
category: "AI/ML"
url: https://railway.com/deploy/bytebot-self-hosted-ai-desktop-agent
---

# Deploy Bytebot (Self-Hosted AI Desktop Agent)

Self-hosted AI desktop agent: a Linux desktop run by Claude, GPT or Gemini

**[Deploy Bytebot (Self-Hosted AI Desktop Agent) on Railway](https://railway.com/template/bytebot-self-hosted-ai-desktop-agent)**

Machine-readable deploy manifest (JSON, validated by TemplateCI): https://railway.com/deploy/bytebot-self-hosted-ai-desktop-agent/manifest.json

- **Creator:** Nick K's Projects
- **Category:** AI/ML
- **Total deploys:** 1

## Template content

### bytebot-agent https://raw.githubusercontent.com/bytebot-ai/bytebot/refs/heads/main/static/bytebot_icon.svg

- **Image:** ghcr.io/bytebot-ai/bytebot-agent:edge

### bytebot-desktop https://raw.githubusercontent.com/bytebot-ai/bytebot/refs/heads/main/static/bytebot_icon.svg

- **Image:** ghcr.io/bytebot-ai/bytebot-desktop:edge

### bytebot-ui https://raw.githubusercontent.com/bytebot-ai/bytebot/refs/heads/main/static/bytebot_icon.svg

- **Image:** ghcr.io/bytebot-ai/bytebot-ui:edge
- **Public domain:** Yes

### Postgres https://devicons.railway.app/i/postgresql.svg

- **Image:** ghcr.io/railwayapp-templates/postgres-ssl:16

## Documentation

# Deploy and Host Bytebot on Railway

Bytebot is an open-source AI desktop agent: a full Linux desktop (Ubuntu + XFCE, Firefox, VS Code, LibreOffice) that an LLM controls with a mouse and keyboard through natural-language tasks. Give it an instruction like "download the invoices from this portal and fill in the spreadsheet" and it clicks, types, reads the screen and finishes the job — all inside a sandboxed container you own.

## About Hosting Bytebot

Bytebot runs as four services and this template wires them together over Railway's private network. `bytebot-desktop` is the virtual desktop with a noVNC stream on port 9990. `bytebot-agent` is the NestJS brain on port 9991 that talks to your LLM provider (Anthropic, OpenAI or Gemini — set one key) and stores tasks in Postgres. `bytebot-ui` is the Next.js web app with the task list and a live view of the desktop; it is the only service with a public domain. Postgres (with a persistent volume) holds task history and messages. Everything else is pre-configured; you only need to add at least one provider API key before your first task. Expect roughly 2–4 GB of RAM for the desktop service, so this template is best on Railway's Pro plan.

## Common Use Cases

- Automate browser workflows on sites that have no API (portals, dashboards, legacy back-offices)
- Read PDFs, fill forms and move data between desktop applications
- Build QA and RPA agents that run 24/7 without a laptop left open
- Prototype computer-use agents with Claude, GPT or Gemini in an isolated sandbox

## Dependencies for Bytebot Hosting

- `ghcr.io/bytebot-ai/bytebot-desktop`, `bytebot-agent` and `bytebot-ui` images
- PostgreSQL 16 with a persistent volume
- An LLM API key: `ANTHROPIC_API_KEY`, `OPENAI_API_KEY` or `GEMINI_API_KEY`

### Implementation Details

Services reference each other via Railway private domains, e.g. `BYTEBOT_AGENT_BASE_URL=http://${{bytebot-agent.RAILWAY_PRIVATE_DOMAIN}}:9991`. The UI exposes the desktop stream at `/websockify`. Add more provider keys later from the agent service's Variables tab; no redeploy of the desktop is needed. Use the REST API at `https:///api/tasks` to create tasks programmatically.

## Why Deploy Bytebot on Railway?


Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.

By deploying Bytebot on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.


## Similar templates

- [Chat Chat](https://railway.com/deploy/-WWW5r) — Chat Chat, your own unified chat and search to AI platform.
- [stella](https://railway.com/deploy/stella) — Self-host stella with web, API, Postgres, Redis, and object storage.
- [Hermes Agent | OpenClaw Alternative with Dashboard](https://railway.com/deploy/hermes-agent-or-openclaw-alternative-wit) — Self-Hosted Hermes AI Agent for Telegram, Discord & Slack

Open this page in a browser: https://railway.com/deploy/bytebot-self-hosted-ai-desktop-agent
