> ## Documentation Index
> Fetch the complete documentation index at: https://docs.asymptotelabs.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# beacon endpoint onboarding

> Show, reset, or resend the one-time Beacon onboarding record

## Command overview

`beacon endpoint onboarding` inspects the one-time onboarding record written the first
time `beacon endpoint install` runs in a terminal.

```bash title="Command syntax" theme={null}
beacon endpoint onboarding [flags]
```

The record lives in `~/.beacon/profile.json`. It survives uninstall, so reinstalling
Beacon never asks completed setup questions again. The destination question is
asked again on the next interactive install until a destination is recorded; an
Asymptote Managed answer is recorded only once the connect succeeds.

## First-run onboarding

The first interactive `beacon endpoint install` runs a single terminal wizard. If sign-in cannot finish because the machine is offline, headless, or unable to open a browser, the wizard shows the sign-in URL and recovery options instead of blocking the install.

The wizard asks where this machine's telemetry should go:

| Answer | What happens |
| - | - |
| Asymptote Managed (default) | Shows what will be sent, asks for Standard or Metadata-only privacy, then installs Beacon and connects this endpoint. The confirmation screen states that forwarding starts and that the last 30 days of agent sessions are uploaded before you accept. |
| Local only | Explicitly opts out of managed forwarding. Nothing is sent anywhere; the [session backfill](/cli/endpoint-install#session-backfill) stays in the local log. |

The wizard may also collect setup attribution such as how you are using Beacon and your email. This is how we decide which agent runtimes and integrations to build next.

What is sent, and nothing else:

| Field | Example |
| - | - |
| Email you enter | `you@company.com` |
| Work, personal, or evaluating | `work` |
| OS, architecture, OS version | `darwin`, `arm64`, `15.5` |
| Beacon version and install method | `v0.0.31`, `homebrew` |
| Names of agent runtimes on this machine | `claude_code`, `cursor` |
| A random install ID | `64871b2b…` |

Prompts, file contents, commands, telemetry events, and repository names are never
sent as setup attribution. Managed forwarding only begins after the managed
destination confirmation or an explicit `beacon endpoint connect`.

The prompt never appears non-interactively. Package postinstall scripts, MDM
deployments, `--system` installs, CI, `--dry-run`, and any piped or redirected stdin
skip it silently. The destination question is also skipped on an endpoint already
connected to Asymptote. A failed install no longer marks the machine onboarded; the
next interactive install offers the wizard again. A machine onboarded before the
destination question existed is asked it once, on its next interactive install.

## Flags

| Flag | Description |
| - | - |
| `--reset` | Clear the onboarding record so the question is asked again |
| `--resend` | Retry a signup that could not be delivered |
| `--json` | Print the onboarding record as JSON |
| `--user` | Use per-user endpoint paths. Enabled by default |
| `--system` | Use system endpoint paths |

## Unattended installs

Set `BEACON_ONBOARDING=0` to suppress the prompt on an install that would otherwise be
interactive. There is no CLI flag for this: it exists for unattended CI and MDM
workflows. `BEACON_MANAGED_INGEST=0` hides only the Asymptote Managed answer from the
destination question; `beacon endpoint install --connect` still connects when asked explicitly.

```bash title="Suppress the prompt" theme={null}
BEACON_ONBOARDING=0 beacon endpoint install
```

For a fleet rollout where you do want attribution but have no terminal, supply both
answers up front and Beacon records them without prompting:

```bash title="Headless attribution for MDM" theme={null}
BEACON_ONBOARDING_EMAIL=it@company.com BEACON_ONBOARDING_USAGE=work \
  beacon endpoint install
```

`BEACON_ONBOARDING_USAGE` accepts `work`, `personal`, or `evaluating`. An invalid value
is reported on stderr and ignored rather than failing the install.

## Examples

Show what was recorded, including the answer to the destination question
(`Telemetry destination: local only …` or `Asymptote Managed`; absent when it has
not been asked, or when an Asymptote answer has not yet been carried through to a
connected machine):

```bash title="Show the onboarding record" theme={null}
beacon endpoint onboarding
```

The answer is stored as `onboarding.destination` in `~/.beacon/profile.json` and takes
one of three values; `--json` exposes it as `destination`:

| Value | Printed as |
| - | - |
| `local` | local only (nothing forwarded) |
| `asymptote` | Asymptote Managed |

Clear it so the next install asks again:

```bash title="Reset the onboarding record" theme={null}
beacon endpoint onboarding --reset
```

Retry a submission that could not reach Asymptote. A failed submission never fails an
install; the payload is kept and retried automatically on the next install or repair.

```bash title="Resend a queued signup" theme={null}
beacon endpoint onboarding --resend
```

To have your record deleted, email the install ID shown by this command to
[support@asymptotelabs.ai](mailto:support@asymptotelabs.ai).

## Related

<Columns cols={2}>
  <Card title="Endpoint install" icon="download" href="/cli/endpoint-install">
    Configure endpoint telemetry and collector service files.
  </Card>

  <Card title="Endpoint config" icon="gear" href="/cli/endpoint-config">
    Inspect, validate, and update endpoint configuration.
  </Card>
</Columns>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.