generating-python-installer
Cria instaladores de programas Python para Windows que são pequenos e iniciam rapidamente. É ideal para distribuir aplicativos Python como um pacote profissional e eficiente.
O que ela faz
Este agente ajuda a transformar seu programa Python em um instalador para Windows. Ele foca em fazer o instalador o menor e mais rápido possível, usando ferramentas avançadas.
Quando usar
- ✓Quando você precisa distribuir um programa Python para usuários Windows.
- ✓Se você quer que o instalador do seu programa seja o menor possível.
- ✓Se a velocidade de inicialização do seu programa é muito importante.
Exemplo do que pedir para a IA
“Transforme meu programa Python em um instalador pequeno e rápido para Windows.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Ele usa ferramentas como Nuitka para compilar seu código Python de forma otimizada e o Inno Setup para criar um pacote de instalação profissional. O processo inclui a remoção de arquivos desnecessários e a análise de bibliotecas para reduzir o tamanho final.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add affaan-m/ECC --skill generating-python-installerOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/affaan-m/ECC/main/skills/generating-python-installer/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Gerando Instalador Python (Nível Comercial)
Você é um especialista em implantação comercial de Python. Seu objetivo é o instalador Windows menor, mais rápido para iniciar e mais limpo. A abordagem principal é "Modo de pasta Nuitka (dist) + Empacotamento Inno Setup" — sem compilações em arquivo único, sem janelas de console perdidas.
Quando Ativar
Ative quando o usuário solicitar explicitamente empacotamento avançado de Python ou otimização de tamanho/inicialização no Windows:
- Compilação Nuitka extrema / nível comercial, compilações de menor tamanho ou inicialização mais rápida
distredução de pasta, análise de pegada de DLL, trocas de tamanho entre 32 bits e 64 bits- Empacotamento Inno Setup com metadados completos e desinstalação limpa e sem resíduos
Esta habilidade visa otimização avançada de tamanho/inicialização — não conversão básica de "script para exe" em arquivo único.
Como Funciona
- Confirme os parâmetros de compilação — nome do aplicativo, versão, publicador, nome do executável, diretórios de origem/saída, ícone. Nunca preencha automaticamente; pergunte ao usuário.
- Verifique a compilação de origem — console desativado, LTO ativado, runtime VC++ presente.
- Compile com Nuitka usando a estratégia de exclusão de módulos e plugins abaixo.
- Reduza a pasta
dist— remova símbolos de depuração, caches, testes e documentação, com salvaguardas para metadados necessários em tempo de execução. - Analise DLLs para encontrar e reduzir as maiores dependências.
- Empacote com Inno Setup — compressão LZMA2 ultra, metadados completos, desinstalação sem resíduos e um redistribuível VC++ compatível com a arquitetura.
Exemplos
- "用 Nuitka 把这个 PySide2 项目打成最小体积的商业安装包" → execute o fluxo de trabalho completo: recomende 32 bits, exclua WebEngine/3D/Charts, reduza
dist, empacote com Inno Setup. - "我的 exe 有 400 MB,怎么瘦身到一半" → analise DLLs, mude para
opencv-python-headless, removaopengl32sw, aplique reduçãodist. - "安装后在纯净系统打不开" → garanta que o redistribuível VC++ de arquitetura correspondente esteja incluído no script Inno Setup.
Ideia Central
Aderir à abordagem "Modo de pasta Nuitka (dist) + Empacotamento Inno Setup". Recusar versão em arquivo único, recusar janela preta.
Referência de Caso Prático (Aplicação Desktop PySide2 de Nível de Produção, 323 MB, Incluindo OpenCV / Playwright)
Visão Geral do Projeto
- Tamanho Total: 323 MB
- Ferramenta de Empacotamento: PyInstaller 4.7 (32 bits)
- Dependências Principais: PySide2 (22.52 MB), OpenCV (62.38 MB), Playwright (76.74 MB)
- Versão Python: Python 3.8 (32 bits)
- Número de DLLs: 71, totalizando 93.23 MB
Estratégias Chave de Otimização
- PASS: Usar Python 32 bits → Redução de tamanho de 20-30%
- PASS: Compressão do padrão de biblioteca base_library.zip → 0.74 MB
- PASS: Exclusão de Módulos Essenciais → Sem pytest/unittest/setuptools
- PASS: Exclusão de Plugins Qt Essenciais → Apenas plugins necessários
Distribuição de Tamanho
| Componente | Tamanho | Porcentagem | Sugestão de Otimização |
|---|---|---|---|
| playwright | 76.74 MB | 23.8% | Remover se não for necessário |
| OpenCV | 62.38 MB | 19.3% | Usar opencv-python-headless |
| PySide2 | 22.52 MB | 7.0% | Excluir WebEngine/3D/Charts |
| Outras Dependências | 161.36 MB | 49.9% | - |
Comparação de Efeito Esperado
| Tipo de Projeto | Nuitka Original | Otimizado | Teste Prático de Projeto de Referência |
|---|---|---|---|
| Tkinter + Biblioteca Padrão | 150-250 MB | 80-120 MB | - |
| PyQt/PySide | 200-400 MB | 120-250 MB | 323 MB (incluindo OpenCV, etc.) |
| Incluindo numpy/pandas | 300-600 MB | 180-350 MB | - |
Fluxo de Trabalho Principal (Workflow) - ATENÇÃO: Executar Rigorosamente
Ao solicitar o empacotamento, siga estas etapas:
Etapa 1: Confirmação Forçada de Parâmetros (FALHA: Proibido usar valores padrão)
ATENÇÃO: Regra Importante: Todos os parâmetros abaixo devem ser confirmados com o usuário um por um, proibido preenchimento automático ou uso de valores padrão!
Você deve perguntar e confirmar as seguintes informações com o usuário (continue somente após a resposta explícita do usuário):
| Parâmetro | Descrição | Exemplo |
|---|---|---|
| Nome do Software (App Name) | Nome de exibição do software | 红墨批注 |
| Número da Versão (Version) | Número de versão semântica | 1.0.0 |
| Nome do Publicador/Empresa (Publisher) | Publicador exibido no Painel de Controle | YourCompany |
| Nome do Executável Principal (Exe Name) | Nome do arquivo executável principal | RedInk.exe |
| Caminho da Origem (Source Dir) | Caminho absoluto da pasta Nuitka dist | D:\project\dist |
| Caminho de Saída (Output Dir) | Local de geração do pacote instalador | D:\project\output |
| Caminho do Ícone (Icon Path) | Caminho absoluto do arquivo .ico (opcional, mas recomendado) | D:\project\icon.ico |
| Endereço do Site Oficial (URL) | Opcional, para link no Painel de Controle | https://example.com |
Modelo de Pergunta:
"Por favor, forneça os seguintes parâmetros de empacotamento, preciso que você confirme um por um:
- Nome do Software:
- Número da Versão:
- Nome do Publicador/Empresa:
- Nome do Arquivo Executável Principal (ex: xxx.exe):
- Caminho da Origem (pasta Nuitka dist):
- Caminho de Saída (local de salvamento do pacote instalador):
- Caminho do Ícone (.ico, pode deixar em branco):
- Endereço do Site Oficial (pode deixar em branco):
Por favor, preencha um por um, ou responda 'pular' para usar um valor vazio."
Etapa 2: Verificação da Qualidade e Compilação dos Arquivos de Origem (Crucial) Antes de gerar o código, você deve emitir a seguinte confirmação chave para o usuário (pois o Inno Setup é apenas uma ferramenta de empacotamento e não pode alterar os atributos de execução do programa em si):
"ATENÇÃO: Verificação dos Parâmetros de Compilação:
- Sem Janela Preta: Por favor, confirme que sua pasta dist foi compilada usando
nuitka --windows-console-mode=disable. (Caso contrário, uma janela preta ainda aparecerá após a instalação)- Alto Desempenho: Por favor, confirme se
--lto=yesfoi usado. (Caso contrário, a velocidade de inicialização pode não ser ideal)- Runtime: Por favor, certifique-se de que o runtime VC++ necessário já esteja incluído na pasta dist para evitar falhas em sistemas limpos.
Por favor, responda 'Confirmar' se os arquivos de origem estiverem prontos, caso contrário, recompile primeiro."
Etapa 3: Geração do Código Após a confirmação do usuário, gere o código com metadados completos e correção do ícone de desinstalação.
Otimização Extrema de Compilação Nuitka (Baseado na Experiência de Projetos de Referência)
I. Estratégia de Seleção 32 bits vs 64 bits
Razões para o Projeto de Referência Usar Python 32 bits:
| Componente | Tamanho 64 bits | Tamanho 32 bits | Economia |
|---|---|---|---|
| python3x.dll | ~4.5 MB | ~3.8 MB | 15% |
| Qt5Core.dll | ~8 MB | ~5 MB | 37% |
| numpy | ~30 MB | ~20 MB | 33% |
| Total | Base | -20~30% | - |
Condições Recomendadas para Usar 32 bits:
- PASS: Ocupação de memória do programa < 2GB
- PASS: Não processa arquivos muito grandes (< 2GB)
…
Perguntas frequentes
Isso serve para criar um único arquivo executável?
Não, este agente foca em criar instaladores com uma pasta de arquivos e um desinstalador limpo, não em um único arquivo executável.
Meu programa usa bibliotecas pesadas como OpenCV. Isso vai funcionar?
Sim, o agente pode analisar e otimizar o tamanho das bibliotecas, e pode recomendar alternativas mais leves se disponíveis, para reduzir o tamanho total do instalador.
O instalador vai funcionar em qualquer computador Windows?
O agente garante que o instalador inclua as bibliotecas necessárias (como o Visual C++ Redistributable) para funcionar em sistemas Windows limpos, minimizando problemas de compatibilidade.
Detalhes
Descrição original do autor
Commercial-grade Python installer expert for Windows: Nuitka extreme compilation, dist slimming, DLL footprint analysis, and Inno Setup packaging to ship the smallest, fastest installers. Use when a Python app must ship as a minimal, fast-starting Windows installer; not for basic script-to-exe conversion. 中文触发:Nuitka 极限优化、Python 商业打包、极限编译 Python、dist 瘦身、DLL 分析、最小安装包、最快启动、商业级打包风格
repo: affaan-m/ECC
Popularidade
- Estrelas no GitHub
- 280 mil
- Posição no ranking
- #196
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
accessibility
Ajuda seu agente a criar interfaces que todos possam usar. Garante que sites e aplicativos funcionem bem para pessoas com deficiência, como cegos ou com mobilidade reduzida.
affaan-m/ECC
agent-architecture-audit
Faz seu agente verificar se tudo está funcionando corretamente. Ele encontra e conserta problemas em sistemas de IA, garantindo que funcionem como esperado.
affaan-m/ECC
agent-eval
Ajuda seu agente a comparar diferentes ferramentas de programação de IA. Ele mede qual é mais rápido, barato e confiável para realizar tarefas específicas.
affaan-m/ECC
agent-harness-construction
Faz seu agente entender melhor como realizar tarefas. Ele otimiza as ferramentas e instruções que o agente usa para aumentar suas chances de sucesso.
affaan-m/ECC
Skills parecidas
karpathy-guidelines
Ajuda seu agente a escrever código melhor, evitando erros comuns. É útil para garantir que o código seja simples, claro e fácil de verificar.
multica-ai/andrej-karpathy-skills
skill-creator
Permite ao agente criar, modificar e otimizar habilidades. Útil para testar o desempenho de habilidades e melhorar sua precisão.
anthropics/skills
ponytail-debt
Lista todos os atalhos de código ('shortcut:') deixados para depois. Ajuda a ver o que ainda precisa ser corrigido no projeto.
DietrichGebert/ponytail