Pular para o conteúdo

Capturando contexto de trabalho sem screenshots no macOS

Imagine poder recuperar exatamente o que você estava fazendo há três dias, com qual código estava trabalhando, quais documentos tinha abertos e qual era o contexto da sua sessão de desenvolvimento — tudo isso sem que seu computador tenha tirado uma única captura de tela. É exatamente isso que o ambient-context propõe: uma abordagem diferente para criar memória persistente do seu ambiente de trabalho.

O problema da memória de contexto

Desenvolvedores frequentemente alternam entre múltiplos projetos, documentações, conversas e sessões de código. Quando você retoma um trabalho após dias ou semanas, reconstruir mentalmente onde parou é um desafio cognitivo real. Mais importante ainda: como fazer com que assistentes de IA entendam esse contexto passado sem precisar explicar tudo novamente?

A solução tradicional tem sido a captura de tela periódica — approach usado por diversas ferramentas de produtividade e monitoramento. O problema? Privacidade questionável, armazenamento pesado e dificuldade em processar imagens para extração de contexto útil.

A alternativa: Accessibility API como fonte de contexto

O ambient-context, projeto compartilhado no Hacker News, adota uma abordagem fundamentalmente diferente. Em vez de capturar pixels da tela, ele utiliza a Accessibility API do macOS para extrair informações textuais sobre o que está acontecendo no seu ambiente de trabalho.

A Accessibility API foi originalmente desenvolvida para tecnologias assistivas — leitores de tela, ferramentas de navegação por voz e similares. Ela expõe a estrutura semântica das interfaces: títulos de janelas, conteúdo de campos de texto, hierarquias de elementos, estados de aplicações. É informação rica em contexto, mas completamente textual.

Ao usar essa API como fonte de dados, o ambient-context consegue capturar o que você está fazendo sem registrar como sua tela se parece. É uma distinção sutil, mas crucial para privacidade.

Markdown como formato de memória

O output do ambient-context não são bancos de dados proprietários ou formatos binários complexos. São arquivos Markdown diários, estruturados e legíveis tanto por humanos quanto por máquinas.

Essa escolha de design é particularmente inteligente quando consideramos o público-alvo: desenvolvedores que trabalham com Large Language Models (LLMs). Markdown é um dos formatos mais bem compreendidos por modelos como Claude, GPT-4 e similares. É estruturado o suficiente para preservar hierarquia e contexto, mas simples o suficiente para ser processado sem parsing complexo.

A estruturação diária também facilita a gestão de contexto temporal. Você pode alimentar um LLM com “o que eu fiz ontem”, “minha última semana de trabalho no projeto X” ou “todas as vezes que mexi no arquivo Y” — consultas naturais sobre seu histórico de trabalho.

Casos de uso para desenvolvedores

A aplicação mais óbvia é a recuperação de contexto pessoal. Voltar de férias ou retomar um projeto antigo deixa de ser um exercício frustrante de arqueologia digital. Os arquivos Markdown funcionam como um diário automático do seu trabalho.

Mas o caso de uso mais interessante é como ferramenta de memória para agentes de IA. Imagine começar uma conversa com Claude assim:

“Anexo meu contexto de trabalho dos últimos 3 dias. Baseado nisso, me ajude a debugar o problema que encontrei hoje de manhã.”

O LLM tem acesso não apenas ao código que você compartilha no momento, mas ao histórico de arquivos que você editou, comandos que executou, documentação que consultou. É contexto passivo sendo transformado em contexto ativo sob demanda.

Para equipes, há potencial para handoffs de projeto mais eficientes. Em vez de documentar manualmente o que você fez, o Markdown gerado serve como base para um relatório estruturado do seu progresso.

Privacidade: texto versus imagem

A grande promessa do ambient-context está na sua abordagem à privacidade. Captura de tela é indiscriminada: registra senhas visíveis, conversas privadas, dados sensíveis em dashboards — tudo que estiver na tela no momento do snapshot.

A Accessibility API, por sua natureza, captura estrutura semântica. Ela “enxerga” campos de senha como campos de senha (sem o conteúdo), títulos como títulos, código como código. Há ainda questões de privacidade — texto também pode ser sensível — mas o nível de granularidade é diferente.

Importante notar: o ambient-context roda localmente no macOS. Não há envio automático de dados para servidores externos. Os arquivos Markdown são seus, armazenados localmente, e você controla quando e como compartilhá-los com LLMs ou outras ferramentas.

Limitações e considerações técnicas

A dependência da Accessibility API traz limitações. Nem todas as aplicações expõem informações completas por essa interface — apps mais antigos, games ou software com interfaces customizadas podem ser “opacos” para o sistema.

Há também a questão de volume. Dependendo da sua atividade, os arquivos Markdown diários podem crescer substancialmente. Isso não é problema para armazenamento local, mas pode ser um desafio ao alimentar LLMs com contexto — modelos têm limites de contexto (context windows), e você precisará estratégias para resumir ou filtrar informações relevantes.

Por fim, o projeto é específico para macOS. A Accessibility API do Windows e as tecnologias equivalentes no Linux funcionam de forma diferente, então portar a ferramenta exigiria reimplementação significativa para cada plataforma.

O futuro da memória computacional

O ambient-context representa uma tendência emergente: computação que mantém registro passivo do nosso trabalho, não para vigilância, mas para amplificação cognitiva. À medida que LLMs se tornam mais integrados aos nossos fluxos de trabalho, a capacidade de alimentá-los com contexto rico sobre nossa atividade passada se torna cada vez mais valiosa.

A escolha entre captura de tela e APIs de acessibilidade é fundamentalmente uma escolha entre fidelidade visual e estrutura semântica. Para trabalho com código, documentação e texto — o mundo dos desenvolvedores — a abordagem textual pode ser não apenas mais privada, mas mais útil.

Vale explorar o repositório no GitHub para entender a implementação e avaliar se essa abordagem faz sentido para o seu fluxo de trabalho. Como toda ferramenta de captura de contexto, a decisão de usá-la deve ser consciente e alinhada com suas necessidades de privacidade e produtividade.

Recomendação relacionada

O Programador Pragmático: De Aprendiz a Mestre

Um clássico atemporal sobre boas práticas de desenvolvimento de software, útil pra qualquer stack ou linguagem.

Ver na Amazon →

Como Associado Amazon, Visão Binária pode ganhar uma comissão sobre compras qualificadas feitas através deste link, sem custo adicional pra você.