SkillJavaScriptv1.0.6

warren-deploy-mainnet

Deploy websites and files permanently on MegaETH mainnet using SSTORE2.

355 downloads
planetai87
Updated Feb 20, 2026

Warren - On-Chain Website Deployment

Deploy websites and files permanently on MegaETH mainnet.

Network: MegaETH Mainnet (Chain ID: 4326) RPC: https://mainnet.megaeth.com/rpc Explorer: https://megaeth.blockscout.com

Setup (One Time)

cd {baseDir}
bash setup.sh

Contract Addresses (Mainnet)

ContractAddress
Genesis Key NFT (0xRabbitNeo)0x0d7BB250fc06f0073F0882E3Bf56728A948C5a88
0xRabbit.agent Key NFT0x3f0CAbd6AB0a318f67aAA7af5F774750ec2461f2
MasterNFT Registry0xf299F428Efe1907618360F3c6D16dF0F2Bf8ceFC

Prerequisites

1. Wallet + MegaETH ETH

You need a wallet with real ETH on MegaETH mainnet for gas fees.

  • Bridge ETH from Ethereum via the official MegaETH bridge.
  • Approximate cost: ~0.001 ETH per site deploy.

Set your private key:

export PRIVATE_KEY=0xYourPrivateKey

2. Genesis Access Requirement

The deploy script checks access in this order:

  1. Human Genesis Key (0xRabbitNeo) ownership
  2. 0xRabbit.agent Key ownership
  3. If missing, auto-mint 0xRabbit.agent Key (free)

Default RABBIT_AGENT_ADDRESS: 0x3f0CAbd6AB0a318f67aAA7af5F774750ec2461f2 (override via env). If you override or unset it, mint a human key manually at:

Environment Variables

VariableRequiredDefaultPurpose
PRIVATE_KEYYes—Wallet private key for signing transactions
RPC_URLNohttps://mainnet.megaeth.com/rpcMegaETH RPC endpoint
CHAIN_IDNo4326MegaETH mainnet chain ID
GENESIS_KEY_ADDRESSNo0x0d7B...5a88Genesis Key NFT contract
RABBIT_AGENT_ADDRESSNo0x3f0C...61f20xRabbit.agent NFT contract
MASTER_NFT_ADDRESSNo0xf299...eFCMasterNFT registry contract
CHUNK_SIZENo15000Bytes per chunk (15KB)
GROUP_SIZENo500Max addresses per tree node

Deploy

Deploy HTML string

cd {baseDir}
PRIVATE_KEY=0x... node deploy.js \
  --html "<html><body><h1>Hello Warren!</h1></body></html>" \
  --name "My First Site"

Deploy HTML file

PRIVATE_KEY=0x... node deploy.js \
  --file ./my-site.html \
  --name "My Website"

Deploy via stdin

echo "<h1>Hello</h1>" | PRIVATE_KEY=0x... node deploy.js --name "Piped"

CLI Options

--private-key <key>   Wallet private key (or PRIVATE_KEY env)
--html <string>       HTML content to deploy
--file <path>         Path to file to deploy
--name <name>         Site name (default: "Untitled")
--type <type>         file|image|video|audio|script (default: "file")

Output

{
  "tokenId": 102,
  "rootChunk": "0x019E5E...",
  "depth": 0,
  "url": "https://thewarren.app/v/site=102"
}

Example Workflows

Quick deploy loop

cd {baseDir}
for i in $(seq 1 5); do
  HTML="<html><body><h1>Site #$i</h1><p>$(date)</p></body></html>"
  PRIVATE_KEY=0x... node deploy.js --html "$HTML" --name "Site $i"
  sleep 2
done

Deploy a file

cd {baseDir}
PRIVATE_KEY=0x... node deploy.js --file ./my-site.html --name "Large Site"

View Sites

https://thewarren.app/v/site={TOKEN_ID}

Troubleshooting

"No ETH balance"

  • Bridge ETH to MegaETH mainnet and retry.

"No Genesis Key found and RABBIT_AGENT_ADDRESS is not configured"

  • Set RABBIT_AGENT_ADDRESS=0x3f0CAbd6AB0a318f67aAA7af5F774750ec2461f2, or mint human Genesis Key at https://thewarren.app/mint.

"RPC rate limit"

  • The script retries automatically. Add sleep 5 between repeated deployments.

Site does not load immediately

  • Wait 10-30 seconds and retry the viewer URL.

Notes

  • Mainnet content is permanent and immutable.
  • Max 500KB per deployment.
  • Default chunk size is 15KB (CHUNK_SIZE=15000).
  • You pay gas from your own wallet.

Security & Privacy

  • No data exfiltration: Content is sent only as blockchain transactions to the configured RPC endpoint. No intermediary servers.
  • PRIVATE_KEY handling: Used solely to sign transactions. Never logged, stored on disk, or transmitted to third parties.
  • Network endpoints: Only the configured RPC_URL (default: mainnet.megaeth.com/rpc). No other outbound connections.
  • File access: Reads only the single file specified by --file. No directory scanning or glob expansion.
  • No telemetry: No analytics, tracking, or usage reporting.
Free
Installation
Reviews

Sign in to leave a review.

No reviews yet. Be the first.