Skip to content

Release v1.3.0

Choose a tag to compare

@xingyaoww xingyaoww released this 25 Nov 21:05
29443c4

Highlights

  • Support for Opus 4.5

  • Improved reliability across the execution pipeline
    More predictable webhook timing, stronger conversation start behavior, and refined FastAPI union handling.

  • Better LLM interaction and observability
    WebSocket-based LLM log streaming, reasoning-first messages, cleaner serialization, and a simple ask_agent API.

  • Stronger evaluation workflow
    CI eval job, improved stability, and aligned labeling tiers.

  • Greater extensibility and structure
    Predefined subagent support, event source filtering, new task status types, and import-dependency rule enforcement.

What's Changed

  • Release 1.2.0 by @xingyaoww in #1191
  • Fix webhook timer reset behavior for more predictable delivery by @tofarr in #1192
  • fix: sanitize @OpenHands only in GitHub comments (backend) by @YakshithK in #1020
  • fix: use user-specific cache directory for Jinja2 templates by @LuneZ99 in #1200
  • Rename ExecuteBashAction/ExecuteBashObservation to TerminalAction/TerminalObservation by @xingyaoww in #1193
  • Fix datetime.utcnow() deprecation warning by @malhotra5 in #1203
  • Add force_string_serializer as LLM class argument by @xingyaoww in #1204
  • APP-156 Set skill default trigger to None by @tofarr in #1212
  • Rename BrowserNavigateAction and BrowserTypeAction actions by @ryanhoangt in #1213
  • Fix: more resilient conversation start by @tofarr in #1216
  • Revert "Rename BrowserNavigateAction and BrowserTypeAction actions" by @xingyaoww in #1225
  • Prefix MCP tool action models to avoid kind collisions by @ryanhoangt in #1217
  • Add source parameter to /search endpoint for event filtering by @malhotra5 in #1224
  • feat: add eval job that runs on CI by @simonrosenberg in #1167
  • Send reasoning first in the assistant message by @enyst in #1238
  • Remove weekly typing improvements workflow by @simonrosenberg in #1243
  • fix: incorrect file download API endpoint in remote_workspace_mixin by @hieptl in #1245
  • docs: Add comments about system prompt customization options by @xingyaoww in #1220
  • Fix run examples workflow failed on schedule run & use parallel execution with pytest by @ryanhoangt in #1229
  • feat: fix eval workflow by @simonrosenberg in #1241
  • Fix FastAPI discriminated union patch to be called consistently by @tofarr in #1256
  • Revert "Fix FastAPI discriminated union patch to be called consistently" by @xingyaoww in #1257
  • Fastapi discriminated union patch2 by @tofarr in #1258
  • feat: allow delegator to spawn pre-defined subagents by @simonrosenberg in #1223
  • Stream LLM logs and stats updates via WebSocket for RemoteConversation by @xingyaoww in #1159
  • Add import dependency rules enforcement by @xingyaoww in #1259
  • Investigate Claude model names: remove unsupported dotted variants (fixes #1260) by @enyst in #1261
  • Add TaskTrackerStatusType type alias for task tracker status by @xingyaoww in #1263
  • Align eval labels with benchmarks build tiers (1, 50, 200) by @simonrosenberg in #1254
  • Claude Opus 4.5 as a reasoning model with custom effort param by @juanmichelini in #1250
  • Add ask_agent method to conversation classes for simple LLM completions by @malhotra5 in #1227
  • Fix: Condenser LLM should not pass extra_body (Fixes #1252) by @enyst in #1266

Full Changelog: v1.2.0...v1.3.0