Дата и время

Mayros по умолчанию использует локальное время хоста для временных меток транспорта и часовой пояс пользователя только в системном промпте. Временные метки провайдера сохраняются, чтобы инструменты сохраняли свою нативную семантику (текущее время доступно через session_status).

Конверты сообщений (локальные по умолчанию)

Входящие сообщения оборачиваются с временной меткой (точность до минуты):

[Provider ... 2026-01-05 16:26 PST] текст сообщения

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

Вы можете переопределить это поведение:

json5
{
  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] привет

Часовой пояс пользователя:

[WhatsApp +1555 2026-01-18 00:19 CST] привет

Прошедшее время включено:

[WhatsApp +1555 +30s 2026-01-18T05:19Z] продолжение

Системный промпт: Текущие дата и время

Если часовой пояс пользователя известен, системный промпт включает специальную секцию Текущие дата и время только с часовым поясом (без формата часов/времени) для поддержания стабильности кэширования промпта:

Time zone: America/Chicago

Когда агенту нужно текущее время, используйте инструмент session_status; карточка статуса включает строку временной метки.

Строки системных событий (локальные по умолчанию)

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

System: [2026-01-12 12:19:17 PST] Модель переключена.

Настройка часового пояса пользователя + формата

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

Определение формата времени (auto)

Когда timeFormat: "auto", Mayros проверяет настройки ОС (macOS/Windows) и откатывается к форматированию локали. Обнаруженное значение кэшируется для каждого процесса чтобы избежать повторных системных вызовов.

Полезные нагрузки инструментов + коннекторы (нативное время провайдера + нормализованные поля)

Инструменты каналов возвращают нативные временные метки провайдера и добавляют нормализованные поля для согласованности:

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

Необработанные поля провайдера сохраняются, поэтому ничего не теряется.

  • Slack: строки в стиле epoch из API
  • Discord: UTC ISO временные метки
  • Telegram/WhatsApp: специфичные для провайдера числовые/ISO временные метки

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

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