framework/skills/tool-usage/v8-session-manager/SKILL.md
Session manager 1C: запуск, клиенты, session_list, MCP
npx skillsauth add steelmorgan/1c-agent-based-dev-framework v8-session-managerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Тонкий MCP-агрегатор: принимает WS-подключения от 1С-клиентов и публикует их MCP-tools на едином HTTP-эндпоинте для AI-агента.
| Возможность | Источник |
|---|---|
| Встроенный tool — session_list (read-only снимок реестра) | менеджер |
| Встроенный tool — tools_cache_reset (полный сброс или по config_id) | менеджер (ADR-0035) |
| Витрина проксированных tools от подключённых клиентов | расширения 1С |
| Persistent кеш витрины (workPath/tools_cache.json, TTL 5d) | менеджер (ADR-0035) |
| Маршрутизация вызова в нужную сессию по session_id | менеджер |
| Soft-reconnect клиента по client_uid | менеджер |
| FIFO-порядок вызовов в одну сессию | менеджер |
Всё остальное (доменные tools — описание форм, запуск тестов, навигация и т.п.) добавляется расширениями 1С, не менеджером. Под каждое расширение — отдельный skill.
tools/list менеджера читается из persistent кеша на диске, а не только из живых WS-сессий. Следствия для агента:
tools/list ≠ доступность вызова. Кеш переживает disconnect клиента и рестарт менеджера — имя остаётся на витрине, но вызов без live-сессии вернёт MCP tool error isError:true, _meta.error_code="no_live_session". Это не баг, это контракт.notifications/tools/list_changed. Persistent-кеш снимает зависимость от стабильной обработки нотификации.tools_cache_reset: когда tool осознанно удалён из расширения и больше не вернётся (или конфигурация снята полностью). Иначе он будет висеть до истечения TTL (по дефолту 5 суток с момента последнего session.register). Полный сброс — без аргументов; точечный — {"config_id": "<id>"} (берётся из session_list[*].config_id).inputSchema.Подробности — references/sessions-and-tools.md § «Persistent кеш и tools_cache_reset».
Для клиентских UI-tools (open_form, click, input, get_value, get_table_rows, test_client_start) сначала докажи, что есть живой 1С-клиент, а не только запись в кешированной витрине.
Минимальный порядок:
session_list.state=active, disconnected_secs_ago=null, infobase_name=<нужная ИБ>.kind=1c-client; для Vanessa нужны kind=vanessa_test_client и VA-tools сверх базового набора.session_id в каждый proxied tool call.infobase_info) и inflight=0.Для UI/UX-приёмки 1C-форм основной визуальный путь описан в va-visual-check. Базовая цепочка через Vanessa/TestClient:
session_list, что VA manager живой: kind=vanessa_test_client, state=active, tools содержит VA-инструменты, inflight=0.connect_test_client с нужным профилем.0/пусто.get_window_list_os.get_window_screenshot_os; Linux/Xvfb-рецепт для чёрного PNG и fallback-условия см. в va-visual-check.tools/list не доказывает готовность этой цепочки: список может быть из persistent cache. Доказательство — live-сессия + успешный smoke connect_test_client -> get_window_list_os -> get_window_screenshot_os.
Если proxied вызов зависает или inflight остаётся больше нуля:
va-visual-check; если нужен fallback, фиксируй выполненные VA-шаги, причину и остаточный риск;/tmp/mcp-client.log или проектный лог client_mcp: пришёл ли MCP_TOOL_CALL, зарегистрировалась ли WS-сессия, нет ли ошибки платформенного типа;tools_cache_reset как первое действие: кеш не блокирует live-вызовы и не лечит зависший клиент;v8-runner.Для цепочки запуска 1c-client + /TESTMANAGER + отдельный /TESTCLIENT см. навык v8-runner, раздел «UI MCP через платформенный тест-клиент».
Менеджер не:
v8-runner);| Задача | Reference |
|---|---|
| Что делает каждый слой стека (addin → devkit → BSL → менеджер → AI) | references/architecture.md |
| Поднять менеджер, подключить 1С-клиента | references/bootstrap.md |
| Прочитать session_list, вызвать tool, понять почему он отсутствует | references/sessions-and-tools.md |
| Добавить новый tool в расширение 1С | references/extending-tools.md |
| Менеджер не стартует / клиент не виден / tool скрыт / вызов падает | references/troubleshooting.md |
src/, Cargo.toml, systemd/, etc/, spec/, ADR в docs/decisions/) — это upstream-репозиторий. Все изменения уровня менеджера согласуются отдельной задачей.exts/<extension>/); правка/добавление = изменение публичного контракта.v8-runner.development
1C server maintenance webhooks: container restart and external component cache cleanup
development
Interactive DAP debugging of a single BSL procedure
tools
Rules for using RLM tools for project search and navigation in 1C/BSL
development
Creates web applications and routes on Winow (a web server on OneScript and Autumn). Use when working with a web server on OneScript, routing, or Winow controllers.