Skip to content

metamask/metamask-agent-wallet

v1.0.0MIT

MetaMask Agent Wallet skills for the mm CLI — auth, wallets, swaps, bridges, perps, prediction markets, and earn.

Changelog

All notable changes to the MetaMask Agent CLI Skills are documented here.

These skills track the @metamask/agent-wallet releases. Each entry lists the skill version (frontmatter) and the CLI cliVersion it targets, along with the user-facing CLI changes that motivated the skill update. Use this log to catch up if you are on an older skill version — apply the entries above yours in order.

The format is based on Keep a Changelog, and the skills follow Semantic Versioning.

[7.7.0] — targets CLI v7.0.0

Added

  • Arc chain support in references/chain.md.
  • WALLET_LIMIT_EXCEEDED in references/errors.md: creating a wallet when the project already has 100 wallets returns this code instead of a generic WALLET_ERROR; reuse an existing wallet via mm wallet list / mm wallet select.

Changed

  • INVALID_AMOUNT: transfer, swap, earn, perps, and predict now share one amount parser. references/errors.md (both the Validation and Perps entries) documents the machine-readable reason and format hint, and that plain decimals, scientific notation (1e3), and host-locale grouping/decimals (1,000.50, 1.000,50) are accepted while other-locale separators, negatives, and non-numeric values are rejected. references/transfer.md gained a matching note.
  • SKILL.md input-validation rules for --amount and --size now allow scientific notation and host-locale grouping (canonicalized by the CLI) instead of the old ASCII-only regex, while still rejecting shell metacharacters.
  • Bumped cliVersion to 7.0.0.

[7.6.0] — targets CLI v6.2.0

Added

  • New reference references/plugins.md for the beta CLI plugin system, covering mm plugins, mm plugins inspect, mm plugins install, mm plugins update, mm plugins link, mm plugins uninstall, mm plugins reset, and the add, remove, and unlink aliases. It documents the trust model, the experimentalPlugins and experimentalAllowUnverifiedInstalls gates, the install consent flow and --accept-permissions, the wallet-read, wallet-submit, and network-manage capabilities alongside the dataAccess disclosure list, approval records and the repeat consent that a version or manifest hash change triggers, uninstall and reset behavior, and where plugin code and approvals live on disk. It also records that these oclif commands reject the global --format and --toon flags, and that their help needs the colon form such as mm plugins:install --help.
  • Plugin Errors section in references/errors.md for PLUGIN_BETA_DISABLED, PLUGIN_UNVERIFIED_SOURCE, PLUGIN_METADATA_UNAVAILABLE, PLUGIN_NOT_FOUND, PLUGIN_MANIFEST_INVALID, PLUGIN_CLI_VERSION, PLUGIN_ID_COLLISION, PLUGIN_HOOKS_FORBIDDEN, PLUGIN_MANIFEST_FILE_MISSING, PLUGIN_INVALID_BASE, PLUGIN_SEALED_OVERRIDE, and the two plugin cases of PERMISSION_DENIED.
  • SKILL.md routing rows for every mm plugins subcommand and for the beta toggle, an input validation rule for the plugin spec, confirmation rules for install, update, link, uninstall, reset, enabling the beta, and running a command that a plugin contributed, plus the --toon exception. The description now also triggers when the user installs or removes a CLI plugin.
  • Rows in workflows/troubleshooting.md for PLUGIN_BETA_DISABLED, PLUGIN_UNVERIFIED_SOURCE, and the plugin form of PERMISSION_DENIED. references/doctor.md now separates the agent skills install that skillSource reports from CLI plugins.
  • mm config get / mm config set keys experimentalPlugins and experimentalAllowUnverifiedInstalls.
  • PREDICT_UNAVAILABLE_FOR_LEGAL_REASONS (Polymarket HTTP 451), distinct from PREDICT_GEOBLOCKED.
  • INVALID_ASSET_ID guidance for price spot, price history, and token assets.

Changed

  • mm price spot documents CAIP-2 native-asset auto-complete (e.g. eip155:1eip155:1/slip44:60).
  • mm price history --asset-type is optional and defaults to the chain's native asset.
  • MFA Approval Pauses: mm earn supply and mm earn withdraw can return EXECUTE_FAILED with an MFA-watch hint when no hash is available yet; treat that as a pause, same as mm swap execute.
  • Bumped cliVersion to 6.2.0.

