-
Notifications
You must be signed in to change notification settings - Fork 4
docs: add headless server setup guide #13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -11,7 +11,7 @@ Server / remote targets. | |
| ## Commands | ||
|
|
||
| ```sh | ||
| beeper setup [--local | --oauth | --remote URL | --desktop | --server] [--install] [--channel stable|nightly] | ||
| beeper setup [--local | --oauth | --email | --remote URL | --desktop | --server] [--install] [--channel stable|nightly] | ||
| beeper install desktop [--channel stable|nightly] | ||
| beeper install server [--channel stable|nightly] [--server-env production|staging] | ||
| ``` | ||
|
|
@@ -22,10 +22,36 @@ beeper install server [--channel stable|nightly] [--server-env production|stagi | |
| - `setup --oauth` runs browser-based OAuth/PKCE against the resolved target. | ||
| - `setup --remote URL` configures a remote Beeper Desktop or Server target. | ||
| - `setup --desktop --install` or `setup --server --install` installs the runtime if missing, then sets up. | ||
| - `setup --email` signs in with a verification code sent to an email address — no browser required (see [Headless server setup](#headless-server-setup) below). | ||
| - `install desktop|server` installs without changing the selected target. | ||
| - The selected target is persisted in `~/.beeper/config.json` (override with `BEEPER_CLI_CONFIG_DIR`). | ||
| - For non-interactive use, pass a token in the environment: `BEEPER_ACCESS_TOKEN=… beeper …`. | ||
|
|
||
| ## Headless server setup | ||
|
|
||
| When running on a machine with no graphical environment (VPS, headless server), | ||
| browser-based OAuth is not available. Use the email-based auth flow instead: | ||
|
|
||
| ```sh | ||
| # 1. Install and start the server | ||
| beeper setup --server --install | ||
|
|
||
| # 2. Sign in with email (no browser needed) | ||
| beeper auth email start --email you@example.com -t server | ||
| # → returns a setupRequestID | ||
|
|
||
| # 3. Enter the verification code received by email | ||
| beeper auth email response --code 123456 --setup-request-id <id-from-step-2> -t server --yes | ||
|
|
||
| # 4. Verify the device (approve from another Beeper device, or use your recovery key) | ||
| beeper verify recovery-key -t server --key "YOUR_RECOVERY_KEY" | ||
|
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Verified against the actual CLI: The pre-existing
coderabbitai[bot] marked this conversation as resolved.
|
||
|
|
||
| # 5. Enable auto-start at login | ||
| beeper targets enable server | ||
| ``` | ||
|
|
||
| After step 4 the server reaches `ready` state and bridges begin syncing. | ||
|
|
||
| ## Examples | ||
|
|
||
| ```sh | ||
|
|
@@ -34,5 +60,6 @@ beeper setup --local | |
| beeper setup --oauth | ||
| beeper setup --remote https://desktop.example.com | ||
| beeper setup --desktop --install --channel nightly | ||
| beeper setup --server --install | ||
| beeper install server --server-env staging | ||
| ``` | ||
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Use the same recovery-key command/flag as the auth docs.
This example currently diverges from
packages/cli/docs/auth.md(beeper auth verify recovery-key [--code KEY]). Inconsistent command syntax in README can break headless onboarding.Suggested doc fix
📝 Committable suggestion
🤖 Prompt for AI Agents
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The README example is correct —
beeper verify recovery-key -t server --key "..."matches the actual CLI usage. The pre-existingauth.mdhad the wrong syntax which has been fixed in be4ec8b.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@juulieen, thanks for the clarification! You're right — the README example was correct, and my comment was based on the stale/incorrect syntax in the pre-existingauth.md. Glad that's been fixed in be4ec8b. I'll note the correct command form for future reviews.✏️ Learnings added