As rotinas do Claude Code conseguem vigiar minhas finanças?
(driggsby.com)- Os dados financeiros integrados via Plaid podem ser conectados como ferramentas MCP para lidar com saldos, transações, investimentos e empréstimos, além de automatizar verificações financeiras repetitivas com as Claude Code routines
- A automação anterior no navegador baseada em cron quebrava com frequência por causa de problemas de renderização, prompts de 2FA, erros que coletavam apenas parte das contas, mudanças no formato de e-mail e limitações de passkeys; para reduzir isso, foi criado o Driggsby
- O e-mail diário de resumo financeiro foi montado apenas com prompt, horário de execução e o Driggsby custom connector; como o conector do Gmail só conseguia criar rascunhos, foi adicionada a ferramenta
email_me()para resolver o envio real e estabilizar a formatação - Do mesmo jeito, também foram automatizadas a detecção de anomalias nas transações do Amex dos últimos 7 dias e a vigilância de grandes saídas acima de US$ 500 na checking account, configuradas para não enviar alerta quando tudo estiver normal
- Como a carga de configuração e depuração é baixa, foi possível até operar rotinas financeiras personalizadas separadas para cada cônjuge, criando uma base de automação que se expande rapidamente para monitoramento de investimentos, assinaturas e gastos
Ponto de partida da automação e estrutura do Driggsby
- Antes, tudo começou com uma rotina diária em cron rodando o Codex CLI e o Chrome DevTools MCP de forma não interativa para fazer login em bancos, cartões e contas de corretagem e aposentadoria, buscar saldos e transações recentes e enviar ao casal um e-mail diário com uma visão geral das finanças
- No primeiro dia, funcionou muito bem, mas no dia seguinte já voltava a quebrar
- Foram se acumulando problemas como falhas de renderização no navegador, prompts inesperados de 2FA, casos em que apenas algumas contas eram capturadas por confusão durante a execução, mudanças arbitrárias no formato do e-mail e a adição de contas que só aceitavam passkeys
- Para reduzir essa instabilidade, foi criado o Driggsby, que chegou ao formato atual após dois meses, 75k lines de código Rust e um contrato com a Plaid
- O Driggsby se conecta às contas financeiras com a Plaid e então expõe, via MCP, saldos, transações, informações de investimento e dados de empréstimos como ferramentas separadas
- No início, o uso era abrir o Claude quando necessário, fazer perguntas financeiras e receber as respostas pelo Driggsby; com o tempo, surgiram padrões de perguntas repetidas, como consultar patrimônio líquido, verificar saldos e transações e monitorar investimentos
O que as Routines mudaram
- As Claude Code routines, lançadas há poucos dias, facilitaram passar esse tipo de consulta repetitiva para o piloto automático
- O loop de agente rodando na nuvem em si não é novidade, mas o destaque das routines está em como a configuração é extremamente simples
- Não é preciso escrever código separado para o loop do agente nem decidir onde fazer o deploy
- Também não é necessário subir manualmente ambientes de execução como OpenClaw, Codex SDK ou
claude -pon Hetzner
- Basta escrever o prompt e conectar os dados e ferramentas de forma limpa com um MCP connector para montar a automação imediatamente
Automação do e-mail diário
-
Substituindo a planilha antiga
- O primeiro problema retomado foi o e-mail diário, com o objetivo de receber um resumo limpo mostrando todas as contas e o patrimônio líquido de uma só vez
- Essas informações estavam havia muito tempo em uma planilha antiga perdida em algum lugar do Google Drive e, embora a atualização levasse só cerca de 15 minutos, esse pequeno atrito já bastava para que ela quase nunca fosse atualizada
- Na prática, a frequência de atualização ficava em no máximo uma vez a cada 6 meses
-
Processo de configuração da rotina
- A configuração terminou só com inserir o prompt, agendar a execução para toda manhã, conectar o Driggsby custom connector e salvar
- Mas logo no começo apareceu um bloqueio: não havia como enviar o e-mail
-
Limitação do conector do Gmail e ferramenta alternativa
- Ao adicionar o Gmail connector, foi possível gerar um e-mail bonito e com alta densidade de informação, mas na prática ele era criado apenas como rascunho, e não chegava à caixa de entrada
- Como o Gmail connector só criava rascunhos e não conseguia enviar o e-mail, foi preciso buscar outro caminho
- Mesmo depois de olhar a Claude connector store, não apareceu uma forma de envio conveniente, então foi adicionada ao Driggsby uma ferramenta MCP simples chamada
email_me()
-
Restrições do email_me() e estabilidade de formatação
- O
email_me()limita o destino de envio apenas ao endereço de e-mail verificado do dono da conta e bloqueia links e imagens, mantendo um nível aceitável do ponto de vista de segurança - Para reduzir a variação de formato entre execuções, o corpo do e-mail passou a exigir Markdown, e também foi adicionado um CSS para renderização de e-mails em Markdown
- O
-
Depuração e resultado final
- Alguns bugs pequenos foram corrigidos rapidamente porque o processo de execução das routines é fácil de inspecionar
- A interface é quase igual a uma sessão normal do Claude Code vista no Claude Desktop ou no app web, então fica fácil verificar exatamente o que a rotina em execução está fazendo
- Depois de alguns testes, o e-mail das 7h47 da manhã finalmente chegou, e o problema do e-mail diário foi resolvido
- A partir daí, mudanças no conteúdo do e-mail puderam ser feitas ajustando apenas o prompt na UI das routines, sem alterar código
-
Personalização individual para o casal
- A esposa também passou a ter seu próprio e-mail diário pessoal, editável com o próprio prompt dela
- Como cada um dá importância a coisas diferentes, passou a ser possível personalizar separadamente as informações que cada um quer receber todos os dias
Expansão depois do e-mail diário
-
Detecção de anomalias nas transações do cartão nos últimos 7 dias
- Depois que o e-mail diário entrou no lugar, a atenção se voltou para o que mais seria possível fazer, já que agora dava para subir novos agentes sem quase nenhum custo de infraestrutura
- Como os dados de transações já estavam no Driggsby, a automação seguinte foi a detecção de anomalias nas transações do cartão de crédito Amex
- Foi criada uma routine semanal com o prompt abaixo
- Prompt de exemplo no original
- Buscar as transações do cartão de crédito Amex do último ano
- Separar apenas as transações dos últimos 7 dias e concentrar a análise nesse intervalo
- Comparar com padrões históricos e enviar um e-mail se houver nos últimos 7 dias itens inesperados, como cobrança duplicada, mudança no valor de assinatura ou nome/descrição estranhos de estabelecimento
- Se todas as transações parecerem normais e alinhadas ao padrão histórico, não enviar alerta
- Um prompt tão simples assim pode gerar false positives, mas é fácil refiná-lo ao longo do tempo e o custo de revisar os resultados também é baixo
-
Vigilância de grandes saídas na checking account
- Depois disso, foi criada uma rotina para verificar se houve uma saída grande e inesperada de dinheiro na checking account
- O prompt foi montado com as condições abaixo
- Prompt de exemplo no original
- Revisar as transações da checking account e verificar, comparando com os dados dos últimos 12 meses, se houve no último dia alguma grande saída fora do padrão histórico
- Focar em transações acima de US$ 500
- Como essa automação roda todos os dias, ela restringe fortemente a análise apenas às transações do último dia
- Se houver um item que se encaixe nas condições, enviar um e-mail com o título "Checking account outflow alert"; caso contrário, não avisar
-
Escopo de expansão adicional
- Com o tempo, esse fluxo se expandiu para investimentos, análise de assinaturas e monitoramento de várias categorias de gastos
- Como configurar com routines chega a ser fácil até demais, daqui para frente a necessidade maior será combinar várias condições de uma vez e refinar os prompts com mais precisão
Por que isso importa
- O ponto mais forte das routines está em permitir automação que pode ser testada imediatamente com esforço quase zero
- A barreira de entrada ficou tão baixa que basta surgir um prompt para já ser possível colocá-lo para rodar como automação
- A esposa, que é CPA, também está rodando na nuvem as próprias automações com base em dados puxados em tempo real pelo Driggsby
- Isso reforça a direção de criar mais ferramentas que permitam a cada pessoa conectar seus próprios dados e montar automações com facilidade
1 comentários
Comentários do Hacker News
Montei algo assim recentemente. Uso o https://tiller.com/ para sincronizar transações de conta corrente/cartão de crédito com o Google Sheets e espelho essa planilha em um banco Supabase gratuito com GitHub Actions
Depois deixei o Claude/Codex acessar transações e saldos com consultas em inglês via Supabase MCP ou psql, e fiquei bem impressionado com a capacidade de encontrar padrões de assinatura ou padrões anômalos. Foi especialmente bom em previsão de fluxo de caixa, algo em que ferramentas online costumam falhar, e por exemplo eu podia perguntar quanto dava para transferir para a poupança com base no meu padrão de gastos mensais e no caixa disponível
Na parte de categorização automática, o Claude lidou muito bem com uma DSL customizada. Pedi para ele criar um conjunto de regras em tabela markdown para normalização de beneficiários/categorias, e essas regras também rodam junto no GitHub Actions
Queria saber se eles puxam isso por algo como o Plaid, se ainda é preciso fornecer credenciais do internet banking e como o 2FA é tratado
Também me preocupa se, em instituições financeiras sem API oficial, eles ainda dependem de scraping de tela e o que acontece se um bug causar cliques ou confirmações não intencionais, ou até uma transferência errada. Dizem que é somente leitura, mas quase nunca vi bancos oferecerem de fato uma conta auxiliar realmente somente leitura para internet banking pessoal
Também queria saber se existe seguro ou garantia para ressarcir grandes prejuízos financeiros, e me preocupam as implicações de privacidade de mostrar todos os meus dados bancários a duas empresas. Ouvi falar de ações coletivas sobre venda/compartilhamento indevido de dados, mas não sei exatamente o que aconteceu
Também pega mal a cláusula dos termos do banco em que você concorda em não compartilhar sua senha com terceiros. Tenho muita resistência a confiar minhas finanças a um serviço web/cloud; preferiria um software cliente rodando localmente e se comunicando com a API do banco. Também queria saber se existe algo assim no Canadá
Dizem que o open banking está chegando, mas não está claro se software feito pelo próprio usuário vai poder acessar. Se eu pudesse realmente confiar nisso, e houvesse até exigência de políticas que minimizem a retenção interna após o download, eu também gostaria de usar APIs bancárias
Uso o Tiller desde que o Mint foi adquirido pela Intuit, e tenho uma configuração parecida. Só que eu liguei o acesso ao Sheets com um modelo local qwen e uma API key criada com OAuth; o jeito com Claude Routine provavelmente teria sido bem mais fácil
Queria ver a configuração completa, especialmente quais prompts você usa
Talvez porque meu patrimônio líquido seja pequeno, mas sinceramente não entendo muito bem por que isso teria valor
Também não quero que um LLM me mande email todo dia, e se eu preciso olhar meus investimentos com mais frequência do que trimestralmente, provavelmente eu deveria estar em investimentos mais seguros. Tenho algum interesse em ferramentas de orçamento, mas nisso eu quero algo totalmente determinístico
Meu planejamento financeiro em geral é bem tranquilo, então acho melhor gastar meu tempo procurando um emprego com salário maior do que tentando otimizar despesas além do que já faço
Acho mesmo que qualquer coisa ligada a números deveria ser totalmente determinística
Mostrei meu banco SQLite para um LLM e pedi que ele dissesse o que via nas transações dos últimos 5 anos, e as coisas que ele captou ou me relembrou foram impressionantes. Mas não sei se houve algum valor prático real que de fato me levasse a mudar algo
Vou tentar fazer isso me levar a uma revisão mensal por um tempo, mas como eu geralmente já sei como está minha situação financeira só de atualizar o orçamento, ainda não sei o quanto isso vai ajudar
Eu uso isso para acompanhar meus cartões de crédito e contas correntes, e se quiser ainda dá para conectar um MCP ali e analisar os dados todos em um só lugar
Moro no Canadá e uso o https://lunchmoney.app/ para acompanhamento junto com integração Plaid
Como há uma API, pedi para um LLM escrever uma CLI, e com isso o agente consegue buscar praticamente qualquer dado que precisa
Outra tarefa que dei foi acumular regras de tagging, e isso roda uma vez por dia em cron. Às vezes peço para ele revisar as regras e criar novas para transações sem classificação
Acho muito bom esse padrão de fazer o LLM memorizar o trabalho em um motor de regras ou em código. Depois que você tem uma CLI consultável, dá para pedir quase qualquer coisa ao agente
Para quem tiver interesse, vou compartilhar a visão geral da nossa infraestrutura/configuração de segurança
O backend e a CLI são em Rust com linting rigoroso, o app web roda sobre Axum e se conecta ao Postgres com sqlx
As funções financeiras são somente leitura. Não existem ferramentas de transferência, pagamento de contas ou remessa, e não é possível mover dinheiro pela superfície de IA
No Plaid, pedimos apenas transações, investimentos e dívidas; não pedimos auth/transfer/payment initiation, então não recebemos o número completo da conta nem o routing number, só a máscara básica dos últimos 4 dígitos
Nome de usuário e senha do banco vão direto para o Plaid Link sem passar por nós, e nós mantemos apenas tokens de acesso por instituição
Os tokens de acesso do Plaid ficam em um banco separado, atrás de um serviço de custody único no Cloud Run. No armazenamento, eles são criptografados com Cloud KMS; o broker chama os endpoints de encrypt/decrypt do KMS, e o material da chave raiz nunca sai do limite do Google HSM. Só a service account do broker tem permissão de criptografar/descriptografar, e o app web não tem permissão para ler esse banco
Em toda chamada de criptografia/descriptografia, passamos o ID do item do Plaid como AAD, para que o ciphertext de um item não possa ser trocado e descriptografado como token de outro item
Cada serviço Cloud Run roda com sua própria identidade de nuvem e role de banco, e as chamadas internas entre serviços também são autenticadas com identity tokens de curta duração
O banco operacional não tem IP público, e os segredos ficam em armazenamento gerenciado de secrets, não no código-fonte nem na imagem do container
O conector de IA usa OAuth 2.1 + PKCE e tem escopos por usuário, podendo ser revogado na UI. Em toda tool call, registramos o nome da ferramenta, argumentos saneados, cliente chamador e o motivo apresentado pelo agente, para que seja possível ver o que o LLM pediu em nome do usuário
Na superfície de IA não existem ferramentas de fetch-URL, shell nem I/O genérico; ela retorna apenas dados financeiros estruturados. Rede, IAM e grants de banco são todos gerenciados com Terraform, e mudanças de infraestrutura só acontecem por esse caminho
O acesso à infraestrutura é controlado com 2FA e chave de segurança
Dá a sensação de que você entende o público deste site, e o cuidado em projetar a segurança em cada camada também aumenta a confiança na ferramenta como um todo
Eu mesmo tentei construir algo parecido; no MVP inicial eu só baixava manualmente PDFs de extrato e usava o Claude para montar um ledger em texto puro para contabilidade, com a ideia de conectar o Plaid depois
Em especial, tenho curiosidade sobre como as pessoas usam o Plaid. Para começar, é preciso ter um certo número de usuários ou dá para abrir uma conta Plaid para uso pessoal só para conectar minhas contas pessoais e empresariais a uma API limpa?
É preciso tomar cuidado ao usar o Routine
Há um aviso pequeno que quase passa despercebido: no modo routine, ferramentas MCP ficam sempre permitidas, inclusive com permissão de escrita. Então, tecnicamente, o agente pode sair alterando recursos por conta própria
Isso parece uma solução em busca de um problema. Só o https://tiller.com/ já funciona muito bem, você consegue fazer todos os cálculos que quiser na planilha e, de bônus, não há alucinações
Também não entendo por que eu iria querer um resumo prolixo de LLM para ler. Se eu mesmo classificar os gastos de vez em quando, as anomalias aparecem rápido, e com o Tiller isso também é fácil
Vão surgir muitos produtos diferentes nesse espaço, e o nosso é só uma das abordagens. Eu pessoalmente acho positivo haver mais tentativas assim
O mais importante é que o LLM consegue absorver e combinar várias fontes de dados com facilidade
Nossa Era Finance está construindo uma solução exatamente para isso. É o Era Context, um MCP que conecta finanças pessoais a qualquer agente compatível, e pode ser visto em https://era.app
Por enquanto estamos focados em ferramentas de leitura, mas ferramentas de escrita como transferência de dinheiro e quitação de dívidas também estão a caminho
Se houver alguma funcionalidade que você queira, gostaria de pedir que enviasse email para o alex nesse domínio. Para contexto, eu sou o CEO Alex; estou quase estreando no HN, mas antes fui responsável pela presença web da stripe.com e antes disso estive na Square/CashApp
Talvez eu já tenha perdido a batalha, mas continuo sem entender por que alguém iria querer entregar o histórico financeiro completo a um LLM
Não me parece que provedores de LLM tenham proteções mais fortes para esse tipo de dado do que o setor financeiro. E o próprio setor financeiro já é uma indústria dura que coleta, minera e vende nossos dados
Como alguém interessado em padrões de gasto e investimentos, já encontrei coisas que antes me passavam batido usando prompts bem básicos
Claro que tornar isso seguro é muito difícil, e por isso passo muito tempo pensando justamente nessa parte
Então não entendo exatamente qual seria o problema
Meu banco principal, o Monzo do Reino Unido, oferece uma API completa e webhooks de trigger para eventos
Isso me permitiu criar um bot no WhatsApp que pergunta a razão quando aparece uma transação incomum, e o LLM é usado só para o raciocínio. Também automatizei a varredura do saldo para uma conta de poupança todo dia antes da meia-noite para maximizar os juros diários
Mantenho só um valor pequeno na conta do dia a dia e, se gasto dinheiro durante o dia, reponho a partir da poupança para manter esse saldo baixo. Se preciso fazer um gasto maior, aí transfiro manualmente
Quando tentei usar o Claude para analisar transações passadas, ele continuava alucinando, inventando cobranças que não existiam, adicionando novos itens e contando em duplicidade
Ao lidar com finanças, não basta o Claude acertar 95%. Eu preciso ficar sempre em alerta e revisar os resultados, então no meu caso isso praticamente perde o valor
Também tive a impressão de que o Claude alucina bastante, especialmente com conjuntos de dados incompletos ou limitados