# Плагіни та навички ## Плагіни ### Що таке плагіни? Плагіни, це TypeScript-модулі, що розширюють функціональність Neotask під час виконання. Вони можуть додавати нові канали обміну повідомленнями, інструменти агентів, RPC-методи, CLI-команди, фонові служби та навички. ### Офіційні плагіни **Канали обміну повідомленнями:** - Microsoft Teams, Matrix, Nostr, Zalo, Feishu/Lark, LINE, Nextcloud Talk, Mattermost, Tlon, Twitch **Функції:** - **Голосові дзвінки**, Підтримка SIP-телефонії для вхідних/вихідних голосових дзвінків - **Пам'ять (LanceDB)**, Довготривала пам'ять з векторним пошуком за схожістю - **MCP Native**, Інтеграція сервера Model Context Protocol для з'єднання зовнішніх інструментів **Провайдери аутентифікації:** - Google Antigravity OAuth, Gemini CLI OAuth, Qwen OAuth, Minimax OAuth, VS Code Copilot Proxy ### Можливості плагінів Плагіни можуть реєструвати: - **RPC-методи**, Власні методи WebSocket для клієнтів - **HTTP-обробники**, Власні HTTP-кінцеві точки на Gateway - **Інструменти агентів**, Нові інструменти з типізованими схемами, які можуть викликати агенти - **CLI-команди**, Додаткові команди командного рядка - **Фонові служби**, Тривалі процеси, керовані Gateway - **Навички**, Директорії навичок, що постачаються разом із плагіном - **Команди автовідповіді**, Команди, що виконуються без участі AI-агента ### Безпека плагінів Neotask перевіряє плагіни на кількох рівнях, перш ніж вони запустяться: - **Підписані й перевірені.** Пакети в публічному каталозі Construct публікує Neotask; перед випуском вони автоматично перевіряються й підписуються ключем випусків Neotask. Перед встановленням Neotask звіряє підпис із ключами, вбудованими в Neotask, і перевіряє хеш SHA-256 завантаженого файлу. - **Без скриптів встановлення.** Пакети Construct постачаються разом із залежностями, тож під час встановлення ніколи не запускаються менеджер пакетів чи скрипт встановлення. Якщо інше встановлення плагіна використовує npm, скрипти встановлення вимкнено. - **Перевірка під час встановлення.** Плагіни, що встановлюються не з Construct, перевіряються на небезпечний код, а критичні знахідки блокують встановлення. - **Ліцензія на випуск.** Плагін Construct завантажується, лише поки ваш обліковий запис має чинний дозвіл на цей випуск. Відкликані випуски не завантажуються. - **Схвалення дій агента.** Виклики інструментів агентом, зокрема інструментів, доданих плагінами, перевіряються за вашою політикою схвалення, а дії, що потребують вашої згоди, чекають на неї. Якщо агент хоче встановити програму не за вбудованими рецептами встановлення Neotask, він завжди показує точну команду й чекає вашого схвалення. - **Необов'язкова пісочниця.** Інструменти агента можна запускати в ізольованому контейнері Docker, а не безпосередньо на вашому комп'ютері. Пісочницю типово вимкнено; як її ввімкнути, див. [Безпека](security.md). Нативні плагіни працюють усередині процесу Gateway, тож плагін, встановлений не з Construct,, це код, який ви самі вирішуєте запустити. Вкажіть у `plugins.allow`, які плагіни можна завантажувати. --- ## Навички ### Що таке навички? Навички, це модульні можливості, що навчають агентів новим робочим процесам. Кожна навичка, це markdown-файл (`SKILL.md`) з інструкціями, що вставляються в контекст агента при релевантних запитах. ### Розташування навичок (за пріоритетом) 1. **Навички простору роботи**, `/skills/` (найвищий пріоритет) 2. **Керовані навички**, `~/.neotask/skills/` 3. **Вбудовані навички**, Постачаються разом з Neotask 4. **Навички плагінів**, Навички, упаковані з встановленими плагінами 5. **Додаткові директорії**, Додатково налаштовані шляхи (найнижчий пріоритет) Коли кілька навичок мають однакову назву, перемагає місце розташування з найвищим пріоритетом. ### Функції навичок - **Викликаються користувачем**, Запускайте навички безпосередньо за допомогою слеш-команд (наприклад, `/docker-build`) - **Викликаються моделлю**, Навички, які агент може викликати самостійно при релевантних запитах - **Диспетчеризація команд**, Навички, що зіставляються з конкретними інструментами - **Блокування вимог**, Навички завантажуються лише при виконанні їхніх вимог (необхідні бінарні файли, ключі конфігурації, змінні середовища, плагіни) ### Створення навичок Створіть файл `SKILL.md` з YAML-метаданими, що визначають метадані та інструкції навички: **Поля метаданих:** - `name`, Ідентифікатор навички - `description`, Що робить навичка - `homepage`, Посилання на документацію - `user-invocable`, Чи можуть користувачі запускати її безпосередньо - `disable-model-invocation`, Заборона автономного виклику агентом - `command-dispatch`, Інструмент для диспетчеризації - `metadata.neotask.requires`, Передумови (bins, config, env, plugins) **Тіло:** Markdown-інструкції, що навчають агента використовувати навичку, включаючи приклади та рекомендації. ### Каталог навичок Переглядайте доступні навички в [каталозі навичок](/skills). ### Категорії навичок Навички охоплюють широкий спектр можливостей: | Категорія | Приклади | |----------|---------| | **Продуктивність** | Управління електронною поштою, календар, генерація документів | | **Розробка** | Операції з Git, CI/CD, Docker, перевірка коду | | **Комунікація** | Повідомлення, сповіщення, оголошення | | **Медіа** | Обробка зображень, редагування відео, транскрипція аудіо | | **AI та моделі** | Перемикання моделей, управління запитами, RAG | | **Розумний будинок** | Керування IoT-пристроями, тригери автоматизації | | **Утиліти** | Конвертація файлів, трансформація даних, веб-скрапінг |