AC javascript
Пишет, отлаживает и проверяет JavaScript: асинхронность и цикл событий, приведение типов, замыкания, даты, Unicode, регулярные выражения и современные API ES2023+. Используйте, когда JS выдает TypeError или «undefined is not a function», промис никогда не разрешается или отклонение остается необработанным, появляется NaN или [object Object], даты смещаются на день, сортировка или равенство ведут себя неправильно, растет потребление памяти, зависает регулярное выражение, JSON теряет точность, процесс Node не завершается или игнорирует сигналы, или fetch не отклоняется при 404; также при выборе структур данных, обработке ошибок, профилировании медленного кода или проверке того, безопасна ли функция для целевой версии Node или браузера. Охватывает граничные случаи среды выполнения Node и браузера. Не для проектирования системы типов TypeScript или внутренних компонентов фреймворка.
машинный переводПоказать оригиналСкрыть оригинал«Writes, debugs, and reviews JavaScript: async and the event loop, coer…»
Writes, debugs, and reviews JavaScript: async and the event loop, coercion, closures, dates, Unicode, regex, and modern ES2023+ APIs. Use when JS throws TypeError or "undefined is not a function", a promise never settles or a rejection goes unhandled, NaN or [object Object] appears, dates shift by a day, sorting or equality misbehaves, memory grows, a regex hangs, JSON loses precision, a Node process won't exit or ignores signals, or fetch doesn't reject on a 404; also when choosing data structures, handling errors, profiling slow code, or checking whether a feature is safe for a target Node or browser version. Covers Node and browser runtime edges. Not for TypeScript type-system design or framework internals.
Пишет, отлаживает и проверяет JavaScript: асинхронность и цикл событий, приведение типов, замыкания, даты, Unicode, регулярные выражения и современные API…
Как процесс C 61/100 · Есть пробелы — слабые места: входы и предусловия, повторный запуск, отчётность по ходу
Как улучшить
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 0
✓ Критических и высоких находок нет
Просканировано файлов: 17. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- заметка
frontmatter-keyнеизвестное поле фронтматтера "slug" - заметка
frontmatter-keyнеизвестное поле фронтматтера "changelog" - заметка
frontmatter-keyнеизвестное поле фронтматтера "homepage"
Процессный рейтинг: все десять параметров 61/100
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 30Повторный запуск. Изменяющих операций: 6, без проверки текущего состояния
- 50Когда включается. Не сказано, при каком запросе скилл включается
- 60Инструменты и файлы. Используются инструменты (web, node), но во frontmatter они не объявлены
- 60Результат и критерий готовности. Формат результата описан, критерия завершения нет
- 60Ошибки и развилки. Развилок: 2
- 100Шаги. Шагов: 59
- 100Согласованность. Имя и обязательные поля на месте
- 100Стоимость исполнения. Тело инструкции 3280 токенов
- medium Правила безопасности и запреты внутри скилла: их место в системном промпте, здесь они не защищают
- low Разделов верхнего уровня: 14. Похоже на несколько доменов в одном скилле
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +4Нет примеров входа/выхода
- +1Лицензия не указана
- +2Инструкции на одном языке
- +4Описание говорит, когда скилл НЕ применять
- +3Длина description 719 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 14 заголовков
- +3Пошаговые инструкции: 59 пунктов
- +3Формат ответа описан явно
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 84.