OpenDots: The Agent Operating System That Gives AI a Computer, a Notebook, and a Boss

A self-hostable CopilotKit template for persistent AI coworkers, where conversations become documents, tools live behind permissions, and every agent can carry state across web, voice, and Slack.

10 min read • View on GitHub • More from CopilotKit

A small AI coworker sits inside a compact workstation with three distinct stations around it: a browser window, a stack of notebooks, and a communications panel with Slack and voice icons. A human boss stands just outside the workstation holding an approval stamp, showing control without constant micromanagement. The scene explains that OpenDots is an operating environment for durable agent work, not just a chat surface.
OpenDots turns an agent into something closer to a coworker with a desk, a notebook, and a review loop.
Key Takeaways

Most agent demos stop at clever tool use. OpenDots pushes past that line and asks a harder question: what would it take for an AI agent to feel operationally real?

The answer is not a better prompt template. It is a system with state, a computer, documents, and a boss who can approve or stop action without breaking the flow. That is why OpenDots stands out. It treats the agent as a durable worker, not a disposable conversation.

Why OpenDots Feels Like a Coworker, Not a Chatbot

The visible shift is persistence. A Dot can work in one channel, pause for review, and continue later in another place without losing the thread. The work does not evaporate when the chat window closes.

That matters because most agents are still trapped inside sessions. OpenDots instead binds conversation to a workspace, which makes the output feel less like a transcript and more like an evolving body of work.

The persistence loop is the point of the product: a conversation becomes state, state becomes work, and work becomes something the agent can return to later.

Every Dot is an always-on AI coworker with its own computer. Work with your Dots in Spaces and Pages, call them, or mention them in Slack. Host it yourself, bring any agent through AG-UI and use any OpenAI-compatible model.

Anmol Baranwal, Technical Writer @CopilotKit · Introducing OpenDots: the Open-Source Alternative to OpenAI Dots

The Trick: Conversations Turn Into Workspaces

OpenDots makes memory concrete. Instead of treating persistence as a mystical model feature, it maps work onto Spaces, Pages, Threads, and Tasks. That gives the agent a place to put things, revisit them, and continue later.

The important move is the page-to-chat linkage. A conversation can be formatted into Markdown, saved as a document, and then reopened as work rather than rediscovered as history. That is the difference between recall and infrastructure.

LayerWhat it doesWhy it matters
ChannelWeb, Slack, or voice entryThe agent can meet people where they already work
ThreadShared conversation identityContext survives beyond a single session
PageDurable document outputWork becomes editable and reusable
TaskScheduled continuationThe agent can wake up and resume
SpaceOrganizing containerSaved work has a home, not just a log

The Computer Is the Secret Sauce

This is the part many agent products hand-wave. OpenDots gives each Dot an actual computer environment through OpenBot, which means browser state, a filesystem, and a shell are all part of the agent’s working memory.

That changes what the model can do. A browser snapshot gives it situational awareness, the shell gives it leverage, and the persistent profile means it can return to a workspace instead of starting from scratch every time.

A close-up shows an agent holding a draft on the left, a review card floating in the center, and a saved document landing into a structured workspace on the right. Smaller browser and terminal elements sit in the background, showing that approval sits between tool use and durable storage. The image explains how transient action becomes persisted work.
The handoff from draft to review to saved page is where OpenDots turns action into memory.

OpenBot just crossed 3,500 GitHub stars! ... Bots can now answer from Google Drive and Notion, hand off to each other, run on a schedule, and route untagged messages on their own. You can take the wheel of a Bot's browser mid-task.

Safety Is Built Into the Loop

OpenDots does not assume autonomy. It gates it. The check-and-abort pattern means the server keeps asking whether execution is still allowed, so a pause in the UI can stop the agent before it keeps going.

That is paired with redaction, owner-token protection, and security headers. In other words, the system is designed so that a self-hosted agent is still your agent.

Control layerWhat OpenDots doesWhy it matters
Pause and abortChecks whether the user has revoked permissionThe agent can be stopped mid-run
Review cardsWaits for explicit approval before saving draftsHuman judgment stays in the loop
Secret redactionRemoves infrastructure tokens from outgoing responsesCredentials do not leak through tool output
Owner tokenRestricts access to the self-hosted instanceThe deployment stays private by default

Why This Is More Than Agent Framework Glue

Frameworks are good at orchestration logic. OpenDots is broader than that. It gives you the orchestration, the UI, the computer, and the channels in one self-hostable template.

That is why the comparison is not really between libraries. It is between levels of abstraction. Generic frameworks help you build an agent. OpenDots helps you build an environment where an agent can live.

ApproachPersistenceSelf-hostingChannelsComputer accessHuman control
Chat-first assistantsLimitedUsually noMostly web chatNoLight
Generic agent frameworksDepends on youYes, if you assemble itYou add themYou add itYou add it
Browser automation toolsSession-basedSometimesRarelyYesPartial
OpenDotsBuilt inYesWeb, Slack, voiceYesBuilt in

Who Should Build on This

OpenDots is for teams that want persistent AI coworkers without giving up infrastructure ownership. If you need data sovereignty, channel-native presence, and a work surface that survives beyond one prompt, the template is pointed at you.

It is also a strong fit for developers who are tired of stitching together a dozen agent pieces by hand. OpenDots does the annoying integration work so they can focus on the behavior they actually want to ship.