Data i czas

Mayros domyślnie używa czasu lokalnego hosta dla znaczników czasu transportu i strefy czasowej użytkownika tylko w prompcie systemowym. Znaczniki czasu dostawcy są zachowywane, aby narzędzia zachowywały swoją natywną semantykę (bieżący czas jest dostępny przez session_status).

Koperty wiadomości (domyślnie lokalne)

Wiadomości przychodzące są opakowywane ze znacznikiem czasu (precyzja minutowa):

[Provider ... 2026-01-05 16:26 PST] treść wiadomości

Ten znacznik czasu koperty jest domyślnie lokalny dla hosta, niezależnie od strefy czasowej dostawcy.

Możesz to zmienić:

json5
{
  agents: {
    defaults: {
      envelopeTimezone: "local", // "utc" | "local" | "user" | strefa czasowa IANA
      envelopeTimestamp: "on", // "on" | "off"
      envelopeElapsed: "on", // "on" | "off"
    },
  },
}
  • envelopeTimezone: "utc" używa UTC.
  • envelopeTimezone: "local" używa strefy czasowej hosta.
  • envelopeTimezone: "user" używa agents.defaults.userTimezone (wraca do strefy czasowej hosta).
  • Użyj jawnej strefy czasowej IANA (np. "America/Chicago") dla stałej strefy.
  • envelopeTimestamp: "off" usuwa bezwzględne znaczniki czasu z nagłówków kopert.
  • envelopeElapsed: "off" usuwa sufiksy czasu upłynięcia (styl +2m).

Przykłady

Lokalne (domyślne):

[WhatsApp +1555 2026-01-18 00:19 PST] cześć

Strefa czasowa użytkownika:

[WhatsApp +1555 2026-01-18 00:19 CST] cześć

Włączony czas upłynięcia:

[WhatsApp +1555 +30s 2026-01-18T05:19Z] kontynuacja

Prompt systemowy: Bieżąca data i czas

Jeśli strefa czasowa użytkownika jest znana, prompt systemowy zawiera dedykowaną sekcję Bieżąca data i czas z tylko strefą czasową (bez formatu zegara/czasu) aby zachować stabilność cache'owania promptów:

Time zone: America/Chicago

Gdy agent potrzebuje bieżącego czasu, użyj narzędzia session_status; karta statusu zawiera linię ze znacznikiem czasu.

Linie zdarzeń systemowych (domyślnie lokalne)

Kolejkowane zdarzenia systemowe wstawiane do kontekstu agenta są poprzedzane znacznikiem czasu używającym tego samego wyboru strefy czasowej co koperty wiadomości (domyślnie: lokalny host).

System: [2026-01-12 12:19:17 PST] Model przełączony.

Konfiguracja strefy czasowej użytkownika + formatu

json5
{
  agents: {
    defaults: {
      userTimezone: "America/Chicago",
      timeFormat: "auto", // auto | 12 | 24
    },
  },
}
  • userTimezone ustawia lokalną strefę czasową użytkownika dla kontekstu promptu.
  • timeFormat kontroluje wyświetlanie 12h/24h w prompcie. auto śledzi preferencje OS.

Wykrywanie formatu czasu (auto)

Gdy timeFormat: "auto", Mayros sprawdza preferencje OS (macOS/Windows) i wraca do formatowania lokalizacji. Wykryta wartość jest cache'owana dla procesu aby uniknąć powtarzających się wywołań systemowych.

Payloady narzędzi + konektory (surowy czas dostawcy + znormalizowane pola)

Narzędzia kanałowe zwracają natywne znaczniki czasu dostawcy i dodają znormalizowane pola dla spójności:

  • timestampMs: milisekundy epoch (UTC)
  • timestampUtc: ciąg ISO 8601 UTC

Surowe pola dostawcy są zachowywane, więc nic nie jest tracone.

  • Slack: ciągi podobne do epoch z API
  • Discord: znaczniki czasu UTC ISO
  • Telegram/WhatsApp: specyficzne dla dostawcy numeryczne/ISO znaczniki czasu

Jeśli potrzebujesz czasu lokalnego, przekonwertuj go downstream używając znanej strefy czasowej.

Powiązane dokumenty