MetaMask Agent Wallet tauscht Token auf derselben Chain und überträgt sie über Chains hinweg durch das mm swap Command-Set. Ein Trader bittet seinen Agenten in einfacher Sprache, Token zu handeln oder zu verschieben, und der Agent leitet diese Anfrage an die Befehle weiter, die ein Angebot abrufen, Routen vergleichen und ausführen. Anders als beim Handel mit Perpetual Futures auf Agent Wallet, wo nur die Sicherheiteneinzahlung eine EVM-Transaktion ist, die MetaMask prüft, ist ein Swap oder Bridge selbst die Transaktion – was verändert, was ein Trader im Voraus angeben muss und was MetaMasks Wallet-Steuerungen tatsächlich erfassen.
Genau an dieser Übergabe unterscheidet sich agentengesteuerter Handel vom Tippen durch eine Benutzeroberfläche. Ein einziger Satz kann viele unstated Annahmen über Slippage-Toleranz, Routing und Ziel-Chain enthalten. Dieser Artikel behandelt die Details, die es wert sind, explizit gemacht zu werden.
Dies ist ein Leitfaden zur Handelsmechanik, kein Einführungsartikel zu Swaps. Wie Slippage funktioniert und wie man eine Toleranz bemisst, erklärt was ist Slippage. Wie Market- und Limit-Orders verglichen werden, einschließlich wie eine Slippage-Toleranz dem nächsten AMM-Äquivalent zu einer Limit-Order entspricht, erklärt Krypto-Ordertypen. Wie sich DEXs, Aggregatoren und wallet-native Swaps unterscheiden, erklärt beste Krypto-Swap-Plattformen 2026. Zur Wallet-Kategorie selbst, siehe was ist ein agentic Wallet und wie agentic Wallets funktionieren. Zur Bemessung von Sicherheiteneinzahlungen und um zu verstehen, welchen Schritt eines Trades MetaMask bei einer anderen Asset-Klasse tatsächlich prüft, siehe wie man Perps mit MetaMask Agent Wallet handelt.
Die Swap-Oberfläche im Überblick
Dies sind die Befehle, auf die ein Swap- oder Bridge-Workflow zurückgreift. Das Verständnis der Oberfläche erleichtert es, eine Anfrage so zu formulieren, dass sie wie beabsichtigt ankommt.
Was du deinen Agenten fragst | Was ausgeführt wird | Was es tut |
„Swap 0,1 ETH zu USDC" | mm swap quote
| Berechnet einen Same-Chain-Swap ohne ihn einzureichen |
„Bridge 10 USDC von Base zu Arbitrum" | mm swap quote --to-chain-id
| Berechnet eine Cross-Chain-Route ohne sie einzureichen |
„Zeig mir alle Routen, nach Kosten gerankt" | mm swap quote --all-quotes
| Gibt jede gerankte Kandidatenroute zurück |
„Führe dieses Angebot aus" | mm swap execute --quote-id
| Reicht den zuvor angefragten Trade ein |
„Swap und frag mich nicht nach Bestätigung" | mm swap quote --yes
| Erstellt Angebot und führt sofort aus, überspringt Bestätigung |
„Was passiert gerade mit diesem Swap" | mm swap status --quote-id
| Prüft den Ausführungsstatus |
Quelle: MetaMask Agent Wallet Commands-Referenz
Mit diesem grundlegenden Verständnis folgen hier 9 Tipps zur Nutzung von MetaMask Agent Wallet für das Swappen und Bridgen von Token, einschließlich tokenisierter Aktien und anderer Assets (oft als Real World Assets oder RWAs bezeichnet).
1. Erst ein Angebot einholen und „nicht verfügbar" als normale Antwort behandeln
mm swap quote berechnet einen Trade, ohne ihn einzureichen. mm swap execute kann dieselben Swap-Parameter auch direkt entgegennehmen und in einem Aufruf ein Angebot erstellen und ausführen, aber das separate Einholen des Angebots zuerst ist die sicherere Standardvorgehensweise: Es ist die einzige Möglichkeit, Preis, Route und Gebühren zu sehen, bevor irgendetwas signiert wird. Wenn der zugrundeliegende Bridge- oder DEX-Aggregator keine Route findet, wirft die CLI keinen harten Fehler – sie gibt ein weiches kind: "unavailable"-Ergebnis mit einem reason zurück (wie AMOUNT_TOO_LOW, SLIPPAGE_TOO_HIGH oder NO_QUOTES), einer message und einem hint.
Diese Unterscheidung ist wichtig für einen Agenten, der auf einen Prompt reagiert. Ein nicht verfügbares Angebot ist eine Antwort, mit der man arbeiten kann – der Agent kann die Slippage erweitern, den Betrag anpassen oder einen anderen Token versuchen – und kein Fehler, der wörtlich zurückgemeldet werden muss. Die einzige Ausnahme ist das transiente QUOTE_RETRY-Signal, das ein echter harter Fehler ist, der es wert ist, unverändert erneut versucht zu werden. In jedem Fall sollte ein Agent niemals eine quoteId erfinden oder wiederverwenden, um execute aufzurufen, nachdem ein Angebot als nicht verfügbar oder abgelaufen zurückgekehrt ist; der Execute-Schritt schlägt sauber fehl, aber es wird keine Transaktion auf Basis einer Vermutung eingereicht.
2. Eine Slippage-Toleranz festlegen statt dem Standard zu vertrauen
mm swap quote akzeptiert --slippage als Prozentsatz von 0 bis 100 und verwendet standardmäßig 0,5%, wenn dieser weggelassen wird. Dieser Standard ist ein vernünftiger Mittelweg, aber er ist dennoch ein Standard, der auf jeden Trade angewendet wird, unabhängig von der Liquidität des Tokens.
Wie was ist Slippage erläutert, schützt eine enge Toleranz vor ungünstigen Ausführungen, führt aber in volatilen Bedingungen dazu, dass mehr Angebote direkt scheitern, während eine lockere Toleranz zuverlässiger zu einem schlechteren Preis ausgeführt wird. Ein Prompt, der ein Paar mit hoher Liquidität wie ETH zu USDC handelt, kann sich vernünftigerweise auf den 0,5%-Standard stützen; ein Prompt, der einen Token mit geringer Liquidität handelt, gibt besser explizit eine Toleranz an – in beide Richtungen –, anstatt eine Zahl zu erben, die nie mit diesem Token im Sinn gewählt wurde.
3. Cross-Chain-Bridges benötigen eine Ziel-Chain, und Refuel hat einen spezifischen Fehlerfall
Das Hinzufügen von --to-chain-id ist es, was einen Same-Chain-Swap in eine Cross-Chain-Bridge verwandelt; wenn es weggelassen wird, ist die Ziel-Chain standardmäßig die Quell-Chain. --to-address lässt den Output an einem anderen Ort als dem eigenen Wallet des Signers landen, aber nur bei Cross-Chain-Routen – es hat keine Wirkung, wenn Quell- und Ziel-Chain identisch sind.
--refuel bündelt eine kleine Menge nativen Gas der Ziel-Chain in ein Cross-Chain-Angebot, was nützlich ist, wenn der Trader noch kein Gas-Token auf der Ziel-Chain hält. Es ist opt-in und nur für Cross-Chain verfügbar, und es hat eine spezifische Fehlerweise: Die Verwendung, wenn der Ziel-Token bereits das native Gas-Asset der Ziel-Chain ist (zum Beispiel das Bridgen von ETH zu Arbitrum ETH), gibt NO_QUOTES zurück. Ein Prompt wie „Bridge USDC von Base zu Arbitrum und stell sicher, dass ich dort etwas ETH zum Arbeiten habe" beschreibt genau dieses Flag; ein Prompt, der direkt in den nativen Token einer Chain bridget, benötigt es nicht und schlägt fehl, wenn es trotzdem hinzugefügt wird.
4. Routen bewusst vergleichen, dann eine bestimmte ausführen
--all-quotes gibt jede gerankte Kandidatenroute zurück, wobei die empfohlene markiert ist, gerankt nach --strategy (kommagetrennte Werte cost, speed, impact, output; der Standard ist cost,speed). Routen zu vergleichen und anschließend eine bestimmte --quote-id auszuführen ist ein zweistufiger Prozess, und das ist bewusst so: --all-quotes kann nicht mit --yes kombiniert werden, daher fragt ein Prompt, der alle Routen sehen und gleichzeitig die Bestätigung überspringen möchte, nach zwei Dingen, die die CLI nicht in demselben Aufruf tun wird.
Quote-Artefakte werden nach 24 Stunden automatisch gelöscht, sodass eine heute vergleichbare Route keine Route ist, die nächste Woche noch gültig ausgeführt werden kann.
5. Gaslose Ausführung und gebündelte Genehmigungen erfolgen automatisch, nicht auf Anfrage
Wenn das native Guthaben des Wallets Gas nicht decken kann, leitet mm swap execute automatisch berechtigte, gas-inklusive Angebote über ein gasloses Relay mit EIP-7702 weiter und zieht die Relay-Gebühr vom getauschten Token selbst ab. Es gibt kein Flag dafür; es ist ein Fallback, den die CLI eigenständig auf qualifizierende Angebote anwendet, keine Garantie bei jedem Low-Gas-Swap.
Separat kombiniert die CLI auf berechtigten Chains und Konten die ERC-20-Genehmigung und den Trade in einem atomaren Aufruf mit ERC-7821 Batch Execution, was die Antwort als route: "erc7821" meldet, wenn es passiert. Wenn Batching nicht verfügbar ist, fällt die CLI auf sequenzielle Einreichung zurück. Keines dieser Verhaltensweisen muss in einem Prompt angefordert werden, aber beide sind es wert, bekannt zu sein, wenn man zurückliest, was tatsächlich ausgeführt wurde – ein gebündelter, gasloser Swap und ein zweistufiger, gas-zahlender Swap können beide dieselbe Anfrage erfüllen, und die Antwortfelder zeigen, welcher stattgefunden hat.
HINWEIS: Gaslose Ausführung kann zu höheren Gebühren führen.
6. Wissen, dass der Swap selbst – nicht ein separater Schritt – das ist, was Guard Mode prüft
Dies ist das umgekehrte Muster zum Handel mit Perpetual Futures auf Agent Wallet, wo das Öffnen oder Schließen einer Hyperliquid-Position off-chain erfolgt und nur die Sicherheiteneinzahlung eine EVM-Transaktion ist, die MetaMask bewertet. Ein Swap oder Bridge hat keine solche Aufteilung: mm swap execute reicht den Trade direkt als EVM-Transaktion ein, sodass es die Transaktion ist, die Guard Modes rolliegendes 24-Stunden-Abflusslimit misst, und es ist das, was MetaMasks Bedrohungsscanning sowie Netzwerk-, Adress- und Token-Allowlists direkt bewerten.
Ein Swap über 2.000 $ zählt als 2.000 $ Abfluss gegen das rolliegende Limit in dem Moment, in dem er bestätigt wird, egal ob es sich um einen Same-Chain-Trade oder eine Cross-Chain-Bridge handelt. Wenn er das Limit überschreitet oder das Bedrohungsscanning ihn markiert, pausiert der Job in AWAITING_MFA für eine Zwei-Faktor-Authentifizierungsgenehmigung – eine MetaMask Mobile Push-Benachrichtigung für QR-Anmeldungen oder ein E-Mail-Link für Browser-Anmeldungen – und der Agent kann nicht fortfahren, bis jemand antwortet. Dies gilt für den Server-Wallet-Modus; Handelsmodi gelten nicht für Bring-your-own-Wallet-Setups. Die praktische Konsequenz: Größendisziplin bei einem Swap-Prompt ist keine separate Gewohnheit von dem, was das Wallet bereits durchsetzt, wie es bei einer Perps-Einzahlung der Fall ist – der Swap-Betrag selbst ist die Zahl, die Guard Mode beobachtet.
7. Execute nach einem Timeout nicht blind erneut ausführen
Ein Swap kann pausieren, um eine Zwei-Faktor-Authentifizierung anzufordern, bevor ein Transaktions-Hash existiert, und tritt in einen AWAITING_MFA-Zustand mit einer angehängten Polling-ID ein. Wenn der MFA-Poll bei einem gaslosen Relay-Leg oder einem sequenziellen Server-Wallet-Leg abläuft, erscheint das als RELAY_TIMEOUT oder JOB_TIMEOUT, beide mit demselben Wiederherstellungshinweis: mm wallet requests watch ausführen, um den Hash abzurufen, und execute nicht erneut aufrufen, solange der ursprüngliche Job möglicherweise noch abgeschlossen wird.
Das erneute Ausführen von Execute in diesem Zeitfenster riskiert eine zweite, redundante Einreichung, anstatt irgendetwas zu beheben. Die ausstehende Anfrage zu genehmigen und den Job zu beobachten ist der korrekte Wiederherstellungspfad.
8. Es gibt keinen Dry Run für Swaps – Angebote vergleichen ist das nächste Äquivalent
Anders als mm perps open, das --dry-run akzeptiert, um eine Order zu validieren, ohne sie zu signieren, hat mm swap execute keinen entsprechenden Vorschaumodus. Das Nächste, was einem Probelauf eines Swaps entspricht, ist das Anfordern eines Angebots und, für alles Nicht-Routinemäßige, das Abrufen von --all-quotes, um den vollständigen Satz von Kandidatenrouten zu sehen, bevor man sich für eine entscheidet. Keines davon ersetzt einen Dry Run im strengen Sinne – ein Angebot kann noch veralten, und die Marktbedingungen können sich zwischen Angebotserstellung und Ausführung verschieben – aber es ist das verfügbare Werkzeug, um eine falsch spezifizierte Anfrage zu erkennen, bevor sie irgendetwas signiert.
9. Chain- und gaslose Unterstützung vor der Angebotsanfrage prüfen
mm chains list gibt ein features-Feld pro Chain zurück, das angibt, ob swap dort unterstützt wird, sowie ein relaySupported-Flag, das anzeigt, ob gasloses Relay verfügbar ist. Dies vor der Angebotsanfrage zu prüfen spart einen Umweg: Eine Angebotsanfrage gegen eine Chain ohne Swap-Unterstützung oder die Annahme, dass gaslose Ausführung auf einer Chain greift, auf der Relay nicht unterstützt wird, erscheint erst nachträglich als Fehler, anstatt etwas zu sein, das im Voraus hätte ausgeschlossen werden können.
Dies ergänzt zwei swap-spezifische Fehlercodes, die es wert sind, erkannt zu werden: GASLESS_UNSUPPORTED bedeutet, dass das Relay auf dieser Chain nicht verfügbar ist, und INSUFFICIENT_GAS bedeutet, dass das native Guthaben des Wallets Gas nicht decken kann und kein gasloser Fallback angewendet wurde. Beide lassen sich auf dieselbe Chain-Support-Frage zurückführen, die mm chains list im Voraus beantwortet.
Was Agent Wallet für Swaps nicht tut
Die Grenze klar zu benennen ist nützlicher als eine breitere zu implizieren.
Es gibt keinen eingebauten wiederkehrenden oder geplanten Swap – keine native Dollar-Cost-Averaging-Funktion, kein automatisches Rebalancing über ein Portfolio und kein stehendes Limit-Order-Buch, wie es eine zentralisierte Börse anbieten könnte. Jeder mm swap-Aufruf ist ein einzelner Quote-and-Execute-Zyklus; alles Wiederkehrende ist ein Skript oder Agenten-Loop, der diesen Zyklus nach einem Zeitplan aufruft, keine Wallet-Funktion. Trader, die diese Art von stehender Logik wünschen, können sie als Plugin aufbauen, eine Beta-Funktion, die es einem installierten npm-Paket ermöglicht, neue Befehle zur CLI unter zustimmungsgesteuerten Fähigkeiten hinzuzufügen, aber das ist ein Selbst-bauen-Pfad und keine eingebaute Funktion.
Es gibt keine Cross-DEX-Best-Execution-Garantie über das hinaus, was der Angebotsschritt meldet. --all-quotes und --strategy zeigen gerankte Kandidaten, aber das Ranking spiegelt die zum Angebotszeitpunkt verfügbaren Routen wider, keine Garantie, dass nicht Momente später ein besserer Preis erscheint.
Slippage-Schutz ist eine Obergrenze für akzeptable Preisbewegungen, kein Schutz davor, dass der zugrundeliegende Trade eine schlechte Idee ist. Ein Swap, der seine Slippage-Toleranz einhält, kann dennoch zu einem Preis ausgeführt werden, den der Trader im Nachhinein nicht gewählt hätte; die Toleranz begrenzt nur, wie weit die Ausführung vom Angebot abweichen kann.
mm chains list gibt den maßgeblichen, aktuellen Satz für eine bestimmte CLI-Version zurück, zusammen mit einem features-Feld, das anzeigt, ob Swap pro Chain unterstützt wird, sowie einem relaySupported-Flag für die Gasless-Berechtigung.
Nein, und der Unterschied ist es wert, ihn zu kennen. Bei Perps ist nur die Hyperliquid-Einzahlung eine EVM-Transaktion, die MetaMask prüft; das Öffnen oder Schließen der Position selbst hingegen nicht. Ein Swap oder Bridge hat keine solche Aufteilung – mm swap execute ist selbst die EVM-Transaktion und wird daher direkt gegen das Abflusslimit, den Threat-Scan und die Allowlists geprüft.
Das ist die normale Antwort der CLI, wenn eine Bridge oder DEX aus einem nachvollziehbaren Grund keine Route generieren kann – die Antwort enthält kind: "unavailable", einen Grund wie AMOUNT_TOO_LOW oder SLIPPAGE_TOO_HIGH sowie einen Hinweis, was angepasst werden sollte. Nur das transiente QUOTE_RETRY-Signal ist ein echter schwerwiegender Fehler.
Nein. Es ist opt-in und funktioniert ausschließlich chain-übergreifend. Es schlägt mit NO_QUOTES fehl, wenn das Ziel-Token bereits das native Gas-Asset der Ziel-Chain ist, da in diesem Fall kein Refueling erforderlich ist.
Nicht direkt. mm swap execute hat kein Dry-Run-Flag und kann Swap-Parameter sogar direkt entgegennehmen und ohne vorherige Kursabfrage ausführen. Eine Kursabfrage im Voraus anzufordern und Routen mit --all-quotes für alles Nicht-Routinemäßige zu vergleichen, ist die nächstmögliche Überprüfung vor der Ausführung.
Es wechselt in einen AWAITING_MFA-Status mit einer angehängten Polling-ID. Wenn das Warten bei einem Gasless-Relay oder einem sequenziellen Server-Wallet-Abschnitt abläuft, wird dies als RELAY_TIMEOUT oder JOB_TIMEOUT angezeigt. Genehmige in jedem Fall die ausstehende Anfrage und führe dann mm wallet requests watch aus, um den Transaktions-Hash abzurufen. Das erneute Ausführen von execute, während der ursprüngliche Job möglicherweise noch abgeschlossen wird, birgt das Risiko einer doppelten Einreichung, anstatt das Problem zu lösen.
Nein. Wenn das native Guthaben der Wallet die Gasgebühren nicht decken kann, leitet mm swap execute automatisch geeignete Angebote mit enthaltenen Gasgebühren über ein Gasless-Relay weiter und zieht die Gebühr vom getauschten Token ab. Dies ist nicht bei jedem Swap mit niedrigem Gasstand garantiert, sondern nur bei Angeboten, die die entsprechenden Voraussetzungen erfüllen. Die Antwort gibt route: "erc7821" aus, wenn das CLI die Genehmigung und den Trade ebenfalls in einem einzigen Aufruf gebündelt hat. Keines dieser Verhaltensweisen ist über ein Feature-Flag gesteuert.