Aller au contenu

Ronne AI Marketplace

Un registre de capacités d'IA en code ouvert, auto-hébergé et organisé : skills, agents, règles, commandes, hooks, serveurs MCP et plus.

Aujourd'hui, ces fichiers vivent dans des dotfiles personnels. Ils divergent d'un coéquipier à l'autre, personne ne les a revus, et chaque outil d'IA veut son propre format. Le marketplace donne à l'équipe un seul catalogue revu, qui s'installe dans les fichiers de chaque outil.

$ rmk install @scope/name

En bref

Version
0.1.1
Licence
MIT
Bases de données
SQLite, PostgreSQL 15+, MySQL 8.4+, MariaDB 10.11+
S'installe dans
Claude Code, Codex, Cursor
Environnement
Node.js 24 (22.12+ works)

Des dotfiles à un catalogue

Ce qui change quand la configuration d'IA de l'équipe a un seul endroit revu.

Dans des dotfiles personnels

  • Chacun garde ses propres prompts, règles et réglages MCP, et ils divergent.
  • Personne n'a revu ce qu'un hook ou un serveur MCP peut faire avant qu'il tourne.
  • La même règle est réécrite pour Claude Code, Codex et Cursor, trois fois.

Dans le marketplace

  • Les éléments vivent sous des portées comme @team/code-review, et quelqu'un d'autre que l'auteur approuve chacun.
  • Un manifeste canonique, ronne.yaml, est rendu dans les fichiers de chaque outil au moment de l'installation.
  • Un rmk.lock versionné, avec des sommes de contrôle, signifie que chaque coéquipier et chaque tâche de CI reçoit les mêmes fichiers.

Ce que vous pouvez publier

Onze sortes d'éléments, chacun écrit une fois, dans une forme indépendante de l'outil.

Skillskill
Un dossier SKILL.md, selon le standard Agent Skills.
Agentagent
Un sous-agent avec ses propres instructions.
Règlerule
Des instructions de pilotage pour un projet ou un domaine.
Commandecommand
Une commande barre oblique.
Hookhook
S'exécute à un moment de la session : avant un outil, après un prompt, à l'arrêt.
Serveur MCPmcp-server
Une configuration de serveur; les secrets sont référencés par variable d'environnement, jamais stockés.
Politique de permissionspermission-policy
Ce qu'un outil peut faire, permis et refusé.
Style de sortieoutput-style
Comment l'assistant écrit. Claude Code seulement.
Ligne d'étatstatusline
La ligne d'état de l'outil dans le terminal.
Serveur LSPlsp-server
Un serveur de langage que l'outil peut utiliser.
Lotbundle
Plusieurs éléments installés ensemble.

Les hooks, les politiques de permissions et les serveurs MCP sont marqués à haut risque en revue. Les styles de sortie n'existent que dans Claude Code; quand un outil n'a pas de place pour un type, rmk avertit et le saute.

Comment un changement entre

Chaque élément passe par les mêmes étapes avant que quiconque puisse l'installer.

  1. 1BrouillonÉcrit dans l'application web : un formulaire, un éditeur de fichiers ou l'import d'un .zip. Privé jusqu'à la soumission.
  2. 2SoumisEn attente dans la file de revue. Peut être retiré jusqu'à l'approbation.
  3. 3RevueDiff, commentaires et signaux de risque. Des changements peuvent être demandés, puis l'élément resoumis.
  4. 4ApprouvéPar un modérateur ou root, autre que l'auteur. Le contenu est figé.
  5. 5PubliéUne version semver avec une étiquette de distribution, empaquetée avec une somme de contrôle sha256.

Les versions sont immuables une fois publiées. latest est l'étiquette par défaut et les préversions vont sous next. Une version peut être dépréciée (s'installe encore, avec un avertissement) ou retirée (les nouvelles installations ne la résolvent plus; les fichiers de verrouillage existants, oui). Les propositions de changement montrent un diff contre une version de base et deviennent périmées si une version plus récente sort avant.

Trois rôles : root, créé à l'installation; les modérateurs, qui revoient, approuvent et publient; et les utilisateurs, qui parcourent, installent et proposent. Les utilisateurs sont créés seulement dans l'application web.

Du registre à vos outils

Deux façons d'installer : une ligne de commande, ou depuis l'outil d'IA lui-même.

La ligne de commande rmk

