# Установка ## Начать с агентом Откройте агент в репозитории вашего приложения и передайте ему запрос: ```text Прочитай https://wf.mdmatvey.com/doc/llms.txt и нужные страницы из него. Помоги установить Workflow Platform и собрать первый workflow в моём приложении. Сначала определи установленную версию SDK и режим: отдельный сервер или Python SDK. Сверь формат workflow и доступные операции с установленной версией SDK. Сценарии и настройки приложения храни отдельно от движка, объяви входы и выходы. Сначала найди готовый workflow, блок или плагин в магазине /store/. Проверь результат на изолированных данных. ``` Если вы меняете саму платформу, начните с её `AGENTS.md` и `CLAUDE.md`. Для приложения используйте [правила агентской разработки](/doc/agents). ## Пакет Python 3.12+. Ядро устанавливается отдельно: ```bash python -m pip install -c https://wf.mdmatvey.com/store/releases/0.3.1/constraints.txt 'workflow-platform==0.3.1' ``` Блоки в ядро не входят. Выберите их в магазине; кнопка установки даёт команду с нужными extras и закреплённой версией. Например, `workflow-platform-db[postgresql]==0.3.1` устанавливает блок `db` и только выбранный драйвер. Точные зависимости зафиксируйте в lock-файле приложения. ## Версии | Версия | Доступность | | --- | --- | | SDK 0.3, формат v2 | Блоки, плагины, конструкции и примеры магазина | | SDK 0.3, формат v1 | Явный пакет `workflow-platform-legacy-blocks==0.3.1` для совместимости | | SDK 0.2 | Предыдущая версия; собственные v1-контракты, без автоматической миграции | | Харнесс | `workflow-platform agent init`; [подключение](/doc/agents#подключить-комплект) | | MCP | Отдельный процесс чтения документации; [настройка](/doc/agents#mcp-документации) | Wheel-файлы и SHA-256 публикуются в релизе магазина. Ограничения версий указывают на эти артефакты; устанавливаются только выбранные пакеты. Из исходников используйте закреплённую ревизию платформы. Пакеты блоков при этом по-прежнему выбираются отдельно. ## Отдельный сервер Для UI, API, аккаунтов, расписаний и согласований: ```python from pathlib import Path from workflow_platform import create_app app = create_app(workflows=Path(__file__).parent / "definitions") ``` Запуск — через uvicorn или `workflow-platform --workflows ./definitions`. CLI по умолчанию слушает локальный порт 3000; внешний домен и HTTPS настраиваются на прокси. | Настройка | Назначение | | --- | --- | | `DATABASE_URL` | База инсталляции | | `SECRET_STORE_KEY` | Ключ шифрования секретов | | `WORKFLOWS_DIR` | Каталог сценариев, если не передан аргументом | ## Вызов из Python `WorkflowEngine` выполняет сценарий внутри вашего приложения на Python без HTTP-сервера. [Рабочий пример →](/doc/start/quickstart) Устойчивые очереди, расписания и согласования требуют серверного хранилища состояния. Встроенный SDK без него отказывает в этих возможностях до выполнения действий. ## Данные и обновление Сохраняйте базу, файлы, ключ шифрования и настройки приложения вне Git. При переносе нужно сохранить ID запусков, решения, секреты и расписания. Ожидающие процессы нельзя переводить на новый YAML простой подменой файла. Одновременно работают один планировщик и один потребитель бота. Неопределённый результат внешней записи сначала проверяется; публикации автоматически не повторяются. Текущий режим рассчитан на доверенного автора сценариев. CLI не изолирует чужой код. Публичный SaaS с выполнением недоверенного кода отложен.