@gian-tiaga/eda 1.0.5 → 2.1.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 (63) hide show
  1. package/MIGRATION.md +60 -80
  2. package/README.md +116 -36
  3. package/agents/eda-plan-review-api/agent.json +9 -0
  4. package/agents/eda-plan-review-api/prompt.md +35 -0
  5. package/agents/eda-plan-review-architecture/agent.json +9 -0
  6. package/agents/eda-plan-review-architecture/prompt.md +35 -0
  7. package/agents/eda-plan-review-database/agent.json +9 -0
  8. package/agents/eda-plan-review-database/prompt.md +35 -0
  9. package/agents/eda-plan-review-execution/agent.json +9 -0
  10. package/agents/eda-plan-review-execution/prompt.md +35 -0
  11. package/agents/eda-plan-review-feasibility/agent.json +9 -0
  12. package/agents/eda-plan-review-feasibility/prompt.md +35 -0
  13. package/agents/eda-plan-review-frontend/agent.json +9 -0
  14. package/agents/eda-plan-review-frontend/prompt.md +35 -0
  15. package/agents/eda-plan-review-performance/agent.json +9 -0
  16. package/agents/eda-plan-review-performance/prompt.md +35 -0
  17. package/agents/eda-plan-review-previous/agent.json +9 -0
  18. package/agents/eda-plan-review-previous/prompt.md +28 -0
  19. package/agents/eda-plan-review-requirements/agent.json +9 -0
  20. package/agents/eda-plan-review-requirements/prompt.md +35 -0
  21. package/agents/eda-plan-review-rules/agent.json +9 -0
  22. package/agents/eda-plan-review-rules/prompt.md +35 -0
  23. package/agents/eda-plan-review-security/agent.json +9 -0
  24. package/agents/eda-plan-review-security/prompt.md +35 -0
  25. package/agents/eda-plan-review-verification/agent.json +9 -0
  26. package/agents/eda-plan-review-verification/prompt.md +35 -0
  27. package/agents/eda-review-api/prompt.md +4 -3
  28. package/agents/eda-review-architecture/prompt.md +4 -3
  29. package/agents/eda-review-business/agent.json +15 -0
  30. package/agents/eda-review-business/prompt.md +47 -0
  31. package/agents/eda-review-code-quality/prompt.md +5 -4
  32. package/agents/eda-review-correctness/prompt.md +4 -3
  33. package/agents/eda-review-database/prompt.md +4 -3
  34. package/agents/eda-review-documentation/prompt.md +4 -3
  35. package/agents/eda-review-frontend/prompt.md +4 -3
  36. package/agents/eda-review-performance/prompt.md +4 -3
  37. package/agents/eda-review-plan-alignment/prompt.md +4 -3
  38. package/agents/eda-review-previous-reviews/prompt.md +5 -4
  39. package/agents/eda-review-references/prompt.md +4 -3
  40. package/agents/eda-review-rules/prompt.md +4 -3
  41. package/agents/eda-review-security/prompt.md +4 -3
  42. package/agents/eda-review-tests/prompt.md +4 -3
  43. package/bin/cli.js +2 -2
  44. package/lib/install.js +524 -368
  45. package/package.json +3 -2
  46. package/skills/eda-aim/SKILL.md +1 -1
  47. package/skills/eda-business/SKILL.md +162 -0
  48. package/skills/eda-discover-automations/SKILL.md +4 -2
  49. package/skills/eda-explore/SKILL.md +7 -6
  50. package/skills/eda-fix/SKILL.md +5 -4
  51. package/skills/eda-fix-by-review/SKILL.md +41 -57
  52. package/skills/eda-manual-test/SKILL.md +13 -5
  53. package/skills/eda-orhestra/SKILL.md +14 -11
  54. package/skills/eda-plan/SKILL.md +45 -42
  55. package/skills/eda-plan-execute/SKILL.md +8 -6
  56. package/skills/eda-plan-polish/SKILL.md +53 -169
  57. package/skills/eda-plan-review/SKILL.md +189 -0
  58. package/skills/eda-plan-review-fix/SKILL.md +88 -0
  59. package/skills/eda-polish/SKILL.md +19 -31
  60. package/skills/eda-prepare-ai/SKILL.md +7 -2
  61. package/skills/eda-review/SKILL.md +21 -21
  62. package/skills/eda-roadmap/SKILL.md +6 -3
  63. package/skills/eda-send-review/SKILL.md +8 -8
package/MIGRATION.md CHANGED
@@ -1,119 +1,99 @@
1
- # Миграция на eda 1.0
1
+ # Миграция на eda 2.0
2
2
 
3
- Версия 1.0 переводит `eda` с набора файлов-скилов на пакет с каноническими скилами и специализированными агентами для Claude Code и Codex CLI. `eda update` сохраняет полный `docs/settings.yaml` версии 2 без вопросов, а в неполном v2 спрашивает и атомарно дописывает только отсутствующие разделы перед обновлением компонентов.
3
+ Версия 2.0 заменяет широкие итерации проверки планов специализированным workflow `eda-plan-review` → `eda-plan-review-fix` и переводит `docs/settings.yaml` на `version: 3`.
4
4
 
5
- ## Короткий путь
6
-
7
- Обнови глобальный пакет:
5
+ ## Обновление
8
6
 
9
7
  ```bash
10
- npm install -g @gian-tiaga/eda@1
8
+ npm install -g @gian-tiaga/eda@2
11
9
  eda --version
12
- ```
13
-
14
- Команда должна вывести актуальную версию ветки `1.0.x`.
15
-
16
- В одном проекте выполни:
17
-
18
- ```bash
19
- cd /path/to/project
20
10
  eda update
21
11
  ```
22
12
 
23
- Для нескольких проектов внутри одной директории можно выполнить:
13
+ Версия CLI должна начинаться с `2.0`. После обновления перезапусти Claude Code или Codex CLI, чтобы среда перечитала новые скилы и агентов.
14
+
15
+ Для нескольких проектов:
24
16
 
25
17
  ```bash
26
18
  eda update-all /path/to/projects
27
19
  ```
28
20
 
