code-ai-installer 4.0.1-b → 4.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/LICENSE +1 -1
- package/README.md +5 -5
- package/dist/catalog.js +1 -1
- package/dist/contentTransformer.d.ts +1 -1
- package/dist/contentTransformer.js +39 -0
- package/dist/index.js +10 -5
- package/dist/mcp/cli.js +4 -4
- package/dist/mcp/scorecard.d.ts +2 -2
- package/dist/mcp/task_state.d.ts +2 -2
- package/dist/mcp/tools/advance_gate.js +1 -1
- package/dist/mcp/tools/classify_gate.d.ts +2 -2
- package/dist/mcp/tools/classify_gate.js +2 -2
- package/dist/mcp/tools/load_role.d.ts +2 -2
- package/dist/mcp/tools/load_role.js +2 -2
- package/dist/mcp/tools/report_exception.d.ts +3 -3
- package/dist/mcp/tools/report_exception.js +4 -4
- package/dist/mcp/tools/request_decision.d.ts +3 -3
- package/dist/mcp/tools/request_decision.js +5 -5
- package/dist/mcp/tools/review_proposal.d.ts +1 -1
- package/dist/mcp/tools/review_proposal.js +6 -6
- package/dist/mcp/tools/sign_off.d.ts +2 -2
- package/dist/mcp/tools/sign_off.js +7 -7
- package/dist/mcp/tools/verify_claim.d.ts +1 -1
- package/dist/mcp/tools/verify_claim.js +1 -1
- package/dist/mcp_setup.d.ts +84 -31
- package/dist/mcp_setup.js +182 -66
- package/dist/platforms/adapters.js +54 -19
- package/dist/shared/frontmatter.js +1 -1
- package/dist/shared/persona.d.ts +1 -1
- package/dist/shared/persona.js +1 -1
- package/dist/shared/pipeline.d.ts +10 -10
- package/dist/shared/pipeline.js +7 -7
- package/dist/shared/tools.d.ts +15 -15
- package/dist/shared/tools.js +3 -3
- package/dist/shared/vocabulary.d.ts +4 -4
- package/dist/shared/vocabulary.js +4 -4
- package/dist/types.d.ts +1 -1
- package/domains/analytics/.agents/workflows/analytics-pipeline-rules.md +13 -3
- package/domains/analytics/.agents/workflows/analyze.md +1 -0
- package/domains/analytics/.agents/workflows/quick-insight.md +1 -0
- package/domains/analytics/locales/en/.agents/workflows/analytics-pipeline-rules.md +13 -3
- package/domains/analytics/locales/en/.agents/workflows/analyze.md +1 -0
- package/domains/analytics/locales/en/.agents/workflows/quick-insight.md +1 -0
- package/domains/analytics/locales/en/agents/interviewer.md +2 -1
- package/domains/analytics/locales/en/agents/layouter.md +2 -1
- package/domains/analytics/locales/en/agents/mediator.md +2 -1
- package/domains/analytics/locales/en/agents/researcher.md +2 -1
- package/domains/analytics/locales/en/agents/strategist.md +2 -1
- package/domains/analytics/pipeline.yaml +10 -10
- package/domains/content/.agents/skills/content-release-gate/SKILL.md +3 -5
- package/domains/content/.agents/workflows/content-pipeline-rules.md +14 -11
- package/domains/content/.agents/workflows/edit-content.md +0 -1
- package/domains/content/.agents/workflows/quick-post.md +0 -1
- package/domains/content/.agents/workflows/start-content.md +0 -1
- package/domains/content/agents/conductor.md +1 -2
- package/domains/content/locales/en/.agents/skills/content-release-gate/SKILL.md +3 -5
- package/domains/content/locales/en/.agents/workflows/content-pipeline-rules.md +14 -11
- package/domains/content/locales/en/.agents/workflows/edit-content.md +0 -1
- package/domains/content/locales/en/.agents/workflows/quick-post.md +0 -1
- package/domains/content/locales/en/.agents/workflows/start-content.md +0 -1
- package/domains/content/locales/en/agents/conductor.md +1 -2
- package/domains/content/pipeline.yaml +8 -8
- package/domains/development/.agents/skills/handoff/SKILL.md +276 -276
- package/domains/development/.agents/skills/lava-flow-legacy-detection/SKILL.md +197 -197
- package/domains/development/.agents/skills/mcp-integration/SKILL.md +211 -211
- package/domains/development/.agents/skills/qa-test-data-management/SKILL.md +250 -250
- package/domains/development/.agents/workflows/bugfix.md +16 -82
- package/domains/development/.agents/workflows/hotfix.md +16 -66
- package/domains/development/.agents/workflows/pipeline-rules.md +49 -132
- package/domains/development/.agents/workflows/start-task.md +17 -121
- package/domains/development/AGENTS.md +8 -3
- package/domains/development/agents/architect.md +247 -247
- package/domains/development/agents/conductor.md +363 -363
- package/domains/development/agents/devops.md +297 -297
- package/domains/development/agents/reviewer.md +293 -293
- package/domains/development/agents/senior_full_stack.md +295 -295
- package/domains/development/agents/tester.md +395 -395
- package/domains/development/locales/en/.agents/skills/handoff/SKILL.md +276 -276
- package/domains/development/locales/en/.agents/skills/lava-flow-legacy-detection/SKILL.md +197 -197
- package/domains/development/locales/en/.agents/skills/mcp-integration/SKILL.md +211 -211
- package/domains/development/locales/en/.agents/skills/qa-test-data-management/SKILL.md +250 -250
- package/domains/development/locales/en/.agents/workflows/bugfix.md +16 -82
- package/domains/development/locales/en/.agents/workflows/hotfix.md +15 -65
- package/domains/development/locales/en/.agents/workflows/pipeline-rules.md +48 -131
- package/domains/development/locales/en/.agents/workflows/start-task.md +17 -121
- package/domains/development/locales/en/AGENTS.md +15 -0
- package/domains/development/locales/en/agents/architect.md +247 -247
- package/domains/development/locales/en/agents/conductor.md +363 -363
- package/domains/development/locales/en/agents/devops.md +297 -297
- package/domains/development/locales/en/agents/reviewer.md +293 -293
- package/domains/development/locales/en/agents/senior_full_stack.md +295 -295
- package/domains/development/locales/en/agents/tester.md +395 -395
- package/domains/development/locales/en/prompt-examples.md +34 -120
- package/domains/development/pipeline.yaml +150 -135
- package/domains/development/prompt-examples.md +33 -119
- package/domains/product/.agents/workflows/product-pipeline-rules.md +13 -2
- package/domains/product/.agents/workflows/quick-pm.md +1 -1
- package/domains/product/.agents/workflows/shape-prioritize.md +1 -0
- package/domains/product/.agents/workflows/ship-right-thing.md +1 -0
- package/domains/product/.agents/workflows/spec.md +1 -0
- package/domains/product/agents/tech_lead.md +1 -1
- package/domains/product/locales/en/.agents/workflows/product-pipeline-rules.md +13 -2
- package/domains/product/locales/en/.agents/workflows/quick-pm.md +1 -1
- package/domains/product/locales/en/.agents/workflows/shape-prioritize.md +1 -0
- package/domains/product/locales/en/.agents/workflows/ship-right-thing.md +1 -0
- package/domains/product/locales/en/.agents/workflows/spec.md +1 -0
- package/domains/product/locales/en/agents/conductor.md +2 -2
- package/domains/product/locales/en/agents/data_analyst.md +2 -1
- package/domains/product/locales/en/agents/designer.md +2 -1
- package/domains/product/locales/en/agents/discovery.md +2 -1
- package/domains/product/locales/en/agents/layouter.md +2 -1
- package/domains/product/locales/en/agents/mediator.md +2 -1
- package/domains/product/locales/en/agents/pm.md +2 -1
- package/domains/product/locales/en/agents/product_strategist.md +2 -1
- package/domains/product/locales/en/agents/tech_lead.md +3 -2
- package/domains/product/locales/en/agents/ux_designer.md +2 -1
- package/domains/product/pipeline.yaml +12 -12
- package/package.json +5 -5
- package/domains/analytics/CONTEXT.md +0 -25
- package/domains/analytics/locales/en/CONTEXT.md +0 -25
- package/domains/content/CONTEXT.md +0 -19
- package/domains/content/locales/en/CONTEXT.md +0 -19
- package/domains/development/.agents/workflows/auto-restart-containers.md +0 -56
- package/domains/development/CONTEXT.md +0 -62
- package/domains/development/locales/en/.agents/workflows/auto-restart-containers.md +0 -24
- package/domains/development/locales/en/CONTEXT.md +0 -62
- package/domains/product/CONTEXT.md +0 -40
- package/domains/product/locales/en/CONTEXT.md +0 -40
|
@@ -1,74 +1,24 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: Запуск минимального
|
|
2
|
+
description: Запуск минимального хотфикс-пайплайна (DEV фикс+тест → RG).
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
# /hotfix —
|
|
5
|
+
# /hotfix — хотфикс-пайплайн (2 гейта)
|
|
6
6
|
|
|
7
|
-
> 🟡
|
|
8
|
-
>
|
|
7
|
+
> 🟡 Для тривиальных правок, blast radius ≈ 0. Серьёзнее — `/bugfix`, полный — `/start-task`.
|
|
8
|
+
> Абсолютные правила — в `pipeline-rules`.
|
|
9
9
|
|
|
10
|
-
## Когда
|
|
10
|
+
## Когда
|
|
11
|
+
- Опечатки, CSS-правки (цвет/отступ/размер), однострочная логика, копипаст-ошибка.
|
|
12
|
+
- 1–2 файла, контракты не меняются.
|
|
11
13
|
|
|
12
|
-
|
|
13
|
-
-
|
|
14
|
-
- Правка одной строки логики
|
|
15
|
-
- Копипаст-ошибка
|
|
16
|
-
- Blast radius ≈ 0 (затрагивает 1–2 файла, не меняет контракты)
|
|
14
|
+
## НЕ использовать
|
|
15
|
+
- > 2 файлов → `/bugfix`; меняет API-контракт → `/bugfix` или `/start-task`; меняет UI-layout/экраны → `/start-task`; не уверен → спросить пользователя.
|
|
17
16
|
|
|
18
|
-
##
|
|
17
|
+
## Поток
|
|
18
|
+
Conductor подтверждает hotfix. Объединённый гейт **DEV (фикс+тест)** через поток MCP:
|
|
19
|
+
- TDD при применимости (RED → GREEN → REFACTOR), JSDoc; самопроверка.
|
|
20
|
+
- Авто-пас на зелёном `run_tests`; подпись `mcp` (co-sign tester).
|
|
21
|
+
- → **RG** — финальный релиз, подпись **пользователя** (`user`).
|
|
19
22
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
- Меняет UI layout / добавляет экраны → `/start-task`
|
|
23
|
-
- Не уверен → спросить пользователя
|
|
24
|
-
|
|
25
|
-
## Шаг 0: Загрузить правила
|
|
26
|
-
|
|
27
|
-
Выполни `/pipeline-rules` — прочитай правила ПЕРЕД началом работы.
|
|
28
|
-
|
|
29
|
-
## Шаг 1: CONDUCTOR — Классификация
|
|
30
|
-
|
|
31
|
-
1. Выполни `view_file` на `agents/conductor.md`
|
|
32
|
-
2. Подтверди что задача = hotfix (по Decision Tree: blast radius ≈ 0, 1–2 файла)
|
|
33
|
-
3. Создай Mini Checklist:
|
|
34
|
-
```
|
|
35
|
-
[ ] HF-DEV-01 Fix + test + перезапуск сервиса (если применимо)
|
|
36
|
-
[ ] HF-VERIFY Self-check + GO/NO-GO
|
|
37
|
-
```
|
|
38
|
-
4. `notify_user` → ждать **Approved**
|
|
39
|
-
|
|
40
|
-
## Шаг 2: DEV+TEST — Фикс и самопроверка
|
|
41
|
-
|
|
42
|
-
1. Выполни `view_file` на `agents/senior_full_stack.md`
|
|
43
|
-
2. TDD:
|
|
44
|
-
- RED: тест, воспроизводящий проблему (если применимо)
|
|
45
|
-
- GREEN: минимальный фикс
|
|
46
|
-
- REFACTOR: при необходимости
|
|
47
|
-
3. JSDoc на изменённых функциях
|
|
48
|
-
4. Перезапустить затронутые сервисы (если применимо)
|
|
49
|
-
5. Самопроверка:
|
|
50
|
-
- Фикс работает?
|
|
51
|
-
- Тесты проходят?
|
|
52
|
-
- Регрессий нет?
|
|
53
|
-
6. Вердикт: **GO ✅ / NO-GO ❌**
|
|
54
|
-
7. `notify_user` → ждать **Approved**
|
|
55
|
-
|
|
56
|
-
---
|
|
57
|
-
|
|
58
|
-
## При сомнениях
|
|
59
|
-
|
|
60
|
-
Если во время работы стало ясно, что задача сложнее чем hotfix:
|
|
61
|
-
> ⚠️ «Задача оказалась сложнее hotfix. Рекомендую переключиться на /bugfix.»
|
|
62
|
-
|
|
63
|
-
Переключение — только с Approved пользователя.
|
|
64
|
-
|
|
65
|
-
---
|
|
66
|
-
|
|
67
|
-
## Шаблон промпта
|
|
68
|
-
|
|
69
|
-
```
|
|
70
|
-
@AGENTS.md /hotfix
|
|
71
|
-
|
|
72
|
-
Что исправить: [описание, 1 предложение].
|
|
73
|
-
Файл: [конкретный файл].
|
|
74
|
-
```
|
|
23
|
+
## При сомнении
|
|
24
|
+
Если по ходу стало сложнее хотфикса: «Задача сложнее hotfix → рекомендую `/bugfix`». Переключение — решение пользователя.
|
|
@@ -1,163 +1,80 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: Абсолютные правила пайплайна разработки.
|
|
2
|
+
description: Абсолютные правила пайплайна разработки. Машина гейтов code-ai MCP.
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
# 🔴 АБСОЛЮТНОЕ ПРАВИЛО:
|
|
5
|
+
# 🔴 АБСОЛЮТНОЕ ПРАВИЛО: пайплайн нельзя пропускать
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
**Без исключений. Нарушение = блокер.** Пайплайн исполняется машиной состояний `code-ai` MCP: источник правды — `pipeline.yaml`, переходы — через MCP-инструменты (см. ниже).
|
|
8
8
|
|
|
9
9
|
## Пайплайн — 3 режима
|
|
10
10
|
|
|
11
11
|
### 🔵 Full Pipeline (8 гейтов) — `/start-task`
|
|
12
|
-
|
|
12
|
+
PM → UX → ARCH → DEV → REV → OPS → TEST → RG
|
|
13
13
|
|
|
14
|
-
### 🟢 Bugfix Pipeline (
|
|
15
|
-
|
|
14
|
+
### 🟢 Bugfix Pipeline (3 гейта) — `/bugfix`
|
|
15
|
+
DEV → REV → TEST
|
|
16
16
|
|
|
17
17
|
### 🟡 Hotfix Pipeline (2 гейта) — `/hotfix`
|
|
18
|
-
|
|
18
|
+
DEV (фикс+тест) → RG
|
|
19
|
+
|
|
20
|
+
> CONDUCTOR — не гейт, а роль-оркестратор: классифицирует задачу, выбирает режим (Decision Tree ниже), новых скиллов не получает (использует `$board`, `$handoff`, `$gates`).
|
|
19
21
|
|
|
20
22
|
### Decision Tree (выбор режима)
|
|
21
23
|
```
|
|
22
|
-
Задача
|
|
23
|
-
|
|
24
|
-
├─ Новая фича / рефакторинг / новый API / новый экран?
|
|
25
|
-
│ └─ 🔵 Full Pipeline
|
|
26
|
-
│
|
|
24
|
+
Задача пользователя
|
|
25
|
+
├─ Новая фича / рефакторинг / новый API / экран? → 🔵 Full
|
|
27
26
|
├─ Баг в существующем функционале?
|
|
28
|
-
│ ├─
|
|
29
|
-
│
|
|
30
|
-
│ ├─ Затрагивает 1–2 файла, blast radius ≈ 0?
|
|
31
|
-
│ │ └─ 🟡 Hotfix (2 гейта)
|
|
27
|
+
│ ├─ > 2 файлов или меняет контракт API? → 🟢 Bugfix
|
|
28
|
+
│ ├─ 1–2 файла, blast radius ≈ 0? → 🟡 Hotfix
|
|
32
29
|
│ └─ Не уверен → спросить пользователя
|
|
33
|
-
|
|
34
|
-
└─ Пользователь явно указал режим (/bugfix, /hotfix)?
|
|
35
|
-
└─ Использовать указанный
|
|
30
|
+
└─ Пользователь указал режим явно (/bugfix, /hotfix) → использовать его
|
|
36
31
|
```
|
|
37
32
|
|
|
38
|
-
|
|
33
|
+
## Как проходит гейт (поток MCP)
|
|
39
34
|
|
|
40
|
-
|
|
35
|
+
На каждом гейте, по порядку:
|
|
36
|
+
1. `current_gate` — подтвердить текущий гейт и его требования.
|
|
37
|
+
2. `classify_gate` — классифицировать исход: `auto_resolve` (можно двигаться), `fork` (нужно решение пользователя → `request_decision`), `exception` (сбой → `report_exception`).
|
|
38
|
+
3. `load_role` на роль-владельца гейта → пройти её протокол по шагам; нужные скиллы загрузить через `get_skill`.
|
|
39
|
+
4. Сформировать deliverable + `submit_artifact`.
|
|
40
|
+
5. `sign_off` — подписать гейт по его политике (см. модель подписи).
|
|
41
|
+
6. `advance_gate` — перейти к следующему гейту.
|
|
41
42
|
|
|
42
|
-
|
|
43
|
-
2. Следовать **его** инструкциям, использовать **его** skills
|
|
44
|
-
3. Сформировать deliverable + Handoff Envelope
|
|
45
|
-
4. Представить результат пользователю через `notify_user`
|
|
46
|
-
5. **Ждать явный "Approved" от пользователя** перед переходом к следующему гейту
|
|
43
|
+
## 🟢 Модель подписи — silent-by-default (reduced intervention)
|
|
47
44
|
|
|
48
|
-
|
|
45
|
+
Машина течёт молча; пользователя дёргаем только на решениях-суждениях.
|
|
49
46
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
- Если агент пропускает §, он ОБЯЗАН указать причину: «§X пропущен: [причина]»
|
|
57
|
-
|
|
58
|
-
### Правило 2: Код применяется ТОЛЬКО после полного прохода протокола
|
|
59
|
-
- ❌ Нельзя: сначала написать код → потом написать отчёт
|
|
60
|
-
- ✅ Нужно: пройти все §§ протокола → представить план → Approved → применить код
|
|
61
|
-
|
|
62
|
-
### Правило 3: Полный формат ответа — без сокращений
|
|
63
|
-
- Использовать **«Формат ответа агента (строго)»** из файла агента
|
|
64
|
-
- Каждая секция формата ОБЯЗАТЕЛЬНА — пропуск = нарушение
|
|
65
|
-
- Если секция не применима, явно написать: «N/A — [причина]»
|
|
66
|
-
|
|
67
|
-
### Правило 4: Fix Cycle — полный проход через агентов
|
|
68
|
-
При FAIL на любом гейте:
|
|
69
|
-
1. Текущий агент (напр. Tester) выдаёт FAIL Report + HANDOFF Envelope → DEV
|
|
70
|
-
2. DEV читает `agents/senior_full_stack.md` и проходит ПОЛНЫЙ протокол (§0–§7)
|
|
71
|
-
3. DEV HANDOFF → REV → OPS → TEST (каждый гейт с view_file + протокол + Approved)
|
|
72
|
-
4. Никаких «быстрых фиксов» без прохода через агентов
|
|
73
|
-
|
|
74
|
-
### Правило 5: Самопроверка перед notify_user
|
|
75
|
-
Перед каждым `notify_user` агент ОБЯЗАН внутренне проверить:
|
|
76
|
-
- [ ] Прочитал ли я файл агента (`view_file` на `agents/<role>.md`)?
|
|
77
|
-
- [ ] Прошёл ли я ВСЕ параграфы протокола?
|
|
78
|
-
- [ ] Использую ли я ПОЛНЫЙ формат ответа?
|
|
79
|
-
- [ ] Есть ли HANDOFF Envelope со ВСЕМИ обязательными полями?
|
|
80
|
-
- [ ] НЕ применял ли я код до получения Approved?
|
|
47
|
+
| Гейт | Кто подписывает | Как |
|
|
48
|
+
|------|-----------------|-----|
|
|
49
|
+
| PM / UX / ARCH | **Пользователь** (`user`) | важное решение: что и зачем строим |
|
|
50
|
+
| DEV / REV | Claude (`mcp`) | по суждению агента (разработка / ревью) |
|
|
51
|
+
| OPS / TEST | Claude (`mcp`) | после зелёного авто-чека: `build` (OPS), `run_tests` (TEST) |
|
|
52
|
+
| RG | **Пользователь** (`user`) | финальный релиз |
|
|
81
53
|
|
|
82
|
-
|
|
54
|
+
- К пользователю попадает только: гейты-суждения (PM/UX/ARCH/RG) и явная эскалация через `request_decision` (классификация `fork`).
|
|
55
|
+
- Рутинные проходы пользователь не подтверждает.
|
|
83
56
|
|
|
84
|
-
##
|
|
57
|
+
## 🔁 Красный, Fix Cycle и Circuit Breaker
|
|
85
58
|
|
|
86
|
-
-
|
|
87
|
-
-
|
|
88
|
-
-
|
|
89
|
-
- ❌ Переходить к следующему гейту без «Approved» от пользователя
|
|
90
|
-
- ❌ Писать код (DEV gate) до прохождения предыдущих гейтов
|
|
91
|
-
- ❌ Применять код до завершения полного протокола агента
|
|
92
|
-
- ❌ Сокращать формат ответа (каждая секция обязательна)
|
|
93
|
-
- ❌ Игнорировать параграфы протокола, считая задачу «тривиальной»
|
|
94
|
-
- ❌ Врать о факте прочтения протокола (если не было `view_file` — значит не читал)
|
|
59
|
+
- **Красный авто-чек** (OPS/TEST) или FAIL ревью/тестов → откат к **DEV** (Fix Cycle), не к пользователю. DEV чинит → снова вперёд по полосе.
|
|
60
|
+
- **Circuit Breaker:** 2 отката к DEV на полосе DEV/OPS/REV/TEST (`dev_rollback_threshold`) → машина отказывает в продвижении и требует **глубокий аудит Архитектора в свежей сессии** (чистый контекст: тот же Claude, что упёрся в стену, воспроизведёт слепое пятно). Скиллы аудита: `system-design-checklist`, `current-state-analysis`, `design-patterns-reference`.
|
|
61
|
+
- **Сброс счётчика:** на прохождении RG или на новом ARCH-ADR (`record_decision` на гейте ARCH).
|
|
95
62
|
|
|
96
|
-
|
|
63
|
+
## ✅ Что обязательно (остаётся)
|
|
97
64
|
|
|
98
|
-
|
|
65
|
+
- Гейты нельзя пропускать, объединять или менять порядок без явного решения пользователя.
|
|
66
|
+
- У каждого гейта — конкретный deliverable; без него гейт не закрыт (проверка `$gates`).
|
|
67
|
+
- Протокол роли проходится по шагам, не «схлопывая»; пропуск шага — с явной причиной.
|
|
68
|
+
- TDD на DEV: RED → GREEN → REFACTOR.
|
|
69
|
+
- Решения, влияющие на архитектуру/контракты, фиксируются ADR через `record_decision`.
|
|
99
70
|
|
|
100
|
-
|
|
101
|
-
> авто-одобрил ARCH gate, проигнорировал открытый вопрос пользователя,
|
|
102
|
-
> написал код без TDD, и сдал нерабочий preview.
|
|
71
|
+
## 📊 Touchpoint budget (сигнал здоровья)
|
|
103
72
|
|
|
104
|
-
|
|
105
|
-
```
|
|
106
|
-
notify_user → ShouldAutoProceed: false
|
|
107
|
-
```
|
|
108
|
-
Без исключений. На КАЖДОМ notify_user. Даже на «тривиальных» гейтах.
|
|
109
|
-
Даже если агент «уверен». Пользователь ВСЕГДА принимает решение сам.
|
|
110
|
-
|
|
111
|
-
### Блок 2: Pre-flight check перед ЛЮБЫМ write_to_file / replace_file_content
|
|
112
|
-
Перед каждым вызовом инструмента записи кода агент ОБЯЗАН:
|
|
113
|
-
1. Процитировать ПОСЛЕДНЕЕ сообщение пользователя, содержащее слово «Approved»
|
|
114
|
-
2. Если цитаты нет — КОД ПИСАТЬ НЕЛЬЗЯ
|
|
115
|
-
3. System-generated сообщения НЕ считаются «Approved»
|
|
116
|
-
4. Auto-proceeded артефакты НЕ считаются «Approved»
|
|
117
|
-
|
|
118
|
-
### Блок 3: Ответ на вопрос — цитирование обязательно
|
|
119
|
-
Если агент задал пользователю вопрос:
|
|
120
|
-
1. Следующий ответ агента ОБЯЗАН начинаться с: `> Ваш ответ: [точная цитата]`
|
|
121
|
-
2. Если цитаты нет — значит ответа не было — СТОП, повторить вопрос
|
|
122
|
-
3. Запрещено «додумывать» ответ за пользователя
|
|
123
|
-
4. Запрещено принимать system-generated сообщение как ответ на вопрос
|
|
124
|
-
|
|
125
|
-
### Блок 4: TDD строго (DEV gate)
|
|
126
|
-
1. RED: написать ПАДАЮЩИЕ тесты ПЕРВЫМИ
|
|
127
|
-
2. GREEN: минимальный код, чтобы тесты прошли
|
|
128
|
-
3. REFACTOR: улучшить код без изменения поведения
|
|
129
|
-
4. Писать код до тестов = нарушение = блокер
|
|
130
|
-
|
|
131
|
-
### Блок 5: Skills — обязательное чтение через view_file
|
|
132
|
-
Каждый агент (agents/<role>.md) ссылается на skills в `.agents/skills/`.
|
|
133
|
-
1. Агент ОБЯЗАН выполнить `view_file` на `SKILL.md` КАЖДОГО skill, указанного в протоколе агента
|
|
134
|
-
2. Если не было `view_file` — skill НЕ считается применённым
|
|
135
|
-
3. Patterns, anti-patterns, code examples, best practices из skills — обязательны к применению
|
|
136
|
-
4. В deliverable агент ОБЯЗАН указать: `Skills applied: [список]` с подтверждением `view_file`
|
|
137
|
-
5. Формальные галочки без реального чтения = нарушение = блокер
|
|
73
|
+
Ориентир числа касаний пользователя по типу задачи (из `pipeline.yaml`): hotfix 1; bugfix 1–2; backend-фича 1–3; UI-фича с ARCH-развилкой 3–5; сложная (3+ Fix Cycle) 3–6. Превышение — повод пересмотреть scope, а не «продавливать».
|
|
138
74
|
|
|
139
|
-
|
|
75
|
+
## ❌ Запрещено
|
|
140
76
|
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
-
|
|
145
|
-
- **Обновляет:** КАЖДЫЙ агент после завершения своего гейта
|
|
146
|
-
- **Содержит:** Master Checklist + Handoff Envelopes Status + Fix Cycle tracking
|
|
147
|
-
- **Правило:** Если task.md не обновлён после гейта — гейт не считается завершённым
|
|
148
|
-
|
|
149
|
-
### implementation_plan.md
|
|
150
|
-
- **Создаёт:** Architect на Gate 3 (ARCH) — или Conductor, если задача не требует ARCH
|
|
151
|
-
- **Сохраняет:** `docs/reports/architect/plan-<task-name>.md` (в проекте)
|
|
152
|
-
- **Содержит:** Proposed Changes + файлы + Verification Plan
|
|
153
|
-
- **Правило:** DEV обязан прочитать plan перед началом реализации. Reviewer сверяется при code review.
|
|
154
|
-
|
|
155
|
-
### walkthrough.md (Antigravity brain — автоматически)
|
|
156
|
-
- **Создаёт:** Tester на Gate 7 (TEST) — или Release Gate
|
|
157
|
-
- **Содержит:** что сделано, что проверено, результаты валидации
|
|
158
|
-
- **Правило:** обновлять при каждом Fix Cycle и перед Release Gate
|
|
159
|
-
|
|
160
|
-
### docs/architecture.md + docs/ADR-log.md (в проекте)
|
|
161
|
-
- **Обновляет:** Architect при любом архитектурном решении
|
|
162
|
-
- **Сверяются:** Reviewer и Architect на каждом гейте
|
|
163
|
-
- **Правило:** Новые ADR добавляются в ADR-log.md. Architecture.md обновляется при изменении стека, паттернов или ограничений
|
|
77
|
+
- Пропускать гейты или «фаст-трекать» несколько за раз.
|
|
78
|
+
- Продвигать гейт без `sign_off` по его политике.
|
|
79
|
+
- Писать код (DEV) до прохождения предыдущих гейтов и до плана.
|
|
80
|
+
- Молча обходить откат/брейкер: 2 отката → аудит ARCH, а не «ещё одна попытка» в том же контексте.
|
|
@@ -1,130 +1,26 @@
|
|
|
1
1
|
---
|
|
2
|
-
description:
|
|
2
|
+
description: Запуск задачи через полный пайплайн (8 гейтов). Машина гейтов code-ai MCP.
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
# /start-task —
|
|
5
|
+
# /start-task — запуск полного пайплайна
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Полный режим: PM → UX → ARCH → DEV → REV → OPS → TEST → RG.
|
|
8
|
+
Багфикс → `/bugfix`, мелкая правка (blast radius ≈ 0) → `/hotfix`.
|
|
9
|
+
Абсолютные правила — в `pipeline-rules` (машина гейтов code-ai MCP).
|
|
8
10
|
|
|
9
|
-
|
|
10
|
-
-
|
|
11
|
-
-
|
|
12
|
-
- 🟡 **Hotfix** (1–2 файла, blast radius ≈ 0) → переключись на `/hotfix`
|
|
11
|
+
## 1. Старт
|
|
12
|
+
- Conductor классифицирует задачу и подтверждает режим (Decision Tree в `pipeline-rules`).
|
|
13
|
+
- Conductor инициализирует доску (`$board`) и стартовый Handoff (`$handoff`). Новых скиллов не получает.
|
|
13
14
|
|
|
14
|
-
|
|
15
|
+
## 2. Каждый гейт — поток MCP
|
|
16
|
+
`current_gate` → `classify_gate` → `load_role` (роль гейта) + `get_skill` → deliverable + `submit_artifact` → `sign_off` → `advance_gate`.
|
|
15
17
|
|
|
16
|
-
##
|
|
18
|
+
## 3. Подпись — silent-by-default
|
|
19
|
+
- **Пользователь подписывает только PM / UX / ARCH / RG** (решения-суждения) и эскалации `fork` через `request_decision`.
|
|
20
|
+
- DEV / REV — Claude (`mcp`) по суждению; OPS / TEST — авто-пас на зелёном (`build` / `run_tests`).
|
|
17
21
|
|
|
18
|
-
|
|
22
|
+
## 4. Уточняющие вопросы
|
|
23
|
+
Агенты с секцией Clarification (PM 5+, ARCH 5–10, Tester 5+) задают вопросы ПЕРЕД работой и ждут ответа. Исключение — пользователь написал «без вопросов».
|
|
19
24
|
|
|
20
|
-
##
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
## Шаг 3: Запустить Дирижёра
|
|
24
|
-
Выполни `view_file` на `agents/conductor.md` — прочитай протокол и создай Master Checklist в `task.md`.
|
|
25
|
-
|
|
26
|
-
## Шаг 4: Пройти каждый гейт СТРОГО по протоколу
|
|
27
|
-
|
|
28
|
-
На КАЖДОМ гейте обязательно:
|
|
29
|
-
1. `view_file` на `agents/<role>.md` — прочитать протокол агента
|
|
30
|
-
2. Пройти КАЖДУЮ секцию протокола по порядку (не «схлопывать»)
|
|
31
|
-
3. Использовать **полный** «Формат ответа агента (строго)» из файла агента
|
|
32
|
-
4. Если секция не применима — явно написать: «N/A — [причина]»
|
|
33
|
-
5. Сформировать deliverable + Handoff Envelope со ВСЕМИ обязательными полями
|
|
34
|
-
6. Представить результат через `notify_user`
|
|
35
|
-
7. **Ждать явный "Approved"** перед переходом к следующему гейту
|
|
36
|
-
|
|
37
|
-
## Шаг 5: Код — ТОЛЬКО после DEV gate + Approved
|
|
38
|
-
|
|
39
|
-
- Сначала DEV-агент проходит ВСЕ секции протокола (§0–§7)
|
|
40
|
-
- Потом предлагает план изменений
|
|
41
|
-
- Пользователь одобряет
|
|
42
|
-
- ТОЛЬКО ПОТОМ агент применяет код
|
|
43
|
-
|
|
44
|
-
## Шаг 6: Fix Cycle (при FAIL)
|
|
45
|
-
|
|
46
|
-
Если тестер или ревьюер нашёл баг:
|
|
47
|
-
1. Текущий агент выдаёт FAIL Report + HANDOFF Envelope → DEV
|
|
48
|
-
2. Пользователь одобряет FAIL HANDOFF
|
|
49
|
-
3. DEV читает `agents/senior_full_stack.md` и проходит ПОЛНЫЙ протокол
|
|
50
|
-
4. DEV HANDOFF → REV → OPS → TEST (каждый гейт с полным протоколом)
|
|
51
|
-
5. Никаких «быстрых фиксов» без прохода через агентов
|
|
52
|
-
|
|
53
|
-
---
|
|
54
|
-
|
|
55
|
-
## Шаблон первого промпта (копируй и заполни)
|
|
56
|
-
|
|
57
|
-
```
|
|
58
|
-
@AGENTS.md /pipeline-rules
|
|
59
|
-
|
|
60
|
-
Задача: [что сделать, 1-2 предложения].
|
|
61
|
-
Файлы: [конкретные файлы, если известны].
|
|
62
|
-
|
|
63
|
-
Правила:
|
|
64
|
-
1. Начинай с Дирижёра (agents/conductor.md)
|
|
65
|
-
2. Каждый гейт: view_file → ВСЕ секции протокола → полный формат → Approved
|
|
66
|
-
3. Код не применять до DEV gate + мой Approved
|
|
67
|
-
4. Fix Cycle = полный проход через агентов
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
---
|
|
71
|
-
|
|
72
|
-
## Рекомендации по сессиям
|
|
73
|
-
|
|
74
|
-
- **Одна сессия = 3-4 гейта максимум** (контекст не теряется)
|
|
75
|
-
- **Approved даётся на КАЖДОМ гейте**, не на сессию
|
|
76
|
-
- **Сессия 1:** Conductor → Approved → PM → Approved → UX → Approved
|
|
77
|
-
- **Сессия 2:** ARCH → Approved → DEV → Approved → REV → Approved
|
|
78
|
-
- **Сессия 3:** OPS → Approved → TEST → Approved → RG → Approved
|
|
79
|
-
- Каждая новая сессия — начинай с `/start-task`
|
|
80
|
-
|
|
81
|
-
## Обязательные вопросы от агентов
|
|
82
|
-
|
|
83
|
-
Каждый агент, у которого в протоколе есть Clarification/Questions секция, ОБЯЗАН:
|
|
84
|
-
1. Задать вопросы пользователю ПЕРЕД выполнением работы
|
|
85
|
-
2. Минимум вопросов (из протокола агента): PM — 5+, ARCH — 5-10, DEV — по необходимости, Tester — 5+
|
|
86
|
-
3. Если задача кажется «очевидной» — всё равно задать минимум 2-3 уточняющих вопроса
|
|
87
|
-
4. Ждать ответы пользователя ПЕРЕД продолжением
|
|
88
|
-
5. Единственное исключение: пользователь явно написал «вопросов не задавай»
|
|
89
|
-
|
|
90
|
-
## При «срезании углов» — одна фраза
|
|
91
|
-
|
|
92
|
-
Если модель сокращает, скажи:
|
|
93
|
-
> «Стоп. Секция [X] протокола agents/<role>.md. Перечитай и выполни.»
|
|
94
|
-
|
|
95
|
-
---
|
|
96
|
-
|
|
97
|
-
## Протокол обратной связи (обязательно)
|
|
98
|
-
|
|
99
|
-
Модель ОБЯЗАНА предоставлять обратную связь пользователю на каждом этапе:
|
|
100
|
-
|
|
101
|
-
### 1. Предупреждение при соблазне срезать
|
|
102
|
-
Если задача выглядит «тривиальной», модель ОБЯЗАНА написать:
|
|
103
|
-
```
|
|
104
|
-
⚠️ Задача выглядит тривиальной. Мой инстинкт — сделать быстро.
|
|
105
|
-
Но по протоколу прохожу полный цикл. Секции: [список].
|
|
106
|
-
```
|
|
107
|
-
|
|
108
|
-
### 2. Оценка промпта пользователя
|
|
109
|
-
В начале каждой задачи модель оценивает промпт:
|
|
110
|
-
```
|
|
111
|
-
📊 Оценка промпта:
|
|
112
|
-
- Чёткость: [высокая/средняя/низкая]
|
|
113
|
-
- Что хорошо: [что помогло]
|
|
114
|
-
- Чего не хватает: [что добавить для эффективности]
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
### 3. Подсказки в Handoff Envelope
|
|
118
|
-
В каждом Handoff добавлять секцию:
|
|
119
|
-
```
|
|
120
|
-
💡 Feedback: [совет для пользователя, если есть]
|
|
121
|
-
```
|
|
122
|
-
|
|
123
|
-
### 4. Ретроспектива в конце сессии
|
|
124
|
-
Перед завершением работы:
|
|
125
|
-
```
|
|
126
|
-
🔄 Ретроспектива:
|
|
127
|
-
- Гейтов пройдено: X
|
|
128
|
-
- Нарушений протокола: X
|
|
129
|
-
- Что улучшить в следующей сессии: [рекомендация]
|
|
130
|
-
```
|
|
25
|
+
## 5. Fix Cycle / брейкер
|
|
26
|
+
Красный (FAIL ревью/тестов, красный авто-чек) → откат к DEV. 2 отката на полосе DEV/OPS/REV/TEST → глубокий аудит Архитектора в свежей сессии (см. `pipeline-rules`).
|
|
@@ -218,11 +218,16 @@ function add(a, b) {
|
|
|
218
218
|
---
|
|
219
219
|
|
|
220
220
|
## Обязательное правило перезагрузки Docker-контейнеров
|
|
221
|
-
- Для всех изменений в кодовой базе DevOps обязан автоматически перезапускать затронутый сервис в Docker до передачи в REVIEW/TEST.
|
|
222
|
-
-
|
|
221
|
+
- Для всех изменений в кодовой базе DevOps обязан автоматически перезапускать затронутый сервис в Docker до передачи в REVIEW/TEST. Это **неявное** правило — выполняется в рамках задачи, без отдельного запроса разрешения.
|
|
222
|
+
- **Определение сервиса (не хардкодить имена из конкретного продукта):**
|
|
223
|
+
- Открыть активный Compose-файл (`docker-compose.yml`, `docker-compose.yaml`, `compose.yml` или `compose.yaml`).
|
|
224
|
+
- Определить владельца изменённого пути по `build.context`, bind-mount `volumes` и принятым в репозитории именам сервисов.
|
|
225
|
+
- Перезапускать имя **Compose-сервиса**, а не имя контейнера (имена контейнеров специфичны для проекта).
|
|
226
|
+
- **Команды:**
|
|
223
227
|
- Изменения только runtime-кода: `docker compose restart <service>`.
|
|
224
228
|
- Изменения `Dockerfile`/зависимостей/сборки/compose-конфига: `docker compose up -d --build <service>`.
|
|
225
|
-
-
|
|
229
|
+
- Несколько затронутых сервисов — одной командой: `docker compose restart <service_one> <service_two>`.
|
|
230
|
+
- Изменения только инфраструктуры (`infra/`, compose-файлы, конфиг reverse-proxy) и изменения только конфига/env **не** триггерят перезапуск app-сервиса. При изменениях в прокси/шлюзе/общей маршрутизации дополнительно перезапускать `gateway`.
|
|
226
231
|
- DevOps обязан приложить в отчёт доказательства:
|
|
227
232
|
- какие сервисы перезапущены,
|
|
228
233
|
- какие команды выполнены,
|