AB golang-naming
Соглашения об именовании в Go (Golang) — охватывает пакеты, конструкторы, структуры, интерфейсы, константы, перечисления, ошибки, булевы значения, получатели, геттеры/сеттеры, функциональные опции, аббревиатуры, тестовые функции и имена подтестов. Используйте этот навык при написании нового кода Go, при обзоре или рефакторинге, при выборе между альтернативными именами (New vs NewTypeName, isConnected vs connected, ErrNotFound vs NotFoundError, StatusReady vs StatusUnknown при iota 0), при обсуждении имен пакетов Go (антипаттерны utils/helpers), или при вопросах о лучших практиках именования в Go. Также активируется, когда пользователь упоминает MixedCaps против snake_case, константы в ALL_CAPS, префикс Get для геттеров или регистр строк ошибок. НЕ используйте для общих вопросов реализации Go, не связанных с принятием решений об именовании.
машинный переводПоказать оригиналСкрыть оригинал«Go (Golang) naming conventions — covers packages, constructors, struct…»
Go (Golang) naming conventions — covers packages, constructors, structs, interfaces, constants, enums, errors, booleans, receivers, getters/setters, functional options, acronyms, test functions, and subtest names. Use this skill when writing new Go code, reviewing or refactoring, choosing between naming alternatives (New vs NewTypeName, isConnected vs connected, ErrNotFound vs NotFoundError, StatusReady vs StatusUnknown at iota 0), debating Go package names (utils/helpers anti-patterns), or asking about Go naming best practices. Also trigger when the user mentions MixedCaps vs snake_case, ALL_CAPS constants, Get-prefix on getters, or error string casing. Do NOT use for general Go implementation questions that don't involve naming decisions.
Соглашения об именовании в Go (Golang) — охватывает пакеты, конструкторы, структуры, интерфейсы, константы, перечисления, ошибки, булевы значения, получатели…
Как процесс B 68/100 · Почти готов — слабые места: результат и критерий готовности, входы и предусловия, отчётность по ходу
Как улучшить
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 0
✓ Критических и высоких находок нет
Просканировано файлов: 7. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- заметка
frontmatter-keyнеизвестное поле фронтматтера "paths"
Процессный рейтинг: все десять параметров 68/100
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 50Ошибки и развилки. Развилок: 0, есть раздел про ошибки
- 100Инструменты и файлы. Инструменты объявлены во frontmatter
- 100Шаги. Шагов: 10
- 100Когда включается. Сказано, когда применять и когда не применять
- 100Согласованность. Имя и обязательные поля на месте
- 100Стоимость исполнения. Тело инструкции 2804 токенов
- 100Повторный запуск. Изменяющие операции проверяют текущее состояние
- medium Правила безопасности и запреты внутри скилла: их место в системном промпте, здесь они не защищают
- low Среди тестов нет случая на инъекцию через данные
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +3Формат ответа не описан: модель каждый раз решает сама
- +2Инструкции на одном языке
- +4Описание говорит, когда скилл НЕ применять
- +3Длина description 750 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 9 заголовков
- +3Пошаговые инструкции: 10 пунктов
- +4Есть примеры (2 блоков кода)
- +4Справочные файлы упоминаются в инструкциях (5 из 5)
- +1Лицензия указана
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 92.