Invitó a un bot a su servidor de Discord, pero sus comandos de barra diagonal no aparecen cuando escribe una barra diagonal. Esto ocurre cuando la caché del cliente de Discord aún contiene datos de permisos obsoletos o cuando el bot no ha recibido los alcances de comandos de aplicación correctos. Los comandos de barra diagonal existen en los servidores de Discord, pero su cliente o la configuración de permisos del servidor impiden que se muestren.
La causa principal suele ser una de tres cosas: el cliente de Discord almacenó en caché una lista de permisos desactualizada, el bot no tiene habilitado el alcance applications.commands para el servidor, o falta un permiso específico de canal o rol. Este artículo lo guía a través de la limpieza de la caché del cliente, la resincronización de los comandos del bot y la verificación de la configuración correcta del servidor para que los comandos de barra diagonal aparezcan de inmediato.
Puntos clave: Solución de caché y sincronización de comandos de barra diagonal del bot de Discord
- Ctrl+R o Cmd+R en Discord: Fuerza una recarga completa del cliente que actualiza la caché de comandos al instante.
- Portal de desarrolladores de Discord > Aplicaciones > Bot > Generador de URL de OAuth2: Asegura que el bot tenga habilitado el alcance applications.commands al volver a invitarlo.
- Configuración del servidor > Roles > Administrar permisos: Otorga el permiso Usar comandos de barra diagonal al bot y a los usuarios.
Por qué no aparecen los comandos de barra diagonal del bot de Discord
Discord almacena las definiciones de comandos de barra diagonal en sus servidores, no en su computadora. Cuando escribe una barra diagonal en un canal de texto, el cliente solicita la lista de comandos disponibles a la API de Discord. Si la caché local del cliente contiene una instantánea de permisos obsoleta, la respuesta de la API puede filtrarse incorrectamente. Los comandos del bot existen, pero el cliente cree que usted no tiene permiso para verlos.
La segunda causa común es que el bot fue invitado sin el alcance applications.commands. Este alcance es necesario para que el bot registre comandos de barra diagonal en su servidor. Sin él, el bot puede unirse al servidor pero no puede crear ni exponer ningún comando de barra diagonal. Debe volver a invitar al bot con el alcance correcto.
La tercera causa son las anulaciones de permisos de rol o canal. Incluso si el bot tiene el alcance correcto, un rol o canal específico puede tener el permiso Usar comandos de barra diagonal desactivado. Esto bloquea todos los comandos de barra diagonal para ese rol o canal, incluidos los comandos del bot.
Pasos para borrar la caché del cliente y resincronizar comandos
Siga estos pasos en orden. Después de cada paso, pruebe escribiendo una barra diagonal en cualquier canal de texto donde el bot tenga acceso.
- Forzar la recarga del cliente de Discord
Presione Ctrl+R en Windows o Cmd+R en macOS mientras la ventana de Discord esté activa. Esto recarga todo el cliente y borra la caché en memoria. Después de la recarga, escriba una barra diagonal en un canal de texto para ver si aparecen los comandos. - Borrar los archivos de caché de Discord
Si la recarga no funcionó, cierre Discord por completo. Abra el Explorador de archivos y navegue a%appdata%\discord\Cache. Elimine todos los archivos dentro de la carpeta Cache. También elimine los archivos dentro de%appdata%\discord\Code Cachey%appdata%\discord\Local Storage. Reinicie Discord. Esto obliga al cliente a descargar datos frescos de permisos y comandos desde los servidores de Discord. - Volver a invitar al bot con el alcance correcto
Vaya al Portal de desarrolladores de Discord y seleccione la aplicación de su bot. Haga clic en OAuth2 en la barra lateral izquierda, luego haga clic en Generador de URL. En Alcances, marque bot y applications.commands. En Permisos del bot, elija los permisos que necesita el bot (por ejemplo, Enviar mensajes, Leer historial de mensajes, Usar comandos de barra diagonal). Copie la URL generada, ábrala en una nueva pestaña e invite al bot a su servidor nuevamente. Esto asegura que el bot tenga el alcance para registrar comandos de barra diagonal. - Verificar que el bot tenga el permiso Usar comandos de barra diagonal
En su servidor, vaya a Configuración del servidor > Roles. Busque el rol asignado al bot (a menudo el propio rol del bot o @everyone). Haga clic en el rol, desplácese hasta Permisos generales y asegúrese de que Usar comandos de barra diagonal esté habilitado (marca verde). Si está deshabilitado, habilítelo y guarde. Repita para cualquier anulación específica de canal: haga clic derecho en el canal, vaya a Editar canal > Permisos, busque el rol del bot y verifique que Usar comandos de barra diagonal esté habilitado. - Resincronizar los comandos del bot manualmente
Algunos bots requieren una sincronización manual de comandos. Consulte la documentación del bot para un comando de sincronización, a menudo escrito como/synco/deploy. Si el bot usa Discord.js o Pycord, el propietario del bot puede ejecutar un comando en la consola del bot para registrar comandos globales nuevamente. Por ejemplo, un bot de Discord.js puede llamar aclient.application.commands.set([])y luego volver a registrar los comandos. Después de resincronizar, espere hasta una hora para que los comandos globales se propaguen, o use comandos de guild para actualizaciones instantáneas.
Si los comandos de barra diagonal del bot de Discord aún no aparecen
Los comandos del bot aparecen para mí pero no para otros usuarios
Esto generalmente significa que los comandos de barra diagonal del bot están configurados como comandos globales, que pueden tardar hasta una hora en propagarse a todos los usuarios. Alternativamente, los otros usuarios pueden tener un rol que bloquea Usar comandos de barra diagonal. Verifique los permisos de rol para cada usuario afectado. También pídales que presionen Ctrl+R o Cmd+R para recargar su cliente.
Los comandos de barra diagonal funcionan en un canal pero no en otro
Las anulaciones de permisos específicas del canal son la causa. Haga clic derecho en el canal donde no funcionan los comandos, vaya a Editar canal > Permisos, busque el rol del bot o @everyone, y habilite Usar comandos de barra diagonal. Si el canal es un hilo privado, asegúrese de que el bot tenga acceso al canal principal y al hilo mismo.
El bot no responde después de escribir el comando de barra diagonal
El comando aparece en el menú pero no sucede nada al presionar Enter. Esto indica que el código del bot tiene un error o que el bot está desconectado. Verifique si el bot está en línea en la lista de miembros. Si está desconectado, el host del bot debe reiniciar el proceso del bot. Si el bot está en línea pero no responde, el desarrollador del bot debe revisar la consola en busca de errores, a menudo relacionados con intents faltantes o un controlador de comandos fallido.
| Elemento | Comandos globales | Comandos de guild |
|---|---|---|
| Velocidad de actualización | Hasta 1 hora | Instantánea |
| Alcance | Todos los servidores donde está el bot | Solo un servidor |
| Ideal para | Bots públicos usados en muchos servidores | Pruebas o bots privados |
| Dependencia de caché | La caché del cliente puede retrasar la visibilidad | Es menos probable que la caché del cliente bloquee |
Ahora tiene un conjunto claro de pasos para solucionar los comandos de barra diagonal que no aparecen: borre la caché del cliente con Ctrl+R o eliminando archivos de caché, vuelva a invitar al bot con el alcance applications.commands, y verifique el permiso Usar comandos de barra diagonal en roles y canales. Si el problema persiste, verifique si el bot usa comandos globales o de guild y resincronícelos manualmente. Para los desarrolladores de bots, usar comandos de guild durante el desarrollo elimina el retraso de propagación de una hora y hace que las pruebas sean más rápidas.