Chain Blomega internal tool
For macOS

One prompt. The whole account portfolio.

Say what the channel is called. Chain works out the handles, checks every platform live, writes the bios to each one's real character limit, claims the accounts, holds every credential encrypted, and maps which login can reset which.

Chain
i want a new channel called "my channel321"
Gmail
provisions by API
YouTube
taken
X
available
LinkedIn
available
Twitch
available
Instagram
checking
TikTok
checking
Facebook
checking

Real output for that prompt. mychannel321 really is gone on YouTube.

The honest part

What is automated, and what is not

Only one of these eight can be created end to end by a machine, and it is worth being precise about which, because it decides how the whole tool is built.

Gmail is fully automatic. Because blomega.com is a Google Workspace domain, the Directory API creates a real mailbox with no captcha and no SMS. That mailbox is the root of the chain: every other signup verifies against it.

Everywhere else, signup is bot-walled. Chain opens the real page in a real browser, fills every field from the identity kit, and stops at the verification step for you. It does not try to defeat captchas or SMS checks. That is a design decision, not a missing feature: those checks are how platforms decide an account is real, and accounts pushed past them in bulk get removed in the next sweep, usually taking the good accounts registered from the same fingerprint with them. Chain deletes the twenty minutes of typing. You keep the ten seconds that keep the account alive.

PlatformAccount creationFields filledHandle check
GmailFully automaticDirectory API
InstagramAssisted4 of 4real page load
FacebookAssisted4 of 4real page load
TwitchAssisted3 of 3public GraphQL
TikTokAssistedafter method choicereal page load
XAssistedafter account stepprofile 404
YouTubeAssistedname + handleprofile 404
LinkedInAssistedname, URL, siteprofile 404

Measured against the live signup pages, not assumed. Meta properties no longer put name attributes on their inputs at all, so Chain matches fields by label text and position instead.

The part nobody else does

The auth chain

Eight accounts is eight passwords, eight 2FA secrets, and one quiet problem: almost all of them can be reset from a single mailbox. Chain draws that graph and tells you where the portfolio actually hangs by a thread.

Gmail YouTube X LinkedIn Insta FB TikTok Twitch
The red dot means the root mailbox has no 2FA, and it can reset all seven.

Single point of failure

One mailbox that can recover everything, weighted by how many accounts it actually unlocks.

Root without 2FA

The account that resets the others, protected by one password. Flagged critical.

2FA with no backup codes

The codes are shown once at setup. Lose the device and the account is simply gone.

Password reuse

The same password on two accounts in one portfolio, which turns one leak into two.

Where the secrets live

Local, and locked

Chain holds passwords, TOTP secrets and backup codes, so it runs on your Mac rather than on a server. The vault is AES-256-GCM with a scrypt-derived key. The key exists in memory only and is gone the moment the app restarts. Nothing readable is written to disk, and there is no recovery: lose the master password and the secrets are unreadable, by design.

The server binds to loopback. When it is published through a Cloudflare Tunnel, the tunnel is not treated as an authenticator: because cloudflared connects over loopback, every tunnelled request would otherwise look local. Chain listens on a separate origin port for tunnel traffic and requires a verified Cloudflare Access identity there, every time. Forged headers, forged cookies, spoofed forwarding addresses and self-signed tokens were all tested and rejected.

Two-factor codes are generated in-app to RFC 6238, verified against all six published test vectors. Paste the base32 secret or the whole otpauth:// URI.

Setup

Running it

# install, fetch the browser, build the UI
npm run setup

# start it, or just open Chain.app
npm start

# one-time: let it create Workspace mailboxes
npm run google-auth

# optional: reach it from anywhere, behind Cloudflare Access
cloudflared tunnel login
npm run tunnel
npm run access
npm run start:remote

# checks everything and says how to fix what is not ready
npm run doctor

Chain.app is a real double-clickable Mac app with no Electron in it: it boots the local server, opens the UI, and reuses a running instance instead of starting a second one.