바이브리포트

Codex OAuth 오류 `persist_failed` 해결 요약

22b-labs 2026. 4. 13. 09:04

공유하는 이유는 Windows의 자체 비밀번호 저장소가 예상보다 훨씬 짧은 문자열 제한 때문에 OAuth 같은 긴 토큰을 저장하지 못해 인증이 실패하는 현상이 발생한다는 중요한 이슈가 보고되고 있기 때문입니다 — 단순한 오류가 아니라 플랫폼 구조 상의 한계입니다. (GitHub)

핵심은 이렇습니다:

  • Windows는 Credential Manager/DPAPI를 사용해 비밀번호를 저장하는데, 내부적으로 UTF‑16 인코딩된 문자열을 약 2560바이트(= 대략 1280문자)까지 저장할 수 있습니다. (GitHub)
  • OAuth 토큰(Access & Refresh Token 묶음)은 JSON 형태로 길어질 수 있고, 이 한도를 쉽게 초과합니다. (GitHub)
  • 결과적으로 Codex나 기타 툴이 Windows 키링을 백엔드로 사용해 토큰을 저장하려 할 때, 아래와 같은 오류가 뜹니다:
    “failed to write OAuth tokens to keyring: Attribute 'password encoded as UTF‑16' is longer than platform limit of 2560 chars” (GitHub)
  • 이 문제는 단순한 버그가 아니라 Windows Credential Manager의 저장 크기 제한이 원인입니다. (GitHub)

즉, 현재 상태에서는 긴 OAuth 인증 데이터를 Windows 키링에 저장 자체가 구조적으로 어렵고, 일부 개발자들은 이를 피하기 위해 파일 기반 저장으로 우회하고 있다는 보고가 있습니다. (GitHub)