Skip to content
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

Add Support for AI Agent-Driven Change Proposals in AI Chat #14749

Open
planger opened this issue Jan 20, 2025 · 0 comments · May be fixed by #14750
Open

Add Support for AI Agent-Driven Change Proposals in AI Chat #14749

planger opened this issue Jan 20, 2025 · 0 comments · May be fixed by #14750
Labels

Comments

@planger
Copy link
Contributor

planger commented Jan 20, 2025

Enable AI agents to propose a set of changes directly within the AI chat interface. The proposed changes should support:

  1. Generic Editable Elements:

    • Changes can target files or custom concepts.
    • A generic interface should allow for specific editable elements to be implemented, with customizable labels, icons, and actions.
  2. User Interaction with Changes:

    • Display all elements with suggested changes, allowing users to open, review diffs, and decide whether to apply or reject changes.
    • Support for change types such as add, delete, and modify for each element.

Proposing changes from an AI agent solely through chat responses can quickly become unwieldy, especially when multiple changes span across several elements. Managing such proposals inline with chat responses can lead to confusion, as it becomes challenging to track the relationship between changes, navigate across modified elements, or grasp the overall context of the suggestions. Furthermore, refining the proposed changes often requires iterative feedback and adjustment, making it essential to have a dedicated, persistent, and structured view of the current state of suggestions. By decoupling these "current suggested changes" from specific chat responses and presenting them in a centralized location, users gain a clearer and more organized overview of all proposed changes, enabling better navigation, review, and decision-making.

planger added a commit that referenced this issue Jan 20, 2025
* Add the concept of a change set to chat model and input UI
* Add an implementation of change set elements for files
* Add an agent for testing: @Changeset

Other fixes in Chat Input UI:
* The inProgress state of the chat input was actually unsafely managed.
This change addresses the proper management of the inProgress state.
* The positioning, e.g. of the placeholder is now more adaptive.

As the change set feature directly relates to another feature (context,
work in progress), this change also already prepares for those changes
in the chat UI:
* Prepare chat input for adding context to requests
* Add context in the form of variables to chat model

Fixes #14749
@planger planger linked a pull request Jan 20, 2025 that will close this issue
2 tasks
JonasHelming pushed a commit that referenced this issue Jan 22, 2025
* Add the concept of a change set to chat model and input UI
* Add an implementation of change set elements for files
* Add an agent for testing: @Changeset

Other fixes in Chat Input UI:
* The inProgress state of the chat input was actually unsafely managed.
This change addresses the proper management of the inProgress state.
* The positioning, e.g. of the placeholder is now more adaptive.

As the change set feature directly relates to another feature (context,
work in progress), this change also already prepares for those changes
in the chat UI:
* Prepare chat input for adding context to requests
* Add context in the form of variables to chat model

Fixes #14749

Signed-off-by: Jonas Helming <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant