More interactive Agent mode #173
Replies: 13 comments 8 replies
-
|
Thanks a lot for sharing your feedback and the comparison with Gemini CLI — it’s really valuable input. The main reason I initially separated Query and Agent modes is that the Agent isn’t fully stable yet. Sometimes AI suggestions are incomplete when the requested change is too big. That said, I completely agree that an interactive agent is the right direction. I also think having both manual apply and revert options is quite important for safety.
I believe interactive is better at this stage. Once the workflow becomes more stable, we can add a “fully automated” toggle in settings for users who prefer that. Currently, the agent prompt is: I also think moving to git patches instead of plain code blocks, as this might make the workflow more transparent and easier to apply/revert. So in short:
|
Beta Was this translation helpful? Give feedback.
-
|
Also, have a look at #170 — it demonstrates implementing an AI Agent using an MCP server, which could be useful inspiration for us. As we explored, there are different ways for the agent to interact with the user. Because of this, I think having separate modes still makes sense. Each mode can serve a different purpose and give users the flexibility to choose the workflow they’re most comfortable with. |
Beta Was this translation helpful? Give feedback.
-
|
Hi Gaurav, In the mentioned branch, I am showing a diff view instead of the source code so that you can easily pick the changes you like and save. For now it is for updates only, as soon as I have implemented also new and deleted files, I will submit a PR. Do you think we should have a branch on the main repository? |
Beta Was this translation helpful? Give feedback.
-
|
Hi Stefano, That sounds great — showing the diff view and letting users selectively apply changes is exactly the kind of interactivity we need 👍. Regarding the branch: yes, please go ahead and open a PR. Having it directly in the main repo will make it easier for others to try it out and give feedback early. I’m also exploring another experimental agent mode using patches, so changes can be easily applied and reverted. We can then refine together.. Thanks again for pushing this forward — really looking forward to your PR! |
Beta Was this translation helpful? Give feedback.
-
|
Hi @stefanofornari , Excited to share my latest PR #174 — it enhances Agent Mode with the new IdeTools Agent, making the workflow more dynamic, stable, and easier to extend. |
Beta Was this translation helpful? Give feedback.
-
|
Hi @jGauravGupta , |
Beta Was this translation helpful? Give feedback.
-
|
Hi @jGauravGupta,
Key points:
Let me know what you think and, in case you like the approach how you would move on. |
Beta Was this translation helpful? Give feedback.
-
|
IntelliJ now includes two agents — Claude Agent and Junie. Similarly, Jeddict could explore integrating with multiple AI agents in the future, giving users the flexibility to switch between them in chat. |
Beta Was this translation helpful? Give feedback.
-
|
@jGauravGupta, when you have done with #198 , kindly have a look at this: stefanofornari#20 |
Beta Was this translation helpful? Give feedback.
-
|
Hi @stefanofornari, With the NetBeans 28 release due soon, Jeddict needs to ensure proper agent QA. I’m currently using GPT-mini-4.1 on Windows, and it’s doing a wonderful job for me (although its regex-based tooling isn’t great). I’m looking forward to your views on the Linux environment. I understand that not all models work well with the agent — we should document this clearly for end users, specifying whether a model is completely non-functional or just not intelligent/workable enough. I also think we should keep the Action-based implementation as a separate agent: #178 Wdyt? |
Beta Was this translation helpful? Give feedback.
-
|
Something to explore: |
Beta Was this translation helpful? Give feedback.
This comment was marked as spam.
This comment was marked as spam.
-
|
Interactive mode has been implemented with #265 and will be released in the next version (>3.3). You can also trying it out checking out the latest main branch, feedbacks are very welcome! The next step is to "toolify" the models that do not support tool with the goal of widening the set of LLMs that can be used to work interactively on the code and, in most cases, more cost efficiently. The models that do not support tools may be less expensive and the number of tokens involved in the communication lower. This is tracked in #276 and I will have a PR ready soon. fyi @jGauravGupta |
Beta Was this translation helpful? Give feedback.

Uh oh!
There was an error while loading. Please reload this page.
-
I recently started using Gemini CLI and I am impressed by the user experience and its workflow. I really like the interactivity that keeps you in control of what goes on while taking advantage of the underlying AI.
In Jeddict, currently the agent experience is quite different as it applies the changes to the file directly without any interaction. This actually caused some bad experiences for me, as some files were completely changed not in the way I wanted. Additionally, at the moment, it handles only updates on files. Gemini CLI, for instance, is able to build projects, run tests, etc.
Jeddict's Agent mode is a great starting point, but I'd like to work on it to make it similar to the CLI's approach. Before (or in the meantime) I write a lot of code which may not be welcome in the project, I'd like to get feedback on which approach to take.
Let's start at a very high level: which modes should we have and for which purpose? Currently we have two modes: question and agent. The former is meant to ask questions related or not related to a project and just show the answers. The latter instructs the AI to propose actions and applies them once provided by the AI. As far as I can tell, the difference is very much just about that—in how the AI is instructed to reply.
But do we really make this distinction in our minds when we develop? What do you think? Personally I don't. Working in query mode, I usually interact with the AI making various prompts and asking questions, and I can even ask it to propose applying changes to a given file. Usually to do that I need to inspect the diff (and here I must say Jeddic does a great job!). Then, if the changes are fine, I apply them to the code.
If I work in Agent mode, everything will be basically the same, only Jeddict applies the changes as soon as they are provided by the AI. As I said, this is quite dangerous, as you would realise that something was changed only later, maybe because something has been broken. But if we had a way to review the changes the AI suggested and interactively choose whether to apply them or not, then we'd have the best of both worlds: if you deny the change it would be like query mode; if you accept the change it would be like agent mode.
I've already written too much :) There is more to explore, but let's not put too much on the table to start with.
What do you think?
Thanks in advance for reading and for your feedback If you are interested in where I am starting from you can checkout this branch.
Beta Was this translation helpful? Give feedback.
All reactions