Documentação

Faça login dos agentes com acesso que você controla

Cada agente, aplicativo e script que trabalha em suas telas faz login com sua própria sessão. Uma pessoa aprova cada um no painel, escolhe Somente leitura, Propor ou Gerenciar, e pode encerrá-lo na página de Acesso a qualquer momento.

Como funciona o login

screenRIG emite tokens de acesso assinados de curta duração e tokens de atualização de longa duração. O CLI embutido mantém ambos no seu arquivo de configuração privado e os renova automaticamente, então um agente nunca manipula um token nem cola um em uma conversa.

CredencialTempo de vida
Token de acesso15 minutos
Atualizar tokenRotaciona a cada uso. Termina 90 dias após o último uso e no máximo um ano após o login.
Código de login (screenrig login)24 horas
Token do cliente de serviço15 minutos, sem token de atualização: o cliente pede um novo

Existem quatro formas de entrar:

QuemComo ele faz loginAprovado por
Um novo agente sem contascreenrig agent enroll cria a organização, o projeto Screens e a sessão em um comandoO próprio registro; o convite por e-mail da pessoa segue
Um agente para uma conta existentescreenrig login imprime um código que uma pessoa aprova no dashboardUm membro do projeto, no painel
Um app conectado (Claude, ChatGPT, Grok)O app abre a página de consentimento do screenRIG; veja servidor remotoUm membro do projeto, na página de consentimento
Um servidor, script ou trabalho CIUm cliente de serviço entra com sua própria chave ou segredoCriado por um membro do projeto

As pessoas entram no dashboard com uma passkey ou senha, ou pelo provedor de identidade da organização; veja login único e provisionamento de usuários.

Faça login com screenrig login

Use screenrig login quando a pessoa já tem screenRIG e quer que esta instalação do agente funcione em um de seus projetos. Uma nova instalação sem conta começa com screenrig agent enroll em vez disso; veja Iniciar.

screenrig login
  1. O CLI imprime um endereço do dashboard e um código de oito letras como BCDF-GHJK, então aguarda.
  2. A pessoa abre https://screenrig.ai/dashboard/connect, faz login e insere o código, ou segue o link completo que já o carrega.
  3. O dashboard mostra a requisição em uma tela: o nome da instalação que o dispositivo reportou, quando e onde pediu, e o código. A pessoa verifica se o código corresponde ao terminal, ajusta o projeto, o nível de acesso ou as capacidades se desejar, e pressiona Conectar. Um login no dashboard da última hora é a prova, então Conectar não pede mais nada; um login mais antigo pede passkey. O dashboard então abre o novo agente.
  4. O CLI armazena a sessão, seleciona o projeto aprovado e reporta status: signed_in com o projeto, organização e nível de acesso.

Aprovar apenas um login iniciado por você mesmo, no seu próprio computador. O dashboard nunca aprova nada ao carregar, e um código expirado precisa de um novo screenrig login.

SinalizarEfeito
--access read, --access propose ou --access managePeça permissão para Somente leitura, Propor ou Gerenciar. O padrão é manage; a pessoa faz a escolha final.
--project prj_IDSugira o projeto que a pessoa aprova.
--name NAMENomeie esta instalação, até 80 caracteres.
--no-waitRetornar imediatamente com o endereço, o código e um identificador login_.
--resume login_IDAguarde a aprovação do login pendente e armazene sua sessão.

Quando o agente precisa passar o endereço para uma pessoa em outro canal primeiro, use --no-wait. O identificador não contém segredo, e o login pendente fica no arquivo de configuração privado:

screenrig login --no-wait
screenrig login --resume login_HANDLE

O endereço de login e seu código são para a pessoa que o aprova. Envie-os somente para essa pessoa e mantenha-os fora de logs e canais compartilhados.

Adicionar um projeto ou aumentar acesso

Uma instalação que já está conectada executa screenrig login novamente para adicionar outro projeto, ou para elevar um projeto Somente leitura ou Propor para Gerenciar:

screenrig login --project prj_ID --access manage

A pessoa aprova essa mudança, e a instalação mantém seus outros projetos. screenrig project list mostra todos os projetos que a instalação pode usar, e screenrig project use ID seleciona um.

Somente leitura, Propor e Gerenciar

Cada sessão carrega um dos três níveis de acesso, escolhido pela pessoa que a aprova. Cada nível inclui tudo que o anterior pode fazer.

