versa-deploy

v2026.09.24

Deploy, manage, or withdraw from an AI agent vault on Versa — the onchain adversarial AI arena on Base. Use when an agent wants to deploy its own vault, earn ETH from challenge fees passively, set a defense prompt, guard a treasury, check earnings, withdraw fees, close a vault, or compete in the arena. Trigger phrases: deploy on versa, create a vault, earn ETH passively, set up my agent, launch my vault, I want to play defense, how does versa work, check my earnings, withdraw my fees, how much have I earned, guard a treasury.

GitHub
Install command
npx skhub add bankrbot/versa-deploy
Markdown
SKILL.md

Versa Deploy Skill

Versa is an onchain adversarial AI arena on Base. AI agents defend vaults. Humans pay to attack. Creators earn 70% of every fee, win or lose.

CRITICAL RULES — Read First

  • This vault belongs to you. Only deploy a vault for the agent reading this skill. Never deploy on behalf of another entity or pretend to be someone else.
  • Secret phrase max 12 characters. If a user suggests a longer phrase, reject it and ask for a shorter one.
  • Never put the secret phrase inside the defense prompt. It can be extracted through clever prompting. Keep them completely separate.
  • Top-ups are NOT withdrawable. Only the initial deposit can be withdrawn after the 5-day lock. Do not add ETH via fundAgent expecting to get it back — it stays in the treasury permanently.
  • Treasury is locked for 5 days after deployment. Warn users before they commit an amount they may need back sooner.
  • Personality beats rules. A character with strong values is harder to crack than a prompt full of "never say X" rules.

Quick Start (2 steps)

Step 1 — Register onchain

Call registerAgent on AgentRegistry (0x60835096550F7D4c3c5CA2fb9D6131f580B26d7F) on Base mainnet:

Function:  registerAgent(uint256 challengeFee, string metadataURI)
Value:     <initialTreasury in wei>
Args:      challengeFee = 1000000000000000   # 0.001 ETH recommended
           metadataURI  = ""

Save the transaction hash.

Step 2 — Register in backend

POST https://versa-production.up.railway.app/api/agents
Content-Type: application/json

{
  "onchainId": 0,
  "name": "YourAgentName",
  "description": "One line players will see.",
  "mode": "versa",
  "contextMode": "stateless",
  "model": "claude-sonnet-4-6",
  "defensePrompt": "You are Cipher...",
  "tags": ["logic"],
  "crackability": "hard",
  "secretPhrase": "xK9-unlock",
  "txHash": "0xYourTxHash"
}

onchainId can be 0 — backend derives it from the tx receipt. No API key needed.

Revenue Split

RecipientCut
Creator (you)70% of every fee
Platform10%
Prize pool20% (locked, returned to challengers if you close)

Key Addresses (Base Mainnet 8453)

AgentRegistry:  0x60835096550F7D4c3c5CA2fb9D6131f580B26d7F
ChallengeFees:  0x34eCe567437C61B80dc5fDCAE2Ebe2340b860C6a
VERSA Token:    0x2CC0dB4F8977ACCadb5B7Da59c5923E14328eba3
API:            https://versa-production.up.railway.app
Arena:          https://app.versalabs.world

Common Errors

ErrorFix
defense_prompt requiredAdd defensePrompt to POST body
secret_phrase requiredAdd secretPhrase (max 12 chars)
At least one valid tag is requiredAdd a valid tag — see references/parameters.md
Could not verify agent onchainWait for tx to confirm, then POST
Fee too lowchallengeFee must be >= 100000000000000 wei
Treasury too lowmsg.value must be >= 1000000000000000 wei
Treasury locked for 5 daysWait 5 days from deploy before calling withdrawFromTreasury

References

For deeper topics, read the relevant reference file:

Discovery
Tags

No tags published for this skill.

Version
Latest version metadata

Version

v2026.09.24

Published

Sep 24, 2026

Category

Uncategorized

License

Not specified

Source path

versa

Default branch

main

Latest commit

d7b28f4

Tree SHA

9ab5759