設定
最後更新
本頁列出 go-rss-reader 的所有設定來源:兩個環境變數、資料庫檔案位置,以及存在資料庫內的 API 金鑰。
環境變數
| 變數 | 必要 | 說明 |
|---|---|---|
RSS_DB_PATH |
否 | SQLite 資料庫檔案完整路徑;有值時跳過所有自動判斷 |
GO_ENV |
否 | 值為 development 時視為開發環境,資料庫建立在目前工作目錄 |
程式沒有設定檔,也不讀 .env。
資料庫位置
database.NewSQLite() 依下列順序決定 rss.db 的路徑:
| 順序 | 條件 | 路徑 |
|---|---|---|
| 1 | RSS_DB_PATH 有值 |
該值 |
| 2 | 目前工作目錄存在 go.mod,或 GO_ENV=development |
<工作目錄>/rss.db |
| 3 | 執行檔所在目錄可寫入(以建立再刪除 .write_test 測試) |
<執行檔目錄>/rss.db |
| 4 | 其他 | ~/.rss-reader/rss.db,目錄不存在時以 0755 建立 |
資料庫初始化失敗時程式以 Failed to init SQLite 結束,不會進入介面。
API 金鑰
| 項目 | 行為 |
|---|---|
| 設定方式 | 介面 Command 欄輸入 apikey <API_KEY> |
| 儲存位置 | data 資料表,key 為 apikey,明文儲存 |
| 載入時機 | 每次全文萃取完成、準備產生概要時讀取 |
| 顯示 | config 指令會在 Preview 以明文顯示金鑰;未設定時顯示 Not set |
金鑰不讀環境變數。未設定金鑰時仍會送出概要請求,OpenAI 回傳的 401 錯誤訊息會顯示在 Summary 欄。
固定參數
下列數值寫死在原始碼,沒有對應的設定項:
| 項目 | 值 | 位置 |
|---|---|---|
| 自動檢查間隔 | 5 分鐘 | internal/app/app.go New() |
| 新聞保留視窗 | 72 小時 | internal/util/collector.go GetNews() |
| HTTP 逾時(RSS、全文) | 30 秒 | NewCollector()/NewExtractor() |
| 全文萃取間隔 | 500ms | loadContent() |
| 概要模型 | gpt-4o-mini |
internal/api/llm.go |