Conversation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this plugin does
Server Switcher adds a Change Server button to the sidebar footer. In a browser, each click opens the next online server on the user's bb connect account at its home page, in the same tab. Servers follow alphabetical handle order, offline ones are skipped, and the last one wraps around to the first. A toast says when no other server is online, the session has expired, or the page isn't on a bb connect address.
In the BB mobile app a tap opens This device, where Servers lists the app's saved servers, because the mobile bridge has no message that switches servers for a page. BB Desktop changes servers only from its native Window → Server menu, so the plugin registers no button there.
Release source
subdir: server-switcher^0.1.0withtagPrefix: server-switcher/server-switcher/v0.1.08136e8196f8b6ad945a8c90d51d15572a6682d2ePlugin checks
npm test(23 tests: server order and wrap-around, handle validation, response parsing, the server list request and destination, error messages, browser/mobile/desktop detection, the mobile bridge, and a public SDK import scan)npm run typechecknpm run build(bb plugin build; the app bundle is 3.8 KB, with no runtime dependencies)server-switcher/v0.1.0tag builds afternpm install --omit=dev --omit=optional, as a Git install does.bb plugin types --check: the SDK pin (0.5.9) matches BB 0.43.4. The command still exits 1 because it asks for type-only devDependencies of UI shims that the plugin doesn't import (Radix primitives,vaul,clsx, and others). The plugin imports only@get-bb/plugin-sdk/appandsonner.Marketplace checks
npm ci --ignore-scriptsnpm run buildnpm testnpm run gate:v1(one new entry)npm run checkPermissions and services
Needs a bb connect account. The button switches servers when BB is open at
https://<handle>.getbb.app, and each server needs the plugin installed for the button to be there after a switch.A click makes one same-origin GET to
/api/connect/serverswith the page's existing session (credentials: "same-origin",redirect: "error", 8-second timeout). Destinations are built only from validated server handles (https://<handle>.getbb.app/), never from URLs in the response. The plugin copies, stores, and sends no tokens or credentials. It has no settings or storage, and its server entry registers nothing: no RPC methods, agent tools, skills, or CLI commands. In the mobile app it posts{ type: "open-native", screen: "device-settings" }throughwindow.bb.native. In BB Desktop it registers nothing.Screenshots and overview
screenshots/server-switcher/footer.png: the sidebar footer of a live BB 0.43.4 with the Change Server button hovered and its tooltip. The other footer items belong to BB and another installed plugin. The thread list above the footer was hidden for the capture, so no thread titles appear.overview/server-switcher.mdwas copied from the plugin repository'sPLUGIN_OVERVIEW.md.🤖 Generated with Claude Code