diff --git a/docs/uk/cli/update.md b/docs/uk/cli/update.md index ad1d5cd83..8413b3a00 100644 --- a/docs/uk/cli/update.md +++ b/docs/uk/cli/update.md @@ -1,14 +1,14 @@ --- read_when: - Ви хочете безпечно оновити робочу копію вихідного коду - - Потрібно зрозуміти поведінку скорочення `--update` -summary: Довідник CLI для `openclaw update` (умовно безпечне оновлення джерела + автоматичний перезапуск Gateway) + - Вам потрібно зрозуміти скорочену поведінку `--update` +summary: Довідник CLI для `openclaw update` (відносно безпечне оновлення джерела + автоматичний перезапуск Gateway) title: Оновлення x-i18n: - generated_at: "2026-05-02T19:23:28Z" + generated_at: "2026-05-03T16:59:31Z" model: gpt-5.5 provider: openai - source_hash: 35df8c6d8b1adb9597377f6e2b4844352577992c12636a88b3f3c1854dc0666b + source_hash: 767f3902877209f3945f50f7f8bd6ec7650a708685f1c4008d4191dc00eb1774 source_path: cli/update.md workflow: 16 --- @@ -18,7 +18,7 @@ x-i18n: Безпечно оновлюйте OpenClaw і перемикайтеся між каналами stable/beta/dev. Якщо ви встановили через **npm/pnpm/bun** (глобальне встановлення, без git-метаданих), -оновлення виконуються через потік менеджера пакетів у [Оновлення](/uk/install/updating). +оновлення відбуваються через потік менеджера пакетів у [Оновлення](/uk/install/updating). ## Використання @@ -39,23 +39,23 @@ openclaw --update ## Параметри -- `--no-restart`: пропустити перезапуск служби Gateway після успішного оновлення. Оновлення через менеджер пакетів, які перезапускають Gateway, перевіряють, що перезапущена служба повідомляє очікувану оновлену версію, перш ніж команда завершиться успішно. -- `--channel `: установити канал оновлення (git + npm; зберігається в конфігурації). -- `--tag `: перевизначити ціль пакета лише для цього оновлення. Для пакетних встановлень `main` відповідає `github:openclaw/openclaw#main`. +- `--no-restart`: пропустити перезапуск служби Gateway після успішного оновлення. Оновлення через менеджер пакетів, які перезапускають Gateway, перед успішним завершенням команди перевіряють, що перезапущена служба повідомляє очікувану оновлену версію. +- `--channel `: встановити канал оновлення (git + npm; зберігається в конфігурації). +- `--tag `: перевизначити ціль пакета лише для цього оновлення. Для встановлень пакетів `main` зіставляється з `github:openclaw/openclaw#main`. - `--dry-run`: попередньо переглянути заплановані дії оновлення (канал/тег/ціль/потік перезапуску) без запису конфігурації, встановлення, синхронізації плагінів або перезапуску. -- `--json`: вивести машиночитний JSON `UpdateRunResult`, включно з - `postUpdate.plugins.integrityDrifts`, коли під час післяоновлювальної синхронізації плагінів - виявлено дрейф npm-артефактів плагінів. +- `--json`: вивести машинозчитуваний JSON `UpdateRunResult`, зокрема + `postUpdate.plugins.integrityDrifts`, коли під час синхронізації плагінів після оновлення + виявлено дрейф артефактів npm-плагінів. - `--timeout `: тайм-аут для кожного кроку (типово 1800 с). -- `--yes`: пропустити запити підтвердження (наприклад, підтвердження пониження версії). +- `--yes`: пропустити запити підтвердження (наприклад, підтвердження повернення до старішої версії). -Пониження версії потребує підтвердження, оскільки старіші версії можуть порушити конфігурацію. +Повернення до старішої версії потребує підтвердження, бо старіші версії можуть порушити конфігурацію. ## `update status` -Показати активний канал оновлення + git-тег/гілку/SHA (для checkout-ів із вихідного коду), а також доступність оновлень. +Показує активний канал оновлення + git-тег/гілку/SHA (для вихідних checkout), а також доступність оновлення. ```bash openclaw update status @@ -65,13 +65,13 @@ openclaw update status --timeout 10 Параметри: -- `--json`: вивести машиночитний JSON стану. +- `--json`: вивести машинозчитуваний JSON стану. - `--timeout `: тайм-аут для перевірок (типово 3 с). ## `update wizard` -Інтерактивний потік для вибору каналу оновлення та підтвердження, чи перезапускати Gateway -після оновлення (типово перезапуск виконується). Якщо вибрати `dev` без git checkout, він +Інтерактивний потік для вибору каналу оновлення й підтвердження, чи перезапускати Gateway +після оновлення (типово перезапускається). Якщо ви виберете `dev` без git checkout, він запропонує створити його. Параметри: @@ -83,51 +83,58 @@ openclaw update status --timeout 10 Коли ви явно перемикаєте канали (`--channel ...`), OpenClaw також підтримує узгодженість методу встановлення: -- `dev` → забезпечує git checkout (типово: `~/openclaw`, можна перевизначити через `OPENCLAW_GIT_DIR`), +- `dev` → забезпечує git checkout (типово: `~/openclaw`, перевизначається через `OPENCLAW_GIT_DIR`), оновлює його та встановлює глобальний CLI із цього checkout. - `stable` → встановлює з npm за допомогою `latest`. -- `beta` → надає перевагу npm dist-tag `beta`, але повертається до `latest`, коли beta +- `beta` → віддає перевагу npm dist-tag `beta`, але повертається до `latest`, коли beta відсутня або старіша за поточний stable-реліз. -Автооновлювач ядра Gateway (коли його ввімкнено через конфігурацію) запускає шлях оновлення CLI -поза активним обробником запитів Gateway. Оновлення через менеджер пакетів `update.run` у площині керування -примусово виконують невідкладний перезапуск оновлення без cooldown після заміни пакета, -оскільки старий процес Gateway усе ще може мати в пам’яті фрагменти, що вказують на +Автооновлювач ядра Gateway (коли ввімкнений у конфігурації) запускає шлях оновлення CLI +поза живим обробником запитів Gateway. Оновлення менеджера пакетів `update.run` у площині керування +примусово виконують невідкладний перезапуск оновлення без періоду очікування після заміни пакета, +бо старий процес Gateway може досі мати в пам’яті фрагменти, що посилаються на файли, видалені новим пакетом. Для встановлень через менеджер пакетів `openclaw update` визначає цільову версію -пакета перед викликом менеджера пакетів. Глобальні npm-встановлення використовують поетапне -встановлення: OpenClaw встановлює новий пакет у тимчасовий npm-префікс, перевіряє -упакований інвентар `dist` там, а потім замінює цим чистим деревом пакета -реальний глобальний префікс. Якщо перевірка не вдається, післяоновлювальні doctor, синхронізація плагінів і -робота з перезапуску не виконуються з підозрілого дерева. Навіть коли встановлена версія -вже збігається з цільовою, команда оновлює глобальне встановлення пакета, -потім виконує синхронізацію плагінів, оновлення автодоповнення основних команд і перезапуск. Це -підтримує упаковані sidecar-и та записи плагінів, що належать каналу, узгодженими з -встановленою збіркою OpenClaw, залишаючи повні перебудови автодоповнення команд плагінів для +пакета перед викликом менеджера пакетів. Глобальні встановлення npm використовують поетапне +встановлення: OpenClaw встановлює новий пакет у тимчасовий префікс npm, перевіряє +там інвентар упакованого `dist`, а потім замінює цим чистим деревом пакета +реальний глобальний префікс. Якщо перевірка не вдається, doctor після оновлення, синхронізація плагінів і +перезапуск не запускаються з підозрілого дерева. Навіть коли встановлена версія +вже відповідає цілі, команда оновлює глобальне встановлення пакета, +а потім запускає синхронізацію плагінів, оновлення завершення основних команд і перезапуск. Це +підтримує узгодженість упакованих sidecar-компонентів і записів плагінів, що належать каналу, із +встановленою збіркою OpenClaw, залишаючи повну перебудову завершення команд плагінів для явних запусків `openclaw completion --write-state`. -Коли встановлено локальну керовану службу Gateway і перезапуск увімкнено, -оновлення через менеджер пакетів зупиняють запущену службу перед заміною дерева пакета, -потім оновлюють метадані служби з оновленого встановлення, перезапускають -службу та перевіряють, що перезапущений Gateway повідомляє очікувану версію. З -`--no-restart` заміна пакета все одно виконується, але керована служба не -зупиняється і не перезапускається, тому запущений Gateway може зберігати старий код, доки ви не перезапустите -його вручну. +Коли встановлено локальну керовану службу Gateway і ввімкнено перезапуск, +оновлення через менеджер пакетів зупиняють запущену службу перед заміною дерева +пакета, потім оновлюють метадані служби з оновленого встановлення, перезапускають +службу й перевіряють, що перезапущений Gateway повідомляє очікувану версію перед +повідомленням про успіх. На macOS перевірка після оновлення також перевіряє, що LaunchAgent +завантажений/запущений для активного профілю, а налаштований порт loopback є +справним. Якщо plist встановлено, але launchd не наглядає за ним, OpenClaw +автоматично повторно bootstrap-ить і kickstart-ить LaunchAgent, а потім повторно запускає +перевірки готовності health/версії/каналу. Якщо Gateway усе ще не стає +справним, команда завершується з ненульовим кодом і виводить шлях до журналу перезапуску, а також явні +інструкції щодо перезапуску, перевстановлення та відкату пакета. З `--no-restart` +заміна пакета все одно виконується, але керована служба не зупиняється і не +перезапускається, тому запущений Gateway може зберігати старий код, доки ви не перезапустите його +вручну. ## Потік git checkout ### Вибір каналу -- `stable`: checkout найновішого не-beta тегу, потім збірка та doctor. -- `beta`: надати перевагу найновішому тегу `-beta`, але повернутися до найновішого stable-тегу, коли beta відсутня або старіша. +- `stable`: checkout останнього небета-тега, потім build і doctor. +- `beta`: віддати перевагу останньому тегу `-beta`, але повернутися до останнього stable-тега, коли beta відсутня або старіша. - `dev`: checkout `main`, потім fetch і rebase. ### Кроки оновлення - Потребує відсутності незакомічених змін. + Вимагає відсутності незакомічених змін. Перемикає на вибраний канал (тег або гілку). @@ -135,14 +142,14 @@ openclaw update status --timeout 10 Лише для dev. - - Запускає lint і збірку TypeScript у тимчасовому worktree. Якщо tip не проходить, відступає назад до 10 комітів, щоб знайти найновішу чисту збірку. + + Запускає lint і TypeScript build у тимчасовому worktree. Якщо tip не проходить, повертається назад до 10 комітів, щоб знайти найновіший чистий build. Виконує rebase на вибраний коміт (лише dev). - Використовує менеджер пакетів репозиторію. Для pnpm checkout-ів оновлювач bootstrap-ить `pnpm` на вимогу (спочатку через `corepack`, потім тимчасовий fallback `npm install pnpm@10`) замість запуску `npm run build` усередині pnpm workspace. + Використовує менеджер пакетів репозиторію. Для pnpm checkout оновлювач bootstrap-ить `pnpm` на вимогу (спочатку через `corepack`, потім через запасний тимчасовий `npm install pnpm@10`) замість запуску `npm run build` усередині pnpm workspace. Збирає gateway і Control UI. @@ -151,34 +158,34 @@ openclaw update status --timeout 10 `openclaw doctor` запускається як фінальна перевірка безпечного оновлення. - Синхронізує плагіни з активним каналом. Dev використовує bundled plugins; stable і beta використовують npm. Оновлює відстежувані встановлення плагінів. + Синхронізує плагіни з активним каналом. Dev використовує bundled плагіни; stable і beta використовують npm. Оновлює відстежувані встановлення плагінів. -На beta-каналі оновлення відстежувані встановлення npm і ClawHub-плагінів, що дотримуються -типової/latest лінії, спочатку пробують реліз плагіна `@beta`. Якщо плагін не має -beta-релізу, OpenClaw повертається до записаної default/latest spec. Точні +На каналі оновлення beta відстежувані npm і ClawHub встановлення плагінів, що слідують +типовій/latest лінії, спершу пробують реліз плагіна `@beta`. Якщо плагін не має +beta-релізу, OpenClaw повертається до записаної типової/latest специфікації. Точні версії та явні теги не переписуються. -Якщо оновлення точно закріпленого npm-плагіна розв’язується в артефакт, цілісність якого відрізняється від збереженого запису встановлення, `openclaw update` перериває оновлення цього артефакта плагіна замість його встановлення. Перевстановіть або оновіть плагін явно лише після перевірки, що ви довіряєте новому артефакту. +Якщо оновлення точно закріпленого npm-плагіна визначає артефакт, цілісність якого відрізняється від збереженого запису встановлення, `openclaw update` перериває оновлення цього артефакту плагіна замість його встановлення. Перевстановлюйте або явно оновлюйте плагін лише після перевірки, що ви довіряєте новому артефакту. -Збої післяоновлювальної синхронізації плагінів позначають результат оновлення як невдалий і зупиняють подальшу роботу з перезапуску. Виправте помилку встановлення або оновлення плагіна, а потім повторно запустіть `openclaw update`. +Збої синхронізації плагінів після оновлення призводять до невдалого результату оновлення й зупиняють подальшу роботу перезапуску. Виправте помилку встановлення або оновлення плагіна, потім повторно запустіть `openclaw update`. -Коли оновлений Gateway запускається, завантаження плагінів працює лише в режимі перевірки: запуск не запускає менеджери пакетів і не змінює дерева залежностей. Перезапуски `update.run` через менеджер пакетів обходять звичайне відкладення під час простою та cooldown перезапуску після заміни дерева пакета, тож старий процес не може продовжувати ліниво завантажувати видалені фрагменти. +Коли оновлений Gateway запускається, завантаження плагінів працює лише в режимі перевірки: startup не запускає менеджери пакетів і не змінює дерева залежностей. Перезапуски менеджера пакетів `update.run` обходять звичайне відкладення під час простою та cooldown перезапуску після заміни дерева пакета, тому старий процес не може продовжувати lazy-load видалених фрагментів. -Якщо bootstrap pnpm усе ще не вдається, оновлювач зупиняється рано з помилкою, специфічною для менеджера пакетів, замість спроби виконати `npm run build` усередині checkout. +Якщо pnpm bootstrap усе ще не вдається, оновлювач зупиняється рано з помилкою, специфічною для менеджера пакетів, замість спроби виконати `npm run build` усередині checkout. ## Скорочення `--update` -`openclaw --update` переписується на `openclaw update` (корисно для shell-ів і скриптів запуску). +`openclaw --update` переписується на `openclaw update` (корисно для оболонок і launcher-скриптів). ## Пов’язане -- `openclaw doctor` (пропонує спочатку запустити оновлення для git checkout-ів) +- `openclaw doctor` (пропонує спершу запустити update на git checkout) - [Канали розробки](/uk/install/development-channels) - [Оновлення](/uk/install/updating) - [Довідник CLI](/uk/cli) diff --git a/docs/uk/tools/reactions.md b/docs/uk/tools/reactions.md index ec995da51..9da233dd1 100644 --- a/docs/uk/tools/reactions.md +++ b/docs/uk/tools/reactions.md @@ -2,18 +2,18 @@ read_when: - Робота з реакціями в будь-якому каналі - Розуміння того, як реакції емодзі відрізняються на різних платформах -summary: Семантика інструмента реакцій у всіх підтримуваних каналах +summary: Семантика інструмента реакцій в усіх підтримуваних каналах title: Реакції x-i18n: - generated_at: "2026-04-28T11:28:02Z" + generated_at: "2026-05-03T16:59:18Z" model: gpt-5.5 provider: openai - source_hash: 29cbb4a3afa4c0fdd049bfd615890b0fccea26bf28f109d6cba6f041423ca5e0 + source_hash: 99008cdaf1fa7462bbe72066be7c404880df237a79d3deba01bffe00083c1e34 source_path: tools/reactions.md workflow: 16 --- -Агент може додавати й видаляти емодзі-реакції на повідомлення за допомогою інструмента `message` з дією `react`. Поведінка реакцій залежить від каналу й транспорту. +Агент може додавати й видаляти реакції-емодзі на повідомленнях за допомогою інструмента `message` з дією `react`. Поведінка реакцій залежить від каналу й транспорту. ## Як це працює @@ -26,10 +26,11 @@ x-i18n: ``` - `emoji` обов’язковий під час додавання реакції. -- Задайте для `emoji` порожній рядок (`""`), щоб видалити реакцію(ї) бота. -- Задайте `remove: true`, щоб видалити конкретний емодзі (потрібен непорожній `emoji`). +- Установіть `emoji` як порожній рядок (`""`), щоб видалити реакцію(ї) бота. +- Установіть `remove: true`, щоб видалити конкретний емодзі (потрібен непорожній `emoji`). +- На каналах, які підтримують статусні реакції, `trackToolCalls: true` у реакції дає змогу runtime використовувати це повідомлення з реакцією для подальших реакцій перебігу інструментів у межах того самого ходу. -## Поведінка каналу +## Поведінка каналів @@ -52,38 +53,38 @@ x-i18n: - Порожній `emoji` видаляє реакцію бота. - - `remove: true` внутрішньо зіставляється з порожнім емодзі (усе одно потребує `emoji` у виклику інструмента). + - `remove: true` внутрішньо зіставляється з порожнім емодзі (але все одно потребує `emoji` у виклику інструмента). - Потрібен непорожній `emoji`. - - `remove: true` видаляє саме цю емодзі-реакцію. + - `remove: true` видаляє реакцію саме з цим емодзі. - Використовуйте інструмент `feishu_reaction` з діями `add`, `remove` і `list`. - - Додавання/видалення потребує `emoji_type`; видалення також потребує `reaction_id`. + - Для додавання/видалення потрібен `emoji_type`; для видалення також потрібен `reaction_id`. - - Сповіщення про вхідні реакції контролюються через `channels.signal.reactionNotifications`: `"off"` вимикає їх, `"own"` (за замовчуванням) створює події, коли користувачі реагують на повідомлення бота, а `"all"` створює події для всіх реакцій. + - Сповіщення про вхідні реакції контролюються через `channels.signal.reactionNotifications`: `"off"` вимикає їх, `"own"` (типово) створює події, коли користувачі реагують на повідомлення бота, а `"all"` створює події для всіх реакцій. ## Рівень реакцій -Конфігурація `reactionLevel` для кожного каналу керує тим, наскільки широко агент використовує реакції. Значення зазвичай: `off`, `ack`, `minimal` або `extensive`. +Конфігурація `reactionLevel` для кожного каналу керує тим, наскільки широко агент використовує реакції. Значення зазвичай такі: `off`, `ack`, `minimal` або `extensive`. - [Telegram reactionLevel](/uk/channels/telegram#reaction-notifications) — `channels.telegram.reactionLevel` - [WhatsApp reactionLevel](/uk/channels/whatsapp#reaction-level) — `channels.whatsapp.reactionLevel` -Задайте `reactionLevel` для окремих каналів, щоб налаштувати, наскільки активно агент реагує на повідомлення на кожній платформі. +Установіть `reactionLevel` для окремих каналів, щоб налаштувати, наскільки активно агент реагує на повідомлення на кожній платформі. ## Пов’язане -- [Надсилання агентом](/uk/tools/agent-send) — інструмент `message`, який містить `react` +- [Agent Send](/uk/tools/agent-send) — інструмент `message`, який включає `react` - [Канали](/uk/channels) — конфігурація для окремих каналів