Sobre o projeto

O Releases CLI é o cliente de linha de comando do releases.sh, um registro hospedado que indexa notas de versão, changelogs e anúncios de produtos coletados do GitHub, feeds RSS/Atom/JSON e páginas de changelog de produtos. Este repositório contém apenas a CLI; o worker da API, o servidor MCP, o frontend web e o pipeline de ingestão ficam em um repositório de backend separado. Pesquisar e navegar funcionam sem conta ou configuração, já que a CLI se comunica com a API hospedada. Fazer login desbloqueia recursos pessoais: seguir organizações e produtos, um feed personalizado de versões e webhooks de saída. O login usa o OAuth 2.0 Device Authorization Grant, aprovando um código curto em um navegador autenticado; apenas uma chave de API somente leitura é armazenada localmente (em ~/.releases/credentials com permissões 0600), nunca a sessão do navegador. O acesso de escrita e administrativo é descrito como um beta fechado separado. As opções de instalação incluem Homebrew, npm (instalação global ou npx), um instalador de shell e binários pré-compilados assinados publicados com checksums para instalações isoladas ou fixadas. As completions de shell são instaladas automaticamente pelo Homebrew e podem ser habilitadas em outros lugares com um comando de completion. Os comandos principais cobrem a busca de versões (opcionalmente limitadas por data de publicação com abreviações relativas como 90d ou 4w), o acompanhamento das últimas versões de um produto, a listagem por categoria, a obtenção de uma organização, produto ou fonte, a visualização de uma visão geral da organização gerada por IA, estatísticas do registro, o changelog do próprio projeto e o envio de uma URL de fonte ou feedback. Os identificadores são intercambiáveis: slugs, IDs tipados ou coordenadas org/slug funcionam, e os IDs são estáveis entre renomeações. Os comandos de leitura aceitam uma flag JSON, com comandos de lista emitindo um envelope items/pagination e leitores de versão oferecendo uma forma padrão enxuta ou um payload completo. Os comandos follow e feed gerenciam uma linha do tempo pessoal de organizações e produtos seguidos. Os comandos de webhook registram POSTs assinados de release.created, seja com escopo para uma organização (até dez, com filtros opcionais de fonte, produto e tipo) ou para o grafo de follows atual (um webhook). As chaves de assinatura são mostradas uma vez na criação ou rotação, e um comando verify verifica assinaturas localmente. Os webhooks também podem ser gerenciados em um workspace compartilhado, onde apenas owners e admins podem criar, editar, rotacionar ou excluí-los, enquanto qualquer membro pode listar, visualizar e testar. Os comandos de contribuição não precisam de conta: enviar uma URL de changelog, enviar feedback de bug ou ideia e validar um manifesto releases.json v2 contra o schema publicado offline. Tanto submit quanto feedback suportam prompts interativos, entrada via stdin e pré-visualizações JSON em dry-run. Para agentes de IA, o projeto aponta para um servidor MCP hospedado acessível via mcp-remote, e o repositório também funciona como um plugin de marketplace do Claude Code, fornecendo ferramentas MCP hospedadas, um comando de lookup e skills de acionamento automático. Um comando skills install adiciona as skills a outras ferramentas de agente também. Variáveis de ambiente permitem sobrescrever a chave de API e a URL base da API, e desabilitar a telemetria anônima. Para proxies que interceptam TLS, o binário compilado respeita as variáveis padrão de certificado CA do Node/OpenSSL. Os códigos de saída documentados distinguem sucesso, erros de aplicação, erros de uso ou do provedor e cancelamento. O projeto é licenciado sob MIT.