Mario Zechner
5a0d35783e
Merge pull request #1275 from haoqixu/feat-model-selector-show-name
...
feat(coding-agent): display name of selected model in modelSelectors
2026-02-05 13:11:35 +01:00
Mario Zechner
0feb6e90ce
Merge pull request #1269 from aliou/fix/export-ansi-indentation
...
fix(coding-agent): preserve indentation in ANSI-rendered HTML export
2026-02-05 03:13:40 +01:00
Mario Zechner
2f18057ac2
Merge branch 'main' into fix/export-ansi-indentation
2026-02-05 03:13:32 +01:00
Mario Zechner
592b1c7ffc
Merge pull request #1271 from aliou/fix/streaming-images-dropped
...
fix(coding-agent): forward images through steer/followUp during streaming
2026-02-05 03:12:21 +01:00
Mario Zechner
634899aba0
docs(coding-agent): add minimal-mode.ts to extensions README
2026-02-04 23:50:39 +01:00
Mario Zechner
6c25399dfe
feat(coding-agent): add minimal-mode.ts example extension
...
Demonstrates overriding built-in tool rendering to show only tool calls
in collapsed mode and full output in expanded mode. Shows how users can
implement a 'minimal mode' using the existing extension API.
2026-02-04 23:49:06 +01:00
Mario Zechner
9cf5758b68
feat(coding-agent): support shell commands and env vars in auth.json API keys
...
API keys in auth.json now support the same resolution as models.json:
- Shell command: "\!command" executes and uses stdout (cached)
- Environment variable: uses the value of the named variable
- Literal value: used directly
Extracted shared resolveConfigValue() to new resolve-config-value.ts module.
2026-02-04 23:02:00 +01:00
Mario Zechner
7c39a12a28
Merge pull request #1258 from Gurpartap/fix/custom-message-expand-state
...
Respect expand state for custom messages
2026-02-04 17:10:43 +01:00
Mario Zechner
0404a93e33
Add [Unreleased] section for next cycle
2026-02-04 14:25:32 +01:00
Mario Zechner
47a9bffcf3
Release v0.51.6
2026-02-04 14:24:49 +01:00
Mario Zechner
2135b61b93
chore: audit changelog entries
2026-02-04 14:23:55 +01:00
Mario Zechner
d0679dcfc0
fix(coding-agent): ignore unknown skill frontmatter fields
2026-02-04 14:20:24 +01:00
Mario Zechner
fcfbc82ec2
fix(coding-agent): reload global settings fixes #1241
2026-02-04 14:14:52 +01:00
Mario Zechner
d8c96948cf
chore(coding-agent): add changelog for bash detection
2026-02-04 13:53:32 +01:00
Mario Zechner
2d16d73ba1
docs(coding-agent): add PR attribution and keybindings docs for resume action
2026-02-04 13:44:15 +01:00
Mario Zechner
b5be54b8ef
fix(coding-agent): persist user message after fork
...
When hasAssistant guard returns early, set flushed=false so
the next persist (after assistant arrives) writes all entries
including the user message.
2026-02-04 13:35:45 +01:00
Mario Zechner
4990981e47
fix(coding-agent): rpc test needs prompt before checking session file
...
Session files are only written after first assistant message.
The test was checking for a session file without having sent any prompt.
2026-02-04 13:27:54 +01:00
Mario Zechner
13ac63c3cd
fix(coding-agent): fork writes to new session file, not parent ( fixes #1242 )
...
- Store previousSessionFile before creating branched session
- Update sessionFile after writing new branch file
- Pass parentSession when forking from first message
- Add --local to git config in tests to prevent repo escape
2026-02-04 13:22:43 +01:00
Mario Zechner
b1c2c95f23
fix(coding-agent): normalize local package removal paths ( fixes #1243 )
2026-02-04 12:56:00 +01:00
Mario Zechner
150aeebf7d
fix(ai): respect codex baseUrl ( closes #1244 )
2026-02-04 12:30:31 +01:00
Mario Zechner
b23e6ea21e
Merge pull request #1246 from haoqixu/fix-settings-crash-with-small-width
...
fix(coding-agent): avoid crash of /settings with small width
2026-02-04 12:12:12 +01:00
Mario Zechner
6cc1676eae
Add [Unreleased] section for next cycle
2026-02-04 02:33:53 +01:00
Mario Zechner
5921206f9a
Release v0.51.5
2026-02-04 02:33:07 +01:00
Mario Zechner
f77a1f6726
chore(changelog): note Bedrock model generation cleanup
2026-02-04 02:32:07 +01:00
Mario Zechner
1fe73ad423
Revert "fix(coding-agent): handle npm on Windows with shell fallback fixes #1220 "
...
This reverts commit 895b85636a .
2026-02-04 02:22:37 +01:00
Mario Zechner
3297a47c40
chore(deps): update glob and overrides
2026-02-04 02:21:06 +01:00
Mario Zechner
895b85636a
fix(coding-agent): handle npm on Windows with shell fallback fixes #1220
2026-02-04 02:21:06 +01:00
Mario Zechner
1d8450ed6c
Merge pull request #1239 from unexge/push-qlzvuwsokuvn
...
chore(ai): clean up Bedrock-specific workarounds from `generate-models.ts`
2026-02-04 01:40:42 +01:00
Mario Zechner
2a9de37b19
Add [Unreleased] section for next cycle
2026-02-03 23:05:56 +01:00
Mario Zechner
9833717b41
Release v0.51.4
2026-02-03 23:05:07 +01:00
Mario Zechner
86388092b5
docs: note pi.dev domain
2026-02-03 23:04:15 +01:00
Mario Zechner
9eb8985fe4
Add pi.dev donation attribution
2026-02-03 23:00:40 +01:00
Mario Zechner
116c57a361
chore(coding-agent): update share viewer url
2026-02-03 22:49:01 +01:00
Mario Zechner
8e370498a2
Merge pull request #1228 from haoqixu/fix-input-emojis-scrolling
...
fix(tui): avoid split of emojis when scrolling input
2026-02-03 22:19:27 +01:00
Mario Zechner
c983bfdb1e
Add [Unreleased] section for next cycle
2026-02-03 17:30:37 +01:00
Mario Zechner
39d719900d
Release v0.51.3
2026-02-03 17:29:53 +01:00
Mario Zechner
ff5e9ec96d
chore: update changelogs
2026-02-03 17:29:05 +01:00
Mario Zechner
7bbc70efa5
Merge pull request #1222 from ferologics/feat/notify-kitty-windows
...
feat(notify): add Kitty (OSC 99) and Windows Terminal support
2026-02-03 17:20:04 +01:00
Mario Zechner
e1e4e593c0
fix(coding-agent): persist thinking level defaults
2026-02-03 17:17:38 +01:00
Mario Zechner
8a7a761deb
fix(coding-agent): resolve npm.cmd on Windows
...
closes #1220
2026-02-03 17:04:22 +01:00
Mario Zechner
2e1c5ebdee
fix(ai): relax xhigh model check
...
fixes #1209
2026-02-03 13:03:46 +01:00
Mario Zechner
2f5235b966
fix(coding-agent): support local install paths relative to settings files closes #1216
2026-02-03 12:58:34 +01:00
Mario Zechner
e54dff7efb
fix(coding-agent): rename SlashCommandSource "template" to "prompt" for consistency
...
BREAKING CHANGE: RPC get_commands response and SlashCommandSource type
now use "prompt" instead of "template" to match the rest of the codebase.
2026-02-03 12:27:45 +01:00
Mario Zechner
8292d7ce5d
feat(coding-agent): add commands.ts example and export SlashCommandInfo types
...
- Add example extension demonstrating pi.getCommands() API
- Export SlashCommandInfo, SlashCommandLocation, SlashCommandSource from main index.ts
Follow-up to #1210
2026-02-03 12:20:37 +01:00
Mario Zechner
5a6151ba1e
feat(coding-agent): add ExtensionAPI.getCommands() ( #1210 )
2026-02-03 12:18:55 +01:00
Mario Zechner
ff9a3f0660
Add [Unreleased] section for next cycle
2026-02-03 02:19:00 +01:00
Mario Zechner
4cbc865215
Release v0.51.2
2026-02-03 02:18:12 +01:00
Mario Zechner
c6ab9a64ce
chore(changelog): audit unreleased entries
2026-02-03 02:17:01 +01:00
Mario Zechner
494a7750ef
fix(coding-agent): remove install method cache
2026-02-03 01:45:35 +01:00
Mario Zechner
2b197c7fb1
docs: require closes/fixes in commit messages
2026-02-03 01:36:46 +01:00
Mario Zechner
20d704fee1
fix(tui): restore legacy newline handling
2026-02-03 01:36:46 +01:00
Mario Zechner
ba5eb05f44
fix(tui): include hidden paths in @ autocomplete
2026-02-03 01:36:46 +01:00
Mario Zechner
7a9c668357
Merge pull request #1196 from haoqixu/fix-commands-conflict
...
fix(coding-agent): filter out commands conflict with builtins
2026-02-03 01:22:29 +01:00
Mario Zechner
90b18218bd
docs(coding-agent): document tool expansion UI methods
2026-02-03 01:16:29 +01:00
Mario Zechner
c64e228b76
fix(tui): honor keybindings for submit fallback
2026-02-03 01:10:06 +01:00
Mario Zechner
d2139d8ed2
chore(agent): drop unused pi-tui dependency
2026-02-03 00:26:52 +01:00
Mario Zechner
8c38de0495
fix(tui): drain stdin on exit to avoid Kitty release leak
...
Drain stdin for up to 1s after disabling Kitty protocol so in-flight key
release events are consumed before the shell regains control.
Fixes #1204
2026-02-03 00:07:35 +01:00
Mario Zechner
9a4d043b28
fix(tui): drain Kitty key release events before exit to prevent SSH leak
...
Adds Terminal.prepareForExit() to disable Kitty protocol and wait for
in-flight release events before fully stopping. This prevents escape
sequences from leaking to the parent shell over slow SSH connections.
Fixes #1204
2026-02-03 00:01:39 +01:00
Mario Zechner
c9a20a3aa4
fix(coding-agent): normalize @ path prefixes closes #1206
2026-02-02 23:56:20 +01:00
Mario Zechner
1fbafd6cc7
docs: document video and image fields for package gallery
2026-02-02 20:16:18 +01:00
Mario Zechner
0aa0b5fdba
Add [Unreleased] section for next cycle
2026-02-02 19:36:52 +01:00
Mario Zechner
e02bdf8ef1
Release v0.51.1
2026-02-02 19:36:08 +01:00
Mario Zechner
59acb17354
docs: audit and update changelog entries for v0.51.0..HEAD
2026-02-02 19:35:17 +01:00
Mario Zechner
f431f62609
fix(tui): pause stdin before restoring raw mode to prevent SSH session close
...
Fixes #1185
2026-02-02 19:24:55 +01:00
Mario Zechner
111a31e4db
fix(ai): apply cache_control to string user messages
2026-02-02 19:19:12 +01:00
Mario Zechner
0d934091f4
feat(tui): add PI_DEBUG_REDRAW=1 env var for debugging full redraws
...
Logs redraw triggers to ~/.pi/agent/pi-debug.log when enabled.
2026-02-02 08:39:57 +01:00
Mario Zechner
0925fafe3b
fix(tui): reduce unnecessary full redraws for better performance
...
- Remove height change detection (only width changes trigger full redraw)
- Change clearOnShrink default to false (use PI_CLEAR_ON_SHRINK=1 to enable)
- Fix viewport check to use previousLines.length instead of maxLinesRendered
(prevents false positive redraws when appending lines after content shrunk)
- Add clearOnShrink setting to /settings in coding-agent
- Remove line truncation in custom message component (always show full content)
2026-02-02 08:10:08 +01:00
Mario Zechner
419c07fb19
Add [Unreleased] section for next cycle
2026-02-02 00:51:29 +01:00
Mario Zechner
580c02c74d
Release v0.51.0
2026-02-02 00:50:46 +01:00
Mario Zechner
ff0eb3ecd4
fix(ai): omit strict for unsupported openai completions
2026-02-02 00:44:55 +01:00
Mario Zechner
5d6a7d6c34
Better skill dir resolution, closes #1171
2026-02-02 00:33:51 +01:00
Mario Zechner
0a26db53ef
fix(coding-agent): align ToolDefinition.execute signature with AgentTool
...
BREAKING CHANGE: ToolDefinition.execute parameter order changed from
(id, params, onUpdate, ctx, signal) to (id, params, signal, onUpdate, ctx).
This aligns with AgentTool.execute so wrapping built-in tools no longer
requires parameter reordering. Update extensions by swapping signal and
onUpdate parameters.
2026-02-02 00:29:47 +01:00
Mario Zechner
287a0b606d
fix(coding-agent): guard clipboard native load
2026-02-02 00:23:12 +01:00
Mario Zechner
ad8026f821
docs(coding-agent): add Termux setup guide and changelog audit
...
- Add comprehensive Termux (Android) setup documentation
- Add Termux platform detection in tools-manager for fd/rg
- Add New Features entries for Android/Termux, bash spawn hook, Linux ARM64 musl
- Add missing changelog entry for clipboard dependency update
2026-02-02 00:09:17 +01:00
Mario Zechner
86b43c8eac
feat(coding-agent): add bash spawn hook
2026-02-01 23:17:51 +01:00
Mario Zechner
25fa1fafde
docs(coding-agent): add Android/Termux changelog entry
2026-02-01 22:59:39 +01:00
Mario Zechner
cb850676e7
feat(coding-agent): add Android/Termux support
...
- Make @mariozechner/clipboard an optional dependency
- Lazy-load clipboard module with graceful fallback
- Add Termux clipboard support via termux-clipboard-set
- Skip image clipboard on Termux (not supported)
fixes #1164
2026-02-01 22:59:11 +01:00
Mario Zechner
cafe12b79e
docs(coding-agent): add missing changelog entries and New Features section
...
- Add New Features section highlighting PI_PACKAGE_DIR, named session filter,
typed tool call events, and Extension UI Protocol
- Add missing fix: tree selector focus behavior (#1142 )
- Cross-package: cacheRetention passthrough fix (#1154 )
- Cross-package: OAuth proxy support fix (#1132 )
2026-02-01 22:26:03 +01:00
Mario Zechner
b10a1743f9
Fix Discord link
2026-02-01 22:25:07 +01:00
Mario Zechner
ce607fc343
feat(coding-agent): type ToolCallEvent.input per tool ( #1147 )
2026-02-01 19:13:55 +01:00
Mario Zechner
469fb5d27c
fix(ai): OAuth login/refresh now respects HTTP proxy env vars
...
Extracted HTTP proxy setup to shared module and imported it from both
stream.ts and oauth/index.ts. This ensures fetch() calls during OAuth
flows (token exchange, refresh, project discovery) go through the proxy.
fixes #1132
2026-02-01 19:08:13 +01:00
Mario Zechner and warren
73839f876e
feat(coding-agent): add named-only filter toggle to /resume picker ( #1128 )
...
Adds Ctrl+N toggle to filter sessions by named-only vs all in the /resume picker.
- Add NameFilter type and filtering logic to session-selector-search.ts
- Add toggleSessionNamedFilter app keybinding (default: ctrl+n)
- Show Name: All/Named state in header
- Empty state mentions toggle keybinding as escape hatch
- Export hasSessionName() to avoid duplication
Co-authored-by: warren <warren.winter@gmail.com >
2026-02-01 19:03:38 +01:00
Mario Zechner
47308d3f4f
Update @mariozechner/clipboard to 0.3.2 (adds linux-arm64-musl support)
2026-02-01 18:23:23 +01:00
Mario Zechner
3c687b427e
fix(skills): add path resolution guidance to skills preamble
...
Models were resolving relative paths in skill files from cwd instead of
the skill directory. Added explicit instruction that relative paths are
resolved from the skill directory (parent of the location path).
Fixes #1136
2026-02-01 18:06:13 +01:00
Mario Zechner
67dbe7c6b7
docs(coding-agent): add PI_PACKAGE_DIR to changelog and documentation
...
Adds changelog entry, README env var table entry, and CLI help text for
the PI_PACKAGE_DIR environment variable added in #1153 .
2026-02-01 18:03:42 +01:00
Mario Zechner
8306b3bc20
docs(coding-agent): improve models.md with minimal example and defaults
...
- Add minimal example showing only required fields for local models
- Rename 'Basic Example' to 'Full Example' showing all fields
- Add 'Default' column to model configuration table
- Clarify that apiKey is required but ignored by Ollama
2026-02-01 17:51:24 +01:00
Mario Zechner
c8b8f043a7
fix(coding-agent): make models.json model fields optional with defaults
...
Model definitions now only require 'id'. All other fields have sensible
defaults for local models (Ollama, LM Studio, etc.):
- name: defaults to id
- reasoning: defaults to false
- input: defaults to ["text"]
- cost: defaults to {input: 0, output: 0, cacheRead: 0, cacheWrite: 0}
- contextWindow: defaults to 128000
- maxTokens: defaults to 16384
Existing configs that specify all fields continue to work unchanged.
Fixes #1146
2026-02-01 17:49:19 +01:00
Mario Zechner
3830d74d22
fix(coding-agent): export discoverAndLoadExtensions from package
...
closes #1148
2026-02-01 17:47:01 +01:00
Mario Zechner
bd00d2fbca
fix(coding-agent): pi update not updating packages without args
...
fixes #1151
2026-02-01 17:41:36 +01:00
Mario Zechner
8f7ef85833
fix(ai): pass through cacheRetention in buildBaseOptions
...
fixes #1154
2026-02-01 17:37:45 +01:00
Mario Zechner
b86fae351a
Update Discord link
2026-02-01 17:04:02 +01:00
Mario Zechner
43be54c237
Add [Unreleased] section for next cycle
2026-02-01 09:36:24 +01:00
Mario Zechner
7678b075fb
Release v0.50.9
2026-02-01 09:35:42 +01:00
Mario Zechner
55ce7e84ef
chore: Fix import order
2026-02-01 09:34:44 +01:00
Mario Zechner
b0e1672da2
docs(coding-agent): add cacheRetention changelog
2026-02-01 09:33:43 +01:00
Mario Zechner
abfd04b5c5
feat(ai): add cacheRetention stream option
2026-02-01 09:32:10 +01:00
Mario Zechner
e9ca0be769
feat(ai): add PI_AI_ANTIGRAVITY_VERSION env var override
...
Allows users to override the Antigravity User-Agent version when Google
updates their version requirements, avoiding the need to wait for a
package release.
Fixes #1129
2026-02-01 09:32:10 +01:00
Mario Zechner
aa83170e0f
Add [Unreleased] section for next cycle
2026-02-01 02:34:06 +01:00
Mario Zechner
4baa42cb6d
Release v0.50.8
2026-02-01 02:33:23 +01:00
Mario Zechner
025b7bec7a
fix(coding-agent): add spacer before context output
2026-02-01 02:24:51 +01:00