New Features
pi updatecan now update pi itself in addition to installed pi packages. See docs/packages.md. (#3680 by @mitsuhiko)- Azure Cognitive Services endpoint support for Azure OpenAI Responses deployments. See docs/providers.md#api-keys. (#3799 by @marcbloech)
- Suppressible Anthropic extra-usage billing warning via
warnings.anthropicExtraUsagein/settings. See docs/settings.md. (#3808) - Extension-controlled working row visibility via
ctx.ui.setWorkingVisible(), allowing extensions to hide the built-in loader row and render custom working state. See docs/extensions.md and examples/extensions/border-status-editor.ts. (#3674)
Added
- Added
pi updatesupport for updating pi itself in addition to installed pi packages (#3680 by @mitsuhiko). - Added Azure Cognitive Services endpoint support for Azure OpenAI Responses base URLs (#3799 by @marcbloech).
- Added
warnings.anthropicExtraUsageand a/settingswarnings submenu to suppress the Anthropic extra usage billing warning (#3808) - Added
ctx.ui.setWorkingVisible()so extensions can hide the built-in interactive working loader row without reserving layout space, plus a border-status editor example that moves working state into a custom editor border (#3674)
Fixed
- Fixed duplicate printable characters from Kitty keyboard protocol CSI-u plus raw character input on layouts such as Italian (#3780).
- Fixed API-key environment discovery and Bun startup to fall back to
/proc/self/environwhen Bun's sandbox leavesprocess.envempty (#3801 by @mdsjip). - Fixed Bun sandboxed package-manager commands when
process.envis empty (#3807 by @mdsjip). - Fixed symlinked packages, resources, skills, and sessions being duplicated in selectors and loaders (#3818 by @aliou).
- Fixed Bedrock prompt-caching and adaptive-thinking capability checks for inference profile ARNs (#3527 by @anirudhmarc).
- Fixed OpenAI Codex Responses default verbosity to
lowwhen no verbosity is specified. - Stopped sending empty
toolsarrays to providers that reject them when tools are disabled (#3650 by @HQidea). - Fixed Anthropic SSE parsing to ignore unknown proxy events such as OpenAI-style
doneterminators (#3708). - Fixed provider registration with override-only
models.jsonentries to preserve built-in model lists (#3651). - Fixed
/loginto show auth supplied bymodels.jsonprovider definitions. - Fixed HTML export whitespace around extension-rendered tool output and expandable output hints.
- Fixed bash executor temp output streams leaking file descriptors when output was truncated by line count (#3786)
- Fixed extension
pi.setSessionName()updates to refresh the interactive terminal title immediately (#3686) - Fixed
/treecancellation viasession_before_treeleaving the session stuck in compaction state (#3688) - Fixed Escape interrupt handling when extensions hide the built-in working loader row (#3674)
- Fixed coding-agent test expectations for current default models and missing-auth guidance.
- Fixed long local-LLM SSE streams aborting at 5 minutes with
UND_ERR_BODY_TIMEOUTby disabling undicibodyTimeout/headersTimeouton the global dispatcher; provider SDKs continue to enforce their own deadlines viaretry.provider.timeoutMs(#3715)