タイムゾーン
OpenClawはタイムスタンプを標準化し、モデルが単一の基準時刻を参照できるようにします。
メッセージエンベロープ(デフォルトはローカル)
受信メッセージは次のようなエンベロープでラップされます:
[Provider ... 2026-01-05 16:26 PST] メッセージテキスト
エンベロープのタイムスタンプはデフォルトでホストローカルで、分精度です。
これは次のように上書きできます:
{
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を参照してください。