architect/_archive/2025-11-26-cleanup/cifra/agents/orchestrator/ai/prompts/plan_creation.md

Промпт: Создание плана выполнения

Назначение: Генерация оптимального плана для выполнения задачи пользователя


Входные данные

{
    "task_type": str,  # CREATE_PROJECT | ADD_FEATURE | FIX_BUG | DIAGNOSTIC | DEPLOY
    "task_description": str,  # Описание задачи от пользователя
    "context": dict,  # Текущий контекст (проект, история и т.д.)
    "constraints": dict  # Ограничения (время, ресурсы)
}

Алгоритм

1. Анализ задачи

ЕСЛИ task_type == "CREATE_PROJECT":
    Извлечь: project_name, project_type, template
    Определить: технологический стек, архитектуру

ЕСЛИ task_type == "ADD_FEATURE":
    Извлечь: feature_name, affected_modules
    Определить: зависимости, тесты

ЕСЛИ task_type == "FIX_BUG":
    Извлечь: bug_description, severity, affected_components
    Определить: root cause, regression tests

2. Построение последовательности агентов

Базовые шаблоны:

CREATE_PROJECT:
  - agent: Projector
    task: "Создать структуру проекта {{project_name}}"
    output: "projects/{{project_name}}/"

  - agent: Designer
    task: "Спроектировать архитектуру для {{project_type}}"
    output: "design/ARCHITECTURE.md"
    depends_on: [Projector]

  - agent: Developer
    task: "Создать MVP с технологиями: {{tech_stack}}"
    output: "solution/mvp/"
    depends_on: [Designer]

  - agent: Tester
    task: "Создать и запустить базовые тесты"
    output: "tests/"
    depends_on: [Developer]

  - agent: Documenter
    task: "Создать документацию проекта"
    output: "design/PROJECT.md, management/README.md"
    depends_on: [Projector, Designer, Developer]

ADD_FEATURE:
  - agent: Designer
    task: "Спроектировать фичу {{feature_name}}"
    output: "design/features/{{feature_name}}.md"

  - agent: Developer
    task: "Реализовать {{feature_name}}"
    output: "solution/*/{{feature_modules}}"
    depends_on: [Designer]

  - agent: Tester
    task: "Написать тесты для {{feature_name}}"
    output: "tests/test_{{feature_name}}.py"
    depends_on: [Developer]

  - agent: Documenter
    task: "Обновить документацию"
    output: "management/CHANGELOG.md"
    depends_on: [Developer]

FIX_BUG:
  - agent: Developer
    task: "Локализовать причину: {{bug_description}}"

  - agent: Developer
    task: "Исправить баг"
    depends_on: [Developer#1]

  - agent: Tester
    task: "Проверить fix и regression"
    depends_on: [Developer#2]

  - agent: Deployer
    task: "Развернуть исправление на production"
    depends_on: [Tester]
    condition: "severity >= HIGH"

DIAGNOSTIC:
  - agent: Monitor
    task: "Проверить здоровье системы"
    parallel: true

  - agent: Optimizer
    task: "Проанализировать производительность"
    parallel: true

  - agent: Security
    task: "Проверить безопасность"
    parallel: true

  - agent: Logger
    task: "Собрать статистику использования"
    depends_on: [Monitor, Optimizer, Security]

3. Оптимизация плана

def optimize_plan(plan: List[Step]) -> List[Step]:
    """
    Оптимизирует план для быстрого выполнения.
    """
    # Найти шаги которые могут выполняться параллельно
    parallel_steps = find_independent_steps(plan)

    # Сгруппировать параллельные шаги
    optimized = group_parallel(plan, parallel_steps)

    # Убрать избыточные шаги
    optimized = remove_redundant(optimized)

    return optimized

Выходной формат

{
  "plan_id": "uuid",
  "task_type": "CREATE_PROJECT",
  "estimated_time": "5-7 минут",
  "estimated_tokens": 15000,
  "steps": [
    {
      "step_number": 1,
      "agent": "Projector",
      "task": "Создать структуру проекта analytics",
      "expected_output": "projects/analytics/",
      "depends_on": [],
      "parallel_with": [],
      "estimated_time": "30 секунд"
    },
    {
      "step_number": 2,
      "agent": "Designer",
      "task": "Спроектировать архитектуру",
      "expected_output": "design/ARCHITECTURE.md",
      "depends_on": [1],
      "parallel_with": [],
      "estimated_time": "2 минуты"
    },
    // ... остальные шаги
  ],
  "risks": [
    "Возможна необходимость уточнения требований",
    "Тестирование может занять больше времени"
  ],
  "alternatives": [
    "Использовать готовый template для ускорения"
  ]
}

Пример использования

Вход:

{
    "task_type": "CREATE_PROJECT",
    "task_description": "Создать проект analytics для отчётности по продажам",
    "context": {
        "user": "admin",
        "workspace": "/opt/claude-workspace/"
    },
    "constraints": {
        "time_limit": "10 minutes",
        "tech_stack": ["Python", "Streamlit", "PostgreSQL"]
    }
}

Промпт для Claude:

Создай план выполнения для задачи:

Тип: CREATE_PROJECT
Описание: Создать проект analytics для отчётности по продажам
Технологии: Python, Streamlit, PostgreSQL
Ограничение: 10 минут

Используя агентов:
- Projector (создание структуры)
- Designer (архитектура)
- Developer (код)
- Tester (тесты)
- Documenter (документация)

Создай оптимальный план с учётом зависимостей и возможности параллельного выполнения.

Выход:

📋 ПЛАН ВЫПОЛНЕНИЯ

Задача: Создать проект analytics
Время: ~6-8 минут
Токены: ~18,000

Шаги:

1. [30с] Projector: Создать структуру проекта
   → projects/analytics/{design,management,solution,infrastructure}

2. [2м] Designer: Спроектировать архитектуру БД и отчётов
   → design/ARCHITECTURE.md (таблицы sales, products, reports)
   → Зависит от: [1]

3. [3м] Developer: Создать Streamlit MVP
   → solution/mvp/ (страницы: dashboard, sales_report, filters)
   → Зависит от: [2]

4. [1м] Tester: Базовое тестирование
   → tests/test_basic.py (8 тестов)
   → Зависит от: [3]

5. [1м] Documenter: Создать документацию
   → design/PROJECT.md, management/README.md, management/CHANGELOG.md
   → Зависит от: [1,2,3]

⚡ Оптимизации:
- Шаги 4 и 5 могут выполняться параллельно (экономия 1 минуты)

⚠️ Риски:
- Интеграция с PostgreSQL может потребовать дополнительной настройки

💡 Альтернативы:
- Использовать template streamlit-analytics-v1 для ускорения на 50%

Продолжить? (да/нет/изменить)

Статус: ✅ Готов к использованию