@shroud-fi/relayer
v0.1.3
Published
Gasless sweep client for ShroudFi. ERC-20 via Gelato 1Balance + EIP-2612 permit, native ETH via EIP-7702 delegated relayer.
Maintainers
Readme
@shroud-fi/relayer
Gasless sweep client for ShroudFi. ERC-20 via Gelato + EIP-2612 permit; ETH via EIP-7702.
npm i @shroud-fi/relayer viemWhat it does
@shroud-fi/relayer is the client side of a gasless sweep. A stealth address that holds USDC or ETH but no ETH for gas can still extract its funds — the relayer pays gas, the recipient pays a 1% fee.
- ERC-20 path: signs an EIP-2612
permit+ ERC-2771 metaTx, submits via Gelato 1Balance. The Gelato sponsor EOA broadcasts; the stealth EOA never needs ETH. - ETH path: signs an EIP-7702 authorization that delegates the stealth EOA's code to
ShroudFiEthRelayer, then callssweepETH(destination, fee)in a single tx.
The recipient pays a 1% fee at sweep time — taken inside the contract execution, not at send time, so the sender's graph stays clean.
Quick start
import { relayedSweepERC20 } from '@shroud-fi/relayer';
const receipt = await relayedSweepERC20({
transport,
stealthPrivateKey,
token: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913', // USDC Base
destination: '0xYourDestination',
relayerContract: '0x44f35ED32516AE8247aF5ec4ED5d5BEb501631d1', // ShroudFi mainnet
});
// receipt: { txHash, gasUsed, taskStatus } — no plaintext amount fieldExports
| Symbol | Purpose |
|---|---|
| relayedSweepERC20(args) | Gasless ERC-20 sweep via Gelato 1Balance. |
| relayedSweepETH(args) | Gasless ETH sweep via EIP-7702 delegated relayer. |
| RelayerSweepReceipt | Result type — no plaintext amount field by design. |
| StealthAddressEmptyError | Distinguishes "already swept" from wallet insufficiency. |
| RelayerInsufficientBalanceError | Despite the name, this means the stealth address is empty, not the relayer. |
Full API reference: shroudfi.live/sdk#relayer
Direct sweep escape hatch
@shroud-fi/payments provides sweepETH / sweepERC20 for the fee-free direct path. The relayer is opt-in — agents that already hold ETH can sweep without paying the 1%.
License
MIT — see LICENSE.
Part of the ShroudFi privacy SDK for AI agents on Base.
