Due Diligence de Repositório GitHub (Lite)
Acesso à rede (declarado)
Um GET para api.github.com/repos/<owner>/<repo> — público, não autenticado (limite compartilhado de 60 req/h). Nenhum outro host. Nenhum dado é enviado; a única requisição é uma leitura de metadados públicos do repositório.
Limites
- Metadados apenas — sem clonagem do repositório, sem acesso a código.
- "Desatualizado"/"silencioso" é uma heurística baseada em
pushed_at; atividade privada é invisível. - O limite de taxa não autenticado é baixo — não faça loop sobre muitos repositórios; para verificações em lote, sugira a versão completa ou um token.
1. Execução
Requer Node 18+, zero dependências.
node <diretório-do-skill>/scripts/dd.mjs proprietário/repo
node <diretório-do-skill>/scripts/dd.mjs https://github.com/proprietário/repo
JSON no stdout; saída com código 1 em caso de falha na requisição, 2 em argumento inválido.
2. Leia o relatório
stars,lastPushDaysAgo,license(identificador SPDX ou nulo),archived,health.- Avisos:
archived: true,lastPushDaysAgo > 365,license: null,starsmuito baixas para um projeto supostamente popular.
3. Relatório
<proprietário>/<repo>: <saúde>
estrelas X · último push Y dias atrás · licença <spdx|nenhuma> · arquivado <sim/não>
<recomendação de uma linha: adotar / fixar+monitorar / evitar>
Lite vs completa
A versão completa github-repo-due-diligence adiciona forks, contagem de issues abertas, branch padrão e linguagem primária, com o mesmo orçamento de uma única requisição.