@gian-tiaga/eda 0.8.6 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/MIGRATION.md +117 -0
  2. package/README.md +324 -71
  3. package/agents/eda-aim-executor/agent.json +15 -0
  4. package/agents/eda-aim-executor/prompt.md +61 -0
  5. package/agents/eda-aim-planner/agent.json +15 -0
  6. package/agents/eda-aim-planner/prompt.md +43 -0
  7. package/agents/eda-aim-verifier/agent.json +15 -0
  8. package/agents/eda-aim-verifier/prompt.md +57 -0
  9. package/agents/eda-commit-context/agent.json +15 -0
  10. package/agents/eda-commit-context/prompt.md +58 -0
  11. package/agents/eda-commit-executor/agent.json +15 -0
  12. package/agents/eda-commit-executor/prompt.md +87 -0
  13. package/agents/eda-merge-worktree-executor/agent.json +15 -0
  14. package/agents/eda-merge-worktree-executor/prompt.md +57 -0
  15. package/agents/eda-review-api/agent.json +15 -0
  16. package/agents/eda-review-api/prompt.md +34 -0
  17. package/agents/eda-review-architecture/agent.json +15 -0
  18. package/agents/eda-review-architecture/prompt.md +34 -0
  19. package/agents/eda-review-code-quality/agent.json +15 -0
  20. package/agents/eda-review-code-quality/prompt.md +34 -0
  21. package/agents/eda-review-correctness/agent.json +15 -0
  22. package/agents/eda-review-correctness/prompt.md +34 -0
  23. package/agents/eda-review-database/agent.json +15 -0
  24. package/agents/eda-review-database/prompt.md +34 -0
  25. package/agents/eda-review-documentation/agent.json +15 -0
  26. package/agents/eda-review-documentation/prompt.md +34 -0
  27. package/agents/eda-review-frontend/agent.json +15 -0
  28. package/agents/eda-review-frontend/prompt.md +34 -0
  29. package/agents/eda-review-performance/agent.json +15 -0
  30. package/agents/eda-review-performance/prompt.md +34 -0
  31. package/agents/eda-review-plan-alignment/agent.json +15 -0
  32. package/agents/eda-review-plan-alignment/prompt.md +34 -0
  33. package/agents/eda-review-previous-reviews/agent.json +15 -0
  34. package/agents/eda-review-previous-reviews/prompt.md +44 -0
  35. package/agents/eda-review-references/agent.json +15 -0
  36. package/agents/eda-review-references/prompt.md +34 -0
  37. package/agents/eda-review-rules/agent.json +15 -0
  38. package/agents/eda-review-rules/prompt.md +34 -0
  39. package/agents/eda-review-security/agent.json +15 -0
  40. package/agents/eda-review-security/prompt.md +34 -0
  41. package/agents/eda-review-tests/agent.json +15 -0
  42. package/agents/eda-review-tests/prompt.md +34 -0
  43. package/agents/eda-worktree-executor/agent.json +15 -0
  44. package/agents/eda-worktree-executor/prompt.md +49 -0
  45. package/bin/cli.js +4 -4
  46. package/lib/catalog.js +118 -0
  47. package/lib/install.js +763 -113
  48. package/lib/renderers/claude-agent.js +24 -0
  49. package/lib/renderers/claude-skill.js +11 -0
  50. package/lib/renderers/codex-agent.js +24 -0
  51. package/lib/renderers/codex-skill.js +3 -0
  52. package/package.json +5 -3
  53. package/skills/eda-aim/SKILL.md +212 -0
  54. package/skills/eda-commit/SKILL.md +124 -0
  55. package/skills/eda-commit/skill.json +6 -0
  56. package/skills/eda-discover-automations/SKILL.md +184 -0
  57. package/skills/{eda-explore.md → eda-explore/SKILL.md} +11 -8
  58. package/skills/{eda-fix.md → eda-fix/SKILL.md} +7 -6
  59. package/skills/{eda-fix-by-review.md → eda-fix-by-review/SKILL.md} +5 -4
  60. package/skills/{eda-manual-test.md → eda-manual-test/SKILL.md} +1 -1
  61. package/skills/eda-merge-worktree/SKILL.md +72 -0
  62. package/skills/eda-merge-worktree/skill.json +7 -0
  63. package/skills/eda-new-project/SKILL.md +163 -0
  64. package/skills/eda-orhestra/SKILL.md +146 -0
  65. package/skills/{eda-plan.md → eda-plan/SKILL.md} +39 -29
  66. package/skills/eda-plan-execute/SKILL.md +186 -0
  67. package/skills/{eda-plan-polish.md → eda-plan-polish/SKILL.md} +14 -13
  68. package/skills/eda-polish/SKILL.md +80 -0
  69. package/skills/eda-prepare-ai/SKILL.md +227 -0
  70. package/skills/eda-review/SKILL.md +212 -0
  71. package/skills/{eda-send-review.md → eda-send-review/SKILL.md} +66 -19
  72. package/skills/eda-send-review/skill.json +7 -0
  73. package/skills/eda-worktree/SKILL.md +73 -0
  74. package/skills/eda-worktree/skill.json +7 -0
  75. package/skills/eda-automate.md +0 -185
  76. package/skills/eda-commit.md +0 -91
  77. package/skills/eda-docs.md +0 -123
  78. package/skills/eda-execute.md +0 -140
  79. package/skills/eda-merge-worktree.md +0 -116
  80. package/skills/eda-polish.md +0 -113
  81. package/skills/eda-review-check.md +0 -149
  82. package/skills/eda-review.md +0 -173
  83. package/skills/eda-start.md +0 -233
  84. package/skills/eda-worktree.md +0 -113
  85. /package/skills/{eda-roadmap.md → eda-roadmap/SKILL.md} +0 -0
package/README.md CHANGED
@@ -1,9 +1,9 @@
1
1
  # 🌊 eda
2
2
 
3
3
  > Поточная разработка с AI-агентами — на русском языке.
4
- > Набор готовых скилов для **Claude Code** и **Codex CLI**, которые ведут тебя через весь цикл: от исследования до коммита.
4
+ > Пакет готовых скилов и специализированных агентов для **Claude Code** и **Codex CLI**, которые ведут тебя через весь цикл: от исследования до коммита.
5
5
 
6
- `eda` — это восемнадцать скилов, каждый отвечает за свой кусок работы. Вместо того чтобы каждый раз объяснять модели, как делать ревью или как исполнять план, ты говоришь одно слово — и она следует чёткой инструкции на русском, со всеми правилами, проверками и артефактами в нужных папках.
6
+ `eda` — это девятнадцать скилов и пакетные агенты для повторяемых ролей. Скил отвечает за пользовательский workflow и оркестрацию, агент — за изолированную работу с закреплённой моделью и ограничениями. Вместо того чтобы каждый раз объяснять модели, как делать ревью или как исполнять план, ты говоришь одно слово — и она следует чёткой инструкции на русском, со всеми правилами, проверками и артефактами в нужных папках.
7
7
 
8
8
  ---
9
9
 
@@ -13,21 +13,23 @@
13
13
  npm install -g @gian-tiaga/eda
14
14
  ```
15
15
 
16
+ Обновляешься с `0.8.x` или более ранней версии? Перед обновлением прочитай [гайд по миграции на 1.0](MIGRATION.md): в релизе изменились имена нескольких скилов, формат Codex-установки и структура `docs/settings.yaml`.
17
+
16
18
  В корне твоего проекта:
17
19
 
18
20
  ```bash
19
21
  eda init
