Как работает OpenClaw

OpenClaw — не обычный чат-бот, а личный секретарь, живущий в вашем компьютере. Он может получать команды через чат-приложения, такие как WeChat, WhatsApp и Telegram, помогать вам отправлять электронные письма, проверять календарь, открывать браузеры, выполнять команды и даже работать автоматически 24 часа в сутки!

Основные концепции

Концепция Аналогия Функция
Шлюз Администратор на ресепшене в здании Получает все внешние сообщения и распределяет их в нужное рабочее пространство
Рабочее пространство Ваш личный офис Выполняет конкретные задачи, управляет историей диалогов и навыками
LLM (большая языковая модель) Мозг ИИ-консультанта Понимает ваши намерения и генерирует ответы
Навыки Инструменты в наборе инструментов Выполняет конкретные функции (проверка погоды, написание кода, управление расписанием и т. д.)
Каналы Устройства связи Подключают разные платформы обмена сообщениями

Что именно такое OpenClaw?

OpenClaw — этоAI-ассистент с полностью открытым исходным кодом, работающий на вашем собственном компьютере(ранее назывался Clawdbot, позже переименован).
Он не просто общается, как ChatGPT; он действительно совершает действия:

  • Вы пишете в WhatsApp: «Проверь для меня завтрашний рейс», и он может автоматически открыть браузер, войти на сайт авиакомпании и отправить вам скриншот.
  • Он поддерживает сотни навыков, и сообщество продолжает добавлять новые.
  • Он обладает долговременной памятью (запоминает, что вам нравится) и даже может самостоятельно создавать новые навыки.
  • Самое главное:Все данные остаются на вашем компьютере, не загружаются в облако, безопасно с точки зрения приватности。

Основная идея:Соединить большую модель ИИ (мозг) + локальные инструменты (руки и ноги) + программы для чата (рот и уши), чтобы ИИ действительно стал вашим компьютерным дворецким.

Общая архитектура: Gateway — командный центр мозга

Самая ключевая часть OpenClaw называетсяGateway (gateway). Это как центральная панель управления в вашем доме; всё вращается вокруг него.

Краткое объяснение каждой части:

  • Channel Bridge (channel bridge): Отвечает за «рукопожатие» с чат-программами вроде WhatsApp и Telegram. Например, использует библиотеку Baileys для подключения к WhatsApp.
  • Gateway: Единственный запущенный процесс (занимает один порт, по умолчанию 18789), как оператор коммутатора, пересылающий сообщения ИИ.
  • Мозг ИИ: То, что действительно думает, — это внешняя большая модель (вы предоставляете API-ключ); Gateway только отвечает за «вызов её к работе».
  • Инструменты & навыки: Руки и ноги ИИ, например, открытие браузера, чтение/запись файлов, отправка электронных писем.
  • Система памяти: Как блокнот, ИИ не забудет, что вы сказали в прошлый раз.

Как сообщение становится действием?

Давайте рассмотрим реальный пример: «В WhatsApp скажите: помоги мне организовать сегодняшние письма в сводку и отправь её мне».

Схема потока выглядит так:

Подробный разбор:

  1. Получение инструкции: Вы отправляете сообщение → Bridge чат-приложения передаёт сообщение в Gateway.
  2. Поиск в памяти: Gateway открывает ваш «личный профиль» (Session + Memory), зная, что вы возвращающийся пользователь и какой тон вам понравился в прошлый раз.
  3. Мышление ИИ: Упаковать сообщение + память и отправить их в мозг ИИ. ИИ действует как умный секретарь: «Хорошо, мне нужно сначала прочитать письмо, а затем сделать сводку».
  4. Вызов инструмента: ИИ говорит: «Я хочу использовать навык Gmail». Gateway выполняет его в защищённой песочнице (чтобы ИИ случайно не изменил файлы).
  5. Выполнение + обратная связь: Инструмент передаёт результат ИИ, и ИИ пишет сводку.
  6. Ответ пользователю: Gateway отправляет сводку обратно в WhatsApp. И вы её получаете!

