Back to Aionui

Планирование с файлами — Файловое планирование в стиле Manus

src/process/resources/assistant/planning-with-files/planning-with-files.ru-RU.md

1.9.2514.7 KB
Original Source

Планирование с файлами — Файловое планирование в стиле Manus

Работайте как Manus (ИИ-агент за $2 млрд, приобретённый Meta): Используйте постоянные markdown-файлы как «рабочую память на диске».

Основной принцип

Контекстное окно = ОЗУ (летучее, ограниченное)
Файловая система = Диск (постоянное, неограниченное)

→ Всё важное записывается на диск.

Паттерн из 3 файлов

Для каждой сложной задачи создайте ТРИ файла в директории проекта:

task_plan.md      → Отслеживание фаз и прогресса
findings.md       → Хранение исследований и находок
progress.md       → Журнал сессии и результаты тестов

Шаблоны доступны по адресу: assistant/planning-with-files/templates/

Когда использовать этот паттерн

Используйте для:

  • Многошаговых задач (3+ шагов)
  • Исследовательских задач
  • Проектов создания/построения
  • Задач, требующих множества вызовов инструментов
  • Всего, что требует организации

Пропустите для:

  • Простых вопросов
  • Редактирования одного файла
  • Быстрых поисков

Критические правила времени

Эти правила имитируют хуки для обеспечения правильного рабочего процесса:

📌 В начале задачи (SessionStart)

ОБЯЗАТЕЛЬНО создайте все три файла ПЕРВЫМИ перед любой другой работой:

  1. Создать task_plan.md по шаблону
  2. Создать findings.md по шаблону
  3. Создать progress.md по шаблону
  4. Заполнить раздел Goal в task_plan.md

Зачем: Без файлов планирования вы забудете цели после 50+ вызовов инструментов.

📌 Перед важными решениями (PreToolUse)

ОБЯЗАТЕЛЬНО перечитайте task_plan.md перед:

  • Записью или редактированием файлов
  • Выполнением команд
  • Принятием архитектурных решений
  • Реализацией функций

Как: Используйте инструмент Read для обновления плана в контексте.

Зачем: Это сохраняет цели свежими в вашем окне внимания («манипуляция вниманием» Manus).

📌 После операций с файлами (PostToolUse)

ОБЯЗАТЕЛЬНО обновите статус немедленно после:

  • Записи файлов
  • Редактирования файлов
  • Завершения фазы задачи

Как: Отредактируйте task_plan.md для обновления статуса фазы:

markdown
- **Status:** pending → in_progress → complete

Зачем: Отслеживает прогресс и предотвращает потерю информации о том, что сделано.

📌 Перед завершением задачи (Stop)

ОБЯЗАТЕЛЬНО проверьте завершение:

  • Убедитесь, что все фазы отмечены как complete
  • Просмотрите раздел deliverables
  • Убедитесь, что не осталось неразрешённых ошибок

Зачем: Предотвращает преждевременное завершение с недостающей работой.

6 критических правил

1. Сначала создайте план

Никогда не начинайте сложную задачу без task_plan.md. Без исключений.

markdown
## Goal

[Одно предложение, описывающее конечное состояние]

## Current Phase

Phase 1

## Phases

### Phase 1: Requirements & Discovery

- [ ] Understand user intent
- [ ] Identify constraints
- **Status:** in_progress

2. Правило 2 действий

«После каждых 2 операций просмотра/браузера/поиска НЕМЕДЛЕННО сохраняйте ключевые находки в findings.md.»

Это предотвращает потерю визуальной/мультимодальной информации.

markdown
## Visual/Browser Findings

- Screenshot shows login form with email and password fields
- API documentation indicates JSON response format

3. Читайте перед решением

Перед важными решениями прочитайте файл плана. Это сохраняет цели в вашем окне внимания.

bash
# Перед реализацией функции:
Read tool → task_plan.md
# Теперь приступайте к реализации

4. Обновляйте после действия

После завершения любой фазы:

  • Отметьте статус фазы: pendingin_progresscomplete
  • Запишите все встреченные ошибки
  • Отметьте созданные/изменённые файлы
markdown
## Errors Encountered

| Error             | Attempt | Resolution             |
| ----------------- | ------- | ---------------------- |
| FileNotFoundError | 1       | Created default config |

5. Записывайте ВСЕ ошибки

Каждая ошибка заносится в файл плана. Это создаёт знания и предотвращает повторения.

6. Никогда не повторяйте неудачи

if action_failed:
    next_action != same_action

Отслеживайте, что вы пробовали. Изменяйте подход.

Протокол ошибок «3 удара»

ПОПЫТКА 1: Диагностика и исправление
  → Внимательно прочитайте ошибку
  → Определите первопричину
  → Примените целенаправленное исправление

ПОПЫТКА 2: Альтернативный подход
  → Та же ошибка? Попробуйте другой метод
  → Другой инструмент? Другая библиотека?
  → НИКОГДА не повторяйте точно то же неудачное действие

ПОПЫТКА 3: Более широкое переосмысление
  → Поставьте под сомнение предположения
  → Ищите решения
  → Рассмотрите обновление плана

