Skills в OpenCode: как дать агенту правила проекта
Что такое skills в OpenCode, когда использовать их вместо разового промпта и как написать короткую инструкцию для работы с проектом.
Если каждый новый чат ты начинаешь с «запусти тесты», «не трогай публичный API» и «сначала глянь, как тут пишут код», эти правила пора вынести в skill. Тогда они будут лежать рядом с проектом или в личной библиотеке, а не в истории переписки, откуда их никто не достанет.
Чем skill отличается от запроса
Запрос говорит агенту, что сделать сейчас. Skill объясняет, как у тебя обычно делают задачи такого типа: в каком порядке проверять, какие команды запускать, когда работу можно считать законченной. Соблазн описать в одном файле всё подряд понятен, но правила там тонут. Пять конкретных строк агент соблюдает охотнее, чем два экрана общих пожеланий.
---
name: review
description: Проверять изменения TypeScript перед ревью.
---
1. Сначала найди ошибки, меняющие поведение или безопасность.
2. Запусти относящиеся к изменению тесты.
3. В ответе укажи файл, строку и возможное последствие.
Название папки и формат фронтматтера сверь с документацией своей версии OpenCode. Проект меняется быстро, и примеры из старых постов могут уже не работать.
Что положить в навык
Хороший skill отвечает на четыре вопроса: когда он нужен, куда смотреть, чего нельзя ломать
и как понять, что всё готово. Пиши конкретно. «После изменения API обнови типы и запусти
npm test» агент выполнит, а «сделай качественно» пропустит мимо.
Ключи и пароли в skill не клади. Инструкция попадает в контекст модели, а оттуда может уехать в историю, логи или общий репозиторий.
Проверь на одной задаче
Добавь skill, открой новую сессию и дай агенту обычную задачу. Смотри на две вещи: вспомнил ли он нужный порядок и не полез ли со своими правилами туда, где они мешают. Если одно и то же указание приходится отменять раз за разом, описание слишком широкое. Сузь его или вынеси в отдельный навык.
Skill подсказывает агенту, как работать, но доступов не даёт. Чтобы агент ходил в GitHub, базу или браузер, нужен отдельный инструмент, например MCP-сервер.
Если менять нужно не инструкцию, а саму модель или права, то это уже не навык, а отдельный агент — про них есть разбор режимов и агентов в OpenCode.
Если нужен десктопный агент, посмотри свои навыки для Доки: там формат файла и примеры из обычной работы. А для действий во внешних системах начни с MCP-сервера в OpenCode.