20
22
  ```
21
23
 
22
- Установщик покажет чекбоксы: стрелками выбираешь среду, пробелом отмечаешь, Enter продолжает. Можно поставить Claude Code, Codex CLI или обе среды сразу. Если `docs/settings.yaml` ещё нет, установщик также предложит выбрать настройки скилов и создаст этот файл. В конце `eda init` пишет, какие скилы реально установлены или изменились.
24
+ Установщик покажет чекбоксы: стрелками выбираешь среду, пробелом отмечаешь, Enter продолжает. Можно поставить Claude Code, Codex CLI или обе среды сразу. Устанавливаются и скилы, и агенты. Если `docs/settings.yaml` ещё нет, установщик предложит настройки скилов, а для каждой review-проверки отдельно спросит режим и модели Claude/Codex. В неинтерактивном запуске записывается сбалансированный профиль. В конце `eda init` отдельно пишет, какие скилы и агенты реально установлены или изменились.
23
25
 
24
- Если скилы уже стоят во многих проектах, можно обновить их одной командой:
26
+ Если пакет уже стоит во многих проектах, можно обновить его одной командой:
25
27
 
26
28
  ```bash
27
29
  eda update-all ~/Code
28
30
  ```
29
31
 
30
- `eda update-all` ищет проекты в указанной директории, её прямых подпапках и подпапках второго уровня. Проект считается найденным, если в нём уже есть `.claude/skills` или `.codex/skills`. Команда обновляет только найденные среды и не создаёт `docs/settings.yaml`, чтобы массовый запуск не добавлял новые файлы в проекты.
32
+ `eda update-all` ищет проекты в указанной директории, её прямых подпапках и подпапках второго уровня. Проект считается найденным, если в нём уже есть установленный скил, агент или manifest `eda` для Claude/Codex. Команда обновляет только найденные среды и не создаёт `docs/settings.yaml`, чтобы массовый запуск не добавлял новые файлы в проекты.
31
33
 
32
34
  ---
33
35
 
@@ -35,41 +37,85 @@ eda update-all ~/Code
35
37
 
36
38
  | Скил | Что делает | Куда складывает |
37
39
  |---|---|---|
38
- | `eda-start` | Помогает стартовать новый проект: собирает требования, вместе с пользователем выбирает стек, архитектуру, инструменты качества кода, AI-скилы, агентные инструкции, MCP-серверы и правила проекта. Для выбранных пакетов всегда ищет последние стабильные версии по официальным источникам. Не пишет код и не ставит зависимости; сохраняет согласованные стартовые решения и по подтверждению создаёт черновики правил/архитектуры/AGENTS | `docs/project-starts/`, опционально `docs/rules.md`, `docs/arch.md`, `AGENTS.md` |
40
+ | `eda-orhestra` | Выполняет настраиваемую цепочку `eda-*`-скилов. Каждый этап запускает в отдельном субагенте с чистым контекстом, включая составные скилы и повторы QA-цикла. По умолчанию: план → выполнение → автономное ревью и исправления → ручные тесты и QA-фиксы. В `orhestra.steps` шаги можно переставлять, отключать и снабжать `args`; для `eda-polish` там же задаются `threshold` и `limit`. В `automatic` безопасно отвечает на рабочие вопросы сам, в `manual` пишет план вместе с человеком. Не коммитит | Артефакты включённых скилов |
41
+ | `eda-aim` | Сначала через отдельного агента-планировщика согласует с человеком одну или несколько простых проверяемых целей, затем передаёт их агентам-исполнителям и повторяет работу до независимого подтверждения агентом-проверяющим. При необходимости использует установленные скилы в отдельных изолированных субагентах. В `automatic` отвечает на безопасные рабочие вопросы самостоятельно, в `manual` передаёт их человеку; режим задаётся через `aim.mode` или текущий вызов. Точный список новых целей человек подтверждает всегда | `docs/aims/` и артефакты задействованных скилов |
42
+ | `eda-new-project` | Помогает стартовать новый проект: собирает и согласует требования, функциональность и границы, ограничения и архитектурные драйверы, сравнивает варианты основного стека и фиксирует выбранные компоненты с актуальными стабильными версиями. Не проектирует архитектуру, правила, проверки, AI-скилы или MCP; сохраняет подтверждённый стартовый бриф и всегда без дополнительного вопроса запускает полный технический bootstrap через `eda-prepare-ai` | `docs/project-starts/`, затем артефакты `eda-prepare-ai` |
39
43
  | `eda-roadmap` | Создаёт roadmap-файл: список будущих задач с короткими, понятными и недвусмысленными описаниями без деталей реализации, файлов, библиотек, API и пошагового плана | `docs/roadmaps/` |
40
- | `eda-explore` | Исследует тему до конкретного результата: описание проблемы, релевантная архитектура, закрытые развилки, риски внутри решений и короткий выбранный вариант решения без плана. В дефолтном режиме ведёт исследование как диалог: факты собирает сам, а значимые развилки выносит тебе с рекомендацией. Если нужны пакеты или ПО — проверяет актуальные стабильные версии через context7 или web search | `docs/researches/` |
41
- | `eda-plan` | Пишет план реализации через стандартный Plan Mode хост-агента. `docs/rules.md` и `docs/arch.md` использует как обязательную рамку, а не справочный контекст: план должен строго следовать правилам и архитектуре. В плане явно фиксирует контракты БД/API, если задача их затрагивает. Затем три параллельных субагента/модели (слабая, средняя, мощная) проверяют план на реалистичность, пропущенные шаги и нарушения правил — главный планировщик сам решает, что применить | `docs/plans/` |
42
- | `eda-plan-polish` | Полирует уже готовый план до оценки 95/100 или заданного порога. Каждая итерация сразу запускает три изолированных параллельных агента на быстрой, кодовой и флагманской моделях. В strict дополнительно отдаёт план соседнему CLI (Claude ↔ Codex) на кросс-ревью. Основной агент после ответов выставляет оценку, анализирует предложения, содержательно правит только файл плана при оценке ниже порога и не запускает проверки проекта | `docs/plans/` |
43
- | `eda-execute` | Выполняет план. Спрашивает, где работать (текущая ветка, новая ветка, отдельный worktree). Перед правками читает план, `docs/rules.md` и `docs/arch.md`; правила и архитектура обязательны к исполнению. Если шаг плана им противоречит, останавливается и спрашивает. Тесты пишет внутри каждого шага. В конце — полный прогон тестов и линтеров | `docs/executions/` |
44
- | `eda-fix` | Делает обычные фиксы по короткому контексту, баг-репорту или файлу плана. Перед правками читает правила и архитектуру, добавляет нужные тесты, прогоняет проверки и сохраняет историю правок | `docs/fixes/` |
45
- | `eda-review` | Делает код-ревью с оценкой 0–100 и сверкой с планом работ, но в файл пишет только проблемы: ошибки, недоделки, неточности, нарушения правил/архитектуры, риски и недостающие тесты. Сверяет с планом, только если он указан или однозначно найден; иначе ревьюит без сверки с планом и про план не спрашивает. Без аргументов ревьюит незакоммиченный `git diff HEAD`. Не перечисляет выполненную работу. В обычном режиме после черновика передаёт файл в `eda-review-check`; с флагом `draft` сохраняет только первичное ревью без субагентов | `docs/reviews/` |
46
- | `eda-review-check` | Проверяет готовое ревью из `docs/reviews/` специализированными субагентами: архитектуру, правила, выполнение плана при указанном plan-файле и при включённой настройке качество кода. В строгом режиме добавляет кросс-ревью между Claude и Codex. Сам применяет подтверждённые замечания к файлу ревью, но не правит код | `docs/reviews/` |
47
- | `eda-fix-by-review` | Применяет замечания из ревью. Обязательные — все сразу. Optional-пункты в обычном режиме спрашивает, а в `apply-optional` сам решает: применяет полезные, отклонённые обосновывает в отчёте. В конце ссылается на отчёт прямо в файле ревью | `docs/review-fixes/` |
44
+ | `eda-explore` | Исследует тему до конкретного результата: описание проблемы, релевантная архитектура, закрытые развилки, риски внутри решений и короткий выбранный вариант решения без плана. Читает только применимые карточки из `docs/references/`, если они есть. В дефолтном режиме ведёт исследование как диалог; для пакетов и ПО проверяет актуальные стабильные версии | `docs/researches/` |
45
+ | `eda-plan` | Пишет план реализации через стандартный Plan Mode хост-агента. `docs/rules.md`, `docs/arch.md` и применимые кодовые эталоны использует как обязательную рамку. В плане явно фиксирует контракты БД/API, прямые зависимости задач и какие задачи безопасно выполнять параллельно. Затем три параллельных субагента/модели проверяют реалистичность, полноту и соблюдение рамки | `docs/plans/` |
46
+ | `eda-plan-polish` | Полирует готовый план до оценки 95/100 или заданного порога. Каждая итерация запускает три изолированных агента, которые проверяют план по правилам, архитектуре, `sources.references`, research и коду. В strict дополнительно запускается кросс-ревью Claude ↔ Codex. Основной агент правит только файл плана и не запускает проверки проекта | `docs/plans/` |
47
+ | `eda-plan-execute` | Управляет выполнением плана по фазам. Фазы проходят строго последовательно, а безопасно совместимые задачи внутри фазы запускаются параллельно отдельными изолированными субагентами. Код, исправления, фазовые и финальные проверки основной агент не выполняет: он управляет зависимостями, отмечает подтверждённые задачи и ведёт журнал | `docs/executions/` |
48
+ | `eda-fix` | Делает обычные фиксы по короткому контексту, баг-репорту или плану. Перед правками читает правила, архитектуру и только применимые карточки, добавляет нужные тесты, прогоняет проверки и сохраняет историю правок | `docs/fixes/` |
49
+ | `eda-review` | Оркестрирует отдельные read-only проверки корректности, архитектуры, правил, references, плана, качества, тестов, безопасности, производительности, frontend/UI/UX, API, БД, документации и предыдущих ревью. По конфигу запускает только применимые packaged-агенты, объединяет подтверждённые проблемы, ставит экспертную оценку 0–100 и сохраняет покрытие. Без аргументов ревьюит `git diff HEAD`. Код и удалённые обсуждения не меняет | `docs/reviews/` |
50
+ | `eda-fix-by-review` | Применяет замечания из ревью с учётом правил, архитектуры и применимых карточек. Обязательные пункты исправляет сразу; optional-пункты спрашивает или решает сам в `apply-optional`. В конце ссылается на отчёт прямо в файле ревью | `docs/review-fixes/` |
48
51
  | `eda-manual-test` | Делает ручную smoke/acceptance-проверку после изменений: API прогоняет через `curl`/HTTP-запросы, фронт — через Playwright или доступную browser automation. Сам строит чеклист из входа, плана или diff, запускает очевидные dev/API-серверы и сохраняет QA-отчёт. Не правит код, не пишет автотесты и не коммитит | `docs/manual-tests/` |
49
- | `eda-polish` | Оркестрирует доводку изменений: запускает `eda-review draft`, затем `eda-review-check`, затем `eda-fix-by-review apply-optional` и повторяет цикл до оценки 95/100 или лимита 5 итераций. Обязательные замечания чинятся все, optional-пункты fix-агент применяет или отклоняет сам с обоснованием. Каждый шаг идёт в изолированном субагенте или отдельном CLI-процессе. Не коммитит | `docs/reviews/`, `docs/review-fixes/` |
50
- | `eda-send-review` | Отправляет ревью на GitHub PR через `gh` всегда в едином формате: общий комментарий-сводка плюс комментарии к строкам кода. Тип (`comment`/`approve`/`request-changes`) задаёт только статус review; `approve` и `request-changes` подтверждаются. По умолчанию шлёт все пункты. Сам определяет PR по текущей ветке | (комментарий в PR) |
51
- | `eda-commit` | Делает один аккуратный коммит в стиле проекта. В конце спрашивает: push, merge в main + удалить ветку, или ничего | (git) |
52
- | `eda-worktree` | Создаёт git worktree рядом с основным проектом в папке `{name}-work-{n}` и одноимённую ветку. Базу берёт из аргумента или спрашивает | соседняя папка `{name}-work-{n}` |
53
- | `eda-merge-worktree` | Мержит ветку из соседнего worktree в текущую ветку. Принимает номер `1`, короткое имя `work-1` или полное имя `{name}-work-1`. Worktree и ветку после merge не удаляет | (git) |
54
- | `eda-docs` | Создаёт или обновляет `docs/rules.md` (максимально строгие правила для твоего стека), `docs/arch.md` (архитектура проекта) и шапку `AGENTS.md`. Может предлагать инструменты, которых ещё нет в проекте | `docs/rules.md`, `docs/arch.md`, `AGENTS.md` |
55
- | `eda-automate` | Анализирует историю ревью и фиксов. Если ошибка повторяется — предлагает автоматизации на уровне языка и тулчейна: линтеры, статанализаторы, typecheck, тесты, pre-commit/CI-проверки. Если кодовая проверка не подходит, может предложить MCP-сервер, агентную проверку, новый скил или уточнение правил/архитектуры | `docs/automations/` |
52
+ | `eda-polish` | Оркестрирует доводку изменений: запускает полное `eda-review`, затем `eda-fix-by-review apply-optional` и повторяет цикл до оценки 95/100 или лимита 5 итераций. Обязательные замечания чинятся все, optional-пункты fix-агент применяет или отклоняет с обоснованием. Каждый шаг идёт в изолированном нативном субагенте. Не коммитит | `docs/reviews/`, `docs/review-fixes/` |
53
+ | `eda-send-review` | На `sonnet` / `gpt-5.6-terra` отправляет ревью на GitHub PR через `gh` всегда в едином формате: общий комментарий-сводка плюс комментарии к строкам кода. Без явно указанного типа использует `comment`; `approve` и `request-changes` берёт только из контекста текущего вызова. По настройке может скрыть предыдущие сводки eda-send-review и зарезолвить их inline-треды. По умолчанию шлёт все пункты. Claude-модель закрепляется при установке; Codex-модель хранится как рекомендуемый будущий override | (комментарий в PR) |
54
+ | `eda-commit` | Работает как лёгкий оркестратор и запускает двух последовательных субагентов: `haiku` / `gpt-5.6-luna` собирает контекст, затем `sonnet` / `gpt-5.6-terra` пишет сообщение и коммитит. В Claude Code сам оркестратор закреплён за `haiku`; в Codex остаётся на активной модели сессии из-за отсутствия per-skill override. Явно заданные рядом с вызовом действия выполняет без повторного вопроса: например, отправляет ветку, создаёт PR и возвращает ссылку. Если продолжение не задано, предлагает применимые варианты | (git, опционально GitHub PR) |
55
+ | `eda-worktree` | На `haiku` / `gpt-5.6-luna` создаёт через пакетного агента git worktree рядом с основным проектом в папке `{name}-work-{n}` и одноимённую ветку. Базу берёт из аргумента или спрашивает | соседняя папка `{name}-work-{n}` |
56
+ | `eda-merge-worktree` | На `haiku` / `gpt-5.6-luna` мержит через пакетного агента ветку из соседнего worktree в текущую ветку. Принимает номер `1`, короткое имя `work-1` или полное имя `{name}-work-1`. Worktree и ветку после merge не удаляет | (git) |
57
+ | `eda-prepare-ai` | Выполняет технический bootstrap нового или существующего проекта: проектирует архитектуру, строгие правила и профиль инструментов, проходит полный каталог автоматических проверок, подбирает применимые AI-скилы, роли и MCP, затем создаёт AI-документацию. Подтверждённые требования, стек и архитектурные драйверы из `eda-new-project` принимает как обязательный вход и не переоткрывает без обнаруженного конфликта. Для пустого проекта не выдумывает reference-карточки и не выдаёт неустановленные инструменты за доступные | `docs/rules.md`, `docs/arch.md`, `docs/references.md`, `docs/references/`, `AGENTS.md`, `CLAUDE.md` |
58
+ | `eda-discover-automations` | Проводит baseline gap-аудит проекта даже без истории, а при наличии анализирует ревью, планы и фиксы. Не ограничивает число предложений: проверяет тесты/e2e, стиль, статанализ, границы модулей, конфиги/IaC, API/БД, security/supply chain, performance, release, эксплуатацию, browser MCP и MCP стека. Для каждой идеи даёт команду, контур запуска и приоритет; ничего не внедряет | `docs/automations/` |
59
+
60
+ `eda-review-check` выведен из эксплуатации: его специализированные проверки теперь входят прямо в `eda-review`. `eda-execute` переименован в `eda-plan-execute`, `eda-automate` — в `eda-discover-automations`, `eda-docs` — в `eda-prepare-ai`, а `eda-start` — в `eda-new-project`. При обновлении старые имена удаляются из целевых сред. Установщик удаляет только управляемые EDA-копии retired-скилов и не трогает чужие компоненты.
61
+
62
+ ### Экстремальный профиль проверок
63
+
64
+ `eda-prepare-ai` и `eda-discover-automations` проходят не короткий список, а полный стек-зависимый каталог. В него входят unit/integration/component/contract/API/e2e/smoke/regression-тесты; property-based, mutation и fuzz; visual regression, accessibility и cross-browser; форматирование, lint, сложность, дубли и dead code; typecheck, taint и sanitizers; границы модулей, циклы и направления зависимостей; валидация env, CI, Docker, Kubernetes, Terraform и других конфигов; API/схемы и migrations; security, supply chain и SBOM; performance/load/soak/chaos; reproducible build, compatibility и release checks; документация, observability, backup/restore, доменные инварианты и AI evals.
65
+
66
+ Для каждой применимой проверки скил указывает инструмент, точную команду или сценарий, риск и место запуска: `pre-commit`, `pre-push`, `PR CI`, `nightly`, `release`, `post-deploy` или `MCP/manual`. Browser/Playwright MCP и MCP выбранного стека рассматриваются отдельно и не подменяют детерминированные CLI/CI-проверки. Фиксированного лимита предложений нет; неприменимые группы должны иметь явное обоснование.
67
+
68
+ `eda-prepare-ai` разбирает значимые настройки каждого выбранного инструмента и предлагает самый строгий стабильный применимый профиль, а не конфигурацию по умолчанию. Для динамических и слаботипизированных языков это включает строгий typecheck, nullability, типизированные публичные контракты и runtime-валидацию внешних данных; для линтеров, статанализа, тестов, security и CI — максимальные полезные наборы проверок, нулевой бюджет предупреждений и явное обоснование каждого ослабления.
69
+
70
+ ---
71
+
72
+ ## 🤖 Пакетные агенты
73
+
74
+ | Агент | Claude Code | Codex | Роль |
75
+ |---|---|---|---|
76
+ | `eda-aim-planner` | `sonnet`, workspace-write | `gpt-5.6-terra`, workspace-write | Задаёт вопросы, формулирует простой проверяемый список и создаёт файл только после подтверждения человека |
77
+ | `eda-aim-executor` | `opus`, workspace-write | `gpt-5.6-sol`, workspace-write | Выполняет назначенные пункты, при необходимости запрашивает установленные скилы для запуска в изолированных субагентах и дополняет общий журнал |
78
+ | `eda-aim-verifier` | `opus`, workspace-write | `gpt-5.6-sol`, workspace-write | Независимо проверяет каждый критерий, отмечает подтверждённые цели и возвращает пробелы на новый круг выполнения |
79
+ | `eda-commit-context` | `haiku`, read-only | `gpt-5.6-luna`, read-only | Собирает git-контекст, правила, стиль истории, состав изменений и риски; ничего не меняет |
80
+ | `eda-commit-executor` | `sonnet` | `gpt-5.6-terra` | Формирует сообщение, точечно коммитит и выполняет явно разрешённые push/PR/merge-действия |
81
+ | `eda-worktree-executor` | `haiku` | `gpt-5.6-luna` | Создаёт соседний worktree и одноимённую ветку, не изменяя файлы проекта |
82
+ | `eda-merge-worktree-executor` | `haiku` | `gpt-5.6-luna` | Мержит ветку из соседнего worktree в текущую без cleanup и ручного разрешения конфликтов |
83
+ | `eda-review-correctness` | `sonnet`, read-only | `gpt-5.6-terra`, read-only | Проверяет функциональную корректность и крайние случаи |
84
+ | `eda-review-architecture` | `opus`, read-only | `gpt-5.6-sol`, read-only | Проверяет архитектурные границы и зависимости |
85
+ | `eda-review-rules` | `haiku`, read-only | `gpt-5.6-luna`, read-only | Проверяет инструкции и правила проекта |
86
+ | `eda-review-references` | `haiku`, read-only | `gpt-5.6-luna`, read-only | Проверяет применимые эталонные карточки |
87
+ | `eda-review-plan-alignment` | `sonnet`, read-only | `gpt-5.6-terra`, read-only | Проверяет соответствие реализации плану |
88
+ | `eda-review-code-quality` | `sonnet`, read-only | `gpt-5.6-terra`, read-only | Проверяет читаемость, сложность и поддерживаемость |
89
+ | `eda-review-tests` | `sonnet`, read-only | `gpt-5.6-terra`, read-only | Проверяет тестовое покрытие и корректность тестов |
90
+ | `eda-review-security` | `opus`, read-only | `gpt-5.6-sol`, read-only | Проверяет безопасность и границы доверия |
91
+ | `eda-review-performance` | `sonnet`, read-only | `gpt-5.6-terra`, read-only | Проверяет производительность и масштабирование |
92
+ | `eda-review-frontend` | `sonnet`, read-only | `gpt-5.6-terra`, read-only | Проверяет frontend-код, UI и UX по исходникам |
93
+ | `eda-review-api` | `sonnet`, read-only | `gpt-5.6-terra`, read-only | Проверяет API-контракты и совместимость |
94
+ | `eda-review-database` | `opus`, read-only | `gpt-5.6-sol`, read-only | Проверяет схемы, миграции, запросы и целостность данных |
95
+ | `eda-review-documentation` | `haiku`, read-only | `gpt-5.6-luna`, read-only | Проверяет обязательные обновления документации |
96
+ | `eda-review-previous-reviews` | `haiku`, read-only | `gpt-5.6-luna`, read-only | Перепроверяет незакрытые удалённые замечания |
97
+
98
+ Агенты устанавливаются отдельно от скилов. Модели review-агентов в таблице — сбалансированные defaults; `docs/settings.yaml` или прямое указание пользователя может заменить модель конкретной проверки на текущий запуск. `eda-aim` последовательно разделяет согласование, выполнение и независимую проверку, а при необходимости использует установленные скилы только в отдельных изолированных субагентах; основной агент передаёт вопросы и структурированные результаты. `eda-commit` сохраняет исходный запрос, запускает двух агентов по очереди и передаёт полный структурированный результат первого второму. `eda-worktree` и `eda-merge-worktree` передают одному специализированному агенту git-операцию, обрабатывают его вопрос или результат и сами команды не выполняют. `eda-review` параллельно запускает только применимые review-агенты; полный prompt каждой роли хранится в агенте, а скил отвечает за выбор, retry и агрегацию.
99
+
100
+ Для Claude Code установленные `eda-commit`, `eda-worktree` и `eda-merge-worktree` получают `model: haiku`. В Codex у скилов пока нет отдельного per-skill model override: основной поток остаётся на выбранной пользователем модели, но он выполняет только лёгкую оркестрацию, а содержательная работа закреплена за моделями агентов. Для worktree-операций это `gpt-5.6-luna`.
56
101
 
57
102
  ---
58
103
 
59
104
  ## 🚩 Флаги скилов
60
105
 
61
- У некоторых скилов есть флаг `strict` — он включает дополнительные тяжёлые проверки. Передаётся как часть запроса агенту, например: `eda-explore strict <тема>` или просто `сделай ревью этого PR в strict-режиме`. Также strict можно включить по умолчанию через `defaults.strict: true` в `docs/settings.yaml`.
106
+ У некоторых скилов есть флаг `strict` — он включает дополнительные тяжёлые проверки. Передаётся как часть запроса агенту, например: `eda-explore strict <тема>`. Также strict можно включить отдельно в `docs/settings.yaml`, например через `explore.strict: true`. У `eda-review` вместо общего режима каждая проверка имеет собственные `mode` и `model`.
107
+
108
+ У `eda-aim` есть режимы `automatic` / `manual`. В автоматическом основной агент сам отвечает на безопасные рабочие вопросы по рекомендации субагента и фактам проекта, в ручном передаёт их человеку. Режим можно разово указать в вызове; без него используется `aim.mode` из настроек. Точный список новых целей перед записью в `docs/aims/` всё равно один раз подтверждает человек.
62
109
 
63
- Скилы, которых нет в таблице ниже, флагов не поддерживают — у них всё включено по умолчанию.
110
+ Скилы, которых нет в таблице ниже, не поддерживают эти флаги. Набор проверок `eda-review` отдельно управляется через `review.agents`.
64
111
 
65
112
  | Скил | Флаг | Что включает | Когда стоит использовать |
66
113
  |---|---|---|---|
114
+ | `eda-orhestra` | `automatic` / `manual`, `без полировки`, `полировка N итераций`, `без ручных тестов` | Разово меняет режим, состав цепочки и параметры шагов поверх `docs/settings.yaml` | Когда нужно довести задачу по сохранённому workflow или временно сократить дорогие этапы |
115
+ | `eda-aim` | `automatic` / `manual` | Разово меняет способ ответа на рабочие вопросы поверх `aim.mode`; подтверждение точного списка новых целей остаётся обязательным | Автономная работа или совместное прохождение развилок с человеком |
67
116
  | `eda-explore` | `strict` | После сохранения отчёта отдаёт его соседнему CLI (Claude → Codex или наоборот) на критическое ревью конкретности, фактов, развилок, рисков и версий; затем доправляет отчёт по замечаниям | Серьёзные исследования, которые лягут в основу больших решений; когда хочется второго мнения от другой модели/среды |
68
117
  | `eda-plan` | `strict` | После обычного мета-ревью трёх субагентов/моделей отдаёт план соседнему CLI на дополнительный круг проверки; доправляет план | Большие или ответственные планы, особенно затрагивающие смежные системы |
69
- | `eda-plan-polish` | `strict` | В каждой итерации после трёх полных ревью плана отдаёт план соседнему CLI (Claude → Codex или Codex → Claude) на кросс-ревью; затем учитывает его в итоговой оценке и правках | Максимальная полировка ответственных планов перед `eda-execute` |
70
- | `eda-review` | `draft` | Сохраняет первичное ревью со статусом `draft` и не запускает `eda-review-check`, субагентов и кросс-CLI | Когда ревью нужно как черновик для внешней оркестрации, например `eda-polish` |
71
- | `eda-review` | `strict` | После draft-ревью запускает `eda-review-check strict`: специализированные субагенты плюс соседний CLI; доправляет ревью по подтверждённым замечаниям | Ревью важных PR; когда нужен максимальный охват |
72
- | `eda-review-check` | `strict` | Проверяет уже готовое ревью специализированными субагентами и затем отдаёт его соседнему CLI на дополнительный круг проверки | Когда черновик ревью уже есть и нужно усилить только проверку ревью |
118
+ | `eda-plan-polish` | `strict` | В каждой итерации после трёх полных ревью плана отдаёт план соседнему CLI (Claude → Codex или Codex → Claude) на кросс-ревью; затем учитывает его в итоговой оценке и правках | Максимальная полировка ответственных планов перед `eda-plan-execute` |
73
119
  | `eda-fix-by-review` | `apply-optional` | Применяет все обязательные пункты, а пункты «на усмотрение автора» разбирает без вопроса: применяет выбранные и отклоняет нецелесообразные с причиной | Для автономной доводки, прежде всего внутри `eda-polish` |
74
120
 
75
121
  ---
@@ -81,81 +127,282 @@ eda update-all ~/Code
81
127
  Файл по умолчанию:
82
128
 
83
129
  ```yaml
