Three timezone surfaces
The date and zone live below the system-prompt cache boundary, so day rollover does not invalidate the stable prefix. The prompt deliberately omits the live clock; when the agent needs exact current time and
session_status is available, it calls that tool.
Setting the user timezone
userTimezone is unset, OpenClaw resolves the host timezone at runtime via
Intl.DateTimeFormat().resolvedOptions().timeZone without writing config. The same
resolved zone is used for message envelopes, queued system events, the prompt’s local
date, and heartbeat active hours.
Clock rendering follows the host operating-system and locale preference. There is no
separate 12-hour or 24-hour config setting.
For provider examples and elapsed-time formatting, see Date & Time.
Related
- Date & Time - full envelope/tool/prompt behavior and examples.
- Heartbeat - active hours use timezone for scheduling.
- Cron Jobs - cron expressions use timezone for scheduling.