Release · T3 Code · Ping Labs

T3 Code v0.1.0

What's new in T3 Code v0.1.0, released Oct 15, 2026 (). Newer: v0.1.7 (Nov 4, 2026)

Release notes

T3 Code v0.1.0

T3 Code Orchestrator V2 is now stable

v0.1.0 is the first stable release of T3 Code Orchestrator V2, which has been in Nightly since early October. V2 rebuilds the part of T3 Code that runs your agents: how turns start, stop, queue, and resume; how subagents and background work are tracked; how threads move between providers; and how history is saved. Read "Before you update" if you use the mobile app or OpenCode.

The short version
  • Pi, Muse Code and OpenCode 2 support
  • delegate_task: an agent can start child agents on any provider or model and wait for their results. This is the way to use several harnesses together.
  • Fork any thread
  • Switch provider or model mid-thread, with caveats (see below)
  • The T3 Code MCP: agents can create, launch, message, wait on, read, search, and interrupt threads
  • ACP Registry: add any registry agent (Devin, Cline, Kimi, Droid, and more)
  • Cursor runs on the official Cursor SDK instead of the CLI
  • A real server-side queue: queued messages survive restarts, and you can steer or queue each message
  • Subagents you can follow: every child shows up with its model, status, and results
  • Interrupted threads continue after a restart
  • Auto-resume when usage limits reset
  • Scheduled tasks
Highlights

Agents that manage agents

  • delegate_task lets an agent hand work to a child agent on any provider and model, with its own options and role. Each child runs as its own thread, keeps its own provider-native history, and reports a result. The parent can wait for children or keep working, and it wakes up when they finish, with results batched together. This is the recommended way to combine harnesses, for example Claude planning and Codex implementing.

  • The T3 Code MCP gives agents tools to create, launch, message, wait on, read, search, and interrupt threads. They can also:

    • fork and merge back;
    • edit and reorder queues;
    • answer questions;
    • rename threads, regenerate titles, link pull requests, and settle threads;
    • manage scheduled tasks and projects;
    • hand work off to a worktree;
    • list and close previews.

    Agents can't approve their own permission requests.

  • Attach another thread as context: type @ and the thread's name, or drag a thread from the sidebar into the composer.

Fork any thread

  • Fork from any finished run, including failed, interrupted, and limited ones. Forks stay on the same provider by default and use the provider's native fork where it has one (Codex, Claude, Pi, OpenCode 2), so the full history comes along. When you're done, merge the fork's context back into its source.

Switching providers mid-thread

  • You can change provider, account, model, or options between turns, and queue a switch without stopping the current turn. Per-provider and per-model options are remembered.

[!WARNING] Switching providers is supported, but it isn't the recommended way to use multiple harnesses. The handoff is lossy. The new provider gets a budgeted selection of the conversation's messages, but not the previous provider's reasoning, its tool calls and results, or attachments. The agent can look up omitted messages, but the working state the first provider built up doesn't carry over. To get another harness's help, have the agent use delegate_task instead. Changing model or options within the same provider usually continues the provider's own session, so nothing is lost.

Subagents and background work you can see

  • Native subagents from Claude, Codex, OpenCode 2, Cursor, and Pi show as child threads in a lineage view, with their model, status, progress, results, and duration. Several subagents fold into one collapsible card, and the mobile app has an agents sheet.
  • When background work finishes, the agent wakes up and says which subagent, command, or monitor finished.
  • Stop works on background work too, including after the foreground turn has finished.
  • After a restart, T3 Code tells the agent which background work died, and threads that lost background work can continue.

More providers, and deeper support

  • Pi, including Pi 1.0: native resume, fork, rollback, and steering; skills, extensions, and extension dialogs; T3 Code tools inside Pi; and permission modes Pi enforces itself.

  • OpenCode 2 (2.0.18+):

    • native steering, forks, rollback, compaction, and plan mode;
    • child sessions as subagent threads;
    • T3 Code tools injected into the server;
    • recovery after restarts.

    T3 Code detects whether you run 1.x or 2.x. OpenCode 1.x keeps the support it had in V1, plus forking.

  • ACP Registry: search the official registry and install an agent on the server you choose, with shared sign-in across your devices.

  • Cursor on the official SDK: browser sign-in, model discovery, project skills and rules, images, plans, and resuming local agents.

  • Many fixes for Claude, Codex, Grok, and Antigravity. Questions, plans, and todos work again, along with compaction and resume. Subagent output stays in the right thread, and approvals route correctly.

A queue you can trust

  • The queue lives on the server and keeps its order across restarts. After a restart it waits for you to resume it. It also survives usage limits.
  • Edit, reorder, remove, and steer queued messages, including their attachments. This works on mobile too.
  • Choose whether a follow-up message steers the running turn or queues: Settings → General → Follow-up behavior. Cmd/Ctrl+Enter does the opposite of your default.

Limits and recovery

  • Threads stopped by a usage limit show as Limited. Resume manually, resume at reset, or snooze until reset.
  • With Settings → General → Continue threads after restarts on, interrupted threads continue after an update, crash, or reboot.
  • A live context meter, plus usage that stays correct through compaction and session changes.

Scheduled tasks

  • Create, edit, pause, resume, run, and delete automations on web and mobile, filtered by project and environment. Fixed schedules use the server's time zone.

Thread details and the sidebar

  • Workspace, Git, scripts, linked pull requests, automations, and lineage now live in a thread-details panel. Merge controls follow the current checks.
  • Sidebar status reflects what's actually running: working, waiting, limited, or failed. Settling is handled by the server and accounts for linked PRs, pins, and background work.
  • Working section (beta): busy threads stay out of the way until they need you.
  • Configurable worktree branch names, per project if you like.

Faster and lighter

  • Long conversations load in pages.
  • Streaming updates are batched, and the app re-renders less.
  • Memory use is lower, and mobile scrolls more smoothly.
Before you update
  • Your threads come with you, but it's a one-way copy. The first time V2 starts, it copies your existing database and imports your threads. The previous version keeps its own copy, and changes made in one version don't show up in the other. See "Moving from V1 to V2" in the pinned issue.
  • Update every app you connect with. A V2 server and a V1 app can't talk to each other. Whichever side is older refuses the connection and tells you which machine to update. Update every machine that runs a T3 Code server, including background services and remote machines you connect to, and every desktop app you use.
  • The mobile app must be updated too.

…