AB golang-structs-interfaces
Шаблоны проектирования структур и интерфейсов Golang — композиция, встраивание, приведение типов, переключение типов, разделение интерфейсов, внедрение зависимостей через интерфейсы, теги полей структуры и получатели указателей против значений. Используйте этот навык при проектировании типов Go, определении или реализации интерфейсов, встраивании структур или интерфейсов, написании приведений типов или переключений типов, добавлении тегов полей структуры для сериализации JSON/YAML/DB или выборе между получателями указателей и значений. Также используйте, когда пользователь спрашивает о "принимать интерфейсы, возвращать структуры", проверке интерфейсов во время компиляции или композиции малых интерфейсов в большие.
машинный переводПоказать оригиналСкрыть оригинал«Golang struct and interface design patterns — composition, embedding,…»
Golang struct and interface design patterns — composition, embedding, type assertions, type switches, interface segregation, dependency injection via interfaces, struct field tags, and pointer vs value receivers. Use this skill when designing Go types, defining or implementing interfaces, embedding structs or interfaces, writing type assertions or type switches, adding struct field tags for JSON/YAML/DB serialization, or choosing between pointer and value receivers. Also use when the user asks about "accept interfaces, return structs", compile-time interface checks, or composing small interfaces into larger ones.
Шаблоны проектирования структур и интерфейсов Golang — композиция, встраивание, приведение типов, переключение типов, разделение интерфейсов, внедрение…
Как процесс B 68/100 · Почти готов — слабые места: результат и критерий готовности, входы и предусловия, отчётность по ходу
Как улучшить
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 0
✓ Критических и высоких находок нет
Просканировано файлов: 2. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- заметка
frontmatter-keyнеизвестное поле фронтматтера "paths"
Процессный рейтинг: все десять параметров 68/100
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 70Ошибки и развилки. Развилок: 5
- 85Шаги. Шагов: 5, расплывчатых формулировок: 2
- 100Инструменты и файлы. Инструменты объявлены во frontmatter
- 100Когда включается. Сказано, когда применять и когда не применять
- 100Согласованность. Имя и обязательные поля на месте
- 100Стоимость исполнения. Тело инструкции 3073 токенов
- 100Повторный запуск. Изменяющие операции проверяют текущее состояние
- medium Правила безопасности и запреты внутри скилла: их место в системном промпте, здесь они не защищают
- low Разделов верхнего уровня: 13. Похоже на несколько доменов в одном скилле
- low Среди тестов нет случая на инъекцию через данные
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +3Формат ответа не описан: модель каждый раз решает сама
- +2Инструкции на одном языке
- +3Длина description 620 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 23 заголовков
- +3Пошаговые инструкции: 5 пунктов
- +4Есть примеры (17 блоков кода)
- +1Лицензия указана
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 84.