Zeitzonen
OpenClaw standardisiert Zeitstempel, damit das Modell eine einheitliche Referenzzeit sieht.
Message Envelopes (standardmäßig lokal)
Eingehende Nachrichten werden in einem Envelope verpackt:
[Provider ... 2026-01-05 16:26 PST] message text
Der Zeitstempel im Envelope ist standardmäßig host-lokal, mit Minutengenauigkeit.
Du kannst das überschreiben mit:
{
agents: {
defaults: {
envelopeTimezone: "local", // "utc" | "local" | "user" | IANA timezone
envelopeTimestamp: "on", // "on" | "off"
envelopeElapsed: "on", // "on" | "off"
},
},
}
envelopeTimezone: "utc"verwendet UTC.envelopeTimezone: "user"verwendetagents.defaults.userTimezone(fällt auf Host-Zeitzone zurück).- Verwende eine explizite IANA-Zeitzone (z.B.
"Europe/Vienna") für einen festen Offset. envelopeTimestamp: "off"entfernt absolute Zeitstempel aus den Envelope-Headern.envelopeElapsed: "off"entfernt die verstrichene Zeit (das+2m-Format).
Beispiele
Lokal (Standard):
[Signal Alice +1555 2026-01-18 00:19 PST] hello
Feste Zeitzone:
[Signal Alice +1555 2026-01-18 06:19 GMT+1] hello
Verstrichene Zeit:
[Signal Alice +1555 +2m 2026-01-18T05:19Z] follow-up
Tool Payloads (rohe Provider-Daten + normalisierte Felder)
Tool-Aufrufe (channels.discord.readMessages, channels.slack.readMessages, etc.) liefern rohe Provider-Zeitstempel.
Wir fügen auch normalisierte Felder für Konsistenz hinzu:
timestampMs(UTC Epoch in Millisekunden)timestampUtc(ISO 8601 UTC-String)
Rohe Provider-Felder bleiben erhalten.
Benutzer-Zeitzone für den System-Prompt
Setze agents.defaults.userTimezone, um dem Modell die lokale Zeitzone des Benutzers mitzuteilen. Wenn nicht gesetzt, ermittelt OpenClaw die Host-Zeitzone zur Laufzeit (ohne Config-Schreibvorgang).
{
agents: { defaults: { userTimezone: "America/Chicago" } },
}
Der System-Prompt enthält:
Current Date & Time-Abschnitt mit lokaler Zeit und ZeitzoneTime format: 12-houroder24-hour
Du kannst das Prompt-Format mit agents.defaults.timeFormat (auto | 12 | 24) steuern.
Siehe Datum & Zeit für das vollständige Verhalten und Beispiele.