タイムゾーン

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.readMessageschannels.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を参照してください。