Ramiz Wachtler
98ffad0437
fix(ai): openai-completions - throw error on missing finish-reason
...
- require \ before treating \ streams as successful
- add regression coverage for truncated streams without \
- closes #4345
2026-05-15 15:26:57 +02:00
Mario Zechner
a8af0b5e99
fix(ai): ignore generic GitHub tokens for Copilot auth
...
closes #4485
2026-05-15 01:26:31 +02:00
Mario Zechner
7ddc7dd1ec
fix(coding-agent): space interactive errors
...
closes #4510
2026-05-15 01:10:56 +02:00
Mario Zechner
3ca474b15b
fix(coding-agent): fix Termux docs code fence
...
closes #4503
2026-05-15 01:02:36 +02:00
Mario Zechner
80c918c247
refactor(agent): isolate node filesystem session dependencies
2026-05-15 00:53:33 +02:00
Mario Zechner
0b54c87e24
fix(release): finalize Windows ARM64 binary support
...
closes #4410
2026-05-14 22:44:28 +02:00
Mario Zechner
93708de65d
Merge pull request #4458 from brianmichel/brian/add-windows-arm-binary
...
Add Windows ARM64 Binary Output
2026-05-14 22:41:13 +02:00
Mario Zechner
ac75abee43
Merge pull request #4486 from earendil-works/fix/openai-429-prefer-retry-after-header-over-exponential-backoff
...
fix(ai): OpenAI Codex SSE - prefer retry-after for retry timeout over default fallback
2026-05-14 21:59:38 +02:00
Mario Zechner
a31ce0f47f
refactor(agent): return results from compaction helpers
2026-05-14 21:56:45 +02:00
Mario Zechner
b7ea82105a
refactor(agent): run harness loop directly
2026-05-14 21:33:34 +02:00
Mario Zechner
846906e4d1
refactor(agent): add result-based execution env
2026-05-14 18:26:29 +02:00
Mario Zechner
9fcf924ac9
docs: add helper inlining rule
2026-05-14 18:03:31 +02:00
Ramiz Wachtler
0ae909316a
fix(ai): honor retry-after for OpenAI Codex SSE retries
...
- honor `retry-after-ms` and `retry-after` for OpenAI Codex SSE retries
- add SSE retry coverage for millisecond, seconds, date, and fallback delays
2026-05-13 19:44:07 +02:00
Mario Zechner
40c05f5539
Merge pull request #4473 from apoorvumang/fix/inception-mercury-2-reasoning-off
...
fix(ai): mark inception/mercury-2 thinkingLevelMap.off as null
2026-05-13 18:48:49 +02:00
Mario Zechner
a5cca409d8
refactor(ai): use HTTP proxy agents for Bedrock
2026-05-13 16:12:48 +02:00
Mario Zechner
e3faf41801
fix(tui): cap portrait image render height
2026-05-13 16:12:48 +02:00
Armin Ronacher
c00f1cf130
fix(agent): correct uuidv7 sequence handling
2026-05-13 15:53:53 +02:00
Armin Ronacher
8bf2bfab58
fix(coding-agent): align stripAnsi with strip-ansi
2026-05-13 15:52:33 +02:00
Apoorv Saxena
e2b69a0bb1
fix(ai): mark inception/mercury-2 thinkingLevelMap.off as null
...
Mercury 2 in instant mode (reasoning_effort: "none") disables tool calling.
The openai-completions provider hardcodes {reasoning:{effort:"none"}} when no
explicit reasoning level is passed and thinkingLevelMap.off isn't null
(openai-completions.ts:575), so every caller that doesn't opt in to a level
silently breaks Mercury 2's agentic use cases.
Setting thinkingLevelMap.off = null on the Mercury 2 catalog entry causes the
provider to omit the reasoning param entirely, letting Mercury 2's own default
take over. Low/medium/high pass through verbatim; OpenRouter normalizes them
to Mercury's vocabulary.
Prefix-matched on "inception/mercury-2" so future Mercury 2 variants on
OpenRouter inherit the fix.
2026-05-13 19:17:36 +05:30
xu0o0
c08c462461
fix(tui): place image correctly when viewport height < image height ( #4461 )
...
fixes #4415
2026-05-13 14:37:48 +02:00
Armin Ronacher
e0b5d27af2
chore(deps): replace cli-highlight ( #4468 )
2026-05-13 12:19:45 +02:00
Armin Ronacher
2829146dde
chore(deps): Kill small dependencies ( #4467 )
2026-05-13 10:44:56 +02:00
Nelson Herrera
8da1f3d131
fix(tui): Make markdown.ts more robust to large markdown files ( #4463 )
2026-05-13 10:31:09 +02:00
Brian Michel
c786efda9d
Update bun version to minimum required version for Windows ARM
2026-05-12 21:42:25 -04:00
Brian Michel
a5cbd8e1aa
Add Windows arm64 binary support
...
Update build-binaries workflow and shell script to allow for packaging
of both arm64 and x64 versions of the Windows application.
2026-05-12 21:42:25 -04:00
Mario Zechner
f2b105dd56
Merge pull request #4379 from Perlence/fix-tui-todo-checkboxes
...
fix(tui): render the checkboxes in the to-do list items
2026-05-13 00:17:25 +02:00
Mario Zechner
6ff6dc6278
Merge pull request #4383 from maximilianzuern/docs/fixToolConfig
...
fix(coding-agent) docs: update tool configuration API in SDK docs
2026-05-13 00:16:50 +02:00
Mario Zechner
2b895e20cd
Merge pull request #4391 from yzhg1983/fix/sdk-example-session-dispose
...
fix(coding-agent): dispose SDK example sessions
2026-05-12 23:50:08 +02:00
Mario Zechner
5998b57958
Merge pull request #4426 from ofa1/fix/restore-tty-on-uncaught-exception
...
fix(coding-agent): restore terminal on uncaught exception
2026-05-12 23:48:28 +02:00
Armin Ronacher
64882c6a51
chore(deps): remove unused dependencies ( #4453 )
2026-05-12 23:35:41 +02:00
Mario Zechner
24e370fde5
Merge remote-tracking branch 'origin/main'
2026-05-12 23:35:17 +02:00
Mario Zechner
d62c416cfd
fix(coding-agent): allow tool expansion during extension confirms
...
closes #4429
2026-05-12 23:34:57 +02:00
Mario Zechner
5ac874c849
fix(coding-agent): retry Anthropic message_stop stream endings
...
closes #4433
2026-05-12 23:25:15 +02:00
github-actions[bot]
2726e57cda
chore: approve contributor brianmichel
2026-05-12 20:56:58 +00:00
Omair Ahmed
9d84e28692
fix(coding-agent): restore terminal on uncaught exception
...
When an uncaught exception fires in interactive mode, the process dies with
stdin still in raw mode and the cursor hidden, leaving the user with a
"borked" terminal that needs `stty sane && reset` to recover. The most
common trigger is an extension's async ChildProcess `exit` callback that
throws (e.g. from accessing a stale ctx after session replacement), but
this affects any uncaught throw from anywhere in pi.
Add an uncaughtException handler in registerSignalHandlers that calls
ui.stop() before exiting, mirroring the existing emergencyTerminalExit
pattern. The handler is registered with prependListener and tracked in
signalCleanupHandlers, so it is removed on graceful shutdown the same way
the other handlers are.
Unlike emergencyTerminalExit (used for SIGHUP / dead-terminal EIO), the
terminal is still alive on uncaughtException, so we run the normal
ui.stop() to restore cooked mode, the cursor, bracketed paste mode, and
Kitty / modifyOtherKeys sequences.
2026-05-11 16:27:27 -04:00
Armin Ronacher
3d9e14d748
fix(compaction): clamp summary output tokens
...
Fixes #4390 .
2026-05-11 16:36:27 +02:00
Michael Yu
d68011dab1
fix(coding-agent): dispose SDK example sessions
2026-05-11 13:26:08 +08:00
Maximilian
68deecfb4f
minor fix in body
2026-05-11 00:45:30 +02:00
Maximilian
74739567b9
fix tool config in SDK docs
2026-05-11 00:32:19 +02:00
Maximilian
df72d5eefe
fix inconsistency in README
2026-05-11 00:16:46 +02:00
Maximilian
4eadc8fd3e
fix tool config in example in SDK README.md
2026-05-10 23:34:28 +02:00
Maximilian
c3ce1d33d4
fix tool config in example in sdk.ts
2026-05-10 23:32:15 +02:00
Sviatoslav Abakumov
863341fbf5
fix(tui): render the checkboxes in the to-do list items
2026-05-10 22:20:40 +04:00
Mario Zechner
f348a06294
test(agent): cover harness stream configuration
2026-05-10 19:10:54 +02:00
Mario Zechner
c0f416aabc
feat(agent): add harness stream configuration
2026-05-10 18:13:16 +02:00
Mario Zechner
f8d0fa67dc
fix(coding-agent): share theme across package scopes
...
closes #4333
2026-05-10 18:13:16 +02:00
Mario Zechner
f6b6b1f052
Merge pull request #4354 from haoqixu/fix-bun-ws-proxy
...
fix(ai): respect proxy envs in bun's websocket
2026-05-10 18:03:48 +02:00
Mario Zechner
cb3c42ecf5
Merge pull request #4358 from yanirz/fix/fireworks-session-affinity-cache
...
fix(ai): add session affinity and compat fixes for Fireworks provider caching
2026-05-10 18:00:52 +02:00
github-actions[bot]
f2231fa5f7
chore: approve contributor maximilianzuern
2026-05-10 15:55:29 +00:00
Mario Zechner
533d37305c
fix(ai): align copilot claude adaptive test
2026-05-10 17:51:08 +02:00