Build smart wallet UX with LUKSO LSPs on EVM
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.