Commit graph

816 commits

Author SHA1 Message Date
Armin Ronacher
c596d09d9c
feat(coding-agent): add prompt cache warming (#9668) 2026-09-19 21:18:15 +02:00
Armin Ronacher
de2de549bc fix(coding-agent): close compaction cancellation races
Closes #9340 and closes #9777.
2026-09-19 19:18:18 +02:00
Armin Ronacher
3c75b27479 feat(coding-agent): add bug reporting 2026-09-19 17:55:49 +02:00
Christian Klotz
59eb4c393c
fix(coding-agent): clarify copy shortcut description (#9745)
Fixes #9660
2026-09-18 14:12:14 +01:00
Mario Zechner
eed5263cdd Merge remote-tracking branch 'origin/main' into HEAD 2026-09-18 12:33:14 +02:00
David Brailovsky
13784598d2 fix(coding-agent): suppress repeated Anthropic thinking drop notices
Fixes #9391
2026-09-18 09:58:42 +02:00
David Brailovsky
4658534986 fix(coding-agent): shorten Anthropic thinking drop notices 2026-09-17 16:38:56 +02:00
Mario Zechner
0e19ac1161 Merge remote-tracking branch 'origin/main' into pico 2026-09-17 16:31:25 +02:00
Christian Klotz
42cd371ba4
feat(coding-agent): add TUI context footer eval (#9705) 2026-09-17 13:21:31 +01: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
Mario Zechner
fde6d778f8 fix(coding-agent): toggle summary entries on click 2026-09-16 18:08:06 +02:00
Armin Ronacher
9e05370b29
Mid conversation system messages (#9548)
This change makes system prompt text and tool changes part of the transcript rather than silently rewriting its starting conditions. This lets Pi record when instructions changed or tools became available, restore that state after resuming or navigating branches, and preserve cached prompt prefixes where the upstream supports it.
2026-09-16 15:54:07 +02:00
Armin Ronacher
60e7e76bd7 fix(coding-agent): surface clipboard backend failures
closes #9618
2026-09-16 01:29:52 +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
Vegard Stikbakke
47acd8e6cf fix(coding-agent): preserve active operation UI during tree navigation
Follow-up to e687434a6.

Recheck compaction state after navigation dialogs and response cancellation before replacing status indicators or escape handlers. Document navigation conflicts and add regression coverage.
2026-09-07 12:59:20 +02:00
Armin Ronacher
9767ba275f fix(coding-agent): select Radius models after catalog discovery 2026-09-06 00:30:17 +02:00
Ramiz Wachtler
92d8e2d17d
fix(coding-agent): selector save keybindings (#9149)
- fixes #8797
2026-09-04 18:06:21 +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
Cristina Poncela Cubeiro
7d399e7be8
feat(tui): search improvements (#8800) 2026-09-03 15:09:51 +02:00
wutongyuonce
6f35de5b59
fix(coding-agent): isolate concurrent session shares (#8613) 2026-09-03 11:05:41 +02:00
David Brailovsky
8c08d0645a Merge remote-tracking branch 'origin/main' into dev 2026-09-03 07:58:51 +00: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
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
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
Armin Ronacher
b6c8797459 feat(coding-agent): share fullscreen TUI with experimental client
Reuse the stable renderer, viewport layout, theme detection, and terminal appearance updates. Keep successful operation status derived from replicated lane state.
2026-08-27 19:09:26 +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
Mario Zechner
eb3e9feed1 feat(coding-agent): split tool renderers and theme validation from their implementations
A presentation draws tool calls and colours; it executes nothing and validates
nothing. Both cost it typebox anyway, which is 17 MB of module graph: 682 ESM
modules whose narrowest entry re-exports ~300 of them, so there is no
cherry-picking and both doors had to close before any process stopped paying.

ToolExecutionComponent no longer looks up createAllToolDefinitions by tool name;
callers pass what to render, and its parameter type now says so. Each built-in
tool's presentation moves to core/tools/renderers/<tool>.ts, leaving the schema
and execute path behind; bash and powershell share createShellRenderers(prompt).
Tool definitions keep their exact public shape and spread the renderers in.
withBuiltInRenderers() preserves the old fallback, where an extension override
without renderers still draws like the built-in - that behaviour used to live
inside the component, and two tests caught its absence.

theme.ts keeps palettes; the typebox schema and its error formatting move to
theme-json.ts, installed through setThemeJsonValidator. Built-in themes were
never validated, so only processes that load user-authored themes need it. pi
installs it during startup, before the first theme loads, and the invalid-theme
message is unchanged.

Measured with mini, running built output: the presentation drops from 87 MB and
99 files to 72 MB and 88 files, with typebox absent from its graph, while still
rendering tool output through the real built-in renderers.

Also: packages/server's vitest aliases were prefix matches, so a subpath import
resolved onto index.ts/utils/uuid and failed five suites; they are exact now
with explicit subpath rules. And mini-test.sh spawns mini the way pi-test.sh
spawns pi, with --fresh/--stop for the detached session server.
2026-08-26 23:08:57 +02:00
Armin Ronacher
e86823096c feat(tui): add terminal capability overrides closes #8665 2026-08-26 17:40:36 +02:00
Vegard Stikbakke
b07e17faa2 fix(coding-agent): preserve partial Bash output when toggling thinking
closes #8611
2026-08-26 14:27:21 +02:00
Cristina Poncela Cubeiro
8fa7eebd23 fix: persist default to scoped if non-empty 2026-08-25 17:49:28 +02:00
Vegard Stikbakke
a79b373342 feat(coding-agent): expose RPC queue clearing
closes #8432
2026-08-25 15:19:49 +02:00
David Brailovsky
8798b7996d Merge remote-tracking branch 'origin/main' into dev 2026-08-24 07:50:17 +00:00
Armin Ronacher
460191cfcf feat(coding-agent): include context in Radius session shares 2026-08-23 20:45:14 +02:00
Armin Ronacher
cec3a91c02 feat(coding-agent): defer uncommon syntax grammars 2026-08-22 22:50:12 +02:00
Armin Ronacher
f4585b8bec fix(coding-agent): simplify session sharing links 2026-08-21 18:33:27 +02:00
Cristina Poncela Cubeiro
77f2d1235e chore(interactive-mode): get rid of theme, only share via radius if logged in 2026-08-21 16:47:08 +02:00
Cristina Poncela Cubeiro
686f3487f5
feat(interactive-mode): share via radius artifacts under experimental (#8443) 2026-08-21 16:05:01 +02:00
Cristina Poncela Cubeiro
cffe4d776c fix(settings-selector): nit ordering in default t.l. per model 2026-08-20 14:42:47 +02:00
Cristina Poncela Cubeiro
768184923a fix(settings-selector): nit spacing 2026-08-20 14:28:33 +02:00
Cristina Poncela Cubeiro
1d3503fb9b
feat(settings-selector): show default, make default searchable for model and thinking (#8399) 2026-08-20 13:55:27 +02:00
Cristina Poncela Cubeiro
5b3caaf4cb chore(settings-selector): get rid of default thinking in settings, ctrl + S is enough 2026-08-20 13:35:21 +02:00
Cristina Poncela Cubeiro
5133c9284f chore(settings-selector): get rid of --default and global model
ctrl+s is enough, there goes my joy
2026-08-20 13:30:47 +02:00