by horang-labs
Tessera — a web and desktop workspace for multi-agent coding workflows
# Add to your Claude Code skills
git clone https://github.com/horang-labs/tesseraGuides for using ai agents skills like tessera.
An open-source web and desktop workspace for AI coding agents.
Tessera is an open-source workspace that turns AI coding agents into a visual command center for parallel software work.
Open source | Claude Code + Codex + OpenCode | Full CLI workflows in UI | From idea to pull request | Desktop + browser
| Link | Purpose | |------|---------| | Download Latest Release | Get the Windows or macOS desktop beta | | npm package | Install the browser runtime | | [Product Hunt launch][product-hunt] | Support Tessera on Product Hunt | | [Team design partner waitlist][design-partner-waitlist] | Help shape team workspaces, permissions, and enterprise adoption | | GitHub Issues | Report bugs, rough edges, and feature ideas | | [Good first issues][good-first-issues] | Pick up starter-sized docs, QA, and polish work when available | | [Help wanted][help-wanted] | Find community-friendly areas where maintainer context is useful | | [Discussions][discussions] | Ask questions, propose workflows, and shape larger ideas | | [Contributing][contributing] | Set up the project and send focused pull requests |
Tessera is for developers who run coding agents every day. We welcome focused issues and pull requests from real usage: desktop QA on Windows, macOS, and Linux; Claude Code, Codex, and OpenCode provider edge cases; documentation fixes; UI polish; and workflow reliability improvements.
Start with [good first issues][good-first-issues] or [help wanted][help-wanted] when they are available. If your change is larger than a focused fix, open a [discussion][discussions] or issue first so we can align on the approach.
Thanks to @jakedev796, Tessera's first external contributor, for helping exercise real Windows and Electron workflows and landing practical fixes in v0.1.4.
| Use Tessera to | Instead of | |----------------|------------| | Run Claude Code, Codex, OpenCode, and their model options side by side in one workspace | Switching between separate CLIs for every agent or model | | Move from chat exploration to isolated worktree tasks | Restarting context when work becomes real | | Watch output, reasoning, tool calls, approvals, and workflow events | Treating agent work as a black box | | Review files, diffs, branches, and PR state from the same UI | Jumping between terminal, editor, and browser | | Use macOS, Windows, or browser-based npm installs | Being locked into one runtime shape |
Run Claude Code, Codex, and OpenCode agents in parallel while keeping each task, worktree file, and diff visible in a multi-panel workspace.

Move work across the board with drag-and-drop, create new work with AI-generated titles, and organize tasks by collection.

Track each task's worktree, branch, diff, PR state, and workflow status as agents continue working.

Open new panels, continue an existing conversation, tune reasoning, select models, choose permissions, use voice input (browser runtime only), add @ references, attach images, and send context-rich prompts from one composer.

Use the same multi-agent workspace in the browser, on macOS, or on Windows while running Claude Code, Codex, OpenCode, and their model choices side by side.

Browse locally discovered Claude Code skills by category, review plugin and skill counts, search available skills, favorite frequently used skills for quick access, and generate an analysis from the selected model.

Choose the runtime that fits your setup:
| Runtime | How to run |
|---------|------------|
| Windows desktop | Download the portable .exe from GitHub Releases |
| macOS desktop | Download the .dmg from GitHub Releases |
| Browser | Install the npm CLI and open the printed local URL |
macOS release DMGs are Developer ID signed and notarized. Windows portable .exe builds are not code-signed yet, so Windows SmartScreen may show an unknown-publisher warning. See Desktop Releases.
For the browser runtime:
npm install -g @horang-labs/tessera
tessera
Tessera prints the local browser URL after startup:
Tessera is running at:
http://127.0.0.1:32123
Press Ctrl+C to stop.
The default port is 32123. If that port is already in use, Tessera scans upward and prints the actual URL it selected.
To request a specific port:
tessera --port 3100
Tessera is designed for developers who run multiple AI coding sessions and need more structure than terminal tabs:
| Feature | Details |
|---------|---------|
| Parallel workspace | Run many chats and implementation tasks side by side without losing status, context, or ownership |
| Multi-panel UI | Split panels, tabbed workspaces, session movement, and long-running workspace layouts |
| Chat-to-task flow | Start with research or ideation, then continue the conversation into a managed git worktree |
| Observable session timeline | Agent output, reasoning, tool calls, permissions, plans, user prompts, files, diffs, branches, and PR state in one place |
| List and Kanban views | Use list view for high-volume exploration and Kanban view when implementation status matters |
| Git and PR workflow | Commit, push, create PRs, merge PRs, inspect diffs, and track branch/PR state from the Git panel |
| Context-rich composer | @ file references, chat/task references, pasted images, and local file attachments |
| Drag-and-drop workspace | Move sessions, arrange workspace structure, and attach context through drag-and-drop interactions |
| Provider-native controls | Permission prompts, plan approvals, runtime modes, reasoning controls, and provider access controls in the workspace |
| Model choice through OpenCode | Use the models and providers configured in OpenCode, including local or air-gapped LLM setups |
| Cross-environment support | macOS, Windows, and browser-based npm runtime |
| Unified session history | Session history, multi-agent conversation data, attachments, settings, worktree metadata, and workspace state in one place |
Also included: keyboard-first navigation, browser-native voice input through the Web Speech API in the browser runtime, and a Claude Code skills dashboard discovered from the local environment.
Tessera is built around a local runtime and provider-based CLI layer:
CliProvider contract for process lifecycle, protocol parsing, runtime controls, approvals, interrupts, and skills.stream-json, Codex app-server, and OpenCode ACP JSON-RPC events are translated into a shared realtime message model.On first run, Tessera opens a setup flow.
For provider login, use the provider's own CLI first, for example claude login, codex login, or OpenCode's configured provider credentials.
| Provider | Local command | Status | Notes |
|----------|---------------|--------|-------|
| Claude Code | claude | Supported | Uses streaming JSON mode, permission modes, plan approval, AskUserQuestion prompts, and installed skill discovery |
| Codex | codex | Supported | Uses app-server JSON-RPC events, approval requests, plan deltas, sandbox/access controls
No comments yet. Be the first to share your thoughts!