github can1357/oh-my-pi v15.7.5

latest release: v15.7.6
5 hours ago

@oh-my-pi/pi-ai

Added

  • Added Anthropic task budget support, forwarding taskBudget as output_config.task_budget with the required task-budgets-2026-03-13 beta header and accepting Anthropic gateway requests that send output_config.task_budget.

Fixed

  • Fixed OpenAI-family first-event timeouts so PI_OPENAI_STREAM_IDLE_TIMEOUT_MS cannot be undercut by a lower generic PI_STREAM_FIRST_EVENT_TIMEOUT_MS while local OpenAI-compatible servers are still processing large prompts. PI_OPENAI_STREAM_FIRST_EVENT_TIMEOUT_MS is now available for an explicit OpenAI-specific first-event override. (#1603)

@oh-my-pi/pi-coding-agent

Fixed

  • Fixed streaming assistant responses leaving duplicated tail rows in WSL/Windows Terminal scrollback by enabling eager native-scrollback rebuilds while assistant text is actively streaming (#1615).

Fixed

  • Fixed the task tool mangling subagent prompts when a model double-JSON-encodes a string argument: context and each task's assignment/description are now repaired when they arrive uniformly double-escaped (literal \n, \", \uXXXX), so the subagent receives the intended prose and the call preview renders real newlines. The repair is guarded by a JSON-string round-trip and a double-encode signature, so legitimate backslashes/quotes (Windows paths, regexes, embedded quotes) are left untouched, and it is scoped to these natural-language fields only (never code-bearing tools).

Fixed

  • Fixed pr:// PR views omitting formal review submissions and approvals when comments are enabled (#1600).

Fixed

  • Fixed subagent yield-reminder loop logging benign user/compaction aborts as ERROR. The catch around session.prompt/waitForIdle in task/executor.ts now demotes ToolAbortError and signal-aborted exits to debug and keeps ERROR for genuine prompt failures only (#1623).

Fixed

  • Fixed read local://<file> resolving to the wrong session's artifacts directory in multi-session ACP hosts (e.g. cmux). LocalProtocolHandler.resolve now honors context.localProtocolOptions supplied by the calling tool before falling back to the process-wide override or the first main-kind session in the global AgentRegistry; read, find, search, ast_grep, and ast_edit thread their session's options through so a local://PLAN.md lookup hits the calling session's local root instead of a sibling session's (#1608).

Fixed

  • Fixed omp segfaulting on exit on Windows after the tiny title/memory model loaded onnxruntime-node (issue #1606). The tiny model now runs in a Bun subprocess instead of a Worker thread, so the NAPI finalizer that crashes during shutdown never executes in the agent's address space; the subprocess is SIGKILL'd on dispose to skip every native destructor on every platform.

Fixed

  • Fixed unbounded MCP reconnect loop that could fork-bomb the host when a stdio MCP server completes the initialize/tools/list handshake and then exits. MCPManager now enforces a per-server crash circuit breaker (5 reconnects per 30 s window) on the automatic transport.onClose path; manual /mcp reconnect resets the window so users can recover after fixing the misconfiguration (#1592).

@oh-my-pi/pi-tui

Fixed

  • Fixed native Windows + Windows Terminal scrollback being yanked to the top when a streaming response triggered a TUI full redraw. Under ConPTY the kernel32 GetConsoleScreenBufferInfo probe answers about the pseudo-console (always at the buffer tail) and not about WT's host scrollback, so isNativeViewportAtBottom() falsely returned true while the user was scrolled up and the shrink-across-viewport branch issued a destructive historyRebuild (\x1b[2J\x1b[H\x1b[3J). The probe now short-circuits to undefined whenever WT_SESSION is set, letting the existing deferred-rebuild path keep streaming-time mutations non-destructive and reconcile native history at the next prompt-submit checkpoint. (#1635)

What's Changed

  • fix(lsp): shut down servers with exit notification by @roboomp in #1594
  • fix(mcp): cap automatic reconnect bursts to prevent fork-bomb by @roboomp in #1596
  • fix(tool): show formal PR reviews in pr:// views by @roboomp in #1601
  • fix(ai): honor OpenAI idle timeout for first events by @roboomp in #1604
  • fix(tiny): isolate tiny model worker in a subprocess so onnxruntime teardown can't crash the agent by @roboomp in #1607
  • fix(coding-agent): route local:// reads through the calling session by @roboomp in #1609
  • fix(tui): rebuild scrollback during assistant streaming by @roboomp in #1616
  • fix(task): demote subagent reminder-loop abort log by @roboomp in #1624
  • fix(tool): handle string paths in find renderer by @roboomp in #1625
  • fix(tui): suppressed native viewport probe under Windows Terminal by @roboomp in #1636
  • fix(tui): defer bottom-anchored shrink on unknown POSIX viewports by @roboomp in #1599

Full Changelog: v15.7.4...v15.7.5

Don't miss a new oh-my-pi release

NewReleases is sending notifications on new releases.