[7.5.0] — targets CLI v6.1.5

Added

  • MFA Approval Pauses section in SKILL.md: agents must detect wallet MFA waits by scanning stdout for the literal AWAITING_MFA token — as "_notice":{"kind":"AWAITING_MFA"} in --json / piped mode, or as [AWAITING_MFA] in plain TTY and Ink REPL output. Includes recovery steps (mm wallet requests watch) and guidance not to retry while pending.
  • Cross-links from references/polling.md, references/transfer.md, and workflows/troubleshooting.md to the new detection rule.
  • Codex plugin package: .codex-plugin/plugin.json, .agents/plugins/marketplace.json, and hooks/codex-hooks.json. Session-start attribution uses installSource: "codex-plugin".
  • Antigravity CLI (agy) plugin: .antigravity-plugin/plugin.json plus a rule that routes wallet work to skills/metamask-agent-wallet. Session-start attribution uses installSource: "antigravity-plugin".
  • Grok Build plugin: .grok-plugin/plugin.json, .grok-plugin/marketplace.json, and hooks/grok-hooks.json. Session-start attribution uses installSource: "grok-plugin". When Grok loads Claude-format hooks/hooks.json, GROK_PLUGIN_ROOT still records the host as grok.
  • Antigravity session-start hooks: hooks/antigravity-hooks.json and .antigravity-plugin/hooks.json. ANTIGRAVITY_AGENT env detection in session-start.sh. Claude plugin manifest now declares ./hooks/hooks.json explicitly.

Changed

  • Bumped cliVersion to 6.1.5.

[7.4.0] — targets CLI v6.1.4

Added

  • x402 MCP transport (x402 v2 over MCP) in scripts/x402_pay.py: mcp-inspect prints a paid MCP tool's payment options read-only (no signing, no spending), and mcp-sign --confirm signs one option and prints the PaymentPayload to attach to the retried tools/call. The challenge is accepted as the whole JSON-RPC response, the tool result, or a bare PaymentRequired object — via --challenge (inline JSON, or - for stdin) or --challenge-file. --asset/--network disambiguate multiple eligible options, as on pay.
  • New workflow: workflows/x402-mcp.md for paying an x402-gated MCP tool call — call unpaid, inspect, confirm with the user, sign, retry with the payload in _meta["x402/payment"], then verify settlement in _meta["x402/payment-response"]. Includes the error cases (no eligible option, multiple eligible options, Permit2-only, payment not accepted, v1 challenge).
  • New "MCP transport (paid MCP tools)" section in references/x402.md documenting the challenge shapes, the _meta keys, and the re-signing rule (a repeated isError result is a fresh challenge, never re-sign automatically).
  • Note in references/x402.md on Cloudflare Agents SDK servers (withX402/paidTool), which diverge from the spec text two ways: the challenge arrives in _meta["x402/error"] with no structuredContent, and the retry token must be base64 (use the emitted paymentBase64) rather than the inline object. Verified with a live mainnet round-trip.
  • SKILL.md routing rows for the MCP transport, an x402 MCP input-validation rule, and confirmation-policy wording covering mcp-sign --confirm.

Changed

  • SKILL.md description now also triggers when an MCP tool call returns an x402 payment-required result, not only on an HTTP 402.
  • references/x402.md and workflows/x402-pay.md no longer describe x402 as HTTP-only and cross-link the MCP workflow.

[7.3.0] — targets CLI v6.1.4

Changed

  • token list search takes the search term as a positional argument (mm token list search USDC). --query still works. Documented that multi-word queries need quoting and that an omitted query returns MISSING_QUERY instead of prompting.
  • wallet select documents the address as optional: omit it in a TTY to pick from the wallet list, pass it in headless sessions or the command returns MISSING_WALLET_REF. Added the INVALID_EVM_ADDRESS, WALLET_NOT_FOUND, and WRONG_NAMESPACE outcomes.
  • wallet policy get syntax now matches the CLI's --help: the command takes no flags and always reads the policy for the active server wallet. Noted that it is server-wallet only and returns WRONG_WALLET_MODE in BYOK mode.
  • Bumped cliVersion to 6.1.4.

[7.2.0] — targets CLI v6.1.2

Added

  • Troubleshooting rows for QUOTE_PERSIST_FAILED on swap quote and INVALID_DATA on price history.

