claude-autopm 2.7.0 → 2.8.2

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 (281) hide show
  1. package/README.md +307 -56
  2. package/autopm/.claude/.env +158 -0
  3. package/autopm/.claude/settings.local.json +9 -0
  4. package/bin/autopm.js +11 -2
  5. package/bin/commands/epic.js +23 -3
  6. package/bin/commands/plugin.js +395 -0
  7. package/bin/commands/team.js +184 -10
  8. package/install/install.js +223 -4
  9. package/lib/cli/commands/issue.js +360 -20
  10. package/lib/plugins/PluginManager.js +1328 -0
  11. package/lib/plugins/PluginManager.old.js +400 -0
  12. package/lib/providers/AzureDevOpsProvider.js +575 -0
  13. package/lib/providers/GitHubProvider.js +475 -0
  14. package/lib/services/EpicService.js +1092 -3
  15. package/lib/services/IssueService.js +991 -0
  16. package/package.json +9 -1
  17. package/scripts/publish-plugins.sh +166 -0
  18. package/autopm/.claude/agents/cloud/README.md +0 -55
  19. package/autopm/.claude/agents/cloud/aws-cloud-architect.md +0 -521
  20. package/autopm/.claude/agents/cloud/azure-cloud-architect.md +0 -436
  21. package/autopm/.claude/agents/cloud/gcp-cloud-architect.md +0 -385
  22. package/autopm/.claude/agents/cloud/gcp-cloud-functions-engineer.md +0 -306
  23. package/autopm/.claude/agents/cloud/gemini-api-expert.md +0 -880
  24. package/autopm/.claude/agents/cloud/kubernetes-orchestrator.md +0 -566
  25. package/autopm/.claude/agents/cloud/openai-python-expert.md +0 -1087
  26. package/autopm/.claude/agents/cloud/terraform-infrastructure-expert.md +0 -454
  27. package/autopm/.claude/agents/core/agent-manager.md +0 -296
  28. package/autopm/.claude/agents/core/code-analyzer.md +0 -131
  29. package/autopm/.claude/agents/core/file-analyzer.md +0 -162
  30. package/autopm/.claude/agents/core/test-runner.md +0 -200
  31. package/autopm/.claude/agents/data/airflow-orchestration-expert.md +0 -52
  32. package/autopm/.claude/agents/data/kedro-pipeline-expert.md +0 -50
  33. package/autopm/.claude/agents/data/langgraph-workflow-expert.md +0 -520
  34. package/autopm/.claude/agents/databases/README.md +0 -50
  35. package/autopm/.claude/agents/databases/bigquery-expert.md +0 -392
  36. package/autopm/.claude/agents/databases/cosmosdb-expert.md +0 -368
  37. package/autopm/.claude/agents/databases/mongodb-expert.md +0 -398
  38. package/autopm/.claude/agents/databases/postgresql-expert.md +0 -321
  39. package/autopm/.claude/agents/databases/redis-expert.md +0 -52
  40. package/autopm/.claude/agents/devops/README.md +0 -52
  41. package/autopm/.claude/agents/devops/azure-devops-specialist.md +0 -308
  42. package/autopm/.claude/agents/devops/docker-containerization-expert.md +0 -298
  43. package/autopm/.claude/agents/devops/github-operations-specialist.md +0 -335
  44. package/autopm/.claude/agents/devops/mcp-context-manager.md +0 -319
  45. package/autopm/.claude/agents/devops/observability-engineer.md +0 -574
  46. package/autopm/.claude/agents/devops/ssh-operations-expert.md +0 -1093
  47. package/autopm/.claude/agents/devops/traefik-proxy-expert.md +0 -444
  48. package/autopm/.claude/agents/frameworks/README.md +0 -64
  49. package/autopm/.claude/agents/frameworks/e2e-test-engineer.md +0 -360
  50. package/autopm/.claude/agents/frameworks/nats-messaging-expert.md +0 -254
  51. package/autopm/.claude/agents/frameworks/react-frontend-engineer.md +0 -217
  52. package/autopm/.claude/agents/frameworks/react-ui-expert.md +0 -226
  53. package/autopm/.claude/agents/frameworks/tailwindcss-expert.md +0 -770
  54. package/autopm/.claude/agents/frameworks/ux-design-expert.md +0 -244
  55. package/autopm/.claude/agents/integration/message-queue-engineer.md +0 -794
  56. package/autopm/.claude/agents/languages/README.md +0 -50
  57. package/autopm/.claude/agents/languages/bash-scripting-expert.md +0 -541
  58. package/autopm/.claude/agents/languages/javascript-frontend-engineer.md +0 -197
  59. package/autopm/.claude/agents/languages/nodejs-backend-engineer.md +0 -226
  60. package/autopm/.claude/agents/languages/python-backend-engineer.md +0 -214
  61. package/autopm/.claude/agents/languages/python-backend-expert.md +0 -289
  62. package/autopm/.claude/agents/testing/frontend-testing-engineer.md +0 -395
  63. package/autopm/.claude/commands/ai/langgraph-workflow.md +0 -65
  64. package/autopm/.claude/commands/ai/openai-chat.md +0 -65
  65. package/autopm/.claude/commands/azure/COMMANDS.md +0 -107
  66. package/autopm/.claude/commands/azure/COMMAND_MAPPING.md +0 -252
  67. package/autopm/.claude/commands/azure/INTEGRATION_FIX.md +0 -103
  68. package/autopm/.claude/commands/azure/README.md +0 -246
  69. package/autopm/.claude/commands/azure/active-work.md +0 -198
  70. package/autopm/.claude/commands/azure/aliases.md +0 -143
  71. package/autopm/.claude/commands/azure/blocked-items.md +0 -287
  72. package/autopm/.claude/commands/azure/clean.md +0 -93
  73. package/autopm/.claude/commands/azure/docs-query.md +0 -48
  74. package/autopm/.claude/commands/azure/feature-decompose.md +0 -380
  75. package/autopm/.claude/commands/azure/feature-list.md +0 -61
  76. package/autopm/.claude/commands/azure/feature-new.md +0 -115
  77. package/autopm/.claude/commands/azure/feature-show.md +0 -205
  78. package/autopm/.claude/commands/azure/feature-start.md +0 -130
  79. package/autopm/.claude/commands/azure/fix-integration-example.md +0 -93
  80. package/autopm/.claude/commands/azure/help.md +0 -150
  81. package/autopm/.claude/commands/azure/import-us.md +0 -269
  82. package/autopm/.claude/commands/azure/init.md +0 -211
  83. package/autopm/.claude/commands/azure/next-task.md +0 -262
  84. package/autopm/.claude/commands/azure/search.md +0 -160
  85. package/autopm/.claude/commands/azure/sprint-status.md +0 -235
  86. package/autopm/.claude/commands/azure/standup.md +0 -260
  87. package/autopm/.claude/commands/azure/sync-all.md +0 -99
  88. package/autopm/.claude/commands/azure/task-analyze.md +0 -186
  89. package/autopm/.claude/commands/azure/task-close.md +0 -329
  90. package/autopm/.claude/commands/azure/task-edit.md +0 -145
  91. package/autopm/.claude/commands/azure/task-list.md +0 -263
  92. package/autopm/.claude/commands/azure/task-new.md +0 -84
  93. package/autopm/.claude/commands/azure/task-reopen.md +0 -79
  94. package/autopm/.claude/commands/azure/task-show.md +0 -126
  95. package/autopm/.claude/commands/azure/task-start.md +0 -301
  96. package/autopm/.claude/commands/azure/task-status.md +0 -65
  97. package/autopm/.claude/commands/azure/task-sync.md +0 -67
  98. package/autopm/.claude/commands/azure/us-edit.md +0 -164
  99. package/autopm/.claude/commands/azure/us-list.md +0 -202
  100. package/autopm/.claude/commands/azure/us-new.md +0 -265
  101. package/autopm/.claude/commands/azure/us-parse.md +0 -253
  102. package/autopm/.claude/commands/azure/us-show.md +0 -188
  103. package/autopm/.claude/commands/azure/us-status.md +0 -320
  104. package/autopm/.claude/commands/azure/validate.md +0 -86
  105. package/autopm/.claude/commands/azure/work-item-sync.md +0 -47
  106. package/autopm/.claude/commands/cloud/infra-deploy.md +0 -38
  107. package/autopm/.claude/commands/github/workflow-create.md +0 -42
  108. package/autopm/.claude/commands/infrastructure/ssh-security.md +0 -65
  109. package/autopm/.claude/commands/infrastructure/traefik-setup.md +0 -65
  110. package/autopm/.claude/commands/kubernetes/deploy.md +0 -37
  111. package/autopm/.claude/commands/playwright/test-scaffold.md +0 -38
  112. package/autopm/.claude/commands/pm/blocked.md +0 -28
  113. package/autopm/.claude/commands/pm/clean.md +0 -119
  114. package/autopm/.claude/commands/pm/context-create.md +0 -136
  115. package/autopm/.claude/commands/pm/context-prime.md +0 -170
  116. package/autopm/.claude/commands/pm/context-update.md +0 -292
  117. package/autopm/.claude/commands/pm/context.md +0 -28
  118. package/autopm/.claude/commands/pm/epic-close.md +0 -86
  119. package/autopm/.claude/commands/pm/epic-decompose.md +0 -370
  120. package/autopm/.claude/commands/pm/epic-edit.md +0 -83
  121. package/autopm/.claude/commands/pm/epic-list.md +0 -30
  122. package/autopm/.claude/commands/pm/epic-merge.md +0 -222
  123. package/autopm/.claude/commands/pm/epic-oneshot.md +0 -119
  124. package/autopm/.claude/commands/pm/epic-refresh.md +0 -119
  125. package/autopm/.claude/commands/pm/epic-show.md +0 -28
  126. package/autopm/.claude/commands/pm/epic-split.md +0 -120
  127. package/autopm/.claude/commands/pm/epic-start.md +0 -195
  128. package/autopm/.claude/commands/pm/epic-status.md +0 -28
  129. package/autopm/.claude/commands/pm/epic-sync-modular.md +0 -338
  130. package/autopm/.claude/commands/pm/epic-sync-original.md +0 -473
  131. package/autopm/.claude/commands/pm/epic-sync.md +0 -486
  132. package/autopm/.claude/commands/pm/help.md +0 -28
  133. package/autopm/.claude/commands/pm/import.md +0 -115
  134. package/autopm/.claude/commands/pm/in-progress.md +0 -28
  135. package/autopm/.claude/commands/pm/init.md +0 -28
  136. package/autopm/.claude/commands/pm/issue-analyze.md +0 -202
  137. package/autopm/.claude/commands/pm/issue-close.md +0 -119
  138. package/autopm/.claude/commands/pm/issue-edit.md +0 -93
  139. package/autopm/.claude/commands/pm/issue-reopen.md +0 -87
  140. package/autopm/.claude/commands/pm/issue-show.md +0 -41
  141. package/autopm/.claude/commands/pm/issue-start.md +0 -234
  142. package/autopm/.claude/commands/pm/issue-status.md +0 -95
  143. package/autopm/.claude/commands/pm/issue-sync.md +0 -411
  144. package/autopm/.claude/commands/pm/next.md +0 -28
  145. package/autopm/.claude/commands/pm/prd-edit.md +0 -82
  146. package/autopm/.claude/commands/pm/prd-list.md +0 -28
  147. package/autopm/.claude/commands/pm/prd-new.md +0 -55
  148. package/autopm/.claude/commands/pm/prd-parse.md +0 -42
  149. package/autopm/.claude/commands/pm/prd-status.md +0 -28
  150. package/autopm/.claude/commands/pm/search.md +0 -28
  151. package/autopm/.claude/commands/pm/standup.md +0 -28
  152. package/autopm/.claude/commands/pm/status.md +0 -28
  153. package/autopm/.claude/commands/pm/sync.md +0 -99
  154. package/autopm/.claude/commands/pm/test-reference-update.md +0 -151
  155. package/autopm/.claude/commands/pm/validate.md +0 -28
  156. package/autopm/.claude/commands/pm/what-next.md +0 -28
  157. package/autopm/.claude/commands/python/api-scaffold.md +0 -50
  158. package/autopm/.claude/commands/python/docs-query.md +0 -48
  159. package/autopm/.claude/commands/react/app-scaffold.md +0 -50
  160. package/autopm/.claude/commands/testing/prime.md +0 -314
  161. package/autopm/.claude/commands/testing/run.md +0 -125
  162. package/autopm/.claude/commands/ui/bootstrap-scaffold.md +0 -65
  163. package/autopm/.claude/commands/ui/tailwind-system.md +0 -64
  164. package/autopm/.claude/rules/ai-integration-patterns.md +0 -219
  165. package/autopm/.claude/rules/ci-cd-kubernetes-strategy.md +0 -25
  166. package/autopm/.claude/rules/database-management-strategy.md +0 -17
  167. package/autopm/.claude/rules/database-pipeline.md +0 -94
  168. package/autopm/.claude/rules/devops-troubleshooting-playbook.md +0 -450
  169. package/autopm/.claude/rules/docker-first-development.md +0 -404
  170. package/autopm/.claude/rules/infrastructure-pipeline.md +0 -128
  171. package/autopm/.claude/rules/performance-guidelines.md +0 -403
  172. package/autopm/.claude/rules/ui-development-standards.md +0 -281
  173. package/autopm/.claude/rules/ui-framework-rules.md +0 -151
  174. package/autopm/.claude/rules/ux-design-rules.md +0 -209
  175. package/autopm/.claude/rules/visual-testing.md +0 -223
  176. package/autopm/.claude/scripts/azure/README.md +0 -192
  177. package/autopm/.claude/scripts/azure/active-work.js +0 -524
  178. package/autopm/.claude/scripts/azure/active-work.sh +0 -20
  179. package/autopm/.claude/scripts/azure/blocked.js +0 -520
  180. package/autopm/.claude/scripts/azure/blocked.sh +0 -20
  181. package/autopm/.claude/scripts/azure/daily.js +0 -533
  182. package/autopm/.claude/scripts/azure/daily.sh +0 -20
  183. package/autopm/.claude/scripts/azure/dashboard.js +0 -970
  184. package/autopm/.claude/scripts/azure/dashboard.sh +0 -20
  185. package/autopm/.claude/scripts/azure/feature-list.js +0 -254
  186. package/autopm/.claude/scripts/azure/feature-list.sh +0 -20
  187. package/autopm/.claude/scripts/azure/feature-show.js +0 -7
  188. package/autopm/.claude/scripts/azure/feature-show.sh +0 -20
  189. package/autopm/.claude/scripts/azure/feature-status.js +0 -604
  190. package/autopm/.claude/scripts/azure/feature-status.sh +0 -20
  191. package/autopm/.claude/scripts/azure/help.js +0 -342
  192. package/autopm/.claude/scripts/azure/help.sh +0 -20
  193. package/autopm/.claude/scripts/azure/next-task.js +0 -508
  194. package/autopm/.claude/scripts/azure/next-task.sh +0 -20
  195. package/autopm/.claude/scripts/azure/search.js +0 -469
  196. package/autopm/.claude/scripts/azure/search.sh +0 -20
  197. package/autopm/.claude/scripts/azure/setup.js +0 -745
  198. package/autopm/.claude/scripts/azure/setup.sh +0 -20
  199. package/autopm/.claude/scripts/azure/sprint-report.js +0 -1012
  200. package/autopm/.claude/scripts/azure/sprint-report.sh +0 -20
  201. package/autopm/.claude/scripts/azure/sync.js +0 -563
  202. package/autopm/.claude/scripts/azure/sync.sh +0 -20
  203. package/autopm/.claude/scripts/azure/us-list.js +0 -210
  204. package/autopm/.claude/scripts/azure/us-list.sh +0 -20
  205. package/autopm/.claude/scripts/azure/us-status.js +0 -238
  206. package/autopm/.claude/scripts/azure/us-status.sh +0 -20
  207. package/autopm/.claude/scripts/azure/validate.js +0 -626
  208. package/autopm/.claude/scripts/azure/validate.sh +0 -20
  209. package/autopm/.claude/scripts/azure/wrapper-template.sh +0 -20
  210. package/autopm/.claude/scripts/github/dependency-tracker.js +0 -554
  211. package/autopm/.claude/scripts/github/dependency-validator.js +0 -545
  212. package/autopm/.claude/scripts/github/dependency-visualizer.js +0 -477
  213. package/autopm/.claude/scripts/pm/analytics.js +0 -425
  214. package/autopm/.claude/scripts/pm/blocked.js +0 -164
  215. package/autopm/.claude/scripts/pm/blocked.sh +0 -78
  216. package/autopm/.claude/scripts/pm/clean.js +0 -464
  217. package/autopm/.claude/scripts/pm/context-create.js +0 -216
  218. package/autopm/.claude/scripts/pm/context-prime.js +0 -335
  219. package/autopm/.claude/scripts/pm/context-update.js +0 -344
  220. package/autopm/.claude/scripts/pm/context.js +0 -338
  221. package/autopm/.claude/scripts/pm/epic-close.js +0 -347
  222. package/autopm/.claude/scripts/pm/epic-edit.js +0 -382
  223. package/autopm/.claude/scripts/pm/epic-list.js +0 -273
  224. package/autopm/.claude/scripts/pm/epic-list.sh +0 -109
  225. package/autopm/.claude/scripts/pm/epic-show.js +0 -291
  226. package/autopm/.claude/scripts/pm/epic-show.sh +0 -105
  227. package/autopm/.claude/scripts/pm/epic-split.js +0 -522
  228. package/autopm/.claude/scripts/pm/epic-start/epic-start.js +0 -183
  229. package/autopm/.claude/scripts/pm/epic-start/epic-start.sh +0 -94
  230. package/autopm/.claude/scripts/pm/epic-status.js +0 -291
  231. package/autopm/.claude/scripts/pm/epic-status.sh +0 -104
  232. package/autopm/.claude/scripts/pm/epic-sync/README.md +0 -208
  233. package/autopm/.claude/scripts/pm/epic-sync/create-epic-issue.sh +0 -77
  234. package/autopm/.claude/scripts/pm/epic-sync/create-task-issues.sh +0 -86
  235. package/autopm/.claude/scripts/pm/epic-sync/update-epic-file.sh +0 -79
  236. package/autopm/.claude/scripts/pm/epic-sync/update-references.sh +0 -89
  237. package/autopm/.claude/scripts/pm/epic-sync.sh +0 -137
  238. package/autopm/.claude/scripts/pm/help.js +0 -92
  239. package/autopm/.claude/scripts/pm/help.sh +0 -90
  240. package/autopm/.claude/scripts/pm/in-progress.js +0 -178
  241. package/autopm/.claude/scripts/pm/in-progress.sh +0 -93
  242. package/autopm/.claude/scripts/pm/init.js +0 -321
  243. package/autopm/.claude/scripts/pm/init.sh +0 -178
  244. package/autopm/.claude/scripts/pm/issue-close.js +0 -232
  245. package/autopm/.claude/scripts/pm/issue-edit.js +0 -310
  246. package/autopm/.claude/scripts/pm/issue-show.js +0 -272
  247. package/autopm/.claude/scripts/pm/issue-start.js +0 -181
  248. package/autopm/.claude/scripts/pm/issue-sync/format-comment.sh +0 -468
  249. package/autopm/.claude/scripts/pm/issue-sync/gather-updates.sh +0 -460
  250. package/autopm/.claude/scripts/pm/issue-sync/post-comment.sh +0 -330
  251. package/autopm/.claude/scripts/pm/issue-sync/preflight-validation.sh +0 -348
  252. package/autopm/.claude/scripts/pm/issue-sync/update-frontmatter.sh +0 -387
  253. package/autopm/.claude/scripts/pm/lib/README.md +0 -85
  254. package/autopm/.claude/scripts/pm/lib/epic-discovery.js +0 -119
  255. package/autopm/.claude/scripts/pm/lib/logger.js +0 -78
  256. package/autopm/.claude/scripts/pm/next.js +0 -189
  257. package/autopm/.claude/scripts/pm/next.sh +0 -72
  258. package/autopm/.claude/scripts/pm/optimize.js +0 -407
  259. package/autopm/.claude/scripts/pm/pr-create.js +0 -337
  260. package/autopm/.claude/scripts/pm/pr-list.js +0 -257
  261. package/autopm/.claude/scripts/pm/prd-list.js +0 -242
  262. package/autopm/.claude/scripts/pm/prd-list.sh +0 -103
  263. package/autopm/.claude/scripts/pm/prd-new.js +0 -684
  264. package/autopm/.claude/scripts/pm/prd-parse.js +0 -547
  265. package/autopm/.claude/scripts/pm/prd-status.js +0 -152
  266. package/autopm/.claude/scripts/pm/prd-status.sh +0 -63
  267. package/autopm/.claude/scripts/pm/release.js +0 -460
  268. package/autopm/.claude/scripts/pm/search.js +0 -192
  269. package/autopm/.claude/scripts/pm/search.sh +0 -89
  270. package/autopm/.claude/scripts/pm/standup.js +0 -362
  271. package/autopm/.claude/scripts/pm/standup.sh +0 -95
  272. package/autopm/.claude/scripts/pm/status.js +0 -148
  273. package/autopm/.claude/scripts/pm/status.sh +0 -59
  274. package/autopm/.claude/scripts/pm/sync-batch.js +0 -337
  275. package/autopm/.claude/scripts/pm/sync.js +0 -343
  276. package/autopm/.claude/scripts/pm/template-list.js +0 -141
  277. package/autopm/.claude/scripts/pm/template-new.js +0 -366
  278. package/autopm/.claude/scripts/pm/validate.js +0 -274
  279. package/autopm/.claude/scripts/pm/validate.sh +0 -106
  280. package/autopm/.claude/scripts/pm/what-next.js +0 -660
  281. package/bin/node/azure-feature-show.js +0 -7
