Commit Graph

7042 Commits

Author SHA1 Message Date
can1357 34628528bf Merge PR #8461: fix(edit): add compact seen-line retries (@Kigbnajd) 2026-08-16 02:13:38 +02:00
can1357 a7e810c6cc Merge PR #8444: fix(tui): keep btw panels out of scrollback (@Ant39140) 2026-08-16 02:13:38 +02:00
can1357 9af713f2b0 Merge PR #8576: fix(mcp): keep Exa MCP servers that request non-native tools (@dhruvkej9) 2026-08-16 02:13:38 +02:00
Harsha Vardhan ba5885880e fix(coding-agent): preserved mixed-case plugin tool names on refresh 2026-08-16 02:13:38 +02:00
can1357 0d929bf586 Merge PR #8459: fix(coding-agent): use /v1/ APIs for llama.cpp for better compatibility (@cphlipot) 2026-08-16 02:13:37 +02:00
can1357 47195e57b4 Merge PR #8662: perf(coding-agent): bound streaming diff previews (@lemonleks) 2026-08-16 02:13:37 +02:00
can1357 0128fe323f Merge PR #8645: perf(session): stream persisted session init probes (@lemonleks) 2026-08-16 02:13:37 +02:00
can1357 6754d2e718 Merge PR #8604: fix: stop mid-run compaction from hanging the live loop (@Thytu) 2026-08-16 02:13:37 +02:00
can1357 15b8950dd1 Merge PR #8422: fix(nix): remove build-time Bun closure reference (@bjin) 2026-08-16 02:03:17 +02:00
can1357 210cce26bd Merge PR #8516: fix(session): resume Cursor turns after HTTP/2 stream reset (@joseotaviorf) 2026-08-16 02:03:17 +02:00
can1357 7e4fd9a686 Merge PR #8428: fix(tui): welcome banner shows stale model name after model changes (@jacobleft) 2026-08-16 02:03:17 +02:00
can1357 2096740027 Merge PR #8453: fix(hub): skip mid-spawn stubs in persisted scan (@tahsinrahman) 2026-08-16 02:03:16 +02:00
can1357 8de929c393 Merge PR #8285: fix(tui): preserve scrollback after hidden tool snapshots (@dannyboy-ai) 2026-08-16 02:03:16 +02:00
can1357 958a88b25a Merge PR #8503: fix(agent): optimize checkpoint/rewind prompt rendering (@szavadsky) 2026-08-16 02:03:16 +02:00
can1357 a58e73de12 Merge PR #8626: fix(tui): refresh token usage rows when toggled (@notnotype) 2026-08-16 02:03:16 +02:00
can1357 565a21bfb4 Merge PR #8654: fix(ask): wrap long option labels in the rich ask dialog instead of truncating (@szavadsky) 2026-08-16 02:03:15 +02:00
can1357 0e76766f9a Merge PR #8550: fix(vibe): distinguish wait abort from timeout (@Capslockb) 2026-08-16 02:03:15 +02:00
can1357 8dddee7578 Merge PR #8664: fix(coding-agent): preserve artifacts in CLI forks (@anatoli-tsinovoy) 2026-08-16 02:03:15 +02:00
can1357 1f2fc72812 Merge PR #8665: perf(coding-agent): bound completed diff rendering (@lemonleks) 2026-08-16 02:03:15 +02:00
can1357 ca297741cb Merge PR #8538: fix(coding-agent): keep the system prompt byte-stable across date/cwd changes (@MertSoylu) 2026-08-16 02:03:14 +02:00
Aleksandr Khaustov 006c5371ea perf(coding-agent): bound completed diff rendering 2026-08-15 20:39:36 +04:00
Anatoli Tsinovoy ea93012be4 fix(coding-agent): preserve artifacts in CLI forks 2026-08-15 19:24:54 +03:00
Aleksandr Khaustov c6e38c880b perf(coding-agent): bound streaming diff previews 2026-08-15 20:08:00 +04:00
MertSoylu 8c75bb7a61 chore: fix changelog spacing after main merge 2026-08-15 17:53:41 +03:00
MertSoylu 98ef44bdb6 Merge remote-tracking branch 'upstream/main' into prompt-merge-test 2026-08-15 17:50:40 +03:00
Ant39140 9f8eb090cb Merge remote-tracking branch 'upstream/main' into fix/btw-scrollback 2026-08-15 22:31:03 +08:00
Slava Zavadsky 00043ef3ba fix(ask): wrap long option labels in the rich ask dialog instead of truncating
The rich AskDialogComponent (merged in PR #4375) hard-truncated every
option row via truncateToWidth(firstLine, width, Ellipsis.Unicode),
clipping the disambiguating tail of long labels with no way to read it.
The legacy HookSelector dialog has wrapped labels since June 1
(3c7d50d292), so the rich dialog was the remaining truncation path.

renderRowLabel now wraps the label with wrapTextWithAnsi, indenting
continuation lines under the radio/checkbox marker so the cursor stays
visually anchored; the body ScrollView carries vertical overflow. The
note marker is reserved on the first line. Fixes #1243, #8594.
2026-08-15 09:11:32 -04:00
Aleksandr Khaustov 2076dc3960 perf(session): stream persisted session init probes 2026-08-15 16:33:44 +04:00
notnotype da29b12112 fix(tui): refresh token usage rows when toggled 2026-08-15 15:39:42 +08:00
Yang Yang d14c028aee fix(ai): allow explicit xai-oauth selectors with XAI_API_KEY
Keep hasAuth() dedicated so SuperGrok is not auto-selected from a paid
key. Explicit preflight uses hasResolvableAuth() so xai-oauth/grok-4.5
can still borrow XAI_API_KEY.
2026-08-14 22:03:12 -07:00
Yang Yang b49b5b88d2 fix(catalog): strip stale xAI Responses effort dials from generated rows
Paid xAI models.dev regeneration still emitted Completions-era thinking
dials for off-allowlist reasoners. Bake the no-dial policy into the
resolver/generator and refresh the exported catalog snapshot.
2026-08-14 22:02:07 -07:00
Yang Yang 3fb57803f3 fix(catalog): omit penalty and stop params on xAI reasoning models
Grok 4.5 rejects presencePenalty, frequencyPenalty, and stop. After the
paid default moved off a non-reasoning model, configured penalties 400ed.
2026-08-14 22:00:51 -07:00
Yang Yang ca2fa4f5f6 fix(ai): do not treat XAI_API_KEY as SuperGrok availability
Paid-key-only setups were marked signed in for xai-oauth, so the shared
grok-4.5 default picker preferred SuperGrok over xai/grok-4.5.
2026-08-14 22:00:50 -07:00
Yang Yang bd44ff190c docs: keep xAI changelog entries under Unreleased after 17.2.5
Rebase onto origin/main landed those notes in the released section; move
them back and drop duplicated 17.2.5 Changed bullets.
2026-08-14 22:00:50 -07:00
Yang Yang 651f20957b feat(catalog): replay xAI encrypted reasoning on later turns
Stop stripping type=reasoning history for xai and xai-oauth so
encrypted_content from include is sent back on the next Responses request.
2026-08-14 22:00:50 -07:00
Yang Yang c228dea58b feat(catalog): route paid xAI through Responses like SuperGrok
Switch XAI_API_KEY models from Chat Completions to /v1/responses, default
both xai and xai-oauth to grok-4.5, and include reasoning.encrypted_content.
2026-08-14 22:00:50 -07:00
Valentin De Matos e4ec9f7cc8 Keep auto_compaction_start awaited on the mid-run path
Only the post-commit end/session_compact fan-out is detached.
The start emit still waits so input during that yield lands
in the compaction queue, matching the existing comment.
2026-08-14 19:54:28 -07:00
Valentin De Matos 8344a0e823 fix: stop mid-run compaction from awaiting lifecycle emits
Detached auto-compaction start/end (and shake) so a hung
auto_compaction_end handler cannot pin the next provider call.
2026-08-14 19:45:33 -07:00
dhruv.kejriwal f36cf20d56 fix(mcp): keep Exa MCP servers that request non-native tools
Exa MCP servers were always filtered out because the native Exa integration covers web_search_exa. But configs that explicitly request web_fetch_exa or web_search_advanced_exa have no native equivalent, so filtering them made /mcp reconnect exa fail and hid those tools. Keep the MCP server mounted when its tools restriction includes anything beyond web_search_exa, while still extracting the API key for native search.
2026-08-15 00:39:58 +05:30
can1357 ffd53ff92a chore: bump version to 17.3.4 2026-08-14 14:38:16 +02:00
can1357 a3c15d2dec feat(coding-agent/tools): implemented pdf page screenshot rendering
- Add `renderPdfPageScreenshot` to render PDF pages via headless Chromium.
- Update `ReadTool` to intercept legacy PDF image paths and return page screenshots.
- Ensure daemon clients are closed on read command exit.
2026-08-14 14:37:56 +02:00
can1357 56efdfc4db Merge PR #8546: fix(coding-agent): restore Windows external editor launch (@roboomp) 2026-08-14 14:12:00 +02:00
can1357 aae72bd5ef Merge PR #8531: docs: correct /hotkeys Ctrl+D copy to match save-draft-and-exit (@roboomp) 2026-08-14 14:11:51 +02:00
can1357 d445f987da Merge PR #8515: fix(mcp): initialize sessions before opening sse stream (@roboomp) 2026-08-14 14:11:30 +02:00
can1357 04fab5ecb4 feat: replaced custom mupdf wasm pipeline with native function
- Replaced the custom MuPDF-WASM PDF extraction and rendering pipeline with the new `pdfToMarkdown` native function from `@oh-my-pi/pi-natives`.
- Removed legacy MuPDF extraction modules, WASM embedding scripts, and PDF image extraction tools.
- Added OCR warnings and browser/text redirection for unsupported PDF image reads.
- Updated native package definitions, documentation, and test suites for the new PDF inspection capability.
2026-08-14 14:08:28 +02:00
CAPSLOCKB 1f0c2366d0 fix(vibe): distinguish wait abort from timeout 2026-08-14 14:06:49 +02:00
roboomp a9075ae509 fix(coding-agent): restored Windows external editor launch
Passed the cmd.exe /s /c command line through Bun verbatim so configured editors and temporary paths retain their quotes.

Added command-line regression coverage and documented the fix.

Fixes #8544
2026-08-14 11:27:13 +00:00
MertSoylu 30f92ad986 fix(coding-agent): keep the system prompt byte-stable across date/cwd changes
Move the per-request date/cwd line out of the system prompt into a
first-turn system-reminder so open-weight providers keep their tool-schema
prefix cache; the reminder refreshes itself at midnight. Closes #7404.

Generated with Codebuff 🤖
Co-Authored-By: Codebuff <noreply@codebuff.com>
2026-08-14 13:16:54 +03:00
roboomp ff9c5189c9 docs: correct /hotkeys ctrl+d copy to match save-draft-and-exit
The /hotkeys table described app.exit (Ctrl+D) as "Exit (when editor is
empty)", implying readline/EOF-style conditional exit. The handler exits
unconditionally and snapshots the current prompt as a resumable draft
regardless of editor content (custom-editor.ts fires onExit for app.exit
with no empty check; input-controller.ts handleCtrlD calls shutdown()
unconditionally, which persists the draft). Corrected the line to
"Exit (saves current prompt as draft)".

Fixes #8530
2026-08-14 08:27:35 +00:00
José Otávio Rizzatti Ferreira 63ac830b50 fix(session): resume Cursor turns after HTTP/2 stream reset 2026-08-14 01:56:14 -04:00