[0.24.0] - 2026-07-15
Added
-
extensions: Support an extension API version range instead of strict equality (#275)
Introduces
MIN_SUPPORTED_EXTENSION_API_VERSIONas an explicit floor
alongsideEXTENSION_API_VERSION(the ceiling). The strict-equality
DAYDREAM_EXT_APIcheck is replaced with an inclusive range so a newer
daydream can run an older extension during a rolling upgrade. Absent,
non-integer, or out-of-range declarations raiseExtensionVersionError
naming the declared version and the supported range, anddaydream ext validatereports the range. -
cli: Add
--logflag for CI-friendly raw output (#272)Bypasses the Rich terminal UI and emits raw agent events as plain text to
stdout ([tool:name],[thinking],[cost],[metrics],[result]
prefixes), suitable for CI log capture. Orthogonal to--non-interactive
and--yes; trajectory recording and benchmark scoring are unaffected. -
backends/codex: Expose reasoning-effort control (#271)
Adds
--reasoning-effort(and[tool.daydream]reasoning_effort/
per-phase config override), resolved with the same CLI > file-phase >
file-global precedence as--model, forwarded byCodexBackendas
-c model_reasoning_effort=<value>. No-op for the Claude and Pi backends. -
extensions: Publish the tool-supervision seam as extension API v2 (#268)
Extensions can register one synchronous tool supervisor that returns a
ToolDecisionfor each tool invocation.daydream ext validatereports
whether the supervisor is registered, and the stableitems_filesurface
lets a step afterload-itemsrewrite canonical findings before downstream
consumers read them. -
deep: Add config-driven findings supervision with rule and batched LLM
modes, including drop, edit, hold, and trajectory verdict events (#256) -
agent: Add the built-in rule tool supervisor for denied file paths and
Bash commands, with turn-level veto events and conflict detection against
extension registrations (#257)
Fixed
-
github_app: Refresh installation tokens before expiry (#273)
Long reviews could outlive the one-hour installation token and fail their
final GitHub write with a misleading 401. The server-provided expiry is now
retained and the token refreshed before launchinggh, so non-idempotent
posts are never replayed after failure.