ПОСЛЕ 3 НЕУДАЧ: Эскалация к пользователю
  → Объясните, что вы пробовали
  → Покажите конкретную ошибку
  → Попросите руководства

Назначение файлов

ФайлНазначениеКогда обновлять
task_plan.mdФазы, прогресс, решенияПосле каждой фазы
findings.mdИсследования, открытияПосле ЛЮБОГО открытия
progress.mdЖурнал сессии, результаты тестовНа протяжении сессии

Матрица решений Read vs Write

СитуацияДействиеПричина
Только что записали файлНЕ читайтеСодержимое ещё в контексте
Просмотрели изображение/PDFЗапишите находки СЕЙЧАСМультимодальное → текст до потери
Браузер вернул данныеЗаписать в файлСкриншоты не сохраняются
Начало новой фазыПрочитать план/находкиПереориентация при устаревании контекста
Произошла ошибкаПрочитать релевантный файлНужно текущее состояние для исправления
Возобновление после перерываПрочитать все файлы планированияВосстановление состояния

Тест перезагрузки из 5 вопросов

Если вы можете ответить на них, ваше управление контекстом в порядке:

ВопросИсточник ответа
Где я?Текущая фаза в task_plan.md
Куда я иду?Оставшиеся фазы
Какова цель?Утверждение цели в плане
Что я узнал?findings.md
Что я сделал?progress.md

Структура шаблонов

Шаблон task_plan.md

markdown
# Task Plan: [Brief Description]

## Goal

[One sentence describing the end state]

## Current Phase

Phase 1

## Phases

### Phase 1: Requirements & Discovery

- [ ] Understand user intent
- [ ] Identify constraints and requirements
- [ ] Document findings in findings.md
- **Status:** in_progress

### Phase 2: Planning & Structure

- [ ] Define technical approach
- [ ] Create project structure if needed
- [ ] Document decisions with rationale
- **Status:** pending

### Phase 3: Implementation

- [ ] Execute the plan step by step
- [ ] Write code to files before executing
- [ ] Test incrementally
- **Status:** pending

### Phase 4: Testing & Verification

- [ ] Verify all requirements met
- [ ] Document test results in progress.md
- [ ] Fix any issues found
- **Status:** pending

### Phase 5: Delivery

- [ ] Review all output files
- [ ] Ensure deliverables are complete
- [ ] Deliver to user
- **Status:** pending

## Key Questions

1. [Question to answer]
2. [Question to answer]

## Decisions Made

| Decision | Rationale |
| -------- | --------- |
|          |           |

## Errors Encountered

| Error | Attempt | Resolution |
| ----- | ------- | ---------- |
|       | 1       |            |

Шаблон findings.md

markdown
# Findings & Decisions

## Requirements

## <!-- Captured from user request -->

## Research Findings

## <!-- Key discoveries during exploration -->

## Technical Decisions

<!-- Decisions made with rationale -->

| Decision | Rationale |
| -------- | --------- |
|          |           |

## Issues Encountered

<!-- Errors and how they were resolved -->

| Issue | Resolution |
| ----- | ---------- |
|       |            |

## Resources

## <!-- URLs, file paths, API references -->

## Visual/Browser Findings

## <!-- CRITICAL: Update after every 2 view/browser operations -->

Шаблон progress.md

markdown
# Progress Log

## Session: [DATE]

### Phase 1: [Title]

- **Status:** in_progress
- **Started:** [timestamp]
- ## Actions taken:
- ## Files created/modified:

## Test Results

| Test | Input | Expected | Actual | Status |
| ---- | ----- | -------- | ------ | ------ |
|      |       |          |        |        |

## Error Log

| Timestamp | Error | Attempt | Resolution |
| --------- | ----- | ------- | ---------- |
|           |       | 1       |            |

## 5-Question Reboot Check

| Question             | Answer           |
| -------------------- | ---------------- |
| Where am I?          | Phase X          |
| Where am I going?    | Remaining phases |
| What's the goal?     | [goal statement] |
| What have I learned? | See findings.md  |
| What have I done?    | See above        |

Антипаттерны

Не делайтеДелайте вместо этого
Использовать TodoWrite для постоянстваСоздать файл task_plan.md
Один раз озвучить цели и забытьПеречитывать план перед решениями
Скрывать ошибки и тихо повторятьЗаписывать ошибки в файл плана
Пихать всё в контекстХранить большой контент в файлах
Начинать выполнение немедленноСначала создать файл плана
Повторять неудачные действияОтслеживать попытки, менять подход

Принципы Manus

ПринципРеализация
Файловая система как памятьХранить в файлах, не в контексте
Манипуляция вниманиемПеречитывать план перед решениями
Постоянство ошибокЗаписывать неудачи в файл плана
Отслеживание целейЧекбоксы показывают прогресс
Проверка завершенияПроверить все фазы перед остановкой

Помните: Чем больше контекста вы соберёте заранее и запишете на диск, тем лучше будет ваше выполнение. Файлы — это ваша постоянная память.