Skip to content

Commit 836599b

Browse files
Update SKILLs for v2.1.0 (#20)
* update SKILLs for v2.1.0 * update README * update the version
1 parent 12cf8f4 commit 836599b

8 files changed

Lines changed: 56 additions & 47 deletions

File tree

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# MetaMask Agent CLI Skills
22

3-
SKILLs for the MetaMask Agent CLI (`@metamask/agentic-cli` v2.0.0). These skills enable AI agents to authenticate, manage wallets, swap tokens, bridge across chains, trade perpetual futures, and more using the MetaMask Agent CLI.
3+
SKILLs for the MetaMask Agent CLI (`@metamask/agentic-cli` v3.0.0). These skills enable AI agents to authenticate, manage wallets, swap tokens, bridge across chains, trade perpetual futures, and more using the MetaMask Agent CLI.
44

55
## Skills
66

skills/metamask-agent-wallet/SKILL.md

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ description: Use when the user asks anything about blockchain wallets, transacti
44
license: MIT
55
metadata:
66
author: metamask
7-
version: "3.1.0"
8-
cliVersion: "2.0.0"
7+
version: "4.0.0"
8+
cliVersion: "3.0.0"
99
---
1010

1111
# MetaMask Agentic CLI Skill
@@ -25,8 +25,7 @@ Match the user's intent to a command and reference file, then read the reference
2525
| Choose a wallet mode and set up policies | `mm init` | [auth.md](references/auth.md) |
2626
| Show current init settings | `mm init show` | [auth.md](references/auth.md) |
2727
| Sign in via QR code with MetaMask Mobile | `mm login qr` | [auth.md](references/auth.md) |
28-
| Sign in via Google | `mm login google` | [auth.md](references/auth.md) |
29-
| Sign in via email OTP | `mm login email` | [auth.md](references/auth.md) |
28+
| Sign in via browser (Google or Email) | `mm login browser` | [auth.md](references/auth.md) |
3029
| Sign out | `mm logout` | [auth.md](references/auth.md) |
3130
| Reset CLI session | `mm reset` | [auth.md](references/auth.md) |
3231
| Show CLI configuration | `mm config get` | [auth.md](references/auth.md) |
@@ -154,7 +153,7 @@ Run these checks before the first CLI operation in a session, in order.
154153

155154
### 1. Version compatibility
156155

157-
This skill is written for `@metamask/agentic-cli` **v2.0.0** (see `cliVersion` in the frontmatter). Check the installed version:
156+
This skill is written for `@metamask/agentic-cli` **v3.0.0** (see `cliVersion` in the frontmatter). Check the installed version:
158157

159158
```bash
160159
mm --version
@@ -168,7 +167,7 @@ npm view @metamask/agentic-cli version
168167

169168
If the installed `major.minor` differs from the pinned `cliVersion`, or the installed version is behind the latest release, warn the user once and continue:
170169

171-
> Version mismatch: installed CLI `<installed>`, this skill is pinned to `2.0.0`, latest release is `<latest>`. Command syntax in this skill may be inaccurate until they are aligned. Update the CLI with `npm install -g @metamask/agentic-cli@latest`, then re-install the skills with `npx skills add metaMask/agent-skills`.
170+
> Version mismatch: installed CLI `<installed>`, this skill is pinned to `3.0.0`, latest release is `<latest>`. Command syntax in this skill may be inaccurate until they are aligned. Update the CLI with `npm install -g @metamask/agentic-cli@latest`, then re-install the skills with `npx skills add metaMask/agent-skills`.
172171
173172
Run this check once per session. Do not block operations on it.
174173

skills/metamask-agent-wallet/references/auth.md

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -60,12 +60,12 @@ mm init show
6060

6161
## `login` Command
6262

63-
Sign in to the CLI. On a TTY, bare `mm login` shows a method picker (MetaMask Mobile QR, Google, or email). QR is recommended but not auto-selected.
63+
Sign in to the CLI. On a TTY, bare `mm login` shows a method picker (MetaMask Mobile QR or browser). QR is recommended but not auto-selected. `mm login browser` covers both Google and Email — the user picks interactively in the browser.
6464

6565
### Syntax
6666

6767
```bash
68-
mm login [qr | google | email] [--token <token>] [--timeout <seconds>] [--no-wait]
68+
mm login [qr | browser] [--token <token>] [--timeout <seconds>] [--no-wait]
6969
```
7070

7171
### Supported Flags
@@ -79,19 +79,18 @@ mm login [qr | google | email] [--token <token>] [--timeout <seconds>] [--no-wai
7979
### Example
8080

8181
```bash
82-
mm login --no-wait
83-
mm login google --no-wait
84-
mm login email --no-wait
82+
mm login browser --no-wait
8583
mm login --token "cliToken:cliRefreshToken"
8684
```
8785

8886
### Note
8987

9088
- If already authenticated, the CLI returns `ALREADY_AUTHENTICATED`. Run `mm logout` first, then log in again.
91-
- `mm login qr` (scan with MetaMask Mobile) is available on non-production builds (dev/uat). On production it returns `COMING_SOON`; use Google or email sign-in instead.
89+
- `mm login qr` (scan with MetaMask Mobile) is available on non-production builds (dev/uat). On production it returns `COMING_SOON`; use browser sign-in instead.
9290
- Pairing codes tolerate `-` and whitespace separators (e.g. `608-225` is equivalent to `608225`).
93-
- Use `mm login google --no-wait` or `mm login email --no-wait` for non-interactive/CI flows. Bare `mm login --no-wait` fails without a TTY because no method is selected.
91+
- Use `mm login browser --no-wait` for non-interactive/CI flows. The command prints a sign-in URL; the user completes login in the browser (Google or Email). Bare `mm login --no-wait` fails without a TTY because no method is selected.
9492
- `--no-wait` is not supported with QR login. Complete authentication later with `mm login --token`.
93+
- After a successful login in server-wallet mode, the CLI automatically syncs existing wallets from the server. Run `mm wallet list` immediately — no need to re-run `mm init`. In BYOK mode, no sync occurs; run `mm init` to configure the wallet.
9594

9695
## `auth status` Command
9796

skills/metamask-agent-wallet/workflows/login.md

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,20 +6,19 @@ Reference command syntax in `references/auth.md`.
66

77
## Flow
88

9-
1. Ask the user which login method they want: MetaMask Mobile QR, Google, or Email.
9+
1. Ask the user which login method they want: MetaMask Mobile QR or browser (Google / Email).
1010
2. Execute login.
1111
3. Verify with token.
1212

1313
## Login
1414

15-
For non-interactive/CI flows, use Google or email with `--no-wait`:
15+
For non-interactive/CI flows, use `mm login browser --no-wait`:
1616

1717
```bash
18-
mm login google --no-wait
19-
mm login email --no-wait
18+
mm login browser --no-wait
2019
```
2120

22-
The command prints a sign-in URL.
21+
The command prints a sign-in URL. The user opens it in a browser and chooses Google or Email to complete sign-in.
2322

2423
`mm login qr` (scan with MetaMask Mobile) is available on non-production builds (dev/uat); on production it returns `COMING_SOON`. QR login keeps the CLI attached to the relay, so it does not support `--no-wait`.
2524

@@ -33,6 +32,8 @@ mm login --token "<TOKEN>"
3332

3433
## Confirm
3534

35+
Run `mm doctor` to verify the session is ready. It reports `authenticated` and `initialized` booleans. Do not proceed until both are `true`. If `initialized` is `false`, follow `workflows/onboarding.md` to run `mm init`.
36+
3637
```bash
37-
mm auth status
38+
mm doctor
3839
```

skills/metamask-agent-wallet/workflows/onboarding.md

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,16 +24,15 @@ Then run the version compatibility check from the skill `Preflight` section: com
2424

2525
## Login Flow
2626

27-
Ask the user which login method they want to use: MetaMask Mobile QR, Google, or Email. QR (`mm login qr`) is available on non-production builds (dev/uat); on production it returns `COMING_SOON`, so fall back to Google or email there.
27+
Ask the user which login method they want to use: MetaMask Mobile QR or browser (Google or Email). QR (`mm login qr`) is available on non-production builds (dev/uat); on production it returns `COMING_SOON`, so fall back to browser login there.
2828

2929
### Login
3030

3131
```bash
32-
mm login google --no-wait
33-
mm login email --no-wait
32+
mm login browser --no-wait
3433
```
3534

36-
Use `--no-wait` for non-interactive environments. The command prints a sign-in URL.
35+
Use `--no-wait` for non-interactive environments. The command prints a sign-in URL; the user completes sign-in in the browser using Google or Email.
3736

3837
### Verify
3938

skills/metamask-agent-workflows/SKILL.md

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ description: Use when the user needs to perform multi-step operations with the M
44
license: MIT
55
metadata:
66
author: metamask
7-
version: "3.0.0"
8-
cliVersion: "2.0.0"
7+
version: "4.0.0"
8+
cliVersion: "3.0.0"
99
---
1010

1111
# MetaMask Agent Workflows
@@ -47,7 +47,7 @@ Run these checks before the first CLI operation in a session, in order.
4747

4848
### 1. Version compatibility
4949

50-
This skill is written for `@metamask/agentic-cli` **v2.0.0** (see `cliVersion` in the frontmatter). Check the installed version:
50+
This skill is written for `@metamask/agentic-cli` **v3.0.0** (see `cliVersion` in the frontmatter). Check the installed version:
5151

5252
```bash
5353
mm --version
@@ -61,17 +61,26 @@ npm view @metamask/agentic-cli version
6161

6262
If the installed `major.minor` differs from the pinned `cliVersion`, or the installed version is behind the latest release, warn the user once and continue:
6363

64-
> Version mismatch: installed CLI `<installed>`, this skill is pinned to `2.0.0`, latest release is `<latest>`. Command syntax in this skill may be inaccurate until they are aligned. Update the CLI with `npm install -g @metamask/agentic-cli@latest`, then re-install the skills with `npx skills add metaMask/agent-skills`.
64+
> Version mismatch: installed CLI `<installed>`, this skill is pinned to `3.0.0`, latest release is `<latest>`. Command syntax in this skill may be inaccurate until they are aligned. Update the CLI with `npm install -g @metamask/agentic-cli@latest`, then re-install the skills with `npx skills add metaMask/agent-skills`.
6565
6666
Run this check once per session. Do not block operations on it.
6767

68-
### 2. Authentication
68+
### 2. Readiness gate (authentication + initialization)
69+
70+
`mm doctor` is the single readiness check. Run it before the first CLI operation in a session:
6971

7072
```bash
71-
mm auth status
73+
mm doctor
7274
```
7375

74-
If the user is not authenticated, follow `workflows/onboarding.md` for first time setup, or `workflows/login.md` for login.
76+
It reports an `authenticated` boolean, an `initialized` boolean, and a list of `hints`. **Do not run any other command until `mm doctor` reports both `authenticated: true` and `initialized: true`.** Authentication and initialization are independent gates: a session can be authenticated while the project has no wallet mode selected, in which case any command that needs a wallet aborts before running with `NOT_INITIALIZED` — "Project not initialized." (hint: Run `mm init` to set up wallet and trading modes.).
77+
78+
A project counts as initialized only when a wallet mode is set — and, for `server-wallet`, a trading mode is set as well (`byok` needs only the wallet mode). Do not use `mm init show` as the check: it requires an initialized project and throws `NOT_INITIALIZED` on an uninitialized one rather than reporting state.
79+
80+
Remediate, then **re-run `mm doctor` and confirm a clean result before doing anything else**:
81+
82+
- `authenticated: false` → follow `workflows/login.md` (or `workflows/onboarding.md` for first-time setup) to run `mm login`.
83+
- `authenticated: true` and `initialized: false` → follow `workflows/onboarding.md` to run `mm init` and select a wallet mode (and a trading mode for server-wallet).
7584

7685
## Command Discovery
7786

skills/metamask-agent-workflows/workflows/login.md

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,20 +6,19 @@ Reference command syntax in `references/auth.md`.
66

77
## Flow
88

9-
1. Ask the user which login method they want: MetaMask Mobile QR, Google, or Email.
9+
1. Ask the user which login method they want: MetaMask Mobile QR or browser (Google / Email).
1010
2. Execute login.
1111
3. Verify with token.
1212

1313
## Login
1414

15-
For non-interactive/CI flows, use Google or email with `--no-wait`:
15+
For non-interactive/CI flows, use `mm login browser --no-wait`:
1616

1717
```bash
18-
mm login google --no-wait
19-
mm login email --no-wait
18+
mm login browser --no-wait
2019
```
2120

22-
The command prints a sign-in URL.
21+
The command prints a sign-in URL. The user opens it in a browser and chooses Google or Email to complete sign-in.
2322

2423
`mm login qr` (scan with MetaMask Mobile) is available on non-production builds (dev/uat); on production it returns `COMING_SOON`. QR login keeps the CLI attached to the relay, so it does not support `--no-wait`.
2524

@@ -36,3 +35,7 @@ mm login --token "<TOKEN>"
3635
```bash
3736
mm auth status
3837
```
38+
39+
## After Login
40+
41+
In server-wallet mode, wallets are automatically synced after a successful login. Run `mm wallet list` to see them — no need to run `mm init` if wallets already exist. If no wallets are synced, run `mm init` to create one.

skills/metamask-agent-workflows/workflows/onboarding.md

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Reference command syntax in `references/auth.md` and `references/wallet.md`.
99
1. Check CLI installation.
1010
2. Login.
1111
3. Initialize wallet mode.
12-
4. Verify auth status.
12+
4. Verify readiness.
1313
5. Show wallet address.
1414

1515
## Check CLI Installation
@@ -24,16 +24,15 @@ Then run the version compatibility check from the skill `Preflight` section: com
2424

2525
## Login Flow
2626

27-
Ask the user which login method they want to use: MetaMask Mobile QR, Google, or Email. QR (`mm login qr`) is available on non-production builds (dev/uat); on production it returns `COMING_SOON`, so fall back to Google or email there.
27+
Ask the user which login method they want to use: MetaMask Mobile QR or browser (Google or Email). QR (`mm login qr`) is available on non-production builds (dev/uat); on production it returns `COMING_SOON`, so fall back to browser login there.
2828

2929
### Login
3030

3131
```bash
32-
mm login google --no-wait
33-
mm login email --no-wait
32+
mm login browser --no-wait
3433
```
3534

36-
Use `--no-wait` for non-interactive environments. The command prints a sign-in URL.
35+
Use `--no-wait` for non-interactive environments. The command prints a sign-in URL; the user completes sign-in in the browser using Google or Email.
3736

3837
### Verify
3938

@@ -45,13 +44,13 @@ mm login --token "<TOKEN>"
4544

4645
## Initialize Project
4746

48-
First check if the project is already initialized:
47+
First check whether the project is already initialized with `mm doctor` (read its `initialized` boolean):
4948

5049
```bash
51-
mm init show
50+
mm doctor
5251
```
5352

54-
If already initialized, skip this step.
53+
If `initialized` is `true`, skip this step.
5554

5655
For server-wallet mode, if the account already has a remote wallet, `mm init` syncs it and reuses the existing trading mode — no trading-mode prompt.
5756

@@ -94,13 +93,13 @@ mm wallet password set
9493

9594
Once the mnemonic is encrypted, all subsequent operations that need the private key require the `MM_PASSWORD` environment variable to be set. Never instruct the user to pass `--password` inline.
9695

97-
## Verify Auth Status
96+
## Verify Readiness
9897

9998
```bash
100-
mm auth status
99+
mm doctor
101100
```
102101

103-
Confirm the session is authenticated, the wallet mode is correct, and the token is valid.
102+
Confirm `mm doctor` reports both `authenticated: true` and `initialized: true` with no blocking hints before proceeding. (`mm auth status` reports only authentication and does not reflect initialization, so it cannot confirm readiness on its own.)
104103

105104
## Show Wallet Address
106105

0 commit comments

Comments
 (0)