Навыки¶
Навык — это переиспользуемая инструкция или процедура, которую можно применять в разных помощниках и задачах без копирования большого текста в каждую системную инструкцию.
Когда нужен навык¶
Если один и тот же алгоритм повторяется в нескольких местах.
Примеры:
- code review;
- security review;
- расследование инцидента;
- подготовка release notes;
- проверка документа;
- корпоративный стиль текста.
Помощник и навык¶
Помощник задаёт постоянную роль. Навык — подключаемую процедуру.
Варианты использования¶
Навык может применяться вручную, автоматически по решению модели или постоянно в рамках конкретного помощника — в зависимости от настройки.
Ручной вызов¶
Если интерфейс позволяет $-вызов навыка, пользователь может явно выбрать процедуру.
Ручной вызов особенно полезен для тестирования.
Автоматический выбор¶
Описание навыка должно точно объяснять, когда его использовать.
Плохо:
Полезный навык для кода.
Хорошо:
Используй при запросе на security review исходного кода или конфигурации. Не используй для обычного форматирования.
Структура хорошего навыка¶
Название
Когда применять
Когда не применять
Входные данные
Пошаговый процесс
Формат результата
Ограничения
Примеры
Пример процедуры¶
Цель: проверить конфигурационный файл.
1. Определить формат и версию продукта.
2. Найти синтаксические риски.
3. Найти security-риски.
4. Найти эксплуатационные риски.
5. Отделить ошибки от рекомендаций.
6. Для изменения дать минимальный patch.
7. Не предлагать restart до проверки конфигурации.
Не храните секреты¶
Навык может использоваться несколькими помощниками. Он должен содержать процедуру, а не учётные данные.
Системные навыки¶
Администратор может поставлять управляемые навыки только для чтения вместе со Студией. Это удобно для корпоративных процедур, которые сотрудники не должны незаметно менять каждый у себя.
Пользовательские навыки¶
Если роль разрешает создание, пользователь может подготовить собственный навык.
Для enterprise-развёртывания не обязательно выдавать право публикации навыков всем сотрудникам.
Общий доступ¶
Право использовать навык и право его изменять — разные вещи.
Если Editor изменит общий навык, это может повлиять сразу на несколько помощников.
Версионирование¶
После изменения повторите тесты зависимых помощников.
Навык или документ¶
Навык или системная инструкция¶
Если правило обязательно всегда — системная инструкция.
Если процедура нужна лишь в отдельных задачах — навык.
Тест навыка¶
Создайте три группы запросов:
- обязан примениться;
- не должен примениться;
- двусмысленный.
Проверьте как ручной, так и автоматический выбор.
Если навык не используется¶
Проверьте:
- разрешена ли функция роли;
- добавлен ли навык помощнику;
- понятно ли описание;
- не конфликтует ли системная инструкция;
- способен ли текущий модельный сервер стабильно выбирать навык;
- не нужен ли явный ручной вызов.