На этой странице
На этой странице
Technical reference
Дата и время
OpenClaw использует локальное время хоста для временных меток транспорта и помещает в системный промпт только часовой пояс.
Временные метки провайдера сохраняются, чтобы инструменты сохраняли свою исходную семантику. Когда агенту требуется текущее
время, он запускает инструмент session_status.
Конверты сообщений (по умолчанию локальное время)
Входящие сообщения помещаются в конверт с днём недели и временной меткой с точностью до секунды:
Временная метка конверта по умолчанию использует локальное время хоста, независимо от часового пояса провайдера.
Переопределение настраивается в agents.defaults:
| Ключ | Значения | Поведение |
|---|---|---|
envelopeTimezone |
local (по умолчанию), utc, user, явное имя IANA |
user использует agents.defaults.userTimezone (часовой пояс хоста, если значение не задано). Явное имя IANA (например, "America/Chicago") закрепляет фиксированный часовой пояс; нераспознанные имена заменяются на UTC. |
envelopeTimestamp |
on (по умолчанию), off |
off удаляет абсолютные временные метки из заголовков конвертов, непосредственных префиксов промпта агента и встроенных префиксов входных данных модели. |
envelopeElapsed |
on (по умолчанию), off |
off удаляет суффикс прошедшего времени (в формате +30s / +2m), отображаемый с момента предыдущего сообщения в сеансе. |
Примеры
Локальное время (по умолчанию):
Часовой пояс пользователя:
Прошедшее время с envelopeTimezone: "utc":
Системный промпт: текущая дата и время
Системный промпт содержит раздел Текущая дата и время с только часовым поясом (без времени или формата времени), чтобы кэширование промпта оставалось стабильным:
Если настроен agents.defaults.userTimezone, используется этот часовой пояс, иначе — часовой пояс хоста.
Промпт также предписывает агенту запускать инструмент session_status всякий раз, когда ему требуются
текущая дата, время или день недели.
Строки системных событий (по умолчанию локальное время)
Системные события из очереди, вставляемые в контекст агента, получают префикс с временной меткой, использующий
тот же выбор envelopeTimezone, что и конверты сообщений (по умолчанию — локальное время хоста).
Настройка часового пояса пользователя и формата
userTimezoneзадаёт локальный часовой пояс пользователя для контекста промпта (и дляenvelopeTimezone: "user").timeFormatуправляет 12-часовым/24-часовым отображением времени в промпте.autoследует настройкам ОС.
Определение формата времени (автоматически)
При timeFormat: "auto" OpenClaw проверяет настройки ОС (macOS и Windows),
а при невозможности использует форматирование локали. Определённое значение кэшируется для каждого процесса,
чтобы избежать повторных системных вызовов.
Полезные нагрузки инструментов и коннекторы (исходное время провайдера и нормализованные поля)
Инструменты каналов возвращают временные метки в исходном формате провайдера и для единообразия добавляют нормализованные поля:
timestampMs: миллисекунды с начала эпохи (UTC)timestampUtc: строка UTC в формате ISO 8601
Исходные поля провайдера сохраняются, поэтому данные не теряются.
- Discord: временные метки ISO в UTC
- Slack: строки в формате, подобном времени эпохи, из API
- Telegram/WhatsApp: числовые временные метки или временные метки ISO в формате провайдера
Если требуется локальное время, преобразуйте его на последующих этапах, используя известный часовой пояс.