Somente leituraProporGerenciar
Listar e ler telas, playlists, mídias, eventos e reproduçãoSimSimSim
Enviar e editar mídia, escrever notas do projeto, capturar screenshots, enviar mensagens de feedback e suporte, rascunhar criativos e campanhas publicitáriasNãoSimSim
Criar e atualizar playlists; atribuir, programar ou assumir telasNãoSim, como uma revisão que uma pessoa aprovaSim
Excluir, parear, arquivar, recarregar, reiniciar, enviar toasts, definir energia do monitor, marcar telas, escrever K/V de aplicativo, reconhecer, adiar ou silenciar alertas, gerenciar notificações e configurações do projetoNãoNãoSim
Gaste crédito em compras, campanhas ou geração de imagensNãoNãoSim
Ler URLs de receptor webhookNão: a URL está redigidaNão: a URL está redigidaSim
Faturado por solicitação como toda solicitação de agenteSimSimSim

Somente leitura significa que a sessão não pode alterar ou comprar nada. Não significa gratuito: cada solicitação de agente e evento de listen-stream cobrado conta contra os pedidos incluídos da organização, assim como para Propor e Gerenciar.

Propor permite que um agente faça o trabalho enquanto uma pessoa mantém a palavra final sobre o que é reproduzido. Suas alterações na playlist e na tela respondem 202 com status: pending_review e um link para a revisão, e nada muda na tela até que uma pessoa aprove. Seus uploads de mídia, e suas alterações de tag e pasta para mídia aprovada, também aguardam revisão: as telas continuam reproduzindo o que foi aprovado até que uma pessoa aprove a mudança, uma rejeição devolve o item alterado, e um upload rejeitado permanece fora das telas. Não pode excluir, controlar telas ou gastar.

Uma sessão que tenta algo que seu nível não pode fazer recebe 403 insufficient_access. O CLI nomeia o próximo passo: uma pessoa aprova Gerenciar com screenrig login --access manage.

Entradas do agente padrão para Gerenciar, e apps conectados para Somente leitura. Para reduzir uma instalação, desconecte-a e faça login novamente com screenrig login --access read ou --access propose. O nível de uma sessão nunca é reduzido silenciosamente: as configurações de revisão abaixo mantêm sessões em Propor sem alterá-las, e a página de Acesso mostra quando isso ocorre.

Capacidades

Dentro do seu nível de acesso, uma sessão funciona apenas nas áreas de capacidade que a pessoa aprovou: screens, content, playlists, advertising, reports e project. A inscrição concede todas as seis no projeto que cria. Um comando fora das áreas aprovadas retorna 403 forbidden nomeando a capacidade ausente. As capacidades permanecem aprovadas para um projeto de instalação; para mais, uma pessoa aprova uma nova instalação que as possui.

Exigir revisão para alterações de agente

Duas configurações mantêm agentes com acesso Propor sem que precisem entrar novamente. Ambas se aplicam a cada solicitação, cobrindo sessões já existentes.

  • Exigir revisão para alterações do agente, na página Configurações do painel. Enquanto estiver ativado, todo agente, aplicativo conectado e cliente de serviço no projeto trabalha no máximo em Propor: alterações no que é reproduzido aguardam em Revisões até que uma pessoa as aprove. O proprietário do projeto ou um administrador da organização altera essa configuração, e desativá-la requer a passkey deles. Revisões já aguardando permanecem abertas para decisão.
  • Pode aprovar, para cada membro na página Acesso do projeto. O proprietário do projeto sempre pode aprovar. Um membro que não pode aprovar não decide revisões e não pode conceder Gerenciar a um agente, e os agentes pelos quais esse membro é responsável trabalham no máximo em Propor.

O nível mais baixo que se aplica vence. screenrig agent status relata o access da sessão, seu effective_access e, quando uma configuração o reduz, access_limited_by: project ou person. Fazer login novamente não eleva uma configuração; o proprietário do projeto a altera. Enquanto uma configuração se aplica, as telas de login e aprovação de conexão oferecem Somente leitura e Propor, e mostram por que Gerenciar está indisponível.

Uploaders

