[BUG] Desktop task panel: subagent resumed via SendMessage has no Running card — original card stays Completed while the execution runs
What's Wrong?
In the Claude Desktop (macOS) task panel, a subagent that is resumed via SendMessage (addressed to its agentId after its original run finished) gets no representation at all while the resumed execution runs:
- The original card stays in the Finished section as
Agent · Completed(truthful for execution #1). - No new Running card is created for the resumed execution, and the old card is not flipped back to Running.
- Meanwhile the harness tracks the resumed execution correctly as a live task —
TaskOutputon the same ID reportsstatus: running.
Net effect: a long, token-heavy live execution (~200k tokens in our case) is completely invisible in the panel until its completion notification arrives, orphaned from any card. The operator watching the panel reasonably concludes the agent is done.
Steps to Reproduce
- In Claude Code inside the Claude Desktop macOS app, spawn a subagent with the Agent tool and let it complete. Its card appears under Finished (
Agent · Completed). - Have the main session call
SendMessagewithto: <that agent's agentId>and a follow-up message. The tool result confirms a new live execution:
````
Agent "ab2ecf4c713a72310" had no active task; resumed from transcript in the
background with your message. You'll be notified when it finishes.
- While it runs, check harness state:
````
TaskOutput(task_id: "ab2ecf4c713a72310", block: false)
→ task_type: local_agent, status: running
- Look at the Desktop task panel: the original card still reads
Completedin Finished; there is no Running entry for the resumed execution anywhere in the panel.
Evidence (session of 2026-07-16)
- Execution #1:
Draft plan: land-failure-recovery — Agent · Completed · 8m 56s · 171.8k tokens · 25 tool uses(Finished card, correct). SendMessageresume at ~22:34 UTC → result quoted above (new background execution under the same agentId).TaskOutputpolled minutes later →status: running,task_type: local_agent(harness state correct while the panel showed nothing running).- Screenshot of the Finished card while the resumed execution was live is available on request.
What Should Happen?
Either representation works; having neither is the bug:
- flip the existing card back to Running (if cards are keyed on agent identity), or
- mint a new Running card for the resumed execution (if cards are keyed on executions).
A task the harness reports as running should be visible somewhere in the panel.
Environment
- Claude Desktop, macOS (Darwin 25.5.0)
claude --version→2.1.210 (Claude Code); the session process stamps transcript entriesversion: 2.1.209,entrypoint: claude-desktop- Task type:
local_agent(Agent tool subagent, resumed viaSendMessage)
Related issues
- #76271 — Desktop workflow panel: per-agent tokens/tools/time stay empty during long parallel runs (progress-only batches omit
workflowProgress). Same family: the desktop panel's event bridge missing live-state transitions; this report is the subagent-resume variant. - #78224 — [FEATURE] Pause-and-resume background subagents on recoverable failures — adjacent feature area; if that ships, resumed executions will be more common and this invisibility more painful.
- #78135 — Session/agent transcripts intermittently unresolvable, breaking background-agent resume — adjacent resume plumbing (different failure: resume fails; here resume succeeds but is invisible).
- #78215 — Workflow tool:
resumeFromRunIdnever hits the journal cache — adjacent resume-surface issue on the workflow side.
Dup-check caveat
GitHub's issue full-text search API was returning 503 for every query when this was filed, so duplicate-checking was limited to grepping the newest ~300 open issue titles (no match). Apologies if this duplicates an older report the title grep missed.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