feat(protocol): add Paste request type for bracketed-paste events
feat(engine): summarize agent completion progress in UI notifications feat(main): enable and disable bracketed paste support in terminal fix(app_config): store API key from file as fallback for Claude provider refactor(workflow): remove unnecessary card separator in workflow panel
This commit is contained in:
+11
-2
@@ -154,13 +154,22 @@ struct ClaudeSettings {
|
||||
/// than through its settings file, so reading only the file misses them.
|
||||
fn detect_claude_settings_provider() -> Option<ProviderConfig> {
|
||||
// Prefer the file, then fall back to env vars.
|
||||
let (base_url, _key) = claude_credentials_from_file()
|
||||
let (base_url, key) = claude_credentials_from_file()
|
||||
.or_else(claude_credentials_from_env)?;
|
||||
Some(ProviderConfig {
|
||||
api_base: base_url,
|
||||
// Keep the env-var name so runtime env overrides still work.
|
||||
api_key_env: Some("ANTHROPIC_API_KEY".to_string()),
|
||||
default_model: None,
|
||||
default_api_key: None,
|
||||
// Store the key read from the file as a direct fallback.
|
||||
// Without this, subagent/engine.rs resolve_provider_config() falls
|
||||
// through to std::env::var("ANTHROPIC_API_KEY") which is only
|
||||
// injected into the Claude Code process — not into zesdex. Workflow
|
||||
// nodes therefore got an empty key and failed with
|
||||
// "no API key configured for provider 'claude'", even though the
|
||||
// main agent succeeded (it has a DEFAULT_API_KEY fallback that
|
||||
// subagents intentionally do not have).
|
||||
default_api_key: Some(key),
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user