Show HN: Open Bot – an open-source Grok Bot that works with any agent harness CopilotKit released Open Bot, an open-source agent platform that runs on a user's own machine and lets any AG-UI agent operate a real browser, files, and tools through a governance gateway that decides and records every action. The alpha release includes Docker Compose setup, PostgreSQL storage, and three configurable coworkers (General Assistant, Knowledge, Risk Analyst), with support for agents built on LangGraph, Mastra, CrewAI, Pydantic AI, Google ADK, or hand-written. Open Bot requires a CopilotKit Intelligence license and a model key, and is available at copilotkit.ai/openbot. AI coworkers you can hand real work to, and actually trust with the access. Each gets a computer of its own: a real browser with its own logins, its own files, and only the tools you grant. Every action decided before it happens and recorded after. copilotkit.ai/openbot https://copilotkit.ai/openbot · · quick-start Quick start · features Features · bring-your-own-agent Bring your own agent · architecture Architecture Docs demo-openbot.mp4 Bring any AG-UI agent, written on a framework or by hand, and it arrives as a coworker with a channel of its own. Watch it work on its own screen, take the wheel when it reaches something it should not do alone, then hand it back. It answers with components rather than only prose, and the whole thing runs on your own machine. Alpha, and under active development.OpenBot is early. Expect rough edges and bugs, and expect things to move. Issues and pull requests are welcome. Runs on your machine.Everything below is written for a laptop. Out of the box OpenBot runs with OPENBOT DEV NO AUTH , which skips signing in and admits every request as one administrator. Google sign-in can be wired up instead. An agent platform that runs inside your own infrastructure. Docker Compose brings up every part of it, the data sits in your PostgreSQL, and the model is yours to choose: no model ships in the box, and an administrator supplies the credential, which is encrypted at rest and never logged. Three coworkers ship in the example package, and they are configuration rather than code: General Assistant for everyday work, Knowledge for company questions, Risk Analyst for risk and compliance. Add your own by editing agents.yaml or from /agents in the UI. Anything a Bot does to a computer, a file, an MCP server or a component goes through one gateway that decides and records it. That is the difference between an agent that can use your tools and an agent you can let near them. More at copilotkit.ai/openbot https://copilotkit.ai/openbot . A Bot is any endpoint speaking AG-UI https://github.com/ag-ui-protocol/ag-ui , the open protocol for agent-to-user interaction, so OpenBot is not tied to a framework and neither are you. Agents built with LangGraph, Mastra, CrewAI, Pydantic AI, Google ADK or written by hand all arrive the same way, and the governance rides the protocol rather than the framework. - Docker, for PostgreSQL, browser computers, the supervisor, and the shipped Bots. Bun https://bun.sh 1.3+, for the app and API server.- A CopilotKit Intelligence project and license. - A model key. The proof-of-concept Bot uses OpenAI; the LangGraph Bot can use OpenAI, Anthropic, or Google. - Create .env : cp .env.example .env - Get CopilotKit Intelligence credentials: npx --yes copilotkit@latest login npx --yes copilotkit@latest project select npx --yes copilotkit@latest license --write Put the cpk-... runtime key from project select in .env as INTELLIGENCE API KEY . license --write writes COPILOTKIT LICENSE TOKEN into the existing .env . - Fill the remaining required values: OPENAI API KEY Keep the managed Intelligence URLs from .env.example unless you run Intelligence yourself. The example KEY ENCRYPTION KEY is public and fine locally; generate your own with: openssl rand -base64 32 - Install and run: bun install bash scripts/start.sh - Open http://localhost:3010 http://localhost:3010 . scripts/start.sh starts Docker services, applies migrations, starts the API server on port 3001, starts the app on port 3010, and checks that the services answer their own health routes before printing next steps. - Open /bot and ask: Open news.ycombinator.com and tell me the top story. - Ask the Bot to fill out https://httpbin.org/forms/post https://httpbin.org/forms/post , then inspect /admin/audit . - Open /admin/boundaries , add a deny rule or preset, and retry the same browser action. - Create a coworker from /agents , give it a standing role, and start a channel with it. | Route | Purpose | |---|---| / | Start and browse channels. | /agents | Create, edit, duplicate, hide, delete, and launch coworkers. | /channel/:id | Converse with one coworker and view its live screen/profile panel. | /bot | Direct chat with a Bot; ?agent=