Install
npm install -g opensrcPara quem
opensrc é para quem precisa que um assistente de código leia o código-fonte das dependências: você quer a implementação de um pacote em npm, PyPI, crates.io ou GitHub, sem clonar o repositório à mão. A capacidade oferecida: o assistente acessa o código de qualquer pacote, e a linha de comando baixa esse código e o coloca em cache.
Mais especificamente, o caminho principal é uma CLI. Depois de instalar, aponte opensrc path para um nome de pacote: a primeira execução busca, as seguintes devolvem imediatamente o caminho local já em cache. Você pode passar esse caminho a comandos posteriores somente leitura, por exemplo procurar por nome de arquivo no diretório de um pacote PyPI.
Não serve como gerenciador de pacotes nem como ferramenta de publicação. A documentação do repositório para em «obter e cachear o código, devolver um caminho». Não diz como alterar um pacote, como publicar, nem que alterará automaticamente os arquivos do seu projeto. Se você só quer instalar dependências no projeto atual, continue com o gerenciador de sempre; não trate opensrc como instalador.
Primeira tentativa em 3 minutos
O único comando oficial de instalação é npm install -g opensrc. O repositório é https://github.com/vercel-labs/opensrc Siga só essa página. A documentação não dá outros instaladores nem comandos de marketplace; não invente.
Pré-requisitos: esta máquina já tem um npm utilizável e permite instalar uma CLI globalmente. O local de instalação é uma CLI global chamada opensrc. Depois de instalar, execute primeiro opensrc no terminal ou veja a ajuda para confirmar que o comando é encontrado; esta etapa não grava arquivos no diretório do seu projeto.
Primeira tarefa de baixo risco: escolha um pacote público que você já inspecionaria em somente leitura. Não aponte para um repositório privado ou sem autorização. No terminal execute opensrc path mais o nome do pacote. Segundo o repositório, a primeira execução busca e cacheia o código e depois devolve um caminho local. Sinal de sucesso: o comando imprime um caminho de diretório local, e repetir imediatamente o mesmo comando não espera a busca como da primeira vez — devolve o mesmo caminho na hora.
Se for usar o caminho devolvido em seguida, primeiro ecoe o caminho e só então decida se executa uma busca somente leitura. O exemplo do repositório é find $(opensrc path pypi:requests) -name "*.py": primeiro resolve o caminho em cache de pypi:requests e depois lista os arquivos Python. Antes de executar find, confirme que você só está vendo nomes de arquivo, sem apagar nem reescrever. A documentação não indica o local padrão do diretório de cache nem um comando de limpeza; a primeira tentativa pode parar em «obter um caminho e listar arquivos».
Casos de uso
Caso 1: dar ao assistente um diretório de código local reutilizável. O fluxo é opensrc path: primeira busca, depois o caminho em cache. Serve quando você lê a implementação de uma dependência e precisa abrir o mesmo diretório várias vezes. A documentação não lista todas as grafias de nome de pacote suportadas; só enfatiza a primeira busca e depois o caminho imediato. Se o comando falhar, volte a https://github.com/vercel-labs/opensrc e confira se a instalação terminou, em vez de mudar para um método não documentado.
Caso 2: ver arquivos de código entre registros. A CLI diz que pode obter e cachear código de npm, PyPI, crates.io e GitHub. O exemplo concreto do repositório é find ... -name "*.py" em pypi:requests, para listar os arquivos Python desse pacote. Serve quando você já conhece o prefixo do registro e só quer ver quais arquivos existem na árvore. A documentação não detalha formas equivalentes para GitHub ou crates.io e não descreve autenticação de pacotes privados; essas direções param em «a CLI afirma suportar essas origens». Não invente prefixos.
Limites de uso
Limite de instalação: o oficial só escreve npm install -g opensrc; não use um instalador não registrado. Limite de capacidade: a documentação dá a um assistente acesso ao código de qualquer pacote e cacheia código de npm, PyPI, crates.io e GitHub; não diz que alterará esses pacotes nem que substitui um gerenciador de pacotes da linguagem. Limite de operação: os comandos concretos conferíveis são opensrc path e find $(opensrc path pypi:requests) -name "*.py". O comportamento de cache chega a «primeira busca, depois devolver o caminho imediatamente»; não há política de expiração nem método de limpeza. Aparecem quatro registros, mas o texto não diz que são os únicos, e não dá passos de credencial para repositório privado.