Skip to content

Threadlines v0.3.4

Choose a tag to compare

@github-actions github-actions released this 21 Aug 22:15
a1b3639

Highlights

This release makes agent activity less noisy, recovers threads when their checkout folder is deleted, improves right-panel and sidebar behavior, and adds a cross-machine usage dashboard.

  • Subagent work moves out of the chat and into the Agents panel — Subagent streaming no longer floods the inline chat. Running agents appear in the right-side Agents rail with live status and per-agent file-change counts, promoted background runs show as agents, and agent rows persist across reconnects so transcripts and stop controls stay available.
  • Prevent leaked subagent output and settle orphaned agent rows — Subagent output no longer leaks into the main chat and rows that outlive their provider process are settled as interrupted when a session restarts, so long-running or crashed providers no longer leave forever-running rows.
  • Recover deleted checkouts and avoid broken threads — If a thread's checkout folder is removed, Threadlines detects the missing worktree before starting work, records the issue, and offers to move the thread to the project root or recreate the worktree; drafts no longer inherit missing paths and the UI shows recovery actions when relevant.
  • Cross-machine usage and clearer charts — Usage now aggregates provider transcripts from every connected machine into one price-equivalent dashboard, with a daily chart that aligns hover tracking to days and supports touch scrubbing, plus a sidebar meter for today's total.

Also improved

  • Drag to reorder right-panel tabs and preserve per-thread panel state, so the right rail reflects the order you set and remembers which tab was open per thread.
  • Pinned threads now keep their place in the live list and are not auto-filed under Done, so items you pin stay immediately reachable.
  • Safer desktop startup and backend checks: the app refuses duplicate instances and re-verifies backend ports on restart to avoid attaching to unrelated or stale servers.
  • Warn before quitting when sessions are active, so accidental quits are prevented when work is running.
  • Pending user input requests expire when a turn is interrupted, preventing stray prompts from blocking the conversation after an interruption.
  • Plugin and extension calls respect the selected machine scope, and the project picker shows projects across machines, so installs target the machine you picked.
Complete technical changes

What's Changed

  • Surface unsent drafts in the sidebar by @badcuban in #131
  • Stop stale async flows from closing a palette they do not own by @badcuban in #133
  • Apply queued checkout switches on idle and announce them at pick time by @badcuban in #135
  • Bump voidzero-dev/setup-vp from 1.15.0 to 1.17.0 by @dependabot[bot] in #136
  • Bump the development-dependencies group with 2 updates by @dependabot[bot] in #138
  • Bump the production-dependencies group across 1 directory with 8 updates by @dependabot[bot] in #137
  • Usage: cross-machine token and cost dashboard by @badcuban in #134
  • Write release copy for users, not developers by @badcuban in #139
  • Line the usage chart hover up with the day it describes by @badcuban in #140
  • Ship a Docker self-host image by @badcuban in #141
  • Publish the self-host Docker image on stable releases by @badcuban in #142
  • Label the Docker image with its source repository by @badcuban in #143
  • Bring the README and origins doc up to the product's present by @badcuban in #144
  • Tell the README about onboarding, phone access, and the usage dashboard by @badcuban in #145
  • Add Claude local usage heatmap by @badcuban in #147
  • Stabilize Windows terminal and pull request sidebar indicators by @badcuban in #148
  • Improve loading skeletons and preserve active turn status by @badcuban in #149
  • Add the agents panel: the turn's subagents and runs as a thread rail by @badcuban in #146
  • Retry transient Electron release downloads by @badcuban in #150
  • Run staged install before Electron packaging by @badcuban in #151
  • Preserve native subagent model omissions by @badcuban in #155
  • Refuse duplicate desktop instances and re-verify backend ports on restart by @badcuban in #152
  • Polish panel tabs and release mentions by @badcuban in #154
  • Add safe source control tool updates by @badcuban in #153
  • Add verified cross-platform source control tool maintenance by @badcuban in #156
  • Keep the turn activity tracker steady while subagents run by @badcuban in #157
  • Promote background codex exec runs into subagent rows by @badcuban in #158
  • Multi-machine project UX: remote assets, logical pickers, machine filter, unified selection styling by @badcuban in #159
  • Recover threads whose checkout folder was deleted by @badcuban in #161
  • Keep a subagent's work out of the inline feed and surface the Agents tab by @badcuban in #160
  • Harden the subagent roster fold and close review gaps from #160 by @badcuban in #162
  • Keep background commands out of the Agents tab entirely by @badcuban in #163
  • Bump the development-dependencies group with 3 updates by @dependabot[bot] in #165
  • chore(deps): bump provider SDKs and app dependencies to latest by @badcuban in #166

Direct changes

  • 75e87245 Prevent subagent output leaking into chat
  • e8dab201 Prevent blank space below active chats
  • 5e9dd2a0 Live chat activity stays steady while a turn runs
  • 0cd2ef2a Settle subagents when parent turn stops
  • 3cb67185 Warn before quitting active sessions
  • ade23d08 Terminal running icon survives commands started in a booting shell
  • 67f056be Settle orphaned subagent rows when a provider session restarts
  • bc630a59 Show live +/- line counts for subagent work
  • 0d605e83 Plugins tab scopes to any connected machine
  • 70301134 Pinned threads keep their place in the live list
  • fa390b3a Drag to reorder the right sidebar tabs
  • b4118414 Clarify turn scope in AGENTS.md
  • e8d1f7a9 Expand AGENTS.md with Threadlines development guidance
  • e8767222 Refresh Claude OAuth credentials and stream live edit stats
  • 3bb82165 Improve right panel tabs and last-used model selection
  • 210b9e20 Prevent desktop from attaching to unrelated servers
  • 964299f0 Expire pending user input on turn interrupt
  • 7ad21981 Keep Settings visible while returning from Usage
  • 8054599a Cache repository tests and browser task runs
  • e88b439e Improve web navigation and thread wrap-up state handling
  • f658a57f Persist subagent state for agent activity panels
  • 8ed97c61 Persist subagent state and improve agent activity panels
  • 52c0f183 Move thread activity controls into the chat header
  • bf09a209 Prefer local plugin catalogs over remote mirrors
  • 33a55c32 Add shared desktop titlebars and improve usage chart interactions
  • 2c9fd797 Remember source control state and collapse long Done lists
  • 12172ee7 Make the project scope picker read as an input
  • 65473f09 Show waiting state and elapsed time for background tasks

Full Changelog: v0.3.3...v0.3.4