Дата и время
OpenClaw по умолчанию использует локальное время хоста для меток времени транспорта и часовой пояс пользователя только в системном промпте. Метки времени провайдера сохраняются, чтобы инструменты сохраняли свою нативную семантику (текущее время доступно через session_status).
Конверты сообщений (локальные по умолчанию)
Входящие сообщения оборачиваются меткой времени (точность до минуты):
[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: "local" использует часовой пояс хоста.
- envelopeTimezone: "user" использует agents.defaults.userTimezone (возвращается к часовому поясу хоста).
- Используйте явный часовой пояс IANA (например, "America/Chicago") для фиксированной зоны.
- envelopeTimestamp: "off" удаляет абсолютные метки времени из заголовков конверта.
- envelopeElapsed: "off" удаляет суффиксы прошедшего времени (стиль +2m).
Примеры
Локальное (по умолчанию):
[WhatsApp +1555 2026-01-18 00:19 PST] hello
Часовой пояс пользователя:
[WhatsApp +1555 2026-01-18 00:19 CST] hello
Прошедшее время включено:
[WhatsApp +1555 +30s 2026-01-18T05:19Z] follow-up
Системный промпт: Текущая дата и время
Если часовой пояс пользователя известен, системный промпт включает выделенный раздел Current Date & Time с только часовым поясом (без формата часов/времени), чтобы кэширование промпта оставалось стабильным:
Time zone: America/Chicago
Когда агенту нужно текущее время, используйте инструмент session_status; карточка статуса включает строку с меткой времени.
Строки системных событий (локальные по умолчанию)
Системные события в очереди, вставленные в контекст агента, префиксируются меткой времени, используя тот же выбор часового пояса, что и конверты сообщений (по умолчанию: локальное хоста).
System: [2026-01-12 12:19:17 PST] Model switched.
Настройка часового пояса пользователя + формата
\{
agents: \{
defaults: \{
userTimezone: "America/Chicago",
timeFormat: "auto" // auto | 12 | 24
\}
\}
\}
- userTimezone устанавливает локальный часовой пояс пользователя для контекста промпта.
- timeFormat контролирует отображение 12ч/24ч в промпте. auto следует настройкам ОС.
Определение формата времени (auto)
Когда timeFormat: "auto", OpenClaw проверяет настройки ОС (macOS/Windows) и возвращается к форматированию локали. Обнаруженное значение кэшируется для каждого процесса, чтобы избежать повторных системных вызовов.
Полезные нагрузки инструментов + коннекторы (сырое время провайдера + нормализованные поля)
Инструменты каналов возвращают нативные метки времени провайдера и добавляют нормализованные поля для согласованности:
- timestampMs: миллисекунды эпохи (UTC)
- timestampUtc: строка ISO 8601 UTC
Сырые поля провайдера сохраняются, чтобы ничего не было потеряно.
- Slack: строки, похожие на эпоху, из API
- Discord: метки времени UTC ISO
- Telegram/WhatsApp: специфичные для провайдера числовые/ISO метки времени
Если вам нужно локальное время, конвертируйте его далее, используя известный часовой пояс.