Общая архитектура

Проектирование трёхуровневой архитектуры

OpenClaw использует классическую трёхуровневую архитектуру. Давайте разберём её послойно снаружи внутрь:

Почему это спроектировано именно так?

Аналогия: Представьте крупную компанию

  • Внешний слой (пользовательский интерфейс)= Клиенты могут связаться с компанией по телефону, электронной почте, WeChat и другим каналам
  • Средний слой (Gateway)= Ресепшен, который единообразно обрабатывает всех клиентов и направляет их в соответствующие отделы
  • Внутренний слой (Workspace)= Различные бизнес-подразделения, каждое отвечает за разные задачи
  • Нижний слой (слой возможностей)= Ресурсы компании (экспертные консультанты, инструменты и оборудование и т. д.)

Подробное объяснение основных компонентов

Gateway: Единый портал

Что такое Gateway?

Gateway — это входная дверь OpenClaw. Все внешние сообщения должны сначала проходить через него.

Три основные обязанности Gateway:

1. Аутентификация

Убедитесь, что только авторизованные вами платформы могут подключаться

2. Маршрутизация

Отправляйте сообщения в нужное рабочее пространство

3. Логирование

Записывайте все взаимодействия для удобной отладки и аудита

Команда для запуска Gateway:

# 启动网关,监听 18789 端口
openclaw gateway --port 18789 --verbose

Рабочее пространство: ваш личный офис

Что такое рабочее пространство?

Рабочее пространство — это место, где фактически обрабатываются задачи. У вас может быть несколько рабочих пространств, каждое из которых отвечает за разные вещи.

Типичный пример конфигурации рабочего пространства:

# workspace-personal.yaml
name: "个人助理"
llm:
  provider: "anthropic"  # 使用 Claude
  model: "claude-sonnet-4"
  apiKey: "sk-ant-xxx"

skills:
  - weather        # 查天气
  - calendar       # 管理日程
  - email          # 处理邮件
  - web-search     # 网页搜索

settings:
  language: "zh-CN"
  temperature: 0.7
  max_tokens: 4000

Сценарии использования нескольких рабочих пространств:

LLM: мозг ИИ

Что такое LLM?

LLM (большая языковая модель) — это интеллектуальный мозг OpenClaw, отвечающий за понимание ваших намерений и генерацию ответов.

LLM, поддерживаемые OpenClaw:

провайдер Примеры моделей Особенности Применимые сценарии
Anthropic Claude Sonnet 4 Баланс, безопасность, хорошая поддержка многоязычности Повседневные разговоры, написание текстов
OpenAI GPT-4 Профессиональный, широкие знания Профессиональные задачи, анализ
DeepSeek DeepSeek-V3 Сильные навыки программирования, недорого Помощь в программировании
Локальное развёртывание Ollama Полностью приватно, бесплатно Сценарии, чувствительные к приватности

Каналы: подключение к внешнему миру

Что такое каналы?

Каналы — это "адаптеры", которые подключают различные платформы обмена сообщениями.

Работа каждого канала:

  1. Приём сообщенийИзвлечение сообщений пользователей с платформы
  2. Преобразование форматаЕдинообразное преобразование во внутренний формат OpenClaw
  3. Отправка ответаОтправка ответов OpenClaw обратно на платформу

Пример: рабочий процесс Telegram-канала


Процесс потока сообщений

Теперь давайте посмотрим, как полное сообщение проходит через OpenClaw:

Полная схема потока сообщений

Подробный анализ шагов

Шаги 1-3: Приём и стандартизация сообщения

После того как пользователь отправляет сообщение в Telegram, Telegram Channel преобразует его в стандартный формат OpenClaw:

