Source:
StartaleGroup/scs-aa-sdk. This page uses helpers from @rhinestone/module-sdk which is already a peer of the AA SDK; install it explicitly if your project does not have it yet (npm install @rhinestone/module-sdk).How it works
A recovery is a UserOperation validated by the Social Recovery module instead of the default validator. The module checks that the bundle of guardian signatures meets the configured threshold; if it does, the UserOperation is executed and rotates the account’s owner key.1. Pick guardians and a threshold
The configuration is intentionally small:2. Install the module
3. Manage guardians at runtime
After installation you can add or remove guardians and adjust the threshold without re-installing the module. The helpers return anExecution ({ to, data, value }), which you wrap in a UserOperation with sendUserOperation.
4. Read the current guardian set
guardians is an Address[] of every guardian currently registered on the account.
5. Execute a recovery
A recovery is a UserOperation that:- Targets the smart account itself.
- Calls the account’s owner-rotation method (for example, swapping the active ECDSA validator key).
- Is signed by enough guardians to meet the threshold.
threshold distinct guardians from the registered set before the UserOperation is allowed to execute.
Operational guidance
Next steps
Smart sessions
Pair recovery with scoped session keys for daily UX.
Sponsored paymaster
Sponsor recovery UserOperations so guardians do not need ETH.
Smart account setup
Refresh the underlying account and client setup.
Contracts and audits
Look up validator and account addresses on each network.