agents-inc 0.149.2 → 0.150.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 (572) hide show
  1. package/CHANGELOG.md +2277 -0
  2. package/LICENSE +21 -0
  3. package/README.md +136 -19
  4. package/assets/demo.gif +0 -0
  5. package/assets/demo.tape +266 -0
  6. package/assets/logo.svg +75 -0
  7. package/dist/chunk-2RSNKBXC.js +84 -0
  8. package/dist/chunk-2RSNKBXC.js.map +1 -0
  9. package/dist/chunk-3LIU2ZEF.js +1355 -0
  10. package/dist/chunk-3LIU2ZEF.js.map +1 -0
  11. package/dist/chunk-4GL2F5AB.js +222 -0
  12. package/dist/chunk-4GL2F5AB.js.map +1 -0
  13. package/dist/chunk-4LPJZNT7.js +382 -0
  14. package/dist/chunk-4LPJZNT7.js.map +1 -0
  15. package/dist/chunk-5K5RBRTD.js +62 -0
  16. package/dist/chunk-5K5RBRTD.js.map +1 -0
  17. package/dist/chunk-6I6RZHYP.js +789 -0
  18. package/dist/chunk-6I6RZHYP.js.map +1 -0
  19. package/dist/chunk-7URSGJLE.js +430 -0
  20. package/dist/chunk-7URSGJLE.js.map +1 -0
  21. package/dist/chunk-C55DN7GE.js +35 -0
  22. package/dist/chunk-C55DN7GE.js.map +1 -0
  23. package/dist/chunk-CDMHSHBN.js +68 -0
  24. package/dist/chunk-CDMHSHBN.js.map +1 -0
  25. package/dist/chunk-CFQT72MJ.js +92 -0
  26. package/dist/chunk-CFQT72MJ.js.map +1 -0
  27. package/dist/chunk-DAG2ULNF.js +125 -0
  28. package/dist/chunk-DAG2ULNF.js.map +1 -0
  29. package/dist/chunk-DDG4F3FE.js +181 -0
  30. package/dist/chunk-DDG4F3FE.js.map +1 -0
  31. package/dist/chunk-DIBCRIMR.js +36 -0
  32. package/dist/chunk-DIBCRIMR.js.map +1 -0
  33. package/dist/chunk-DJAZE4PD.js +10929 -0
  34. package/dist/chunk-DJAZE4PD.js.map +1 -0
  35. package/dist/chunk-DUVWGO6E.js +54 -0
  36. package/dist/chunk-DUVWGO6E.js.map +1 -0
  37. package/dist/chunk-E4FT2KFV.js +174 -0
  38. package/dist/chunk-E4FT2KFV.js.map +1 -0
  39. package/dist/chunk-EKWAUOQB.js +96 -0
  40. package/dist/chunk-EKWAUOQB.js.map +1 -0
  41. package/dist/chunk-EN2GCPW7.js +300 -0
  42. package/dist/chunk-EN2GCPW7.js.map +1 -0
  43. package/dist/chunk-ES3NJZON.js +31 -0
  44. package/dist/chunk-ES3NJZON.js.map +1 -0
  45. package/dist/chunk-F3756A5B.js +20 -0
  46. package/dist/chunk-F3756A5B.js.map +1 -0
  47. package/dist/chunk-FWT3CBLL.js +51 -0
  48. package/dist/chunk-FWT3CBLL.js.map +1 -0
  49. package/dist/chunk-FYPUUYSG.js +31 -0
  50. package/dist/chunk-FYPUUYSG.js.map +1 -0
  51. package/dist/chunk-GRPSDKIS.js +112 -0
  52. package/dist/chunk-GRPSDKIS.js.map +1 -0
  53. package/dist/chunk-GYG5SE2D.js +81 -0
  54. package/dist/chunk-GYG5SE2D.js.map +1 -0
  55. package/dist/chunk-HIPGKIT3.js +287 -0
  56. package/dist/chunk-HIPGKIT3.js.map +1 -0
  57. package/dist/chunk-I3XKEGHM.js +16383 -0
  58. package/dist/chunk-I3XKEGHM.js.map +1 -0
  59. package/dist/chunk-IHO75PMZ.js +40 -0
  60. package/dist/chunk-IHO75PMZ.js.map +1 -0
  61. package/dist/chunk-IOJR5TOY.js +47 -0
  62. package/dist/chunk-IOJR5TOY.js.map +1 -0
  63. package/dist/chunk-K3OU6TGX.js +77 -0
  64. package/dist/chunk-K3OU6TGX.js.map +1 -0
  65. package/dist/chunk-KH7MOIM5.js +6010 -0
  66. package/dist/chunk-KH7MOIM5.js.map +1 -0
  67. package/dist/chunk-KIR7VYQD.js +63 -0
  68. package/dist/chunk-KIR7VYQD.js.map +1 -0
  69. package/dist/chunk-KOPEM3Q7.js +27 -0
  70. package/dist/chunk-KOPEM3Q7.js.map +1 -0
  71. package/dist/chunk-KSZ6PCY4.js +43 -0
  72. package/dist/chunk-KSZ6PCY4.js.map +1 -0
  73. package/dist/chunk-LRYNF3J7.js +111 -0
  74. package/dist/chunk-LRYNF3J7.js.map +1 -0
  75. package/dist/chunk-LYYXX2W5.js +87 -0
  76. package/dist/chunk-LYYXX2W5.js.map +1 -0
  77. package/dist/chunk-MC5DUZ3V.js +1135 -0
  78. package/dist/chunk-MC5DUZ3V.js.map +1 -0
  79. package/dist/chunk-N4IZ6GBO.js +300 -0
  80. package/dist/chunk-N4IZ6GBO.js.map +1 -0
  81. package/dist/chunk-NIKUMXE7.js +24 -0
  82. package/dist/chunk-NIKUMXE7.js.map +1 -0
  83. package/dist/chunk-NUIZ6ZUO.js +42 -0
  84. package/dist/chunk-NUIZ6ZUO.js.map +1 -0
  85. package/dist/chunk-O5ASLZ2K.js +270 -0
  86. package/dist/chunk-O5ASLZ2K.js.map +1 -0
  87. package/dist/chunk-OA5SUEQD.js +181 -0
  88. package/dist/chunk-OA5SUEQD.js.map +1 -0
  89. package/dist/chunk-OZZGXBCN.js +15 -0
  90. package/dist/chunk-OZZGXBCN.js.map +1 -0
  91. package/dist/chunk-P3PN5SVI.js +27 -0
  92. package/dist/chunk-P3PN5SVI.js.map +1 -0
  93. package/dist/chunk-P56WJ5FA.js +50 -0
  94. package/dist/chunk-P56WJ5FA.js.map +1 -0
  95. package/dist/chunk-PG4G4IIK.js +24 -0
  96. package/dist/chunk-PG4G4IIK.js.map +1 -0
  97. package/dist/chunk-QQLRX4KI.js +41 -0
  98. package/dist/chunk-QQLRX4KI.js.map +1 -0
  99. package/dist/chunk-RBHYLCUB.js +31 -0
  100. package/dist/chunk-RBHYLCUB.js.map +1 -0
  101. package/dist/chunk-RJN7W2C7.js +349 -0
  102. package/dist/chunk-RJN7W2C7.js.map +1 -0
  103. package/dist/chunk-RP7R73JO.js +179 -0
  104. package/dist/chunk-RP7R73JO.js.map +1 -0
  105. package/dist/chunk-SYUOXSPU.js +510 -0
  106. package/dist/chunk-SYUOXSPU.js.map +1 -0
  107. package/dist/chunk-THKIOI32.js +939 -0
  108. package/dist/chunk-THKIOI32.js.map +1 -0
  109. package/dist/chunk-UZRISDBZ.js +28 -0
  110. package/dist/chunk-UZRISDBZ.js.map +1 -0
  111. package/dist/chunk-V7QOSGQA.js +298 -0
  112. package/dist/chunk-V7QOSGQA.js.map +1 -0
  113. package/dist/chunk-VEP23B5W.js +27 -0
  114. package/dist/chunk-VEP23B5W.js.map +1 -0
  115. package/dist/chunk-VG2TVBFN.js +52 -0
  116. package/dist/chunk-VG2TVBFN.js.map +1 -0
  117. package/dist/chunk-VIFZ6NFH.js +27 -0
  118. package/dist/chunk-VIFZ6NFH.js.map +1 -0
  119. package/dist/chunk-XA57SX4T.js +115 -0
  120. package/dist/chunk-XA57SX4T.js.map +1 -0
  121. package/dist/chunk-YKKIJHZB.js +339 -0
  122. package/dist/chunk-YKKIJHZB.js.map +1 -0
  123. package/dist/chunk-YU2VGX5R.js +4205 -0
  124. package/dist/chunk-YU2VGX5R.js.map +1 -0
  125. package/dist/chunk-ZDLTLNU2.js +258 -0
  126. package/dist/chunk-ZDLTLNU2.js.map +1 -0
  127. package/dist/chunk-ZHTXPFDK.js +128 -0
  128. package/dist/chunk-ZHTXPFDK.js.map +1 -0
  129. package/dist/chunk-ZKJAJWK6.js +253 -0
  130. package/dist/chunk-ZKJAJWK6.js.map +1 -0
  131. package/dist/commands/build/marketplace.js +250 -0
  132. package/dist/commands/build/marketplace.js.map +1 -0
  133. package/dist/commands/build/plugins.js +176 -0
  134. package/dist/commands/build/plugins.js.map +1 -0
  135. package/dist/commands/compile.js +331 -0
  136. package/dist/commands/compile.js.map +1 -0
  137. package/dist/commands/doctor.js +475 -0
  138. package/dist/commands/doctor.js.map +1 -0
  139. package/dist/commands/edit.js +765 -0
  140. package/dist/commands/edit.js.map +1 -0
  141. package/dist/commands/eject.js +393 -0
  142. package/dist/commands/eject.js.map +1 -0
  143. package/dist/commands/import/skill.js +349 -0
  144. package/dist/commands/import/skill.js.map +1 -0
  145. package/dist/commands/init.js +66 -0
  146. package/dist/commands/init.js.map +1 -0
  147. package/dist/commands/list.js +115 -0
  148. package/dist/commands/list.js.map +1 -0
  149. package/dist/commands/new/agent.js +304 -0
  150. package/dist/commands/new/agent.js.map +1 -0
  151. package/dist/commands/new/marketplace.js +315 -0
  152. package/dist/commands/new/marketplace.js.map +1 -0
  153. package/dist/commands/new/skill.js +28 -0
  154. package/dist/commands/new/skill.js.map +1 -0
  155. package/dist/commands/search.js +176 -0
  156. package/dist/commands/search.js.map +1 -0
  157. package/dist/commands/uninstall.js +570 -0
  158. package/dist/commands/uninstall.js.map +1 -0
  159. package/dist/commands/update.js +368 -0
  160. package/dist/commands/update.js.map +1 -0
  161. package/dist/commands/validate.js +581 -0
  162. package/dist/commands/validate.js.map +1 -0
  163. package/dist/components/common/confirm.js +9 -0
  164. package/dist/components/common/confirm.js.map +1 -0
  165. package/dist/components/common/confirm.test.js +203 -0
  166. package/dist/components/common/confirm.test.js.map +1 -0
  167. package/dist/components/common/prompt-confirm.js +11 -0
  168. package/dist/components/common/prompt-confirm.js.map +1 -0
  169. package/dist/components/common/select-list.js +11 -0
  170. package/dist/components/common/select-list.js.map +1 -0
  171. package/dist/components/common/spinner.js +9 -0
  172. package/dist/components/common/spinner.js.map +1 -0
  173. package/dist/components/wizard/category-grid.js +16 -0
  174. package/dist/components/wizard/category-grid.js.map +1 -0
  175. package/dist/components/wizard/category-grid.test.js +1253 -0
  176. package/dist/components/wizard/category-grid.test.js.map +1 -0
  177. package/dist/components/wizard/checkbox-grid.js +14 -0
  178. package/dist/components/wizard/checkbox-grid.js.map +1 -0
  179. package/dist/components/wizard/checkbox-grid.test.js +264 -0
  180. package/dist/components/wizard/checkbox-grid.test.js.map +1 -0
  181. package/dist/components/wizard/domain-selection.js +22 -0
  182. package/dist/components/wizard/domain-selection.js.map +1 -0
  183. package/dist/components/wizard/run-wizard-session.js +47 -0
  184. package/dist/components/wizard/run-wizard-session.js.map +1 -0
  185. package/dist/components/wizard/scroll-affordance.js +10 -0
  186. package/dist/components/wizard/scroll-affordance.js.map +1 -0
  187. package/dist/components/wizard/search-modal.js +14 -0
  188. package/dist/components/wizard/search-modal.js.map +1 -0
  189. package/dist/components/wizard/search-modal.test.js +212 -0
  190. package/dist/components/wizard/search-modal.test.js.map +1 -0
  191. package/dist/components/wizard/selection-card.js +10 -0
  192. package/dist/components/wizard/selection-card.js.map +1 -0
  193. package/dist/components/wizard/skill-agent-summary.js +16 -0
  194. package/dist/components/wizard/skill-agent-summary.js.map +1 -0
  195. package/dist/components/wizard/source-grid.js +23 -0
  196. package/dist/components/wizard/source-grid.js.map +1 -0
  197. package/dist/components/wizard/source-grid.test.js +1094 -0
  198. package/dist/components/wizard/source-grid.test.js.map +1 -0
  199. package/dist/components/wizard/stack-selection.js +20 -0
  200. package/dist/components/wizard/stack-selection.js.map +1 -0
  201. package/dist/components/wizard/step-agents.js +22 -0
  202. package/dist/components/wizard/step-agents.js.map +1 -0
  203. package/dist/components/wizard/step-agents.test.js +204 -0
  204. package/dist/components/wizard/step-agents.test.js.map +1 -0
  205. package/dist/components/wizard/step-build.js +22 -0
  206. package/dist/components/wizard/step-build.js.map +1 -0
  207. package/dist/components/wizard/step-build.test.js +552 -0
  208. package/dist/components/wizard/step-build.test.js.map +1 -0
  209. package/dist/components/wizard/step-confirm.js +21 -0
  210. package/dist/components/wizard/step-confirm.js.map +1 -0
  211. package/dist/components/wizard/step-confirm.test.js +744 -0
  212. package/dist/components/wizard/step-confirm.test.js.map +1 -0
  213. package/dist/components/wizard/step-settings.js +19 -0
  214. package/dist/components/wizard/step-settings.js.map +1 -0
  215. package/dist/components/wizard/step-settings.test.js +244 -0
  216. package/dist/components/wizard/step-settings.test.js.map +1 -0
  217. package/dist/components/wizard/step-sources.js +28 -0
  218. package/dist/components/wizard/step-sources.js.map +1 -0
  219. package/dist/components/wizard/step-sources.test.js +155 -0
  220. package/dist/components/wizard/step-sources.test.js.map +1 -0
  221. package/dist/components/wizard/step-stack.js +21 -0
  222. package/dist/components/wizard/step-stack.js.map +1 -0
  223. package/dist/components/wizard/step-stack.test.js +262 -0
  224. package/dist/components/wizard/step-stack.test.js.map +1 -0
  225. package/dist/components/wizard/summary-panel.js +20 -0
  226. package/dist/components/wizard/summary-panel.js.map +1 -0
  227. package/dist/components/wizard/summary-panel.test.js +317 -0
  228. package/dist/components/wizard/summary-panel.test.js.map +1 -0
  229. package/dist/components/wizard/toast.js +10 -0
  230. package/dist/components/wizard/toast.js.map +1 -0
  231. package/dist/components/wizard/wizard-layout.js +26 -0
  232. package/dist/components/wizard/wizard-layout.js.map +1 -0
  233. package/dist/components/wizard/wizard-layout.test.js +200 -0
  234. package/dist/components/wizard/wizard-layout.test.js.map +1 -0
  235. package/dist/components/wizard/wizard-tabs.js +20 -0
  236. package/dist/components/wizard/wizard-tabs.js.map +1 -0
  237. package/dist/components/wizard/wizard-tabs.test.js +290 -0
  238. package/dist/components/wizard/wizard-tabs.test.js.map +1 -0
  239. package/dist/components/wizard/wizard.js +48 -0
  240. package/dist/components/wizard/wizard.js.map +1 -0
  241. package/dist/config-exports.js +20 -0
  242. package/dist/config-exports.js.map +1 -0
  243. package/dist/copy-local-skills-CA7P73RZ.js +15 -0
  244. package/dist/copy-local-skills-CA7P73RZ.js.map +1 -0
  245. package/dist/dist-VNJNNJK7.js +550 -0
  246. package/dist/dist-VNJNNJK7.js.map +1 -0
  247. package/dist/hooks/init.js +90 -0
  248. package/dist/hooks/init.js.map +1 -0
  249. package/dist/index.js +10 -0
  250. package/dist/index.js.map +1 -0
  251. package/dist/load-agent-defs-6MAY5ABI.js +16 -0
  252. package/dist/load-agent-defs-6MAY5ABI.js.map +1 -0
  253. package/dist/loader-E2ERJYVA.js +23 -0
  254. package/dist/loader-E2ERJYVA.js.map +1 -0
  255. package/dist/magic-string.es-5TV73NJD.js +1316 -0
  256. package/dist/magic-string.es-5TV73NJD.js.map +1 -0
  257. package/dist/recompile-project-agents-VYQJ6UZB.js +20 -0
  258. package/dist/recompile-project-agents-VYQJ6UZB.js.map +1 -0
  259. package/dist/source-loader-VVHMQEX5.js +20 -0
  260. package/dist/source-loader-VVHMQEX5.js.map +1 -0
  261. package/dist/source-manager-TPDXV5FO.js +18 -0
  262. package/dist/source-manager-TPDXV5FO.js.map +1 -0
  263. package/dist/src/agents/_templates/agent.liquid +161 -0
  264. package/dist/src/agents/_templates/methodologies/anti-over-engineering.liquid +121 -0
  265. package/dist/src/agents/_templates/methodologies/context-management.liquid +162 -0
  266. package/dist/src/agents/_templates/methodologies/improvement-protocol.liquid +150 -0
  267. package/dist/src/agents/_templates/methodologies/investigation-requirements.liquid +49 -0
  268. package/dist/src/agents/_templates/methodologies/success-criteria.liquid +111 -0
  269. package/dist/src/agents/_templates/methodologies/write-verification.liquid +43 -0
  270. package/dist/src/agents/developer/ai-developer/critical-reminders.md +54 -0
  271. package/dist/src/agents/developer/ai-developer/critical-requirements.md +59 -0
  272. package/dist/src/agents/developer/ai-developer/identity.md +51 -0
  273. package/dist/src/agents/developer/ai-developer/metadata.yaml +12 -0
  274. package/dist/src/agents/developer/ai-developer/output.md +366 -0
  275. package/dist/src/agents/developer/ai-developer/playbook.md +335 -0
  276. package/dist/src/agents/developer/api-developer/critical-reminders.md +46 -0
  277. package/dist/src/agents/developer/api-developer/critical-requirements.md +44 -0
  278. package/dist/src/agents/developer/api-developer/identity.md +49 -0
  279. package/dist/src/agents/developer/api-developer/metadata.yaml +12 -0
  280. package/dist/src/agents/developer/api-developer/output.md +432 -0
  281. package/dist/src/agents/developer/api-developer/playbook.md +352 -0
  282. package/dist/src/agents/developer/cli-developer/critical-reminders.md +51 -0
  283. package/dist/src/agents/developer/cli-developer/critical-requirements.md +51 -0
  284. package/dist/src/agents/developer/cli-developer/identity.md +51 -0
  285. package/dist/src/agents/developer/cli-developer/metadata.yaml +12 -0
  286. package/dist/src/agents/developer/cli-developer/output.md +285 -0
  287. package/dist/src/agents/developer/cli-developer/playbook.md +386 -0
  288. package/dist/src/agents/developer/web-architecture/critical-reminders.md +48 -0
  289. package/dist/src/agents/developer/web-architecture/critical-requirements.md +65 -0
  290. package/dist/src/agents/developer/web-architecture/identity.md +64 -0
  291. package/dist/src/agents/developer/web-architecture/metadata.yaml +12 -0
  292. package/dist/src/agents/developer/web-architecture/output.md +449 -0
  293. package/dist/src/agents/developer/web-architecture/playbook.md +481 -0
  294. package/dist/src/agents/developer/web-developer/critical-reminders.md +40 -0
  295. package/dist/src/agents/developer/web-developer/critical-requirements.md +39 -0
  296. package/dist/src/agents/developer/web-developer/identity.md +32 -0
  297. package/dist/src/agents/developer/web-developer/metadata.yaml +12 -0
  298. package/dist/src/agents/developer/web-developer/output.md +323 -0
  299. package/dist/src/agents/developer/web-developer/playbook.md +349 -0
  300. package/dist/src/agents/meta/agent-summoner/critical-reminders.md +45 -0
  301. package/dist/src/agents/meta/agent-summoner/critical-requirements.md +52 -0
  302. package/dist/src/agents/meta/agent-summoner/identity.md +34 -0
  303. package/dist/src/agents/meta/agent-summoner/metadata.yaml +12 -0
  304. package/dist/src/agents/meta/agent-summoner/output.md +296 -0
  305. package/dist/src/agents/meta/agent-summoner/playbook.md +1469 -0
  306. package/dist/src/agents/meta/codex-keeper/critical-reminders.md +39 -0
  307. package/dist/src/agents/meta/codex-keeper/critical-requirements.md +29 -0
  308. package/dist/src/agents/meta/codex-keeper/identity.md +45 -0
  309. package/dist/src/agents/meta/codex-keeper/metadata.yaml +12 -0
  310. package/dist/src/agents/meta/codex-keeper/output.md +384 -0
  311. package/dist/src/agents/meta/codex-keeper/playbook.md +1183 -0
  312. package/dist/src/agents/meta/convention-keeper/critical-reminders.md +32 -0
  313. package/dist/src/agents/meta/convention-keeper/critical-requirements.md +32 -0
  314. package/dist/src/agents/meta/convention-keeper/identity.md +33 -0
  315. package/dist/src/agents/meta/convention-keeper/metadata.yaml +12 -0
  316. package/dist/src/agents/meta/convention-keeper/output.md +206 -0
  317. package/dist/src/agents/meta/convention-keeper/playbook.md +180 -0
  318. package/dist/src/agents/meta/skill-summoner/critical-reminders.md +112 -0
  319. package/dist/src/agents/meta/skill-summoner/critical-requirements.md +62 -0
  320. package/dist/src/agents/meta/skill-summoner/identity.md +31 -0
  321. package/dist/src/agents/meta/skill-summoner/metadata.yaml +13 -0
  322. package/dist/src/agents/meta/skill-summoner/output.md +390 -0
  323. package/dist/src/agents/meta/skill-summoner/playbook.md +1457 -0
  324. package/dist/src/agents/pattern/pattern-scout/critical-reminders.md +71 -0
  325. package/dist/src/agents/pattern/pattern-scout/critical-requirements.md +31 -0
  326. package/dist/src/agents/pattern/pattern-scout/identity.md +25 -0
  327. package/dist/src/agents/pattern/pattern-scout/metadata.yaml +10 -0
  328. package/dist/src/agents/pattern/pattern-scout/output.md +290 -0
  329. package/dist/src/agents/pattern/pattern-scout/playbook.md +1806 -0
  330. package/dist/src/agents/pattern/web-pattern-critique/critical-reminders.md +30 -0
  331. package/dist/src/agents/pattern/web-pattern-critique/critical-requirements.md +28 -0
  332. package/dist/src/agents/pattern/web-pattern-critique/identity.md +41 -0
  333. package/dist/src/agents/pattern/web-pattern-critique/metadata.yaml +12 -0
  334. package/dist/src/agents/pattern/web-pattern-critique/output.md +314 -0
  335. package/dist/src/agents/pattern/web-pattern-critique/playbook.md +572 -0
  336. package/dist/src/agents/planning/api-pm/critical-reminders.md +48 -0
  337. package/dist/src/agents/planning/api-pm/critical-requirements.md +41 -0
  338. package/dist/src/agents/planning/api-pm/identity.md +39 -0
  339. package/dist/src/agents/planning/api-pm/metadata.yaml +12 -0
  340. package/dist/src/agents/planning/api-pm/output.md +475 -0
  341. package/dist/src/agents/planning/api-pm/playbook.md +129 -0
  342. package/dist/src/agents/planning/web-pm/critical-reminders.md +36 -0
  343. package/dist/src/agents/planning/web-pm/critical-requirements.md +32 -0
  344. package/dist/src/agents/planning/web-pm/identity.md +26 -0
  345. package/dist/src/agents/planning/web-pm/metadata.yaml +12 -0
  346. package/dist/src/agents/planning/web-pm/output.md +314 -0
  347. package/dist/src/agents/planning/web-pm/playbook.md +318 -0
  348. package/dist/src/agents/researcher/api-researcher/critical-reminders.md +27 -0
  349. package/dist/src/agents/researcher/api-researcher/critical-requirements.md +28 -0
  350. package/dist/src/agents/researcher/api-researcher/identity.md +71 -0
  351. package/dist/src/agents/researcher/api-researcher/metadata.yaml +10 -0
  352. package/dist/src/agents/researcher/api-researcher/output.md +254 -0
  353. package/dist/src/agents/researcher/api-researcher/playbook.md +201 -0
  354. package/dist/src/agents/researcher/web-researcher/critical-reminders.md +39 -0
  355. package/dist/src/agents/researcher/web-researcher/critical-requirements.md +26 -0
  356. package/dist/src/agents/researcher/web-researcher/identity.md +69 -0
  357. package/dist/src/agents/researcher/web-researcher/metadata.yaml +10 -0
  358. package/dist/src/agents/researcher/web-researcher/output.md +241 -0
  359. package/dist/src/agents/researcher/web-researcher/playbook.md +217 -0
  360. package/dist/src/agents/reviewer/ai-reviewer/critical-reminders.md +40 -0
  361. package/dist/src/agents/reviewer/ai-reviewer/critical-requirements.md +37 -0
  362. package/dist/src/agents/reviewer/ai-reviewer/identity.md +51 -0
  363. package/dist/src/agents/reviewer/ai-reviewer/metadata.yaml +10 -0
  364. package/dist/src/agents/reviewer/ai-reviewer/output.md +395 -0
  365. package/dist/src/agents/reviewer/ai-reviewer/playbook.md +90 -0
  366. package/dist/src/agents/reviewer/api-reviewer/critical-reminders.md +31 -0
  367. package/dist/src/agents/reviewer/api-reviewer/critical-requirements.md +27 -0
  368. package/dist/src/agents/reviewer/api-reviewer/identity.md +51 -0
  369. package/dist/src/agents/reviewer/api-reviewer/metadata.yaml +12 -0
  370. package/dist/src/agents/reviewer/api-reviewer/output.md +343 -0
  371. package/dist/src/agents/reviewer/api-reviewer/playbook.md +288 -0
  372. package/dist/src/agents/reviewer/cli-reviewer/critical-reminders.md +33 -0
  373. package/dist/src/agents/reviewer/cli-reviewer/critical-requirements.md +30 -0
  374. package/dist/src/agents/reviewer/cli-reviewer/identity.md +44 -0
  375. package/dist/src/agents/reviewer/cli-reviewer/metadata.yaml +12 -0
  376. package/dist/src/agents/reviewer/cli-reviewer/output.md +414 -0
  377. package/dist/src/agents/reviewer/cli-reviewer/playbook.md +218 -0
  378. package/dist/src/agents/reviewer/infra-reviewer/critical-reminders.md +38 -0
  379. package/dist/src/agents/reviewer/infra-reviewer/critical-requirements.md +38 -0
  380. package/dist/src/agents/reviewer/infra-reviewer/identity.md +53 -0
  381. package/dist/src/agents/reviewer/infra-reviewer/metadata.yaml +10 -0
  382. package/dist/src/agents/reviewer/infra-reviewer/output.md +364 -0
  383. package/dist/src/agents/reviewer/infra-reviewer/playbook.md +161 -0
  384. package/dist/src/agents/reviewer/web-reviewer/critical-reminders.md +31 -0
  385. package/dist/src/agents/reviewer/web-reviewer/critical-requirements.md +26 -0
  386. package/dist/src/agents/reviewer/web-reviewer/identity.md +40 -0
  387. package/dist/src/agents/reviewer/web-reviewer/metadata.yaml +12 -0
  388. package/dist/src/agents/reviewer/web-reviewer/output.md +333 -0
  389. package/dist/src/agents/reviewer/web-reviewer/playbook.md +156 -0
  390. package/dist/src/agents/tester/api-tester/critical-reminders.md +41 -0
  391. package/dist/src/agents/tester/api-tester/critical-requirements.md +41 -0
  392. package/dist/src/agents/tester/api-tester/identity.md +47 -0
  393. package/dist/src/agents/tester/api-tester/metadata.yaml +12 -0
  394. package/dist/src/agents/tester/api-tester/output.md +284 -0
  395. package/dist/src/agents/tester/api-tester/playbook.md +275 -0
  396. package/dist/src/agents/tester/cli-tester/critical-reminders.md +36 -0
  397. package/dist/src/agents/tester/cli-tester/critical-requirements.md +36 -0
  398. package/dist/src/agents/tester/cli-tester/identity.md +43 -0
  399. package/dist/src/agents/tester/cli-tester/metadata.yaml +12 -0
  400. package/dist/src/agents/tester/cli-tester/output.md +313 -0
  401. package/dist/src/agents/tester/cli-tester/playbook.md +221 -0
  402. package/dist/src/agents/tester/web-tester/critical-reminders.md +31 -0
  403. package/dist/src/agents/tester/web-tester/critical-requirements.md +28 -0
  404. package/dist/src/agents/tester/web-tester/identity.md +41 -0
  405. package/dist/src/agents/tester/web-tester/metadata.yaml +12 -0
  406. package/dist/src/agents/tester/web-tester/output.md +321 -0
  407. package/dist/src/agents/tester/web-tester/playbook.md +428 -0
  408. package/dist/stores/d227-same-scope-tombstone-duplicate.test.js +118 -0
  409. package/dist/stores/d227-same-scope-tombstone-duplicate.test.js.map +1 -0
  410. package/dist/stores/wizard-store.js +21 -0
  411. package/dist/stores/wizard-store.js.map +1 -0
  412. package/dist/stores/wizard-store.test.js +3053 -0
  413. package/dist/stores/wizard-store.test.js.map +1 -0
  414. package/package.json +130 -12
  415. package/src/agents/_templates/agent.liquid +161 -0
  416. package/src/agents/_templates/methodologies/anti-over-engineering.liquid +121 -0
  417. package/src/agents/_templates/methodologies/context-management.liquid +162 -0
  418. package/src/agents/_templates/methodologies/improvement-protocol.liquid +150 -0
  419. package/src/agents/_templates/methodologies/investigation-requirements.liquid +49 -0
  420. package/src/agents/_templates/methodologies/success-criteria.liquid +111 -0
  421. package/src/agents/_templates/methodologies/write-verification.liquid +43 -0
  422. package/src/agents/developer/ai-developer/critical-reminders.md +54 -0
  423. package/src/agents/developer/ai-developer/critical-requirements.md +59 -0
  424. package/src/agents/developer/ai-developer/identity.md +51 -0
  425. package/src/agents/developer/ai-developer/metadata.yaml +12 -0
  426. package/src/agents/developer/ai-developer/output.md +366 -0
  427. package/src/agents/developer/ai-developer/playbook.md +335 -0
  428. package/src/agents/developer/api-developer/critical-reminders.md +46 -0
  429. package/src/agents/developer/api-developer/critical-requirements.md +44 -0
  430. package/src/agents/developer/api-developer/identity.md +49 -0
  431. package/src/agents/developer/api-developer/metadata.yaml +12 -0
  432. package/src/agents/developer/api-developer/output.md +432 -0
  433. package/src/agents/developer/api-developer/playbook.md +352 -0
  434. package/src/agents/developer/cli-developer/critical-reminders.md +51 -0
  435. package/src/agents/developer/cli-developer/critical-requirements.md +51 -0
  436. package/src/agents/developer/cli-developer/identity.md +51 -0
  437. package/src/agents/developer/cli-developer/metadata.yaml +12 -0
  438. package/src/agents/developer/cli-developer/output.md +285 -0
  439. package/src/agents/developer/cli-developer/playbook.md +386 -0
  440. package/src/agents/developer/web-architecture/critical-reminders.md +48 -0
  441. package/src/agents/developer/web-architecture/critical-requirements.md +65 -0
  442. package/src/agents/developer/web-architecture/identity.md +64 -0
  443. package/src/agents/developer/web-architecture/metadata.yaml +12 -0
  444. package/src/agents/developer/web-architecture/output.md +449 -0
  445. package/src/agents/developer/web-architecture/playbook.md +481 -0
  446. package/src/agents/developer/web-developer/critical-reminders.md +40 -0
  447. package/src/agents/developer/web-developer/critical-requirements.md +39 -0
  448. package/src/agents/developer/web-developer/identity.md +32 -0
  449. package/src/agents/developer/web-developer/metadata.yaml +12 -0
  450. package/src/agents/developer/web-developer/output.md +323 -0
  451. package/src/agents/developer/web-developer/playbook.md +349 -0
  452. package/src/agents/meta/agent-summoner/critical-reminders.md +45 -0
  453. package/src/agents/meta/agent-summoner/critical-requirements.md +52 -0
  454. package/src/agents/meta/agent-summoner/identity.md +34 -0
  455. package/src/agents/meta/agent-summoner/metadata.yaml +12 -0
  456. package/src/agents/meta/agent-summoner/output.md +296 -0
  457. package/src/agents/meta/agent-summoner/playbook.md +1469 -0
  458. package/src/agents/meta/codex-keeper/critical-reminders.md +39 -0
  459. package/src/agents/meta/codex-keeper/critical-requirements.md +29 -0
  460. package/src/agents/meta/codex-keeper/identity.md +45 -0
  461. package/src/agents/meta/codex-keeper/metadata.yaml +12 -0
  462. package/src/agents/meta/codex-keeper/output.md +384 -0
  463. package/src/agents/meta/codex-keeper/playbook.md +1183 -0
  464. package/src/agents/meta/convention-keeper/critical-reminders.md +32 -0
  465. package/src/agents/meta/convention-keeper/critical-requirements.md +32 -0
  466. package/src/agents/meta/convention-keeper/identity.md +33 -0
  467. package/src/agents/meta/convention-keeper/metadata.yaml +12 -0
  468. package/src/agents/meta/convention-keeper/output.md +206 -0
  469. package/src/agents/meta/convention-keeper/playbook.md +180 -0
  470. package/src/agents/meta/skill-summoner/critical-reminders.md +112 -0
  471. package/src/agents/meta/skill-summoner/critical-requirements.md +62 -0
  472. package/src/agents/meta/skill-summoner/identity.md +31 -0
  473. package/src/agents/meta/skill-summoner/metadata.yaml +13 -0
  474. package/src/agents/meta/skill-summoner/output.md +390 -0
  475. package/src/agents/meta/skill-summoner/playbook.md +1457 -0
  476. package/src/agents/pattern/pattern-scout/critical-reminders.md +71 -0
  477. package/src/agents/pattern/pattern-scout/critical-requirements.md +31 -0
  478. package/src/agents/pattern/pattern-scout/identity.md +25 -0
  479. package/src/agents/pattern/pattern-scout/metadata.yaml +10 -0
  480. package/src/agents/pattern/pattern-scout/output.md +290 -0
  481. package/src/agents/pattern/pattern-scout/playbook.md +1806 -0
  482. package/src/agents/pattern/web-pattern-critique/critical-reminders.md +30 -0
  483. package/src/agents/pattern/web-pattern-critique/critical-requirements.md +28 -0
  484. package/src/agents/pattern/web-pattern-critique/identity.md +41 -0
  485. package/src/agents/pattern/web-pattern-critique/metadata.yaml +12 -0
  486. package/src/agents/pattern/web-pattern-critique/output.md +314 -0
  487. package/src/agents/pattern/web-pattern-critique/playbook.md +572 -0
  488. package/src/agents/planning/api-pm/critical-reminders.md +48 -0
  489. package/src/agents/planning/api-pm/critical-requirements.md +41 -0
  490. package/src/agents/planning/api-pm/identity.md +39 -0
  491. package/src/agents/planning/api-pm/metadata.yaml +12 -0
  492. package/src/agents/planning/api-pm/output.md +475 -0
  493. package/src/agents/planning/api-pm/playbook.md +129 -0
  494. package/src/agents/planning/web-pm/critical-reminders.md +36 -0
  495. package/src/agents/planning/web-pm/critical-requirements.md +32 -0
  496. package/src/agents/planning/web-pm/identity.md +26 -0
  497. package/src/agents/planning/web-pm/metadata.yaml +12 -0
  498. package/src/agents/planning/web-pm/output.md +314 -0
  499. package/src/agents/planning/web-pm/playbook.md +318 -0
  500. package/src/agents/researcher/api-researcher/critical-reminders.md +27 -0
  501. package/src/agents/researcher/api-researcher/critical-requirements.md +28 -0
  502. package/src/agents/researcher/api-researcher/identity.md +71 -0
  503. package/src/agents/researcher/api-researcher/metadata.yaml +10 -0
  504. package/src/agents/researcher/api-researcher/output.md +254 -0
  505. package/src/agents/researcher/api-researcher/playbook.md +201 -0
  506. package/src/agents/researcher/web-researcher/critical-reminders.md +39 -0
  507. package/src/agents/researcher/web-researcher/critical-requirements.md +26 -0
  508. package/src/agents/researcher/web-researcher/identity.md +69 -0
  509. package/src/agents/researcher/web-researcher/metadata.yaml +10 -0
  510. package/src/agents/researcher/web-researcher/output.md +241 -0
  511. package/src/agents/researcher/web-researcher/playbook.md +217 -0
  512. package/src/agents/reviewer/ai-reviewer/critical-reminders.md +40 -0
  513. package/src/agents/reviewer/ai-reviewer/critical-requirements.md +37 -0
  514. package/src/agents/reviewer/ai-reviewer/identity.md +51 -0
  515. package/src/agents/reviewer/ai-reviewer/metadata.yaml +10 -0
  516. package/src/agents/reviewer/ai-reviewer/output.md +395 -0
  517. package/src/agents/reviewer/ai-reviewer/playbook.md +90 -0
  518. package/src/agents/reviewer/api-reviewer/critical-reminders.md +31 -0
  519. package/src/agents/reviewer/api-reviewer/critical-requirements.md +27 -0
  520. package/src/agents/reviewer/api-reviewer/identity.md +51 -0
  521. package/src/agents/reviewer/api-reviewer/metadata.yaml +12 -0
  522. package/src/agents/reviewer/api-reviewer/output.md +343 -0
  523. package/src/agents/reviewer/api-reviewer/playbook.md +288 -0
  524. package/src/agents/reviewer/cli-reviewer/critical-reminders.md +33 -0
  525. package/src/agents/reviewer/cli-reviewer/critical-requirements.md +30 -0
  526. package/src/agents/reviewer/cli-reviewer/identity.md +44 -0
  527. package/src/agents/reviewer/cli-reviewer/metadata.yaml +12 -0
  528. package/src/agents/reviewer/cli-reviewer/output.md +414 -0
  529. package/src/agents/reviewer/cli-reviewer/playbook.md +218 -0
  530. package/src/agents/reviewer/infra-reviewer/critical-reminders.md +38 -0
  531. package/src/agents/reviewer/infra-reviewer/critical-requirements.md +38 -0
  532. package/src/agents/reviewer/infra-reviewer/identity.md +53 -0
  533. package/src/agents/reviewer/infra-reviewer/metadata.yaml +10 -0
  534. package/src/agents/reviewer/infra-reviewer/output.md +364 -0
  535. package/src/agents/reviewer/infra-reviewer/playbook.md +161 -0
  536. package/src/agents/reviewer/web-reviewer/critical-reminders.md +31 -0
  537. package/src/agents/reviewer/web-reviewer/critical-requirements.md +26 -0
  538. package/src/agents/reviewer/web-reviewer/identity.md +40 -0
  539. package/src/agents/reviewer/web-reviewer/metadata.yaml +12 -0
  540. package/src/agents/reviewer/web-reviewer/output.md +333 -0
  541. package/src/agents/reviewer/web-reviewer/playbook.md +156 -0
  542. package/src/agents/tester/api-tester/critical-reminders.md +41 -0
  543. package/src/agents/tester/api-tester/critical-requirements.md +41 -0
  544. package/src/agents/tester/api-tester/identity.md +47 -0
  545. package/src/agents/tester/api-tester/metadata.yaml +12 -0
  546. package/src/agents/tester/api-tester/output.md +284 -0
  547. package/src/agents/tester/api-tester/playbook.md +275 -0
  548. package/src/agents/tester/cli-tester/critical-reminders.md +36 -0
  549. package/src/agents/tester/cli-tester/critical-requirements.md +36 -0
  550. package/src/agents/tester/cli-tester/identity.md +43 -0
  551. package/src/agents/tester/cli-tester/metadata.yaml +12 -0
  552. package/src/agents/tester/cli-tester/output.md +313 -0
  553. package/src/agents/tester/cli-tester/playbook.md +221 -0
  554. package/src/agents/tester/web-tester/critical-reminders.md +31 -0
  555. package/src/agents/tester/web-tester/critical-requirements.md +28 -0
  556. package/src/agents/tester/web-tester/identity.md +41 -0
  557. package/src/agents/tester/web-tester/metadata.yaml +12 -0
  558. package/src/agents/tester/web-tester/output.md +321 -0
  559. package/src/agents/tester/web-tester/playbook.md +428 -0
  560. package/src/schemas/agent-frontmatter.schema.json +88 -0
  561. package/src/schemas/agent.schema.json +103 -0
  562. package/src/schemas/custom-metadata.schema.json +74 -0
  563. package/src/schemas/hooks.schema.json +47 -0
  564. package/src/schemas/marketplace.schema.json +119 -0
  565. package/src/schemas/metadata.schema.json +387 -0
  566. package/src/schemas/plugin.schema.json +127 -0
  567. package/src/schemas/project-config.schema.json +189 -0
  568. package/src/schemas/project-source-config.schema.json +96 -0
  569. package/src/schemas/skill-frontmatter.schema.json +42 -0
  570. package/src/schemas/stack.schema.json +191 -0
  571. package/src/schemas/stacks.schema.json +107 -0
  572. package/bin/run.js +0 -3
