Guides
Налаштування персонального асистента
OpenClaw — це самостійний Gateway, який під’єднує Discord, Google Chat, iMessage, Matrix, Microsoft Teams, Signal, Slack, Telegram, WhatsApp, Zalo та інші канали до AI-агентів. У цьому посібнику описано налаштування "персонального асистента": окремий номер WhatsApp, який поводиться як ваш постійно доступний AI-асистент.
⚠️ Спершу безпека
Ви ставите агента в позицію, де він може:
- запускати команди на вашій машині (залежно від вашої політики інструментів)
- читати/записувати файли у вашому робочому просторі
- надсилати повідомлення назад через WhatsApp/Telegram/Discord/Mattermost та інші вбудовані канали
Починайте консервативно:
- Завжди задавайте
channels.whatsapp.allowFrom(ніколи не запускайте відкритий для всього світу доступ на своєму особистому Mac). - Використовуйте окремий номер WhatsApp для асистента.
- Heartbeat-и тепер за замовчуванням виконуються кожні 30 хвилин. Вимкніть їх, доки не довірятимете налаштуванню, встановивши
agents.defaults.heartbeat.every: "0m".
Передумови
- OpenClaw встановлено й виконано початкове налаштування — див. Початок роботи, якщо ви ще цього не зробили
- Другий номер телефону (SIM/eSIM/передплачений) для асистента
Налаштування з двома телефонами (рекомендовано)
Вам потрібно ось це:
flowchart TB
A["<b>Your Phone (personal)<br></b><br>Your WhatsApp<br>+1-555-YOU"] -- message --> B["<b>Second Phone (assistant)<br></b><br>Assistant WA<br>+1-555-ASSIST"]
B -- linked via QR --> C["<b>Your Mac (openclaw)<br></b><br>AI agent"]Якщо ви під’єднаєте свій особистий WhatsApp до OpenClaw, кожне повідомлення до вас стане "вхідними даними агента". Це рідко саме те, що вам потрібно.
Швидкий старт за 5 хвилин
- З’єднайте WhatsApp Web (покаже QR; відскануйте його телефоном асистента):
openclaw channels login- Запустіть Gateway (залиште його запущеним):
openclaw gateway --port 18789- Додайте мінімальну конфігурацію в
~/.openclaw/openclaw.json:
{ gateway: { mode: "local" }, channels: { whatsapp: { allowFrom: ["+15555550123"] } },}Тепер напишіть на номер асистента з телефону, внесеного до списку дозволених.
Коли початкове налаштування завершиться, OpenClaw автоматично відкриє панель керування й виведе чисте посилання (без токена). Якщо панель керування попросить автентифікацію, вставте налаштований спільний секрет у налаштування Control UI. За замовчуванням початкове налаштування використовує токен (gateway.auth.token), але автентифікація паролем також працює, якщо ви перемкнули gateway.auth.mode на password. Щоб відкрити повторно пізніше: openclaw dashboard.
Дайте агенту робочий простір (AGENTS)
OpenClaw читає робочі інструкції та "пам’ять" зі свого каталогу робочого простору.
За замовчуванням OpenClaw використовує ~/.openclaw/workspace як робочий простір агента й автоматично створить його (разом зі стартовими AGENTS.md, SOUL.md, TOOLS.md, IDENTITY.md, USER.md, HEARTBEAT.md) під час налаштування або першого запуску агента. BOOTSTRAP.md створюється лише тоді, коли робочий простір зовсім новий (він не має повертатися після видалення). MEMORY.md необов’язковий (не створюється автоматично); якщо він присутній, його завантажують для звичайних сесій. Сесії підагентів додають лише AGENTS.md і TOOLS.md.
openclaw setupПовна структура робочого простору + посібник із резервного копіювання: Робочий простір агента Робочий процес пам’яті: Пам’ять
Необов’язково: виберіть інший робочий простір за допомогою agents.defaults.workspace (підтримує ~).
{ agents: { defaults: { workspace: "~/.openclaw/workspace", }, },}Якщо ви вже постачаєте власні файли робочого простору з репозиторію, можете повністю вимкнути створення bootstrap-файлів:
{ agents: { defaults: { skipBootstrap: true, }, },}Конфігурація, яка перетворює це на "асистента"
OpenClaw за замовчуванням має хороше налаштування асистента, але зазвичай варто відкоригувати:
- персону/інструкції в
SOUL.md - стандартні параметри мислення (за потреби)
- Heartbeat-и (коли почнете довіряти налаштуванню)
Приклад:
{ logging: { level: "info" }, agents: { defaults: { model: { primary: "anthropic/claude-opus-4-6" }, workspace: "~/.openclaw/workspace", thinkingDefault: "high", timeoutSeconds: 1800, // Start with 0; enable later. heartbeat: { every: "0m" }, }, list: [ { id: "main", default: true, groupChat: { mentionPatterns: ["@openclaw", "openclaw"], }, }, ], }, channels: { whatsapp: { allowFrom: ["+15555550123"], groups: { "*": { requireMention: true }, }, }, }, session: { scope: "per-sender", resetTriggers: ["/new", "/reset"], reset: { mode: "daily", atHour: 4, idleMinutes: 10080, }, },}Сесії та пам’ять
- Файли сесій:
~/.openclaw/agents/<agentId>/sessions/{{SessionId}}.jsonl - Метадані сесій (використання токенів, останній маршрут тощо):
~/.openclaw/agents/<agentId>/sessions/sessions.json(застаріле:~/.openclaw/sessions/sessions.json) /newабо/resetзапускає нову сесію для цього чату (налаштовується черезresetTriggers). Якщо надіслати окремо, OpenClaw підтвердить скидання без виклику моделі./compact [instructions]стискає контекст сесії та повідомляє залишковий бюджет контексту.
Heartbeat-и (проактивний режим)
За замовчуванням OpenClaw запускає Heartbeat кожні 30 хвилин із промптом:
Read HEARTBEAT.md if it exists (workspace context). Follow it strictly. Do not infer or repeat old tasks from prior chats. If nothing needs attention, reply HEARTBEAT_OK.
Встановіть agents.defaults.heartbeat.every: "0m", щоб вимкнути.
- Якщо
HEARTBEAT.mdіснує, але фактично порожній (лише порожні рядки, коментарі Markdown/HTML, заголовки Markdown на кшталт# Heading, маркери блоків коду або порожні заготовки чеклістів), OpenClaw пропускає запуск Heartbeat, щоб заощадити API-виклики. - Якщо файл відсутній, Heartbeat усе одно запускається, а модель вирішує, що робити.
- Якщо агент відповідає
HEARTBEAT_OK(необов’язково з коротким доповненням; див.agents.defaults.heartbeat.ackMaxChars), OpenClaw пригнічує вихідну доставку для цього Heartbeat. - За замовчуванням доставка Heartbeat до DM-подібних цілей
user:<id>дозволена. Встановітьagents.defaults.heartbeat.directPolicy: "block", щоб пригнічувати доставку до прямих цілей, залишаючи запуски Heartbeat активними. - Heartbeat-и виконують повні ходи агента — коротші інтервали витрачають більше токенів.
{ agents: { defaults: { heartbeat: { every: "30m" }, }, },}Медіа на вході та виході
Вхідні вкладення (зображення/аудіо/документи) можна передавати вашій команді через шаблони:
{{MediaPath}}(локальний шлях до тимчасового файлу){{MediaUrl}}(псевдо-URL){{Transcript}}(якщо ввімкнено транскрибування аудіо)
Вихідні вкладення від агента використовують структуровані медіаполя в інструменті повідомлення або payload відповіді, як-от media, mediaUrl, mediaUrls, path або filePath. Приклад аргументів інструмента повідомлення:
{ "message": "Here's the screenshot.", "mediaUrl": "https://example.com/screenshot.png"}OpenClaw надсилає структуровані медіа разом із текстом. Застарілі фінальні відповіді асистента ще можуть нормалізуватися для сумісності, але вихід інструментів, вихід браузера, потокові блоки та дії повідомлень не розбирають текст як команди вкладень.
Поведінка локальних шляхів відповідає тій самій моделі довіри для читання файлів, що й агент:
- Якщо
tools.fs.workspaceOnlyдорівнюєtrue, вихідні локальні медіашляхи залишаються обмеженими тимчасовим коренем OpenClaw, медіакешем, шляхами робочого простору агента та файлами, створеними в пісочниці. - Якщо
tools.fs.workspaceOnlyдорівнюєfalse, вихідні локальні медіа можуть використовувати локальні файли хоста, які агенту вже дозволено читати. - Локальні шляхи можуть бути абсолютними, відносними до робочого простору або відносними до домашнього каталогу з
~/. - Надсилання локальних файлів хоста все ще дозволяє лише медіа та безпечні типи документів (зображення, аудіо, відео, PDF, документи Office і перевірені текстові документи, як-от Markdown/MD, TXT, JSON, YAML і YML). Це розширення наявної межі довіри для читання з хоста, а не сканер секретів: якщо агент може прочитати локальний файл хоста
secret.txtабоconfig.json, він може прикріпити цей файл, коли розширення та перевірка вмісту збігаються.
Це означає, що згенеровані зображення/файли поза робочим простором тепер можна надсилати, якщо ваша політика fs уже дозволяє такі читання, тоді як довільні локальні текстові розширення хоста залишаються заблокованими. Тримайте чутливі файли поза файловою системою, доступною агенту для читання, або залиште tools.fs.workspaceOnly=true для суворішого надсилання локальних шляхів.
Контрольний список операцій
openclaw status # local status (creds, sessions, queued events)openclaw status --all # full diagnosis (read-only, pasteable)openclaw status --deep # asks the gateway for a live health probe with channel probes when supportedopenclaw health --json # gateway health snapshot (WS; default can return a fresh cached snapshot)Журнали зберігаються в /tmp/openclaw/ (за замовчуванням: openclaw-YYYY-MM-DD.log).
Наступні кроки
- WebChat: WebChat
- Операції Gateway: Ранбук Gateway
- Cron + пробудження: Завдання Cron
- Супутник для рядка меню macOS: Застосунок OpenClaw для macOS
- Застосунок Node для iOS: Застосунок iOS
- Застосунок Node для Android: Застосунок Android
- Windows Hub: Windows
- Стан Linux: Застосунок Linux
- Безпека: Безпека