29
- `update-all` ищет проекты на глубине до двух уровней и предлагает два режима. `configure` один раз спрашивает полный профиль и записывает одинаковый `docs/settings.yaml` версии 2 во все найденные проекты. `skip` не задаёт вопросов, сохраняет существующие конфиги и создаёт профиль defaults только в проектах без файла. В non-TTY запуске используется `skip`.
30
-
31
- После обновления перезапусти Claude Code или Codex CLI, чтобы среда перечитала установленные скилы и агентов.
32
-
33
- ## Что обновится автоматически
34
-
35
- - Скилы будут синхронизированы в `.claude/skills/<skill>/SKILL.md` и `.codex/skills/<skill>/SKILL.md`.
36
- - Старые управляемые Codex-файлы `.codex/skills/<skill>.md` будут удалены после установки соответствующего скила в новом формате.
37
- - Установятся пакетные агенты в `.claude/agents/` и `.codex/agents/`.
38
- - Retired-компоненты будут удалены только там, где ими владеет `eda`; чужие скилы и агенты установщик не удаляет.
39
- - Корневые `AGENTS.md` и `CLAUDE.md` проекта установщик не создаёт и не перезаписывает.
40
-
41
- Локальные изменения внутри управляемых `.claude/skills/eda-*`, `.codex/skills/eda-*`, `.claude/agents/eda-*` и `.codex/agents/eda-*` будут заменены. Если такие изменения нужны, сохрани их отдельно до запуска `eda update`.
42
-
43
- ## Переименованные и удалённые скилы
44
-
45
- Обнови упоминания в документации, пользовательских командах и сохранённых workflow:
21
+ `configure` один раз спрашивает общий профиль v3 и записывает его во все проекты. `skip` сохраняет полный v3, но старые, неизвестные и неполные конфиги индивидуально переносит; отсутствующие значения получает из defaults. В non-TTY используется `skip`.
46
22
 
47
- | До 1.0 | В 1.0 | Что изменилось |
48
- |---|---|---|
49
- | `eda-start` | `eda-new-project` | Стартовый бриф нового проекта и обязательный запуск `eda-prepare-ai` |
50
- | `eda-docs` | `eda-prepare-ai` | Полный технический bootstrap: архитектура, правила, проверки, references и AI/MCP-процесс |
51
- | `eda-execute` | `eda-plan-execute` | Выполнение плана по фазам через изолированных субагентов |
52
- | `eda-automate` | `eda-discover-automations` | Полный baseline gap-аудит автоматизаций даже без истории |
53
- | `eda-review-check` | `eda-review` | Специализированные проверки встроены в единый review-workflow |
54
- | `eda-research` | `eda-explore` | Старое имя окончательно выведено из эксплуатации |
23
+ ## Что изменилось
55
24
 
56
- Установщик удалит старые управляемые копии, но не перепишет ссылки на имена скилов в документах проекта.
25
+ - Добавлены `eda-plan-review` и `eda-plan-review-fix`.
26
+ - Добавлены 12 read-only агентов `eda-plan-review-*` с отдельными зонами ответственности.
27
+ - `eda-plan-polish` теперь оркестрирует review/fix и по умолчанию ограничен тремя подтверждающими review-итерациями.
28
+ - Готовность требует одновременно отсутствия открытых находок и достижения threshold; любая находка блокирует `ready` независимо от score.
29
+ - У находок нет деления на required/optional: ревью сохраняет только доказанные ошибки и существенные неточности, которые обязательно исправить. ID и SHA-256 цепочка остаются стабильными.
30
+ - `eda-plan-review-fix` применяет все находки минимальным изменением плана, а `eda-plan` по `plan.review: true` запускает полный подтверждающий цикл `eda-plan-polish`.
31
+ - Обычный `eda-review` также больше не делит замечания на required/optional: сохраняются только доказанные дефекты, которые обязательно исправить. Любая находка даёт `result: changes-required`; `clean` возможен только без находок.
32
+ - `eda-fix-by-review` применяет все находки без режима `apply-optional`, а `eda-polish` подтверждает результат повторным ревью до `clean` и threshold.
33
+ - `eda-plan-polish strict` и `plan-polish.strict` удалены. `plan.strict` для кросс-CLI проверки самого `eda-plan` остаётся.
34
+ - npm-пакет использует `yaml` для безопасного переноса вложенного конфига.
57
35
 
58
- ## Миграция `docs/settings.yaml`
36
+ ## Умный перенос settings v3
59
37
 
60
- Версия 1.0 поддерживает только формат настроек `version: 2`. При `eda update` ответь на полный набор вопросов: команда соберёт новый профиль и атомарно заменит прежний файл независимо от его версии. `eda update-all` задаст эти вопросы только один раз и применит ответы ко всем проектам.
38
+ Установщик разбирает старый файл как YAML, переносит валидные известные значения и спрашивает только отсутствующие в интерактивном терминале. После этого файл целиком атомарно записывается в нормализованном формате v3. Без TTY недостающие значения заменяются defaults.
61
39
 
62
- `eda init` ведёт себя осторожнее: если конфиг уже существует, v2 и неизвестные версии сохраняются, а v1 автоматически мигрируется с переносом поддерживаемых значений. При update-командах прежний файл заменяется выбранным полным профилем, поэтому перед запуском сохрани нестандартные поля отдельно.
40
+ Основные соответствия:
63
41
 
64
- Основное соответствие полей:
65
-
66
- | `version: 1` | `version: 2` |
42
+ | Старое поле | Новое поле |
67
43
  |---|---|
68
- | `defaults.strict` | `explore.strict`, `plan.strict`, `plan-polish.strict` |
69
- | `defaults.plan_size` | `plan.size` |
70
- | `defaults.decision_mode` | `explore.decision_mode`, `plan.decision_mode` |
71
- | `defaults.test_strategy` | `plan.test_strategy` |
72
- | `defaults.logging_strategy` | `plan.logging_strategy` |
73
- | `automate.include_plans` | `discover-automations.include_plans` |
74
- | `review.include_code_quality: true` | `review.agents.code_quality.mode: always` |
75
- | `review.include_code_quality: false` | `review.agents.code_quality.mode: off` |
44
+ | `version: 1` или `version: 2` | `version: 3` |
45
+ | `plan.meta_review` | `plan.review` |
46
+ | `plan-polish.strict` | удалено |
47
+ | отсутствует | `plan-review.threshold: 95` |
48
+ | отсутствует | `plan-review.agents.*` |
49
+ | отсутствует | `plan-polish.limit: 3` |
50
+ | `defaults.strict` из v1 | `explore.strict`, `plan.strict` |
51
+ | `defaults.plan_size` из v1 | `plan.size` |
52
+ | `defaults.decision_mode` из v1 | `explore.decision_mode`, `plan.decision_mode` |
53
+ | `automate.include_plans` из v1/v2 | `discover-automations.include_plans` |
76
54
 
77
- У старого `review.strict` нет прямого аналога. В 1.0 каждая проверка в `review.agents` отдельно получает режим `always`, `auto` или `off` и модели для Claude/Codex. Раздел `review-check` больше не используется.
55
+ Также сохраняются валидные `orhestra.steps`, `aim`, `explore`, остальные поля `plan`, `review.agents`, `send-review` и `discover-automations`. Неизвестные пользовательские поля не входят в v3 и после нормализации удаляются.
78
56
 
79
- Результат переноса старых общих настроек выглядит так:
57
+ ## Новый plan-review профиль
80
58
 
