Skip to content

Docs update for Agent Canvas 1.3.0 release #620

Description

@DevinVinson

Summary

Agent Canvas 1.3.0 adds two user-facing features that are not yet documented in the docs site, plus several smaller UI polish items and bug fixes. The two material additions are:

  1. Export a conversation transcript as a Markdown document or self-contained HTML file from the conversation's context menu.
  2. Export an automation as a portable JSON file and import an automation from a JSON file — useful for sharing reusable automations across backends, accounts, or for backing them up in version control.

This issue describes the user-facing changes and proposes the doc work needed before users will discover the new behavior.

Release notes source: https://github.com/OpenHands/agent-canvas/releases/tag/v1.3.0

This issue was drafted by an AI agent (OpenHands) on behalf of a maintainer.

What changed in the release

Pulls from v1.2.1..v1.3.0 on the agent-canvas repo:

Features

  • Export conversation transcript (#1662) — From a conversation's title kebab menu, users can now export a shareable transcript as Markdown (.md) or self-contained HTML (.html). The export modal offers two toggle options:
    • Include tool details (default: on) — shows the full inputs/outputs of tool calls the agent made.
    • Include timestamps (default: on) — annotates each event with its time.
      The transcript is generated client-side from the events the agent-server has, and downloaded as a file named conversation-<id>.md or conversation-<id>.html. No conversation data is sent to a third party to generate the export.
  • Export and import automations as portable JSON (#1660) — Add a new Export action in an automation's kebab menu (alongside the existing Run now, Edit, Download tarball, Delete). Add an Import automation button to the top of the Automations list that opens a file picker. Imports surface a preview modal showing the name, trigger, and prompt before the user confirms. Imported automations land disabled so the user can review and explicitly enable them. The on-disk format is a JSON object with { "version": 1, "kind": "automation", "spec": {...} }, so users can hand-author, diff, or version-control automations.
  • Group workspace folders by parent in the home dropdown (#1368) — UX improvement: subfolders that belong to the same parent (e.g. multiple projects inside one workspace root) are now grouped under a header in the workspace dropdown on the home page. With only one group of workspaces the list still renders flat.

Bug Fixes

  • Hyphenated MCP server names are now allowed (#1620) — Previously only alphanumerics and underscores were accepted; the validator now also accepts -. Names like integrations-hub round-trip as-is to the SDK instead of being normalized to integrations_hub.
  • Files tab populated from git changes on cloud backends (#1628) — The Files list in cloud-backed workspaces now reflects the agent's changes.
  • Diff view stays populated after the agent commits (#1649) — Previously the diff tab could go blank after a successful agent-driven commit; this is now kept in sync.

Maintenance

  • Bumped agent-server SDK to 1.35.0 and the automation engine to 1.1.6 (#1666). No user-visible behavior changes expected — only relevant if docs cite specific SDK versions.

Current doc coverage

Already covered (relevantly)

  • Conversation basics and branching: openhands/usage/agent-canvas/conversations.mdx
  • Automation creation flow (prompt-based vs plugin-based): openhands/usage/automations/creating-automations.mdx
  • Managing automations by asking OpenHands to list/enable/disable/delete: openhands/usage/automations/managing-automations.mdx
  • Automation catalog and recommended flows: openhands/usage/agent-canvas/prebuilt-automations.mdx
  • MCP configuration (server format, transport options, OAuth): openhands/usage/settings/mcp-settings.mdx

Still missing or thin

  • There is no documentation for exporting a conversation transcript. The kebab menu item in the conversation title and the export modal are new in 1.3.0 and not described anywhere.
  • There is no documentation for exporting an automation to JSON or importing an automation from a JSON file. The new Export menu item and the new Import button on the Automations list are not described anywhere.
  • The existing managing-automations.mdx page is written in a chat-style ("ask OpenHands to ...") voice aimed at the legacy CLI path; the in-app Automate view in Agent Canvas is only lightly covered by the "What You Can Do" section of prebuilt-automations.mdx.
  • mcp-settings.mdx does not currently call out the server-name character constraints at all, so the hyphen-allowance fix does not require a doc correction — but it is a behaviour change worth a short note somewhere if we keep a "what changed" changelog.
  • The home-page workspace dropdown grouping is currently undocumented; the setup and first-time-setup pages refer to "Open Workspace" but do not describe the dropdown's behavior.

Proposed doc work

The two big items are net-new user documentation. Three smaller items are minor and may or may not land in the same PR.

1) Add an "Export a Transcript" section to openhands/usage/agent-canvas/conversations.mdx

Append a section to the existing conversations page after the "Run a Goal" section. Suggested coverage:

  • Open the conversation's title kebab menu and pick Export… (label: Export transcript).
  • The Export conversation modal explains that data stays local — nothing is sent to a third party to generate the file.
  • Two format choices: Markdown document (.md) or self-contained HTML — both render in any viewer.
  • The two checkboxes:
    • Include tool details — tool inputs/outputs are included. Default: on.
    • Include timestamps — every event has its time inline. Default: on.
  • The downloaded filename is conversation-<conversation-id>.md or .html.
  • Export loads the full event history first, so very large conversations may take a moment. Cloud backends may not always expose the count check; the export still uses the events the app already has.
  • Link out to the SDK concepts if useful (events, transcripts).

Suggested heading: ## Export a Transcript as Markdown or HTML.

2) Add an "Export and Import Automations" section

Two options for placement — recommend the implementer pick whichever fits the existing site shape better:

Option A (new Agent Canvas automation management page): create openhands/usage/agent-canvas/managing-automations.mdx and add it to docs.json under the Agent Canvas tab. This mirrors how conversations.mdx, agent-profiles.mdx, and plugins.mdx were added for the 1.2.0 release. The page would cover the in-app Automate view: browsing automations, viewing details, enabling/disabling, running manually, exporting, importing. The legacy openhands/usage/automations/managing-automations.mdx stays as-is — that one documents the CLI chat-style workflow.

Option B (extend the existing prebuilt-automations page): add an "Export and import automations" subsection to openhands/usage/agent-canvas/prebuilt-automations.mdx under the existing "What You Can Do" section, since that page already enumerates general Automate-view capabilities.

Suggested content (either placement):

  • Export an automation. Open the automation's kebab menu from the list or detail page and pick Export. The file downloads as <slug>.automation.json (where <slug> is derived from the automation's name) and contains a versioned JSON document with the automation's name, prompt, trigger, schedule, repositories, model, plugins, and notification settings. Useful for sharing, backup, or committing reusable automations to a repo.

  • Show the JSON format. Include a redacted example block of the exported file:

    {
      "version": 1,
      "kind": "automation",
      "spec": {
        "name": "Daily GitHub Summary",
        "trigger": {
          "type": "schedule",
          "schedule": "0 9 * * 1-5",
          "schedule_human": "Weekdays at 9:00 AM",
          "timezone": "America/New_York"
        },
        "enabled": true,
        "prompt": "Summarize the previous day's PRs and post to #engineering.",
        "repository": "openhands/docs",
        "model": "anthropic/claude-sonnet-4-5"
      }
    }
  • Import an automation. At the top of the Automations list, click Import automation. Pick a .json file produced by Export (or hand-authored against the same versioned schema). A preview modal shows the automation's name, trigger, and prompt before the user confirms. The imported automation is created disabled — after importing the user reviews it under Automations, then enables it from the detail page or the kebab menu.

  • Link out to existing automation docs:

If Option A is chosen, also update docs.json to add the new page path under the existing Agent Canvas tab.

3) Optional — MCP server name characters

The MCP settings page does not currently state a name-character constraint, so this fix is not strictly required to update. If we want a brief note for completeness:

  • In openhands/usage/settings/mcp-settings.mdx, under the Stdio Servers configuration block (around the name field), clarify that the name accepts letters, digits, underscores, and hyphens. Or add a single sentence after the field descriptions.

4) Optional — Home workspace dropdown grouping

Add a short sentence to the relevant location:

  • In openhands/usage/agent-canvas/setup.mdx "Confirm It Started" step 4 (Open Workspace) or
  • In openhands/usage/agent-canvas/first-time-setup.mdx describing the home workspace flow.

Suggested wording: "When workspaces are organized under multiple parents (for example several projects inside one parent folder), the dropdown groups the children under their parent's name. With a single parent the list stays flat."

5) Optional — Files tab on cloud backends

The fix improves behavior but no existing doc claims the Files tab does not work on cloud backends, so this can be skipped unless we want to add a small Note to openhands/usage/agent-canvas/backend-setup/cloud.mdx confirming "The Files list is populated for cloud-backed workspaces."

Notes for the implementer

  • v1.3.0 PRs worth referencing inline where helpful: [#1662 transcript export], [#1660 automation export/import], [#1368 workspace grouping], [#1620 hyphen MCP names], [#1628 cloud files], [#1649 diff-after-commit], [#1666 SDK bump].
  • The transcript export uses existing agent-server events; no new agent-server endpoints are involved. The automation export/import uses endpoints on the active backend's automation service.
  • Follow the repo's DOC_STYLE_GUIDE: sentence-case headings in nav, present tense for capabilities, examples under fenced code blocks, internal links as absolute /openhands/usage/... paths.
  • Re-run mint broken-links after editing to confirm no broken cross-page links.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions