Por que uma skill recém-publicada devolve zero resultados na busca

Você acabou de ver uma skill bem legal num tópico da comunidade — digamos, “transformar os action items de um relatório semanal em um checklist” — e o autor diz que ela está publicada no skills.sh. Você abre o terminal, confiante:
hermes skills search weekly-report
Zero resultados. Você tenta outra palavra-chave. Zero de novo. Agora você já está duvidando da sua ortografia, ou da existência da skill. Meia hora depois você a instala pelo link do tópico, e ela funciona perfeitamente.
Não há nada de errado com você nem com a skill. O caminho que uma busca percorre e a pergunta “essa skill existe” simplesmente não são a mesma pergunta.
A busca acontece em duas etapas
Uma busca sem filtro — na CLI, na TUI e no dashboard — é respondida por um índice central que cobre os registries externos. Esse índice é reconstruído periodicamente, o que significa que ele responde “o que existia na última construção”, e não “o que existe agora”.
Isso deixa uma janela. Uma skill publicada poucos minutos atrás provavelmente ainda não está no índice.
Uma mudança mesclada em 16 de setembro trata essa janela: quando o índice devolve zero correspondências para a sua consulta, o Hermes também pergunta diretamente ao skills.sh, ao ClawHub, ao LobeHub e a endpoints conhecidos. Nas palavras da documentação, uma skill publicada minutos atrás ainda aparece.
Vale lembrar de alguns limites desse fallback:
- No máximo 8 segundos. Ele recebe uma fatia do orçamento da busca, então um registry lento não pode transformar um erro em uma longa espera;
- Ele só dispara quando o índice de fato terminou com zero resultados. Um índice que expirou não o aciona — uma distinção que a mesma mudança corrigiu, porque, do contrário, o dashboard acusava falsamente o skills.sh e o ClawHub de timeout;
- Filtros de provider não o disparam. Um filtro como
--source nvidiacasa com fontes que fornecem dados de provider, e esses registries não carregam nenhum dado desse tipo, então seriam quatro chamadas de rede garantidamente vazias; - O GitHub não está no fallback. O motivo é prático: um único erro de digitação gastaria todo o orçamento horário de GitHub de um usuário não autenticado. Para buscar taps do GitHub personalizados, peça por eles explicitamente.
Quer uma resposta precisa? Diga a fonte
O hermes skills search aceita --source, e a lista é maior do que a maioria das pessoas imagina:
hermes skills search kubernetes # todas as fontes
hermes skills search react --source skills-sh # somente o diretório skills.sh
hermes skills search report --source clawhub # somente o ClawHub
hermes skills search --source official # somente skills oficiais opcionais
As fontes disponíveis incluem official, skills-sh, well-known, github, clawhub, lobehub, browse-sh, além das agrupadas por provider, como nvidia, openai, anthropic, huggingface, voltagent, gstack e minimax — o conjunto completo está no --help.
Dois comandos irmãos valem o tempo gasto: hermes skills browse pagina por tudo (skills oficiais primeiro), e hermes skills inspect <name> mostra o que uma skill faz antes de você instalá-la. Adicione --json a uma busca quando quiser saída estruturada para um script.
O próprio índice também foi corrigido: um shard expirado não engole mais skills
O fallback é um remendo; a correção de verdade é tornar o índice confiável. O trabalho de 17 e 18 de setembro mirou uma classe de bug: tratar uma busca falha como “não há mais dados”.
- O catálogo do ClawHub avança por cursor. Quando uma página expirava ou retornava algo diferente de 200, o código antigo lia aquilo como o fim do catálogo, e todas as skills restantes desapareciam. Agora ele tenta de novo.
- O sitemap do skills.sh é buscado em shards. Um shard falho era lido como um shard vazio, e o catálogo parcial resultante era gravado no cache compartilhado — tirando skills da busca de todo mundo até o cache expirar. Agora um shard falho é repetido e, se continuar fora do ar, a fatia parcial é devolvida sem ser cacheada.
- O timeout do CI passou de 50 para 120 minutos. O commit explica o motivo com uma especificidade incomum: desde 17 de setembro o ClawHub serve mais ou menos uma página de 200 itens a cada 10 segundos (antes eram cerca de 2,5), então só a caminhada de ~400 páginas leva de 60 a 70 minutos. As execuções agendadas de 17 e 18 de setembro foram canceladas aos 50 minutos com o crawl ainda rodando, e outra parou em 12.145 skills — abaixo do piso de 20.000 — depois de uma única página falha. As duas metades precisaram ser corrigidas para o índice voltar a ser publicado.
Então, da próxima vez que uma busca vier vazia, siga esta ordem
Um: busque de novo, sem mudar nada. Se a skill acabou de ser publicada, o fallback teria perguntado — mas um orçamento de 8 segundos significa que um único registry lento ainda pode fazer a busca errar.
Dois: diga a fonte. --source clawhub ou --source skills-sh manda a consulta direto para aquele diretório e contorna completamente a atualidade do índice.
Três: busque no GitHub explicitamente. Taps personalizados não estão no fallback; use --source github.
Quatro: verifique se você está mesmo procurando uma skill. Se o que você quer é um plugin — do tipo que adiciona ferramentas, hooks ou adaptadores de plataforma — esse é outro pipeline: fixado por SHA, revisado por humanos e coberto em o artigo sobre o catálogo de plugins.
Para o panorama mais amplo — como o diretório de skills é organizado, os external_dirs e onde caem as skills criadas pelo agente via skills.create_dir — veja o artigo sobre o diretório de criação de skills. A superfície completa de comandos está na referência do comando skills.
A versão curta: não ver algo não é o mesmo que ele não existir. A busca sempre foi índice mais fallback, e as duas metades ganharam uma rodada séria de reparos em meados de setembro — então, da próxima vez que você receber zero resultados, pergunte se o que você quer está dentro do conjunto que ela consegue alcançar de fato.