81
59
  ```yaml
82
- version: 2
83
-
84
- explore:
85
- strict: false
86
- decision_mode: recommend_and_ask
60
+ version: 3
87
61
 
88
62
  plan:
89
63
  strict: false
64
+ review: true
90
65
  size: normal
91
66
  decision_mode: recommend_and_ask
92
67
  test_strategy: ask_each_time
93
68
  logging_strategy: ask_each_time
94
69
 
95
- plan-polish:
96
- strict: false
70
+ plan-review:
71
+ threshold: 95
72
+ agents:
73
+ requirements:
74
+ mode: always
75
+ model:
76
+ claude: sonnet
77
+ codex: gpt-5.6-terra
78
+ architecture:
79
+ mode: always
80
+ model:
81
+ claude: opus
82
+ codex: gpt-5.6-sol
97
83
 
98
- discover-automations:
99
- include_plans: false
84
+ plan-polish:
85
+ limit: 3
100
86
  ```
101
87
 
102
- Новые разделы `orhestra`, `aim`, `review.agents` и `send-review` заполняются ответами на вопросы; в non-TTY запуске используются сбалансированные defaults. Полный актуальный пример приведён в [README](README.md).
103
-
104
- ## Проверка после миграции
105
-
106
- Проверь версию CLI:
88
+ Полный профиль со всеми агентами создаётся установщиком и приведён в README.
107
89
 
108
- ```bash
109
- eda --version
110
- ```
90
+ ## Проверка миграции
111
91
 
112
- Затем в каждом проекте проверь:
92
+ После `eda update` проверь:
113
93
 
114
- - в `docs/settings.yaml` указано `version: 2`;
115
- - старые имена скилов больше не используются в документации и workflow;
116
- - для выбранных сред появились каталоги скилов и агентов;
117
- - `git status` показывает только ожидаемые изменения проекта.
94
+ - `docs/settings.yaml` содержит `version: 3`, `plan.review`, `plan-review.agents` и `plan-polish.limit`;
95
+ - в `.claude/agents/` или `.codex/agents/` установлены `eda-plan-review-*`;
96
+ - старые ссылки на `plan.meta_review` и `eda-plan-polish strict` удалены из локальных workflow;
97
+ - `git status` показывает только ожидаемую нормализацию настроек и обновление управляемых компонентов.
118
98
 
119
- Если среда ещё не была установлена в проект, используй `eda init` вместо `eda update`.
99
+ Установщик не создаёт и не перезаписывает корневой `AGENTS.md` пользовательского проекта и не удаляет чужие skills/agents.
package/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
  > Поточная разработка с AI-агентами — на русском языке.
4
4
  > Пакет готовых скилов и специализированных агентов для **Claude Code** и **Codex CLI**, которые ведут тебя через весь цикл: от исследования до коммита.
5
5
 
6
- `eda` — это девятнадцать скилов и пакетные агенты для повторяемых ролей. Скил отвечает за пользовательский workflow и оркестрацию, агент — за изолированную работу с закреплённой моделью и ограничениями. Вместо того чтобы каждый раз объяснять модели, как делать ревью или как исполнять план, ты говоришь одно слово — и она следует чёткой инструкции на русском, со всеми правилами, проверками и артефактами в нужных папках.
6
+ `eda` — это двадцать два скила и пакетные агенты для повторяемых ролей. Скил отвечает за пользовательский workflow и оркестрацию, агент — за изолированную работу с закреплённой моделью и ограничениями. Вместо того чтобы каждый раз объяснять модели, как делать ревью или как исполнять план, ты говоришь одно слово — и она следует чёткой инструкции на русском, со всеми правилами, проверками и артефактами в нужных папках.
7
7
 
8
8
  ---
9
9
 
@@ -13,7 +13,7 @@
13
13
  npm install -g @gian-tiaga/eda
14
14
  ```
15
15
 
16
- Обновляешься с `0.8.x` или более ранней версии? Перед обновлением прочитай [гайд по миграции на 1.0](MIGRATION.md): в релизе изменились имена нескольких скилов, формат Codex-установки и структура `docs/settings.yaml`.
16
+ Обновляешься с `1.x` или более ранней версии? Перед обновлением прочитай [гайд по миграции на 2.0](MIGRATION.md): изменились проверка планов и структура `docs/settings.yaml`.
17
17
 
18
18
  В корне твоего проекта:
19
19
 
@@ -21,9 +21,9 @@ npm install -g @gian-tiaga/eda
21
21
  eda init
22
22
  ```
23
23
 
24
- Установщик покажет чекбоксы: стрелками выбираешь среду, пробелом отмечаешь, Enter продолжает. Можно поставить Claude Code, Codex CLI или обе среды сразу. Устанавливаются и скилы, и агенты. Если `docs/settings.yaml` ещё нет, установщик предложит настройки скилов, а для каждой review-проверки отдельно спросит режим и модели Claude/Codex. В неинтерактивном запуске записывается сбалансированный профиль. В конце `eda init` отдельно пишет, какие скилы и агенты реально установлены или изменились.
24
+ Установщик покажет чекбоксы: стрелками выбираешь среду, пробелом отмечаешь, Enter продолжает. Можно поставить Claude Code, Codex CLI или обе среды сразу. Устанавливаются и скилы, и агенты. Если `docs/settings.yaml` ещё нет, установщик предложит настройки скилов, а для каждой проверки `plan-review` и `review` отдельно спросит режим и модели Claude/Codex. В неинтерактивном запуске записывается сбалансированный профиль. В конце `eda init` отдельно пишет, какие скилы и агенты реально установлены или изменились.
25
25
 
26
- `eda update` не перенастраивает полный v2-конфиг: если все обязательные разделы уже есть, команда обновляет пакет без вопросов и сохраняет `docs/settings.yaml` байт-в-байт. Если разделов не хватает, спрашиваются только они и атомарно дописываются в существующий файл; без TTY для них используются defaults. Для отсутствующего файла или версии, отличной от 2, собирается полный v2-профиль.
26
+ `eda update` сохраняет полный валидный v3-конфиг байт-в-байт. Старый, неизвестный или неполный файл разбирается как YAML: известные значения переносятся, в TTY спрашиваются только отсутствующие, затем профиль целиком атомарно записывается как v3. Без TTY используются перенесённые значения и defaults.
27
27
 
28
28
  Если пакет уже стоит во многих проектах, можно обновить его одной командой:
29
29
 
@@ -31,7 +31,7 @@ eda init
31
31
  eda update-all ~/Code