@@ -1,370 +0,0 @@
1
- ---
2
- allowed-tools: Bash, Read, Write, LS, Task
3
- ---
4
-
5
- # Epic Decompose
6
-
7
- Break epic into concrete, actionable tasks.
8
-
9
- ## Usage
10
-
11
- **Single Epic:**
12
- ```bash
13
- /pm:epic-decompose <feature_name> [--local]
14
- ```
15
-
16
- **Multi-Epic (decomposes ALL epics at once):**
17
- ```bash
18
- /pm:epic-decompose <feature_name> [--local]
19
- # Example: /pm:epic-decompose ecommerce-platform --local
20
- # This will automatically decompose ALL epics:
21
- # - 01-infrastructure
22
- # - 02-auth-backend
23
- # - 03-product-api
24
- # - etc.
25
- ```
26
-
27
- **Single Epic from Multi-Epic structure:**
28
- ```bash
29
- /pm:epic-decompose <feature_name>/<epic_folder> [--local]
30
- # Example: /pm:epic-decompose ecommerce-platform/01-infrastructure --local
31
- ```
32
-
33
- ## Flags
34
-
35
- `--local`, `-l`
36
- : Use local mode (offline workflow)
37
- : Creates task files in `.claude/epics/` directory structure
38
- : No GitHub/Azure synchronization
39
- : Task files remain local-only until manually synced
40
- : Ideal for offline work or projects without remote tracking
41
-
42
- Example:
43
- ```
44
- /pm:epic-decompose user-authentication --local
45
- ```
46
-
47
- ## Required Documentation Access
48
-
49
- **MANDATORY:** Before decomposing epics, query Context7 for best practices:
50
-
51
- **Documentation Queries:**
52
- - `mcp://context7/agile/epic-decomposition` - Epic breakdown best practices
53
- - `mcp://context7/agile/task-sizing` - Task estimation and sizing
54
- - `mcp://context7/agile/user-stories` - User story formats (INVEST criteria)
55
- - `mcp://context7/project-management/task-breakdown` - Work breakdown structure
56
-
57
- **Why This is Required:**
58
- - Ensures tasks follow industry-standard decomposition patterns
59
- - Applies current best practices for task sizing and dependencies
60
- - Validates task structure against proven methodologies
61
- - Prevents common anti-patterns in task breakdown
62
-
63
- ## Required Rules
64
-
65
- **IMPORTANT:** Before executing this command, read and follow:
66
- - `.claude/rules/datetime.md` - For getting real current date/time
67
-
68
- ## Preflight Checklist
69
-
70
- Before proceeding, complete these validation steps.
71
- Do not bother the user with preflight checks progress ("I'm not going to ..."). Just do them and move on.
72
-
73
- 1. **Verify epic exists:**
74
- - Check if `.claude/epics/$ARGUMENTS` directory exists
75
- - Check for either:
76
- a) Single epic: `.claude/epics/$ARGUMENTS/epic.md` exists
77
- b) Multiple epics: Subdirectories like `.claude/epics/$ARGUMENTS/01-infrastructure/epic.md`
78
- - If neither found, tell user: "❌ Epic not found: $ARGUMENTS. First create it with: /pm:prd-parse $ARGUMENTS or /pm:epic-split $ARGUMENTS"
79
- - Stop execution if no epics found
80
-
81
- 2. **Detect epic structure:**
82
- - If `.claude/epics/$ARGUMENTS/epic.md` exists → Single epic mode
83
- - If subdirectories with epic.md files exist → Multi-epic mode
84
- - Store the mode for later processing
85
-
86
- 3. **Check for existing tasks:**
87
- - For single epic: Check `.claude/epics/$ARGUMENTS/` for numbered task files
88
- - For multi-epic: Check each subdirectory for numbered task files
89
- - If tasks exist, list them and ask: "⚠️ Found {count} existing tasks. Delete and recreate all tasks? (yes/no)"
90
- - Only proceed with explicit 'yes' confirmation
91
- - If user says no, suggest: "View existing tasks with: /pm:epic-show $ARGUMENTS"
92
-
93
- 4. **Validate epic frontmatter:**
94
- - For single epic: Verify `.claude/epics/$ARGUMENTS/epic.md` has valid frontmatter
95
- - For multi-epic: Verify each subdirectory's epic.md has valid frontmatter
96
- - If invalid, tell user which epic file has invalid frontmatter
97
-
98
- 5. **Check epic status:**
99
- - For each epic, check if status is already "completed"
100
- - If any epic is completed, warn user: "⚠️ Epic(s) marked as completed. Are you sure you want to decompose again?"
101
-
102
- ## ⚠️ TDD REMINDER
103
-
104
- **CRITICAL: All tasks MUST follow Test-Driven Development (TDD).**
105
-
106
- When creating tasks, ensure each task includes:
107
- - TDD Requirements section (RED-GREEN-REFACTOR cycle)
108
- - "Tests written FIRST" as first item in Definition of Done
109
- - References to `.claude/rules/tdd.enforcement.md`
110
-
111
- Every generated task file will remind developers to write tests first.
112
-
113
- ---
114
-
115
- ## Instructions
116
-
117
- You are decomposing epic(s) into specific, actionable tasks for: **$ARGUMENTS**
118
-
119
- ### 1. Determine Processing Mode
120
-
121
- **Single Epic Mode:**
122
- - Process `.claude/epics/$ARGUMENTS/epic.md`
123
- - Create tasks in `.claude/epics/$ARGUMENTS/`
124
-
125
- **Multi-Epic Mode (from epic-split):**
126
- - Find all subdirectories in `.claude/epics/$ARGUMENTS/`
127
- - Process each subdirectory's epic.md file separately
128
- - Create tasks in each respective subdirectory
129
- - Show progress for each epic being processed
130
-
131
- ### 2. Read the Epic(s)
132
- - For single epic: Load from `.claude/epics/$ARGUMENTS/epic.md`
133
- - For multi-epic: Load each `.claude/epics/$ARGUMENTS/*/epic.md`
134
- - Understand the technical approach and requirements
135
- - Review the task breakdown preview
136
-
137
- ### 2. Analyze for Parallel Creation
138
-
139
- Determine if tasks can be created in parallel:
140
- - If tasks are mostly independent: Create in parallel using Task agents
141
- - If tasks have complex dependencies: Create sequentially
142
- - For best results: Group independent tasks for parallel creation
143
-
144
- ### 3. Parallel Task Creation (When Possible)
145
-
146
- If tasks can be created in parallel, spawn sub-agents:
147
-
148
- ```yaml
149
- Task:
150
- description: "Create task files batch {X}"
151
- subagent_type: "general-purpose"
152
- prompt: |
153
- Create task files for epic: $ARGUMENTS
154
-
155
- Tasks to create:
156
- - {list of 3-4 tasks for this batch}
157
-
158
- For each task:
159
- 1. Create file: .claude/epics/$ARGUMENTS/{number}.md
160
- 2. Use exact format with frontmatter and all sections
161
- 3. Follow task breakdown from epic
162
- 4. Set parallel/depends_on fields appropriately
163
- 5. Number sequentially (001.md, 002.md, etc.)
164
-
165
- Return: List of files created
166
- ```
167
-
168
- ### 4. Task File Format with Frontmatter
169
- For each task, create a file with this exact structure:
170
-
171
- ```markdown
172
- ---
173
- name: [Task Title]
174
- status: open
175
- created: [Current ISO date/time]
176
- updated: [Current ISO date/time]
177
- github: [Will be updated when synced to GitHub]
178
- depends_on: [] # List of task numbers this depends on, e.g., [001, 002]
179
- parallel: true # Can this run in parallel with other tasks?
180
- conflicts_with: [] # Tasks that modify same files, e.g., [003, 004]
181
- ---
182
-
183
- # Task: [Task Title]
184
-
185
- ## Description
186
- Clear, concise description of what needs to be done
187
-
188
- ## ⚠️ TDD Requirements
189
- **This project uses Test-Driven Development. You MUST:**
190
- 1. 🔴 RED: Write failing test first
191
- 2. 🟢 GREEN: Write minimal code to make test pass
192
- 3. 🔵 REFACTOR: Clean up code while keeping tests green
193
-
194
- See `.claude/rules/tdd.enforcement.md` for complete requirements.
195
-
196
- ## Acceptance Criteria
197
- - [ ] Specific criterion 1
198
- - [ ] Specific criterion 2
199
- - [ ] Specific criterion 3
200
-
201
- ## Technical Details
202
- - Implementation approach
203
- - Key considerations
204
- - Code locations/files affected
205
-
206
- ## Dependencies
207
- - [ ] Task/Issue dependencies
208
- - [ ] External dependencies
209
-
210
- ## Effort Estimate
211
- - Size: XS/S/M/L/XL
212
- - Hours: estimated hours
213
- - Parallel: true/false (can run in parallel with other tasks)
214
-
215
- ## Definition of Done
216
- - [ ] Tests written FIRST (RED phase)
217
- - [ ] Code implemented (GREEN phase)
218
- - [ ] Code refactored (REFACTOR phase)
219
- - [ ] All tests passing
220
- - [ ] Documentation updated
221
- - [ ] Code reviewed
222
- - [ ] Deployed to staging
223
- ```
224
-
225
- ### 3. Task Naming Convention
226
-
227
- **For Single Epic:**
228
- Save tasks as: `.claude/epics/$ARGUMENTS/{task_number}.md`
229
-
230
- **For Multi-Epic:**
231
- Save tasks as: `.claude/epics/$ARGUMENTS/{epic_folder}/{task_number}.md`
232
- Example: `.claude/epics/ecommerce/01-infrastructure/001.md`
233
-
234
- - Use sequential numbering: 001.md, 002.md, etc.
235
- - Keep task titles short but descriptive
236
- - Each epic gets its own task number sequence
237
-
238
- ### 4. Frontmatter Guidelines
239
- - **name**: Use a descriptive task title (without "Task:" prefix)
240
- - **status**: Always start with "open" for new tasks
241
- - **created**: Get REAL current datetime by running: `date -u +"%Y-%m-%dT%H:%M:%SZ"`
242
- - **updated**: Use the same real datetime as created for new tasks
243
- - **github**: Leave placeholder text - will be updated during sync
244
- - **depends_on**: List task numbers that must complete before this can start (e.g., [001, 002])
245
- - **parallel**: Set to true if this can run alongside other tasks without conflicts
246
- - **conflicts_with**: List task numbers that modify the same files (helps coordination)
247
-
248
- ### 5. Task Types to Consider
249
- - **Setup tasks**: Environment, dependencies, scaffolding
250
- - **Data tasks**: Models, schemas, migrations
251
- - **API tasks**: Endpoints, services, integration
252
- - **UI tasks**: Components, pages, styling
253
- - **Testing tasks**: Unit tests, integration tests
254
- - **Documentation tasks**: README, API docs
255
- - **Deployment tasks**: CI/CD, infrastructure
256
-
257
- ### 6. Parallelization
258
- Mark tasks with `parallel: true` if they can be worked on simultaneously without conflicts.
259
-
260
- ### 7. Execution Strategy
261
-
262
- Choose based on task count and complexity:
263
-
264
- **Small Epic (< 5 tasks)**: Create sequentially for simplicity
265
-
266
- **Medium Epic (5-10 tasks)**:
267
- - Batch into 2-3 groups
268
- - Spawn agents for each batch
269
- - Consolidate results
270
-
271
- **Large Epic (> 10 tasks)**:
272
- - Analyze dependencies first
273
- - Group independent tasks
274
- - Launch parallel agents (max 5 concurrent)
275
- - Create dependent tasks after prerequisites
276
-
277
- Example for parallel execution:
278
- ```markdown
279
- Spawning 3 agents for parallel task creation:
280
- - Agent 1: Creating tasks 001-003 (Database layer)
281
- - Agent 2: Creating tasks 004-006 (API layer)
282
- - Agent 3: Creating tasks 007-009 (UI layer)
283
- ```
284
-
285
- **Multi-Epic Processing Example:**
286
- ```markdown
287
- Processing multiple epics from split:
288
-
289
- 📂 01-infrastructure/epic.md
290
- Creating 8 tasks...
291
- ✅ Done
292
-
293
- 📂 02-auth-backend/epic.md
294
- Creating 12 tasks...
295
- ✅ Done
296
-
297
- 📂 03-frontend/epic.md
298
- Creating 10 tasks...
299
- ✅ Done
300
- ```
301
-
302
- ### 8. Task Dependency Validation
303
-
304
- When creating tasks with dependencies:
305
- - Ensure referenced dependencies exist (e.g., if Task 003 depends on Task 002, verify 002 was created)
306
- - Check for circular dependencies (Task A → Task B → Task A)
307
- - If dependency issues found, warn but continue: "⚠️ Task dependency warning: {details}"
308
-
309
- ### 9. Update Epic with Task Summary
310
- After creating all tasks, update the epic file by adding this section:
311
- ```markdown
312
- ## Tasks Created
313
- - [ ] 001.md - {Task Title} (parallel: true/false)
314
- - [ ] 002.md - {Task Title} (parallel: true/false)
315
- - etc.
316
-
317
- Total tasks: {count}
318
- Parallel tasks: {parallel_count}
319
- Sequential tasks: {sequential_count}
320
- Estimated total effort: {sum of hours}
321
- ```
322
-
323
- Also update the epic's frontmatter progress if needed (still 0% until tasks actually start).
324
-
325
- ### 9. Quality Validation
326
-
327
- Before finalizing tasks, verify:
328
- - [ ] All tasks have clear acceptance criteria
329
- - [ ] Task sizes are reasonable (1-3 days each)
330
- - [ ] Dependencies are logical and achievable
331
- - [ ] Parallel tasks don't conflict with each other
332
- - [ ] Combined tasks cover all epic requirements
333
-
334
- ### 10. Post-Decomposition
335
-
336
- **For Single Epic:**
337
- After successfully creating tasks:
338
- 1. Confirm: "✅ Created {count} tasks for epic: $ARGUMENTS"
339
- 2. Show summary:
340
- - Total tasks created
341
- - Parallel vs sequential breakdown
342
- - Total estimated effort
343
- 3. Suggest next step: "Ready to sync to GitHub? Run: /pm:epic-sync $ARGUMENTS"
344
-
345
- **For Multi-Epic:**
346
- After processing all epics:
347
- 1. Show per-epic summary:
348
- ```
349
- ✅ Epic Decomposition Complete
350
-
351
- 📂 01-infrastructure: 8 tasks created
352
- 📂 02-auth-backend: 12 tasks created
353
- 📂 03-frontend: 10 tasks created
354
-
355
- Total: 30 tasks across 3 epics
356
- ```
357
- 2. Show combined statistics:
358
- - Total tasks across all epics
359
- - Total estimated effort
360
- - Breakdown by epic
361
- 3. Suggest next step: "Ready to sync all epics? Run: /pm:epic-sync $ARGUMENTS"
362
-
363
- ## Error Recovery
364
-
365
- If any step fails:
366
- - If task creation partially completes, list which tasks were created
367
- - Provide option to clean up partial tasks
368
- - Never leave the epic in an inconsistent state
369
-
370
- Aim for tasks that can be completed in 1-3 days each. Break down larger tasks into smaller, manageable pieces for the "$ARGUMENTS" epic.
@@ -1,83 +0,0 @@
1
- ---
2
- allowed-tools: Read, Write, LS
3
- ---
4
-
5
- # Epic Edit
6
-
7
- Edit epic details after creation.
8
-
9
- ## Usage
10
- ```
11
- /pm:epic-edit <epic_name>
12
- ```
13
-
14
- ## Required Documentation Access
15
-
16
- **MANDATORY:** Before project management workflows, query Context7 for best practices:
17
-
18
- **Documentation Queries:**
19
- - `mcp://context7/agile/epic-management` - epic management best practices
20
- - `mcp://context7/project-management/issue-tracking` - issue tracking best practices
21
- - `mcp://context7/agile/task-breakdown` - task breakdown best practices
22
- - `mcp://context7/project-management/workflow` - workflow best practices
23
-
24
- **Why This is Required:**
25
- - Ensures adherence to current industry standards and best practices
26
- - Prevents outdated or incorrect implementation patterns
27
- - Provides access to latest framework/tool documentation
28
- - Reduces errors from stale knowledge or assumptions
29
-
30
-
31
- ## Instructions
32
-
33
- ### 1. Read Current Epic
34
-
35
- Read `.claude/epics/$ARGUMENTS/epic.md`:
36
- - Parse frontmatter
37
- - Read content sections
38
-
39
- ### 2. Interactive Edit
40
-
41
- Ask user what to edit:
42
- - Name/Title
43
- - Description/Overview
44
- - Architecture decisions
45
- - Technical approach
46
- - Dependencies
47
- - Success criteria
48
-
49
- ### 3. Update Epic File
50
-
51
- Get current datetime: `date -u +"%Y-%m-%dT%H:%M:%SZ"`
52
-
53
- Update epic.md:
54
- - Preserve all frontmatter except `updated`
55
- - Apply user's edits to content
56
- - Update `updated` field with current datetime
57
-
58
- ### 4. Option to Update GitHub
59
-
60
- If epic has GitHub URL in frontmatter:
61
- Ask: "Update GitHub issue? (yes/no)"
62
-
63
- If yes:
64
- ```bash
65
- gh issue edit {issue_number} --body-file .claude/epics/$ARGUMENTS/epic.md
66
- ```
67
-
68
- ### 5. Output
69
-
70
- ```
71
- ✅ Updated epic: $ARGUMENTS
72
- Changes made to: {sections_edited}
73
-
74
- {If GitHub updated}: GitHub issue updated ✅
75
-
76
- View epic: /pm:epic-show $ARGUMENTS
77
- ```
78
-
79
- ## Important Notes
80
-
81
- Preserve frontmatter history (created, github URL, etc.).
82
- Don't change task files when editing epic.
83
- Follow `/rules/frontmatter-operations.md`.
@@ -1,30 +0,0 @@
1
- ---
2
- allowed-tools: Bash
3
- ---
4
-
5
- Run `node .claude/scripts/pm/epic-list.js` using the Bash tool and show me the complete output.
6
-
7
- - You MUST display the complete output.
8
- - DO NOT truncate.
9
- - DO NOT collapse.
10
- - DO NOT abbreviate.
11
- ## Required Documentation Access
12
-
13
- **MANDATORY:** Before project management workflows, query Context7 for best practices:
14
-
15
- **Documentation Queries:**
16
- - `mcp://context7/agile/epic-management` - epic management best practices
17
- - `mcp://context7/project-management/issue-tracking` - issue tracking best practices
18
- - `mcp://context7/agile/task-breakdown` - task breakdown best practices
19
- - `mcp://context7/project-management/workflow` - workflow best practices
20
-
21
- **Why This is Required:**
22
- - Ensures adherence to current industry standards and best practices
23
- - Prevents outdated or incorrect implementation patterns
24
- - Provides access to latest framework/tool documentation
25
- - Reduces errors from stale knowledge or assumptions
26
-
27
-
28
- - Show ALL lines in full.
29
- - DO NOT print any other comments.
30
-
@@ -1,222 +0,0 @@
1
- ---
2
- allowed-tools: Bash, Read, Write
3
- ---
4
-
5
- # Epic Merge
6
-
7
- Merge completed epic branch back to main branch.
8
-
9
- ## Usage
10
- ```
11
- /pm:epic-merge <epic_name>
12
- ```
13
-
14
- ## Required Documentation Access
15
-
16
- **MANDATORY:** Before project management workflows, query Context7 for best practices:
17
-
18
- **Documentation Queries:**
19
- - `mcp://context7/agile/epic-management` - epic management best practices
20
- - `mcp://context7/project-management/issue-tracking` - issue tracking best practices
21
- - `mcp://context7/agile/task-breakdown` - task breakdown best practices
22
- - `mcp://context7/project-management/workflow` - workflow best practices
23
-
24
- **Why This is Required:**
25
- - Ensures adherence to current industry standards and best practices
26
- - Prevents outdated or incorrect implementation patterns
27
- - Provides access to latest framework/tool documentation
28
- - Reduces errors from stale knowledge or assumptions
29
-
30
-
31
- ## Quick Check
32
-
33
- 1. **Verify branch exists:**
34
- ```bash
35
- git branch -a | grep "epic/$ARGUMENTS" || echo "❌ No branch for epic: $ARGUMENTS"
36
- ```
37
-
38
- 2. **Check for active agents:**
39
- Read `.claude/epics/$ARGUMENTS/execution-status.md`
40
- If active agents exist: "⚠️ Active agents detected. Stop them first with: /pm:epic-close $ARGUMENTS"
41
-
42
- ## Instructions
43
-
44
- ### 1. Pre-Merge Validation
45
-
46
- Check out branch and check status:
47
- ```bash
48
- git checkout epic/$ARGUMENTS
49
- git pull origin epic/$ARGUMENTS
50
-
51
- # Check for uncommitted changes
52
- if [[ $(git status --porcelain) ]]; then
53
- echo "⚠️ Uncommitted changes in branch:"
54
- git status --short
55
- echo "Commit or stash changes before merging"
56
- exit 1
57
- fi
58
-
59
- # Check branch status
60
- git fetch origin
61
- git status -sb
62
- ```
63
-
64
- ### 2. Run Tests (Optional but Recommended)
65
-
66
- ```bash
67
- # Look for test commands
68
- if [ -f package.json ]; then
69
- npm test || echo "⚠️ Tests failed. Continue anyway? (yes/no)"
70
- elif [ -f Makefile ]; then
71
- make test || echo "⚠️ Tests failed. Continue anyway? (yes/no)"
72
- fi
73
- ```
74
-
75
- ### 3. Update Epic Documentation
76
-
77
- Get current datetime: `date -u +"%Y-%m-%dT%H:%M:%SZ"`
78
-
79
- Update `.claude/epics/$ARGUMENTS/epic.md`:
80
- - Set status to "completed"
81
- - Update completion date
82
- - Add final summary
83
-
84
- ### 4. Attempt Merge
85
-
86
- ```bash
87
- # Ensure main is up to date
88
- git checkout main
89
- git pull origin main
90
-
91
- # Attempt merge
92
- echo "Merging epic/$ARGUMENTS to main..."
93
- git merge epic/$ARGUMENTS --no-ff -m "Merge epic: $ARGUMENTS
94
-
95
- Completed features:
96
- $(cd .claude/epics/$ARGUMENTS && ls *.md | grep -E '^[0-9]+' | while read f; do
97
- echo "- $(grep '^name:' $f | cut -d: -f2)"
98
- done)
99
-
100
- Closes epic #$(grep 'github:' .claude/epics/$ARGUMENTS/epic.md | grep -oE '#[0-9]+')"
101
- ```
102
-
103
- ### 5. Handle Merge Conflicts
104
-
105
- If merge fails with conflicts:
106
- ```bash
107
- # Check conflict status
108
- git status
109
-
110
- echo "
111
- ❌ Merge conflicts detected!
112
-
113
- Conflicts in:
114
- $(git diff --name-only --diff-filter=U)
115
-
116
- Options:
117
- 1. Resolve manually:
118
- - Edit conflicted files
119
- - git add {files}
120
- - git commit
121
-
122
- 2. Abort merge:
123
- git merge --abort
124
-
125
- 3. Get help:
126
- /pm:epic-close $ARGUMENTS
127
-
128
- Branch preserved at: epic/$ARGUMENTS
129
- "
130
- exit 1
131
- ```
132
-
133
- ### 6. Post-Merge Cleanup
134
-
135
- If merge succeeds:
136
- ```bash
137
- # Push to remote
138
- git push origin main
139
-
140
- # Delete branch
141
- git branch -d epic/$ARGUMENTS
142
- git push origin --delete epic/$ARGUMENTS 2>/dev/null || true
143
-
144
- # Archive epic locally
145
- mkdir -p .claude/epics/archived/
146
- mv .claude/epics/$ARGUMENTS .claude/epics/archived/
147
- echo "✅ Epic archived: .claude/epics/archived/$ARGUMENTS"
148
- ```
149
-
150
- ### 7. Update GitHub Issues
151
-
152
- Close related issues:
153
- ```bash
154
- # Get issue numbers from epic
155
- epic_issue=$(grep 'github:' .claude/epics/archived/$ARGUMENTS/epic.md | grep -oE '[0-9]+$')
156
-
157
- # Close epic issue
158
- gh issue close $epic_issue -c "Epic completed and merged to main"
159
-
160
- # Close task issues
161
- for task_file in .claude/epics/archived/$ARGUMENTS/[0-9]*.md; do
162
- issue_num=$(grep 'github:' $task_file | grep -oE '[0-9]+$')
163
- if [ ! -z "$issue_num" ]; then
164
- gh issue close $issue_num -c "Completed in epic merge"
165
- fi
166
- done
167
- ```
168
-
169
- ### 8. Final Output
170
-
171
- ```
172
- ✅ Epic Merged Successfully: $ARGUMENTS
173
-
174
- Summary:
175
- Branch: epic/$ARGUMENTS → main
176
- Commits merged: {count}
177
- Files changed: {count}
178
- Issues closed: {count}
179
-
180
- Cleanup completed:
181
- ✓ Worktree removed
182
- ✓ Branch deleted
183
- ✓ Epic archived
184
- ✓ GitHub issues closed
185
-
186
- Next steps:
187
- - Deploy changes if needed
188
- - Start new epic: /pm:prd-new {feature}
189
- - View completed work: git log --oneline -20
190
- ```
191
-
192
- ## Conflict Resolution Help
193
-
194
- If conflicts need resolution:
195
- ```
196
- The epic branch has conflicts with main.
197
-
198
- This typically happens when:
199
- - Main has changed since epic started
200
- - Multiple epics modified same files
201
- - Dependencies were updated
202
-
203
- To resolve:
204
- 1. Open conflicted files
205
- 2. Look for <<<<<<< markers
206
- 3. Choose correct version or combine
207
- 4. Remove conflict markers
208
- 5. git add {resolved files}
209
- 6. git commit
210
- 7. git push
211
-
212
- Or abort and try later:
213
- git merge --abort
214
- ```
215
-
216
- ## Important Notes
217
-
218
- - Always check for uncommitted changes first
219
- - Run tests before merging when possible
220
- - Use --no-ff to preserve epic history
221
- - Archive epic data instead of deleting
222
- - Close GitHub issues to maintain sync