You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: delegation-toolkit/concepts/environment.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -18,7 +18,7 @@ The delegator environment serves several key purposes:
18
18
19
19
## Resolve the delegator environment
20
20
21
-
When you create a [MetaMask Smart Account](smart-accounts.md), the Delegation Toolkit automatically
21
+
When you create a [MetaMask smart account](smart-accounts.md), the Delegation Toolkit automatically
22
22
resolves the environment based on the version it requires and the chain configured.
23
23
If no environment is found for the specified chain, it throws an error.
24
24
@@ -70,7 +70,7 @@ See the changelog of the toolkit version you are using (in the left sidebar) for
70
70
:::
71
71
72
72
Alternatively, you can use the [`getDelegatorEnvironment`](../reference/api/delegation.md#getdelegatorenvironment) function to resolve the environment.
73
-
This function is especially useful if your delegator is not a Smart Account when
73
+
This function is especially useful if your delegator is not a smart account when
74
74
[creating a redelegation](../how-to/create-delegation/index.md#create-a-redelegation).
Copy file name to clipboardExpand all lines: delegation-toolkit/concepts/smart-accounts.md
+20-20Lines changed: 20 additions & 20 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,12 +6,12 @@ sidebar_position: 1
6
6
# MetaMask Smart Accounts
7
7
8
8
The MetaMask Delegation Toolkit enables you to create and manage MetaMask Smart Accounts.
9
-
Smart Accounts are [ERC-4337](https://eips.ethereum.org/EIPS/eip-4337) smart contract accounts
9
+
MetaMask Smart Accounts are [ERC-4337](https://eips.ethereum.org/EIPS/eip-4337) smart contract accounts
10
10
that support programmable account behavior and advanced features such as multi-signature approvals,
11
11
automated transaction batching, and custom security policies.
12
-
Unlike traditional wallets, which rely on private keys for every transaction, MetaMask Smart Accounts use smart contracts to govern account logic.
12
+
Unlike traditional wallets, which rely on private keys for every transaction, smart accounts use smart contracts to govern account logic.
13
13
14
-
Smart Accounts are referenced in the toolkit as `MetaMaskSmartAccount`.
14
+
Smart accounts are referenced in the toolkit as `MetaMaskSmartAccount`.
15
15
16
16
## Account abstraction (ERC-4337)
17
17
@@ -23,7 +23,7 @@ accounts, or externally owned accounts (EOAs).
23
23
ERC-4337 introduces the following concepts:
24
24
25
25
-**User operation** - A package of instructions signed by a user, specifying executions for
26
-
the Smart Account to perform.
26
+
the smart account to perform.
27
27
User operations are collected and submitted to the network by bundlers.
28
28
29
29
-**Bundler** - A service that collects multiple user operations, packages them into a single transaction,
@@ -33,42 +33,42 @@ ERC-4337 introduces the following concepts:
33
33
adhere to the required rules and security checks.
34
34
35
35
-**Paymasters** - Entities that handle the payment of gas fees on behalf of users, often integrated
36
-
into Smart Accounts to facilitate gas abstraction.
36
+
into smart accounts to facilitate gas abstraction.
37
37
38
-
## Smart Account implementation types
38
+
## Smart account implementation types
39
39
40
-
The MetaMask Delegation Toolkit supports three types of Smart Accounts, each offering unique features and use cases.
40
+
The MetaMask Delegation Toolkit supports three types of MetaMask Smart Accounts, each offering unique features and use cases.
41
41
42
42
See [Configure accounts and signers](../how-to/create-smart-account/configure-accounts-signers.md) to learn how to use these different account types.
43
43
44
-
### Hybrid Smart Account
44
+
### Hybrid smart account
45
45
46
-
The Hybrid Smart Account is a flexible implementation that supports both an externally owned account (EOA) "owner" and any number of P256 (passkey) signers.
47
-
You can configure any of these signers as the signatory, and use them to sign any data, including user operations, on behalf of the Smart Account.
46
+
The Hybrid smart account is a flexible implementation that supports both an externally owned account (EOA) "owner" and any number of P256 (passkey) signers.
47
+
You can configure any of these signers as the signatory, and use them to sign any data, including user operations, on behalf of the smart account.
48
48
49
49
This type is referenced in the toolkit as `Implementation.Hybrid`.
50
50
51
-
### Multisig Smart Account
51
+
### Multisig smart account
52
52
53
-
The Multisig Smart Account is an implementation that supports multiple signers with a configurable threshold for valid signatures, allowing for enhanced security and flexibility in account management.
53
+
The Multisig smart account is an implementation that supports multiple signers with a configurable threshold for valid signatures, allowing for enhanced security and flexibility in account management.
54
54
The signatory must have at least as many signers include as the threshold is configured for the account.
55
55
56
56
This type is referenced in the toolkit as `Implementation.Multisig`.
57
57
58
-
### Stateless 7702 Smart Account
58
+
### Stateless 7702 smart account
59
59
60
-
The Stateless 7702 Smart Account implementation represents an externally owned account (EOA) upgraded to
61
-
support Smart Account functionality as defined by [EIP-7702](https://eips.ethereum.org/EIPS/eip-7702). This implementation enables EOAs to perform Smart Account operations, including the creation and management of delegations.
60
+
The Stateless 7702 smart account implementation represents an externally owned account (EOA) upgraded to
61
+
support smart account functionality as defined by [EIP-7702](https://eips.ethereum.org/EIPS/eip-7702). This implementation enables EOAs to perform smart account operations, including the creation and management of delegations.
62
62
63
63
This type is referenced in the toolkit as `Implementation.Stateless7702`.
64
64
65
-
## Smart Account flow
65
+
## Smart account flow
66
66
67
-
The MetaMask Smart Account flow is as follows:
67
+
The MetaMask Smart Accounts flow is as follows:
68
68
69
-
1.**Account setup** - A user creates a Smart Account by deploying a smart contract, and initializing it with
69
+
1.**Account setup** - A user creates a smart account by deploying a smart contract, and initializing it with
70
70
ownership and security settings.
71
-
The user can customize the Smart Account in the following ways:
71
+
The user can customize the smart account in the following ways:
72
72
73
73
-**Account logic** - They can configure custom logic for actions such as multi-signature
74
74
approvals, spending limits, and automated transaction batching.
@@ -90,6 +90,6 @@ The MetaMask Smart Account flow is as follows:
90
90
91
91
## Delegator accounts
92
92
93
-
Delegator accounts are a type of Smart Account that allows users to grant permission to other Smart Accounts or EOAs
93
+
Delegator accounts are a type of MetaMask smart account that allows users to grant permission to other smart accounts or EOAs
94
94
to perform specific executions on their behalf, under defined rules and restrictions.
@@ -80,11 +80,11 @@ If you redeem delegations in any other way, it is your responsibility to validat
80
80
81
81
## Redeem the permission
82
82
83
-
Redeem a delegation with a [Smart Account](#redeem-with-a-smart-account) or an [externally owned account (EOA)](#redeem-with-an-eoa).
83
+
Redeem a delegation with a [MetaMask smart account](#redeem-with-a-metamask-smart-account) or an [externally owned account (EOA)](#redeem-with-an-eoa).
84
84
85
-
### Redeem with a Smart Account
85
+
### Redeem with a MetaMask smart account
86
86
87
-
To redeem a delegation with a Smart Account, create a [`MetaMaskSmartAccount`](../how-to/create-smart-account/index.md#create-a-metamasksmartaccount)
87
+
To redeem a delegation with a MetaMask smart account, create a [`MetaMaskSmartAccount`](../how-to/create-smart-account/index.md#create-a-metamasksmartaccount)
88
88
and a [Viem Bundler Client](https://viem.sh/account-abstraction/clients/bundler).
89
89
90
90
After setting up your Bundler Client, you can extend its functionality with `erc7710BundlerActions` actions to support ERC-7710. Once extended, use [`sendUserOperationWithDelegation`](../reference/api/experimental-actions/bundler-client.md#senduseroperationwithdelegation) to redeem the permission.
Copy file name to clipboardExpand all lines: delegation-toolkit/get-started/eip7702-quickstart.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,12 +1,12 @@
1
1
---
2
-
description: Upgrade an externally owned account (EOA) to a Smart Account
2
+
description: Upgrade an externally owned account (EOA) to a smart account
3
3
sidebar_position: 3
4
4
sidebar_label: EIP-7702 quickstart
5
5
---
6
6
7
7
# EIP-7702 quickstart
8
8
9
-
This page demonstrates how to upgrade your externally owned account (EOA) to support MetaMask Smart Account
9
+
This page demonstrates how to upgrade your externally owned account (EOA) to support MetaMask Smart Accounts
10
10
functionality using an [EIP-7702](https://eips.ethereum.org/EIPS/eip-7702) transaction. This enables your EOA to leverage the benefits of account
11
11
abstraction, such as batch transactions, gas sponsorship, and [ERC-7710 delegation capabilities](./../concepts/delegation.md).
12
12
@@ -73,7 +73,7 @@ does not support JSON-RPC accounts.
73
73
74
74
This example uses [`EIP7702StatelessDeleGator`](https://github.com/MetaMask/delegation-framework/blob/main/src/EIP7702/EIP7702StatelessDeleGator.sol) as the EIP-7702 delegator contract.
75
75
It follows a stateless design, as it does not store signer data in the contract's state. This approach
76
-
provides a lightweight and secure way to upgrade an EOA to a Smart Account.
76
+
provides a lightweight and secure way to upgrade an EOA to a smart account.
Copy file name to clipboardExpand all lines: delegation-toolkit/get-started/install.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,7 +9,7 @@ import TabItem from "@theme/TabItem";
9
9
10
10
# Install and set up the Delegation Toolkit
11
11
12
-
This page provides instructions to install and set up the MetaMask Delegation Toolkit, enabling you to integrate [Smart Accounts](../concepts/smart-accounts.md) into your dapp.
12
+
This page provides instructions to install and set up the MetaMask Delegation Toolkit, enabling you to integrate [MetaMask Smart Accounts](../concepts/smart-accounts.md) into your dapp.
Copy file name to clipboardExpand all lines: delegation-toolkit/how-to/configure.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ sidebar_label: Configure the toolkit
6
6
7
7
# Configure the Delegation Toolkit
8
8
9
-
The MetaMask Delegation Toolkit enables you to easily integrate [Smart Accounts](../concepts/smart-accounts.md) into your dapp,
9
+
The MetaMask Delegation Toolkit enables you to easily integrate [MetaMask Smart Accounts](../concepts/smart-accounts.md) into your dapp,
10
10
enabling a more flexible, secure, and frictionless experience for your users.
11
11
12
12
The toolkit is highly configurable, allowing you to tailor it to your project's specific needs. It includes support for custom signers, multiple signatory schemes, custom paymasters and bundlers, and more.
Copy file name to clipboardExpand all lines: delegation-toolkit/how-to/create-smart-account/configure-accounts-signers.md
+21-21Lines changed: 21 additions & 21 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,43 +1,43 @@
1
1
---
2
2
sidebar_label: Configure accounts and signers
3
-
description: Learn how to configure different types of delegator accounts and signers using Viem.
3
+
description: Learn how to configure different types of smart accounts and signers using Viem.
4
4
sidebar_position: 1
5
5
---
6
6
7
7
import Tabs from "@theme/Tabs";
8
8
import TabItem from "@theme/TabItem";
9
9
10
-
# Configure Smart Accounts and signers
10
+
# Configure MetaMask Smart Accounts and signers
11
11
12
-
The MetaMask Delegation Toolkit supports different [Smart Account types](../../concepts/smart-accounts.md#smart-account-implementation-types),
12
+
The MetaMask Delegation Toolkit supports different [MetaMask smart account types](../../concepts/smart-accounts.md#smart-account-implementation-types),
13
13
each with its own configuration and support for different signing mechanisms.
14
14
You can create flexible and secure delegator accounts tailored to your specific needs.
15
15
16
16
## Prerequisites
17
17
18
18
-[Install and set up the Delegation Toolkit.](../../get-started/install.md)
19
19
-[Configure the Delegation Toolkit.](../configure.md)
20
-
-[Create a Smart Account.](index.md)
20
+
-[Create a MetaMask smart account.](index.md)
21
21
22
-
## Configure a Hybrid Smart Account
22
+
## Configure a Hybrid smart account
23
23
24
-
The [Hybrid Smart Account](../../concepts/smart-accounts.md#hybrid-smart-account) supports both an EOA "owner" and any number of P256 (passkey) signers.
24
+
The [Hybrid smart account](../../concepts/smart-accounts.md#hybrid-smart-account) supports both an EOA "owner" and any number of P256 (passkey) signers.
25
25
26
-
To configure a Hybrid Smart Account, provide the following parameters:
26
+
To configure a Hybrid smart account, provide the following parameters:
27
27
28
28
-`owner`: The owner's account address as a hex string.
29
29
The owner can be the zero address, indicating that there is no owner configured.
30
30
-`p256KeyIds`: An array of key identifiers for P256 signers as hex strings.
31
31
-`p256XValues`: An array of public key x-values for P256 signers as `bigint`s.
32
32
-`p256YValues`: An array of public key y-values for P256 signers as `bigint`s.
33
-
-`signatory`: A signer that will sign on behalf of the Smart Account.
33
+
-`signatory`: A signer that will sign on behalf of the smart account.
34
34
35
35
:::note
36
36
You can set all `p256` parameters to empty arrays to configure no WebAuthn signer.
37
37
However, we recommend configuring at least one signer for account recoverability.
38
38
:::
39
39
40
-
For a Hybrid Smart Account, you can configure the following types of signatories:
40
+
For a Hybrid smart account, you can configure the following types of signatories:
The [Multisig Smart Account](../../concepts/smart-accounts.md#multisig-smart-account) supports multiple EOA signers with a configurable threshold for execution.
237
+
The [Multisig smart account](../../concepts/smart-accounts.md#multisig-smart-account) supports multiple EOA signers with a configurable threshold for execution.
238
238
239
-
To configure a Multisig Smart Account, provide the following parameters:
239
+
To configure a Multisig smart account, provide the following parameters:
240
240
241
241
-`signers`: An array of EOA signer addresses as hex strings.
242
242
-`threshold`: The number of signers required to execute a transaction, as a `bigint`.
243
-
-`signatory`: A signer that will sign on behalf of the Smart Account.
243
+
-`signatory`: A signer that will sign on behalf of the smart account.
244
244
245
245
### Configure signatories
246
246
247
-
For a Multisig Smart Account, you can use a combination of account signatories and Wallet Client signatories.
247
+
For a Multisig smart account, you can use a combination of account signatories and Wallet Client signatories.
The number of signers in the signatories must be at least equal to the threshold for valid signature generation.
317
317
:::
318
318
319
-
## Configure a Stateless 7702 Smart Account
319
+
## Configure a Stateless 7702 smart account
320
320
321
-
The [Stateless 7702 Smart Account](../../concepts/smart-accounts.md#stateless-7702-smart-account) represents an EOA that has been upgraded to support Smart Account
321
+
The [Stateless 7702 smart account](../../concepts/smart-accounts.md#stateless-7702-smart-account) represents an EOA that has been upgraded to support MetaMask Smart Accounts
322
322
functionality as defined by [EIP-7702](https://eips.ethereum.org/EIPS/eip-7702). This implementation does not handle the upgrade process; see the [EIP-7702 quickstart](./../../get-started/eip7702-quickstart.md) to learn how to upgrade.
323
323
324
-
To configure a Stateless 7702 Smart Account, provide the following parameters:
324
+
To configure a Stateless 7702 smart account, provide the following parameters:
325
325
326
-
-`address`: The address of the EOA that has been upgraded to a Smart Account.
327
-
-`signatory`: A signer that will sign on behalf of the Smart Account.
326
+
-`address`: The address of the EOA that has been upgraded to a smart account.
327
+
-`signatory`: A signer that will sign on behalf of the smart account.
328
328
329
-
For a Stateless 7702 Smart Account, you can configure the following types of signatories:
329
+
For a Stateless 7702 smart account, you can configure the following types of signatories:
0 commit comments