anthropics / anthropics/claude-code
[BUG] "Claude Code on <host> needs to sign in again" doesn't say which Claude Code instance, or that a CLI login is required
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 147k
- Forks
- 24k
- PR merge metrics
- PR metrics pending
Description
Environment: macOS 26 (Darwin 25.6.0), Claude Code CLI 2.1.259 via nvm, desktop app (Code tab), mobile app connected through claude remote-control under launchd.
What happened
The mobile app repeatedly showed: "Claude Code on needs to sign in again. Sign in there, then send your message again."
Signing in on the Mac didn't clear it. The message doesn't say which Claude Code needs the login: the desktop app, a terminal session, or a background claude remote-control process. Signing into the desktop app doesn't refresh the CLI's keychain credential, so the banner persisted until the CLI itself was re-authenticated with claude auth login.
Expected
- Name the instance (e.g. the
--namegiven toremote-control, or "CLI" vs "desktop app"). - State the actual remedy: run
claude auth loginon that machine (or/loginin a terminal session). - Ideally, have a long-running
remote-controlprocess surface the auth failure in its own log/status line ("auth expired — runclaude auth login") instead of only showingReconnecting.
Repro
- Run
claude remote-control --name Xunder launchd; keep it up for weeks. - Let the OAuth token expire.
- Send a message from the mobile app → banner appears.
- Sign into the desktop app → banner remains.
claude auth statusin a terminal reportsloggedIn: false. claude auth login→ banner clears.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the flow with claude remote-control --name X, an expired token, and the mobile app banner; compare claude auth status, claude auth login, and /login. Trace how the remote-control instance identity and authentication failure reach the banner and process status. Done means the affected instance is identified, the CLI login remedy is explicit, and long-running remote-control reports the auth failure instead of only Reconnecting.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- authentication, cli
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100