ChandraChaan/release-check

Executa uma verificação de pré-lançamento em um projeto Flutter antes de compilar para Google Play ou App Store. Use quando o usuário perguntar 'meu aplicativo está pronto para lançamento', 'verifique antes de publicar', 'checklist de lançamento', 'por que meu app foi rejeitado', ou antes de executar flutter build appbundle / ipa.

O que é release-check?

Este skill automatiza a verificação de pré-lançamento (preflight) de um aplicativo Flutter, garantindo que ele não seja rejeitado pelas lojas Google Play e App Store. Ele executa um script shell que testa versão, changelog, análise estática, testes, resquícios de depuração, Android e iOS, reportando resultados como OK, WARN ou FAIL. Para cada falha ou aviso, o skill orienta o usuário a abrir os arquivos relevantes e aplicar correções específicas, como ajustar o número da versão no pubspec.yaml, alterar o applicationId, configurar assinatura de release, ou criar o PrivacyInfo.xcprivacy. Além disso, inclui verificações manuais que o script não cobre, como SDK alvo, ícone e splash padrão, permissões, assets da loja, exclusão de conta e login para revisores. Ao final, gera um relatório conciso com veredito (PRONTO / NÃO PRONTO), itens obrigatórios e recomendados de correção, e próximos comandos sugeridos. O skill é compatível com ferramentas como Claude Code, Cursor e Codex, e é ideal para desenvolvedores que desejam evitar rejeições nas lojas e garantir que seu aplicativo esteja em conformidade com as diretrizes antes do lançamento.

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/ChandraChaan/flutter-release-kit/tree/HEAD/skills/release-check

Installed? Explore more Programação e Desenvolvimento skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Verificação de lançamento

Você está ajudando um desenvolvedor Flutter a publicar uma versão que não será rejeitada pela Google Play ou pela revisão da App Store. Seja concreto: nomeie o arquivo e a alteração exata para cada problema.

Passo 1: execute a verificação pré-lançamento determinística

Na raiz do projeto Flutter, execute:

bash "${CLAUDE_PLUGIN_ROOT}/scripts/preflight.sh" $ARGUMENTS

O script imprime linhas OK / WARN / FAIL agrupadas por seção (Versão, Changelog, Análise estática, Testes, Resquícios de depuração, Android, iOS) e sai com código 1 em caso de qualquer FAIL. Pode levar um minuto quando os testes são executados. Se o usuário estiver claramente no meio do desenvolvimento e quiser apenas uma olhada rápida, passe --skip-tests.

Passo 2: investigue cada FAIL e WARN

Para cada item, abra o arquivo que o script nomeia e confirme a descoberta antes de relatá-la. Correções comuns:

DescobertaCorreção
Versão sem número de buildAltere version: 1.2.0 para version: 1.2.0+1 no pubspec.yaml.
Tag já existe para esta versãoExecute o skill bump-version.
applicationId com.example ou bundle idUse flutter pub run change_app_package_name:main com.suaempresa.app ou edite android/app/build.gradle(.kts) e as três entradas PRODUCT_BUNDLE_IDENTIFIER em ios/Runner.xcodeproj/project.pbxproj.
Release assinada com chave de depuraçãoAdicione o carregamento de key.properties e um signingConfig de release; veja references/android-signing.md.
key.properties ou *.jks rastreados pelo gitAdicione ao .gitignore, depois git rm --cached <arquivo>; troque a senha do keystore se o repositório for público.
Sem PrivacyInfo.xcprivacyCrie ios/Runner/PrivacyInfo.xcprivacy; modelo em references/privacy-manifest.md.
debuggable=true, tráfego de texto claro, URLs localhostRemova antes do lançamento.
Erros do analisador / testes falhandoCorrija-os; não sugira pular.

Passo 3: verifique coisas que o script não pode

Observe o projeto e considere:

  • SDK alvo: a Google Play exige que novos aplicativos e atualizações visem um nível de API Android recente (o requisito contínuo da Play é aproximadamente o lançamento do ano anterior). Verifique targetSdk em android/app/build.gradle(.kts) ou o padrão do Flutter.
  • Ícone e splash do aplicativo: o ícone padrão do Flutter é motivo de rejeição na revisão e uma desinstalação instantânea para os usuários. Verifique a configuração de flutter_launcher_icons / flutter_native_splash ou as pastas mipmap.
  • Permissões: se o manifesto tiver algo além de INTERNET, sugira executar o skill permission-audit.
  • Assets da loja: graphic feature 1024x500 (Play), capturas de tela para cada classe de dispositivo exigida, URL da política de privacidade (exigido se o aplicativo coletar qualquer dado ou solicitar permissões sensíveis).
  • Exclusão de conta: ambas as lojas exigem um caminho de exclusão de conta no aplicativo se ele suportar criação de conta.
  • Login para revisores: se houver uma tela de login, lembre o usuário de fornecer uma conta de demonstração nas notas de revisão.

Leia references/store-rejections.md para a lista completa de motivos comuns de rejeição e suas correções quando o usuário perguntar por que foi rejeitado ou quiser uma revisão mais aprofundada.

Passo 4: relate

Retorne um relatório curto:

  1. Veredito: PRONTO / NÃO PRONTO.
  2. Corrigir obrigatoriamente (itens FAIL, cada um com arquivo e alteração exata).
  3. Corrigir recomendadamente (itens WARN que importam para este aplicativo).
  4. Próximos comandos: geralmente flutter build appbundle --release e flutter build ipa --release, precedidos por bump-version e changelog quando a versão já foi publicada.

Mantenha conciso. Não repita linhas OK a menos que o usuário peça a saída completa.

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

Habilidades Relacionadas