@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.
- package/MIGRATION.md +117 -0
- package/README.md +324 -71
- package/agents/eda-aim-executor/agent.json +15 -0
- package/agents/eda-aim-executor/prompt.md +61 -0
- package/agents/eda-aim-planner/agent.json +15 -0
- package/agents/eda-aim-planner/prompt.md +43 -0
- package/agents/eda-aim-verifier/agent.json +15 -0
- package/agents/eda-aim-verifier/prompt.md +57 -0
- package/agents/eda-commit-context/agent.json +15 -0
- package/agents/eda-commit-context/prompt.md +58 -0
- package/agents/eda-commit-executor/agent.json +15 -0
- package/agents/eda-commit-executor/prompt.md +87 -0
- package/agents/eda-merge-worktree-executor/agent.json +15 -0
- package/agents/eda-merge-worktree-executor/prompt.md +57 -0
- package/agents/eda-review-api/agent.json +15 -0
- package/agents/eda-review-api/prompt.md +34 -0
- package/agents/eda-review-architecture/agent.json +15 -0
- package/agents/eda-review-architecture/prompt.md +34 -0
- package/agents/eda-review-code-quality/agent.json +15 -0
- package/agents/eda-review-code-quality/prompt.md +34 -0
- package/agents/eda-review-correctness/agent.json +15 -0
- package/agents/eda-review-correctness/prompt.md +34 -0
- package/agents/eda-review-database/agent.json +15 -0
- package/agents/eda-review-database/prompt.md +34 -0
- package/agents/eda-review-documentation/agent.json +15 -0
- package/agents/eda-review-documentation/prompt.md +34 -0
- package/agents/eda-review-frontend/agent.json +15 -0
- package/agents/eda-review-frontend/prompt.md +34 -0
- package/agents/eda-review-performance/agent.json +15 -0
- package/agents/eda-review-performance/prompt.md +34 -0
- package/agents/eda-review-plan-alignment/agent.json +15 -0
- package/agents/eda-review-plan-alignment/prompt.md +34 -0
- package/agents/eda-review-previous-reviews/agent.json +15 -0
- package/agents/eda-review-previous-reviews/prompt.md +44 -0
- package/agents/eda-review-references/agent.json +15 -0
- package/agents/eda-review-references/prompt.md +34 -0
- package/agents/eda-review-rules/agent.json +15 -0
- package/agents/eda-review-rules/prompt.md +34 -0
- package/agents/eda-review-security/agent.json +15 -0
- package/agents/eda-review-security/prompt.md +34 -0
- package/agents/eda-review-tests/agent.json +15 -0
- package/agents/eda-review-tests/prompt.md +34 -0
- package/agents/eda-worktree-executor/agent.json +15 -0
- package/agents/eda-worktree-executor/prompt.md +49 -0
- package/bin/cli.js +4 -4
- package/lib/catalog.js +118 -0
- package/lib/install.js +763 -113
- package/lib/renderers/claude-agent.js +24 -0
- package/lib/renderers/claude-skill.js +11 -0
- package/lib/renderers/codex-agent.js +24 -0
- package/lib/renderers/codex-skill.js +3 -0
- package/package.json +5 -3
- package/skills/eda-aim/SKILL.md +212 -0
- package/skills/eda-commit/SKILL.md +124 -0
- package/skills/eda-commit/skill.json +6 -0
- package/skills/eda-discover-automations/SKILL.md +184 -0
- package/skills/{eda-explore.md → eda-explore/SKILL.md} +11 -8
- package/skills/{eda-fix.md → eda-fix/SKILL.md} +7 -6
- package/skills/{eda-fix-by-review.md → eda-fix-by-review/SKILL.md} +5 -4
- package/skills/{eda-manual-test.md → eda-manual-test/SKILL.md} +1 -1
- package/skills/eda-merge-worktree/SKILL.md +72 -0
- package/skills/eda-merge-worktree/skill.json +7 -0
- package/skills/eda-new-project/SKILL.md +163 -0
- package/skills/eda-orhestra/SKILL.md +146 -0
- package/skills/{eda-plan.md → eda-plan/SKILL.md} +39 -29
- package/skills/eda-plan-execute/SKILL.md +186 -0
- package/skills/{eda-plan-polish.md → eda-plan-polish/SKILL.md} +14 -13
- package/skills/eda-polish/SKILL.md +80 -0
- package/skills/eda-prepare-ai/SKILL.md +227 -0
- package/skills/eda-review/SKILL.md +212 -0
- package/skills/{eda-send-review.md → eda-send-review/SKILL.md} +66 -19
- package/skills/eda-send-review/skill.json +7 -0
- package/skills/eda-worktree/SKILL.md +73 -0
- package/skills/eda-worktree/skill.json +7 -0
- package/skills/eda-automate.md +0 -185
- package/skills/eda-commit.md +0 -91
- package/skills/eda-docs.md +0 -123
- package/skills/eda-execute.md +0 -140
- package/skills/eda-merge-worktree.md +0 -116
- package/skills/eda-polish.md +0 -113
- package/skills/eda-review-check.md +0 -149
- package/skills/eda-review.md +0 -173
- package/skills/eda-start.md +0 -233
- package/skills/eda-worktree.md +0 -113
- /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
|
-
>
|
|
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` ещё нет, установщик
|
|
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` ищет проекты в указанной директории, её прямых подпапках и подпапках второго уровня. Проект считается найденным, если в нём уже есть
|
|
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-
|
|
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` | Исследует тему до конкретного результата: описание проблемы, релевантная архитектура, закрытые развилки, риски внутри решений и короткий выбранный вариант решения без плана.
|
|
41
|
-
| `eda-plan` | Пишет план реализации через стандартный Plan Mode хост-агента. `docs/rules.md
|
|
42
|
-
| `eda-plan-polish` | Полирует
|
|
43
|
-
| `eda-execute` |
|
|
44
|
-
| `eda-fix` | Делает обычные фиксы по короткому контексту, баг-репорту или
|
|
45
|
-
| `eda-review` |
|
|
46
|
-
| `eda-review
|
|
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` | Оркестрирует доводку изменений: запускает
|
|
50
|
-
| `eda-send-review` |
|
|
51
|
-
| `eda-commit` |
|
|
52
|
-
| `eda-worktree` |
|
|
53
|
-
| `eda-merge-worktree` |
|
|
54
|
-
| `eda-
|
|
55
|
-
| `eda-
|
|
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
|
|
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:
|
|
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
|
-
|
|
87
|
-
# Включает
|
|
181
|
+
plan:
|
|
182
|
+
# Включает кросс-CLI ревью в eda-plan.
|
|
88
183
|
# true | false
|
|
89
184
|
strict: false
|
|
90
|
-
# Задаёт размер
|
|
185
|
+
# Задаёт размер плана.
|
|
91
186
|
# normal | short | ask_each_time
|
|
92
|
-
|
|
93
|
-
# Определяет, как eda-
|
|
187
|
+
size: normal
|
|
188
|
+
# Определяет, как eda-plan принимает существенные решения.
|
|
94
189
|
# autonomous | recommend_and_ask | ask_each_time
|
|
95
190
|
decision_mode: recommend_and_ask
|
|
96
|
-
# Задаёт стратегию
|
|
191
|
+
# Задаёт стратегию тестов.
|
|
97
192
|
# after_each_phase | tdd_each_phase | end_of_plan | ask_each_time
|
|
98
193
|
test_strategy: ask_each_time
|
|
99
|
-
# Задаёт стратегию
|
|
194
|
+
# Задаёт стратегию логирования.
|
|
100
195
|
# debug_precise | standard | ask_each_time
|
|
101
196
|
logging_strategy: ask_each_time
|
|
102
197
|
|
|
103
|
-
|
|
104
|
-
#
|
|
198
|
+
plan-polish:
|
|
199
|
+
# Включает кросс-CLI ревью в eda-plan-polish.
|
|
105
200
|
# true | false
|
|
106
|
-
|
|
201
|
+
strict: false
|
|
107
202
|
|
|
108
203
|
review:
|
|
109
|
-
#
|
|
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
|
-
|
|
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
|
-
- `
|
|
116
|
-
- `
|
|
117
|
-
- `
|
|
118
|
-
- `
|
|
119
|
-
- `
|
|
120
|
-
- `
|
|
121
|
-
- `
|
|
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`, только если файла ещё нет. Существующий
|
|
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
|
-
|
|
375
|
+
new-project ───────> prepare-ai ─────────┬───────────────┐
|
|
131
376
|
│ │ │
|
|
132
377
|
v v v
|
|
133
|
-
roadmap ────────> explore ─────> plan ───> plan-polish ───> execute ───┬──> manual-test ───> 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-
|
|
384
|
+
Если проект уже существует, можно начинать без `eda-new-project`:
|
|
140
385
|
|
|
141
386
|
```text
|
|
142
|
-
|
|
387
|
+
prepare-ai ─────────┬───────────────┐
|
|
143
388
|
│ │
|
|
144
389
|
v v
|
|
145
|
-
roadmap ────────> explore ─────> plan ───> plan-polish ───> execute ───┬──> manual-test ───> 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 =
|
|
395
|
+
polish = полное review ─> fix-by-review apply-optional ─> повтор до нужной оценки
|
|
151
396
|
plan-polish = 3 полных ревью плана разными моделями ─> strict: кросс-CLI ─> оценка ─> правка плана ─> повтор до 95/100
|
|
152
397
|
|
|
153
|
-
|
|
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-
|
|
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
|
-
-
|
|
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 # обновить
|
|
178
|
-
eda update-all [dir] # обновить
|
|
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
|
-
Исходники
|
|
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
|
-
|
|
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
|
-
- Для разработчиков, которые любят **строгость**: максимально жёсткие правила, обязательные
|
|
471
|
+
- Для разработчиков, которые любят **строгость**: максимально жёсткие правила, обязательные тесты и отдельные контекстные проверки ревью на подходящих моделях.
|
|
219
472
|
|
|
220
473
|
---
|
|
221
474
|
|