Skip to content

connect: nest tool calls under the message that made them - #87

Merged
hbrooks merged 1 commit into
mainfrom
hunter/variable-top-level
Jul 27, 2026
Merged

connect: nest tool calls under the message that made them#87
hbrooks merged 1 commit into
mainfrom
hunter/variable-top-level

Conversation

@hbrooks

@hbrooks hbrooks commented Jul 27, 2026

Copy link
Copy Markdown
Member

Summary

Pressing up in the chat used to land on a tool call, which reads as a turn in the conversation when it is really work the agent did mid-message. Now a tool call belongs to its message's block.

Three levels, each opened by on the level above:

● the message            a stop; ↑/↓ walk these
  ⎿ Ran 3 tool calls     part of the message's block
    ● Bash(pytest)       a stop once the message is opened
      ⎿ output           part of that call's block

So lands on the message with its tool chatter in tow, reveals the calls and / step through them one at a time, on a call opens its output, and walks back out a level.

Each lifted block also gets a blank tinted row above and below, shared between a message and the tool run attached under it rather than one pad each.

Rebased onto main, so the variable changes that shipped in #85 and #86 are no longer part of this branch.

Test plan

  • tsc --noEmit clean, 381 tests pass (on @ellipsis-dev/sdk 0.5.0, which main picked up)
  • New layOutItems coverage: a call belongs to its message block, revealed calls become their own stops, results travel with their call, ctrl+r reveals everything
  • Drove the real arrow keys through an offline Ink render harness: highlights the message with ⎿ Ran 2 tool calls inside it; expands to ● Bash(npm test) / ● Read(src/index.ts); / step between the two; un-clamps the Bash output; re-clamps, again returns to the message

…each block onto its own panel

Pressing up in the chat used to land on a tool call, which reads as a turn in
the conversation when it is really work the agent did mid-message. Now a tool
call belongs to its message's block: up/down walk messages, right on a message
reveals its calls as stops of their own, right again opens one call's output,
and left walks back out a level.

Each lifted block also gets a blank tinted row above and below, shared between
a message and the tool run attached under it rather than one pad each.
@hbrooks
hbrooks force-pushed the hunter/variable-top-level branch from 32b3aad to cfc7428 Compare July 27, 2026 18:41
@hbrooks hbrooks changed the title variable: top-level command, and nest tool calls under their message in the chat connect: nest tool calls under the message that made them Jul 27, 2026
@hbrooks
hbrooks merged commit 5269425 into main Jul 27, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant