BC appstore-api
API App Store от Apple для ИИ-агентов — ищите приложения для iOS по названию, ключевому слову, идентификатору App Store или идентификатору пакета, затем извлекайте метаданные приложения, рейтинги приложений для iOS, отзывы из App Store, сведения о разработчике/издателе, метки конфиденциальности, похожие приложения и конкурентов в виде структурированного JSON. Используйте для поиска в App Store, исследования ASO и исследования ключевых слов ASO, исследования конкурентов приложений, анализа отзывов о приложениях для iOS, поиска рейтингов, поиска разработчиков и конкурентного анализа мобильных приложений. Чтение общедоступных данных App Store только для чтения через API ReplyNodes.
машинный переводПоказать оригиналСкрыть оригинал«Apple App Store API for AI agents — search iOS apps by name, keyword,…»
Apple App Store API for AI agents — search iOS apps by name, keyword, App Store ID or bundle ID, then retrieve app metadata, iOS app ratings, App Store reviews, developer/publisher details, privacy labels, similar apps and competitors as structured JSON. Use for App Store search, ASO research and ASO keyword research, app competitor research, iOS app review analysis, ratings lookup, developer lookup and mobile app competitive analysis. Read-only public App Store data through the ReplyNodes API.
API App Store от Apple для ИИ-агентов — ищите приложения для iOS по названию, ключевому слову, идентификатору App Store или идентификатору пакета, затем…
Как процесс C 63/100 · Есть пробелы — слабые места: входы и предусловия, повторный запуск
Чем это грозит
Находки средней серьёзности: скорее всего скилл честный, но прочитайте, что именно насторожило сканер.
Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.
Инструкции или скрипты отправляют данные наружу: переменные окружения, ключи, содержимое файлов, историю чата. Вы можете не заметить этого в диалоге, потому что агент выполнит отправку как «часть задачи».
Если отправка не нужна для задачи, уберите её: каталоги помечают такие скиллы как подозрительные и снимают с выдачи. Если нужна, назовите адрес явно, объясните, что именно уходит, и дайте пользователю выключатель.
Как улучшить
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 5
✓ Критических и высоких находок нет
Средние и низкие: 5
-
средняя Утечка данных
net-credential-useINSTALL.md:41Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис)curl -sS -H "Authorization: Bearer $REPLYNODES_API_KEY" \
-
низкая Утечка данных
net-credential-usellms.txt:9Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис) (хост вендора самого скилла; в кавычках — упоминание, а не команда)Auth: `Authorization: Bearer $REPLYNODES_API_KEY`, sent only to https://api.replynodes.com — the
vendor-hostв кавычках -
низкая Утечка данных
net-credential-usereferences/endpoints.md:12Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис) (в кавычках — упоминание, а не команда)document these references were generated from; `curl -sS -H "Authorization: Bearer $REPLYNODES_API_KEY"
в кавычках -
низкая Утечка данных
net-credential-useSKILL.md:39Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис) (хост вендора самого скилла)auth: Authorization: Bearer $REPLYNODES_API_KEY sent only to https://api.replynodes.com — the complete claim/poll protocol is embedded in the Authentication section of this file
vendor-host -
низкая Утечка данных
net-credential-useSKILL.md:245Учётные данные используются в сетевом вызове (проверьте, что адрес — нужный сервис) (хост вендора самого скилла; в кавычках — упоминание, а не команда)AUTH="Authorization: Bearer $REPLYNODES_API_KEY" # sent only to https://api.replynodes.com
vendor-hostв кавычках
Просканировано файлов: 10. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- предупреждение
frontmatter-yamlSKILL.md: фронтматтер не разбирается как YAML (YAML parse error: Nested mappings are not allowed in compact mappings at line 38, column 7: auth: Authorization: Bearer $REPLYNODES_API_KEY sent only to https://api.replyn… ^ ); поля прочитаны построчно. Обычная причина — двоеточие в незакавыченном значении - заметка
frontmatter-keyнеизвестное поле фронтматтера "title" - заметка
frontmatter-keyнеизвестное поле фронтматтера "contract_version" - заметка
frontmatter-keyнеизвестное поле фронтматтера "mode" - заметка
frontmatter-keyнеизвестное поле фронтматтера "keywords" - заметка
frontmatter-keyнеизвестное поле фронтматтера "search_terms" - заметка
frontmatter-keyнеизвестное поле фронтматтера "entrypoint" - заметка
frontmatter-keyнеизвестное поле фронтматтера "auth"
Процессный рейтинг: все десять параметров 63/100
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 30Повторный запуск. Изменяющих операций: 19, без проверки текущего состояния
- 50Ошибки и развилки. Развилок: 0, есть раздел про ошибки
- 60Инструменты и файлы. Используются инструменты (bash, web), но во frontmatter они не объявлены
- 60Результат и критерий готовности. Формат результата описан, критерия завершения нет
- 70Когда включается. Сказано, когда применять, но не сказано, когда не стоит
- 70Стоимость исполнения. Тело инструкции 4516 токенов
- 100Шаги. Шагов: 52
- 100Согласованность. Имя и обязательные поля на месте
- 100Отчётность по ходу. Скилл сообщает о ходе работы
- medium Правила безопасности и запреты внутри скилла: их место в системном промпте, здесь они не защищают
- low Разделов верхнего уровня: 12. Похоже на несколько доменов в одном скилле
- low Ответ описан самодельной разметкой (9 тегов): типизированный вызов надёжнее
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +2Инструкции на одном языке
- +3Длина description 499 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 13 заголовков
- +3Пошаговые инструкции: 52 пунктов
- +3Формат ответа описан явно
- +4Есть примеры (4 блоков кода)
- +4Справочные файлы упоминаются в инструкциях (2 из 2)
- +1Лицензия указана
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 79.