> ## Documentation Index
> Fetch the complete documentation index at: https://docs.headlesslabs.xyz/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Roles

> Headless separa los roles asignados automáticamente, los paneles de selección voluntaria y los roles por reacción.

## Elige el flujo

Auto Role configura roles de entrada para humanos y bots, además de los paneles donde los miembros pueden seleccionar roles. Consulta [Auto roles](/docs/server/roles/auto.md) para configurar la asignación al entrar y [Roles autoasignables](/docs/server/roles/self-assignable.md) para publicar y mantener los selectores. Reaction Roles vincula reacciones de un mensaje con roles; [Booster Roles](/docs/server/roles/booster.md) administra roles y anuncios relacionados con boosts.

## Permisos

La jerarquía de roles de Discord sigue aplicándose: el rol del bot debe estar por encima de cada rol que asigna o retira. Las opciones administrativas también comprueban los permisos que exige cada módulo.

## Restaurar roles elegibles

`.restore <usuario> [fuente] [razón]` intenta devolver roles que Headless registró como retirados. Los aliases de prefijo son `.rr`, `.rs`, `.res` y `.restaurar`. `/restore` y `/rs` ofrecen las mismas fuentes `auto`, `jail`, `logs` e `history`; la opción slash se llama `source` y usa `history` aunque la etiqueta visible sea «Historial».

En modo `auto`, Headless prueba los roles guardados por Jail, después los cambios recientes de roles registrados en Logs/Cases y, por último, los nombres de roles de User History. Logs y Cases se revisan hasta 4.000 entradas recientes por fuente; para cada rol se considera el evento más reciente y solo se propone si fue una retirada. User History resuelve nombres sin distinguir mayúsculas, pero omite nombres duplicados o roles eliminados. Las fuentes explícitas limitan la búsqueda a esa fuente. Si no existe una fuente segura, el comando no adivina.

Cuando hay una fuente de Jail, Headless también intenta retirar el rol Jail. El registro de Jail se borra solo después de que las operaciones de Discord terminan sin error; si Discord falla durante los cambios, el registro se conserva para poder investigar o volver a intentar. La restauración puede aplicar hasta 25 roles elegibles. Los roles que ya existen en el miembro, se borraron, son administrados por una integración o no superan la validación actual se omiten.

El comando de prefijo exige `Manage Roles` al usuario y a Headless. Discord marca `/restore` y `/rs` con `Manage Roles` como permiso predeterminado; Headless además necesita `Manage Roles` y valida la jerarquía del actor, del miembro objetivo y de cada rol. No puede modificar `@everyone`, roles administrados, al owner del servidor ni roles iguales o superiores al actor o al bot; un administrador, el owner del servidor o el owner de Headless puede restaurar un rol con `Administrator`.

```headless-command Syntax theme={null}
.restore [user_query] [rest]
```

```headless-command Example theme={null}
.restore @Member auto Regreso de Jail
```

También funciona: `.restore @Member logs Reposición revisada`

```headless-command Syntax theme={null}
/restore user:<user> [source:<source>] [reason:<reason>]
```

```headless-command Example theme={null}
/restore user:@Member source:auto reason:Regreso de Jail
```

```headless-command Syntax theme={null}
/rs user:<user> [source:<source>] [reason:<reason>]
```

```headless-command Example theme={null}
/rs
```

**1. Comprueba la fuente disponible**

Usa `auto` para que Headless consulte sus fuentes en orden, o elige `jail`, `logs` o `history` si quieres limitar la búsqueda. El historial se guarda por servidor; no se buscan roles por similitud.

**2. Ejecuta la restauración**

Menciona al miembro o usa su ID. Añade una razón para que quede registrada en el caso y en el log de la operación.

**3. Revisa el resultado antes de repetir**

Comprueba los roles aplicados y omitidos, el historial de casos y los logs. Una respuesta de error de Discord puede ocurrir después de que alguna operación previa ya se haya completado.

> **¿Qué puede recuperar cada fuente?**
>
> `jail` usa los roles guardados en el registro activo de Jail; `logs` usa retiradas recientes identificadas por ID de rol; `history` intenta resolver nombres guardados en User History cuando existe una coincidencia única. `auto` prueba esas tres fuentes en ese orden.

> **¿Por qué se omitió un rol o no se limpió Jail?**
>
> Puede que el rol ya no exista, el miembro ya lo tenga, la integración lo administre o la jerarquía/permisos actuales no permitan modificarlo. Si una llamada a Discord falla, Headless informa el error y conserva el registro de Jail; revisa el estado real del miembro antes de repetir el comando.

> [!WARNING]
>
> La restauración puede omitir roles que ya no existan o que no se puedan administrar; un fallo de Discord puede dejar un resultado parcial. Revisa el resumen, los casos y los logs antes de volver a ejecutar una restauración.

**Nota:**

Cada modalidad tiene su propia configuración, permisos y límites.

## Páginas relacionadas

* [Auto roles](/docs/server/roles/auto.md)
* [Roles autoasignables](/docs/server/roles/self-assignable.md)
* [Roles por reacción](/docs/server/roles/reaction-roles.md)
* [Booster roles](/docs/server/roles/booster.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.