Keepresso
Keepresso
Usando o Keepresso

Deixe agentes de IA e scripts manterem seu Mac acordado com concessões de automação

György
Revisado por
György
Atualizado Jul 23, 2026 6 min

Um agente que roda uma tarefa longa durante a noite precisa do Mac acordado enquanto trabalha, e adormecido quando termina. Um simples "manter acordado ligado" acerta a primeira metade e falha na segunda: se a ferramenta travar ou esquecer de desligar, o Mac fica preso acordado para sempre. As concessões de automação resolvem isso. Um script ou um agente de IA adquire uma concessão com prazo, vai renovando enquanto o trabalho roda, e a libera no fim. Se a ferramenta morrer no meio da tarefa, a concessão simplesmente expira e o Mac pode dormir de novo. Nada fica segurando a máquina acordada por acidente.

O Keepresso traz toda a estrutura para isso: os comandos keepresso lease, um servidor MCP que qualquer agente compatível com MCP pode chamar, e uma skill de agente incluída que você instala com um clique.

A detecção observa, uma concessão fala

O Keepresso já tem um gatilho de agente de IA que detecta quando um agente de codificação está de fato trabalhando: o Claude Code pode informar seu estado real por meio de um hook opcional, e os agentes conhecidos (claude, codex, gemini e afins) são avaliados pela atividade dos próprios processos. Esse lado não precisa de configuração nenhuma no agente, o Keepresso simplesmente observa.

Mas a detecção só cobre os agentes que o Keepresso sabe reconhecer, e novos aparecem toda semana. Uma concessão inverte a direção: em vez de o Keepresso adivinhar, o próprio agente diz ao Keepresso quando precisa do Mac acordado, para quê, e por quanto tempo, e depois vai provando que continua vivo. Qualquer ferramenta que consiga rodar um comando ou chamar um servidor MCP consegue fazer isso, seja qual for o nome dela e como funcione por dentro. As duas se complementam bem: a detecção cobre as sessões do dia a dia em que você nem pensou, as concessões cobrem as tarefas longas e deliberadas e tudo que a detecção não consegue enxergar.

Por que uma concessão em vez de keepresso start

keepresso start é um bom interruptor manual, mas a automação quer garantias diferentes:

  • Limitada. Uma concessão tem um TTL que o dono precisa renovar, e um tempo de vida máximo (limitado a 7 dias) que os heartbeats nunca conseguem estender. Uma tarefa descontrolada não consegue manter o Mac acordado além do teto.
  • Autocorretiva. Sem heartbeat, sem retenção. A concessão de um script que travou expira sozinha.
  • Compartilhada com clareza. Várias ferramentas podem manter concessões ao mesmo tempo. O Keepresso as reúne e deixa o Mac dormir depois que a última termina, rodando sua ação de fim de sessão nesse momento, não antes.
  • Visível. Cada concessão ativa aparece no menu com sua contagem regressiva, nomeada pela ferramenta e pela tarefa que a tomou.

O ciclo de vida da concessão

Adquira uma concessão quando a tarefa começa. Você escolhe o id (um UUID), nomeia a ferramenta e a tarefa, e define o TTL em segundos:

ID=$(uuidgen)
keepresso lease acquire --id "$ID" --tool my-script --task "nightly render" --ttl 600

Envie um heartbeat antes de metade do TTL passar, em um loop enquanto o trabalho durar. Um heartbeat também pode ajustar o TTL:

keepresso lease heartbeat --id "$ID"            # renew with the same TTL
keepresso lease heartbeat --id "$ID" --ttl 300  # renew and shorten it

Libere quando a tarefa terminar, para que o Mac não fique esperando o resto do TTL:

keepresso lease release --id "$ID"

E liste o que está ativo, o seu e o de todos os outros:

keepresso lease list --json

Todo comando aceita --json para saída legível por máquina, e os códigos de saída foram feitos para scripts: 0 ok, 2 o app não está rodando, 3 a concessão não foi encontrada ou já terminou, 4 as concessões estão desligadas nas Preferências.

As concessões são governadas por um interruptor em Preferências, Automação, ligado por padrão. Desligue-o e todo acquire é recusado com o código de saída 4, para que a automação nunca possa passar por cima da sua escolha.

