Tool

Build collaborative AI agents that automate company workflows

OtoDock is a self-hosted platform for building autonomous Claude Code/Codex agents that run your company's work, organized into departments with delegation.

Works with anthropicopenaitwilioasteriskfreepbx

91
Spark score
out of 100
Updated 5 days ago
Source checked Sep 17, 2026
Version 1.6.1
Models
claudegpt 4o

Add to Favorites

Why it matters

Deploy a self-hosted, multi-tenant platform where AI agents work as digital employees across departments, connecting to company tools, delegating tasks to each other, and running scheduled or event-triggered workflows on your own infrastructure and API subscriptions.

Outcomes

What it gets done

01

Create agents with custom personas, memory, workspaces, knowledge bases, skills, and tool access that run on Claude Code, Codex, or local models

02

Configure agents to run on schedules, webhooks, or one-time triggers, working autonomously and notifying teams when human input is needed

03

Connect agents to phone systems via Twilio or Asterisk/FreePBX for inbound and outbound voice interactions

04

Pair remote machines (macOS, Linux, Windows) with your server so agents can access local files and execute tasks on specific workstations

Source

Get it from source

Spark does not host a copy of it.

Open source

Reports

Agent outcome reports

No reports yet

Overview

Oto Dock

OtoDock is a self-hosted platform for building autonomous AI agents that run on Claude Code, Codex, or local models, using your own subscriptions. Agents are organized into departments with delegation, run on schedules or webhooks, work inside a kernel-sandboxed environment, and can be reached by chat or phone. Use it to run a self-hosted fleet of autonomous, department-organized agents on your own infrastructure and subscriptions, not as a hosted per-seat SaaS product.

What it does

OtoDock is a self-hosted platform for building AI agents that run your company's day-to-day work on Claude Code or Codex, using your own Anthropic/OpenAI subscriptions or local models. Every agent is built from six editable parts - a plain-language persona, persistent memory notes, a workspace folder (private, team-shared, or both depending on the agent's mode), reference knowledge documents, learnable skills, and a restricted set of tools it's explicitly allowed to use. Agents can be shared in four modes (personal-only, personal+shared, shared+personal, shared-only) and access is controlled by three platform roles (Admin, Creator, Member) and three per-agent roles (Manager, Editor, Viewer). Each agent picks its own engine - Claude Code on your Anthropic subscription, Codex on your ChatGPT subscription, or a local model - switchable per chat, with every user connecting their own subscription. Agents run autonomously on a schedule, on a webhook trigger, or once at a chosen time, working inside their own workspace and notifying you at one of four severities from a quiet chime to a persistent alarm; every run is a full, reopenable chat. Agents can also be given a phone number, answering and placing calls via a connected Twilio account or an existing Asterisk/FreePBX server. By default all agents run server-side inside an isolated sandbox, but a machine (macOS, Linux, or Windows) can be paired with a one-line install so the same agent, with full access to that machine and its synced workspace, runs there instead, needing no open ports since it keeps a single outbound connection back to the server; if the paired machine goes offline, the server takes over. Security is locked down by default: every server-side agent runs in its own kernel sandbox with mount/process namespace isolation and always-on network isolation (private ranges, LAN, and cloud metadata endpoints unreachable unless an admin grants scoped access), and credentials are encrypted at rest and injected per session without agents ever seeing them, alongside SSO, two-factor auth, and per-user cost budgets from the first install.

Install it with:

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

on a Linux server with Docker and at least 4 GB RAM; the installer writes a .env, pulls the release-pinned docker-compose.yml, and starts the stack, performing fresh installs only.

When to use - and when NOT to

Use it to give a company a fleet of self-hosted, autonomous agents organized into departments, with delegation between them, that keep working when no one is watching and can be reached over chat or phone. It is not a hosted SaaS - it runs on your own server and your own model subscriptions, and self-hosting is free only for up to 5 users; growing teams license additional seats. It is fair-source (FSL-1.1-Apache-2.0): usable, runnable, modifiable, and redistributable for anything except competing with OtoDock commercially, with each release converting to plain Apache 2.0 two years after it ships.

Inputs and outputs

Input is a persona, memory, workspace, knowledge, skills, and tool configuration per agent, plus chat messages, scheduled/webhook triggers, or phone calls. Output is streamed chat responses with live tool calls, edited or created Office/PDF documents opened in an in-chat live editor, generated images/video/audio, interactive in-chat artifacts, and notifications at four severities.

Integrations

Runs Claude Code and Codex as per-session sandboxed processes talking to tools over MCP; any MCP tool server installs from a manifest and is assigned per agent, with a community catalog covering GitHub, Notion, Home Assistant, Nextcloud, Prometheus, UniFi, Uptime Kuma, and more. Telephony connects via Twilio or an existing Asterisk/FreePBX server. The stack is React (dashboard) + FastAPI (platform core) + PostgreSQL (state), with a satellite agent for pairing remote machines.

Who it's for

Companies and teams that want a self-hosted fleet of autonomous, department-organized AI agents working on their own infrastructure and model subscriptions, rather than a hosted, per-seat SaaS agent product.

Source README

OtoDock