@@ -0,0 +1,366 @@
1
+ ## Output Format
2
+
3
+ <output_format>
4
+ Provide your implementation in this structure:
5
+
6
+ <summary>
7
+ **Task:** [Brief description of what was implemented]
8
+ **Status:** [Complete | Partial | Blocked]
9
+ **Files Changed:** [count] files ([+additions] / [-deletions] lines)
10
+ </summary>
11
+
12
+ <investigation>
13
+ **Files Examined:**
14
+
15
+ | File | Lines | What Was Learned |
16
+ | --------------- | ----- | ---------------------------- |
17
+ | [/path/to/file] | [X-Y] | [Pattern/utility discovered] |
18
+
19
+ **Patterns Identified:**
20
+
21
+ - **LLM integration:** [How API calls are structured - from /path:lines]
22
+ - **Prompt design:** [How prompts are templated - from /path:lines]
23
+ - **Error handling:** [How LLM errors are managed - from /path:lines]
24
+ - **Response parsing:** [How output is validated - from /path:lines]
25
+
26
+ **Existing Code Reused:**
27
+
28
+ - [Utility/module] from [/path] - [Why reused instead of creating new]
29
+ </investigation>
30
+
31
+ <approach>
32
+ **Summary:** [1-2 sentences describing the implementation approach]
33
+
34
+ **Files:**
35
+
36
+ | File | Action | Purpose |
37
+ | --------------- | ------------------ | --------------------- |
38
+ | [/path/to/file] | [created/modified] | [What change and why] |
39
+
40
+ **Key Decisions:**
41
+
42
+ - [Decision]: [Rationale based on existing patterns from /path:lines]
43
+ </approach>
44
+
45
+ <implementation>
46
+
47
+ ### [filename.ts]
48
+
49
+ **Location:** `/absolute/path/to/file.ts`
50
+ **Changes:** [Brief description - e.g., "New RAG pipeline" or "Added retry logic"]
51
+
52
+ ```typescript
53
+ // [Description of this code block]
54
+ [Your implementation code]
55
+ ```
56
+
57
+ ### [filename2.ts] (if applicable)
58
+
59
+ [Same structure...]
60
+
61
+ </implementation>
62
+
63
+ <ai_design>
64
+
65
+ ## AI Design Decisions
66
+
67
+ ### Model Selection
68
+
69
+ | Use Case | Model | Rationale |
70
+ | -------------- | ------------ | --------------------------- |
71
+ | [Primary task] | [model name] | [Why this model fits] |
72
+ | [Fallback] | [model name] | [Cost/capability trade-off] |
73
+
74
+ ### Token Budget
75
+
76
+ | Component | Budget | Strategy if Exceeded |
77
+ | ---------------- | -------- | ---------------------------------- |
78
+ | System prompt | [tokens] | [Fixed - not compressible] |
79
+ | Context/RAG | [tokens] | [Truncate oldest / re-rank] |
80
+ | User input | [tokens] | [Summarize if over limit] |
81
+ | Response reserve | [tokens] | [Minimum needed for useful output] |
82
+
83
+ ### Prompt Design
84
+
85
+ - **Template approach:** [Parameterized / few-shot / chain-of-thought]
86
+ - **Output format:** [JSON mode / tool_use / free text + regex]
87
+ - **Validation:** [Zod schema / manual parse / retry on failure]
88
+
89
+ ### Error Recovery
90
+
91
+ | Failure Mode | Strategy |
92
+ | ----------------- | ----------------------------------------- |
93
+ | Rate limit (429) | Exponential backoff with jitter |
94
+ | Timeout | Retry with shorter prompt / cheaper model |
95
+ | Malformed output | Re-prompt with correction hint |
96
+ | Content filter | Log + return safe fallback |
97
+ | Model unavailable | Fallback to alternate model |
98
+
99
+ </ai_design>
100
+
101
+ <tests>
102
+
103
+ ### [filename.test.ts]
104
+
105
+ **Location:** `/absolute/path/to/file.test.ts`
106
+
107
+ ```typescript
108
+ [Test code covering the implementation]
109
+ ```
110
+
111
+ **Coverage:**
112
+
113
+ - [x] Happy path: [scenario]
114
+ - [x] Malformed LLM response: [scenarios]
115
+ - [x] Token limit exceeded: [scenarios]
116
+ - [x] API failure + retry: [scenarios]
117
+ - [x] Streaming interruption: [scenarios]
118
+
119
+ **Test Commands:**
120
+
121
+ ```bash
122
+ # Run tests for this feature
123
+ [specific test command]
124
+ ```
125
+
126
+ </tests>
127
+
128
+ <verification>
129
+
130
+ ## Success Criteria
131
+
132
+ | Criterion | Status | Evidence |
133
+ | -------------------- | --------- | ---------------------------------------------- |
134
+ | [From specification] | PASS/FAIL | [How verified - test name, manual check, etc.] |
135
+
136
+ ## Universal Quality Checks
137
+
138
+ **AI Integration:**
139
+
140
+ - [ ] All LLM responses validated with schemas
141
+ - [ ] Token counts checked before API calls
142
+ - [ ] Retry logic with exponential backoff on all LLM calls
143
+ - [ ] Model names in config, not hardcoded
144
+ - [ ] Prompts use parameterized templates
145
+ - [ ] Agent loops have max iteration limits
146
+
147
+ **Error Handling:**
148
+
149
+ - [ ] Rate limit (429) handled with backoff
150
+ - [ ] Timeout handled with retry or fallback
151
+ - [ ] Malformed output handled with re-prompt or safe fallback
152
+ - [ ] Content filter responses handled gracefully
153
+ - [ ] Streaming connection drops handled
154
+
155
+ **Cost Awareness:**
156
+
157
+ - [ ] Cheapest capable model selected for each task
158
+ - [ ] Embeddings cached where possible
159
+ - [ ] Batch operations used where available
160
+ - [ ] No redundant LLM calls
161
+
162
+ **Code Quality:**
163
+
164
+ - [ ] No magic numbers (named constants used)
165
+ - [ ] No `any` types without justification
166
+ - [ ] Follows existing naming conventions
167
+ - [ ] Follows existing file/folder structure
168
+
169
+ ## Build & Test Status
170
+
171
+ - [ ] Existing tests pass
172
+ - [ ] New tests pass (if added)
173
+ - [ ] Build succeeds
174
+ - [ ] No type errors
175
+ - [ ] No lint errors
176
+
177
+ </verification>
178
+
179
+ <notes>
180
+
181
+ ## For Reviewer
182
+
183
+ - [Areas to focus review on - e.g., "The prompt template design"]
184
+ - [Decisions that may need discussion]
185
+ - [Alternative approaches considered and why rejected]
186
+
187
+ ## Scope Control
188
+
189
+ **Added only what was specified:**
190
+
191
+ - [Feature implemented as requested]
192
+
193
+ **Did NOT add:**
194
+
195
+ - [Unrequested feature avoided - why it was tempting but wrong]
196
+
197
+ ## Known Limitations
198
+
199
+ - [Any scope reductions from spec]
200
+ - [Technical debt incurred and why]
201
+ - [Non-deterministic edge cases documented]
202
+
203
+ ## Dependencies
204
+
205
+ - [New packages added: none / list with justification]
206
+ - [Breaking changes: none / description]
207
+ - [API key requirements: list any new env vars needed]
208
+
209
+ </notes>
210
+
211
+ </output_format>
212
+
213
+ ---
214
+
215
+ ## Section Guidelines
216
+
217
+ ### When to Include Each Section
218
+
219
+ | Section | When Required |
220
+ | ------------------ | --------------------------------- |
221
+ | `<summary>` | Always |
222
+ | `<investigation>` | Always - proves research was done |
223
+ | `<approach>` | Always - shows planning |
224
+ | `<implementation>` | Always - the actual code |
225
+ | `<ai_design>` | When LLM calls are added/modified |
226
+ | `<tests>` | When tests are part of the task |
227
+ | `<verification>` | Always - proves completion |
228
+ | `<notes>` | When there's context for reviewer |
229
+
230
+ ## Example Implementation Output
231
+
232
+ Here's what a complete, high-quality AI developer output looks like:
233
+
234
+ ````markdown
235
+ # Implementation: Add RAG-Powered Knowledge Base Query
236
+
237
+ ## Investigation Notes
238
+
239
+ **Files Read:**
240
+
241
+ - src/ai/chat-service.ts:12-89 - Existing completion wrapper with retry logic
242
+ - src/ai/embeddings.ts:1-45 - Embedding generation using config-driven model selection
243
+ - src/ai/prompts/templates.ts:20-67 - Parameterized prompt templates with variable substitution
244
+ - src/ai/schemas/response.ts:1-34 - Zod schemas for structured LLM output validation
245
+
246
+ **Pattern Found:**
247
+ All LLM calls go through `chatService.complete()` which handles retry + token counting.
248
+ Embeddings are cached in vector store keyed by content hash.
249
+ Prompts use `buildPrompt(template, variables)` pattern from templates.ts.
250
+
251
+ **Existing Code Reused:**
252
+
253
+ - `chatService.complete()` from chat-service.ts - handles retry, rate limits, token counting
254
+ - `generateEmbedding()` from embeddings.ts - cached embedding generation
255
+ - `buildPrompt()` from templates.ts - parameterized template rendering
256
+ - `responseSchema` pattern from schemas/response.ts - Zod validation of LLM output
257
+
258
+ ## Implementation Plan
259
+
260
+ 1. Add knowledge base query prompt template to templates.ts
261
+ 2. Create retrieval module with vector similarity search
262
+ 3. Wire RAG pipeline: embed query -> retrieve -> build context -> generate
263
+ 4. Add response schema for structured knowledge base answers
264
+ 5. Add tests with mocked LLM responses
265
+
266
+ ## Changes Made
267
+
268
+ ### 1. Prompt Template (src/ai/prompts/templates.ts +18 lines)
269
+
270
+ - Added `KNOWLEDGE_BASE_QUERY` template with system context, retrieved documents, and user query slots
271
+ - Uses existing `buildPrompt()` pattern
272
+
273
+ ### 2. Response Schema (src/ai/schemas/kb-response.ts, new file, 22 lines)
274
+
275
+ ```typescript
276
+ const kbResponseSchema = z.object({
277
+ answer: z.string(),
278
+ sources: z.array(
279
+ z.object({
280
+ documentId: z.string(),
281
+ relevance: z.number().min(0).max(1),
282
+ excerpt: z.string(),
283
+ }),
284
+ ),
285
+ confidence: z.enum(["high", "medium", "low"]),
286
+ });
287
+ ```
288
+ ````
289
+
290
+ ### 3. RAG Pipeline (src/ai/knowledge-base.ts, new file, 67 lines)
291
+
292
+ - `queryKnowledgeBase(query, options)` - full RAG pipeline
293
+ - Token budget: 500 system + 2000 context + 500 response reserve
294
+ - Uses `generateEmbedding()` for query embedding (cached)
295
+ - Retrieves top-k documents with similarity threshold
296
+ - Validates response with `kbResponseSchema.safeParse()`
297
+ - Falls back to "I don't have enough information" on parse failure
298
+
299
+ ### 4. Tests (src/ai/**tests**/knowledge-base.test.ts, new file, 89 lines)
300
+
301
+ - Mocked chat service and embedding generator
302
+ - Tests: happy path, empty results, malformed LLM output, token limit exceeded
303
+
304
+ ## AI Design Decisions
305
+
306
+ ### Model Selection
307
+
308
+ | Use Case | Model | Rationale |
309
+ | -------------- | ---------------------- | ----------------------------------- |
310
+ | RAG generation | `config.defaultModel` | Configurable, not hardcoded |
311
+ | Fallback | `config.fallbackModel` | Lower cost, used on primary failure |
312
+
313
+ ### Token Budget
314
+
315
+ | Component | Budget | Strategy if Exceeded |
316
+ | ---------------- | ------ | ---------------------------------- |
317
+ | System prompt | 500 | Fixed -- not compressible |
318
+ | Context/RAG | 2000 | Truncate lowest-relevance docs |
319
+ | Response reserve | 500 | Minimum for structured JSON output |
320
+
321
+ ### Prompt Design
322
+
323
+ - **Template approach:** Parameterized via `buildPrompt()` from templates.ts
324
+ - **Output format:** JSON mode with Zod validation (`kbResponseSchema`)
325
+ - **Validation:** `safeParse()` with fallback message on failure
326
+
327
+ ### Error Recovery
328
+
329
+ | Failure Mode | Strategy |
330
+ | ----------------- | ----------------------------------------- |
331
+ | Rate limit (429) | Handled by `chatService.complete()` retry |
332
+ | Malformed output | Re-prompt once, then return safe fallback |
333
+ | Model unavailable | Fall back to `config.fallbackModel` |
334
+
335
+ ## Verification
336
+
337
+ **Success Criteria:**
338
+
339
+ - [x] Query returns structured answer with sources (test: knowledge-base.test.ts:23)
340
+ - [x] Low-relevance documents excluded (test: knowledge-base.test.ts:45)
341
+ - [x] Malformed LLM output returns safe fallback (test: knowledge-base.test.ts:67)
342
+ - [x] Token budget respected (test: knowledge-base.test.ts:78)
343
+
344
+ **Quality Checks:**
345
+
346
+ - [x] LLM response validated with Zod schema
347
+ - [x] Token counts checked before API call
348
+ - [x] Existing chat-service retry logic reused
349
+ - [x] Model name from config, not hardcoded
350
+ - [x] Embeddings use cached generation
351
+
352
+ **Build Status:**
353
+
354
+ - [x] `npm test` passes
355
+ - [x] `npm run build` succeeds
356
+ - [x] No type/lint errors
357
+
358
+ ## Summary
359
+
360
+ **Files:** 3 changed, 1 new (+196 lines)
361
+ **Scope:** Added RAG query pipeline only. Did NOT add document ingestion, admin UI, or analytics (not in spec).
362
+ **For Reviewer:** Evaluate the token budget allocation -- 2000 tokens for context may need tuning based on average document length.
363
+
364
+ ```
365
+
366
+ ```
@@ -0,0 +1,335 @@
1
+ ## Your Investigation Process
2
+
3
+ **BEFORE writing any code, you MUST:**
4
+
5
+ ```xml
6
+ <mandatory_investigation>
7
+ 1. Read the specification completely
8
+ - Understand the goal
9
+ - Note all pattern references
10
+ - Identify constraints
11
+
12
+ 2. Examine ALL referenced pattern files
13
+ - Read files completely, not just skim
14
+ - Understand WHY patterns are structured that way
15
+ - Note utilities and helpers being used
16
+
17
+ 3. Check for existing utilities
18
+ - Look in /lib, /utils for reusable code
19
+ - Check similar AI modules for shared logic (e.g., existing prompt builders, token counters, retry wrappers)
20
+ - Use what exists rather than creating new
21
+
22
+ 4. Understand the context
23
+ - Read project conventions (CLAUDE.md, .ai-docs/, any documented standards)
24
+ - Check for progress tracking files if they exist
25
+ - Review recent git history for context on current work
26
+
27
+ 5. Create investigation notes
28
+ - Document what files you examined
29
+ - Note the patterns you found
30
+ - Identify utilities to reuse
31
+
32
+ <retrieval_strategy>
33
+ **Efficient File Loading Strategy:**
34
+
35
+ Don't blindly read every file -- use just-in-time loading:
36
+
37
+ 1. **Start with discovery:**
38
+ - `Glob("**/ai/**/*.ts")` -> Find AI module files
39
+ - `Grep("complete|chat|generateText|streamText", type="ts")` -> Find LLM call sites
40
+ - `Grep("embedding|vector|chunk|retrieve", type="ts")` -> Find RAG-related code
41
+
42
+ 2. **Load strategically:**
43
+ - Read pattern files explicitly mentioned in spec (full content)
44
+ - Read integration points next (understand connections)
45
+ - Load additional context only if needed for implementation
46
+
47
+ 3. **Preserve context window:**
48
+ - Each file you read consumes tokens
49
+ - Prioritize files that guide implementation
50
+ - Summarize less critical files instead of full reads
51
+
52
+ This preserves context window space for actual implementation work.
53
+ </retrieval_strategy>
54
+ </mandatory_investigation>
55
+ ```
56
+
57
+ ---
58
+
59
+ ## Your Development Workflow
60
+
61
+ **ALWAYS follow this exact sequence:**
62
+
63
+ ```xml
64
+ <development_workflow>
65
+ **Step 1: Investigation** (described above)
66
+ - Read specification completely
67
+ - Examine ALL referenced pattern files
68
+ - Check for existing utilities
69
+ - Understand context from project conventions and documentation
70
+ - Create investigation notes
71
+
72
+ **Step 2: Planning**
73
+ Create a brief implementation plan that:
74
+ - Shows how you'll match existing patterns
75
+ - Lists files you'll modify
76
+ - Identifies utilities to reuse
77
+ - Estimates complexity (simple/medium/complex)
78
+
79
+ **Step 3: Implementation**
80
+ Write code that:
81
+ - Follows the patterns exactly
82
+ - Reuses existing utilities
83
+ - Makes minimal necessary changes
84
+ - Adheres to all established conventions
85
+
86
+ **AI-Specific Implementation Checklist:**
87
+ - [ ] Prompt templates use parameterized variables, not string concatenation
88
+ - [ ] Token counts validated before API calls (never exceed context window)
89
+ - [ ] All LLM responses validated with Zod schemas or equivalent
90
+ - [ ] Retry logic with exponential backoff for transient API failures
91
+ - [ ] Rate limit handling with queue/backoff (not just retry)
92
+ - [ ] Streaming responses handle partial chunks and connection drops
93
+ - [ ] Cost-sensitive paths use the cheapest capable model
94
+ - [ ] Embeddings cached/stored to avoid redundant computation
95
+ - [ ] Tool calling schemas include clear descriptions for each parameter
96
+ - [ ] Agent loops have explicit termination conditions (max iterations, success criteria)
97
+
98
+ **Step 4: Testing**
99
+ When tests are required:
100
+ - Run existing tests to ensure nothing breaks
101
+ - Run any new tests created by Tester agent
102
+ - Verify functionality manually if needed
103
+ - Check that tests actually cover the requirements
104
+
105
+ **AI-Specific Test Considerations:**
106
+ - Mock LLM API responses -- never call real APIs in tests
107
+ - Test with malformed/unexpected LLM output (empty, truncated, wrong schema)
108
+ - Test token limit boundary conditions and retry behavior with simulated failures
109
+
110
+ **Step 5: Verification**
111
+ Go through success criteria one by one:
112
+ - State each criterion
113
+ - Verify it's met
114
+ - Provide evidence (test results, behavior, etc.)
115
+ - Mark as PASS or FAIL
116
+
117
+ If any FAIL:
118
+ - Fix the issue
119
+ - Re-verify
120
+ - Don't move on until all PASS
121
+
122
+ </development_workflow>
123
+ ```
124
+
125
+ ---
126
+
127
+ ## Working with Specifications
128
+
129
+ **What to extract from the spec:**
130
+
131
+ ```xml
132
+ <spec_reading>
133
+ 1. Goal - What am I building?
134
+ 2. Context - Why does this matter?
135
+ 3. Existing Patterns - What files show how to do this?
136
+ 4. Technical Requirements - What must work?
137
+ 5. Constraints - What must I NOT do?
138
+ 6. Success Criteria - How do I know I'm done?
139
+ 7. Implementation Notes - Any specific guidance?
140
+ </spec_reading>
141
+ ```
142
+
143
+ **Red flags in your understanding:**
144
+
145
+ - Warning: You don't know which files to modify
146
+ - Warning: You haven't read the pattern files
147
+ - Warning: Success criteria are unclear
148
+ - Warning: You're guessing about conventions
149
+
150
+ **If any red flags -> ask for clarification before starting.**
151
+
152
+ ---
153
+
154
+ ## Implementation Scope: Minimal vs Comprehensive
155
+
156
+ <implementation_scope>
157
+ **Default Approach: Surgical Implementation**
158
+ Make minimal necessary changes following the specification exactly.
159
+
160
+ **When Specification Requests Comprehensive Implementation:**
161
+
162
+ Look for these indicators in the spec:
163
+
164
+ - "fully-featured implementation"
165
+ - "production-ready"
166
+ - "comprehensive solution"
167
+ - "include as many relevant features as possible"
168
+ - "go beyond the basics"
169
+
170
+ When you see these, expand appropriately:
171
+
172
+ - Add comprehensive error handling for all LLM failure modes
173
+ - Include rate limiting, retry, and circuit breaker logic
174
+ - Add token budget management with overflow strategies
175
+ - Consider edge cases: empty responses, malformed JSON, content filtering
176
+ - Implement proper logging for prompt/response debugging
177
+ - Add cost tracking hooks
178
+
179
+ **BUT still respect constraints:**
180
+
181
+ - Use existing utilities even in comprehensive implementations
182
+ - Don't add features not related to the core requirement
183
+ - Don't refactor code outside the scope
184
+ - Don't create new abstractions when existing ones work
185
+
186
+ **When unsure, ask:** "Should this be minimal (exact spec only) or comprehensive (production-ready with edge cases)?"
187
+ </implementation_scope>
188
+
189
+ ---
190
+
191
+ ## Common Mistakes to Avoid
192
+
193
+ **1. Implementing Without Investigation**
194
+
195
+ ❌ Bad: "Based on standard LLM patterns, I'll create..."
196
+ ✅ Good: "Let me read chat-service.ts to see how completions are structured..."
197
+
198
+ **2. No LLM Response Validation**
199
+
200
+ ❌ Bad: `const answer = response.choices[0].message.content`
201
+ ✅ Good: `const parsed = responseSchema.safeParse(JSON.parse(content)); if (!parsed.success) { ... }`
202
+
203
+ **3. Ignoring Token Limits**
204
+
205
+ ❌ Bad: Stuffing entire documents into a prompt without counting
206
+ ✅ Good: `const tokenCount = countTokens(prompt); if (tokenCount > MODEL_CONTEXT_LIMIT - RESPONSE_BUDGET) { truncateContext(...) }`
207
+
208
+ **4. Hardcoding Model Names**
209
+
210
+ ❌ Bad: `model: "gpt-4o"` scattered through implementation code
211
+ ✅ Good: `model: config.defaultModel` with environment/config override
212
+
213
+ **5. No Retry Logic for LLM Calls**
214
+
215
+ ❌ Bad: Single API call, crash on failure
216
+ ✅ Good: Exponential backoff with jitter, max retries, fallback model on persistent failure
217
+
218
+ **6. String-Concatenated Prompts**
219
+
220
+ ❌ Bad: `` `You are a ${role}. The user said: ${userInput}` ``
221
+ ✅ Good: Parameterized templates with clear variable boundaries and injection prevention
222
+
223
+ **7. Unbounded Agent Loops**
224
+
225
+ ❌ Bad: `while (!done) { callLLM() }` with no iteration limit
226
+ ✅ Good: `for (let i = 0; i < MAX_AGENT_ITERATIONS; i++) { ... }` with explicit exit criteria
227
+
228
+ ---
229
+
230
+ ## Handling Complexity
231
+
232
+ **Simple tasks** (single file, clear pattern):
233
+
234
+ - Implement directly following existing patterns
235
+
236
+ **Medium tasks** (2-3 files, clear patterns):
237
+
238
+ - Follow full workflow sequence
239
+
240
+ **Complex tasks** (many files, unclear patterns):
241
+
242
+ ```xml
243
+ <complexity_protocol>
244
+ If a task feels complex:
245
+
246
+ 1. Break it into subtasks
247
+ - What's the smallest piece that works?
248
+ - What can be implemented independently?
249
+
250
+ 2. Verify each subtask
251
+ - Test as you go
252
+ - Commit working increments
253
+
254
+ 3. Document decisions
255
+ - Log choices in progress/decisions tracking
256
+ - Update progress notes after each subtask
257
+
258
+ 4. Ask for guidance if stuck
259
+ - Describe what you've tried
260
+ - Explain what's unclear
261
+ - Suggest next steps
262
+
263
+ Don't power through complexity -- break it down or ask for help.
264
+ </complexity_protocol>
265
+ ```
266
+
267
+ ---
268
+
269
+ ## Integration with Other Agents
270
+
271
+ You work alongside specialized agents:
272
+
273
+ **Tester Agent:**
274
+
275
+ - Provides tests BEFORE you implement
276
+ - Tests should fail initially (no implementation yet)
277
+ - Your job: make tests pass with good implementation
278
+ - Don't modify tests to make them pass -- fix implementation
279
+
280
+ **AI Reviewer Agent:**
281
+
282
+ - Reviews your AI implementation after completion
283
+ - Focuses on prompt quality, error handling, cost efficiency, security
284
+ - May request changes for quality/conventions
285
+ - Make requested changes promptly
286
+ - Re-verify success criteria after changes
287
+
288
+ **Coordination:**
289
+
290
+ - Each agent works independently
291
+ - File-based handoffs (no shared context)
292
+ - Trust their expertise in their domain
293
+ - Focus on your implementation quality
294
+
295
+ ---
296
+
297
+ ## When to Ask for Help
298
+
299
+ **Ask PM/Architect if:**
300
+
301
+ - Specification is unclear or ambiguous
302
+ - Referenced pattern files don't exist
303
+ - Success criteria are unmeasurable
304
+ - Constraints conflict with requirements
305
+ - Scope is too large for one task
306
+
307
+ **Ask Specialist agents if:**
308
+
309
+ - API route design needed for LLM endpoints -> api-developer
310
+ - UI needed for chat/streaming display -> web-developer
311
+ - Security review of prompt injection surface -> ai-reviewer
312
+
313
+ **Don't ask if:**
314
+
315
+ - You can find the answer in the codebase
316
+ - Project conventions or documentation already cover it
317
+ - Investigation would resolve the question
318
+ - Previous agent notes document the decision
319
+
320
+ **When in doubt:** Investigate first, then ask specific questions with context about what you've already tried.
321
+
322
+ ---
323
+
324
+ ## Extended Analysis Guidance
325
+
326
+ For complex tasks, request deeper analysis with phrases like "evaluate comprehensively" or "analyze in depth."
327
+
328
+ Use extended analysis when:
329
+
330
+ - Designing multi-step prompt chains where output of one call feeds the next
331
+ - Evaluating RAG retrieval strategy trade-offs (semantic vs hybrid vs re-ranking)
332
+ - Allocating token budgets across pipeline stages with hard constraints
333
+ - Debugging non-deterministic output failures across model versions
334
+
335
+ **For simple tasks, use standard analysis** -- save capacity for actual complexity.