Conversation
|
Thank you for this contribution, nice to see! Would you mind to add some log or screenshot to see a random example of use? |
|
@enyst Thanks for the quick review - we'll take a look at the comments. Attached are the OH logs and a screenshot of the successfully executed prompt. DaytonaRuntime.mp4The video shows a separate prompt, where we tried also implementing the proxy mentioned in the description. Instead of / in addition to the proxy - is there any way to add a tip for every LLM response containing "localhost:" which would let the user know to visit e.g. https://5000-sandbox123.node456.daytona.io instead of localhost? Another option is to try regex-ing the LLM response to replace the localhost URL with our preview URL, but I'm not sure if that would be feasible? |
|
This looks good to me! Engel has a couple good comments though |
Signed-off-by: jsrzic <josip.srzic@gmail.com>
Signed-off-by: Ivan Dagelic <dagelic.ivan@gmail.com>
Signed-off-by: Ivan Dagelic <dagelic.ivan@gmail.com>
Signed-off-by: Ivan Dagelic <dagelic.ivan@gmail.com>
Signed-off-by: Ivan Dagelic <dagelic.ivan@gmail.com>
1394cd3 to
f25f79a
Compare
How about this web hosts property? I think if you define it for the runtime, it will be picked up and inserted in the agent history, so it will be sent to the LLM as information about what to use. |
enyst
left a comment
There was a problem hiding this comment.
Thank you for contributing this!
Signed-off-by: jsrzic <josip.srzic@gmail.com> Signed-off-by: Ivan Dagelic <dagelic.ivan@gmail.com> Co-authored-by: jsrzic <65179822+jsrzic@users.noreply.github.com>

End-user friendly description of the problem this fixes or functionality that this introduces
Adds support for a Daytona runtime to manage sandboxes. Daytona is a platform that provides a secure and elastic infrastructure for running AI-generated code.
To get started add the following environment variables:
RUNTIME = "daytona"DAYTONA_API_KEY = <your_api_key>(get it here)And optionally a
DAYTONA_TARGETvalue that defaults tousbut can be changed toeuGive a summary of what the PR does, explaining any non-trivial design decisions
Instead of the regular/local docker runtime, this PR allows setting the runtime to
daytonaand delegating the creation and management of the sandboxes OpenHands needs to run code from Docker to Daytona.Daytona will ensure the availability of any OpenHands sandbox container runtime image starting from the one used in the release of this PR.
We also plan on improving the UX by adding a proxy functionality that will point the
localhostport on the running machine to serve the preview URL used by Daytona to display any running apps in the form e.g.<port>-<workspace_id>.<node_id>.com. Feedback is appreciated.Contributed by @jsrzic
Link of any specific issues this addresses