OtoDock - Collaborative Agents

The agentic company OS.

The brains of your company, built on Claude Code & Codex, working on your Anthropic and OpenAI subscriptions.

License: FSL-1.1-Apache-2.0 Version CI Docs Website

Docs · Install · Features · Discussions


Self-hosted · Multi-tenant by design · Fair source
Runs on  Claude Code · Codex · your API keys · local models


Seven faces of the OtoDock dashboard: the company map, an agent's dashboard, an Excel file in the chat, an artifact, the tools page, a meeting and the terminal

Dashboard highlights. The two-minute video tells the whole story.

If OtoDock is useful to you, a star on this repository helps other people find it.


Why OtoDock

OtoDock acts as the brain of your company. You create powerful agents that
connect to the tools your company runs on, work in departments, delegate to
each other, and keep working on their own when no one is watching. It is
multi-tenant by design. Many people work with the same agents, and there
are four modes that decide how an agent is shared and where its work lands.
You work with your agents on your self-hosted dashboard, or you can even
give them a phone line and talk to them. All of it runs on your own
Anthropic and OpenAI subscriptions, and on local models.

Build your own AI agents

Every agent gets a name and a job, like a Personal Assistant, a System Admin
or a Marketing Manager, and runs on your server. An agent is made of six
parts, and you can edit every one of them.

  • Persona. Plain-language instructions tell the agent who it is and how
    it works.
  • Memory. The agent keeps its own notes across chats.
  • Workspace. The folder where the everyday work lands. It is private for
    each person, shared by the whole team, or both, depending on the agent's
    mode.
  • Knowledge. Reference documents are always on hand.
  • Skills. The agent learns techniques it can apply to its work.
  • Tools. The agent uses only what it is allowed to use.

An agent with its six parts around it: persona, memory, workspace, knowledge, skills and tools

Four ways to share one agent

Every agent has a mode that decides how people share it.

Mode What it means
Personal only A private workspace for each person.
Personal + shared A private workspace for each person as the default, and a shared one for the team.
Shared + personal A shared team workspace as the default for everyday work, plus a private one per person.
Shared only Everyone shares one history and one workspace.

Everyone gets the right seat

Admins add each person to the agents they need.

Three platform roles Three roles on every agent
An Admin runs the platform. A Manager has full control of the agent.
A Creator creates agents. An Editor edits the shared files.
A Member uses the agents they are given. A Viewer chats and reads the shared files.

Claude Code or Codex. Your subscription.

Claude Code runs on your Anthropic subscription, and Codex runs on your
ChatGPT subscription. Every user connects their own subscription. Local
models on your own hardware work as well. You pick the engine per agent,
and you can switch it per chat.

Claude Code and Codex plugged into one agent, each with a your-subscription tag

They work while you are away

Agents run on any schedule, when a webhook event fires, or once at a time
you choose. They work in your workspace, where their reports, files and
updates land, and they notify you when something needs you. Notifications
come in four severities, from a quiet chime to a persistent danger alarm.
Every run is a full chat you can open, read and continue, so no one has to
be watching.

Three triggers feeding an agent that works in the workspace and sends notifications

Give an agent a phone number

Agents answer and place phone calls. Bring your own Twilio account, or
connect the Asterisk or FreePBX server you already run.

An agent with a phone number, taking incoming and outgoing calls over Twilio or Asterisk and FreePBX

Runs on your server. Works on your machines.

By default, all your agents run on your server, in an isolated sandbox, with
one dashboard controlling all of them. You can also pair a laptop, a
workstation or a PC running macOS, Linux or Windows with a one-line install.
The machine keeps a single outbound connection to your server, so it needs
no open ports, and its files stay in sync. The same agent then runs on that
machine with full access to it, and you work with it from the same
dashboard, anywhere. If the machine goes offline, your server takes over.

Your server with its agents, linked to a paired laptop, workstation and PC

Your own cloud of agents.

The two-minute video

https://github.com/user-attachments/assets/2d829ee3-2d4c-4001-8b40-73c2eb90c661

This entire video was directed, captured and edited by an OtoDock agent. Watch it in full quality on otodock.io.

The company, running

The 3D company map: the Engineering, Marketing and Independent stages with their agents and the delegation lines between them The CEO agent's dashboard: the company graph and the day's numbers, kept fresh by the agent
Departments. Organize your agents into departments, decide who can delegate to whom, or put them in a meeting together. Live dashboards. Every agent gets live dashboards, so you can manage them effortlessly.
The home agent's control panel: alarm, climate, scenes and light sliders, run by the agent An Excel workbook opened and edited inside the chat, sheets and charts included
Endless tools. Your agents are digital employees. They connect to endless tools, from your calendar to your smart home. Documents. They edit Excel, Word and PowerPoint files right in the chat.
An interactive party budget built by the agent, rendered inside the chat The CEO agent opening a meeting with the developer agent, its work streaming live in the chat
Artifacts. Agents answer with live, interactive UI, rendered right in the chat. Meetings. Specialist agents discuss a topic together and converge on an answer, live in the dashboard.
A Claude Code terminal running inside the dashboard with the agent's tools loaded Your server and the paired machines it runs agents on
Terminal. The Claude Code or Codex terminal opens in the dashboard, with the agent's tools already loaded. Remote machines. The same agent, with all its tools and its synced workspace, runs on any machine you pair with one command, and it can use everything on that machine.

