Una app Copilot con Read-only può comunque consumare crediti
Un agente notturno può dipendere dal login di una persona. Il 27 ottobre GitHub ha aperto l’anteprima pubblica dell’autenticazione tra server per GitHub Apps installate nelle organizzazioni con Copilot SDK. Il servizio usa l’identità dell’installazione. La sorpresa è che Read-only può autorizzare richieste a pagamento.
Sola lettura non significa gratuito
L’app riceve il permesso organizzativo Copilot Requests con Read-only e usa un token di installazione di breve durata. Utilizzo e fattura spettano all’organizzazione proprietaria dell’installazione. Qui il permesso consente richieste che consumano crediti AI.

Immaginiamo un’azienda con un’app di analisi e una di riepilogo documenti. Entrambe possono avere soli diritti di lettura e generare costi. Non modificare file e usare capacità del modello sono compatibili. Cambia il titolare dell’attività, non il costo dell’inferenza.
Actions e i server esterni seguono vie diverse
Un servizio esterno o un altro CI passa il token a un’opzione esplicita del SDK come gitHubToken. Sono ammesse solo installazioni di organizzazione, non personali o enterprise. La disponibilità delle installazioni enterprise discussa in precedenza ha un perimetro diverso.
Nei repository di organizzazione GitHub Actions può usare GITHUB_TOKEN. Questa via richiede copilot-requests: write nel YAML e la policy Allow use of Copilot CLI billed to the organization. L’autenticazione dell’app installata non richiede quella policy. Read-only e write appartengono a percorsi distinti.
Dopo un’ora l’identità deve continuare a funzionare
Il token scade dopo un’ora. Il sostituto va consegnato al processo attivo. La documentazione indica di riavviare il client figlio con il nuovo token, oppure il runtime ospite per esecuzioni integrate o già esistenti. Modificare un file non prova che il processo abbia recepito il valore.
useLoggedInUser: false disabilita la ricerca automatica delle credenziali, inclusi i token nelle variabili d’ambiente. Occorre quindi passare il token esplicitamente al SDK. Un successo sul portatile e un errore sul server possono rivelare un ripiego involontario sul login personale.

Attribuzione per app, budget organizzativo
I proprietari trovano l’utilizzo nei CSV tramite organization e app_client_id. Il confronto con client_id nell’API delle installazioni identifica app_slug. La vista web AI non offre attualmente questa distinzione. Non esistono budget per singola app e un budget con soli avvisi non blocca il consumo.
Sospendere o disinstallare l’installazione blocca anche gli altri accessi alle risorse dell’organizzazione. Il vantaggio è una responsabilità più leggibile entro le policy di modelli e spesa. Separare il servizio da una persona richiede di trasferire anche rinnovo dei token e titolarità dei costi.