@gian-tiaga/eda 0.8.6 → 1.0.1
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 +119 -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 +921 -119
- 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/skills/eda-worktree.md
DELETED
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: eda-worktree
|
|
3
|
-
description: 'Создаёт новый git worktree рядом с основным проектом в папке `{name}-work-{n}` и одноимённую ветку. Базовую ветку берёт из текста рядом с вызовом, если она указана, иначе спрашивает интерактивно. Не правит код, не коммитит, не мержит обратно. В финале показывает путь worktree, имя ветки и команду перехода в новую папку.'
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Скил: Создатель worktree (eda-worktree)
|
|
7
|
-
|
|
8
|
-
Создаёшь отдельный git worktree для параллельной работы. Worktree всегда появляется рядом с основным проектом, а имя выбирается автоматически.
|
|
9
|
-
|
|
10
|
-
## Вход из сообщения пользователя
|
|
11
|
-
|
|
12
|
-
Текст рядом с вызовом скилла в текущем сообщении пользователя — главный вход. Сначала разбери именно его: базовую ветку или ref, ограничения и прямые указания.
|
|
13
|
-
|
|
14
|
-
Если вход содержит ветку, tag, commit hash или выражение вроде `от main` / `from main` / `base main`, используй это как `$BASE_REF`. Если входа нет или база не указана, спроси через `AskUserQuestion`. Старое обсуждение в истории не считай входом, если пользователь не связал его с текущим вызовом явно.
|
|
15
|
-
|
|
16
|
-
## Главные правила
|
|
17
|
-
|
|
18
|
-
1. **Только git worktree.** Не правь код, docs, конфиги и зависимости.
|
|
19
|
-
2. **Имя строго по шаблону.** Папка и ветка называются `{name}-work-{n}`, где `{name}` — имя папки основного worktree проекта, а `{n}` — первый свободный положительный номер.
|
|
20
|
-
3. **Папка рядом с основным проектом.** Если основной worktree лежит в `/path/app`, новый путь: `/path/app-work-1`, `/path/app-work-2` и так далее.
|
|
21
|
-
4. **Базу не додумывай молча.** Если пользователь не указал `$BASE_REF`, спроси интерактивно.
|
|
22
|
-
5. **Не удаляй и не мержь.** Этот скил только создаёт worktree. Обратный merge — `eda-merge-worktree`.
|
|
23
|
-
6. **Простой язык** в сообщениях пользователю.
|
|
24
|
-
|
|
25
|
-
## Интерактивные вопросы
|
|
26
|
-
|
|
27
|
-
Когда инструкция говорит `AskUserQuestion`, это означает блокирующий интерактивный вопрос.
|
|
28
|
-
- Claude Code: используй `AskUserQuestion`.
|
|
29
|
-
- Codex interactive: если доступен `request_user_input`, используй его. Если tool недоступен, задай один короткий вопрос в чат, дай варианты 1–3, напиши «Ответь номером или своим вариантом. Я продолжу только после ответа.» и остановись.
|
|
30
|
-
- Codex exec / неинтерактивный запуск: не задавай вопросы и не пытайся читать stdin. Если без ответа нельзя безопасно продолжать, заверши работу со статусом `blocked: нужен ответ пользователя`, перечисли вопросы и варианты, не выполняй рискованные действия.
|
|
31
|
-
- Не запускай команды, которые ждут интерактивного ввода в терминале.
|
|
32
|
-
|
|
33
|
-
## Этапы
|
|
34
|
-
|
|
35
|
-
### 1. Проверить git-репозиторий
|
|
36
|
-
|
|
37
|
-
Выполни:
|
|
38
|
-
|
|
39
|
-
```bash
|
|
40
|
-
git rev-parse --show-toplevel
|
|
41
|
-
git worktree list --porcelain
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
Если это не git-репозиторий — остановись и сообщи. Основной worktree бери из первой записи `worktree <path>` в `git worktree list --porcelain`. Если список не удалось прочитать, используй `git rev-parse --show-toplevel`.
|
|
45
|
-
|
|
46
|
-
Определи `$MAIN_WORKTREE` — путь основного worktree, `$PROJECT_NAME` — basename от него, `$PROJECT_PARENT` — родительская папка.
|
|
47
|
-
|
|
48
|
-
### 2. Выбрать базу
|
|
49
|
-
|
|
50
|
-
Если `$BASE_REF` указан в сообщении пользователя, проверь его:
|
|
51
|
-
|
|
52
|
-
```bash
|
|
53
|
-
git rev-parse --verify "$BASE_REF^{commit}"
|
|
54
|
-
```
|
|
55
|
-
|
|
56
|
-
Если ref не найден — остановись и сообщи, что база не существует.
|
|
57
|
-
|
|
58
|
-
Если `$BASE_REF` не указан, спроси через `AskUserQuestion`, откуда создавать worktree. Предлагай реальные варианты:
|
|
59
|
-
- текущая ветка или `HEAD`;
|
|
60
|
-
- default branch из `origin/HEAD`, если она есть;
|
|
61
|
-
- `main` или `master`, если такая ветка существует.
|
|
62
|
-
|
|
63
|
-
Если пользователь выбирает свой ref, проверь его через `git rev-parse --verify "$BASE_REF^{commit}"`.
|
|
64
|
-
|
|
65
|
-
Если текущий worktree содержит незакоммиченные изменения, коротко предупреди: они не попадут в новый worktree. Это не блокер, если база выбрана явно или подтверждена через вопрос.
|
|
66
|
-
|
|
67
|
-
### 3. Найти свободное имя
|
|
68
|
-
|
|
69
|
-
Начиная с `n = 1`, найди первый номер, для которого одновременно свободны:
|
|
70
|
-
- соседняя папка `$PROJECT_PARENT/$PROJECT_NAME-work-$n`;
|
|
71
|
-
- локальная ветка `$PROJECT_NAME-work-$n`.
|
|
72
|
-
|
|
73
|
-
Проверяй ветку так:
|
|
74
|
-
|
|
75
|
-
```bash
|
|
76
|
-
git show-ref --verify --quiet "refs/heads/$BRANCH_NAME"
|
|
77
|
-
```
|
|
78
|
-
|
|
79
|
-
Результат: `$WORKTREE_NAME=$PROJECT_NAME-work-$n`, `$BRANCH_NAME=$WORKTREE_NAME`, `$WORKTREE_PATH=$PROJECT_PARENT/$WORKTREE_NAME`.
|
|
80
|
-
|
|
81
|
-
Если папка уже есть, не перезаписывай её и не удаляй. Просто бери следующий номер.
|
|
82
|
-
|
|
83
|
-
### 4. Создать worktree
|
|
84
|
-
|
|
85
|
-
Выполни:
|
|
86
|
-
|
|
87
|
-
```bash
|
|
88
|
-
git worktree add -b "$BRANCH_NAME" "$WORKTREE_PATH" "$BASE_REF"
|
|
89
|
-
```
|
|
90
|
-
|
|
91
|
-
Если команда упала, покажи понятную причину и не пытайся чистить вручную. Если ошибка говорит, что ветка или папка уже существует, вернись к шагу 3 и выбери следующий номер.
|
|
92
|
-
|
|
93
|
-
### 5. Финал
|
|
94
|
-
|
|
95
|
-
Короткое сообщение:
|
|
96
|
-
- созданный путь worktree;
|
|
97
|
-
- имя ветки;
|
|
98
|
-
- выбранная база;
|
|
99
|
-
- готовая команда:
|
|
100
|
-
|
|
101
|
-
```bash
|
|
102
|
-
cd "$WORKTREE_PATH"
|
|
103
|
-
```
|
|
104
|
-
|
|
105
|
-
Напомни, что обратный merge выполняет `eda-merge-worktree <n>` или `eda-merge-worktree work-<n>`.
|
|
106
|
-
|
|
107
|
-
## Чего НЕ делать
|
|
108
|
-
|
|
109
|
-
- Править файлы проекта.
|
|
110
|
-
- Создавать docs-артефакты.
|
|
111
|
-
- Коммитить, пушить, мержить.
|
|
112
|
-
- Удалять существующие worktree, ветки или папки.
|
|
113
|
-
- Создавать worktree внутри текущего проекта вместо соседней папки.
|
|
File without changes
|