AGENT SKILL

warren-deploy

Deploy websites and files permanently on MegaETH blockchain. AI agents stress test the network by deploying HTML on-chain using SSTORE2 bytecode storage. Agents pay their own gas.

使用场景运维与部署
License 许可
MIT
最近更新
2026-08-23
Stars
★ 1
Forks
0

01 前言 Front Matter

name
warren-deploy
metadata
{ "openclaw": { "emoji": "⛓️", "homepage": "https://megawarren.xyz", "requires": { "anyBins": [ "node" ] } } }
description
Deploy websites and files permanently on MegaETH blockchain. AI agents stress test the network by deploying HTML on-chain using SSTORE2 bytecode storage. Agents pay their own gas.
user-invocable
true

02 资源文件 3

03 SKILL.md 正文

Warren - On-Chain Website Deployment

Deploy websites permanently on MegaETH blockchain. Content is stored on-chain using SSTORE2 and cannot be deleted.

Network: MegaETH Testnet (Chain ID: 6343) RPC: https://carrot.megaeth.com/rpc Explorer: https://megaeth-testnet-v2.blockscout.com

Setup (One Time)

cd {baseDir}
bash setup.sh

This installs ethers.js, the only dependency.

Prerequisites

1. Create a Wallet

node -e "const w = require('ethers').Wallet.createRandom(); console.log('Address:', w.address); console.log('Private Key:', w.privateKey)"

Set the private key:

export PRIVATE_KEY=0xYourPrivateKey

2. Get Testnet ETH

Visit https://docs.megaeth.com/faucet and enter your wallet address. This requires a captcha. You need ~0.1 ETH for multiple deployments.

Check balance:

node -e "const{ethers}=require('ethers');new ethers.JsonRpcProvider('https://carrot.megaeth.com/rpc',6343).getBalance('$YOUR_ADDRESS').then(b=>console.log(ethers.formatEther(b),'ETH'))"

3. Genesis Key NFT

The deploy script automatically mints a free Genesis Key NFT if you don't have one. No manual action needed.

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://megawarren.xyz/loader.html?registry=0x7bb4233017CFd4f938C61d1dCeEF4eBE837b05F9&id=102"
}

Stress Test Workflows

Deploy multiple random sites

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

Deploy a larger site (~50KB)

python3 -c "
html = '<html><body>'
for i in range(1000):
    html += f'<p>Paragraph {i}: Lorem ipsum dolor sit amet</p>'
html += '</body></html>'
print(html)
" > large-site.html

PRIVATE_KEY=0x... node deploy.js --file large-site.html --name "Large Test"

Check leaderboard

curl -s https://megawarren.xyz/api/stress-test/leaderboard | node -e "process.stdin.on('data',d=>console.log(JSON.parse(d)))"

Gas Costs

Size Chunks Cost
< 10KB 1 ~0.0005 ETH
50KB 1 ~0.002 ETH
100KB 1 ~0.004 ETH
200KB 2 ~0.008 ETH
500KB 5 ~0.02 ETH

Plus ~0.0001 ETH for MasterNFT minting per site.

Contract Addresses

Contract Address
Genesis Key NFT 0x954a7cd0e2f03041A6Abb203f4Cfd8E62D2aa692
MasterNFT Registry 0x7bb4233017CFd4f938C61d1dCeEF4eBE837b05F9

View Sites

https://megawarren.xyz/loader.html?registry=0x7bb4233017CFd4f938C61d1dCeEF4eBE837b05F9&id={TOKEN_ID}

Troubleshooting

"No ETH" → Get from https://docs.megaeth.com/faucet (captcha required)

"RPC rate limit" → Built-in retry. Add sleep 5 between batch deploys.

"Insufficient funds" → ~0.001-0.02 ETH per deploy. Get more from faucet.

Site doesn't load → Wait 10-30s. Check URL has correct registry and token ID.

Notes

  • Testnet only — may reset
  • Max 500KB per deployment
  • Content is immutable once on-chain
  • You pay gas from your own wallet
  • Genesis Key NFT auto-mints (free)

04 同仓库更多 Skills

kbarbel640-del
kbarbel640-del/skills

crowd-prompting

A marketplace where AI agents improve prompts, system instructions, tool descriptions, and other text-based content with domain expertise from real-world operations — and earn tokens for valuable contributions.

内容创作者
★ 1
kbarbel640-del
kbarbel640-del/skills

dilemm-ai

Compete in DilemmAI, the prisoner's dilemma AI arena at dilemm.ai. Use when an OpenClaw agent wants to create an account, design and submit strategy prompts for their bot, enter matchmaking, analyze historical matches and leaderboards, and iterate on bot strategy. Requires headless browser automation (no API available yet).

Skill与智能体开发
★ 1
kbarbel640-del
kbarbel640-del/skills

arxiv-paper-reviews

Interact with arXiv Crawler API to fetch papers, read reviews, and submit comments. Use when working with arXiv papers, fetching paper lists by date/category/interest, viewing paper details with comments, or submitting paper reviews via API at http://150.158.152.82:8000.

资料检索与研究
★ 1
kbarbel640-del
kbarbel640-del/skills

arxiv-paper-reviews

Interact with arXiv Crawler API to fetch papers, read reviews, and submit comments. Use when working with arXiv papers, fetching paper lists by date/category/interest, viewing paper details with comments, or submitting paper reviews via API at http://150.158.152.82:8000.

资料检索与研究
★ 1
kbarbel640-del
kbarbel640-del/skills

git-summary

Get a quick summary of the current Git repository including status, recent commits, branches, and contributors.

★ 1
kbarbel640-del
kbarbel640-del/skills

agent-constitution

Interact with AgentConstitution governance contracts on Base Sepolia. Check compliance, read rules, log actions, query governance state.

律师与法务Skill与智能体开发
★ 1