risa-labs-inc/BossConsole
Open-source, multi-platform harness for AI agents - a native, multi-threaded operator's console (JVM, not Electron) to run Claude Code, Codex, Gemini or OpenCode with a real browser, terminal, editor, secrets & 100+ MCP tools. Built for enterprises, science & research.
BossConsole – an open‑source desktop console for AI agents
What it is – A cross‑platform desktop application (macOS, Windows, Linux) built with Kotlin Multiplatform + Compose that gives large‑language‑model agents a real workstation: an embedded browser, a shareable terminal, a code editor, git integration, secret management, and a plug‑in “Toolbox”. The app itself is also exposed to agents via a Model Context Protocol (MCP), so an agent can call ~100 tools (e.g. browser_navigate, git_status, docker_ps) and even manipulate the UI it is running in.
Why it matters – Most AI‑agent desktop tools (Claude Desktop, Cursor, etc.) are closed‑source, single‑vendor, and built on Electron’s single‑threaded JavaScript runtime. BossConsole is the first open‑source, JVM‑native, truly multi‑threaded harness that:
- Works with any LLM backend (Claude Code, Codex, Gemini, OpenCode, etc.) – you bring your own agent.
- Exposes a rich, governed toolset to the model, enabling autonomous, multi‑step workflows rather than simple chat.
- Lets the agent drive an embedded browser (Fluck), run terminal commands, edit files, and manage Docker/Kubernetes—all from within the same process.
- Provides per‑tool RBAC, a kill‑switch for every tool, and encrypted user‑scoped secrets, giving operators fine‑grained control over what the model can do.
- Supports hot‑reloading of plugins at runtime, so an agent can evolve its own capabilities without restarting the app.
Key components
| Component | What it does |
|---|---|
| MCP server | Loopback HTTP + SSE (127.0.0.1:7677) that advertises mcp__boss__* tools to any attached LLM client. |
| Toolbox (plugin store) | Built‑in marketplace for plugins (terminal, editor, Fluck browser, Docker, K8s, Jupyter, etc.). Plugins are signed, hot‑loadable, and can contribute new MCP tools. |
| BossTerm | Shareable terminal that can be accessed on a phone via QR code or an encrypted link; supports view‑only or full‑control modes. |
| Fluck browser | Lightweight embedded Chromium‑based browser that agents can script (browser_navigate, browser_run_js) and that auto‑fills credentials from the Secret Manager. |
| Governance layer | Server‑side RBAC stored in Supabase/Postgres, per‑tool toggles, kill‑switches, and signed‑plugin verification. |
| Tool Creator / Evolver | Wizard that scaffolds a new plugin (manifest, build files, skeleton UI) and lets an agent iteratively improve it, with hot‑reload and PR creation. |
How to get it
- Pre‑built installers – Homebrew Cask, MSI, DEB, RPM, or a JAR are available via the companion BossConsole‑Releases repo. The download URLs are served by a
latest‑releaseedge function that returns the newest version and SHA‑256 checksums. - Quick install (macOS example):
brew install --cask boss # or the universal script curl -fsSL https://raw.githubusercontent.com/risa-labs-inc/BossConsole-Releases/main/install.sh | bash - The app runs on the JVM, so it can also be launched from the provided JAR on any platform that has a compatible Java runtime.
Running an agent – Open a terminal tab, start your LLM CLI (e.g. claude, codex, gemini, opencode), and attach it to the MCP server with a one‑line command such as:
claude mcp add --scope user --transport sse boss http://127.0.0.1:7677
The agent instantly gains access to the full boss toolset and can begin automating the workspace.
Governance in practice
- Permissions are defined in PostgreSQL rows and enforced by the MCP server; plugins declare the permissions they need.
- Admin users bypass permission checks, but the per‑tool kill‑switch (a JSON list of disabled tools) still applies, providing a reliable safety valve on a single‑user desktop.
- Secrets are encrypted, scoped per user, and never sent to the model unless the
secret_gettool is explicitly called. - Plugins are signed (
pluginId|version|sha256); a tampered JAR fails to load.
Performance note – The bundled Fluck browser scored 47.9 on Speedometer 3.1 (roughly 30 % faster than Chrome in the same heavily loaded test environment), showing that the native JVM UI can compete with mainstream browsers.
TL;DR
- BossConsole = open‑source, multi‑platform desktop environment for AI agents.
- Bring any LLM (Claude, Codex, Gemini, OpenCode) and give it real tools (browser, terminal, git, Docker, K8s, secrets).
- Governed with RBAC, per‑tool kill‑switches, and signed plugins.
- Hot‑reloadable plugins let agents evolve their own capabilities at runtime.
- Install via Homebrew, MSI/DEB/RPM, or the provided JAR.
Related
- Project
- Project
- Project
- Project