github can1357/oh-my-pi v18.4.2

3 hours ago

@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 /context read 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 cp builtin 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 cp builtin 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 find tool 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: read code 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.
  • task and /vibe subagents 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 cp builtin now clones files (copy-on-write) on ReFS and Dev Drive volumes by default, falling back to a regular copy elsewhere; --reflink and -c no longer fail there.

Fixed

  • Fixed mouse handling ignoring per-mode TUI mouse setting
  • Fixed the shell's cp --reflink=always emptying an existing destination when the filesystem cannot clone; the destination is now left untouched.
  • Fixed block-clone task 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_EXHAUSTED on every turn: the system prompts' RFC 2119 conventions line is reworded so the endpoint no longer rejects it (#13379 by @heshuoshuo0512)
  • Fixed CRLF SKILL.md files 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 summarizeCodeAsync for 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 /copy selectors 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 #10 remained 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

Full Changelog: v18.4.1...v18.4.2

Don't miss a new oh-my-pi release

NewReleases is sending notifications on new releases.