@alxyrgin/agent-forge 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.
Files changed (38) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +166 -0
  3. package/dist/index.d.ts +2 -0
  4. package/dist/index.js +808 -0
  5. package/dist/index.js.map +1 -0
  6. package/package.json +61 -0
  7. package/templates/agents/core/analyst.md.ejs +56 -0
  8. package/templates/agents/core/architect.md.ejs +64 -0
  9. package/templates/agents/core/developer.md.ejs +54 -0
  10. package/templates/agents/core/doc-writer.md.ejs +50 -0
  11. package/templates/agents/core/progress-tracker.md.ejs +56 -0
  12. package/templates/agents/core/reviewer.md.ejs +52 -0
  13. package/templates/agents/core/security-auditor.md.ejs +51 -0
  14. package/templates/agents/core/unit-tester.md.ejs +56 -0
  15. package/templates/agents/extra/acceptance-tester.md.ejs +48 -0
  16. package/templates/agents/extra/integration-tester.md.ejs +49 -0
  17. package/templates/agents/extra/planner.md.ejs +89 -0
  18. package/templates/memory/active-context.md.ejs +26 -0
  19. package/templates/memory/decisions.md.ejs +20 -0
  20. package/templates/memory/patterns.md.ejs +45 -0
  21. package/templates/memory/progress.md.ejs +25 -0
  22. package/templates/memory/project-brief.md.ejs +36 -0
  23. package/templates/memory/tech-debt.md.ejs +27 -0
  24. package/templates/memory/tech-stack.md.ejs +23 -0
  25. package/templates/memory/troubleshooting.md.ejs +28 -0
  26. package/templates/root/CLAUDE.md.ejs +110 -0
  27. package/templates/root/settings.json.ejs +14 -0
  28. package/templates/rules/commit-conventions.md.ejs +35 -0
  29. package/templates/rules/development-cycle.md.ejs +54 -0
  30. package/templates/rules/testing-standards.md.ejs +25 -0
  31. package/templates/skills/core/complete-task/SKILL.md.ejs +37 -0
  32. package/templates/skills/core/end-session/SKILL.md.ejs +81 -0
  33. package/templates/skills/core/plan/SKILL.md.ejs +58 -0
  34. package/templates/skills/core/review/SKILL.md.ejs +29 -0
  35. package/templates/skills/core/start-session/SKILL.md.ejs +58 -0
  36. package/templates/skills/core/status/SKILL.md.ejs +38 -0
  37. package/templates/skills/core/take-task/SKILL.md.ejs +69 -0
  38. package/templates/tasks/tasks.json.ejs +7 -0
