doriiOS Tauri Desktop Lane
The macOS lane packages doriiOS as an Apple Silicon DMG for local aquatic research workstations. The app bundles a production Next.js runtime, starts it on localhost, and opens the Tauri webview at /?desktop=1.
Commands
npm run desktop:dev
npm run desktop:fmt
npm run desktop:check
npm run build:desktop
npm run desktop:smoke
npm run desktop:package
npm run desktop:notary:store
npm run desktop:notarizedesktop:package builds the app, signs with the configured Developer ID identity when APPLE_SIGNING_IDENTITY is set, creates the DMG, and prints the artifact path under src-tauri/target/release/bundle/dmg/.
Runtime Boundary
DORIIOS_DEPLOYMENT_PROFILE=desktop-local- Local server supervised by Rust on
127.0.0.1 - App data root defaults to macOS Application Support
- Static bootstrap remains only as a startup/status fallback
- Public Vercel settings, fixture agents, and bundled demo data stay separate
Agent Providers
Desktop v1 exposes only:
- Codex CLI: no credentials stored by doriiOS. Install and sign in to the Codex
CLI, then leave the provider set to codex.
- OpenRouter: paste an API key in the desktop settings panel. The key is written
to macOS Keychain; desktop-settings.json stores only provider, model, CLI path, and data-root preferences.
The desktop release gate rejects any other provider in desktop settings.
Rust Commands Exposed To The UI
get_desktop_agent_status: provider, readiness, model, CLI/key status,
runtime URL, data root, and settings path.
save_desktop_agent_settings: provider/model/data root/Codex path plus an
optional OpenRouter Keychain write.
restart_desktop_runtime: restarts the supervised localhost runtime after
provider or path changes.
select_data_root: opens a macOS folder picker and returns the selected path.open_data_root: creates and opens the active data root.
Developer ID Signing And Notarization
This repo expects the Humyn LLC Developer ID team when producing public desktop artifacts:
export APPLE_SIGNING_IDENTITY="3AF8D8003F783DA86164B4ADDC0274167E04859B"
npm run desktop:packageStore notarization credentials once in macOS Keychain. Apple prompts for the Apple ID and app-specific password; do not commit or paste those secrets into repo files.
npm run desktop:notary:storeAfter the Keychain profile exists, submit the signed DMG, wait for Apple, staple the ticket, and validate the stapled artifact:
npm run desktop:notarizeThe default notary profile is doriiOS-notarytool. Override it with DORIIOS_NOTARY_PROFILE if needed.
DMG Install
- Build with
npm run desktop:package. - Notarize with
npm run desktop:notarizefor public distribution. - Open the printed
.dmg. - Drag
doriiOS.appto Applications. - On an unnotarized local build, first launch may require right-click Open.
- Select Codex CLI or OpenRouter in the desktop panel.
No deploy, push, paid service setup, or third-party mutation is part of the local release gate.