-
Notifications
You must be signed in to change notification settings - Fork 637
feat(chat): Grouping read and list directory messages UX #7006
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(chat): Grouping read and list directory messages UX #7006
Conversation
This reverts commit 1fc1fd7.
|
- We show read tool message for each file read which is occupying the entire chat with these messages which is not super important. - Group all the read tool messaged under ContextList.  --- - Treat all work as PUBLIC. Private `feature/x` branches will not be squash-merged at release time. - Your code changes must meet the guidelines in [CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines). - License: I confirm that my contribution is made under the terms of the Apache 2.0 license.
7297025
to
94f4751
Compare
What is the regression that this fixes? Didn't see it mentioned in the revert PR so missing some context here. How does creating an empty message fix this? |
Problem:We identified and fixed an issue where the IDE's UI would prematurely stop displaying when executing certain commands. This occurred specifically when the Language Model (LLM) attempted to run the executeBash command before the Read/List Directory tools. Example:When a user asks "write a script that tells me whoami", the operation only requires the fsWrite command and not any directory reading tools. In such cases, the IDE would execute fsWrite but fail to display the executeBash tool in the chat interface. This UI behavior has been corrected in this PR, along with improvements to the Reading File user experience. |
/retryBuilds |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for adding the explanation, thats super helpful!
It seems to me that the heavy conditional logic based on which tool is being used feels like the real problem here as it makes the expected behavior unclear and hard to follow.
However, this is a broader issue we can address in migration to Flare.
## Problem - Existing UX shows multiple context list chatItem cards for list directory tool messages. ## Solution - Use a `messageIdToUpdateListDir` state to store the messageId and update this for next list directory tool messages.  ## TODO: - Need to combine both read and list directory tool messages into one context list. - This code change is equivalent to this PR: aws/aws-toolkit-vscode#7006 in `feature/agentic-chat` branch.
## Problem - Existing UX shows multiple context list chatItem cards for list directory tool messages. ## Solution - Use a `messageIdToUpdateListDir` state to store the messageId and update this for next list directory tool messages.  ## TODO: - Need to combine both read and list directory tool messages into one context list. - This code change is equivalent to this PR: aws/aws-toolkit-vscode#7006 in `feature/agentic-chat` branch.
* fix: add result attribute when emitting telemetry event * fix: remove comment * fix: unit test * fix: fix unit test * fix: fix unit test * feat(chat-client): open use input prompt for agentic chat and new prompt should st… (#1081) feat: open use input prompt for agentic chat and new prompt should stop current response * fix: ux polish for list directory tool messages. (#1075) ## Problem - Existing UX shows multiple context list chatItem cards for list directory tool messages. ## Solution - Use a `messageIdToUpdateListDir` state to store the messageId and update this for next list directory tool messages.  ## TODO: - Need to combine both read and list directory tool messages into one context list. - This code change is equivalent to this PR: aws/aws-toolkit-vscode#7006 in `feature/agentic-chat` branch. * fix: execute command should show when no approval required & add more loading (#1091) * fix: fix unit test --------- Co-authored-by: invictus <[email protected]> Co-authored-by: Laxman Reddy <[email protected]> Co-authored-by: Zoe Lin <[email protected]>
Problem:
We identified and fixed an issue where the IDE's UI would prematurely stop displaying when executing certain commands. This occurred specifically when the Language Model (LLM) attempted to run the executeBash command before the Read/List Directory tools.
Example:
When a user asks "write a script that tells me whoami", the operation only requires the fsWrite command and not any directory reading tools. In such cases, the IDE would execute fsWrite but fail to display the executeBash tool in the chat interface. This UI behavior has been corrected in this PR, along with improvements to the Reading File user experience.
ChatStream.ts
feature/x
branches will not be squash-merged at release time.