OpenBot: A local desktop workspace for Codex, Claude, and Grok CLI collaboration
A local desktop workspace for developers that puts Codex, Claude, and Grok CLI into shared queues and file-based collaboration.
GitHub nightly-labs/openbot Updated 2026-10-27 Branch main Stars 1.5K Forks 185
TypeScript Local-first AI workspace Codex, Claude Code, Grok CLI macOS 13+, Windows 10+, Linux AppImage

🧭 Decision Guide

Try it if you

  • You need to manage multiple local CLI agents on macOS 13+, Windows 10+, or Linux AppImage.
    The README's Install section lists support for macOS 13+, Windows 10+ x64, and x64/arm64 Linux AppImage.
  • Your workflow uses Codex, Claude Code, Grok CLI, or ACP providers together.
    The README introduction states support for Codex App Server, Claude Code, Grok CLI, and ACP integrations for OpenCode, Gemini, Cursor CLI, and Cline CLI.
  • You need separate workspaces, file transfers, local queues, and agent-to-agent messaging.
    The README's OpenBot description explicitly lists per-agent workspaces and conversations, local queues, file transfers, and agent-to-agent messaging.
  • You want to reuse and distribute agent skills and can accept the Local skills versioning model.
    The README's Local skills section documents the shared local library and list_local_skills, read_local_skill, revise_skill, and install_local_skill.

Skip it if you

  • Your environment cannot accept agents reading and modifying files, running commands, or using the network with approvalPolicy set to never.
    The README WARNING explicitly says agents use danger-full-access and approvalPolicy: never.
  • You require per-action approval or need OpenBot to act as a security boundary.
    The README Security section says full local access is a current product decision, not a security boundary.
  • You need a mature, stable desktop agent platform rather than a development preview.
    The README WARNING directly labels OpenBot a development preview.
  • Your goal is for team members to share or view Cursor or Cline agents.
    The README Agent setup section says Cursor agents and Cline agents stay on this computer and are not visible to team members.

Requirements

  • macOS 13 or newer, Windows 10 or newer, or an x64/arm64 Linux AppImage;macOS 13 或更新版本、Windows 10 或更新版本,或 x64/arm64 Linux AppImage。
  • Installed releases do not require Bun or Node.js;发布版不要求 Bun 或 Node.js。
  • Windows requires codex, claude, or grok in PowerShell, and Claude Code also requires Git for Windows;Windows 需要在 PowerShell 中提供 codex、claude 或 grok,Claude Code 还需要 Git for Windows。
  • Gemini requires Google AI Pro or Ultra, while Cursor requires a Cursor plan or API key;Gemini 需要 Google AI Pro 或 Ultra,Cursor 需要 Cursor plan 或 API key。
  • macOS Computer Use requires Screen Recording and Accessibility permissions;macOS 的 Computer Use 需要 Screen Recording 和 Accessibility 权限。

First step (verbatim from README)

curl -fsSL https://chatgpt.com/codex/install.sh | sh

Watch out

  • OpenBot prefers managed CLIs, while OPENBOT_*_PATH overrides the default selection.
    The README Agent setup section says managed CLIs are preferred and explicit OPENBOT_*_PATH overrides take precedence.
  • OpenCode Go supports only opencode-go/ models; Zen models do not appear in the picker.
    The README OpenCode section says OpenBot supports OpenCode Go only and keeps Zen models out of the picker.
  • A self-installed Cline must be version 3.0.68 or newer to be recognized.
    The README Cline setup requires a self-installed cline version of 3.0.68 or newer.
  • Grok's XAI_API_KEY and per-session MCP bearer tokens are not persisted or logged.
    The README Agent setup section explicitly states that these credentials are never persisted or logged.
  • Importing from Grok Bot does not copy chat history; it keeps the exported agent's memories.
    The README Import agents from Grok Bot section says chat history is not copied.

Not stated in the README

  • The README does not provide the specific terms of the Other license;README 未给出 Other 许可证的具体条款。
  • The README does not provide provider pricing, rate limits, or a complete model compatibility matrix;README 未提供各 Provider 的费用、速率限制或完整模型兼容矩阵。
  • The README does not specify CPU, memory, disk, or network requirements;README 未给出 CPU、内存、磁盘和网络带宽要求。
  • The README does not explain the scope of changes across 5 releases and the 10 recent commits;README 未说明 5 个版本与 10 个最近提交对应的变更范围。
  • The supplied material omits the full Docker, Nix, Architecture, and Local data and network boundaries sections;提供的材料省略了 Docker、Nix、Architecture 和 Local data and network boundaries 章节的完整内容。

💡 Deep Analysis

6
No I handle private code on macOS 13+ with production credentials near the project directory; I only want Codex or Claude Code to edit local files, not access the network or embedded browser. Is OpenBot suitable as a security boundary?
For: A security-sensitive macOS developer who handles private code and production credentials but wants to run Codex or Claude Code in a local project directory