84
- version: 1
130
+ version: 2
131
+
132
+ orhestra:
133
+ # Режим полного цикла eda-orhestra.
134
+ # automatic | manual
135
+ mode: automatic
136
+ # Упорядоченная цепочка. Шаги можно отключать, удалять и переставлять.
137
+ steps:
138
+ - id: plan
139
+ skill: eda-plan
140
+ enabled: true
141
+ # Строка аргументов передаётся скиллу как часть текущего вызова.
142
+ args: ""
143
+ - id: execute
144
+ skill: eda-plan-execute
145
+ enabled: true
146
+ # Строка аргументов передаётся скиллу как часть текущего вызова.
147
+ args: ""
148
+ - id: polish
149
+ skill: eda-polish
150
+ enabled: true
151
+ # Строка аргументов передаётся скиллу как часть текущего вызова.
152
+ args: "limit 5"
153
+ - id: manual-test
154
+ skill: eda-manual-test
155
+ enabled: true
156
+ # Строка аргументов передаётся скиллу как часть текущего вызова.
157
+ args: ""
158
+ # Обработка failed-результата этого шага.
159
+ on_failure:
160
+ skill: eda-fix
161
+ args: ""
162
+ # После исправления повторно запускаются включённые шаги с этими id.
163
+ then:
164
+ - polish
165
+ - manual-test
166
+ max_cycles: 5
167
+
168
+ aim:
169
+ # Режим ответов на рабочие вопросы eda-aim.
170
+ # automatic | manual
171
+ mode: automatic
172
+
173
+ explore:
174
+ # Включает кросс-CLI ревью в eda-explore.
175
+ # true | false
176
+ strict: false
177
+ # Определяет, как eda-explore ведёт исследовательские развилки.
178
+ # autonomous | recommend_and_ask | ask_each_time
179
+ decision_mode: recommend_and_ask
85
180
 
