diff options
Diffstat (limited to 'internal/config/config.go')
| -rw-r--r-- | internal/config/config.go | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/internal/config/config.go b/internal/config/config.go index f778637..754c816 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -197,6 +197,7 @@ func Load(configPath string) (*Config, error) { return nil, fmt.Errorf("decode config: %w", err) } + applyEnvFallbacks(cfg) cfg.normalize() if err := cfg.validate(); err != nil { return nil, err @@ -393,3 +394,12 @@ func setDefaults(v *viper.Viper, cfg *Config) { v.SetDefault("prompts_dir", cfg.PromptsDir) } + +func applyEnvFallbacks(cfg *Config) { + if cfg == nil { + return + } + if cfg.API.GoogleAPIKey == "" { + cfg.API.GoogleAPIKey = os.Getenv("GOOGLE_API_KEY") + } +} |
