Commit graph

754 commits

Author SHA1 Message Date
Alexey Zaytsev
1d6dbf9e3d
fix(coding-agent): keep skills available with bash-only tools (#8552) 2026-09-03 11:08:26 +02:00
Julien Barbay
2b768ba42c
feat(coding-agent): ingest external entries in in-memory sessions (#8980)
* feat(coding-agent): ingest external entries in in-memory sessions

SessionManager.inMemory() takes the entries to start from, so a session
held outside the filesystem can be resumed as it was stored.

Replaying through appendMessage/appendCompaction cannot do this: ids are
minted fresh, so every stored firstKeptEntryId, targetId and fromId has to
be remapped, timestamps are rewritten, and parentId always comes from the
current leaf, so a branched tree needs the original branch() choreography
reproduced call by call.

The entry-adoption half of _setSessionFile becomes _loadEntries, which the
constructor also uses when there are entries but no file. Entries carrying
a session header keep it; without one, the header comes from the options
and the entries become its body.

* fix(coding-agent): carry the stored version through restored entries

inMemory() took SessionEntry[], which excludes SessionHeader, so an
external store could not pass the header it saved and the header branch of
_loadEntries was unreachable through the public API. A restore therefore
always synthesised a current-version header, and the migration that ran
next read that header and skipped: a v2 session kept its hookMessage roles
forever.

Widening to FileEntry[] lets the stored header through, version included.
Migration moves inside the header branch, where a version exists to compare
against; without a header the entries are adopted as current-version, which
is the only thing they can mean.
2026-09-03 10:49:41 +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
Ramiz Wachtler
8d1b1178cd
docs(coding-agent): clarify session-scoped model/thinking-level changes (#9009)
- fixes #8976
2026-09-02 14:53:49 +02:00
David Brailovsky
487af8e168 Merge remote-tracking branch 'origin/main' into dev 2026-09-01 14:48:57 +00:00
Sviatoslav Abakumov
6492144773
fix(tui): detect Zed terminal capabilities (#8828) 2026-09-01 11:03:34 +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
Cristina Poncela Cubeiro
4e49492999
feat(tui): allow disable copy on fullscreen, ctrl + x copies selection (#8731) 2026-08-27 18:07:54 +02:00
Cristina Poncela Cubeiro
ccfe79ed23
feat(extensions): ui prompt events (#8355)
* feat(extensions): ui prompt events

* fix: handlers should not delay the prompt
2026-08-27 11:28:05 +02:00
Mario Zechner
5976a2f8b9 docs(agent): audit post-WP05 roadmap 2026-08-26 22:41:05 +02:00
Armin Ronacher
e86823096c feat(tui): add terminal capability overrides closes #8665 2026-08-26 17:40:36 +02:00
Cristina Poncela Cubeiro
42f7f29ad1 docs(settings): default model and thinking 2026-08-26 16:25:30 +02:00
Vegard Stikbakke
a79b373342 feat(coding-agent): expose RPC queue clearing
closes #8432
2026-08-25 15:19:49 +02:00
Cristina Poncela Cubeiro
1bb61986cd docs(coding-agent): update provider links to api 2026-08-25 13:31:42 +02:00
Armin Ronacher
c399e34658 feat: merge main into dev 2026-08-24 13:13:03 +02:00
Armin Ronacher
80e62761f7
feat(coding-agent): add optional PowerShell tool (#8512) 2026-08-24 12:27:03 +02:00
David Brailovsky
8798b7996d Merge remote-tracking branch 'origin/main' into dev 2026-08-24 07:50:17 +00:00
Armin Ronacher
4af9d21d3b feat(coding-agent): update managed installations in place 2026-08-24 09:34:34 +02:00
Armin Ronacher
27b7a626de fix(coding-agent): use Windows-friendly keybinding defaults
closes #8372
2026-08-23 23:30:16 +02:00
Armin Ronacher
f8f03460a0 fix: reduce workspace dependency tree 2026-08-23 09:28:19 +02:00
Armin Ronacher
62bcbf6be0 docs(coding-agent): document -- end-of-options delimiter 2026-08-23 00:01:33 +02:00
David Brailovsky
d94e521baa Merge remote-tracking branch 'origin/main' into dev 2026-08-20 09:20:25 +02:00
Christian Klotz
830a0a59e9
fix(coding-agent): expose tool metadata at stream start (#7953)
* fix(coding-agent): expose tool metadata at stream start

* fix(coding-agent): centralize message update serialization
2026-08-19 12:24:30 +02:00
Vegard Stikbakke
8dab70281b Revert "feat(coding-agent): add cache-friendly compaction primitives"
This reverts commit cff1cf52c6.
2026-08-19 09:52:26 +02:00
David Brailovsky
01001d7ad5 Merge remote-tracking branch 'origin/main' into dev 2026-08-19 09:51:14 +02:00
Ben
b237412699
feat(ai): generalize openai-completions thinking token budget fields (#8275)
#7638 hardcoded vLLM's thinking_token_budget. Map thinkingBudgets through
thinkingTokenBudgetField, keep the boolean as a vLLM alias, clamp so the
answer keeps 1024 tokens, and document it.

fixes #8274

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Mario Zechner <badlogicgames@gmail.com>
2026-08-18 16:35:35 +02:00
Vegard Stikbakke
cff1cf52c6 feat(coding-agent): add cache-friendly compaction primitives
Add provider-context prefix preparation and optional summary request settings needed by cache-friendly compaction. Existing AgentSession callers continue to pass undefined, so standalone summarization remains the default until the feature is wired in.
2026-08-18 14:52:06 +02:00
Vegard Stikbakke
836aee6d38 feat(coding-agent): show compaction usage notices 2026-08-18 13:27:00 +02:00
Armin Ronacher
3592465954 Merge branch 'main' into dev 2026-08-17 22:43:17 +02:00
Cristina Poncela Cubeiro
5e11f65865
fix(coding-agent): load nested markdown skills (#8255) 2026-08-17 19:59:55 +02:00
David Brailovsky
ee6a5d29f2 Merge remote-tracking branch 'origin/main' into dev 2026-08-17 13:20:15 +00:00
Cristina Poncela Cubeiro
a6b1dbceb1
fix(extensions): emit compaction failed for extensions (#8241)
* fix(extensions): emit compaction failed

* changelog yeet
2026-08-17 13:10:08 +02:00
Cristina Poncela Cubeiro
a1bc0ec790
fix: llama.cpp guidance as no default (#8236) 2026-08-17 12:15:56 +02:00
Cristina Poncela Cubeiro
8c2529daeb
fix: dont load root mds as skills in settings (#8012)
* fix: dont load root mds as skills in settings

* changelogololol

---------

Co-authored-by: Mario Zechner <badlogicgames@gmail.com>
2026-08-17 09:37:37 +02:00
Armin Ronacher
5876bc49f9 feat(coding-agent): isolate coordinators by server ID 2026-08-15 12:20:05 +02:00
Armin Ronacher
d96144c6a3 feat(coding-agent): make server directory configurable
Place the server profile and all Unix sockets under PI_SERVER_DIR, defaulting to ~/.pi/server. Keep test sockets isolated through the same override.
2026-08-15 12:06:59 +02:00
Mario Zechner
71026970a0 feat(tui): add reusable mouse interaction support 2026-08-14 15:26:27 +02:00
Vegard Stikbakke
46bb9a2c3b docs(coding-agent): clarify Windows paths in settings 2026-08-13 09:54:58 +02:00
Mario Zechner
581d75a89c docs(coding-agent): document model catalog refresh 2026-08-13 00:53:22 +02:00
Christian Klotz
c93ea6ccf0
fix(coding-agent): preserve usage in streaming events (#7982)
Fixes #7911
2026-08-13 00:32:26 +03:00
Ramiz Wachtler
9795d60230
feat(coding-agent): add per-run theme selection (#7722)
- add `--use-theme` for fixed and terminal-aware theme pairs
- keep invocation state non-persistent until an explicit selection
- preserve active themes across previews, reloads, and HTML exports
2026-08-12 16:25:38 +02:00
Armin Ronacher
541045ae0e fix(coding-agent): preserve extension tools with defaults 2026-08-12 15:42:55 +02:00
Armin Ronacher
4d9aa837c2 feat(coding-agent): add configurable default tools 2026-08-12 15:27:01 +02:00
Vegard Stikbakke
6d520c58d0 chore(docs): fix ascii alignment in compaction docs 2026-08-12 14:56:26 +02:00
Michael Renner
2a9b4ebc68
docs: document terminal-specific fullscreen mouse behavior (#7965)
* docs(coding-agent): document iTerm2 fullscreen scroll workaround

* docs(coding-agent): document Ghostty fullscreen link behavior
2026-08-11 16:57:05 +02:00
David Brailovsky
2a95ef70db fix(tui): apply PI_TUI_ESC_TIMEOUT only to lone ESC
Split StdinBuffer's incomplete-sequence wait from the lone-ESC wait so SSH and PI_TUI_ESC_TIMEOUT can reassemble split Alt+Enter without delaying Escape or mouse/CSI buffering.
2026-08-11 12:53:06 +02:00