Technical reference
日付と時刻
OpenClaw は、トランスポートのタイムスタンプにホストのローカル時刻を使用し、システムプロンプトにはタイムゾーンのみを含めます。
ツールがプロバイダー固有のセマンティクスを維持できるよう、プロバイダーのタイムスタンプは保持されます。エージェントが現在時刻を必要とする場合は、
session_status ツールを実行します。
メッセージエンベロープ(デフォルトはローカル)
受信メッセージは、曜日と秒精度のタイムスタンプを付けてラップされます。
[WhatsApp +1555 Mon 2026-01-05 16:26:34 PST] message textエンベロープのタイムスタンプは、プロバイダーのタイムゾーンに関係なく、デフォルトでホストのローカル時刻になります。
agents.defaults で上書きできます。
{ agents: { defaults: { envelopeTimezone: "local", // "utc" | "local" | "user" | IANA timezone envelopeTimestamp: "on", // "on" | "off" envelopeElapsed: "on", // "on" | "off" }, },}| キー | 値 | 動作 |
|---|---|---|
envelopeTimezone |
local(デフォルト)、utc、user、明示的な IANA 名 |
user は agents.defaults.userTimezone を使用します(未設定の場合はホストのタイムゾーン)。明示的な IANA 名(例:"America/Chicago")を指定すると固定ゾーンに設定されます。認識されない名前は UTC にフォールバックします。 |
envelopeTimestamp |
on(デフォルト)、off |
off にすると、エンベロープヘッダー、エージェントへの直接プロンプトのプレフィックス、埋め込まれたモデル入力のプレフィックスから絶対タイムスタンプが削除されます。 |
envelopeElapsed |
on(デフォルト)、off |
off にすると、セッション内の前のメッセージからの経過時間を示すサフィックス(+30s / +2m 形式)が削除されます。 |
例
ローカル(デフォルト):
[WhatsApp +1555 Sun 2026-01-18 00:19:42 PST] helloユーザーのタイムゾーン:
[WhatsApp +1555 Sun 2026-01-18 00:19:42 CST] helloenvelopeTimezone: "utc" での経過時間:
[WhatsApp +1555 +30s Sun 2026-01-18T05:19:00Z] follow-upシステムプロンプト:現在の日付と時刻
プロンプトキャッシュを安定させるため、システムプロンプトにはタイムゾーンのみ (時刻や時刻形式は含まない)を示す現在の日付と時刻セクションが含まれます。
Time zone: America/Chicago設定されている場合、ゾーンには agents.defaults.userTimezone が使用され、それ以外の場合はホストのタイムゾーンが使用されます。
また、現在の日付、時刻、曜日が必要な場合は常に session_status ツールを実行するよう、
プロンプトでエージェントに指示します。
システムイベント行(デフォルトはローカル)
エージェントのコンテキストに挿入されるキュー内のシステムイベントには、メッセージエンベロープと同じ
envelopeTimezone の選択(デフォルト:ホストのローカル時刻)を使用したタイムスタンプがプレフィックスとして付加されます。
System: [2026-01-12 12:19:17 PST] Model switched.ユーザーのタイムゾーンと形式を設定する
{ agents: { defaults: { userTimezone: "America/Chicago", timeFormat: "auto", // auto | 12 | 24 }, },}userTimezoneは、プロンプトのコンテキスト(およびenvelopeTimezone: "user")に使用するユーザーのローカルタイムゾーンを設定します。timeFormatは、プロンプトに表示される時刻の12時間制/24時間制表示を制御します。autoは OS の設定に従います。
時刻形式の検出(自動)
timeFormat: "auto" の場合、OpenClaw は OS の設定(macOS および Windows)を確認し、
見つからない場合はロケールの書式設定にフォールバックします。検出された値は、システムコールの繰り返しを避けるため、
プロセスごとにキャッシュされます。
ツールペイロードとコネクター(プロバイダーの生の時刻と正規化フィールド)
チャンネルツールは、プロバイダー固有のタイムスタンプを返し、一貫性を保つために正規化されたフィールドを追加します。
timestampMs:エポックからのミリ秒(UTC)timestampUtc:ISO 8601 UTC 文字列
情報が失われないよう、プロバイダーの生のフィールドは保持されます。
- Discord:UTC の ISO タイムスタンプ
- Slack:API から返されるエポック形式の文字列
- Telegram/WhatsApp:プロバイダー固有の数値/ISO タイムスタンプ
ローカル時刻が必要な場合は、既知のタイムゾーンを使用して後続処理で変換してください。