fix(ui-web): a running sub-agent has no stop control on the page, though the backend exposes one
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 74/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- typescript
- Domain
- frontend
Research direction
Start in ui-web/src/features/subagents/ and inspect the desk's agents lane, using ui-tui/src/components/agentsOverlay.tsx as the existing stop-control reference. Confirm the generated client entry for subagent.cancel_instance in ui-web/src/rpc/generated.ts and wire each running instance row's agent and handle to it. Done means every running instance row can stop only its own rendered spawn without affecting other sub-agents.
Written by the indexing model from the issue text.
Description
Summary
The page shows the sub-agents a conversation has running -- the desk's agents lane, the roster, the instance surface -- and none of those surfaces can stop one. The backend already exposes the verbs: subagent.cancel_instance { session_key, agent, handle } stops the spawns behind one rendered (agent, handle) pair, subagent.interrupt { subagent_id } stops one spawn by id, and subagent.cancel_session { session_key } sweeps the session. ui-web/src calls none of them; the TUI's agents overlay does (ui-tui/src/components/agentsOverlay.tsx, the interrupt helper posts subagent.interrupt).
Steps to reproduce
- Open a session and have the main agent spawn two sub-agents (or run a DAG with two nodes).
- Open the Subagents page or the desk's agents lane while both are running.
- Look for a way to stop one of them without stopping the other.
Expected behavior
Each running instance row offers a stop, the way the TUI overlay does, wired to subagent.cancel_instance for the (agent, handle) the row already holds.
Actual behavior
There is no stop on any instance row. The only stop on the page is the composer's go button, which is the main agent's turn.cancel; with the fix that pairs it with cancel_by_session it stops every spawn of the session at once, which is the right meaning for that button and still leaves "stop this one" with no control.
Two related but distinct gaps are filed separately:
- a direct instance chat cannot be stopped because the global stop sends
turn.cancelwithout atarget-- #459; - the go button goes inert while a delegated result re-enters the conversation -- #496.
Waiting on the ui-web/ freeze to lift; the fix is a row control under ui-web/src/features/subagents/ (and the desk's agents lane) calling an RPC the generated client already carries -- subagent.cancel_instance is in ui-web/src/rpc/generated.ts today.
Environment
- Raven
mainat 6d8c3638 (2026-09-18), web page served byraven web - macOS 15, Apple Silicon
Logs or screenshots
N/A -- the defect is a missing control.
- Dominant language
- Python
- Stars
- 4.1k
- Forks
- 94
- Avg merge
- 10h 2m
- Merged PRs (30d)
- 376
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from EverMind-AI/Raven
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
EverMind-AI/Raven#798 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
EverMind-AI/Raven#797 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
EverMind-AI/Raven#640 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
EverMind-AI/Raven#479 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 75/100
EverMind-AI/Raven#474 · 2 comments ·
Maintainers usually reply within 1 day
All issues in EverMind-AI/Raven
Similar issues
-
bug server
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
sportsdataverse/sportsdataverse-py#641 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
googleapis/google-cloud-python#18532 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day