diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..7eb46d79 --- /dev/null +++ b/.gitignore @@ -0,0 +1,6 @@ +# Local checkout of agent-sdk for docs workflows and local testing +agent-sdk/ + +# OS junk +.DS_Store +Thumbs.db diff --git a/agent-sdk b/agent-sdk index 53ed9bb6..74cc24f5 160000 --- a/agent-sdk +++ b/agent-sdk @@ -1 +1 @@ -Subproject commit 53ed9bb631943008d2e15f669656aceb9092d34b +Subproject commit 74cc24f5ad15f9dff21dfaf77840f588718c7b10 diff --git a/docs.json b/docs.json index 376e0a5a..dd4215a0 100644 --- a/docs.json +++ b/docs.json @@ -224,25 +224,29 @@ ] }, { - "tab": "API Reference", + "tab": "OpenHands (Core) API", "openapi": "openapi/openapi.json" + }, + { + "tab": "Agent SDK (API)", + "openapi": "openapi/agent-sdk.json" } ], "global": { "anchors": [ { "anchor": "Company", - "href": "https://www.all-hands.dev/", + "href": "https://openhands.dev/", "icon": "house" }, { "anchor": "Blog", - "href": "https://www.all-hands.dev/blog", + "href": "https://openhands.dev/blog", "icon": "newspaper" }, { "anchor": "OpenHands Cloud", - "href": "https://app.all-hands.dev", + "href": "https://app.openhands.dev", "icon": "cloud" } ] diff --git a/index.mdx b/index.mdx index 64d064d7..7c80789f 100644 --- a/index.mdx +++ b/index.mdx @@ -114,7 +114,7 @@ it can modify code, run commands, browse the web, call APIs, and yes-even copy c OpenHands has an active community on Slack. diff --git a/openapi/openapi.json b/openapi/openapi.json index d073f858..7c808d37 100644 --- a/openapi/openapi.json +++ b/openapi/openapi.json @@ -3931,7 +3931,7 @@ }, "servers": [ { - "url": "https://app.all-hands.dev", + "url": "https://app.openhands.dev", "description": "Production server" }, { diff --git a/openhands/usage/cloud/bitbucket-installation.mdx b/openhands/usage/cloud/bitbucket-installation.mdx index eeca4753..092b3d96 100644 --- a/openhands/usage/cloud/bitbucket-installation.mdx +++ b/openhands/usage/cloud/bitbucket-installation.mdx @@ -6,7 +6,7 @@ description: This guide walks you through the process of installing OpenHands Cl ## Prerequisites -- Signed in to [OpenHands Cloud](https://app.all-hands.dev) with [a Bitbucket account](/openhands/usage/cloud/openhands-cloud). +- Signed in to [OpenHands Cloud](https://app.openhands.dev) with [a Bitbucket account](/openhands/usage/cloud/openhands-cloud). ## Adding Bitbucket Repository Access diff --git a/openhands/usage/cloud/cloud-api.mdx b/openhands/usage/cloud/cloud-api.mdx index 693b8505..e34ec15d 100644 --- a/openhands/usage/cloud/cloud-api.mdx +++ b/openhands/usage/cloud/cloud-api.mdx @@ -5,14 +5,14 @@ description: OpenHands Cloud provides a REST API that allows you to programmatic --- For the available API endpoints, refer to the -[OpenHands API Reference](https://docs.all-hands.dev/api-reference). +[OpenHands API Reference](https://docs.openhands.dev/api-reference). ## Obtaining an API Key To use the OpenHands Cloud API, you'll need to generate an API key: -1. Log in to your [OpenHands Cloud](https://app.all-hands.dev) account. -2. Navigate to the [Settings > API Keys](https://app.all-hands.dev/settings/api-keys) page. +1. Log in to your [OpenHands Cloud](https://app.openhands.dev) account. +2. Navigate to the [Settings > API Keys](https://app.openhands.dev/settings/api-keys) page. 3. Click `Create API Key`. 4. Give your key a descriptive name (Example: "Development" or "Production") and select `Create`. 5. Copy the generated API key and store it securely. It will only be shown once. @@ -27,7 +27,7 @@ To start a new conversation with OpenHands to perform a task, ```bash - curl -X POST "https://app.all-hands.dev/api/conversations" \ + curl -X POST "https://app.openhands.dev/api/conversations" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ @@ -41,7 +41,7 @@ To start a new conversation with OpenHands to perform a task, import requests api_key = "YOUR_API_KEY" - url = "https://app.all-hands.dev/api/conversations" + url = "https://app.openhands.dev/api/conversations" headers = { "Authorization": f"Bearer {api_key}", @@ -56,14 +56,14 @@ To start a new conversation with OpenHands to perform a task, response = requests.post(url, headers=headers, json=data) conversation = response.json() - print(f"Conversation Link: https://app.all-hands.dev/conversations/{conversation['conversation_id']}") + print(f"Conversation Link: https://app.openhands.dev/conversations/{conversation['conversation_id']}") print(f"Status: {conversation['status']}") ``` ```typescript const apiKey = "YOUR_API_KEY"; - const url = "https://app.all-hands.dev/api/conversations"; + const url = "https://app.openhands.dev/api/conversations"; const headers = { "Authorization": `Bearer ${apiKey}`, @@ -85,7 +85,7 @@ To start a new conversation with OpenHands to perform a task, const conversation = await response.json(); - console.log(`Conversation Link: https://app.all-hands.dev/conversations/${conversation.id}`); + console.log(`Conversation Link: https://app.openhands.dev/conversations/${conversation.id}`); console.log(`Status: ${conversation.status}`); return conversation; diff --git a/openhands/usage/cloud/github-installation.mdx b/openhands/usage/cloud/github-installation.mdx index ce4a5de9..1a7dc489 100644 --- a/openhands/usage/cloud/github-installation.mdx +++ b/openhands/usage/cloud/github-installation.mdx @@ -6,7 +6,7 @@ description: This guide walks you through the process of installing OpenHands Cl ## Prerequisites -- Signed in to [OpenHands Cloud](https://app.all-hands.dev) with [a GitHub account](/openhands/usage/cloud/openhands-cloud). +- Signed in to [OpenHands Cloud](https://app.openhands.dev) with [a GitHub account](/openhands/usage/cloud/openhands-cloud). ## Adding GitHub Repository Access diff --git a/openhands/usage/cloud/gitlab-installation.mdx b/openhands/usage/cloud/gitlab-installation.mdx index f1807dcf..38ae0ed8 100644 --- a/openhands/usage/cloud/gitlab-installation.mdx +++ b/openhands/usage/cloud/gitlab-installation.mdx @@ -6,7 +6,7 @@ description: This guide walks you through the process of installing OpenHands Cl ## Prerequisites -- Signed in to [OpenHands Cloud](https://app.all-hands.dev) with [a GitLab account](/openhands/usage/cloud/openhands-cloud). +- Signed in to [OpenHands Cloud](https://app.openhands.dev) with [a GitLab account](/openhands/usage/cloud/openhands-cloud). ## Adding GitLab Repository Access diff --git a/openhands/usage/cloud/openhands-cloud.mdx b/openhands/usage/cloud/openhands-cloud.mdx index 022ecbd4..7276b037 100644 --- a/openhands/usage/cloud/openhands-cloud.mdx +++ b/openhands/usage/cloud/openhands-cloud.mdx @@ -6,7 +6,7 @@ description: Getting started with OpenHands Cloud. ## Accessing OpenHands Cloud OpenHands Cloud is the hosted cloud version of OpenHands. To get started with OpenHands Cloud, -visit [app.all-hands.dev](https://app.all-hands.dev). +visit [app.all-hands.dev](https://app.openhands.dev). You'll be prompted to connect with your GitHub, GitLab or Bitbucket account: diff --git a/openhands/usage/cloud/pro-subscription.mdx b/openhands/usage/cloud/pro-subscription.mdx index 6027f181..91e0b13b 100644 --- a/openhands/usage/cloud/pro-subscription.mdx +++ b/openhands/usage/cloud/pro-subscription.mdx @@ -47,4 +47,4 @@ The following applies to **both** the Pay-as-you-go and Pro subscription: | :---- | :---- | | Do I have access to multiple models via the OpenHands LLM provider? | ✅ Yes

