diff options
Diffstat (limited to 'makima/src/daemon/process/claude.rs')
| -rw-r--r-- | makima/src/daemon/process/claude.rs | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/makima/src/daemon/process/claude.rs b/makima/src/daemon/process/claude.rs index c8add1c..57c8f77 100644 --- a/makima/src/daemon/process/claude.rs +++ b/makima/src/daemon/process/claude.rs @@ -510,6 +510,16 @@ impl ProcessManager { env.extend(extra); } + // Load OAuth token from disk and set as env var if not already provided. + // This allows processes to authenticate using tokens saved by the reauth flow. + // The token is loaded fresh each time (not cached) so newly saved tokens are picked up. + if !env.contains_key("CLAUDE_CODE_OAUTH_TOKEN") { + if let Some(token) = crate::daemon::task::manager::load_oauth_token() { + tracing::debug!("Setting CLAUDE_CODE_OAUTH_TOKEN from saved token file"); + env.insert("CLAUDE_CODE_OAUTH_TOKEN".to_string(), token); + } + } + // Build Claude arguments list let mut claude_args = Vec::new(); |
