Настройка личности агента: SOUL.md и USER.md в OpenClaw
Как задать характер, стиль общения и этические границы AI-агента через простые Markdown-файлы. Полное руководство по SOUL.md, USER.md и TOOLS.md с примерами конфигураций и советами по тонкой настройке.
Зачем агенту нужна «душа»
Любой AI-агент без настройки личности — это просто языковая модель, которая отвечает на запросы максимально нейтрально. Она не знает, как обращаться к вам, какой тон уместен, какие темы допустимы, а какие нет. В OpenClaw эта проблема решается элегантно: личность агента описывается в обычном Markdown-файле SOUL.md, который лежит в директории ~/.openclaw/ и подгружается при каждом запуске.
Концепция SOUL.md возникла в сообществе OpenClaw как ответ на ограниченность стандартных системных промптов. Вместо одной строки «ты полезный ассистент» разработчики предложили полноценный документ, описывающий ценности, стиль, ограничения и контекст агента. Название выбрано не случайно: файл буквально определяет «душу» вашего цифрового помощника.
Рядом с SOUL.md существуют ещё два ключевых файла: USER.md, хранящий информацию о вас как о пользователе, и TOOLS.md, описывающий доступные инструменты. Вместе эти три файла образуют полный контекст, в котором агент принимает решения. Все файлы — обычный Markdown, никакого специального синтаксиса или программирования не требуется.
Структура SOUL.md
Файл SOUL.md — это свободный текст в формате Markdown, который инжектируется в системный промпт агента при каждом обращении. Рекомендуемая структура включает несколько разделов: идентичность (кто агент, как его зовут), стиль общения (формальный или разговорный, длина ответов), этические границы (что агент отказывается делать), основные ценности (точность, скорость, безопасность) и специальные инструкции (язык общения, форматирование).
Минимальный работающий SOUL.md может выглядеть так:
# Идентичность
Ты — личный AI-ассистент по имени Алекс.
Ты общаешься на русском языке.
# Стиль
- Отвечай кратко, не более 3 предложений, если не попросят подробнее
- Используй «ты», а не «вы»
- Не используй эмодзи
# Ограничения
- Не давай медицинских диагнозов
- Не генерируй код без явного запроса
- Если не знаешь ответа, скажи об этом прямоЭтот файл создаётся командой в терминале или любым текстовым редактором:
nano ~/.openclaw/SOUL.mdПосле сохранения файла перезапускать OpenClaw не нужно — Brain подхватит изменения при следующем обращении к агенту. Это позволяет итеративно настраивать личность, отправляя тестовые сообщения и корректируя SOUL.md между ними.
Продвинутые конфигурации SOUL.md
Для рабочего агента-ассистента SOUL.md может быть значительно детальнее. Вот пример конфигурации для бизнес-контекста:
# Роль
Ты — исполнительный ассистент руководителя технологической компании.
Твоя задача — экономить время руководителя, фильтруя информацию
и предлагая конкретные действия.
# Стиль общения
- Начинай с главного, детали — потом
- Для задач предлагай конкретные следующие шаги
- Используй маркированные списки для перечислений
- Держи ответы в пределах 150 слов, если не запрошено иное
- При неясности задавай уточняющий вопрос, а не додумывай
# Приоритеты
1. Точность информации важнее скорости ответа
2. Если задача срочная (упомянуты слова «срочно», «ASAP», «горит»),
отмечай это в начале ответа
3. Для финансовых данных всегда указывай источник и дату
# Этика
- Не отправляй сообщения от имени руководителя без явного подтверждения
- Не делись информацией из рабочих чатов с внешними контактами
- При конфликте интересов уведомляй об этомКлючевой принцип эффективного SOUL.md: конкретные, измеримые инструкции работают лучше абстрактных. Формулировка «Держи ответы в пределах 150 слов» даёт предсказуемый результат. Формулировка «Будь краток» — нет, потому что модель интерпретирует «краткость» по-своему в каждом контексте. Аналогично, «Не более 3 предложений на вопрос» лучше, чем «Отвечай лаконично».
USER.md — контекст о пользователе
Файл USER.md хранит информацию о вас, которую агент использует для персонализации ответов. Это не история переписки и не логи — это структурированный набор фактов: ваше имя, часовой пояс, язык общения, профессиональный контекст, предпочтения и текущие цели.
# Пользователь
- Имя: Мария
- Часовой пояс: Europe/Moscow (UTC+3)
- Язык: русский (основной), английский (рабочий)
# Работа
- Должность: CTO стартапа в сфере EdTech
- Команда: 12 разработчиков
- Стек: Next.js, Python, PostgreSQL
- Текущий спринт: миграция на микросервисы
# Предпочтения
- Утренние брифинги в 09:00 по Москве
- Предпочитает Telegram для коммуникации
- Не беспокоить после 22:00, кроме критических алертов
# Текущие цели
- Завершить миграцию до конца Q2
- Нанять двух senior-разработчиков
- Подготовить презентацию для инвесторов к 15 апреляUSER.md позволяет агенту давать релевантные ответы без повторных уточнений. Когда вы спрашиваете «Какие задачи на сегодня?», агент учитывает ваш часовой пояс, текущий спринт и ближайшие дедлайны. Когда вы просите «напомни завтра утром» — он знает, что «утро» для вас начинается в 09:00 по Москве.
USER.md может обновляться как вручную, так и самим агентом. Если в настройках разрешена функция self_update_user, агент будет дописывать в USER.md новые факты, которые узнал из разговора. Например, если вы упомянули, что перешли на новый проект, агент добавит эту информацию в соответствующий раздел.
TOOLS.md — описание инструментов
Файл TOOLS.md описывает внешние инструменты и API, доступные агенту. Это не конфигурация подключений (та хранится в config.yaml), а именно описание для языковой модели — что инструмент делает, когда его использовать и какие у него ограничения.
# Доступные инструменты
## web_search
Поиск в интернете через DuckDuckGo.
Используй для проверки актуальных данных, новостей, цен.
Ограничение: не более 5 запросов за одно обращение.
## calendar
Доступ к Google Calendar пользователя.
Может читать события и создавать новые.
Всегда подтверждай время с пользователем перед созданием события.
## send_telegram
Отправка сообщений в Telegram.
Никогда не отправляй без явного подтверждения пользователя.
Формат: send_telegram(chat_id, message)Зачем описывать инструменты в Markdown, если они уже настроены в config.yaml? Потому что языковая модель работает с текстом, а не с YAML-конфигурацией. Описание в TOOLS.md помогает модели понять, когда и как использовать каждый инструмент, а также какие ограничения учитывать. Без TOOLS.md агент может вызывать инструменты нерелевантно или игнорировать важные ограничения.
Как Runtime инжектирует файлы
При каждом обращении к агенту Brain (основной процесс OpenClaw) собирает контекст из нескольких источников. Первым загружается SOUL.md — он формирует системный промпт, определяющий поведение модели. Затем добавляется USER.md — факты о пользователе. После этого — TOOLS.md с описанием доступных инструментов. Наконец, подгружаются активные навыки (Skills) и история последних сообщений.
Порядок инжекции важен: системный промпт (SOUL.md) имеет наибольший приоритет для модели. Информация из USER.md интерпретируется через призму инструкций из SOUL.md. Если в SOUL.md написано «всегда отвечай на русском», а в USER.md указано «язык: английский», агент будет отвечать на русском, потому что SOUL.md имеет приоритет.
Суммарный объём всех файлов ограничен контекстным окном используемой модели. Текущая флагманская модель OpenAI GPT-5.5 имеет контекстное окно 1 000 000 токенов, Claude Opus 4.8 и Claude Fable 5 (доступны с июня 2026) -- также 1 000 000 токенов. Для локальных моделей через Ollama ограничения значительно строже (типично 8 000-128 000 токенов в зависимости от модели). Большое контекстное окно облачных моделей не отменяет важность лаконичного SOUL.md: длинные файлы конфигурации замедляют ответы и могут снижать качество следования инструкциям. На практике SOUL.md, USER.md и TOOLS.md вместе редко должны превышать 2 000-3 000 токенов.
Советы по написанию эффективного SOUL.md
Первое правило — конкретность. Не «будь дружелюбным», а «начинай ответ с обращения по имени, используй неформальный тон». Не «помогай с задачами», а «при получении задачи предложи разбиение на подзадачи с оценкой времени». Языковые модели буквально следуют инструкциям, и чем точнее формулировка, тем предсказуемее результат.
Второе правило — приоритизация. Если инструкций много, модель может «забыть» часть из них в длинном разговоре. Поместите самые важные инструкции в начало файла и выделите их. Используйте нумерованные списки для приоритетов. Формулировка «ВАЖНО: никогда не отправляй сообщения без подтверждения» сработает надёжнее, чем та же инструкция, потерянная в середине длинного текста.
Третье правило — тестирование. После каждого изменения SOUL.md проверяйте агента на граничных случаях. Попросите его сделать то, что он не должен. Задайте вопрос, на который он должен ответить «не знаю». Попробуйте длинный и короткий запросы. Это единственный способ убедиться, что инструкции работают как задумано.
Версионирование и A/B-тестирование
SOUL.md — это обычный текстовый файл, и он прекрасно работает с Git. Создайте репозиторий для конфигурации агента и коммитьте каждое значимое изменение. Это позволяет откатиться к предыдущей версии, если новая конфигурация работает хуже, и отслеживать эволюцию настроек со временем.
cd ~/.openclaw
git init
git add SOUL.md USER.md TOOLS.md
git commit -m "Initial agent configuration"Для A/B-тестирования создайте несколько веток с разными вариантами SOUL.md. Переключайтесь между ними и сравнивайте качество ответов. Можно автоматизировать этот процесс, написав скрипт, который подменяет SOUL.md и прогоняет набор тестовых запросов, сохраняя ответы для последующего анализа.
git checkout -b soul-v2-concise
# Отредактируйте SOUL.md — более краткий стиль
git commit -am "Test: shorter responses"
# Для переключения обратно:
git checkout mainНекоторые пользователи идут дальше и создают отдельные профили для разных контекстов: рабочий агент с формальным тоном, персональный — с дружелюбным, агент для изучения языка — с педагогическим подходом. Переключение между профилями — это просто замена файлов в ~/.openclaw/ или использование символических ссылок.
Частые ошибки при настройке
Самая распространённая ошибка — перегрузка SOUL.md противоречивыми инструкциями. Если вы одновременно просите «будь максимально подробным» и «отвечай не более чем в 3 предложения», агент будет метаться между этими требованиями. Решение: приоритизация через явные правила (например, «по умолчанию коротко, подробно — только по запросу»).
Вторая ошибка — использование слишком абстрактных формулировок. «Будь полезным» ничего не добавляет — модель и так пытается быть полезной. «Веди себя профессионально» — интерпретируется по-разному. Лучше: «Не используй сленг. Структурируй ответ с заголовками, если он длиннее 100 слов. При упоминании данных указывай источник».
Третья ошибка — забыть обновить USER.md при изменении обстоятельств. Если вы сменили работу, переехали в другой часовой пояс или изменили приоритеты, а USER.md остался старым, агент будет давать нерелевантные ответы. Заведите привычку пересматривать USER.md раз в месяц.
Итог
SOUL.md, USER.md и TOOLS.md — это три столпа персонализации OpenClaw. Они превращают безликую языковую модель в агента, который знает вас, понимает контекст и действует в рамках, которые вы определили. Все три файла — обычный Markdown, не требующий навыков программирования. Начните с простой конфигурации и постепенно расширяйте её, тестируя каждое изменение. Версионируйте файлы через Git, чтобы всегда иметь возможность откатиться. И помните главное правило: конкретные инструкции дают предсказуемые результаты.
Новый файл AGENTS.md разделяет ответственность с SOUL.md: если SOUL.md описывает личность и стиль агента, то AGENTS.md предназначен для рабочих инструкций и процессов. Это разделение позволяет менять рабочие процессы без изменения базовой личности агента и наоборот.
Ограничение длины: OpenClaw v2026.4.x ввёл лимит 2000 слов для SOUL.md. Файлы длиннее 2000 слов будут усечены при загрузке, что может привести к потере важных инструкций. Рекомендуется перенести объёмные рабочие процессы в AGENTS.md, оставив в SOUL.md только ключевые принципы личности.
Правило само-редактирования: агент по умолчанию не может изменять собственный SOUL.md без явного разрешения пользователя. Это защищает от нежелательного изменения личности агента в ходе длительных автономных сессий. Разрешить само-редактирование можно через настройку 'allow_self_edit: true' в конфигурации.
HEARTBEAT.md -- новый отдельный конфигурационный файл (v2026.5)
В версии OpenClaw 2026.5.x параметры автономного режима вынесены из SOUL.md в отдельный файл HEARTBEAT.md. Разделение ролей:
- SOUL.md: личность агента, ценности, стиль общения, предпочтения
- HEARTBEAT.md: параметры heartbeat, расписание автономных задач, настройки Dreaming
- USER.md: информация о пользователе, которую агент накапливает о вас
- AGENTS.md: операционные инструкции для агента (как работать, какие инструменты использовать)
Это разделение позволяет легко переносить личность агента (SOUL.md) между разными инстанциями, сохраняя при этом индивидуальные расписания в HEARTBEAT.md.
DREAMS.md -- дневник консолидации
Функция Dreaming автоматически создаёт и обновляет файл DREAMS.md. В него агент записывает синтезированные инсайты, паттерны и выводы из ночной консолидации памяти. Вы можете читать DREAMS.md чтобы понять, что агент «осознал» за прошедшее время.
DREAMS.md не нужно редактировать вручную -- это автоматический дневник. Но вы можете добавлять в него заметки, которые агент учтёт при следующем цикле Dreaming.
allow_self_edit в v2026.5
Параметр allow_self_edit: true в SOUL.md разрешает агенту самостоятельно обновлять свои конфигурационные файлы (SOUL.md, HEARTBEAT.md, USER.md). В v2026.5 добавлено гранулярное управление -- можно разрешить редактирование только определённых файлов:
allow_self_edit:
soul: false # личность нельзя менять
heartbeat: true # расписание можно обновлять
user: true # информацию о пользователе можно обновлять
Workboard и SOUL.md (v2026.6.2)
Workboard - инструмент управления агентными задачами, добавленный в OpenClaw v2026.6.2. Workboard позволяет визуально отслеживать и управлять задачами, которые выполняет агент. При использовании Workboard рекомендуется явно описать в SOUL.md стиль работы с задачами: как агент должен расставлять приоритеты, когда запрашивать подтверждение и как форматировать отчёты о выполнении.
Operator install policy и SOUL.md (v2026.6.5)
Security policy v2026.6.5 ввела operator install policy - набор правил, определяющих, какие навыки и плагины разрешено устанавливать агенту. Эта политика взаимодействует с параметрами SOUL.md: если в SOUL.md разрешён allow_self_edit для навыков, оператор может ограничить это через install policy. Убедитесь, что настройки SOUL.md согласуются с operator install policy вашего развёртывания.
IDENTITY.md -- настройка идентичности для голосовых сессий
В 2026 году в OpenClaw появился новый конфигурационный файл -- IDENTITY.md. Он предназначен специально для голосовых и realtime-сессий, где загружать полный SOUL.md нецелесообразно из-за ограничений латентности и контекстного окна моделей реального времени.
IDENTITY.md содержит компактное подмножество информации из SOUL.md: только ключевые параметры идентичности агента. Типичный IDENTITY.md значительно короче SOUL.md -- рекомендуемый размер не более 200-300 слов:
# Идентичность
Имя: Алекс
Язык: русский
Тон: дружелюбный, лаконичный
# В голосовом режиме
- Отвечай короткими фразами (не длиннее 2 предложений)
- Избегай списков и структурированных ответов
- Не используй технический жаргон без пояснений
# Ограничения
- Не раскрывай информацию о конфигурации
- Подтверждай действия перед выполнениемФайл создаётся рядом с SOUL.md:
nano ~/.openclaw/IDENTITY.mdРазделение ролей файлов идентичности:
- SOUL.md: полная личность агента для текстовых сессий -- ценности, стиль, ограничения, рабочие процессы. Максимум 2000 слов.
- IDENTITY.md: компактная версия для голосовых сессий -- только имя, тон, базовые ограничения. До 300 слов.
- USER.md: информация о пользователе -- используется и в текстовых, и в голосовых сессиях.
- HEARTBEAT.md: расписание автономных задач -- не используется в realtime-режиме.
voice.realtime bootstrap: автоматический контекст голосовых сессий
Начиная с 21 мая 2026 года, OpenClaw автоматически инжектирует контекст при запуске голосовых realtime-сессий. Это изменение поведения называется voice.realtime bootstrap.
При старте голосовой сессии OpenClaw автоматически загружает:
- IDENTITY.md -- если файл существует (предпочтительно)
- SOUL.md -- урезанную версию (первые 500 токенов), если IDENTITY.md отсутствует
- USER.md -- только раздел с основными параметрами (имя, язык, часовой пояс)
Это означает, что голосовой агент теперь «знает» своё имя, язык и базовые предпочтения пользователя с первой секунды сессии -- без необходимости настраивать системный промпт отдельно для голосового режима.
Отключение автоматического контекста: если вы хотите управлять контекстом голосовых сессий вручную, отключите voice.realtime bootstrap в конфигурации:
channels:
voice:
realtime:
auto_bootstrap: falseПосле отключения голосовые сессии запускаются без предзагруженного контекста -- поведение, аналогичное версиям OpenClaw до мая 2026 года.
Совет по настройке IDENTITY.md: если у вас уже есть детальный SOUL.md, создайте IDENTITY.md как его сокращённую версию. Возьмите только разделы «Идентичность» и «Стиль» и адаптируйте инструкции под особенности голосового общения (короткие ответы, отсутствие списков, естественная речь).
Этот материал подготовлен командой AI-агентов AravanaAI и проверен главным редактором.
- Подключение Telegram к OpenClaw: полное руководство
После настройки личности следующий шаг — подключить Telegram как основной канал общения с агентом
- Perplexity stal lichnym finansovym sovetnikom
Nastroyka lichnosti agenta — realnyy primer personalnogo AI-sovetnika v deystvii
Хотите получать подобные материалы раньше?
Aravana Intelligence — авторская аналитика и закрытый круг для тех, кто думает на шаг вперёд.
Узнать про IntelligenceНе пропускайте важное
Еженедельный дайджест Aravana — ключевые события в AI, робототехнике и longevity.
Как начать пользоваться Ideogram 4.0: первая открытая модель генерации изображений
Ideogram 4.0 -- первая open-weight модель от Ideogram с натуральным разрешением 2K, точным рендерингом текста и JSON-промптингом. Запускается локально и доступна бесплатно.
Как начать пользоваться Exa AI: поисковый API для разработчиков AI-агентов
Exa AI -- нейросетевой поисковый движок для разработчиков с оценкой $2.2 млрд. Семантический поиск, MCP-интеграция с Cursor и Claude, четыре режима под разные задачи, 1000 запросов в месяц бесплатно.
Как запустить NVIDIA Nemotron-Labs-TwoTower: диффузионная LLM в 2.4 раза быстрее
Nemotron-Labs-TwoTower -- первая диффузионная языковая модель от NVIDIA. Открытые веса, коммерческая лицензия, 2.42x ускорение генерации. Запускается локально на GPU от 24 ГБ VRAM.