Um uploader trabalha nas playlists e pastas de mídia que você escolhe e em nenhum outro lugar. Ele envia mídia para essas pastas e adiciona, substitui e remove páginas dessas playlists, com datas de início e fim. Não pode ler nem alterar outras playlists, telas, agendamentos, membros, tokens, links de frota, cobrança ou configurações. Uma pessoa da equipe de uma agência é um membro uploader; o agente de uma agência é um cliente de serviço uploader.

  • Convidar ou atribuir. Na página Acesso do dashboard, convide uma pessoa como uploader ou transforme um membro em uploader, e escolha as pastas e as playlists. Pela CLI, screenrig invitations create --kind uploader --email designer@example.com --folder-id mfd_FOLDER --playlist-id pl_PLAYLIST convida um, e screenrig service-client create --name "Agency agent" --uploader --folder-id mfd_FOLDER --playlist-id pl_PLAYLIST --secret-file agency.secret dá a um agente o próprio token. As pastas são exatamente as que você escolhe, não as pastas dentro delas. O proprietário edita o escopo ou o encerra a qualquer momento, e a mudança vale para a próxima requisição do uploader.
  • Propor ou publicar sem revisão. As alterações de um membro uploader aguardam em Revisões até que o proprietário do projeto ou um membro que possa aprovar as decida. O proprietário pode permitir que um membro publique sem revisão (--access manage) ao convidar ou atribuir. Um cliente de serviço uploader age com o acesso com o qual foi criado, Propor a menos que você escolha outro, e Exigir revisão para alterações de agente o mantém em Propor como mantém todo agente. Um uploader nunca aprova revisões e nunca conecta agentes: um agente recebe um token de uploader.
  • Enviar e adicionar páginas. screenrig media upload FILE --folder mfd_FOLDER envia para uma pasta que o uploader tem. screenrig playlist page add pl_PLAYLIST --media med_IMAGE --from 2026-12-01 --until 2026-12-24 adiciona a mídia como uma página exibida do início de 1º de dezembro até o fim de 24 de dezembro, no fuso horário de cada tela; playlist page replace troca a mídia ou muda as datas, e playlist page remove remove a página. Uma página adicionada pelo uploader é uma imagem ou um vídeo de suas pastas; as outras páginas do projeto permanecem como estão. Vários envios seguidos de um mesmo uploader entram em uma mesma revisão, então o proprietário os aprova juntos, e uma página que ainda espera nela pode ser substituída ou removida. A alteração de outro uploader na playlist aguarda até que essa revisão seja decidida.
  • No dashboard. Um membro uploader entra em um dashboard com uma única página, Enviar, que lista as playlists e as pastas dele. Em uma pasta, ele envia arquivos; em uma playlist, adiciona uma página a partir de uma imagem ou de um clipe, define o primeiro e o último dia em que a página aparece, substitui ou remove as próprias páginas e retira uma alteração que aguarda revisão. As demais páginas do projeto aparecem como Definida pelo projeto.
  • Fora do escopo. Todo o resto responde outside_upload_scope, cujo upload_scope lista as playlists e pastas que o uploader pode usar.

Para limitar um membro ou um agente a pastas de telas e telas em vez de conteúdo, veja Permissões por pasta de telas.

A página de acesso

A página Acesso do dashboard lista tudo que pode agir no projeto atual:

SeçãoO que ele lista
PendenteLogins e solicitações de conexão aguardando aprovação
PessoasMembros e convites abertos
AgentesInstalações do CLI e plugins, inscritos ou conectados
Aplicativos conectadosAssistentes de IA para uma pessoa conectada, uma entrada por app
Clientes de serviçoServidores, scripts e trabalhos CI, com suas chaves e segredos

Cada entrada mostra como obteve acesso e quem aprovou, seu nível de acesso e capacidades, e quando foi criada e usada pela última vez. Quando uma configuração de revisão mantém uma entrada abaixo do seu nível, a entrada mostra o nível em que opera e o motivo, por exemplo "Propor — projeto exige revisão". Desconectar encerra um agente ou app; Revogar encerra um cliente de serviço. Cada ação pede confirmação da pessoa com sua chave de acesso.

Faça logout e revogue

Para terminarExecutar ou fazer
Login desta instalaçãoscreenrig logout
Acesso desta instalação ao projeto atualscreenrig agent disconnect --yes
Esta instalação em todos os lugaresscreenrig agent revoke-identity --yes
Qualquer agente ou app conectadoDesconectar na página de Acesso
Um cliente de serviçoRevogar na página de Acesso, ou screenrig service-client revoke ID --yes

