☁️ One-click Deploy on Railway

1

Visit the Template

Click the Deploy Now button in the Bytebot template on Railway.

2

Add Anthropic Key

Enter your ANTHROPIC_API_KEY as the single required environment variable.

3

Deploy & Launch

Hit Deploy. Railway will build the stack, wire the services together via private networking and output a public URL for the UI. Your agent should be ready within a couple of minutes!

Need more details? See the full Railway deployment guide.


Prerequisites

  • Docker ≥ 20.10
  • Docker Compose
  • 4GB+ RAM available
  • Anthropic API key (get one here)

🚀 2-Minute Setup

Get your self-hosted AI desktop agent running with just three commands:

1

Clone and Configure

git clone https://github.com/bytebot-ai/bytebot.git cd bytebot echo "ANTHROPIC_API_KEY=your_api_key_here" > infrastructure/docker/.env 
2

Start the Agent Stack

docker-compose -f infrastructure/docker/docker-compose.yml up -d 

This starts all four services:

  • Bytebot Desktop: Containerized Linux environment
  • AI Agent: Claude-powered task processor
  • Chat UI: Web interface for interaction
  • Database: PostgreSQL for persistence
3

Open the Chat Interface

Navigate to http://localhost:9992 and start chatting!

Try asking:

  • “Open Firefox and search for the weather forecast”
  • “Take a screenshot of the desktop”
  • “Create a text file with today’s date”

First time? The initial startup may take 2-3 minutes as Docker downloads the images. Subsequent starts will be much faster.

What Just Happened?

You now have a fully functional AI agent that can:

  • 🖱️ Control mouse and keyboard
  • 🌐 Browse the web
  • 📄 Create and edit documents
  • 📧 Manage emails
  • 🔄 Automate any desktop task

Watch it work in real-time through the embedded VNC viewer in the tasks interface!

Try These Example Tasks

Web Research

“Find the top 5 news stories about AI today and summarize them”

Data Collection

“Go to example.com and extract all email addresses into a list”

File Management

“Create a folder called ‘reports’ and organize files by date”

Testing

“Test the login flow on our staging site”

Accessing Your Services

ServiceURLPurpose
Tasks UIhttp://localhost:9992Main interface for interacting with the agent
Agent APIhttp://localhost:9991/tasksREST API for programmatic task creation
Computer APIhttp://localhost:9990/computer-useLow-level desktop control API

Alternative Deployment Options

If you just want the containerized desktop without the AI agent:

#Using pre-built image (recommended)
docker-compose -f infrastructure/docker/docker-compose.core.yml pull
docker-compose -f infrastructure/docker/docker-compose.core.yml up -d

Or build locally:

docker-compose -f infrastructure/docker/docker-compose.core.yml up -d --build

Access the desktop at http://localhost:9990/vnc

Managing Your Agent

View Logs

Monitor what your agent is doing:

# All services
docker-compose -f infrastructure/docker/docker-compose.yml logs -f

# Just the agent
docker-compose -f infrastructure/docker/docker-compose.yml logs -f bytebot-agent

Stop Services

docker-compose -f infrastructure/docker/docker-compose.yml down

Update to Latest

docker-compose -f infrastructure/docker/docker-compose.yml pull
docker-compose -f infrastructure/docker/docker-compose.yml up -d

Reset Everything

Remove all data and start fresh:

docker-compose -f infrastructure/docker/docker-compose.yml down -v

Quick API Examples

Create a Task via API

curl -X POST http://localhost:9991/tasks \
  -H "Content-Type: application/json" \
  -d '{
    "description": "Search for flights from NYC to London next month",
    "type": "browser_task"
  }'

Direct Desktop Control

# Take a screenshot
curl -X POST http://localhost:9990/api/computer \
  -H "Content-Type: application/json" \
  -d '{"action": "screenshot"}'

# Type text
curl -X POST http://localhost:9990/api/computer \
  -H "Content-Type: application/json" \
  -d '{"action": "type_text", "text": "Hello, Bytebot!"}'

Troubleshooting

Next Steps

Need help? Join our Discord community for support and to share what you’re building!