Los paquetes no son lo mismo que los plugins nativos de OpenClaw. Los plugins nativos se ejecutan
dentro del proceso y pueden registrar cualquier capacidad. Los paquetes son conjuntos de contenido con
una asignación selectiva de funciones y un límite de confianza más restringido.
Por qué existen los paquetes
Muchos plugins útiles se publican en formato de Codex, Claude o Cursor. En lugar de exigir que sus autores los reescriban como plugins nativos de OpenClaw, OpenClaw detecta estos formatos y asigna el contenido compatible al conjunto de funciones nativas. Se puede instalar un paquete de comandos de Claude o un paquete de Skills de Codex y usarlo de inmediato.Instalar un paquete
1
Instalar desde un directorio, archivo o marketplace
<source> es una ruta o repositorio de marketplace local, o una fuente de git/GitHub.2
Verificar la detección
Format: bundle y un valor Bundle format: de codex,
claude o cursor.3
Reiniciar y usar
Qué asigna OpenClaw desde los paquetes
Actualmente, no todas las funciones de los paquetes se ejecutan en OpenClaw. A continuación se indica qué funciona y qué se detecta, pero todavía no está conectado.Compatibilidad actual
Contenido de Skills
- Las raíces de Skills del paquete se cargan como raíces de Skills normales de OpenClaw.
- Las raíces
commands/de Claude se tratan como raíces de Skills adicionales. - Las raíces
.cursor/commands/de Cursor se tratan como raíces de Skills adicionales.
Paquetes de hooks
Las raíces de hooks del paquete funcionan solo cuando utilizan el diseño normal de paquetes de hooks de OpenClaw:HOOK.md más handler.ts o handler.js. Actualmente, este es principalmente
el caso compatible con Codex.
MCP para OpenClaw integrado
- Los paquetes habilitados pueden aportar configuración de servidores MCP.
- OpenClaw combina la configuración MCP del paquete con los ajustes efectivos de OpenClaw
integrado como
mcpServers. - OpenClaw expone las herramientas MCP compatibles del paquete durante los turnos del agente de OpenClaw integrado mediante el inicio de servidores stdio o la conexión a servidores HTTP.
- Los perfiles de herramientas
codingymessagingincluyen de forma predeterminada las herramientas MCP del paquete; se puede usartools.deny: ["bundle-mcp"]para excluirlas de un agente o Gateway. - Los ajustes del agente integrado locales del proyecto siguen aplicándose después de los valores predeterminados del paquete, por lo que los ajustes del espacio de trabajo pueden anular las entradas MCP del paquete cuando sea necesario.
- Los catálogos de herramientas MCP del paquete se ordenan de forma determinista antes del registro, para que
los cambios en el orden de
listTools()en el origen no alteren continuamente los bloques de herramientas de la caché de prompts.
Transportes
Los servidores MCP pueden utilizar el transporte stdio o HTTP. Stdio inicia un proceso secundario:sse, salvo que
se solicite streamable-http:
transportacepta"streamable-http"o"sse"; si se omite, el valor predeterminado essse.type: "http"es una estructura descendente nativa de la CLI; se debe usartransport: "streamable-http"en la configuración de OpenClaw.openclaw mcp setyopenclaw doctor --fixnormalizan el alias común.- Solo se permiten los esquemas de URL
http:yhttps:. - Los valores
headersadmiten la interpolación de${ENV_VAR}. - Se rechaza una entrada de servidor que contenga tanto
commandcomourl. - Las credenciales de URL (información de usuario y parámetros de consulta) se ocultan en las descripciones de las herramientas y los registros.
connectionTimeoutMsanula el tiempo de espera de conexión predeterminado de 30 segundos para los transportes stdio y HTTP. El tiempo de espera de las solicitudes es de 60 segundos de forma predeterminada y se puede anular conrequestTimeoutMs.
Nombres de herramientas
OpenClaw registra las herramientas MCP de los paquetes con nombres seguros para el proveedor con el formatoserverName__toolName. Por ejemplo, un servidor con la clave "vigil-harbor" que expone una
herramienta memory_search se registra como vigil-harbor__memory_search.
- Los caracteres que no pertenecen a
A-Za-z0-9_-se sustituyen por-. - Los fragmentos que comenzarían con un carácter que no sea una letra reciben un prefijo alfabético, por lo que las claves
numéricas de servidores como
12306se convierten en prefijos de herramientas seguros para el proveedor. - Los prefijos de servidor están limitados a 30 caracteres.
- Los nombres completos de las herramientas están limitados a 64 caracteres.
- Los nombres de servidor vacíos utilizan
mcpcomo alternativa. - Los nombres saneados que colisionan se distinguen mediante sufijos numéricos.
- El orden final de las herramientas expuestas es determinista según el nombre seguro, lo que mantiene estables en caché los turnos repetidos del agente integrado.
- El filtrado de perfiles trata todas las herramientas de un servidor MCP del paquete como
propiedad del plugin
bundle-mcp, por lo que las listas de elementos permitidos o denegados del perfil pueden hacer referencia a los nombres individuales de las herramientas expuestas o a la clave de pluginbundle-mcp.
Ajustes de OpenClaw integrado
settings.json de Claude se importa como ajustes predeterminados de OpenClaw integrado cuando
el paquete está habilitado. OpenClaw sanea las claves de anulación del shell antes de aplicarlas:
shellPathshellCommandPrefix
LSP de OpenClaw integrado
- Los paquetes de Claude habilitados pueden aportar configuración de servidores LSP.
- OpenClaw carga
.lsp.jsonjunto con las rutaslspServersdeclaradas en el manifiesto. - La configuración LSP del paquete se combina con los valores predeterminados efectivos de LSP de OpenClaw integrado.
- Actualmente, solo se pueden ejecutar los servidores LSP compatibles basados en stdio; los transportes
no compatibles siguen apareciendo en
openclaw plugins inspect <id>.
Detectado, pero no ejecutado
Estos elementos se reconocen y aparecen en los diagnósticos, pero OpenClaw no los ejecuta:agentsde Claude, automatizaciónhooks/hooks.json,outputStyles.cursor/agents,.cursor/hooks.json,.cursor/rulesde Cursor- Metadatos
.app.jsonde Codex más allá de los informes de capacidades
Formatos de paquetes
Paquetes de Codex
Paquetes de Codex
Marcadores:
.codex-plugin/plugin.jsonContenido opcional: skills/, hooks/, .mcp.json, .app.jsonLos paquetes de Codex se adaptan mejor a OpenClaw cuando utilizan raíces de Skills y directorios de
paquetes de hooks al estilo de OpenClaw (HOOK.md + handler.ts).Paquetes de Claude
Paquetes de Claude
Dos modos de detección:
- Basado en manifiesto:
.claude-plugin/plugin.json - Sin manifiesto: diseño predeterminado de Claude (
skills/,commands/,agents/,hooks/,.mcp.json,.lsp.json,settings.json)
commands/se trata como contenido de Skillssettings.jsonse importa en los ajustes de OpenClaw integrado (se sanean las claves de anulación del shell).mcp.jsonexpone herramientas stdio compatibles a OpenClaw integrado.lsp.jsony las rutaslspServersdeclaradas en el manifiesto se cargan en los valores predeterminados de LSP de OpenClaw integradohooks/hooks.jsonse detecta, pero no se ejecuta- Las rutas de componentes personalizadas del manifiesto son aditivas; amplían los valores predeterminados, no los sustituyen
Paquetes de Cursor
Paquetes de Cursor
Marcadores:
.cursor-plugin/plugin.jsonContenido opcional: skills/, .cursor/commands/, .cursor/agents/, .cursor/rules/, .cursor/hooks.json, .mcp.json.cursor/commands/se trata como contenido de Skills.cursor/rules/,.cursor/agents/y.cursor/hooks.jsonsolo se detectan
Precedencia de detección
OpenClaw comprueba primero el formato de plugin nativo:openclaw.plugin.jsono unpackage.jsonválido conopenclaw.extensions: se trata como un plugin nativo- Marcadores de paquete (
.codex-plugin/,.claude-plugin/o el diseño predeterminado de Claude/Cursor): se trata como un paquete
Dependencias de tiempo de ejecución y limpieza
- Los paquetes compatibles de terceros no reciben la reparación de
npm installal iniciarse. Deben instalarse medianteopenclaw plugins installe incluir todo lo necesario en el directorio del plugin instalado. - Los plugins incluidos propiedad de OpenClaw se distribuyen de forma ligera en el núcleo o se pueden descargar mediante el instalador de plugins. El inicio del Gateway nunca ejecuta un gestor de paquetes para ellos.
openclaw doctor --fixelimina los registros obsoletos de instalaciones locales de plugins incluidos y puede recuperar plugins descargables que falten en el índice local de plugins cuando la configuración todavía haga referencia a ellos.
Seguridad
Los paquetes tienen un límite de confianza más restringido que los plugins nativos:- OpenClaw no carga módulos arbitrarios de tiempo de ejecución de paquetes dentro del proceso.
- Las rutas de Skills y paquetes de hooks deben permanecer dentro de la raíz del plugin (se comprueban los límites).
- Los archivos de ajustes se leen con las mismas comprobaciones de límites.
- Los servidores MCP stdio compatibles pueden iniciarse como subprocesos.
Solución de problemas
El paquete se detecta, pero las capacidades no se ejecutan
El paquete se detecta, pero las capacidades no se ejecutan
Ejecute
openclaw plugins inspect <id>. Si una capacidad aparece en la lista, pero está marcada como
no conectada, se trata de una limitación del producto, no de una instalación defectuosa.Los archivos de comandos de Claude no aparecen
Los archivos de comandos de Claude no aparecen
Asegúrese de que el paquete esté habilitado y de que los archivos Markdown se encuentren dentro de una raíz
commands/ o skills/ detectada.La configuración de Claude no se aplica
La configuración de Claude no se aplica
Solo se admite la configuración integrada de OpenClaw procedente de
settings.json. OpenClaw
no trata la configuración del paquete como parches de configuración sin procesar.Los hooks de Claude no se ejecutan
Los hooks de Claude no se ejecutan
hooks/hooks.json solo se detecta. Si necesita hooks ejecutables, use la
estructura de paquetes de hooks de OpenClaw o distribuya un plugin nativo.Temas relacionados
- Instalar y configurar plugins
- Creación de plugins - cree un plugin nativo
- Manifiesto de plugin - esquema del manifiesto nativo