Skip to content

Code Lab

OpenBot Explained: AI Coworkers, Approvals and the Self-Hosting Stack

By Miles Park·
GitHub project preview for CopilotKit/OpenBot

CODE LAB · PROJECT SPOTLIGHT

OpenBot TypeScript · MIT

A workspace for AI coworkers, connected tools and reviewable approval workflows.

Preview: GitHub · CopilotKit/OpenBot

An AI coworker needs more than a computer and a chat box. It needs to distinguish an action the person completed from an action whose outcome was never confirmed.

CopilotKit’s OpenBot is a workspace for AI coworkers, with agent connections, computers, tools and approval flows. The application template is MIT-licensed, while the CopilotKit Intelligence service has separate licensing requirements. The README distinguishes personal desktop experimentation, Kubernetes evaluation and production deployment; those are not interchangeable promises of an entirely unrestricted free stack.

OpenBot published architecture showing frontends, backend and agent connections
Project-supplied architecture diagram · CopilotKit/OpenBot · Credit: project authors and contributors. This is not our own test capture.

What does OpenBot change in practice?

A suitable first task is reading a small set of public pages and drafting a comparison without sending anything. Inspect the action history, ask the agent to wait before an external change, and observe how a human takeover is represented. A system that records uncertainty honestly is easier to recover than one that quietly retries a potentially completed action.

Inside the source: human completion and an unknown outcome differ

The shared outcome constants give different messages for a step handled by a person and one that started but has an unknown result. These strings are part of the application’s communication contract. They illustrate how the product directs recovery and avoids blind repetition, but the constants alone do not establish that every backend action is idempotent or every permission policy is correctly enforced.

CopilotKit/OpenBotTypeScript · source excerpt
shared/approval-outcomes.ts
export const HANDLED_BY_PERSON =  "The person did this themselves. Do not repeat it; continue from what they have done.";/** * An approved step that started, on a process that stopped before saving what happened. Repeating it * could do it twice, so it is not repeated, and the Bot is told to find out. */export const OUTCOME_UNKNOWN =  "This action was started but its outcome is unknown. It was not repeated. Check whether it happened before asking the person again.";
Lines 52–59 · commit bb1f12aView original on GitHub ↗

Source: shared/approval-outcomes.ts at bb1f12a. License: MIT. Original source text retained; line numbers and syntax colors added for this article.

Source attribution and license notices
MIT License

Copyright (c) 2026 CopilotKit

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

Getting started

The README links packaged desktop installers and source setup. It describes Docker for the backend and computer environment, Bun 1.4+ for source work, a model connection and an Intelligence project/license. Start with the personal evaluation path appropriate to your platform. A team deployment needs the published Helm guide and explicit authentication, storage, network and TLS configuration rather than copying a local single-user example onto a public server.

Limits and what to verify

Cloud model calls and connected apps still send data to those services even when the workspace itself runs locally. Intelligence licensing, provider usage and computer infrastructure can have separate terms or costs. Web and mobile availability should be checked against the current release rather than inferred from a list of platform icons. This article reviews published source and architecture; it does not report an enterprise deployment or hands-on approval test.

Where it fits

OpenBot belongs in the conversation about agent workspaces, alongside interface projects such as T3 Code and personal-agent products. Its most useful evaluation question is whether you can see who authorized an action, what actually ran and how an uncertain result is recovered.

Related Code Lab: T3 Code and coding-agent interfaces.

Official references: Repository · README at reviewed revision · Release history · Exact source excerpt.

Reviewed November 15, 2026. Discovery credit: 민둥이 | 쉽게 배우는 AI, video published November 14 covering a November 12 repository selection. This article independently examines the official source; that historical ranking is not presented as today’s ranking.

Join the discussion

Your email address will not be published. Required fields are marked *