Технический справочник

Использование токенов и стоимость

OpenClaw отслеживает токены, а не символы. Токены специфичны для модели, но большинство моделей в стиле OpenAI в среднем используют ~4 символа на токен для английского текста.

Как формируется системный промпт

OpenClaw собирает свой собственный системный промпт при каждом запуске. Он включает:

  • Список инструментов + краткие описания
  • Список навыков (только метаданные; инструкции загружаются по требованию с помощью read)
  • Инструкции по самообновлению
  • Рабочее пространство + файлы начальной загрузки (AGENTS.md, SOUL.md, TOOLS.md, IDENTITY.md, USER.md, HEARTBEAT.md, BOOTSTRAP.md при создании, плюс MEMORY.md и/или memory.md, если присутствуют). Большие файлы обрезаются по agents.defaults.bootstrapMaxChars (по умолчанию: 20000), а общий объем вставки начальной загрузки ограничен agents.defaults.bootstrapTotalMaxChars (по умолчанию: 150000). Файлы memory/*.md загружаются по требованию через инструменты памяти и не вставляются автоматически.
  • Время (UTC + часовой пояс пользователя)
  • Теги ответов + поведение heartbeat
  • Метаданные среды выполнения (хост/ОС/модель/мышление)

Полную структуру смотрите в Системный промпт.

Что учитывается в окне контекста

Все, что получает модель, учитывается в лимите контекста:

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

Для изображений OpenClaw уменьшает размер полезной нагрузки изображений в транскриптах/инструментах перед вызовами к провайдеру. Используйте agents.defaults.imageMaxDimensionPx (по умолчанию: 1200) для настройки:

  • Более низкие значения обычно уменьшают использование токенов для зрения и размер полезной нагрузки.
  • Более высокие значения сохраняют больше визуальных деталей для скриншотов с большим количеством текста/элементов интерфейса.

Для практического разбора (по каждому вставленному файлу, инструментам, навыкам и размеру системного промпта) используйте /context list или /context detail. Смотрите Контекст.

Как посмотреть текущее использование токенов

Используйте эти команды в чате:

  • /statusкарточка статуса с эмодзи, содержащая модель сессии, использование контекста, токены ввода/вывода последнего ответа и предполагаемую стоимость (только для API-ключа).
  • /usage off|tokens|full → добавляет нижний колонтитул с использованием на каждый ответ к каждому ответу.
    • Сохраняется для сессии (хранится как responseUsage).
    • При аутентификации OAuth стоимость скрыта (только токены).
  • /usage cost → показывает локальную сводку затрат из логов сессии OpenClaw.

Другие интерфейсы:

  • TUI/Web TUI: /status + /usage поддерживаются.
  • CLI: openclaw status --usage и openclaw channels list показывают окна квот провайдера (не затраты на каждый ответ).

Оценка стоимости (когда показывается)

Стоимость оценивается на основе вашей конфигурации цен на модели:

models.providers.<provider>.models[].cost

Это USD за 1M токенов для input, output, cacheRead и cacheWrite. Если цены не указаны, OpenClaw показывает только токены. Для токенов OAuth стоимость в долларах никогда не показывается.

Влияние TTL кэша и обрезки

Кэширование промптов провайдера применяется только в пределах окна TTL кэша. OpenClaw может дополнительно выполнять обрезку по истечении TTL кэша: он обрезает сессию после истечения TTL кэша, а затем сбрасывает окно кэша, чтобы последующие запросы могли повторно использовать свежезакэшированный контекст вместо повторного кэширования всей истории. Это позволяет снизить затраты на запись в кэш, когда сессия простаивает дольше TTL. Настройте это в Конфигурации шлюза и смотрите детали поведения в Обрезка сессии. Heartbeat может поддерживать кэш "теплым" в периоды простоя. Если TTL кэша вашей модели составляет 1h, установка интервала heartbeat чуть меньше этого значения (например, 55m) может избежать повторного кэширования всего промпта, снизив затраты на запись в кэш. В настройках с несколькими агентами вы можете использовать одну общую конфигурацию модели и настраивать поведение кэша для каждого агента с помощью agents.list[].params.cacheRetention. Полное руководство по настройкам смотрите в Кэширование промптов. Для ценообразования API Anthropic чтение из кэша значительно дешевле, чем токены ввода, в то время как запись в кэш тарифицируется с более высоким множителем. Смотрите актуальные тарифы и множители TTL для кэширования промптов Anthropic: https://docs.anthropic.com/docs/build-with-claude/prompt-caching

Пример: поддержание 1-часового кэша "теплым" с помощью heartbeat

agents:
  defaults:
    model:
      primary: "anthropic/claude-opus-4-6"
    models:
      "anthropic/claude-opus-4-6":
        params:
          cacheRetention: "long"
    heartbeat:
      every: "55m"

Пример: смешанная нагрузка с индивидуальной стратегией кэширования для агентов

agents:
  defaults:
    model:
      primary: "anthropic/claude-opus-4-6"
    models:
      "anthropic/claude-opus-4-6":
        params:
          cacheRetention: "long" # базовая настройка по умолчанию для большинства агентов
  list:
    - id: "research"
      default: true
      heartbeat:
        every: "55m" # поддерживаем длинный кэш "теплым" для глубоких сессий
    - id: "alerts"
      params:
        cacheRetention: "none" # избегаем записи в кэш для всплесков уведомлений

agents.list[].params объединяется поверх params выбранной модели, поэтому вы можете переопределить только cacheRetention, унаследовав остальные настройки модели по умолчанию без изменений.

Пример: включение заголовка бета-версии Anthropic с контекстом 1M

Окно контекста в 1M токенов от Anthropic в настоящее время доступно в бета-режиме. OpenClaw может вводить требуемое значение anthropic-beta, когда вы включаете context1m для поддерживаемых моделей Opus или Sonnet.

agents:
  defaults:
    models:
      "anthropic/claude-opus-4-6":
        params:
          context1m: true

Это соответствует заголовку бета-версии Anthropic context-1m-2025-08-07. Применяется только когда для этой записи модели установлено context1m: true. Требование: учетные данные должны быть допущены к использованию длинного контекста (API-ключ с биллингом, или подписка с включенным Extra Usage). Если нет, Anthropic отвечает с HTTP 429: rate_limit_error: Extra usage is required for long context requests. Если вы аутентифицируетесь в Anthropic с помощью токенов OAuth/подписки (sk-ant-oat-*), OpenClaw пропускает заголовок бета-версии context-1m-*, потому что Anthropic в настоящее время отклоняет эту комбинацию с HTTP 401.

Советы по снижению нагрузки на токены

  • Используйте /compact для суммирования длинных сессий.
  • Обрезайте большие выходные данные инструментов в ваших рабочих процессах.
  • Уменьшите agents.defaults.imageMaxDimensionPx для сессий с большим количеством скриншотов.
  • Делайте описания навыков краткими (список навыков вставляется в промпт).
  • Предпочитайте меньшие модели для многословной, исследовательской работы.

Смотрите Навыки для точной формулы расчета накладных расходов на список навыков.

Справочник по WizardПоверхность учетных данных SecretRef