@@ -0,0 +1,81 @@
1
+ ---
2
+ name: end-session
3
+ description: Завершение рабочей сессии. Сохраняет контекст, обновляет memory bank, создаёт лог сессии.
4
+ user-invocable: true
5
+ disable-model-invocation: false
6
+ allowed-tools: Read, Write, Edit, Glob, Grep, Bash
7
+ ---
8
+
9
+ # Завершение рабочей сессии
10
+
11
+ Выполни ВСЕ шаги. Это критически важно для сохранения контекста.
12
+
13
+ ## 1. Собрать итоги сессии
14
+
15
+ Спроси пользователя:
16
+ ```
17
+ Что ещё было сделано в этой сессии, помимо того, что я зафиксировал?
18
+ ```
19
+
20
+ ## 2. Обновить active-context.md
21
+
22
+ Перезапиши `dev-infra/memory/active-context.md`:
23
+ - **Дата:** сегодня
24
+ - **Что сделано:** полный список
25
+ - **Что делаем сейчас:** текущий статус
26
+ - **Следующие шаги:** конкретные задачи
27
+ - **Блокеры:** если появились
28
+ - **Важные решения:** если были (также добавь в decisions.md)
29
+
30
+ ## 3. Обновить progress.md
31
+
32
+ Пересчитай статусы задач из tasks.json.
33
+
34
+ ## 4. Определить участника
35
+
36
+ Определи, кто работал в этой сессии. Если неясно — спроси.
37
+
38
+ ## 5. Создать лог сессии
39
+
40
+ Получи текущее время: `date +%H:%M`
41
+
42
+ Создай файл `dev-infra/sessions/YYYY-MM-DD_HH-MM.md`:
43
+
44
+ ```markdown
45
+ # Сессия YYYY-MM-DD HH:MM
46
+
47
+ **Дата:** YYYY-MM-DD
48
+ **Время:** HH:MM
49
+ **Участник:** [имя]
50
+ **Milestone:** X.X
51
+
52
+ ## Что сделано
53
+ - [список]
54
+
55
+ ## Изменённые файлы
56
+ - [ключевые файлы]
57
+
58
+ ## Следующие шаги
59
+ - [что делать дальше]
60
+
61
+ ## Решения
62
+ - [если были]
63
+
64
+ ## Блокеры
65
+ - [если есть]
66
+ ```
67
+
68
+ ## 6. Коммит и пуш
69
+
70
+ Формат коммита:
71
+ ```
72
+ memory(Участник): обновление после сессии YYYY-MM-DD HH:MM
73
+ ```
74
+
75
+ Включить в коммит:
76
+ - dev-infra/memory/active-context.md
77
+ - dev-infra/memory/progress.md
78
+ - dev-infra/sessions/YYYY-MM-DD_HH-MM.md
79
+ - dev-infra/tasks/tasks.json (если обновлён)
80
+
81
+ **После коммита — `git push origin <%= defaultBranch || 'main' %>`.**
@@ -0,0 +1,58 @@
1
+ ---
2
+ name: plan
3
+ description: >-
4
+ Планирование и перепланирование проектных задач.
5
+ Аудит плана, сверка с документацией и дедлайнами, генерация/обновление задач.
6
+ user-invocable: true
7
+ disable-model-invocation: false
8
+ argument-hint: "[validate|replan|init]"
9
+ allowed-tools: Read, Write, Edit, Glob, Grep, Bash, Agent
10
+ ---
11
+
12
+ # Планирование и перепланирование проектных задач
13
+
14
+ Аргумент: `$ARGUMENTS` — режим работы (опционально).
15
+
16
+ ## Определение режима
17
+
18
+ | Аргумент | Режим | Описание |
19
+ |----------|-------|----------|
20
+ | `validate` | Валидация | Только отчёт, без изменений |
21
+ | `replan` | Перепланирование | Аудит + предложения + применение |
22
+ | `init` | Инициализация | Планирование с нуля |
23
+ | _(пусто)_ | Автоопределение | `replan` если tasks.json есть, `init` если нет |
24
+
25
+ ## Режим `init`
26
+
27
+ ### Шаг 1. Сбор документации
28
+ Собери ВСЮ доступную документацию проекта из `docs/`.
29
+
30
+ ### Шаг 2. Discovery (если нет документации)
31
+ Задай структурированные вопросы: цель, модули, дедлайны, команда, блокеры.
32
+
33
+ ### Шаг 3. Генерация плана — ДЕЛЕГИРОВАТЬ агенту planner
34
+ ```
35
+ Agent(subagent_type="planner", prompt="Режим: init. Документация: [содержимое]. Задача: декомпозировать на milestones и задачи.")
36
+ ```
37
+
38
+ ### Шаг 4. Показать план пользователю и дождаться подтверждения
39
+
40
+ ### Шаг 5. Применение
41
+ 1. Создать `dev-infra/tasks/tasks.json`
42
+ 2. Обновить `dev-infra/memory/`
43
+ 3. Предложить коммит
44
+
45
+ ## Режим `replan`
46
+
47
+ ### Шаг 1. Загрузить контекст (документация + состояние)
48
+
49
+ ### Шаг 2. Аудит — ДЕЛЕГИРОВАТЬ агенту planner
50
+ 5 проверок: Coverage, Deadline, Dependency, Staleness, Tech-debt
51
+
52
+ ### Шаг 3. Показать отчёт + предложения, дождаться подтверждения
53
+
54
+ ### Шаг 4. Применить изменения (Edit, не перезапись)
55
+
56
+ ## Режим `validate`
57
+
58
+ Шаги 1-2 как в replan, но показать только отчёт без предложений.
@@ -0,0 +1,29 @@
1
+ ---
2
+ name: review
3
+ description: Код-ревью файла или задачи. Проверяет безопасность, качество, соответствие требованиям.
4
+ user-invocable: true
5
+ disable-model-invocation: false
6
+ argument-hint: "[file-path or task-id]"
7
+ allowed-tools: Read, Glob, Grep, Agent
8
+ ---
9
+
10
+ # Код-ревью
11
+
12
+ Аргумент: `$ARGUMENTS` — путь к файлу или ID задачи.
13
+
14
+ ## Если указан файл
15
+
16
+ ДЕЛЕГИРУЙ агенту reviewer:
17
+ ```
18
+ Agent(subagent_type="reviewer", prompt="Проверь файл [путь]. Паттерны: dev-infra/memory/patterns.md.")
19
+ ```
20
+
21
+ Проверь результат. Если есть CRITICAL/HIGH — покажи и предложи исправить.
22
+
23
+ ## Если указана задача
24
+
25
+ 1. Загрузи задачу из `dev-infra/tasks/tasks.json`
26
+ 2. Найди acceptance_criteria и связанные файлы
27
+ 3. ДЕЛЕГИРУЙ агенту reviewer
28
+ 4. Если задача работает с данными — дополнительно запусти security-auditor
29
+ 5. Покажи сводный отчёт
@@ -0,0 +1,58 @@
1
+ ---
2
+ name: start-session
3
+ description: Начало рабочей сессии. Загружает контекст проекта, показывает прогресс и рекомендует задачу.
4
+ user-invocable: true
5
+ disable-model-invocation: false
6
+ allowed-tools: Read, Glob, Grep, Bash
7
+ ---
8
+
9
+ # Начало рабочей сессии
10
+
11
+ Выполни ВСЕ шаги автоматически, без ожидания подтверждения:
12
+
13
+ ## 1. Синхронизировать с удалённым репозиторием
14
+
15
+ ```bash
16
+ git fetch origin
17
+ ```
18
+
19
+ Проверь, есть ли новые коммиты:
20
+ ```bash
21
+ git log HEAD..origin/<%= defaultBranch || 'main' %> --oneline
22
+ ```
23
+
24
+ Если есть новые коммиты — подтяни:
25
+ ```bash
26
+ git pull origin <%= defaultBranch || 'main' %>
27
+ ```
28
+
29
+ ## 2. Загрузить контекст
30
+
31
+ Прочитай параллельно:
32
+ - `dev-infra/memory/active-context.md`
33
+ - `dev-infra/memory/progress.md`
34
+ - `dev-infra/tasks/tasks.json`
35
+
36
+ ## 3. Показать сводку
37
+
38
+ Выведи компактно:
39
+ - **Milestone:** какой milestone, процент выполнения
40
+ - **Дедлайн:** дата, сколько дней осталось
41
+ - **Прогресс:** задач done / in_progress / todo
42
+ - **Блокеры:** если есть — подсветить
43
+
44
+ ## 4. Показать незавершённые задачи
45
+
46
+ Из tasks.json покажи задачи со статусом `in_progress`.
47
+ Если таких нет — покажи `todo` с приоритетом critical/high.
48
+
49
+ ## 5. Рекомендовать задачу
50
+
51
+ Выбери ОДНУ задачу и объясни почему:
52
+ - Приоритет (critical первые)
53
+ - Зависимости выполнены?
54
+ - Дедлайн (что ближе?)
55
+
56
+ ## 6. Ожидать решения
57
+
58
+ Дождись ответа. Если согласен — запусти `/take-task` для этой задачи.
@@ -0,0 +1,38 @@
1
+ ---
2
+ name: status
3
+ description: Текущий статус проекта. Показывает прогресс по milestone, дедлайны, блокеры.
4
+ user-invocable: true
5
+ disable-model-invocation: false
6
+ allowed-tools: Read, Glob, Grep
7
+ ---
8
+
9
+ # Текущий статус проекта
10
+
11
+ Выполни автоматически:
12
+
13
+ ## 1. Загрузить данные
14
+
15
+ Прочитай параллельно:
16
+ - `dev-infra/memory/progress.md`
17
+ - `dev-infra/tasks/tasks.json`
18
+
19
+ ## 2. Сводка по каждому milestone
20
+
21
+ Для каждого milestone выведи:
22
+ - Название и дедлайн
23
+ - Количество задач по статусам (todo / in_progress / done)
24
+ - Процент выполнения
25
+ - Количество пройденных критериев приёмки
26
+
27
+ ## 3. Ближайший дедлайн
28
+
29
+ Покажи дни до ближайшего дедлайна. Если <5 дней — подсвети.
30
+
31
+ ## 4. Блокеры
32
+
33
+ Покажи активные блокеры из `dev-infra/memory/active-context.md`.
34
+
35
+ ## 5. Критические задачи
36
+
37
+ Покажи задачи с приоритетом `critical` или `high` в статусе `todo`.
38
+ Если есть просроченные задачи — подсвети.
@@ -0,0 +1,69 @@
1
+ ---
2
+ name: take-task
3
+ description: Взять задачу в работу и запустить полный цикл разработки (анализ → план → код → тесты → ревью).
4
+ user-invocable: true
5
+ disable-model-invocation: false
6
+ argument-hint: "[task-id]"
7
+ allowed-tools: Read, Write, Edit, Glob, Grep, Bash, Agent, WebSearch
8
+ ---
9
+
10
+ # Взять задачу и запустить полный цикл разработки
11
+
12
+ Аргумент: `$ARGUMENTS` — ID задачи (опционально). Если не указан — покажи доступные.
13
+
14
+ ## Если ID не указан
15
+
16
+ 1. Прочитай `dev-infra/tasks/tasks.json`
17
+ 2. Покажи задачи для текущего milestone со статусом `todo`, отсортированные по приоритету
18
+ 3. Проверь зависимости: не предлагай задачу, если её dependencies не в статусе done
19
+ 4. Спроси, какую задачу взять
20
+
21
+ ## При выборе задачи — автоматический цикл
22
+
23
+ ### Шаг 1. Обновить статус и создать план
24
+ - В tasks.json: статус → `in_progress`, updated → сегодня
25
+ - Создать прогресс-бар задачи через TaskCreate
26
+
27
+ ### Шаг 2. Анализ требований — ДЕЛЕГИРОВАТЬ агенту analyst
28
+ ```
29
+ Agent(subagent_type="analyst", prompt="Проанализируй задачу [ID]. Описание: [description].")
30
+ ```
31
+
32
+ Покажи пользователю результат анализа. Дождись подтверждения.
33
+
34
+ ### Шаг 3. Discovery (если есть вопросы)
35
+ - Задай конкретные вопросы пользователю
36
+ - Зафиксируй решения в `dev-infra/memory/decisions.md`
37
+
38
+ ### Шаг 4. Проектирование — ДЕЛЕГИРОВАТЬ агенту architect
39
+ ```
40
+ Agent(subagent_type="architect", prompt="Спроектируй [модуль]. Требования: [результат шага 2].")
41
+ ```
42
+ - Покажи план пользователю, дождись подтверждения
43
+
44
+ ### Шаг 5. Реализация — ДЕЛЕГИРОВАТЬ агенту developer
45
+ ```
46
+ Agent(subagent_type="developer", prompt="Реализуй [модуль] по плану: [результат шага 4].")
47
+ ```
48
+ - Проверь: код соответствует плану?
49
+
50
+ ### Шаг 6. Тестирование — ДЕЛЕГИРОВАТЬ агенту unit-tester
51
+ ```
52
+ Agent(subagent_type="unit-tester", prompt="Напиши тесты для [модуль]. Покрытие ≥80%. Запусти <%= testCommand %>.")
53
+ ```
54
+ - Если тесты падают — верни developer'у
55
+
56
+ ### Шаг 7. Ревью — ДЕЛЕГИРОВАТЬ агенту reviewer
57
+ ```
58
+ Agent(subagent_type="reviewer", prompt="Проверь код в [файлы]. Критерии: [AC IDs].")
59
+ ```
60
+ - Если CRITICAL/HIGH — верни developer'у
61
+
62
+ ### Шаг 8. Документация — ДЕЛЕГИРОВАТЬ агенту doc-writer
63
+ ```
64
+ Agent(subagent_type="doc-writer", prompt="Создай документацию для задачи [ID].")
65
+ ```
66
+
67
+ ### Шаг 9. Завершение
68
+ - Покажи итог: что сделано, результат тестов, ревью
69
+ - Предложи: `/complete-task`
@@ -0,0 +1,7 @@
1
+ {
2
+ "project": "<%= projectName %>",
3
+ "version": "1.0",
4
+ "last_updated": "<%= today %>",
5
+ "last_completed": null,
6
+ "tasks": []
7
+ }