{
  "platform": "telegram",
  "channel_id": "telegram_123",
  "user": {
    "id": "user_456",
    "name": "Alice"
  },
  "message": {
    "type": "text",
    "content": "上海明天天气?",
    "timestamp": "2024-03-09T10:30:00Z"
  }
}

Шаги 4-5: Аутентификация и маршрутизация

Gateway проверяет это сообщение:

  • Авторизован ли источник?
  • В какой Workspace его следует направить?
  • Есть ли у пользователя разрешение?

Шаги 6-8: Понимание ИИ и принятие решений

Workspace подготавливает полный контекст и отправляет его в LLM:

[系统提示]
你是一个个人助理,可以使用以下技能:
- weather: 查询天气
- calendar: 管理日程
- ...

[对话历史]
User: 你好
助理: 你好!有什么可以帮你的?

[当前消息]
User: 上海明天天气?

Шаги 9-12: выполнение навыка

LLM решает вызвать навык погоды, а Workspace выполняет его и получает результаты:

{
  "location": "上海",
  "date": "2024-03-10",
  "weather": "晴转多云",
  "temperature": "18-26°C",
  "humidity": "60%",
  "wind": "东风 3-4级"
}

Шаги 13-17: сформировать ответ и вернуть его

LLM формирует ответ на естественном языке на основе данных о погоде и отправляет его пользователю по тому же пути.


Система навыков

Что такое навыки?

Навыки — это «модули возможностей», с помощью которых OpenClaw выполняет конкретные задачи. Если бы OpenClaw был человеком, навыки были бы различными способностями, которые этот человек освоил.

Структура навыка

Каждый навык включает:

Пример: определение навыка погоды

Процесс вызова навыка

Механизмы безопасности навыков

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

Типы разрешений:

Разрешение Описание Пример
network Доступ к сети Проверка погоды, поиск веб-страниц
filesystem Файловая система Чтение/запись файлов
email Доступ к электронной почте Отправка/получение писем
calendar Доступ к календарю Управление расписаниями
system Системные операции Выполнение команд

Полный рабочий процесс

Давайте свяжем все концепции через реальный сценарий:

Сценарий: Отправка ежедневных отчётов о погоде по расписанию

Требование: Получать сегодняшнюю погоду + напоминания по расписанию через Telegram каждое утро в 8 AM

Код конфигурации

# workspace-daily-report.yaml
name: "每日报告助理"

# 定时任务
cron_jobs:
  - name: "早间报告"
    schedule: "0 8 * * *"  # 每天早上8点
    action:
      type: "send_message"
      channel: "telegram"
      template: |
        请生成今日报告:
        1. 查询我所在城市的天气
        2. 列出今天的所有日程
        3. 以友好的方式呈现

# 可用技能
skills:
  - weather
  - calendar

# LLM 配置
llm:
  provider: "anthropic"
  model: "claude-sonnet-4"

Сообщения, получаемые пользователем

早安!今日简报

天气情况
上海今天多云,气温 15-23°C
建议穿着:薄外套
降雨概率:10%

今日日程
- 09:00 - 10:00  团队晨会
- 14:00 - 15:30  客户演示
- 16:00 - 17:00  代码评审

温馨提示
今天有 3 个会议,建议提前准备演示材料。

Поток данных и управление состоянием

Как хранятся данные?

Типы данных и способы хранения:

Тип данных Способ хранения Срок хранения Пример
Текущее состояние сессии Память До окончания сессии Контекст текущего диалога
История диалогов Локальная база данных Настраиваемый (например, 30 дней) Записи прошлых чатов
Пользовательская конфигурация Файл конфигурации Постоянный API-ключи, настройки предпочтений
Данные навыка Управляется самим навыком Зависит от навыка Расписания, черновики писем
Системные логи Файлы логов Настраиваемый Ошибки, отладочная информация

Расширяемость и экосистема плагинов

Как добавить новые функции?

Архитектура OpenClaw позволяет легко расширять:

Процесс установки навыка

Другие расширения