Solução rápida: o Windows 11 não tem alternância programada de temas, mas o Agendador de Tarefas com um script PowerShell de duas linhas que altera os valores de registro AppsUseLightTheme e SystemUsesLightTheme oferece tema claro ao nascer do sol e escuro ao pôr do sol, sem aplicativos extras.
O macOS e a maioria dos celulares alternam automaticamente entre claro e escuro conforme o dia avança. O Windows 11 vem com ambos os temas, mas os trata como uma única opção em Personalização — sem programação, sem considerar nascer/pôr do sol. A Microsoft chegou a mostrar uma prévia de um recurso de agendamento em uma compilação Insider há anos, mas nunca o lançou. A boa notícia é que os dois valores de registro que controlam a alternância são bem documentados, e o Agendador de Tarefas pode alterá-los com qualquer gatilho desejado.
Atinge: Windows 11, qualquer edição.
Tempo de correção: 15 minutos para a configuração inicial; depois funciona automaticamente.
O que controla a alternância de tema internamente
A página de Personalização em Configurações não faz nada misterioso. Ao alterar Escolher seu modo, o Windows grava dois DWORDs em HKCU\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize: AppsUseLightTheme (controla Configurações, Explorador de Arquivos, aplicativos modernos) e SystemUsesLightTheme (controla Iniciar, barra de tarefas e central de ações). Definir ambos como 1 é o tema claro; 0 para ambos é escuro. Valores mistos (apps claro, sistema escuro) são válidos e o Windows os aplica imediatamente.
Como não há API exposta nem log de eventos para “modo alterado”, o caminho de automação mais simples é o Agendador de Tarefas executar um pequeno script PowerShell nos horários desejados. Os aplicativos que observam a chave de registro (a maioria deles) alternam imediatamente. Alguns aplicativos mais antigos precisam ser reiniciados para perceber a mudança.
Método 1: Agendar duas tarefas PowerShell para horários fixos
- Abra o Bloco de Notas e cole o seguinte em um novo arquivo:
$path = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize"Set-ItemProperty -Path $path -Name AppsUseLightTheme -Value 1Set-ItemProperty -Path $path -Name SystemUsesLightTheme -Value 1 - Salve como
C:\Users\<seu_usuario>\theme-light.ps1. - Duplique o arquivo, altere os dois
Value 1paraValue 0e salve comotheme-dark.ps1na mesma pasta. - Abra o Agendador de Tarefas (pesquise em Iniciar). No painel Ações, clique em Criar Tarefa.
- Na guia Geral, nomeie a tarefa como Tema – Claro, marque Executar somente quando o usuário estiver conectado e ative Executar com privilégios mais altos.
- Na guia Gatilhos, clique em Novo, defina Diariamente às
07:00e salve. - Na guia Ações, clique em Novo. Ação: Iniciar um programa. Programa:
powershell.exe. Argumentos:-ExecutionPolicy Bypass -WindowStyle Hidden -File "C:\Users\<seu_usuario>\theme-light.ps1". - Salve a tarefa. Repita os passos 4 a 7 com o script escuro acionando às
19:00.
Ambas as tarefas são executadas silenciosamente em segundo plano — nenhuma janela de console aparece. O script leva alguns milissegundos; a interface é atualizada em menos de um segundo.
Método 2: Vincular a alternância ao nascer/pôr do sol local em vez de horários fixos
Horários fixos se desviam da luz real ao longo do ano. Se preferir que o modo escuro ative no pôr do sol real, calcule isso dentro do mesmo script PowerShell usando a API gratuita sunrise-sunset.org.
- Substitua seus scripts claro/escuro por um script combinado que obtém o pôr do sol de hoje e decide qual modo aplicar:
$lat = -23.5505; $lon = -46.6333 # suas coordenadas (exemplo: São Paulo)$r = Invoke-RestMethod "https://api.sunrise-sunset.org/json?lat=$lat&lng=$lon&formatted=0"$sunset = [datetime]$r.results.sunset$mode = if ((Get-Date) -gt $sunset) { 0 } else { 1 }$path = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize"Set-ItemProperty -Path $path -Name AppsUseLightTheme -Value $modeSet-ItemProperty -Path $path -Name SystemUsesLightTheme -Value $mode - Salve como
theme-auto.ps1e atualize uma de suas tarefas do Agendador para executar este script às 06:00 e 17:00 (ou outro intervalo que cubra sua latitude em todas as estações). - Opcionalmente, agende uma terceira execução ao fazer logon (Gatilhos → Ao fazer logon) para que o modo correto seja definido ao ligar o PC no meio do dia.
A API não requer autenticação, não tem limite de taxa neste volume e retorna horários UTC. A conversão [datetime] do PowerShell converte automaticamente para seu horário local.
Método 3: Alternância apenas para aplicativos, mantendo a barra de tarefas sempre escura
Alguns usuários querem que o Explorador de Arquivos e as Configurações sigam o horário do dia, mas desejam a barra de tarefas permanentemente escura para não brilhar à noite. Remova SystemUsesLightTheme dos seus scripts completamente.
- Edite ambos
theme-light.ps1etheme-dark.ps1(ou o script automático) e remova a linha que defineSystemUsesLightTheme. - Abra Configurações → Personalização → Cores e defina o Modo do Windows como Escuro manualmente uma última vez.
- Execute sua tarefa. Os aplicativos alternam; a barra de tarefas permanece escura.
Esta é a configuração que a maioria dos notívagos acaba usando. A barra de tarefas é visível contra janelas de aplicativos claras durante o dia de qualquer forma, e uma barra de tarefas escura contra uma página de Configurações clara é menos chocante que o contrário.
Como verificar se a correção funcionou
- Abra o Agendador de Tarefas, encontre sua tarefa, clique com o botão direito e escolha Executar. O tema deve alternar em menos de um segundo.
- Verifique Último Resultado da Execução na lista de tarefas — deve mostrar (0x0) para sucesso.
- Aguarde até o horário agendado e confirme se a alternância ocorre sem supervisão.
Se nada disso funcionar
Se os valores do registro mudarem (verifique com reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize") mas a interface não for atualizada, reinicie o Explorer com taskkill /f /im explorer.exe && start explorer.exe no final do seu script. Se o Agendador de Tarefas executar o script mas os valores permanecerem os mesmos, sua política de execução do PowerShell está bloqueando o script — abra o PowerShell como o mesmo usuário da tarefa e execute Set-ExecutionPolicy -Scope CurrentUser RemoteSigned. Para usuários que não querem manter um script, o Auto Dark Mode (código aberto, no GitHub) cuida de tudo em uma interface gráfica; é o único aplicativo de terceiros que vale a pena recomendar para este nicho.
Conclusão: Dois DWORDs de registro mais o Agendador de Tarefas fornecem a programação de temas que o Windows 11 deveria ter vindo. A variante do Método 2 com nascer/pôr do sol leva dez minutos a mais, mas é a versão que você configura uma vez e nunca mais mexe.