This page never asks for a private key: every transaction is signed in your own wallet. The agent's key is made on the agent's machine and never comes here.
Pick the one that fits. You can open the other any time.
Step 2 of 2. Nothing has been sent yet. Review, then confirm.
What is done is read from the chain, so you can close this page and come back to the same place.
This makes a vault that you own, on Base, with USDC as its money. It costs a little gas, paid in ETH. The vault holds the money; your agent can only spend what your limits allow.
On the machine where your agent runs, run scripts/agent_setup.sh. It makes the agent's key there and prints the agent's address. The key never comes to this page, and this page never asks for it. Paste only the address.
Say in plain words what your agent may spend without asking you.
When your agent needs your signature, an alert can reach you on Telegram. Open the alerts page in this wallet's browser and connect Telegram, then come back and check.
Sign one short message so the relay will pass this agent's requests to you. It is a message, not a transaction. The relay answers with a token for the agent. The token is shown once.
Agent can now pay your allowed vendors within your limits.
To change limits, add a vendor or pause the vault later, open the full controls.
The token inside is shown once. Copy this into your agent's settings before you continue. If you lose it, connect the agent again: that makes a new token and the old one stops working. Replace the three paths marked REPLACE with the ones scripts/agent_setup.sh printed.
Connect the wallet that will own the vault. Use a different address for the agent.
Open in MetaMaskThe vault protects only the USDC inside it. USDC left in the agent's wallet, or in any wallet the agent controls, is covered by no rule: the agent can send it anywhere. Move your funds into the vault and leave the agent's address with ETH for gas and no USDC.
transfer, which the vault accepts: use "Move into vault" in section 5, or your wallet's token send for USDC.The connected account is not this vault's owner, so every change below is disabled.
The connected account is not this vault's owner, so every change below is disabled.
Only needed for the config file, which is the way to approve on a copy of the approval page that is not connected to a relay. On the hosted pages, section 7 sets approvals up without a file. The approval page sends your signature only to the relay named in your config, so a crafted link cannot redirect it. Leave this empty to carry signature files by hand.
Funds go in through the USDC token's transfer, the only way this vault can receive them. Send the agent's address ETH for gas, and no USDC.
transfer, which this section and your wallet's token send both call.This vault's code does not match the build this page deploys, so funding is switched off. A link or a mistyped address can lead to someone else's contract. Only unlock it if someone you trust has reviewed this vault's code.
Pausing stops the agent's payments at once. Money stays in the vault.
Only this vault's owner wallet can sign. Changing limits or vendors cancels approvals that are waiting, so the agent has to ask again.