BD Async Audit
Аудитор обработки ошибок асинхронных операций. Сканирует код JavaScript/TypeScript, Python и Go на наличие необработанных асинхронных ошибок — «плавающих» промисов (fire-and-forget без .catch()), асинхронных обработчиков маршрутов Express без try/catch, Promise.all без обработки ошибок, asyncio.create_task, игнорирующего исключения, goroutine, молчаливо игнорирующих возвращаемые ошибки, и отсутствующих обработчиков process.on('unhandledRejection'). Находит ошибки, которые проявляются только в производственных логах в 3 часа ночи. Нулевые внешние зависимости. Нулевые конкуренты на ClawHub.
машинный переводПоказать оригиналСкрыть оригинал«Async/await error handling auditor. Scans JavaScript/TypeScript, Pytho…»
Async/await error handling auditor. Scans JavaScript/TypeScript, Python, and Go code for unhandled async errors — floating promises (fire-and-forget with no .catch()), Express async route handlers without try/catch, Promise.all without error boundary, asyncio.create_task swallowing exceptions, goroutine error returns silently ignored, and missing unhandledRejection process listeners. Finds the silent crashes that only appear in production logs at 3am. Zero external dependencies. Zero competitors on ClawHub.
Аудитор обработки ошибок асинхронных операций.
Как процесс D 48/100 · Процесс не доведён — слабые места: результат и критерий готовности, входы и предусловия, согласованность
Как улучшить
- Скажите в description, КОГДА применять скилл («используй, когда…», примеры запросов): это главный сигнал для агента.
- Тело SKILL.md длиннее 5 000 токенов: вынесите справочные детали в references/ и подключайте по необходимости.
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 0
✓ Критических и высоких находок нет
Просканировано файлов: 2. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- предупреждение
name-formatname должен быть в kebab-case (строчные буквы, цифры, дефисы) - предупреждение
description-no-whendescription не говорит, КОГДА применять скилл (нет "use when / используй когда") - предупреждение
body-longтело SKILL.md ≈ 9490 токенов (рекомендуется < 5000); вынесите детали в references/ - заметка
frontmatter-keyнеизвестное поле фронтматтера "homepage"
Процессный рейтинг: все десять параметров 48/100
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 30Повторный запуск. Изменяющих операций: 2, без проверки текущего состояния
- 40Согласованность. Имя во frontmatter (Async Audit) не совпадает с папкой (phy-async-audit)
- 40Стоимость исполнения. Тело инструкции 9490 токенов: вытесняет саму задачу из окна
- 50Ошибки и развилки. Развилок: 0, есть раздел про ошибки
- 60Инструменты и файлы. Используются инструменты (python), но во frontmatter они не объявлены
- 70Когда включается. Сказано, когда применять, но не сказано, когда не стоит
- 100Шаги. Шагов: 5
- 100Отчётность по ходу. Скилл сообщает о ходе работы
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +3Формат ответа не описан: модель каждый раз решает сама
- -4Абсолютные локальные пути (C:\Users, /home/…): скилл не переносим
- +2Инструкции на одном языке
- +3Длина description 512 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 8 заголовков
- +3Пошаговые инструкции: 5 пунктов
- +4Есть примеры (6 блоков кода)
- +1Лицензия указана
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 53.