You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
🔌 MCP-серверы плагина, оба транспорта - streamable-http и sse из mcp.json превращаются в сгенерированный connection eve mcp-<имя>--<server>, а заголовки ${VAR} подставляются в момент вызова из data/custom/plugins/<имя>.env, так что токен в сборку не попадает. stdio поднимается юнитом iva-mcp-<имя>-<server>.service, а перед ним стоит свой MCP proxy Ивы (services/mcp-proxy/, @modelcontextprotocol/sdk): агент ходит на 127.0.0.1:<порт>/mcp с bearer, токен лежит в data/plugin-data/<имя>/mcp-<server>.token с режимом 0600. Сервер видит только PATH, HOME, PLUGIN_ROOT, PLUGIN_DATA, свой env из mcp.json и <имя>.env - из окружения агента ему не достаётся ничего. Появился второй тумблер trusted: iva plugin trust | untrust, а add печатает процессы и спрашивает «Запускать эти процессы на этой машине? [y/N]» (--trust отвечает «да» сразу, запуск без терминала - «нет»). Порты выдаются от 8730, один раз и до удаления плагина. Проверено насквозь на настоящем stdio-сервере и настоящем клиенте из SDK, а не на заглушках.
🧩 Сервисы плагина - sh.iva/services/<svc>/service.json с {command,args,port} становится юнитом iva-plugin-<имя>-<svc>.service: env IVA_SERVICE_PORT, IVA_DATA_DIR, PLUGIN_ROOT и PLUGIN_DATA, рабочий каталог - папка сервиса, старт только при enabled и trusted. iva plugin update перезапускает юниты плагина, у которого поменялась начинка; iva update поднимает их сразу после переключения версии; iva doctor перечисляет юниты, показывает is-active и стучится GET /health в каждый MCP proxy. sh.iva/ теперь двух видов: eve Extension (sh.iva/package.json, собирается в версию) и сервисы (версию не пересобирают никогда).
🛒 Marketplace по умолчанию заработал: smixs/iva-plugins - список живёт на github.com/smixs/iva-plugins, в нём два плагина. trace - вьюер журнала: схема Ивы с подсвеченным путём хода, лента ходов, повтор хода на скоростях ×1, ×2 и ×4, плитки за сегодня, 7 и 14 дней; слушает только loopback, а iva trace open печатает готовую команду ssh-туннеля. hello - демо-плагин с кодом для авторов: один скилл, один тул. Ставится в три шага: iva plugin add trace, iva plugin trust trace, iva trace open. Проверено вживую по публичному списку: list --available, add trace с пином на sha, update, remove.
📖 Дока про плагины - docs/plugins.md (по-русски docs/ru/plugins.md): что такое плагин, как поставить (папка, owner/repo[/subdir][@ref], git-URL или имя из Marketplace), чем enabled отличается от trusted, что делает с плагинами iva update, как написать свой (скиллы, Extension в sh.iva/, mcp.json, сервисы) и чем вы при этом рискуете; в SECURITY.md появился раздел Plugins. Заодно: CLI iva plugin разложен по модулям, ни одна команда не изменилась, а на dev-чекауте add и remove кодового плагина больше не обещают сборку, которой там не было, и честно говорят, что версию тут никто не собрал.