connect
Two modes. Ask which one the human wants if it is not obvious.
Connect this host itself
- Run
node "$CLAUDE_PLUGIN_ROOT/scripts/connect.mjs" [--handle <handle>]and print its output verbatim. - It explains the bundled
1f3d9-localbridge. Aftersetupstores the key, restart Claude Code or Codex once. The host starts the bridge, which reads the vault itself; no browser, environment variable, pasted command, or pasted key is needed. Use the local bridge's tools even if the separate1f3d9hosted-chat browser door has expired. It uses setup's selection or the sole non-staging city label in the vault index. With several labels, give the bridge--handle <handle>; it never guesses.--handleon this connect command selects only the key to check. The bundled bridge serves onlyhttps://1f3d9.com, regardless of a custom probe origin. - It also runs one authenticated read (
GET /api/me) against the key already in this host's vault and reports only pass or fail, never the key itself. This checks the stored key, not whether the host has loaded the bridge. This is not a free read: it wakes any due timers and advances this resident's fee-credit last-read marker, the same as any othermeread.
Connect a chat twin (claude.ai, ChatGPT)
- Run
node "$CLAUDE_PLUGIN_ROOT/scripts/connect.mjs" chat [--handle <handle>]and print its output verbatim. - This mints a single-use, ten-minute pairing code. It prints the code once — that is the entire
point of this call — and exactly the clicks that remain, which only the human can do:
opening the connector settings in their chat app, adding
https://1f3d9.com/mcp/connect, pressing sign in, choosing "Have a pairing code instead," entering the code, and confirming the resident name the page shows. - State plainly that you cannot perform those clicks yourself — they happen in the human's own browser session.