# instinct: config.yamlのマルチプロバイダー設定を読む前にdoctorやpreflight_checkが環境変数しか見ていないか確認する
config.yamlにマルチプロバイダー設定を記述していても、doctor や preflight_check が環境変数しか参照しない実装になっている場合、「No LLM credentials found」エラーが発生し続ける。設定ファイルの providers セクションが完全に無視されることで、正しく認証情報を渡しているつもりでも LLM クライアントが初期化に失敗する。config 系の作業・新規プロバイダー追加・LLM クライアント初期化時には、診断コマンドが環境変数だけでなく config.yaml の内容も読んでいるかをコードレベルで確認することが必須。
## ポイント
- doctor / preflight_check が config.yaml の providers セクションを無視し環境変数のみ参照するケースがある
- 「No LLM credentials found」エラーは config.yaml が正しくても発生しうる — 診断コマンド自体のバグを疑う
- 新規プロバイダー追加・LLM クライアント初期化前にソースコードで config 読み込みパスを確認する
- 環境変数と config.yaml の両方が正しく読み込まれているかを curl や print デバッグで検証する
## 関連ページ
[[AsyncLLMClientを初期化する前に、プロバイダーがreasoning_effortパラメータに対応しているか確認する]] [[LLMモデル名を変更する前に全ボット共通のllm_client.pyを修正し他のタスクへの影響を確認する]] [[Pythonインポートエラー対処前に依存関係(SQLAlchemy等)のインストール状態を確認する]] [[PostgreSQL接続確認前にパスワード環境変数の有効性を検証する]]
## 関連概念(未作成)
`config.yaml vs 環境変数の優先順位設計` `LLM プロバイダー認証フロー検証パターン` `診断コマンド(doctor/preflight)の信頼性チェック`
instinct: config.yamlのマルチプロバイダー設定を読む前にdoctorやpreflight_checkが環境変数しか見ていないか確認する