Changed

  • references/chain.md names Monad, HyperEVM, Sei, and MegaETH in the eip155 namespace row. mm transfer supports native and ERC-20 transfers on Monad (143), HyperEVM (999), Sei (1329), and MegaETH (4326) as of CLI 6.1.2; before that they failed with UNSUPPORTED_EVM_CHAIN.
  • QUOTE_PERSIST_FAILED guidance now matches the CLI's new hint: the CLI retries a transient directory-creation failure once, so the error means the path is genuinely unwritable. Create ~/.metamask/swap-quotes with mkdir -p and chmod 700 instead of only checking permissions.
  • INVALID_DATA is no longer described as transaction-data-only; it is also the code mm price history returns when the Price API responds with an empty or malformed body.
  • Bumped cliVersion to 6.1.2.

[7.1.0] — targets CLI v6.1.0

Added

  • --after <cursor> on tx history for forward pagination, plus the hasNextPage and endCursor output fields and a pagination section in references/tx-history.md.
  • New error codes: INVALID_POLICY_YAML for a wallet policy set document that is not a full policy object, and UNSUPPORTED_NODE for startup on a Node.js runtime below 22.18.
  • Node.js 22.18 minimum called out in the SKILL preflight, and UNSUPPORTED_NODE, INVALID_POLICY_YAML, and tx history INVALID_LIMIT rows in the troubleshooting workflow.

Fixed

  • Onboarding workflow installed the pre-6.0 package name (@metamask/agentic-cli). It now installs @metamask/agent-wallet and notes the Node.js 22.18 minimum.
  • Onboarding workflow claimed mm login qr returns COMING_SOON on production and contradicted references/auth.md. QR sign-in works in every environment; the real constraint is that it needs a TTY and returns NO_TTY in headless sessions.
  • earn markets and earn positions were documented as not requiring authentication. Both require an authenticated session and a completed init.
  • Predict history workflow documented the pre-6.0 default: it labelled the default output as trades, offered --side and --start/--end on closed positions, and listed only the trade/redeem sort keys. Those flag/mode mismatches are hard errors (INVALID_SIDE, INVALID_INPUT, INVALID_SORT_BY), so the workflow now leads with a per-mode flag table.
  • Market data workflow omitted the 15m and 30m price history intervals added in CLI 6.0.0.
  • predict markets get syntax showed --market as required while its own examples used the positional argument. Documented as positional with --market as the alternative.
  • COMING_SOON no longer cites mm login qr on production as its example.

Changed

  • tx history --limit capped at 50, down from 500, matching the Accounts API page-size ceiling. Reading more than 50 transactions now requires paging with --after.
  • references/transaction.md documents scripts/amount_to_hex.py for converting a human-readable amount into the 0x-prefixed hex value a raw transaction payload needs. The script shipped in the skill but nothing referenced it.
  • Documented that only the first tx history page merges locally tracked pending CLI jobs; pages fetched with --after return indexed history only.
  • wallet policy set examples and flag description now show passing a complete YAML document sourced from wallet policy get --json or wallet policy template instead of a single-key fragment.
  • Bumped cliVersion to 6.1.0.

[7.0.1] — targets CLI v6.0.0

Fixed

  • Replaced stale pre-v6 chain flags in workflow examples with the canonical --chain-id, --chain-ids, --from-chain-id, and --to-chain-id names.
  • Replaced stale wallet requests watch --polling-id examples with the v6 positional polling ID.
  • Corrected the wallet balance syntax typo for --testnet-chain-ids.
  • Aligned the async guidance with the CLI architecture: both server-wallet and BYOK use polling jobs without --wait; BYOK signs locally but still returns a pollingId.
  • Made the version-mismatch warning derive its target from cliVersion instead of embedding the old 5.2.1 release.

[7.0.0] — targets CLI v6.0.0

Breaking

  • Package renamed from @metamask/agentic-cli to @metamask/agent-wallet. Update with npm install -g @metamask/agent-wallet@latest.
  • Chain flag standardization: --chain renamed to --chain-id on earn markets, earn supply, earn withdraw, earn positions, tx, token list popular/trending/top-gainer. --chain renamed to --chain-ids on wallet balance, tx history, token list search. --from-chain renamed to --from-chain-id on swap quote, swap execute, earn supply. --to-chain renamed to --to-chain-id on swap quote, swap execute. --source-chain renamed to --source-chain-id on perps deposit. --testnet-chain-id renamed to --testnet-chain-ids on wallet balance. Old names are accepted as aliases.
  • wallet select now takes a positional <address> argument. Removed --id, --address, and --name flags.
  • wallet requests watch now takes a positional <polling-id> argument. Removed --polling-id flag.
  • --gas-token flag removed from mm transfer.

