定時のジョブを「ログイン切れ」で止めない Claude Codeが期限を先に知らせる
米AnthropicのClaude Codeは11月4日の2.1.318で、保存したclaude.aiのログインが切れる日を「claude auth status」と「claude -p」のJSONに出し、切れる10日前から警告を出すようにした。定時のジョブが黙って止まる前に、期限を読んで手を打てる。
記事の内容を自社でどう進めるか、内容が固まっていない段階でも相談できます。仕事の相談
毎週 1 回、その週の記事から 5 本と実践の 1 本を選んでメールで届けます。ニュースレターを購読する(無料)

米AnthropicのClaude Codeは11月4日公開の2.1.318で、保存したclaude.aiのログインがいつ切れるかを、コマンドの出力で読めるようにした。claude -pの出力には、切れる10日前から1行の警告が出る。夜中に回すジョブは、ログインが切れると人の見ていない所で止まる。期限を先に読めるようになり、止まる前に手を打てる運用が組めるようになった。
期限を出力で読めるようになった
Claude CodeのGitHubのリリースの一覧によると、2.1.318は11月4日に公開された。ログインの期限について、この版は2つの機能を足している。
1つ目は期限の日付だ。claude auth statusの出力にloginExpiresAt、claude -pのJSONの結果にcredential_expires_atが加わり、保存したclaude.aiのログインが終わる日を読める。2つ目は警告で、claude -pのテキストの出力に、ログインが切れる10日前から1行の警告を標準エラーに出す。
さらに、期限に達した時の失敗の伝え方も変えた。これまでのサインインの失敗は、ログインが期限切れだと分かる形になっていなかった。2.1.318からは期限に達したことをはっきり示し、claude -pでは次の手としてclaude auth loginとclaude setup-tokenの2つのコマンドを示す。
黙って止まる原因を減らした
同じ時期の版では、ジョブが期限の前に止まる原因も直している。Claude Codeの変更履歴(CHANGELOG)から、定時のジョブに効くものを拾う。
2.1.318では、同じホームのディレクトリーで別の端末や別のホストが同じアカウントと組織にサインインし直すと、ジョブがNot logged inで終わる不具合を直した。claude pluginのコマンドが、時間のかかるトークンの更新を保存する前に終わり、次の実行でサインアウトになる不具合も直している。11月3日公開の2.1.317では、claude auth statusの同じ不具合を直した。
ログインの情報が壊れる場面も減らしている。2.1.318では、ネットワーク上のホームのディレクトリーで容量が尽きた時に、保存したログインが空のファイルに置き換わる不具合を直した。人の操作が無い起動で、壊れた ~/.claude.jsonを既定の値で上書きするのもやめた。起動は失敗し、ファイルを戻す方法を示す。
10月30日公開の2.1.314では、複数のセッションが同じプロファイルのログインを共有し、資格情報のロックがふさがっている時に、ログインの更新が余計に走る不具合を直した。
ログイン切れと通信の遮断を分ける
止まった理由の見分けも変わった。2.1.317では、地域やネットワークによる遮断(HTTP 403)がサインインの失敗として表示される不具合を直した。エラーは遮断だと説明するようになった。
これまでは、通信が遮られただけでもログインの問題に見えることがあった。ジョブが止まった時、ログインの期限切れなら手で入り直す必要があり、遮断ならネットワークの設定を見直す必要がある。原因によって打つ手が違うため、エラーの文で見分けられることには意味がある。
失敗を終了コードで拾える
ジョブの成否をコマンドの終了コードで見ている運用には、こちらの直しも効く。10月30日の2.1.314から、直しが続いている。
2.1.314では、起動に失敗したclaude -pが、何も出力せずに終了コード0で終わる不具合を直した。今はエラーを出し、終了コード1で終わる。2.1.317では、ディスクや容量の上限で会話の記録や ~/.claude.jsonの書き込みが失われた時に、claude -pが終了コード0で終わる不具合を直した。テキストとJSONの出力では、エラーを出して終了コード1で終わる。ただし変更履歴は、容量の尽きたNFSの共有では見逃すことがあると断っている。
つまり、起動で失敗したジョブや書き込みを失ったジョブが、成功として記録されにくくなった。ログイン切れの警告と合わせ、止まったジョブを見張りの側で拾いやすくなっている。
期限を読む場所を決める
要は、2.1.318から、ログインの期限はClaude Codeに聞けば分かる値になった。人が対話で使う時はclaude auth statusで読み、ジョブの中ではclaude -pのJSONのcredential_expires_atを読める。テキストの出力で回すジョブなら、標準エラーの警告を拾える。
ただし、変更履歴が期限の日付を出すと書いているのは、保存したclaude.aiのログインについてだ。期限に達した時に示される次の手はclaude auth loginとclaude setup-tokenで、どちらを使うかは運用に合わせて選ぶことになる。定時のジョブを回す人にとって、この版はログイン切れを「止まってから知る」ものから「止まる前に読む」ものに変えた。
編集部の見方
編集部は、この版の価値は新しい機能より、ログインの期限を機械で読める値にしたことにあると見る。定時のジョブが止まる原因のうち、ログイン切れは前もって分かるのに、これまでは止まってから気づくしかなかった。credential_expires_atを読めれば、期限の確認をジョブの仕組みに組み込める。定時のジョブを回している人は、まずジョブのログに標準エラーが残っているか、JSONの結果を捨てていないかを確かめるとよい。ただし、出力を誰も読まない運用なら、警告が出ても止まる前に気づけない。
出典
に確認(日本時間)
- GitHubのリリースの一覧(github.com)
- Claude Codeの変更履歴(CHANGELOG)(raw.githubusercontent.com)
この記事は役に立ちましたか
ありがとうございます
ありがとうございます



