1.17.0 (2026-09-09)
<!-- Release notes generated using configuration in .github/release.yml at main -->What's Changed
Features
- feat: show manifest-declared value statements on dashboard cards and rows by @hieptl in https://github.com/OpenHands/OpenHands/pull/16921
- feat: Make automation run UI task-outcome aware by @malhotra5 in https://github.com/OpenHands/OpenHands/pull/16937
- feat: enable LLM provider connections on cloud by @juanmichelini in https://github.com/OpenHands/OpenHands/pull/16757
- feat: allow editing a custom cron expression from the edit-automation modal by @VascoSch92 in https://github.com/OpenHands/OpenHands/pull/16964
- feat: unified cloud settings entrypoint for Agent Canvas by @jpelletier1 in https://github.com/OpenHands/OpenHands/pull/16883
- feat: add local Agent Canvas Planner support by @VascoSch92 in https://github.com/OpenHands/OpenHands/pull/16178
- feat(conversation-panel): add conversation tags and filtering by @georgeglarson in https://github.com/OpenHands/OpenHands/pull/16600
- feat: split automation permissions into view/manage with creator escape hatch by @tofarr in https://github.com/OpenHands/OpenHands/pull/17105
- feat: display message timestamps on hover by @LosAveRoad in https://github.com/OpenHands/OpenHands/pull/17123
- feat: support generic custom automation manifests in Canvas by @malhotra5 in https://github.com/OpenHands/OpenHands/pull/17129
Bug Fixes
-
fix(chat): re-derive active profile stamp from event history on reload by @georgeglarson in https://github.com/OpenHands/OpenHands/pull/16439
-
fix: Add --disable-telemetry runtime flag for self-hosted canvas by @lilagrc in https://github.com/OpenHands/OpenHands/pull/16908
-
fix(ci): accept h2 readiness sections by @neubig in https://github.com/OpenHands/OpenHands/pull/17011
-
fix(automations): flip the kebab menu above the trigger when it would clip by @VascoSch92 in https://github.com/OpenHands/OpenHands/pull/16926
-
fix(settings): disable save when edits are reverted by @ShashwatXD in https://github.com/OpenHands/OpenHands/pull/16120
-
fix(desktop): parse window-open URLs instead of prefix-matching localhost by @simpleqt in https://github.com/OpenHands/OpenHands/pull/16961
-
fix: scope plugin queries to the active backend by @alanhuangyoo in https://github.com/OpenHands/OpenHands/pull/16891
-
fix: scope the settings nav to Application when locked to Cloud by @hieptl in https://github.com/OpenHands/OpenHands/pull/17045
-
fix: hide Cloud reconnect controls in cookie-auth (OHE-hosted) Canvas by @hieptl in https://github.com/OpenHands/OpenHands/pull/17044
-
fix(api): auto-load workspace hooks on conversation start by @aashikantkumar in https://github.com/OpenHands/OpenHands/pull/16971
-
fix(utils): correctly count diff stats for hunk lines starting with -- or ++ (#16979) by @Prakhar00001 in https://github.com/OpenHands/OpenHands/pull/17071
-
fix(deps): patch DOMPurify sanitization bypass by @lzhan011 in https://github.com/OpenHands/OpenHands/pull/17060
-
fix: pass the active org when opening cloud settings links by @hieptl in https://github.com/OpenHands/OpenHands/pull/17066
-
fix: list a cloud conversation own skills in show available skills by @hieptl in https://github.com/OpenHands/OpenHands/pull/17067
-
fix(i18n): use i18next placeholders in budget usage format by @PranshulSoni in https://github.com/OpenHands/OpenHands/pull/16903
-
fix(utils): percent-encode branch names in provider branch URLs by @marmar9615-cloud in https://github.com/OpenHands/OpenHands/pull/17107
-
fix(test): keep ProgressEvent resolvable after jsdom teardown by @lzhan011 in https://github.com/OpenHands/OpenHands/pull/17116
-
fix: preserve base_url for subscription LLM configs by @neubig in https://github.com/OpenHands/OpenHands/pull/16089
-
fix: join local Canvas Extension source and path for install by @lorenzozanee in https://github.com/OpenHands/OpenHands/pull/17072
-
fix(canvas-extensions): show the install failure reason by @VascoSch92 in https://github.com/OpenHands/OpenHands/pull/17120
-
fix: keep confirmation prompt visible outside grouped events by @juanmichelini in https://github.com/OpenHands/OpenHands/pull/17134
Documentation
- docs: strengthen code review evidence policy by @neubig in https://github.com/OpenHands/OpenHands/pull/17089
- docs: remove duplicate OpenHands/extensions bullet in DEVELOPMENT.md by @imitater-dou in https://github.com/OpenHands/OpenHands/pull/17136
- docs: correct OH_*_GIT_REF defaults and merge duplicated bullet in DEVELOPMENT.md by @simpleqt in https://github.com/OpenHands/OpenHands/pull/17167
Maintenance
- chore: Bump agent server and automation defaults by @malhotra5 in https://github.com/OpenHands/OpenHands/pull/16970
- chore: Bump automation default to 1.10.0 by @malhotra5 in https://github.com/OpenHands/OpenHands/pull/17086
- refactor: rename Canvas Extensions to Apps by @DevinVinson in https://github.com/OpenHands/OpenHands/pull/17064
- chore: bump automation default to 1.11.0 and agent-server to 1.45.0 by @hieptl in https://github.com/OpenHands/OpenHands/pull/17203
- refactor: infer issue readiness type from body instead of label by @all-hands-bot in https://github.com/OpenHands/OpenHands/pull/16955
- ci: run e2e suites after merge to main by @smolpaws in https://github.com/OpenHands/OpenHands/pull/16944
- chore: use OpenHands project name consistently by @smolpaws in https://github.com/OpenHands/OpenHands/pull/16939
- chore: require Node 24 for agent canvas by @georgeglarson in https://github.com/OpenHands/OpenHands/pull/17009
- refactor: use React Query for automation SDK version by @enyst in https://github.com/OpenHands/OpenHands/pull/16982
- chore: bump SDK to 1.46.0 and automation to 1.11.1 by @malhotra5 in https://github.com/OpenHands/OpenHands/pull/17238
New Contributors
- @simpleqt made their first contribution in https://github.com/OpenHands/OpenHands/pull/16961