OpenAgent
Getting Started

Installation

Install and run OpenAgent on your own infrastructure.

Installation

This guide walks you through installing OpenAgent. The fastest approach is Docker Compose, which starts the full stack (backend, frontend, and database) with a single command.

Prerequisites

  • Docker 24.0+ and Docker Compose 2.x
  • 4 GB RAM minimum (8 GB recommended for local embedding models)
  • A domain or IP address (for production deployments)

Install with Docker Compose

Clone the repository

git clone https://github.com/the-open-agent/openagent.git
cd openagent

Configure environment variables

Copy the example configuration file and edit it:

cp .env.example .env

At minimum, set a secure admin password and your database credentials:

.env
# Application
APP_SECRET_KEY=your-secret-key-here
ADMIN_PASSWORD=your-admin-password

# Database
DB_HOST=db
DB_PORT=3306
DB_NAME=openagent
DB_USER=openagent
DB_PASSWORD=your-db-password

Start the services

docker compose up -d

This starts three containers:

  • openagent-app — the Go backend + React frontend
  • openagent-db — MySQL 8.0 database
  • openagent-casdoor — Casdoor SSO service

Open the dashboard

Navigate to http://localhost:14000 in your browser. Log in with the admin credentials you set in .env.

The first start may take a minute while Docker pulls the images and the database initializes. Subsequent starts are fast.

Install from Source

If you want to modify the code or run without Docker:

Requirements: Go 1.21+, MySQL 8.0+

# Install dependencies
go mod download

# Configure the database in conf/app.conf
# Then run the backend
go run main.go

The backend listens on port 14000 by default.

Requirements: Node.js 18+, pnpm

cd web
pnpm install
pnpm build

# For development with hot reload:
pnpm dev

The dev server runs on port 3000 and proxies API calls to the backend.

Verify the installation

After starting, check that all services are healthy:

docker compose ps

You should see all containers with status Up. The API health endpoint is available at:

GET http://localhost:14000/api/health

Next Steps

The default configuration is suitable for local development. For production, see the Deployment guide for TLS, reverse proxy, and security hardening.

On this page