Mario Zechner
4535415300
fix(ai): capture usage from choice.usage for non-standard OpenAI-compatible providers
...
Some OpenAI-compatible providers (e.g., Moonshot/Kimi) return usage
data in chunk.choices[0].usage instead of the standard chunk.usage.
Extract usage parsing into a helper and check choice.usage as fallback.
closes #2017
2026-03-10 16:28:39 +01:00
Mario Zechner
aaeb2d8208
fix(tui): handle wide unicode input scrolling closes #1982
2026-03-09 17:51:38 +01:00
Mario Zechner
b370cd5a5c
Add [Unreleased] section for next cycle
2026-03-08 00:56:38 +01:00
Mario Zechner
a9cedccdde
Release v0.57.1
2026-03-08 00:55:52 +01:00
Mario Zechner
5a82b5e5b1
docs(coding-agent): update unreleased changelog
2026-03-08 00:55:02 +01:00
Mario Zechner
ad11058e37
fix(coding-agent): use shell for external editor on windows closes #1925
2026-03-08 00:48:42 +01:00
Mario Zechner
deb5fb3b88
feat(tui): support digit keybindings closes #1905
2026-03-08 00:36:04 +01:00
Mario Zechner
80d79eefc3
fix(coding-agent): prefer explicit -e extensions closes #1896
2026-03-08 00:34:31 +01:00
Mario Zechner
95d0806adc
docs(coding-agent): add changelog entry for z.ai overflow
...
closes #1937
2026-03-08 00:22:44 +01:00
Mario Zechner
787f351ab7
feat(coding-agent): refine session_directory hook closes #1729
2026-03-08 00:19:35 +01:00
Mario Zechner
ade6a35e75
fix(ai): detect z.ai context overflow
...
closes #1937
2026-03-08 00:18:29 +01:00
Mario Zechner and Sviatoslav Abakumov
d48843ea55
Pr 1724 ( #1939 )
...
* feat(coding-agent): add fold/unfold to tree branch navigation
Remap left/right arrow keys in the session tree to jump between branch
segment starts (first child of each branching point). Left on a foldable
node (root or segment start) folds it, hiding its descendants. Right on
a folded node unfolds it. Nested fold state is preserved. Search and
filter changes reset all folds.
Folded branches show ⊞ in the connector (├⊞/└⊞) or as a prefix for
roots. Active path marker • appears after the fold indicator.
Add Page Up/Down support for paging through the tree list, consistent
with session selector and config selector.
* feat(coding-agent): improve tree branch folding closes #1724
---------
Co-authored-by: Sviatoslav Abakumov <dust.harvesting@gmail.com >
2026-03-08 00:15:47 +01:00
Mario Zechner
41e02598f5
docs(tui): add changelog entry for slash autocomplete fix
2026-03-07 23:22:31 +01:00
Mario Zechner
9a8bc61300
fix(tui,coding-agent): handle tmux xterm extended keys and warn on tmux setup fixes #1872
2026-03-07 23:01:48 +01:00
Mario Zechner
b279d03d33
Add [Unreleased] section for next cycle
2026-03-07 14:44:23 +01:00
Mario Zechner
3c3d63e161
Release v0.57.0
2026-03-07 14:43:35 +01:00
Mario Zechner
8f2d3ad85e
chore(changelog): audit unreleased entries
2026-03-07 14:42:35 +01:00
Mario Zechner
bd751f0515
chore(coding-agent): add codex tool-loop cache probe
2026-03-07 14:34:28 +01:00
Mario Zechner
a3f05423d9
feat(coding-agent): add provider payload hook
2026-03-07 14:34:28 +01:00
Mario Zechner
e3adaf1bd9
fix(coding-agent): use strict JSONL framing fixes #1911
2026-03-07 14:34:27 +01:00
Mario Zechner
3e6e459cfc
chore(coding-agent): close issue 1915
...
closes #1915
2026-03-07 12:22:14 +01:00
Mario Zechner
e80692bcb6
fix(coding-agent): keep ~/.agents skills user-scoped\n\ncloses #1915
2026-03-07 12:21:54 +01:00
Mario Zechner
1e52a687ae
Add [Unreleased] section for next cycle
2026-03-06 17:07:29 +01:00
Mario Zechner
dd66b5cc3e
Release v0.56.3
2026-03-06 17:06:42 +01:00
Mario Zechner
e1d2c355e2
docs: add missing changelog entries for #1871 , #1878 , and New Features section
2026-03-06 17:05:41 +01:00
Mario Zechner
bcfd5169a2
docs(coding-agent): document tool result truncation in compaction serialization
2026-03-06 16:58:16 +01:00
Mario Zechner
d1a17bbae5
fix(coding-agent): guard against stale kept pre-compaction usage in error-path threshold check
2026-03-06 16:57:14 +01:00
Mario Zechner
c950c692a1
fix(coding-agent): truncate tool results in compaction summarization to prevent overflow, fixes #1796
2026-03-06 16:57:14 +01:00
Mario Zechner
d8e3998d6e
docs(coding-agent): add changelog entry for #1838
2026-03-06 16:42:43 +01:00
Mario Zechner
15b36cbee1
feat(coding-agent): preserve custom editor onEscape/onCtrlD handlers
...
Only set app-level handlers on custom editors if they haven't defined
their own. This allows custom editors (e.g. vim mode) to implement
custom escape handling instead of being overwritten.
Closes #1838
2026-03-06 16:41:12 +01:00
Mario Zechner
b8910f13ad
fix(coding-agent): allow threshold compaction for error messages using last successful usage, fixes #1834
2026-03-06 16:26:11 +01:00
Mario Zechner
25c145142d
docs(coding-agent): add changelog entry for #1860
2026-03-06 16:18:02 +01:00
Mario Zechner
d5c18e0248
fix(coding-agent): ignore stale pre-compaction assistant usage in threshold compaction checks, fixes #1860
2026-03-06 16:17:38 +01:00
Mario Zechner
58f8fcd8f1
fix(coding-agent): retry sync lockfile acquisition to prevent false auth errors during parallel startup
...
Add manual retry loop (10 attempts, 20ms delay) around lockfile.lockSync()
in FileAuthStorageBackend and FileSettingsStorage. Previously, concurrent
pi processes would fail immediately on ELOCKED, causing auth.json to load
as empty and surfacing misleading 'No API key found' errors.
fixes #1871
2026-03-06 16:04:01 +01:00
Mario Zechner
bdf482cefc
fix(tui): add modifyOtherKeys fallback for modified enter keys in tmux
...
When Kitty keyboard protocol is not available (e.g. inside tmux), fall
back to xterm modifyOtherKeys mode 2 so that Shift+Enter, Ctrl+Enter,
and other modified keys are distinguishable from plain Enter.
tmux users need to add to ~/.tmux.conf:
set -g extended-keys on
set -g extended-keys-format csi-u
closes #1872
2026-03-06 16:02:17 +01:00
Mario Zechner
cb6aef2ffb
fix(coding-agent): preserve thinking defaults across model switches closes #1864
2026-03-06 15:14:53 +01:00
Mario Zechner
b079003cf6
docs(coding-agent): clarify that tool errors must be thrown, not returned
...
Returning { isError: true } from a tool's execute function was silently
ignored - the agent loop only sets isError via the catch block. Fix the
with-deps example to throw instead, add a clear note in the Tool Definition
docs section, and update the Error Handling summary.
closes #1881
2026-03-06 14:36:27 +01:00
Mario Zechner
e4172e68d0
feat(ai): add claude-sonnet-4-6 to Antigravity, fix Claude thinking header detection, bump UA to 1.18.4
...
closes #1859
2026-03-06 13:27:35 +01:00
Mario Zechner
b13e080113
fix(coding-agent): clear header on /new closes #1880
2026-03-06 12:52:02 +01:00
Mario Zechner
b4e7d5c445
fix(ai): restore OpenAI Responses reasoning replay closes #1878
2026-03-06 12:39:55 +01:00
Mario Zechner
b14c359289
Add [Unreleased] section for next cycle
2026-03-06 00:42:35 +01:00
Mario Zechner
45a8499c8f
Release v0.56.2
2026-03-06 00:41:33 +01:00
Mario Zechner
4110d93369
docs(changelog): audit unreleased entries
2026-03-06 00:39:41 +01:00
Mario Zechner
84655e814c
fix(coding-agent): prefer workspace dist files for extension aliases
2026-03-06 00:39:13 +01:00
Mario Zechner
9bcf06c056
fix(tui): add Kitty CSI-u printable decoding to Input component, closes #1857
2026-03-06 00:33:58 +01:00
Mario Zechner
863135d429
fix(ai): keep mistral browser-safe
2026-03-06 00:16:18 +01:00
Mario Zechner
a31065166d
Merge branch 'feat/use-mistral-sdk'
2026-03-05 23:49:29 +01:00
Mario Zechner
4c175790b1
fix(ai): preserve mistral thinking replay
2026-03-05 23:49:18 +01:00
Mario Zechner
0573612a89
fix(ai,coding-agent): simplify oauth subpath exports closes #1856
2026-03-05 23:28:56 +01:00
Mario Zechner
a74b18ca5a
docs(changelog): add gpt-5.4 entries
2026-03-05 23:07:43 +01:00
Mario Zechner
8e77bb3272
merge: add gpt-5.4 support and cap context windows to 272k
2026-03-05 23:00:34 +01:00
Mario Zechner
16ec7de29c
fix(ai): cap gpt-5.4 context windows to 272k
2026-03-05 22:57:20 +01:00
Mario Zechner
7aed39063b
docs(coding-agent): add changelog entry for CRLF write preview fix ( #1854 )
2026-03-05 22:37:28 +01:00
Mario Zechner
daaabbeac5
fix(coding-agent): normalize CRLF in write preview rendering ( fixes #1854 )
2026-03-05 22:35:26 +01:00
Mario Zechner
a0d839ce84
fix(ai): use skip_thought_signature_validator for unsigned Gemini 3 tool calls
...
Replace text fallback with the official sentinel value so unsigned function
calls retain structured context in multi-turn conversations.
closes #1829
2026-03-05 22:04:00 +01:00
Mario Zechner
cfbb15876a
fix(ai): antigravity endpoint cascade on 403/404, add autopush fallback, strip extra headers
...
closes #1830
2026-03-05 21:59:43 +01:00
Mario Zechner
8f2af2ae7e
feat(ai): add github-copilot gpt-5.3-codex fallback closes #1853
2026-03-05 21:47:52 +01:00
Mario Zechner
8fc2b76827
fix(ai): omit empty OpenAI Responses thinking blocks on replay
2026-03-05 21:28:16 +01:00
Mario Zechner
87d71380e2
fix(ai): preserve OpenAI Responses assistant phase across turns closes #1819
2026-03-05 21:13:06 +01:00
Mario Zechner
3de8c48692
fix(coding-agent): make footer truncation width-aware
...
Use visibleWidth/truncateToWidth for footer path and stats truncation so wide Unicode text cannot overflow terminal width.
Add regression tests for wide session/model/provider names and document the fix in changelog.
closes #1833
2026-03-05 20:45:04 +01:00
Mario Zechner
dabcda0db3
fix(tui): full redraw on terminal width/height resize\n\ncloses #1844
2026-03-05 20:27:37 +01:00
Mario Zechner
3daf72d720
docs(coding-agent): clarify models.json name behavior ( fixes #1840 )
2026-03-05 20:16:28 +01:00
Mario Zechner
708ce9d4ce
Add [Unreleased] section for next cycle
2026-03-05 07:14:13 +01:00
Mario Zechner
ab00c80892
Release v0.56.1
2026-03-05 07:13:27 +01:00
Mario Zechner
da915ddb99
chore(changelog): add unreleased entries for post-v0.56.0 fixes
2026-03-05 07:12:35 +01:00
Mario Zechner
f430dce00a
fix(tui): isolate blockquote rendering from default text style
2026-03-04 21:30:54 +01:00
Mario Zechner
3e611c135b
Add [Unreleased] section for next cycle
2026-03-04 21:24:33 +01:00
Mario Zechner
e39c7d163b
Release v0.56.0
2026-03-04 21:23:47 +01:00
Mario Zechner
cefb17dbd7
docs(changelog): add missing unreleased entries after v0.55.4
2026-03-04 21:19:14 +01:00
Mario Zechner
83b57924a0
fix(coding-agent): resolve extension aliases without require.resolve
2026-03-04 21:18:45 +01:00
Mario Zechner
668ebc0941
fix(ai): replace Function-based dynamic imports with module imports ( fixes #1814 )
2026-03-04 20:50:14 +01:00
Mario Zechner
0199abfd11
fix(binary): preload Bedrock provider module for Bun bundle
...
refs #1814
2026-03-04 20:47:41 +01:00
Mario Zechner
12cec4f162
fix(coding-agent): build binary with freshly built workspace deps
2026-03-04 20:36:27 +01:00
Mario Zechner
c0d706bf32
fix(extensions): alias pi-ai oauth subpath in jiti loader
2026-03-04 20:31:57 +01:00
Mario Zechner
392fbc73cd
fix(dev): map pi-ai oauth subpath in tsconfig paths
2026-03-04 20:30:10 +01:00
Mario Zechner
9673f52919
fix(tui): render blockquote list content correctly
...
closes #1787
2026-03-04 20:25:55 +01:00
Mario Zechner
e0754fdbb3
fix(ai,coding-agent): make pi-ai browser-safe and move OAuth runtime exports
...
- add browser smoke bundling check to root check + pre-commit
- lazy-load Bedrock provider registration to avoid browser graph traversal
- remove top-level OAuth runtime exports from @mariozechner/pi-ai
- add @mariozechner/pi-ai/oauth subpath export and update coding-agent imports
- move proxy dispatcher init to coding-agent CLI (Node-only)
- document Bedrock/OAuth browser limitations
closes #1814
2026-03-04 20:21:25 +01:00
Mario Zechner
2af0c98b5f
fix(ai): support gemini-3.1 flash-lite and thinking matching
...
closes #1785
2026-03-04 20:17:58 +01:00
Mario Zechner
e64cd15c25
fix(coding-agent): preserve session thinking for scoped model cycling
...
closes #1789
2026-03-04 19:51:55 +01:00
Mario Zechner
4cb1a56b53
fix(tui,coding-agent): add OSC 133 user message markers support closes #1805
2026-03-04 18:33:22 +01:00
Mario Zechner
689e7b4ac2
fix(tui): make single-line paste atomic to avoid @ autocomplete lag
...
closes #1812
2026-03-04 18:25:37 +01:00
Mario Zechner
49749407fa
fix(tui): ignore unsupported Kitty CSI-u modifiers closes #1807
2026-03-04 18:14:29 +01:00
Mario Zechner
8e157412a6
Update AGENTS.md
2026-03-04 18:06:26 +01:00
Mario Zechner
6b4b920425
fix(coding-agent): stop overflow auto-compaction cascades
...
fixes #1319
2026-03-03 17:19:42 +01:00
Mario Zechner
7b96041068
fix(ai): map groq qwen3 reasoning effort values closes #1745
2026-03-03 16:44:42 +01:00
Mario Zechner
42579dd923
feat(ai,coding-agent): add OpenCode Go provider support closes #1757
2026-03-03 16:02:29 +01:00
Mario Zechner
1912f0336b
fix(coding-agent): allow model-level baseUrl override in models.json closes #1777
2026-03-03 15:46:58 +01:00
Mario Zechner
7bd4c45d81
fix(ai,coding-agent): update antigravity gemini 3.1 models and headers
...
fixes #1761
2026-03-03 14:54:43 +01:00
Mario Zechner
76a191c264
fix(scripts): make npm scripts cross-platform with shx ( closes #1771 )
2026-03-03 14:26:01 +01:00
Mario Zechner
c65de34e11
Add [Unreleased] section for next cycle
2026-03-02 23:25:10 +01:00
Mario Zechner
9a53d950c4
Release v0.55.4
2026-03-02 23:24:27 +01:00
Mario Zechner
8903299074
fix(coding-agent): close retry wait race across queued events (from #1726 )
2026-03-02 23:20:16 +01:00
Mario Zechner
2e7ec46176
docs(coding-agent): add unreleased new features section
2026-03-02 23:08:08 +01:00
Mario Zechner
5ec0540bf4
Update README.md
2026-03-02 23:00:29 +01:00
Mario Zechner
a2b52f5cee
OSS vacation off
2026-03-02 23:00:15 +01:00
Mario Zechner
8e06afbf34
chore(coding-agent): add changelog entry for PR #1719\n\ncloses #1719
2026-03-02 22:59:32 +01:00
Mario Zechner
7b7b967aef
merge: PR #1719 for local testing
2026-03-02 22:54:58 +01:00
Mario Zechner
8032a302e9
docs(coding-agent): fix changelog attribution format
2026-03-02 22:52:55 +01:00
Mario Zechner
e18c74dda0
docs(coding-agent): reference #1237 in changelog attribution
2026-03-02 22:51:36 +01:00
Mario Zechner
8344f3da49
docs(coding-agent): add changelog attribution for #1720
2026-03-02 22:51:00 +01:00