Перейти до основного вмісту

Дата й час

OpenClaw типово використовує локальний час хоста для транспортних часових позначок і часовий пояс користувача лише в системному prompt. Часові позначки провайдера зберігаються, щоб інструменти зберігали свою рідну семантику (поточний час доступний через session_status).

Конверти повідомлень (типово локальні)

Вхідні повідомлення загортаються часовою позначкою (з точністю до хвилини):
[Provider ... 2026-01-05 16:26 PST] message text
Ця часова позначка конверта типово є локальною для хоста, незалежно від часового поясу провайдера. Ви можете перевизначити цю поведінку:
{
  agents: {
    defaults: {
      envelopeTimezone: "local", // "utc" | "local" | "user" | IANA timezone
      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

Системний prompt: Current Date & Time

Якщо часовий пояс користувача відомий, системний prompt містить окремий розділ Current Date & Time лише з часовим поясом (без годинника/формату часу), щоб зберігати стабільність кешування prompt:
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 задає локальний часовий пояс користувача для контексту prompt.
  • timeFormat керує 12-годинним/24-годинним відображенням у prompt. auto використовує налаштування ОС.

Визначення формату часу (auto)

Коли timeFormat: "auto", OpenClaw перевіряє системні налаштування ОС (macOS/Windows) і повертається до форматування за локаллю. Визначене значення кешується для процесу, щоб уникнути повторних системних викликів.

Payload інструментів + конектори (сирий час провайдера + нормалізовані поля)

Інструменти каналів повертають притаманні провайдеру часові позначки і додають нормалізовані поля для узгодженості:
  • timestampMs: мілісекунди епохи (UTC)
  • timestampUtc: рядок UTC у форматі ISO 8601
Сирі поля провайдера зберігаються, тож нічого не втрачається.
  • Slack: рядки з API, схожі на epoch
  • Discord: часові позначки UTC ISO
  • Telegram/WhatsApp: числові/ISO часові позначки, специфічні для провайдера
Якщо вам потрібен локальний час, перетворіть його нижче за потоком, використовуючи відомий часовий пояс.

Пов’язана документація