GitInProgress
A IA redige os commits, você decide o que entra. GitInProgress permite que sua IA leia sua árvore de trabalho não commitada e proponha como dividi-la em candidatos a commit focados — cada um com uma mensagem de commit rascunhada. Nada entra no histórico do git até que você revise e aprove; a IA nunca faz commit por conta própria.
Documentação
GitInProgress
Yusuke Abe
|
9 instalações
| (0) | Grátis
Agrupe as alterações da sua IA em candidatos de commit focados — edite as mensagens de rascunho; nada é aplicado até que você aprove.
Instalação
Abra o Quick Open do VS Code (Ctrl+P), cole o seguinte comando e pressione Enter.
Copiar
Copiado para a área de transferência
GitInProgress
A IA elabora os commits. Você decide o que vai para o histórico. O GitInProgress transforma uma árvore de trabalho bagunçada em candidatos de commit revisáveis: sua própria IA propõe como dividir as alterações em commits focados — cada um com uma mensagem de commit de rascunho — e então você refina o agrupamento, ajusta as mensagens e faz o commit. Nada entra no histórico até que você aprove — a IA nunca faz commit por conta própria. Ao longo do caminho, você pode testar cada agrupamento isoladamente e iterar com segurança.
O Git registra commits depois do fato. O GitInProgress os molda antes — nada entra no histórico até que você aprove.
Peça à sua IA "Elabore meus commits" — o GitInProgress divide uma árvore de trabalho bagunçada em candidatos de commit focados, cada um com uma mensagem de rascunho. Você revisa o agrupamento, prepara e faz o commit; nada entra no histórico do git até que você aprove. (Abre no painel inferior, junto com o Terminal integrado.)
O que ele faz
Divisão de commits por IA (principal)
Pare de olhar para uma pilha gigante de alterações não organizadas. Seu próprio cliente de IA (via MCP ou GitHub Copilot) lê sua árvore de trabalho e propõe uma maneira limpa de dividi-la em candidatos de commit — pequenos grupos focados de alterações, cada um com uma mensagem de commit pronta para edição, elaborada para você. Basta pedir à sua IA: "Elabore meus commits."
- Você mantém o controle — estas são propostas, não commits. Nada entra no seu histórico do git até que você revise, ajuste e confirme.
- Nada passa despercebido — alterações que você ainda não organizou ficam em uma Caixa de Entrada, fixada no topo, para que você sempre saiba o que ainda precisa de um destino. Você ou a IA as arquivam em candidatos a partir daí.
- Organize do seu jeito — reúna alterações em candidatos nomeados (chamados de ChangeBoxes) com arrastar e soltar, seleção múltipla, código de cores e reordenação.
- Divida até dentro de um único arquivo — um único arquivo frequentemente toca em duas coisas não relacionadas, então uma divisão limpa não pode parar nos limites do arquivo. Peça à sua IA para atribuir cada edição individual (um "hunk") a um ChangeBox diferente — por exemplo, "coloque o log de depuração em Debug". O commit então prepara apenas as linhas que aquele candidato possui; o restante permanece intocado.
- Faça commit de um grupo por vez — transforme um único candidato em um commit sem perturbar nada mais na sua árvore de trabalho.
Cada candidato (um ChangeBox) agrupa arquivos relacionados com uma mensagem de rascunho editável — revise, ajuste e faça o commit um por vez. A caixa Debug está estacionada, então ela fica fora de todos os commits.
Redes de segurança ⚡ Prévia Pro (atualmente grátis)
Experimente livremente — você sempre pode voltar a um estado conhecido e bom. (No plano Gratuito, excluir um arquivo simplesmente o descarta, sem recuperação.)
- Arquivo — um checkpoint não destrutivo que preserva o agrupamento ChangeBox de um candidato enquanto o remove da sua árvore de trabalho. Restaure manualmente sempre que precisar.
- Snapshot — capture uma cópia restaurável do seu trabalho deixando-o no lugar, para que você possa continuar editando.
- Separação automática ao trocar de branch / puxar — trocar de branch ou puxar com trabalho não commitado automaticamente o separa (agrupamento intacto) e oferece trazê-lo de volta quando você retornar.
- Lixeira — uma lixeira com janela de recuperação de 30 dias. Restaure arquivos individuais ou grupos inteiros de ChangeBox. A lixeira só é esvaziada quando você escolhe explicitamente.
- Iteração de IA com suporte à lixeira — um candidato que não deu certo vai para a lixeira, onde você pode pedir à IA uma abordagem diferente sem perder a antiga.
Arquivo remove seu trabalho da árvore de trabalho enquanto mantém o agrupamento de cada candidato — incluindo caixas estacionadas — pronto para restaurar manualmente sempre que precisar.
A lixeira mantém arquivos removidos por 30 dias, agrupados pelo candidato de onde vieram — restaure um único arquivo ou um grupo inteiro, e ela só é limpa quando você disser.
Teste de isolamento ⚡ Prévia Pro (atualmente grátis)
Teste uma parte do seu trabalho isoladamente para ver se realmente compila e passa — sem perder o resto.
- Teste um prefixo isoladamente — escolha quantos dos seus candidatos de commit manter ativos — os primeiros N, como um prefixo (#1, #1 –#2, …) — compile/teste apenas esses, e o restante é separado e depois restaurado quando você terminar.
Mantenha um prefixo dos seus candidatos (aqui #1 –#2) ativos para compilar e testar isoladamente; tudo abaixo da linha é separado e depois restaurado quando você terminar.
Contexto de trabalho
Lembre-se de por que você estava aqui e onde parou.
- Memorandos de branch — anexe uma nota e um status (Em andamento / Revisão / Aguardando merge / Abandonado) a cada branch. Quando você voltar, a nota anterior aparece para que você retome instantaneamente o fio da meada.
- Progresso de arquivo — veja as alterações não preparadas e preparadas de cada arquivo lado a lado em uma linha, com contagens de linhas adicionadas/removidas e botões de seta para preparar ou desfazer a preparação, em uma árvore recolhível (ou lista plana).
Commit e push
Conclua o trabalho sem sair do painel — faça commit e push com detecção automática de remoto e avisos quando seu branch não estiver rastreando um remoto.
Servidor MCP — integração com IA
Deixe sua IA fazer commit do jeito certo. O GitInProgress inclui um servidor MCP (Model Context Protocol) (stdio) para que clientes de IA — Claude Code, GitHub Copilot Chat, Cursor e qualquer cliente compatível com MCP — possam ler seu trabalho em andamento e fazer commit através dos seus candidatos em vez de executar git commit bruto. Ele expõe ferramentas de leitura além de ferramentas de escrita que são sempre recuperáveis; ações destrutivas (esvaziar a lixeira, exclusão permanente) são deliberadamente omitidas, para que uma IA nunca possa apagar seu trabalho.
→ Consulte MCP_SETUP.md para etapas de registro do cliente e a lista completa de ferramentas.
Preços
O GitInProgress é grátis para todos durante o acesso antecipado.
Grátis (experiência principal)
- Divisão de commits por IA (criar candidatos de commit a partir da sua própria IA)
- Edição manual de ChangeBox, commit por ChangeBox e Commit All
- Caixa de Entrada / Memorando de branch — excluir um arquivo o descarta (sem recuperação)
- Integração com servidor MCP (Claude Code / Copilot / Cursor leem e fazem commit através das suas divisões)
⚡ Prévia Pro (atualmente grátis)
(Consulte O que ele faz acima para detalhes.)
- Redes de segurança — Arquivo, Snapshot, Separação automática ao trocar de branch / puxar e Lixeira (recuperação de 30 dias; no Grátis, excluir um arquivo apenas o descarta)
- Teste de isolamento — compile/teste os primeiros N candidatos de commit (um prefixo) isoladamente
- Iteração de IA com suporte à lixeira — candidatos que falharam vão para a lixeira; peça à IA uma alternativa
O preço Pro é a definir, planejado para o lançamento estável v1.0+. Durante o acesso antecipado, os recursos da Prévia Pro são grátis para que você possa avaliar o conjunto completo de recursos.
Como os dados são armazenados
Todos os dados (memorandos, progresso de arquivo, caixas de alteração, metadados da lixeira) são salvos em .git/gitinprogress/ dentro do seu repositório. Eles são locais para cada repositório e ignorados pelo git — nada é enviado a nenhum servidor. Seu cliente de IA só vê esses dados quando você invoca o servidor MCP.
Para worktrees, cada worktree recebe um estado independente em <main>/.git/worktrees/<name>/gitinprogress/ (consulte docs/WORKTREE_SUPPORT.md para detalhes).
Requisitos e limitações atuais
- VS Code 1.105+ (a integração do servidor MCP incluída precisa de 1.99+)
- Um repositório Git no workspace
- Apenas workspace de raiz única: workspaces de múltiplas raízes não são suportados na v0.1.x — apenas a primeira pasta do workspace é rastreada. Abra cada projeto em sua própria janela por enquanto.
- Para usuários de
git worktree: abra cada diretório de worktree em uma janela separada (ciente de worktree: ✅, visualização entre worktrees: ❌).
Primeiros passos
- Instale a extensão do Marketplace.
- Abra um repositório git no VS Code.
- Abra o painel inferior (
Ctrl/Cmd+J) e selecione a aba GitInProgress — ela fica ao lado de Terminal, Saída e Problemas. - (Opcional) Conecte seu cliente de IA — consulte MCP_SETUP.md.
- Após editar arquivos, peça à sua IA: "Elabore meus commits" — então revise e faça commit de cada candidato você mesmo. (Sem IA conectada? Agrupe alterações com arrastar e soltar.)
O GitInProgress roda no painel inferior, como o terminal integrado — abra-o com Ctrl/Cmd+J e escolha a aba GitInProgress (ao lado de Terminal / Saída / Problemas).
Suporte
O GitInProgress é mantido por um único desenvolvedor (dev solo). Relatórios de bugs e solicitações de recursos são triados na base do melhor esforço — não há SLA. Durante o acesso antecipado, você é incentivado a usar os recursos da Prévia Pro e compartilhar feedback antes do lançamento da v1.0.
Relatórios de bugs e solicitações de recursos
Abra uma issue no rastreador público de issues. Use os modelos de issue fornecidos e inclua:
- Versão do VS Code
- Versão do GitInProgress
- SO
- Passos para reproduzir
- Comportamento esperado vs. real
- Logs do canal Saída → GitInProgress (se relevante)
Issues sem informações suficientes de reprodução podem ser fechadas após 7 dias de inatividade.
Vulnerabilidades de segurança
Não abra issues públicas para preocupações de segurança. Use o relatório privado de segurança do GitHub:
- Vá para a aba Segurança do rastreador de issues
- Clique em "Reportar uma vulnerabilidade"
- Preencha o formulário com os detalhes
Você deve receber um reconhecimento em até 7 dias.
Perguntas gerais
Use o rastreador de issues com o rótulo question.
Licença Pro / cobrança (v1.0+)
Um canal de e-mail dedicado para usuários do nível Pro será adicionado quando o nível Pro for lançado na v1.0+.
Licença e aspectos legais
O GitInProgress é software proprietário — consulte LICENSE para os termos completos. O código-fonte não é distribuído publicamente; cópia, modificação, redistribuição e engenharia reversa não são permitidas. Durante o acesso antecipado (v0.1.x), a extensão é grátis; alguns recursos podem exigir uma licença Pro paga a partir da v1.0. O período de acesso antecipado é sua chance de avaliar tudo primeiro.
Esta extensão inclui componentes de código aberto de terceiros, cada um sob sua própria licença permissiva (MIT / ISC / BSD). Consulte THIRD_PARTY_NOTICES.md para a lista completa e os textos das licenças.