Added

  • --dex and --all-dexes flags on perps balance and perps positions for HIP-3 DEX-specific queries.
  • --dex flag on perps orders for HIP-3 DEX filtering.
  • --token, --sort, --limit flags on earn markets for filtering and sorting vaults.
  • --token, --protocol, --vault, --min-usd, --sort, --limit flags on earn positions for filtering and sorting positions.
  • --min-tvl flag on earn supply for vault auto-selection filtering.
  • predict history now supports --type closed as the default, showing closed positions with realized PnL. --type trade and --type redeem retain previous behavior. New --sort-by values for closed positions: realizedpnl, title, price, avgprice, timestamp.
  • 15m and 30m intervals on price history --interval.
  • VIP fee tier fields tierName and vipTier on swap quote output.
  • New error codes: FEES_LOOKUP_FAILED, INVALID_SORT_BY, INVALID_SORT_DIRECTION, INVALID_HISTORY_TYPE, PREDICT_HISTORY_INVALID_SORT_BY, POSITION_NOT_FOUND, AMBIGUOUS_VAULT.

Changed

  • RELAY_FAILED reclassified from upstream API error to funds shortfall. Updated hint to suggest lowering --amount.
  • Removed stale error code PREDICT_WALLET_STATE_REQUIRED.
  • Removed parenthetical information patterns across all reference files for consistency.
  • Bumped cliVersion to 6.0.0.

[6.4.0] — targets CLI v5.4.0

Changed

  • mm tx history now excludes stranded pending jobs that never reached the chain, such as MFA-timed-out requests. Broadcast-but-unconfirmed transactions still appear as pending. Stranded jobs remain accessible via mm wallet requests list.
  • mm earn positions fix: LiFi portfolio positions display correctly again after the API response key changed from positions to data.
  • Revised CLI hint copy across 153 error hints and 59 onboarding/intent prompts for clarity and consistency. Branding changed from "MetaMask Agentic CLI" to "MetaMask Agent CLI" in login flows.
  • Bumped cliVersion to 5.4.0.

[6.3.0] — targets CLI v5.3.0

Added

  • mm predict history command: list deposit-wallet activity (trades by default, or --type redeem for past redemptions). Supports pagination (--limit, --offset), time range (--start, --end), sorting (--sort-by, --sort-direction), and side filtering (--side). Each trade row includes settlement result (won, lost, pending), redeemed flag, and amountWon payout.
  • mm predict history get <condition-id> command: show trade/redeem history for a specific market condition.
  • New workflow: workflows/predict-history.md for browsing and filtering predict trade/redeem history.
  • New error codes: INVALID_EVM_ADDRESS (invalid transfer recipient), RELAY_TIMEOUT (gasless relay poll timeout with recovery hint), TX_REVERTED (on-chain RPC revert with failure_reason), RATE_LIMITED (venue rate limit, e.g. Hyperliquid HTTP 429), INVALID_AMOUNT (non-positive/malformed amount on transfers).
  • ALREADY_LOGGED_OUT reason on mm logout when no active session exists (exit 0, not an error).
  • mm tx history output enriched with chainName, chainId, explorerUrl, and protocol metadata fields.

Changed

  • Swap MFA timeouts now return RELAY_TIMEOUT (gasless relay) or JOB_TIMEOUT (sequential legs) instead of generic SWAP_ERROR, with recovery hint to check mm wallet requests watch --polling-id <id>.
  • Gasless relay polling now respects --wallet-timeout (default 10 minutes) instead of the fox-sdk ~5-minute default.
  • Perps HTTP 429 errors from Hyperliquid now map to RATE_LIMITED instead of HYPERLIQUID_ERROR.
  • Token and route discovery errors (TOKEN_NOT_FOUND, TOKEN_NO_ADDRESS, TOKEN_NOT_SUPPORTED, NATIVE_ASSET_UNSUPPORTED, INVALID_GAS_TOKEN, NO_QUOTES) now suggest mm token list search in recovery hints.
  • Earn wallet approval intents now use human-readable amounts and token symbols (e.g. "Supply 0.998 USDC to Fluid") instead of base units and contract addresses.
  • mm login qr aborts promptly with MWP_CANCELLED when MetaMask Mobile cancels dashboard authorization, instead of hanging until timeout.
  • mm wallet balance tolerates missing nativeCurrency metadata (falls back to built-in metadata or ETH/18).
  • Bumped cliVersion to 5.3.0.

