What is HourGlass
Bounded on-chain authority for Safe — sign once, capped on-chain, non-custodial, revocable.
HourGlass turns a standing authorization into a single signature. A Safe signs one EIP-712 delegation that lets someone else — a payee, or an autonomous agent — take a bounded action on its behalf. The bound is enforced on-chain by MetaMask's audited Delegation Framework; HourGlass adds no custom on-chain logic.
It started as recurring payments and now covers three rails: payments, agent-run DeFi strategies, and an Aqua liquidity integration.
The guarantees
- Sign once. No monthly re-signing. The signers approve the agreement a single time.
- Capped on-chain. The amount and cadence are enforced by a caveat, not by a backend. The receiver can never pull more than the signed terms allow.
- Non-custodial. Funds stay in the payer's Safe until the moment of charge. HourGlass never takes custody.
- Revocable. The payer can cancel any agreement on-chain at any time.
- Auditable. The human-readable agreement is pinned to IPFS, and its hash is the delegation salt — so the signature is bound to the exact terms.
- Discoverable, not dependent. Signed delegations are recorded on the Intuition graph so the receiver can find them — but that index is a convenience: if it's down, both sides still create, sign, and charge exactly as before.
These guarantees describe the delegation rails — payments and Agent DeFi. The Aqua tab is a different mechanism and is called out separately below.
Payments: two shapes, one model
Both payment shapes are built on the same delegation primitive:
| Subscription | Stream | |
|---|---|---|
| Caveat | erc20PeriodTransfer | erc20Streaming |
| Allowance | a cap per period that resets each period | a balance that accrues linearly over time |
| Charge model | receiver pulls up to the cap, once per period | receiver claims the accrued balance anytime |
| Best for | fixed recurring bills (memberships, retainers) | payroll, vesting, continuous pay |
Start with Delegation for the shared model, then read Subscriptions or Streams.
Agent DeFi: the same model, aimed at a market action
The Agent DeFi rail uses the identical primitive, but the delegate is an autonomous agent and the authorized action is a market operation rather than a transfer:
| What it does | Bound on-chain by | |
|---|---|---|
| Provide liquidity | opens a Uniswap v3 position, optionally compounding its fees | the exact calldata, single-use, agent-locked, one-hour window |
| Buy the dip | fills one swap when the market hits your trigger price | a max spend, a minimum received, and a single fill |
The agent holds nothing but gas, and every action runs as the Safe. See Running an agent — including what the hosted option means for custody.
Aqua: not a delegation
The Aqua tab provides liquidity to 1inch's shared liquidity layer without moving funds out of the Safe. It is worth knowing that it works differently from everything above: there is no delegation and no caveat, and exposure is bounded by an ordinary ERC-20 allowance instead. It is also Base only, and not tradable until the 1inch API submission (which requires KYB) is in place.