CLI commands
Конфігурація
Допоміжні команди конфігурації для неінтерактивних змін у OmeniaClaw.json: отримуйте/задавайте/застосовуйте патчі/скасовуйте/переглядайте файл/схему/перевіряйте значення за шляхом і виводьте активний файл конфігурації. Запустіть без підкоманди, щоб відкрити майстер налаштування (те саме, що OmeniaClaw configure).
Кореневі параметри
OmeniaClaw_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tc2VjdGlvbiA8c2VjdGlvbg
" type="string">
Повторюваний фільтр розділів керованого налаштування, коли ви запускаєте OmeniaClaw config без підкоманди.
Підтримувані керовані розділи: workspace, model, web, gateway, daemon, channels, plugins, skills, health.
Приклади
OmeniaClaw config fileOmeniaClaw config --section modelOmeniaClaw config --section gateway --section daemonOmeniaClaw config schemaOmeniaClaw config get browser.executablePathOmeniaClaw config set browser.executablePath "/usr/bin/google-chrome"OmeniaClaw config set browser.profiles.work.executablePath "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"OmeniaClaw config set agents.defaults.heartbeat.every "2h"OmeniaClaw config set agents.list[0].tools.exec.node "node-id-or-name"OmeniaClaw config set agents.defaults.models '{"openai/gpt-5.4":{}}' --strict-json --mergeOmeniaClaw config set channels.discord.token --ref-provider default --ref-source env --ref-id DISCORD_BOT_TOKENOmeniaClaw config set secrets.providers.vaultfile --provider-source file --provider-path /etc/OmeniaClaw/secrets.json --provider-mode jsonOmeniaClaw config patch --file ./OmeniaClaw.patch.json5 --dry-runOmeniaClaw config unset plugins.entries.brave.config.webSearch.apiKeyOmeniaClaw config set channels.discord.token --ref-provider default --ref-source env --ref-id DISCORD_BOT_TOKEN --dry-runOmeniaClaw config validateOmeniaClaw config validate --jsonconfig schema
Виводить згенеровану схему JSON для OmeniaClaw.json у stdout як JSON.
Що вона містить
- Поточну кореневу схему конфігурації, а також кореневе рядкове поле
$schemaдля редакторських інструментів. - Метадані документації полів
titleіdescription, які використовує Control UI. - Вкладені об'єкти, вузли wildcard (
*) і елементів масиву ([]) успадковують ті самі метаданіtitle/description, коли існує відповідна документація поля. - Гілки
anyOf/oneOf/allOfтакож успадковують ті самі метадані документації, коли існує відповідна документація поля. - Наскільки можливо актуальні метадані схем Plugin + каналу, коли можна завантажити runtime-маніфести.
- Чисту резервну схему навіть тоді, коли поточна конфігурація недійсна.
Пов'язаний runtime RPC
config.schema.lookup повертає один нормалізований шлях конфігурації з неглибоким вузлом схеми (title, description, type, enum, const, поширені межі), зіставленими метаданими підказок UI і короткими описами безпосередніх дочірніх елементів. Використовуйте його для деталізації, обмеженої шляхом, у Control UI або власних клієнтах.
OmeniaClaw config schemaПередайте результат у файл, коли хочете переглянути або перевірити його іншими інструментами:
OmeniaClaw config schema > OmeniaClaw.schema.jsonШляхи
Шляхи використовують крапкову або дужкову нотацію:
OmeniaClaw config get agents.defaults.workspaceOmeniaClaw config get agents.list[0].idВикористовуйте індекс списку агентів, щоб указати конкретного агента:
OmeniaClaw config get agents.listOmeniaClaw config set agents.list[1].tools.exec.node "node-id-or-name"Значення
Значення за можливості розбираються як JSON5; інакше вони обробляються як рядки. Використовуйте --strict-json, щоб вимагати розбору JSON5. --json залишається підтримуваним як застарілий псевдонім.
OmeniaClaw config set agents.defaults.heartbeat.every "0m"OmeniaClaw config set gateway.port 19001 --strict-jsonOmeniaClaw config set channels.whatsapp.groups '["*"]' --strict-jsonconfig get <path> --json виводить сире значення як JSON замість тексту, відформатованого для термінала.
Використовуйте --merge, коли додаєте записи до цих мап:
OmeniaClaw config set agents.defaults.models '{"openai/gpt-5.4":{}}' --strict-json --mergeOmeniaClaw config set models.providers.ollama.models '[{"id":"llama3.2","name":"Llama 3.2"}]' --strict-json --mergeВикористовуйте --replace лише тоді, коли навмисно хочете, щоб надане значення стало повним цільовим значенням.
Режими config set
OmeniaClaw config set підтримує чотири стилі призначення:
Режим значення
OmeniaClaw config set <path> <value>Режим конструктора SecretRef
OmeniaClaw config set channels.discord.token \ --ref-provider default \ --ref-source env \ --ref-id DISCORD_BOT_TOKENРежим конструктора провайдера
Режим конструктора провайдера застосовується лише до шляхів secrets.providers.<alias>:
OmeniaClaw config set secrets.providers.vault \ --provider-source exec \ --provider-command /usr/local/bin/OmeniaClaw-vault \ --provider-arg read \ --provider-arg openai/api-key \ --provider-timeout-ms 5000Пакетний режим
OmeniaClaw config set --batch-json '[ { "path": "secrets.providers.default", "provider": { "source": "env" } }, { "path": "channels.discord.token", "ref": { "source": "env", "provider": "default", "id": "DISCORD_BOT_TOKEN" } }]'OmeniaClaw config set --batch-file ./config-set.batch.json --dry-runПакетний розбір завжди використовує пакетне корисне навантаження (--batch-json/--batch-file) як джерело істини. --strict-json / --json не змінюють поведінку пакетного розбору.
config patch
Використовуйте config patch, коли хочете вставити або передати через pipe патч у формі конфігурації замість виконання багатьох команд config set на основі шляхів. Вхідні дані є об'єктом JSON5. Об'єкти об'єднуються рекурсивно, масиви та скалярні значення замінюють цільове значення, а null видаляє цільовий шлях.
OmeniaClaw config patch --file ./OmeniaClaw.patch.json5 --dry-runOmeniaClaw config patch --file ./OmeniaClaw.patch.json5Ви також можете передати патч через stdin, що корисно для сценаріїв віддаленого налаштування:
ssh OmeniaClaw-host 'OmeniaClaw config patch --stdin --dry-run' < ./OmeniaClaw.patch.json5ssh OmeniaClaw-host 'OmeniaClaw config patch --stdin' < ./OmeniaClaw.patch.json5Приклад патча:
{ channels: { slack: { enabled: true, mode: "socket", botToken: { source: "env", provider: "default", id: "SLACK_BOT_TOKEN" }, appToken: { source: "env", provider: "default", id: "SLACK_APP_TOKEN" }, groupPolicy: "open", requireMention: false, }, discord: { enabled: true, token: { source: "env", provider: "default", id: "DISCORD_BOT_TOKEN" }, dmPolicy: "disabled", dm: { enabled: false }, groupPolicy: "allowlist", }, }, agents: { defaults: { model: { primary: "openai/gpt-5.5" }, models: { "openai/gpt-5.5": { params: { fastMode: true } }, }, }, },}Використовуйте --replace-path <path>, коли один об'єкт або масив має стати точно наданим значенням замість рекурсивного патчування:
OmeniaClaw config patch --file ./discord.patch.json5 --replace-path 'channels.discord.guilds["123"].channels'--dry-run запускає перевірки схеми та розв'язуваності SecretRef без запису. Exec-backed SecretRefs типово пропускаються під час сухого запуску; додайте --allow-exec, коли навмисно хочете, щоб сухий запуск виконував команди провайдера.
Режим шляху/значення JSON залишається підтримуваним як для SecretRef, так і для провайдерів:
OmeniaClaw config set channels.discord.token \ '{"source":"env","provider":"default","id":"DISCORD_BOT_TOKEN"}' \ --strict-json OmeniaClaw config set secrets.providers.vaultfile \ '{"source":"file","path":"/etc/OmeniaClaw/secrets.json","mode":"json"}' \ --strict-jsonПрапорці конструктора провайдера
Цілі конструктора провайдера мають використовувати secrets.providers.<alias> як шлях.
Спільні прапорці
--provider-source <env|file|exec>--provider-timeout-ms <ms>(file,exec)
Провайдер env (--provider-source env)
--provider-allowlist <ENV_VAR>(повторюваний)
Файловий провайдер (--provider-source file)
--provider-path <path>(обов'язковий)--provider-mode <singleValue|json>--provider-max-bytes <bytes>--provider-allow-insecure-path
Exec-провайдер (--provider-source exec)
--provider-command <path>(обов'язковий)--provider-arg <arg>(повторюваний)--provider-no-output-timeout-ms <ms>--provider-max-output-bytes <bytes>--provider-json-only--provider-env <KEY=VALUE>(повторюваний)--provider-pass-env <ENV_VAR>(повторюваний)--provider-trusted-dir <path>(повторюваний)--provider-allow-insecure-path--provider-allow-symlink-command
Приклад посиленого exec-провайдера:
OmeniaClaw config set secrets.providers.vault \ --provider-source exec \ --provider-command /usr/local/bin/OmeniaClaw-vault \ --provider-arg read \ --provider-arg openai/api-key \ --provider-json-only \ --provider-pass-env VAULT_TOKEN \ --provider-trusted-dir /usr/local/bin \ --provider-timeout-ms 5000Сухий запуск
Використовуйте --dry-run, щоб перевірити зміни без запису в OmeniaClaw.json.
OmeniaClaw config set channels.discord.token \ --ref-provider default \ --ref-source env \ --ref-id DISCORD_BOT_TOKEN \ --dry-run OmeniaClaw config set channels.discord.token \ --ref-provider default \ --ref-source env \ --ref-id DISCORD_BOT_TOKEN \ --dry-run \ --json OmeniaClaw config set channels.discord.token \ --ref-provider vault \ --ref-source exec \ --ref-id discord/token \ --dry-run \ --allow-execПоведінка сухого запуску
- Режим конструктора: запускає перевірки розв'язуваності SecretRef для змінених refs/провайдерів.
- Режим JSON (
--strict-json,--jsonабо пакетний режим): запускає перевірку схеми плюс перевірки розв'язуваності SecretRef. - Перевірка політик також виконується для відомих непідтримуваних цільових поверхонь SecretRef.
- Перевірки політик оцінюють повну конфігурацію після зміни, тому записи батьківських об'єктів (наприклад, задавання
hooksяк об'єкта) не можуть обійти перевірку непідтримуваних поверхонь. - Перевірки exec SecretRef типово пропускаються під час сухого запуску, щоб уникнути побічних ефектів команд.
- Використовуйте
--allow-execз--dry-run, щоб явно ввімкнути перевірки exec SecretRef (це може виконувати команди провайдера). --allow-execпрацює лише для сухого запуску й видає помилку, якщо використовується без--dry-run.
Поля --dry-run --json
--dry-run --json виводить машинозчитуваний звіт:
ok: чи пройшов пробний запускoperations: кількість оцінених призначеньchecks: чи виконувалися перевірки схеми/можливості розв’язанняchecks.resolvabilityComplete: чи перевірки можливості розв’язання виконалися до завершення (false, коли exec-посилання пропущено)refsChecked: кількість посилань, фактично розв’язаних під час пробного запускуskippedExecRefs: кількість exec-посилань, пропущених через те, що--allow-execне було встановленоerrors: структуровані помилки схеми/можливості розв’язання, колиok=false
Форма виводу JSON
{ ok: boolean, operations: number, configPath: string, inputModes: ["value" | "json" | "builder", ...], checks: { schema: boolean, resolvability: boolean, resolvabilityComplete: boolean, }, refsChecked: number, skippedExecRefs: number, errors?: [ { kind: "schema" | "resolvability", message: string, ref?: string, // present for resolvability errors }, ],}Success example
{ "ok": true, "operations": 1, "configPath": "~/.OmeniaClaw/OmeniaClaw.json", "inputModes": ["builder"], "checks": { "schema": false, "resolvability": true, "resolvabilityComplete": true }, "refsChecked": 1, "skippedExecRefs": 0}Failure example
{ "ok": false, "operations": 1, "configPath": "~/.OmeniaClaw/OmeniaClaw.json", "inputModes": ["builder"], "checks": { "schema": false, "resolvability": true, "resolvabilityComplete": true }, "refsChecked": 1, "skippedExecRefs": 0, "errors": [ { "kind": "resolvability", "message": "Error: Environment variable \"MISSING_TEST_SECRET\" is not set.", "ref": "env:default:MISSING_TEST_SECRET" } ]}If dry-run fails
config schema validation failed: форма вашої конфігурації після зміни недійсна; виправте шлях/значення або форму об’єкта provider/ref.Config policy validation failed: unsupported SecretRef usage: поверніть ці облікові дані до введення відкритим текстом/рядком і використовуйте SecretRefs лише на підтримуваних поверхнях.SecretRef assignment(s) could not be resolved: указаний provider/ref наразі не може бути розв’язаний (відсутня змінна середовища, недійсний файловий указівник, збій exec-провайдера або невідповідність провайдера/джерела).Dry run note: skipped <n> exec SecretRef resolvability check(s): пробний запуск пропустив exec-посилання; перезапустіть із--allow-exec, якщо вам потрібна перевірка можливості розв’язання exec.- Для пакетного режиму виправте помилкові записи та повторно запустіть
--dry-runперед записом.
Безпека запису
OmeniaClaw config set та інші засоби запису конфігурації, що належать OmeniaClaw, перевіряють повну конфігурацію після зміни, перш ніж зберегти її на диск. Якщо нове корисне навантаження не проходить перевірку схеми або виглядає як руйнівне перезаписування, активна конфігурація залишається без змін, а відхилене корисне навантаження зберігається поруч як OmeniaClaw.json.rejected.*.
Надавайте перевагу записам через CLI для невеликих змін:
OmeniaClaw config set gateway.reload.mode hybrid --dry-runOmeniaClaw config set gateway.reload.mode hybridOmeniaClaw config validateЯкщо запис відхилено, перевірте збережене корисне навантаження та виправте повну форму конфігурації:
CONFIG="$(OmeniaClaw config file)"ls -lt "$CONFIG".rejected.* 2>/dev/null | headOmeniaClaw config validateПрямі записи в редакторі все ще дозволені, але запущений Gateway вважає їх ненадійними, доки вони не пройдуть перевірку. Недійсні прямі зміни призводять до помилки запуску або пропускаються під час гарячого перезавантаження; Gateway не перезаписує OmeniaClaw.json. Запустіть OmeniaClaw doctor --fix, щоб відновити конфігурацію з префіксами/перезаписуванням або повернути останню відому справну копію. Див. усунення несправностей Gateway.
Відновлення всього файла зарезервоване для ремонту через doctor. Зміни схеми Plugin або розбіжність minHostVersion залишаються явними, замість того щоб відкочувати непов’язані користувацькі налаштування, як-от моделі, провайдерів, профілі автентифікації, канали, експозицію gateway, інструменти, пам’ять, браузер або конфігурацію cron.
Підкоманди
config file: вивести шлях до активного файла конфігурації (визначений ізOmeniaClaw_CONFIG_PATHабо стандартного розташування). Шлях має вказувати на звичайний файл, а не на символічне посилання.
Перезапустіть gateway після змін.
Перевірка
Перевірте поточну конфігурацію за активною схемою без запуску gateway.
OmeniaClaw config validateOmeniaClaw config validate --jsonПісля успішного проходження OmeniaClaw config validate ви можете використати локальний TUI, щоб вбудований агент порівняв активну конфігурацію з документацією, поки ви перевіряєте кожну зміну з того самого термінала:
OmeniaClaw chatПотім усередині TUI:
!OmeniaClaw config file!OmeniaClaw docs gateway auth token secretref!OmeniaClaw config validate!OmeniaClaw doctorТиповий цикл ремонту:
Compare with docs
Попросіть агента порівняти вашу поточну конфігурацію з відповідною сторінкою документації та запропонувати найменше виправлення.
Apply targeted edits
Застосуйте цільові зміни за допомогою OmeniaClaw config set або OmeniaClaw configure.
Re-validate
Повторно запускайте OmeniaClaw config validate після кожної зміни.
Doctor for runtime issues
Якщо перевірка проходить, але runtime усе ще несправний, запустіть OmeniaClaw doctor або OmeniaClaw doctor --fix для допомоги з міграцією та ремонтом.