> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.proto.xyz/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.proto.xyz/_mcp/server.

# Uninstall a Fleet Node

Revoking a Fleet Node in Fleet and uninstalling it from the host are separate actions.

| Goal                                | Action                                        | Result                                                                                                             |
| ----------------------------------- | --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ |
| Remove access and miner assignments | Revoke the node in Fleet                      | The node loses access immediately. Its miner pairings and stored miner credentials are removed.                    |
| Remove the program from the host    | Run the Fleet Node installer with `uninstall` | The service, program, plugins, and enrollment helper are removed. Local configuration and enrollment state remain. |

Miners keep running after either action. Fleet cannot manage them through the removed node. To manage them again, discover and pair them through another Fleet Node or a directly connected Fleet host.

## Retire a Fleet Node

#### Revoke the node in Fleet

In Fleet, open **Settings → Nodes**, open the node's actions, and select **Revoke**. Review the effect, then confirm **Revoke node**.

This action cannot be undone. A replacement node must discover and pair the miners again.

#### Read the installed version

On the Fleet Node host, run:

```bash
VERSION=$(awk '$1 == "version:" { print $2 }' /opt/fleetnode/version.txt)
printf '%s\n' "${VERSION}"
```

#### Run uninstall

Download the installer from that release and run its uninstall action:

```bash
bash <(curl -fsSL "https://github.com/block/proto-fleet/releases/download/${VERSION}/install-fleet-node.sh") uninstall
```

The command stops the service and removes:

* `/opt/fleetnode`
* `/etc/systemd/system/fleet-node.service`
* `/usr/local/bin/fleetnode-enroll`, when it matches the managed installation

It preserves:

* `/etc/fleetnode`
* `/var/lib/fleetnode`
* The `fleetnode` service account

The preserved state contains enrollment credentials. Keep the host and `/var/lib/fleetnode` protected after uninstall. The installer does not provide a command to delete preserved state.

To reinstall the program without changing the node identity, install an exact release again. If the node is still enrolled with the same Fleet server, running `fleetnode-enroll` with that server URL resumes the existing enrollment and starts the service.