32
32
  ```
33
33
 
34
- `eda update-all` ищет проекты в указанной директории, её прямых подпапках и подпапках второго уровня. Проект считается найденным, если в нём уже есть установленный скил, агент или manifest `eda` для Claude/Codex. Перед обновлением команда предлагает настроить один общий профиль для всех проектов или выбрать `skip`. В режиме `skip` вопросы не задаются, существующие `docs/settings.yaml` сохраняются байт-в-байт, а полный профиль defaults создаётся только в проектах без файла. Без TTY автоматически используется `skip`.
34
+ `eda update-all` ищет проекты в указанной директории, её прямых подпапках и подпапках второго уровня. Проект считается найденным, если в нём уже есть установленный скил, агент или manifest `eda` для Claude/Codex. Перед обновлением команда предлагает настроить один общий профиль для всех проектов или выбрать `skip`. В режиме `skip` полный v3 сохраняется, старые и неполные конфиги индивидуально переносятся, отсутствующие создаются с defaults. Без TTY автоматически используется `skip`.
35
35
 
36
36
  ---
37
37
 
@@ -39,19 +39,22 @@ eda update-all ~/Code
39
39
 
40
40
  | Скил | Что делает | Куда складывает |
41
41
  |---|---|---|
42
- | `eda-orhestra` | Выполняет настраиваемую цепочку `eda-*`-скилов. Каждый этап запускает в отдельном субагенте с чистым контекстом, включая составные скилы и повторы QA-цикла. По умолчанию: план → выполнение → автономное ревью и исправления → ручные тесты и QA-фиксы. В `orhestra.steps` шаги можно переставлять, отключать и снабжать `args`; для `eda-polish` там же задаются `threshold` и `limit`. В `automatic` безопасно отвечает на рабочие вопросы сам, в `manual` пишет план вместе с человеком. Не коммитит | Артефакты включённых скилов |
42
+ | `eda-orhestra` | Выполняет настраиваемую цепочку `eda-*`-скилов. Каждый этап запускает в отдельном субагенте с чистым контекстом, включая составные скилы и повторы QA-цикла. По умолчанию: план без проверок → полировка плана → выполнение → автономное ревью и исправления → ручные тесты. Если QA нашёл баг, оркестра запускает fix и повторяет только ручной тест. В `orhestra.steps` шаги можно переставлять, отключать и снабжать `args`. Не коммитит | Артефакты включённых скилов |
43
43
  | `eda-aim` | Сначала через отдельного агента-планировщика согласует с человеком одну или несколько простых проверяемых целей, затем передаёт их агентам-исполнителям и повторяет работу до независимого подтверждения агентом-проверяющим. При необходимости использует установленные скилы в отдельных изолированных субагентах. В `automatic` отвечает на безопасные рабочие вопросы самостоятельно, в `manual` передаёт их человеку; режим задаётся через `aim.mode` или текущий вызов. Точный список новых целей человек подтверждает всегда | `docs/aims/` и артефакты задействованных скилов |
44
44
  | `eda-new-project` | Помогает стартовать новый проект: собирает и согласует требования, функциональность и границы, ограничения и архитектурные драйверы, сравнивает варианты основного стека и фиксирует выбранные компоненты с актуальными стабильными версиями. Не проектирует архитектуру, правила, проверки, AI-скилы или MCP; сохраняет подтверждённый стартовый бриф и всегда без дополнительного вопроса запускает полный технический bootstrap через `eda-prepare-ai` | `docs/project-starts/`, затем артефакты `eda-prepare-ai` |
45
+ | `eda-business` | Совместно с человеком описывает целевое поведение проекта по тематическим карточкам: сложные темы фиксирует подробно, но без шума, соседних модулей и привязки к текущему коду. Может закрепить значимый механизм вроде JWT или серверного хранения токенов, но не язык, библиотеку или конкретную СУБД. `about` содержит лишь короткое описание проекта и основные возможности | `docs/business.md`, `docs/business/` |
45
46
  | `eda-roadmap` | Создаёт roadmap-файл: список будущих задач с короткими, понятными и недвусмысленными описаниями без деталей реализации, файлов, библиотек, API и пошагового плана | `docs/roadmaps/` |
46
- | `eda-explore` | Исследует тему до конкретного результата: описание проблемы, релевантная архитектура, закрытые развилки, риски внутри решений и короткий выбранный вариант решения без плана. Читает только применимые карточки из `docs/references/`, если они есть. В дефолтном режиме ведёт исследование как диалог; для пакетов и ПО проверяет актуальные стабильные версии | `docs/researches/` |
47
- | `eda-plan` | Пишет план реализации через стандартный Plan Mode хост-агента. `docs/rules.md`, `docs/arch.md` и применимые кодовые эталоны использует как обязательную рамку. В плане явно фиксирует контракты БД/API, прямые зависимости задач и связные фазы, рассчитанные на одного исполнителя. Затем три параллельных субагента/модели проверяют реалистичность, полноту и соблюдение рамки | `docs/plans/` |
48
- | `eda-plan-polish` | Полирует готовый план до оценки 95/100 или заданного порога. Каждая итерация запускает три изолированных агента, которые проверяют план по правилам, архитектуре, `sources.references`, research и коду. В strict дополнительно запускается кросс-ревью Claude ↔ Codex. Основной агент правит только файл плана и не запускает проверки проекта | `docs/plans/` |
49
- | `eda-plan-execute` | Управляет выполнением плана по фазам. Каждую фазу целиком выполняет отдельный изолированный субагент: он читает план, правила и архитектуру, а применимые карточки — по ходу работы через индекс `docs/references.md`. Фазы проходят строго последовательно и принимаются независимыми проверяющими. Основной агент отмечает подтверждённые задачи и ведёт журнал | `docs/executions/` |
47
+ | `eda-explore` | Исследует тему до конкретного результата: описание проблемы, релевантная архитектура, закрытые развилки, риски внутри решений и короткий выбранный вариант решения без плана. После определения темы читает только применимые business- и reference-карточки. В дефолтном режиме ведёт исследование как диалог; для пакетов и ПО проверяет актуальные стабильные версии | `docs/researches/` |
48
+ | `eda-plan` | Пишет конкретный план реализации без воды и повторов через Plan Mode, фиксирует БД/API-контракты, прямые зависимости и связные фазы. По `plan.review` запускает изолированный `eda-plan-polish`; `plan.strict` независимо включает кросс-CLI ревью | `docs/plans/`, опционально plan-review артефакты |
49
+ | `eda-plan-review` | Параллельно запускает узких read-only агентов требований, правил, архитектуры, реализуемости, исполнения, верификации и применимых API/DB/security/frontend/performance/previous. Принимает только доказанные ошибки и существенные неточности, которые обязательно исправить, отклоняет косметические расширения текста, дедуплицирует находки, сохраняет стабильные ID и SHA-256, экспертно выставляет score. План не меняет | `docs/plan-reviews/` |
50
+ | `eda-plan-review-fix` | Применяет все открытые находки минимальным изменением только к плану с совпадающим SHA-256. Предпочитает удаление и замену текста вместо новых пояснений. Новое ревью не делает и код не меняет | `docs/plan-review-fixes/` |
51
+ | `eda-plan-polish` | Оркестрирует изолированный цикл plan-review → plan-review-fix до отсутствия открытых находок и score не ниже threshold. По умолчанию максимум три review-итерации; один круг без прогресса немедленно останавливает цикл. Кросс-CLI strict не используется | `docs/plan-reviews/`, `docs/plan-review-fixes/` |
52
+ | `eda-plan-execute` | Управляет выполнением плана по фазам. Каждую фазу целиком выполняет отдельный изолированный субагент: он читает план, правила, архитектуру и только business/reference-карточки затронутого поведения и компонентов. Фазы проходят строго последовательно и принимаются независимыми проверяющими. Основной агент отмечает подтверждённые задачи и ведёт журнал | `docs/executions/` |
50
53
  | `eda-fix` | Делает обычные фиксы по короткому контексту, баг-репорту или плану. Перед правками читает правила, архитектуру и только применимые карточки, добавляет нужные тесты, прогоняет проверки и сохраняет историю правок | `docs/fixes/` |
51
- | `eda-review` | Оркестрирует отдельные read-only проверки корректности, архитектуры, правил, references, плана, качества, тестов, безопасности, производительности, frontend/UI/UX, API, БД, документации и предыдущих ревью. По конфигу запускает только применимые packaged-агенты, объединяет подтверждённые проблемы, ставит экспертную оценку 0–100 и сохраняет покрытие. Без аргументов ревьюит `git diff HEAD`. Код и удалённые обсуждения не меняет | `docs/reviews/` |
52
- | `eda-fix-by-review` | Применяет замечания из ревью с учётом правил, архитектуры и применимых карточек. Обязательные пункты исправляет сразу; optional-пункты спрашивает или решает сам в `apply-optional`. В конце ссылается на отчёт прямо в файле ревью | `docs/review-fixes/` |
53
- | `eda-manual-test` | Делает ручную smoke/acceptance-проверку после изменений: API прогоняет через `curl`/HTTP-запросы, фронт — через Playwright или доступную browser automation. Сам строит чеклист из входа, плана или diff, запускает очевидные dev/API-серверы и сохраняет QA-отчёт. Не правит код, не пишет автотесты и не коммитит | `docs/manual-tests/` |
54
- | `eda-polish` | Оркестрирует доводку изменений: запускает полное `eda-review`, затем `eda-fix-by-review apply-optional` и повторяет цикл до оценки 95/100 или лимита 5 итераций. Обязательные замечания чинятся все, optional-пункты fix-агент применяет или отклоняет с обоснованием. Каждый шаг идёт в изолированном нативном субагенте. Не коммитит | `docs/reviews/`, `docs/review-fixes/` |
54
+ | `eda-review` | Оркестрирует отдельные read-only проверки корректности, архитектуры, правил, references, business-правил, плана, качества, тестов, безопасности, производительности, frontend/UI/UX, API, БД, документации и предыдущих ревью. Сохраняет только доказанные дефекты, которые обязательно исправить; косметические и спекулятивные предложения отбрасывает. Любая находка даёт `changes-required`, а чистое ревью — `clean` и 100/100. Без аргументов ревьюит `git diff HEAD` | `docs/reviews/` |
55
+ | `eda-fix-by-review` | Применяет все находки из ревью с учётом правил, архитектуры и применимых карточек. Спрашивает только при неоднозначности, конфликте, расширении scope или рискованном действии. В конце ссылается на отчёт прямо в файле ревью | `docs/review-fixes/` |
56
+ | `eda-manual-test` | Делает ручную smoke/acceptance-проверку после изменений: основной чеклист строит по выполненной задаче и связанному плану/issue/review/fix-отчёту, затем сверяет фактический diff. Применимая business-карточка может добавить только относящийся к задаче инвариант или сценарий; несвязанные карточки не загружаются. Не правит код, не пишет автотесты и не коммитит | `docs/manual-tests/` |
57
+ | `eda-polish` | Оркестрирует доводку изменений: запускает полное `eda-review`, затем `eda-fix-by-review` и повторяет цикл до `clean`, отсутствия находок и оценки не ниже 95/100 либо до лимита 5 итераций. Все находки исправляются. Каждый шаг идёт в изолированном нативном субагенте. Не коммитит | `docs/reviews/`, `docs/review-fixes/` |
55
58
  | `eda-send-review` | На `sonnet` / `gpt-5.6-terra` отправляет ревью на GitHub PR через `gh` всегда в едином формате: общий комментарий-сводка плюс комментарии к строкам кода. Без явно указанного типа использует `comment`; `approve` и `request-changes` берёт только из контекста текущего вызова. По настройке может скрыть предыдущие сводки eda-send-review и зарезолвить их inline-треды. По умолчанию шлёт все пункты. Claude-модель закрепляется при установке; Codex-модель хранится как рекомендуемый будущий override | (комментарий в PR) |
56
59
  | `eda-commit` | Работает как лёгкий оркестратор одного `haiku` / `gpt-5.6-luna` агента: тот сам собирает git-контекст, выбирает один логический набор файлов, пишет сообщение, точечно коммитит и выполняет явно заданные push/PR/merge-действия. В Claude Code сам оркестратор закреплён за `haiku`; в Codex остаётся на активной модели сессии из-за отсутствия per-skill override. При неоднозначном составе или вероятном секрете агент блокируется до индексации. Если продолжение не задано, предлагает применимые варианты | (git, опционально GitHub PR) |
57
60
  | `eda-worktree` | На `haiku` / `gpt-5.6-luna` создаёт через пакетного агента git worktree рядом с основным проектом в папке `{name}-work-{n}` и одноимённую ветку. Базу берёт из аргумента или спрашивает | соседняя папка `{name}-work-{n}` |
@@ -59,6 +62,12 @@ eda update-all ~/Code
59
62
  | `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` |
60
63
  | `eda-discover-automations` | Проводит baseline gap-аудит проекта даже без истории, а при наличии анализирует ревью, планы и фиксы. Не ограничивает число предложений: проверяет тесты/e2e, стиль, статанализ, границы модулей, конфиги/IaC, API/БД, security/supply chain, performance, release, эксплуатацию, browser MCP и MCP стека. Для каждой идеи даёт команду, контур запуска и приоритет; ничего не внедряет | `docs/automations/` |
61
64
 
65
+ ### Business-контекст
66
+
67
+ `eda-business` хранит в `docs/business.md` только простое оглавление из двух колонок — описание темы и ссылка на готовую согласованную карточку. Степень подробности определяется темой: сложная аутентификация может подробно фиксировать вид токенов, их выпуск, обновление и отзыв, тогда как `about` остаётся коротким описанием проекта и основных возможностей. Карточки не привязываются к путям, классам и внутренним модулям текущего кода; значимый механизм вроде JWT указать можно, а язык, библиотеку, конкретную СУБД и схему реализации — нет. Последний раздел содержит только прямые расхождения поведения по собственной теме.
68
+
69
+ Потребляющий скил сначала определяет текущую задачу и фактически затронутое поведение, а затем выбирает по описаниям только применимые business-карточки. Отсутствие подходящей карточки не является ошибкой и не требует загружать остальные. Если задача противоречит карточке, агент показывает конфликт и спрашивает человека, изменить задачу или пересогласовать правило через `eda-business`.
70
+
62
71
  `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-commit-context` также выведен из эксплуатации: сбор контекста теперь выполняет единый `eda-commit-executor`. При обновлении старые имена удаляются из целевых сред. Установщик удаляет только управляемые EDA-копии retired-компонентов и не трогает чужие компоненты.
63
72
 
64
73
  ### Экстремальный профиль проверок
@@ -81,10 +90,23 @@ eda update-all ~/Code
81
90
  | `eda-commit-executor` | `haiku` | `gpt-5.6-luna` | Собирает git-контекст, выбирает один логический набор файлов, точечно коммитит и выполняет явно разрешённые push/PR/merge-действия |
82
91
  | `eda-worktree-executor` | `haiku` | `gpt-5.6-luna` | Создаёт соседний worktree и одноимённую ветку, не изменяя файлы проекта |
83
92
  | `eda-merge-worktree-executor` | `haiku` | `gpt-5.6-luna` | Мержит ветку из соседнего worktree в текущую без cleanup и ручного разрешения конфликтов |
93
+ | `eda-plan-review-requirements` | `sonnet`, read-only | `gpt-5.6-terra`, read-only | Проверяет задачу, scope, критерии готовности и business-требования |
94
+ | `eda-plan-review-rules` | `haiku`, read-only | `gpt-5.6-luna`, read-only | Проверяет применимые инструкции и правила проекта |
95
+ | `eda-plan-review-architecture` | `opus`, read-only | `gpt-5.6-sol`, read-only | Проверяет архитектурные границы и зависимости плана |
96
+ | `eda-plan-review-feasibility` | `opus`, read-only | `gpt-5.6-sol`, read-only | Сверяет реализуемость плана с фактическим кодом |
97
+ | `eda-plan-review-execution` | `sonnet`, read-only | `gpt-5.6-terra`, read-only | Проверяет конкретность и плотность текста, фазы, ID, зависимости и размер исполнительского прохода |
98
+ | `eda-plan-review-verification` | `sonnet`, read-only | `gpt-5.6-terra`, read-only | Проверяет тесты, команды, логирование и эксплуатацию |
99
+ | `eda-plan-review-api` | `sonnet`, read-only | `gpt-5.6-terra`, read-only | Проверяет API, события, очереди и внешние интеграции |
100
+ | `eda-plan-review-database` | `opus`, read-only | `gpt-5.6-sol`, read-only | Проверяет данные, миграции, индексы, backfill и rollback |
101
+ | `eda-plan-review-security` | `opus`, read-only | `gpt-5.6-sol`, read-only | Проверяет auth, permissions, ввод, секреты и чувствительные данные |
102
+ | `eda-plan-review-frontend` | `sonnet`, read-only | `gpt-5.6-terra`, read-only | Проверяет пользовательские сценарии и состояния UI |
103
+ | `eda-plan-review-performance` | `opus`, read-only | `gpt-5.6-sol`, read-only | Проверяет нагрузку, запросы, конкурентность и горячие пути |
104
+ | `eda-plan-review-previous` | `haiku`, read-only | `gpt-5.6-luna`, read-only | Сверяет закрытие предыдущих находок по связанной SHA-256 цепочке |
84
105
  | `eda-review-correctness` | `sonnet`, read-only | `gpt-5.6-terra`, read-only | Проверяет функциональную корректность и крайние случаи |
85
106
  | `eda-review-architecture` | `opus`, read-only | `gpt-5.6-sol`, read-only | Проверяет архитектурные границы и зависимости |
86
107
  | `eda-review-rules` | `haiku`, read-only | `gpt-5.6-luna`, read-only | Проверяет инструкции и правила проекта |
87
108
  | `eda-review-references` | `haiku`, read-only | `gpt-5.6-luna`, read-only | Проверяет применимые эталонные карточки |
109
+ | `eda-review-business` | `sonnet`, read-only | `gpt-5.6-terra`, read-only | Проверяет изменённое поведение по применимым business-карточкам |
88
110
  | `eda-review-plan-alignment` | `sonnet`, read-only | `gpt-5.6-terra`, read-only | Проверяет соответствие реализации плану |
89
111
  | `eda-review-code-quality` | `sonnet`, read-only | `gpt-5.6-terra`, read-only | Проверяет читаемость, сложность и поддерживаемость |
90
112
  | `eda-review-tests` | `sonnet`, read-only | `gpt-5.6-terra`, read-only | Проверяет тестовое покрытие и корректность тестов |
@@ -112,12 +134,12 @@ eda update-all ~/Code
112
134
 
113
135
  | Скил | Флаг | Что включает | Когда стоит использовать |
114
136
  |---|---|---|---|
115
- | `eda-orhestra` | `automatic` / `manual`, `без полировки`, `полировка N итераций`, `без ручных тестов` | Разово меняет режим, состав цепочки и параметры шагов поверх `docs/settings.yaml` | Когда нужно довести задачу по сохранённому workflow или временно сократить дорогие этапы |
137
+ | `eda-orhestra` | `automatic` / `manual`, `без полировки плана`, `без полировки кода`, `полировка кода N итераций`, `без ручных тестов` | Разово меняет режим, состав цепочки и параметры шагов поверх `docs/settings.yaml` | Когда нужно довести задачу по сохранённому workflow или временно сократить дорогие этапы |
116
138
  | `eda-aim` | `automatic` / `manual` | Разово меняет способ ответа на рабочие вопросы поверх `aim.mode`; подтверждение точного списка новых целей остаётся обязательным | Автономная работа или совместное прохождение развилок с человеком |
117
139
  | `eda-explore` | `strict` | После сохранения отчёта отдаёт его соседнему CLI (Claude → Codex или наоборот) на критическое ревью конкретности, фактов, развилок, рисков и версий; затем доправляет отчёт по замечаниям | Серьёзные исследования, которые лягут в основу больших решений; когда хочется второго мнения от другой модели/среды |
118
- | `eda-plan` | `strict` | После обычного мета-ревью трёх субагентов/моделей отдаёт план соседнему CLI на дополнительный круг проверки; доправляет план | Большие или ответственные планы, особенно затрагивающие смежные системы |
119
- | `eda-plan-polish` | `strict` | В каждой итерации после трёх полных ревью плана отдаёт план соседнему CLI (Claude → Codex или Codex → Claude) на кросс-ревью; затем учитывает его в итоговой оценке и правках | Максимальная полировка ответственных планов перед `eda-plan-execute` |
120
- | `eda-fix-by-review` | `apply-optional` | Применяет все обязательные пункты, а пункты «на усмотрение автора» разбирает без вопроса: применяет выбранные и отклоняет нецелесообразные с причиной | Для автономной доводки, прежде всего внутри `eda-polish` |
140
+ | `eda-plan` | `strict`, `без ревью плана`, `без проверок` | `strict` независимо включает кросс-CLI проверку; `без ревью плана` отключает встроенный review/fix; `без проверок` отключает оба вида ревью | Когда нужно разделить создание плана и его последующую полировку |
141
+ | `eda-plan-review` | `threshold N`, `без X`, `включи X`, `<check> на <model>` | Разово меняет gate, применимые проверки и их модели | Для самостоятельного аудита готового плана |
142
+ | `eda-plan-polish` | `threshold N`, `limit N` | Меняет gate и максимальное число подтверждающих review-итераций | Для доводки ответственных планов перед `eda-plan-execute` |
121
143
 
122
144
  ---
123
145
 
@@ -128,7 +150,7 @@ eda update-all ~/Code
128
150
  Файл по умолчанию:
129
151
 
130
152
  ```yaml
