BC ghostshield
Защита от дистилляции кода коллег — сохраните свой стиль кода и не дайте ИИ точно его скопировать. Три уровня обфускации: базовая защита, глубокое запутывание, максимальная скрытность.
машинный переводПоказать оригиналСкрыть оригинал«反同事蒸馏防护盾 - 保护你的代码风格,防止被 AI 精准蒸馏。 提供三级混淆模型:基础防护、深度混淆、极致隐匿。…»
反同事蒸馏防护盾 - 保护你的代码风格,防止被 AI 精准蒸馏。 提供三级混淆模型:基础防护、深度混淆、极致隐匿。
Защита от дистилляции кода коллег — сохраните свой стиль кода и не дайте ИИ точно его скопировать.
Как процесс C 51/100 · Есть пробелы — слабые места: результат и критерий готовности, когда включается, входы и предусловия
Чем это грозит
Скилл содержит фрагменты, которые в чужих руках стоят денег или данных. Ниже, что рискует потерять тот, кто установит, и что должен сделать автор.
В файлах есть невидимые символы, закодированные команды или спрятанные комментарии для модели. То, что вы читаете, отличается от того, что видит агент.
Уберите невидимые символы (часто они попадают из копипаста) и закодированные строки: их не пропустит ни один каталог. Инструкции для модели должны быть видны и человеку.
Как улучшить
- Разберите находки высокой серьёзности: каждая стоит 18 баллов безопасности. Если это ложное срабатывание, добавьте код правила в guard.allow в spec.yaml.
- Скажите в description, КОГДА применять скилл («используй, когда…», примеры запросов): это главный сигнал для агента.
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 2
-
высокая Обфускация
uni-zero-widthREADME.md:162Невидимые символы нулевой ширины (возможен скрытый текст) (4 шт.)# Watermark: GS-2…500␀␀␀␀
Средние и низкие: 1
-
низкая Обфускация
uni-zero-widthghostshield/obfuscator.py:311Невидимые символы нулевой ширины (возможен скрытый текст) (26 шт.) (определение детектора / чёрного списка)# Zero-width markers: ␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀␀
детектор
Просканировано файлов: 11. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- предупреждение
description-no-whendescription не говорит, КОГДА применять скилл (нет "use when / используй когда")
Процессный рейтинг: все десять параметров 51/100
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 0Ошибки и развилки. Линейный процесс без обработки сбоев
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 20Когда включается. Не сказано, при каком запросе скилл включается
- 30Повторный запуск. Изменяющих операций: 3, без проверки текущего состояния
- 100Инструменты и файлы. Внешние инструменты не нужны
- 100Шаги. Шагов: 61
- 100Согласованность. Имя и обязательные поля на месте
- 100Стоимость исполнения. Тело инструкции 1522 токенов
- low Разделов верхнего уровня: 12. Похоже на несколько доменов в одном скилле
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +3Длина description 57: рекомендуется 120–800 символов
- +3Формат ответа не описан: модель каждый раз решает сама
- -216 эмодзи в инструкциях: шум для модели
- +2Инструкции на одном языке
- +4Структура: 33 заголовков
- +3Пошаговые инструкции: 61 пунктов
- +4Есть примеры (4 блоков кода)
- +1Лицензия указана
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 68.