Cómo funciona el inicio de sesión
screenRIG emite tokens de acceso firmados de corta duración y tokens de actualización de larga duración. El CLI incluido guarda ambos en su archivo de configuración privado y los renueva automáticamente, por lo que un agente nunca maneja un token ni lo pega en una conversación.
| Credencial | Duración de vida |
|---|---|
| Token de acceso | 15 minutos |
| Actualizar token | Rota en cada uso. Termina 90 días después de su último uso, y como máximo un año después del inicio de sesión. |
Código de inicio de sesión (screenrig login) | 24 horas |
| Token del cliente de servicio | 15 minutos, sin token de actualización: el cliente solicita uno nuevo |
Hay cuatro formas de entrar:
| Quién | Cómo inicia sesión | Aprobado por |
|---|---|---|
| Un nuevo agente sin cuenta | screenrig agent enroll crea la organización, el proyecto Screens y la sesión en un solo comando | La inscripción en sí; sigue la invitación enviada por correo electrónico a la persona |
| Un agente para una cuenta existente | screenrig login imprime un código que una persona aprueba en el dashboard | Un miembro del proyecto, en el panel |
| Una app conectada (Claude, ChatGPT, Grok). | La aplicación abre la página de consentimiento de screenRIG; vea servidor remoto | Un miembro del proyecto, en la página de consentimiento |
| Un servidor, script o trabajo CI | Un cliente de servicio inicia sesión con su propia clave o secreto | Creado por un miembro del proyecto |
Las personas inician sesión en el dashboard con un passkey o una contraseña, o mediante el proveedor de identidad de su organización; consulte el inicio de sesión único y el aprovisionamiento de usuarios.
Iniciar sesión con screenrig login
Use screenrig login cuando la persona ya tiene screenRIG y quiere que esta instalación de agente funcione en uno de sus proyectos. Una instalación nueva sin cuenta comienza con screenrig agent enroll en su lugar; vea Inicio.
screenrig login- El CLI muestra una dirección de panel y un código de ocho letras como
BCDF-GHJK, luego espera. - La persona abre
https://screenrig.ai/dashboard/connect, inicia sesión e ingresa el código, o sigue el enlace completo que ya lo lleva. - El dashboard muestra la solicitud en una pantalla: el nombre de la instalación que reportó el dispositivo, cuándo y dónde pidió, y el código. La persona verifica que el código coincida con el terminal, ajusta el proyecto, el nivel de acceso o las capacidades si desea, y presiona Conectar. Un inicio de sesión en el dashboard de la última hora es la prueba, por lo que Conectar no pide nada más; un inicio de sesión más antiguo pide una passkey. El dashboard entonces abre el nuevo agente.
- El CLI almacena la sesión, selecciona el proyecto aprobado e informa
status: signed_incon el proyecto, organización y nivel de acceso.
Aprobar solo un inicio de sesión que usted mismo haya iniciado, en su propia computadora. El dashboard nunca aprueba nada al cargar, y un código expirado necesita un nuevo screenrig login.
| Marcar | Efecto |
|---|---|
--access read, --access propose o --access manage | Solicite solo lectura, proponer o administrar. El valor predeterminado es manage; la persona toma la decisión final. |
--project prj_ID | Sugiera el proyecto que la persona aprueba. |
--name NAME | Nombre de esta instalación, hasta 80 caracteres. |
--no-wait | Devolver de inmediato con la dirección, el código y un identificador login_. |
--resume login_ID | Espere a que se apruebe ese inicio de sesión pendiente y almacene su sesión. |
Cuando el agente debe pasar la dirección a una persona en otro canal primero, use --no-wait. El identificador no contiene ningún secreto, y el inicio de sesión pendiente permanece en el archivo de configuración privado:
screenrig login --no-wait
screenrig login --resume login_HANDLELa dirección de inicio de sesión y su código son para la persona que lo aprueba. Envíelos solo a esa persona y manténgalos fuera de registros y canales compartidos.
Agregar un proyecto o aumentar acceso
Una instalación que ya ha iniciado sesión ejecuta screenrig login nuevamente para agregar otro proyecto, o para elevar un proyecto Solo lectura o Proponer a Administrar:
screenrig login --project prj_ID --access manageLa persona aprueba ese cambio, y la instalación mantiene sus otros proyectos. screenrig project list muestra todos los proyectos que la instalación puede usar, y screenrig project use ID selecciona uno.
Solo lectura, proponer y administrar
Cada sesión tiene uno de tres niveles de acceso, elegido por la persona que la aprueba. Cada nivel incluye todo lo que puede hacer el anterior.
| Solo lectura | Proponer | Administrar | |
|---|---|---|---|
| Listar y leer pantallas, playlists, multimedia, eventos y reproducción | Sí | Sí | Sí |
| Suba y edite medios, escriba notas de proyecto, capture capturas de pantalla, envíe mensajes de comentarios y soporte, redacte creatividades y campañas publicitarias | No | Sí | Sí |
| Crear y actualizar listas de reproducción; asignar, programar o tomar el control de pantallas | No | Sí, como una revisión que una persona aprueba | Sí |
| Eliminar, emparejar, archivar, recargar, reiniciar, enviar notificaciones emergentes, configurar energía del monitor, etiquetar pantallas, escribir K/V de aplicación, reconocer, posponer o silenciar alertas, gestionar notificaciones y configuración de proyecto | No | No | Sí |
| Gaste crédito en compras, campañas o generación de imágenes | No | No | Sí |
| Leer URLs receptoras de webhook | No: la URL aparece como redactada | No: la URL aparece como redactada | Sí |
| Facturado por solicitud como cada solicitud de agente | Sí | Sí | Sí |
Solo lectura significa que la sesión no puede cambiar ni comprar nada. No significa gratis: cada solicitud de agente y evento facturado de listen-stream cuenta contra las solicitudes incluidas de la organización, como ocurre con Proponer y Administrar.
Proponer permite que un agente haga el trabajo mientras una persona mantiene la última palabra sobre lo que se reproduce. Sus cambios en la lista de reproducción y pantalla responden a 202 con status: pending_review y un enlace a la revisión, y nada cambia en una pantalla hasta que una persona aprueba. Sus cargas de medios, y sus cambios de etiqueta y carpeta a medios aprobados, también esperan revisión: las pantallas siguen reproduciendo lo aprobado hasta que una persona aprueba el cambio, un rechazo devuelve un elemento cambiado, y una carga rechazada permanece fuera de las pantallas. No puede eliminar, controlar pantallas ni gastar.
Una sesión que intenta algo que su nivel no puede hacer recibe 403 insufficient_access. La CLI nombra el siguiente paso: una persona aprueba Manage con screenrig login --access manage.
Los inicios de sesión de agentes predeterminados son para Gestionar, y las aplicaciones conectadas solo para Lectura. Para reducir el nivel de una instalación, desconéctela y luego inicie sesión de nuevo con screenrig login --access read o --access propose. El nivel de una sesión nunca se reduce en silencio: las configuraciones de revisión a continuación mantienen las sesiones en Proponer sin cambiarlas, y la página de Acceso muestra cuándo lo hacen.
Capacidades
Dentro de su nivel de acceso, una sesión funciona solo en las áreas de capacidad que la persona aprobó: screens, content, playlists, advertising, reports y project. La inscripción concede las seis en el proyecto que crea. Un comando fuera de las áreas aprobadas devuelve 403 forbidden nombrando la capacidad faltante. Las capacidades permanecen aprobadas para un proyecto de instalación; para más, una persona aprueba una nueva instalación que las tenga.
Requiere revisión para cambios de agente
Dos configuraciones mantienen a los agentes en Proponer sin volver a iniciar sesión. Ambas aplican en cada solicitud, cubriendo sesiones ya existentes.
- Requiere revisión para cambios de agentes, en la página Configuración del panel. Mientras esté activado, cada agente, aplicación conectada y cliente de servicio en el proyecto trabaja como Proponer como máximo: los cambios en lo que se reproduce esperan en Revisiones hasta que una persona los apruebe. El propietario del proyecto o un administrador de su organización lo cambia, y desactivarlo solicita su passkey. Las revisiones ya pendientes permanecen abiertas para decidir.
- Puede aprobar, para cada miembro en la página Acceso del proyecto. El propietario del proyecto siempre puede aprobar. Un miembro que no puede aprobar no decide revisiones y no puede otorgar a un agente la gestión; los agentes que ese miembro supervisa trabajan como máximo en Proponer.
El nivel más bajo que se aplica gana. screenrig agent status informa el access de la sesión, su effective_access y, cuando una configuración lo reduce, access_limited_by: project o person. Iniciar sesión nuevamente no eleva una configuración; el propietario del proyecto la cambia. Mientras se aplica una configuración, las pantallas de inicio de sesión y aprobación de conexión ofrecen Solo lectura y Proponer, y muestran por qué Gestionar no está disponible.
Usuarios de carga
Un usuario de carga trabaja en las listas de reproducción y carpetas de medios que usted elige, y en ningún otro lugar. Sube medios a esas carpetas y añade, reemplaza y elimina páginas de esas listas de reproducción, con fechas de inicio y fin. No puede leer ni cambiar otras listas de reproducción, pantallas, programaciones, miembros, tokens, enlaces de flota, facturación ni ajustes. Una persona del equipo de una agencia es un miembro usuario de carga; el agente de una agencia es un cliente de servicio usuario de carga.
- Invitar o asignar. En la página Acceso del panel, invite a una persona como usuario de carga o convierta a un miembro en usuario de carga, y elija las carpetas y las listas de reproducción. Desde la CLI,
screenrig invitations create --kind uploader --email designer@example.com --folder-id mfd_FOLDER --playlist-id pl_PLAYLISTinvita a uno, yscreenrig service-client create --name "Agency agent" --uploader --folder-id mfd_FOLDER --playlist-id pl_PLAYLIST --secret-file agency.secretda a un agente su propio token. Las carpetas son exactamente las que elija, no las carpetas que contienen. El propietario edita el alcance o le pone fin en cualquier momento, y el cambio se aplica a la siguiente solicitud del usuario de carga. - Proponer o publicar sin revisión. Los cambios de un miembro usuario de carga esperan en Revisiones hasta que el propietario del proyecto o un miembro que pueda aprobar los resuelva. El propietario puede permitir que un miembro publique sin revisión (
--access manage) al invitar o asignar. Un cliente de servicio usuario de carga actúa con el acceso con el que se creó, Proponer salvo que elija otro, y Requiere revisión para cambios de agente lo mantiene en Proponer como a cualquier agente. Un usuario de carga nunca aprueba revisiones ni conecta agentes: un agente recibe en su lugar un token de usuario de carga. - Subir y añadir páginas.
screenrig media upload FILE --folder mfd_FOLDERsube a una carpeta del usuario de carga.screenrig playlist page add pl_PLAYLIST --media med_IMAGE --from 2026-12-01 --until 2026-12-24añade el medio como una página que se muestra desde el inicio del 1 de diciembre hasta el final del 24 de diciembre, en la zona horaria de cada pantalla;playlist page replacecambia el medio o las fechas, yplaylist page removeelimina la página. Una página que añade el usuario de carga es una imagen o un vídeo de sus carpetas; las demás páginas del proyecto se quedan como están. Varias cargas seguidas de un mismo usuario de carga se unen a una misma revisión, así que el propietario las aprueba juntas, y una página que aún espera en ella se puede reemplazar o quitar. El cambio de otro usuario de carga en la lista de reproducción espera a que se decida esa revisión. - En el panel. Un miembro que es usuario de carga inicia sesión en un panel con una sola página, Subir, que muestra sus listas de reproducción y sus carpetas. En una carpeta sube archivos; en una lista de reproducción añade una página a partir de una imagen o un clip, define el primer y el último día en que se muestra la página, reemplaza o elimina sus propias páginas y retira un cambio que espera revisión. Las demás páginas del proyecto indican Definida por el proyecto.
- Fuera del alcance. Todo lo demás responde
outside_upload_scope, cuyoupload_scopeenumera las listas de reproducción y las carpetas que el usuario de carga puede usar.
Para limitar a un miembro o a un agente a carpetas de pantallas y pantallas en lugar de contenido, véase Permisos por carpeta de pantallas.
La página de acceso
La página Acceso del dashboard lista todo lo que puede actuar en el proyecto actual:
| Sección | Qué lista |
|---|---|
| Pendiente | Inicios de sesión y solicitudes de conexión esperando aprobación |
| Personas | Miembros e invitaciones abiertas |
| Agentes | Instalaciones de CLI y plugins, inscritos o conectados |
| Aplicaciones conectadas | Asistentes de IA una persona conectada, una entrada por app |
| Clientes de servicio | Servidores, scripts y trabajos CI, con sus claves y secretos |
Cada entrada muestra cómo obtuvo acceso y quién lo aprobó, su nivel de acceso y capacidades, y cuándo fue creada y utilizada por última vez. Cuando una configuración de revisión mantiene una entrada por debajo de su nivel, la entrada muestra el nivel en el que opera y el motivo, por ejemplo "Proponer — el proyecto requiere revisión". Desconectar finaliza un agente o aplicación; Revocar finaliza un cliente de servicio. Cada uno solicita a la persona que confirme con su llave de acceso.
Cerrar sesión y revocar
| Para finalizar | Ejecutar o hacer |
|---|---|
| El inicio de sesión de esta instalación | screenrig logout |
| El acceso de esta instalación al proyecto actual | screenrig agent disconnect --yes |
| Esta instalación en todas partes | screenrig agent revoke-identity --yes |
| Cualquier agente o app conectada | Desconectar en la página de Acceso |
| Un cliente de servicio | Revocar en la página de Acceso, o screenrig service-client revoke ID --yes |
screenrig logout revoca el inicio de sesión en el servidor y luego elimina los tokens almacenados. Si la solicitud podría no haber llegado al servidor, los tokens permanecen, por lo que ejecutarlo de nuevo es seguro. Una sesión solo lectura siempre puede desconectarse a sí misma.
Una sesión revocada no puede renovarse: no se emite un nuevo token después de la revocación. Sus tokens de acceso dejan de funcionar en segundos. Desactivar a la persona responsable de un agente termina sus sesiones de la misma manera, y eliminar un proyecto termina el acceso de todas las sesiones a ese proyecto.
Duración de la sesión
Cada uso del token de actualización extiende su vigencia 90 días, hasta un año después de iniciar sesión. screenrig doctor muestra cuándo finaliza la sesión de esta instalación y cada comando avisa en sus últimos 30 días. Para continuar, una persona debe aprobar un nuevo screenrig login.
Credenciales existentes
Las instalaciones que iniciaron sesión antes de estas sesiones siguen funcionando. En su próximo comando, la CLI incluida intercambia la credencial almacenada por una sesión con los mismos proyectos y capacidades, sin solicitud ni salida. Actualice el plugin oficial para obtener esa CLI; no cambia nada más para el agente.
Referencia
Estos puntos finales siguen OAuth 2.0. El CLI incluido, las aplicaciones conectadas y los clientes de servicio los usan; un agente que trabaja a través del plugin nunca los llama directamente.
| Elemento | Valor |
|---|---|
| Emisor | https://api.screenrig.ai |
| Metadatos del servidor de autorización | https://api.screenrig.ai/.well-known/oauth-authorization-server |
| Metadatos del recurso protegido | https://api.screenrig.ai/.well-known/oauth-protected-resource/api |
| Punto de token | https://api.screenrig.ai/oauth/token |
| Autorización del dispositivo | https://api.screenrig.ai/oauth/device_authorization |
| Punto final de autorización | https://api.screenrig.ai/oauth/authorize |
| Revocación | https://api.screenrig.ai/oauth/revoke |
| Tipos de concesión | authorization_code (solo PKCE S256), refresh_token, urn:ietf:params:oauth:grant-type:device_code, client_credentials, urn:ietf:params:oauth:grant-type:token-exchange |
| Autenticación del cliente | none, private_key_jwt (EdDSA, ES256, RS256), client_secret_basic |
| Alcances | access:read, access:propose, access:manage, identity y las capacidades screens, content, playlists, advertising, reports y project |
| Recursos | https://api.screenrig.ai/api (el predeterminado) y https://api.screenrig.ai/mcp |
Los tokens de acceso son JWT firmados con Ed25519 (EdDSA): un perfil solo EdDSA que usa las convenciones de reclamos de RFC 9068 (typ: at+jwt, iss, aud, sub, client_id, scope, jti, iat, exp). Trátelos como opacos: envíe cada uno como Authorization: Bearer y solicite uno nuevo cuando expire.
Los errores del punto de token son JSON RFC 6749 (error, error_description) con Cache-Control: no-store:
error | Significado | Problema de CLI |
|---|---|---|
invalid_grant | La sesión fue revocada, expiró o se reutilizó, o un código es incorrecto. | session_ended: ejecución screenrig login |
invalid_client | Cliente desconocido, o clave, secreto o afirmación incorrectos | client_auth_failed |
invalid_scope | Más acceso o capacidades de las aprobadas | insufficient_access |
invalid_target | Un resource distinto a los dos anteriores | invalid_request |
authorization_pending, slow_down | Un inicio de sesión aún esperando aprobación | El CLI sigue esperando |
access_denied | La persona negó el inicio de sesión | login_denied |
expired_token | El código de inicio de sesión expiró. | login_expired: ejecución screenrig login |
temporarily_unavailable | Intente de nuevo en breve | service_unavailable |
rate_limited | Espere Retry-After | rate_limited |
Las solicitudes a /api con un token de acceso expirado o revocado responden 401 con WWW-Authenticate: Bearer error="invalid_token"; la CLI renueva una vez y reintenta una vez. Un token que llama a algo que su nivel de acceso no puede hacer responde 403 insufficient_access con WWW-Authenticate: Bearer error="insufficient_scope" y el scope que lo permite.
Los endpoints de token y revocación aceptan 1,200 solicitudes por dirección cliente por hora, 60 renovaciones por sesión por hora y 600 tokens de cliente de servicio por cliente por hora. Los inicios de sesión están limitados a 10 por dirección por hora.