task-o-matic-core 0.1.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 (447) hide show
  1. package/README.md +646 -0
  2. package/dist/index.d.ts +27 -0
  3. package/dist/index.d.ts.map +1 -0
  4. package/dist/index.js +46 -0
  5. package/dist/lib/ai-service/ai-operations.d.ts +45 -0
  6. package/dist/lib/ai-service/ai-operations.d.ts.map +1 -0
  7. package/dist/lib/ai-service/ai-operations.js +60 -0
  8. package/dist/lib/ai-service/base-operations.d.ts +43 -0
  9. package/dist/lib/ai-service/base-operations.d.ts.map +1 -0
  10. package/dist/lib/ai-service/base-operations.js +119 -0
  11. package/dist/lib/ai-service/documentation-operations.d.ts +18 -0
  12. package/dist/lib/ai-service/documentation-operations.d.ts.map +1 -0
  13. package/dist/lib/ai-service/documentation-operations.js +308 -0
  14. package/dist/lib/ai-service/filesystem-tools.d.ts +69 -0
  15. package/dist/lib/ai-service/filesystem-tools.d.ts.map +1 -0
  16. package/dist/lib/ai-service/filesystem-tools.js +70 -0
  17. package/dist/lib/ai-service/json-parser.d.ts +34 -0
  18. package/dist/lib/ai-service/json-parser.d.ts.map +1 -0
  19. package/dist/lib/ai-service/json-parser.js +177 -0
  20. package/dist/lib/ai-service/mcp-client.d.ts +9 -0
  21. package/dist/lib/ai-service/mcp-client.d.ts.map +1 -0
  22. package/dist/lib/ai-service/mcp-client.js +48 -0
  23. package/dist/lib/ai-service/model-provider.d.ts +12 -0
  24. package/dist/lib/ai-service/model-provider.d.ts.map +1 -0
  25. package/dist/lib/ai-service/model-provider.js +146 -0
  26. package/dist/lib/ai-service/prd-operations.d.ts +25 -0
  27. package/dist/lib/ai-service/prd-operations.d.ts.map +1 -0
  28. package/dist/lib/ai-service/prd-operations.js +592 -0
  29. package/dist/lib/ai-service/research-tools.d.ts +4 -0
  30. package/dist/lib/ai-service/research-tools.d.ts.map +1 -0
  31. package/dist/lib/ai-service/research-tools.js +8 -0
  32. package/dist/lib/ai-service/retry-handler.d.ts +8 -0
  33. package/dist/lib/ai-service/retry-handler.d.ts.map +1 -0
  34. package/dist/lib/ai-service/retry-handler.js +63 -0
  35. package/dist/lib/ai-service/task-operations.d.ts +13 -0
  36. package/dist/lib/ai-service/task-operations.d.ts.map +1 -0
  37. package/dist/lib/ai-service/task-operations.js +220 -0
  38. package/dist/lib/benchmark/registry.d.ts +11 -0
  39. package/dist/lib/benchmark/registry.d.ts.map +1 -0
  40. package/dist/lib/benchmark/registry.js +212 -0
  41. package/dist/lib/benchmark/runner.d.ts +6 -0
  42. package/dist/lib/benchmark/runner.d.ts.map +1 -0
  43. package/dist/lib/benchmark/runner.js +150 -0
  44. package/dist/lib/benchmark/storage.d.ts +13 -0
  45. package/dist/lib/benchmark/storage.d.ts.map +1 -0
  46. package/dist/lib/benchmark/storage.js +100 -0
  47. package/dist/lib/benchmark/types.d.ts +104 -0
  48. package/dist/lib/benchmark/types.d.ts.map +1 -0
  49. package/dist/lib/benchmark/types.js +2 -0
  50. package/dist/lib/better-t-stack-cli.d.ts +50 -0
  51. package/dist/lib/better-t-stack-cli.d.ts.map +1 -0
  52. package/dist/lib/better-t-stack-cli.js +428 -0
  53. package/dist/lib/bootstrap/cli-bootstrap.d.ts +14 -0
  54. package/dist/lib/bootstrap/cli-bootstrap.d.ts.map +1 -0
  55. package/dist/lib/bootstrap/cli-bootstrap.js +322 -0
  56. package/dist/lib/bootstrap/index.d.ts +3 -0
  57. package/dist/lib/bootstrap/index.d.ts.map +1 -0
  58. package/dist/lib/bootstrap/index.js +18 -0
  59. package/dist/lib/bootstrap/medusa-bootstrap.d.ts +14 -0
  60. package/dist/lib/bootstrap/medusa-bootstrap.d.ts.map +1 -0
  61. package/dist/lib/bootstrap/medusa-bootstrap.js +215 -0
  62. package/dist/lib/config-validation.d.ts +215 -0
  63. package/dist/lib/config-validation.d.ts.map +1 -0
  64. package/dist/lib/config-validation.js +254 -0
  65. package/dist/lib/config.d.ts +55 -0
  66. package/dist/lib/config.d.ts.map +1 -0
  67. package/dist/lib/config.js +351 -0
  68. package/dist/lib/context-builder.d.ts +66 -0
  69. package/dist/lib/context-builder.d.ts.map +1 -0
  70. package/dist/lib/context-builder.js +322 -0
  71. package/dist/lib/executors/claude-code-executor.d.ts +9 -0
  72. package/dist/lib/executors/claude-code-executor.d.ts.map +1 -0
  73. package/dist/lib/executors/claude-code-executor.js +69 -0
  74. package/dist/lib/executors/codex-executor.d.ts +9 -0
  75. package/dist/lib/executors/codex-executor.d.ts.map +1 -0
  76. package/dist/lib/executors/codex-executor.js +73 -0
  77. package/dist/lib/executors/executor-factory.d.ts +5 -0
  78. package/dist/lib/executors/executor-factory.d.ts.map +1 -0
  79. package/dist/lib/executors/executor-factory.js +27 -0
  80. package/dist/lib/executors/gemini-executor.d.ts +9 -0
  81. package/dist/lib/executors/gemini-executor.d.ts.map +1 -0
  82. package/dist/lib/executors/gemini-executor.js +67 -0
  83. package/dist/lib/executors/kilo-executor.d.ts +9 -0
  84. package/dist/lib/executors/kilo-executor.d.ts.map +1 -0
  85. package/dist/lib/executors/kilo-executor.js +69 -0
  86. package/dist/lib/executors/opencode-executor.d.ts +9 -0
  87. package/dist/lib/executors/opencode-executor.d.ts.map +1 -0
  88. package/dist/lib/executors/opencode-executor.js +67 -0
  89. package/dist/lib/git-utils.d.ts +88 -0
  90. package/dist/lib/git-utils.d.ts.map +1 -0
  91. package/dist/lib/git-utils.js +242 -0
  92. package/dist/lib/hooks.d.ts +73 -0
  93. package/dist/lib/hooks.d.ts.map +1 -0
  94. package/dist/lib/hooks.js +62 -0
  95. package/dist/lib/index.d.ts +100 -0
  96. package/dist/lib/index.d.ts.map +1 -0
  97. package/dist/lib/index.js +143 -0
  98. package/dist/lib/logger.d.ts +20 -0
  99. package/dist/lib/logger.d.ts.map +1 -0
  100. package/dist/lib/logger.js +32 -0
  101. package/dist/lib/notifications.d.ts +7 -0
  102. package/dist/lib/notifications.d.ts.map +1 -0
  103. package/dist/lib/notifications.js +81 -0
  104. package/dist/lib/prompt-builder.d.ts +70 -0
  105. package/dist/lib/prompt-builder.d.ts.map +1 -0
  106. package/dist/lib/prompt-builder.js +344 -0
  107. package/dist/lib/prompt-registry.d.ts +22 -0
  108. package/dist/lib/prompt-registry.d.ts.map +1 -0
  109. package/dist/lib/prompt-registry.js +409 -0
  110. package/dist/lib/provider-defaults.json +32 -0
  111. package/dist/lib/storage/file-system.d.ts +57 -0
  112. package/dist/lib/storage/file-system.d.ts.map +1 -0
  113. package/dist/lib/storage/file-system.js +638 -0
  114. package/dist/lib/storage/storage-callbacks.d.ts +17 -0
  115. package/dist/lib/storage/storage-callbacks.d.ts.map +1 -0
  116. package/dist/lib/storage/storage-callbacks.js +94 -0
  117. package/dist/lib/storage/types.d.ts +43 -0
  118. package/dist/lib/storage/types.d.ts.map +1 -0
  119. package/dist/lib/storage/types.js +2 -0
  120. package/dist/lib/task-execution-core.d.ts +7 -0
  121. package/dist/lib/task-execution-core.d.ts.map +1 -0
  122. package/dist/lib/task-execution-core.js +381 -0
  123. package/dist/lib/task-execution.d.ts +7 -0
  124. package/dist/lib/task-execution.d.ts.map +1 -0
  125. package/dist/lib/task-execution.js +40 -0
  126. package/dist/lib/task-loop-execution.d.ts +7 -0
  127. package/dist/lib/task-loop-execution.d.ts.map +1 -0
  128. package/dist/lib/task-loop-execution.js +156 -0
  129. package/dist/lib/task-planning.d.ts +29 -0
  130. package/dist/lib/task-planning.d.ts.map +1 -0
  131. package/dist/lib/task-planning.js +103 -0
  132. package/dist/lib/task-review.d.ts +27 -0
  133. package/dist/lib/task-review.d.ts.map +1 -0
  134. package/dist/lib/task-review.js +103 -0
  135. package/dist/lib/validation.d.ts +26 -0
  136. package/dist/lib/validation.d.ts.map +1 -0
  137. package/dist/lib/validation.js +98 -0
  138. package/dist/prompts/documentation-detection.d.ts +2 -0
  139. package/dist/prompts/documentation-detection.d.ts.map +1 -0
  140. package/dist/prompts/documentation-detection.js +24 -0
  141. package/dist/prompts/documentation-recap.d.ts +3 -0
  142. package/dist/prompts/documentation-recap.d.ts.map +1 -0
  143. package/dist/prompts/documentation-recap.js +13 -0
  144. package/dist/prompts/index.d.ts +15 -0
  145. package/dist/prompts/index.d.ts.map +1 -0
  146. package/dist/prompts/index.js +30 -0
  147. package/dist/prompts/prd-combination.d.ts +2 -0
  148. package/dist/prompts/prd-combination.d.ts.map +1 -0
  149. package/dist/prompts/prd-combination.js +35 -0
  150. package/dist/prompts/prd-generation.d.ts +2 -0
  151. package/dist/prompts/prd-generation.d.ts.map +1 -0
  152. package/dist/prompts/prd-generation.js +49 -0
  153. package/dist/prompts/prd-parsing.d.ts +3 -0
  154. package/dist/prompts/prd-parsing.d.ts.map +1 -0
  155. package/dist/prompts/prd-parsing.js +172 -0
  156. package/dist/prompts/prd-question-answer.d.ts +3 -0
  157. package/dist/prompts/prd-question-answer.d.ts.map +1 -0
  158. package/dist/prompts/prd-question-answer.js +27 -0
  159. package/dist/prompts/prd-question.d.ts +3 -0
  160. package/dist/prompts/prd-question.d.ts.map +1 -0
  161. package/dist/prompts/prd-question.js +40 -0
  162. package/dist/prompts/prd-rework.d.ts +3 -0
  163. package/dist/prompts/prd-rework.d.ts.map +1 -0
  164. package/dist/prompts/prd-rework.js +81 -0
  165. package/dist/prompts/prd-suggest-stack.d.ts +3 -0
  166. package/dist/prompts/prd-suggest-stack.d.ts.map +1 -0
  167. package/dist/prompts/prd-suggest-stack.js +99 -0
  168. package/dist/prompts/task-breakdown.d.ts +3 -0
  169. package/dist/prompts/task-breakdown.d.ts.map +1 -0
  170. package/dist/prompts/task-breakdown.js +151 -0
  171. package/dist/prompts/task-enhancement.d.ts +3 -0
  172. package/dist/prompts/task-enhancement.d.ts.map +1 -0
  173. package/dist/prompts/task-enhancement.js +140 -0
  174. package/dist/prompts/task-execution.d.ts +3 -0
  175. package/dist/prompts/task-execution.d.ts.map +1 -0
  176. package/dist/prompts/task-execution.js +24 -0
  177. package/dist/prompts/task-planning.d.ts +3 -0
  178. package/dist/prompts/task-planning.d.ts.map +1 -0
  179. package/dist/prompts/task-planning.js +66 -0
  180. package/dist/prompts/workflow-assistance.d.ts +32 -0
  181. package/dist/prompts/workflow-assistance.d.ts.map +1 -0
  182. package/dist/prompts/workflow-assistance.js +130 -0
  183. package/dist/prompts/workflow-prompts.d.ts +9 -0
  184. package/dist/prompts/workflow-prompts.d.ts.map +1 -0
  185. package/dist/prompts/workflow-prompts.js +93 -0
  186. package/dist/services/benchmark.d.ts +26 -0
  187. package/dist/services/benchmark.d.ts.map +1 -0
  188. package/dist/services/benchmark.js +343 -0
  189. package/dist/services/prd.d.ts +136 -0
  190. package/dist/services/prd.d.ts.map +1 -0
  191. package/dist/services/prd.js +550 -0
  192. package/dist/services/tasks.d.ts +388 -0
  193. package/dist/services/tasks.d.ts.map +1 -0
  194. package/dist/services/tasks.js +1150 -0
  195. package/dist/services/workflow-ai-assistant.d.ts +74 -0
  196. package/dist/services/workflow-ai-assistant.d.ts.map +1 -0
  197. package/dist/services/workflow-ai-assistant.js +175 -0
  198. package/dist/services/workflow-benchmark.d.ts +34 -0
  199. package/dist/services/workflow-benchmark.d.ts.map +1 -0
  200. package/dist/services/workflow-benchmark.js +318 -0
  201. package/dist/services/workflow.d.ts +107 -0
  202. package/dist/services/workflow.d.ts.map +1 -0
  203. package/dist/services/workflow.js +580 -0
  204. package/dist/test/hooks.test.d.ts +2 -0
  205. package/dist/test/hooks.test.d.ts.map +1 -0
  206. package/dist/test/hooks.test.js +67 -0
  207. package/dist/test/integration/callbacks.test.d.ts +2 -0
  208. package/dist/test/integration/callbacks.test.d.ts.map +1 -0
  209. package/dist/test/integration/callbacks.test.js +64 -0
  210. package/dist/test/lib/ai-service/task-operations.test.d.ts +2 -0
  211. package/dist/test/lib/ai-service/task-operations.test.d.ts.map +1 -0
  212. package/dist/test/lib/ai-service/task-operations.test.js +362 -0
  213. package/dist/test/lib/config.test.d.ts +2 -0
  214. package/dist/test/lib/config.test.d.ts.map +1 -0
  215. package/dist/test/lib/config.test.js +128 -0
  216. package/dist/test/lib/git-utils.test.d.ts +2 -0
  217. package/dist/test/lib/git-utils.test.d.ts.map +1 -0
  218. package/dist/test/lib/git-utils.test.js +168 -0
  219. package/dist/test/mocks/mock-ai-operations.d.ts +15 -0
  220. package/dist/test/mocks/mock-ai-operations.d.ts.map +1 -0
  221. package/dist/test/mocks/mock-ai-operations.js +107 -0
  222. package/dist/test/mocks/mock-context-builder.d.ts +10 -0
  223. package/dist/test/mocks/mock-context-builder.d.ts.map +1 -0
  224. package/dist/test/mocks/mock-context-builder.js +81 -0
  225. package/dist/test/mocks/mock-model-provider.d.ts +7 -0
  226. package/dist/test/mocks/mock-model-provider.d.ts.map +1 -0
  227. package/dist/test/mocks/mock-model-provider.js +21 -0
  228. package/dist/test/mocks/mock-service-factory.d.ts +11 -0
  229. package/dist/test/mocks/mock-service-factory.d.ts.map +1 -0
  230. package/dist/test/mocks/mock-service-factory.js +61 -0
  231. package/dist/test/mocks/mock-storage.d.ts +50 -0
  232. package/dist/test/mocks/mock-storage.d.ts.map +1 -0
  233. package/dist/test/mocks/mock-storage.js +145 -0
  234. package/dist/test/model-parsing.test.d.ts +2 -0
  235. package/dist/test/model-parsing.test.d.ts.map +1 -0
  236. package/dist/test/model-parsing.test.js +73 -0
  237. package/dist/test/services/task-service.test.d.ts +2 -0
  238. package/dist/test/services/task-service.test.d.ts.map +1 -0
  239. package/dist/test/services/task-service.test.js +459 -0
  240. package/dist/test/storage.test.d.ts +2 -0
  241. package/dist/test/storage.test.d.ts.map +1 -0
  242. package/dist/test/storage.test.js +207 -0
  243. package/dist/test/task-loop-git.test.d.ts +2 -0
  244. package/dist/test/task-loop-git.test.d.ts.map +1 -0
  245. package/dist/test/task-loop-git.test.js +95 -0
  246. package/dist/test/test-mock-setup.d.ts +26 -0
  247. package/dist/test/test-mock-setup.d.ts.map +1 -0
  248. package/dist/test/test-mock-setup.js +41 -0
  249. package/dist/test/test-setup.d.ts +9 -0
  250. package/dist/test/test-setup.d.ts.map +1 -0
  251. package/dist/test/test-setup.js +44 -0
  252. package/dist/test/test-utils.d.ts +22 -0
  253. package/dist/test/test-utils.d.ts.map +1 -0
  254. package/dist/test/test-utils.js +37 -0
  255. package/dist/test/utils/ai-operation-utility.test.d.ts +2 -0
  256. package/dist/test/utils/ai-operation-utility.test.d.ts.map +1 -0
  257. package/dist/test/utils/ai-operation-utility.test.js +290 -0
  258. package/dist/test/utils/error-handling.test.d.ts +2 -0
  259. package/dist/test/utils/error-handling.test.d.ts.map +1 -0
  260. package/dist/test/utils/error-handling.test.js +231 -0
  261. package/dist/test/utils/file-utils.test.d.ts +2 -0
  262. package/dist/test/utils/file-utils.test.d.ts.map +1 -0
  263. package/dist/test/utils/file-utils.test.js +76 -0
  264. package/dist/test/utils/id-generator.test.d.ts +2 -0
  265. package/dist/test/utils/id-generator.test.d.ts.map +1 -0
  266. package/dist/test/utils/id-generator.test.js +41 -0
  267. package/dist/test/utils/model-parser.test.d.ts +2 -0
  268. package/dist/test/utils/model-parser.test.d.ts.map +1 -0
  269. package/dist/test/utils/model-parser.test.js +65 -0
  270. package/dist/test/validation.test.d.ts +2 -0
  271. package/dist/test/validation.test.d.ts.map +1 -0
  272. package/dist/test/validation.test.js +22 -0
  273. package/dist/types/callbacks.d.ts +30 -0
  274. package/dist/types/callbacks.d.ts.map +1 -0
  275. package/dist/types/callbacks.js +2 -0
  276. package/dist/types/index.d.ts +435 -0
  277. package/dist/types/index.d.ts.map +1 -0
  278. package/dist/types/index.js +30 -0
  279. package/dist/types/mcp.d.ts +3 -0
  280. package/dist/types/mcp.d.ts.map +1 -0
  281. package/dist/types/mcp.js +3 -0
  282. package/dist/types/options.d.ts +112 -0
  283. package/dist/types/options.d.ts.map +1 -0
  284. package/dist/types/options.js +2 -0
  285. package/dist/types/results.d.ts +200 -0
  286. package/dist/types/results.d.ts.map +1 -0
  287. package/dist/types/results.js +2 -0
  288. package/dist/types/workflow-options.d.ts +82 -0
  289. package/dist/types/workflow-options.d.ts.map +1 -0
  290. package/dist/types/workflow-options.js +2 -0
  291. package/dist/types/workflow-results.d.ts +82 -0
  292. package/dist/types/workflow-results.d.ts.map +1 -0
  293. package/dist/types/workflow-results.js +2 -0
  294. package/dist/utils/ai-config-builder.d.ts +14 -0
  295. package/dist/utils/ai-config-builder.d.ts.map +1 -0
  296. package/dist/utils/ai-config-builder.js +22 -0
  297. package/dist/utils/ai-operation-utility.d.ts +142 -0
  298. package/dist/utils/ai-operation-utility.d.ts.map +1 -0
  299. package/dist/utils/ai-operation-utility.js +303 -0
  300. package/dist/utils/ai-service-factory.d.ts +34 -0
  301. package/dist/utils/ai-service-factory.d.ts.map +1 -0
  302. package/dist/utils/ai-service-factory.js +99 -0
  303. package/dist/utils/error-utils.d.ts +70 -0
  304. package/dist/utils/error-utils.d.ts.map +1 -0
  305. package/dist/utils/error-utils.js +104 -0
  306. package/dist/utils/file-utils.d.ts +107 -0
  307. package/dist/utils/file-utils.d.ts.map +1 -0
  308. package/dist/utils/file-utils.js +171 -0
  309. package/dist/utils/id-generator.d.ts +92 -0
  310. package/dist/utils/id-generator.d.ts.map +1 -0
  311. package/dist/utils/id-generator.js +146 -0
  312. package/dist/utils/metadata-utils.d.ts +40 -0
  313. package/dist/utils/metadata-utils.d.ts.map +1 -0
  314. package/dist/utils/metadata-utils.js +43 -0
  315. package/dist/utils/model-executor-parser.d.ts +38 -0
  316. package/dist/utils/model-executor-parser.d.ts.map +1 -0
  317. package/dist/utils/model-executor-parser.js +69 -0
  318. package/dist/utils/model-parser.d.ts +6 -0
  319. package/dist/utils/model-parser.d.ts.map +1 -0
  320. package/dist/utils/model-parser.js +49 -0
  321. package/dist/utils/stack-formatter.d.ts +12 -0
  322. package/dist/utils/stack-formatter.d.ts.map +1 -0
  323. package/dist/utils/stack-formatter.js +36 -0
  324. package/dist/utils/storage-utils.d.ts +49 -0
  325. package/dist/utils/storage-utils.d.ts.map +1 -0
  326. package/dist/utils/storage-utils.js +80 -0
  327. package/dist/utils/streaming-utils.d.ts +38 -0
  328. package/dist/utils/streaming-utils.d.ts.map +1 -0
  329. package/dist/utils/streaming-utils.js +64 -0
  330. package/dist/utils/task-o-matic-error.d.ts +206 -0
  331. package/dist/utils/task-o-matic-error.d.ts.map +1 -0
  332. package/dist/utils/task-o-matic-error.js +304 -0
  333. package/package.json +40 -0
  334. package/src/index.ts +36 -0
  335. package/src/lib/ai-service/ai-operations.ts +310 -0
  336. package/src/lib/ai-service/base-operations.ts +139 -0
  337. package/src/lib/ai-service/documentation-operations.ts +438 -0
  338. package/src/lib/ai-service/filesystem-tools.ts +73 -0
  339. package/src/lib/ai-service/gemini-proxy.ts.bak +52 -0
  340. package/src/lib/ai-service/json-parser.ts +203 -0
  341. package/src/lib/ai-service/mcp-client.ts +54 -0
  342. package/src/lib/ai-service/model-provider.ts +192 -0
  343. package/src/lib/ai-service/prd-operations.ts +854 -0
  344. package/src/lib/ai-service/research-tools.ts +207 -0
  345. package/src/lib/ai-service/retry-handler.ts +89 -0
  346. package/src/lib/ai-service/task-operations.ts +342 -0
  347. package/src/lib/benchmark/registry.ts +307 -0
  348. package/src/lib/benchmark/runner.ts +190 -0
  349. package/src/lib/benchmark/storage.ts +140 -0
  350. package/src/lib/benchmark/types.ts +121 -0
  351. package/src/lib/better-t-stack-cli.ts +524 -0
  352. package/src/lib/bootstrap/cli-bootstrap.ts +397 -0
  353. package/src/lib/bootstrap/index.ts +2 -0
  354. package/src/lib/bootstrap/medusa-bootstrap.ts +261 -0
  355. package/src/lib/config-validation.ts +278 -0
  356. package/src/lib/config.ts +435 -0
  357. package/src/lib/context-builder.ts +383 -0
  358. package/src/lib/executors/claude-code-executor.ts +83 -0
  359. package/src/lib/executors/codex-executor.ts +85 -0
  360. package/src/lib/executors/executor-factory.ts +28 -0
  361. package/src/lib/executors/gemini-executor.ts +80 -0
  362. package/src/lib/executors/kilo-executor.ts +83 -0
  363. package/src/lib/executors/opencode-executor.ts +81 -0
  364. package/src/lib/git-utils.ts +334 -0
  365. package/src/lib/hooks.ts +121 -0
  366. package/src/lib/index.ts +166 -0
  367. package/src/lib/logger.ts +43 -0
  368. package/src/lib/notifications.ts +103 -0
  369. package/src/lib/prompt-builder.ts +471 -0
  370. package/src/lib/prompt-registry.ts +491 -0
  371. package/src/lib/provider-defaults.json +32 -0
  372. package/src/lib/storage/file-system.ts +864 -0
  373. package/src/lib/storage/storage-callbacks.ts +120 -0
  374. package/src/lib/storage/types.ts +58 -0
  375. package/src/lib/task-execution-core.ts +591 -0
  376. package/src/lib/task-execution.ts +59 -0
  377. package/src/lib/task-loop-execution.ts +214 -0
  378. package/src/lib/task-planning.ts +157 -0
  379. package/src/lib/task-review.ts +138 -0
  380. package/src/lib/validation.ts +140 -0
  381. package/src/prompts/documentation-detection.ts +21 -0
  382. package/src/prompts/documentation-recap.ts +11 -0
  383. package/src/prompts/index.ts +14 -0
  384. package/src/prompts/prd-combination.ts +32 -0
  385. package/src/prompts/prd-generation.ts +46 -0
  386. package/src/prompts/prd-parsing.ts +170 -0
  387. package/src/prompts/prd-question-answer.ts +25 -0
  388. package/src/prompts/prd-question.ts +38 -0
  389. package/src/prompts/prd-rework.ts +79 -0
  390. package/src/prompts/prd-suggest-stack.ts +97 -0
  391. package/src/prompts/task-breakdown.ts +149 -0
  392. package/src/prompts/task-enhancement.ts +138 -0
  393. package/src/prompts/task-execution.ts +22 -0
  394. package/src/prompts/task-planning.ts +64 -0
  395. package/src/prompts/workflow-assistance.ts +151 -0
  396. package/src/prompts/workflow-prompts.ts +97 -0
  397. package/src/services/benchmark.ts +433 -0
  398. package/src/services/prd.ts +845 -0
  399. package/src/services/tasks.ts +1515 -0
  400. package/src/services/workflow-ai-assistant.ts +298 -0
  401. package/src/services/workflow-benchmark.ts +339 -0
  402. package/src/services/workflow.ts +779 -0
  403. package/src/test/hooks.test.ts +77 -0
  404. package/src/test/integration/callbacks.test.ts +39 -0
  405. package/src/test/lib/ai-service/task-operations.test.ts +430 -0
  406. package/src/test/lib/config.test.ts +150 -0
  407. package/src/test/lib/git-utils.test.ts +198 -0
  408. package/src/test/mocks/mock-ai-operations.ts +205 -0
  409. package/src/test/mocks/mock-context-builder.ts +84 -0
  410. package/src/test/mocks/mock-model-provider.ts +21 -0
  411. package/src/test/mocks/mock-service-factory.ts +64 -0
  412. package/src/test/mocks/mock-storage.ts +204 -0
  413. package/src/test/model-parsing.test.ts +78 -0
  414. package/src/test/services/task-service.test.ts +551 -0
  415. package/src/test/storage.test.ts +206 -0
  416. package/src/test/task-loop-git.test.ts +142 -0
  417. package/src/test/test-mock-setup.ts +46 -0
  418. package/src/test/test-setup.ts +48 -0
  419. package/src/test/test-utils.ts +45 -0
  420. package/src/test/utils/ai-operation-utility.test.ts +306 -0
  421. package/src/test/utils/error-handling.test.ts +241 -0
  422. package/src/test/utils/file-utils.test.ts +80 -0
  423. package/src/test/utils/id-generator.test.ts +44 -0
  424. package/src/test/utils/model-parser.test.ts +67 -0
  425. package/src/test/validation.test.ts +19 -0
  426. package/src/types/callbacks.ts +14 -0
  427. package/src/types/index.ts +628 -0
  428. package/src/types/mcp.ts +5 -0
  429. package/src/types/options.ts +165 -0
  430. package/src/types/results.ts +216 -0
  431. package/src/types/workflow-options.ts +113 -0
  432. package/src/types/workflow-results.ts +87 -0
  433. package/src/utils/ai-config-builder.ts +33 -0
  434. package/src/utils/ai-operation-utility.ts +380 -0
  435. package/src/utils/ai-service-factory.ts +125 -0
  436. package/src/utils/error-utils.ts +124 -0
  437. package/src/utils/file-utils.ts +197 -0
  438. package/src/utils/id-generator.ts +168 -0
  439. package/src/utils/metadata-utils.ts +48 -0
  440. package/src/utils/model-executor-parser.ts +80 -0
  441. package/src/utils/model-parser.ts +58 -0
  442. package/src/utils/stack-formatter.ts +53 -0
  443. package/src/utils/storage-utils.ts +94 -0
  444. package/src/utils/streaming-utils.ts +91 -0
  445. package/src/utils/task-o-matic-error.ts +393 -0
  446. package/tsconfig.json +20 -0
  447. package/tsconfig.tsbuildinfo +1 -0
