Bumps [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) from 4.1.8 to 4.1.10. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/vitest-dev/vitest/releases">vitest's releases</a>.</em></p> <blockquote> <h2>v4.1.10</h2> <h3> 🐞 Bug Fixes</h3> <ul> <li><strong>browser</strong>: Check fs access in builtin commands [backport to v4] - by <a href="https://github.com/hi-ogawa"><code>@hi-ogawa</code></a>, <strong>Hiroshi Ogawa</strong> and <strong>OpenCode (claude-opus-4-8)</strong> in <a href="https://redirect.github.com/vitest-dev/vitest/issues/10680">vitest-dev/vitest#10680</a> <a href="https://github.com/vitest-dev/vitest/commit/5c18dd267"><!-- raw HTML omitted -->(5c18d)<!-- raw HTML omitted --></a></li> <li><strong>vm</strong>: Fix external module resolve error with deps optimizer query for encoded URI [backport to v4] - by <a href="https://github.com/SveLil"><code>@SveLil</code></a> and <a href="https://github.com/hi-ogawa"><code>@hi-ogawa</code></a> in <a href="https://redirect.github.com/vitest-dev/vitest/issues/10661">vitest-dev/vitest#10661</a> <a href="https://github.com/vitest-dev/vitest/commit/bae52b511"><!-- raw HTML omitted -->(bae52)<!-- raw HTML omitted --></a></li> </ul> <h5> <a href="https://github.com/vitest-dev/vitest/compare/v4.1.9...v4.1.10">View changes on GitHub</a></h5> <h2>v4.1.9</h2> <h3>🐞 Bug Fixes</h3> <ul> <li>Fix <code>importOriginal</code> with optimizer and query import [backport to v4] - by <strong>Hiroshi Ogawa</strong>, <strong>David Harris</strong>, <strong>Codex</strong>and <strong>Vladimir</strong> in <a href="https://redirect.github.com/vitest-dev/vitest/issues/10546">vitest-dev/vitest#10546</a> <a href="https://github.com/vitest-dev/vitest/commit/a5180190c"><!-- raw HTML omitted -->(a5180)<!-- raw HTML omitted --></a></li> <li><strong>browser</strong>: <ul> <li>Wait for orchestrator readiness before resolving browser sessions [backport to v4] - by <strong>Vladimir</strong> and <strong>Séamus O'Connor</strong> in <a href="https://redirect.github.com/vitest-dev/vitest/issues/10555">vitest-dev/vitest#10555</a> <a href="https://github.com/vitest-dev/vitest/commit/7fb29651a"><!-- raw HTML omitted -->(7fb29)<!-- raw HTML omitted --></a></li> <li>Wait for iframe tester readiness before preparing [backport to v4] - by <strong>Vladimir</strong> and <strong>Séamus O'Connor</strong> in <a href="https://redirect.github.com/vitest-dev/vitest/issues/10497">vitest-dev/vitest#10497</a> and <a href="https://redirect.github.com/vitest-dev/vitest/issues/10556">vitest-dev/vitest#10556</a> <a href="https://github.com/vitest-dev/vitest/commit/fbc626c40"><!-- raw HTML omitted -->(fbc62)<!-- raw HTML omitted --></a></li> </ul> </li> <li><strong>mocker</strong>: <ul> <li>Hoist vi.mock() for vite-plus/test imports [backport to v4] - by <strong>Hiroshi Ogawa</strong>, <strong>LongYinan</strong>, <strong>Claude Opus 4.8</strong> and <strong>Vladimir</strong> in <a href="https://redirect.github.com/vitest-dev/vitest/issues/10548">vitest-dev/vitest#10548</a> <a href="https://github.com/vitest-dev/vitest/commit/2c9559c02"><!-- raw HTML omitted -->(2c955)<!-- raw HTML omitted --></a></li> </ul> </li> <li><strong>pool</strong>: <ul> <li>Prevent test run hang on worker crash [backport to v4] - by <strong>Ari Perkkiö</strong> and <strong>Jattioui Ismail</strong> in <a href="https://redirect.github.com/vitest-dev/vitest/issues/10543">vitest-dev/vitest#10543</a> and <a href="https://redirect.github.com/vitest-dev/vitest/issues/10564">vitest-dev/vitest#10564</a> <a href="https://github.com/vitest-dev/vitest/commit/934b0f587"><!-- raw HTML omitted -->(934b0)<!-- raw HTML omitted --></a></li> </ul> </li> </ul> <h5><a href="https://github.com/vitest-dev/vitest/compare/v4.1.8...v4.1.9">View changes on GitHub</a></h5> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="db616d227b"><code>db616d2</code></a> chore: release v4.1.10 (<a href="https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/10718">#10718</a>)</li> <li><a href="bae52b5112"><code>bae52b5</code></a> fix(vm): fix external module resolve error with deps optimizer query for enco...</li> <li><a href="a7a61e78c7"><code>a7a61e7</code></a> chore: release v4.1.9 (<a href="https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/10598">#10598</a>)</li> <li><a href="934b0f587c"><code>934b0f5</code></a> fix(pool): prevent test run hang on worker crash (<a href="https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/10543">#10543</a>) [backport to v4] (#...</li> <li><a href="7fb29651af"><code>7fb2965</code></a> fix(browser): wait for orchestrator readiness before resolving browser sessio...</li> <li><a href="a5180190c1"><code>a518019</code></a> fix: fix <code>importOriginal</code> with optimizer and query import [backport to v4] (#...</li> <li>See full diff in <a href="https://github.com/vitest-dev/vitest/commits/v4.1.10/packages/vitest">compare view</a></li> </ul> </details> <br /> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: gsxdsm <gsxdsm@users.noreply.github.com>
fusion-plugin-omp-runtime
Oh My Pi (omp) CLI-backed provider/runtime plugin for Fusion. Agent sessions use native ACP (omp acp) for realtime streaming, tool visibility, and multi-turn reuse.
Install
This plugin is staged with Fusion runtime plugins. It shells out to an operator-installed omp binary on PATH — Fusion never downloads or bundles the CLI itself.
External integration evidence
Per AGENTS.md (External-integration evidence):
- Canonical upstream repo URL: https://github.com/can1357/oh-my-pi
- Docs / homepage URL: https://omp.sh/ · https://omp.sh/docs/acp
- Release / download URL: https://github.com/can1357/oh-my-pi/releases · installer
curl -fsSL https://raw.githubusercontent.com/can1357/oh-my-pi/main/scripts/install.sh | sh· npm@oh-my-pi/pi-coding-agent - Binary / CLI name:
omp - Checksum:
upstream-pending-verification(operator-installed binary; Fusion does not pin/download it) - ACP protocol: https://agentclientprotocol.com · https://github.com/zed-industries/agent-client-protocol
- ACP TypeScript SDK:
@agentclientprotocol/sdk0.24.0
Contract summary
| Item | Value |
|---|---|
| Plugin ID | fusion-plugin-omp-runtime |
| Runtime ID | omp |
| Provider ID | omp-cli |
| Binary probe | omp --version |
| ACP launch | omp acp (equiv. omp --mode acp) |
| Optional model | omp --model <id> acp |
| Auth | omp agent method — reuses ~/.omp provider keys / OAuth |
Agent session path — ACP (primary)
OmpRuntimeAdapter drives omp’s native ACP server with a vendored ACP client (copied under src/acp/, not imported from fusion-plugin-acp-runtime):
omp acp
# optional model:
omp --model claude-sonnet-4 acp
- Realtime streaming — ACP
session/updatenotifications map to FusiononText/onThinking/onToolStart/onToolEnd. - Multi-turn — one
createSessionkeeps the ACP connection; eachpromptWithFallbackis asession/prompton the same session. - Permissions — omp tool calls surface as
session/request_permissionand go through Fusion’s per-category action gate. - Auth — after
initialize, Fusion prefers theagentauth method (credentials under~/.omp). Terminal/TUI login is not preferred for headless Fusion. - Env — subprocess env is allow-listed (
HOME/PATH/XDG + common provider key names). Fullprocess.envis never inherited.
See https://omp.sh/docs/acp for the upstream protocol surface (slash commands, _omp/* extensions, wire debugging).
Enable in Fusion
- Install & authenticate
omp(omp --version; credentials under~/.omp). - Install/enable this plugin (staged bundled runtime).
- Settings → Authentication → Oh My Pi — via omp ACP → Enable (optional binary path).
- Either:
- Agent → Runtime Source: Runtime → OMP Runtime (
runtimeHint: "omp"), or - Pick an
omp-cli/*model when the toggle is on (fromomp models).
- Agent → Runtime Source: Runtime → OMP Runtime (
Fusion tools (fn_*)
Engine customTools (board/task/agent tools such as fn_task_list) are exposed to
omp as MCP server fusion-custom-tools:
OmpRuntimeAdapterstarts a loopback HTTP bridge holding the in-processToolDefinition.executeclosures.- Session
session/new.mcpServersincludes a stdio MCP child (mcp-schema-server.cjs) that implementstools/list+tools/calland POSTs calls to the bridge (FUSION_OMP_TOOL_BRIDGE_URL). - Operator-configured MCP servers are forwarded alongside (stdio/http/sse).
- System rules tell omp to prefer
fusion-custom-toolsfor Fusion board ops.
Known v1 gaps
| Gap | Status |
|---|---|
Auto-route omp-cli/* without explicit Runtime Source |
Partial — models surface when Enable is on; prefer runtimeHint: "omp" for agent lanes |
| Mid-session Fusion model picker changes | Not wired — model is fixed at omp --model … acp spawn |
Settings (ACP spawn bag)
Built internally by buildOmpAcpRuntimeSettings:
| Key | Default | Meaning |
|---|---|---|
acpBinaryPath |
omp |
Agent binary |
acpArgs |
["acp"] |
ACP mode args |
acpModel |
omp/default |
Model id for describeModel / optional --model |
acpEnvAllowList |
see OMP_ACP_ENV_ALLOWLIST |
Env names forwarded |
acpFsRead / acpFsWrite |
false |
Client-side ACP fs capabilities (opt-in) |
acpAllowUnrestricted |
true |
Operator-selected first-party CLI posture |
acpAuthenticate.preferMethods |
["agent","terminal"] |
Post-initialize auth |
Development
pnpm --filter @fusion-plugin-examples/omp-runtime test
pnpm --filter @fusion-plugin-examples/omp-runtime build
Notes
- Do not invent release checksums for the operator’s
ompbinary. - Generic multi-agent ACP (any binary) remains
fusion-plugin-acp-runtime; this plugin is the omp-specific first-class path with sane defaults.