Commit graph

3425 commits

Author SHA1 Message Date
David Brailovsky
914cf1472e Release v0.84.2 2026-08-14 12:00:00 +02:00
David Brailovsky
9b4adc823f docs: audit changelogs since v0.84.1 2026-08-14 09:50:22 +00:00
David Brailovsky
d10c974b94 docs: audit changelogs since v0.84.1 2026-08-14 11:47:05 +02:00
Panoplos
4caa3c440b
fix(tui): route selection copy through the host clipboard (#8110)
TuiAltScreen.copySelectionToClipboard() wrote a bare OSC 52 sequence and
flashed "Copied!" unconditionally. Terminals that ignore OSC 52 clipboard
writes (macOS Terminal.app, VTE terminals, tmux without OSC 52 passthrough)
left the system clipboard untouched while the toast reported success.

Add an injectable copySelection option to TuiAltScreenOptions (an async
handler returning whether the copy succeeded) and use it when provided,
falling back to the existing OSC 52 write otherwise. The coding agent now
injects its native clipboard implementation (clipboard addon + pbcopy /
wl-copy / xclip / xsel), so selection copy reaches the real clipboard and
the toast only fires on verified success, with "Copy failed" otherwise.

Closes #7761

Co-authored-by: 富永 誠 <makoto@credify.one>
2026-08-14 11:46:46 +02:00
Anders Bech Mellson
ab0dc51fcf
fix(coding-agent): use APP_NAME in user-facing messages (#8067)
APP_NAME is derived from piConfig.name so a rebranded distribution shows
its own name, and roughly 90 call sites already use it. Twelve
user-facing strings hardcoded "pi" instead, so those messages named the
upstream binary regardless of piConfig.name:

- the trust project folder prompt
- "Restart pi for this to take effect." after a saved trust decision
- the "Start without extensions" hint on an extension load failure
- the invalid session file error
- the executable location in the self-update-unavailable notice
- the three auth command usage strings and the unknown auth command
  error, which are printed next to `${APP_NAME} --help` in main.ts and
  so contradicted it
- "is configured outside pi." in the provider setup dialog
- the uncaughtException line

Output is unchanged for pi itself: piConfig has no name, so APP_NAME
falls back to "pi".
2026-08-14 11:26:20 +02:00
Mario Zechner
e14afc648e fix(coding-agent): collapse fallback tool output closes #7979 2026-08-14 10:22:36 +02:00
Mario Zechner
6633618350 fix(coding-agent): update vulnerable nanoid dependency 2026-08-14 10:09:35 +02:00
alexsavio
d268454e9c
fix(examples): accept array-form tools in the subagent example (#7598)
`parseFrontmatter` runs a real YAML parser, so `tools: [read, bash]`
arrives as an array while `tools: read, bash` arrives as a string. The
loader only handled the string form and called `.split(",")`, which
throws on the array form.

The throw escapes `loadAgentsFromDir` -- only `readdirSync` and
`readFileSync` are guarded -- so one agent file using the array form
broke discovery for every agent in that scope, not just itself.

Normalize both spellings in one helper, and type the frontmatter fields
as `unknown` so the string assumptions are explicit. The previous
`parseFrontmatter<Record<string, string>>` annotation asserted a shape
the YAML parser never guarantees, which is what hid the mismatch from
tsc while `AgentConfig.tools` was already typed `string[]`.
2026-08-14 09:59:42 +02:00
David Brailovsky
5f7195c51e fix(coding-agent): update Cloudflare compat test model 2026-08-14 09:32:24 +02:00
David Brailovsky
9d2ec7ffab fix(ai): use pi user agent for Kimi Coding requests 2026-08-13 22:26:38 +02:00
Vegard Stikbakke
6f707eb360 fix(coding-agent): show managed-tool startup status in TUI 2026-08-13 15:54:34 +02:00
Vegard Stikbakke
46bb9a2c3b docs(coding-agent): clarify Windows paths in settings 2026-08-13 09:54:58 +02:00
Armin Ronacher
7d8c11d37f fix(coding-agent): share concurrent model catalog refreshes 2026-08-13 09:43:36 +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
Cristina Poncela Cubeiro
47b5119d09
fix: trigger turn false should not start turn (#8022) 2026-08-12 15:16:05 +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
Vegard Stikbakke
b3edf01702 fix(ai): bound Copilot policy update concurrency 2026-08-11 14:25:53 +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
Vegard Stikbakke
452923b54a fix(tui): parse multiline LaTeX arguments
Closes #7760
2026-08-11 12:37:45 +02:00
Armin Ronacher
7915cdac64 feat(ai): add strict tool schema conversion 2026-08-11 12:06:33 +02:00
Duncan Ogilvie
b987ead358
feat(agent): expose expandPromptTemplates in sendUserMessage (#7857) 2026-08-11 11:14:28 +02:00
Dustin Spicuzza
e3798ca91f
fix(coding-agent): inherit subagent session config (#7897) 2026-08-11 11:12:34 +02:00
Arthur
06ed871679
fix(tui): prevent split Alt+Enter from interrupting (#7899)
* fix(tui): prevent split Alt+Enter from interrupting

Increase the escape-sequence timeout over SSH and allow high-latency terminals to override it with PI_TUI_ESC_TIMEOUT.

Fixes #7876

* docs(coding-agent): shorten escape timeout description

---------

Co-authored-by: Mario Zechner <badlogicgames@gmail.com>
2026-08-11 11:12:01 +02:00
Gators King
1279952de4
feat(tui): add unbound single-line transcript scrolling actions (#7903)
Add tui.altScreen.lineUp and tui.altScreen.lineDown keybinding actions
for one-line viewport scrolling in fullscreen TUI. Both are unbound by
default and can be configured via user keybindings.

closes #7830

Co-authored-by: midas <midas@traderdifferent.com>
Co-authored-by: Mario Zechner <badlogicgames@gmail.com>
2026-08-11 11:06:55 +02:00
Armin Ronacher
00121ed999
feat(tui): add fullscreen transcript search (#7913)
Search rendered primary scroll-view content with configurable navigation and theme-aware highlighting. Preserve manual scrolling and buffer fragmented mouse input during search.
2026-08-11 10:59:28 +02:00
Vegard Stikbakke
9cb7f493e7 docs(coding-agent): document AI_AGENT process marker
closes #7747
2026-08-11 09:04:09 +02:00
distributedlock
3dd4623eee
Fix prompt formatting for current working directory (#7887) 2026-08-10 19:18:05 +02:00
Vegard Stikbakke
31b513e316 chore(docs): change a bullet point in compaction docs 2026-08-10 08:27:35 +02:00
Vegard Stikbakke
4761021709 chore(docs): change 'reloads' phrasing in compaction docs 2026-08-10 08:03:46 +02:00
Vegard Stikbakke
368e013dec chore(docs): fix ascii alignment in compaction docs 2026-08-08 12:22:47 +02:00
Mario Zechner
9dd90a4971 fix(ai): replace Mistral SDK with native transport 2026-08-08 09:32:49 +02:00
Armin Ronacher
e47b8e37a6 feat(ai): use additional_tools for deferred tools
closes #7709
2026-08-07 23:05:23 +02:00
Armin Ronacher
ac4ac9eaf6 feat(coding-agent): configure fullscreen exit output 2026-08-07 18:30:28 +02:00
Armin Ronacher
310411ba46 Add [Unreleased] section for next cycle 2026-08-07 07:48:13 +02:00
Armin Ronacher
53fa77ccd8 Release v0.84.1 2026-08-07 07:48:13 +02:00
Armin Ronacher
6ba4d23e7c docs: audit changelogs since v0.84.0 2026-08-07 07:47:42 +02:00
Armin Ronacher
666d8972ff fix(coding-agent): preserve TUI wrapper routing (closes #7731) 2026-08-07 00:40:44 +02:00
Armin Ronacher
7cb2a51c05 fix(coding-agent): reduce automatic theme detection delay 2026-08-07 00:22:00 +02:00
Zhichao Li
4688e4f92f
docs(coding-agent): reconcile keybinding behavior (#7729) 2026-08-07 00:11:39 +02:00
Armin Ronacher
4e64de6950 fix(coding-agent): soften PI environment guideline
Attempt to address #7128 without closing the issue.
2026-08-06 22:50:27 +02:00
Armin Ronacher
c96bfaccd0 fix(coding-agent): support Windows fullscreen right-click paste 2026-08-06 22:39:40 +02:00
Armin Ronacher
a3e93ec85e feat(tui): add half-page transcript scrolling
closes #7735
2026-08-06 22:30:13 +02:00
Christian Klotz
6fb2d766ae
feat(coding-agent): add configurable Harness factory (#7686)
* feat(coding-agent): add Harness construction factory

* feat(coding-agent): configure Harness construction factory

* feat(coding-agent): expose Harness JSONL session file

* fix(agent): remove redundant bash environment test
2026-08-06 21:05:46 +03:00
Armin Ronacher
a261366bde feat(coding-agent): add auth preflight
closes #7152
2026-08-06 19:43:52 +02:00
Armin Ronacher
9b4f6a9e1f doc(changelog): Fix link 2026-08-06 18:14:26 +02:00