131
- version: 2
153
+ version: 3
132
154
 
133
155
  orhestra:
134
156
  # Режим полного цикла eda-orhestra.
@@ -140,6 +162,11 @@ orhestra:
140
162
  skill: eda-plan
141
163
  enabled: true
142
164
  # Строка аргументов передаётся скиллу как часть текущего вызова.
165
+ args: "без проверок"
166
+ - id: plan-polish
167
+ skill: eda-plan-polish
168
+ enabled: true
169
+ # Строка аргументов передаётся скиллу как часть текущего вызова.
143
170
  args: ""
144
171
  - id: execute
145
172
  skill: eda-plan-execute
@@ -162,7 +189,6 @@ orhestra:
162
189
  args: ""
163
190
  # После исправления повторно запускаются включённые шаги с этими id.
164
191
  then:
165
- - polish
166
192
  - manual-test
167
193
  max_cycles: 5
168
194
 
@@ -183,6 +209,9 @@ plan:
183
209
  # Включает кросс-CLI ревью в eda-plan.
184
210
  # true | false
185
211
  strict: false
212
+ # Запускает изолированный цикл eda-plan-polish.
213
+ # true | false
214
+ review: true
186
215
  # Задаёт размер плана.
187
216
  # normal | short | ask_each_time
188
217
  size: normal
