EnglishРусский Map

Соберите собственный OpenClaw

title
Соберите собственный OpenClaw
type
summary
summary
Пошаговое руководство на Python из 18 шагов по созданию с нуля coding-агента в стиле Claude Code
tags
tutorial, llm, agent, coding-agent, python
created
2026-04-09
updated
2026-04-09
lang
ru
source_updated
2026-04-09
translated
2026-09-01
translator
lllm/antigravity/gemini-3.7-flash-medium

Репозиторий build-your-own-openclaw от czl9707 - это руководство на Python, в котором coding-агент в стиле Claude Code собирается с нуля за 18 пронумерованных шагов, разбитых на четыре фазы. Название - игра слов: OpenClaw получается, когда нельзя напрямую сказать "Claude Code". Лицензия MIT, 917 звёзд на апрель 2026 года, релизов нет (само руководство и является артефактом). Рядом лежит эталонная реализация pickle-bot, показывающая итоговый вид.

Подача выстроена методически выверено: каждый шаг добавляет ровно одну концепцию, а их порядок повторяет историю усложнения реальных coding-агентов. Если хочется понять, почему Claude Code, pi-coding-agent, Cursor и их аналоги пришли к похожим архитектурам, это самый дешёвый способ пройти весь путь от начала до конца.

Фаза 1 - Возможности одиночного агента (шаги 0-6)

Минимально жизнеспособный coding-агент. Начинается с чистого цикла диалога, куда затем слой за слоем добавляются:

  • Вызовы инструментов (tool calls) - LLM может запрашивать действия (прочитать файл, выполнить команду) и получать результаты обратно
  • Расширение навыков через документацию - загрузка markdown-файлов навыков при запуске, чтобы агент получал новые возможности без правок в коде (тот же паттерн использует Claude Code для skills)
  • Сохранение состояния диалога - сессии переживают перезапуск
  • Пользовательские команды - слеш-команды, прерывания, ручное управление
  • Сжатие истории - суммаризация старых реплик при заполнении контекстного окна, критически важный приём для любой длинной сессии
  • Доступ в сеть - добавление инструмента fetch, чтобы агент мог читать страницы по URL

К концу Фазы 1 получается нечто похожее на Claude Code в простейшем виде: REPL с инструментами и растущим набором навыков.

Фаза 2 - Событийная архитектура (шаги 7-10)

Переписывает агента как сервис на событиях. Это архитектурный скачок от "скрипта на Python, запущенного в терминале" к "постоянно работающему процессу, принимающему задачи из нескольких источников". Шаги охватывают:

  • Внутреннюю систему событий
  • Горячую перезагрузку конфигурации (правишь файл конфигурации, агент подхватывает изменения без перезапуска)
  • Поддержку нескольких каналов (к одному экземпляру агента можно обращаться из CLI, Slack, Telegram и других мест одновременно)
  • Интеграцию с WebSocket для фронтендов реального времени

Фаза 3 - Автономия и совместная работа (шаги 11-15)

Агент получает возможность инициировать задачи самостоятельно и передавать работу другим агентам:

  • Интеллектуальная маршрутизация - выбор подходящего субагента под конкретный запрос
  • Задачи по расписанию в cron - агент запускает задачи по таймеру, а не только по запросу пользователя
  • Многоуровневый промптинг - разделение системных промптов, промптов навыков и промптов конкретных задач
  • Двусторонняя отправка сообщений - агент может сам писать пользователю, а не только отвечать
  • Диспетчеризация между агентами - запуск других агентов и координация их работы

На этой фазе координация нескольких агентов начинает выглядеть как полноценная задача распределённых систем - ровно та область, о которой предупреждает log-distributed-llms. Собрать такое руками - хороший способ на практике ощутить тонкости теоремы FLP и византийских сбоев.

Фаза 4 - Готовность к production (шаги 16-17)

Управление конкурентностью и долговременная память. Руководство не погружается глубоко в инфраструктуру, но показывает базовый контур: что меняется, когда к одному агенту одновременно приходят несколько пользователей, и как сохранять память между сессиями без раздувания контекстного окна. Проекты hippo-memory и mempalace предлагают более глубокий взгляд на проблему долговременной памяти.

Технические детали

Проект использует LiteLLM как уровень абстракции над провайдерами, поэтому один и тот же код агента работает с Anthropic, OpenAI, локальными моделями и всем остальным, что поддерживает LiteLLM. Это делает руководство независимым от конкретной модели: фокус на архитектуре, а не на том, какая LLM стоит за ней.

Место в общей картине

Для тех, кто уже пользуется Claude Code, ценность руководства не в том, чтобы научиться пользоваться агентом, а в возможности увидеть его скелет. Каждая фаза напрямую сопоставляется с возможностями, с которыми вы сталкиваетесь каждый день:

  • Фаза 1 -> базовый цикл, инструменты, навыки, файлы сессий
  • Фаза 2 -> хуки, интерфейс MCP, доступ из разных мест
  • Фаза 3 -> субагенты, задачи по расписанию, инструмент Task
  • Фаза 4 -> фоновые процессы, долговременная память между сессиями

Ближайшие смежные страницы в wiki: pi-coding-agent (минималистичный терминальный coding-агент - скромнее по масштабу, но с похожей философией), agent-reading-test (бенчмарк на умение агентов читать документацию), chiasmus (MCP-сервер с формальными инструментами), hippo-memory / mempalace (сторона памяти из Фазы 4), botctl (production-grade менеджер процессов для агентов того типа, который учит собирать это руководство).