Messages and delivery
Політика повторних спроб
Цілі
- Повторювати кожен HTTP-запит, а не весь багатокроковий потік.
- Зберігати порядок, повторюючи лише поточний крок.
- Уникати дублювання неідемпотентних операцій.
Стандартні значення
- Спроби: 3
- Максимальне обмеження затримки: 30000 ms
- Джитер: 0.1 (10 відсотків)
- Стандартні значення провайдерів:
- Мінімальна затримка Telegram: 400 ms
- Мінімальна затримка Discord: 500 ms
Поведінка
Провайдери моделей
- OpenClaw дозволяє SDK провайдерів обробляти звичайні короткі повторні спроби.
- Для SDK на основі Stainless, як-от Anthropic і OpenAI, відповіді, які можна повторити
(
408,409,429і5xx), можуть міститиretry-after-msабоretry-after. Коли це очікування довше за 60 секунд, OpenClaw додаєx-should-retry: false, щоб SDK негайно повернув помилку, а відмовостійке перемикання моделей могло перейти до іншого профілю автентифікації або резервної моделі. - Перевизначте обмеження за допомогою
OPENCLAW_SDK_RETRY_MAX_WAIT_SECONDS=<seconds>. Установіть значення0,false,off,noneабоdisabled, щоб дозволити SDK самостійно враховувати довгі паузиRetry-After.
Discord
- Повторює спроби для помилок обмеження частоти (HTTP 429), тайм-аутів запитів, відповідей HTTP 5xx і тимчасових транспортних збоїв, як-от помилки пошуку DNS, скидання з’єднання, закриття сокета та помилки fetch.
- Використовує
retry_afterDiscord, коли доступно, інакше експоненційне відступання.
Telegram
- Повторює спроби для тимчасових помилок (429, тайм-аут, connect/reset/closed, тимчасово недоступно).
- Використовує
retry_after, коли доступно, інакше експоненційне відступання. - Помилки розбору Markdown не повторюються; вони повертаються до звичайного тексту.
Конфігурація
Установіть політику повторних спроб для кожного провайдера в ~/.openclaw/openclaw.json:
{
channels: {
telegram: {
retry: {
attempts: 3,
minDelayMs: 400,
maxDelayMs: 30000,
jitter: 0.1,
},
},
discord: {
retry: {
attempts: 3,
minDelayMs: 500,
maxDelayMs: 30000,
jitter: 0.1,
},
},
},
}
Примітки
- Повторні спроби застосовуються до кожного запиту (надсилання повідомлення, завантаження медіа, реакція, опитування, стікер).
- Складені потоки не повторюють завершені кроки.