[6.2.1] — targets CLI v5.2.1

Added

  • New predict error codes: PREDICT_ORDER_SIZE_TOO_SMALL (order size below exchange minimum), PREDICT_ORDER_NOT_FILLED (FOK order could not be fully filled). These are classified from unstructured CLOB place rejections.
  • New predict error codes with actionable hints: PREDICT_REDEEM_NONE, PREDICT_REDEEM_NOT_FOUND, PREDICT_REDEEM_MISSING_TARGET.
  • mm tx --hash <hash> command: look up a transaction by hash. Added to SKILL.md routing table and references/tx-history.md.

Changed

  • All expected predict error codes now return actionable, per-code hints instead of a generic "Re-check inputs and mode" fallback. Affected codes include PREDICT_SETUP_REQUIRED, PREDICT_AUTH_REQUIRED, PREDICT_AUTH_INVALID, PREDICT_INSUFFICIENT_BALANCE, PREDICT_INSUFFICIENT_FUNDING_BALANCE, PREDICT_INSUFFICIENT_ALLOWANCE, PREDICT_CANCEL_TARGET_REQUIRED, and others.
  • Bumped cliVersion to 5.2.1.

[6.2.0] — targets CLI v5.2.0

Added

  • --tick-size flag on mm predict quote and mm predict place to override the market tick size. Supported values: 0.1, 0.01, 0.001, 0.0001. Defaults to the CLOB tick for the token.
  • Swap quote soft-unavailable outcomes: mm swap quote now returns a soft { kind: "unavailable", reason, message, hint } envelope (exit 0) when the bridge returns zero routes for actionable reasons (NO_QUOTES, AMOUNT_TOO_LOW, AMOUNT_TOO_HIGH, SLIPPAGE_TOO_HIGH, SLIPPAGE_TOO_LOW, TOKEN_NOT_SUPPORTED, RWA_GEO_RESTRICTED, RWA_NATIVE_TOKEN_UNSUPPORTED, RWA_MARKET_UNAVAILABLE). Only QUOTE_RETRY remains a hard error.
  • New error codes: WALLET_NOT_REGISTERED (BYOK init registration failure), QUOTE_RETRY (transient bridge retry signal), PREDICT_INSUFFICIENT_GAS (POL gas shortfall on Polygon deposits).
  • --tick-size validation rule added to SKILL.md input validation table.

Changed

  • mm init --wallet byok now requires server-side wallet registration to succeed. Failure throws WALLET_NOT_REGISTERED and rolls back the wallet mode.
  • Predict deposit gas errors now surface as PREDICT_INSUFFICIENT_GAS with a POL-specific hint instead of collapsing to generic PREDICT_ERROR.
  • Transfer MFA intents show token symbol instead of contract address; swap/bridge intents include approximate destination amount.
  • Bumped cliVersion to 5.2.0.

[6.1.0] — targets CLI v5.1.0

Added

  • --wait flag on mm earn supply to poll and confirm the position is reflected after deposit.
  • New error codes: JOB_TIMEOUT, REQUEST_NOT_FOUND, TX_DENIED, TX_EXPIRED, TX_FAILED.
  • New troubleshooting rows for JOB_TIMEOUT, TX_DENIED, TX_EXPIRED, AUTH_FAILED after session expiry.

Changed

  • Default wallet job poll timeout raised from 5 minutes to 10 minutes.
  • Perps deposit/withdraw/order errors now show actionable hints with minimum amounts.
  • Auth failures during operations now consistently produce AUTH_FAILED with login guidance.
  • Bumped cliVersion to 5.1.0.

[6.0.0] — targets CLI v5.0.1

Changed

  • mm doctor no longer checks for the removed metamask-agent-workflows skill. Only metamask-agent-wallet is checked.
  • Bumped cliVersion to 5.0.1.

[6.0.0] — targets CLI v5.0.0

