Skip to content

Getting Started ​

Gavin can run locally with Bun or in Docker.

Why Gavin exists? ​

Gavin makes setting up an AI agent as easy as running a WordPress site — self-hosted and managed without a team of engineers.

Where OpenClaw and Hermes serve personal assistants, Gavin is built for team assistants — agents that work alongside a whole team, not a single person.

Multi-tenant by default: each organization is an isolated boundary with its own profiles, members, tools, and memory. One deployment can serve many clients — agencies and service companies get a separate org, agents, and data per client.

Before you start ​

You need:

  • An LLM provider API key
  • Bun if you want to run from source

Run locally ​

Clone the repository and install dependencies:

bash
git clone https://github.com/roh00t/gavin_ai.git
cd gavin
bun install
bun run dev:web

Open:

  • Dashboard: http://localhost:3000
  • API server: http://127.0.0.1:4310
  • API docs: http://127.0.0.1:4310/docs

If you only want the API server:

bash
bun run dev:server

On first run, Gavin asks for your provider and API key if they are not configured yet. Settings are saved in ~/.gavin/config.ini.

Docker ​

If you want a simpler deployment path, run Gavin with Docker.

Quickest option:

bash
docker pull ghcr.io/roh00t/gavin_ai:latest
docker run -d -p 4310:4310 -v gavin-config:/root/.gavin ghcr.io/roh00t/gavin_ai:latest

Build it yourself:

bash
docker build --platform=linux/amd64 -t gavin .
docker run -d -p 4310:4310 -v gavin-config:/root/.gavin gavin

With Docker, the app is available at http://localhost:4310.

First-time setup ​

After Gavin is running:

  1. Open the dashboard
  2. Create the first admin account and first organization
  3. Configure your model provider
  4. Create or review profiles
  5. Invite other users if needed

What you configure in Gavin ​

Most operators only need to think about four things:

  • Organization: the tenant boundary
  • Members: who can access that org
  • Profiles: the bots people talk to
  • Tools: what each profile is allowed to do

Integrations ​

Gavin can expose the same agent runtime through:

  • Web dashboard
  • CLI
  • Telegram
  • WhatsApp

Enable Telegram or WhatsApp from the web app settings when you are ready.

Telegram group setup ​

If you want to use Gavin in Telegram groups:

  1. Link your Telegram account to the bot in a private chat first.
  2. In @BotFather, disable Group Privacy for the bot if you want @mentions to work reliably.
  3. If you changed Group Privacy, remove the bot from the group and add it back so Telegram applies the new setting.

Gavin still filters group messages locally, so even with privacy disabled it only responds to slash commands, replies to the bot, and real bot mentions.

For the full Telegram guide, see Telegram.

Next steps ​

Released under the MIT License.