86
- defaults:
87
- # Включает strict-режим по умолчанию для eda-explore, eda-plan, eda-plan-polish, eda-review и eda-review-check.
181
+ plan:
182
+ # Включает кросс-CLI ревью в eda-plan.
88
183
  # true | false
89
184
  strict: false
90
- # Задаёт размер плана по умолчанию для eda-plan.
185
+ # Задаёт размер плана.
91
186
  # normal | short | ask_each_time
92
- plan_size: normal
93
- # Определяет, как eda-explore ведёт исследовательские развилки, а eda-plan принимает существенные решения.
187
+ size: normal
188
+ # Определяет, как eda-plan принимает существенные решения.
94
189
  # autonomous | recommend_and_ask | ask_each_time
95
190
  decision_mode: recommend_and_ask
96
- # Задаёт стратегию тестов по умолчанию для eda-plan.
191
+ # Задаёт стратегию тестов.
97
192
  # after_each_phase | tdd_each_phase | end_of_plan | ask_each_time
98
193
  test_strategy: ask_each_time
99
- # Задаёт стратегию логирования по умолчанию для eda-plan.
194
+ # Задаёт стратегию логирования.
100
195
  # debug_precise | standard | ask_each_time
101
196
  logging_strategy: ask_each_time
102
197
 
