Skip to content

v1.132.0

Choose a tag to compare

@docker-read-write docker-read-write released this 04 Sep 12:00
· 22 commits to main since this release
9e6d0dd

This release adds OCI artifact signing/encryption for shared agents, live git branch updates in TUI footers, and a range of bug fixes across the OpenAI provider, runtime streaming, RAG toolsets, and schema handling.

What's New

  • Adds --key flag to docker agent share push to sign or encrypt agent YAML in OCI artifacts
  • Forwards encrypted agent config to the Docker models gateway at runtime for verification
  • Adds live git branch updates in TUI footers using an event-driven watcher (supports repositories and linked worktrees)
  • Accepts instruction as a list of strings in config, allowing flavors to append to a base prompt instead of replacing it wholesale
  • Adds config.Requires to audit a config's providers, toolsets, and features; adds WithStrict to reject configs using unenabled providers, toolsets, or features
  • Removes the context usage progress bar (██████░░░░) from the lean TUI footer
  • Adds non-blocking StartableToolSet status check to avoid blocking on long-running toolset starts
  • Adds EmbeddedSnapshot and Fetch helpers to the modelsdev package
  • Recognizes the gpt-6 model family via generation-based parsing, enabling correct Responses API, reasoning effort, and token field handling

Improvements

  • Config now hints at the newer version on type errors, not just unknown keys
  • docker agent share push now pushes HCL configs as resolved, self-contained YAML (previously broken for HCL agents)
  • Exports per-toolset Creator funcs and provider.Adapt for hand-picked registries in lean YAML loading

Bug Fixes

  • Fixes TUI stuck on "Working…" after stream ends by delivering StreamStopped with a bounded blocking send and synthesizing it when the runtime stream closes without one
  • Fixes oneOf/allOf and $defs/$ref not being validated before enabling OpenAI strict mode, which could cause tool schema errors
  • Stops injecting type:object onto anyOf/oneOf/allOf nodes; handles Responses API response.incomplete/failed events
  • Fixes OpenAI provider to degrade gracefully on Chat Completions for gpt-5.4+ when tools+effort is used, and warns on ignored thinking_budget
  • Fixes protect package to require signatures for asymmetric keys, harden key parsing, parse authorized_keys with options, tighten key-kind detection, reject impossible encrypted copies, fail closed on any PEM or OpenSSH marker in a key file, and match OpenSSH key-type markers as plain substrings
  • Fixes pacing of retryable partial-start failures in code-mode composites to prevent burst-retrying on every turn
  • Propagates sustained RAG 5xx/408 indexing failures to the backoff gate (previously only 429 was gated)
  • Fixes stale Fireworks kimi-k2-instruct model reference, replacing it with accounts/fireworks/models/kimi-k3
  • Fixes config handling of a forced reload that still returns 304
  • Fixes external agents to inherit every loader capability option
  • Fixes strict audit to run before any network or environment access
  • Fixes provider to serve OpenAI protocol variants from the "openai" factory
  • Fixes config to audit per-toolset and fork-skill model overrides in Requires
  • Fixes tools to keep config-free toolset packages free of pkg/config
  • Logs raw incomplete/unhandled Responses payloads untruncated; logs response.incomplete at debug level

Technical Changes

  • Splits agent config sources so embedders link only the source types they use
  • Refactors teamloader to probe Docker Model Runner through dmrmodels instead of the full provider
  • Makes JavaScript expansion and code mode opt-in in teamloader
  • Makes TOON output and deferred tools opt-in in teamloader
  • Merges sibling toolsets through tools.Mergeable instead of hardwiring LSP in teamloader
  • Runs harness agents through a registered driver in runtime
  • Adds scheduled models.dev live-catalog drift check in CI
  • Validates DefaultModels against the committed models.dev snapshot in tests
  • Makes TestParseExamples validate against the committed models.dev snapshot only (not live HTTP)

What's Changed

  • docs: update CHANGELOG.md for v1.131.0 by @docker-read-write[bot] in #4143
  • feat: live-update git branch in TUI footers by @rumpl in #4129
  • test(config): validate DefaultModels against the models.dev catalog by @aheritier in #4146
  • feat: accept instruction as a list, let flavors append to it by @dgageot in #4144
  • feat(share): sign or encrypt agent YAML in OCI artifacts with --key by @dgageot in #4148
  • test: make TestParseExamples validate against the committed models.dev snapshot by @aheritier in #4147
  • fix: update stale Fireworks kimi-k2-instruct model reference by @aheritier in #4145
  • fix: pace retryable partial-start failures in code-mode composites by @aheritier in #4150
  • fix(openai): reject oneOf/allOf and validate $defs/$ref before enabling strict mode (#4106) by @aheritier in #4155
  • fix(app): synthesize StreamStopped when the runtime stream closes without one by @aheritier in #4154
  • docs: auto-update for merged PRs (2026-09-04) by @aheritier in #4160
  • feat(tools): non-blocking StartableToolSet status check (#4073) by @aheritier in #4159
  • feat(leantui): remove context usage progress bar by @rumpl in #4157
  • fix(#4097): propagate sustained RAG 5xx/408 indexing failures to backoff gate by @aheritier in #4151
  • fix(runtime): deliver StreamStopped with a bounded blocking send by @aheritier in #4153
  • fix(share): push HCL configs as resolved, self-contained YAML by @dgageot in #4152
  • feat: lean YAML loading with hand-picked registries and strict mode by @dgageot in #4149
  • fix(tools,openai): don't inject type:object onto anyOf nodes; handle Responses API response.incomplete/failed by @simonferquel-clanker in #4161
  • feat: forward the encrypted agent config to the Docker models gateway by @gtardif in #4163
  • fix(openai): recognise the gpt-6 family (Responses API, reasoning effort, token field) by @simonferquel-clanker in #4165

Full Changelog: v1.131.0...v1.132.0