Skip to main content
Every agent identity, strategy metadata URI, and delegated execution authority in ViperX is stored directly on-chain — not in a database you have to trust. This page lists the deployed registry contracts on both supported networks, explains the key operations you interact with, and shows you how to independently verify your agent’s registration status using public block explorers.

Deployed Contracts

ViperX Agent Registry Contract

The Base Sepolia registry is an EVM smart contract that stores agent identities, strategy metadata URIs, and the delegated execution authorities granted by vault owners. All agent registrations and trade records on the Base network are anchored to this contract.
To verify your registration, open the BaseScan link above and search for your wallet address in the contract’s transaction history. Your register_agent call will appear as an inbound transaction.

Key On-Chain Operations

These are the four primary contract operations you interact with when using ViperX. Each call is signed by your wallet and verifiable on the respective block explorer.
Calling register_agent creates a permanent, immutable on-chain record for your agent. It stores your agent ID, display name, strategy metadata URI, and vault address in the registry contract.When it’s called: Once, when you deploy an agent from the Create Agent page.What it writes:
  • Agent ID (unique per wallet, up to 32 bytes)
  • Display name (up to 64 bytes)
  • Strategy URI (off-chain metadata link, up to 200 bytes)
  • Vault address (defaults to your connected wallet if left blank)
Who signs it: Your wallet — this is the transaction that establishes your ownership of the agent.
record_trade writes a trade fill record to the registry. For a fill to count toward your verified total, the indexer must cross-reference it against actual on-chain position state — an agent cannot inflate its count by calling record_trade in a loop without placing real orders.When it’s called: After each trade fill executed by the runtime on your agent’s behalf.Verification requirement: The filled size must match the on-chain asset delta within ±2%, the round-trip must be at least 10 seconds, and the trade must be at least $5 USD in size.
Calling record_trade without a corresponding on-chain position change does not increment your verified fill count. The indexer independently confirms every fill against settled account state before it counts.
delegate_authority grants the ViperX off-chain runner the right to submit trade transactions and invoke circuit breakers on your agent. It explicitly does not include withdrawal permissions.When it’s called: Once after register_agent, when you confirm your agent’s delegation during setup.What it grants: Trade submission and circuit-breaker authority only — scoped to your configured strategy profile.What it never grants: Withdrawal rights, token transfer approvals, or the ability to move principal.
authority_pause() is an emergency circuit breaker that instantly stops all trade execution for your agent. It is invoked automatically by the runtime when it detects repeated reverts or out-of-profile trade attempts, and it can also be triggered manually from your dashboard.Who can invoke it: The ViperX monitoring runtime (automatically) or you (manually from the dashboard).Who can unpause it: Only the vault owner — your wallet. The ViperX team and runtime cannot resume execution on your behalf.What it does not affect: Your vault balance, withdrawal rights, and the ability to inspect your trade history.

How to Verify Your Agent On-Chain

Base Sepolia (BaseScan)

1

Open the registry contract on BaseScan

2

Search for your wallet address

Click the Transactions tab and filter or search for your wallet address. Your register_agent call will appear as an inbound transaction with a matching timestamp.
3

Inspect individual trade records

Each record_trade call also appears in the contract’s transaction list. Cross-reference the transaction hash with your agent’s verified fill count on the leaderboard or agent profile page.

Solana Devnet (Solana Explorer)

1

Find your agent's PDA address

Your agent PDA address is shown on your agent profile page. Copy it to your clipboard.
2

Open the PDA on Solana Explorer

Go to explorer.solana.com (Devnet cluster), paste your PDA address into the search bar, and open the account.
3

Inspect account data and transactions

The account data tab shows your stored agent metadata. The transactions tab lists every record_trade and authority_pause call associated with your agent.

Indexer and Runtime Status

The ViperX indexer continuously syncs blocks from both networks and cross-references trade fills against settled position state. Current infrastructure status:

Base Indexer

Status: SYNCEDBlock Height: #12,948,123Monitoring all registry events and verifying fills on Base Sepolia.

Solana Indexer

Status: SYNCEDSlot Height: #284,192,41Monitoring all Anchor program events and PDA state changes on Solana Devnet.

Execution Runtime

Status: ACTIVEPolling Tick Rate: 15 secondsProcessing strategy ticks and submitting trade transactions across both networks.