103
- automate:
104
- # Добавляет docs/plans/ в обычный запуск eda-automate.
198
+ plan-polish:
199
+ # Включает кросс-CLI ревью в eda-plan-polish.
105
200
  # true | false
106
- include_plans: false
201
+ strict: false
107
202
 
108
203
  review:
109
- # Добавляет в eda-review / eda-review-check проверку качества кода и meta-reviewer quality-check.
204
+ # Каждая проверка имеет собственный режим запуска и модели для обеих сред.
205
+ agents:
206
+ # Проверяет ошибки в логике, крайние случаи и обработку ошибок.
207
+ # Эта базовая проверка по умолчанию запускается всегда.
208
+ correctness:
209
+ # always — всегда, auto — когда применимо, off — отключено.
210
+ mode: always
211
+ model:
212
+ # Модель для Claude Code.
213
+ claude: sonnet
214
+ # Модель для Codex.
215
+ codex: gpt-5.6-terra
216
+
217
+ # Проверяет архитектурные границы, зависимости и разделение ответственности.
218
+ # В auto запускается при изменении модулей, зависимостей, публичных контрактов или границ системы.
219
+ architecture:
220
+ mode: auto
221
+ model:
222
+ claude: opus
223
+ codex: gpt-5.6-sol
224
+
225
+ # Проверяет соблюдение AGENTS.md, CLAUDE.md и docs/rules.md.
226
+ # Эта базовая проверка по умолчанию запускается всегда.
227
+ rules:
228
+ mode: always
229
+ model:
230
+ claude: haiku
231
+ codex: gpt-5.6-luna
232
+
233
+ # Проверяет соответствие применимым карточкам из docs/references/.
234
+ # В auto запускается только когда для изменений выбраны применимые карточки.
235
+ references:
236
+ mode: auto
237
+ model:
238
+ claude: haiku
239
+ codex: gpt-5.6-luna
240
+
241
+ # Проверяет, что реализация соответствует указанному или однозначно найденному плану.
242
+ # В auto запускается только когда у ревью есть конкретный план.
243
+ plan_alignment:
244
+ mode: auto
245
+ model:
246
+ claude: sonnet
247
+ codex: gpt-5.6-terra
248
+
249
+ # Проверяет читаемость, сложность, дублирование и поддерживаемость кода.
250
+ # Эта базовая проверка по умолчанию запускается всегда.
251
+ code_quality:
252
+ mode: always
253
+ model:
254
+ claude: sonnet
255
+ codex: gpt-5.6-terra
256
+
257
+ # Проверяет достаточность, корректность и устойчивость тестов.
258
+ # Эта базовая проверка по умолчанию запускается всегда.
259
+ tests:
260
+ mode: always
261
+ model:
262
+ claude: sonnet
263
+ codex: gpt-5.6-terra
264
+
265
+ # Проверяет уязвимости, права доступа, валидацию и работу с чувствительными данными.
266
+ # В auto запускается для auth, permissions, внешнего ввода, файлов, сети, секретов и криптографии.
267
+ security:
268
+ mode: auto
269
+ model:
270
+ claude: opus
271
+ codex: gpt-5.6-sol
272
+
273
+ # Проверяет запросы, циклы, память, конкурентность и другие риски производительности.
274
+ # В auto запускается при изменении запросов, кешей, конкурентности или горячих путей.
275
+ performance:
276
+ mode: auto
277
+ model:
278
+ claude: sonnet
279
+ codex: gpt-5.6-terra
280
+
281
+ # Проверяет фронтенд-код, UI, UX, адаптивность и состояния интерфейса.
282
+ # В auto обязательно запускается при изменении компонентов, стилей, клиентских маршрутов или состояния UI.
283
+ frontend:
284
+ mode: auto
285
+ model:
286
+ claude: sonnet
287
+ codex: gpt-5.6-terra
288
+
289
+ # Проверяет API-контракты, совместимость, валидацию и обработку ошибок.
290
+ # В auto запускается при изменении маршрутов, handlers, DTO, схем API, GraphQL или RPC.
291
+ api:
292
+ mode: auto
293
+ model:
294
+ claude: sonnet
295
+ codex: gpt-5.6-terra
296
+
297
+ # Проверяет схемы, миграции, запросы, индексы и целостность данных.
298
+ # В auto запускается при изменении миграций, моделей хранения, SQL, схем или транзакций.
299
+ database:
300
+ mode: auto
301
+ model:
302
+ claude: opus
303
+ codex: gpt-5.6-sol
304
+
305
+ # Проверяет, обновлена ли документация для изменившегося пользовательского поведения.
306
+ # В auto запускается при изменении публичного API, CLI, настроек или документируемого поведения.
307
+ documentation:
308
+ mode: auto
309
+ model:
310
+ claude: haiku
311
+ codex: gpt-5.6-luna
312
+
313
+ # Перепроверяет незакрытые замечания предыдущих ревью для удалённого PR или MR.
314
+ # В auto запускается только для ссылки на PR/MR или другой цели с доступными удалёнными обсуждениями.
315
+ previous_reviews:
316
+ mode: auto
317
+ model:
318
+ claude: haiku
319
+ codex: gpt-5.6-luna
320
+
321
+ send-review:
322
+ # После успешной отправки скрывает предыдущие сводки eda-send-review и резолвит их inline-треды.
110
323
  # true | false
