SKILLEMALL.ai

BC write-swift

Как писать современный Swift — моделирование с использованием типов значений, безопасность данных Swift 6 и доступная параллельность (@concurrent, main-actor-by-default, акторы, группы задач), протоколы и дженерики (some vs any), дизайн API, производительность и ARC, тестирование Swift, макросы и современные возможности языка, о которых агенты еще не знают. Используйте при написании, проверке или миграции Swift, или когда необходимо исправить ошибку параллелизма, зависание, гонку данных, цикл удержания или проблему производительности.

машинный переводПоказать оригиналСкрыть оригинал«How to write modern Swift well — modeling with value types, Swift 6 da…»

How to write modern Swift well — modeling with value types, Swift 6 data-race safety and approachable concurrency (@concurrent, main-actor-by-default, actors, task groups), protocols and generics (some vs any), API design, performance and ARC, Swift Testing, macros, and the modern language features agents don't know about yet. Use when writing, reviewing, or migrating Swift, or when a concurrency error, a hang, a data race, a retain cycle, or a performance problem needs fixing.

emilkowalski/skill Agent Skills автор: emilkowalski MIT 1 файл тело ≈ 10 423 токенов Открыть источникgithub.com↗ проанализирован 6 дн назад

Как писать современный Swift — моделирование с использованием типов значений, безопасность данных Swift 6 и доступная параллельность (@concurrent…

Как процесс C 58/100 · Есть пробелы — слабые места: результат и критерий готовности, входы и предусловия, стоимость исполнения

ПроцедураРазработкатип и темы размечены автоматически по тексту скилла
JSON
Технический рейтинг
B
90/100
безопасность, качество, тесты
Безопасность 60%
100
Качество 40%
74
Прогон на моделях
не было
Процессный рейтинг
C
58/100
Есть пробелы
Результат и критерий готовности вес 14
0
Входы и предусловия вес 11
0
Стоимость исполнения вес 6
40
три самых слабых из десяти параметров · все десять

Такой же скилл встречается ещё в 1 месте: skills

Как улучшить

  1. Тело SKILL.md длиннее 5 000 токенов: вынесите справочные детали в references/ и подключайте по необходимости.
Для прогона на моделях — необязательно
  • Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
  • spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.

Находки guard · 0

✓ Критических и высоких находок нет

Просканировано файлов: 1. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.

По спецификации Agent Skills

  • предупреждение body-long тело SKILL.md ≈ 10423 токенов (рекомендуется < 5000); вынесите детали в references/

Процессный рейтинг: все десять параметров 58/100

  • 0Результат и критерий готовности. Не сказано, что считать результатом
  • 0Входы и предусловия. Не сказано, что нужно иметь на входе
  • 40Стоимость исполнения. Тело инструкции 10423 токенов: вытесняет саму задачу из окна
  • 50Когда включается. Не сказано, при каком запросе скилл включается
  • 60Инструменты и файлы. Используются инструменты (node), но во frontmatter они не объявлены
  • 100Шаги. Шагов: 117
  • 100Ошибки и развилки. Развилок: 1, есть раздел про ошибки
  • 100Согласованность. Имя и обязательные поля на месте
  • 100Повторный запуск. Изменяющие операции проверяют текущее состояние
  • 100Отчётность по ходу. Скилл сообщает о ходе работы
  • medium Правила безопасности и запреты внутри скилла: их место в системном промпте, здесь они не защищают
  • low Разделов верхнего уровня: 18. Похоже на несколько доменов в одном скилле
  • high Скилл велит модели самой совершать необратимое действие, без подтверждения человеком

Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.

Сигналы качества

  • +5В description нет примеров фраз, по которым скилл должен срабатывать
  • +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
  • +3Формат ответа не описан: модель каждый раз решает сама
  • +1Лицензия не указана
  • +2Инструкции на одном языке
  • +3Длина description 482 символов: достаточно сигнала, не съедает бюджет
  • +4Структура: 22 заголовков
  • +3Пошаговые инструкции: 117 пунктов
  • +4Есть примеры (3 блоков кода)

База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 74.