framework/skills/tool-usage/platform-admin/onec-server-maintenance-hooks/SKILL.md
Вебхуки обслуживания сервера 1С: restart контейнера и очистка кеша внешних компонент
npx skillsauth add steelmorgan/1c-agent-based-dev-framework onec-server-maintenance-hooksInstall 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.
Используй этот навык, когда нужно управлять обслуживающими HTTP-вебхуками стенда 1С: перезапуском контейнера сервера 1С и очисткой кеша внешних компонент. Это tool-usage навык для инфраструктурных операций, не навык обновления ИБ.
| Ситуация | Действие |
|----------|----------|
| Нужно перезапустить сервер 1С после обновления, очистки кеша или зависших процессов | POST /restart/onec-server |
| Нужно очистить распакованный кеш конкретной внешней компоненты 1С | POST /external-components/cache/clear с component |
| Нужно понять, потребуется ли перезапуск после очистки кеша ВК | Сначала вызвать cache clear с dry_run=true и проверить restart_required |
| Нужно менять сам webhook-сервис | Сначала read-only диагностика, затем явное подтверждение пользователя |
systemctl, docker restart, rm по SSH, если есть контролируемый webhook.*: hook должен работать по конкретной ВК.curl -sS http://onec-infra:8765/health
Ожидаемый ответ содержит status: "ok" и список доступных endpoint.
curl -sS -X POST \
-H "Authorization: Bearer $(cat /workspaces/work/secrets/onec_restart_token)" \
http://onec-infra:8765/restart/onec-server
Ожидать HTTP 200 и JSON:
{"status": "restarted", "container": "onec-server"}
После перезапуска проверить готовность контейнера:
ssh -i "/workspaces/work/repos/1C Framework/1c-log-checker/.ssh/onec-infra/id_ed25519" \
[email protected] \
'sudo -n docker inspect -f "{{.State.Status}} {{if .State.Health}}{{.State.Health.Status}}{{end}}" onec-server'
Готовое состояние: running healthy.
Сначала всегда делать dry_run=true:
curl -sS -X POST \
-H "Authorization: Bearer $(cat /workspaces/work/secrets/onec_restart_token)" \
-H "Content-Type: application/json" \
--data '{"container":"onec-server","component":"WebTransportAddIn","dry_run":true}' \
http://onec-infra:8765/external-components/cache/clear
Поля ответа:
| Поле | Смысл |
|------|-------|
| matches | Найденные файлы кеша, которые будут удалены при dry_run=false |
| deleted | Файлы, удалённые при реальном запуске |
| loaded | Отображения компоненты в живых процессах по /proc/*/maps |
| restart_required | true, если компонент уже загружен процессом и удаления файла недостаточно |
Реальная очистка:
curl -sS -X POST \
-H "Authorization: Bearer $(cat /workspaces/work/secrets/onec_restart_token)" \
-H "Content-Type: application/json" \
--data '{"container":"onec-server","component":"WebTransportAddIn","dry_run":false}' \
http://onec-infra:8765/external-components/cache/clear
restart_required=false, файл кеша не загружен в живой процесс; можно повторить проверку или тест без restart.restart_required=true, компонент уже загружен в процесс (addnhost, rphost и т.п.). Удаление файла с диска не выгрузит старый код из памяти. Нужно вызвать /restart/onec-server, затем дождаться running healthy.Повторить dry_run=true. Для успешно очищенной компоненты ожидаемо:
{
"matches": [],
"loaded": [],
"restart_required": false
}
Если после restart компонент снова появился старой версией, значит 1С заново распаковала старый payload из макета или расширения. В этом случае проверять версию и содержимое поставляемой ВК в конфигурации, а не чистить кеш повторно.
Обычно на сервере onec-infra:
onec-restart.service;/opt/onec-restart/restart_svc.py;Править удалённый hook можно только как инфраструктурное изменение: сначала read-only диагностика, затем явное подтверждение пользователя, после правки — синтаксическая проверка, бэкап старого файла и restart только webhook-сервиса, не сервера 1С.
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.