111
- include_code_quality: true
324
+ close_previous_reviews: false
325
+
326
+ discover-automations:
327
+ # Добавляет docs/plans/ в обычный запуск eda-discover-automations.
328
+ # true | false
329
+ include_plans: false
112
330
  ```
113
331
 
114
332
  Что означают настройки:
115
- - `defaults.strict` — включает strict-режим по умолчанию для `eda-explore`, `eda-plan`, `eda-plan-polish`, `eda-review` и `eda-review-check`.
116
- - `defaults.plan_size` — размер плана для `eda-plan`: `normal`, `short` или `ask_each_time`.
117
- - `defaults.decision_mode` — как `eda-explore` ведёт исследовательские развилки, а `eda-plan` принимает существенные решения: `autonomous` выбирает сам, `recommend_and_ask` рекомендует и спрашивает по значимым развилкам, `ask_each_time` спрашивает по каждой развилке, которая влияет на ход работы или итоговый выбор.
118
- - `defaults.test_strategy` — стратегия тестов для `eda-plan`: `after_each_phase`, `tdd_each_phase`, `end_of_plan` или `ask_each_time`.
119
- - `defaults.logging_strategy` — стратегия логирования для `eda-plan`: `debug_precise`, `standard` или `ask_each_time`.
120
- - `automate.include_plans` — добавляет `docs/plans/` в обычный запуск `eda-automate`.
121
- - `review.include_code_quality` — добавляет в `eda-review` / `eda-review-check` проверку качества кода и отдельного мета-ревьюера `quality-check`.
333
+ - `orhestra.mode` — `automatic` безопасно закрывает рабочие вопросы без промежуточных подтверждений; `manual` пишет план вместе с человеком и передаёт ему вопросы.
334
+ - `orhestra.steps` — выполняемый сверху вниз workflow. `enabled: false` отключает шаг, а `args` передаёт ему дополнительные параметры. Например, для `eda-polish`: `args: "threshold 90 limit 2"`. Шаги можно переставлять или добавлять, но git/publish-скиллы оркестратор не запускает.
335
+ - Старое значение `steps[].skill: eda-execute` во время запуска автоматически понимается как `eda-plan-execute`; существующий `docs/settings.yaml` установщик не переписывает.
336
+ - `steps[].on_failure` — настраивает исправление failed manual-test прямо рядом с этим шагом: `skill` и `args` задают фикс, `then` — повторяемые id шагов, `max_cycles` — лимит. Если обработчика нет, оркестратор сохраняет failed-отчёт и останавливается.
337
+ - `aim.mode` — `automatic` самостоятельно выбирает безопасные ответы на рабочие вопросы; `manual` передаёт вопросы человеку. Явный режим в текущем вызове имеет приоритет.
338
+ - `explore.strict` и `explore.decision_mode` — кросс-CLI ревью и способ выбора по исследовательским развилкам в `eda-explore`.
339
+ - `plan.strict`, `plan.size`, `plan.decision_mode`, `plan.test_strategy`, `plan.logging_strategy` — режим и структура работы `eda-plan`.
340
+ - `plan-polish.strict` — кросс-CLI ревью в каждой итерации `eda-plan-polish`.
341
+ - `review.agents.<check>.mode` — запускать проверку всегда, автоматически по контексту или отключить.
342
+ - `review.agents.<check>.model.claude` и `.codex` — модель конкретной проверки в соответствующей среде.
343
+ - `send-review.close_previous_reviews` — после успешной новой отправки скрывает предыдущие сводки, созданные `eda-send-review` текущим GitHub-пользователем, и резолвит связанные inline-треды; прямое указание в текущем запросе переопределяет настройку.
344
+ - `discover-automations.include_plans` — добавляет `docs/plans/` в обычный запуск `eda-discover-automations`. Если в существующем v2-файле остался только прежний раздел `automate`, скил временно использует его как fallback и просит переименовать настройку.
345
+
346
+ Каждый скилл читает только свой раздел. Для `eda-review` прямое указание в текущем запросе может разово включить или отключить проверку и заменить её модель, например: «без performance, architecture на opus».
347
+
348
+ Поддерживается только `version: 2`. Для старого v2 без `review.agents` новый review использует сбалансированные defaults и предупреждает, что устаревшие `review.strict`, `review.include_code_quality` и `review-check` игнорируются. Установщик существующий файл не переписывает.
122
349
 
123
- `eda init` и `eda update` создают `docs/settings.yaml`, только если файла ещё нет. Существующий файл не перезаписывается. `eda update-all` настройки не создаёт и не меняет.
350
+ `eda init` и `eda update` создают `docs/settings.yaml`, только если файла ещё нет. Существующий файл, включая v1, не перезаписывается; его нужно перевести вручную. `eda update-all` настройки не создаёт и не меняет.
124
351
 
125
352
  ---
126
353
 
127
354
  ## 🔄 Воркфлоу
128
355
 
356
+ `eda-orhestra` по умолчанию запускает основной цикл одной командой:
357
+
358
+ Каждая стрелка между этапами передаёт только явный вход и пути к артефактам: каждый этап работает в новом изолированном субагенте без истории диалога.
359
+
360
+ ```text
361
+ plan → plan-execute → polish → manual-test ──passed──> готово
362
+ ^ │
363
+ └── fix <───┘ failed
364
+ ```
365
+
366
+ `eda-aim` может обернуть любую цепочку ниже в автономный цикл:
367
+
368
+ ```text
369
+ согласование цели → выполнение с нужными скилами в изолированных субагентах → независимая проверка
370
+ ^ │
371
+ └──── устранение пробелов ─┘
372
+ ```
373
+
129
374
  ```text
