タイムゾーン
OpenClawはタイムスタンプを標準化し、モデルが単一の基準時刻を参照できるようにします。
メッセージエンベロープ(デフォルトはローカル時刻)
受信メッセージは以下のようなエンベロープで囲まれます:
[Provider ... 2026-01-05 16:26 PST] message text
エンベロープ内のタイムスタンプはデフォルトでホストローカルで、分単位の精度です。
以下の設定でオーバーライドできます:
{
agents: {
defaults: {
envelopeTimezone: "local", // "utc" | "local" | "user" | IANAタイムゾーン
envelopeTimestamp: "on", // "on" | "off"
envelopeElapsed: "on", // "on" | "off"
},
},
}
envelopeTimezone: "utc"でUTCを使用。envelopeTimezone: "user"でagents.defaults.userTimezoneを使用(ホストタイムゾーンにフォールバック)。- 明示的なIANAタイムゾーン(例:
"Europe/Vienna")で固定オフセット。 envelopeTimestamp: "off"でエンベロープヘッダーから絶対タイムスタンプを除去。envelopeElapsed: "off"で経過時間サフィックス(+2m形式)を除去。
表示例
ローカル(デフォルト):
[Signal Alice +1555 2026-01-18 00:19 PST] hello
固定タイムゾーン:
[Signal Alice +1555 2026-01-18 06:19 GMT+1] hello
経過時間:
[Signal Alice +1555 +2m 2026-01-18T05:19Z] follow-up
ツールペイロード(生プロバイダデータ+正規化フィールド)
ツール呼び出し(channels.discord.readMessages、channels.slack.readMessages等)はプロバイダの生タイムスタンプを返します。
一貫性のために正規化フィールドも付加されます:
timestampMs(UTCエポックミリ秒)timestampUtc(ISO 8601 UTC文字列)
プロバイダの生フィールドはそのまま保持されます。
システムプロンプトにおけるユーザータイムゾーン
agents.defaults.userTimezoneを設定すると、モデルにユーザーのローカルタイムゾーンを伝えます。未設定の場合、OpenClawはランタイムでホストタイムゾーンを解決します(設定への書き込みは行いません)。
{
agents: { defaults: { userTimezone: "America/Chicago" } },
}
システムプロンプトには以下が含まれます:
- ローカル時刻とタイムゾーンを含む
Current Date & Timeセクション Time format: 12-hourまたは24-hour
プロンプトのフォーマットはagents.defaults.timeFormat(auto | 12 | 24)で制御できます。
動作の詳細と例はDate & Timeを参照。