Установить основной пакет скиллов
Теперь, когда ваши агенты запущены, дайте им первое реальное задание. BALIA OS поставляется с тремя встроенными скиллами, готовыми к развёртыванию.
| Скилл | Назначение |
|---|---|
| lightpanda | Быстрый веб-поиск и скрапинг |
| summarize | Автоматическое резюмирование длинных текстов или веб-страниц |
| clawsec | Мониторинг безопасности и карантин новых скиллов |
В Разделе 4 вы уже использовали этот скрипт для установки Охранника Безопасности. Это второй запуск — он устанавливает основной пакет скиллов (lightpanda / summarize / clawsec). (Если вы ещё не скачали его, вернитесь в Раздел 4 и сначала скачайте install_core_pack.py.)
Попросить агента выполнить
Вставьте это в терминал VS Code и нажмите Enter для выполнения.
Что такое Token?
Это строка после ?token= в ссылке доступа, полученной после покупки.
Пример: https://guide.baliaos.com/?token=BALIA-XXXX-XXXX-0001 В данном случае токен: BALIA-XXXX-XXXX-0001.
Если письмо не найдено, обратитесь в поддержку.
openclaw agent --agent security-guardian "Пожалуйста, выполни следующее:
python install_core_pack.py --lang ru
(Токен будет прочитан автоматически из вашего файла .env)
Сообщи в Discord по завершении."Агент автоматически:
- Аутентифицирует ваш токен
- Скачает основной пакет скиллов (lightpanda / summarize / clawsec)
- Развернёт в ~/.opengoat/skills/
- Обновит _SKILL_INDEX.md
- Сообщит в Discord: «Основной пакет скиллов установлен»
После получения подтверждения в Discord продолжайте ниже.
Что такое навыки и кассеты
Ваши агенты активны. У них есть личности, процедуры отчётности и каналы Discord. Но прямо сейчас они не знают, в какой области работают. Они не знают, управляют ли рестораном, ведут торговые операции или поддерживают юридическую практику.
Навыки — это файлы знаний, которые вы пишете и передаёте своим агентам. Каждый навык учит агента выполнять конкретную задачу: управлять бронированием, формировать отчёт о прибылях и убытках, составлять публикацию в социальных сетях. Чем больше навыков у агента, тем больше он может делать.
Кассета — это папка с навыками, объединёнными по теме. Оператор ресторана может использовать кассету restaurant-ops. Создатель контента — кассету youtube и кассету social-media. Один и тот же агент может использовать разные кассеты в зависимости от того, над чем нужно работать в конкретный день.
Каждая кассета по умолчанию включена (ON). Один файл — memory/_SKILL_STATUS.md — содержит список всех кассет с их статусом ON/OFF. Здесь нет «текущего режима», который нужно переключать — все ваши кассеты доступны одновременно, и агент применяет ту из них, которая соответствует поставленной вами задаче (её SKILL.md описывает, для чего она нужна). Вы переводите кассету в OFF только в редких случаях, когда хотите приостановить её — например, если две кассеты конфликтуют друг с другом (см. «Если две кассеты конфликтуют» ниже).
Это означает:
marketing-outreachиai-meeting-dailyмогут одновременно бытьONи работать параллельно- Отключение одной кассеты не влияет на другие
- Конфигурация агента никогда не меняется — меняется только STATUS кассеты
Структура папки кассеты
$env:USERPROFILE\.opengoat\
├── memory\
│ └── _SKILL_STATUS.md ← список ON/OFF для каждой кассеты
└── skills\
├── youtube\
│ ├── SKILL.md ← что делает эта кассета, инструменты, правила
│ └── WORKFLOW.md ← пошаговые процедуры
├── restaurant-ops\
│ ├── SKILL.md
│ └── WORKFLOW.md
└── trade\
├── SKILL.md
└── WORKFLOW.md_SKILL_STATUS.md содержит список всех кассет с их флагом STATUS. Например:
| Название кассеты | STATUS | Описание |
|------------------|--------|----------------------------|
| youtube | ON | Контент-пайплайн YouTube |
| trade | ON | Анализ рынка и отчётность |Когда вы даёте агенту инструкцию, он сопоставляет её с SKILL.md каждой кассеты со статусом ON и применяет ту, которая подходит — вы также можете назвать кассету явно («Работай в режиме trade: ...»), чтобы указать точнее. Если кассета выключена (OFF), агент полностью пропускает её, даже если задача формально подошла бы.
Запланированные задачи (например, ежедневная проверка состояния системы или ночной отчёт) выполняются независимо от того, какие кассеты включены — они определены в AGENTS.md агента, а не в какой-либо кассете.
Выбор AI-движка
Разные кассеты лучше всего работают с разными AI-моделями. Задайте это один раз при создании кассеты.
| Тип кассеты | Рекомендуемый движок | Почему |
|---|---|---|
| Торговля криптовалютой / Анализ рынка | Claude | Логическое мышление, анализ закономерностей, взвешенные суждения |
| Программирование / Техническая автоматизация | Claude | Качество кода, отладка, многоэтапная логика |
| Юридические исследования / Проверка договоров | Claude | Тщательное рассуждение, точность формулировок |
| Финансы / Бухгалтерия / Отчётность | Claude | Структурированный анализ, точные вычисления |
| Google Sheets / Docs / NotebookLM / Drive | Gemini | Нативная интеграция с сервисами Google |
| YouTube / Видеоконтент | Gemini | Прямой анализ видео; интеграция с YouTube Studio |
| Автоматизация Gmail / Calendar | Gemini | Глубокая интеграция с Google Workspace |
| Продажи / Аутрич / Копирайтинг | GPT-4o | Естественная коммуникация, генерация писем |
| Многоязычное общение | GPT-4o или Gemini | Высокое качество работы с несколькими языками |
| Электронная коммерция / Исследование продуктов | Claude или GPT-4o | Глубина исследований, структурированный вывод |
Если Claude подходит для вашего случая, вы уже настроены — это было сделано в Разделе 3.
Для Gemini или GPT-4o вам потребуется добавить API-ключ в файл .env. Инструкции приведены в Шаге 7 AI-консьержа ниже.
Идеи навыков по отраслям
Не знаете, какие навыки создавать? Вот отправные точки по направлениям использования.
Ресторан / Общественное питание
- Управление бронированием и ежедневное расписание
- Отслеживание заказов поставщиков и оповещения об остатках
- Публикации в социальных сетях (дневные спецпредложения, мероприятия)
- Мониторинг отзывов и подготовка ответов
- Еженедельная сводка по выручке
Электронная коммерция / Физические товары
- Создание описаний товаров
- Мониторинг цен конкурентов
- Сводка по статусам заказов
- Подготовка ответов на запросы клиентов
- Ежемесячная отчётность по продажам
Создатель контента / YouTuber
- Генерация идей для названий и превью
- Составление планов сценариев
- Управление расписанием публикаций
- Сводка по показателям эффективности
- Подготовка ответов на комментарии сообщества
Фрилансер / Консультант
- Подготовка коммуникаций с клиентами
- Отчётность по статусу проектов
- Отслеживание счетов и напоминания
- Проверка пунктов договоров (выделение нестандартных условий)
- Сводка по учёту рабочего времени
Малый бизнес / Общее
- Ежедневная сводка по операционной деятельности
- Подготовка коммуникаций с персоналом
- Первичная проверка юридических вопросов (выделение вопросов, требующих юриста)
- Финансовая сводка на основе чеков и записей
- Управление коммуникациями с поставщиками
Вашей отрасли нет в этом списке? Всё в порядке — AI-консьерж в этом разделе поможет вам определить собственные навыки с нуля, исходя из того, что вы хотите, чтобы ваша команда реально делала.
Как работает этот раздел
Рекомендуется: Используйте промпт AI-консьержа ниже — он генерирует все файлы кассеты И создаёт Python-скрипт настройки, который автоматически создаёт всё. После разговора с ИИ перейдите к Шаг 2 — Запустите скрипт настройки и запустите его. Создавать файлы вручную не потребуется.
Если скрипт установки завершится ошибкой: AI-консьерж также показывает полное содержимое каждого файла. Вы можете создать файлы вручную в VS Code как запасной вариант.
Используйте приведённый ниже промпт AI-консьержа, чтобы:
- Определить, что ваши агенты должны делать каждый день
- Решить, с каким названием кассеты и режима начать
- Выбрать подходящий AI-движок
- Сгенерировать файлы SKILL и WORKFLOW
- Настроить флаг
_SKILL_STATUS.md - Проверить, что ваш агент загружает нужный режим
Вставьте промпт в ваш чат-ИИ. Прикрепите Документ по дизайну команды из Раздела 2.
▶ Вставьте это в свой ИИ, чтобы начать
Прикрепите Документ по дизайну команды перед отправкой.
Вы помогаете мне создавать навыки и кассету для BALIA OS —
многоагентной операционной системы на базе ИИ.
Я приложил Документ по дизайну команды. Прочитайте его перед началом,
чтобы узнать имена моих агентов, их роли и структуру workspace.
КОНЦЕПЦИЯ, КОТОРУЮ НУЖНО ПОНЯТЬ ПЕРЕД НАЧАЛОМ:
Навыки — это файлы знаний, которые я пишу и передаю своим агентам.
Каждый навык учит агента выполнять конкретную задачу.
Кассета — это папка с навыками, объединёнными по теме (режиму).
Все кассеты по умолчанию включены (ON) и могут работать одновременно —
мои агенты применяют ту кассету, которая соответствует поставленной задаче.
Один файл — memory/_SKILL_STATUS.md — содержит список всех кассет со
статусом ON/OFF. Это единый источник истины о том, какие кассеты доступны.
Это не «текущий режим» — одновременно может быть включено несколько строк.
Структура папок:
$env:USERPROFILE/.opengoat/
memory/
_SKILL_STATUS.md ← список ON/OFF, одна строка на кассету
skills/
[название-кассеты]/
SKILL.md ← что делает эта кассета, инструменты, правила
WORKFLOW.md ← пошаговые процедуры для этой кассеты
Когда я даю агенту инструкцию:
1. Агент проверяет, какие кассеты включены (ON) в memory/_SKILL_STATUS.md
2. Он сопоставляет мою инструкцию с SKILL.md каждой кассеты со статусом ON
(или я могу назвать кассету явно, например «Работай в режиме trade: ...»)
3. Он применяет SKILL.md и WORKFLOW.md подходящей кассеты
Запланированные задачи выполняются независимо от того, какие кассеты включены — они находятся в AGENTS.md.
Веди меня шаг за шагом. Задавай по одному вопросу за раз.
Дожидайся моего ответа, прежде чем продолжать.
ШАГ 1 — Что я хочу, чтобы делала моя команда
Спроси меня: «Опишите, что вы хотите, чтобы ваша ИИ-команда делала для вас каждый день.
Не думайте о том, как — просто опишите результат, который вы хотите получить,
и работу, которую хотите видеть выполненной».
Помоги мне превратить мой ответ в список минимум из 5 конкретных,
повторяющихся задач. Задавай уточняющие вопросы, пока у нас не появятся
конкретные задачи с чётким расписанием (ежедневно, еженедельно, по запросу).
ШАГ 2 — Сопоставить задачи с агентами
Прочитай мой Документ по дизайну команды.
Сопоставь каждую задачу с наиболее подходящим агентом на основе его роли.
Покажи мне сопоставление: «Задача → Агент»
Спроси: «Это выглядит правильно? Что бы вы хотели изменить?»
ШАГ 3 — Назвать кассету (режим)
На основе задач предложи название кассеты — имя режима
(короткое, в нижнем регистре, через дефис: например, restaurant-ops, youtube, trade).
Это станет именем папки и новой строкой в memory/_SKILL_STATUS.md.
Попроси меня подтвердить название или предложить другое.
ШАГ 4 — Выбрать AI-движок
Для каждого агента с назначенными задачами порекомендуй лучший движок:
- Claude: логика, анализ, код, юридические вопросы, финансы, крипто
- Gemini: сервисы Google (Sheets, Docs, Drive, Gmail, Calendar,
YouTube Studio, NotebookLM) — всё, что относится к экосистеме Google
- GPT-4o: продающие письма, аутрич, копирайтинг, естественный разговор
Объясни свою логику одним предложением на каждого агента.
Если все задачи хорошо решаются с Claude, подтверди, что дополнительные API-ключи не нужны.
Если нужен Gemini или GPT-4o, отметь это — ключ мы настроим в Шаге 7.
Попроси меня подтвердить, прежде чем продолжать.
ШАГ 5 — Сгенерировать SKILL.md
Сгенерируй файл навыка по такой структуре:
---
# SKILL.md — [название-кассеты]
Версия: 1.0
Последнее обновление: [сегодняшняя дата]
Главный агент: [имя агента]
AI-движок: [движок]
## Что делает эта кассета
[2–3 предложения: какую область охватывает, что производит]
## Когда использовать эту кассету
[1–2 предложения, описывающие, какие инструкции должны запускать
эту кассету — именно с этим агент сопоставляет ваши запросы]
## Навыки в этой кассете
[Список конкретных навыков — что агент умеет делать]
## Доступные инструменты
[Список инструментов, доступных в этой кассете: веб-поиск, чтение/запись файлов,
отчёты в Discord, вызовы API, сервисы Google и т.д.]
## Правила работы
1. Перед выполнением убедиться, что строка этой кассеты в memory/_SKILL_STATUS.md
имеет статус ON. Если OFF — полностью пропустить, отчёт в Discord не нужен.
2. [Ключевое правило, специфичное для этой области]
3. [Ключевое правило, специфичное для этой области]
4. Отчитываться в Discord обо всех выполненных задачах перед завершением сессии.
5. Никогда не действовать за пределами области этой кассеты без одобрения командира.
6. Сохранять все результаты в skills/[название-кассеты]/outputs/
## Что эта кассета НЕ обрабатывает
[Конкретные границы — что выходит за рамки этой кассеты]
## Формат вывода
[Что производит агент: отчёты, файлы, сообщения в Discord и т.д.]
---
Покажи файл полностью. Спроси, нужны ли корректировки.
ШАГ 6 — Сгенерировать WORKFLOW.md
Сгенерируй файл рабочего процесса по такой структуре:
---
# WORKFLOW.md — [название-кассеты]
Версия: 1.0
Последнее обновление: [сегодняшняя дата]
## Перед началом
1. Убедиться, что строка этой кассеты в memory/_SKILL_STATUS.md имеет статус ON
2. Загрузить SKILL.md из этой же папки
## Процедуры задач
### [Название задачи 1] — [Расписание]
Триггер: [что запускает эту задачу]
Шаги:
1. [Конкретное действие]
2. [Конкретное действие]
3. [Конкретное действие]
Вывод: [что производится]
Сохранить в: skills/[название-кассеты]/outputs/
При ошибке: [что делать, если что-то не удалось]
### [Название задачи 2] — [Расписание]
[Та же структура]
[Продолжить для всех задач]
## Завершение сессии (каждая сессия — обязательно)
Отправить отчёт о завершении сессии в Discord:
«✅ Сессия [название-кассеты] завершена.
Выполненные задачи: [список]
Результаты: skills/[название-кассеты]/outputs/
Проблемы: [ошибки, если были]»
## Обработка ошибок
Если какой-либо шаг не выполняется:
1. Зафиксировать точную ошибку
2. Продолжить выполнение оставшихся задач, если это возможно
3. Включить все ошибки в отчёт в конце сессии в Discord
4. Не повторять деструктивные операции без одобрения командира
## Запланированные задачи
Они выполняются по собственному расписанию независимо от других кассет —
не зависят от того, включены (ON) или выключены (OFF) другие кассеты.
---
Покажи файл полностью. Спроси, нужны ли корректировки.
ШАГ 7 — Настройка API-ключа (если нужно)
Только если в Шаге 4 был рекомендован Gemini или GPT-4o:
ДЛЯ GEMINI:
«Gemini лучше всего подходит для интеграции с сервисами Google.
Чтобы получить API-ключ:»
1. Перейдите на https://console.cloud.google.com/
2. Войдите в свой аккаунт Google
3. Если появится предложение, вам может быть доступно $300 бесплатных кредитов —
нажмите «Попробовать бесплатно», если оно появится
4. В строке поиска вверху введите «Gemini API» и выберите его
5. Нажмите «Включить», если ещё не включено
6. Перейдите в «Credentials» в левом меню → «Create Credentials»
→ «API key»
7. Скопируйте ключ
8. Добавьте в файл .env:
GOOGLE_API_KEY=ваш-ключ-здесь
Подтвердите: «API-ключ Gemini добавлен».
ДЛЯ GPT-4o (OpenAI):
1. Перейдите на platform.openai.com
2. Войдите или создайте аккаунт
3. Нажмите на профиль → «API keys» → «Create new secret key»
4. Назовите его «balia-os»
5. Скопируйте ключ (начинается с sk-)
6. Добавьте в файл .env:
OPENAI_API_KEY=ваш-ключ-здесь
Подтвердите: «API-ключ OpenAI добавлен».
Если используется только Claude: полностью пропустите этот шаг.
ШАГ 8 — Создать структуру папок кассеты
Направь меня создать папки в терминале VS Code:
Windows:
cd $env:USERPROFILE\.opengoat\skills
mkdir [название-режима]
mkdir [название-режима]\outputs
Mac:
mkdir -p ~/.opengoat/skills/[название-режима]/outputs
Затем направь меня сохранить эти файлы в папку кассеты:
- SKILL.md
- WORKFLOW.md
Затем направь меня добавить эту кассету в memory/_SKILL_STATUS.md:
«Откройте memory/_SKILL_STATUS.md в VS Code. Если файла ещё нет,
создайте его с таким заголовком:
# СТАТУС КАССЕТ СКИЛЛОВ
# ON/OFF управляется только в этом файле.
| Название кассеты | STATUS | Описание |
|---|---|---|
Добавьте новую строку: | [название-режима] | ON | [однострочное описание] |
Сохраните».
После того как все файлы определены, сгенерируй полный Python-скрипт настройки,
который создаст всё автоматически. Скрипт должен:
- Работать и на Windows, и на Mac (используй os.path.expanduser для ~)
- Создавать все папки с помощью os.makedirs(exist_ok=True)
- Записывать SKILL.md и WORKFLOW.md в кодировке UTF-8
- Добавлять (или обновлять) строку этой кассеты в memory/_SKILL_STATUS.md,
создавая файл с заголовком выше, если он ещё не существует
- Выводить ✅ [имя файла] для каждого созданного файла
- В конце выводить «Настройка завершена.»
Скрипт уже содержит все пути и содержимое файлов —
пользователю остаётся только запустить его в терминале VS Code:
python setup_cassette.py
Скажи мне: «Скопируйте этот скрипт, сохраните его как setup_cassette.py
в папке .opengoat, затем запустите в терминале VS Code.
Вы увидите ✅ для каждого созданного файла».
ШАГ 9 — Протестировать кассету
Направь меня отправить тестовую команду, явно назвав кассету:
openclaw agent --agent ceo "Работай в режиме [название-режима]: пожалуйста, выполни следующее:
1. Подтверди, что memory/_SKILL_STATUS.md показывает [название-режима] как ON.
2. Загрузи SKILL.md и WORKFLOW.md этой кассеты.
3. Подтверди, что понимаешь свои задачи в этой кассете.
4. Опубликуй отчёт о готовности в своём канале Discord."
Спроси меня: «Что ответил агент?
Видели ли вы отчёт о готовности в Discord?»
Если да: установка кассеты подтверждена.
Если нет: помоги мне устранить проблему.
ФИНАЛЬНЫЙ ВЫВОД
После подтверждения покажи это резюме:
---
КАССЕТА УСТАНОВЛЕНА
Название кассеты: [название-режима]
Главный агент: [имя агента]
Созданные файлы:
memory/_SKILL_STATUS.md ✅ (добавлена строка: [название-режима] — ON)
skills/[название-режима]/SKILL.md ✅
skills/[название-режима]/WORKFLOW.md ✅
skills/[название-режима]/outputs/ ✅
AI-движок: [движок]
Дополнительные API-ключи: [добавлены / не нужны]
Статус: ON — агент подтвердил готовность
---
Готовы к Разделу 7.
Начинай. Задай мне первый вопрос.Шаг 2 — Запустите скрипт настройки
Когда AI-консьерж закончит генерировать файлы вашей кассеты, он также сгенерирует Python-скрипт настройки со всеми путями и содержимым, уже заполненными.
Что делать:
- Скопируйте Python-скрипт, который сгенерировал ИИ
- Откройте терминал VS Code (
Ctrl+``на Windows /Cmd+``на Mac) - Создайте новый файл с именем
setup_cassette.pyв папке .opengoat - Вставьте скрипт и сохраните
- Запустите его:
python setup_cassette.py
Вы увидите ✅ для каждого созданного файла. Вот и всё — никакого ручного создания файлов, никакой путаницы с путями.
Что скрипт делает автоматически:
- Создаёт всю структуру папок
- Записывает SKILL.md и WORKFLOW.md с правильным содержимым
- Создаёт папку outputs/
- Добавляет строку этой кассеты в memory/_SKILL_STATUS.md (STATUS: ON)
Если вы видите ❌ в выводе, скопируйте ошибку и попросите AI-консьержа исправить её.
Использование кассеты
Все кассеты по умолчанию включены (ON) — здесь нет «переключения». Просто скажите любому агенту, какую кассету использовать, в начале своей инструкции:
openclaw agent --agent ceo "Работай в режиме trade: дай мне сегодняшнюю сводку."Агент сопоставляет «режим trade» с включёнными (ON) кассетами в memory/_SKILL_STATUS.md, загружает SKILL.md и WORKFLOW.md этой кассеты и применяет их к вашему запросу. Вы также можете описать задачу, не называя кассету — агент автоматически сопоставит её с SKILL.md каждой включённой кассеты.
Приостановка кассеты: Откройте memory/_SKILL_STATUS.md и установите STATUS этой кассеты в OFF. Агент будет пропускать её, пока вы снова не включите её (ON).
Добавление дополнительных кассет позже
По мере роста вашего бизнеса добавляйте новые папки кассет:
skills/
├── youtube/
├── trade/
├── restaurant-ops/
└── legal-research/ ← добавьте в любой моментСоздавайте каждую новую кассету тем же способом: сгенерируйте SKILL.md и WORKFLOW.md через AI-консьержа, запустите скрипт настройки. Она автоматически добавляется в memory/_SKILL_STATUS.md со статусом ON — переключать ничего не нужно, просто скажите агенту использовать её.
Рынок скиллов BALIA — запуск в Q4 2026
Когда рынок откроется, станут доступны две вещи:
Покупка кассет — кассеты, разработанные BALIA (Crypto Trade, YouTube, E-Commerce, Polymarket BOT), а также кассеты сообщества, прошедшие проверку и одобрение. Устанавливайте их в папку кассет так же, как любой другой режим.
Продажа кассет — если вы создали кассету, которая работает, отправьте её. Каждая заявка проходит аудит безопасности и проверку эффективности. После одобрения она появляется на рынке и приносит вам доход каждый раз, когда кто-то её устанавливает.
Подробности в @BALIA_OS на X, когда рынок откроется.
Система кассет навыков — управление ВКЛ/ВЫКЛ
Ваши кассеты управляются одним файлом: memory/_SKILL_STATUS.md. Новые кассеты по умолчанию добавляются со статусом ON.
| Название кассеты | STATUS | Описание |
|---------------------|--------|-------------------------------------|
| marketing-outreach | ON | Рассылка в SNS / email / YouTube |
| ai-meeting-sales | ON | Встреча ИИ команды продаж (Leo) |
| ai-meeting-daily | ON | Ежедневное операционное совещание |
| research-market | ON | Автоматизация исследования рынка |Чтобы приостановить кассету: измените ON на OFF в этом файле. Вот и всё.
Когда кассета включена (ON):
- Любой агент, чья задача ей соответствует, загружает эту кассету
- Выполняет задачу
- Сообщает в Discord:
"✅ [название-кассеты] выполнено успешно."
Когда кассета выключена (OFF):
- Агент пропускает её, даже если задача формально подошла бы
- Всё равно сообщает в Discord:
"⏭️ [название-кассеты] пропущено — STATUS: OFF"
Каждое выполнение фиксируется, независимо от того, выполнялось оно или нет. Вы всегда знаете, что произошло.
Если две кассеты конфликтуют
Поскольку все кассеты по умолчанию включены (ON), возможна ситуация, когда две из них пересекаются — например, две кассеты публикуют сообщения в один и тот же канал Discord, или обе пытаются использовать одного и того же агента для конфликтующих задач одновременно.
На данный момент автоматического обнаружения конфликтов нет. Если вы заметили, что две кассеты мешают друг другу, откройте memory/_SKILL_STATUS.md и самостоятельно установите одну из них в OFF. Это немедленно устраняет конфликт — агент пропускает любую кассету со статусом OFF.
Автоматическое обнаружение конфликтов силами Security Guardian, с предложенным решением, запланировано для одного из будущих обновлений.
Планирование кассет — запуск по расписанию
Некоторые кассеты предназначены для запуска в фиксированное время — ежедневные совещания, утренние отчёты, еженедельные сводки. Зарегистрируйте их в планировщике вашей ОС.
Планировщик запускает кассету. Агент проверяет _SKILL_STATUS.md. Если ON → выполняет + отчёт в Discord. Если OFF → пропускает + отчёт в Discord.
⚠️ Два правила для запланированных кассет
- Всегда называйте кассету/режим прямо в самой команде регистрации — у планировщика нет другого способа узнать, какую кассету запускать, поэтому действие-триггер должно явно её указывать (см.
[cassette-name]в примерах ниже). - Не регистрируйте две запланированные кассеты на один и тот же временной слот. Одновременный запуск двух кассет может привести к тому, что они начнут конкурировать за одного и того же агента или один и тот же канал Discord. Разнесите их минимум на несколько минут.
Windows — Планировщик заданий
- Откройте Планировщик заданий → Создать простую задачу
- Имя:
BALIA_[НазваниеКассеты] - Триггер: Ежедневно → укажите время (например, 21:00)
- Действие: Запустить программу
- Программа:
openclaw - Аргументы:
agent --agent [agentid] "Работай в режиме [cassette-name]: выполни сегодняшнюю запланированную задачу." - Рабочая папка:
C:\Users\%USERNAME%\.opengoat
- Программа:
- Готово
Чтобы приостановить запланированную кассету, не трогая планировщик: → Установите STATUS в OFF в _SKILL_STATUS.md. Планировщик по-прежнему срабатывает, агент проверяет STATUS, пропускает задачу и сообщает об этом. Изменения в планировщике не требуются.
Mac — launchd
Создайте ~/Library/LaunchAgents/com.balia.[cassette-name].plist:
xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.balia.[cassette-name]</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/openclaw</string>
<string>agent</string>
<string>--agent</string>
<string>[agentid]</string>
<string>Работай в режиме [cassette-name]: выполни сегодняшнюю запланированную задачу.</string>
</array>
<key>StartCalendarInterval</key>
<dict>
<key>Hour</key>
<integer>21</integer>
<key>Minute</key>
<integer>0</integer>
</dict>
</dict>
</plist>Загрузите:
launchctl load ~/Library/LaunchAgents/com.balia.[cassette-name].plistЧтобы приостановить: установите STATUS в OFF в _SKILL_STATUS.md. Поведение такое же, как в Windows.