You sign in on each platform's own page. Locally, it returns to http://127.0.0.1:3851 and tokens go into your OS keychain. They never reach our servers.
| Platform | Setup |
|---|---|
| Bluesky | None |
| Mastodon | None |
| X | Your own X developer app |
| Your own LinkedIn developer app |
On Statuz Cloud no developer app is needed.
Bluesky
statuz accounts connect --platform blueskyOn your own PDS: add --server with your handle (--server alice.example.com) or your PDS URL.
Mastodon
statuz accounts connect --platform mastodon --server mastodon.socialUse your server's domain.
X developer app
- Open developer.x.com, then your app's User authentication settings → Set up.
- Permissions: Read and write.
- Type: Native App.
- Callback URI:
http://127.0.0.1:3851/callback/x - Website URL: any site you own.
- Copy the OAuth 2.0 Client ID. Statuz doesn't need the Client Secret.
Scopes Statuz requests: tweet.read, tweet.write, users.read, offline.access, media.write.
statuz config set --key x.client-id --value <client id>
statuz accounts connect --platform xLinkedIn developer app
- Create an app at linkedin.com/developers. It needs a company page; yours works.
- Products: add Share on LinkedIn and Sign In with LinkedIn using OpenID Connect.
- Auth → Redirect URL:
http://127.0.0.1:3851/callback/linkedin - Copy the Client ID and Primary Client Secret.
statuz config set --key linkedin.client-id --value <client id>
statuz config set --key linkedin.client-secret --value <client secret>
statuz accounts connect --platform linkedinNo browser
Add --no-browser to print the sign-in link. Open it on the same computer.
Manage
statuz accounts list
statuz accounts check
statuz accounts default --account @you.bsky.social
statuz accounts move --account @you.bsky.social --position 1
statuz accounts remove --account @you.bsky.socialchecktests every sign-in now.statuz statusalso flags accounts that need reconnecting.defaultsets which account--to bluesky(orx,mastodon,linkedin) means.movechanges the order accounts show in, here and in the Mac app.removedeletes the tokens. Posts that only went to it become drafts.
Secrets live in the keychain, not ~/.statuz/config.json. See them with statuz config list; clear one with statuz config unset --key linkedin.client-secret.