@k0t0vich/meta-agents-template 0.1.2 → 0.1.4

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 (31) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/README.md +54 -10
  3. package/agents.md +69 -13
  4. package/package.json +2 -1
  5. package/template/.github/workflows/gitflow-lite-verify.yml +63 -0
  6. package/template/.meta-agents/config/project-context.yaml +7 -0
  7. package/template/.meta-agents/config/roles.yaml +5 -1
  8. package/template/.meta-agents/config/system.yaml +127 -3
  9. package/template/.meta-agents/config/trackers.yaml +1 -0
  10. package/template/.meta-agents/prompts/agile-manager.md +19 -1
  11. package/template/.meta-agents/prompts/clarifier.md +2 -0
  12. package/template/.meta-agents/prompts/mr-review-agent.md +26 -0
  13. package/template/.meta-agents/prompts/publishing-agent.md +2 -1
  14. package/template/.meta-agents/prompts/reviewer-judge.md +3 -1
  15. package/template/.meta-agents/prompts/status-agent.md +27 -0
  16. package/template/.meta-agents/scripts/run-mr-review-gate.mjs +488 -0
  17. package/template/.meta-agents/scripts/run-review-gate.mjs +54 -1
  18. package/template/.meta-agents/scripts/sync-status.mjs +620 -1
  19. package/template/.meta-agents/scripts/task-branch-router.mjs +530 -0
  20. package/template/.meta-agents/scripts/tracker/provider-lock.mjs +104 -0
  21. package/template/.meta-agents/scripts/tracker-gateway.mjs +199 -0
  22. package/template/.meta-agents/scripts/verify-branch-strategy.mjs +103 -0
  23. package/template/.meta-agents/scripts/verify-commit-link.mjs +27 -13
  24. package/template/.meta-agents/scripts/verify-governance.mjs +37 -12
  25. package/template/.meta-agents/templates/agent-work-contract.md +8 -1
  26. package/template/.meta-agents/templates/task-template.md +7 -1
  27. package/template/README.md +43 -5
  28. package/template/agents.md +68 -15
  29. package/template/package.json +6 -1
  30. package/template/tracker-command-template.md +123 -28
  31. package/tracker-command-template.md +142 -14
@@ -33,20 +33,41 @@ result PASS
33
33
 
34
34
  Если `result != PASS`, команда не выполняется.
35
35
 
36
+ ## 0.2) Зафиксированный tracker provider проекта
37
+ - Текущий provider: `github`.
38
+ - Source of truth:
39
+ - `.meta-agents/config/project-context.yaml -> project_context.tracker_provider.selected`
40
+ - `.meta-agents/config/trackers.yaml -> tracker_gateway.default`
41
+ - Если пользователь явно не запросил смену provider и конфиг не обновлён, команды выполняются только через `github`.
42
+ - CLI enforcement: `npm run meta:ops -- --command <COMMAND> [--tracker ...]` блокирует выполнение при mismatch provider.
43
+
36
44
  ## 1) Ключевое правило подтверждения пользователя
37
45
  Только по явному подтверждению пользователя в текущем диалоге разрешены:
38
46
  - `COMMIT_BY_NAME`;
47
+ - merge после `RUN_MR_REVIEW_GATE`;
39
48
  - перевод задачи в `DONE`.
40
49
 
41
50
  Без подтверждения пользователя можно переводить задачу максимум в `REVIEW`.
42
51
  `SET_STATUS -> READY` разрешён только после `RUN_REVIEW_GATE: PASS_CONFIRMED`.
43
52
 
44
53
  Дополнительно для коммита:
45
- - для single-branch режима используется цикл `TODO -> IN_PROGRESS -> REVIEW -> READY -> DONE` (для релизных задач дополнительно `-> PUBLISH`);
54
+ - для `git_flow_lite` используется цикл `TODO -> IN_PROGRESS -> REVIEW -> READY -> DONE` (для релизных задач дополнительно `-> PUBLISH`);
55
+ - рабочие ветки: `feature/*`, `release/*`, `hotfix/*`; долгоживущие ветки: `develop`, `main`;
56
+ - для агентных веток допускаются `codex/feature/*`, `codex/release/*`, `codex/hotfix/*`;
57
+ - правила merge: `feature/* -> develop`, `release/* -> main` + back-merge в `develop`, `hotfix/* -> main` + back-merge в `develop`;
46
58
  - `RUN_REVIEW_GATE` работает в два этапа:
47
59
  - сначала отчёт и рекомендация (`PASS_CANDIDATE`/`FAIL`);
48
60
  - после явного подтверждения пользователя (`Review Approved: yes`) — финальный `PASS_CONFIRMED`;
61
+ - `RUN_MR_REVIEW_GATE` работает в два этапа:
62
+ - сначала сводный MR-отчёт и рекомендация (`PASS_CANDIDATE`/`FAIL`);
63
+ - после явного подтверждения пользователя (`MR Review Approved: yes`) — финальный `PASS_CONFIRMED`;
49
64
  - `COMMIT_BY_NAME` разрешён только после `RUN_REVIEW_GATE: PASS_CONFIRMED`;
