@oh-my-pi/pi-agent-core
Added
- Added tool_execution_end events that fire as each tool call settles for live UI updates
Changed
- Emitted tool result messages in the order of tool calls, preserving call order regardless of completion order
- Reduced repeated token-counting work with a bounded, model-scoped cache of exact text and short-message fragment counts.
Fixed
- Fixed an issue where streaming tool call arguments could be incorrectly modified in-place
@oh-my-pi/pi-ai
Fixed
- Fixed successful Cursor agent turns being treated as context overflows, which ran overflow compaction and showed "Compaction freed too little context to make progress" while
/contextread well under the window; overflow detection now uses the reported context size instead of input totals summed across a turn's model calls (#13608 by @H4vC) - Fixed Anthropic requests with thinking enabled failing on models whose output ceiling cannot fit the minimum thinking budget; thinking is now disabled for those requests instead (#13359 by @jchanghong023)
- Fixed Cursor native Grep/Glob results showing no matches or raw output, Write failing to create files, StrReplace missing edits beyond the read limit, and Read/Shell/Delete results misreporting content or metadata (#13600).
@oh-my-pi/pi-catalog
Changed
- Improved model cache invalidation efficiency by implementing deep equality checks on cached rows when database version signals change
- Optimized read-row cache by enabling granular cache-hit logic across concurrent connection handles
@oh-my-pi/pi-coding-agent
Added
- The shell's
cpbuiltin accepts macOS's-c(clone where possible, else copy; same as--reflink=auto).
Changed
- Removed unused timestamp metadata from model usage tracking queries to optimize database overhead
- Improved session storage reliability by using atomic inode identity verification for lock management
- Optimized internal role chain resolution and caching to reduce event-loop contention during judge initialization
- On macOS, the shell's
cpbuiltin now also clones (copy-on-write) when overwriting an existing file, instead of rewriting its data; the destination keeps its permissions, and hard-linked destinations are still written in place. - The
findtool now fails with a timeout error after 20 seconds instead of blocking the turn when the judge model stalls. - Reduced main-thread stalls with many agents running:
readcode summaries now parse off the main thread, streamed tool-call snapshots no longer deep-copy growing argument text on every delta, and model-cache reads skip re-parsing unchanged rows. - Reduced CPU while an agent streams: the working-row token rate and status line no longer re-tokenize or re-resolve settings every frame, and
^model mentions no longer rebuild the model scope per keystroke. taskand/vibesubagents now get their own Python kernel and JS/Ruby/Julia eval state instead of sharing the parent's, so agents can no longer overwrite each other's variables or reset each other's kernels.- On Windows, the shell's
cpbuiltin now clones files (copy-on-write) on ReFS and Dev Drive volumes by default, falling back to a regular copy elsewhere;--reflinkand-cno longer fail there.
Fixed
- Fixed mouse handling ignoring per-mode TUI mouse setting
- Fixed the shell's
cp --reflink=alwaysemptying an existing destination when the filesystem cannot clone; the destination is now left untouched. - Fixed
block-clonetask isolation on Windows ReFS and Dev Drive volumes failing on files whose size is not a whole number of clusters, larger than 4 GiB, or sparse. - Fixed Google Antigravity requests failing with
429 RESOURCE_EXHAUSTEDon every turn: the system prompts' RFC 2119 conventions line is reworded so the endpoint no longer rejects it (#13379 by @heshuoshuo0512) - Fixed CRLF
SKILL.mdfiles injecting raw YAML frontmatter into user-invoked and autoload skill messages (#13590). - Fixed Cursor native Grep ignoring requested context, Read negative offsets starting at the top, and Delete reporting zero-byte files (#13600).
@oh-my-pi/pi-natives
Added
- Added
summarizeCodeAsyncfor non-blocking source structure summarization on the libuv thread pool
Fixed
- Fixed concurrent streaming searches hanging indefinitely or ignoring cancellation while waiting to deliver results to JavaScript.
- Fixed ngram word completion losing learned state between sessions on Windows when saving its snapshot (#13589).
- Fixed Windows shell pipelines losing their final output when cancelled or timed out (e.g.
yes x | tail -5): cancelled runs now get a longer grace period to flush before being aborted (#13365 by @jchanghong023)
@oh-my-pi/pi-tui
Changed
- Optimized activity clock rendering by caching timestamp formatting strings
- Reduced CPU overhead during animated terminal redraws, transcript updates, inline-image bookkeeping, and status-line layout.
- Reduced per-keystroke CPU in
^model-mention autocomplete and per-frame CPU while streaming (status line, live transcript blocks, tool cards, frame writes).
Fixed
- Fixed the
@completion popup swallowing Tab and cursor-movement keys while a narrowed filter matched nothing: with no candidate to accept they now fall through to their normal completion and cursor roles instead of being trapped (#13046 by @jchanghong023). - Fixed the Esc-Esc rewind and fullscreen
/copyselectors getting stuck at the oldest turn of a long session's recent tail; stepping past it now loads the earlier history - Fixed the composer attachment band showing chip
#1(and other prefix IDs) as still present when only#10remained in the prompt (#13605)
@oh-my-pi/pi-utils
Added
- Added cloneJsonTree to provide a high-performance deep copy utility for JSON-shaped object trees
What's Changed
- fix(predict): synced ngram snapshots using writable handles by @roboomp in #13595
- fix(tui): stop the @ completion popup from trapping Tab and cursor keys on an empty narrowed list by @jchanghong023 in #13046
- fix(ai): clamp thinking budgets to a model's output ceiling by @jchanghong023 in #13359
- fix(pi-shell): give cancelled Windows pipelines room to flush by @jchanghong023 in #13365
- fix(skills): stripped CRLF frontmatter from skill prompts by @roboomp in #13594
- fix(prompts): reword RFC-2119 conventions line that triggers Antigravity 429 by @heshuoshuo0512 in #13379
- isUsageBackedContextOverflow fix by @H4vC in #13608
- fix(tui): matched composer attachment chips by exact index by @roboomp in #13606
- fix(cursor): corrected native exec tool results by @roboomp in #13603
New Contributors
- @heshuoshuo0512 made their first contribution in #13379
Full Changelog: v18.4.1...v18.4.2