Skip to main content
dsh-tauri connects the native desktop shell, Harness host, and embedded client. Desktop navigation, browser-based account authorization, and native calls from other plugins depend on this bridge.

Use Harness from desktop menus

Interfaces for plugins

Register panels with definePanel(ctx, entry). A PanelEntry contains id, label, icon, and render, with optional order and locale. The entry uses sidebar.panellist; its content uses main. The returned PanelHandle exposes select(), close(), and dispose(). The current dsh-tauri-extension and dsh-tauri-scheduler use this entry point. The retired dsh-tauri-panel package’s panel.protocol and sidebar.panel.action have no compatibility path.

Compatibility and security boundaries

  • The desktop currently recommends Harness 0.2.0-rc.2 and accepts 0.1.5-rc.1 as its minimum. Acceptance does not guarantee every API; adapters probe actual services and capabilities.
  • Embedded-carrier authentication applies only when the desktop injects DSH_TAURI_EMBEDDED=1. Independently launched dsh web retains browser-session authentication.
  • Tauri calls pass through parent-window messages. The desktop shell verifies the iframe source and origin and executes only allowlisted commands. Without the host bridge, calls fail rather than gaining other native permissions.
  • The client bridge runs only in an embedded environment. If it is missing or fails to initialize, dependent desktop navigation and native calls have no general fallback.
Message validation is not an execution sandbox. Harness and plugins can execute local code; profiles are not operating-system sandboxes.
View source