Слеш-команды (промпты)¶
Это специальные заготовки промптов, которые начинаются с символа / и позволяют быстро выполнять предопределённые действия в Koda. Они доступны в режимах Чат, Агент и Планирование.
Слеш-команды упрощают работу с AI, предоставляя готовые сценарии для типовых задач.
Каждая команда должна иметь уникальное имя и описание.
Как использовать¶
- Введите / в поле ввода чата
- Выберите команду из выпадающего списка
- Нажмите Enter
Перед этим можно выделить часть текста в редакторе и нажать Ctrl/⌘ + L. Тогда выделенный текст будет подготовлен для отправки в следующем сообщении. Это позволит модели сфокусироваться на указанном участке.
Примеры: /explain, /review, /kodamd, /summarize
Несколько команд в одном сообщении¶
В одно сообщение можно добавить несколько разных команд. Каждая добавленная команда отображается в поле ввода отдельным блоком.
- Команда, которая уже добавлена в сообщение, исключается из выпадающего списка — добавить её второй раз нельзя.
- Каждый блок команды удаляется отдельно: остальные команды и текст сообщения сохраняются.
- Чтобы вернуть команду в список, удалите её блок из поля ввода.
- Текст внутри блока команды недоступен для редактирования: содержимое промпта задаётся только в конфигурации, а ваши дополнения пишутся обычным текстом рядом с блоком.
- Пока сообщение обрабатывается, удалить блок команды из него нельзя — он становится доступен для удаления после завершения обработки.
Встроенные команды¶
Koda поставляется с небольшим набором встроенных слеш-команд. Их невозможно переопределить или удалить.
/kodamd¶
Создаёт или обновляет контекстный файл KODA.md в корне текущего открытого проекта с описанием правил и технических подробностей.
См. также: Контекстные файлы
Как работает:
- Анализирует структуру проекта
- Определяет технологии и фреймворки
- Создаёт файл
KODA.mdс правилами - Добавляет лучшие практики для проекта
Результат:
# KODA.md — Правила проекта
## Технологии
- TypeScript
- React
- Node.js
## Стиль кода
- Использовать ESLint
- Следовать Airbnb Style Guide
## Структура
- Компоненты в `/components`
- Хуки в `/hooks`
/summarize¶
Сжимает контекст, создавая краткий конспект всего диалога для экономии токенов.
Когда использовать:
- Диалог стал слишком длинным (>20 сообщений)
- Предупреждение о переполнении контекста (75%+)
- Завершение этапа работы
- Перед переключением на новую задачу
- Хотите сохранить ключевые решения
Как работает:
- Анализирует всю историю диалога
- Выделяет ключевые решения и изменения
- Сохраняет информацию о файлах и инструментах
- Создаёт краткий конспект
- Добавляет summary сообщение в историю
Результат: ранние сообщения диалога заменяются кратким конспектом, засчёт чего освобождается место в контексте.
Автоматическая суммаризация:
- Срабатывает, когда расход входных токенов достигает порога сжатия (75% окна модели, а для окон больше 40 000 токенов — окно минус 40 000)
- Только в агентском режиме
- Следующий запрос модели отправляется только после завершения сжатия — в чате в это время виден статус «Сжатие контекста...»
- Управляется настройкой Автоматическое сжатие контекста на странице Пользовательские настройки
- Параметр конфигурации —
autoSummarize
См. также: Суммаризация диалогов
Пользовательские команды¶
Вы можете создавать собственные слеш-команды в конфигурации. Причём как глобально, для использования только на своей машине, так и в репозитории проекта.
- Глобальные команды задаются в секции
promptsфайла~/.koda/config.yaml. - Локальные команды хранятся в отдельных
.prompt-файлах в папке.koda/prompts/проекта. Они поддерживают продвинутый синтаксис: переменные, условия, циклы и контекст-провайдеры.
Подробно о настройке команд
- Prompts — структура секции
prompts, свойства и примеры команд - Prompt Files — формат
.prompt-файлов, преамбула и синтаксис тела - Переменные в промптах —
{{{ input }}},{{ code }},{{ file }}и ограничения переменных
Использование:
- Выделите код и нажмите Ctrl/⌘ + L для добавления к новому сообщению
- Введите
/explain - Нажмите Enter
Примеры команд для рефакторинга и документации кода:
prompts:
- name: "refactor"
description: "Рефакторинг кода"
prompt: "Улучши этот код: сделай его чище, производительнее и читаемее. Объясни изменения."
- name: "doc"
description: "Создать документацию"
prompt: "Создай документацию для этого кода в формате JSDoc"
Использование:
Динамические промпты¶
Используйте шаблоны для динамических промптов:
prompts:
- name: "commit"
description: "Сгенерировать сообщение коммита"
prompt: "Создай сообщение коммита без использования conventional commits на основе этих изменений: {{diff}}"
Переменные:
{{diff}}— текущие изменения{{file}}— текущий файл{{selection}}— выделенный текст
Команды из MCP-серверов¶
MCP-серверы могут предоставлять свои слеш-команды.
При подключении такого MCP-сервера они автоматически становятся доступны в чате.
Приоритет команд¶
Если у команд совпадают имена, core выполняет первую команду в порядке загрузки:
- встроенные команды (
/kodamd,/summarize); .prompt-файлы;- команды из секции
promptsфайлаconfig.yaml; - команды подключённых MCP-серверов.
Поэтому встроенные команды переопределить нельзя, а при совпадении имён пользовательской и MCP-команды сработает та, что загружена раньше. Чтобы не было путаницы, имена команд лучше делать уникальными.
Лучшие практики¶
1. Именование команд¶
✅ Хорошо:
/refactor— понятно/doc— кратко/test-unit— специфично
❌ Плохо:
/do-the-thing— непонятно/my-super-command-123— слишком длинно/test— слишком обще (если есть/test-unit,/test-e2e)
2. Описание команд¶
✅ Хорошо:
❌ Плохо:
3. Промпты¶
✅ Хорошо:
❌ Плохо: