Technical reference

Дата й час

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

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

Вхідні повідомлення обгортаються конвертом із днем тижня та часовою міткою з точністю до секунди:

Code
[WhatsApp +1555 Mon 2026-01-05 16:26:34 PST] message text

Часова мітка конверта за замовчуванням відповідає локальному часу хоста, незалежно від часового поясу провайдера. Змініть це в agents.defaults:

json5
{  agents: {    defaults: {      envelopeTimezone: "local", // "utc" | "local" | "user" | часовий пояс IANA      envelopeTimestamp: "on", // "on" | "off"      envelopeElapsed: "on", // "on" | "off"    },  },}
Ключ Значення Поведінка
envelopeTimezone local (типово), utc, user, явна назва часового поясу IANA user використовує agents.defaults.userTimezone (часовий пояс хоста, якщо значення не задано). Явна назва IANA (наприклад, "America/Chicago") закріплює фіксований часовий пояс; нерозпізнані назви спричиняють перехід до UTC.
envelopeTimestamp on (типово), off off вилучає абсолютні часові мітки із заголовків конвертів, прямих префіксів промптів агента та вбудованих префіксів вхідних даних моделі.
envelopeElapsed on (типово), off off вилучає суфікс тривалості (у форматі +30s / +2m), що показує час від попереднього повідомлення в сеансі.

Приклади

Локальний час (типово):

Code
[WhatsApp +1555 Sun 2026-01-18 00:19:42 PST] hello

Часовий пояс користувача:

Code
[WhatsApp +1555 Sun 2026-01-18 00:19:42 CST] hello

Тривалість із envelopeTimezone: "utc":

Code
[WhatsApp +1555 +30s Sun 2026-01-18T05:19:00Z] follow-up

Системний промпт: поточна дата й час

Системний промпт містить розділ Поточна дата й час із лише часовим поясом (без показу часу чи формату часу), щоб кешування промпту залишалося стабільним:

Code
Time zone: America/Chicago

Якщо налаштовано agents.defaults.userTimezone, використовується цей часовий пояс; інакше — часовий пояс хоста. Промпт також вказує агенту запускати інструмент session_status, коли йому потрібні поточна дата, час або день тижня.

Рядки системних подій (за замовчуванням — локальний час)

Системні події з черги, вставлені в контекст агента, отримують префікс із часовою міткою, що використовує той самий вибір envelopeTimezone, що й конверти повідомлень (типово: локальний час хоста).

Code
System: [2026-01-12 12:19:17 PST] Model switched.

Налаштування часового поясу користувача та формату

json5
{  agents: {    defaults: {      userTimezone: "America/Chicago",      timeFormat: "auto", // auto | 12 | 24    },  },}
  • userTimezone задає локальний часовий пояс користувача для контексту промпту (і для envelopeTimezone: "user").
  • timeFormat керує 12- або 24-годинним відображенням часу в промпті. auto використовує налаштування ОС.

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

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

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

Інструменти каналів повертають властиві провайдеру часові мітки та додають нормалізовані поля для узгодженості:

  • timestampMs: мілісекунди від початку епохи (UTC)
  • timestampUtc: рядок UTC у форматі ISO 8601

Необроблені поля провайдера зберігаються, щоб не втратити жодних даних.

  • Discord: часові мітки ISO у UTC
  • Slack: рядки у форматі часу епохи з API
  • Telegram/WhatsApp: числові часові мітки або часові мітки ISO у форматі провайдера

Якщо потрібен локальний час, перетворіть його на наступному етапі обробки, використовуючи відомий часовий пояс.

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

Was this useful?
On this page

On this page