65
+ - merge разрешён только после `RUN_MR_REVIEW_GATE: PASS_CONFIRMED`;
66
+ - для задач реализации по умолчанию используется отдельная ветка `feature/*`; прямой поток на `develop`/`main` запрещён;
67
+ - перед началом реализации обязателен `PREPARE_TASK_BRANCH` (веточный preflight и user dialogue);
68
+ - если задача атомарная и относится к текущей feature-ветке, допускается выполнение в текущей ветке после явного подтверждения пользователя;
69
+ - если задача не относится к текущей ветке, требуется: проверить dirty/ahead, согласовать действие с пользователем, перейти на `develop` (или `main` для hotfix), обновить и создать новую ветку;
70
+ - перед `--apply` обязателен контекстный check: сравнить `agents.md` текущей и базовой ветки, при diff запросить явное подтверждение пользователя;
50
71
  - сообщение коммита обязательно содержит `TASK-ID` и/или `#issue-number`.
51
72
 
52
73
  Для GitHub трекера статус issue задаётся label-ом (одновременно только один статус из набора):
@@ -59,8 +80,8 @@ result PASS
59
80
  - `PUBLISH`
60
81
 
61
82
  Семантика статусов:
62
- - `READY`: коммит сделан и отправлен (`push`), изменения находятся либо в `main`, либо в отдельной ветке с открытым MR/PR.
63
- - `DONE`: изменения интегрированы в `main` (direct commit в `main` или MR/PR смержен).
83
+ - `READY`: коммит сделан и отправлен (`push`) в `feature/*|release/*|hotfix/*` (или `codex/*` эквиваленты); открыт PR в `develop` или `main` согласно правилам ветвления.
84
+ - `DONE`: изменения интегрированы в `main`; для `release/*` и `hotfix/*` подтверждён back-merge в `develop`.
64
85
  - `PUBLISH`: релиз опубликован и доступен в последней версии пакета.
65
86
 
66
87
  Правило больших фич (GitHub tracker):
@@ -68,7 +89,7 @@ result PASS
68
89
  - epic в GitHub оформляется как issue с label `type:epic`;
69
90
  - feature оформляется как issue с label `type:feature` и ссылкой на epic.
70
91
 
71
- ## 2) Канонические команды (через Agile Manager Agent)
92
+ ## 2) Канонические команды (через Agile Manager Agent / Reviewer/Judge Agent / MR Review Agent / Publishing Agent / Status Agent)
72
93
  ### VERIFY_GOVERNANCE_GATE
73
94
  ```text
74
95
  [Agent Auto-Select]
@@ -152,6 +173,23 @@ status IN_PROGRESS,
152
173
  reason "начата реализация"
153
174
  ```
154
175
 
176
+ ### PREPARE_TASK_BRANCH (обязателен перед реализацией)
177
+ ```text
178
+ [Agent Auto-Select]
179
+ Selected: Agile Manager Agent
180
+ Reason: Нужно проверить соответствие задачи текущей ветке и выбрать корректный Git Flow маршрут.
181
+
182
+ [Task Agent]
183
+ Name: Agile Manager Agent
184
+
185
+ Agile Manager Agent: prepare task branch,
186
+ tracker github,
187
+ task "#12",
188
+ task kind "atomic",
189
+ command "npm run meta:task-start -- --task 12 --slug api-redirect",
190
+ user dialogue "confirm branch context + dirty/ahead handling + agents.md context warning + switch decision"
191
+ ```
192
+
155
193
  ### SET_STATUS -> REVIEW (обязателен перед review gate)
156
194
  ```text
157
195
  [Agent Auto-Select]
@@ -227,6 +265,40 @@ target status READY,
227
265
  what done "добавлен endpoint, тесты, обработка ошибок"
228
266
  ```
229
267
 
268
+ ### RUN_MR_REVIEW_GATE (обязателен перед merge)
269
+ ```text
270
+ [Agent Auto-Select]
271
+ Selected: MR Review Agent
272
+ Reason: Нужен обязательный pre-merge review по MR/PR с проверкой task linkage и PRD evidence.
273
+
274
+ [Task Agent]
275
+ Name: MR Review Agent
276
+
277
+ MR Review Agent: run MR review gate,
278
+ task DEV-12,
279
+ pr 34,
280
+ checklist "mr_context, task_linkage, prd_evidence, critical_findings, potential_risks",
281
+ result PASS_CANDIDATE
282
+ ```
283
+
284
+ ```text
285
+ [User Confirmation]
286
+ MR Review Approved: yes
287
+
288
+ [Agent Auto-Select]
289
+ Selected: MR Review Agent
290
+ Reason: Подтверждение MR review пользователем получено, фиксируем финальный результат.
291
+
292
+ [Task Agent]
293
+ Name: MR Review Agent
294
+
295
+ MR Review Agent: run MR review gate,
296
+ task DEV-12,
297
+ pr 34,
298
+ approve yes,
299
+ result PASS_CONFIRMED
300
+ ```
301
+
230
302
  ### SET_STATUS -> PUBLISH (после фактической публикации)
