Pular para o conteúdo
Documentação: Marketplaces de plugins

Marketplaces de plugins

Como instalar itens lançados como plugins: no Claude Code a partir deste site, no Codex e no Cursor a partir de um espelho git.

A documentação que vem no Ronne AI Marketplace 0.3.0, traduzida do inglês.

O que é

Este marketplace oferece os itens lançados dele ao Claude Code como um marketplace de plugins. Depois de adicioná-lo, você navega pelos itens e os instala a partir do /plugin no Claude Code como qualquer outro plugin, sem rmk install.

  • Nada muda na publicação: só versões lançadas são oferecidas, depois da revisão, e cada item na versão que o catálogo lista (a de latest).
  • Cada plugin é o item com as dependências com que ele seria instalado, resolvidas quando o plugin é gerado pela primeira vez; um pacote é um plugin com os membros dele. O nome é o do item, com um ponto: @team/secure-coding vira team.secure-coding.
  • Uma versão depreciada avisa isso no início da descrição. Uma versão retirada some do marketplace na próxima vez que o Claude Code o atualizar.
  • Itens que não cabem em um plugin não são oferecidos: linhas de status, políticas de permissões e regras que estão sempre ativas ou seguem padrões de arquivo. Instale esses itens com o rmk.
  • Cada download de plugin conta como uma instalação do item, como um download pelo rmk.

O Claude Code é a única ferramenta que consegue ler um marketplace direto deste site. O Codex e o Cursor só adicionam marketplaces a partir de repositórios git, então leem um espelho git dele.

Claude Code

  1. Faça login com rmk login, se ainda não fez: Instalar com o rmk.
  2. Adicione o marketplace ao Claude Code:
rmk plugin-setup claude-code                    # for you, in ~/.claude/settings.json
rmk plugin-setup claude-code --scope project    # for a project, in .claude/settings.json
rmk plugin-setup claude-code --remove

O comando adiciona o marketplace ronne-ronne-example, que o Claude Code lê a partir de:

https://ronne.example/api/v1/feeds/claude-code/marketplace.json

Com --scope project, faça commit de .claude/settings.json para compartilhá-lo: o Claude Code lê os marketplaces de um projeto depois que você confia na pasta, e cada pessoa continua fazendo login com o rmk.

Depois, instale: rode /plugin no Claude Code e escolha itens do marketplace, ou instale um pelo nome:

/plugin install team.secure-coding@ronne-ronne-example

A página de um item mostra esse comando no painel Install quando ele pode ser instalado como plugin. As skills e os comandos de um plugin rodam com o nome dele na frente, como /team.secure-coding:secure-coding.

O Claude Code busca o marketplace de novo quando você roda /plugin marketplace update, ou sozinho depois que você ativa a atualização automática dele em Marketplaces no /plugin. Um novo release aparece então como atualização.

É preciso ter o Claude Code 2.1.238 ou mais recente, e este site em um endereço https://: o Claude Code não baixa plugins por http:// nem de localhost.

Tokens

O marketplace precisa de um token, como o resto da API. O Claude Code obtém o seu rodando rmk auth headers, que o rmk plugin-setup indica nas configurações como o headersHelper do marketplace. Esse comando imprime o token que o rmk login salvou (ou o RMK_TOKEN), e o Claude Code o envia quando lê o marketplace e baixa plugins dele.

  • O Claude Code o roda a partir de ~/.claude, sem a configuração do seu shell, então um Node.js do nvm não está no PATH dele. Nas suas próprias configurações, o rmk plugin-setup indica pelos caminhos completos o Node.js e o rmk com que você o rodou: rode-o de novo depois de trocar ou atualizar o Node.js.
  • As configurações de um projeto indicam só rmk, já que são compartilhadas: nelas, o rmk e o Node.js precisam estar no PATH com que o Claude Code inicia. --command indica outro comando, como --command /opt/homebrew/bin/rmk.
  • Quando o token expira ou é revogado, o marketplace para de ser atualizado, e o Claude Code mostra que ele não carregou. Os plugins que você instalou continuam funcionando. Rode rmk login de novo para resolver.
  • Nas configurações de um projeto, o Claude Code esconde do comando as variáveis que parecem segredos, então o RMK_TOKEN não é visto ali: use rmk login.
  • Para um Claude Code mais antigo, --static-headers grava o próprio token nas suas configurações de usuário (nunca nas de um projeto, que normalmente vão para o git). Rode o comando de novo depois de fazer login outra vez.

Codex e Cursor (espelho git)

O Codex e o Cursor só adicionam marketplaces de plugins a partir de repositórios git. Por isso, o rmk grava os plugins deste marketplace como um repositório, um espelho, que você envia para o seu host git, e as ferramentas adicionam esse repositório.

