Como gerenciar seus repositórios com Inteligência Artificial usando ThinkIac e GitHub
Gerenciar repositórios normalmente envolve uma sequência repetitiva: criar branches, revisar alterações, fazer commits, abrir Pull Requests, acompanhar Issues e verificar se o código continua funcionando.
Com o ThinkIac, é possível delegar parte desse fluxo a um agente de IA, mantendo as ações importantes sob sua aprovação.
Neste tutorial, vamos instalar o ThinkIac com Docker, configurar a integração com GitHub e usar o agente para trabalhar com repositórios de forma controlada.
1. O que vamos montar
Ao final, você terá um ambiente capaz de:
- Listar repositórios e branches do GitHub.
- Clonar repositórios em um espaço privado do ThinkIac.
- Criar branches, commits e Pull Requests.
- Consultar e criar Issues.
- Pedir análises e alterações de código em linguagem natural.
- Manter a publicação de mudanças sob revisão humana.
O ThinkIac é modular: cada pacote adiciona recursos ao runtime. O pacote GitHub fornece as ferramentas de repositórios, branches, Git autenticado, Issues e Pull Requests.
2. Instale o ThinkIac com Docker
Em uma VPS ou máquina com Docker e Docker Compose instalados:
git clone https://github.com/ThinkIac/ThinkIac.git
cd ThinkIac
cp .env.example .env
Edite o arquivo .env e defina, no mínimo:
AGENT_LLM_PROVIDER=openrouter
AGENT_LLM_API_KEY=sua-chave-do-provedor
AGENT_LLM_MODEL=seu-modelo
AUTH_ENV_ADMIN_EMAIL=seu-email
AUTH_ENV_ADMIN_PASSWORD=uma-senha-forte
Depois, inicie a aplicação:
docker compose up -d --build
Acesse:
http://SEU_IP:5040/view/auth/Login
Entre com a conta administrativa configurada no .env.
Para acompanhar a inicialização:
docker compose logs -f
3. Configure o provedor de IA
O agente precisa de um provedor e modelo para interpretar seus pedidos.
Você pode utilizar OpenRouter, OpenAI ou Ollama, conforme sua infraestrutura. No exemplo anterior, usamos OpenRouter configurando:
AGENT_LLM_PROVIDER=openrouter
AGENT_LLM_API_KEY=sua-chave
AGENT_LLM_MODEL=seu-modelo
Reinicie o container após alterar o .env:
docker compose up -d --build
4. Configure a integração com GitHub
O pacote GitHub já faz parte do repositório ThinkIac.
No ThinkIac, abra:
Settings → Chaves de integrações → GitHub
Nessa tela, configure:
- Seu Personal Access Token do GitHub.
- Nome e e-mail que serão usados nos commits.
- A chave pública SSH exibida pelo ThinkIac.
Copie a chave pública e cadastre-a na sua conta GitHub em:
Settings → SSH and GPG keys → New SSH key
O token é usado nas operações da API, como repositórios, Issues e Pull Requests. A chave SSH é usada para clonar, baixar e enviar alterações para os repositórios.
Importante: use um token com acesso apenas aos repositórios que o agente realmente precisa gerenciar.
5. Comece com uma análise, não com alterações
Antes de autorizar qualquer modificação, peça uma revisão do repositório.
No Shell do ThinkIac, envie:
Analise meu repositório
usuario/meu-repositoriono GitHub. Liste a branch padrão, as branches abertas, os Pull Requests pendentes, as Issues abertas e a estrutura principal do projeto. Não crie, altere, faça commit, push ou Pull Request. Apresente primeiro um plano de trabalho e os riscos encontrados.
Essa primeira etapa permite entender o projeto antes de permitir ações que alterem o repositório.
6. Peça uma alteração com branch e Pull Request
Depois de revisar o plano, você pode pedir uma mudança controlada:
No repositório
usuario/meu-repositorio, crie uma branch chamadafeat/melhoria-documentacaoa partir da branch padrão. Atualize somente a documentação para explicar como executar o projeto localmente. Revise as alterações, execute as verificações disponíveis e me apresente o diff antes de criar qualquer commit ou enviar mudanças ao GitHub.
Após aprovar o diff:
Pode criar o commit com uma mensagem objetiva, enviar a branch ao GitHub e abrir um Pull Request. No Pull Request, descreva o que foi alterado, como foi validado e qualquer limitação encontrada.
Esse fluxo ajuda a preservar uma prática importante: a IA pode preparar o trabalho, mas a publicação continua revisável.
7. Trabalhe com Issues
Também é possível transformar uma Issue em uma proposta técnica antes de mexer no código:
Analise a Issue número 42 do repositório
usuario/meu-repositorio. Explique o problema, localize os arquivos provavelmente afetados, proponha uma solução incremental e diga quais testes devem ser executados. Não faça alterações ainda.
Quando a proposta estiver aprovada:
Implemente a solução da Issue 42 em uma nova branch. Preserve os comportamentos existentes, execute os testes pertinentes e apresente o diff para revisão antes de criar commit, push ou Pull Request.
8. Boas práticas de segurança
Dar acesso ao GitHub para um agente não deve significar dar autonomia irrestrita.
Alguns cuidados importantes:
- Use tokens com o menor conjunto de permissões possível.
- Comece com repositórios de teste ou projetos não críticos.
- Peça análise e diff antes de aprovar commits.
- Prefira branches e Pull Requests a alterações diretas na branch principal.
- Não deixe o agente ler, exibir ou versionar arquivos
.env, tokens, chaves privadas ou outros segredos. - Revise alterações em dependências, pipelines de CI/CD e permissões com atenção extra.
- Não processe conteúdo externo não confiável com ferramentas de escrita ou publicação habilitadas sem revisão humana.
Conclusão
O objetivo não é substituir o processo de engenharia, mas reduzir o trabalho repetitivo e deixar mais tempo para decisões técnicas.
Com ThinkIac e GitHub, você pode usar linguagem natural para investigar repositórios, preparar mudanças, organizar Issues e abrir Pull Requests, mantendo o controle das etapas que realmente importam.
O projeto ainda está em desenvolvimento, então vale começar pequeno, validar o fluxo no seu ambiente e evoluir as permissões conforme a confiança no processo aumenta.
Repositórios utilizados: