[{"data":1,"prerenderedAt":656},["ShallowReactive",2],{"docs-navigation":3,"docs-page:\u002Fdocs\u002Fguide\u002Fservices\u002Fplugin-manager":293,"docs-surround:\u002Fdocs\u002Fguide\u002Fservices\u002Fplugin-manager":651},[4],{"title":5,"path":6,"stem":7,"children":8,"page":33},"Docs","\u002Fdocs","docs",[9,182,274],{"title":10,"icon":11,"path":12,"stem":13,"children":14},"Документация","i-lucide-book-open","\u002Fdocs\u002Fguide","docs\u002F1.guide\u002Findex",[15,17,34,65,121,131,152],{"title":16,"path":12,"stem":13},"Обзор",{"title":18,"icon":19,"path":20,"stem":21,"children":22,"page":33},"Основы","i-lucide-compass","\u002Fdocs\u002Fguide\u002Fbasics","docs\u002F1.guide\u002F1.basics",[23,28],{"title":24,"path":25,"stem":26,"order":27},"Основные понятия и модель","\u002Fdocs\u002Fguide\u002Fbasics\u002Fconcepts","docs\u002F1.guide\u002F1.basics\u002F1.concepts",2,{"title":29,"path":30,"stem":31,"order":32},"Быстрый старт","\u002Fdocs\u002Fguide\u002Fbasics\u002Fgetting-started","docs\u002F1.guide\u002F1.basics\u002F2.getting-started",3,false,{"title":35,"icon":36,"path":37,"stem":38,"children":39,"page":33},"Установка и обслуживание","i-lucide-server-cog","\u002Fdocs\u002Fguide\u002Foperations","docs\u002F1.guide\u002F2.operations",[40,45,50,55,60],{"title":41,"path":42,"stem":43,"order":44},"Архитектура","\u002Fdocs\u002Fguide\u002Foperations\u002Farchitecture","docs\u002F1.guide\u002F2.operations\u002F1.architecture",6,{"title":46,"path":47,"stem":48,"order":49},"Развёртывание и эксплуатация","\u002Fdocs\u002Fguide\u002Foperations\u002Fdeployment","docs\u002F1.guide\u002F2.operations\u002F2.deployment",7,{"title":51,"path":52,"stem":53,"order":54},"Безопасность и контроль данных","\u002Fdocs\u002Fguide\u002Foperations\u002Fsecurity","docs\u002F1.guide\u002F2.operations\u002F3.security",8,{"title":56,"path":57,"stem":58,"order":59},"Наблюдаемость и разбор инцидентов","\u002Fdocs\u002Fguide\u002Foperations\u002Fobservability","docs\u002F1.guide\u002F2.operations\u002F4.observability",9,{"title":61,"path":62,"stem":63,"order":64},"Администрирование","\u002Fdocs\u002Fguide\u002Foperations\u002Fadministration","docs\u002F1.guide\u002F2.operations\u002F5.administration",10,{"title":66,"icon":67,"path":68,"stem":69,"children":70},"Сервисы","i-lucide-boxes","\u002Fdocs\u002Fguide\u002Fservices","docs\u002F1.guide\u002F3.services\u002Findex",[71,73,77,81,85,89,93,97,101,105,109,113,117],{"title":72,"path":68,"stem":69},"Каталог сервисов",{"title":74,"path":75,"stem":76},"api","\u002Fdocs\u002Fguide\u002Fservices\u002Fapi","docs\u002F1.guide\u002F3.services\u002F01.api",{"title":78,"path":79,"stem":80},"auth-service","\u002Fdocs\u002Fguide\u002Fservices\u002Fauth-service","docs\u002F1.guide\u002F3.services\u002F02.auth-service",{"title":82,"path":83,"stem":84},"runtime-engine","\u002Fdocs\u002Fguide\u002Fservices\u002Fruntime-engine","docs\u002F1.guide\u002F3.services\u002F03.runtime-engine",{"title":86,"path":87,"stem":88},"runtime-control-plane","\u002Fdocs\u002Fguide\u002Fservices\u002Fruntime-control-plane","docs\u002F1.guide\u002F3.services\u002F04.runtime-control-plane",{"title":90,"path":91,"stem":92},"executor","\u002Fdocs\u002Fguide\u002Fservices\u002Fexecutor","docs\u002F1.guide\u002F3.services\u002F05.executor",{"title":94,"path":95,"stem":96},"secret-manager","\u002Fdocs\u002Fguide\u002Fservices\u002Fsecret-manager","docs\u002F1.guide\u002F3.services\u002F06.secret-manager",{"title":98,"path":99,"stem":100},"plugin-manager","\u002Fdocs\u002Fguide\u002Fservices\u002Fplugin-manager","docs\u002F1.guide\u002F3.services\u002F07.plugin-manager",{"title":102,"path":103,"stem":104},"scheduler","\u002Fdocs\u002Fguide\u002Fservices\u002Fscheduler","docs\u002F1.guide\u002F3.services\u002F08.scheduler",{"title":106,"path":107,"stem":108},"preset-service","\u002Fdocs\u002Fguide\u002Fservices\u002Fpreset-service","docs\u002F1.guide\u002F3.services\u002F09.preset-service",{"title":110,"path":111,"stem":112},"file-service","\u002Fdocs\u002Fguide\u002Fservices\u002Ffile-service","docs\u002F1.guide\u002F3.services\u002F10.file-service",{"title":114,"path":115,"stem":116},"flow-agent","\u002Fdocs\u002Fguide\u002Fservices\u002Fflow-agent","docs\u002F1.guide\u002F3.services\u002F11.flow-agent",{"title":118,"path":119,"stem":120},"search-service","\u002Fdocs\u002Fguide\u002Fservices\u002Fsearch-service","docs\u002F1.guide\u002F3.services\u002F12.search-service",{"title":122,"icon":123,"path":124,"stem":125,"children":126,"page":33},"Справочник","i-lucide-list","\u002Fdocs\u002Fguide\u002Freference","docs\u002F1.guide\u002F4.reference",[127],{"title":128,"path":129,"stem":130},"Конфигурация, CLI и коды ошибок","\u002Fdocs\u002Fguide\u002Freference\u002Fconfig","docs\u002F1.guide\u002F4.reference\u002F1.config",{"title":132,"icon":133,"path":134,"stem":135,"children":136,"page":33},"О продукте","i-lucide-target","\u002Fdocs\u002Fguide\u002Fproduct","docs\u002F1.guide\u002F5.product",[137,142,147],{"title":138,"path":139,"stem":140,"order":141},"Оценка и выбор","\u002Fdocs\u002Fguide\u002Fproduct\u002Fevaluation","docs\u002F1.guide\u002F5.product\u002F1.evaluation",13,{"title":143,"path":144,"stem":145,"order":146},"О проекте и поддержка","\u002Fdocs\u002Fguide\u002Fproduct\u002Fabout","docs\u002F1.guide\u002F5.product\u002F2.about",14,{"title":148,"path":149,"stem":150,"order":151},"Roadmap","\u002Fdocs\u002Fguide\u002Fproduct\u002Froadmap","docs\u002F1.guide\u002F5.product\u002F3.roadmap",15,{"title":153,"icon":154,"path":155,"stem":156,"children":157,"page":33},"Cookbook","i-lucide-chef-hat","\u002Fdocs\u002Fguide\u002Fcookbook","docs\u002F1.guide\u002F6.cookbook",[158,162,166,170,174,178],{"title":159,"path":160,"stem":161},"Развернуть Conveyor","\u002Fdocs\u002Fguide\u002Fcookbook\u002Fdeploy","docs\u002F1.guide\u002F6.cookbook\u002F1.deploy",{"title":163,"path":164,"stem":165},"Создать рабочее пространство","\u002Fdocs\u002Fguide\u002Fcookbook\u002Fcreate-workspace","docs\u002F1.guide\u002F6.cookbook\u002F2.create-workspace",{"title":167,"path":168,"stem":169},"Создать процесс","\u002Fdocs\u002Fguide\u002Fcookbook\u002Fcreate-process","docs\u002F1.guide\u002F6.cookbook\u002F3.create-process",{"title":171,"path":172,"stem":173},"Управление плагинами","\u002Fdocs\u002Fguide\u002Fcookbook\u002Fmanage-plugins","docs\u002F1.guide\u002F6.cookbook\u002F4.manage-plugins",{"title":175,"path":176,"stem":177},"Процесс как MCP","\u002Fdocs\u002Fguide\u002Fcookbook\u002Fpublish-process-mcp","docs\u002F1.guide\u002F6.cookbook\u002F5.publish-process-mcp",{"title":179,"path":180,"stem":181},"Сгенерировать процесс генераатором","\u002Fdocs\u002Fguide\u002Fcookbook\u002Fflow-generator","docs\u002F1.guide\u002F6.cookbook\u002F6.flow-generator",{"title":183,"icon":184,"path":185,"stem":186,"children":187},"Работа с Conveyor","i-lucide-workflow","\u002Fdocs\u002Fusage","docs\u002F2.usage\u002Findex",[188,189,193,197,201,266,270],{"title":183,"path":185,"stem":186},{"title":190,"path":191,"stem":192},"Регистрация и аутентификация","\u002Fdocs\u002Fusage\u002Fauth","docs\u002F2.usage\u002F1.auth",{"title":194,"path":195,"stem":196},"Возможности и ограничения","\u002Fdocs\u002Fusage\u002Fcapabilities","docs\u002F2.usage\u002F2.capabilities",{"title":198,"path":199,"stem":200},"Концепция распределённого исполнения","\u002Fdocs\u002Fusage\u002Fdistributed-execution","docs\u002F2.usage\u002F3.distributed-execution",{"title":202,"icon":203,"path":204,"stem":205,"children":206},"Интерфейс редактора","i-lucide-layout-dashboard","\u002Fdocs\u002Fusage\u002Feditor","docs\u002F2.usage\u002F4.editor\u002Findex",[207,208,212,230,234,238,242,246,250,254,258,262],{"title":202,"path":204,"stem":205},{"title":209,"path":210,"stem":211},"Настройки интерфейса","\u002Fdocs\u002Fusage\u002Feditor\u002Fsettings","docs\u002F2.usage\u002F4.editor\u002F01.settings",{"title":213,"icon":184,"path":214,"stem":215,"children":216},"Процессы","\u002Fdocs\u002Fusage\u002Feditor\u002Fprocesses","docs\u002F2.usage\u002F4.editor\u002F02.processes\u002Findex",[217,218,222,226],{"title":213,"path":214,"stem":215},{"title":219,"path":220,"stem":221},"Настройки","\u002Fdocs\u002Fusage\u002Feditor\u002Fprocesses\u002Fsettings","docs\u002F2.usage\u002F4.editor\u002F02.processes\u002F1.settings",{"title":223,"path":224,"stem":225},"История Запусков и логи","\u002Fdocs\u002Fusage\u002Feditor\u002Fprocesses\u002Fhistory-logs","docs\u002F2.usage\u002F4.editor\u002F02.processes\u002F2.history-logs",{"title":227,"path":228,"stem":229},"Сохранение, запуск и отладка","\u002Fdocs\u002Fusage\u002Feditor\u002Fprocesses\u002Fsave-run-debug","docs\u002F2.usage\u002F4.editor\u002F02.processes\u002F3.save-run-debug",{"title":231,"path":232,"stem":233},"Библиотека","\u002Fdocs\u002Fusage\u002Feditor\u002Flibrary","docs\u002F2.usage\u002F4.editor\u002F03.library",{"title":235,"path":236,"stem":237},"Воркспейсы","\u002Fdocs\u002Fusage\u002Feditor\u002Fworkspaces","docs\u002F2.usage\u002F4.editor\u002F04.workspaces",{"title":239,"path":240,"stem":241},"Секреты","\u002Fdocs\u002Fusage\u002Feditor\u002Fsecrets","docs\u002F2.usage\u002F4.editor\u002F05.secrets",{"title":243,"path":244,"stem":245},"Плагины","\u002Fdocs\u002Fusage\u002Feditor\u002Fplugins","docs\u002F2.usage\u002F4.editor\u002F06.plugins",{"title":247,"path":248,"stem":249},"Шаблоны","\u002Fdocs\u002Fusage\u002Feditor\u002Ftemplates","docs\u002F2.usage\u002F4.editor\u002F07.templates",{"title":251,"path":252,"stem":253},"Консоль логов","\u002Fdocs\u002Fusage\u002Feditor\u002Flog-console","docs\u002F2.usage\u002F4.editor\u002F08.log-console",{"title":255,"path":256,"stem":257},"Подтверждения шагов","\u002Fdocs\u002Fusage\u002Feditor\u002Fstep-confirmations","docs\u002F2.usage\u002F4.editor\u002F09.step-confirmations",{"title":259,"path":260,"stem":261},"Внешние инструменты","\u002Fdocs\u002Fusage\u002Feditor\u002Fexternal-tools","docs\u002F2.usage\u002F4.editor\u002F10.external-tools",{"title":263,"path":264,"stem":265},"Работа с аккаунтом","\u002Fdocs\u002Fusage\u002Feditor\u002Faccount","docs\u002F2.usage\u002F4.editor\u002F11.account",{"title":267,"path":268,"stem":269},"Работа с API","\u002Fdocs\u002Fusage\u002Fapi","docs\u002F2.usage\u002F5.api",{"title":271,"path":272,"stem":273},"MCP: платформа как сервер","\u002Fdocs\u002Fusage\u002Fmcp","docs\u002F2.usage\u002F6.mcp",{"title":243,"icon":275,"path":276,"stem":277,"children":278},"i-lucide-blocks","\u002Fdocs\u002Fplugins","docs\u002F3.plugins\u002Findex",[279,281,285,289],{"title":280,"path":276,"stem":277},"Плагины и интеграции",{"title":282,"path":283,"stem":284},"Разработка плагина (SDK)","\u002Fdocs\u002Fplugins\u002Fdevelop","docs\u002F3.plugins\u002F1.develop",{"title":286,"path":287,"stem":288},"Подключение и интеграции","\u002Fdocs\u002Fplugins\u002Fconnect","docs\u002F3.plugins\u002F2.connect",{"title":290,"path":291,"stem":292},"API и MCP","\u002Fdocs\u002Fplugins\u002Fapi","docs\u002F3.plugins\u002F3.api",{"id":294,"title":98,"body":295,"description":645,"extension":646,"meta":647,"navigation":648,"path":99,"seo":649,"stem":100,"__hash__":650},"docs\u002Fdocs\u002F1.guide\u002F3.services\u002F07.plugin-manager.md",{"type":296,"value":297,"toc":636},"minimark",[298,314,323,328,331,335,355,359,370,374,382,386,617,621],[299,300,301,304,305,309,310,313],"p",{},[302,303,98],"strong",{}," управляет жизненным циклом плагинов: публикация, ведение каталога в Postgres, health-проверки и выдача манифестов исполнителям. Слушает TCP ",[306,307,308],"code",{},":3000"," и health ",[306,311,312],{},":3001",".",[315,316,317],"blockquote",{},[299,318,319,322],{},[302,320,321],{},"На какие вопросы отвечает раздел:"," Кто публикует и проверяет плагины? Как ограничить публикацию? Что обязательно для плагинов?",[324,325,327],"h2",{"id":326},"цель","Цель",[299,329,330],{},"Дать платформе управляемый каталог плагинов: регистрировать, проверять здоровье и выдавать манифесты узлам\u002Fисполнителям.",[324,332,334],{"id":333},"задачи","Задачи",[336,337,338,342,345,352],"ul",{},[339,340,341],"li",{},"приём публикаций и reconcile каталога при старте;",[339,343,344],{},"периодические health-проверки плагинов;",[339,346,347,348,351],{},"выдача манифестов (",[306,349,350],{},"manifest_request",") исполнителям;",[339,353,354],{},"запись каталога плагинов в Postgres (читают его engine\u002FCP).",[324,356,358],{"id":357},"требования","Требования",[336,360,361,364,367],{},[339,362,363],{},"PostgreSQL (каталог);",[339,365,366],{},"сетевой доступ к контейнерам плагинов;",[339,368,369],{},"токен ingress для приёма публикаций.",[324,371,373],{"id":372},"ограничения","Ограничения",[336,375,376,379],{},[339,377,378],{},"обязателен только если используются плагины;",[339,380,381],{},"зона сервиса: каталог, health и выдача манифестов. Исполнение и оркестрация остаются в runtime-engine и executor.",[324,383,385],{"id":384},"настройки-и-переменные-окружения","Настройки и переменные окружения",[387,388,389,408],"table",{},[390,391,392],"thead",{},[393,394,395,399,402,405],"tr",{},[396,397,398],"th",{},"Переменная",[396,400,401],{},"Зачем",[396,403,404],{},"На что влияет",[396,406,407],{},"По умолчанию",[409,410,411,430,448,464,482,500,518,536,566,584,602],"tbody",{},[393,412,413,419,422,425],{},[414,415,416],"td",{},[306,417,418],{},"PLUGIN_MANAGER_TCP_PORT",[414,420,421],{},"Порт TCP",[414,423,424],{},"Основной канал сервиса",[414,426,427],{},[306,428,429],{},"3000",[393,431,432,437,440,443],{},[414,433,434],{},[306,435,436],{},"PLUGIN_MANAGER_HEALTH_PORT",[414,438,439],{},"Порт health",[414,441,442],{},"Проверки готовности",[414,444,445],{},[306,446,447],{},"3001",[393,449,450,455,458,461],{},[414,451,452],{},[306,453,454],{},"PLUGIN_MANAGER_INGRESS_TOKEN",[414,456,457],{},"Токен публикации",[414,459,460],{},"Кто может публиковать плагины",[414,462,463],{},"—",[393,465,466,471,474,477],{},[414,467,468],{},[306,469,470],{},"PLUGIN_MANAGER_ALLOW_CIDRS",[414,472,473],{},"Allowlist CIDR",[414,475,476],{},"Источники публикаций",[414,478,479],{},[306,480,481],{},"0.0.0.0\u002F0",[393,483,484,489,492,495],{},[414,485,486],{},[306,487,488],{},"PLUGIN_MANAGER_EXECUTOR_PULL_TIMEOUT_MS",[414,490,491],{},"Таймаут выдачи манифеста",[414,493,494],{},"Ожидание исполнителем манифеста",[414,496,497],{},[306,498,499],{},"15000",[393,501,502,507,510,513],{},[414,503,504],{},[306,505,506],{},"PLUGIN_MANAGER_STARTUP_RECONCILE",[414,508,509],{},"Reconcile при старте",[414,511,512],{},"Синхронизация каталога на старте",[414,514,515],{},[306,516,517],{},"true",[393,519,520,525,528,531],{},[414,521,522],{},[306,523,524],{},"PLUGIN_MANAGER_STARTUP_PULL_TIMEOUT_MS",[414,526,527],{},"Таймаут старта",[414,529,530],{},"Ожидание плагинов на старте",[414,532,533],{},[306,534,535],{},"30000",[393,537,538,543,546,557],{},[414,539,540],{},[306,541,542],{},"PLUGIN_MANAGER_PLUGIN_HEALTH_INTERVAL_MS",[414,544,545],{},"Интервал periodic sweep",[414,547,548,549,552,553,556],{},"TCP-опрос pull-endpoint плагинов; ",[306,550,551],{},"0"," или ",[306,554,555],{},"\u003C15000"," — выключено",[414,558,559,561,562],{},[306,560,551],{}," (on-prem); в demo Compose — см. ",[563,564,243],"a",{"href":565},"\u002Fdocs\u002Fplugins\u002Fconnect#demo-compose-%D1%81-%D0%BF%D0%BB%D0%B0%D0%B3%D0%B8%D0%BD%D0%B0%D0%BC%D0%B8",[393,567,568,573,576,579],{},[414,569,570],{},[306,571,572],{},"PLUGIN_MANAGER_PLUGIN_HEALTH_JITTER_RATIO",[414,574,575],{},"Джиттер проверок",[414,577,578],{},"Задержка перед каждым sweep (антишторм)",[414,580,581],{},[306,582,583],{},"0.2",[393,585,586,591,594,597],{},[414,587,588],{},[306,589,590],{},"PLUGIN_MANAGER_FILE_SERVICE_URL",[414,592,593],{},"Адрес file-service",[414,595,596],{},"Файлы плагинов",[414,598,599],{},[306,600,601],{},"http:\u002F\u002Ffile-service:3000",[393,603,604,609,612,615],{},[414,605,606],{},[306,607,608],{},"DATABASE_URL",[414,610,611],{},"Подключение к Postgres",[414,613,614],{},"Хранение каталога",[414,616,463],{},[324,618,620],{"id":619},"дальше","Дальше",[336,622,623,631],{},[339,624,625,627,628],{},[563,626,243],{"href":244}," · ",[563,629,630],{"href":276},"Разработка плагинов",[339,632,633,313],{},[563,634,635],{"href":172},"Управление плагинами (Cookbook)",{"title":637,"searchDepth":27,"depth":27,"links":638},"",[639,640,641,642,643,644],{"id":326,"depth":27,"text":327},{"id":333,"depth":27,"text":334},{"id":357,"depth":27,"text":358},{"id":372,"depth":27,"text":373},{"id":384,"depth":27,"text":385},{"id":619,"depth":27,"text":620},"Жизненный цикл плагинов Conveyor — публикация, каталог, health-проверки и выдача манифестов исполнителям.","md",{},true,{"title":98,"description":645},"FUPJ3EpbVF5mqYmweJLZAlPNsyz5kjBlxIqu865uhzo",[652,654],{"title":94,"path":95,"stem":96,"description":653,"children":-1},"Хранилище секретов Conveyor — метаданные в Postgres, шифрование значений через Vault Transit, резолв в рантайме.",{"title":102,"path":103,"stem":104,"description":655,"children":-1},"Триггеры Conveyor — cron-расписания и webhook-запуски процессов через очереди BullMQ.",1782081969493]