231
303
  ```text
232
304
  [Agent Auto-Select]
@@ -277,6 +349,55 @@ task DEV-12,
277
349
  sprint SPRINT-3
278
350
  ```
279
351
 
352
+ ### STATUS_SNAPSHOT
353
+ ```text
354
+ [Agent Auto-Select]
355
+ Selected: Status Agent
356
+ Reason: Пользователь запросил текущий статус проекта/процесса.
357
+
358
+ [Task Agent]
359
+ Name: Status Agent
360
+
361
+ Status Agent: status snapshot,
362
+ tracker github,
363
+ source policy "github/mcp/custom -> external tracker first, local -> tasks first",
364
+ include "trackers_used,current_sprint,current_task,current_branch_context,git_uncommitted,summary",
365
+ command "node .meta-agents/scripts/sync-status.mjs"
366
+ ```
367
+
368
+ ### PREPARE_RELEASE_NOTE
369
+ ```text
370
+ [Agent Auto-Select]
371
+ Selected: Publishing Agent
372
+ Reason: Нужно зафиксировать состав релиза и задачи, вошедшие в поставку.
373
+
374
+ [Task Agent]
375
+ Name: Publishing Agent
376
+
377
+ Publishing Agent: prepare release note,
378
+ tracker github,
379
+ version v0.1.2,
380
+ included tasks "#2,#3,#4,#5,#6,#7,#8",
381
+ changelog "CHANGELOG.md updated for v0.1.2",
382
+ output "docs/internal/release-notes/v0.1.2.md"
383
+ ```
384
+
385
+ ### MARK_TASKS_PUBLISH
386
+ ```text
387
+ [Agent Auto-Select]
388
+ Selected: Publishing Agent
389
+ Reason: После релиза нужно перевести вошедшие задачи в статус PUBLISH.
390
+
391
+ [Task Agent]
392
+ Name: Publishing Agent
393
+
394
+ Publishing Agent: mark tasks publish,
395
+ tracker github,
396
+ tasks "#2,#3,#4,#5,#6,#7,#8",
397
+ status PUBLISH,
398
+ reason "вошло в релиз v0.1.2"
399
+ ```
400
+
280
401
  ## 3) PRD-блок для каждого шага (обязателен)
281
402
  ```markdown
282
403
  ## PRD Step: <stage-name>
@@ -299,13 +420,20 @@ sprint SPRINT-3
299
420
  ## 4) Минимальный операционный цикл
300
421
  1. `VERIFY_GOVERNANCE_GATE`.
301
422
  2. `CREATE_TASK`.
302
- 3. `SET_STATUS -> IN_PROGRESS`.
303
- 4. Реализация + evidence.
304
- 5. `SET_STATUS -> REVIEW`.
305
- 6. `RUN_REVIEW_GATE` (получить report + `PASS_CANDIDATE`/`FAIL`).
306
- 7. Пользователь подтверждает review (`Review Approved: yes`).
307
- 8. `RUN_REVIEW_GATE` -> `PASS_CONFIRMED`.
308
- 9. `COMMIT_BY_NAME` только после review PASS_CONFIRMED и отдельного подтверждения пользователя на коммит.
309
- 10. `SET_STATUS -> READY`.
310
- 11. `SET_STATUS -> DONE` только после подтверждения пользователя.
311
- 12. Для релизных задач после публикации: `SET_STATUS -> PUBLISH`.
423
+ 3. `PREPARE_TASK_BRANCH`.
424
+ 4. `SET_STATUS -> IN_PROGRESS`.
425
+ 5. Реализация + evidence.
426
+ 6. `SET_STATUS -> REVIEW`.
427
+ 7. `RUN_REVIEW_GATE` (получить report + `PASS_CANDIDATE`/`FAIL`).
428
+ 8. Пользователь подтверждает review (`Review Approved: yes`).
429
+ 9. `RUN_REVIEW_GATE` -> `PASS_CONFIRMED`.
430
+ 10. `COMMIT_BY_NAME` только после review PASS_CONFIRMED и отдельного подтверждения пользователя на коммит.
431
+ 11. Push + open PR в целевую ветку по Git Flow Lite.
432
+ 12. `RUN_MR_REVIEW_GATE` (получить report + `PASS_CANDIDATE`/`FAIL`).
433
+ 13. Пользователь подтверждает MR review (`MR Review Approved: yes`).
434
+ 14. `RUN_MR_REVIEW_GATE` -> `PASS_CONFIRMED`.
435
+ 15. Merge PR по Git Flow Lite.
436
+ 16. `SET_STATUS -> READY`.
437
+ 17. `SET_STATUS -> DONE` только после подтверждения пользователя.
438
+ 18. `PREPARE_RELEASE_NOTE` (какие задачи вошли в релиз).
439
+ 19. Для релизных задач после публикации: `MARK_TASKS_PUBLISH` (`SET_STATUS -> PUBLISH` для всех вошедших задач).