multisig.sh started as a much smaller tool. The first version did exactly one thing: rotate the signers on a Safe, on every chain that Safe lived on. The rotation took an afternoon to build. Collecting the signatures for it took the rest of the week, chain by chain, from the same four people. Somewhere in that week we realised the queue was the product, not the rotation.
This post is about how we want to use a Safe, and what we built so we could.
We also think far more people should be using one, and not only teams. A Safe on your own is the safe way to use DeFi today. One leaked key doesn't empty the account. The reason most people don't do it is that it has been a chore: every click in a dapp becomes a proposal, a second device, a wait. We wanted that chore gone.
Everything in one list
A Safe is a wallet with several owners, and most tools treat it as exactly that: open the Safe, look at its queue, sign, close it, open the next one. We don't want to open anything. We want everything that is waiting for us in one list, whatever Safe or chain it belongs to.
So that is the home screen. Sign in with your wallet, attach your Safes, and every pending proposal is one row that says which Safe, which network, and how many signatures are still missing.
We spent a silly amount of time making that list fast to clear, because we clear it every day. j and k move, Enter opens the review, and Sign all signs everything you have read in one pass. When something reaches its threshold you can execute it alone or together with other signed work on the same chain.
Work starts wherever it starts
Most treasury work starts as a sentence: pay this invoice, move idle funds, claim rewards. We want to say the sentence and get a draft back. Connect Claude Code, Codex or any MCP client to the workspace, ask in plain words, and the agent prepares the transaction as a draft.
A draft is all an agent can produce here. It cannot propose, sign or execute, and you can revoke its access at any time. We thought about this for a long time and we don't expect to change it. The person with the wallet decides.
Some work starts in a dapp, and this is the part we are proudest of. Supplying on Aave, adding collateral on Morpho, staking on Stake DAO: we want to do it the way everyone else does, by picking a wallet in the dapp. The Chrome extension shows up in that list. Pick a Safe, use the dapp as usual, and each transaction it sends is simulated for that Safe in a side panel, in order, so an approval is already in place when the supply that needs it runs. When you're done, one button sends the whole batch to your drafts. The extension holds no keys and signs nothing.
This is also what makes a Safe practical on your own. Build the whole position in the dapp, then sign one batch instead of every step.
And some work starts in another Safe app, because not everyone on a team switches at once. multisig.sh keeps Safe's Transaction Service in sync in both directions, so a proposal made elsewhere lands in your inbox and your signatures show up in their app. Nothing moves onchain when you switch. Owners, thresholds and assets stay in the Safe contracts where they are.
Read what you sign
We want to know what a transaction does before we sign it, in words, not in hex. Every review leads with that. Who gets what, from which Safe, on which network, at which nonce. Calls are decoded where the contract is known, including CoW orders and Enso routes, and a simulation shows what the balances look like afterwards. The raw calldata is one click away for the days you don't trust any of that, and you shouldn't have to.
Signing shouldn't need an account
Not every owner of a Safe wants an account anywhere, and we don't think they should need one. Send them a link. They open the exact review you saw, connect their own wallet, and sign.
If your team lives in Telegram, connect the group once. It hears about new proposals, missing signatures and executions for every Safe in the workspace, including the ones you attach later.
Nothing moves without a person
multisig.sh is not a wallet, and it never holds anything. It does not create Safes. It does not run anything in the background on your behalf: when nobody is looking at it, nothing happens. If you want a treasury that moves money while you sleep, this is the wrong tool, on purpose.
Getting started
multisig.sh is one plan, a workspace with unlimited members and up to ten Safes, and the first thirty days are free with no card. The details are on the pricing section. If you don't have a Safe yet, create one in Safe's app, then attach it here. It runs on eleven networks today, from Ethereum and Base to Gnosis and zkSync Era, and most of them got added because someone asked.
We built it for the Safes we run, and we use it every day. If something here is wrong for how you work, write to us at hello@multisig.sh. We read everything.