This message was deleted.
# feedback
d
This message was deleted.
πŸ™Œ 1
w
Thanks Brett! Previous discussion here: https://openhands-ai.slack.com/archives/C06U8UTKSAD/p1745866780439049 Just a heads up: we are actually working on this internally, and may end up closing this for the reasons in the thread. The line we've taken so far is that OpenHands is meant to be run on a dev's workstation, not in the cloud. This would be a pretty substantial departure from that line. We're going to discuss a bit more internally, will keep you posted πŸ™‚
a
We can remove the helm portion since that's what typically used for deployments if that would help. I feel there has already been a departure on local vs cloud by supporting Daytona? (Can check me if I'm wrong πŸ˜† ) https://github.com/All-Hands-AI/OpenHands/tree/de196d6da1353d3e925cd5f4bf067b16d5eacca4/openhands/runtime/impl/daytona
w
Yeah I think that might be better...run openhands locally, but allow it to connect to a k8s backend as the runtime
a
Thinking... We would lose quite a bit if running openhands locally and connecting to k8s as a runtime, since we rely on internal dns, etc.. Instead of looking at this like a cloud solution, I would look at it more as a sandboxed solution. To assist those who do k8s development locally, run air-gapped on-premise clusters mainly. Only running the OpenHands Controller locally makes it harder to define best practices, proper LLM usage, etc... across teams To me anyways, that's my favorite thing about OpenHands vs IDE "Agents" like roo/cline πŸ˜† - is I have the ability to put up guardrails and ensure proper practices are taking place. I'm def down to hop on a call and talk a bunch more about this if you need! Just let me know ❀️
w
Hmm yeah I hear you. I'd suggest port-forward but it's not great
πŸ’― 1
b
I'm actually building a kubernetes operator for openhands, it's still in pre-release (README.md to be updated πŸ˜…) but it's interesting what one can do with OpenHands running inside of a kubernetes pod.
πŸ™Œ 1
If you're interested here's the repo: https://github.com/Hathoute/openhands-operator
p
How would you manage web socket complexity in kubernetes? May be use redis ? openhands already supports redis socketio async manager
a
Can you give a specific example @powerful-smartphone-18734 ? I’m not sure what websocket complexity has to do with k8s specifically
p
@ambitious-baker-8365 in terms of scalability.. when openhands app scales to multiple pods in kubernetes.. now you have multiple pods managing websocket connections while many users are working thru openhands ui interface
a
This implementation only handles a single controller pod and isn’t meant for multi-tenancy. (This aligns with OpenHands OSS guidelines) Each conversation spins up a new runtime pod. If you did have multiple users try to utilize the same conversation the OpenHands agent will actually pause (this is built into OpenHands by default) I typically have 5-6 pods running at a single time with no issues (since I always have multiple conversations going on with OpenHands lol)