git clone [email protected]:your-org/ronne-plugins.git && cd ronne-plugins
rmk feed build --out .
git add --all && git commit -m 'Update the plugin feed' && git push
  • Ele grava o arquivo de marketplace de cada ferramenta (.agents/plugins/marketplace.json para o Codex, .cursor-plugin/marketplace.json para o Cursor, .claude-plugin/marketplace.json para o Claude Code), cada plugin em plugins/<tool>/, e o .rmk-feed.json, a lista do que ele gravou.
  • O espelho tem os mesmos plugins do marketplace do Claude Code, cada um no formato da sua ferramenta: os plugins do Codex não levam agentes, e só os do Cursor levam regras que estão sempre ativas ou seguem padrões de arquivo.
  • Qualquer pessoa que consiga ler o repositório pode instalar todos os plugins dele. Mantenha-o privado, e deixe que o seu host git decida quem pode lê-lo.

Depois, adicione-o em cada ferramenta:

  • Codex: codex plugin marketplace add your-org/ronne-plugins (ou a URL git do repositório), e depois instale plugins dele. codex plugin marketplace upgrade busca o repositório de novo. O Codex o clona com git, então, para um repositório privado, o git dessa máquina precisa conseguir cloná-lo.
  • Cursor: um admin do time (plano Teams ou Enterprise) o importa no painel, em Settings › Plugins › Team Marketplaces › Import, a partir do GitHub, GitLab, Bitbucket ou Azure DevOps, e escolhe quem o vê. Numa importação do GitHub, Enable Auto Refresh traz cada push.
  • O Claude Code também pode adicioná-lo, com /plugin marketplace add your-org/ronne-plugins: para quem consegue ler o repositório mas não tem conta aqui.

Manter o espelho atualizado

Um novo release chega ao espelho na próxima vez que o rmk feed build rodar. Deixe que a CI o rode:

rmk feed build --print-workflow github > .github/workflows/ronne-plugin-feed.yml
rmk feed build --print-workflow gitlab > .gitlab-ci.yml
  • O workflow do GitHub roda todo dia e quando você o inicia, instala a mesma versão do rmk que o imprimiu, gera o espelho, e faz commit e push só quando algo mudou. Os comentários no topo dele dizem o que configurar: os secrets RMK_REGISTRY e RMK_TOKEN.
  • O job do GitLab faz o mesmo; você adiciona o agendamento diário dele em Build › Pipeline schedules, e ele também precisa do RMK_PUSH_TOKEN, um token de acesso de projeto que possa fazer push.
  • Crie o RMK_TOKEN em uma conta feita para o espelho: o build lê o que essa conta pode ler. Quando o token expira ou é revogado, o build falha e o espelho fica como estava, então as ferramentas mantêm os plugins; crie um token novo e atualize o secret.
  • Uma execução sem nada novo lançado não muda nada, então não há commit. Um novo release substitui a pasta daquele plugin inteira; a pasta de uma versão retirada é removida.
  • O rmk grava só os caminhos que registra: um README ou o arquivo da CI ficam como você os escreveu. Se algo em plugins/ não for dele, ou tiver mudado desde que ele o gravou, o build para e lista o que for (--force sobrescreve os caminhos dele). --tools codex,cursor gera o espelho só para algumas ferramentas.

Marketplaces grandes

O Claude Code só lê um marketplace a partir de um endereço se ele tiver no máximo 5 MiB e chegar em até 10 segundos. Cada item ocupa cerca de meio kilobyte, então o marketplace do Claude Code deste site chega a 5 MiB perto de 10.000 itens.

  • O marketplace é gerado uma vez e depois servido da memória até que algo seja lançado, marcado com uma tag, depreciado ou retirado. A primeira requisição depois de uma mudança o gera de novo.
  • Cada plugin é gerado na primeira vez que alguém o pede. Quando uma requisição esgota o tempo, ela lista o que já foi gerado, e o resto é gerado logo em seguida, então a próxima atualização lista tudo.
  • O root vê o último build de cada ferramenta em Admin › Settings › Plugin feeds: o tamanho, os plugins e o tempo de build, com um aviso quando o marketplace do Claude Code passa de 4 MiB ou um build leva 5 segundos.
  • Acima de 5 MiB, o marketplace do Claude Code responde com um erro. Nesse caso, adicione o espelho git no Claude Code: um marketplace em um repositório git não tem esse limite. Os do Codex e do Cursor não têm limite aqui, já que só o rmk feed build os lê.

Plugins ou rmk

  • Plugins são instalados de dentro do Claude Code, para você, e o Claude Code os guarda na própria pasta. Servem para experimentar itens, e para quem só usa o Claude Code.
  • rmk install funciona com todas as ferramentas, grava os arquivos no projeto e fixa as versões no rmk.lock para que o time receba as mesmas. O uso só é informado para itens que o rmk instalou.

Instale um item de um jeito só, não dos dois: o Claude Code o carregaria duas vezes. Quando o rmk install grava para o Claude Code um item que também está ativado como plugin deste marketplace, ele avisa, e instala mesmo assim. Desinstale o plugin no /plugin, ou rode rmk remove.