# Editing \[Change an account's name, signers, or threshold, or reset lost signers]

Everything about an account except its address can change after creation. The name is offchain metadata; the signer set and threshold are onchain state with two paths to change them:

* [**Update**](#changing-signers-and-thresholds): the account's own signers approve the change at the current threshold. The everyday path.
* [**Reset**](#resetting-signers): the account's **owner** replaces the signer set outright, with no approval from the current signers. The path when signers are lost.

Editing account settings requires the **Owner** role in all cases.

## Renaming

An account's name is offchain and changes with no signatures: edit it from the account's settings.

## Changing signers and thresholds

An account's signer set and threshold are stored onchain as a single state and edited through a single flow: from the account's settings, edit the signers or the threshold and save, signing an "Update signers state" transaction. One change can add or remove signers, change the threshold, or both; swapping a signer while keeping the threshold is one transaction. The change is approved by the account's current signers at its *current* threshold, the flow is the same for the Treasury and operating accounts, and any [team member](/members) with a [signing key](/members/keys) can be added as a signer.

One signing session covers every network: the signers sign the merkle root of a tree containing one copy of the update transaction per active network, and each network's copy executes with a proof against that root. Signer state can't diverge across networks because no network is ever signed for separately.

If the account no longer has enough active signers to meet its threshold, this flow is unavailable (the app says so on the account's settings page) and a [reset](#resetting-signers) is the way forward.

## Resetting signers

A reset replaces an account's signers and threshold **without the current signers' approval**. It works because accounts form an [ownership chain](/accounts): an account's owner can execute from it directly, including rewriting its signer set. Who signs depends on the account being reset:

| Account being reset | Its owner | Who signs the reset |
| --- | --- | --- |
| Operating or automation account | Treasury (shown as *Primary*) | Treasury signers, at the Treasury's threshold |
| Treasury | Root | [Recovery signers](/teams/recovery#recovery-signers), connected as wallets, at the recovery threshold |

The Root itself can't be reset: it has no owner above it and is controlled only by the recovery signers.

1. Open the account's settings and find **Reset signers**. ([Settings > Recovery](https://app.splits.org/settings/team/recovery/) also lists every account; clicking one lands on the same section.)
2. Select *Reset signers*, choose the account's new signers and threshold, and save.
3. Approve: for a sub-account, the Treasury's signers sign; for the Treasury, connect the recovery wallet(s) and sign.

If every passkey on the team is lost, reset the Treasury first (recovery wallets), then use the restored Treasury to reset any sub-accounts. See [Recovery](/teams/recovery) for the full lost-passkey scenario.

## Programmatic access

Via the [Splits CLI / MCP](/introduction/agents):

* `splits accounts update-signers <address> --threshold N ...`: propose signer/threshold changes; approval happens in the web UI (**Owner** scope)
* `splits accounts rename <address>`: rename an account (**Owner** scope)

Resets are web-only today.