[*See models and pricing*](/openhands/usage/llms/openhands-llms#pricing) | | Can I generate and refresh OpenHands LLM API keys? | ✅ Yes | -| How much am I charged for LLM usage when I use the OpenHands LLM provider in other AI coding tools? | **No markup** \- pay 1x API prices
[*See models and pricing*](/openhands/usage/llms/openhands-llms#pricing)

*Usage is deducted from your OpenHands Cloud credit balance.*

*The OpenHands LLM provider is available to all OpenHands Cloud users, and LLM usage is billed at-cost (zero markup). Use these models with OpenHands CLI, running OpenHands on your own, or even other AI coding agents\! [Learn more.](https://www.all-hands.dev/blog/access-state-of-the-art-llm-models-at-cost-via-openhands-gui-and-cli)* | +| How much am I charged for LLM usage when I use the OpenHands LLM provider in other AI coding tools? | **No markup** \- pay 1x API prices
[*See models and pricing*](/openhands/usage/llms/openhands-llms#pricing)

*Usage is deducted from your OpenHands Cloud credit balance.*

*The OpenHands LLM provider is available to all OpenHands Cloud users, and LLM usage is billed at-cost (zero markup). Use these models with OpenHands CLI, running OpenHands on your own, or even other AI coding agents\! [Learn more.](https://openhands.dev/blog/access-state-of-the-art-llm-models-at-cost-via-openhands-gui-and-cli)* | diff --git a/openhands/usage/cloud/project-management/jira-dc-integration.mdx b/openhands/usage/cloud/project-management/jira-dc-integration.mdx index c7ce4c06..d290805a 100644 --- a/openhands/usage/cloud/project-management/jira-dc-integration.mdx +++ b/openhands/usage/cloud/project-management/jira-dc-integration.mdx @@ -43,7 +43,7 @@ description: Complete guide for setting up Jira Data Center integration with Ope - Go to **Administration** > **System** > **WebHooks** - Click **Create a WebHook** - **Name**: `OpenHands Cloud Integration` - - **URL**: `https://app.all-hands.dev/integration/jira-dc/events` + - **URL**: `https://app.openhands.dev/integration/jira-dc/events` - Set a suitable webhook secret - **Issue related events**: Select the following: - Issue updated @@ -59,7 +59,7 @@ description: Complete guide for setting up Jira Data Center integration with Ope ### Step 1: Log in to OpenHands Cloud 1. **Navigate and Authenticate** - - Go to [OpenHands Cloud](https://app.all-hands.dev/) + - Go to [OpenHands Cloud](https://app.openhands.dev/) - Sign in with your Git provider (GitHub, GitLab, or BitBucket) - **Important:** Make sure you're signing in with the same Git provider account that contains the repositories you want the OpenHands agent to work on. diff --git a/openhands/usage/cloud/project-management/jira-integration.mdx b/openhands/usage/cloud/project-management/jira-integration.mdx index 6cdd567d..498104d2 100644 --- a/openhands/usage/cloud/project-management/jira-integration.mdx +++ b/openhands/usage/cloud/project-management/jira-integration.mdx @@ -47,7 +47,7 @@ description: Complete guide for setting up Jira Cloud integration with OpenHands 2. **Configure Webhook** - **Name**: `OpenHands Cloud Integration` - **Status**: Enabled - - **URL**: `https://app.all-hands.dev/integration/jira/events` + - **URL**: `https://app.openhands.dev/integration/jira/events` - **Issue related events**: Select the following: - Issue updated - Comment created @@ -62,7 +62,7 @@ description: Complete guide for setting up Jira Cloud integration with OpenHands ### Step 1: Log in to OpenHands Cloud 1. **Navigate and Authenticate** - - Go to [OpenHands Cloud](https://app.all-hands.dev/) + - Go to [OpenHands Cloud](https://app.openhands.dev/) - Sign in with your Git provider (GitHub, GitLab, or BitBucket) - **Important:** Make sure you're signing in with the same Git provider account that contains the repositories you want the OpenHands agent to work on. diff --git a/openhands/usage/cloud/project-management/linear-integration.mdx b/openhands/usage/cloud/project-management/linear-integration.mdx index 4887df50..386dde8b 100644 --- a/openhands/usage/cloud/project-management/linear-integration.mdx +++ b/openhands/usage/cloud/project-management/linear-integration.mdx @@ -48,7 +48,7 @@ description: Complete guide for setting up Linear integration with OpenHands Clo 2. **Configure Webhook** - **Label**: `OpenHands Cloud Integration` - - **URL**: `https://app.all-hands.dev/integration/linear/events` + - **URL**: `https://app.openhands.dev/integration/linear/events` - **Resource types**: Select: - `Comment` - For comment events - `Issue` - For issue updates (label changes) @@ -63,7 +63,7 @@ description: Complete guide for setting up Linear integration with OpenHands Clo ### Step 1: Log in to OpenHands Cloud 1. **Navigate and Authenticate** - - Go to [OpenHands Cloud](https://app.all-hands.dev/) + - Go to [OpenHands Cloud](https://app.openhands.dev/) - Sign in with your Git provider (GitHub, GitLab, or BitBucket) - **Important:** Make sure you're signing in with the same Git provider account that contains the repositories you want the OpenHands agent to work on. diff --git a/openhands/usage/cloud/slack-installation.mdx b/openhands/usage/cloud/slack-installation.mdx index 8ed86325..29e8ca93 100644 --- a/openhands/usage/cloud/slack-installation.mdx +++ b/openhands/usage/cloud/slack-installation.mdx @@ -41,7 +41,7 @@ validate critical information independently. **Make sure your Slack workspace admin/owner has installed OpenHands Slack App first.** Every user in the Slack workspace (including admins/owners) must link their OpenHands Cloud account to the OpenHands Slack App. To do this: - 1. Visit the [Settings > Integrations](https://app.all-hands.dev/settings/integrations) page in OpenHands Cloud. + 1. Visit the [Settings > Integrations](https://app.openhands.dev/settings/integrations) page in OpenHands Cloud. 2. Click `Install OpenHands Slack App`. 3. In the top right corner, select the workspace to install the OpenHands Slack app. 4. Review permissions and click allow. diff --git a/openhands/usage/llms/llms.mdx b/openhands/usage/llms/llms.mdx index ea09443f..2471d92b 100644 --- a/openhands/usage/llms/llms.mdx +++ b/openhands/usage/llms/llms.mdx @@ -43,8 +43,8 @@ limits and monitor usage. ### Local / Self-Hosted Models -- [mistralai/devstral-small](https://www.all-hands.dev/blog/devstral-a-new-state-of-the-art-open-model-for-coding-agents) (20 May 2025) -- also available through [OpenRouter](https://openrouter.ai/mistralai/devstral-small:free) -- [all-hands/openhands-lm-32b-v0.1](https://www.all-hands.dev/blog/introducing-openhands-lm-32b----a-strong-open-coding-agent-model) (31 March 2025) -- also available through [OpenRouter](https://openrouter.ai/all-hands/openhands-lm-32b-v0.1) +- [mistralai/devstral-small](https://openhands.dev/blog/devstral-a-new-state-of-the-art-open-model-for-coding-agents) (20 May 2025) -- also available through [OpenRouter](https://openrouter.ai/mistralai/devstral-small:free) +- [all-hands/openhands-lm-32b-v0.1](https://openhands.dev/blog/introducing-openhands-lm-32b----a-strong-open-coding-agent-model) (31 March 2025) -- also available through [OpenRouter](https://openrouter.ai/all-hands/openhands-lm-32b-v0.1) ### Known Issues diff --git a/openhands/usage/llms/local-llms.mdx b/openhands/usage/llms/local-llms.mdx index 08fbdbeb..575ac2a1 100644 --- a/openhands/usage/llms/local-llms.mdx +++ b/openhands/usage/llms/local-llms.mdx @@ -7,7 +7,7 @@ description: When using a Local LLM, OpenHands may have limited functionality. I - 2025/05/21: We collaborated with Mistral AI and released [Devstral Small](https://mistral.ai/news/devstral) that achieves [46.8% on SWE-Bench Verified](https://github.com/SWE-bench/experiments/pull/228)! - 2025/03/31: We released an open model OpenHands LM 32B v0.1 that achieves 37.1% on SWE-Bench Verified -([blog](https://www.all-hands.dev/blog/introducing-openhands-lm-32b----a-strong-open-coding-agent-model), [model](https://huggingface.co/all-hands/openhands-lm-32b-v0.1)). +([blog](https://openhands.dev/blog/introducing-openhands-lm-32b----a-strong-open-coding-agent-model), [model](https://huggingface.co/all-hands/openhands-lm-32b-v0.1)). ## Quickstart: Running OpenHands with a Local LLM using LM Studio diff --git a/openhands/usage/quick-start.mdx b/openhands/usage/quick-start.mdx index 196ae5a3..1209f5ac 100644 --- a/openhands/usage/quick-start.mdx +++ b/openhands/usage/quick-start.mdx @@ -8,7 +8,7 @@ icon: rocket The easiest way to get started with OpenHands is on OpenHands Cloud, which comes with $20 in free credits for new users. - To get started with OpenHands Cloud, visit [app.all-hands.dev](https://app.all-hands.dev). + To get started with OpenHands Cloud, visit [app.all-hands.dev](https://app.openhands.dev). For more information see [getting started with OpenHands Cloud.](/openhands/usage/cloud/openhands-cloud) diff --git a/openhands/usage/run-openhands/local-setup.mdx b/openhands/usage/run-openhands/local-setup.mdx index b665184b..73c2a4a4 100644 --- a/openhands/usage/run-openhands/local-setup.mdx +++ b/openhands/usage/run-openhands/local-setup.mdx @@ -153,7 +153,7 @@ OpenHands requires an API key to access most language models. Here's how to get -1. [Log in to OpenHands Cloud](https://app.all-hands.dev). +1. [Log in to OpenHands Cloud](https://app.openhands.dev). 2. Go to the Settings page and navigate to the `API Keys` tab. 3. Copy your `LLM API Key`. diff --git a/openhands/usage/troubleshooting/feedback.mdx b/openhands/usage/troubleshooting/feedback.mdx index e47ebdc3..b02c9858 100644 --- a/openhands/usage/troubleshooting/feedback.mdx +++ b/openhands/usage/troubleshooting/feedback.mdx @@ -26,7 +26,7 @@ However, a link with a unique ID will still be created that you can share public ### Who collects and stores the data? -The data is collected and stored by [All Hands AI](https://all-hands.dev), a company founded by OpenHands maintainers to support and improve OpenHands. +The data is collected and stored by [All Hands AI](https://openhands.dev), a company founded by OpenHands maintainers to support and improve OpenHands. ### How will public data be released? diff --git a/sdk/arch/llms/index.mdx b/sdk/arch/llms/index.mdx index 23de5cfc..0a93cbea 100644 --- a/sdk/arch/llms/index.mdx +++ b/sdk/arch/llms/index.mdx @@ -49,7 +49,7 @@ from openhands.sdk import LLM llm = LLM( model="anthropic/claude-sonnet-4.1", api_key=SecretStr("sk-ant-123"), - service_id="primary", + usage_id="primary", temperature=0.1, timeout=120, ) @@ -57,7 +57,7 @@ llm = LLM( Key concepts: -- **`service_id`** identifies an LLM configuration when storing it in a registry +- **`usage_id`** identifies an LLM configuration when storing it in a registry or persisting it between runs. - **Retry settings** (`num_retries`, `retry_min_wait`, etc.) apply uniformly to all providers through LiteLLM. diff --git a/sdk/getting-started.mdx b/sdk/getting-started.mdx index 8c3a4faa..e169e435 100644 --- a/sdk/getting-started.mdx +++ b/sdk/getting-started.mdx @@ -22,7 +22,7 @@ The SDK requires an LLM API key from any [LiteLLM-supported provider](https://do - Sign up for [OpenHands Cloud](https://app.all-hands.dev) and get an API key from the [API keys page](https://app.all-hands.dev/settings/api-keys). This gives you access to recommended models with no markup. + Sign up for [OpenHands Cloud](https://app.openhands.dev) and get an API key from the [API keys page](https://app.openhands.dev/settings/api-keys). This gives you access to recommended models with no markup. [Learn more →](/openhands/usage/llms/openhands-llms) @@ -155,9 +155,9 @@ ls examples/01_standalone_sdk/ ### Explore Documentation -- **[SDK Architecture](/sdk/architecture/overview)** - Deep dive into components -- **[Tool Documentation](/sdk/architecture/tools/overview)** - Available tools -- **[Workspace Options](/sdk/architecture/workspace/overview)** - Execution environments +- **[SDK Architecture](/sdk/arch/sdk/overview)** - Deep dive into components +- **[Tool Documentation](/sdk/arch/tools/overview)** - Available tools +- **[Workspace Options](/sdk/arch/workspace/overview)** - Execution environments ### Build Custom Solutions @@ -167,6 +167,6 @@ ls examples/01_standalone_sdk/ ### Get Help -- **[Slack Community](https://all-hands.dev/joinslack)** - Ask questions and share projects +- **[Slack Community](https://openhands.dev/joinslack)** - Ask questions and share projects - **[GitHub Issues](https://github.com/All-Hands-AI/agent-sdk/issues)** - Report bugs or request features - **[Example Directory](https://github.com/All-Hands-AI/agent-sdk/tree/main/examples)** - Browse working code samples diff --git a/sdk/guides/custom-tools.mdx b/sdk/guides/custom-tools.mdx index 6ab533df..8440e8cf 100644 --- a/sdk/guides/custom-tools.mdx +++ b/sdk/guides/custom-tools.mdx @@ -308,5 +308,5 @@ Create custom tools when you need to: ## Next Steps -- **[Tool System Architecture](/sdk/architecture/sdk/tool)** - Deep dive into the tool system +- **[Tool System Architecture](/sdk/arch/sdk/tool)** - Deep dive into the tool system - **[Model Context Protocol (MCP) Integration](/sdk/guides/mcp)** - Use Model Context Protocol servers diff --git a/sdk/guides/mcp.mdx b/sdk/guides/mcp.mdx index 7f813855..ff9c615e 100644 --- a/sdk/guides/mcp.mdx +++ b/sdk/guides/mcp.mdx @@ -89,7 +89,7 @@ conversation = Conversation( logger.info("Starting conversation with MCP integration...") conversation.send_message( - "Read https://github.com/All-Hands-AI/OpenHands and write 3 facts " + "Read https://github.com/OpenHands/OpenHands and write 3 facts " "about the project into FACTS.txt." ) conversation.run() @@ -242,6 +242,6 @@ mcp_config = { ## Next Steps -- **[MCP Architecture](/sdk/architecture/sdk/mcp)** - Technical details and internals +- **[MCP Architecture](/sdk/arch/sdk/mcp)** - Technical details and internals - **[Custom Tools](/sdk/guides/custom-tools)** - Creating native SDK tools - **[Security Analyzer](/sdk/guides/security-analyzer)** - Securing tool usage diff --git a/sdk/index.mdx b/sdk/index.mdx index ec41cdcf..dfae86f3 100644 --- a/sdk/index.mdx +++ b/sdk/index.mdx @@ -61,7 +61,7 @@ Other SDKs (e.g. [Claude Code](https://github.com/anthropics/claude-agent-sdk-py Install the SDK, run your first agent, and explore the guides. @@ -72,7 +72,7 @@ Other SDKs (e.g. [Claude Code](https://github.com/anthropics/claude-agent-sdk-py Understand the SDK's architecture: agents, tools, workspaces, and more. @@ -112,7 +112,7 @@ Other SDKs (e.g. [Claude Code](https://github.com/anthropics/claude-agent-sdk-py Connect with the OpenHands community on Slack. diff --git a/success-stories/index.mdx b/success-stories/index.mdx index afc71093..b0c7d867 100644 --- a/success-stories/index.mdx +++ b/success-stories/index.mdx @@ -82,7 +82,7 @@ https://buriti-emau.github.io/Mapa-UFU/ ## Tavily adapter helps solve persistent debugging issue -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. +Big congratulations to the new [Tavily adapter](https://openhands.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. 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! @@ -153,7 +153,7 @@ This shows how OpenHands can quickly diagnose and fix AWS infrastructure issues ## OpenHands builds Chrome extension for GitHub integration -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! +I asked OpenHands to write a Chrome extension based on our [OpenHands Cloud API](https://docs.openhands.dev/modules/usage/cloud/cloud-api). Once installed, you can now easily launch an OpenHands cloud session from your GitHub webpage/PR! This demonstrates OpenHands' ability to create browser extensions and integrate with external APIs, enabling seamless workflows between GitHub and OpenHands Cloud.