This release brings several bug fixes and new features including configurable interrupt confirmation for the Esc key, ranged file reads, and improvements to safety classification and filesystem path handling.
What's New
- Adds configurable interrupt confirmation for the Esc key: choose
always(default, shows a dialog) ordouble-tap(requires pressing Esc twice) to interrupt a running stream - Adds optional
lineandlimitarguments toread_filefor ranged file reads, enabling partial reads of large files - Adds
--container-runtimeflag to evaluations, allowing an alternative Docker-compatible CLI (e.g. Podman) to be used for image builds and container runs - Broadens the destructive-command taxonomy in the shell safety classifier to cover additional command shapes (e.g. bare
docker rm <id>) - Adds fail-fast detection of foreign-OS paths (e.g. WSL-style paths on Windows) in filesystem tools, with an explanation of path resolution
- Adds signed-commit checking (Rules 4 and 5) to the
triage-prsskill, flagging unsigned or invalid commits and managing thestatus/needs-signed-commitslabel
Bug Fixes
- Fixes SSE stream truncation when tool results exceed 64 KiB, which previously caused runs to silently stop
- Fixes the
--models-gatewayflag being ignored when creating the DMR provider client, causing failures in environments where the gateway is the only reachable path - Fixes cache entries not expiring when the current time exactly equals their expiry deadline, preventing stale reuse on coarse-resolution clocks (e.g. Windows)
- Fixes self-update failure by reading and validating the GitHub release asset SHA-256 digest before downloading, instead of looking for a missing
checksums.txt
Technical Changes
- Replaces
arduino/setup-taskwith the officialgo-task/setup-taskaction in CI workflows - Grants
actions: writepermission to the PR review workflow, restoring PR review runs that were failing during workflow validation - Refreshes the embedded models.dev catalog snapshot
What's Changed
- fix(skills): expire cache entries at deadline by @Sayt-0 in #3896
- fix(ci): grant PR reviewer actions write permission by @Sayt-0 in #3898
- feat(eval): support configurable container runtime by @Sayt-0 in #3894
- chore: replace arduino/setup-task with go-task/setup-task by @aheritier in #3892
- fix(filesystem): support ranged file reads by @Sayt-0 in #3895
- fix(selfupdate): verify GitHub release asset digests by @Sayt-0 in #3897
- fix(dmr): honor the models gateway when creating the client by @aboullaite in #3875
- docs: update CHANGELOG.md for v1.120.0 by @docker-read-write[bot] in #3891
- feat: flag unsigned commits in triage-prs skill by @aheritier in #3903
- docs: auto-update for merged PRs (2026-08-04) by @aheritier in #3902
- fix(runtime): don't truncate the SSE stream on tool results >64 KiB by @EronWright in #3883
- chore: refresh embedded models.dev snapshot by @github-actions[bot] in #3888
- feat(safety): broaden destructive-command taxonomy by @trungutt in #3907
- feat(filesystem): fail fast on foreign-OS paths and explain path resolution by @trungutt in #3908
- fix(runtime): guard nested agent delegation by @Sayt-0 in #3905
- feat(tui): configurable interrupt confirmation for Esc key by @pkimtani in #3899
New Contributors
- @aboullaite made their first contribution in #3875
- @pkimtani made their first contribution in #3899
Full Changelog: v1.120.0...v1.121.0