Skip to content

feat: browser bridge command palette - #7

Merged
WangEn merged 13 commits into
mainfrom
feat/browser-bridge-command-palette
Sep 11, 2026
Merged

feat: browser bridge command palette#7
WangEn merged 13 commits into
mainfrom
feat/browser-bridge-command-palette

Conversation

@WangEn

@WangEn WangEn commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

What changed

  • add a Web ↔ extension Browser Bridge using window.postMessage + extension runtime messaging
  • dynamically register the bridge content script only for the explicitly authorized Dockmark origin
  • inject the bridge into already-open Dockmark tabs after connection
  • surface live open browser tabs as highest-priority Command Palette results
  • activate an existing tab directly from the Launcher
  • refresh open-tab results when tabs are created, removed, activated, renamed, repinned or navigated
  • make Workspace reuse focus an existing matching URL before opening another tab
  • make Workspace pinned reuse/pin an existing tab or create a pinned tab
  • preserve Session pinned state when restoring from the Web Launcher through the extension
  • keep a Web-only fallback when the extension is absent or disconnects
  • remove the previously authorized Dockmark host permission when the configured self-hosted origin changes
  • document Browser Bridge roadmap completion

Security / permissions

The extension does not ship a <all_urls> content script. It requests host access only when the user connects a Dockmark origin, then uses the scripting API to register dockmark-bridge.js for that exact origin. Web bridge requests are accepted only when the runtime sender tab belongs to the configured Dockmark origin.

Command priority

Open Tabs > Workspace > Session > Bookmark > Navigation > Search

Validation

CI runs Node 22 install, TypeScript checks and both Web + Extension builds.

@WangEn
WangEn merged commit 226f95d into main Sep 11, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant