← Selected work
SELECTED WORK / 04

Delegatable.

Early Solidity contributions to the foundations of MetaMask’s Delegation Framework.

Ethereum · DelegationEthereum · Delegation / 04
MY INVOLVEMENT

Early core contributor · No. 2 by repository contributions

FOCUS

Delegated permissions · Solidity · Smart wallets

The work.

Delegatable began with an idea from Dan Finlay, MetaMask’s co-founder: let people share specific capabilities from an account without handing over the account itself. I dug into the original Solidity codebase, learned the model, and became its second-largest contributor after Dan.

My work was on the early delegatable-sol framework, a predecessor to MetaMask’s later Delegation Framework and smart wallet work. It was an opportunity to help develop the foundations of a different interaction model for Ethereum: permissions that can be shared, constrained, and revoked.

A CLOSER LOOK

Making permissions programmable.

Delegatable lets a contract recognize authority delegated by another account. A delegation can carry conditions, called caveats, that limit how it is used. That makes it possible to grant a narrow capability to an app or another person while retaining control of the underlying account.

Contributing to the early implementation.

My contributions to the original repository included Solidity development, test coverage, development workflows, and deployment work. The public history records that work in 2022, including the initial beta, a test-coverage update, and Goerli deployments.

A foundation for what followed.

The ideas explored in Delegatable carried forward into MetaMask’s Delegation Framework, which combines delegated permissions with smart accounts. My contribution belongs to that early chapter: helping build and test the original framework before the later MetaMask implementation.