Added

  • Earn commands: mm earn markets, mm earn positions, mm earn supply, mm earn withdraw for DeFi yield vaults via LiFi. New reference (references/earn.md) and workflows (workflows/earn-supply.md, workflows/earn-withdraw.md). Earn error codes added to references/errors.md.
  • ERC-7821 batch execution: on eligible chains and accounts, the CLI batches approval + trade into a single transaction. Documented in swap and bridge workflows.
  • Intelligent quote selection: the CLI skips quotes the wallet cannot cover gas for and prefers gasless (EIP-7702) quotes when native balance is low. New INSUFFICIENT_GAS error code.
  • New swap/bridge error codes: INSUFFICIENT_GAS, REFUEL_UNSUPPORTED_ROUTE, AMOUNT_TOO_LOW, AMOUNT_TOO_HIGH, SLIPPAGE_TOO_HIGH, SLIPPAGE_TOO_LOW, TOKEN_NOT_SUPPORTED, RWA_GEO_RESTRICTED, RWA_NATIVE_TOKEN_UNSUPPORTED, RWA_MARKET_UNAVAILABLE.
  • New validation error codes: UNKNOWN_FLAG, MISSING_ARG, UNEXPECTED_ARG, UNSUPPORTED_CHAIN.
  • --strategy flag on mm swap execute (re-quote mode).
  • --otp-pair flag on mm login browser to restore the legacy MWP 6-digit pairing-code flow.
  • INSUFFICIENT_FUNDS error in swap execute path with pre-execute balance check.
  • Transaction notification guidance for QR login users in troubleshooting workflow (AWAITING_MFA row).

Changed

  • mm login browser default changed from MWP pairing to paste-token flow. The user pastes a cliToken:cliRefreshToken from the dashboard.
  • Swap and bridge workflows now default to --all-quotes to show all available routes.
  • Quote presentation: when showing multiple quotes, show a summary comparison table, then full details for the recommended quote. Show full details for any user-selected route before executing.
  • --all-quotes and --yes cannot be used together (INVALID_SWAP_PARAMS).
  • Removed bold formatting from all skill files.
  • Removed interactive TTY section from references/swap.md (not relevant for agents).

Removed

  • Aave V3 workflow files (aave-borrow.md, aave-collateral.md, aave-markets.md, aave-positions.md, aave-repay.md, aave-supply.md, aave-withdraw.md). Replaced by the generic earn commands which support Aave and other protocols.

[5.0.1] — targets CLI v4.0.1

Removed

  • metamask-agent-workflows skill. Its workflow templates were a subset of the metamask-agent-wallet skill's workflows/ directory (the wallet copies were also more up-to-date). The repo now ships a single metamask-agent-wallet skill that bundles both the reference docs and the workflow templates. Install it with npx skills add metaMask/agent-skills.

Changed

  • references/doctor.md: document that mm doctor now detects project-local MetaMask AI skills when the global skill lock file (~/.agents/.skill-lock.json) exists but lacks MetaMask entries. (agentic#263)
  • Bumped cliVersion to 4.0.1 across both skills and updated README.

Notes

  • CLI v4.0.1 also improved Sentry error reporting and surfaced reportable failures in Segment analytics (agentic#264); these are internal telemetry changes with no impact on the command surface, so no skill docs changed.

[5.0.0] — targets CLI v4.0.0

Added

  • BYOK (bring-your-own-key) parity for mm init and mm wallet create: persisted BYOK wallets are registered server-side, prompt for a trading mode, and apply the server trading policy — matching the server-wallet flow. (agentic#246)

Fixed

  • mm predict deposit-wallet setup no longer stalls with contradictory relayer errors when a cached address was derived as legacy UUPS instead of BeaconProxy. (agentic#259)

Earlier CLI history

For CLI releases prior to v4.0.0, see the upstream packages/agentic-cli/CHANGELOG.md. Highlights that shaped the current skill surface:

  • v3.2.0 — confirmation prompts (with --yes) before mm logout / mm reset; npm update notifier; mm wallet list refreshes the remote roster before listing.
  • v3.0.0breaking: mm login google / mm login email removed; use mm login browser (Google or email via the MetaMask dashboard). Bridge --refuel added; deposit preflight checks; auto-rehydrate on login.
  • v2.0.0breaking: wallet policy moved to mm wallet policy get|set|template (mm wallet show / create return policyYaml instead of policies). Added mm doctor, mm transaction history, and major CLI startup performance work.
  • v1.0.0mm wallet add-fund (QR funding), trading-mode get/set commands, and mm swap/mm predict recipient support.