@@ -196,10 +225,50 @@ plan:
196
225
  # debug_precise | standard | ask_each_time
197
226
  logging_strategy: ask_each_time
198
227
 
228
+ plan-review:
229
+ # План готов без открытых находок и при score не ниже threshold.
230
+ threshold: 95
231
+ agents:
232
+ requirements:
233
+ mode: always
234
+ model: { claude: sonnet, codex: gpt-5.6-terra }
235
+ rules:
236
+ mode: always
237
+ model: { claude: haiku, codex: gpt-5.6-luna }
238
+ architecture:
239
+ mode: always
240
+ model: { claude: opus, codex: gpt-5.6-sol }
241
+ feasibility:
242
+ mode: always
243
+ model: { claude: opus, codex: gpt-5.6-sol }
244
+ execution:
245
+ mode: always
246
+ model: { claude: sonnet, codex: gpt-5.6-terra }
247
+ verification:
248
+ mode: always
249
+ model: { claude: sonnet, codex: gpt-5.6-terra }
250
+ api:
251
+ mode: auto
252
+ model: { claude: sonnet, codex: gpt-5.6-terra }
253
+ database:
254
+ mode: auto
255
+ model: { claude: opus, codex: gpt-5.6-sol }
256
+ security:
257
+ mode: auto
258
+ model: { claude: opus, codex: gpt-5.6-sol }
259
+ frontend:
260
+ mode: auto
261
+ model: { claude: sonnet, codex: gpt-5.6-terra }
262
+ performance:
263
+ mode: auto
264
+ model: { claude: opus, codex: gpt-5.6-sol }
265
+ previous:
266
+ mode: auto
267
+ model: { claude: haiku, codex: gpt-5.6-luna }
268
+
199
269
  plan-polish:
