@oh-my-pi/pi-ai
Added
stream()andstreamSimple()support asynchronous model header resolution for each request attempt, including authentication retries and cancellation.- Provider login prompts can request masked entry with
secret: true.
@oh-my-pi/pi-catalog
Added
- Models can carry deferred request-header resolvers, and model managers can reconstruct omitted cached headers from authoritative local configuration without persisting credentials.
@oh-my-pi/pi-coding-agent
Breaking Changes
- Config-backed headers now resolve asynchronously through
ModelRegistry.getProviderHeaders()orresolveModelHeaders(); removed the synchronousconfig/model-config-valuesmodule. - Removed the unused
ConfigFile.getMtimeMsAsync(),tryLoadAsync(),loadAsync(), andloadOrDefaultAsync()methods. - Custom SQL session clients must support transactions for atomic renames.
Added
- Type
^to tag a model for delegation, with atomic display-name chips and session-persistedm1,m2, … agents available to task and eval. - Provider login and setup support masked secret prompts; RPC rejects secret prompts rather than requesting ordinary input.
Changed
- Shell-backed API keys and headers resolve asynchronously without freezing terminal input or running during catalog construction.
Fixed
- macOS process discovery now retains the complete PID list when locating executables and descendants. (#12290 by @iliaal)
- Reduced snapshot-recording stalls when a session retains large file histories. (#12279 by @iliaal)
- Cancelled background jobs remain tracked until execution finishes, so cleanup cannot report completion prematurely after retention expires. (#12278 by @iliaal)
- Fixed localized edits rewriting unrelated bytes in files with invalid UTF-8; these edits now fail without modifying the file. (#12277 by @iliaal)
- Fixed sloppy edits crashing with a char-boundary panic instead of reporting a match error when the file contains multibyte (e.g. CJK) text.
- Fixed retry timing reliability in agent sessions by ensuring sleep durations are monotonic
- Fixed data stability issues when processing streamed lines
- Resolved same-path move failures in indexed session storage
- Restricted and revived subagents retain parent-loaded extension hooks without enabling extension-contributed tools.
- Revived subagents honor the owning session's extension-discovery restrictions.
- Secret login answers stay hidden in later prompts and cannot be recovered through undo or yank.
- SQL session renames preserve data on same-path moves, missing sources, and failed overwrites.
- MySQL session writes no longer use deprecated upsert value references.
- MCP SSE requests honor one response deadline and report timeouts correctly without replaying accepted tool calls.
- Legacy extension package-import patterns follow native prefix precedence.
- Bundled extensions observe theme initialization and changes through the existing live
themeexport. - Configured discovery models retain request-time credentials after offline cache reloads and failed refreshes.
- Runtime API-key overrides retain precedence over configured credentials.
- Element handles returned by
tab.waitForSelector,tab.$, and related selector helpers can now be passed as arguments totab.evaluateinsidetab.runinstead of failing with "JSHandles can be evaluated only in the context they were created".
@oh-my-pi/pi-tui
Added
- Editors support whitespace-delimited
^mention autocomplete and expose registered atoms for host-defined chip rendering.
Changed
fuzzyRankaccepts readonly candidate arrays without copying them.
Fixed
- Masked inputs no longer expose their text in diagnostic previews.
Removed
- Removed the internal
fastTailSplicesandresetFastTailSplicesMarkdown instrumentation exports.
@oh-my-pi/pi-utils
Fixed
- Optimized model configuration command execution by deduplicating requests and adding failure backoff
- Prevented unnecessary credential command execution when runtime API keys are configured
- Retained
readLines()results no longer change when later chunks reuse the internal buffer. - Long sleeps honor elapsed time and re-arm after premature timer wakes without overflowing native timer delays.
What's Changed
- fix(pi-edit): gate sloppy closest_fragment tail window on char boundary by @H4vC in #12268
- fix(coding-agent): latch Windows title static on native-path failure, hermetic title tests by @H4vC in #12254
- fix(agent): retain cancelled jobs until execution settles by @iliaal in #12278
- perf(edit): cache retained snapshot UTF-16 accounting by @iliaal in #12279
- fix(edit): reject invalid UTF-8 before staging edits by @iliaal in #12277
- fix(shell): report accurate macOS process enumeration counts by @iliaal in #12290
Full Changelog: v18.2.2...v18.2.3