Smart wallet UX.
Smart-wallet UX on LUKSO — session keys, scoped delegation, recovery, contract signature verification — uses LSP6 Key Manager (standardized permission bitfield with target/selector/data-key scoping), LSP11 Basic Social Recovery (guardian voting), LSP20 Call Verification (inline validator), and ERC-1271 (contract signature validation for Sign-in-with-Ethereum and off-chain orders). Every account speaks the same permission vocabulary, so cross-wallet session portability is possible in principle — versus ERC-4337's per-vendor validator SDKs.
A smart wallet UX is a permission graph, not a connect button. LSP6 is the vocabulary for that graph — controllers, permissions, allowed calls, allowed data keys — and LSP0 is the account those controllers act on.
When this vertical fits
You’re shipping anything where “the wallet has full account control” is the wrong default: session keys for an app, scoped controllers for a marketplace integration, recovery controllers a user never touches day-to-day, multi-device flows where each device gets its own permission set.
The minimum stack
- LSP0 as the account contract
- LSP6 for permissions per controller
- LSP14 for safer ownership rotation when controllers can’t just be re-permissioned
- LSP20 if you want controllers to call the account directly (not through the Key Manager wrapper)
Reading list.
A curated path — problem → standard → migration.