v1.45.0
What's Changed
- feat: move TypeScript client into monorepo by @neubig in #4702
- feat(agent-server): add INSTALL_CAPABILITIES build arg by @simonrosenberg in #4698
- docs: refresh AGENTS.md guidance by @all-hands-bot in #4789
- ci: enforce SDK and TypeScript client version parity by @neubig in #4779
- fix(sdk): mask model output in the durable MessageEvent by @VascoSch92 in #4783
- refactor(agent-server): remove the VNC/desktop stack entirely by @simonrosenberg in #4792
- fix(sdk): match nested repo paths by ancestry, not string prefix by @alanhuangyoo in #4767
- fix(tools): mask secrets in every tool's observation at the shared chokepoint by @VascoSch92 in #4788
- fix(agent-server): keep the idle timer alive during streamed completions by @VascoSch92 in #4790
- refactor(agent-server,ci): remove overdue org_config field and catch this class of gap in check_deprecations.py by @simonrosenberg in #4795
- fix(sdk): remove secrets from subprocess env by @smolpaws in #4801
- feat: add ACP-less agent-server image fallback by @simonrosenberg in #4805
- feat(observability): allow selecting Laminar instruments by @Shimada666 in #4434
- fix(sdk): persist events before publishing them, return the assigned seq by @VascoSch92 in #4806
- fix(llm): allow security_risk param on read-only tools like finish by @sideeffffect in #4153
- ci: remove the endpoint-audit PR comment, report via the job summary by @simonrosenberg in #4825
- feat(acp): centralize ACP npm installation metadata by @simonrosenberg in #4832
- feat(agent-server): add /sockets/session/{id} with a non-Event envelope by @VascoSch92 in #4807
- test(acp): live conformance + model-acceptance probes for built-in providers (#4830 P0) by @simonrosenberg in #4834
- ci(typescript-client): run integration tests against the branch's agent-server by @VascoSch92 in #4844
- feat(acp): add Kimi Code, plus the hardening the other provider PRs share by @ysntony in #4714
- Add claude-sonnet-5 to PROMPT_CACHE_MODELS by @swabeinvader in #4043
- feat(sdk): register Pi as a built-in ACP provider by @Deep070203 in #4419
- fix(sdk): require fastmcp>=3.2.0 so expired MCP OAuth tokens refresh by @VascoSch92 in #4857
- feat(acp): add OpenCode as a built-in ACP provider by @simonrosenberg in #4827
- fix(sdk): pick up a user message that arrives during an async step by @VascoSch92 in #4194
- fix(agent-server): propagate load_memory preference to all launch paths by @vnktadithya in #4566
- perf(sdk): make EventLog.append cost flat against conversation length by @VascoSch92 in #4697
- fix: respect OH_PERSISTENCE_DIR for all ~/.openhands paths by @jpshackelford in #4476
- fix(ci): align ready-for-dev gates with OpenHands pipefail-safe approach by @neubig in #4607
- feat: add GPT-6 Astra model support by @neubig in #4861
- test: demonstrate cancellation can't free blocking sync code (2 failing tests) by @neubig in #4599
- fix(tests): stop pinning LLM capability tests to upstream metadata by @simonrosenberg in #4879
- Add newly released LLM models to verified lists by @all-hands-bot in #4865
- feat(plugin): map client extensions under the dev.openhands namespace by @VascoSch92 in #4496
- Release v1.45.0 by @all-hands-bot in #4869
New Contributors
- @alanhuangyoo made their first contribution in #4767
- @sideeffffect made their first contribution in #4153
- @ysntony made their first contribution in #4714
- @swabeinvader made their first contribution in #4043
- @Deep070203 made their first contribution in #4419
Full Changelog: v1.44.1...v1.45.0