# How to Permanently Disable Telemetry for `orx`

> Permanently disable orx telemetry with a simple command. Learn how to write the persistent opt-out flag to your user configuration file for complete privacy.

- Repository: [alphaXiv/OpenResearch](https://github.com/alphaXiv/OpenResearch)
- Tags: how-to-guide
- Published: 2026-09-13

---

**Run `orx telemetry off` to permanently disable telemetry by writing a persistent opt-out flag to your user configuration file.**

The `orx` command-line tool from the OpenResearch repository includes a built-in telemetry system that reports usage statistics to the backend. If you need to permanently disable telemetry for `orx`, the codebase provides a straightforward persistence mechanism that stores your preference in the user configuration directory and respects it across all future executions.

## Quick Methods to Disable Telemetry

### Temporary Disable with CLI Flag

For one-off executions without telemetry, append the `--no-telemetry` flag to any command. This is parsed in [`src/main.rs`](https://github.com/alphaXiv/OpenResearch/blob/main/src/main.rs) and applies only to the current process without modifying any configuration files.

```bash
orx --no-telemetry run my_experiment

```

### Permanent Disable with Command

To permanently disable telemetry for `orx`, execute the dedicated subcommand handled in [`src/commands/telemetry.rs`](https://github.com/alphaXiv/OpenResearch/blob/main/src/commands/telemetry.rs). This invokes the `set_persisted_disabled` function in [`src/telemetry.rs`](https://github.com/alphaXiv/OpenResearch/blob/main/src/telemetry.rs) to update your settings.

```bash
orx telemetry off

```

This command writes `telemetry_disabled = Some(true)` into the JSON configuration stored at `$XDG_CONFIG_HOME/orx/settings.json` (or `~/.config/orx/settings.json` on most Linux systems).

### Manual Configuration File Edit

Advanced users can directly edit the configuration. The `Settings` struct defined in [`src/config.rs`](https://github.com/alphaXiv/OpenResearch/blob/main/src/config.rs) includes the `telemetry_disabled` field that controls this behavior.

```bash
nano ~/.config/orx/settings.json

```

Add or modify the following key:

```json
{
  "installId": "...",
  "telemetryDisabled": true
}

```

## How Telemetry Persistence Works

When you run `orx telemetry off`, the `set_persisted_disabled` function in [`src/telemetry.rs`](https://github.com/alphaXiv/OpenResearch/blob/main/src/telemetry.rs) writes the boolean flag to your configuration file. On subsequent launches, `resolve_telemetry_disabled` in the same file reads this setting and skips all telemetry initialization. The global flag parser in [`src/main.rs`](https://github.com/alphaXiv/OpenResearch/blob/main/src/main.rs) also respects this persistent state, ensuring no network calls to the OpenResearch backend occur regardless of other runtime flags.

The configuration follows the XDG Base Directory specification, storing the permanent preference alongside other user settings to survive across tool updates and system restarts.

## Verifying and Managing Your Telemetry Settings

Check your current status:

```bash
orx telemetry status

```

Expected output indicates: `Telemetry: disabled (persisted)`

If you need to reverse the decision and re-enable telemetry:

```bash
orx telemetry on

```

This updates the configuration entry to `telemetryDisabled: false`, allowing the telemetry system in [`src/telemetry.rs`](https://github.com/alphaXiv/OpenResearch/blob/main/src/telemetry.rs) to resume uploading usage statistics.

## Summary

- **Temporary opt-out**: Append `--no-telemetry` to any command for single-use disabling parsed by [`src/main.rs`](https://github.com/alphaXiv/OpenResearch/blob/main/src/main.rs).
- **Permanent opt-out**: Run `orx telemetry off` to persist the setting via [`src/telemetry.rs`](https://github.com/alphaXiv/OpenResearch/blob/main/src/telemetry.rs) to `$XDG_CONFIG_HOME/orx/settings.json`.
- **Configuration storage**: The `telemetryDisabled` boolean lives in the XDG config directory, managed by the `Settings` struct in [`src/config.rs`](https://github.com/alphaXiv/OpenResearch/blob/main/src/config.rs).
- **Status checking**: Use `orx telemetry status` to verify the current state handled by [`src/commands/telemetry.rs`](https://github.com/alphaXiv/OpenResearch/blob/main/src/commands/telemetry.rs).
- **Reversibility**: Execute `orx telemetry on` to re-enable data collection at any time.

## Frequently Asked Questions

### Where does `orx` store the telemetry configuration?

The persistent setting is stored in `$XDG_CONFIG_HOME/orx/settings.json` (typically `~/.config/orx/settings.json`). This JSON file contains the `telemetryDisabled` field managed by the configuration logic in [`src/config.rs`](https://github.com/alphaXiv/OpenResearch/blob/main/src/config.rs) and updated by the command handlers in [`src/commands/telemetry.rs`](https://github.com/alphaXiv/OpenResearch/blob/main/src/commands/telemetry.rs) through the persistence functions in [`src/telemetry.rs`](https://github.com/alphaXiv/OpenResearch/blob/main/src/telemetry.rs).

### Does the `--no-telemetry` flag disable telemetry permanently?

No. The `--no-telemetry` flag parsed in [`src/main.rs`](https://github.com/alphaXiv/OpenResearch/blob/main/src/main.rs) only disables telemetry for the current process execution. It does not modify the configuration file or affect subsequent runs of the `orx` command. Use `orx telemetry off` for permanent disabling.

### Can I re-enable telemetry after running `orx telemetry off`?

Yes. Run `orx telemetry on` to update the configuration file and remove the opt-out flag. The persistence logic in [`src/telemetry.rs`](https://github.com/alphaXiv/OpenResearch/blob/main/src/telemetry.rs) handles both enabling and disabling states, allowing you to toggle telemetry collection as needed.

### Will disabling telemetry affect `orx` functionality?

No. The telemetry system is strictly for usage statistics reporting to the OpenResearch backend. Disabling it via the persistent command or configuration edit prevents only the upload of analytics data, with no impact on the core functionality of the tool or its experiment management features.