app
Adom Bridge
Public Made by Adomby adom
Adom Bridge unleashes your AI onto your full PC: full power, full safety. The AI breaks out of the container it runs in and onto your real machine, managing and running your entire laptop as you: launch apps, move files, drive any window, control KiCad, Fusion 360 or your real signed-in browser. Works with any AI, cloud or local (Claude Desktop, Claude Code, Codex), no Hydrogen required. Bridge and its bridges are an operating system for AI, with managed Node and Python runtimes, and a human-onl
← Commit history
installer-SKILL.md+14−14@@ -25,7 +25,7 @@ It installs to `%LOCALAPPDATA%\Adom Desktop\` — no UAC prompt, no admin needed **UI behavior**: zero UI in all cases. `SilentInstall silent` is set at the top of the NSIS script, so even `setup.exe` invoked from Explorer runs without a window. No Welcome page, no progress bar, no Finish page. -**Auto-launch**: by default the installer calls `ExecShell "" "$INSTDIR\adom-desktop.exe"` at the end of POSTINSTALL. Pass `/NOLAUNCH` to suppress this. Used by HD when bundling AD because HD wants to spawn AD with `--embedded --start-hidden --relay-url ... --session-token ...` itself, not let AD launch standalone first and get respawned via single-instance.+**Auto-launch**: by default the installer calls `ExecShell "" "$INSTDIR\adom-desktop.exe"` at the end of POSTINSTALL. Pass `/NOLAUNCH` to suppress this. Used by Hydrogen when bundling AD because Hydrogen wants to spawn AD with `--embedded --start-hidden --relay-url ... --session-token ...` itself, not let AD launch standalone first and get respawned via single-instance. ## Live progress log @@ -50,11 +50,11 @@ Stage tags currently emitted: The uninstaller writes the same log with `[PREUNINSTALL]` / `[POSTUNINSTALL]` stages. -## Recipe: HD's setup-step UI tails the log+## Recipe: Hydrogen's setup-step UI tails the log -Spawn the installer with `/NOLAUNCH`, poll the log file on a 200 ms timer, surface each new line to HD's UI. When `[DONE]` shows up OR the process exits, the install is complete.+Spawn the installer with `/NOLAUNCH`, poll the log file on a 200 ms timer, surface each new line to Hydrogen's UI. When `[DONE]` shows up OR the process exits, the install is complete. -### Rust (HD's installer driver)+### Rust (Hydrogen's installer driver) ```rust use std::{env, fs, path::PathBuf, process::Command, time::Duration};@@ -164,9 +164,9 @@ fn adom_desktop_installed_version() -> Option<String> { Compare with `semver::Version::parse` to decide whether to skip / upgrade / leave-alone. -## Recipe: HD's setup-step ladder for embedding AD+## Recipe: Hydrogen's setup-step ladder for embedding AD -The full pattern HD's setup-step UI runs when embedding AD:+The full pattern Hydrogen's setup-step UI runs when embedding AD: ``` 1. Check installed version → registry read above@@ -182,15 +182,15 @@ The full pattern HD's setup-step UI runs when embedding AD: --start-hidden --relay-url ws://127.0.0.1:8765 --relay-name adom-hydrogen- --session-token <hd's token>+ --session-token <hydrogen's token> 7. Poll AD's direct API for liveness → GET http://127.0.0.1:47200/health ``` -Steps 4 and 5 are also covered by AD's installer if you pass `--embedded` at AD's first launch (the embedded-mode detection writes the marker and AD's autostart-upgrade routine handles its own shortcuts). Doing them in HD's installer is belt-and-suspenders.+Steps 4 and 5 are also covered by AD's installer if you pass `--embedded` at AD's first launch (the embedded-mode detection writes the marker and AD's autostart-upgrade routine handles its own shortcuts). Doing them in Hydrogen's installer is belt-and-suspenders. ## Bundle-resource pattern -HD's `tauri.conf.json` should include the AD installer as a bundle resource so it ships inside HD's NSIS installer:+Hydrogen's `tauri.conf.json` should include the AD installer as a bundle resource so it ships inside Hydrogen's NSIS installer: ```json "bundle": {@@ -200,18 +200,18 @@ HD's `tauri.conf.json` should include the AD installer as a bundle resource so i } ``` -At runtime HD finds it under its install dir at `$INSTDIR\resources\Adom Desktop_<ver>_x64-setup.exe` — pass that path to the install function above.+At runtime Hydrogen finds it under its install dir at `$INSTDIR\resources\Adom Desktop_<ver>_x64-setup.exe` — pass that path to the install function above. ## Versioning + upgrade strategy -| Scenario | What HD's installer should do |+| Scenario | What Hydrogen's installer should do | |---|---| | No AD installed | Install bundled version | | AD older than bundled | Install bundled version (upgrade) | | AD same as bundled | Skip install step; still spawn with embedded flags | | AD newer than bundled | Skip install step; spawn with embedded flags. Don't downgrade — embedded mode works for any AD ≥ v1.8.42 | -The bundled AD installer is the minimum supported version for the HD release. HD can spawn newer ADs without modification.+The bundled AD installer is the minimum supported version for the Hydrogen release. Hydrogen can spawn newer ADs without modification. ## Exit codes @@ -230,7 +230,7 @@ Public download (the user's wiki, which is what end users hit): https://wiki.adom.inc/static/apps/adom-desktop/Adom%20Desktop_<version>_x64-setup.exe ``` -The wiki page's `metadata.install.windows_installer` field points at the canonical filename for the current published version. HD's release build can fetch the latest via:+The wiki page's `metadata.install.windows_installer` field points at the canonical filename for the current published version. Hydrogen's release build can fetch the latest via: ```bash curl -fL https://wiki.adom.inc/static/apps/adom-desktop/version.json | jq -r .windows.installer_filename@@ -239,4 +239,4 @@ curl -fL https://wiki.adom.inc/static/apps/adom-desktop/version.json | jq -r .wi curl -fL "https://wiki.adom.inc/static/apps/adom-desktop/$FILENAME" -o resources/ad-setup.exe ``` -`version.json` also carries the SHA256 hash of the installer so HD's build pipeline can verify the download before bundling.+`version.json` also carries the SHA256 hash of the installer so Hydrogen's build pipeline can verify the download before bundling.