Skip to content
DocsHolder guide

Own a Chog

Holder guide

Every step a holder takes on their Chog's page, from Log in to an AI trading real $CHOG, and how to withdraw.

Everything a holder does happens on the Chog's own page. Open /chog/<token id> and log in with the wallet that holds the Chog. The section Let it trade real $CHOG is a six-step stepper: it reads the chain, shows the next step, and every step is one transaction or one free signature from that wallet. Nothing needs an explorer. This page follows the stepper in the order the app does, then covers the live panel, withdrawing and the questions holders ask.

Log in and connect the holder's wallet

Log in in the header opens Privy: a browser or external wallet, an email code, Google, X or Discord. A login without a wallet gets an embedded one. The holder steps need the wallet that holds the Chog, so connect or link that one: every action is checked against ownerOf, and the stepper says “You hold this Chog” when the connected wallet is the holder, or “Read-only” when it isn't.

  • The wallet must be on Monad mainnet (chain 143); the page offers the switch if it isn't.
  • Transactions need a little MON for gas. Signatures are free.
  • A self-hosted Animr without Privy configured shows a plain browser-wallet menu instead.

The six steps, as the page shows them

  1. Create the Chog's wallet

    One transaction: registry.createAccount and AccountProxy.initialize through Multicall3. The button is Create the wallet, or Finish wallet setup for an account that exists but was never initialized. Tokens sent to the address earlier are already there. Details: Your Chog's wallet.

  2. Let the guard trade

    One transaction, Authorize the guard: setPermissions([guard], [true]) on the wallet, so AnimrTradeGuard (never the AI's key) may execute for it. Send it from the holder's wallet directly; a permission set through a relayer or a batch contract doesn't count. The page re-reads the chain before it calls the step done.

  3. Set your limits

    One transaction, guard.configure. The form starts from the app default, 10% per trade · 30% of the vault per day · 10 min apart · ≤2% slippage, with the presets Cautious, Balanced, Bold; the contract's ceilings are on AnimrTradeGuard. Each later change is one transaction. The House Chog's page adds an optional buy-only lock row (setBuyOnly), which stays off.

  4. Fund the vault

    The guard trades $CHOG and WMON, so the vault needs one of them, and both to trade both ways. Three ways in, all from the holder's wallet:

    • Deposit: $CHOG or WMON, one ERC-20 transfer to the Chog's wallet. The token the vault still lacks is preselected.
    • Only have MON? Wrap & deposit: two transactions, WMON's deposit() (1:1) and then the transfer. Max keeps 0.1 MON for gas. If the second one is cancelled, the WMON stays in your wallet and Deposit can send it.
    • MON already in the vault can be wrapped in place: one transaction through the wallet's own execute(); nothing leaves the wallet.

    The step is done as soon as the vault holds either token (a buy-only vault needs WMON).

  5. Wake the AI

    One free signature (a message, not a transaction). The AI starts in paper mode on the vault's real balances: live prices, simulated fills, no tokens move. You can do this before the vault is ready; the row counts as done whenever the agent is active. Details: Claim its AI.

  6. Switch the AI to on-chain

    One free signature, Sign & go on-chain. From its next scheduled decision its trades execute as real swaps in this wallet, through the guard and within your limits, and its PnL restarts from the vault's value at the switch. The server refuses the switch until the guard setup is ready.

The finished Fund row

Once the vault holds something, the Fund row shows its balances and reopens on demand. Its button reads Add WMON or Add $CHOG while only one token is in, else Deposit or withdraw. With one token the AI trades one way, and the row says so:

  • “With $CHOG alone it can sell but not buy: add WMON to trade both ways.”
  • “With WMON alone it can buy but has nothing to sell: add $CHOG to trade both ways.”

The switch to on-chain repeats the warning. A buy-only vault only ever spends WMON, so it isn't nudged for $CHOG.

Live

With everything in place the chip reads Live · real $CHOG. The live panel names the AI that trades, shows the limits in one line and the vault's $CHOG and WMON, and gives the holder three buttons:

Live panel
ButtonWhat it doesCosts
Edit limitsA new guard.configure with the changed limitsOne transaction
Deposit or withdrawOpens the same Deposit, Wrap & deposit and Withdraw forms as the Fund stepOne or two transactions per action
Back to paper tradingSigns the paper-mode message; the AI keeps thinking, fills are simulated againFree signature

Below it, Stop the AI: Disable trading (guard.disable, keeps the guard's permission; save limits again to resume) or Revoke the guard (setPermissions([guard], [false])). Either takes effect from the next block, and your tokens stay where they are. If Animr pauses the guard, the chip reads Paused by Animr: your settings are kept, and the pause can never move funds.

Withdraw to your wallet

Only the holder can take tokens out, and only through the wallet itself. The Withdraw to your wallet form sits under Deposit or withdraw, in the Fund step and in the live panel, once the vault holds $CHOG or WMON. Pick the token, type the amount (or Max), and the page sends one transaction: the Chog wallet's own execute(token, 0, transfer(you, amount), CALL), which Tokenbound accepts from the Chog's current holder alone. The page re-reads the vault's balances before it reports success.

  • AnimrTradeGuard has no withdraw function, so the AI and the guard never can. See AnimrTradeGuard.
  • The form moves $CHOG and WMON. Native MON in the vault isn't traded; wrap it in place first if the AI should use it.
  • Withdrawing while the AI is on-chain is fine: its next decision sees the new balances, and the engine rebases its PnL when the vault moves outside trading rather than counting it as a trade.

When it thinks

When an agent thinks
ModeDecidesThink now
PaperEvery hour on the agent tick, once at the 15:00 UTC Bell, and on demandYes: once every 15 minutes per Chog, under a global daily cap
On-chainEvery hour on the agent tick and once at the BellNo, the button answers 403: a public button must never choose when an AI sends a real trade

On production the tick is an external pulse at minute 30 of every hour, and real trades are sent only from the production deployment. Details, including the House Chog's mandate: Claim its AI.

What each step costs

Transactions and signatures
StepWhat you confirmGas
Create the Chog's wallet1 transaction (Multicall3)Yes
Let the guard trade1 transaction (setPermissions)Yes
Set your limits1 transaction (configure), and 1 per later changeYes
Fund the vault1 transaction per deposit; 2 for Wrap & depositYes
Wake the AI1 signed messageNo
Switch the AI to on-chain, or back to paper1 signed messageNo
Withdraw, Disable, Revoke1 transaction eachYes
The AI's decisionsNothing: Animr pays the 0G calls, and the operator key pays the gas of guard.trade()No

Holder FAQ

How do I withdraw? Under Deposit or withdraw, with the Withdraw to your wallet form above: one transaction through the wallet's own execute(), holder only. The guard can't do it for you, and neither can the AI.

Why did the Fund step advance before I added WMON? The step is done as soon as the vault holds either token, because the AI can already trade one way (a buy-only vault needs WMON). The finished row says which token is missing and reopens with Add WMON or Add $CHOG, and the on-chain switch repeats the warning.

Why can't I press Think now on an on-chain agent? An AI that sends real trades decides only on its schedule, the hourly tick and the Daily Bell, and the button answers 403 for it. Switch back to paper trading if you want on-demand runs.

Do I need to accept anything on the explorer? No. Every holder step is a transaction or a signature from the Chog's page. The only explorer steps were the team's, accepting the two-step ownership handovers of its own contracts (AnimrTrophies, and the guard's admin role).

Can I stop it? Yes, at any time: Back to paper trading (free), Disable trading or Revoke the guard (one transaction each). Selling the Chog also makes your guard settings dormant.

What happens when I sell? The buyer gets the wallet and everything in it; your grant, limits and buy-only mode go dormant, and the buyer signs to take over the AI. See Trust model and FAQ.