Files
fusion/plugins/fusion-plugin-droid-runtime
gsxdsm abd596b700 fix: pack full desktop dependency closure + resolve bun/desktop plugin loading on Windows
Desktop "Local" mode crashed with ERR_MODULE_NOT_FOUND because electron-builder's
pnpm collector drops `deduped` subtrees, so engine's transitive closure
(@modelcontextprotocol/sdk, pi-ai provider SDKs, etc.) was never packed. Stage the
complete flat prod closure with `pnpm deploy --legacy --config.node-linker=hoisted`
and package it via `electron-builder --projectDir deploy`, bypassing the lossy
collector entirely.

Also make the dashboard-imported example plugins loadable under plain Node (the
Electron main runtime): cursor/droid/roadmap now expose compiled `dist` on the
`import` condition (keeping `source`→src for the bun CLI) and are built during the
desktop build. Add `source` conditions to paperclip/agent-browser/even-cards/
even-realities-glasses/whatsapp-chat so the bun `--conditions=source` Windows CLI
compile resolves them from source.

Validated on macOS: @fusion/core|engine|dashboard import cleanly from the staged
deploy; packing yields a complete 705-package asar; bun-windows-x64 cross-compiles
with all plugin dist removed.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-01 20:40:02 -07:00
..
2026-07-01 19:38:51 -07:00

Droid Runtime Plugin

First-class Droid runtime/provider plugin (@fusion-plugin-examples/droid-runtime).

Purpose

This package is the canonical home for Droid-specific runtime behavior, including:

  • provider id droid-cli
  • model discovery + normalization
  • CLI subprocess streaming + session resume
  • MCP tool bridge + thinking effort mapping
  • probe contract via probeDroidBinary

Runtime + Provider

  • Runtime ID: droid
  • Display name: Droid Runtime
  • Provider surface preserved: Factory AI — via Droid CLI (droid-cli)

Core implementation files live in src/:

  • runtime-adapter.ts
  • provider.ts
  • process-manager.ts
  • probe.ts
  • prompt/tool/thinking/control helpers

Dashboard UI contribution surfaces

The plugin registers uiSlots for:

  • settings-provider-card
  • settings-integration-card
  • onboarding-provider-card
  • onboarding-setup-help
  • post-onboarding-recommendation

Compatibility with @fusion/droid-cli

packages/droid-cli is now a thin compatibility shim. It keeps the historical pi-extension entrypoint, but delegates runtime/provider behavior to this plugin package.