Separate windows and agents for different concerns : ASK, DEVELOP and EXECUTE
Should have 4 different modes ASK, Develop, Commit and Execute each having different color windows. And all 4 should be working simultaneously. And i should be able to use what ever model i want in each of them.
And what should happen should also be very clear in each of those categories.
Ask (General Agent) means no code development, just planning, and asking on anything and everything.
Develop means code will be created, but user has to approve it. And the Studio should be aware of what fragment or portion of the code got approval or none of it.
Execute(Agent + Run currently) agent for making changes without approval.
Commit agent for carrying out regular commit tasks to the github without much ceremony.
Right now we have 3 modes, but the modes dont have a boundary or definition which is 100% solid. Ask tries to develop and develop tries to execute. And it does not even know whether its suggestions got approved or not, just assumes that they all did.
Similarly there should be CI/CD agent/window.
And then there should be a SDLC agent/window where I can do project management decision.
The purpose of each should be very well defined with proper system level prompts by Firebase studio itself. To minimize hallucinations.
Allow people do open more than one chats simultaneously if they are developing 2 or more features at the same time.
You can have an orchestrator agent which can call all these agents to do this and respective updates in their chat windows. if some poeple will find it too many agents to deal with.
further a QA agent mode would be also useful .
But real devs want certainity and not playing with Fire.