1883 Commits
Author SHA1 Message Date
Ramiz Wachtler fe219d7f8d feat(coding-agent): format bash tool durations to support hours, minutes, seconds (#9742) 2026-09-18 12:25:15 +02:00
Ramiz Wachtler 46c9de402b feat(coding-agent): add event handler unsubscribe (#9630) 2026-09-17 21:44:26 +02:00
Armin Ronacher 16292398af fix(coding-agent): send forced system prompts without recording them
Remove SystemMessage.replace. A prompt forced from before_agent_start is a rendering
of the current prompt for the run, not conversation state: persisting it as a
replacing system message wrote the full prompt and tool list on every change,
lost the structured sections while forced, and disabled mid-conversation system
messages for the rest of the session once a replacement existed.

The transcript now always records section patches. AgentSession wraps
transformContext and, when a forced prompt is active, collapses the system
messages into one head carrying the forced text and the current tools. Providers
receive the same request as before; nothing is persisted and the projection ends
with the run.

The evals harness validated the without_docs variant from the transcript, which
relied on the persisted replacement. Its transform extension now records the
prompt it forced and validates that instead.
2026-09-17 20:02:23 +02:00
David Brailovsky 7811394112 docs(coding-agent): update changelog 2026-09-17 17:51:25 +00:00
David Brailovsky a8b3dd1998 fix(coding-agent): fail signal-terminated shell commands
Map signal termination to conventional nonzero exit codes and reject null exit codes from custom shell operations while preserving partial output.

fixes #9577
2026-09-17 17:01:48 +02:00
Armin Ronacher e4c75a7322 fix(coding-agent): replace the system prompt when a handler forces it
Add SystemMessage.replace: replaying a system message with the flag discards the
accumulated prompt content, sections, and tools before applying it, and providers
collapse the transcript into one leading system message whenever a later message
replaces it.

A forced prompt from before_agent_start is opaque, so it is persisted as a replace
message holding the text in content with no sections (the agent loop fills in the
full tool set). Leaving force mode persists another replace message with the
structured sections. Previously the forced prompt became a preamble section patch,
so models with native mid-conversation system messages kept the original prompt
as their leading system prompt and received the forced one as a later update.
2026-09-16 23:35:01 +02:00
Christian Klotz 509ee2bd0b fix(coding-agent): fail closed on user bash hook errors (#9662)
* fix(coding-agent): fail closed on user bash hook errors

Prevent failed execution-routing hooks from falling back to the local shell.

Fixes #9068

* fix(coding-agent): validate user bash hook results

* docs(coding-agent): clarify user bash result semantics

* docs(coding-agent): streamline user bash semantics

* fix(coding-agent): strengthen user bash regressions

* docs(coding-agent): clarify user bash breaking change
2026-09-16 17:21:17 +01:00
David Brailovsky b03a367a4f feat(coding-agent): allow configuring Anthropic fallback models
Allow models.json overrides to replace or disable server-side fallback metadata.

Fixes #9294
2026-09-16 10:50:24 +02:00
Armin Ronacher 60e7e76bd7 fix(coding-agent): surface clipboard backend failures
closes #9618
2026-09-16 01:29:52 +02:00
Armin Ronacher 3349e1db18 fix(coding-agent): reject unverified local clipboard writes
fixes #9618
2026-09-16 00:08:02 +02:00
Vegard Stikbakke 46bde88a1c feat(coding-agent): support per-model compaction token budgets
Closes #8133
2026-09-10 08:37:20 +02:00
David Brailovsky acaa253cc8 fix(coding-agent): validate extension tool parameter schemas
Reject malformed extension tools during registration instead of allowing them to break provider request serialization.

Fixes #9300
2026-09-09 12:15:18 +02:00
David Brailovsky c37b0e03b5 fix: cap agent retry backoff
Add a configurable 60-second default cap for assistant and summarization retry delays across coding-agent and the agent harness.

Fixes #8826
2026-09-09 11:54:56 +02:00
David Brailovsky faa9863cb8 fix(coding-agent): run input handlers for queued messages
Apply input extension transforms and handling to direct steering and follow-up messages while preserving their input source.

Fixes #8718
2026-09-08 17:18:37 +02:00
Vegard Stikbakke f53ac11351 fix(coding-agent): collapse empty fullscreen footers
closes #8919
2026-09-08 14:16:18 +02:00
Vegard Stikbakke c1d4c80111 fix(coding-agent): embed all session status spinners in the editor border 2026-09-07 15:31:00 +02:00
Ramiz Wachtler 1f78cea7ad fix(coding-agent): allow extensions to stream from custom providers (#9272)
- fixes #8964
2026-09-07 12:16:12 +02:00
Armin Ronacher 9767ba275f fix(coding-agent): select Radius models after catalog discovery 2026-09-06 00:30:17 +02:00
Armin Ronacher fcff255b00 feat(coding-agent): prefer strict sampling for built-in tools by default 2026-09-05 23:54:20 +02:00
Armin Ronacher da840b6216 Add [Unreleased] section for next cycle 2026-09-05 13:54:52 +02:00
Armin Ronacher d981de1229 Release v0.85.1 2026-09-05 13:54:46 +02:00
Armin Ronacher cce6553987 docs(tui): document Alt-wheel scrolling in unreleased changelogs 2026-09-05 13:40:22 +02:00
Armin Ronacher 1a46b923d7 docs: audit changelogs for v0.85.1 2026-09-05 13:32:44 +02:00
Armin Ronacher 1382777ed8 fix(coding-agent): keep remote harness dependencies development-only
Separate stable and development entrypoints, exclude remote harness code from distributions, and verify isolated consumer installs before release. Fixes #9132.
2026-09-05 12:45:04 +02:00
Ramiz Wachtler 92d8e2d17d fix(coding-agent): selector save keybindings (#9149)
- fixes #8797
2026-09-04 18:06:21 +02:00
Armin Ronacher dd7e816b57 Add [Unreleased] section for next cycle 2026-09-04 11:57:42 +02:00
Armin Ronacher 107d79f110 Release v0.85.0 2026-09-04 11:57:38 +02:00
Armin Ronacher 1148f7958c docs: audit unreleased changelogs 2026-09-04 11:28:00 +02:00
Armin Ronacher 2d41163332 fix(tui): make fullscreen transcript search scale linearly 2026-09-04 10:22:04 +02:00
Cristina Poncela Cubeiro 457ae8c79c feat(tui): alt mode scrollbar but prettier (#8801) 2026-09-04 00:05:47 +02:00
Armin Ronacher 79680533c6 feat(tui): add clickable jump-to-end indicator to fullscreen transcript
Adds TuiAltScreenOptions.scrollToEndIndicator, composited onto the last
row of the follow-end primary scroll view while it is scrolled up. A left
press on the label resumes end-following. Minimal rebuild of #9080.
2026-09-03 22:54:59 +02:00
Cristina Poncela Cubeiro 1d9787c11f feat(tui): prettier Working... spinner (#8799) 2026-09-03 20:34:04 +02:00
Vegard Stikbakke e44d75c20a fix(coding-agent): raise branch summary output cap
closes #8845
2026-09-03 15:14:51 +02:00
Cristina Poncela Cubeiro 7d399e7be8 feat(tui): search improvements (#8800) 2026-09-03 15:09:51 +02:00
David Brailovsky 8c08d0645a Merge remote-tracking branch 'origin/main' into dev 2026-09-03 07:58:51 +00:00
David Brailovsky bea67d90d1 fix(coding-agent): cancel compaction on session abort
Include compaction and branch summarization in session idle tracking so abort waits for cancellation to settle.\n\nfixes #8920
2026-09-03 09:41:55 +02:00
Mario Zechner 4e69b0c280 feat(ai): preserve Anthropic per-turn thinking effort
Route eligible OpenRouter Claude models through the native Messages API and surface provider thinking-drop diagnostics.
2026-09-02 21:39:29 +02:00
David Brailovsky e583b290a6 fix: remove misleading write byte counts
The write tools reported UTF-16 code units as bytes. Remove the count from success messages instead of scanning content again.

Closes #8979
2026-09-02 15:06:06 +02:00
Mario Zechner 7123410467 Merge branch 'main' into dev 2026-09-02 12:21:58 +02:00
Vegard Stikbakke 23842b1e69 fix(coding-agent): tunnel proxied HTTP requests
closes #8134
2026-09-02 09:23:23 +02:00
David Brailovsky 487af8e168 Merge remote-tracking branch 'origin/main' into dev 2026-09-01 14:48:57 +00:00
Ramiz Wachtler 3fc3ef532b fix(coding-agent): keep theme markers visible (#8950)
- follow up of missed commits for feat(coding-agent): adjust TUI selections in thinking-mode, models and scoped models #8900

* fix(coding-agent): keep fixed theme marker visible

- distinguish the saved theme from the preview cursor
- align the automatic option and update coverage

* fix(coding-agent): keep automatic theme marker visible

- mark configured light and dark themes during preview
- reuse shared theme formatting and update coverage
2026-09-01 12:01:50 +02:00
Ramiz Wachtler f2a6227899 feat(coding-agent): adjust TUI selections in thinking-mode, models and scoped models (#8900)
* fix(coding-agent): keep selector status markers visible

- place status markers before labels
- strike unavailable scoped models and update tests

* fix(coding-agent): align scoped model toggle behavior

- show checks for the all-enabled state
- toggle individual models consistently and add coverage

* docs(coding-agent): add changelog entry

* fix(coding-agent): keep trust marker visible while browsing

- move the saved marker before the trust option
- update tests and changelog

* fix(coding-agent): mark per-model thinking overrides

- add the leading level marker
- update tests and changelog
2026-09-01 11:02:53 +02:00
David Brailovsky 58ea6c0ba5 Merge remote-tracking branch 'origin/main' into dev 2026-08-29 08:21:44 +00:00
Armin Ronacher 853a80d26c Add [Unreleased] section for next cycle 2026-08-28 23:56:06 +02:00
Armin Ronacher b79e4cc834 Release v0.84.4 2026-08-28 23:56:03 +02:00
Armin Ronacher bba6be972e docs: audit unreleased changelogs 2026-08-28 23:51:36 +02:00
David Brailovsky 56700d42ed fix(coding-agent): compact before post-tool model requests (#8782)
Run next-turn preparation only when the agent loop continues, allowing threshold compaction before the next provider request. Restore interactive progress when the same run resumes.

Closes #6879

Important to notice:
this changes when prepareNextTurn & prepareNextTurnWithContext are invoked:
the now run only when a next turn actually happens, and after shouldStopAfterTurn.
2026-08-28 13:40:59 +02:00
Cristina Poncela Cubeiro 758a0ee9b7 Merge branch 'main' into dev
# Conflicts:
#	packages/agent/CHANGELOG.md
#	packages/ai/scripts/generate-models.ts
#	packages/ai/src/providers/cloudflare-ai-gateway.ts
#	packages/ai/test/zai-coding-plan-models.test.ts
#	packages/coding-agent/src/modes/interactive/interactive-mode.ts
#	packages/tui/src/tui-alt-screen.ts
2026-08-28 13:19:43 +02:00
Cristina Poncela Cubeiro 4e49492999 feat(tui): allow disable copy on fullscreen, ctrl + x copies selection (#8731) 2026-08-27 18:07:54 +02:00