/status doesn't show the apiKeyHelper error it tells you to check
/status doesn't show the apiKeyHelper error it tells you to check
Description
When a configured apiKeyHelper script fails, Claude Code shows a banner in the chat:
Your apiKeyHelper script is failing · This usually means you need to re-authenticate with your provider · Run /status to see the script's error output
But running /status does not show the script's error output anywhere. The Status tab only shows the generic configuration summary (Version, Session name, Session ID, cwd, Auth token, API key, Anthropic base URL, Additional CA cert(s), Model, Setting sources) — there's no exit code, no stderr text, no "Authentication" panel with the failure detail the banner promises.
Steps to reproduce
- Configure
apiKeyHelperinsettings.jsonto point at a script/binary that exits non-zero with a stderr message, e.g.:
``json``
{
"apiKeyHelper": "C:\\path\\to\\a\\failing\\script.exe"
}
- Start Claude Code (or trigger a token refresh) so the helper runs and fails.
- Observe the chat banner: "Your apiKeyHelper script is failing ... Run /status to see the script's error output"
- Run
/status.
Expected behavior
Per Claude Code's own documentation (error reference), /status should display an "Authentication" panel (previously titled "Cloud authentication" before v2.1.212) showing the failing helper's exit code and error output.
Actual behavior
No such panel appears. /status shows only the generic config fields listed above, with Auth token: apiKeyHelper and API key: apiKeyHelper as plain labels — no indication of the failure, exit code, or stderr text at all.
Environment
- Claude Code version:
v2.1.220 - Platform: Windows (PowerShell)
apiKeyHelperconfigured as an absolute path to a custom binary (a Go CLI that fetches an Entra ID token via the Azure CLI)
Impact
The banner explicitly directs users to /status to self-diagnose an authentication failure, but /status doesn't deliver on that, so there's currently no way to see the actual error without re-running the apiKeyHelper command manually in a separate terminal. This is a debugging dead end for anyone who doesn't have (or think to open) a terminal to run the helper directly.
Suggested fix
Either:
- Implement the documented "Authentication" panel in
/statusso it actually surfaces the failing helper's exit code and stderr, matching the docs and the banner's own instructions; or - If the panel was intentionally removed/changed, update the banner text and the docs at code.claude.com/docs/en/errors.md so they no longer point users at a
/statusview that won't show them anything.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