github badlogic/pi-mono v0.57.0

9 hours ago

New Features

  • Extensions can intercept and modify provider request payloads via before_provider_request. See docs/extensions.md#before_provider_request.
  • Extension UIs can use non-capturing overlays with explicit focus control via OverlayOptions.nonCapturing and OverlayHandle.focus() / unfocus() / isFocused(). See docs/extensions.md and ../tui/README.md.
  • RPC mode now uses strict LF-only JSONL framing for robust payload handling. See docs/rpc.md.

Breaking Changes

  • RPC mode now uses strict LF-delimited JSONL framing. Clients must split records on \n only instead of using generic line readers such as Node readline, which also split on Unicode separators inside JSON payloads (#1911)

Added

  • Added before_provider_request extension hook so extensions can inspect or replace provider payloads before requests are sent, with an example in examples/extensions/provider-payload.ts
  • Added non-capturing overlay focus control for extension UIs via OverlayOptions.nonCapturing and OverlayHandle.focus() / unfocus() / isFocused() (#1916 by @nicobailon)

Changed

  • Overlay compositing in extension UIs now uses focus order so focused overlays render on top while preserving stack semantics for show/hide behavior (#1916 by @nicobailon)

Fixed

  • Fixed RPC mode stdin/stdout framing to use strict LF-delimited JSONL instead of readline, so payloads containing U+2028 or U+2029 no longer corrupt command or event streams (#1911)
  • Fixed automatic overlay focus restoration in extension UIs to skip non-capturing overlays, and fixed overlay hide behavior to only reassign focus when the hidden overlay had focus (#1916 by @nicobailon)
  • Fixed pi config misclassifying ~/.agents/skills as project-scoped in non-git directories under $HOME, so toggling those skills no longer writes project overrides to .pi/settings.json (#1915)

Don't miss a new pi-mono release

NewReleases is sending notifications on new releases.