130
- start ─────────────> docs ───────────────┬───────────────┐
375
+ new-project ───────> prepare-ai ─────────┬───────────────┐
131
376
  │ │ │
132
377
  v v v
133
- roadmap ────────> explore ─────> plan ───> plan-polish ───> execute ───┬──> manual-test ───> review ───> review-check ───> fix-by-review ───┬──> send-review
378
+ roadmap ────────> explore ─────> plan ───> plan-polish ───> plan-execute ───┬──> manual-test ───> review ───> fix-by-review ───┬──> send-review
134
379
  │ │ │
135
380
  └────────────> plan v └──> commit
136
381
  fix ─────────────> manual-test
137
382
  ```
138
383
 
139
- Если проект уже существует, можно начинать без `eda-start`:
384
+ Если проект уже существует, можно начинать без `eda-new-project`:
140
385
 
141
386
  ```text
142
- docs ───────────────┬───────────────┐
387
+ prepare-ai ─────────┬───────────────┐
143
388
  │ │
144
389
  v v
145
- roadmap ────────> explore ─────> plan ───> plan-polish ───> execute ───┬──> manual-test ───> review ───> review-check ───> fix-by-review ───┬──> send-review
390
+ roadmap ────────> explore ─────> plan ───> plan-polish ───> plan-execute ───┬──> manual-test ───> review ───> fix-by-review ───┬──> send-review
146
391
  │ │ │
147
392
  └──────────────> plan v └──> commit
148
393
  fix ─────────────> manual-test
149
394
 
150
- polish = review draft ─> review-check ─> fix-by-review apply-optional ─> повтор до нужной оценки
395
+ polish = полное review ─> fix-by-review apply-optional ─> повтор до нужной оценки
151
396
  plan-polish = 3 полных ревью плана разными моделями ─> strict: кросс-CLI ─> оценка ─> правка плана ─> повтор до 95/100
152
397
 
