framework/skills/tool-usage/vanessa/va-visual-check/SKILL.md
Vanessa/VA MCP: визуальная проверка форм 1С и скриншоты
npx skillsauth add steelmorgan/1c-agent-based-dev-framework va-visual-checkInstall 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.
Используй этот навык для визуальной проверки 1С-форм через Vanessa Automation / TestClient и VA MCP. Это профильный маршрут для UI/UX-скриншотов управляемых форм 1С.
v8-runner; здесь проверяй только live-сессию kind=vanessa_test_client в session_list.connect_test_client с профилем из настроек VA, не угадывай имя профиля.0.get_form_analysis, get_window_list_testclient, чтение элементов/таблиц).get_window_list_os.get_window_screenshot_os параллельно и не используй для них multi_tool_use.parallel: отправь один запрос, дождись полного ответа и убедись через session_list, что сессия жива и inflight=0; только после этого отправляй следующий запрос.get_window_screenshot_os:get_window_screenshot_os {
"window_title": "<точный заголовок окна формы>",
"file_name": "<путь>.png",
"color_mode": "color"
}
Этот рецепт применим только для Linux на виртуальном X11/Xvfb-дисплее без графического окружения/window-manager. Он нужен, когда get_window_list_os видит окно формы, но get_window_screenshot_os возвращает чёрный или почти пустой PNG.
X11-команды используются только для экспонирования уже открытого окна. Приоритетный скриншот после этого всё равно делается через VA MCP.
xwininfo -root -tree | sed -n '1,220p'
Если wmctrl -l или другие EWMH-инструменты отвечают Cannot get client list properties / _NET_CLIENT_LIST or _WIN_CLIENT_LIST, это ожидаемо для Xvfb без window-manager. Используй дерево xwininfo, а не список клиента window-manager.
xprop -id <window_id> _NET_WM_PID WM_NAME WM_CLASS
_NET_WM_PID должен совпадать с PID подключённого test-client. Если PID ещё не зафиксирован, получи его из VA-профиля/состояния подключения; заголовок окна используй только как дополнительный фильтр.
xdotool windowmove <window_id> 0 0 || true
xdotool windowsize <window_id> 1200 800 || true
xdotool windowraise <window_id> || true
xdotool windowactivate --sync <window_id> || true
xwininfo -id <window_id> | sed -n '1,60p'
В среде без window-manager windowactivate может упасть с сообщением про _NET_ACTIVE_WINDOW; это не blocker, если xwininfo показывает Map State: IsViewable.
Повтори штатный VA-снимок через get_window_screenshot_os.
Повтори проверку PNG. Если снимок всё ещё чёрный/одноцветный, переходи к fallback-решению ниже и явно зафиксируй причину.
VA MCP — предпочтительный маршрут для обычных форм 1С, потому что он работает с реальным TestClient и даёт одновременно структуру формы и визуальный PNG.
Web/browser fallback допустим, когда:
connect_test_client не даёт реальный PID;get_window_list_os не видит нужное окно;get_window_screenshot_os остаётся чёрным/одноцветным после Linux/Xvfb-рецепта;Перед fallback зафиксируй:
Для browser fallback используй профильные browser-навыки (web-test-1c, playwright, screenshot) по их назначению. Не смешивай результат: если артефакт получен через web/browser fallback, так и называй его в отчёте.
get_window_list_testclient визуальным подтверждением: это структура внутренних окон, не PNG.tools/list: нужна live-сессия нужного kind.depends_on:
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.