SWE-agent icon indicating copy to clipboard operation
SWE-agent copied to clipboard

Web interface

Open zachblume opened this issue 10 months ago • 2 comments

Happy to contribute here, I'm sure others are already thinking here but figured I'd write some notes about what would've made trying this out easier:

  • A locally served onboarding and output UI
  • git clone, run make spins up and opens localhost:3000
  • "Playground":
    • Paste GH issue (or file selector->a directory & a textbox for issue description)
    • Config chooser
  • Tail output
  • Choose to apply the diff locally or generate the PR back up to GH
  • Making this available locally vs. hosting the UI and provisioning compute for the agent (e.g. inside a Docker-layer lambda)?

zachblume avatar Apr 04 '24 23:04 zachblume

We're still discussing the next steps a bit, but if we go more towards a web interface, we really should set up the web app around a flask server. Much more natural integration in the rest of the codebase that way. In particular, if we add interactivity between the user and the model (i.e., the user being able to stop the run), then using os.system calls is a big limitation (also already now, just tailing console output is much more limiting than triggering a nice output like from the inspector for every step that is running live).

klieret avatar Apr 06 '24 02:04 klieret

That makes sense -- I won't be able to get anything done in the next few days, but I can plan to rework my PR this weekend (?) to be based on a Pythonic/Flask-centric approach picking up whats been done in /inspector.

It makes sense because as I began running this on real issues and watching the output, there were moments here I wished the agent had asked me a scope-clarifying question that I could've answered, or I had been allowed to provide additional prompting. Perhaps with a interactivity timeout (e.g. continue if not answered in 60s)?

Question for you all -- how happy are you with the state of inspector? Do you want to just add this UI to that existing server, adopt the same pattern but in a new dir like this, or start afresh in a seperate dir but with a rethought Flask pattern?

zachblume avatar Apr 06 '24 21:04 zachblume

Sorry I just saw this now-

The inspector will probably stay until we finish developing this new web ui, but once we have it we might deprecate the inspector.

I'm closing this issue since we'll move this discussion to #213

ofirpress avatar Apr 13 '24 17:04 ofirpress