openclaw - 💡(How to fix) Fix [Bug]: Podman setup fails "Claude CLI is not authenticated" — ~/.claude not mounted in onboard container

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Error Message

Error: Claude CLI is not authenticated on this host. Run claude auth login first, then re-run this setup.

Root Cause

The onboard container launched by the setup script does not mount ~/.claude into the container. The internal Claude binary at:

/app/node_modules/@anthropic-ai/claude-agent-sdk-linux-x64/claude

looks for credentials at /home/node/.claude/, but that path does not exist in the container. Setting CLAUDE_CONFIG_DIR as an environment variable has no effect — the binary ignores it.

The setup script only mounts:

-v "$CONFIG_DIR:/home/node/.openclaw:rw,Z"
-v "$WORKSPACE_DIR:/home/node/.openclaw/workspace:rw,Z"

There is no mount for ~/.claude, so the credentials are invisible to the onboard container.

Fix Action

Workaround

  1. Copy credentials into the openclaw config directory:
mkdir -p ~/.openclaw/.claude
cp ~/.claude/.credentials.json ~/.openclaw/.claude/
echo '{}' > ~/.claude/.claude.json   # if missing
  1. Re-authenticate using the internal binary with the correct config dir:
podman run --rm -it \
  --userns=keep-id --user 1000:1000 \
  -e HOME=/home/node \
  -e CLAUDE_CONFIG_DIR=/home/node/.openclaw/.claude \
  -v ~/.openclaw:/home/node/.openclaw:rw,Z \
  openclaw:local \
  /app/node_modules/@anthropic-ai/claude-agent-sdk-linux-x64/claude auth login
  1. Add this volume mount to the podman run call for the onboard container in scripts/run-openclaw-podman.sh (around line 542):
-v "$HOME/.openclaw/.claude:/home/node/.claude:rw${SELINUX_MOUNT_OPTS}" \

Code Example

OS: Fedora Server (SELinux enforcing), rootless Podman
OpenClaw: 2026.5.12-beta.1
Claude Code CLI: 2.1.141

---

Error: Claude CLI is not authenticated on this host.
Run claude auth login first, then re-run this setup.

---

/app/node_modules/@anthropic-ai/claude-agent-sdk-linux-x64/claude

---

-v "$CONFIG_DIR:/home/node/.openclaw:rw,Z"
-v "$WORKSPACE_DIR:/home/node/.openclaw/workspace:rw,Z"

---

mkdir -p ~/.openclaw/.claude
cp ~/.claude/.credentials.json ~/.openclaw/.claude/
echo '{}' > ~/.claude/.claude.json   # if missing

---

podman run --rm -it \
  --userns=keep-id --user 1000:1000 \
  -e HOME=/home/node \
  -e CLAUDE_CONFIG_DIR=/home/node/.openclaw/.claude \
  -v ~/.openclaw:/home/node/.openclaw:rw,Z \
  openclaw:local \
  /app/node_modules/@anthropic-ai/claude-agent-sdk-linux-x64/claude auth login

---

-v "$HOME/.openclaw/.claude:/home/node/.claude:rw${SELINUX_MOUNT_OPTS}" \

---

podman run -d --name openclaw -p 18789:18789 openclaw:local

---

{
  "loggedIn": true,
  "authMethod": "claude.ai",
  "apiProvider": "firstParty",
  "email": "[email protected]",
  "orgId": "...",
  "orgName": "...",
  "subscriptionType": "team"
}

---
RAW_BUFFERClick to expand / collapse

Bug type

Regression (worked before, now fails)

Beta release blocker

No

Summary

[Bug]: Podman setup fails with "Claude CLI is not authenticated" — ~/.claude not mounted in onboard container

Labels: bug, podman, auth


Environment

OS: Fedora Server (SELinux enforcing), rootless Podman
OpenClaw: 2026.5.12-beta.1
Claude Code CLI: 2.1.141