No, not as a security boundary, because the current preview explicitly grants agents broad local access and cannot satisfy a “modify only these files” requirement.

  • The README warns that agents run with danger-full-access and approvalPolicy: never; after first-launch consent they can read and modify files, execute commands, use the network, and control the embedded browser.
  • The Security section states that full local access is an explicit product decision, not a security boundary. That conflicts directly with isolating production credentials.
  • The README tells users to run only trusted agents and tasks, keep backups, and read Security, indicating that per-action approval is not the control mechanism.
  • Local-first means that much of the data and execution remain on the device; it does not mean the agent is restricted to the selected project directory.

OpenBot may work as a local development workspace, but it is not suitable for unisolated production credentials or strong sandboxing.

  • README: agents currently run with `danger-full-access` and `approvalPolicy: never`
  • README: they can read and modify files, run commands, use the network, and control the embedded browser
  • Security: full local access is an explicit current product decision, not a security boundary
  • README: run only agents and tasks you trust, keep backups
Not stated in the README:The README does not say whether network, browser, or command execution can be disabled per agent.;The README does not say whether OpenBot supports OS-level sandboxing, container isolation, or fine-grained directory ACLs.
Yes I use Codex, Claude Code, and Grok CLI on macOS 13+, and I want isolated workspaces plus queued development tasks; is OpenBot suitable for replacing my scattered CLI workflow?
For: A macOS 13+ developer who maintains Codex, Claude Code, and Grok CLI and wants centralized queues and isolated workspaces in one desktop app

Yes, because OpenBot is designed to give multiple local agents persistent workspaces and queues, although it does not provide a new model runtime.

  • The README explicitly supports the local Codex App Server, Claude Code, and Grok CLI, with a separate workspace and conversation for every agent.
  • It provides local queues, file transfers, an embedded browser, and agent-to-agent messaging for organizing continuing tasks.
  • macOS 13 or newer is supported on both Apple silicon and Intel, and OpenBot can download managed runtimes or reuse system CLIs.
  • Existing local CLI logins are used, but provider credentials are not copied by OpenBot; subscriptions, quotas, and authentication rules remain provider-specific.

The main qualification is the development-preview security model: agents currently run with danger-full-access and approvalPolicy: never, allowing file access, command execution, and network access.

  • README: supports macOS 13 or newer on Apple silicon or Intel
  • README: supports Codex App Server, Claude Code, and Grok CLI
  • README: gives every agent its own workspace and conversation, and provides local queues
  • README: agents currently run with `danger-full-access` and `approvalPolicy: never`
curl -fsSL https://chatgpt.com/codex/install.sh | sh
Not stated in the README:The README does not specify CPU, memory, or concurrency limits when several agents run simultaneously.;The README does not specify queue priority, failure retry, or cross-device synchronization behavior.
Yes I have a Google AI Pro plan, use x64 Linux, and want Gemini in a local OpenBot workspace; can I deploy it if I cannot rely on an `antigravity` command on PATH?
For: A Linux developer with a Google AI Pro or Ultra plan who wants Gemini in a local workspace and needs to deploy a custom Antigravity ACP server path

Yes, provided that you supply the Antigravity server in the directory layout documented by the README and complete Google sign-in in a browser on the host.

  • The README requires a Google AI Pro or Ultra plan for Gemini, and OpenBot downloads Google’s Antigravity ACP server when Download is selected.
  • OpenBot never uses an antigravity command from PATH. You can set OPENBOT_ANTIGRAVITY_PATH, but the target must contain a bin/ folder, an antigravity-package.json with a version in the parent folder, and localharness_external beside the server.
  • AppImages are supported on x64 and arm64 Linux, while remote settings cannot perform Google sign-in; authentication must use a browser on the host.
  • This supports local orchestration, but Gemini still depends on provider networking and account access rather than being fully offline.

A browserless, purely remote Linux host is therefore the main constraint.

  • README: Gemini uses a Google AI Pro or Ultra plan
  • README: Set `OPENBOT_ANTIGRAVITY_PATH` to select a server executable yourself
  • README: Put it in a `bin/` folder ... `antigravity-package.json` ... Keep `localharness_external` beside the server
  • README: Remote settings cannot perform Google sign-in; use a browser on the host
Not stated in the README:The README does not specify the exact distribution-level dependencies of the Antigravity ACP server.;The README does not specify whether Gemini authentication remains usable after a remote desktop session disconnects.
It depends I use Claude Code on Windows 10 x64 with Git for Windows and also want Cursor CLI and Cline CLI; can OpenBot unify them without treating them as one runtime?
For: A Windows 10 x64 developer using Claude Code with Git for Windows and wanting to add different providers through Cursor CLI and Cline CLI

It depends: the integration layer is suitable, but Windows CLI requirements, accounts, and local visibility must be handled separately.

  • The README supports Windows 10 or newer on x64 and requires codex, claude, or grok to be available in PowerShell; Claude Code additionally requires Git for Windows.
  • Cursor starts through cursor-agent acp, while Cline starts through cline --acp. Both can be downloaded and pinned, or selected with OPENBOT_CURSOR_PATH and OPENBOT_CLINE_PATH.
  • Cursor and Cline agents remain on the local computer, so other team members do not see them. A unified UI does not imply shared remote sessions.
  • Provider plans, API keys, and accounts remain separate; OpenBot does not merge authentication across providers.