200
- # Включает кросс-CLI ревью в eda-plan-polish.
201
- # true | false
202
- strict: false
270
+ # Максимальное число подтверждающих review-итераций.
271
+ limit: 3
203
272
 
204
273
  review:
205
274
  # Каждая проверка имеет собственный режим запуска и модели для обеих сред.
@@ -239,6 +308,14 @@ review:
239
308
  claude: haiku
240
309
  codex: gpt-5.6-luna
241
310
 
311
+ # Проверяет изменённое поведение по применимым карточкам из docs/business/.
312
+ # В auto запускается только когда изменения затрагивают поведение с применимой business-карточкой.
313
+ business:
314
+ mode: auto
315
+ model:
316
+ claude: sonnet
317
+ codex: gpt-5.6-terra
318
+
242
319
  # Проверяет, что реализация соответствует указанному или однозначно найденному плану.
243
320
  # В auto запускается только когда у ревью есть конкретный план.
244
321
  plan_alignment:
@@ -337,18 +414,21 @@ discover-automations:
337
414
  - `steps[].on_failure` — настраивает исправление failed manual-test прямо рядом с этим шагом: `skill` и `args` задают фикс, `then` — повторяемые id шагов, `max_cycles` — лимит. Если обработчика нет, оркестратор сохраняет failed-отчёт и останавливается.
338
415
  - `aim.mode` — `automatic` самостоятельно выбирает безопасные ответы на рабочие вопросы; `manual` передаёт вопросы человеку. Явный режим в текущем вызове имеет приоритет.
339
416
  - `explore.strict` и `explore.decision_mode` — кросс-CLI ревью и способ выбора по исследовательским развилкам в `eda-explore`.
340
- - `plan.strict`, `plan.size`, `plan.decision_mode`, `plan.test_strategy`, `plan.logging_strategy` — режим и структура работы `eda-plan`.
341
- - `plan-polish.strict` — кросс-CLI ревью в каждой итерации `eda-plan-polish`.
417
+ - `plan.review` — изолированный цикл `eda-plan-polish` внутри `eda-plan`; `plan.strict` независимо управляет кросс-CLI ревью.
418
+ - `plan.size`, `plan.decision_mode`, `plan.test_strategy`, `plan.logging_strategy` — режим и структура работы `eda-plan`.
419
+ - `plan-review.threshold` — минимальный экспертный score при отсутствии открытых находок; любая находка блокирует `ready` независимо от score. `plan-review.agents` задаёт mode и модели специализированных проверок.
420
+ - `plan-polish.limit` — максимальное число подтверждающих review-итераций; default `3`.
342
421
  - `review.agents.<check>.mode` — запускать проверку всегда, автоматически по контексту или отключить.
343
422
  - `review.agents.<check>.model.claude` и `.codex` — модель конкретной проверки в соответствующей среде.
423
+ - `eda-review` не делит находки по обязательности: каждый принятый пункт требует исправления, а предложения без доказанного практического дефекта отбрасываются. Score остаётся экспертной оценкой серьёзности; любая находка блокирует `clean` независимо от score.
344
424
  - `send-review.close_previous_reviews` — после успешной новой отправки скрывает предыдущие сводки, созданные `eda-send-review` текущим GitHub-пользователем, и резолвит связанные inline-треды; прямое указание в текущем запросе переопределяет настройку.
