Início tecnologia

xtool: compiler de apps iOS em open source sem Xcode

O xtool é uma ferramenta open source que substitui o Xcode fora do macOS: ela compila um pacote Swift em aplicativo de iPhone, assina e instala o app no aparelho conectado por USB. O projeto declara 14.860 estrelas e 839 forks no GitHub em 6 de novembro de 2026, com licença MIT e versão 1.24.0 publicada em 26 de outubro. O diferencial é o que ele não exige: nenhuma máquina da Apple para compilar, apenas o SDK que o próprio usuário extrai do Xcode. A base técnica é o Swift 6.4, que unificou o processo de compilação entre Windows, Linux e macOS.

Wireframe isométrico de um app com telas explodidas em linhas finas brancas sobre fundo azul
Imagem gerada usando o Magnific

O que é o xtool

O Xcode é o ambiente oficial da Apple para produzir software de iPhone, e ele só roda em macOS. O xtool ataca a parte que interessa a quem automatiza: a linha de comando. O projeto se apresenta como um substituto multiplataforma do Xcode e cobre três etapas que costumam andar juntas: empacotar um pacote SwiftPM em app iOS, assinar e instalar no dispositivo, e conversar com os serviços de desenvolvedor da Apple de forma programática.

Quem mantém é Kabir Oberai, que se descreve como único desenvolvedor do projeto no anúncio feito no fórum oficial do Swift, em maio de 2025. O repositório foi criado em novembro de 2024 e segue ativo: a versão 1.24.0 saiu em 26 de outubro de 2026 e o commit mais recente é de 6 de novembro de 2026, com correções de autenticação e de perfil de provisionamento. A licença é MIT, segundo o arquivo LICENSE.md, com copyright de 2024.

A tração merece ressalva. Estrela mede interesse, não estabilidade, e o número de 6 de novembro de 2026 convive com 118 issues e pull requests abertos, pela API do GitHub. O histórico recente mostra um projeto de uma pessoa: sete dos oito últimos commits assinados pelo autor. Para quem pretende depender da ferramenta em produção, o sinal relevante não é a contagem de estrelas, e sim o ritmo de correções e a lista de pendências declaradas pelo próprio autor.

Tecnologia e o SDK Darwin

O xtool não distribui nada da Apple, e isso define o desenho da instalação. Em vez de embarcar o SDK do iOS, ele pede que o usuário baixe o Xcode.xip com a própria conta Apple e aponte o caminho do arquivo. A ferramenta extrai o conteúdo, gera um SDK Swift para Darwin e o registra no toolchain, de forma que o comando de build possa compilar para o alvo arm64-apple-ios. Em Linux e Windows a instalação consome cerca de 7 GB em disco, segundo as notas da versão 1.20.0, com opção de instalação enxuta.

No Linux, o xtool depende do toolchain Swift 6.4 e do usbmuxd para falar com o iPhone, o mesmo componente usado por outros utilitários do ecossistema libimobiledevice. No Windows, a recomendação é rodar dentro do WSL com passagem de USB. Em macOS, a ferramenta também funciona, e ali o Xcode continua instalado apenas como fonte do SDK. O que muda é o formato do projeto: em vez de um .xcodeproj, o app é um pacote SwiftPM descrito por um xtool.yml.

A configuração fica em um arquivo xtool.yml de poucas linhas, com o bundle ID e as opções de empacotamento: produto principal, Info.plist próprio, entitlements de assinatura, ícone em PNG, recursos copiados para a raiz do bundle e extensões. O projeto também publica a biblioteca XKit, para quem quiser conversar com os serviços da Apple e com o aparelho de dentro de um app Swift.

Recursos já existentes

O recurso mais relevante hoje é o ciclo completo de desenvolvimento em uma única CLI: gerar projeto, compilar, instalar e lançar o app no aparelho, com assinatura e provisionamento resolvidos pelo xtool. A documentação oficial descreve cada etapa e o repositório distribui binário AppImage para Linux, instalação por Homebrew no macOS e imagem Docker.

  • Comandos de configuração para login na conta Apple, autenticação e gestão do SDK Darwin;
  • Geração de projeto SwiftPM com template pronto e integração com editores via SourceKit-LSP;
  • xtool.yml declarativo com bundle ID, Info.plist, entitlements, ícone e recursos;
  • Suporte a extensões de app, incluindo widgets, extensões de compartilhamento e do Safari;
  • Gestão de dispositivos, instalação, remoção e abertura de apps já instalados;
  • Biblioteca XKit para integrar os serviços de desenvolvedor da Apple em código Swift.

O que está por vir

O roadmap é do autor e não tem prazo publicado. Os itens declarados são envio de builds ao App Store Connect, depuração integrada com LLDB, suporte ao ExtensionKit, catálogo de assets e um caminho para converter projetos .xcodeproj existentes em projetos do xtool. O Interface Builder ficou de fora por decisão declarada, já que o SwiftUI cobre a maior parte dos casos. Cada avanço aparece nas notas de versão do repositório.

Principais dúvidas sobre o projeto

Preciso de um Mac? Para compilar, não. Para instalar, é preciso ter em mãos o Xcode.xip, que só pode ser baixado com uma conta Apple. O xtool roda em Linux, no WSL do Windows e em macOS.

Preciso pagar o Apple Developer Program? Não para testar no próprio aparelho. Contas gratuitas funcionam, e o xtool acrescenta um prefixo ao bundle ID para evitar conflito entre contas. Alguns direitos, como Network Extension, exigem o programa pago, e extensões do sistema dependem de permissões específicas da Apple.

Dá para publicar na App Store? Ainda não. O xtool instala no aparelho conectado, mas não envia builds ao App Store Connect, segundo a documentação atual.

Usar o xtool desrespeita o contrato da Apple? É uma dúvida em aberto, levantada na discussão do fórum do Swift. A licença do programa de desenvolvedores restringe o uso dos SDKs em computador que não seja da Apple, e o contrato tem de ser aceito para baixar o Xcode. O autor responde que a ferramenta não distribui SDK algum e sugere fazer o build final da App Store em CI macOS. Não há resposta jurídica definitiva, e cabe a quem usa ler o contrato.

Preciso de um agente de IA para usar? Não. O xtool é uma CLI comum, e é justamente esse formato que permite a um agente conduzir build, instalação e recompilação por conta própria. Vídeos que circulam no Instagram vendem essa combinação como atalho para criar apps de iPhone sem Mac, mas o setup inicial, o SDK e a autenticação de desenvolvedor continuam obrigatórios.

O xtool não torna o desenvolvimento de iOS independente da Apple, e não é isso que ele promete. Ele retira o Xcode do caminho e deixa o build, a assinatura e a instalação em um arquivo de configuração e um comando, que é o que faltava para automatizar o ciclo em Linux, Windows e macOS.

Repositório: github.com/xtool-org/xtool
Site e documentação: xtool.sh
Guia de instalação em Linux e Windows: Build your first iOS app
Versões: releases do xtool