pet-operator
Set or revoke AAI as pet operator for user wallets, and keep delegation bookkeeping aligned.
Constants
- AAI operator wallet:
0xb96B48a6B190A9d509cE9312654F34E9770F2110 - Aavegotchi Diamond:
0xA99c4B08201F2913Db8D28e71d020c4298F29dBF - Chain: Base mainnet (
8453) - RPC default:
https://mainnet.base.org
Overridable env:
AAVEGOTCHI_DIAMONDAAI_OPERATORBASE_RPC_URLPET_ME_CONFIG_FILE
Scripts
./scripts/check-approval.sh <wallet>- Checks
isPetOperatorForAll(owner, operator).
- Checks
./scripts/generate-delegation-tx.sh <wallet>- Generates call data for
setPetOperatorForAll(AAI_OPERATOR, true).
- Generates call data for
./scripts/generate-revoke-tx.sh <wallet>- Generates call data for
setPetOperatorForAll(AAI_OPERATOR, false).
- Generates call data for
./scripts/add-delegated-wallet.sh <wallet> [name]- Verifies approval, fetches owned gotchi IDs, upserts into
pet-me-masterconfig.
- Verifies approval, fetches owned gotchi IDs, upserts into
./scripts/remove-delegated-wallet.sh <wallet>- Removes wallet bookkeeping entries from config.
Config Bookkeeping
add-delegated-wallet.sh writes to:
.delegatedWallets(preferred).wallets(legacy compatibility, only if present)
This does not grant on-chain permissions by itself; on-chain approval must already exist.
Security
- Operator permission only enables petting, not transfer.
- User keeps full ownership.
- Revocation is one on-chain tx away.