Alagael Launch app ↗

_ Deploy guide

Your wallet owns your vault. The existing public factory creates its dedicated inheritance contract without an admin key or upgrade path. Privacy Robe and Herald need no deployment at all.

THE DEADMANSWITCH CONTRACT IS NOT YET AUDITED · START WITH A SMALL AMOUNT

BEFORE YOU START
Your Ethereum walletConnect once in the app header. Create Vault creates its storage wallet and inheritance protection here; no external Safe setup is required.
ETH for gasThree setup approvals, then periodic check-ins. The existing Alagael factory is reused. Your wallet shows the fee before each approval.
The offline appSave alagael-app.html and open it from your disk for anything involving real secrets.
PATH A · VAULT → CREATE VAULTEVERYTHING IN THE APP
  1. 01Choose heir and periodEnter your heir's public Ethereum address and 1–365 inactive days. Accept the risk notice and choose Create and activate vault.
  2. 02Create vault walletApprove the first transaction. The app creates a Safe v1.4.1 storage wallet with your connected address as the sole owner.
  3. 03Create inheritance switchApprove the second transaction. The existing Alagael factory creates and initializes your dedicated timer contract.
  4. 04Activate protectionApprove the third transaction. Takeover permission, activity tracking and the first check-in happen together. The app verifies activation on-chain.
  5. 05Fund and check inCopy your vault address and send a small Ethereum-mainnet deposit. Use My Vault to check in before expiry. Incoming deposits do not reset the timer.

Rejected or interrupted? Reconnect the same wallet and use Resume setup. Never deposit until protection is verified. Existing multi-owner wallets, private-heir recovery and self-deployment remain advanced options. Open How to use Alagael in the app footer for the complete guide.

PATH B · FOUNDRY SCRIPTS

For people who prefer the terminal. Sign with a hardware wallet or keystore; never paste a private key into a command. Scripts are in contracts/script of the source package.

cd contracts && forge build && forge test     # 40 tests

# 1 · implementation + factory, once
forge script script/DeployFactory.s.sol --rpc-url mainnet --ledger --broadcast

# 2 · a switch for one Safe
FACTORY_ADDRESS=0x… SAFE_ADDRESS=0x… HEIR_ADDRESS=0x… DELAY_SECONDS=31536000 \
  forge script script/CreateSwitch.s.sol --rpc-url mainnet --ledger --broadcast

# 3 · wire it in (1-of-1 Safe, signed by the owner)
SAFE_ADDRESS=0x… SWITCH_ADDRESS=0x… \
  forge script script/WireSwitch.s.sol --rpc-url mainnet --ledger --broadcast
MONITOR IT YOURSELF
  • App: countdown, last activity, a "Tick before" date with 30 days of margin, module and guard status, code check.
  • Calendar: an .ics reminder from the offline app.
  • Script: read-only, for cron. Use your own node or Tor.
RPC_URL=https://your-node SAFE=0x… WARN_DAYS=30 node scripts/monitor.mjs

exit 0  ok
exit 2  Tick due within WARN_DAYS
exit 3  heir can take over now
exit 4  switch paused

# daily at 09:00
0 9 * * * RPC_URL=… SAFE=… node /path/monitor.mjs || notify-send "Alagael: Tick due"
WHEN THE TIME COMES · HEIR
1 · Find the keyOpen the Herald letter with the other Keepers. It holds the unlock key.
2 · UnlockVault → I'm an heir → paste it, sign with the same wallet. You get the heir address's private key.
3 · Take overImport the key, connect it, load the Safe, Take over the Safe. You become its only owner.