Veja e pare tudo pelo menu

As concessões ativas aparecem no cartão de status do painel do menu, cada uma com sua contagem regressiva. Você continua no comando: Parar encerra todas de uma vez, e o Mac fica livre para dormir de novo.

Ensine seu agente com um clique

Você não precisa explicar nada disso ao seu agente na mão. O pacote do app traz uma skill de manter acordado pronta que ensina ao agente todo o protocolo, tanto a linha de comando keepresso quanto o servidor MCP, além de quando usá-la: antes de um build longo, uma renderização, um download, ou uma execução noturna. Em Preferências, Automação, instale-a direto do disco na pasta de skills do seu agente. Para agentes sem uma, o Keepresso copia a skill completa como instruções prontas para colar: cole-as no agente uma vez e o protocolo é aprendido, ou salve-as em um arquivo de configuração global que seu agente sempre lê, como CLAUDE.md ou AGENTS.md, para que toda sessão futura já saiba como e quando manter o Mac acordado. A skill também fica no pacote em Keepresso.app/Contents/Resources/AgentSkill/keep-awake se você preferir conectar tudo por conta própria.

O servidor MCP

Para agentes que falam o Model Context Protocol, o pacote traz o keepresso-mcp:

/Applications/Keepresso.app/Contents/Helpers/keepresso-mcp

Ele expõe ferramentas para adquirir, dar heartbeat, liberar e listar concessões, ler o status do Keepresso, e ler o agendamento de despertar do sistema. O MCP é um protocolo aberto, então isso não se limita a agentes de codificação: qualquer app compatível com MCP pode manter a própria concessão e manter o Mac vivo enquanto trabalha. Preferências, Automação tem trechos de configuração prontos para copiar para Claude Code, Gemini CLI, Grok e Codex. Para o Claude Code, resume-se a um comando:

claude mcp add keepresso -- /Applications/Keepresso.app/Contents/Helpers/keepresso-mcp

Agendamentos de despertar para automação, opcional

A automação também pode ler quando o sistema está agendado para acordar em seguida, e, se você permitir, mudar esse agendamento:

keepresso wake status                          # always allowed, for anyone
keepresso wake set --at "2026-07-24 07:30"     # one-shot wake
keepresso wake set --repeat MTWRF --time 07:30 # repeating wake
keepresso wake clear

A leitura é sempre permitida. Mudar o agendamento só funciona enquanto Permitir que a automação mude o agendamento de despertar estiver ligado em Preferências, Automação. Vem desligado por padrão, porque um despertar agendado é uma mudança em todo o sistema aplicada pelo assistente de administrador. O servidor MCP carrega as ferramentas correspondentes sob a mesma regra.

O que você precisa

  • Keepresso 1.17 ou mais novo. Passos de instalação: primeiros passos.
  • Para o CLI em uma instalação por DMG, vincule o comando uma vez.
  • Para mudanças no agendamento de despertar, o assistente de administrador e o interruptor opcional acima.

Relacionados

Baixe o Keepresso

Grátis e de código aberto, para macOS 14 e versões mais recentes. Instale e mantenha seu Mac acordado do seu jeito.

Mais em Usando o Keepresso

Mantenha o Mac acordado por um tempo definido
Inicie uma sessão cronometrada de manter acordado para o Mac ficar ligado durante um download ou uma renderização, e depois dormir sozinho.
Mantenha seu MacBook acordado com a tampa fechada
Impeça seu MacBook de dormir quando você fecha a tampa, na bateria, sem tela externa e sem cabo de energia, usando um app grátis e de código aberto.
Fique acordado só quando importa, com gatilhos inteligentes
Defina condições para o Keepresso manter seu Mac acordado só enquanto um app roda, uma chamada está ativa, você está na tomada, e mais. Nunca ligado quando não deveria.
Impeça o Mac de dormir durante chamadas do Zoom, Teams e Meet
Mantenha o Mac acordado durante chamadas de vídeo automaticamente, para que ele nunca durma no meio de uma reunião, em qualquer app, incluindo chamadas em uma aba do navegador.