@dreb/coding-agent 2.23.0 → 2.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -34,10 +34,14 @@
34
34
  - `/copy` now opens a multi-select message picker instead of copying only the last assistant message. All message types are listed (user, assistant, tool results, bash executions, branch/compaction summaries, custom). Navigate with arrow keys, toggle selection with Space, select-all with Ctrl+A, confirm with Enter. Copies source text without wrap-induced line breaks. Status message distinguishes between native clipboard and OSC 52 (SSH/mosh) delivery. New `app.clipboard.copyMessages` keybinding (Ctrl+Shift+C) opens the picker directly. ([#217](https://github.com/aebrer/dreb/issues/217))
35
35
  - Added TUI handling for `stream_retry` events: stale streaming components are removed, a retry spinner with attempt count is shown, and `agent_end` unconditionally clears retry state. ([#230](https://github.com/aebrer/dreb/issues/230))
36
36
  - Added `stream_retry` to the extension event surface so extensions can observe and react to provider stream retries. ([#230](https://github.com/aebrer/dreb/issues/230))
37
+ - Added TUI handling for `length_retry` events: when a response is truncated at the model's token limit, stale streaming components are removed and a retry spinner shows "Response truncated, retrying with larger token budget" with attempt count. Reuses the same retry-state cleanup as `stream_retry`. ([#240](https://github.com/aebrer/dreb/issues/240))
38
+ - Added `length_retry` to the extension event surface so extensions can observe and react to token-budget truncation retries. Carries `attempt`, `maxAttempts`, `previousMaxTokens`, `nextMaxTokens`, and an optional `discardedPartial`. ([#240](https://github.com/aebrer/dreb/issues/240))
37
39
  - Added `/dream` memory consolidation command — backs up all memory directories, merges duplicates, scans session history for unrecorded patterns, prunes stale entries, and validates links. Uses tar.gz archives with retention policy (keep last 10), lockfile-based concurrency protection, and a 10-step LLM pipeline with explicit backup verification. Configurable archive path via `dream.archivePath` setting. ([#99](https://github.com/aebrer/dreb/issues/99))
38
40
 
39
41
  ### Fixed
40
42
 
43
+ - Fixed subagents silently returning empty results when a child's final response was truncated at the model's token limit. The subagent spawn handler now inspects the last assistant message's `stopReason`: a clean exit with no output now surfaces a descriptive error (truncation, loud truncation failure, or "completed with no output") instead of a silent empty string, and a clean exit with partial output now flags the truncation via `errorMessage` while preserving the partial text — covering both raw `length` truncation and the loud `error` stopReason produced when the core agent loop exhausts its length retries. The parent renders these errors even on a clean (exit code 0) exit. ([#240](https://github.com/aebrer/dreb/issues/240))
44
+
41
45
  - Fixed ghost whitespace appearing after the TUI content shrinks (e.g., closing the copy selector, filtering slash-command autocomplete, editor line deletion). The differential renderer now triggers a full screen redraw when content shrinks instead of clearing extra lines individually, which some terminals would not collapse. ([#217](https://github.com/aebrer/dreb/issues/217))
42
46
 
43
47
  - Added missing `ajv` direct dependency; previously relied on transitive install via `@mariozechner/pi-ai` which broke standalone installs ([#2252](https://github.com/badlogic/pi-mono/issues/2252))