zerodust — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited zerodust (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
ZeroDust sweeps 100% of native gas tokens from EVM chains, leaving exactly zero balance. It uses EIP-7702 sponsored execution so users never pay gas directly.
The user never pays gas. ZeroDust's sponsor pays gas and is reimbursed from the swept amount.
Choose based on your context:
| Approach | Best For | Requires |
|---|---|---|
| SDK (TypeScript) | Apps, agents with private keys | npm install @zerodust/sdk |
| REST API | Any language, server-side | HTTP client |
| MCP Server | AI agents via Model Context Protocol | MCP-compatible client |
import { ZeroDustAgent } from '@zerodust/sdk';
import { privateKeyToAccount } from 'viem/accounts';
const agent = new ZeroDustAgent({
account: privateKeyToAccount('0x...'),
environment: 'mainnet',
});
// Check what can be swept
const balances = await agent.getSweepableBalances();
// Sweep one chain (Arbitrum -> Base)
const result = await agent.sweep({
fromChainId: 42161,
toChainId: 8453,
destination: '0x...',
});
// Or sweep ALL chains to Base
const results = await agent.sweepAll({ toChainId: 8453 });# 1. Check balances
curl https://api.zerodust.xyz/balances/0xYOUR_ADDRESS?testnet=false
# 2. Get quote
curl "https://api.zerodust.xyz/quote?fromChainId=42161&toChainId=8453&userAddress=0x...&destination=0x..."
# 3. Get signing data
curl -X POST https://api.zerodust.xyz/authorization \
-H "Content-Type: application/json" \
-d '{"quoteId": "uuid-from-step-2"}'
# 4. Submit signed sweep
curl -X POST https://api.zerodust.xyz/sweep \
-H "Content-Type: application/json" \
-d '{
"quoteId": "...",
"signature": "0x...",
"eip7702Authorization": {...},
"revokeAuthorization": {...}
}'
# 5. Check status
curl https://api.zerodust.xyz/sweep/SWEEP_IDZeroDust exposes an MCP server at https://api.zerodust.xyz/mcp with these tools:
zerodust_get_chains - List all supported chainszerodust_get_balances - Check native token balances across all 25 chainszerodust_get_quote - Get a quote for sweepingzerodust_get_sweep_status - Check status of a submitted sweepzerodust_list_sweeps - List past sweeps for an addresszerodust_info - Service details, pricing, integration infoFor AI agents, there are dedicated endpoints that reduce round trips:
# Register for an API key
curl -X POST https://api.zerodust.xyz/agent/register \
-H "Content-Type: application/json" \
-d '{"name": "My Agent", "agentId": "agent-001"}'
# Returns: { "apiKey": "zd_..." }
# Single sweep (combines quote + auth data)
curl -X POST https://api.zerodust.xyz/agent/sweep \
-H "Authorization: Bearer zd_..." \
-H "Content-Type: application/json" \
-d '{
"fromChainId": 42161,
"toChainId": 8453,
"userAddress": "0x...",
"destination": "0x..."
}'
# Batch sweep (multiple chains at once)
curl -X POST https://api.zerodust.xyz/agent/batch-sweep \
-H "Authorization: Bearer zd_..." \
-H "Content-Type: application/json" \
-d '{
"sweeps": [
{"fromChainId": 42161},
{"fromChainId": 10},
{"fromChainId": 137}
],
"destination": "0x...",
"consolidateToChainId": 8453
}'| Chain | ID | Token | Chain | ID | Token |
|---|---|---|---|---|---|
| Ethereum | 1 | ETH | Arbitrum | 42161 | ETH |
| Optimism | 10 | ETH | Celo | 42220 | CELO |
| BSC | 56 | BNB | Ink | 57073 | ETH |
| Gnosis | 100 | xDAI | BOB | 60808 | ETH |
| Unichain | 130 | ETH | Berachain | 80094 | BERA |
| Polygon | 137 | POL | Scroll | 534352 | ETH |
| Sonic | 146 | S | Zora | 7777777 | ETH |
| X Layer | 196 | OKB | Sei | 1329 | SEI |
| Fraxtal | 252 | frxETH | Story | 1514 | IP |
| World Chain | 480 | ETH | Soneium | 1868 | ETH |
| Mantle | 5000 | MNT | Superseed | 5330 | ETH |
| Base | 8453 | ETH | Mode | 34443 | ETH |
| Plasma | 9745 | XPL |
All chains support cross-chain sweeps to any other chain via Gas.zip (650 routes).
| Balance | Fee |
|---|---|
| Under $1 | Free (no service fee) |
| $1 - $5 | $0.05 (minimum) |
| $5 - $50 | 1% of balance |
| Over $50 | $0.50 (maximum) |
Gas costs (~1-3%) are included and paid by ZeroDust's sponsor, reimbursed from the sweep.
For the complete API reference with all endpoints, request/response schemas, and error codes, see references/API.md.
For SDK usage patterns including the Agent module, see references/SDK.md.
Mainnet address (same on all 25 chains via CREATE2):
0x3732398281d0606aCB7EC1D490dFB0591BE4c4f2~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.