selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

OtoDock logo

Self-host OtoDock

v1.9.0

Self-hosted platform for collaborative AI agents

ReleaseSource AvailableOther
Updated9 hours ago
LanguagePython
Setup difficultyModerate
Stars
193
CPU
x86-64 or arm64
RAM
4 GB minimum
Storage
13 GB free disk
Port
8400 (Main API and dashboard)
Requires
PostgreSQL
Docker
ghcr.io/otodock/otodock-proxy
Install with Docker Compose
Four views of the OtoDock dashboard: chat with Excel workbook, agent-built app, 3D company map, and Claude Code terminal3D company map showing Engineering, Marketing, and Independent departments with agents and delegation linesCEO agent opening a meeting with developer agent, work streaming live in chatClaude Code terminal running inside the dashboard with agent's tools loadedExcel workbook opened and edited inside the chat with sheets and chartsServer with agents linked to paired laptop, workstation, and PC

What is OtoDock?

OtoDock is a self-hosted platform that turns Claude Code, Codex, and local LLMs into a team of collaborative AI agents for your organization. Agents run in kernel-level sandboxes on your server, with optional remote machine pairing for full hardware access. The platform includes multi-tenant agent sharing with four modes, department organization with delegation rules, role-based access control at platform and agent levels, SSO/OIDC and two-factor authentication, scheduled tasks and webhook triggers, phone calls via Twilio or Asterisk/FreePBX, in-chat document editing, image generation and editing, a community catalog of ready-made agents and MCP tools, and per-user cost budgets. It runs via a single Docker Compose stack or bare-metal for development. The Fair Source license allows free self-hosting up to 5 users, with paid seat licenses for larger teams; each release becomes Apache 2.0 after two years.

Should you self-host OtoDock?

OtoDock scores 49/100 on selfhost.directory (how scoring works) and ranks #104 of 209 in AI Agents. It has 193 GitHub stars.

It shipped 10 stable releases in the past year. The latest, v1.9.0, came out on 25 October 2026. New versions land roughly every 6 days.

Setup is moderate: expect some configuration beyond a single command. An official Docker image is available. It is Other-licensed and written mostly in Python.

Its closest alternative on selfhost.directory is Orca (91/100, 108 446 stars). It scores higher overall, so compare the two before you pick. See OtoDock vs Orca side by side.

Features

  • App building and deployment
  • Department organization
  • Encrypted Credentials
  • Image generation and editing
  • In-chat document editing
  • Kernel-level sandbox
  • Multiple AI engines
  • Multi-tenant agent platform
  • Phone integration
  • Remote machine pairing
  • Role-based Access Control
  • Scheduled and triggered tasks
  • SSO/OIDC authentication
  • Usage and cost budgets
  • Web browsing

OtoDock README

How to install OtoDock

Install OtoDock with Docker Compose

Environment variables
POSTGRES_PASSWORD, DASHBOARD_PUBLIC_URL, TZ, OIDC_*, OTO_AUDIOSOCKET_PUBLIC_HOST, OTODOCK_PROXY_MEM_LIMIT, OTODOCK_FILETOOLS_MEM_LIMIT, OTODOCK_NETWORK_SUBNET, etc.

mkdir otodock && cd otodock curl -fsSLO https://raw.githubusercontent.com/OtoDock/oto-dock/main/scripts/install.sh bash install.sh

One-command install script that checks Docker, writes .env, downloads compose file, and starts the stack

How to configure OtoDock

  • DASHBOARD_PUBLIC_URLhttp://localhost:8400Public URL users browse to (e.g., https://otodock.example.com)

    Public URL users browse to (e.g., https://otodock.example.com)

    values: any valid URL

  • OIDC_*OIDC settings for single sign-on (Authentik, Keycloak, Entra ID, etc.)

    OIDC settings for single sign-on (Authentik, Keycloak, Entra ID, etc.)

    values: OIDC provider configuration

  • OTO_AUDIOSOCKET_PUBLIC_HOSTLAN IP where PBX reaches phone service for Asterisk/FreePBX

    LAN IP where PBX reaches phone service for Asterisk/FreePBX

    values: LAN IP address

  • OTODOCK_FILETOOLS_MEM_LIMIT4gMemory limit for file-tools container

    Memory limit for file-tools container

    values: memory string

  • OTODOCK_NETWORK_SUBNET10.200.0.0/24Docker network subnet for main bridge

    Docker network subnet for main bridge

    values: CIDR notation

  • OTODOCK_PROXY_MEM_LIMIT0Memory limit for proxy container (0 = unlimited)

    Memory limit for proxy container (0 = unlimited)

    values: memory string (e.g., 12g)

  • OTODOCK_VERSION1.8.1OtoDock release version to deploy

    OtoDock release version to deploy

    values: version tag

  • POSTGRES_PASSWORDDatabase password for PostgreSQL (required)

    Database password for PostgreSQL (required)

    values: long random string

  • PROXY_BIND_IPall interfacesHost interface to bind the published port to

    Host interface to bind the published port to

    values: IP address (e.g., 127.0.0.1)

  • PROXY_PORT8400Host port to publish the dashboard on

    Host port to publish the dashboard on

    values: any valid port

  • TRUSTED_PROXYIP or CIDR of reverse proxy for X-Forwarded-For trust

    IP or CIDR of reverse proxy for X-Forwarded-For trust

    values: IP/CIDR (comma-separated)

  • TZUTCContainer timezone

    Container timezone

    values: IANA timezone (e.g., Europe/Athens)

OtoDock releases & version history

FAQ

Is my data on my server?

Yes. Data only goes to the AI providers you connect and services you integrate. The install's housekeeping (community catalog, release check, subscription check-in) carries none of your data.

What does the install need?

A Linux server or Apple Silicon Mac with Docker, 4 GB RAM, 13 GB disk, and sudo once on Ubuntu 24.04+.

Which AI accounts do I need?

A Claude subscription for Claude Code, a ChatGPT subscription for Codex, an API key, or a local model server. Each person connects their own or an admin shares a pool.

More in AI Automation

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…