Steps to reproduce

  1. Install OpenClaw in a rootless Podman container
  2. Authenticate Claude Code CLI on the host: claude auth login
  3. Run ./scripts/run-openclaw-podman.sh launch setup
  4. Complete the wizard until "Anthropic Claude CLI" auth method

Expected behavior

Setup completes successfully using the host's Claude CLI credentials.

Actual behavior

Error: Claude CLI is not authenticated on this host.
Run claude auth login first, then re-run this setup.

This error appears even when claude auth status on the host returns a fully authenticated session with valid email and orgId.

Root cause

The onboard container launched by the setup script does not mount ~/.claude into the container. The internal Claude binary at:

/app/node_modules/@anthropic-ai/claude-agent-sdk-linux-x64/claude

looks for credentials at /home/node/.claude/, but that path does not exist in the container. Setting CLAUDE_CONFIG_DIR as an environment variable has no effect — the binary ignores it.

The setup script only mounts:

-v "$CONFIG_DIR:/home/node/.openclaw:rw,Z"
-v "$WORKSPACE_DIR:/home/node/.openclaw/workspace:rw,Z"

There is no mount for ~/.claude, so the credentials are invisible to the onboard container.

Workaround

  1. Copy credentials into the openclaw config directory:
mkdir -p ~/.openclaw/.claude
cp ~/.claude/.credentials.json ~/.openclaw/.claude/
echo '{}' > ~/.claude/.claude.json   # if missing
  1. Re-authenticate using the internal binary with the correct config dir:
podman run --rm -it \
  --userns=keep-id --user 1000:1000 \
  -e HOME=/home/node \
  -e CLAUDE_CONFIG_DIR=/home/node/.openclaw/.claude \
  -v ~/.openclaw:/home/node/.openclaw:rw,Z \
  openclaw:local \
  /app/node_modules/@anthropic-ai/claude-agent-sdk-linux-x64/claude auth login
  1. Add this volume mount to the podman run call for the onboard container in scripts/run-openclaw-podman.sh (around line 542):
-v "$HOME/.openclaw/.claude:/home/node/.claude:rw${SELINUX_MOUNT_OPTS}" \

Suggested fix

The setup script should explicitly mount the Claude credentials directory into the onboard container, similar to how $CONFIG_DIR is already mounted. Using ${SELINUX_MOUNT_OPTS} ensures the mount works correctly on SELinux-enforcing systems like Fedora.

Steps to reproduce

  1. Install OpenClaw using the official Podman setup script on a Fedora Server host with SELinux enforcing
  2. Authenticate Claude Code CLI on the host: claude auth login — verify with claude auth status (email and orgId should be populated)
  3. Start the OpenClaw container:
   podman run -d --name openclaw -p 18789:18789 openclaw:local
  1. Run ./scripts/run-openclaw-podman.sh launch setup
  2. Complete the wizard:
    • Accept security disclaimer
    • Select QuickStart
    • Keep current values
    • Select Anthropic as model/auth provider
    • Select Anthropic Claude CLI as auth method

Expected behavior

Setup wizard completes successfully, recognizing the authenticated Claude Code CLI session from the host and proceeding past the auth check without error.

Actual behavior

The wizard fails at the "Anthropic Claude CLI" auth step with:

Error: Claude CLI is not authenticated on this host. Run claude auth login first, then re-run this setup.

This happens even when claude auth status on the host returns a fully authenticated session:

{
  "loggedIn": true,
  "authMethod": "claude.ai",
  "apiProvider": "firstParty",
  "email": "[email protected]",
  "orgId": "...",
  "orgName": "...",
  "subscriptionType": "team"
}

OpenClaw version

OpenClaw 2026.4.24 (cbcfdf6)

Operating system

Fedora 44 Server Edition

Install method

npm global and podman (rootless)

Model

anthropic/claude-sonnet-4.6

Provider / routing chain

Local

Additional provider/model setup details

No response

Logs, screenshots, and evidence

Impact and severity

No response

Additional information

No response

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

FAQ

Expected behavior

Setup wizard completes successfully, recognizing the authenticated Claude Code CLI session from the host and proceeding past the auth check without error.

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING