Self-Hosted Setup

Clone the repo, install dependencies, and run YokeBot locally.

Clone and Install

YokeBot is distributed as a single Git repository using pnpm workspaces.

git clone https://github.com/yokebots/yokebot.git
cd yokebot
pnpm install

Environment Variables

Copy the example environment file and fill in at least one model provider API key. See the Environment Variables reference for the full list.

cp packages/engine/.env.example packages/engine/.env
# Edit packages/engine/.env with your API keys
lightbulb
At minimum you need one LLM provider key (e.g. DEEPINFRA_API_KEY or OPENROUTER_API_KEY). Everything else is optional for local development.

Database

By default YokeBot uses SQLite, which requires zero configuration. The database file is created automatically in the engine package directory on first run.

For production workloads or multi-instance deployments, you can switch to Postgres by setting the DATABASE_URL environment variable:

DATABASE_URL=postgresql://user:password@localhost:5432/yokebot

Start the Dev Server

pnpm dev:all

This command starts both the engine (API server) and the dashboard (Vite dev server) concurrently. By default the dashboard is available at http://localhost:5173 and the engine API at http://localhost:3001.

Verify the Installation

  1. Open http://localhost:5173 in your browser.
  2. Sign in or create a local account.
  3. Navigate to Agents and create a test agent.
  4. Send the agent a message in Chat — if it responds, everything is working.

Updating

To update a self-hosted instance, pull the latest changes and reinstall dependencies:

git pull origin main
pnpm install
pnpm dev:all

Next Steps