O que figma-daily-resume faz?
Transforma "o que eu mudei no Figma hoje" em uma lista curta de edições reais, comparando a última versão salva do arquivo antes de hoje com sua versão salva mais recente, página por página. O Figma não possui um log de ações por usuário, então essa comparação é a única maneira de obter detalhes no nível de edição.
Utilitário: scripts/figma_resume.py ao lado deste arquivo (Python padrão, saída JSON).
A configuração fica em ~/.config/figma-daily-resume/ (config.json, token).
Qual modo?
- Sem
config.jsonou sem token → Configuração. - Usuário diz "executar", "resumo", "hoje", ou um agendador o invocou → Execução diária.
- Usuário diz "reconfigurar" / "mudar páginas/arquivos" → refaça as perguntas relevantes da Configuração.
Configuração
Faça uma pergunta de cada vez, nesta ordem. Não prossiga até que a atual seja resolvida.
1. Token
Explique como obter um e deixe o usuário armazená-lo por conta própria:
- Figma → menu da conta (canto superior esquerdo) → Configurações → Segurança → Tokens de acesso pessoal → Gerar novo token.
- Nomeie-o
daily-resume, expiração como preferir e conceda escopos somente leitura:file_content:read,file_metadata:read,file_versions:read,file_comments:read. - Copie-o imediatamente; o Figma o mostra uma vez.
- Salve-o em um arquivo que só o usuário veja. Forneça este comando para ser executado no terminal do usuário (um editor evita que o token fique no histórico do shell):
mkdir -p ~/.config/figma-daily-resume && chmod 700 ~/.config/figma-daily-resume && touch ~/.config/figma-daily-resume/token && chmod 600 ~/.config/figma-daily-resume/token && open -e ~/.config/figma-daily-resume/tokenem seguida, cole o token, salve e feche.
Um arquivo é usado em vez de uma variável de ambiente porque as execuções agendadas não carregam ~/.zshrc.
Nunca peça o token no chat e nunca o ecoe ou use cat. Se o usuário colar de qualquer forma,
diga isso claramente, continue e recomende revogar e regenerá-lo no final.
Verifique com python3 scripts/figma_resume.py whoami (imprime handle/email, nunca o token).
2. Arquivos
Pergunte pela(s) URL(s) do(s) arquivo(s) Figma (figma.com/design/<KEY>/...). Para cada um,
execute figma_resume.py pages <url> e anote o nome do arquivo.
3. Páginas
Mostre a lista de páginas de cada arquivo e pergunte quais páginas o usuário edita ativamente. Explique o custo: uma página grande pode ter 100+ MB e leva cerca de um minuto para comparar, portanto, apenas páginas nas quais ele realmente trabalha. Pergunte sobre no máximo algumas de cada vez; sugira as páginas de tema/UI primeiro se os nomes tornarem isso óbvio.
4. Saída
Apenas terminal, um arquivo markdown (padrão ~/Documents/figma-resumes/YYYY-MM-DD.md),
ou uma página do Notion (ofereça apenas se uma ferramenta Notion estiver conectada). Salve a escolha.
5. Agendamento
Pergunte a que horas todos os dias. As execuções agendadas devem ser locais porque o token e a configuração estão nesta máquina, e as rotinas em nuvem não podem vê-los. Escolha nesta ordem:
- Tarefa agendada do Claude Desktop (local): peça ao usuário para criar uma tarefa diária com o
prompt
/figma-daily-resume run. Se você puder ver como criá-la a partir daqui, faça-o; se não, forneça as etapas exatas e o prompt, em vez de adivinhar a interface. - launchd/cron fallback no macOS executando
claude -p "/figma-daily-resume run --unattended". - Não use CronCreate: ele é apenas para sessão e expira em 7 dias.
Faça o agendamento por último, para que um token quebrado ou ID de página inválido seja encontrado antes de algo ser automatizado. Em seguida, execute uma execução real (veja abaixo) para que o usuário veja um resultado antes de terminar.
config.json
{"files": [{"key": "SEU_FILE_KEY", "name": "Meu App",
"pages": [{"id": "0:1", "name": "Tema Claro"}]}],
"output": {"type": "file", "path": "~/Documents/figma-resumes"},
"schedule": "18:00"}
Execução diária
- Pergunte os alvos primeiro (pule apenas se
--unattended, ou se ninguém responder): mostre os arquivos/páginas salvos e pergunte "igual da última vez, ou muda algo?". Aceite adições/remoções ("também Dashboard de cambios", "pule Sakura hoje"). Alterações pontuais se aplicam apenas a hoje, a menos que o usuário diga para salvá-las. - Para cada arquivo, para cada conjunto de páginas escolhido, execute:
python3 scripts/figma_resume.py diff <key> --pages <ids>(adicione--datepara um dia passado). Execute os arquivos em segundo plano e verifique novamente, pois cada página leva cerca de um minuto. Execute tambémcomments <key>para comentários escritos ou resolvidos hoje. - Leia
status:no_versions_today: o Figma não salvou nenhuma versão hoje, portanto diga "nenhuma alteração salva" para esse arquivo. Salvamentos são periódicos (tempo ocioso ou manual), então edições recentes podem ainda não estar salvas.no_baseline: o arquivo não tem versão anterior a hoje, portanto não há nada para comparar; informe.ok: resuma aschanges.
- Escreva o resumo e entregue-o na saída configurada.
Escrevendo o resumo
Agrupe por arquivo → página → frame de nível superior (frame). Um marcador por edição, nos próprios termos
do usuário, usando as strings exatas dos dados. Elimine ruídos; o objetivo é ser escaneável.
Resumo Figma, 2026-09-21
Meu App / UI Tema Claro
Insights
• digitou: "Brekdown by member" -> "Breakdown by member"
• mudou cor em "Card bg": #ffffff -> #f5f5f5
• adicionou Frame "Estado vazio" (12 nós)
Comentários: escreveu 2, resolveu 1
Regras que mantêm a honestidade:
- Tipos:
text= digitou,fill/stroke= mudou cor,renamed= renomeou,resized= redimensionou,added/deleted(raízes de subárvore com contagens de nós, não cada filho). - Muitas edições semelhantes (mesma cor trocada em 40 nós): um marcador com a contagem.
- É uma comparação líquida entre duas versões salvas. Diga "alterações líquidas" uma vez, já que edições que foram feitas e revertidas entre salvamentos são invisíveis. Não afirme mais precisão do que isso.
- Nunca invente intenção ("hierarquia melhorada"). Descreva apenas o que mudou.
- Se
editorsincluir outra pessoa, mencione que algumas alterações podem não ser do usuário. - Comparação vazia em um dia com salvamentos: "versões salvas, mas sem diferenças visíveis nessas páginas" (a edição pode estar em outra página — ofereça para ampliar as páginas).
Tratamento de falhas
- HTTP 401/403: token expirou, foi revogado ou está faltando um escopo. Envie o usuário de volta para a etapa 1 da Configuração.
- Timeouts em uma página enorme: tente novamente uma vez, depois informe qual página falhou em vez de descartá-la silenciosamente.
- Nunca imprima o token e nunca o escreva em nenhum arquivo que não seja
~/.config/figma-daily-resume/token.