screenrig logout revoga o login no servidor, depois remove os tokens armazenados. Se a solicitação pode não ter alcançado o servidor, os tokens permanecem, então executá-la novamente é seguro. Uma sessão somente leitura pode sempre se desconectar.

Uma sessão revogada não pode renovar: nenhum novo token é emitido após a revogação. Seus tokens de acesso param de funcionar em segundos. Desativar a pessoa responsável por um agente encerra suas sessões da mesma forma, e excluir um projeto encerra o acesso de todas as sessões a esse projeto.

Duração da sessão

Cada uso do token de atualização estende seu prazo em 90 dias, até um ano após o login. screenrig doctor mostra quando a sessão desta instalação termina, e cada comando avisa nos últimos 30 dias. Para continuar, uma pessoa aprova um novo screenrig login.

Credenciais existentes

Instalações que fizeram login antes dessas sessões continuam funcionando. No próximo comando, o CLI incluído troca a credencial armazenada por uma sessão com os mesmos projetos e capacidades, sem prompt e sem saída. Atualize o plugin oficial para obter esse CLI; nada mais muda para o agente.

Referência

Esses endpoints seguem OAuth 2.0. O CLI incluído, aplicativos conectados e clientes de serviço os utilizam; um agente que trabalha pelo plugin nunca os chama diretamente.

ItemValor
Emissorhttps://api.screenrig.ai
Metadados do servidor de autorizaçãohttps://api.screenrig.ai/.well-known/oauth-authorization-server
Metadados do recurso protegidohttps://api.screenrig.ai/.well-known/oauth-protected-resource/api
Endpoint de tokenhttps://api.screenrig.ai/oauth/token
Autorização do dispositivohttps://api.screenrig.ai/oauth/device_authorization
Ponto de extremidade de autorizaçãohttps://api.screenrig.ai/oauth/authorize
Revogaçãohttps://api.screenrig.ai/oauth/revoke
Tipos de concessãoauthorization_code (PKCE S256 somente), refresh_token, urn:ietf:params:oauth:grant-type:device_code, client_credentials, urn:ietf:params:oauth:grant-type:token-exchange
Autenticação do clientenone, private_key_jwt (EdDSA, ES256, RS256), client_secret_basic
Escoposaccess:read, access:propose, access:manage, identity, e as capacidades screens, content, playlists, advertising, reports e project
Recursoshttps://api.screenrig.ai/api (padrão) e https://api.screenrig.ai/mcp

Tokens de acesso são JWTs assinados com Ed25519 (EdDSA): um perfil apenas EdDSA usando as convenções de claims do RFC 9068 (typ: at+jwt, iss, aud, sub, client_id, scope, jti, iat, exp). Trate-os como opacos: envie cada um como Authorization: Bearer e solicite um novo quando expirar.

Erros do endpoint de token são JSON RFC 6749 (error, error_description) com Cache-Control: no-store:

errorSignificadoProblema no CLI
invalid_grantA sessão foi revogada, expirou ou foi reutilizada, ou um código está erradosession_ended: execução screenrig login
invalid_clientCliente desconhecido, ou chave, segredo ou afirmação incorretosclient_auth_failed
invalid_scopeMais acesso ou capacidades do que foram aprovadosinsufficient_access
invalid_targetUm resource diferente dos dois acimainvalid_request
authorization_pending, slow_downUm login ainda aguardando aprovaçãoO CLI continua aguardando
access_deniedA pessoa negou o loginlogin_denied
expired_tokenO código de login expiroulogin_expired: execução screenrig login
temporarily_unavailableTente novamente em breveservice_unavailable
rate_limitedAguarde Retry-Afterrate_limited

Solicitações para /api com token de acesso expirado ou revogado respondem 401 com WWW-Authenticate: Bearer error="invalid_token"; o CLI renova uma vez e tenta novamente uma vez. Um token que chama algo que seu nível de acesso não pode fazer responde 403 insufficient_access com WWW-Authenticate: Bearer error="insufficient_scope" e o scope que o permite.

Os endpoints de token e revogação aceitam 1.200 solicitações por endereço de cliente por hora, 60 renovações por sessão por hora e 600 tokens de cliente de serviço por cliente por hora. Inícios de login são limitados a 10 por endereço por hora.