chore(deps): update dependency can1357/oh-my-pi to v18.5.0 #207

Merged
renovate-bot merged 1 commit from renovate/can1357-oh-my-pi-18.x into main 2026-10-03 02:02:21 +00:00
Collaborator

This PR contains the following updates:

Package Update Change
can1357/oh-my-pi minor 18.4.11 → 18.5.0

⚠️ Warning

Some dependencies could not be looked up. Check the warning logs for more information.


Release Notes

can1357/oh-my-pi (can1357/oh-my-pi)

v18.5.0

Compare Source

@​oh-my-pi/pi-ai

Fixed
  • Fixed AWS credential_process on Windows stripping backslashes from unquoted paths such as C:\Users\me\helper.exe; commands are now split with Windows command-line rules there, matching the AWS CLI.

@​oh-my-pi/pi-catalog

Added
  • Added closeModelCache() (@oh-my-pi/pi-catalog/model-cache) to release the shared default models.db handle so an agent directory can be deleted on Windows; the next cache access reopens it

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

Breaking Changes
  • task.completionProbeMs is replaced by the on/off setting task.completionProbe; an existing task.completionProbeMs migrates automatically (0 → off, any period → on).
  • SessionStorage.claimSessionFile(sessionPath) is replaced by claimSession(sessionId, sessionPath) (which also refuses when the path now holds a different session), and sessionOwnerLeasePath() by tryAcquireSessionLease(sessionId): custom storage backends that implemented claimSessionFile must implement claimSession to keep cross-process ownership (#​14095 by @​andrebrait)
Added
  • /dump all writes a zip to the temp directory with the main transcript, the LLM request JSON, and one file per subagent transcript (nested subagents included, killed ones marked aborted); the TUI copies the archive path to the clipboard. Plain /dump is unchanged (#​13908 by @​H4vC)
  • Added /effort [level] to set the thinking level without switching models: bare /effort opens a picker, and completions offer only the current model's levels within the session effort ceiling. Its description includes thinking and intelligence so either term finds it; Shift+Tab still cycles levels (#​12222 by @​Xytronix, #​14113 by @​andrebrait).
  • Added a per-call model selector to task items, eval agent(), and workpool(): a provider/model[:level] pattern or role alias, or an ordered array of them, that takes precedence over task.agentModelOverrides and the agent definition. Selection is an ordered preference — requested candidates are tried before configured fallbacks — and the spawn fails at preflight instead of silently routing elsewhere when the selector is the ambiguous literal default/inherit with or without a :level suffix (use @default), is blank or comma-only, carries an invalid thinking suffix, matches no available model, or sits on the batch container instead of a tasks[] item. A requested model without working credentials fails the spawn instead of running on the parent's model, and the error tells the caller to report the unavailable model rather than substitute another. A pool applies its selector to each worker's first turn and reuses that worker's session afterwards (#​12229 by @​Xytronix, #​13669 by @​andrebrait).
Changed
  • Subagent completion estimates are asked after 2, 5, 10 and 30 more minutes, then hourly, instead of at a fixed interval, and only for subagents the main agent spawns in an interactive session; print (-p), RPC, ACP and SDK runs and nested subagents never request them.
  • /changelog, /context, /tools, /hotkeys, /advisor status, /memory view|queue|stats|diagnostics, and the mental-model views no longer add their report to the transcript. In text mode a report that fits shows above the editor like /btw and Esc dismisses it; a taller one (such as /changelog full) opens as a full-screen page on the alternate screen, scrolled with the arrow/page/Home/End keys and the wheel, and Esc returns to the screen exactly as it was. In the native terminal it opens as a sheet like /usage whose long reports scroll, closed with Esc or Close (#​14136 by @​H4vC).
  • /jobs, /mcp help|list|resources|prompts|notifications and /ssh help|list no longer add their report to the transcript either: they show the same way, and natively /jobs opens the live background-jobs sheet the jobs pill opens (/jobs full keeps the full command lines in a report sheet) (#​14138 by @​H4vC).
  • The welcome banner (in the terminal and as Tern's native card) is now the omp logo and wordmark with the version and a tip. It no longer shows the "Welcome back!" greeting, the model (the status line does), LSP servers or recent sessions (/resume), and the # / ! $ prompt prefixes moved into the rotating tips.
Fixed
  • Auto-retry now retries the same model once after a mid-stream socket drop that had already streamed reasoning or tool calls, instead of switching to the fallback chain on the first attempt; the fallback chain is consulted only if that retry also fails. This applies to every provider, since a dropped socket says nothing about the model (#​13747 by @​abilliontokens)
  • Fixed native git patch apply, checkout, stash, cherry-pick, and worktree removal on Windows ignoring core.autocrlf: LF patches failed to apply to CRLF checkouts and clean CRLF files were treated as modified
  • Fixed the command image-URL uploader stripping backslashes from Windows paths in its command template (C:\tools\upload.exe {file} ran C:toolsupload.exe)
  • Fixed reading a SQLite database (local or by URL) and closing prompt history leaving the database file locked on Windows
  • Fixed RPC mode on Windows freezing when the client stopped reading stdout: the worker blocked on the full stdout pipe and stopped reading stdin, so a client writing a batch of commands before reading replies deadlocked. Output now goes through a non-blocking stdout stream that spools to disk under backpressure, as on Linux and macOS
  • Fixed HTML export hanging when a session's subagent directory held a transcript named ..jsonl; discovery now only descends into real child directories (#​13908 by @​H4vC)
  • Fixed resuming a session through a symlink or hard link to a file another omp process is writing: the resumed session no longer mixes its turns into that file and continues in a new file next to it (#​14095 by @​andrebrait)
  • Fixed moving a session to another directory replacing a session file there that another omp process is writing, or moving a session another process is writing; the move now stops with an error and leaves both files untouched (#​14095 by @​andrebrait)
  • Preserve the parent’s upstream route and live reasoning effort for inherited task/eval/workpool selectors and restored workers; caller effort, a requested @default:<level>, and the agent definition's own thinking-level still take precedence over the inherited effort (#​12229 by @​Xytronix, #​13669 by @​andrebrait).
  • Fixed the browser tool's Tern backend being refused by any Tern newer than the protocol omp was built against; it now speaks Tern's protobuf session protocol (level 12), which Tern serves across builds, and a Tern from before it reports as unavailable (update Tern) so the Chromium fallback takes over.
  • Fixed reloading a legacy Pi extension on Windows serving the previously loaded source instead of the edited files
  • Fixed Redis-, SQL-, and in-memory session storage listing no sessions on Windows: directory listing now matches \-separated session paths, so /resume and the session picker find them
  • Fixed an MCP stdio server whose configured command path does not exist failing on Windows with "MCP subprocess closed stdout before responding" instead of a not-found error naming the path
  • Fixed omp commit never closing its credential store, leaving agent.db open (and a broker-backed store's sync loop running) after the commit finished
  • Fixed every new session (including subagents) staying in memory for 5 seconds after creation, held by an uncancelled workspace-scan deadline timer; a parked or disposed subagent's session and settings are now released immediately
  • Fixed autoresearch run_experiment on Windows running autoresearch.sh through the WSL bash.exe launcher found on PATH (a separate Linux environment that fails when WSL is unavailable); it now uses Git Bash or the configured shellPath
  • Fixed sessions started in a temp-directory cwd on Windows landing under a home-relative -AppData-Local-Temp-… session directory instead of the -tmp-… one; existing directories under the old name are migrated forward
  • Fixed the write tool claiming "Made executable via chmod +x" for shebang files on Windows, where chmod keeps no execute bits
  • Fixed readlink in the bash tool printing a provider-backed path (e.g. local://file) with a \\?\ prefix on Windows
  • Fixed the daemon broker on Windows dying with the omp process that started it, which stopped the shared browser relay (and every other broker daemon) while other omp sessions were still using it
  • Fixed the browser tool's Tern backend being refused by any Tern newer than the protocol omp was built against; it now speaks Tern's JSON script protocol, which no Tern build ties it to, and a Tern from before it reports as unavailable (update Tern) so the Chromium fallback takes over.

@​oh-my-pi/pi-natives

Fixed
  • Fixed Ctrl+V on Windows sometimes pasting text with a few characters replaced by unrelated glyphs (for example https:// turning into ՞ttp缀難//); clipboard reads and writes no longer run at the same time (#​14144 by @​H4vC)

@​oh-my-pi/pi-tui

Breaking Changes
  • WelcomeComponent no longer takes a model or provider: its constructor is (version), and setModel(), setRecentSessions(), setLspServers(), handleNativeEvent(), RecentSession, LspServerInfo, WELCOME_SESSION_SLOTS and WELCOME_LSP_SLOTS are gone; ComposerWelcomeUpdate drops modelName/providerName/recentSessions/lspServers, and ComposerCache drops writeWelcome(), writeRecentSessions(), writeLspServers(), ComposerWelcomeCache and the welcome/recentSessions/lspServers fields of ComposerStartupCache.
  • renderWelcomeTip() returns its lines without an indent, Tip: and the body wrapped together, for the caller to place.
Added
  • Added ReportPanel, a read-only command report: a /btw-style titled box with an Esc hint in text mode (above the editor, or as a full-screen page whose body scrolls on the arrow/page/Home/End keys and the wheel), and natively a /usage-style sheet whose body the terminal scrolls once it is long, with a Close button (#​14136 by @​H4vC).
  • Added contextUsageHead(), the /context title naming the model and its window (#​14136 by @​H4vC).
  • Added Composer.rowsBelow(), the rows the chrome under a below-transcript root took in the last frame (#​14136 by @​H4vC).
  • Added Composer.pinInputToBottom(), which keeps the input on the bottom row after chrome above the editor closes when rows it displaced went to scrollback (#​14136 by @​H4vC).
  • Added a repeatable native reveal ({ at, n }): a described node scrolls into view again whenever its n changes, without being re-added.
Changed
  • ContextUsageView is now a bare report body without its own title, rules or card; setBreakdown() was removed (#​14136 by @​H4vC).
  • The terminal welcome banner is the gradient logo beside the omp wordmark with the version under it and the tip, centered in the terminal; the logo stands alone when the lockup does not fit, and the tip drops below 50 columns. It no longer greets with "Welcome back!", natively either.
Fixed
  • Fixed tool previews on Windows showing a working directory on another drive as a raw absolute path instead of its home-shortened ~/… form.
  • Fixed pasted drive-less file:///… URLs (forwarded from a macOS pasteboard or remote session) staying undecoded on Windows instead of loading as image paths.
  • Fixed an output artifact whose file cannot be opened (e.g. a directory in the way) being reported on Windows as a write failure and retried later, instead of a terminal open failure.
  • Fixed plan review's Contents in Tern: clicking an entry, or moving through them with the arrow keys, now scrolls the plan to that section.
Removed
  • Removed JobsPanel, the /jobs transcript block; /jobs now opens JobsSheet natively (#​14138 by @​H4vC).

@​oh-my-pi/pi-utils

Added
  • Added the public getSessionOwnersDir() utility, which returns the profile-independent ~/.omp/run/session-owners directory that names session ownership leases (#​14095 by @​andrebrait)
Fixed
  • Fixed SQLite error messages doubling every backslash in Windows database paths
  • Fixed corrupt-database recovery failing with EBUSY on Windows when several in-process openers of the same store failed at once

What's Changed

Full Changelog: https://github.com/can1357/oh-my-pi/compare/v18.4.12...v18.5.0

v18.4.12

Compare Source

@​oh-my-pi/pi-ai

Added
  • Added createAuthGatewayRouter, the auth-gateway's routes without the HTTP listener, and serveAuthGatewayStdio, which serves them as JSON lines ({"id", "path", "body"} in, {"id", "status", "body"} out) for a parent process.

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

Added
  • Added omp auth-gateway stdio: a long-lived inference server for other programs speaking JSON lines on stdin/stdout ({"id", "path": "/v1/chat/completions", "body"} in, {"id", "status", "body"} out) with your own sign-ins; a request's model takes any --model selector (@smol, sonnet, @commit,@smol) and falls back along retry.fallbackChains when an attempt fails.
Changed
  • Reduced CPU use while streaming with several agents active: extension message_update handlers are delivered through a lighter queue, and RPC no longer processes subagent events unless a client subscribed to them (#​13244 by @​iliaal).
Fixed
  • Fixed web search stopping at Perplexity's anonymous signup wall instead of falling back to the next configured provider (#​12756).
  • Fixed imported Claude Code sessions on Windows reporting the encoded C--… directory name instead of the registered project path when the transcript records no cwd (#​13363 by @​jchanghong023).
  • Fixed JavaScript eval wait()/handle.wait() ignoring a positional timeout; h.wait(30) now waits up to 30 seconds like { timeout: 30 }, and mixing an options object with positional arguments throws a TypeError (#​12720 by @​F0Rextasy).
  • Fixed Herdr and other lifecycle-tracking extensions showing a collab guest (omp join) as idle while the host is working; extension-initiated turns (pi.sendMessage with triggerTurn, pi.sendUserMessage) are refused as host-only while joined instead of running on the guest's local model (#​13156 by @​Fruitseller).
  • Fixed omp update failing with "Malformed npm registry response … missing version" on registries such as Sonatype Nexus that answer the /<pkg>/latest lookup with the full package document or a non-manifest body; the updater now reads the version from the package's dist-tags (#​14115).
  • Fixed wait and proc:// failing with "Daemon list request timed out" when the project daemon broker hangs; background jobs and agents are still reported, and proc:// shows that services are unavailable (#​14120 by @​H4vC).
  • Fixed agent://<id> showing an agent's previous published output as current while that agent runs a follow-up or wake turn; the read now says the output is from the previous run (#​14120 by @​H4vC).
  • Fixed proc:// listing agents as running when they have no turn in flight; their rows now say the run is stale or already finished, as the jobs tool does (#​14120 by @​H4vC).
  • Changed subagents to skip their own builds, tests, and smoke runs and leave verification to the main agent, avoiding CPU spikes from many subagents verifying at once.

@​oh-my-pi/pi-tui

Changed
  • Changed Ctrl+Z in Tern's native composer to undo the last edit (TSP undo event) instead of suspending

@​oh-my-pi/pi-utils

Fixed
  • Fixed multi-second temp directory removal stalls on Windows by forcing a major GC before the first deletion retry (#​13044 by @​jchanghong023).

What's Changed

New Contributors

Full Changelog: https://github.com/can1357/oh-my-pi/compare/v18.4.11...v18.4.12


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate CLI.

This PR contains the following updates: | Package | Update | Change | |---|---|---| | [can1357/oh-my-pi](https://github.com/can1357/oh-my-pi) | minor | `18.4.11` → `18.5.0` | --- > ⚠️ **Warning** > > Some dependencies could not be looked up. Check the warning logs for more information. --- ### Release Notes <details> <summary>can1357/oh-my-pi (can1357/oh-my-pi)</summary> ### [`v18.5.0`](https://github.com/can1357/oh-my-pi/releases/tag/v18.5.0) [Compare Source](https://github.com/can1357/oh-my-pi/compare/v18.4.12...v18.5.0) #### [@&#8203;oh-my-pi/pi-ai](https://github.com/oh-my-pi/pi-ai) ##### Fixed - Fixed AWS `credential_process` on Windows stripping backslashes from unquoted paths such as `C:\Users\me\helper.exe`; commands are now split with Windows command-line rules there, matching the AWS CLI. #### [@&#8203;oh-my-pi/pi-catalog](https://github.com/oh-my-pi/pi-catalog) ##### Added - Added `closeModelCache()` (`@oh-my-pi/pi-catalog/model-cache`) to release the shared default `models.db` handle so an agent directory can be deleted on Windows; the next cache access reopens it #### [@&#8203;oh-my-pi/pi-coding-agent](https://github.com/oh-my-pi/pi-coding-agent) ##### Breaking Changes - `task.completionProbeMs` is replaced by the on/off setting `task.completionProbe`; an existing `task.completionProbeMs` migrates automatically (`0` → off, any period → on). - `SessionStorage.claimSessionFile(sessionPath)` is replaced by `claimSession(sessionId, sessionPath)` (which also refuses when the path now holds a different session), and `sessionOwnerLeasePath()` by `tryAcquireSessionLease(sessionId)`: custom storage backends that implemented `claimSessionFile` must implement `claimSession` to keep cross-process ownership ([#&#8203;14095](https://github.com/can1357/oh-my-pi/pull/14095) by [@&#8203;andrebrait](https://github.com/andrebrait)) ##### Added - `/dump all` writes a zip to the temp directory with the main transcript, the LLM request JSON, and one file per subagent transcript (nested subagents included, killed ones marked aborted); the TUI copies the archive path to the clipboard. Plain `/dump` is unchanged ([#&#8203;13908](https://github.com/can1357/oh-my-pi/pull/13908) by [@&#8203;H4vC](https://github.com/H4vC)) - Added `/effort [level]` to set the thinking level without switching models: bare `/effort` opens a picker, and completions offer only the current model's levels within the session effort ceiling. Its description includes thinking and intelligence so either term finds it; `Shift+Tab` still cycles levels ([#&#8203;12222](https://github.com/can1357/oh-my-pi/pull/12222) by [@&#8203;Xytronix](https://github.com/Xytronix), [#&#8203;14113](https://github.com/can1357/oh-my-pi/pull/14113) by [@&#8203;andrebrait](https://github.com/andrebrait)). - Added a per-call `model` selector to task items, eval `agent()`, and `workpool()`: a `provider/model[:level]` pattern or role alias, or an ordered array of them, that takes precedence over `task.agentModelOverrides` and the agent definition. Selection is an ordered preference — requested candidates are tried before configured fallbacks — and the spawn fails at preflight instead of silently routing elsewhere when the selector is the ambiguous literal `default`/`inherit` with or without a `:level` suffix (use `@default`), is blank or comma-only, carries an invalid thinking suffix, matches no available model, or sits on the batch container instead of a `tasks[]` item. A requested model without working credentials fails the spawn instead of running on the parent's model, and the error tells the caller to report the unavailable model rather than substitute another. A pool applies its selector to each worker's first turn and reuses that worker's session afterwards ([#&#8203;12229](https://github.com/can1357/oh-my-pi/pull/12229) by [@&#8203;Xytronix](https://github.com/Xytronix), [#&#8203;13669](https://github.com/can1357/oh-my-pi/pull/13669) by [@&#8203;andrebrait](https://github.com/andrebrait)). ##### Changed - Subagent completion estimates are asked after 2, 5, 10 and 30 more minutes, then hourly, instead of at a fixed interval, and only for subagents the main agent spawns in an interactive session; print (`-p`), RPC, ACP and SDK runs and nested subagents never request them. - `/changelog`, `/context`, `/tools`, `/hotkeys`, `/advisor status`, `/memory view|queue|stats|diagnostics`, and the mental-model views no longer add their report to the transcript. In text mode a report that fits shows above the editor like `/btw` and Esc dismisses it; a taller one (such as `/changelog full`) opens as a full-screen page on the alternate screen, scrolled with the arrow/page/Home/End keys and the wheel, and Esc returns to the screen exactly as it was. In the native terminal it opens as a sheet like `/usage` whose long reports scroll, closed with Esc or Close ([#&#8203;14136](https://github.com/can1357/oh-my-pi/pull/14136) by [@&#8203;H4vC](https://github.com/H4vC)). - `/jobs`, `/mcp help|list|resources|prompts|notifications` and `/ssh help|list` no longer add their report to the transcript either: they show the same way, and natively `/jobs` opens the live background-jobs sheet the jobs pill opens (`/jobs full` keeps the full command lines in a report sheet) ([#&#8203;14138](https://github.com/can1357/oh-my-pi/pull/14138) by [@&#8203;H4vC](https://github.com/H4vC)). - The welcome banner (in the terminal and as Tern's native card) is now the `omp` logo and wordmark with the version and a tip. It no longer shows the "Welcome back!" greeting, the model (the status line does), LSP servers or recent sessions (`/resume`), and the `#` `/` `!` `$` prompt prefixes moved into the rotating tips. ##### Fixed - Auto-retry now retries the same model once after a mid-stream socket drop that had already streamed reasoning or tool calls, instead of switching to the fallback chain on the first attempt; the fallback chain is consulted only if that retry also fails. This applies to every provider, since a dropped socket says nothing about the model ([#&#8203;13747](https://github.com/can1357/oh-my-pi/pull/13747) by [@&#8203;abilliontokens](https://github.com/abilliontokens)) - Fixed native git patch apply, checkout, stash, cherry-pick, and worktree removal on Windows ignoring `core.autocrlf`: LF patches failed to apply to CRLF checkouts and clean CRLF files were treated as modified - Fixed the `command` image-URL uploader stripping backslashes from Windows paths in its command template (`C:\tools\upload.exe {file}` ran `C:toolsupload.exe`) - Fixed reading a SQLite database (local or by URL) and closing prompt history leaving the database file locked on Windows - Fixed RPC mode on Windows freezing when the client stopped reading stdout: the worker blocked on the full stdout pipe and stopped reading stdin, so a client writing a batch of commands before reading replies deadlocked. Output now goes through a non-blocking stdout stream that spools to disk under backpressure, as on Linux and macOS - Fixed HTML export hanging when a session's subagent directory held a transcript named `..jsonl`; discovery now only descends into real child directories ([#&#8203;13908](https://github.com/can1357/oh-my-pi/pull/13908) by [@&#8203;H4vC](https://github.com/H4vC)) - Fixed resuming a session through a symlink or hard link to a file another omp process is writing: the resumed session no longer mixes its turns into that file and continues in a new file next to it ([#&#8203;14095](https://github.com/can1357/oh-my-pi/pull/14095) by [@&#8203;andrebrait](https://github.com/andrebrait)) - Fixed moving a session to another directory replacing a session file there that another omp process is writing, or moving a session another process is writing; the move now stops with an error and leaves both files untouched ([#&#8203;14095](https://github.com/can1357/oh-my-pi/pull/14095) by [@&#8203;andrebrait](https://github.com/andrebrait)) - Preserve the parent’s upstream route and live reasoning effort for inherited task/eval/workpool selectors and restored workers; caller `effort`, a requested `@default:<level>`, and the agent definition's own `thinking-level` still take precedence over the inherited effort ([#&#8203;12229](https://github.com/can1357/oh-my-pi/pull/12229) by [@&#8203;Xytronix](https://github.com/Xytronix), [#&#8203;13669](https://github.com/can1357/oh-my-pi/pull/13669) by [@&#8203;andrebrait](https://github.com/andrebrait)). - Fixed the `browser` tool's Tern backend being refused by any Tern newer than the protocol omp was built against; it now speaks Tern's protobuf session protocol (level 12), which Tern serves across builds, and a Tern from before it reports as unavailable (update Tern) so the Chromium fallback takes over. - Fixed reloading a legacy Pi extension on Windows serving the previously loaded source instead of the edited files - Fixed Redis-, SQL-, and in-memory session storage listing no sessions on Windows: directory listing now matches `\`-separated session paths, so `/resume` and the session picker find them - Fixed an MCP stdio server whose configured command path does not exist failing on Windows with "MCP subprocess closed stdout before responding" instead of a not-found error naming the path - Fixed `omp commit` never closing its credential store, leaving `agent.db` open (and a broker-backed store's sync loop running) after the commit finished - Fixed every new session (including subagents) staying in memory for 5 seconds after creation, held by an uncancelled workspace-scan deadline timer; a parked or disposed subagent's session and settings are now released immediately - Fixed autoresearch `run_experiment` on Windows running `autoresearch.sh` through the WSL `bash.exe` launcher found on PATH (a separate Linux environment that fails when WSL is unavailable); it now uses Git Bash or the configured `shellPath` - Fixed sessions started in a temp-directory cwd on Windows landing under a home-relative `-AppData-Local-Temp-…` session directory instead of the `-tmp-…` one; existing directories under the old name are migrated forward - Fixed the `write` tool claiming "Made executable via chmod +x" for shebang files on Windows, where chmod keeps no execute bits - Fixed `readlink` in the bash tool printing a provider-backed path (e.g. `local://file`) with a `\\?\` prefix on Windows - Fixed the daemon broker on Windows dying with the omp process that started it, which stopped the shared browser relay (and every other broker daemon) while other omp sessions were still using it - Fixed the `browser` tool's Tern backend being refused by any Tern newer than the protocol omp was built against; it now speaks Tern's JSON script protocol, which no Tern build ties it to, and a Tern from before it reports as unavailable (update Tern) so the Chromium fallback takes over. #### [@&#8203;oh-my-pi/pi-natives](https://github.com/oh-my-pi/pi-natives) ##### Fixed - Fixed Ctrl+V on Windows sometimes pasting text with a few characters replaced by unrelated glyphs (for example `https://` turning into `՞ttp缀難//`); clipboard reads and writes no longer run at the same time ([#&#8203;14144](https://github.com/can1357/oh-my-pi/pull/14144) by [@&#8203;H4vC](https://github.com/H4vC)) #### [@&#8203;oh-my-pi/pi-tui](https://github.com/oh-my-pi/pi-tui) ##### Breaking Changes - `WelcomeComponent` no longer takes a model or provider: its constructor is `(version)`, and `setModel()`, `setRecentSessions()`, `setLspServers()`, `handleNativeEvent()`, `RecentSession`, `LspServerInfo`, `WELCOME_SESSION_SLOTS` and `WELCOME_LSP_SLOTS` are gone; `ComposerWelcomeUpdate` drops `modelName`/`providerName`/`recentSessions`/`lspServers`, and `ComposerCache` drops `writeWelcome()`, `writeRecentSessions()`, `writeLspServers()`, `ComposerWelcomeCache` and the `welcome`/`recentSessions`/`lspServers` fields of `ComposerStartupCache`. - `renderWelcomeTip()` returns its lines without an indent, `Tip:` and the body wrapped together, for the caller to place. ##### Added - Added `ReportPanel`, a read-only command report: a `/btw`-style titled box with an Esc hint in text mode (above the editor, or as a full-screen page whose body scrolls on the arrow/page/Home/End keys and the wheel), and natively a `/usage`-style sheet whose body the terminal scrolls once it is long, with a Close button ([#&#8203;14136](https://github.com/can1357/oh-my-pi/pull/14136) by [@&#8203;H4vC](https://github.com/H4vC)). - Added `contextUsageHead()`, the `/context` title naming the model and its window ([#&#8203;14136](https://github.com/can1357/oh-my-pi/pull/14136) by [@&#8203;H4vC](https://github.com/H4vC)). - Added `Composer.rowsBelow()`, the rows the chrome under a below-transcript root took in the last frame ([#&#8203;14136](https://github.com/can1357/oh-my-pi/pull/14136) by [@&#8203;H4vC](https://github.com/H4vC)). - Added `Composer.pinInputToBottom()`, which keeps the input on the bottom row after chrome above the editor closes when rows it displaced went to scrollback ([#&#8203;14136](https://github.com/can1357/oh-my-pi/pull/14136) by [@&#8203;H4vC](https://github.com/H4vC)). - Added a repeatable native `reveal` (`{ at, n }`): a described node scrolls into view again whenever its `n` changes, without being re-added. ##### Changed - `ContextUsageView` is now a bare report body without its own title, rules or card; `setBreakdown()` was removed ([#&#8203;14136](https://github.com/can1357/oh-my-pi/pull/14136) by [@&#8203;H4vC](https://github.com/H4vC)). - The terminal welcome banner is the gradient logo beside the `omp` wordmark with the version under it and the tip, centered in the terminal; the logo stands alone when the lockup does not fit, and the tip drops below 50 columns. It no longer greets with "Welcome back!", natively either. ##### Fixed - Fixed tool previews on Windows showing a working directory on another drive as a raw absolute path instead of its home-shortened `~/…` form. - Fixed pasted drive-less `file:///…` URLs (forwarded from a macOS pasteboard or remote session) staying undecoded on Windows instead of loading as image paths. - Fixed an output artifact whose file cannot be opened (e.g. a directory in the way) being reported on Windows as a write failure and retried later, instead of a terminal open failure. - Fixed plan review's Contents in Tern: clicking an entry, or moving through them with the arrow keys, now scrolls the plan to that section. ##### Removed - Removed `JobsPanel`, the `/jobs` transcript block; `/jobs` now opens `JobsSheet` natively ([#&#8203;14138](https://github.com/can1357/oh-my-pi/pull/14138) by [@&#8203;H4vC](https://github.com/H4vC)). #### [@&#8203;oh-my-pi/pi-utils](https://github.com/oh-my-pi/pi-utils) ##### Added - Added the public `getSessionOwnersDir()` utility, which returns the profile-independent `~/.omp/run/session-owners` directory that names session ownership leases ([#&#8203;14095](https://github.com/can1357/oh-my-pi/pull/14095) by [@&#8203;andrebrait](https://github.com/andrebrait)) ##### Fixed - Fixed SQLite error messages doubling every backslash in Windows database paths - Fixed corrupt-database recovery failing with `EBUSY` on Windows when several in-process openers of the same store failed at once #### What's Changed - feat(coding-agent): /dump all writes a zip with each subagent transcript by [@&#8203;H4vC](https://github.com/H4vC) in [#&#8203;13908](https://github.com/can1357/oh-my-pi/pull/13908) - fix(session): retry the same model once after a mid-stream socket drop by [@&#8203;abilliontokens](https://github.com/abilliontokens) in [#&#8203;13747](https://github.com/can1357/oh-my-pi/pull/13747) - feat(coding-agent): show command reports outside the transcript by [@&#8203;H4vC](https://github.com/H4vC) in [#&#8203;14136](https://github.com/can1357/oh-my-pi/pull/14136) - fix(session): key the ownership lease by session id by [@&#8203;andrebrait](https://github.com/andrebrait) in [#&#8203;14095](https://github.com/can1357/oh-my-pi/pull/14095) - feat(coding-agent): show /jobs, /mcp and /ssh reports outside the transcript by [@&#8203;H4vC](https://github.com/H4vC) in [#&#8203;14138](https://github.com/can1357/oh-my-pi/pull/14138) - test(coding-agent): fix fallback-window regression after same-model socket retry by [@&#8203;andrebrait](https://github.com/andrebrait) in [#&#8203;14140](https://github.com/can1357/oh-my-pi/pull/14140) - feat(coding-agent): add /effort command with a level picker (builds on [#&#8203;12222](https://github.com/can1357/oh-my-pi/issues/12222)) by [@&#8203;andrebrait](https://github.com/andrebrait) in [#&#8203;14113](https://github.com/can1357/oh-my-pi/pull/14113) - fix(task): reject suffixed default/inherit selectors and stop model substitution by [@&#8203;andrebrait](https://github.com/andrebrait) in [#&#8203;13669](https://github.com/can1357/oh-my-pi/pull/13669) - fix(natives): serialized clipboard access so Ctrl+V stops corrupting text on Windows by [@&#8203;H4vC](https://github.com/H4vC) in [#&#8203;14144](https://github.com/can1357/oh-my-pi/pull/14144) **Full Changelog**: <https://github.com/can1357/oh-my-pi/compare/v18.4.12...v18.5.0> ### [`v18.4.12`](https://github.com/can1357/oh-my-pi/releases/tag/v18.4.12) [Compare Source](https://github.com/can1357/oh-my-pi/compare/v18.4.11...v18.4.12) #### [@&#8203;oh-my-pi/pi-ai](https://github.com/oh-my-pi/pi-ai) ##### Added - Added `createAuthGatewayRouter`, the auth-gateway's routes without the HTTP listener, and `serveAuthGatewayStdio`, which serves them as JSON lines (`{"id", "path", "body"}` in, `{"id", "status", "body"}` out) for a parent process. #### [@&#8203;oh-my-pi/pi-coding-agent](https://github.com/oh-my-pi/pi-coding-agent) ##### Added - Added `omp auth-gateway stdio`: a long-lived inference server for other programs speaking JSON lines on stdin/stdout (`{"id", "path": "/v1/chat/completions", "body"}` in, `{"id", "status", "body"}` out) with your own sign-ins; a request's `model` takes any `--model` selector (`@smol`, `sonnet`, `@commit,@smol`) and falls back along `retry.fallbackChains` when an attempt fails. ##### Changed - Reduced CPU use while streaming with several agents active: extension `message_update` handlers are delivered through a lighter queue, and RPC no longer processes subagent events unless a client subscribed to them ([#&#8203;13244](https://github.com/can1357/oh-my-pi/pull/13244) by [@&#8203;iliaal](https://github.com/iliaal)). ##### Fixed - Fixed web search stopping at Perplexity's anonymous signup wall instead of falling back to the next configured provider ([#&#8203;12756](https://github.com/can1357/oh-my-pi/issues/12756)). - Fixed imported Claude Code sessions on Windows reporting the encoded `C--…` directory name instead of the registered project path when the transcript records no cwd ([#&#8203;13363](https://github.com/can1357/oh-my-pi/pull/13363) by [@&#8203;jchanghong023](https://github.com/jchanghong023)). - Fixed JavaScript eval `wait()`/`handle.wait()` ignoring a positional timeout; `h.wait(30)` now waits up to 30 seconds like `{ timeout: 30 }`, and mixing an options object with positional arguments throws a `TypeError` ([#&#8203;12720](https://github.com/can1357/oh-my-pi/pull/12720) by [@&#8203;F0Rextasy](https://github.com/F0Rextasy)). - Fixed Herdr and other lifecycle-tracking extensions showing a collab guest (`omp join`) as idle while the host is working; extension-initiated turns (`pi.sendMessage` with `triggerTurn`, `pi.sendUserMessage`) are refused as host-only while joined instead of running on the guest's local model ([#&#8203;13156](https://github.com/can1357/oh-my-pi/pull/13156) by [@&#8203;Fruitseller](https://github.com/Fruitseller)). - Fixed `omp update` failing with "Malformed npm registry response … missing version" on registries such as Sonatype Nexus that answer the `/<pkg>/latest` lookup with the full package document or a non-manifest body; the updater now reads the version from the package's dist-tags ([#&#8203;14115](https://github.com/can1357/oh-my-pi/pull/14115)). - Fixed `wait` and `proc://` failing with "Daemon list request timed out" when the project daemon broker hangs; background jobs and agents are still reported, and `proc://` shows that services are unavailable ([#&#8203;14120](https://github.com/can1357/oh-my-pi/pull/14120) by [@&#8203;H4vC](https://github.com/H4vC)). - Fixed `agent://<id>` showing an agent's previous published output as current while that agent runs a follow-up or wake turn; the read now says the output is from the previous run ([#&#8203;14120](https://github.com/can1357/oh-my-pi/pull/14120) by [@&#8203;H4vC](https://github.com/H4vC)). - Fixed `proc://` listing agents as running when they have no turn in flight; their rows now say the run is stale or already finished, as the `jobs` tool does ([#&#8203;14120](https://github.com/can1357/oh-my-pi/pull/14120) by [@&#8203;H4vC](https://github.com/H4vC)). - Changed subagents to skip their own builds, tests, and smoke runs and leave verification to the main agent, avoiding CPU spikes from many subagents verifying at once. #### [@&#8203;oh-my-pi/pi-tui](https://github.com/oh-my-pi/pi-tui) ##### Changed - Changed Ctrl+Z in Tern's native composer to undo the last edit (TSP `undo` event) instead of suspending #### [@&#8203;oh-my-pi/pi-utils](https://github.com/oh-my-pi/pi-utils) ##### Fixed - Fixed multi-second temp directory removal stalls on Windows by forcing a major GC before the first deletion retry ([#&#8203;13044](https://github.com/can1357/oh-my-pi/pull/13044) by [@&#8203;jchanghong023](https://github.com/jchanghong023)). #### What's Changed - fix(eval): accept positional timeout in JS wait() via optionsArg by [@&#8203;F0Rextasy](https://github.com/F0Rextasy) in [#&#8203;12720](https://github.com/can1357/oh-my-pi/pull/12720) - fix(web-search): classify Perplexity anonymous signup wall as failure by [@&#8203;roboomp](https://github.com/roboomp) in [#&#8203;12838](https://github.com/can1357/oh-my-pi/pull/12838) - fix(omp-rpc): verify teardown and retain a survivor handle for reaping by [@&#8203;roboomp](https://github.com/roboomp) in [#&#8203;12843](https://github.com/can1357/oh-my-pi/pull/12843) - fix(utils): force a GC before retrying temp dir removal on Windows by [@&#8203;jchanghong023](https://github.com/jchanghong023) in [#&#8203;13044](https://github.com/can1357/oh-my-pi/pull/13044) - fix(collab): mirror guest lifecycle events to the extension runner by [@&#8203;Fruitseller](https://github.com/Fruitseller) in [#&#8203;13156](https://github.com/can1357/oh-my-pi/pull/13156) - perf(coding-agent): reduce streaming event queue overhead by [@&#8203;iliaal](https://github.com/iliaal) in [#&#8203;13244](https://github.com/can1357/oh-my-pi/pull/13244) - fix(coding-agent): encode Windows drive colons in Claude project dirs by [@&#8203;jchanghong023](https://github.com/jchanghong023) in [#&#8203;13363](https://github.com/can1357/oh-my-pi/pull/13363) - fix(coding-agent): read version from packument when registry answers dist-tag lookup with 200 by [@&#8203;H4vC](https://github.com/H4vC) in [#&#8203;14115](https://github.com/can1357/oh-my-pi/pull/14115) - fix(coding-agent): keep subagent wait and proc:// usable when the daemon broker hangs by [@&#8203;H4vC](https://github.com/H4vC) in [#&#8203;14120](https://github.com/can1357/oh-my-pi/pull/14120) #### New Contributors - [@&#8203;Fruitseller](https://github.com/Fruitseller) made their first contribution in [#&#8203;13156](https://github.com/can1357/oh-my-pi/pull/13156) **Full Changelog**: <https://github.com/can1357/oh-my-pi/compare/v18.4.11...v18.4.12> </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xMzIuMiIsInVwZGF0ZWRJblZlciI6IjQ0LjEzMi4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
chore(deps): update dependency can1357/oh-my-pi to v18.4.12
Some checks failed
Update hashes / update-hashes (pull_request) Failing after 4s
25f64c0010
renovate-bot scheduled this pull request to auto merge when all checks succeed 2026-10-02 17:03:39 +00:00
renovate-bot force-pushed renovate/can1357-oh-my-pi-18.x from 25f64c0010
Some checks failed
Update hashes / update-hashes (pull_request) Failing after 4s
to 014b7cf6bb
Some checks failed
Update hashes / update-hashes (pull_request) Failing after 5s
2026-10-03 02:02:19 +00:00
Compare
renovate-bot changed title from chore(deps): update dependency can1357/oh-my-pi to v18.4.12 to chore(deps): update dependency can1357/oh-my-pi to v18.5.0 2026-10-03 02:02:19 +00:00
renovate-bot deleted branch renovate/can1357-oh-my-pi-18.x 2026-10-03 02:02:21 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
mandlm/omp-nix!207
No description provided.