• #日記
  • #Claude Code
  • #Docker
  • #タイムゾーン
daily-log

2026年3月21日の開発日記

朝一で /make-diary を叩いたら日付が1日ずれた日記が出てきた。Docker環境のタイムゾーン問題だった。修正してからClaude Codeの設定周りを掘り下げ、ステータスラインの表示、settings.jsonのフィールド調査、自動アップデート停止まで一気に片付けた。

今日やったこと

1. make-diaryのタイムゾーン問題を修正

/make-diary を引数なしで実行すると date -d 'yesterday' で昨日の日付を算出する。Dockerコンテナのタイムゾーンがデフォルトのまま(UTC)だったため、JST基準の「昨日」とずれていた。3/20分を作るべきところが3/19分の日記を生成してしまった。

主な成果:

  • 原因特定: DockerのデフォルトタイムゾーンがUTC
  • 修正: TZ=Asia/Tokyo date -d 'yesterday' で解決
  • 3/19分の日記は内容自体は正しかったので、日付だけ修正

詳細: make-diary日記生成コマンドのタイムゾーン問題


2. Claude Codeの設定カスタマイズ

sokurokuプロジェクトの作業中にClaude Codeの設定を整備した。settings.jsonに設定したフィールドが「unrecognized」と警告されるが、実際にはすべて有効に動作していることを確認。

主な成果:

  • Braille Dotsパターンでトークン使用率をステータスラインに表示
  • settings.jsonの「unrecognized」警告問題を調査 → 警告は出るが設定は有効と判明
  • 自動アップデート(autoUpdaterStatus: "disabled")を停止
  • バージョンロールバック手順を確認(npm install -g @anthropic-ai/[email protected]

詳細: Claude Code設定カスタマイズ


今日の試行錯誤

#テーマ試したこと結果気づき
1make-diary日付ズレ引数なしで /make-diary 実行3/19分が生成された(1日ズレ)Docker=UTCが原因
2make-diary日付ズレTZ=Asia/Tokyo date -d 'yesterday'JST基準の正しい日付を取得コマンド単位でTZ指定が最小影響
3settings.json警告フィールドを1つずつ消して再起動消すと機能が失われた警告が出ても設定は有効だった
4自動アップデートautoUpdaterStatus: "disabled" を追加自動アップデートが停止手動で claude update すればOK

今日の学び

  • Docker環境の date コマンドはUTCを返す。日付依存のスクリプトでは TZ=Asia/Tokyo を明示する
  • Claude Codeのsettings.json警告は「unrecognized」でも機能している場合がある。消す前に動作確認すべき
  • 日付間違いの手戻りは、最初から正しく実行する何倍もの手間がかかる

関連記事