From a1d1f2a4ff962207144d9edcaf4479c565993d4e Mon Sep 17 00:00:00 2001 From: Pierre Tomasina Date: Tue, 3 Feb 2026 17:56:28 +0800 Subject: [PATCH] fix(claude): add XDG state and cache paths for Claude Code 2.x Claude Code 2.x uses XDG-style directories for state and cache: - ~/.local/state/claude/ for lock files - ~/.cache/claude/ for staging Without these paths, OAuth token refresh fails because the lock file write to ~/.local/state/claude/locks/ is denied. --- profiles/claude.toml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/profiles/claude.toml b/profiles/claude.toml index c516fdc..5a45118 100644 --- a/profiles/claude.toml +++ b/profiles/claude.toml @@ -8,6 +8,8 @@ allow_read = [ "~/.claude.json", "~/.claude.lock", "~/.local/share/claude", + "~/.local/state/claude", # XDG state dir for locks + "~/.cache/claude", # XDG cache dir for staging "~/.local/bin/claude", "~/.CFUserTextEncoding", "/private/tmp/claude*", # claude-UID directories (e.g. claude-501) @@ -18,6 +20,8 @@ allow_write = [ "~/.claude.json", "~/.claude.lock", "~/.local/share/claude", + "~/.local/state/claude", # XDG state dir for locks + "~/.cache/claude", # XDG cache dir for staging "~/Library/Caches/claude-cli-nodejs/", "~/Library/Keychains/login.keychain-db", # OAuth token refresh "/private/tmp/claude*", # claude-UID directories (e.g. claude-501)