| 13 | ) |
| 14 | |
| 15 | func init() { |
| 16 | configCmd.AddCommand(configSetCmd) |
| 17 | configSetCmd.Flags().StringP("base_url", "b", "", availableKeys["openai.base_url"]) |
| 18 | configSetCmd.Flags().StringP("api_key", "k", "", availableKeys["openai.api_key"]) |
| 19 | configSetCmd.Flags().String("api_key_helper", "", availableKeys["openai.api_key_helper"]) |
| 20 | configSetCmd.Flags(). |
| 21 | Int("api_key_helper_refresh_interval", 900, availableKeys["openai.api_key_helper_refresh_interval"]) |
| 22 | configSetCmd.Flags().StringP("model", "m", "gpt-4o", availableKeys["openai.model"]) |
| 23 | configSetCmd.Flags().StringP("lang", "l", "en", availableKeys["openai.lang"]) |
| 24 | configSetCmd.Flags().StringP("org_id", "o", "", availableKeys["openai.org_id"]) |
| 25 | configSetCmd.Flags().StringP("proxy", "", "", availableKeys["openai.proxy"]) |
| 26 | configSetCmd.Flags().StringP("socks", "", "", availableKeys["openai.socks"]) |
| 27 | configSetCmd.Flags().DurationP("timeout", "t", defaultTimeout, availableKeys["openai.timeout"]) |
| 28 | configSetCmd.Flags().StringP("template_file", "", "", availableKeys["git.template_file"]) |
| 29 | configSetCmd.Flags().StringP("template_string", "", "", availableKeys["git.template_string"]) |
| 30 | configSetCmd.Flags().IntP("diff_unified", "", 3, availableKeys["git.diff_unified"]) |
| 31 | configSetCmd.Flags().StringP("exclude_list", "", "", availableKeys["git.exclude_list"]) |
| 32 | configSetCmd.Flags().IntP("max_tokens", "", 300, availableKeys["openai.max_tokens"]) |
| 33 | configSetCmd.Flags().Float32P("temperature", "", 1.0, availableKeys["openai.temperature"]) |
| 34 | configSetCmd.Flags().Float32P("top_p", "", 1.0, availableKeys["openai.top_p"]) |
| 35 | configSetCmd.Flags(). |
| 36 | Float32P("frequency_penalty", "", 0.0, availableKeys["openai.frequency_penalty"]) |
| 37 | configSetCmd.Flags(). |
| 38 | Float32P("presence_penalty", "", 0.0, availableKeys["openai.presence_penalty"]) |
| 39 | configSetCmd.Flags().StringP("provider", "", "openai", availableKeys["openai.provider"]) |
| 40 | configSetCmd.Flags().BoolP("skip_verify", "", false, availableKeys["openai.skip_verify"]) |
| 41 | configSetCmd.Flags().StringP("headers", "", "", availableKeys["openai.headers"]) |
| 42 | configSetCmd.Flags().StringP("api_version", "", "", availableKeys["openai.api_version"]) |
| 43 | configSetCmd.Flags().StringP("prompt_folder", "", "", availableKeys["prompt.folder"]) |
| 44 | // Gemini flags |
| 45 | configSetCmd.Flags().String("gemini.project_id", "", availableKeys["gemini.project_id"]) |
| 46 | configSetCmd.Flags().String("gemini.location", "", availableKeys["gemini.location"]) |
| 47 | configSetCmd.Flags(). |
| 48 | String("gemini.backend", "BackendGeminiAPI", availableKeys["gemini.backend"]) |
| 49 | configSetCmd.Flags().String("gemini.api_key", "", availableKeys["gemini.api_key"]) |
| 50 | configSetCmd.Flags().String("gemini.api_key_helper", "", availableKeys["gemini.api_key_helper"]) |
| 51 | configSetCmd.Flags(). |
| 52 | Int("gemini.api_key_helper_refresh_interval", 900, availableKeys["gemini.api_key_helper_refresh_interval"]) |
| 53 | |
| 54 | _ = viper.BindPFlag("openai.base_url", configSetCmd.Flags().Lookup("base_url")) |
| 55 | _ = viper.BindPFlag("openai.org_id", configSetCmd.Flags().Lookup("org_id")) |
| 56 | _ = viper.BindPFlag("openai.api_key", configSetCmd.Flags().Lookup("api_key")) |
| 57 | _ = viper.BindPFlag("openai.api_key_helper", configSetCmd.Flags().Lookup("api_key_helper")) |
| 58 | _ = viper.BindPFlag( |
| 59 | "openai.api_key_helper_refresh_interval", |
| 60 | configSetCmd.Flags().Lookup("api_key_helper_refresh_interval"), |
| 61 | ) |
| 62 | _ = viper.BindPFlag("openai.model", configSetCmd.Flags().Lookup("model")) |
| 63 | _ = viper.BindPFlag("openai.proxy", configSetCmd.Flags().Lookup("proxy")) |
| 64 | _ = viper.BindPFlag("openai.socks", configSetCmd.Flags().Lookup("socks")) |
| 65 | _ = viper.BindPFlag("openai.timeout", configSetCmd.Flags().Lookup("timeout")) |
| 66 | _ = viper.BindPFlag("openai.max_tokens", configSetCmd.Flags().Lookup("max_tokens")) |
| 67 | _ = viper.BindPFlag("openai.temperature", configSetCmd.Flags().Lookup("temperature")) |
| 68 | _ = viper.BindPFlag("output.lang", configSetCmd.Flags().Lookup("lang")) |
| 69 | _ = viper.BindPFlag("git.diff_unified", configSetCmd.Flags().Lookup("diff_unified")) |
| 70 | _ = viper.BindPFlag("git.exclude_list", configSetCmd.Flags().Lookup("exclude_list")) |
| 71 | _ = viper.BindPFlag("git.template_file", configSetCmd.Flags().Lookup("template_file")) |
| 72 | _ = viper.BindPFlag("git.template_string", configSetCmd.Flags().Lookup("template_string")) |