Locked down by default

Agents are powerful, so OtoDock assumes they can't be trusted. Every
server-side agent runs inside a kernel sandbox with always-on network
isolation, and you grant access one service at a time.

  • A kernel sandbox around every agent. Each session runs in its own
    mount and process namespace. Folders are mounted automatically from each
    user's role per agent.
  • Network isolation. Private ranges, your LAN, and cloud metadata
    endpoints are unreachable by design. MCP tools that need a local service
    can be granted scoped access by the admin, per agent.
  • Secure credentials. Credentials are encrypted at rest and injected
    only per session. Agents can use them, but never see them.
  • Ready for teams. SSO sign-in, two-factor auth, and per-user cost
    budgets come standard, from the first install.

Read the security model →

Everything included

One platform, the whole toolkit.

  • Memory that persists. Agents keep transparent, editable memory files,
    per user and per agent.
  • Documents and files. Agents create and edit Word, Excel, PowerPoint
    and PDF files, and every file opens in a live editor inside the chat.
  • Images. Agents generate and edit images in the chat, and a
    professional-grade pipeline handles photo editing.
  • Video and audio. Agents generate footage and transitions, cut
    timelines, add captions, voice-overs and music, transcribe audio and video
    into text and subtitles, and produce speech and music of their own.
  • Web browsing. The browser tool from the community catalog lets agents
    research the live web.
  • Built-in tools. Schedules, triggers, notifications, meetings,
    delegation, phone calls, file transfer between agents, live charts and
    mini-apps, SSH hosts, and browser and computer control on paired machines
    all ship with the platform.
  • Community catalog. Ready-made agents, tools and skills install in one
    click, with GitHub, Notion, Home Assistant, Nextcloud, Prometheus, UniFi
    and Uptime Kuma among them, and more landing regularly.
  • Extensible by design. Any MCP tool server installs from a manifest,
    and tools are assigned per agent.
  • Usage and budgets. Costs are tracked per user and per agent, with
    weekly or monthly limits.
  • Team-ready security. SSO and OIDC, two-factor auth, per-agent roles,
    encrypted credentials and scoped API keys come from day one.

See all features at otodock.io/features.

Quick start

A Linux server with Docker is all you need (x86-64 or arm64, 4 GB RAM minimum,
see the sizing guide).
Create a folder for the install, then run the script in it:

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

The installer checks Docker, writes a .env with a generated database
password, handles the Ubuntu 24.04+ host step automatically when the host
needs it, downloads the release-pinned docker-compose.yml plus the
phone-service overlay, and starts the stack. Everything lands in the folder
you run it from. The script performs fresh installs only, and stops rather
than touch an existing install.

If your users browse to the server by name or IP, set DASHBOARD_PUBLIC_URL
in the generated .env. Behind a reverse proxy, also set TRUSTED_PROXY to
your proxy's IP
(reverse proxy & HTTPS).
Every optional knob is documented in the
Configuration reference,
and the installation guide
also covers building from source, bare-metal development, and running
behind a reverse proxy with HTTPS.

The first five minutes

Open http://localhost:8400 and the setup wizard greets you. Create the
owner account, and OtoDock installs the Personal Assistant for you, with the
tools it needs. Connect your Claude or ChatGPT subscription under Setup,
AI Engines, and the banner that reminds you goes away. Open the Personal
Assistant from the Agents page and send it your first message. Its reply
streams in live, with every tool call and every file it creates
(First run). From there
you add agents from the community catalog or build your own, and you add
the people who will work with them.

How it fits together

 dashboard/   React dashboard — chat, agents, tasks, files, admin
 proxy/       Platform core (FastAPI) — sessions, security, scheduling,
              the agent sandbox, and the WebSocket hub the dashboard talks to
 mcps/        MCP tool servers: OtoDock's custom set (files, memory, tasks,
              meetings, notifications, …) + community mirrors
 audio/       Speech package — STT / TTS / voice activity, provider-agnostic
 phone/       Telephony daemon — live calls over Twilio or FreePBX/Asterisk
 satellite/   Remote-machine agent — pairs your own hardware to the platform
 scripts/     Install, compose, backup/restore, and maintainer tooling

Agents run as Claude Code / Codex processes inside per-session kernel
sandboxes, talk to their tools over MCP, and stream every step back to the
dashboard. PostgreSQL holds the platform state.

Community

Contributions are welcome: see CONTRIBUTING.md. Security
reports: SECURITY.md.

A note from the author

OtoDock started with Claude Code. I wanted to use it beyond the terminal
and connect it to my services. So I built the platform around that idea.
It has since become the place where my own agents work: large parts of
OtoDock were built, tested, and shipped by agents running on OtoDock.

It's fair source so you can run it the same way for your company, and you
can share your builds in the
discussions.

  • Dimitris Mourtzis

FAQ

Common questions

Discussion

Questions & comments · 0

Sign In Sign in to leave a comment.