@@ -0,0 +1,32 @@
1
+ export const PRD_COMBINATION_SYSTEM_PROMPT = `You are a Senior Product Lead tasked with synthesizing multiple Product Requirements Documents (PRDs) into a single, master PRD.
2
+
3
+ You will be provided with:
4
+ 1. The original product description.
5
+ 2. Multiple PRDs generated by different AI models.
6
+
7
+ Your goal is to create the "Best of Breed" Master PRD.
8
+
9
+ Process:
10
+ 1. Analyze all input PRDs.
11
+ 2. Identify the strongest points, most detailed features, and best technical architectural decisions from each.
12
+ 3. Resolve any conflicts by choosing the most robust and feasible option.
13
+ 4. Merge them into a single, cohesive document following the standard PRD structure.
14
+
15
+ Structure the Master PRD as follows:
16
+
17
+ # Master Product Requirements Document
18
+
19
+ ## 1. Overview
20
+ ## 2. Objectives
21
+ ## 3. Target Audience
22
+ ## 4. Features (MVP & Future)
23
+ ## 5. Technical Requirements
24
+ ## 6. Timeline & Milestones
25
+ ## 7. Open Questions / Risks
26
+
27
+ Guidelines:
28
+ - Do not simply concatenate the documents. Synthesize them.
29
+ - If one PRD has a better database schema and another has better UI/UX flows, combine them.
30
+ - Maintain a consistent tone and voice.
31
+ - Ensure the final document is self-contained and complete.
32
+ `;
@@ -0,0 +1,46 @@
1
+ export const PRD_GENERATION_SYSTEM_PROMPT = `You are an expert Product Manager and Technical Architect. Your goal is to create a comprehensive Product Requirements Document (PRD) based on the user's description.
2
+
3
+ The PRD should be detailed, actionable, and structured in Markdown.
4
+
5
+ Structure the PRD with the following sections:
6
+
7
+ # Product Requirements Document
8
+
9
+ ## 1. Overview
10
+ - Executive summary of the product
11
+ - Problem statement
12
+ - Value proposition
13
+
14
+ ## 2. Objectives
15
+ - Key goals (Business & Technical)
16
+ - Success metrics (KPIs)
17
+
18
+ ## 3. Target Audience
19
+ - User personas
20
+ - User stories
21
+
22
+ ## 4. Features
23
+ ### 4.1 Core Features (MVP)
24
+ - Detailed description of essential features
25
+ - Acceptance criteria for each
26
+
27
+ ### 4.2 Future Features (Post-MVP)
28
+ - Nice-to-have features for later iterations
29
+
30
+ ## 5. Technical Requirements
31
+ - Tech stack recommendations (Frontend, Backend, Database, etc.)
32
+ - System architecture overview
33
+ - Security and Performance requirements
34
+
35
+ ## 6. Timeline & Milestones
36
+ - Rough estimation of phases
37
+
38
+ ## 7. Open Questions / Risks
39
+ - Any ambiguities or potential blockers
40
+
41
+ Guidelines:
42
+ - Be specific and avoid vague language.
43
+ - Use professional technical terminology.
44
+ - Focus on feasibility and clarity.
45
+ - If the user provides specific technical constraints, adhere to them strictly.
46
+ `;
@@ -0,0 +1,170 @@
1
+ export const PRD_PARSING_PROMPT = `
2
+ You are an AI assistant specialized in analyzing Product Requirements Documents (PRDs) and generating a structured, logically ordered, dependency-aware and sequenced list of development phases in JSON format.
3
+
4
+ ## 🏗️ IMPORTANT: PROJECT INFRASTRUCTURE IS READY
5
+ This project is **already bootstrapped and configured**. The foundation is complete and ready for development. **DO NOT** create tasks for setting up the basic infrastructure.
6
+
7
+ Analyze the provided PRD content and generate an appropriate number of top-level development phases. Each phase should represent 1-3 weeks of focused development work and focus on the most direct and effective way to implement the requirements without unnecessary complexity or overengineering.
8
+
9
+ If the complexity or the level of detail of the PRD is high, generate more phases relative to the complexity of the PRD. Let the PRD content determine the appropriate number of phases - there is no fixed target.
10
+
11
+ ## CRITICAL: Task ID and Dependency Format
12
+ You MUST generate unique task IDs and reference them properly in dependencies:
13
+
14
+ 1. **Task ID Generation**:
15
+ - Each task must have an "id" field with simple numeric format: "1", "2", "3", etc.
16
+ - IDs must be sequential starting from "1"
17
+ - Each task ID must be unique
18
+ - NO prefixes like "task-" - use simple numbers only
19
+
20
+ 2. **Dependency References**:
21
+ - Dependencies MUST reference the exact task IDs (not titles)
22
+ - Use format: ["1", "2", "3"]
23
+ - NEVER use task titles in dependencies
24
+ - Only reference tasks that appear EARLIER in the list
25
+ - Ensure all dependency references are valid
26
+
27
+ ## 📋 Phase Sizing (1-3 WEEKS per phase):
28
+ - **Small**: 1 week (5-7 days) - Focused module with clear boundaries
29
+ - **Medium**: 2 weeks (8-12 days) - Complex feature with multiple components
30
+ - **Large**: 3 weeks (13-15 days) - Major system with integrations and polish
31
+
32
+ ## 🎯 PHASE EXAMPLES (1-3 WEEKS EACH):
33
+ ✅ "User Authentication & Profile Management" - Complete user system with registration, login, profiles, and security
34
+ ✅ "Interactive Map & Location Services" - Full mapping functionality with search, geolocation, and place markers
35
+ ✅ "Rating & Review System" - Complete rating workflow with reviews, scores, and moderation
36
+ ✅ "Content Management System" - Full CRUD system for managing content with validation and permissions
37
+
38
+ ## ❌ FORBIDDEN MICRO-TASKS (THESE ARE IMPLEMENTATION DETAILS, NOT PHASES):
39
+ - "Implement API endpoint" (this is a planning step)
40
+ - "Build UI component" (this is a planning step)
41
+ - "Create database schema" (this is a planning step)
42
+ - "Setup authentication" (this is part of a larger phase)
43
+
44
+ ## ✅ Guidelines:
45
+ 1. Create an appropriate number of phases based on PRD complexity
46
+ 2. Each phase should be atomic and focused on a major feature area
47
+ 3. Order phases logically - consider dependencies and implementation sequence
48
+ 4. Early phases should focus on foundation and core functionality first, then advanced features
49
+ 5. Include clear technical considerations for each phase
50
+ 6. Set appropriate dependency IDs (a phase can only depend on phases with lower IDs)
51
+ 7. Assign effort based on the scope and complexity of work involved
52
+ 8. Include detailed implementation guidance in the description
53
+ 9. If the PRD contains specific requirements for libraries, frameworks, or tech stacks, STRICTLY ADHERE to these requirements
54
+ 10. Focus on filling in any gaps left by the PRD while preserving all explicit requirements
55
+ 11. Always aim to provide the most direct path to implementation, avoiding over-engineering
56
+
57
+ ## ✅ Dependency Validation Rules:
58
+ - Task "1" must have no dependencies (it's the first task)
59
+ - Task N can only depend on tasks 1 through (N-1)
60
+ - No circular dependencies allowed
61
+ - No forward references
62
+ - Every task must have a unique sequential ID
63
+
64
+ Format your response as JSON:
65
+ {
66
+ "tasks": [
67
+ {
68
+ "id": "1",
69
+ "title": "User Authentication & Security System",
70
+ "description": "Implement complete user authentication system including registration, login/logout, password reset, session management, security measures, and user profile functionality with proper validation and error handling",
71
+ "effort": "medium",
72
+ "dependencies": [],
73
+ "technicalConsiderations": "Leverage existing Better-Auth integration and Convex backend for secure user management"
74
+ },
75
+ {
76
+ "id": "2",
77
+ "title": "Core Business Data Management",
78
+ "description": "Set up database schemas, models, and business logic for the main application entities including data validation, relationships, and core CRUD operations",
79
+ "effort": "medium",
80
+ "dependencies": ["1"],
81
+ "technicalConsiderations": "Design efficient Convex schemas with proper indexing and relationships"
82
+ }
83
+ ]
84
+ }
85
+
86
+ ## Technology Stack
87
+ {STACK_INFO}
88
+
89
+ PRD to parse:
90
+ {PRD_CONTENT}
91
+ `;
92
+
93
+ export const PRD_PARSING_SYSTEM_PROMPT = `
94
+ You are an AI assistant specialized in analyzing Product Requirements Documents (PRDs) and generating a structured, logically ordered, dependency-aware and sequenced list of development phases in JSON format.
95
+
96
+ ## CRITICAL INSTRUCTION: Create Appropriate-Sized Phases
97
+ You MUST generate development phases that represent 1-3 weeks of focused work each. The number of phases should be determined by the PRD complexity, not by arbitrary targets.
98
+
99
+ ## CRITICAL INSTRUCTION: Task ID Generation and Dependencies
100
+ You MUST generate unique task IDs and use them for dependencies:
101
+
102
+ 1. **Generate Task IDs**:
103
+ - Each task needs an "id" field: "1", "2", "3", etc.
104
+ - IDs must be sequential and unique
105
+ - Start with "1"
106
+ - NO prefixes like "task-" - use simple numbers only
107
+
108
+ 2. **Dependency References**:
109
+ - Use the exact task IDs in dependencies arrays
110
+ - NEVER use task titles
111
+ - Only reference earlier tasks (lower numbers)
112
+ - Validate that all dependency references exist
113
+
114
+ 3. **Required Fields for Each Task**:
115
+ - id: "N" format (required)
116
+ - title: string (required)
117
+ - description: string (required)
118
+ - effort: "small"|"medium"|"large" (required - based on 1-3 week duration)
119
+ - dependencies: array of task IDs (required)
120
+ - technicalConsiderations: string (optional)
121
+
122
+ ## Phase Analysis Guidelines:
123
+ 1. **Scope Appropriately**: Each phase should represent 1-3 weeks of substantial development work
124
+ 2. **Business-Focused**: Phase titles should reflect business value and user-facing features
125
+ 3. **Logical Sequencing**: Order phases based on dependencies and implementation priorities
126
+ 4. **Complexity-Based**: More complex PRDs should result in more phases, simpler PRDs in fewer phases
127
+ 5. **Direct Implementation**: Focus on the most direct path to implementing requirements
128
+
129
+ ## FORBIDDEN MICRO-TASKS (DO NOT CREATE):
130
+ - Individual API endpoints, UI components, database schemas
131
+ - Technical implementation details that belong in planning
132
+ - Tasks that take less than 1 week to complete
133
+
134
+ ## REQUIRED PHASE EXAMPLES (1-3 WEEKS EACH):
135
+ - "User Authentication & Profile Management" → Complete user system
136
+ - "Interactive Map & Location Services" → Full mapping functionality
137
+ - "Rating & Review System" → Complete rating workflow
138
+ - "Content Management System" → Full CRUD for content
139
+
140
+ ## Dependency Validation Rules:
141
+ - Task "1" MUST have empty dependencies array: []
142
+ - Task N can only reference tasks 1 through (N-1)
143
+ - No circular dependencies
144
+ - No forward references
145
+ - All dependency references must be valid task IDs
146
+ - Every task must have a unique sequential ID
147
+ - Verify all referenced IDs exist in the tasks array
148
+
149
+ ## Quality Standards:
150
+ - Each phase should be atomic and focused on a major feature area
151
+ - Include detailed implementation guidance in descriptions
152
+ - Consider the existing technology stack and infrastructure
153
+ - Ensure phases build upon each other logically
154
+ - Focus on business value and user-facing outcomes
155
+
156
+ ## Output Validation:
157
+ Before returning your response, verify:
158
+ 1. Every task represents 1-3 weeks of substantial work
159
+ 2. Tasks are major phases, not implementation details
160
+ 3. Every task has a unique sequential ID ("1", "2", "3", etc.)
161
+ 4. All dependency arrays contain valid task IDs (not titles)
162
+ 5. No task depends on itself or a later task
163
+ 6. Task "1" has no dependencies
164
+ 7. All referenced task IDs exist in the tasks array
165
+ 8. JSON structure is valid and parseable
166
+ 9. All required fields are present for each task
167
+ 10. The number of tasks is appropriate for the PRD complexity
168
+
169
+ Return only valid JSON that can be parsed. Ensure all required fields are present and properly formatted.
170
+ `;
@@ -0,0 +1,25 @@
1
+ export const PRD_QUESTION_ANSWER_PROMPT = `You are a product expert helping to clarify a PRD.
2
+
3
+ PRD Content:
4
+ {PRD_CONTENT}{CONTEXT_TEXT}
5
+
6
+ Please answer the following questions based on the PRD and context:
7
+
8
+ {QUESTIONS_TEXT}
9
+
10
+ Provide thoughtful, specific answers that will help refine the PRD.
11
+ Format your response as JSON with the following structure:
12
+ {
13
+ "answers": {
14
+ "1": "answer to question 1",
15
+ "2": "answer to question 2",
16
+ ...
17
+ }
18
+ }`;
19
+
20
+ export const PRD_QUESTION_ANSWER_SYSTEM_PROMPT = `You are a product expert analyzing PRDs and answering clarifying questions.
21
+ Your answers should be:
22
+ - Specific and actionable
23
+ - Based on the PRD content and project context
24
+ - Helpful for refining the PRD
25
+ - Formatted as JSON`;
@@ -0,0 +1,38 @@
1
+ export const PRD_QUESTION_PROMPT = `
2
+ Analyze this PRD and generate meaningful clarifying questions to help improve its quality and completeness.
3
+
4
+ ## Current PRD:
5
+ {PRD_CONTENT}
6
+
7
+ ## Project Technology Stack:
8
+ {STACK_INFO}
9
+
10
+ Identify ambiguities, missing requirements, technical gaps, or potential conflicts.
11
+ Focus on questions that will help:
12
+ - Clarify user intent
13
+ - Define edge cases
14
+ - Specify technical implementation details aligned with the stack
15
+ - Resolve potential architectural issues
16
+
17
+ Return a JSON object with a "questions" array, where each item is a string containing a question.
18
+ `;
19
+
20
+ export const PRD_QUESTION_SYSTEM_PROMPT = `
21
+ You are an expert Product Manager and Technical Architect. Your goal is to analyze Product Requirements Documents (PRDs) and ask insightful questions to clarify requirements and ensure technical feasibility.
22
+
23
+ Output Format:
24
+ You must return a valid JSON object with the following structure:
25
+ {
26
+ "questions": [
27
+ "Question 1?",
28
+ "Question 2?",
29
+ ...
30
+ ]
31
+ }
32
+
33
+ Guidelines:
34
+ 1. Ask 3-5 most critical questions. Do not overwhelm the user.
35
+ 2. Focus on "what" and "why" rather than "how" unless it affects feasibility.
36
+ 3. Be specific and reference parts of the PRD.
37
+ 4. Consider the technology stack constraints.
38
+ `;
@@ -0,0 +1,79 @@
1
+ export const PRD_REWORK_PROMPT = `
2
+ Improve this PRD based on the following feedback and the existing project technology stack:
3
+
4
+ ## User Feedback:
5
+ {USER_FEEDBACK}
6
+
7
+ ## Project Technology Stack:
8
+ {STACK_INFO}
9
+
10
+ ## Current PRD:
11
+ {PRD_CONTENT}
12
+
13
+ Provide an improved version of the PRD that:
14
+ - Addresses all the feedback points
15
+ - Maintains the core requirements and structure
16
+ - Improves clarity and completeness
17
+ - Fills in any gaps identified by the feedback
18
+ - Enhances technical specifications to align with the existing stack
19
+ - Maintains professional tone and formatting
20
+ - Leverages the existing technology stack capabilities
21
+ - Considers project structure and architecture patterns
22
+ - Ensures requirements are implementable with the current tools and frameworks
23
+
24
+ ## Stack-Aware Considerations:
25
+ - Align technical requirements with the existing technology stack
26
+ - Consider authentication system capabilities and patterns
27
+ - Leverage database/ORM setup for data requirements
28
+ - Utilize addon capabilities where relevant
29
+ - Ensure compatibility with the current project architecture
30
+ - Consider package manager and deployment constraints
31
+
32
+ Focus on making the PRD more actionable and comprehensive while preserving the original intent and ensuring it's well-suited for the existing technology stack.
33
+ `;
34
+
35
+ export const PRD_REWORK_SYSTEM_PROMPT = `
36
+ You are an expert product manager and technical writer with deep expertise in modern web development stacks. Your role is to improve Product Requirements Documents based on user feedback while ensuring alignment with the existing project technology stack.
37
+
38
+ ## Stack-Aware Improvement Guidelines:
39
+
40
+ ### 1. **Feedback Integration**
41
+ - Address all feedback points thoroughly and specifically
42
+ - Ensure improvements don't conflict with existing architecture
43
+ - Maintain the original document's structure and intent
44
+
45
+ ### 2. **Technical Stack Alignment**
46
+ - Enhance technical specifications to match the existing stack capabilities
47
+ - Ensure requirements are implementable with current tools and frameworks
48
+ - Leverage existing patterns and conventions in the stack
49
+ - Consider limitations and constraints of the current technology choices
50
+
51
+ ### 3. **Architecture Considerations**
52
+ - Align with project structure and organization patterns
53
+ - Consider authentication, database, and deployment patterns
54
+ - Ensure compatibility with existing integrations and addons
55
+ - Maintain consistency with established development workflows
56
+
57
+ ### 4. **Quality Enhancement**
58
+ - Enhance clarity and completeness with stack-specific details
59
+ - Add missing technical details where appropriate
60
+ - Improve formatting and organization
61
+ - Ensure all requirements are actionable and testable
62
+ - Maintain professional documentation standards
63
+
64
+ ### 5. **Implementation Feasibility**
65
+ - Preserve the core scope and objectives
66
+ - Ensure requirements are realistic for the current stack
67
+ - Consider development effort and complexity
68
+ - Account for existing infrastructure and tooling
69
+
70
+ ## Stack-Specific Focus Areas:
71
+ - Frontend framework patterns and capabilities
72
+ - Backend API and service architecture
73
+ - Authentication and authorization flows
74
+ - Data modeling and persistence patterns
75
+ - Deployment and operational considerations
76
+ - Integration with existing addons and tools
77
+
78
+ Return the improved PRD in a well-structured format that's ready for development teams working within the specified technology stack.
79
+ `;
@@ -0,0 +1,97 @@
1
+ export const PRD_SUGGEST_STACK_SYSTEM_PROMPT = `You are an expert Software Architect specializing in modern full-stack development. Your goal is to analyze a Product Requirements Document (PRD) and suggest the optimal technology stack using the Better-T-Stack framework.
2
+
3
+ You must respond with valid JSON only. No markdown, no explanations outside the JSON structure.
4
+
5
+ Response Format:
6
+ {
7
+ "config": {
8
+ "projectName": "string (kebab-case)",
9
+ "frontend": "string or string[] for multiple",
10
+ "backend": "string",
11
+ "database": "string",
12
+ "orm": "string",
13
+ "api": "string",
14
+ "auth": "string",
15
+ "payments": "string",
16
+ "dbSetup": "string",
17
+ "runtime": "string",
18
+ "packageManager": "string",
19
+ "git": true,
20
+ "install": true,
21
+ "webDeploy": "string",
22
+ "serverDeploy": "string",
23
+ "addons": ["array of strings"],
24
+ "examples": ["array of strings"]
25
+ },
26
+ "reasoning": "string explaining your choices"
27
+ }
28
+
29
+ Guidelines:
30
+ - Choose technologies that best match the PRD requirements
31
+ - Consider scalability, maintainability, and developer experience
32
+ - Prefer modern, well-supported technologies
33
+ - Only use values from the allowed options listed in the prompt
34
+ - If a category is not needed, use "none"
35
+ - Be specific about WHY you chose each technology
36
+ `;
37
+
38
+ export const PRD_SUGGEST_STACK_PROMPT = `Analyze the following PRD and suggest the optimal technology stack.
39
+
40
+ ## Available Stack Options
41
+
42
+ ### Frontend (choose one or more)
43
+ - Web: \`tanstack-router\`, \`react-router\`, \`tanstack-start\`, \`next\`, \`nuxt\`, \`svelte\`, \`solid\`
44
+ - Native: \`native-bare\`, \`native-uniwind\`, \`native-unistyles\`
45
+ - Other: \`cli\`, \`medusa\`, \`none\`
46
+
47
+ ### Backend
48
+ \`hono\`, \`express\`, \`fastify\`, \`elysia\`, \`convex\`, \`self\`, \`none\`
49
+
50
+ ### Database
51
+ \`sqlite\`, \`postgres\`, \`mysql\`, \`mongodb\`, \`none\`
52
+
53
+ ### ORM
54
+ \`drizzle\`, \`prisma\`, \`mongoose\`, \`none\`
55
+
56
+ ### API Layer
57
+ \`trpc\`, \`orpc\`, \`none\`
58
+
59
+ ### Authentication
60
+ \`better-auth\`, \`clerk\`, \`none\`
61
+
62
+ ### Payments
63
+ \`polar\`, \`none\`
64
+
65
+ ### Database Setup/Hosting
66
+ \`turso\`, \`neon\`, \`prisma-postgres\`, \`planetscale\`, \`mongodb-atlas\`, \`supabase\`, \`d1\`, \`docker\`, \`none\`
67
+
68
+ ### Runtime
69
+ \`bun\`, \`node\`, \`workers\`, \`none\`
70
+
71
+ ### Package Manager
72
+ \`npm\`, \`pnpm\`, \`bun\`
73
+
74
+ ### Deployment
75
+ - Web: \`cloudflare\`, \`alchemy\`, \`none\`
76
+ - Server: \`cloudflare\`, \`alchemy\`, \`none\`
77
+
78
+ ### Addons (choose multiple or "none")
79
+ \`turborepo\`, \`pwa\`, \`tauri\`, \`biome\`, \`husky\`, \`starlight\`, \`fumadocs\`, \`ultracite\`, \`oxlint\`, \`ruler\`, \`opentui\`, \`wxt\`, \`none\`
80
+
81
+ ### Examples (choose multiple or "none")
82
+ \`todo\`, \`ai\`, \`none\`
83
+
84
+ ---
85
+
86
+ ## PRD Content
87
+
88
+ {PRD_CONTENT}
89
+
90
+ ---
91
+
92
+ {STACK_INFO}
93
+
94
+ {PROJECT_NAME}
95
+
96
+ Based on the PRD above, provide your technology stack recommendation as JSON.
97
+ `;
@@ -0,0 +1,149 @@
1
+ export const TASK_BREAKDOWN_PROMPT = `
2
+ You are a project management expert. Break down the following 1-3 week development phase into focused 1-3 day subtasks.
3
+
4
+ ## 🚨 REQUIREMENTS - 1-3 DAYS PER SUBTASK 🚨
5
+
6
+ Each subtask MUST represent 1-3 DAYS of focused developer work. Each subtask should be a complete, deliverable piece of functionality.
7
+
8
+ ### SUBTASK SCOPE (1-3 DAYS EACH):
9
+ - ✅ Complete feature implementations with full stack components
10
+ - ✅ Focused modules that can be demonstrated and tested independently
11
+ - ✅ Specific deliverables that contribute meaningfully to the parent phase
12
+
13
+ ### EXAMPLE SUBTASKS (1-3 DAYS):
14
+ - ✅ "User authentication system with registration, login, password reset, database schema, API endpoints, and frontend forms"
15
+ - ✅ "Interactive map component with location search, marker display, geolocation, and integration with bakery data"
16
+ - ✅ "Rating system with star ratings, review submission, validation, storage, and display components"
17
+
18
+ ## CRITICAL: Subtask ID and Dependency Format
19
+ You MUST generate unique subtask IDs and reference them properly in dependencies:
20
+
21
+ 1. **Subtask ID Generation**:
22
+ - Each subtask must have an "id" field with format "N.M" where N is the parent task ID and M is the subtask index
23
+ - For example: "1.1", "1.2", "1.3", etc.
24
+ - IDs must be sequential starting from .1
25
+ - Each subtask ID must be unique
26
+
27
+ 2. **Dependency References**:
28
+ - Dependencies MUST reference the exact subtask IDs (not titles)
29
+ - Use format: ["1.1", "1.2"]
30
+ - NEVER use subtask titles in dependencies
31
+ - Only reference subtasks that appear EARLIER in the list
32
+ - The first subtask should have no dependencies
33
+
34
+ ## CRITICAL: Avoid Duplicate Subtasks
35
+ If existing subtasks are listed below, DO NOT create similar or duplicate subtasks. Focus on creating NEW subtasks that complement the existing ones.
36
+
37
+ ## TASK SIZING - 1-3 DAYS:
38
+ - **1 DAY (8 hours)**: Focused feature with clear boundaries. Example: "Build user registration and login with database, API, and frontend forms"
39
+ - **2 DAYS (16 hours)**: Complex feature with multiple components. Example: "Implement map integration with search, markers, and user location"
40
+ - **3 DAYS (24 hours)**: Comprehensive feature with advanced functionality. Example: "Create complete rating system with reviews, validation, and admin moderation"
41
+
42
+ ## 🚨 VALIDATION 🚨
43
+ Each subtask must be substantial enough to occupy a developer for 1-3 full days and represent meaningful, demonstrable progress.
44
+
45
+ Format your response as JSON:
46
+ {
47
+ "subtasks": [
48
+ {
49
+ "id": "1.1",
50
+ "title": "Build user authentication system",
51
+ "description": "Implement user registration, login/logout, password reset, database schema, secure API endpoints, and responsive frontend forms with proper validation and error handling",
52
+ "effort": "medium",
53
+ "dependencies": []
54
+ },
55
+ {
56
+ "id": "1.2",
57
+ "title": "Create interactive map integration",
58
+ "description": "Implement map component with bakery location markers, search functionality, geolocation support, and responsive design for mobile and desktop",
59
+ "effort": "medium",
60
+ "dependencies": ["1.1"]
61
+ }
62
+ ]
63
+ }
64
+
65
+ ## Task Details:
66
+ Title: {TASK_TITLE}
67
+ Description: {TASK_DESCRIPTION}
68
+
69
+ ## Full Task Content:
70
+ {TASK_CONTENT}
71
+
72
+ ## Technical Stack Context:
73
+ {STACK_INFO}
74
+
75
+ ## Existing Subtasks (DO NOT DUPLICATE):
76
+ {EXISTING_SUBTASKS}
77
+ `;
78
+
79
+ export const TASK_BREAKDOWN_SYSTEM_PROMPT = `
80
+ 🚨 CRITICAL SYSTEM PROMPT - BREAK DOWN PHASES INTO 1-3 DAY SUBTASKS 🚨
81
+
82
+ You are an expert technical project manager and software architect. Your role is to break down 1-3 week development phases into focused subtasks that represent 1-3 DAYS of work each.
83
+
84
+ ## MANDATE: PROPER SUBTASK SIZING
85
+ Break down the parent phase into substantial subtasks that each represent 1-3 full days of focused development work.
86
+
87
+ ### SUBTASK SCOPE (1-3 DAYS EACH):
88
+ - Complete features that can be demonstrated independently
89
+ - Focused modules with clear deliverables and boundaries
90
+ - Specific functionality that contributes meaningfully to the parent phase
91
+
92
+ ### SUBTASK EXAMPLES (1-3 DAYS):
93
+ - "User authentication system with registration, login, password reset, database schema, API endpoints, and frontend forms"
94
+ - "Interactive map component with location search, markers, geolocation, and mobile responsiveness"
95
+ - "Rating system with star ratings, review submission, validation, storage, and display components"
96
+
97
+ ## CRITICAL INSTRUCTION: Subtask ID Generation and Dependencies
98
+ You MUST generate unique subtask IDs and use them for dependencies:
99
+
100
+ 1. **Generate Subtask IDs**:
101
+ - Each subtask needs an "id" field: "N.M" format where N is parent task ID, M is subtask index
102
+ - For example: "1.1", "1.2", "1.3", etc.
103
+ - IDs must be sequential and unique
104
+ - Start with .1 for the first subtask
105
+
106
+ 2. **Dependency References**:
107
+ - Use the exact subtask IDs in dependencies arrays
108
+ - NEVER use subtask titles
109
+ - Only reference earlier subtasks (lower numbers)
110
+ - The first subtask must have no dependencies
111
+
112
+ 3. **Required Fields for Each Subtask**:
113
+ - id: "N.M" format (required)
114
+ - title: string (required)
115
+ - description: string (required)
116
+ - effort: "small"|"medium"|"large" (required)
117
+ - dependencies: array of subtask IDs (required)
118
+
119
+ ## CRITICAL: Avoid Duplicate Subtasks
120
+ If existing subtasks are provided in the context, DO NOT create similar or duplicate subtasks. Analyze the existing subtasks and create NEW ones that complement them.
121
+
122
+ ## TASK SIZING - 1-3 DAYS:
123
+ - **small (1 day/8 hours)**: Focused feature with clear boundaries and deliverables
124
+ - **medium (2 days/16 hours)**: Complex feature with multiple components and integrations
125
+ - **large (3 days/24 hours)**: Comprehensive feature with advanced functionality and polish
126
+
127
+ ## VALIDATION CHECKLIST:
128
+ Before returning your response, verify each subtask:
129
+ 1. Represents 1-3 FULL DAYS of focused development work
130
+ 2. Is a complete, deliverable feature or module
131
+ 3. Can be demonstrated and tested independently
132
+ 4. Contributes meaningfully to the parent phase
133
+ 5. Has clear boundaries and specific outcomes
134
+
135
+ ## Output Validation:
136
+ Before returning your response, verify:
137
+ 1. Every subtask has a unique sequential ID ("1.1", "1.2", etc.)
138
+ 2. All dependency arrays contain valid subtask IDs (not titles)
139
+ 3. No subtask depends on itself or a later subtask
140
+ 4. The first subtask has no dependencies
141
+ 5. All referenced subtask IDs exist in the subtasks array
142
+ 6. Each subtask represents 1-3 days of substantial work
143
+ 7. JSON structure is valid and parseable
144
+ 8. No duplicate subtasks based on existing subtasks in context
145
+
146
+ Return only valid JSON that can be parsed. Ensure all required fields are present and properly formatted.
147
+
148
+ 🚨 REMINDER: BREAK PHASES INTO 1-3 DAY SUBTASKS! 🚨
149
+ `;