Skip to content

Update docs for new repository boundaries and Agent Canvas architecture #686

Description

@DevinVinson

Summary

The recent repository migration changed the ownership and architecture boundaries that the documentation currently teaches:

  • OpenHands/OpenHands is now the home of Agent Canvas.
  • OpenHands/agent-canvas is an archival pointer; Agent Canvas itself is not deprecated.
  • OpenHands/sandbox-server is the public standalone API and sandbox control plane, with no bundled frontend.
  • OpenHands/enterprise is now private and contains commercial Enterprise development.
  • OpenHands/legacy preserves the prior monorepo snapshot.
  • The previous frontend is deprecated in favor of Agent Canvas.

The intended migration is documented in OpenHands/OpenHands#15396.

We should keep the Agent Canvas name, but portray it consistently as the open-source browser client and control center. Packaged distributions may start Canvas together with Agent Server and Automation Server, but Canvas itself does not execute tools or provide sandbox isolation.

Main problems found

  1. The introduction describes obsolete product and source boundaries.

  2. The contributor guide still documents the former monorepo.

  3. Sandbox Server is missing from the documentation model.

  4. The V1 API is assigned to the wrong product area.

  5. Legacy monorepo architecture remains in current documentation and generated LLM context.

  6. Agent Canvas pages often attribute backend responsibilities to Canvas itself.

  7. Enterprise pages contain deprecated links and conflicting sandbox topology.

  8. The unified documentation site points its global GitHub link to one component repository.

Phase 1 — Correct ownership and product positioning

overview/introduction.mdx

  • Add a concise component/repository map covering Agent Canvas, Agent Server, Automation Server, Sandbox Server, Cloud, Enterprise, and the legacy snapshot.
  • Recast Agent Canvas as the browser client and control center.
  • Describe Cloud as the managed commercial service.
  • Describe Enterprise as commercial capabilities for managed Cloud and licensed self-hosting.
  • Remove the public enterprise/ source claim and ecosystem-wide MIT claim.
  • Link historical Local GUI source to an appropriate pinned location in OpenHands/legacy.

overview/contributing.mdx

  • Replace the former monorepo setup with a contributor-routing table for:
    • Agent Canvas: OpenHands/OpenHands
    • SDK and Agent Server: OpenHands/software-agent-sdk
    • Sandbox Server: OpenHands/sandbox-server
    • CLI: OpenHands/OpenHands-CLI
    • Documentation: OpenHands/docs
    • Evaluations: OpenHands/benchmarks
  • Remove obsolete source paths and the public Enterprise directory restriction.
  • Point each component to its own development, issue, license, and contribution guidance where available.

Other Phase 1 corrections

  • Update sdk/arch/overview.mdx so it no longer implies OpenHands/OpenHands contains the web app, CLI, and Cloud.
  • Update docs.json:
    • Point the global GitHub link to the OpenHands organization or a new source-repositories page.
    • Remove the duplicated integrations-settings navigation entry.
  • Correct high-confidence broken links and outdated public source references discovered during this work.

Phase 2 — Make Agent Canvas architecture explicit

Create a canonical page, proposed as openhands/usage/agent-canvas/architecture.mdx, that distinguishes the current responsibilities:

Browser → Agent Canvas
             ├─ Agent Server → workspace or sandbox → tools/agent execution
             └─ Automation Server → schedules/events/run lifecycle

Optional control plane:
Agent Canvas → Sandbox Server → sandbox → Agent Server

Remote platforms:
Agent Canvas → OpenHands Cloud or OpenHands Enterprise

The page should state two invariants prominently:

  1. Agent Canvas does not execute tools.
  2. Agent Canvas does not itself provide sandbox isolation. Isolation comes from the selected backend, workspace, or sandbox.

Align the terminology and responsibility boundaries in:

Specific changes should:

  • Name Agent Server and Automation Server responsibilities directly.
  • Distinguish the agent-canvas launcher/all-in-one distribution from the Canvas client.
  • Add OpenHands Enterprise as a supported backend/deployment relationship.
  • Verify and correct Docker and Helm UI URLs, including whether /canvas is the canonical path.
  • Make clear which deployment methods bundle services and which merely connect the client to an existing backend.

Reorganize the existing Agent Canvas tab without renaming it:

  1. Overview and architecture
  2. Install Canvas / run the local all-in-one stack
  3. Connect backends
  4. Self-host backend services
  5. Use Canvas
  6. Automations
  7. Contribute and troubleshoot

Decisions to confirm

  • Should Sandbox Server receive its own top-level documentation tab, or live under a broader self-hosting/API section?
  • Is “OpenHands Cloud is the managed delivery of the Enterprise platform” approved product language, or should the Cloud/Enterprise relationship be phrased more loosely?
  • Is Sandbox Server intended as a supported end-user self-hosting surface now, or primarily as an operator/integration-developer component?
  • Should the global GitHub link point to the OpenHands organization page or to a new repository/source map in the docs?

This issue was created by an AI agent (OpenHands) on behalf of the user.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions