An independent fork of T3 Code that adds planning across repositories while keeping native T3 Threads for agent conversations.
Download the latest Workbench preview · Workbench user guide · Screenshot walkthrough
- Plan work: group repositories into Workspaces, organize Tickets into Epics, and track progress.
- Start implementation: create native Threads with Ticket context and Git worktrees for the selected repositories.
- Connect Jira: mirror your assigned sprint issues, edit descriptions, and update Jira statuses from Workbench.
Follow a Ticket through prepared worktrees and a native Thread, then review pull requests and attention items. The walkthrough uses screenshots from a fictional demo.
Workbench is available in the web and desktop clients. Jira is optional; local Tickets work without a connection. The desktop previews include the hosted Jira connection: choose Connect Jira in a Workspace and authorize access on Atlassian's website.
The desktop app installs as T3 Code Workbench, alongside official T3 Code, with separate saved data in ~/.t3-workbench. For downloads and update limitations, read the selected release's notes. To develop the fork, see Run locally.
Jira setup for local development
Jira is optional. A fresh clone runs without Jira credentials or 1Password. To test Workbench's Jira integration, configure an Atlassian OAuth app for your development environment:
-
Create or select an OAuth 2.0 integration in the Atlassian developer console.
-
Add the Jira API permissions requested by JIRA_OAUTH_SCOPES:
read:project:jira,read:jira-work,write:jira-work,read:board-scope:jira-software,read:board-scope.admin:jira-software,read:sprint:jira-software,read:issue-details:jira, andread:jql:jira. The authorization request also includesoffline_accessto refresh the connection. -
Under Authorization → OAuth 2.0 (3LO), register the callback for your running client:
Client Callback URL Web Browser origin plus /workbench, for examplehttp://localhost:5733/workbenchDesktop Server origin plus /oauth/workbench/jira/callback, for examplehttp://127.0.0.1:13773/oauth/workbench/jira/callbackUse the actual origin and port printed by your dev runner. Worktree ports can differ. Atlassian requires an exact callback match; update it when switching origins or ports. See Atlassian's OAuth setup guide.
-
Copy the app's client ID and secret from Settings into an ignored
.env.localat the repository root:T3_WORKBENCH_JIRA_CLIENT_ID="your-client-id" T3_WORKBENCH_JIRA_CLIENT_SECRET="your-client-secret"
You can export these variables instead. Keep the secret on the server; never use a
VITE_orEXPO_PUBLIC_prefix. -
Restart
pnpm devorpnpm dev:desktop. Open a Workbench Workspace and select Connect Jira. Authorize access, then choose the site, board, sprints, status mappings, and repository scope.
Install and authorize the 1Password CLI.
Create an item named t3code-workbench-dev-jira-credentials with fields named
T3_WORKBENCH_JIRA_CLIENT_ID and T3_WORKBENCH_JIRA_CLIENT_SECRET.
Export its vault ID once in your shell configuration, then open a new terminal:
export T3_WORKBENCH_JIRA_VAULT="your-vault-id"
# Optional, if you used a different item name:
export T3_WORKBENCH_JIRA_ITEM="your-item-name"Run pnpm dev, pnpm dev:server, or pnpm dev:desktop normally.
The first run creates .env.local from the two references in .env.example; no per-worktree configuration copy is required.
The runner detects the vault's account. You can override it with OP_ACCOUNT without changing the CLI's global default.
1Password may ask you to authorize access. The callback URL still needs to match the current client's origin and port.
Existing .env.local files are never overwritten. If one already exists, add any missing credentials there.
Explicit environment values take precedence. Without the vault setting, no 1Password commands run.
Failed injection prints a setup warning and lets development continue. Frontend-only runs, help, and dry runs skip injection.
The introduction and package installation commands below describe upstream T3 Code. Use the Workbench download link above to install this fork.
T3 Code is an "agent harness control surface". It enables control of the agents on your machine with a best-in-class mobile app (iOS, Android), web app and Electron-based desktop app.
Works with your subscriptions on Claude Code, Codex, Cursor, Grok Build, OpenCode, and Google Antigravity. If they're set up on your computer, T3 Code can control them.
Nothing. We built T3 Code because we wanted the best possible development experience with agents. We were inspired by existing solutions like the Codex desktop app, Conductor, Claude Desktop and Cursor Glass, but none met our bar.
We wanted something performant, remote-ready, and truly open. If we ever go the wrong direction, we want you to have everything you need to fork and build the editor that you want.
Warning
T3 Code currently supports Codex, Claude, Cursor, Grok Build, OpenCode, and Antigravity. Install and authenticate at least one provider before use:
- Codex: install Codex CLI and run
codex login - Claude: install Claude Code and run
claude auth login - Cursor: install Cursor CLI and run
agent login - Grok Build: install Grok Build CLI and run
grok login - OpenCode: install OpenCode and run
opencode auth login - Antigravity: enable it in Settings, then use Install Antigravity and Sign in with Google. No CLI is required.
curl -fsSL https://t3.codes/install.sh | shOn Windows, in PowerShell:
irm https://t3.codes/install.ps1 | iexThen run t3 to start the server and open the local web app. t3 service install keeps it running in the background, t3 update moves to a newer release, and t3 --help has the full reference.
To try it once without installing, run npx t3@latest instead.
Install the latest version of the desktop app from GitHub Releases, or from your favorite package registry:
winget install T3Tools.T3Codebrew install --cask t3-codeDownload the .deb from GitHub Releases, then:
sudo apt install ./T3-Code-*.debStable:
yay -S t3code-binNightly:
yay -S t3code-nightly-binThe AUR packaging is maintained in this repository under packaging/aur.
We are very very early in this project. Expect bugs.
We are (mostly) not accepting contributions yet. Small fixes may be considered. Big features will not be.
Full docs live in docs/. There's no docs site yet.
- Install and first run
- Permission modes
- Keyboard shortcuts
- Project settings
- Appearance preferences
- Remote access from a phone or another machine
- Connect Claude Code, Codex, ChatGPT and other agents over MCP
- Keeping app and server in sync
- Source control integrations
- Multiple accounts: Codex · Claude
- Run T3 Code as a background service
Building from source? Start at docs/internals/overview.md.
T3 Code uses Vite+ so you'll need to install the global vp command-line tool.
curl -fsSL https://vite.plus | bashirm https://vite.plus/ps1 | iexCheckout their getting started guide for more information: https://viteplus.dev/guide/
vp iUse Node 24 and run pnpm dev for server and web, or pnpm dev:desktop for Electron.
For web, open the one-time pairing URL printed by the runner.
See the development guide for state directories, ports, and remote access.
Read CONTRIBUTING.md before reporting a bug or opening a PR.
Have a feature request? Start an Ideas discussion.
Need support? Join the Discord.
