#!/usr/bin/env bash # oauth-configdir-test — prüft, ob claude auf macOS die .credentials.json aus # CLAUDE_CONFIG_DIR liest, wenn kein Keychain-Eintrag existiert. # Ablauf: Backup → Keychain löschen → claude mit bereinigter Auth-Env → # Nachkontrollen → Restore. Restore läuft auch bei fehlgeschlagenem Testlauf. # Usage: oauth-configdir-test [pool] (Default: Mx9Privat) set -u cd "$(dirname "$0")/.." pool=${1:-Mx9Privat} pooldir="$HOME/claude-pools/$pool" bin/kc-backup || exit 1 bin/kc-delete || exit 1 echo "== Testlauf: Env ohne ANTHROPIC_API_KEY/CLAUDE_CODE_OAUTH_TOKEN, CLAUDE_CONFIG_DIR=$pooldir ==" env -u ANTHROPIC_API_KEY -u CLAUDE_CODE_OAUTH_TOKEN \ CLAUDE_CONFIG_DIR="$pooldir" \ "${CLAUDE_BIN:-$HOME/.local/bin/claude}" -p 'Antworte nur mit: OK' --model claude-sonnet-5 echo "EXIT: $?" echo "== credentials-Datei nach Lauf (#10039: darf nicht gelöscht sein) ==" ls -la "$pooldir/.credentials.json" echo "== Keychain nach Lauf (es darf KEIN Eintrag entstanden sein) ==" bin/kc-status echo "== Restore ==" bin/kc-restore rm "$HOME/.ssh/claude-keychain-backup.json" bin/kc-status