← Commit history
bridge/BRIDGE_VERSION+1−1
@@ -1 +1 @@-0.1.13\ No newline at end of file+0.1.14\ No newline at end of file
bridge/bridge.json+1−1
@@ -2,7 +2,7 @@   "manifest_version": 1,   "name": "native-browser",   "displayName": "Adom Native Browser (Chrome + Edge)",-  "version": "0.1.13",+  "version": "0.1.14",   "expectedExtensionVersion": "0.1.2",   "description": "Drives the user's REAL signed-in Chrome/Edge via an installed extension (native-messaging transport). Mirrors the puppeteer bridge's verb surface as nbrowser_* but runs inside the actual logged-in profile, so cookies/SSO/saved-logins/captcha human-trust all work. The bridge binds an ephemeral loopback port (PORTS.md compliant) and writes a discovery file; the native-messaging host pumps stdio <-> this bridge; the extension never touches a TCP port.",   "homepage": "https://wiki.adom.inc/adom/adom-browser-extension",
bridge/package.json+1−1
@@ -1,6 +1,6 @@ {   "name": "adom-native-browser-bridge",-  "version": "0.1.13",+  "version": "0.1.14",   "private": true,   "description": "adom-desktop bridge for the Adom native-browser extension (Chrome + Edge)",   "main": "server.js",
bridge/server.js+6−2
@@ -471,8 +471,12 @@ function avatarForProfile(profileKey) {       const cache = (j.profile && j.profile.info_cache) || {};       for (const [dir, info] of Object.entries(cache)) {         if (String((info && info.user_name) || '').toLowerCase() === email.toLowerCase()) {-          const pic = path.join(root, dir, 'Google Profile Picture.png');-          result = { userDataDir: root, profileDir: dir, avatarPath: fs.existsSync(pic) ? pic : null };+          // Chrome writes the signed-in avatar to "Google Profile Picture.png"; Edge to "Edge Profile+          // Picture.png". Prefer the browser's own name, but try both so either browser resolves an avatar.+          const names = browser === 'edge' ? ['Edge Profile Picture.png', 'Google Profile Picture.png'] : ['Google Profile Picture.png', 'Edge Profile Picture.png'];+          let avatarPath = null;+          for (const n of names) { const p = path.join(root, dir, n); if (fs.existsSync(p)) { avatarPath = p; break; } }+          result = { userDataDir: root, profileDir: dir, avatarPath };           break;         }       }
native-browser-bridge-manifest.json+4−4
@@ -1,8 +1,8 @@ {   "manifest_version": 1,-  "version": "0.1.13",-  "url": "https://wiki.adom.inc/download/adom/adom-browser-extension/0.1.13/native-browser-bridge-v0.1.13.bin",-  "sha256": "13af097a8bd3171a5cf44d3afd12b122ac45fec1b6fbdf26e3e806a0ed8571ce",-  "size": 67434,+  "version": "0.1.14",+  "url": "https://wiki.adom.inc/download/adom/adom-browser-extension/0.1.14/native-browser-bridge-v0.1.14.bin",+  "sha256": "8125cc886d586e15b08f91a3c0ee7a37050c7e6e20cefa48a51799d4f32e4224",+  "size": 67556,   "released_at": "2026-07-14T00:00:00Z" }