Fleet/agents view fails OAuth login with getaddrinfo ENOTFOUND platform.claude.com, doesn't reuse existing terminal credentials

Open 💬 0 comments Opened Jul 13, 2026 by pattemmanohar

Claude Code version: v2.1.207

Environment: macOS 15+ (Darwin), Claude Code CLI + Agents/Fleet view

Repro steps:

  1. In a plain terminal, run /login — completes successfully. Credential is written to macOS Keychain (Claude Code-credentials) and ~/.claude.json.
  2. Individual agents spawned from that terminal inherit the session automatically — no login prompt.
  3. Open the Agents/Fleet view (multiple agents running) and attempt /login there.
  4. Fleet view generates its own new OAuth code/flow (rather than reusing the existing credential) and fails immediately on paste with:

OAuth error: getaddrinfo ENOTFOUND platform.claude.com

  1. Fully quit and relaunch the fleet view — same failure persists.

Diagnostics ruling out a local/network cause:

  • nslookup platform.claude.com, dig, Node's dns.lookup/resolve4, and a full curl TLS handshake to platform.claude.com all succeed from the same machine, same network, at the same time.
  • No VPN active, no proxy env vars set, no corporate security/proxy agents running (checked zscaler, netskope, globalprotect, etc. — none present).
  • No /etc/hosts override for the domain.
  • Keychain Access confirms the Claude Code-credentials item exists (modified at time of successful terminal login) and has "Confirm before allowing access" set — no access-permission dialog was ever shown when opening the fleet view, and no fleet-view process appears in its "always allow" list, suggesting the fleet view isn't attempting to read the existing stored credential at all, and instead always initiates a fresh OAuth handshake in an isolated context whose DNS/egress path is broken.

Expected: Fleet/agents view should either reuse the credential already stored via terminal /login (as individual spawned agents already do), or its own OAuth flow should resolve platform.claude.com successfully like every other context on the machine.

Actual: Fleet view always forces a new OAuth code flow, and that flow can't resolve platform.claude.com, blocking login entirely in that view.

View original on GitHub ↗