tlbx
Self-hosted terminal browser multiplexer that keeps your shells and coding agents running, reachable from any browser.
- Source repo
- tlbx-ai/tlbx
- Stars
- ★ 115
- Last updated
- today
- License
- AGPL-3.0
- Primary language
- C#
- FA score
- 52/100 · Major gaps
At a glance
- How it runs
- Works with
- Universal · cross-platformCodex · Claude Code
- Cost
- Free software; you pay for model usage
- Setup effort
- Low · running in minutes
- You'll need
- Typical use
- A developer leaves Claude Code and Codex sessions running on a workstation and checks on them from a phone browser while away.
- Not a fit if
- Teams that expect jobs to continue after the host shuts down
- Teams that need repos and credentials stored in a vendor cloud
- Solo users who want one agent and no multi-session setup
- Source review
- 52/100 · Major gaps
What does this agent do, and when should you use it?
tlbx (say "toolbox") is a self-hosted terminal browser multiplexer you install on a Windows, macOS or Linux machine, then open from a desktop, tablet or phone browser. It offers two session types: Terminal Sessions that keep ordinary shell output on the host, and Agent Controller Sessions that render supported coding agents as a conversation with tool calls, code changes, questions and approval buttons. The host runs mthost for terminals and mtagenthost for Agent Controller sessions; the stack combines .NET 10 Native AOT with TypeScript and xterm.js. Closing the browser does not stop work while the host stays awake and online, and files, Git changes, notes and previews belong to each session. Remote access is meant to go over a trusted LAN or a private VPN such as Tailscale with HTTPS and password authentication kept on; repositories, credentials and processes stay on your host, though agents may still send data to their model provider under their own configuration. tlbx is AGPL-3.0 with commercial licensing available, was formerly named MidTerm, and keeps executable names such as mt, mthost and mtagenthost compatible.
The installer deploys a tlbx service on the target host with password-protected HTTPS and updates, and browsers connect over HTTPS/WebSocket. From the sidebar you create Terminal Sessions (PowerShell, bash, zsh, running full-screen apps such as btop, vim, lazygit or database shells) or Agent Controller Sessions, then split them into panes, rename, reorder and bookmark them. Terminal output is retained on the host. Agent Controller drives Claude Code through the official Claude Agent SDK and OpenCode through its native HTTP/SSE server, and additional ACP-compatible agents can be registered in acp-agents.json. On the input side, Ctrl+V / Cmd+V uploads a screenshot and returns its file path to the terminal or attaches it in Agent Controller, while multiline input, saved drafts, file attachments and scheduled follow-ups cover longer prompts; Alt+H opens History to resend commands, prompts, images or files. Agents can use the mt helpers to send prompts, read terminal output and inspect or control the app preview. The same workspace provides a file browser, a Git view and a docked Dev Browser preview, and multiple hosts can be opened in separate tabs or joined through tlbx's Hub.
- A developer leaves Claude Code and Codex sessions running on a workstation and checks on them from a phone browser while away.
- A team installs tlbx on an office workstation or server and reaches it over a private VPN such as Tailscale from each member's own device.
- Someone juggling tests, a dev server and several coding agents splits panes to compare output and Git diffs side by side.
- A user needs to run full-screen TUI tools like btop, vim or lazygit and watch them remotely from a browser.
- A developer wants agents to read terminal output, take screenshots and validate the app preview using the mt helpers.
- An existing MidTerm user upgrades in place and keeps using the same mt, mthost and mtagenthost commands.
How do you install or deploy this agent?
Run one command on the machine where your tools should run; the installer sets up tlbx with password-protected HTTPS and updates.
macOS / Linux:
curl -fsSL https://get.tlbx.ai/install.sh | bashWindows PowerShell:
irm https://get.tlbx.ai/install.ps1 | iexChoose service mode to start tlbx automatically after login or reboot, or user mode when no administrator access is available. These commands install the current stable release; add --dev on macOS/Linux or -Dev on Windows only when you explicitly want the prerelease channel. Open the address printed by the installer.
For a temporary local trial, the npm launcher downloads the stable native binary and opens a browser (it may lag behind native releases):
npx @tlbx-ai/midtermBuilding from source:
git clone https://github.com/tlbx-ai/tlbx.git tlbx
cd tlbx
dotnet build src/Ai.Tlbx.MidTerm/Ai.Tlbx.MidTerm.csprojUninstallers: https://get.tlbx.ai/uninstall.sh for macOS/Linux and https://get.tlbx.ai/uninstall.ps1 for Windows.
How do you use this agent?
- Open the address printed by the installer and log in with the password set during setup.
- Launch a session: Terminal Session for shells, command-line agents, editors, tests and servers, or Agent Controller Session for supported coding agents.
- For remote access, keep the host and client on a trusted LAN or a private VPN such as Tailscale, keep HTTPS and password authentication enabled, and restrict network access to the people and devices that need it. Cloudflare Tunnel, nginx/Caddy and plain LAN setups also work.
- Register additional ACP-compatible agents in acp-agents.json if you need them.
- Day to day: Ctrl+V / Cmd+V uploads a screenshot, Alt+H opens History to resend earlier input, and sessions can be split into panes, renamed, reordered and bookmarked.
- Closing the browser keeps sessions running, but the host must stay awake and online; shutting down the host stops its processes.
What are this agent's strengths and limitations?
- Sessions live on the host, so closing a browser or switching devices still lets you reconnect to the same terminals and agents from any browser while the host is online.
- Plain terminal sessions and structured Agent Controller conversations share one workspace with files, Git changes and a docked app preview.
- Broad agent coverage: built-in launch options for Codex, Claude Code, Grok Build, OpenCode, Google Antigravity, Gemini CLI and GitHub Copilot CLI, plus ACP agents via acp-agents.json.
- Clear self-hosted boundary: repositories, credentials and processes stay on your own machine, reachable over a LAN or a private VPN such as Tailscale.
- Auditable release integrity: each native archive ships a platform-specific SPDX SBOM plus GitHub build-provenance and SBOM attestations, and installers verify a signed manifest and packaged-file hashes.
- Short setup path: one curl or PowerShell command yields a password-protected HTTPS service with updates, and npx offers a quick local trial.
- The host must stay awake and online; shutting it down ends its processes, and there is no cross-host job continuation.
- The software is free but agents bill through their own providers, and Agent Controller features depend on the specific agent and configured provider.
- The OpenCode integration requires CLI 1.14.19 or newer, and the npm launcher may lag behind native releases.
- Exposing it remotely is your responsibility: it relies on a LAN or private VPN, HTTPS and password authentication, and misconfiguration widens the attack surface.
- AGPL-3.0 means closed-source commercial distribution needs a separate commercial licence.
How does this agent compare with similar options?
The repository names no direct competitor; the README mentions Cloudflare Tunnel, nginx/Caddy and Tailscale only as network access options, and describes midterm-gtk as an independent community GTK4 desktop client rather than an alternative product.
Key facts side by side with the most closely related agents.
| Agent | Source review | Form / cost | Stars | Updated | Language | Full support on |
|---|---|---|---|---|---|---|
| tlbx This agent | 52 · Major gaps | Self-hosted serviceFree + model costs | ★ 115 | today | C# | Codex · Claude Code |
| Rovai AI | 49 · Major gaps | — | ★ 209 | today | Rust | Codex · Claude Code |
| Cezar — AI Coding Agent Orchestrator | 63 · Some gaps | CLIFree | ★ 821 | today | TypeScript | Codex · Claude Code |
| Multica — Multi-Agent Task Collaboration Platform | 52 · Major gaps | Web appFreemium | ★ 54k | today | Go | ChatGPT · Codex · Claude Code |
How does FollowAgents rate this agent?
Why each dimension lost points
CommunicationSecurity.md documents HTTPS+auth enforcement, lockout on missing password, PBKDF2-HMAC-SHA256 with 600k iterations, failed-attempt lockouts, same-origin checks, Hub certificate pinning and no redirect following, plus a narrow unauthenticated API allowlist — solid least-privilege and sensitive-data evidence (2). However installers use curl|bash / irm|iex remote execution and multi-instance docs default to binding 0.0.0.0, so external effects and user confirmation are only partially covered (1-2 each). Dependency security is asserted via SBOM/attestations and an audit-supply-chain.ps1 reference but no concrete dependency inventory or vulnerability handling is shown, deducted to 1. Rollback only covers remove/--force deletion, with no version rollback or data recovery path, deducted to 1. Source attribution is supported by AGPL license, community-client disclaimer and disclosure channel (2).
Docs are internally consistent on ports, paths, service names and TLBX_*/MIDTERM_* aliases (2). Dependency availability relies on GitHub release asset names and an npm launcher that is explicitly noted to lag, with no lockfile or offline verification detail, deducted to 1. Failure messages are limited to a multi-instance troubleshooting list of common causes, with no runtime error codes or log formats, deducted to 1.
README clearly separates Terminal Session and Agent Controller Session, lists supported coding agents and ACP extension, making audience and scenarios explicit (2); capability boundaries note sessions stop when the host sleeps and agent data goes to model providers (2). Trigger precision is weak: agent trigger conditions, input contracts and refusal conditions are not formalized, deducted to 1. Environment fit covers Windows/macOS/Linux with an architecture matrix (2).
README has clear structure with install, architecture, security, uninstall and multi-instance guide (2); install notes are thorough (2); naming stability is addressed via the MidTerm→tlbx compatibility note (2); examples are sparse and there is no FAQ, deducted to 1; known limitations are scattered (host must stay awake, npm lag, no 32-bit) rather than consolidated, deducted to 1; LICENSE is the full AGPL-3.0 text (3); versioning is only a badge and a --dev channel with no CHANGELOG file, deducted to 1; maintenance responsibility is unclear because the publisher is unverified and only SECURITY/SUPPORT are referenced, deducted to 1.
Output usability is shown through in-browser terminals, persistent sessions and an agent conversation view (2); marginal value over a plain terminal multiplexer comes from cross-device access and the agent controller (2); cost-benefit is only partly argued given self-hosting, host uptime, AGPL obligations and provider fees, deducted to 1.
Security and release-integrity claims trace to specific documents (CommunicationSecurity.md, RELEASE-INTEGRITY.md references) but are mostly self-asserted without independently checkable evidence (1); cross-source corroboration is limited to a community client and workflow files (1); separation of fact from inference is moderate, with some security promises lacking stated verification methods (1).
- Installers execute remote scripts via curl|bash or irm|iex; download and review before running.
- Multi-instance installs default to binding 0.0.0.0, exposing all interfaces; prefer 127.0.0.1 with firewall/VPN.
- Publisher identity is unverified; update path and maintenance responsibility need independent confirmation.
- Dependency security rests on SBOM/attestation claims without a concrete dependency inventory or vulnerability handling record.
- No version rollback or data recovery flow; --force removal deletes binaries and settings directories.