@oh-my-pi/pi-ai
Added
- Added
OAuthCallbackFlowOptions.allowPortFallbackto allow disabling random-port fallback, enabling strict port enforcement and early configuration errors for OAuth flows with static redirect URIs.
Changed
- Improved
OAuthCallbackFlowport conflict error messages to include the busy port, configured redirect URI, and actionable remediation steps.
Fixed
- Fixed an issue where malformed tool-call JSON from local Ollama or llama.cpp models was incorrectly retried as generic 500 errors, now surfacing a clear recovery message.
- Fixed a race condition in OAuth callback flows where abort signals triggered before the callback listener was registered were ignored.
@oh-my-pi/pi-catalog
Added
- Added full capability support for Claude Sonnet 5, aligning it with Claude Opus 4.8 and Fable 5. This includes adaptive thinking display, mid-conversation system messages, sampling parameter and thinking omission API restrictions, and 5-tier adaptive reasoning effort mapping (including xhigh and max levels) across direct APIs, OpenRouter, and Bedrock Converse.
Changed
- Updated input and output costs for models in the catalog.
@oh-my-pi/pi-coding-agent
Breaking Changes
- Renamed the built-in quick_task subagent to sonic; update any task spawns or configurations referencing quick_task by name.
Added
- Added the llama3.2:3b local model option for memory and auto-thinking tasks, utilizing a quantized ONNX model.
- Added a built-in Tester subagent designed to write high-signal tests for behavior, invariants, and edge cases while avoiding redundant or low-value tests.
- Added a Speech-to-Text submit trigger setting to auto-submit dictation on release, on complete sentences, or via a spoken submit command.
- Added a loop-guard mechanism that detects thinking/response loops and injects a system notice during auto-retries to guide the model to break the pattern and take a concrete next step.
Changed
- Renamed the Speech-to-Text (STT) setting label from "TTS Submit Trigger" to "Speech-to-Text Submit Trigger".
Fixed
- Fixed an issue where mid-run compaction was incorrectly skipped when a persisted assistant display variant shared a persistence key but differed in content from the live message.
- Fixed duplicate placeholder cards being created when streamed tool blocks started with an empty ID.
- Fixed omp debug --profile failing on Bun by treating the optional --allow-natives-syntax flag as best-effort when v8.setFlagsFromString is unavailable.
- Fixed release binaries missing the compiled tiny-model Transformers.js version pin, preventing runtime resolution issues on certain platforms like Homebrew Darwin arm64.
- Fixed MCP OAuth flows silently falling back to a random redirect port when the preferred port (default 3000) was busy, which caused authentication failures with strict providers. The flow now fails fast with a configuration error when a static client ID is pinned, while dynamic registration flows continue to use fallback ports.
- Fixed /mcp reauth and /mcp add commands ignoring the Escape key during OAuth authentication, allowing users to cancel the flow immediately instead of waiting for the timeout.
Removed
- Removed the built-in oracle subagent.
@oh-my-pi/pi-tui
Added
- Added
Editor.submit()to allow programmatic composer submission, enabling integration with speech input and other automated flows.
@oh-my-pi/pi-utils
Added
- Improved resilience in
fetchWithRetry()by adding a response-body retry gate to handle deterministic provider failures that return retryable HTTP statuses.
Fixed
- Fixed YAML frontmatter parsing for skill descriptions containing unquoted colons (
:), ensuring typed fields are correctly preserved without triggering unnecessary warnings.
What's Changed
- fix(mcp/oauth): fail fast when callback port is busy instead of advertising a random one by @roboomp in #3889
- fix(mcp): made Esc cancel /mcp reauth and /mcp add OAuth flow by @roboomp in #3890
- fix(debug): guard v8.setFlagsFromString so CPU profiler works on Bun by @roboomp in #3898
- fix(ai): harden Ollama malformed tool-call JSON failures by @roboomp in #3900
- fix(coding-agent): preserve auto thinking across plan approval by @roboomp in #3906
- fix(release): pin tiny transformers version in release binaries by @roboomp in #3907
Full Changelog: v16.2.8...v16.2.9