← Commit history
move cross-platform-dev (a DEV/maintainer skill) out of the public pkg into dev-skills/ (was shipping to every user container)
4 files changed
+42−4
dev-skills/cross-platform-dev/SKILL.mdadded+39@@ -0,0 +1,39 @@+---+name: cross-platform-dev+description: How adom-browser-extension ships across Windows and macOS - Windows-first, Kyle ports to Mac. Read before adding platform-specific code.+---++# Cross-platform dev flow (Windows-first → Kyle ports to Mac)++Adom's standard flow, applied to this repo: **John builds and ships on Windows; Kyle ports to macOS+as a fast-follow.** John is a Windows user, Kyle is the Mac user. Design accordingly so Kyle's port is+a thin layer, never a rewrite.++> **Shipping a bridge update so AD picks it up** (build the manifest + zip, the `.zip`-blocked-use-`.bin`+> trap, the canonical URL, `bridge_install` vs `refresh_bridges`) is general bridge-author knowledge and+> lives on the bridges hub: the **`shipping-a-bridge`** skill at+> [adom/adom-desktop-bridges](https://wiki.adom.inc/adom/adom-desktop-bridges). Read it before cutting a+> new `bridge/` version.++## The rule++Keep the **bridge** (`bridge/server.js`), the **native host** (`host/native-host.js`), and the+**extension** (`extension/`) **OS-agnostic** - plain Node + standard MV3 APIs. Isolate everything+Windows-specific to the **install/registration layer** only:++| Concern | Windows (build first) | macOS (Kyle ports) |+|---|---|---|+| Native-messaging host manifest | `HKCU\Software\<vendor>\NativeMessagingHosts\inc.adom.native_browser` | `~/Library/Application Support/<Google/Chrome \| Microsoft Edge>/NativeMessagingHosts/inc.adom.native_browser.json` |+| Host launcher | `native-host.bat` → `node native-host.js` | `native-host.sh` → `node native-host.js` (chmod +x) |+| Bridge cache path | `%LOCALAPPDATA%\Adom Desktop\bridges-cache\native-browser\` | `~/Library/Application Support/Adom Desktop/bridges-cache/native-browser/` |+| Extension force-install | `HKLM\...\ExtensionInstallForcelist` | configuration profile / MDM `ExtensionInstallForcelist` |+| Discovery file | `os.homedir()/.adom/bridges/native-browser/host.json` | identical (uses `os.homedir()` - already cross-platform) |++## Implications++- Never put `process.platform === 'win32'` branches in `bridge/` or `host/` core logic. If you need a+ platform path, derive it from `os.homedir()` (already cross-platform) - don't hardcode `%...%`.+- The `--silent-debugger-extension-api` launch-flag wiring and registry writes are Windows-only by+ nature; keep them in `install/` so Kyle swaps that folder, not the engine.+- When you add a Windows install step, add a one-line "macOS equivalent" note next to it so the port+ is mechanical.
install.sh+1−1@@ -5,7 +5,7 @@ # Claude OR Codex — Bridge SDK Artifact 2). ALL skills ship as skills/<name>/SKILL.md (SKILLPACK # layout); the dev/publish skills carry user-invocable:false so users are never offered them. set -e-SKILLS="adom-browser-extension cross-platform-dev driving-the-extension native-browser-safety installing-the-extension uninstalling-the-extension native-browser-recording driving-the-extension-demo driving-the-desktop driving-sites driving-gusto reading-google-messages"+SKILLS="adom-browser-extension driving-the-extension native-browser-safety installing-the-extension uninstalling-the-extension native-browser-recording driving-the-extension-demo driving-the-desktop driving-sites driving-gusto reading-google-messages" for HOME_DIR in "${HOME}/.claude/skills" "${HOME}/.codex/skills"; do for name in $SKILLS; do mkdir -p "$HOME_DIR/$name"
package.json+1−2@@ -1,6 +1,6 @@ { "slug": "adom-browser-extension",- "version": "0.3.22",+ "version": "0.3.23", "type": "app", "title": "Adom Native Browser Extension (Chrome + Edge)", "description": "Drive your real, logged-in Chrome/Edge from the Adom ecosystem: the nbrowser_* native-browser bridge (counterpart to pup). Multi-profile driving, a read-only credential-library query over the browser's own saved logins (Chrome + Edge), and hands-free vendor login automation, so chip CAD / datasheets download past every login wall in your real signed-in session.",@@ -9,7 +9,6 @@ }, "files": [ "skills/adom-browser-extension/SKILL.md",- "skills/cross-platform-dev/SKILL.md", "skills/driving-gusto/SKILL.md", "skills/driving-sites/SKILL.md", "skills/driving-the-desktop/SKILL.md",
uninstall.sh+1−1@@ -1,6 +1,6 @@ #!/usr/bin/env bash # Removes the bundled skills from BOTH agent skill homes (Claude + Codex).-SKILLS="adom-browser-extension cross-platform-dev driving-the-extension native-browser-safety installing-the-extension uninstalling-the-extension native-browser-recording driving-the-extension-demo driving-the-desktop driving-sites driving-gusto reading-google-messages"+SKILLS="adom-browser-extension driving-the-extension native-browser-safety installing-the-extension uninstalling-the-extension native-browser-recording driving-the-extension-demo driving-the-desktop driving-sites driving-gusto reading-google-messages" for HOME_DIR in "${HOME}/.claude/skills" "${HOME}/.codex/skills"; do for name in $SKILLS; do rm -rf "$HOME_DIR/$name" && echo "removed $name from $HOME_DIR"