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_EXCEEDEDinreferences/errors.md: creating a wallet when the project already has 100 wallets returns this code instead of a genericWALLET_ERROR; reuse an existing wallet viamm 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-readablereasonand 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.mdgained a matching note.SKILL.mdinput-validation rules for--amountand--sizenow allow scientific notation and host-locale grouping (canonicalized by the CLI) instead of the old ASCII-only regex, while still rejecting shell metacharacters.- Bumped
cliVersionto7.0.0.
[7.6.0] — targets CLI v6.2.0
Added
- New reference
references/plugins.mdfor the beta CLI plugin system, coveringmm plugins,mm plugins inspect,mm plugins install,mm plugins update,mm plugins link,mm plugins uninstall,mm plugins reset, and theadd,remove, andunlinkaliases. It documents the trust model, theexperimentalPluginsandexperimentalAllowUnverifiedInstallsgates, the install consent flow and--accept-permissions, thewallet-read,wallet-submit, andnetwork-managecapabilities alongside thedataAccessdisclosure 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--formatand--toonflags, and that their help needs the colon form such asmm plugins:install --help. - Plugin Errors section in
references/errors.mdforPLUGIN_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 ofPERMISSION_DENIED. - SKILL.md routing rows for every
mm pluginssubcommand 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--toonexception. Thedescriptionnow also triggers when the user installs or removes a CLI plugin. - Rows in
workflows/troubleshooting.mdforPLUGIN_BETA_DISABLED,PLUGIN_UNVERIFIED_SOURCE, and the plugin form ofPERMISSION_DENIED.references/doctor.mdnow separates the agent skills install thatskillSourcereports from CLI plugins. mm config get/mm config setkeysexperimentalPluginsandexperimentalAllowUnverifiedInstalls.PREDICT_UNAVAILABLE_FOR_LEGAL_REASONS(Polymarket HTTP 451), distinct fromPREDICT_GEOBLOCKED.INVALID_ASSET_IDguidance forprice spot,price history, andtoken assets.
Changed
mm price spotdocuments CAIP-2 native-asset auto-complete (e.g.eip155:1→eip155:1/slip44:60).mm price history --asset-typeis optional and defaults to the chain's native asset.- MFA Approval Pauses:
mm earn supplyandmm earn withdrawcan returnEXECUTE_FAILEDwith an MFA-watch hint when no hash is available yet; treat that as a pause, same asmm swap execute. - Bumped
cliVersionto6.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 literalAWAITING_MFAtoken — 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, andworkflows/troubleshooting.mdto the new detection rule. - Codex plugin package:
.codex-plugin/plugin.json,.agents/plugins/marketplace.json, andhooks/codex-hooks.json. Session-start attribution usesinstallSource: "codex-plugin". - Antigravity CLI (
agy) plugin:.antigravity-plugin/plugin.jsonplus a rule that routes wallet work toskills/metamask-agent-wallet. Session-start attribution usesinstallSource: "antigravity-plugin". - Grok Build plugin:
.grok-plugin/plugin.json,.grok-plugin/marketplace.json, andhooks/grok-hooks.json. Session-start attribution usesinstallSource: "grok-plugin". When Grok loads Claude-formathooks/hooks.json,GROK_PLUGIN_ROOTstill records the host as grok. - Antigravity session-start hooks:
hooks/antigravity-hooks.jsonand.antigravity-plugin/hooks.json.ANTIGRAVITY_AGENTenv detection insession-start.sh. Claude plugin manifest now declares./hooks/hooks.jsonexplicitly.
Changed
- Bumped
cliVersionto6.1.5.
[7.4.0] — targets CLI v6.1.4
Added
- x402 MCP transport (x402 v2 over MCP) in
scripts/x402_pay.py:mcp-inspectprints a paid MCP tool's payment options read-only (no signing, no spending), andmcp-sign --confirmsigns one option and prints thePaymentPayloadto attach to the retriedtools/call. The challenge is accepted as the whole JSON-RPC response, the tool result, or a barePaymentRequiredobject — via--challenge(inline JSON, or-for stdin) or--challenge-file.--asset/--networkdisambiguate multiple eligible options, as onpay. - New workflow:
workflows/x402-mcp.mdfor 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.mddocumenting the challenge shapes, the_metakeys, and the re-signing rule (a repeatedisErrorresult is a fresh challenge, never re-sign automatically). - Note in
references/x402.mdon Cloudflare Agents SDK servers (withX402/paidTool), which diverge from the spec text two ways: the challenge arrives in_meta["x402/error"]with nostructuredContent, and the retry token must be base64 (use the emittedpaymentBase64) 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
descriptionnow also triggers when an MCP tool call returns an x402 payment-required result, not only on an HTTP402. references/x402.mdandworkflows/x402-pay.mdno longer describe x402 as HTTP-only and cross-link the MCP workflow.
[7.3.0] — targets CLI v6.1.4
Changed
token list searchtakes the search term as a positional argument (mm token list search USDC).--querystill works. Documented that multi-word queries need quoting and that an omitted query returnsMISSING_QUERYinstead of prompting.wallet selectdocuments the address as optional: omit it in a TTY to pick from the wallet list, pass it in headless sessions or the command returnsMISSING_WALLET_REF. Added theINVALID_EVM_ADDRESS,WALLET_NOT_FOUND, andWRONG_NAMESPACEoutcomes.wallet policy getsyntax 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 returnsWRONG_WALLET_MODEin BYOK mode.- Bumped
cliVersionto6.1.4.
[7.2.0] — targets CLI v6.1.2
Added
- Troubleshooting rows for
QUOTE_PERSIST_FAILEDonswap quoteandINVALID_DATAonprice history.
Changed
references/chain.mdnames Monad, HyperEVM, Sei, and MegaETH in theeip155namespace row.mm transfersupports 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 withUNSUPPORTED_EVM_CHAIN.QUOTE_PERSIST_FAILEDguidance 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-quoteswithmkdir -pandchmod 700instead of only checking permissions.INVALID_DATAis no longer described as transaction-data-only; it is also the codemm price historyreturns when the Price API responds with an empty or malformed body.- Bumped
cliVersionto6.1.2.
[7.1.0] — targets CLI v6.1.0
Added
--after <cursor>ontx historyfor forward pagination, plus thehasNextPageandendCursoroutput fields and a pagination section inreferences/tx-history.md.- New error codes:
INVALID_POLICY_YAMLfor awallet policy setdocument that is not a full policy object, andUNSUPPORTED_NODEfor 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, andtx historyINVALID_LIMITrows in the troubleshooting workflow.
Fixed
- Onboarding workflow installed the pre-6.0 package name (
@metamask/agentic-cli). It now installs@metamask/agent-walletand notes the Node.js 22.18 minimum. - Onboarding workflow claimed
mm login qrreturnsCOMING_SOONon production and contradictedreferences/auth.md. QR sign-in works in every environment; the real constraint is that it needs a TTY and returnsNO_TTYin headless sessions. earn marketsandearn positionswere documented as not requiring authentication. Both require an authenticated session and a completedinit.- Predict history workflow documented the pre-6.0 default: it labelled the default output as trades, offered
--sideand--start/--endon 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
15mand30mprice historyintervals added in CLI 6.0.0. predict markets getsyntax showed--marketas required while its own examples used the positional argument. Documented as positional with--marketas the alternative.COMING_SOONno longer citesmm login qron production as its example.
Changed
tx history --limitcapped at 50, down from 500, matching the Accounts API page-size ceiling. Reading more than 50 transactions now requires paging with--after.references/transaction.mddocumentsscripts/amount_to_hex.pyfor converting a human-readable amount into the 0x-prefixed hexvaluea raw transaction payload needs. The script shipped in the skill but nothing referenced it.- Documented that only the first
tx historypage merges locally tracked pending CLI jobs; pages fetched with--afterreturn indexed history only. wallet policy setexamples and flag description now show passing a complete YAML document sourced fromwallet policy get --jsonorwallet policy templateinstead of a single-key fragment.- Bumped
cliVersionto6.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-idnames. - Replaced stale
wallet requests watch --polling-idexamples with the v6 positional polling ID. - Corrected the
wallet balancesyntax 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 apollingId. - Made the version-mismatch warning derive its target from
cliVersioninstead of embedding the old5.2.1release.
[7.0.0] — targets CLI v6.0.0
Breaking
- Package renamed from
@metamask/agentic-clito@metamask/agent-wallet. Update withnpm install -g @metamask/agent-wallet@latest. - Chain flag standardization:
--chainrenamed to--chain-idon earn markets, earn supply, earn withdraw, earn positions, tx, token list popular/trending/top-gainer.--chainrenamed to--chain-idson wallet balance, tx history, token list search.--from-chainrenamed to--from-chain-idon swap quote, swap execute, earn supply.--to-chainrenamed to--to-chain-idon swap quote, swap execute.--source-chainrenamed to--source-chain-idon perps deposit.--testnet-chain-idrenamed to--testnet-chain-idson wallet balance. Old names are accepted as aliases. wallet selectnow takes a positional<address>argument. Removed--id,--address, and--nameflags.wallet requests watchnow takes a positional<polling-id>argument. Removed--polling-idflag.--gas-tokenflag removed frommm transfer.
Added
--dexand--all-dexesflags onperps balanceandperps positionsfor HIP-3 DEX-specific queries.--dexflag onperps ordersfor HIP-3 DEX filtering.--token,--sort,--limitflags onearn marketsfor filtering and sorting vaults.--token,--protocol,--vault,--min-usd,--sort,--limitflags onearn positionsfor filtering and sorting positions.--min-tvlflag onearn supplyfor vault auto-selection filtering.predict historynow supports--type closedas the default, showing closed positions with realized PnL.--type tradeand--type redeemretain previous behavior. New--sort-byvalues for closed positions:realizedpnl,title,price,avgprice,timestamp.15mand30mintervals onprice history --interval.- VIP fee tier fields
tierNameandvipTieron 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_FAILEDreclassified 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
cliVersionto6.0.0.
[6.4.0] — targets CLI v5.4.0
Changed
mm tx historynow 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 viamm wallet requests list.mm earn positionsfix: LiFi portfolio positions display correctly again after the API response key changed frompositionstodata.- 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
cliVersionto5.4.0.
[6.3.0] — targets CLI v5.3.0
Added
mm predict historycommand: list deposit-wallet activity (trades by default, or--type redeemfor past redemptions). Supports pagination (--limit,--offset), time range (--start,--end), sorting (--sort-by,--sort-direction), and side filtering (--side). Each trade row includes settlementresult(won,lost,pending),redeemedflag, andamountWonpayout.mm predict history get <condition-id>command: show trade/redeem history for a specific market condition.- New workflow:
workflows/predict-history.mdfor 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 withfailure_reason),RATE_LIMITED(venue rate limit, e.g. Hyperliquid HTTP 429),INVALID_AMOUNT(non-positive/malformed amount on transfers). ALREADY_LOGGED_OUTreason onmm logoutwhen no active session exists (exit 0, not an error).mm tx historyoutput enriched withchainName,chainId,explorerUrl, andprotocolmetadata fields.
Changed
- Swap MFA timeouts now return
RELAY_TIMEOUT(gasless relay) orJOB_TIMEOUT(sequential legs) instead of genericSWAP_ERROR, with recovery hint to checkmm 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_LIMITEDinstead ofHYPERLIQUID_ERROR. - Token and route discovery errors (
TOKEN_NOT_FOUND,TOKEN_NO_ADDRESS,TOKEN_NOT_SUPPORTED,NATIVE_ASSET_UNSUPPORTED,INVALID_GAS_TOKEN,NO_QUOTES) now suggestmm token list searchin 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 qraborts promptly withMWP_CANCELLEDwhen MetaMask Mobile cancels dashboard authorization, instead of hanging until timeout.mm wallet balancetolerates missingnativeCurrencymetadata (falls back to built-in metadata or ETH/18).- Bumped
cliVersionto5.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 andreferences/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
cliVersionto5.2.1.
[6.2.0] — targets CLI v5.2.0
Added
--tick-sizeflag onmm predict quoteandmm predict placeto 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 quotenow 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). OnlyQUOTE_RETRYremains 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-sizevalidation rule added to SKILL.md input validation table.
Changed
mm init --wallet byoknow requires server-side wallet registration to succeed. Failure throwsWALLET_NOT_REGISTEREDand rolls back the wallet mode.- Predict deposit gas errors now surface as
PREDICT_INSUFFICIENT_GASwith a POL-specific hint instead of collapsing to genericPREDICT_ERROR. - Transfer MFA intents show token symbol instead of contract address; swap/bridge intents include approximate destination amount.
- Bumped
cliVersionto5.2.0.
[6.1.0] — targets CLI v5.1.0
Added
--waitflag onmm earn supplyto 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_FAILEDafter 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_FAILEDwith login guidance. - Bumped
cliVersionto5.1.0.
[6.0.0] — targets CLI v5.0.1
Changed
mm doctorno longer checks for the removedmetamask-agent-workflowsskill. Onlymetamask-agent-walletis checked.- Bumped
cliVersionto5.0.1.
[6.0.0] — targets CLI v5.0.0
Added
- Earn commands:
mm earn markets,mm earn positions,mm earn supply,mm earn withdrawfor DeFi yield vaults via LiFi. New reference (references/earn.md) and workflows (workflows/earn-supply.md,workflows/earn-withdraw.md). Earn error codes added toreferences/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_GASerror 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. --strategyflag onmm swap execute(re-quote mode).--otp-pairflag onmm login browserto restore the legacy MWP 6-digit pairing-code flow.INSUFFICIENT_FUNDSerror in swap execute path with pre-execute balance check.- Transaction notification guidance for QR login users in troubleshooting workflow (
AWAITING_MFArow).
Changed
mm login browserdefault changed from MWP pairing to paste-token flow. The user pastes acliToken:cliRefreshTokenfrom the dashboard.- Swap and bridge workflows now default to
--all-quotesto 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-quotesand--yescannot 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-workflowsskill. Its workflow templates were a subset of themetamask-agent-walletskill'sworkflows/directory (the wallet copies were also more up-to-date). The repo now ships a singlemetamask-agent-walletskill that bundles both the reference docs and the workflow templates. Install it withnpx skills add metaMask/agent-skills.
Changed
references/doctor.md: document thatmm doctornow detects project-local MetaMask AI skills when the global skill lock file (~/.agents/.skill-lock.json) exists but lacks MetaMask entries. (agentic#263)- Bumped
cliVersionto4.0.1across 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 initandmm 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 predictdeposit-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) beforemm logout/mm reset; npm update notifier;mm wallet listrefreshes the remote roster before listing. - v3.0.0 — breaking:
mm login google/mm login emailremoved; usemm login browser(Google or email via the MetaMask dashboard). Bridge--refueladded; deposit preflight checks; auto-rehydrate on login. - v2.0.0 — breaking: wallet policy moved to
mm wallet policy get|set|template(mm wallet show/createreturnpolicyYamlinstead ofpolicies). Addedmm doctor,mm transactionhistory, and major CLI startup performance work. - v1.0.0 —
mm wallet add-fund(QR funding), trading-mode get/set commands, andmm swap/mm predictrecipient support.