CD ov-memory-doctor
Диагностика и исправление плагина памяти OpenViking на этой машине: установка плагина (включение, хуки, сервер MCP), конфигурация клиента (ovcli.conf / ov.conf / OPENVIKING_* env) и подключение к серверу OpenViking (доступность, 401/403, /mcp). Используйте всякий раз, когда память «не работает»: нет блока <openviking-context>, пустое извлечение, захваты не приземляются, отсутствуют или не работают инструменты памяти MCP, 401/403, строка состояния в автономном режиме, сразу после установки/обновления плагина или переключения серверов/ключей, или когда пользователь запрашивает статус плагина. Триггеры: «memory not working», «check OpenViking», «plugin status», «记忆没生效», «插件状态», «连不上 OpenViking», «recall 为空», «401».
машинный переводПоказать оригиналСкрыть оригинал«Diagnose and fix the OpenViking memory plugin on this machine: the plu…»
Diagnose and fix the OpenViking memory plugin on this machine: the plugin install (enablement, hooks, MCP server), the client configuration (ovcli.conf / ov.conf / OPENVIKING_* env) and the connection to the OpenViking server (reachability, 401/403, /mcp). Use whenever memory "isn't working": no <openviking-context> block, empty recall, captures not landing, missing or failing MCP memory tools, 401/403, an offline statusline, right after installing/updating the plugin or switching servers/keys, or when the user asks for the plugin's status. Triggers: "memory not working", "check OpenViking", "plugin status", "记忆没生效", "插件状态", "连不上 OpenViking", "recall 为空", "401".
Диагностика и исправление плагина памяти OpenViking на этой машине: установка плагина (включение, хуки, сервер MCP), конфигурация клиента (ovcli.conf /…
Как процесс D 39/100 · Процесс не доведён — Скилл ссылается на файлы, которых нет в архиве: examples/memory-plugin-shared/, scripts/setup.mjs
Чем это грозит
Находки средней серьёзности: скорее всего скилл честный, но прочитайте, что именно насторожило сканер.
Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.
Инструкции или скрипты отправляют данные наружу: переменные окружения, ключи, содержимое файлов, историю чата. Вы можете не заметить этого в диалоге, потому что агент выполнит отправку как «часть задачи».
Если отправка не нужна для задачи, уберите её: каталоги помечают такие скиллы как подозрительные и снимают с выдачи. Если нужна, назовите адрес явно, объясните, что именно уходит, и дайте пользователю выключатель.
Как улучшить
- В тексте есть ссылки на отсутствующие файлы: добавьте файлы или уберите ссылки.
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 3
✓ Критических и высоких находок нет
Средние и низкие: 3
-
средняя Утечка данных
net-credential-useSKILL.md:123Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис)curl -sS -H "Authorization: Bearer $KEY" "$URL/health" # 200 without account_id/user_id/role ⇒ key invalid
-
средняя Утечка данных
net-credential-useSKILL.md:124Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис)curl -sS -w '\n%{http_code}\n' -H "Authorization: Bearer $KEY" "$URL/api/v1/system/status" # real 401/403 -
низкая Опасные команды
cmd-pipe-to-shellSKILL.md:78Скачивание и запуск удалённого кода с неизвестного хоста (pipe в shell) (строка таблицы в документации; хост вендора самого скилла)| `not registered in installed_plugins.json` / `claude plugin list does not show …` | Plugin never installed, or installed under an old id | Re-run the one-line installer (`curl -fsSL https://openviki
таблицаvendor-host
Просканировано файлов: 2. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- предупреждение
missing-refссылка на отсутствующий файл: examples/memory-plugin-shared/ - предупреждение
missing-refссылка на отсутствующий файл: scripts/setup.mjs - заметка
edit-residueв тексте есть пометки об устаревшем (строки 52, 67, 82): проверьте, не остались ли старые правила рядом с новыми — полная проверка читает текст на противоречия
Процессный рейтинг: все десять параметров 39/100
- 0Инструменты и файлы. Не хватает 2 файла(ов): examples/memory-plugin-shared/, scripts/setup.mjs
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 0Ошибки и развилки. Линейный процесс без обработки сбоев
- 30Повторный запуск. Изменяющих операций: 14, без проверки текущего состояния
- 70Когда включается. Сказано, когда применять, но не сказано, когда не стоит
- 70Стоимость исполнения. Тело инструкции 4026 токенов
- 100Шаги. Шагов: 19
- 100Согласованность. Имя и обязательные поля на месте
- 100Отчётность по ходу. Скилл сообщает о ходе работы
- medium Правила безопасности и запреты внутри скилла: их место в системном промпте, здесь они не защищают
- low Ответ описан самодельной разметкой (6 тегов): типизированный вызов надёжнее
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +3Формат ответа не описан: модель каждый раз решает сама
- +1Лицензия не указана
- +2Инструкции на одном языке
- +5В description 6 примера фраз-триггеров в кавычках
- +3Длина description 670 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 7 заголовков
- +3Пошаговые инструкции: 19 пунктов
- +4Есть примеры (4 блоков кода)
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 80.