TL;DR: Microsoft lançou o
winapp, uma CLI open-source que automatiza tarefas chatas de desenvolvimento Windows (SDKs, manifestos, certificados, packaging). Se você desenvolve com Electron, .NET, C++, Rust ou Dart para Windows, isso vai te economizar horas de configuração manual.
O que aconteceu

A Microsoft anunciou em 22 de janeiro de 2026 o Windows App Development CLI (carinhosamente chamado de winapp), uma ferramenta de linha de comando open-source que promete acabar com a dor de cabeça de configurar ambiente de desenvolvimento Windows.
A ferramenta foi criada especialmente para desenvolvedores que trabalham fora do Visual Studio ou MSBuild - pense em devs web usando Electron, desenvolvedores C++ com CMake, ou qualquer pessoa trabalhando com .NET, Rust ou Dart. O winapp consolida tarefas que antes exigiam múltiplos passos manuais em comandos únicos e diretos.
O projeto já está em public preview no GitHub, e a Microsoft está pedindo feedback ativo da comunidade para direcionar o desenvolvimento das próximas features.
Por que isso importa
Se você já tentou desenvolver um app Windows fora do Visual Studio, sabe a confusão que é gerenciar SDKs, criar manifestos XML gigantes, gerar certificados de desenvolvimento e lidar com packaging MSIX. Era um processo manual, cheio de detalhes obscuros e propenso a erros.
Para você como desenvolvedor:
Menos configuração manual: Setup de ambiente que levava horas agora é um comando
Suporte a ferramentas modernas: Funciona com Electron, Rust, CMake e outros toolchains populares
Acesso fácil a APIs Windows: Use Windows AI, notificações, segurança sem complicação
CI/CD simplificado: GitHub Actions e Azure DevOps actions prontas
O grande diferencial:
Muitas APIs modernas do Windows (IA, notificações, MCP Hosts) exigem Package Identity - algo que antes forçava você a empacotar e instalar o app completo só pra testar uma feature. Com winapp, você adiciona identity ao executável em desenvolvimento e continua usando seu workflow normal. Isso muda tudo.
Contexto técnico
O winapp CLI abstrai várias complexidades específicas do ecossistema Windows:
O problema que ele resolve
Desenvolvimento Windows tradicionalmente envolve:
Baixar e configurar Windows SDK (e às vezes Windows App SDK)
Criar arquivos
appxmanifest.xmlmanualmenteGerar certificados self-signed para desenvolvimento
Criar assets de imagem em múltiplos tamanhos
Configurar packaging MSIX
Instalar certificados no sistema
Cada passo tem documentação espalhada, armadilhas não-documentadas e versões diferentes entre SDKs.
Como o CLI funciona
# Antes: 10+ passos manuais entre docs e ferramentas
# Agora: um comando
> winapp init
O comando init faz tudo:
Download automático do SDK necessário
Gera projections (C++/WinRT inicialmente)
Cria manifest configurado
Gera assets padrão
Cria certificado de desenvolvimento
Configura dependências
Package Identity sem packaging completo
Essa é a feature mais interessante. Muitas APIs Windows modernas checam se seu app tem Package Identity. Antes, isso significava:
Criar package MSIX completo
Instalar no sistema
Executar a versão instalada pra testar
Repetir a cada mudança
Agora com winapp:
> winapp create-debug-identity my-app.exe
Isso injeta Package Identity diretamente no executável, permitindo que você continue usando npm start, cargo run ou qualquer comando de desenvolvimento normal enquanto testa APIs que requerem identity.
O que muda na prática
Se você desenvolve com Electron:
✅ Instale via npm:
npm install --save-dev @microsoft/winappcli✅ Use
winapp node add-electron-debug-identitypara debugging com Windows AI✅ Crie addons nativos C++ ou C# pré-configurados com Windows SDK
✅ Acesse Windows AI APIs direto do Node.js com
@microsoft/winapp-windows-ai
Se você usa .NET, C++, Rust ou Dart:
✅ Instale via WinGet:
winget install microsoft.winappcli✅ Configure ambiente:
winapp init✅ Gere manifesto:
winapp manifest create✅ Crie certificado dev:
winapp cert generate✅ Package final:
winapp pack ./build-output --cert ./cert.pfx
Se você trabalha com CI/CD:
✅ Use GitHub/Azure DevOps action: setup-WinAppCli
✅ Automatize packaging no pipeline
✅
winapp restorerecria ambiente exato em qualquer máquina
Timeline:
Agora: Public preview disponível - teste e dê feedback
Próximos meses: Mais comandos baseados em feedback da comunidade
Futuro: Possível integração com mais toolchains e frameworks
Principais comandos do CLI
winapp init
Configura workspace completo com SDK, projections, manifest, assets e certificado.
# Na raiz do seu projeto
> winapp init
winapp create-debug-identity
Adiciona Package Identity a um executável para debugging de APIs que requerem identity.
> winapp create-debug-identity my-app.exe
winapp manifest update-assets
Atualiza todos os assets de imagem no manifest a partir de uma logo.
> winapp manifest update-assets C:\images\logo.png
winapp cert generate
Cria certificado self-signed para desenvolvimento e opcionalmente instala no sistema.
> winapp cert generate
winapp pack
Empacota aplicação como MSIX pronto para distribuição.
> winapp pack ./build-output --cert ./devcert.pfx
winapp restore
Recria ambiente de desenvolvimento baseado na configuração do projeto (útil para CI/CD e novos devs no time).
> winapp restore
Integração especial com Electron
A Microsoft criou integração first-class com Electron via pacote npm:
Debugging com Package Identity:
# Injeta identity no processo Electron em execução
> winapp node add-electron-debug-identity
> npm start # Agora com acesso a Windows AI APIs
Addons nativos pré-configurados:
# Scaffolding de addon C++ ou C# com Windows SDK
> winapp node create-addon
Windows AI direto do Node.js:
// Usando @microsoft/winapp-windows-ai
const { LanguageModel } = require('@microsoft/winapp-windows-ai');
const model = await LanguageModel.create();
const response = await model.generate('Explain quantum computing');
Como começar
Instalação geral (WinGet):
winget install microsoft.winappcli
Instalação para projetos Electron (npm):
npm install --save-dev @microsoft/winappcli
Guias de início rápido:
Recursos úteis:
Repositório GitHub (documentação completa)
Samples (exemplos prontos)
GitHub/Azure DevOps Action (para CI/CD)
Opinião da comunidade
O anúncio foi bem recebido, especialmente por desenvolvedores que trabalham com frameworks cross-platform. A principal reclamação histórica era a complexidade de configuração Windows comparada com macOS ou Linux - o winapp endereça exatamente isso.
Pontos positivos destacados:
Open-source desde o início (comunidade pode contribuir)
Foco em toolchains modernos (não só Visual Studio)
Package Identity para debugging resolve problema real
Integração Electron é bem pensada
Preocupações levantadas:
Ainda em preview - pode ter bugs e breaking changes
Cobertura de cenários limitada (time está pedindo feedback)
Documentação ainda sendo expandida
O que vem por aí
A Microsoft deixou claro que o winapp está em estágio inicial e pediu feedback ativo da comunidade. O roadmap será direcionado por:
Casos de uso reais reportados por desenvolvedores
Feature requests no GitHub
Cenários de desenvolvimento ainda não cobertos
A equipe está especialmente interessada em:
Novos comandos úteis
Integrações com outros toolchains
Melhorias na experiência de debugging
Automação de mais tarefas manuais
Créditos: Este artigo é baseado no anúncio oficial publicado por Nikola Metulev (Product Manager, Windows Platform & Developer) no Windows Developer Blog da Microsoft.
Fontes:
Relacionado:
Conclusão
O winapp CLI é uma ótima notícia para quem desenvolve apps Windows fora do ecossistema Microsoft tradicional. Se você usa Electron, Rust, ou qualquer toolchain moderno, vale a pena testar.
É especialmente útil se você quer experimentar Windows AI APIs, notificações ou outras features modernas sem mergulhar em complexidade de packaging.
O fato de ser open-source e estar em preview significa que há oportunidade real de moldar a ferramenta através de feedback. Se você tem pain points específicos em desenvolvimento Windows, esse é o momento de reportar.
Próximo passo sugerido: Instale o CLI, rode winapp init em um projeto teste e veja quanto tempo você economiza vs setup manual. Depois, compartilhe feedback no GitHub para ajudar a melhorar a ferramenta.
Boa sorte, e menos tempo configurando significa mais tempo codando! 🚀
