Instalar com o rmk
Como os itens chegam às suas ferramentas de IA e como mantê-los atualizados.
A documentação que vem no Ronne AI Marketplace 0.3.0, traduzida do inglês.
O que o rmk faz
O rmk é a ferramenta de linha de comando do Ronne AI Marketplace. Ele instala itens deste marketplace em um projeto, ou na sua pasta pessoal, gravando os arquivos próprios de cada ferramenta de IA, e os mantém atualizados. A aba Overview de cada item mostra os comandos dele, com um --target rápido para cada ferramenta em que ele funciona:
rmk install @platform/secure-coding rmk install @platform/[email protected]
Ele registra o que instalou em um lockfile, para que todo mundo no projeto receba as mesmas versões, e nunca sobrescreve um arquivo ou uma configuração que você mesmo escreveu. Nada que vem de um item roda na hora da instalação: hooks e scripts são gravados, não executados.
rmk --help lista todos os comandos, e --json faz qualquer um deles responder com um único objeto JSON, para scripts e agentes.
Ele também funciona no sentido inverso: rmk export manda para este marketplace, como rascunho, um item que você escreveu na sua ferramenta de IA. Exportar os seus próprios itens.
Obter o rmk
O rmk está no npm como @ronneai/rmk (o nome sem escopo já estava em uso; o comando continua sendo rmk). Ele precisa do Node.js 22.12 ou mais recente:
npm install --global @ronneai/rmk rmk --version
npm update --global @ronneai/rmk traz um release mais novo. Se antes você o compilou a partir de uma cópia do repositório e criou um link, desfaça esse link primeiro (npm unlink --global @ronneai/rmk), para que o rmk que você roda seja o instalado pelo npm. Quem contribui ainda pode rodá-lo a partir de uma cópia do repositório: depois de pnpm install e pnpm build, ele é node packages/cli/dist/bin.js.
Fazer login
rmk login --registry https://ronne.example
Ele pede o seu e-mail e a sua senha e guarda um token para este registro em ~/.config/rmk/config.json, que só você pode ler. Com um token criado em Access tokens, ou em CI, use rmk login --token rmk_…, ou defina RMK_TOKEN e RMK_REGISTRY. RMK_TOKEN só vai para um registro que você escolheu (RMK_REGISTRY, --registry, o seu padrão ou um em que você fez login), nunca para um registro indicado apenas pelo rmk.config.json ou pelo rmk.lock de um projeto: em vez disso, o rmk para com token_withheld. rmk whoami diz quem você é, em qual registro e por que esse; rmk logout revoga o token.
Você pode estar logado em vários registros ao mesmo tempo. Cada comando usa o primeiro que encontrar:
--registryna linha de comando;RMK_REGISTRY;- o do projeto:
registryemrmk.config.jsonou, se não houver, emrmk.lock. Ormk installgrava esse valor, então o projeto mantém o seu registro e os colegas de time também o usam; - o seu padrão: o registro em que você fez login por último com
--registry.
Para mover um projeto para outro registro, rode rmk install --registry <url>: ele atualiza os dois arquivos.
O token só trafega por https, exceto para localhost.
Instalar
rmk install @platform/code-reviewer # latest rmk install @platform/code-reviewer@^1.4.0 # a range rmk install @platform/code-reviewer@next # a tag rmk install # exactly the lockfile
- Alvo. Quais ferramentas de IA:
--target claude-code,codex,cursor, várias (claude-code,cursor), ostargetsemrmk.config.jsonou as que o projeto parece usar.rmk platformslista as ferramentas e o que cada uma suporta; um tipo que uma ferramenta não aceita gera um aviso, e o resto segue em frente. - Resolver. O registro escolhe uma versão de cada item, dependências incluídas, como Dependências explica.
- Baixar e verificar. O checksum de cada pacote é verificado antes que qualquer coisa seja gravada; uma divergência interrompe a instalação. Uma versão que já está no
rmk.locktambém precisa ter o checksum registrado lá, pois uma versão lançada nunca muda: se o registro entregar outros bytes para ela, o rmk para (checksum_mismatch). Para aceitá-los mesmo assim, remova o item dormk.lock(com--scope user,~/.config/rmk/user.lock). - Gravar. Os arquivos que cada ferramenta lê, depois o lockfile e o arquivo de estado. Versões depreciadas mostram a sua mensagem, e servidores MCP listam as variáveis de ambiente que você ainda precisa definir.
rmk install sem nada depois instala exatamente o que o lockfile contém, para que um colega de time receba os mesmos arquivos. --scope user instala na sua pasta pessoal em vez de no projeto.
Manter os itens atualizados
rmk outdated rmk update # everything, within its ranges rmk update @platform/code-reviewer rmk remove @platform/code-reviewer
rmk outdatedmostra, para cada item que você pediu, a versão fixada no lockfile, a mais nova que a faixa dele permite e a mais nova publicada.rmk updateleva os itens para a versão mais nova que as faixas deles permitem e regrava os arquivos deles. Os itens que você não nomear ficam onde estão.rmk removeapaga os arquivos e as configurações de um item, e os de qualquer dependência de que nada mais precise.rmk listmostra o que o projeto pede;rmk list --installed, o que o lockfile contém.
Os arquivos que ele grava
| Arquivo | O que contém | Versionar? |
|---|---|---|
| rmk.config.json | O que você pediu: cada item com a sua faixa ou tag, os alvos e o registro. | Sim |
| rmk.lock | O que foi resolvido: uma versão e um checksum por item. | Sim |
| .rmk/state.json | Cada arquivo e configuração que o rmk gravou, com um hash, para que ele possa atualizar ou remover exatamente esses. | Sim: o rmk de um colega de time precisa dele para saber o que lhe pertence. |
| ~/.config/rmk/ | O seu token, e o lockfile e o estado das instalações na pasta pessoal. | Não |
Os downloads ficam em cache em ~/.cache/rmk/, por checksum.
As suas próprias edições
Todo arquivo que o rmk grava leva um marcador managed by rmk, e toda configuração que ele adiciona é rastreada no arquivo de estado. Antes de mudar ou remover um deles, ele verifica se o arquivo ou a configuração ainda é o que ele gravou.
- Um arquivo ou configuração que o rmk não gravou nunca é tocado. Se uma instalação precisar do lugar dele, isso é um conflito: o rmk para, lista os conflitos e sai com o código 3.
- Um que você editou depois que o rmk o gravou também é um conflito, na atualização e na remoção.
--forceos substitui; caso contrário, tire-os do caminho e rode de novo.- Um que você apagou é considerado removido de propósito: o rmk o esquece e só o grava de novo quando você instalar ou atualizar.
Para mandar as suas edições de volta para o item, rode rmk export: uma instalação editada vira uma proposta de mudança para a versão que você instalou.
Tokens e a API
O rmk e o servidor MCP do registro leem o registro pela API dele, com um token de acesso pessoal. Você cria um em Access tokens, na sua conta, ou o rmk login cria um para você. Um token age como você: ele pode ler tudo o que está publicado, buscar e baixar itens, e pode criar rascunhos em seu nome. Ele não consegue fazer login neste site, e você pode revogá-lo a qualquer momento.
curl -H 'Authorization: Bearer rmk_…' \ https://ronne.example/api/v1/items?q=security
Cada download de um item, como o que o rmk install faz, conta como uma instalação. Todo card no catálogo e na página inicial mostra a contagem, a página inicial ordena Most used por ela, e o Sort do catálogo pode colocar os mais instalados primeiro. Nada sobre quem instalou é guardado.
Um rascunho criado com um token (POST /api/v1/drafts, com os arquivos dele) é como um que você começa aqui: só você o vê, em Submissions, e nada chega a um revisor até que você o envie para revisão. Um token pode criar rascunhos enquanto você tiver menos de 50 (envie para revisão ou apague alguns para abrir espaço) e atualizar os seus próprios rascunhos (PUT /api/v1/drafts/…), com no máximo 30 envios em 10 minutos. Ele também pode enviar os seus rascunhos para revisão (rmk submit), que os revisores então veem. Cada envio de arquivos e cada envio para revisão é gravado no log de auditoria com o nome do token e o nome do rascunho, que o root pode ler; os arquivos não.
O servidor MCP do registro, rmk-mcp, usa o token que o rmk login salvou, ou RMK_TOKEN: ele pode fazer o que o token pode e nunca o mostra.
As suas ferramentas de IA
O rmk grava para uma ferramenta de IA ou para várias. Cada ferramenta tem a sua própria página: onde cada tipo de item vai e o que saber antes que a ferramenta o use.
| Ferramenta | Alvo | Detectada quando o projeto tem |
|---|---|---|
| Claude Code | claude-code | .claude/ ou CLAUDE.md |
| Codex | codex | .codex/ |
| Cursor | cursor | .cursor/ |
Com uma ferramenta detectada, o rmk usa essa; com várias, ele pergunta, ou você diz qual com --target. --target claude-code,codex grava para as duas, e um arquivo que duas ferramentas leem é gravado uma vez e registrado para ambas. rmk platforms lista todas as ferramentas e o que cada uma suporta.
Antes de você instalar, a página de um item diz, na aba Works in, para quais dessas ferramentas ele vai, e onde: com suporte, em parte, desativado pelo próprio ronne.yaml do item, ou ignorado. Os Filters do catálogo (Works in) listam os itens que uma ferramenta aceita, assim como rmk search <query> --target codex, e rmk info mostra o nível de cada ferramenta para uma versão.
De dentro da sua ferramenta de IA
Você também pode pedir à sua ferramenta de IA que busque e instale itens, pelo servidor MCP do registro, rmk-mcp: ele primeiro mostra um plano e depois grava exatamente esse plano, como o rmk faria. Do mesmo jeito, ele pode exportar como rascunho um item que você escreveu. Servidor MCP do registro explica como configurá-lo e o que ele pode fazer.
Como plugins
O Claude Code também pode instalar os itens deste marketplace por conta própria, como plugins, a partir do /plugin. Dois comandos configuram isso:
rmk plugin-setup claude-codeadiciona este marketplace às configurações do Claude Code (--scope projectpara as do projeto,--removepara tirá-lo). Como toda configuração que ormkgrava, ele nunca substitui uma entrada que você criou ou editou.rmk auth headersimprime o seu token como um cabeçalhoAuthorization, e nada mais. O Claude Code o roda para ler o marketplace; você não precisa rodá-lo.
Para o Codex e o Cursor, que só adicionam marketplaces a partir de repositórios git, rmk feed build --out <folder> grava os plugins deste marketplace como um repositório para você fazer commit e push, e --print-workflow github ou gitlab imprime um arquivo de CI que o mantém atualizado.
Marketplaces de plugins explica isso e quando usar plugins em vez de rmk install.
Relatório de uso
Quando a instância coleta dados de uso, o rmk manda para ela contagens diárias de instalações, remoções e execuções dos itens que instalou, e avisa isso na primeira vez. rmk telemetry status mostra a política de cada instância, e rmk telemetry off desliga o envio onde as pessoas podem escolher. Dados de uso diz exatamente o que é transmitido.