Skip to content

[Bug]: Chat subagent cards hide which account each subagent runs on (no account badge) #24896

Description

@vitalyiegorov

Before submitting

  • I searched existing issues and did not find a duplicate.
  • I included enough detail to reproduce or investigate the problem.

Area

apps/web

Steps to reproduce

  1. Add two accounts for the same provider, e.g. two Claude instances with accent colours (badges C1 and VY).
  2. In a thread, have the agent start several subagents so the chat shows an N subagents card.
  3. Look at the stacked avatars in the card header, then expand it and look at each row.

Expected behavior

Each avatar shows the same account badge (accent colour + initials) as the sidebar row, composer and handoff row, so you can tell which account each subagent runs on.

Actual behavior

Every avatar shows the same plain Claude icon with only a status dot. With two Claude accounts, the card can't tell you which subagent spends which account. The same applies to workflow member rows in the chat, and to the stacked avatars in the mobile feed's subagent group.

Cause

All chat subagent avatars go through EnvironmentSubagentAvatar in apps/web/src/components/chat/V2LifecycleRow.tsx. It selects only the provider's displayName and iconUrl, so SubagentAvatar never receives an accent colour or a shouldShowInstanceBadge decision, and renders ProviderInstanceIcon without showBadge. Its status dot also sits in the bottom-right corner, where the badge goes everywhere else:

https://github.com/pingdotgg/t3code/blob/5b35402623/apps/web/src/components/chat/V2LifecycleRow.tsx#L258-L325

On mobile, SubagentAvatar in thread-subagent-group.tsx renders the bare ProviderIcon instead of the badge-capable ProviderInstanceIcon.

Related: #24831 (the right panel's Lineage list, same gap, PR #24833).

Suggested fix

  • Web: EnvironmentSubagentAvatar also selects the account's accent and the shouldShowInstanceBadge result as primitives (so provider status pushes don't re-render the card) and passes them to SubagentAvatar, which shows the compact badge. When the badge shows, the status dot moves to the top-left.
  • Mobile: the feed's group avatars use ProviderInstanceIcon with the badge when the same rule says so.

Single-account users see no change. No contract, server or adapter change.

Impact

Minor bug or occasional failure

Cosmetic but confusing: with several accounts per provider you can't tell which account each subagent is spending.

Version or commit

Reproduced on main 5b35402623

Environment

Desktop client, two Claude accounts with accent colours; also the mobile feed

Logs or stack traces

n/a (visual)

Screenshots, recordings, or supporting files

Before: before
After: after

Activity

  1. added a commit that references this issue on Oct 26, 2026
    bbd0238
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions