Продолжаем анализировать паттерны проектирования агентов из репозитория https://github.com/x1xhlol/system‑prompts‑and‑models‑of‑ai‑tools и после разбора XML‑тегов в первой части переходим к следующему ключевому элементу.
Речь пойдет о механизме To‑Do list (списка задач) — одном из самых важных и часто встречающихся паттернов в продвинутых системных промптах. Его реализация и цели могут сильно различаться.

Список агентов и решений, которые используют механизм To‑Do List или аналогичные системы планирования:
Augment Code
Claude Code
Cursor Prompts
Kiro
Manus Agent Tools & Prompt
Codex CLI
Qoder
Same.dev
Trae
v0 Prompts and Tools
VSCode Agent
Windsurf
Z.ai Code
Traycer AI
1. Augment Code
Как реализовано: Через формальный набор инструментов (
add_tasks
,update_tasks
,reorganize_tasklist
). Промпт предписывает четкие состояния для каждой задачи, которые, вероятно, отображаются в UI:[ ]
(не начато),[/]
(в процессе),[x]
(завершено).Особенности и цель: Здесь
todo list
— это инструмент для управления сложными, многошаговыми задачами. Промпт вводит триггеры (Tasklist Triggers
в версии для GPT-5), которые заставляют агента использовать этот механизм при определенных условиях (например, если изменения затрагивают несколько файлов). Цель — структурирование работы и инкрементальное, управляемое выполнение.
2. Claude Code
Как реализовано: Через инструмент
TodoWrite
. Промпт требует использовать его ОЧЕНЬ часто (VERY frequently
).Особенности и цель: Это уникальная реализация. В среде командной строки (CLI) у пользователя нет графического интерфейса, чтобы видеть, что делает агент. Здесь
todo list
используется так же как основной канал коммуникации и обратной связи. Агент проговаривает свои действия, создавая и отмечая задачи.
3. Cursor Prompts
Как реализовано: Через инструмент
todo_write
.Особенности и цель: Это одна из самых продвинутых реализаций. Промпт не просто дает инструмент, он учит модель, как правильно им пользоваться. Секция
<todo_spec>
содержит правила, что такое хороший пункт плана (не более 14 слов, начинается с глагола) и что такое плохой. Цель — не просто планирование, а обучение модели созданию качественных, высокоуровневых и осмысленных планов.
4. Kiro
Как реализовано: Через файл‑артефакт. В специализированном режиме
Spec mode
агент проходит через этапы «Требования → Дизайн → План». Конечным продуктом этого воркфлоу является файлtasks.md
, который содержит список задач с чекбоксами.Особенности и цель: Здесь
todo list
— это формальный, персистентный артефакт, который создается в файловой системе проекта. Он является результатом большого этапа проектирования. Цель — создание детального и долгосрочного плана реализации фичи, который потом может исполняться по частям.
5. Manus Agent Tools & Prompt
Как реализовано: Гибридная система. Промпт говорит о существовании внешнего
<planner_module>
, который присылает агенту высокоуровневый план. Агент, в свою очередь, должен создать и поддерживать более детальный план в файлеtodo.md
.Особенности и цель: Это иерархическая система планирования. Есть стратегический план от планировщика, и есть тактический, детальный план в
todo.md
, который ведет сам агент. Цель — связать высокоуровневые бизнес‑цели с низкоуровневыми задачами исполнения.
6. Codex CLI
Как реализовано: Через инструмент
update_plan
.Особенности и цель: Очень похоже на
Cursor
. Промпт также содержит примеры хороших и плохих планов, чтобы обучить модель качественному планированию. План является важной частью коммуникации с пользователем в CLI, показывая, как агент собирается решать задачу.
7. Qoder
Как реализовано: Через инструменты
add_tasks
иupdate_tasks
.Особенности и цель: Промпт четко разделяет задачи на простые (до 3 шагов), где планирование не нужно, и сложные, где оно обязательно. Это прагматичный подход, который не перегружает простые задачи излишней бюрократией.
8. Same.dev
Как реализовано: Через файл‑артефакт. Промпт (
<memos>
) предписывает агенту создать и поддерживать файл.same/
todos.md
.Особенности и цель: Как и в
Kiro
, это внешняя, персистентная память для плана. Это делает работу агента прозрачной для пользователя и устойчивой к прерываниям сессии. Агент обязан обновлять этот файл в начале и в конце своего хода, что делает ведение плана строгим ритуалом.
9. v0 Prompts and Tools
Как реализовано: Через специализированного субагента
TodoManager
. Основной агент не управляет списком сам, а вызывает субагента с командамиset_tasks
,move_to_task
и т. д.Особенности и цель: Это архитектурный паттерн разделение ответственности. Задача управления планом вынесена в отдельный, специализированный компонент. Это делает систему более модульной. Промпт также требует создавать milestone‑level tasks (задачи уровня вех), а не микро‑задачи, что указывает на фокус на высокоуровневом, стратегическом планировании.
10. VSCode Agent
Как реализовано: Через инструмент
manage_todo_list
.Особенности и цель: Промпт
gpt-5.txt
содержит разделtodoListToolInstructions
, который требует использоватьtodo list
для всех многошаговых задач. Описан очень строгий «CRITICAL workflow»: 1) Спланируй, 2) Отметь ОДНУ задачу какin-progress
, 3) Выполни ее, 4) СРАЗУ отметь какcompleted
, 5) Переходи к следующей. Цель — максимальная прозрачность, методичность и предотвращение расфокусировки агента.
11. Traycer AI
Как реализовано: Это система генерации плана как конечного продукта. Агент‑техлид в режиме
phase_mode
использует инструментwrite_phases
для создания высокоуровневого плана (фаз).Особенности и цель: В отличие от других систем, здесь агент не использует план для своей работы, а создает его для других (вероятно, для других агентов или для пользователя).
Общие выводы и паттерны
Повсеместное распространение: Механизмы планирования и
todo list
являются стандартом де‑факто для любого серьезного кодинг‑агента, который решает задачи сложнее одного действия.-
Три основных способа реализации:
Управление через инструменты (Tool‑Based): Самый частый подход. Агент использует инструменты (
todo_write
,update_plan
) для интерактивного управления списком задач. (Примеры:Cursor
,ClaudeCode,
Codex CLI
,VSCode Agent
).Управление через файлы (File‑Based): План хранится в виде
.md
файла в проекте. Это делает его персистентным и легко читаемым для пользователя. (Примеры:Kiro
,Same.dev
,Manus
).Управление через субагента (Agent‑Based): Задача планирования делегируется отдельному специализированному агенту. (Пример:
v0
).
Зачем агенту нужен план? От декомпозиции до управления вниманием
На первый взгляд, ответ очевиден: чтобы разбить сложную задачу на простые шаги. Но это лишь верхушка айсберга. Механизмы планирования и To‑Do листы решают несколько критических проблем. Одна из них — склонность LLM уходить от темы и забывать предыдущие цели, особенно в длинных контекстах или при работе со сложными задачами.
1. Управление вниманием посредством декламации
При выполнении длинных задач, состоящих из десятков шагов (типичная сессия агента может включать 20+ вызовов инструментов), модель рискует потеряться в середине — забыть первоначальную цель или увлечься побочной задачей.
Постоянно обновляя To‑Do лист и отмечая выполненные пункты, агент помещает актуальный план в конец своего контекста. Это не случайное действие, а целенаправленный механизм манипулирования вниманием. Перенося глобальный план в самую свежую часть своей памяти, агент постоянно напоминает себе о главных целях. Он как бы декламирует план снова и снова, не давая своему вниманию рассеяться. Это элегантное решение промтинга для смещения фокуса модели на стратегическую цель, не требуя сложных архитектурных изменений.
2. Декомпозиция сложности и повышение качества
Это более классическая, но не менее важная причина.
От хаоса к структуре: План превращает одну большую и абстрактную задачу в последовательность маленьких, конкретных и выполнимых действий.
Проектирование до кода: Сам процесс создания плана — это уже этап проектирования. Как видно из примеров Cursor и Codex CLI, промпты заставляют агента создавать хорошие, детализированные планы. Это заставляет модель сначала продумать решение, а не бросаться писать код, что кардинально повышает качество итогового результата.
3. Управляемость и сотрудничество
План — это ключевой элемент интерфейса между человеком и ИИ.
Дорожная карта для пользователя: Вместо того чтобы наблюдать за черным ящиком, пользователь видит намерения агента. Это позволяет вовремя вмешаться, скорректировать курс или просто быть в курсе происходящего.
Точка синхронизации: План становится общим пространством для работы. Пользователь может редактировать план, добавляя или удаляя задачи, превращая монолог агента в диалог и совместную работу.
Мысли в качестве вывода
Концепция динамических To‑Do list пытается решить фундаментальные проблемы, с дрейфом целей и декомпозиции сложных задач, но на практике это не всегда срабатывает.
На мой взгляд, причина в том, что To‑Do list является слишком низкоуровневым инструментом для решения проблемы более высокого порядка. Для эффективного управления сложными процессами требуется некоторая высокоуровневая концептуальная рамка, но пока топовые агенские системы ее не использую, хотя умный поиск дает некоторые методы и подходы:
CBR‑системы используют адаптацию прошлого опыта для новых задач.
Memory‑augmented агенты поддерживают долгосрочный контекст и персонализацию.
Reflection‑based системы включают механизмы самокоррекции и обучения на ошибках.
Обо всём об этом, без лишней воды и хайповых новостей в стиле — «вышла новая ChatGPT o56_turbo_MAX_better_than_yesterday» — в моем телеграмм канале Агент LLM
bibiw_one
Ссылка на первую часть в начале статьи битая
DmitriiFilippov Автор
Спасибо! поправил