It fits a unified local entry point and workspace, but not a requirement that every agent be remotely visible and shared with the team.

  • README: Windows 10 or newer on x64 systems
  • README: Claude Code also requires Git for Windows
  • README: Cursor starts with `cursor-agent acp`; Cline starts with `cline --acp`
  • README: Cursor and Cline agents stay on this computer: team members do not see them
Not stated in the README:The README does not specify resource usage or stability when multiple ACP agents run simultaneously on Windows.;The README does not specify whether Cursor or Cline local sessions can be exported or migrated to another Windows device.
It depends I maintain agent names, instructions, avatars, skills, routines, memories, and some workspace files in Grok Bot. If I migrate them to OpenBot and continue with Codex or Claude Code, is the migration complete enough?
For: A developer who wants to migrate Grok Bot agent configurations, skills, memories, and some workspace files into OpenBot while continuing to use local Codex or Claude Code

It depends: configuration and selected workspace assets can be migrated, but this should not be treated as complete conversation restoration because the full chat history is not copied.

  • The project insights state that OpenBot can import a Grok Bot agent’s name, instructions, avatar, skills, routines, memories, and some workspace files.
  • This is useful for bringing agent definitions and reusable workflows into a persistent local workspace, then continuing with local skills, isolated sessions, and file sharing.
  • However, the project insights explicitly state that complete chat history is not copied, so implicit context, historical decisions, and constraints that were never written to files may be lost.
  • The target provider CLI still determines execution behavior; a unified OpenBot interface does not make Grok Bot, Codex, and Claude Code behavior equivalent.

It fits asset migration, but not a promise of lossless continuation of the original conversation.

  • Project insights: supports importing name, instructions, avatar, skills, routines, memories, and some workspace files from Grok Bot
  • Project insights: complete chat history is not copied during import
  • README summary: Local skills and Import agents from Grok Bot
  • Project insights: model capability, context, tool permissions, and failure behavior are determined by each provider CLI
Not stated in the README:The README does not specify the exact import file format, size limits, or conflict-resolution rules for Grok Bot.;The README does not specify whether imported skills and memories are automatically assigned to an agent or require manual confirmation.
It depends I plan to run OpenCode and Gemini on a headless Linux server, share files through local skills, and use browser automation. Can OpenBot provide a complete headless workflow?
For: An advanced individual user running OpenCode, Gemini, and local skills on a headless Linux server who wants browser automation and file sharing

It depends: agent workspaces and server-oriented usage have supporting features, but browser control, Google authentication, and desktop permissions may prevent a fully headless workflow.

  • The project insights identify headless Linux servers, remote desktops, and server connections as supported usage extensions; the README also supports x64 and arm64 Linux AppImages.
  • OpenBot provides isolated workspaces, file transfers, local skills, and an embedded browser, covering the basic file and workflow orchestration needs.
  • Gemini remote settings cannot perform Google sign-in; authentication must happen in a browser on the host. A purely headless server therefore lacks a documented first-login path.
  • Computer Use supports Linux, but the README only explicitly documents Screen Recording and Accessibility permissions for macOS and does not promise full desktop control on a screenless host.

Command-line agent tasks are a better fit than assuming unattended browser login, Computer Use, and Gemini operations will all work headlessly.

  • Project insights: supports headless Linux servers, remote desktops, and server connections
  • README: x64 or arm64 Linux as an AppImage
  • README: provides local queues, file transfers, and an embedded browser
  • README: remote settings cannot perform Google sign-in; use a browser on the host
  • README: Computer Use ... only macOS asks for Screen Recording and Accessibility
Not stated in the README:The README does not say whether the embedded browser and Computer Use require a virtual display on headless Linux.;The README does not say whether remote server connections fully synchronize agent sessions, skills, and files in both directions.

✨ Highlights

  • Supports Codex, Claude Code, Grok CLI, and ACP
  • Each agent gets an isolated workspace and conversation
  • Combines local queues, file transfers, and an embedded browser
  • Development preview with agents running full access by default

🔧 Engineering

  • Manage Codex, Claude, and Grok CLI agents in one desktop app
  • Connect OpenCode, Gemini, Cursor CLI, and Cline CLI through ACP
  • Coordinate agents with local queues, file transfers, and agent-to-agent messaging

⚠️ Risks

  • Agents use danger-full-access and can read files, modify them, and run commands
  • approvalPolicy is never, so there are no per-action confirmations after initial consent
  • OpenBot remains a development preview with limited stability information
  • Gemini requires a Google AI Pro or Ultra plan

👥 For who?

  • Developers who need to run Codex, Claude Code, and Grok CLI locally in parallel
  • Small teams that want agents to share skills, files, and task queues
  • Desktop users on macOS 13+, Windows 10+, or Linux AppImage