Repository navigation
feat(web): show where each subagent works in the Agents panel - #77
Open
adampeterhiggins wants to merge 2 commits into
Open
adampeterhiggins wants to merge 2 commits into
adampeterhiggins wants to merge 2 commits into
Conversation
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The Agents panel didn't say where a subagent was working. You couldn't tell whether an agent was editing the thread's own worktree or a worktree of its own.
Each agent now shows its worktree by folder name: in the Agents list row, and as one line in the detail header with the branch and lines changed. Hovering that line shows the full path and branch, each with a copy button. A tag says how we know:
isolation: "worktree".Before / after
The screenshots use a real Claude thread copied into an isolated worktree database. That thread predates this change, so one
task.updatedfixture row per agent adds the workspace fields: one shared agent, and one isolated agent with a worktree and line counts.How
cwd,worktreeBranch,isolation,linesAdded, andlinesRemoved, and ingestion persists them. An absentcwdmeans unknown, not "same as the thread".isolationcomes from the Agent tool's launch input.worktreePath,worktreeBranch, andtoolStatsarrive after the task settles, so the adapter sends them in a status-freetask.updated. That's a metadata update and doesn't restart the task or change its liveness.thread/startedcarriesthread.cwd, whichCodexSessionRuntimeused to drop. It now rides on the collab child identity.session.createdevents carryinfo.directory, which is now read.deriveSubagentWorkspaceinclient-runtimecompares the agent's cwd with the thread's worktree (or project root).AgentWorkspace.tsxrenders the header line with its hover card and the row chip.docs/fork-differences.mdanddocs/user/thread-sidebar.md.Verification
thread.cwd, and the OpenCode childdirectory.ChatView.tsxalready had.ThreadSettlementReactor.test.tsstorage-cleanup tests fail locally in this~/.t3worktree. They don't touch any code changed here.Model: Claude Opus 5.5. Harness: Claude Code through T3 Code.
🤖 Generated with Claude Code