feat(#493): api-key backend support (useApiKey + backendEnvironmentFile)

This commit is contained in:
damocles 2026-08-26 22:22:47 +02:00 committed by mara
commit 535ba0c11c
6 changed files with 197 additions and 14 deletions

View file

@ -559,6 +559,10 @@ async fn serve_main<S: Surface>(socket: &Path, poll_ms: u64) -> Result<()> {
let claude_dir = login::default_dir();
let initial = LoginState::from_dir(&claude_dir);
tracing::info!(state = ?initial, claude_dir = %claude_dir.display(), "harness boot");
// Config fact, stamped once — see `harness_state::write_api_key_mode`'s
// doc for why hive-c0re needs this to stop reporting `needs_login` for
// an agent whose `~/.claude/` is empty by design.
harness_state::write_api_key_mode(login::using_api_key());
let login_state = Arc::new(Mutex::new(initial));
let bus = Bus::new();
// Set by the web UI's `/api/cancel` on a successful SIGINT, read-and-