rmk installe les éléments approuvés dans vos outils de programmation avec IA et les garde à jour. Il résout l'arbre, télécharge les archives, vérifie chaque sha256, rend les fichiers de chaque outil et écrit rmk.lock, fait pour être versionné.

  • login
  • logout
  • whoami
  • platforms
  • search
  • info
  • list
  • install
  • update
  • outdated
  • remove
  • mcp-setup

Il n'écrase jamais un fichier ou un réglage que vous avez fait à la main, ne stocke jamais de secrets, et répond en JSON avec --json. Sur npm sous @ronneai/rmk; la commande est rmk.

@ronneai/rmk sur npm (s'ouvre dans un nouvel onglet)

Le serveur MCP du registre

rmk-mcp permet à l'assistant de chercher dans le marketplace, de lire des éléments, et de les installer, mettre à jour ou retirer depuis la conversation. Il montre d'abord un plan de chaque fichier qu'il changerait, et ce n'est qu'ensuite qu'il applique exactement ce plan.

  • search_items
  • get_item
  • list_installed
  • check_outdated
  • plan_install
  • plan_update
  • plan_remove
  • apply_plan

Un plan dure 10 minutes et s'applique une seule fois. rmk mcp-setup enregistre le serveur auprès de chaque outil. Sur npm sous @ronneai/mcp.

@ronneai/mcp sur npm (s'ouvre dans un nouvel onglet)

S'installe aujourd'hui dans : Claude Code, Codex, Cursor. Prévu : GitHub Copilot (prévu), Gemini CLI (prévu), Antigravity CLI (prévu), Devin (prévu).

Le faire tourner

Deux façons de commencer. Aucune n'installe de serveur de base de données pour vous : SQLite n'a besoin de rien, et pour les autres vous créez d'abord une base vide.

Avec Docker

L'image est sur Docker Hub. Elle contient Node.js, et SQLite n'a pas besoin de serveur. Peu importe avec quoi vous la lancez, elle a besoin des trois mêmes réglages :

Image
ronneai/marketplace
Port à publier
3000
Volume, monté sur
/app/data
ronneai/marketplace sur Docker Hub (s'ouvre dans un nouvel onglet)
  • Docker Desktop. Cherchez l'image, téléchargez-la et lancez-la. Dans les réglages facultatifs, définissez le port de l'hôte et ajoutez un volume pour le chemin ci-dessus.
  • Portainer. Ajoutez un conteneur avec le nom de l'image, publiez le port et associez un volume au chemin ci-dessus.
  • Ligne de commande. La première ligne télécharge l'image et la démarre. Les deux autres sont l'installation décrite ci-dessous.

    $ docker run -d --name ronne-marketplace -p 3000:3000 -v ronne-data:/app/data ronneai/marketplace
    $ docker exec -it ronne-marketplace pnpm run setup
    $ docker restart ronne-marketplace

Faites l'installation, une seule fois. Ouvrez un terminal dans le conteneur (l'onglet Exec dans Docker Desktop, Console dans Portainer), lancez pnpm run setup et redémarrez le conteneur. L'installation demande la base de données, l'adresse publique et le compte root. Ouvrez ensuite http://localhost:3000.

Vos données vivent dans le volume; sauvegardez-le. Pour mettre à jour, téléchargez l'image de nouveau et recréez le conteneur avec le même volume. Les migrations de base de données en attente s'exécutent au démarrage du conteneur.

Depuis un clone

Il vous faut Node.js 24 (22.12 ou plus récent fonctionne) et pnpm, installé directement plutôt que par Corepack.

pnpm run setup demande quelle base utiliser, écrit le .env, crée les tables et le compte root. Le relancer est sans danger.

$ git clone https://github.com/ronneai/ronne-marketplace.git
$ cd ronne-marketplace
$ pnpm install
$ pnpm run setup
$ pnpm build && pnpm start

Bases de données : SQLite, PostgreSQL 15+, MySQL 8.4+, MariaDB 10.11+. Les mandataires inverses, l'installation sans questions et la réinitialisation du mot de passe root sont dans le README. (s'ouvre dans un nouvel onglet)

Code ouvert, à ses débuts

Le marketplace est sous licence MIT et construit au grand jour. La conception, l'index des fonctionnalités et chaque décision sont dans le dépôt.

Il est en développement initial, à la version 0.1.1. Prévu ensuite : des moteurs de rendu pour GitHub Copilot, Gemini CLI, Antigravity CLI et Devin, un compositeur visuel pour créer des éléments, et un assistant d'installation web.

Essayez-le, ouvrez un ticket ou envoyez une demande de tirage.