From d50a9d622a4a9fbbc1687297196aff04a228edd9 Mon Sep 17 00:00:00 2001 From: neubig Date: Sun, 23 Aug 2026 14:42:42 +0000 Subject: [PATCH 1/2] docs: document automation repository boundaries Clarify ownership across automation, Agent Server, client, and Canvas repositories. Fixes #368 Co-authored-by: openhands --- AGENTS.md | 12 ++++++++++++ README.md | 6 ++++++ 2 files changed, 18 insertions(+) diff --git a/AGENTS.md b/AGENTS.md index 9b081980..51495754 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -2,6 +2,18 @@ Self-contained microservice that schedules and dispatches automation runs inside OpenHands Cloud sandboxes. +## Cross-Repository Boundaries + +This repository owns the Automation Service: automation definitions, cron scheduling, webhooks, run history, dispatch, and sandbox lifecycle orchestration. It manages when work runs and dispatches conversations to the Agent Server/SDK, which owns agent/tool behavior, conversations, workspaces, events, and API endpoints. + +Related repositories have different responsibilities: + +- [`OpenHands/software-agent-sdk`](https://github.com/OpenHands/software-agent-sdk) owns the Python SDK, Agent Server, canonical API, and execution behavior. +- [`OpenHands/typescript-client`](https://github.com/OpenHands/typescript-client) owns the browser-compatible typed client for the Agent Server API. +- [`OpenHands/OpenHands`](https://github.com/OpenHands/OpenHands) owns Agent Canvas UI, frontend integration, and local-stack orchestration. + +If a PR is opened in the wrong repository, explicitly recommend closing and moving it to the repository that owns the change rather than merging it here. PRs must follow the repository's contribution and applicable code-review guidance. + ## Repository Structure ``` diff --git a/README.md b/README.md index 58c3ca2a..52c4404d 100644 --- a/README.md +++ b/README.md @@ -11,6 +11,12 @@ Scheduled and event-driven automation execution for OpenHands Cloud. This servic - **API Key Management**: Per-user API keys for secure automation access - **Run History**: Track automation runs with status and results +## Repository boundaries + +The Automation Service owns automation definitions, cron scheduling, webhooks, run history, dispatch, and sandbox lifecycle orchestration. It manages when work runs; the Agent Server and [`OpenHands/software-agent-sdk`](https://github.com/OpenHands/software-agent-sdk) execute the agent conversations and own agent/tool behavior, workspaces, events, and API endpoints. + +[`OpenHands/typescript-client`](https://github.com/OpenHands/typescript-client) provides typed browser access to the Agent Server API, while [`OpenHands/OpenHands`](https://github.com/OpenHands/OpenHands) owns Agent Canvas UI and frontend integration. If a change belongs in one of those repositories, open the PR there rather than duplicating the logic here. + ## Development ### Prerequisites From 9ff0c671cc84674b5e8f8d1a98eedceaa6382b93 Mon Sep 17 00:00:00 2001 From: neubig Date: Sun, 23 Aug 2026 14:56:39 +0000 Subject: [PATCH 2/2] docs: include extensions repository boundary Keep the cross-repository ownership model consistent with OpenHands extensions. Co-authored-by: openhands --- AGENTS.md | 1 + 1 file changed, 1 insertion(+) diff --git a/AGENTS.md b/AGENTS.md index 51495754..94dfbe3c 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -11,6 +11,7 @@ Related repositories have different responsibilities: - [`OpenHands/software-agent-sdk`](https://github.com/OpenHands/software-agent-sdk) owns the Python SDK, Agent Server, canonical API, and execution behavior. - [`OpenHands/typescript-client`](https://github.com/OpenHands/typescript-client) owns the browser-compatible typed client for the Agent Server API. - [`OpenHands/OpenHands`](https://github.com/OpenHands/OpenHands) owns Agent Canvas UI, frontend integration, and local-stack orchestration. +- [`OpenHands/extensions`](https://github.com/OpenHands/extensions) owns reusable skills, plugins, automations, and integrations. If a PR is opened in the wrong repository, explicitly recommend closing and moving it to the repository that owns the change rather than merging it here. PRs must follow the repository's contribution and applicable code-review guidance.