Claude Code 排程前怎麼查登入到期?2.1.318 新欄位與紀錄方式
驗證於
本文目錄
每天固定執行 claude -p,還需要追蹤執行它的帳號登入期限。Claude Code 2.1.318 新增儲存的 claude.ai 登入到期資訊:claude auth status 使用 loginExpiresAt,print 模式的 JSON 結果使用 credential_expires_at。 這能讓排程在正式工作前先檢查是否接近需要重新登入的時間。
依 2026 年 11 月 4 日的官方 changelog,claude -p 的文字輸出也會從到期前 10 天開始,透過 stderr 印出一行警告。這項新增針對儲存的 claude.ai 登入;使用 API key、第三方雲端或 gateway 的流程,應依各自的憑證來源處理。
排程與終端機先對齊執行環境
互動終端機完成登入後,排程仍可能使用另一個 binary、使用者或設定目錄。先在實際排程的執行環境讀取:
command -v claudeclaude --versionclaude auth statusCLI reference說明 auth status 預設輸出 JSON,登入時結束碼為 0、未登入為 1;--text 可供人工閱讀。文件也列出 authMethod 與 configDirectory,後者需 2.1.268 以上。把排程讀到的 binary、版本、認證方式與設定目錄,和你預期的環境比對。
本文於 2026-11-05 實際執行本機 command -v claude 與 claude --version,版本為 2.1.145;未升級、未讀取帳號狀態,也未呼叫模型。因此新欄位與十天警告依官方文件確認,尚無 2.1.318 的實際 JSON 輸出可供核對。下面提供工作流程,欄位的完整型別、日期格式與空值情況仍應在你的版本確認。
把缺少到期日列為「未知」
建立排程前置檢查時,先依序回答:命令是否成功、認證方式是否為預期的 claude.ai 登入、新欄位是否存在、日期是否能被已驗證的 parser 解析。缺少欄位、空值或解析失敗,統一記為「到期日未知」,再交由維護者確認版本與登入方式。
若拿得到有效期限,可以按照自己的維護窗口設定提前提醒,例如在下一次有人值班前安排重新登入。這是你的排程政策,官方 changelog 只確認文字模式在到期前 10 天輸出提醒,沒有保證每個組織都適合同一個停跑門檻。
登入狀態與期限應分開記。當下 auth status 成功,證明該次檢查的狀態;長時間工作還會跨過時間與網路條件。可保留「檢查時間、CLI 版本、authMethod、到期日或未知、狀態碼」,讓隔天失敗時能回溯。對外分享診斷資料時只提供必要欄位,帳號資訊留在原本的受控日誌。
stdout 留結果,stderr 留提醒
既有 print 工作若使用文字模式,應確認排程有保留 stderr,否則到期警告會落在沒人看的地方。若改用 JSON 模式,正式執行時可以採以下分流形狀:
claude -p '只回覆 OK' --output-format json > result.json 2> diagnostics.log這條示範會呼叫模型,本文未執行;應先在可接受用量的測試環境驗收。credential_expires_at 來自該次 JSON 結果,適合當作執行後的觀測,排程啟動前仍以 auth status 做前置檢查。解析 stdout 時保留原始結束碼,stderr 則依你的日誌政策保存與通知。
先用一個小型測試工作核對「成功輸出能解析、警告有留存、未登入能被監控發現」,再接回正式任務。若到期日未知,應在測試紀錄保留這個狀態;自行補上很遠的日期會掩蓋監控缺口。
重新登入可依 官方認證文件使用 claude auth login,在排程實際使用的環境完成後再重查狀態。這只處理認證;工具執行權限與回合上限仍應另外依 Claude Code 自動任務權限檢查設定。
參考資料: