Claudeのコードにおける時間の幻覚をフックで修正する

Redditユーザーが、Claude CodeのAIアシスタントがリアルタイムクロックへのアクセスを欠いているために誤った時間ベースの提案を行うという特定の問題を特定し、解決しました。
問題点
Claudeはリアルタイムクロックにアクセスできません。セッション開始時に今日の日付は受け取りますが、現在時刻は取得しません。これにより、Claudeは時間を推測することになり、実際は正午なのに「夜遅いので、少し休みましょう」など、不適切な提案をすることがあります。この解決策はClaude Codeでのみ機能し、Web版やデスクトップ版では機能しません。
解決策
修正方法は、Claude Codeの設定ファイルに単一のフックを追加することです:
- ~/.claude/settings.jsonを開くか作成します(またはClaude Codeに依頼して行ってもらいます)
- この設定を貼り付けます:
{
"hooks": {
"UserPromptSubmit": [
{
"matcher": "",
"hooks": [
{
"type": "command",
"command": "echo \"Current time: $(date '+%A %Y-%m-%d %I:%M %p %Z')\""
}
]
}
]
}
}この解決策は再起動を必要とせず、すぐに機能します。
仕組み
メッセージを送信するたびに、フックがdateコマンドを実行し、出力をClaudeのコンテキストにバックグラウンドで注入します。ユーザーはこの出力を見ることはありませんが、Claudeは「Current time: Monday 2026-04-06 03:39 AM EDT」のような情報を見ます。フックはすべてのメッセージで発火するため、Claudeはメッセージ間の時間差を観察することで、ユーザーが離席して戻ってきたことも検出できます。
このアプローチは、Claude Codeのフック機能(UserPromptSubmitなどの特定のイベントで自動的に発火するシェルコマンド)を活用しています。
📖 完全なソースを読む: r/ClaudeAI
👀 See Also

軽量コンテキストのCronジョブを使用したデイリーOpenClawのヒント
ユーザーが、OpenClawのヒントをNextcloud Talkチャンネルに投稿する日次cronジョブの設定を共有し、分離タスクのブートストラップオーバーヘッドを削減する--light-contextフラグの活用を強調しています。

モデル切り替えでOpenClawエージェントコストを80%削減する方法
あるユーザーが14日間にわたりトークン使用量を追跡したところ、支出の67%が、安価なFlashモデルがOpusと同等の品質を発揮するタスクに充てられていることが判明しました。デフォルトをFlashに切り替え、セッション中に/modelを使用することで、月額コストを約170ドルから約35ドルに削減できました。

すべての開発者が知っておくべき20のClaude Codeコマンド
Redditの投稿が、タスク停止、コンテキスト管理、ブランチ、リモート制御、そして/compact、/branch、/simplifyといった生産性向上ショートカットを含む20のClaude Codeコマンドをまとめています。

Claude Codeを使ったプレコーディングルーチン:コードを書く前に5つのMCPサーバー
ある開発者が、5つのMCPサーバー(メモリ、コードベースグラフ、Tavily検索、Context7ドキュメント)とセーフティフックを使用し、幻覚や無駄な編集を劇的に減らす60〜90秒のルーティンを公開しています。