Marketplaces
Busca plugins en un catálogo, revisa qué hacen o publica tu propio catálogo.
Explora el marketplace oficial e instala un plugin
Escribe /extensions y pulsa m para abrir Plugins. Clarvis carga automáticamente el catálogo oficial getclarvis/marketplace; no necesitas añadir su URL a los ajustes.
- Usa izquierda y derecha para alternar entre All, Installed, cada marketplace, Workspace y Add Marketplace. Arriba y abajo recorren la colección.
- Pulsa
/para buscar solo en la colección actual ogpara instalar desde una URL Git. Intro en Add Marketplace registra otro catálogo. - Pulsa Intro en un plugin para revisar origen exacto, estado del perfil, agentes, skills, MCP, hooks, servicios y comandos.
- Pulsa Intro de nuevo en una entrada disponible para instalar y activar el plugin completo en el perfil actual. El pie derecho muestra la operación y el tiempo transcurrido.
Una entrada de marketplace solo apunta a un repositorio: aparecer en el catálogo no instala ni activa nada. Elegir install and activate es el consentimiento explícito para el plugin completo, incluidos hooks y demás código ejecutable. Los plugins siguen en Installed aunque otro perfil los deje inactivos.
Solo las instalaciones Git globales gestionadas ofrecen Update. Las locales, npm, no gestionadas, enlazadas y del espacio siguen visibles, pero deben actualizarse en su origen.
El editor guiado sigue disponible desde /extensions: pulsa Intro, elige ámbito y perfil y añade o quita instalaciones y skills exactas. Escape retrocede un nivel. Si hay cambios sin guardar, se pide confirmación antes de descartarlos.
Comportamiento de la TUI local
Explorar marketplaces ejecuta Git en la máquina que muestra la TUI. Usa esta función con la TUI local de Clarvis. Un futuro anfitrión remoto podría separar la máquina de visualización de la de instalación.
Publica un marketplace
Crea un repositorio Git con marketplace.json en la raíz:
{
"name": "acme-extensions",
"displayName": "Acme Extensions",
"description": "Reviewed Clarvis plugins for Acme projects.",
"plugins": [
{
"name": "quality-kit",
"source": {
"source": "url",
"url": "https://github.com/acme/quality-kit.git",
"ref": "v1.2.3"
},
"description": "Review-oriented agents, skills, and checks.",
"displayName": "Quality Kit",
"homepage": "https://github.com/acme/quality-kit",
"category": "Quality",
"policy": {
"installation": "AVAILABLE",
"authentication": "ON_FIRST_USE"
}
},
{
"name": "repo-tools",
"source": {
"source": "git-subdir",
"url": "https://github.com/acme/clarvis-plugins.git",
"path": "plugins/repo-tools",
"ref": "main"
},
"description": "Repository maintenance helpers."
},
{
"name": "formatter-kit",
"source": {
"source": "npm",
"package": "@acme/formatter-kit",
"version": "1.0.0"
},
"description": "Formatting helpers distributed through npm."
}
]
}Cada entrada utilizable necesita name y source. El nombre es la identidad esperada de instalación: si el plugin declara nombre, debe coincidir; un manifiesto compatible sin nombre recibe el de la entrada. Las discrepancias se rechazan para evitar espacios de nombres ambiguos.
Se admiten estos orígenes:
- una URL Git de texto, incluida HTTPS, SSH o SSH de estilo scp;
{ "source": "url", "url": "…", "ref": "…" }, con opción de sustituirrefpor unshacompleto;{ "source": "git-subdir", "url": "…", "path": "…" }, con ruta relativa confinada y, opcionalmente,refosha;{ "source": "local", "path": "plugins/example" }, dentro del directorio del marketplace;{ "source": "npm", "package": "@scope/name", "version": "…", "registry": "…" }, con versión y registro opcionales; un registro propio debe ser HTTPS sin credenciales en la URL.
Los orígenes locales se copian al inventario gestionado con límites de archivos, cantidad y profundidad. Se rechazan enlaces simbólicos y entradas especiales. En un catálogo Git remoto, una fuente local confinada se convierte en referencia al repositorio y subdirectorio antes de eliminar la copia temporal. La adquisición npm desactiva scripts de ciclo de vida, auditorías y solicitudes de financiación. Usa Git remoto o npm si el catálogo debe funcionar fuera de su propia copia.
policy.installation admite AVAILABLE, INSTALLED_BY_DEFAULT y NOT_AVAILABLE; policy.authentication admite ON_INSTALL y ON_FIRST_USE. Son políticas de presentación, no autorización: cargar un catálogo nunca instala, activa ni autentica un plugin. NOT_AVAILABLE oculta la acción de instalar. displayName, description, homepage, category y los datos limitados de interface solo afectan a la presentación.
Los documentos se leen de forma flexible, como los manifiestos de plugins. Los campos desconocidos y problemas recuperables de presentación se muestran como notas, sin convertirse en comportamiento. Las entradas sin name o source utilizables se descartan.
Para contribuir al catálogo oficial, sigue el proceso de getclarvis/marketplace. El repositorio registra los metadatos de revisión y la revisión exacta del origen examinada para cada entrada aceptada. El código permanece en el repositorio original; path indica un subdirectorio solo si hace falta.
Configura otro marketplace manualmente
El oficial está integrado y no se escribe en los ajustes. La TUI guarda las URL adicionales en la configuración global. También puedes editar ~/.clarvis/settings.json:
{
"marketplaces": ["https://github.com/acme/clarvis-marketplace.git"]
}Un espacio puede declarar marketplaces en .clarvis/settings.json. Si cambia su configuración protegida, Clarvis solicita la huella exacta al entrar. /workspace-trust permite revisar o revocar después.