AB ticket-price-compare
Используйте этот навык, когда пользователь хочет сравнить и найти цены на авиабилеты или билеты на поезд на нескольких платформах. Он поддерживает как внутренние (Китай), так и международные маршруты, получает информацию о наличии билетов на поезд в реальном времени через 12306, использует Firecrawl для рендеринга страниц Ctrip JS для получения подробных данных о рейсах (номера рейсов, время, типы самолетов, цены), генерирует прямые ссылки для поиска на всех основных платформах бронирования и официальных сайтах авиакомпаний, предоставляет быстрые ссылки на мини-программы WeChat для поиска с мобильных устройств и выделяет условия скидок. Сценарии запуска включают: поиск дешевых авиабилетов, сравнение цен на билеты на поезд, поиск выгодных международных авиабилетов, поиск лучшей платформы для бронирования билетов или запрос об условиях скидок на билеты.
машинный переводПоказать оригиналСкрыть оригинал«This skill should be used when the user wants to compare and search fo…»
This skill should be used when the user wants to compare and search for flight or train ticket prices across multiple platforms. It supports both domestic (China) and international routes, fetches real-time train availability via 12306, uses Firecrawl to render Ctrip JS pages for detailed flight data (flight numbers, times, aircraft types, prices), generates direct search links for all major booking platforms and airline official websites, provides WeChat mini program quick links for mobile search, and highlights discount conditions. Trigger scenarios include: searching for cheap flights, comparing train ticket prices, finding international flight deals, looking for the best ticket booking platform, or asking about ticket discount conditions.
Используйте этот навык, когда пользователь хочет сравнить и найти цены на авиабилеты или билеты на поезд на нескольких платформах.
Как процесс B 68/100 · Почти готов — слабые места: входы и предусловия, повторный запуск, отчётность по ходу
Чем это грозит
Находки средней серьёзности: скорее всего скилл честный, но прочитайте, что именно насторожило сканер.
Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.
Скилл содержит команды, которые удаляют файлы, переписывают диски или исполняют код, скачанный из сети. Агент может выполнить их без вопроса, если считает, что так требует инструкция.
Замените разрушительные команды на безопасные аналоги с подтверждением, ограничьте область действия конкретной папкой и не тяните код через curl | bash: укажите версию и контрольную сумму.
Как улучшить
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 1
✓ Критических и высоких находок нет
Средние и низкие: 1
-
средняя Опасные команды
cmd-shell-rcREADME.md:95Запись в файл автозагрузки shell (.bashrc / .zshrc / .profile)echo 'export FIRECRAWL_API_KEY="fc-your-actual-api-key-here"' >> ~/.bashrc
Просканировано файлов: 7. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- предупреждение
frontmatter-yamlSKILL.md: фронтматтер не разбирается как YAML (YAML parse error: Nested mappings are not allowed in compact mappings at line 4, column 14: description: This skill should be used when the user wants to compare and searc… ^ ); поля прочитаны построчно. Обычная причина — двоеточие в незакавыченном значении - заметка
frontmatter-keyнеизвестное поле фронтматтера "environment_variables" - заметка
frontmatter-keyнеизвестное поле фронтматтера "network_access"
Процессный рейтинг: все десять параметров 68/100
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 30Повторный запуск. Изменяющих операций: 1, без проверки текущего состояния
- 60Инструменты и файлы. Используются инструменты (bash, web, python), но во frontmatter они не объявлены
- 60Результат и критерий готовности. Формат результата описан, критерия завершения нет
- 70Когда включается. Сказано, когда применять, но не сказано, когда не стоит
- 100Шаги. Шагов: 65
- 100Ошибки и развилки. Развилок: 7, есть раздел про ошибки
- 100Согласованность. Имя и обязательные поля на месте
- 100Стоимость исполнения. Тело инструкции 2011 токенов
- medium Правила безопасности и запреты внутри скилла: их место в системном промпте, здесь они не защищают
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +1Лицензия не указана
- +2Инструкции на одном языке
- +3Длина description 752 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 16 заголовков
- +3Пошаговые инструкции: 65 пунктов
- +3Формат ответа описан явно
- +4Есть примеры (3 блоков кода)
- +4Справочные файлы упоминаются в инструкциях (1 из 1)
- +3Все 1 скриптов описаны в инструкциях
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 82.