Skip to content

Commit 910bdcc

Browse files
committed
Merge branch 'main' into kevin
2 parents 8bc8f52 + 848f692 commit 910bdcc

82 files changed

Lines changed: 1325 additions & 379 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

README.md

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -192,15 +192,14 @@ works best, but you have [many options](https://docs.all-hands.dev/usage/llms).
192192

193193
## 💡 Other ways to run OpenHands
194194

195-
> [!CAUTION]
195+
> [!WARNING]
196196
> OpenHands is meant to be run by a single user on their local workstation.
197197
> It is not appropriate for multi-tenant deployments where multiple users share the same instance. There is no built-in authentication, isolation, or scalability.
198198
>
199-
> If you're interested in running OpenHands in a multi-tenant environment, please
200-
> [get in touch with us](https://docs.google.com/forms/d/e/1FAIpQLSet3VbGaz8z32gW9Wm-Grl4jpt5WgMXPgJ4EDPVmCETCBpJtQ/viewform)
201-
> for advanced deployment options.
199+
> If you're interested in running OpenHands in a multi-tenant environment, check out the source-available, commercially-licensed
200+
> [OpenHands Cloud Helm Chart](https://github.com/all-Hands-AI/OpenHands-cloud)
202201
203-
You can also [connect OpenHands to your local filesystem](https://docs.all-hands.dev/usage/runtimes/docker#connecting-to-your-filesystem),
202+
You can [connect OpenHands to your local filesystem](https://docs.all-hands.dev/usage/runtimes/docker#connecting-to-your-filesystem),
204203
run OpenHands in a scriptable [headless mode](https://docs.all-hands.dev/usage/how-to/headless-mode),
205204
interact with it via a [friendly CLI](https://docs.all-hands.dev/usage/how-to/cli-mode),
206205
or run it on tagged issues with [a github action](https://docs.all-hands.dev/usage/how-to/github-action).

config.template.toml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -203,6 +203,23 @@ model = "gpt-4o"
203203
# https://github.com/All-Hands-AI/OpenHands/pull/4711
204204
#native_tool_calling = None
205205

206+
# Safety settings for models that support them (e.g., Mistral AI, Gemini)
207+
# Example for Mistral AI:
208+
# safety_settings = [
209+
# { "category" = "hate", "threshold" = "low" },
210+
# { "category" = "harassment", "threshold" = "low" },
211+
# { "category" = "sexual", "threshold" = "low" },
212+
# { "category" = "dangerous", "threshold" = "low" }
213+
# ]
214+
#
215+
# Example for Gemini:
216+
# safety_settings = [
217+
# { "category" = "HARM_CATEGORY_HARASSMENT", "threshold" = "BLOCK_NONE" },
218+
# { "category" = "HARM_CATEGORY_HATE_SPEECH", "threshold" = "BLOCK_NONE" },
219+
# { "category" = "HARM_CATEGORY_SEXUALLY_EXPLICIT", "threshold" = "BLOCK_NONE" },
220+
# { "category" = "HARM_CATEGORY_DANGEROUS_CONTENT", "threshold" = "BLOCK_NONE" }
221+
# ]
222+
#safety_settings = []
206223

207224

208225
[llm.gpt4o-mini]

dev_config/python/.pre-commit-config.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@ repos:
33
rev: v5.0.0
44
hooks:
55
- id: trailing-whitespace
6-
exclude: docs/modules/python
6+
exclude: ^(docs/|modules/|python/|openhands-ui/)
77
- id: end-of-file-fixer
8-
exclude: docs/modules/python
8+
exclude: ^(docs/|modules/|python/|openhands-ui/)
99
- id: check-yaml
1010
args: ["--allow-multiple-documents"]
1111
- id: debug-statements

docs/docs.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,12 @@
151151
}
152152
]
153153
},
154+
{
155+
"tab": "Success Stories",
156+
"pages": [
157+
"success-stories/index"
158+
]
159+
},
154160
{
155161
"tab": "API Reference",
156162
"openapi": "/openapi.json"

docs/success-stories/index.mdx

Lines changed: 217 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,217 @@
1+
---
2+
title: "Success Stories"
3+
description: "Real-world examples of what you can achieve with OpenHands"
4+
---
5+
6+
Discover how developers and teams are using OpenHands to automate their software development workflows. From quick fixes to complex projects, see what's possible with AI-powered development assistance.
7+
8+
Check out the [#success-stories](https://www.linen.dev/s/openhands/c/success-stories) channel on our Slack for more!
9+
10+
<Update label="2025-06-13 OpenHands helps frontline support" description="@Joe Pelletier">
11+
12+
## One of the cool things about OpenHands, and especially the Slack Integration, is the ability to empower folks who are on the ‘front lines’ with customers.
13+
14+
For example, often times Support and Customer Success teams will field bug reports, doc questions, and other ‘nits’ from customers. They tend to have few options to deal with this, other than file a feedback ticket with product teams and hope it gets prioritized in an upcoming sprint.
15+
16+
Instead, with tools like OpenHands and the Slack integration, they can request OpenHands to make fixes proactively and then have someone on the engineering team (like a lead engineer, a merge engineer, or even technical product manager) review the PR and approve it — thus reducing the cycle time for ‘quick wins’ from weeks to just a few hours.
17+
18+
Here's how we do that with the OpenHands project:
19+
20+
<iframe
21+
width="560"
22+
height="560"
23+
src="https://www.linen.dev/s/openhands/t/29118545/seems-mcp-config-from-config-toml-is-being-overwritten-hence#629f8e2b-cde8-427e-920c-390557a06cc9"
24+
frameborder="0"
25+
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
26+
allowfullscreen
27+
></iframe>
28+
29+
[Original Slack thread](https://www.linen.dev/s/openhands/t/29124350/one-of-the-cool-things-about-openhands-and-especially-the-sl#25029f37-7b0d-4535-9187-83b3e06a4011)
30+
31+
</Update>
32+
33+
34+
<Update label="2025-06-13 Ask OpenHands to show me some love" description="@Graham Neubig">
35+
36+
## Asked openhands to “show me some love” and...
37+
38+
Asked openhands to “show me some love” and it coded up this app for me, actually kinda genuinely feel loved
39+
40+
<video
41+
controls
42+
autoplay
43+
className="w-full aspect-video"
44+
src="/success-stories/stories/2025-06-13-show-love/v1.mp4"
45+
></video>
46+
47+
[Original Slack thread](https://www.linen.dev/s/openhands/t/29100731/asked-openhands-to-show-me-some-love-and-it-coded-up-this-ap#1e08af6b-b7d5-4167-8a53-17e6806555e0)
48+
49+
</Update>
50+
51+
<Update label="2025-06-11 OpenHands does 100% of my infra IAM research for me" description="@Xingyao Wang">
52+
53+
## Now, OpenHands does 100% of my infra IAM research for me
54+
55+
Got an IAM error on GCP? Send a screenshot to OH... and it just works!!!
56+
Can't imagine going back to the early days without OH: I'd spend an entire afternoon figuring how to get IAM right
57+
58+
[Original Slack thread](https://www.linen.dev/s/openhands/t/29100732/now-openhands-does-100-of-my-infra-iam-research-for-me-sweat#20482a73-4e2e-4edd-b6d1-c9e8442fccd1)
59+
60+
![](/success-stories/stories/2025-06-11-infra-iam/s1.png)
61+
![](/success-stories/stories/2025-06-11-infra-iam/s2.png)
62+
63+
</Update>
64+
65+
<Update label="2025-06-08 OpenHands builds an interactive map for me" description="@Rodrigo Argenton Freire (ODLab)">
66+
67+
## Very simple example, but baby steps....
68+
69+
I am a professor of architecture and urban design. We built, me and some students, an interactive map prototype to help visitors and new students to find important places in the campus. Considering that we lack a lot of knowledge in programming, that was really nice to build and a smooth process.
70+
We first created the main components with all-hands and then adjusted some details locally. Definitely, saved us a lot of time and money.
71+
That's a prototype but we will have all the info by tuesday.
72+
https://buriti-emau.github.io/Mapa-UFU/
73+
74+
[Original Slack thread](https://www.linen.dev/s/openhands/t/29100736/very-simple-example-but-baby-steps-i-am-a-professor-of-archi#8f2e3f3f-44e6-44ea-b9a8-d53487470179)
75+
76+
![](/success-stories/stories/2025-06-08-map/s1.png)
77+
78+
</Update>
79+
80+
81+
<Update label="2025-06-06 Web Search Saves the Day" description="@Ian Walker">
82+
83+
## Tavily adapter helps solve persistent debugging issue
84+
85+
Big congratulations to the new [Tavily adapter](https://www.all-hands.dev/blog/building-a-provably-versatile-agent)... OpenHands and I have been beavering away at a Lightstreamer client library for most of this week but were getting a persistent (and unhelpful) "unexpected error" from the server.
86+
87+
Coming back to the problem today, after trying several unsuccessful fixes prompted by me, OH decided all by itself to search the web, and found the cause of the problem (of course it was simply CRLF line endings...). I was on the verge of giving up - good thing OH has more stamina than me!
88+
89+
This demonstrates how OpenHands' web search capabilities can help solve debugging issues that would otherwise require extensive manual research.
90+
91+
<iframe
92+
width="560"
93+
height="560"
94+
src="https://www.linen.dev/s/openhands/t/29100737/big-congratulations-to-the-new-tavily-adapter-openhands-and-#87b027e5-188b-425e-8aa9-719dcb4929f4"
95+
title="YouTube video player"
96+
frameborder="0"
97+
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
98+
allowfullscreen
99+
></iframe>
100+
101+
102+
[Original Slack thread](https://www.linen.dev/s/openhands/t/29100737/big-congratulations-to-the-new-tavily-adapter-openhands-and-#76f1fb26-6ef7-4709-b9ea-fb99105e47e4)
103+
104+
</Update>
105+
106+
<Update label="2025-06-05 OpenHands updates my personal website for a new paper" description="@Xingyao Wang">
107+
108+
## I asked OpenHands to update my personal website for the "OpenHands Versa" paper.
109+
110+
It is an extremely trivial task: You just need to browse to arxiv, copy the author names, format them for BibTeX, and then modify the papers.bib file. But now I'm getting way too lazy to even open my IDE and actually do this one-file change!
111+
112+
[Original Tweet/X thread](https://x.com/xingyaow_/status/1930796287919542410)
113+
114+
[Original Slack thread](https://www.linen.dev/s/openhands/t/29100738/i-asked-openhands-to-update-my-personal-website-for-the-open#f0324022-b12b-4d34-b12b-bdbc43823f69)
115+
116+
</Update>
117+
118+
<Update label="2025-06-02 OpenHands makes an animated gif of swe-bench verified scores over time" description="@Graham Neubig">
119+
120+
## I asked OpenHands to make an animated gif of swe-bench verified scores over time.
121+
122+
It took a bit of prompting but ended up looking pretty nice I think
123+
124+
<video width="560" height="315" autoPlay loop muted src="/success-stories/stories/2025-06-02-swebench-score/s1.mp4"></video>
125+
126+
[Original Slack thread](https://www.linen.dev/s/openhands/t/29100744/i-asked-openhands-to-make-an-animated-gif-of-swe-bench-verif#fb3b82c9-6222-4311-b97b-b2ac1cfe6dff)
127+
128+
</Update>
129+
130+
<Update label="2025-05-30 AWS Troubleshooting" description="@Graham Neubig">
131+
132+
## Quick AWS security group fix
133+
134+
I really don't like trying to fix issues with AWS, especially security groups and other finicky things like this. But I started up an instance and wasn't able to ssh in. So I asked OpenHands:
135+
136+
> Currently, the following ssh command is timing out:
137+
>
138+
> $ ssh -i gneubig.pem ubuntu@XXX.us-east-2.compute.amazonaws.com
139+
> ssh: connect to host XXX.us-east-2.compute.amazonaws.com port 22: Operation timed out
140+
>
141+
> Use the provided AWS credentials to take a look at i-XXX and examine why
142+
143+
And 2 minutes later I was able to SSH in!
144+
145+
This shows how OpenHands can quickly diagnose and fix AWS infrastructure issues that would normally require manual investigation.
146+
147+
[Original Slack thread](https://www.linen.dev/s/openhands/t/29100747/i-really-don-t-like-trying-to-fix-issues-with-aws-especially#d92a66d2-3bc1-4467-9d09-dc983004d083)
148+
149+
</Update>
150+
151+
152+
<Update label="2025-05-04 Chrome Extension Development" description="@Xingyao Wang">
153+
154+
## OpenHands builds Chrome extension for GitHub integration
155+
156+
I asked OpenHands to write a Chrome extension based on our [OpenHands Cloud API](https://docs.all-hands.dev/modules/usage/cloud/cloud-api). Once installed, you can now easily launch an OpenHands cloud session from your GitHub webpage/PR!
157+
158+
This demonstrates OpenHands' ability to create browser extensions and integrate with external APIs, enabling seamless workflows between GitHub and OpenHands Cloud.
159+
160+
![Chrome extension](/success-stories/stories/2025-05-04-chrome-extension/s1.png)
161+
![Chrome extension](/success-stories/stories/2025-05-04-chrome-extension/s2.png)
162+
163+
[GitHub Repository](https://github.com/xingyaoww/openhands-chrome-extension)
164+
165+
[Original Slack thread](https://www.linen.dev/s/openhands/t/29100755/i-asked-openhands-to-write-a-chrome-extension-based-on-our-h#88f14b7f-f8ff-40a6-83c2-bd64e95924c5)
166+
167+
</Update>
168+
169+
170+
<Update label="2025-04-11 Visual UI Testing" description="@Xingyao Wang">
171+
172+
## OpenHands tests UI automatically with visual browsing
173+
174+
Thanks to visual browsing -- OpenHands can actually test some simple UI by serving the website, clicking the button in the browser and looking at screenshots now!
175+
176+
Prompt is just:
177+
```
178+
I want to create a Hello World app in Javascript that:
179+
* Displays Hello World in the middle.
180+
* Has a button that when clicked, changes the greeting with a bouncing animation to fun versions of Hello.
181+
* Has a counter for how many times the button has been clicked.
182+
* Has another button that changes the app's background color.
183+
```
184+
185+
Eager-to-work Sonnet 3.7 will test stuff for you without you asking!
186+
187+
This showcases OpenHands' visual browsing capabilities, enabling it to create, serve, and automatically test web applications through actual browser interactions and screenshot analysis.
188+
189+
![Visual UI testing](/success-stories/stories/2025-04-11-visual-ui/s1.png)
190+
191+
[Original Slack thread](https://www.linen.dev/s/openhands/t/29100764/thanks-to-u07k0p3bdb9-s-visual-browsing-openhands-can-actual#21beb9bc-1a04-4272-87e9-4d3e3b9925e7)
192+
193+
</Update>
194+
195+
<Update label="2025-03-07 Proactive Error Handling" description="@Graham Neubig">
196+
197+
## OpenHands fixes crashes before you notice them
198+
199+
Interesting story, I asked OpenHands to start an app on port 12000, it showed up on the app pane. I started using the app, and then it crashed... But because it crashed in OpenHands, OpenHands immediately saw the error message and started fixing the problem without me having to do anything. It was already fixing the problem before I even realized what was going wrong.
200+
201+
This demonstrates OpenHands' proactive monitoring capabilities - it doesn't just execute commands, but actively watches for errors and begins remediation automatically, often faster than human reaction time.
202+
203+
</Update>
204+
205+
<Update label="2024-12-03 Creative Design Acceleration" description="@Rohit Malhotra">
206+
207+
## Pair programming for interactive design projects
208+
209+
Used OpenHands as a pair programmer to do heavy lifting for a creative/interactive design project in p5js.
210+
211+
I usually take around 2 days for high fidelity interactions (planning strategy + writing code + circling back with designer), did this in around 5hrs instead with the designer watching curiously the entire time.
212+
213+
This showcases how OpenHands can accelerate creative and interactive design workflows, reducing development time by 75% while maintaining high quality output.
214+
215+
[Original Tweet](https://x.com/rohit_malh5/status/1863995531657425225)
216+
217+
</Update>
306 KB
Loading
144 KB
Loading
279 KB
Loading
80.7 KB
Binary file not shown.
1.57 MB
Loading

0 commit comments

Comments
 (0)