Skip to content

Processamento de Repositório GitHub ​

Uso Básico ​

Processar repositórios públicos:

bash
# Usando URL completo
repomix --remote https://github.com/user/repo

# Usando atalho do GitHub
repomix --remote user/repo

Você também pode passar o atalho owner/repo diretamente, sem --remote:

bash
repomix yamadashy/repomix

Como owner/repo também se parece com um caminho local relativo, o Repomix só o trata como um repositório remoto quando não existe nenhum arquivo ou diretório local com esse nome e o repositório está acessível no GitHub. Um caminho local existente sempre tem precedência; para forçar o tratamento local de um caminho no formato owner/repo, prefixe-o com ./ (por exemplo, repomix ./owner/repo). Se o argumento corresponder ao padrão mas o repositório não puder ser acessado (por exemplo, um repositório privado ou um erro de digitação), o Repomix volta a tratá-lo como um caminho local.

Seleção de Branch e Commit ​

bash
# Branch específico
repomix --remote user/repo --remote-branch main

# Tag
repomix --remote user/repo --remote-branch v1.0.0

# Hash do commit
repomix --remote user/repo --remote-branch 935b695

Requisitos ​

  • Git deve estar instalado
  • Conexão com a internet
  • Acesso de leitura ao repositório

Controle de Saída ​

bash
# Local de saída personalizado
repomix --remote user/repo -o custom-output.xml

# Com formato XML
repomix --remote user/repo --style xml

# Remover comentários
repomix --remote user/repo --remove-comments

Uso com Docker ​

bash
# Processar e enviar para o diretório atual
docker run -v .:/app -it --rm ghcr.io/yamadashy/repomix \
  --remote user/repo

# Enviar para um diretório específico
docker run -v ./output:/app -it --rm ghcr.io/yamadashy/repomix \
  --remote user/repo

Segurança ​

Por questões de segurança, os arquivos de configuração (repomix.config.*) de repositórios remotos não são carregados por padrão. Isso impede que repositórios não confiáveis executem código por meio de arquivos de configuração como repomix.config.ts.

Suas configurações globais e opções de CLI continuam sendo aplicadas normalmente.

Para confiar na configuração de um repositório remoto:

bash
# Usando flag da CLI
repomix --remote user/repo --remote-trust-config

# Usando variável de ambiente
REPOMIX_REMOTE_TRUST_CONFIG=true repomix --remote user/repo

WARNING

--remote-trust-config concede à configuração do repositório remoto o mesmo nível de confiança da sua própria máquina. Uma configuração confiável pode executar comandos arbitrários (via input.processors) e ler arquivos locais fora do repositório (por exemplo, via output.instructionFilePath ou padrões de inclusão que usam ../). Use-a apenas para repositórios em que você confia totalmente e que já revisou, com o mesmo cuidado que teria antes de executar um npm install ou um Makefile vindo de uma fonte desconhecida.

Prompt de confirmação ​

Quando você confia na configuração de um repositório em um terminal interativo, o repomix mostra a configuração que está prestes a ser executada e pede que você confirme antes de carregá-la:

  • Sim, só desta vez: confia apenas nesta execução.
  • Sim, e não perguntar novamente para este repositório: lembrado até que seus arquivos temporários sejam limpos, e apenas enquanto esse arquivo de configuração permanecer inalterado (um arquivo de configuração editado solicita confirmação novamente). Observe que isso cobre apenas o arquivo de configuração em si: uma configuração .ts / .js pode importar outros arquivos, e esses não fazem parte dessa verificação.
  • Não: aborta sem executar a configuração.

O prompt é ignorado quando você passa --force, em shells não interativos como CI (a configuração é considerada confiável como antes, mantendo a automação existente funcionando), ou depois que você escolher sempre confiar nesse repositório.

Para conhecer o modelo de confiança completo (o que uma configuração confiável pode fazer, como a configuração exibida é protegida contra adulteração e onde a decisão de "não perguntar novamente" é armazenada), veja Segurança.

Ao usar --config com --remote, um caminho absoluto é obrigatório:

bash
repomix --remote user/repo --config /home/user/repomix.config.json

Problemas Comuns ​

Problemas de Acesso ​

  • Certifique-se de que o repositório é público
  • Verifique a instalação do Git
  • Verifique a conexão com a internet

Repositórios Grandes ​

  • Use --include para selecionar caminhos específicos
  • Habilite --remove-comments
  • Processe branches separadamente

Recursos relacionados ​

Released under the MIT License.