Дата и время

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 метки времени

Если вам нужно локальное время, конвертируйте его далее, используя известный часовой пояс.

Связанная документация