CF contextui
Build, run, and publish visual workflows on ContextUI — a local-first desktop platform for AI agents. Create React TSX workflows (dashboards, tools, apps, visualizations), manage local Python backend servers, test workflows via scoped UI automation within the ContextUI app window, and optionally publish to the ContextUI Exchange. All tools operate locally on the user's machine under standard OS permissions — no remote execution or privilege escalation. Python backends bind to localhost. See SECURITY.md for the full capability scope and trust model. Requires ContextUI installed locally and MCP server configured.
Как процесс F 45/100 · Не запустится — Скилл ссылается на файлы, которых нет в архиве: examples/KokoroTTS/ui/ServerLauncher/, examples/KokoroTTS/
Чем это грозит
Находки средней серьёзности: скорее всего скилл честный, но прочитайте, что именно насторожило сканер.
Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.
Инструкции или скрипты отправляют данные наружу: переменные окружения, ключи, содержимое файлов, историю чата. Вы можете не заметить этого в диалоге, потому что агент выполнит отправку как «часть задачи».
Если отправка не нужна для задачи, уберите её: каталоги помечают такие скиллы как подозрительные и снимают с выдачи. Если нужна, назовите адрес явно, объясните, что именно уходит, и дайте пользователю выключатель.
Как улучшить
- Скажите в description, КОГДА применять скилл («используй, когда…», примеры запросов): это главный сигнал для агента.
- В тексте есть ссылки на отсутствующие файлы: добавьте файлы или уберите ссылки.
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 12
✓ Критических и высоких находок нет
Средние и низкие: 12
-
средняя Утечка данных
net-credential-usescripts/exchange.sh:28Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис)curl -s -H "Authorization: Bearer $KEY" "$BASE/marketplace?search=$(echo "${@:2}" | sed 's/ /%20/g')" -
средняя Утечка данных
net-credential-usescripts/exchange.sh:32Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис)curl -s -H "Authorization: Bearer $KEY" "$BASE/marketplace?id=$2"
-
средняя Утечка данных
net-credential-usescripts/exchange.sh:36Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис)curl -s -H "Authorization: Bearer $KEY" "$BASE/marketplace?category=$2"
-
средняя Утечка данных
net-credential-usescripts/exchange.sh:40Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис)curl -s -H "Authorization: Bearer $KEY" "$BASE/marketplace-download?id=$2"
-
средняя Утечка данных
net-credential-usescripts/exchange.sh:44Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис)curl -s -H "Authorization: Bearer $KEY" "$BASE/marketplace-comments?listingId=$2"
-
низкая Утечка данных
net-credential-usereferences/exchange-api.md:55Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис) (документация security-скилла)curl -H "Authorization: Bearer $CONTEXTUI_API_KEY" \
security-скилл -
низкая Утечка данных
net-credential-usereferences/exchange-api.md:59Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис) (документация security-скилла)curl -H "Authorization: Bearer $CONTEXTUI_API_KEY" \
security-скилл -
низкая Утечка данных
net-credential-usereferences/exchange-api.md:63Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис) (документация security-скилла)curl -H "Authorization: Bearer $CONTEXTUI_API_KEY" \
security-скилл -
низкая Утечка данных
net-credential-usereferences/exchange-api.md:72Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис) (документация security-скилла)curl -H "Authorization: Bearer $CONTEXTUI_API_KEY" \
security-скилл -
низкая Утечка данных
net-credential-usereferences/exchange-api.md:82Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис) (документация security-скилла)curl -H "Authorization: Bearer $CONTEXTUI_API_KEY" \
security-скилл -
низкая Рискованное назначение
intent-offensive-securitySECURITY.md:57Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение)No tool in this skill requires or requests elevated permissions (sudo, admin). All operations run as the current OS user with no privilege escalation.
-
низкая Рискованное назначение
intent-offensive-securitySKILL.md:3Наступательная безопасность / двойное назначение (допустимо для авторизованного тестирования; проверьте назначение) (в кавычках — упоминание, а не команда)description: Build, run, and publish visual workflows on ContextUI — a local-first desktop platform for AI agents. Create React TSX workflows (dashboards, tools, apps, visualizations), manage local Py
в кавычках
Просканировано файлов: 14. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- предупреждение
description-no-whendescription не говорит, КОГДА применять скилл (нет "use when / используй когда") - предупреждение
missing-refссылка на отсутствующий файл: examples/KokoroTTS/ui/ServerLauncher/ - предупреждение
missing-refссылка на отсутствующий файл: examples/KokoroTTS/ - заметка
frontmatter-keyнеизвестное поле фронтматтера "source" - заметка
frontmatter-keyнеизвестное поле фронтматтера "youtube" - заметка
frontmatter-keyнеизвестное поле фронтматтера "env"
Процессный рейтинг: все десять параметров 45/100
- 0Инструменты и файлы. Не хватает 2 файла(ов): examples/KokoroTTS/ui/ServerLauncher/, examples/KokoroTTS/
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 20Когда включается. Не сказано, при каком запросе скилл включается
- 30Повторный запуск. Изменяющих операций: 7, без проверки текущего состояния
- 60Ошибки и развилки. Развилок: 2
- 70Входы и предусловия. Входные данные и предусловия перечислены
- 70Стоимость исполнения. Тело инструкции 4289 токенов
- 100Шаги. Шагов: 55
- 100Согласованность. Имя и обязательные поля на месте
- low Разделов верхнего уровня: 10. Похоже на несколько доменов в одном скилле
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +3Формат ответа не описан: модель каждый раз решает сама
- -4Абсолютные локальные пути (C:\Users, /home/…): скилл не переносим
- +1Лицензия не указана
- +2Инструкции на одном языке
- +3Длина description 618 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 42 заголовков
- +3Пошаговые инструкции: 55 пунктов
- +4Есть примеры (15 блоков кода)
- +4Справочные файлы упоминаются в инструкциях (6 из 7)
- +3Все 1 скриптов описаны в инструкциях
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 63.