Skip to content

1.9.0

Choose a tag to compare

@openhands-release-bot openhands-release-bot released this 06 Jul 15:05
14da5aa

1.9.0 (2026-07-06)

What's Changed

Features

  • feat: move existing users into the default org when first auto-added by @ak684 in #14740
  • feat: route unclaimed automation events to the default org on single-org installs by @ak684 in #14745
  • feat: add hide_personal_workspaces flag for org-only OHE installs by @ak684 in #14741
  • feat: make the first signed-in user the default org owner, track the org by is_default flag by @ak684 in #14752
  • feat(acp): add switch_acp_model proxy endpoint for cloud conversations by @simonrosenberg in #14744
  • feat(acp): add model dropdown and credential fields to agent settings page by @simonrosenberg in #14733
  • feat: add validation for secret names to ensure valid env var format by @jpshackelford in #12980
  • feat: auto-accept invitation links instead of the confirm/cancel modal by @ak684 in #14786
  • feat: expose copyable invite links so invitations work without email delivery by @ak684 in #14758
  • feat: accept pending invitations by verified-email match at sign-in by @ak684 in #14759
  • feat: explicit OH_DEPLOYMENT_MODE flag; gate cloud-account CTA to enterprise cloud by @ak684 in #14794
  • feat: OHE multi-model LLM discovery + BYOK gating (proxy discovery, catalogue union, UX) by @ak684 in #14773
  • feat(acp): allow MCP server config for ACP agents by @simonrosenberg in #14613
  • feat: enforce conversation limits by @HeyItsChloe in #14168
  • feat(APP-2136): expose automations menu item for all users by @erisfully in #14688
  • feat(jira-dc): persist and inject per-user OAuth tokens in resolver conversations by @ak684 in #14650
  • feat(jira-dc): share linked OAuth token with eligible conversations by @ak684 in #14697
  • feat: add DynamicRemoteSandboxSpecService backed by runtime-api warm configs by @tofarr in #14849
  • feat: encode harness in chip icon, surface model in chip text by @simonrosenberg in #14510
  • feat: PLTF-2956 parallelize GitHub GraphQL queries in get_suggested_tasks by @aivong-openhands in #14821
  • feat: surface a clear error when a custom sandbox image's agent-server SDK mismatches by @ak684 in #14883
  • feat: PLTF-2968 allow per-deployment resolver macro via OH_RESOLVER_LABEL by @aivong-openhands in #14895
  • feat: Support Slack attachments in agent context by @malhotra5 in #14934
  • feat: add sub-agent task (TaskToolSet) visualizer to the chat UI by @VascoSch92 in #14928
  • feat: Add full Git history user setting by @malhotra5 in #14950
  • feat(enterprise): add admin user-provisioning endpoint by @chuckbutkus in #14864
  • feat: Use interrupt endpoint for agent pause UI by @malhotra5 in #14972
  • feat: add default_sandbox_spec_id to user settings by @tofarr in #14985
  • feat(azure-devops): add resolver mentions + org-level one-click webhook setup by @ak684 in #14991
  • feat(jira-dc): email-mode auto-link, targeted repo lookup, and picker mentions by @ak684 in #15001
  • feat: implement semantic file chunking using tree-sitter AST parsing by @ysinghc in #14699
  • feat(org): Add organization conversation admin dashboard by @saurya in #14846
  • feat(app-server): capture production workspace state — initial snapshot at start + archive before delete (APP-2403) by @simonrosenberg in #14953
  • feat(device-verify): align warning, button color, and add workspace dropdown by @tofarr in #15031
  • feat(enterprise/auth): add super roles via user.role_id with permission fallback by @chuckbutkus in #14937
  • feat(org): expose caller permissions on GET /organizations/{id}/me by @VascoSch92 in #15048
  • feat(api-keys): add optional active window (not_before & expires_at) by @tofarr in #15085
  • feat(app-server): add repo/branch to Laminar trace metadata by @simonrosenberg in #15059
  • feat: add parallel tool calls (tool_concurrency_limit) to agent settings by @VascoSch92 in #14929
  • feat(api-keys): make 'unbound' org scope an explicit, first-class option by @tofarr in #15096
  • feat(jira-dc): fix the integration panel so members get guidance, not the admin setup form by @ak684 in #15040
  • feat: Add dynamic marketplace support for plugin registration by @HeyItsChloe in #14887
  • feat(saas-auth): accept api_key cookie as a fallback credential by @tofarr in #15101

Bug Fixes

Documentation

Maintenance

Other Changes

New Contributors

Full Changelog: 1.8.0...1.9.0


This PR was generated with Release Please. See documentation.