
Ayush Bherwani é Gerente Sênior de Relações com Desenvolvedores na MetaMask.
Ler todos os artigosConceda aos dapps acesso limitado e temporário para executar em nome dos usuários sem assinaturas extras, carteiras separadas ou concessões de custódia.

Nossas recém-lançadas Advanced Permissions—desenvolvidas sobre o ERC-7715 e parte do MetaMask Smart Accounts Kit—permitem que os usuários aprovem exatamente o que um dapp pode fazer em uma única interação. Seu dapp executa dentro desse escopo por meio de uma conta de sessão. A carteira do usuário permanece sob o controle dele.
Assinaturas, DCA, agentes de IA, vesting, auto-compounding: se você estava esperando uma forma padronizada de construir essas funcionalidades sem precisar juntar gambiarras, chegou a hora.
As carteiras de criptomoedas historicamente seguiam um modelo de interação simples, em que cada transação exigia uma assinatura explícita do usuário. Isso significava pop-ups repetitivos, alternância entre app e carteira, e fadiga de aprovação. Com o tempo, os usuários passaram a aprovar solicitações por hábito, sem lê-las — o oposto do consentimento informado.
Também não havia uma forma padronizada para um dapp solicitar permissões com escopo definido de uma carteira. Sem isso, categorias inteiras de produtos — assinaturas, agentes de IA, acesso por tempo limitado — continuavam difíceis ou impossíveis de construir bem.
As carteiras embutidas resolveram parte dessa fricção, mas introduziram uma troca diferente. Os usuários acabavam com saldos separados por dapp, gerenciando ativos em múltiplos endereços. A experiência se tornou mais fragmentada.
As Advanced Permissions adotam uma abordagem diferente: uma carteira, acesso com escopo definido.
As Advanced Permissions permitem que os usuários concedam a um dapp a capacidade de realizar ações específicas e limitadas em seu nome, sem abrir mão do acesso completo à carteira ou assinar cada transação.
Veja como funciona no nível do protocolo:
Seu dapp chama wallet_requestExecutionPermissions, solicitando uma permissão com escopo definido da carteira MetaMask do usuário.
O MetaMask exibe uma tela de aprovação legível por humanos, mostrando exatamente o que está sendo solicitado: o ativo, o valor, a duração e quaisquer restrições.
O usuário revisa, opcionalmente ajusta os parâmetros (se sua solicitação permitir) e aprova.
Seu dapp executa dentro do escopo concedido por meio de uma conta de sessão — uma conta criada especificamente para esse fim (EOA ou smart account) que seu dapp cria e controla. A conta de sessão nunca mantém fundos do usuário. Ela resgata permissões por meio de delegação ERC-7710, executando transações diretamente da conta MetaMask do usuário dentro dos limites definidos.
Por exemplo, um usuário pode configurar uma estratégia de DCA para que um agente de IA gaste até 10 USDC por dia para comprar ETH durante 30 dias. Em vez de assinar cada transação diariamente, o usuário aprova uma única permissão com escopo definido pelo MetaMask.
A interface descreve claramente os termos, o ativo, o valor e a duração antes da aprovação. Uma vez concedida, a aplicação pode executar transações em nome dos usuários dentro dos limites definidos.

O ERC-7715 define as especificações e os padrões para as permissões que devem ser solicitadas e as regras que devem ser aplicadas a essas permissões.
O Smart Accounts Kit expande isso com quatro tipos de permissão no nível de implementação:
Categoria | Tipos de permissão | O que faz | Exemplos de uso |
Periódica | erc20-token-periodic, native-token-periodic | Limite por período para transferências de tokens; reinicia a cada período | Assinaturas, estratégias de DCA, orçamentos recorrentes de gas |
Streaming | erc20-token-stream, native-token-stream | Limite de streaming linear com início, taxa e teto configuráveis | Vesting, pagamentos contínuos, desbloqueios graduais |
Revogação | erc20-revocation | Permite que um dapp revogue aprovações de tokens ERC-20 em nome do usuário | Limpeza de aprovações antigas ou arriscadas |
Cada tipo de permissão aceita parâmetros respectivos com expiração, uma justificativa de permissão legível por humanos e isAdjustmentAllowed. Consulte a referência de Advanced Permissions para o schema completo.
As Advanced Permissions mudam o modelo de aprovações repetidas para execução baseada em intenção: um usuário define permissões com escopo uma vez, e as ações são realizadas dentro desse escopo ao longo do tempo.
Fluxos automatizados e recorrentes: Assinaturas, estratégias de DCA e auto-compounding podem ser executados após uma aprovação única. Mapeie-os para permissões erc20-token-periodic ou native-token-periodic com um periodDuration que corresponda ao seu ciclo de cobrança ou execução.
Execução baseada em agentes: Agentes de IA podem negociar, rebalancear ou realizar ações dentro dos limites definidos pelo usuário. O agente controla a chave da conta de sessão e executa por meio da delegação — a carteira principal do usuário nunca é exposta, e o agente só pode operar dentro do escopo concedido. Sem necessidade de financiar uma carteira separada.
Acesso por tempo limitado: As permissões aceitam parâmetros startTime e expiry, suportando casos de uso como cronogramas de vesting, execuções agendadas ou ações em jogos durante a sessão. Combine com permissões de streaming para liberações graduais de tokens.
As Advanced Permissions são aplicadas onchain por meio dos Smart Contracts do Smart Accounts Kit. Veja o que isso significa na prática:
Escopo por design: Cada permissão define exatamente o que a conta de sessão pode acessar: ativo, valor, janela de tempo e tipo de transferência. Os caveat enforcers do Delegation Framework rejeitam qualquer execução que esteja fora do escopo.
Aprovação legível por humanos: O MetaMask exibe uma interface de confirmação detalhada mostrando todos os parâmetros da permissão antes que o usuário conceda qualquer coisa.
Ajustável pelo usuário: Se sua solicitação de permissão definir isAdjustmentAllowed: true, os usuários podem modificar os parâmetros (por exemplo, reduzir o valor ou encurtar a duração) antes de aprovar.
Revogável: Os usuários podem revogar qualquer permissão ativa a qualquer momento pela opção de conexões de Dapp do MetaMask.
Contas de sessão não mantêm fundos: A execução ocorre por meio do resgate de delegação da Smart Account do usuário. A conta de sessão é uma chave de assinatura, não um ponto de custódia.
Documentação para desenvolvedores de Advanced Permissions: Saiba como o ERC-7715 e o ERC-7710 funcionam juntos e como as Advanced Permissions se comparam às delegações regulares.
Realizar execuções em nome de um usuário do MetaMask: Configure uma conta de sessão, solicite permissões e resgate-as.
Extensão de Advanced Permissions (ERC-7715) para Scaffold-ETH 2: Explore um projeto inicial pronto para uso com um exemplo funcional.
Especificação do ERC-7715: Leia a proposta completa para wallet_requestExecutionPermissions.
Traduzido por IA. Pode conter erros. Por favor, verifique sempre as informações.