153
- automate может запускаться от review, fix-by-review или fix.
398
+ discover-automations может запускаться от review, fix-by-review или fix.
154
399
  ```
155
400
 
156
- `eda-manual-test` обычно ставится после `eda-execute`, `eda-fix` или `eda-fix-by-review`, чтобы руками проверить API/UI перед ревью или коммитом.
401
+ `eda-manual-test` обычно ставится после `eda-plan-execute`, `eda-fix` или `eda-fix-by-review`, чтобы руками проверить API/UI перед ревью или коммитом.
157
402
 
158
- Использовать всю цепочку не обязательно — каждый скил самодостаточен. Новый проект можно начать с `eda-start`; существующий — с `eda-roadmap`, `eda-explore`, или сразу с `eda-execute` на готовом плане, или просто `eda-commit`, когда правки уже сделаны. Для параллельной работы есть `eda-worktree`, а для возврата ветки из worktree в текущую ветку — `eda-merge-worktree`.
403
+ Использовать всю цепочку не обязательно — каждый скил самодостаточен. Для полного прохода одной задачи можно вызвать `eda-orhestra automatic <задача>` или `eda-orhestra manual <задача>`. Разовые варианты: `eda-orhestra automatic без полировки <задача>`, `eda-orhestra полировка 2 итерации <задача>`, `eda-orhestra без ручных тестов <задача>`. Постоянный порядок и аргументы задаются в `orhestra.steps`. Новый проект можно начать с `eda-new-project`; существующий — с `eda-prepare-ai`, `eda-roadmap`, `eda-explore`, или сразу с `eda-plan-execute` на готовом плане, или просто `eda-commit`, когда правки уже сделаны. Для параллельной работы есть `eda-worktree`, а для возврата ветки из worktree в текущую ветку — `eda-merge-worktree`.
404
+
405
+ Например, запрос `eda-commit сразу отправь ветку, создай PR и дай ссылку` выполняет всю указанную цепочку без отдельного вопроса после коммита.
159
406
 
160
407
  ---
161
408
 
@@ -163,9 +410,10 @@ automate может запускаться от review, fix-by-review или fix
163
410
 
164
411
  - **Простой язык.** Скилы общаются с тобой так, чтобы понял человек без глубоких знаний предмета. Термины — только когда без них нельзя.
165
412
  - **Все вопросы — интерактивно.** В Claude Code — через `AskUserQuestion`; в интерактивном Codex — через `request_user_input` или блокирующий вопрос в чат. В `codex exec` и других неинтерактивных запусках скил не имитирует диалог: если без ответа нельзя безопасно продолжать, он завершает работу со статусом `blocked: нужен ответ пользователя`.
166
- - **Мета-проверки — через субагентов.** В интерактивном Codex обычные проверки планов и ревью запускаются через `spawn_agent` или аналогичный инструмент субагентов. Проверки готового ревью собраны в `eda-review-check`. Отдельный `codex exec` остаётся fallback для неинтерактивного режима и механизмом strict-кросс-проверки соседним CLI.
413
+ - **Проверки — через субагентов.** `eda-review` запускает установленных read-only агентов нативным механизмом Claude/Codex. Если субагенты недоступны, review останавливается: CLI-fallback, кросс-проверки соседним провайдером и подмена ролей главным агентом не используются.
414
+ - **Повторяемые роли — в пакетных агентах.** Скилы управляют процессом, а стабильные изолированные роли получают собственный prompt, модель и доступ. Полные review-prompts не дублируются в оркестраторе.
167
415
  - **Артефакты по папкам.** Исследования отдельно, планы отдельно, ревью отдельно. Между файлами — ссылки. Через месяц легко найти, кто что когда решал.
168
- - **Границы между скилами жёсткие.** `execute` не коммитит — это работа `commit`. `review` не правит код — это `fix-by-review`. Никаких размытых ответственностей.
416
+ - **Границы между скилами жёсткие.** `plan-execute` только управляет субагентами и не коммитит — это работа `commit`. `review` не правит код — это `fix-by-review`. Никаких размытых ответственностей.
169
417
  - **Доверие модели.** Скилы короткие. Они говорят «что» и «почему», а «как именно» — модель разбирается сама.
170
418
 
171
419
  ---
@@ -173,9 +421,9 @@ automate может запускаться от review, fix-by-review или fix
173
421
  ## 💻 Команды
174
422
 
175
423
  ```bash
176
- eda init # выбрать Claude Code / Codex / обе среды и установить скилы
177
- eda update # обновить скилы, показать реально изменившиеся и создать docs/settings.yaml, если его ещё нет
178
- eda update-all [dir] # обновить скилы во всех найденных проектах внутри dir на глубине 2
424
+ eda init # выбрать Claude Code / Codex / обе среды и установить пакет
425
+ eda update # обновить скилы и агенты, создать docs/settings.yaml, если его ещё нет
426
+ eda update-all [dir] # обновить пакет во всех найденных проектах внутри dir на глубине 2
179
427
  eda --version # показать версию установленного пакета
180
428
  eda --help # справка
181
429
  ```
@@ -184,7 +432,7 @@ eda --help # справка
184
432
 
185
433
  ```bash
186
434
  npm update -g @gian-tiaga/eda # подтянуть новый код
187
- eda update # синхронизировать скилы в текущем проекте
435
+ eda update # синхронизировать пакет в текущем проекте
188
436
  ```
189
437
 
190
438
  Для папки с несколькими проектами:
@@ -196,16 +444,21 @@ eda update-all ~/Code
196
444
 
197
445
  ---
198
446
 
199
- ## 📁 Куда устанавливаются скилы
447
+ ## 📁 Структура и установка компонентов
448
+
449
+ Исходники скилов лежат в `skills/<skill>/SKILL.md`. Дополнительные ресурсы скила можно хранить рядом; `skill.json` содержит только платформенные настройки и в проект пользователя не копируется. `models.codex` можно хранить как зарезервированную настройку для будущего per-skill override, но текущий Codex renderer её не добавляет в `SKILL.md`.
200
450
 
201
- Исходники скилов в этом пакете лежат в `skills/`. Установщик читает именно эту папку и копирует каждый `<skill>.md` в формат `<skill>/SKILL.md` для выбранной среды.
451
+ Исходники агентов лежат в `agents/<agent>/agent.json` и `prompt.md`. Установщик рендерит единый агентный контракт в нативный формат выбранной среды.
452
+
453
+ | Компонент | Claude Code | Codex CLI |
454
+ |---|---|---|
455
+ | Скил | `.claude/skills/<skill>/SKILL.md` | `.codex/skills/<skill>/SKILL.md` |
456
+ | Агент | `.claude/agents/<agent>.md` | `.codex/agents/<agent>.toml` |
457
+ | Manifest владения | `.claude/eda-manifest.json` | `.codex/eda-manifest.json` |
202
458
 
203
- | Среда | Куда |
204
- |---|---|
205
- | **Claude Code** | `<project>/.claude/skills/<skill>/SKILL.md` — отдельная папка на каждый скил |
206
- | **Codex CLI** | `<project>/.codex/skills/<skill>/SKILL.md` — отдельная папка на каждый скил |
459
+ `eda update` идемпотентно синхронизирует обе группы компонентов и отдельно показывает реально изменившиеся скилы и агенты. Manifest хранит только идентификаторы компонентов, которыми владеет `eda`: благодаря этому retired-компоненты удаляются, а чужие скилы и агенты остаются нетронутыми. `eda update-all [dir]` делает то же самое для каждого найденного проекта, но не создаёт `docs/settings.yaml`. Старые Codex-файлы `.codex/skills/<skill>.md` также удаляются при миграции.
207
460
 
208
- `eda update` идемпотентно перезаписывает файлы в обеих папках и в конце пишет только те скилы, содержимое которых реально изменилось относительно установленной копии. `eda update-all [dir]` делает то же самое для каждого найденного проекта внутри `dir`, но не создаёт `docs/settings.yaml`. При обновлении старые файлы Codex-формата `<project>/.codex/skills/<skill>.md`, созданные версиями `eda` до этой структуры, удаляются. Если ты хочешь подправить скил локально — лучше копию сделай рядом, а не прямо в `.claude/skills/` или `.codex/skills/`, иначе при следующем `update` твои правки потеряются.
461
+ Установленные копии не являются источником правды. Локальные изменения внутри `.claude/skills/eda-*`, `.codex/skills/eda-*`, `.claude/agents/eda-*` или `.codex/agents/eda-*` будут заменены следующим обновлением.
209
462
 
210
463
  `AGENTS.md` (как и любые другие файлы в корне проекта) установщик **не трогает**. Если хочешь, чтобы Codex автоматически подгружал скилы, дай ему знать сам — например, одной строкой в `AGENTS.md`: «следуй инструкциям из `.codex/skills/`».
211
464
 
@@ -215,7 +468,7 @@ eda update-all ~/Code
215
468
 
216
469
  - Для тех, кто **постоянно** пишет код с AI-агентом и устал каждый раз заново объяснять, как делать ревью.
217
470
  - Для команд, где хочется единый стандарт работы с агентами — чтобы ревью у всех было пронумеровано и оценено, планы лежали в одной папке, а коммиты были по одному стилю.
218
- - Для разработчиков, которые любят **строгость**: максимально жёсткие правила, обязательные тесты, мета-проверки ревью несколькими моделями, кросс-проверка через соседний CLI.
471
+ - Для разработчиков, которые любят **строгость**: максимально жёсткие правила, обязательные тесты и отдельные контекстные проверки ревью на подходящих моделях.
219
472
 
220
473
  ---
221
474