Skip to content

Test: Delegate parallel work through nested chats in the Agents Window #333402

Description

Complexity: 5

Authors: Sandeep Somavarapu (@sandy081)

Create Issue


Set up

  • Open the vscode-tools project in the Agents Window and start an Agent Host session for that project.
  • Use a model that can create additional chats or sessions.

Plan and delegate work

  1. Ask the agent to plan a non-trivial change in the vscode-tools project as three related tasks that can be implemented in parallel. For example:
    In the vscode-tools project, create a plan to add configurable retry support to the HTTP client. Split it into: retry configuration, retry execution, and tests/documentation. Do not implement anything yet.
  2. After reviewing the plan, ask:
    Implement these tasks in parallel sessions
  3. Verify the agent uses the unified session-creation tool and gives each created chat a meaningful title before work starts.

Follow the nested chats

  1. Verify the created chats appear as children under their parent session in the Sessions list.
  2. Test the nested chat tree in general, with particular focus on context-menu actions, Alt+click to open a chat to the side, dragging and dropping chats, opening and selecting child rows, and collapsing and expanding the tree with both mouse and keyboard. Also verify the overall hierarchy, spacing, titles, and status indicators make sense while exercising these interactions.

Side chats

  1. In one of the chats, use /btw to ask a related question without interrupting the current work. For example:
    /btw What edge cases should the retry tests cover?
  2. Open the overflow menu beside the session title and verify the side chat is available under Side Chats.
  3. Verify side chats are not mixed into the nested chat tree.
  4. Open the side chat from Side Chats in the session-title overflow menu and verify it returns to the correct conversation.

Subagents

  1. Subagents are hidden by default. Right-click any pill above the chat input and enable the Subagents pill.
  2. Ask the agent to delegate a focused investigation to a subagent. For example:
    Use a subagent to inspect the existing HTTP client tests and report which retry scenarios are already covered. Do not investigate them yourself.
  3. Verify the Subagents pill appears above the chat input and shows the delegated work.
  4. Open the subagent from the pill and verify the correct subagent chat opens.
  5. Verify subagents remain separate from both the nested chat tree and the Side Chats menu.

Approvals on the owning chat

  1. Use a permission mode that requires confirmation for terminal commands, and make sure terminal auto-approval will not bypass the prompt.
  2. In one child chat, use a prompt such as:
    Run git status in the vscode-tools project using the terminal. Wait for my approval before running it.
  3. If that command is auto-approved, use a command that writes a harmless temporary file:
    Run the terminal command printf 'approval-test\n' > /tmp/vscode-tools-approval-test.txt. Do not use a file-edit tool, and wait for my approval.
  4. Verify the pending approval appears on that child chat’s nested row, not on another chat or the parent session row.
  5. Scroll the child row offscreen and back while the approval is pending; verify the full approval control is visible and not clipped.
  6. Verify the Allow once action has a clear accessible name and approving or rejecting it affects only the correct child chat.

Persistence and exploratory testing

  1. Switch sessions and return, then reload the window.
  2. Verify the nested chats, meaningful titles, selection, status ownership, creation provenance, and grouping remain correct.
  3. Repeat the delegation and nested-chat workflow with other Agent Host harnesses, including Claude and Codex, and verify the behavior remains consistent.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions