OAuth 갱신 흐름
표준 Google OAuth에서 액세스 토큰은 약 1시간 동안 유효해. 그 뒤에는 갱신 토큰을 oauth2.googleapis.com/token에 grant_type=refresh_token으로 POST해 새 액세스 토큰을 받아. 새 만료 시간을 저장하고 토큰이 죽기 전에 교체해.
loadCodeAssist — 건너뛸 수 없는 사전 호출
OAuth 경로에서 첫 생성 요청을 보내기 전에 반드시 loadCodeAssist를 호출해야 해. 이 호출은 이후 모든 generateContent 본문의 project 필드에 넣을 cloudaicompanionProject 문자열을 반환해. 건너뛰면 헷갈리는 오류 메시지와 함께 HTTP 500을 받아.
OAuth 클라이언트 자격 증명은 공개돼 있어
Gemini CLI는 client_id와 client_secret을 코드에 넣어 배포해. CLI를 쓰는 누구나 같은 쌍을 사용하므로 공개 정보야. Google도 비밀이 아니라 식별자로 다뤄. 자체 OAuth 흐름에서도 쓸 수 있어.