@oh-my-pi/pi-agent-core
Changed
- Improved context caching for repeat turns, reducing redundant prompt processing and making subsequent turns faster when the system prompt is unchanged.
@oh-my-pi/pi-ai
Breaking Changes
- Renamed
TypeSafeJudgetoNativeJudgeandTypeSafeApiErrortoJudgmentApiError, including their associated option types.JUDGMENT_ROUTEShas been removed; useisJudgmentApior create a judge for catalog models withcreateNativeJudge(model, { apiKey }).
Added
- Added native judge support for OpenAI’s Decisions API and Cloudflare Workers AI decision models, including the
openai-decisionsandworkers-ai-systemoneAPIs. The auth gateway’s System One route supports both providers. - Added
createNativeJudge(model, { apiKey, headers, fetch })for creating judges from catalog models with their configured request model IDs and question limits. - Added Cloudflare Workers AI authentication with
loginCloudflareWorkersAi, storing the API token and account ID; logging in again with the same token replaces the existing credential. - Added automatic question batching to
NativeJudgefor endpoints with question limits, with up to four concurrent batches and merged answers and usage reporting. Usage from successful batches is reported through partial-usage callbacks and both session and auth-gateway usage ledgers, even if another batch fails.
Changed
- Improved Anthropic prompt caching for long conversations, reducing memory usage while selecting cache breakpoints.
Fixed
- Fixed Devin-routed OpenAI models returning
invalid_argumenton every turn after an existing session was switched fromopenai-codex.
@oh-my-pi/pi-catalog
Removed
- Removed
parseCloudflareAiGatewayCredential,serializeCloudflareAiGatewayCredential, andCloudflareAiGatewayCredentialfrom@oh-my-pi/pi-catalog/wire/cloudflare-ai-gateway. Use the equivalents from@oh-my-pi/pi-catalog/wire/cloudflareinstead.
@oh-my-pi/pi-coding-agent
Fixed
- Improved responsiveness when adding assistant text after tool calls in long transcripts.
- Fixed
apply_patchhandling of context-free hunks when the target text appears multiple times. - Fixed
findfilename ranking and sketch scoring with judge endpoints that limit the number of questions per request. - Fixed
omp gc --applyleaving temporary session files after an interrupted save. - Fixed
omp auth-gateway servehandling of OpenRouter routing variants such as:floorand:nitro. - Improved validation errors for
computerhelpers with missing or non-string text arguments by identifying the helper and argument involved. - Fixed
/tanforks incorrectly inheriting the parent task's subagent spending while preserving token counts. - Fixed
omp://documentation links so they open the corresponding files in source checkouts. - Fixed bare model IDs in
models.ymlincorrectly resolving to auto-discovered Ollama, llama.cpp, or LM Studio providers. - Added warnings when configured Ollama, llama.cpp, or LM Studio endpoints cannot be reached, identifying the relevant environment variable.
@oh-my-pi/pi-natives
Fixed
- Fixed stalls when highlighting Markdown tool previews containing many inline spans or backslash escapes.
@oh-my-pi/pi-tui
Added
- Added native TSP rendering support for Tern terminal sessions running inside tmux, with automatic session detection and safe title-setting behavior.
Fixed
- Improved responsiveness when inserting assistant messages after tool calls in long transcripts.
@oh-my-pi/pi-utils
Changed
- Improved streaming JSON parsing performance for tool arguments containing many string values.
Fixed
- Fixed parsing of long strings that contain closing delimiters other than double or single quotes.
What's Changed
- fix(natives): register corrected Markdown grammar at build time by @iliaal in #15272
- perf(natives): vendor the Markdown grammar without exponential backtracking by @sjawhar in #13838
- perf(utils): avoid bulk scan setup for short escaped runs by @iliaal in #15273
- perf(coding-agent): defer highlighter initialization by @iliaal in #15299
- perf(read): compact directory metadata spacing by @MikeeI in #9062
- perf(tui): keep the transcript entry mirror in step on insert-after-anchor by @F0Rextasy in #14344
- perf(coding-agent): compact Read directory metadata for 18.9 by @iliaal in #15352
- perf(tui): keep transcript insertions synchronized on 18.9 by @iliaal in #15353
- fix(coding-agent): prefer models.yml providers over implicit local discovery by @H4vC in #15360
- docs(readme): use nix profile add instead of deprecated install by @akai-hana in #15297
- chore(ci): pin Bun 1.4.3 in the runner and docs images by @yuzu-octopus in #15324
- fix(edit): apply_patch binds hunks to the first match like Codex by @Ikaleio in #15340
- fix(find): cap judgment requests at 16 questions by @yuzu-octopus in #15160
- refactor(ai): one waitForRetry helper for the provider retry-wait hook by @yuzu-octopus in #15307
- refactor(config): one json config-source stack for dap and lsp by @yuzu-octopus in #15306
- perf(ai): fuse three index walks into the transform passes by @yuzu-octopus in #15330
- perf(ai): pick anthropic cache breakpoints in one backward walk by @yuzu-octopus in #15219
- perf(agent): stop joining the system prompt and re-rendering tool keys per build by @yuzu-octopus in #15218
- perf(scrapers): collapse the youtube metadata and subtitle spawns into one by @yuzu-octopus in #15334
- feat(coding-agent): add computer element doubleClick and name the pick when element calls hit find()'s array by @will-bogusz in #15312
- fix(computer): name the helper and argument a malformed call passes, and take menu paths as separate titles by @will-bogusz in #15309
- fix(coding-agent): reset inherited nested task billing in forks by @anatoli-tsinovoy in #15039
- fix: link omp:// docs to the on-disk file in source checkouts by @danzaio in #15086
- fix(edit): bind single apply_patch hunks to the first normalized repeat by @H4vC in #15367
- perf(coding-agent): load deferred code on demand by @iliaal in #15298
- fix(judgment): cap System One questions only for judge models that need it by @H4vC in #15368
- fix(catalog): sent Groq only the request fields it accepts by @Robinbinu in #15322
- fix(judgment): apply question caps in auth-gateway and bound chunk fan-out by @H4vC in #15373
- fix(ai/devin): normalized foreign tool-call ids on cascade replay by @roboomp in #15237
- fix(coding-agent): reclaimed orphaned session staging temps in gc by @roboomp in #15355
New Contributors
- @akai-hana made their first contribution in #15297
- @Ikaleio made their first contribution in #15340
Full Changelog: v18.9.1...v18.9.2