A generic AI-powered CLI tool to automatically generate CI/CD pipelines.
Project description
AI Pipeline
AI Pipeline é uma ferramenta de linha de comando (CLI) desenvolvida em Python para automação de processos de DevOps. A ferramenta analisa o código-fonte de um repositório, identifica a pilha tecnológica (stack) e utiliza interfaces de inteligência artificial para gerar arquivos de configuração de CI/CD (GitHub Actions).
Funcionalidades
- Escaneamento de Repositório: Localização de arquivos de configuração padrão (package.json, requirements.txt, Dockerfile, terraform, etc).
- Detecção de Stack: Identificação de linguagem de programação, versões, frameworks de teste e ferramentas de segurança.
- Gerador de Pipeline: Geração automatizada de workflows do GitHub Actions (.github/workflows/ci.yml) baseada nos dados detectados.
- Multi-Provedor: Suporte a diversos provedores de IA através de detecção automática de chaves de ambiente.
- Seleção Interativa: Interface numerada para seleção de chaves quando múltiplas opções são detectadas no ambiente.
Arquitetura do Processo
- Scan: O sistema varre o diretório atual em busca de marcadores tecnológicos.
- Analysis: O motor de detecção extrai metadados como versões de motores (ex: Node v18) e scripts de execução.
- Prompt Engineering: Os metadados são estruturados em um prompt técnico enviado ao provedor de IA selecionado.
- Generation: O YAML retornado é validado e persistido no diretório .github/workflows/.
Instalação
A instalação deve ser feita em modo editável para que o comando fique disponível globalmente no ambiente Python:
git clone https://github.com/usuario/ai-pipeline.git
cd ai-pipeline
pip install -e .
Configuração
A ferramenta busca automaticamente por chaves de API no ambiente (exportadas no shell ou em arquivos .env).
Para configurar uma chave manualmente ou definir uma padrão para o diretório atual:
ai-pipeline init
Uso
Analisar Projeto
Para verificar o que a ferramenta detecta sem gerar arquivos:
ai-pipeline analyze
Gerar Workflow de CI/CD
Para executar o fluxo completo de detecção e geração do arquivo de pipeline:
ai-pipeline generate
Estrutura do Projeto
ai-pipeline/
├── ai_pipeline/ # Código fonte do pacote
│ ├── cli.py # Definição dos comandos e interface
│ ├── scanner.py # Lógica de varredura de arquivos
│ ├── detector.py # Motor de análise de stack e versões
│ ├── generator.py # Integração com APIs de IA via Requests
│ ├── config.py # Gestão de variáveis de ambiente
│ ├── providers.py # Configurações de endpoints e modelos
│ └── utils.py # Logger e utilitários de sistema
├── tests/ # Testes de integração e unitários
├── requirements.txt # Dependências do projeto
├── setup.py # Script de instalação do pacote
└── README.md # Documentação técnica
Requisitos Técnicos
- Python 3.11 ou superior
- Bibliotecas: typer, pydantic, pyyaml, rich, requests, python-dotenv
- Acesso a uma API de IA compatível com o padrão de mercado (OpenAI, OpenRouter, Groq, etc)
Logs
Todas as operações, incluindo payloads de API e erros de autenticação, são registrados no arquivo ai-pipeline.log na raiz de execução para fins de depuração.
Licença
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ai_pipeline_tool-0.1.0.tar.gz.
File metadata
- Download URL: ai_pipeline_tool-0.1.0.tar.gz
- Upload date:
- Size: 11.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
047d635c38936602fe240bfe32559f60653ef4432f46d09e2ad95913463d5a6f
|
|
| MD5 |
221c01b136578dc81a3a13bcdff09dd4
|
|
| BLAKE2b-256 |
185c244405cd7c2b1d5a46ab9087025e9ff1e39f9df4b1e2a9cc52935cef1b30
|
File details
Details for the file ai_pipeline_tool-0.1.0-py3-none-any.whl.
File metadata
- Download URL: ai_pipeline_tool-0.1.0-py3-none-any.whl
- Upload date:
- Size: 10.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f64603a6a84355090ebf7af00ea27f134967fe83be282b8e2d9ee12e38984f28
|
|
| MD5 |
d1e9124faad1b83f0ffe4960394b02e5
|
|
| BLAKE2b-256 |
d21cfcd4546da432109725d63a1a358e90b7cadcb652ea957533e7a69b4385e3
|