← Блог

Почему model: в slash-командах — это ловушка

Сережа Рис · 9 января 2026

Решил сэкономить на токенах. Сделал команду /readme с model: haiku.

Запустил — вроде работает.

Только потом понял, что Opus всё это время делал работу сам.

Что я хотел

Идея простая: README генерировать на дешёвой модели. Haiku справится, зачем платить за Opus? Добавил в frontmatter команды model: haiku — логично же.

А оно не так работает.

Когда запускаешь slash-команду, её текст просто вливается в основной контекст. Какая модель этот контекст обрабатывает — та и выполняет. model: в frontmatter меняет модель, но текст команды всё равно летит в общий котёл.

/readme → текст команды вливается в контекст → Opus читает и делает

169 тысяч токенов в контексте. А если через отдельного агента — 21 тысяча. В восемь раз меньше.

Три механизма, которые путают

В Claude Code есть три штуки с похожими названиями. Выглядят одинаково, работают по-разному.

Что Как работает Отдельная модель?
Commands Текст вливается в контекст Нет
Skills То же самое, через Skill tool Нет
Agents Task tool запускает отдельный процесс Да
⚠️ Нюанс про model: в командах

Работает только с полными названиями моделей типа claude-sonnet-4-5-20250929. Алиасы вроде sonnet или haiku игнорируются. Но даже если указать полное название — изоляции не будет. Текст всё равно попадёт в общий контекст.

Как на самом деле делегировать

💡 Только Task tool создаёт отдельный процесс

Хочешь чтобы Haiku работал отдельно — вызывай Task tool явно. Commands и Skills для этого не подходят, они просто способ подсунуть текст в контекст.

Решение называется «тонкий диспетчер». Команда ничего не делает сама — только говорит вызвать нужного агента.

/readme → диспетчер → Task tool → Haiku-агент работает отдельно
~/.claude/commands/readme.md
# ~/.claude/commands/readme.md
---
description: Генерация README через Haiku
---
Немедленно запусти субагента.

**Параметры Task tool:**
- subagent_type: "readme-writer"
- model: "haiku"
- prompt: "Сгенерируй README.md"

**Правила:**
1. Сам ничего не генерируй
2. Только запусти агента и верни результат

Сам агент лежит в .claude/agents/readme-writer.md. Там уже написано что делать и как. Команда просто его триггерит.

Когда это нужно

Имеет смысл когда:

Не парься когда:

И да — после создания агента перезапусти сессию. Изменения подхватываются только при старте.

Источники