345
- - `discover-automations.include_plans` — добавляет `docs/plans/` в обычный запуск `eda-discover-automations`. Если в существующем v2-файле остался только прежний раздел `automate`, скил временно использует его как fallback и просит переименовать настройку.
425
+ - `discover-automations.include_plans` — добавляет `docs/plans/` в обычный запуск `eda-discover-automations`.
346
426
 
347
- Каждый скилл читает только свой раздел. Для `eda-review` прямое указание в текущем запросе может разово включить или отключить проверку и заменить её модель, например: «без performance, architecture на opus».
427
+ Каждый скилл читает только свой раздел. Для `eda-review` прямое указание в текущем запросе может разово включить или отключить проверку и заменить её модель, например: «без performance, включи business, architecture на opus».
348
428
 
349
- Поддерживается только `version: 2`. Для старого v2 без `review.agents` новый review использует сбалансированные defaults и предупреждает, что устаревшие `review.strict`, `review.include_code_quality` и `review-check` игнорируются. Установщик существующий файл не переписывает.
429
+ Поддерживается только `version: 3`. Полный валидный v3 установщик сохраняет байт-в-байт. Старые, неизвестные и неполные файлы разбираются через YAML: валидные известные значения переносятся, в TTY спрашиваются только отсутствующие, затем профиль целиком атомарно нормализуется. Без TTY недостающие поля получают defaults. `plan.meta_review` переносится в `plan.review`, а `plan-polish.strict` удаляется.
350
430
 
351
- `eda init` создаёт `docs/settings.yaml`, только если файла ещё нет; существующий v1 автоматически мигрируется в v2, а v2 и неизвестные версии сохраняются. `eda update` сохраняет полный v2-файл без вопросов, а в неполный v2 атомарно дописывает только отсутствующие разделы после вопросов только по ним; без TTY используются defaults недостающих разделов. Для отсутствующего файла или другой версии команда заново собирает полный v2-профиль. `eda update-all` предлагает общий профиль с перезаписью или `skip`, который сохраняет существующие файлы и создаёт defaults только при их отсутствии. Без TTY используется `skip`.
431
+ `eda update-all configure` записывает один общий v3-профиль. `skip` сохраняет полный v3, индивидуально переносит остальные конфиги и создаёт defaults при отсутствии файла. Подробности перехода приведены в [MIGRATION.md](MIGRATION.md)
352
432
 
353
433
  ---
354
434
 
@@ -359,9 +439,9 @@ discover-automations:
359
439
  Каждая стрелка между этапами передаёт только явный вход и пути к артефактам: каждый этап работает в новом изолированном субагенте без истории диалога.
360
440
 
361
441
  ```text
362
- plan → plan-execute → polish → manual-test ──passed──> готово
363
- ^ │
364
- └── fix <───┘ failed
442
+ plan без проверок → plan-polish → plan-execute → polish → manual-test ──passed──> готово
443
+ ^ │
444
+ └── fix <───┘ failed
365
445
  ```
366
446
 
367
447
  `eda-aim` может обернуть любую цепочку ниже в автономный цикл:
@@ -393,15 +473,15 @@ roadmap ────────> explore ─────> plan ───> plan-
393
473
  └──────────────> plan v └──> commit
394
474
  fix ─────────────> manual-test
395
475
 
396
- polish = полное review ─> fix-by-review apply-optional ─> повтор до нужной оценки
397
- plan-polish = 3 полных ревью плана разными моделями ─> strict: кросс-CLI ─> оценка ─> правка плана ─> повтор до 95/100
476
+ polish = полное review ─> fix-by-review всех находок ─> подтверждающий review до clean и нужной оценки
477
+ plan-polish = специализированный plan-review ─> plan-review-fix всех находок ─> подтверждающий review до gate или limit
398
478
 
399
479
  discover-automations может запускаться от review, fix-by-review или fix.
400
480
  ```
401
481
 
402
482
  `eda-manual-test` обычно ставится после `eda-plan-execute`, `eda-fix` или `eda-fix-by-review`, чтобы руками проверить API/UI перед ревью или коммитом.
403
483
 
404
- Использовать всю цепочку не обязательно — каждый скил самодостаточен. Для полного прохода одной задачи можно вызвать `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`.
484
+ Использовать всю цепочку не обязательно — каждый скил самодостаточен. Для полного прохода одной задачи можно вызвать `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`.
405
485
 
406
486
  Например, запрос `eda-commit сразу отправь ветку, создай PR и дай ссылку` выполняет всю указанную цепочку без отдельного вопроса после коммита.
407
487
 
@@ -457,7 +537,7 @@ eda update-all ~/Code
457
537
  | Агент | `.claude/agents/<agent>.md` | `.codex/agents/<agent>.toml` |
458
538
  | Manifest владения | `.claude/eda-manifest.json` | `.codex/eda-manifest.json` |
459
539
 
460
- `eda update` сохраняет полный v2-конфиг как есть или дополняет только отсутствующие разделы, затем идемпотентно синхронизирует обе группы компонентов и отдельно показывает реально изменившиеся скилы и агенты. Manifest хранит только идентификаторы компонентов, которыми владеет `eda`: благодаря этому retired-компоненты удаляются, а чужие скилы и агенты остаются нетронутыми. `eda update-all [dir]` либо один раз собирает и записывает общий конфиг, либо в режиме `skip` сохраняет существующие настройки и создаёт defaults только при отсутствии файла; после этого синхронизирует компоненты каждого проекта. Старые Codex-файлы `.codex/skills/<skill>.md` также удаляются при миграции.
540
+ `eda update` сохраняет полный v3-конфиг как есть, а старый или неполный умно переносит и целиком нормализует; затем идемпотентно синхронизирует обе группы компонентов и отдельно показывает реально изменившиеся скилы и агенты. Manifest хранит только идентификаторы компонентов, которыми владеет `eda`: retired-компоненты удаляются, а чужие скилы и агенты остаются нетронутыми. `eda update-all [dir]` либо записывает общий профиль, либо в `skip` сохраняет полный v3 и переносит остальные настройки. Старые Codex-файлы `.codex/skills/<skill>.md` также удаляются при миграции.
461
541
 
462
542
  Установленные копии не являются источником правды. Локальные изменения внутри `.claude/skills/eda-*`, `.codex/skills/eda-*`, `.claude/agents/eda-*` или `.codex/agents/eda-*` будут заменены следующим обновлением.
463
543
 
@@ -0,0 +1,9 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "name": "eda-plan-review-api",
4
+ "description": "Проверяет API, события, очереди, интеграции и совместимость контрактов в плане.",
5
+ "models": { "claude": "sonnet", "codex": "gpt-5.6-terra" },
6
+ "reasoning": { "claude": "medium", "codex": "medium" },
7
+ "access": "read-only",
8
+ "maxTurns": 30
9
+ }