@dragonflymcp/plugin 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (666) hide show
  1. package/.claude-plugin/plugin.json +26 -0
  2. package/LICENSE +21 -0
  3. package/README.md +126 -0
  4. package/dist/core/annotations.d.ts +71 -0
  5. package/dist/core/annotations.d.ts.map +1 -0
  6. package/dist/core/annotations.js +61 -0
  7. package/dist/core/annotations.js.map +1 -0
  8. package/dist/core/config.d.ts +66 -0
  9. package/dist/core/config.d.ts.map +1 -0
  10. package/dist/core/config.js +131 -0
  11. package/dist/core/config.js.map +1 -0
  12. package/dist/core/dispatcher.d.ts +77 -0
  13. package/dist/core/dispatcher.d.ts.map +1 -0
  14. package/dist/core/dispatcher.js +132 -0
  15. package/dist/core/dispatcher.js.map +1 -0
  16. package/dist/core/server.d.ts +24 -0
  17. package/dist/core/server.d.ts.map +1 -0
  18. package/dist/core/server.js +41 -0
  19. package/dist/core/server.js.map +1 -0
  20. package/dist/core/store.d.ts +91 -0
  21. package/dist/core/store.d.ts.map +1 -0
  22. package/dist/core/store.js +157 -0
  23. package/dist/core/store.js.map +1 -0
  24. package/dist/core/types.d.ts +128 -0
  25. package/dist/core/types.d.ts.map +1 -0
  26. package/dist/core/types.js +5 -0
  27. package/dist/core/types.js.map +1 -0
  28. package/dist/index.d.ts +22 -0
  29. package/dist/index.d.ts.map +1 -0
  30. package/dist/index.js +81 -0
  31. package/dist/index.js.map +1 -0
  32. package/dist/test-utils/store-harness.d.ts +41 -0
  33. package/dist/test-utils/store-harness.d.ts.map +1 -0
  34. package/dist/test-utils/store-harness.js +61 -0
  35. package/dist/test-utils/store-harness.js.map +1 -0
  36. package/dist/tools/analytics/aggregators.d.ts +18 -0
  37. package/dist/tools/analytics/aggregators.d.ts.map +1 -0
  38. package/dist/tools/analytics/aggregators.js +260 -0
  39. package/dist/tools/analytics/aggregators.js.map +1 -0
  40. package/dist/tools/analytics/aggregators.test.d.ts +2 -0
  41. package/dist/tools/analytics/aggregators.test.d.ts.map +1 -0
  42. package/dist/tools/analytics/aggregators.test.js +177 -0
  43. package/dist/tools/analytics/aggregators.test.js.map +1 -0
  44. package/dist/tools/analytics/drift.d.ts +15 -0
  45. package/dist/tools/analytics/drift.d.ts.map +1 -0
  46. package/dist/tools/analytics/drift.js +135 -0
  47. package/dist/tools/analytics/drift.js.map +1 -0
  48. package/dist/tools/analytics/drift.test.d.ts +2 -0
  49. package/dist/tools/analytics/drift.test.d.ts.map +1 -0
  50. package/dist/tools/analytics/drift.test.js +99 -0
  51. package/dist/tools/analytics/drift.test.js.map +1 -0
  52. package/dist/tools/analytics/index.d.ts +10 -0
  53. package/dist/tools/analytics/index.d.ts.map +1 -0
  54. package/dist/tools/analytics/index.js +192 -0
  55. package/dist/tools/analytics/index.js.map +1 -0
  56. package/dist/tools/analytics/learner.d.ts +29 -0
  57. package/dist/tools/analytics/learner.d.ts.map +1 -0
  58. package/dist/tools/analytics/learner.js +135 -0
  59. package/dist/tools/analytics/learner.js.map +1 -0
  60. package/dist/tools/analytics/learner.test.d.ts +2 -0
  61. package/dist/tools/analytics/learner.test.d.ts.map +1 -0
  62. package/dist/tools/analytics/learner.test.js +118 -0
  63. package/dist/tools/analytics/learner.test.js.map +1 -0
  64. package/dist/tools/analytics/observe.d.ts +22 -0
  65. package/dist/tools/analytics/observe.d.ts.map +1 -0
  66. package/dist/tools/analytics/observe.js +143 -0
  67. package/dist/tools/analytics/observe.js.map +1 -0
  68. package/dist/tools/analytics/observe.test.d.ts +2 -0
  69. package/dist/tools/analytics/observe.test.d.ts.map +1 -0
  70. package/dist/tools/analytics/observe.test.js +95 -0
  71. package/dist/tools/analytics/observe.test.js.map +1 -0
  72. package/dist/tools/analytics/store.d.ts +29 -0
  73. package/dist/tools/analytics/store.d.ts.map +1 -0
  74. package/dist/tools/analytics/store.js +192 -0
  75. package/dist/tools/analytics/store.js.map +1 -0
  76. package/dist/tools/analytics/types.d.ts +290 -0
  77. package/dist/tools/analytics/types.d.ts.map +1 -0
  78. package/dist/tools/analytics/types.js +7 -0
  79. package/dist/tools/analytics/types.js.map +1 -0
  80. package/dist/tools/ast/index.d.ts +8 -0
  81. package/dist/tools/ast/index.d.ts.map +1 -0
  82. package/dist/tools/ast/index.js +242 -0
  83. package/dist/tools/ast/index.js.map +1 -0
  84. package/dist/tools/ast/indexer.d.ts +41 -0
  85. package/dist/tools/ast/indexer.d.ts.map +1 -0
  86. package/dist/tools/ast/indexer.js +617 -0
  87. package/dist/tools/ast/indexer.js.map +1 -0
  88. package/dist/tools/ast/store.d.ts +87 -0
  89. package/dist/tools/ast/store.d.ts.map +1 -0
  90. package/dist/tools/ast/store.js +280 -0
  91. package/dist/tools/ast/store.js.map +1 -0
  92. package/dist/tools/ast/store.test.d.ts +6 -0
  93. package/dist/tools/ast/store.test.d.ts.map +1 -0
  94. package/dist/tools/ast/store.test.js +257 -0
  95. package/dist/tools/ast/store.test.js.map +1 -0
  96. package/dist/tools/bridge/bridge.d.ts +37 -0
  97. package/dist/tools/bridge/bridge.d.ts.map +1 -0
  98. package/dist/tools/bridge/bridge.js +82 -0
  99. package/dist/tools/bridge/bridge.js.map +1 -0
  100. package/dist/tools/bridge/bridge.test.d.ts +2 -0
  101. package/dist/tools/bridge/bridge.test.d.ts.map +1 -0
  102. package/dist/tools/bridge/bridge.test.js +119 -0
  103. package/dist/tools/bridge/bridge.test.js.map +1 -0
  104. package/dist/tools/bridge/index.d.ts +8 -0
  105. package/dist/tools/bridge/index.d.ts.map +1 -0
  106. package/dist/tools/bridge/index.js +153 -0
  107. package/dist/tools/bridge/index.js.map +1 -0
  108. package/dist/tools/bridge/store.d.ts +45 -0
  109. package/dist/tools/bridge/store.d.ts.map +1 -0
  110. package/dist/tools/bridge/store.js +307 -0
  111. package/dist/tools/bridge/store.js.map +1 -0
  112. package/dist/tools/bridge/store.test.d.ts +2 -0
  113. package/dist/tools/bridge/store.test.d.ts.map +1 -0
  114. package/dist/tools/bridge/store.test.js +180 -0
  115. package/dist/tools/bridge/store.test.js.map +1 -0
  116. package/dist/tools/bridge/types.d.ts +44 -0
  117. package/dist/tools/bridge/types.d.ts.map +1 -0
  118. package/dist/tools/bridge/types.js +6 -0
  119. package/dist/tools/bridge/types.js.map +1 -0
  120. package/dist/tools/evolve/algorithm.d.ts +33 -0
  121. package/dist/tools/evolve/algorithm.d.ts.map +1 -0
  122. package/dist/tools/evolve/algorithm.js +64 -0
  123. package/dist/tools/evolve/algorithm.js.map +1 -0
  124. package/dist/tools/evolve/algorithm.test.d.ts +6 -0
  125. package/dist/tools/evolve/algorithm.test.d.ts.map +1 -0
  126. package/dist/tools/evolve/algorithm.test.js +138 -0
  127. package/dist/tools/evolve/algorithm.test.js.map +1 -0
  128. package/dist/tools/evolve/index.d.ts +11 -0
  129. package/dist/tools/evolve/index.d.ts.map +1 -0
  130. package/dist/tools/evolve/index.js +300 -0
  131. package/dist/tools/evolve/index.js.map +1 -0
  132. package/dist/tools/evolve/store.d.ts +27 -0
  133. package/dist/tools/evolve/store.d.ts.map +1 -0
  134. package/dist/tools/evolve/store.js +147 -0
  135. package/dist/tools/evolve/store.js.map +1 -0
  136. package/dist/tools/evolve/store.test.d.ts +6 -0
  137. package/dist/tools/evolve/store.test.d.ts.map +1 -0
  138. package/dist/tools/evolve/store.test.js +162 -0
  139. package/dist/tools/evolve/store.test.js.map +1 -0
  140. package/dist/tools/evolve/types.d.ts +38 -0
  141. package/dist/tools/evolve/types.d.ts.map +1 -0
  142. package/dist/tools/evolve/types.js +6 -0
  143. package/dist/tools/evolve/types.js.map +1 -0
  144. package/dist/tools/framework/content-loader.d.ts +45 -0
  145. package/dist/tools/framework/content-loader.d.ts.map +1 -0
  146. package/dist/tools/framework/content-loader.js +258 -0
  147. package/dist/tools/framework/content-loader.js.map +1 -0
  148. package/dist/tools/framework/content-loader.test.d.ts +5 -0
  149. package/dist/tools/framework/content-loader.test.d.ts.map +1 -0
  150. package/dist/tools/framework/content-loader.test.js +262 -0
  151. package/dist/tools/framework/content-loader.test.js.map +1 -0
  152. package/dist/tools/framework/index.d.ts +30 -0
  153. package/dist/tools/framework/index.d.ts.map +1 -0
  154. package/dist/tools/framework/index.js +517 -0
  155. package/dist/tools/framework/index.js.map +1 -0
  156. package/dist/tools/framework/session.d.ts +85 -0
  157. package/dist/tools/framework/session.d.ts.map +1 -0
  158. package/dist/tools/framework/session.js +311 -0
  159. package/dist/tools/framework/session.js.map +1 -0
  160. package/dist/tools/framework/session.test.d.ts +5 -0
  161. package/dist/tools/framework/session.test.d.ts.map +1 -0
  162. package/dist/tools/framework/session.test.js +291 -0
  163. package/dist/tools/framework/session.test.js.map +1 -0
  164. package/dist/tools/framework/sync-evaluator.d.ts +41 -0
  165. package/dist/tools/framework/sync-evaluator.d.ts.map +1 -0
  166. package/dist/tools/framework/sync-evaluator.js +298 -0
  167. package/dist/tools/framework/sync-evaluator.js.map +1 -0
  168. package/dist/tools/framework/sync-evaluator.test.d.ts +5 -0
  169. package/dist/tools/framework/sync-evaluator.test.d.ts.map +1 -0
  170. package/dist/tools/framework/sync-evaluator.test.js +288 -0
  171. package/dist/tools/framework/sync-evaluator.test.js.map +1 -0
  172. package/dist/tools/framework/types.d.ts +279 -0
  173. package/dist/tools/framework/types.d.ts.map +1 -0
  174. package/dist/tools/framework/types.js +6 -0
  175. package/dist/tools/framework/types.js.map +1 -0
  176. package/dist/tools/framework/workflow-intelligence.d.ts +55 -0
  177. package/dist/tools/framework/workflow-intelligence.d.ts.map +1 -0
  178. package/dist/tools/framework/workflow-intelligence.js +199 -0
  179. package/dist/tools/framework/workflow-intelligence.js.map +1 -0
  180. package/dist/tools/framework/workflow-intelligence.test.d.ts +6 -0
  181. package/dist/tools/framework/workflow-intelligence.test.d.ts.map +1 -0
  182. package/dist/tools/framework/workflow-intelligence.test.js +257 -0
  183. package/dist/tools/framework/workflow-intelligence.test.js.map +1 -0
  184. package/dist/tools/framework/workflow-planner.d.ts +10 -0
  185. package/dist/tools/framework/workflow-planner.d.ts.map +1 -0
  186. package/dist/tools/framework/workflow-planner.js +214 -0
  187. package/dist/tools/framework/workflow-planner.js.map +1 -0
  188. package/dist/tools/framework/workflow-planner.test.d.ts +5 -0
  189. package/dist/tools/framework/workflow-planner.test.d.ts.map +1 -0
  190. package/dist/tools/framework/workflow-planner.test.js +137 -0
  191. package/dist/tools/framework/workflow-planner.test.js.map +1 -0
  192. package/dist/tools/knowledge/bridge.d.ts +34 -0
  193. package/dist/tools/knowledge/bridge.d.ts.map +1 -0
  194. package/dist/tools/knowledge/bridge.js +249 -0
  195. package/dist/tools/knowledge/bridge.js.map +1 -0
  196. package/dist/tools/knowledge/bridge.test.d.ts +5 -0
  197. package/dist/tools/knowledge/bridge.test.d.ts.map +1 -0
  198. package/dist/tools/knowledge/bridge.test.js +221 -0
  199. package/dist/tools/knowledge/bridge.test.js.map +1 -0
  200. package/dist/tools/knowledge/extractor.d.ts +22 -0
  201. package/dist/tools/knowledge/extractor.d.ts.map +1 -0
  202. package/dist/tools/knowledge/extractor.js +154 -0
  203. package/dist/tools/knowledge/extractor.js.map +1 -0
  204. package/dist/tools/knowledge/index.d.ts +12 -0
  205. package/dist/tools/knowledge/index.d.ts.map +1 -0
  206. package/dist/tools/knowledge/index.js +505 -0
  207. package/dist/tools/knowledge/index.js.map +1 -0
  208. package/dist/tools/knowledge/retrieval.d.ts +28 -0
  209. package/dist/tools/knowledge/retrieval.d.ts.map +1 -0
  210. package/dist/tools/knowledge/retrieval.js +164 -0
  211. package/dist/tools/knowledge/retrieval.js.map +1 -0
  212. package/dist/tools/knowledge/store.d.ts +96 -0
  213. package/dist/tools/knowledge/store.d.ts.map +1 -0
  214. package/dist/tools/knowledge/store.js +562 -0
  215. package/dist/tools/knowledge/store.js.map +1 -0
  216. package/dist/tools/knowledge/store.test.d.ts +6 -0
  217. package/dist/tools/knowledge/store.test.d.ts.map +1 -0
  218. package/dist/tools/knowledge/store.test.js +385 -0
  219. package/dist/tools/knowledge/store.test.js.map +1 -0
  220. package/dist/tools/knowledge/types.d.ts +168 -0
  221. package/dist/tools/knowledge/types.d.ts.map +1 -0
  222. package/dist/tools/knowledge/types.js +6 -0
  223. package/dist/tools/knowledge/types.js.map +1 -0
  224. package/dist/tools/memory/evolution.d.ts +31 -0
  225. package/dist/tools/memory/evolution.d.ts.map +1 -0
  226. package/dist/tools/memory/evolution.js +130 -0
  227. package/dist/tools/memory/evolution.js.map +1 -0
  228. package/dist/tools/memory/index.d.ts +11 -0
  229. package/dist/tools/memory/index.d.ts.map +1 -0
  230. package/dist/tools/memory/index.js +239 -0
  231. package/dist/tools/memory/index.js.map +1 -0
  232. package/dist/tools/memory/store.d.ts +75 -0
  233. package/dist/tools/memory/store.d.ts.map +1 -0
  234. package/dist/tools/memory/store.js +398 -0
  235. package/dist/tools/memory/store.js.map +1 -0
  236. package/dist/tools/memory/store.test.d.ts +6 -0
  237. package/dist/tools/memory/store.test.d.ts.map +1 -0
  238. package/dist/tools/memory/store.test.js +429 -0
  239. package/dist/tools/memory/store.test.js.map +1 -0
  240. package/dist/tools/memory/types.d.ts +171 -0
  241. package/dist/tools/memory/types.d.ts.map +1 -0
  242. package/dist/tools/memory/types.js +6 -0
  243. package/dist/tools/memory/types.js.map +1 -0
  244. package/dist/tools/pipeline/composer.d.ts +29 -0
  245. package/dist/tools/pipeline/composer.d.ts.map +1 -0
  246. package/dist/tools/pipeline/composer.js +225 -0
  247. package/dist/tools/pipeline/composer.js.map +1 -0
  248. package/dist/tools/pipeline/composer.test.d.ts +2 -0
  249. package/dist/tools/pipeline/composer.test.d.ts.map +1 -0
  250. package/dist/tools/pipeline/composer.test.js +162 -0
  251. package/dist/tools/pipeline/composer.test.js.map +1 -0
  252. package/dist/tools/pipeline/index.d.ts +8 -0
  253. package/dist/tools/pipeline/index.d.ts.map +1 -0
  254. package/dist/tools/pipeline/index.js +102 -0
  255. package/dist/tools/pipeline/index.js.map +1 -0
  256. package/dist/tools/pipeline/planner.d.ts +10 -0
  257. package/dist/tools/pipeline/planner.d.ts.map +1 -0
  258. package/dist/tools/pipeline/planner.js +147 -0
  259. package/dist/tools/pipeline/planner.js.map +1 -0
  260. package/dist/tools/pipeline/planner.test.d.ts +2 -0
  261. package/dist/tools/pipeline/planner.test.d.ts.map +1 -0
  262. package/dist/tools/pipeline/planner.test.js +96 -0
  263. package/dist/tools/pipeline/planner.test.js.map +1 -0
  264. package/dist/tools/pipeline/preconditions.d.ts +14 -0
  265. package/dist/tools/pipeline/preconditions.d.ts.map +1 -0
  266. package/dist/tools/pipeline/preconditions.js +65 -0
  267. package/dist/tools/pipeline/preconditions.js.map +1 -0
  268. package/dist/tools/pipeline/preconditions.test.d.ts +2 -0
  269. package/dist/tools/pipeline/preconditions.test.d.ts.map +1 -0
  270. package/dist/tools/pipeline/preconditions.test.js +74 -0
  271. package/dist/tools/pipeline/preconditions.test.js.map +1 -0
  272. package/dist/tools/pipeline/types.d.ts +105 -0
  273. package/dist/tools/pipeline/types.d.ts.map +1 -0
  274. package/dist/tools/pipeline/types.js +6 -0
  275. package/dist/tools/pipeline/types.js.map +1 -0
  276. package/dist/tools/repair/index.d.ts +8 -0
  277. package/dist/tools/repair/index.d.ts.map +1 -0
  278. package/dist/tools/repair/index.js +384 -0
  279. package/dist/tools/repair/index.js.map +1 -0
  280. package/dist/tools/repair/repairer.d.ts +67 -0
  281. package/dist/tools/repair/repairer.d.ts.map +1 -0
  282. package/dist/tools/repair/repairer.js +257 -0
  283. package/dist/tools/repair/repairer.js.map +1 -0
  284. package/dist/tools/repair/repairer.test.d.ts +6 -0
  285. package/dist/tools/repair/repairer.test.d.ts.map +1 -0
  286. package/dist/tools/repair/repairer.test.js +159 -0
  287. package/dist/tools/repair/repairer.test.js.map +1 -0
  288. package/dist/tools/semantic/chunker.d.ts +23 -0
  289. package/dist/tools/semantic/chunker.d.ts.map +1 -0
  290. package/dist/tools/semantic/chunker.js +244 -0
  291. package/dist/tools/semantic/chunker.js.map +1 -0
  292. package/dist/tools/semantic/embedder.d.ts +16 -0
  293. package/dist/tools/semantic/embedder.d.ts.map +1 -0
  294. package/dist/tools/semantic/embedder.js +88 -0
  295. package/dist/tools/semantic/embedder.js.map +1 -0
  296. package/dist/tools/semantic/index.d.ts +8 -0
  297. package/dist/tools/semantic/index.d.ts.map +1 -0
  298. package/dist/tools/semantic/index.js +144 -0
  299. package/dist/tools/semantic/index.js.map +1 -0
  300. package/dist/tools/semantic/store.d.ts +31 -0
  301. package/dist/tools/semantic/store.d.ts.map +1 -0
  302. package/dist/tools/semantic/store.js +168 -0
  303. package/dist/tools/semantic/store.js.map +1 -0
  304. package/dist/tools/semantic/store.test.d.ts +6 -0
  305. package/dist/tools/semantic/store.test.d.ts.map +1 -0
  306. package/dist/tools/semantic/store.test.js +240 -0
  307. package/dist/tools/semantic/store.test.js.map +1 -0
  308. package/dist/tools/spec/generator.d.ts +32 -0
  309. package/dist/tools/spec/generator.d.ts.map +1 -0
  310. package/dist/tools/spec/generator.js +278 -0
  311. package/dist/tools/spec/generator.js.map +1 -0
  312. package/dist/tools/spec/generator.test.d.ts +6 -0
  313. package/dist/tools/spec/generator.test.d.ts.map +1 -0
  314. package/dist/tools/spec/generator.test.js +208 -0
  315. package/dist/tools/spec/generator.test.js.map +1 -0
  316. package/dist/tools/spec/index.d.ts +11 -0
  317. package/dist/tools/spec/index.d.ts.map +1 -0
  318. package/dist/tools/spec/index.js +426 -0
  319. package/dist/tools/spec/index.js.map +1 -0
  320. package/dist/tools/spec/store.d.ts +24 -0
  321. package/dist/tools/spec/store.d.ts.map +1 -0
  322. package/dist/tools/spec/store.js +104 -0
  323. package/dist/tools/spec/store.js.map +1 -0
  324. package/dist/tools/spec/store.test.d.ts +6 -0
  325. package/dist/tools/spec/store.test.d.ts.map +1 -0
  326. package/dist/tools/spec/store.test.js +173 -0
  327. package/dist/tools/spec/store.test.js.map +1 -0
  328. package/dist/tools/spec/types.d.ts +61 -0
  329. package/dist/tools/spec/types.d.ts.map +1 -0
  330. package/dist/tools/spec/types.js +6 -0
  331. package/dist/tools/spec/types.js.map +1 -0
  332. package/dist/tools/state/index.d.ts +11 -0
  333. package/dist/tools/state/index.d.ts.map +1 -0
  334. package/dist/tools/state/index.js +386 -0
  335. package/dist/tools/state/index.js.map +1 -0
  336. package/dist/tools/state/migrate.d.ts +39 -0
  337. package/dist/tools/state/migrate.d.ts.map +1 -0
  338. package/dist/tools/state/migrate.js +242 -0
  339. package/dist/tools/state/migrate.js.map +1 -0
  340. package/dist/tools/state/migrate.test.d.ts +2 -0
  341. package/dist/tools/state/migrate.test.d.ts.map +1 -0
  342. package/dist/tools/state/migrate.test.js +265 -0
  343. package/dist/tools/state/migrate.test.js.map +1 -0
  344. package/dist/tools/state/store.d.ts +107 -0
  345. package/dist/tools/state/store.d.ts.map +1 -0
  346. package/dist/tools/state/store.js +365 -0
  347. package/dist/tools/state/store.js.map +1 -0
  348. package/dist/tools/state/store.test.d.ts +5 -0
  349. package/dist/tools/state/store.test.d.ts.map +1 -0
  350. package/dist/tools/state/store.test.js +293 -0
  351. package/dist/tools/state/store.test.js.map +1 -0
  352. package/dist/tools/state/types.d.ts +90 -0
  353. package/dist/tools/state/types.d.ts.map +1 -0
  354. package/dist/tools/state/types.js +6 -0
  355. package/dist/tools/state/types.js.map +1 -0
  356. package/dist/tools/testing/analyzer.d.ts +44 -0
  357. package/dist/tools/testing/analyzer.d.ts.map +1 -0
  358. package/dist/tools/testing/analyzer.js +280 -0
  359. package/dist/tools/testing/analyzer.js.map +1 -0
  360. package/dist/tools/testing/generator.d.ts +57 -0
  361. package/dist/tools/testing/generator.d.ts.map +1 -0
  362. package/dist/tools/testing/generator.js +478 -0
  363. package/dist/tools/testing/generator.js.map +1 -0
  364. package/dist/tools/testing/generator.test.d.ts +6 -0
  365. package/dist/tools/testing/generator.test.d.ts.map +1 -0
  366. package/dist/tools/testing/generator.test.js +285 -0
  367. package/dist/tools/testing/generator.test.js.map +1 -0
  368. package/dist/tools/testing/index.d.ts +8 -0
  369. package/dist/tools/testing/index.d.ts.map +1 -0
  370. package/dist/tools/testing/index.js +373 -0
  371. package/dist/tools/testing/index.js.map +1 -0
  372. package/dist/utils/embedder.d.ts +7 -0
  373. package/dist/utils/embedder.d.ts.map +1 -0
  374. package/dist/utils/embedder.js +13 -0
  375. package/dist/utils/embedder.js.map +1 -0
  376. package/dist/utils/execution.d.ts +68 -0
  377. package/dist/utils/execution.d.ts.map +1 -0
  378. package/dist/utils/execution.js +467 -0
  379. package/dist/utils/execution.js.map +1 -0
  380. package/dist/utils/graph.d.ts +26 -0
  381. package/dist/utils/graph.d.ts.map +1 -0
  382. package/dist/utils/graph.js +32 -0
  383. package/dist/utils/graph.js.map +1 -0
  384. package/dist/utils/guards.d.ts +32 -0
  385. package/dist/utils/guards.d.ts.map +1 -0
  386. package/dist/utils/guards.js +40 -0
  387. package/dist/utils/guards.js.map +1 -0
  388. package/dist/utils/ids.d.ts +5 -0
  389. package/dist/utils/ids.d.ts.map +1 -0
  390. package/dist/utils/ids.js +7 -0
  391. package/dist/utils/ids.js.map +1 -0
  392. package/dist/utils/languages.d.ts +34 -0
  393. package/dist/utils/languages.d.ts.map +1 -0
  394. package/dist/utils/languages.js +153 -0
  395. package/dist/utils/languages.js.map +1 -0
  396. package/dist/utils/lazy.d.ts +17 -0
  397. package/dist/utils/lazy.d.ts.map +1 -0
  398. package/dist/utils/lazy.js +35 -0
  399. package/dist/utils/lazy.js.map +1 -0
  400. package/dist/utils/project.d.ts +41 -0
  401. package/dist/utils/project.d.ts.map +1 -0
  402. package/dist/utils/project.js +82 -0
  403. package/dist/utils/project.js.map +1 -0
  404. package/dist/utils/responses.d.ts +27 -0
  405. package/dist/utils/responses.d.ts.map +1 -0
  406. package/dist/utils/responses.js +72 -0
  407. package/dist/utils/responses.js.map +1 -0
  408. package/dist/utils/vectors.d.ts +33 -0
  409. package/dist/utils/vectors.d.ts.map +1 -0
  410. package/dist/utils/vectors.js +80 -0
  411. package/dist/utils/vectors.js.map +1 -0
  412. package/dist/utils/vectors.test.d.ts +6 -0
  413. package/dist/utils/vectors.test.d.ts.map +1 -0
  414. package/dist/utils/vectors.test.js +96 -0
  415. package/dist/utils/vectors.test.js.map +1 -0
  416. package/package.json +69 -0
  417. package/scripts/init.js +142 -0
  418. package/templates/CLAUDE.md.template +96 -0
  419. package/templates/agents/architecture-concept.md +237 -0
  420. package/templates/agents/checkpoint-concept.md +218 -0
  421. package/templates/agents/code-analysis-concept.md +171 -0
  422. package/templates/agents/compete-control.md +44 -0
  423. package/templates/agents/compete-evaluator.md +87 -0
  424. package/templates/agents/compete-treatment.md +55 -0
  425. package/templates/agents/context-concept.md +254 -0
  426. package/templates/agents/debate-advocate.md +127 -0
  427. package/templates/agents/debate-critic.md +119 -0
  428. package/templates/agents/debate-synthesis.md +160 -0
  429. package/templates/agents/documentation-concept.md +294 -0
  430. package/templates/agents/implementation-concept.md +165 -0
  431. package/templates/agents/quality-concept.md +299 -0
  432. package/templates/agents/research-concept.md +169 -0
  433. package/templates/agents/security-concept.md +255 -0
  434. package/templates/agents/story-concept.md +207 -0
  435. package/templates/agents/verification-concept.md +456 -0
  436. package/templates/agents/version-concept.md +163 -0
  437. package/templates/anchors/directory.anchor.yaml.template +53 -0
  438. package/templates/anchors/rules.anchor.yaml.template +70 -0
  439. package/templates/anchors/safety.anchor.yaml.template +96 -0
  440. package/templates/claude-md-managed.template +105 -0
  441. package/templates/commands/cache.md.template +439 -0
  442. package/templates/commands/checkpoint.md.template +121 -0
  443. package/templates/commands/classify.md.template +138 -0
  444. package/templates/commands/compete.md.template +90 -0
  445. package/templates/commands/costs.md.template +111 -0
  446. package/templates/commands/estimate.md.template +196 -0
  447. package/templates/commands/explore.md.template +186 -0
  448. package/templates/commands/feature.md.template +216 -0
  449. package/templates/commands/forget.md.template +104 -0
  450. package/templates/commands/global-recall.md.template +250 -0
  451. package/templates/commands/global-remember.md.template +187 -0
  452. package/templates/commands/health.md.template +107 -0
  453. package/templates/commands/help.md.template +253 -0
  454. package/templates/commands/observe.md.template +211 -0
  455. package/templates/commands/pr-review.md.template +164 -0
  456. package/templates/commands/predict-cost.md.template +251 -0
  457. package/templates/commands/profile.md.template +142 -0
  458. package/templates/commands/reasoning.md.template +228 -0
  459. package/templates/commands/recall.md.template +197 -0
  460. package/templates/commands/remember.md.template +148 -0
  461. package/templates/commands/replay.md.template +449 -0
  462. package/templates/commands/restore.md.template +87 -0
  463. package/templates/commands/retrospective.md.template +47 -0
  464. package/templates/commands/slo.md.template +286 -0
  465. package/templates/commands/spec.md.template +164 -0
  466. package/templates/commands/status.md.template +53 -0
  467. package/templates/commands/sync.md.template +321 -0
  468. package/templates/commands/task.md.template +86 -0
  469. package/templates/commands/trace.md.template +86 -0
  470. package/templates/commands/visualize.md.template +216 -0
  471. package/templates/commands/workflow.md.template +375 -0
  472. package/templates/concepts/README.md +329 -0
  473. package/templates/concepts/architecture.md.template +74 -0
  474. package/templates/concepts/code-analysis.md.template +186 -0
  475. package/templates/concepts/context-compactor.md.template +393 -0
  476. package/templates/concepts/context.md.template +62 -0
  477. package/templates/concepts/documentation.md.template +452 -0
  478. package/templates/concepts/estimator.md.template +214 -0
  479. package/templates/concepts/exploration.md.template +257 -0
  480. package/templates/concepts/global-memory.md.template +222 -0
  481. package/templates/concepts/implementation.md.template +62 -0
  482. package/templates/concepts/pr-review.md.template +277 -0
  483. package/templates/concepts/project-profile.md.template +358 -0
  484. package/templates/concepts/quality.md.template +63 -0
  485. package/templates/concepts/react-fallback.md.template +286 -0
  486. package/templates/concepts/research.md.template +221 -0
  487. package/templates/concepts/retrospective.md.template +93 -0
  488. package/templates/concepts/security.md.template +442 -0
  489. package/templates/concepts/slo.md.template +274 -0
  490. package/templates/concepts/spec.md.template +71 -0
  491. package/templates/concepts/story.md.template +50 -0
  492. package/templates/concepts/tool-router.md.template +289 -0
  493. package/templates/concepts/verification-synthesizer.md.template +279 -0
  494. package/templates/concepts/version.md.template +61 -0
  495. package/templates/config.yaml.template +347 -0
  496. package/templates/examples/README.md +77 -0
  497. package/templates/examples/architecture/api-design.yaml.template +286 -0
  498. package/templates/examples/architecture/oauth-authentication.yaml.template +305 -0
  499. package/templates/health/status.yaml.template +120 -0
  500. package/templates/hooks/concept-complete.sh.template +45 -0
  501. package/templates/hooks/lib/common.sh.template +160 -0
  502. package/templates/hooks/post-commit.sh.template +37 -0
  503. package/templates/hooks/post-concept-action.template +39 -0
  504. package/templates/hooks/post-tool-structure-check.sh.template +138 -0
  505. package/templates/hooks/post-tool-use.sh.template +51 -0
  506. package/templates/hooks/pre-compact.sh.template +48 -0
  507. package/templates/hooks/pre-tool-grounding.template +148 -0
  508. package/templates/hooks/session-exit-checkpoint.sh.template +35 -0
  509. package/templates/hooks/session-start.sh.template +67 -0
  510. package/templates/hooks/statusline.sh.template +148 -0
  511. package/templates/hooks/stop.sh.template +45 -0
  512. package/templates/hooks/subagent-stop.sh.template +40 -0
  513. package/templates/hooks/sync-blocked.sh.template +45 -0
  514. package/templates/hooks/timeout.sh.template +48 -0
  515. package/templates/hooks/user-prompt-submit.sh.template +68 -0
  516. package/templates/koan/README.md +58 -0
  517. package/templates/memory/index.yaml.template +48 -0
  518. package/templates/memory/procedural/debugging.yaml.template +24 -0
  519. package/templates/memory/procedural/workflows.yaml.template +22 -0
  520. package/templates/memory/semantic/architecture.yaml.template +21 -0
  521. package/templates/memory/semantic/conventions.yaml.template +18 -0
  522. package/templates/memory/semantic/patterns.yaml.template +21 -0
  523. package/templates/memory/semantic/preferences.yaml.template +18 -0
  524. package/templates/prompts/architecture.yaml.template +349 -0
  525. package/templates/prompts/context.yaml.template +384 -0
  526. package/templates/prompts/implementation.yaml.template +365 -0
  527. package/templates/prompts/planning.yaml.template +303 -0
  528. package/templates/prompts/quality.yaml.template +345 -0
  529. package/templates/prompts/retrospective.yaml.template +231 -0
  530. package/templates/prompts/slo.yaml.template +360 -0
  531. package/templates/prompts/story.yaml.template +236 -0
  532. package/templates/prompts/tree-of-thoughts.yaml.template +299 -0
  533. package/templates/prompts/verification.yaml.template +286 -0
  534. package/templates/prompts/version.yaml.template +279 -0
  535. package/templates/schemas/agent-schema.json +98 -0
  536. package/templates/schemas/architecture.schema.json +69 -0
  537. package/templates/schemas/config-schema.json +165 -0
  538. package/templates/schemas/implementation.schema.json +75 -0
  539. package/templates/schemas/planning.schema.json +243 -0
  540. package/templates/schemas/provenance.schema.json +111 -0
  541. package/templates/schemas/retrospective.schema.json +174 -0
  542. package/templates/schemas/review.schema.json +284 -0
  543. package/templates/schemas/slo.schema.json +443 -0
  544. package/templates/schemas/story.schema.json +68 -0
  545. package/templates/schemas/sync-schema.json +196 -0
  546. package/templates/schemas/task.schema.json +127 -0
  547. package/templates/schemas/tree-of-thoughts.schema.json +175 -0
  548. package/templates/schemas/verification.schema.json +106 -0
  549. package/templates/settings.full.json.template +135 -0
  550. package/templates/settings.minimal.json.template +68 -0
  551. package/templates/settings.standard.json.template +135 -0
  552. package/templates/skills/acceptance-criteria-generation.md.template +330 -0
  553. package/templates/skills/accessibility-checking.md.template +341 -0
  554. package/templates/skills/api-design-patterns.md.template +395 -0
  555. package/templates/skills/batch-processing.md.template +605 -0
  556. package/templates/skills/branch-strategy.md.template +362 -0
  557. package/templates/skills/changelog-generation.md.template +403 -0
  558. package/templates/skills/code-coverage-analysis.md.template +362 -0
  559. package/templates/skills/code-style-enforcement.md.template +294 -0
  560. package/templates/skills/code-template-patterns.md.template +419 -0
  561. package/templates/skills/concept-development.md.template +159 -0
  562. package/templates/skills/context-prioritization.md.template +306 -0
  563. package/templates/skills/cost-optimization.md.template +482 -0
  564. package/templates/skills/cross-project-knowledge.md.template +316 -0
  565. package/templates/skills/dependency-impact-analysis.md.template +263 -0
  566. package/templates/skills/documentation-generation.md.template +409 -0
  567. package/templates/skills/effort-estimation.md.template +350 -0
  568. package/templates/skills/error-classification.md.template +709 -0
  569. package/templates/skills/error-messages.md.template +339 -0
  570. package/templates/skills/ide-diagnostics.md.template +480 -0
  571. package/templates/skills/incremental-loading.md.template +574 -0
  572. package/templates/skills/output-caching.md.template +524 -0
  573. package/templates/skills/performance-estimation.md.template +325 -0
  574. package/templates/skills/performance-testing-patterns.md.template +341 -0
  575. package/templates/skills/phase2-optimizations-summary.md.template +458 -0
  576. package/templates/skills/progressive-disclosure-pattern.md.template +190 -0
  577. package/templates/skills/project-structure.md.template +372 -0
  578. package/templates/skills/provenance-analysis.md.template +609 -0
  579. package/templates/skills/react-executor.md.template +366 -0
  580. package/templates/skills/refactoring-patterns.md.template +422 -0
  581. package/templates/skills/release-management.md.template +373 -0
  582. package/templates/skills/requirement-prioritization.md.template +357 -0
  583. package/templates/skills/schema-validation.md.template +321 -0
  584. package/templates/skills/security-design-patterns.md.template +692 -0
  585. package/templates/skills/security-vulnerability-scanning.md.template +663 -0
  586. package/templates/skills/semantic-memory.md.template +266 -0
  587. package/templates/skills/semantic-versioning.md.template +371 -0
  588. package/templates/skills/smart-retry.md.template +676 -0
  589. package/templates/skills/smart-summarization.md.template +358 -0
  590. package/templates/skills/story-decomposition.md.template +278 -0
  591. package/templates/skills/synchronization-patterns.md.template +303 -0
  592. package/templates/skills/test-generation-strategy.md.template +247 -0
  593. package/templates/skills/workflow-replay.md.template +478 -0
  594. package/templates/skills/wysiwid-principles.md.template +364 -0
  595. package/templates/skills-manifest.yaml.template +526 -0
  596. package/templates/stubs/agents/architecture-concept.md +20 -0
  597. package/templates/stubs/agents/checkpoint-concept.md +19 -0
  598. package/templates/stubs/agents/code-analysis-concept.md +36 -0
  599. package/templates/stubs/agents/context-concept.md +37 -0
  600. package/templates/stubs/agents/debate-advocate.md +12 -0
  601. package/templates/stubs/agents/debate-critic.md +12 -0
  602. package/templates/stubs/agents/debate-synthesis.md +12 -0
  603. package/templates/stubs/agents/documentation-concept.md +39 -0
  604. package/templates/stubs/agents/implementation-concept.md +41 -0
  605. package/templates/stubs/agents/quality-concept.md +41 -0
  606. package/templates/stubs/agents/research-concept.md +35 -0
  607. package/templates/stubs/agents/security-concept.md +40 -0
  608. package/templates/stubs/agents/spec-concept.md +35 -0
  609. package/templates/stubs/agents/story-concept.md +36 -0
  610. package/templates/stubs/agents/verification-concept.md +39 -0
  611. package/templates/stubs/agents/version-concept.md +37 -0
  612. package/templates/stubs/commands/cache.md.template +2 -0
  613. package/templates/stubs/commands/checkpoint.md.template +2 -0
  614. package/templates/stubs/commands/classify.md.template +2 -0
  615. package/templates/stubs/commands/compete.md.template +2 -0
  616. package/templates/stubs/commands/costs.md.template +2 -0
  617. package/templates/stubs/commands/estimate.md.template +2 -0
  618. package/templates/stubs/commands/explore.md.template +2 -0
  619. package/templates/stubs/commands/feature.md.template +2 -0
  620. package/templates/stubs/commands/forget.md.template +2 -0
  621. package/templates/stubs/commands/global-recall.md.template +2 -0
  622. package/templates/stubs/commands/global-remember.md.template +2 -0
  623. package/templates/stubs/commands/health.md.template +2 -0
  624. package/templates/stubs/commands/help.md.template +2 -0
  625. package/templates/stubs/commands/observe.md.template +2 -0
  626. package/templates/stubs/commands/pr-review.md.template +2 -0
  627. package/templates/stubs/commands/predict-cost.md.template +2 -0
  628. package/templates/stubs/commands/profile.md.template +2 -0
  629. package/templates/stubs/commands/reasoning.md.template +2 -0
  630. package/templates/stubs/commands/recall.md.template +2 -0
  631. package/templates/stubs/commands/remember.md.template +2 -0
  632. package/templates/stubs/commands/replay.md.template +2 -0
  633. package/templates/stubs/commands/restore.md.template +2 -0
  634. package/templates/stubs/commands/retrospective.md.template +2 -0
  635. package/templates/stubs/commands/slo.md.template +2 -0
  636. package/templates/stubs/commands/spec.md.template +2 -0
  637. package/templates/stubs/commands/sync.md.template +2 -0
  638. package/templates/stubs/commands/task.md.template +2 -0
  639. package/templates/stubs/commands/trace.md.template +2 -0
  640. package/templates/stubs/commands/visualize.md.template +2 -0
  641. package/templates/stubs/commands/workflow.md.template +2 -0
  642. package/templates/synchronizations/archive/adaptive-learning.yaml.template +595 -0
  643. package/templates/synchronizations/archive/code-understanding-flow.yaml.template +533 -0
  644. package/templates/synchronizations/archive/collaboration-flow.yaml.template +521 -0
  645. package/templates/synchronizations/archive/context-folding.yaml.template +353 -0
  646. package/templates/synchronizations/archive/dead-letter-queue.yaml.template +530 -0
  647. package/templates/synchronizations/archive/documentation-flow.yaml.template +560 -0
  648. package/templates/synchronizations/archive/error-recovery-flow.yaml.template +1031 -0
  649. package/templates/synchronizations/archive/execution-loop.yaml.template +336 -0
  650. package/templates/synchronizations/archive/exploration-flow.yaml.template +369 -0
  651. package/templates/synchronizations/archive/feature-development.yaml.template +2145 -0
  652. package/templates/synchronizations/archive/learning-loop.yaml.template +657 -0
  653. package/templates/synchronizations/archive/multi-verify.yaml.template +346 -0
  654. package/templates/synchronizations/archive/planning-flow.yaml.template +312 -0
  655. package/templates/synchronizations/archive/retrospective-flow.yaml.template +277 -0
  656. package/templates/synchronizations/archive/security-flow.yaml.template +477 -0
  657. package/templates/synchronizations/archive/slo-monitoring.yaml.template +209 -0
  658. package/templates/synchronizations/archive/task-routing.yaml.template +489 -0
  659. package/templates/synchronizations/archive/test-driven.yaml.template +291 -0
  660. package/templates/synchronizations/archive/tool-routing.yaml.template +326 -0
  661. package/templates/synchronizations/archive/verification-flow.yaml.template +407 -0
  662. package/templates/synchronizations/error-policy.yaml.template +188 -0
  663. package/templates/synchronizations/main.sync.template +319 -0
  664. package/templates/synchronizations/slo-registry.yaml.template +229 -0
  665. package/templates/tasks/task.yaml.template +67 -0
  666. package/templates/zen-profile.yaml.template +14 -0
@@ -0,0 +1,365 @@
1
+ # Zen Prompt Template: Implementation Concept
2
+ # Version: 1.0.0
3
+ # Model: sonnet (recommended)
4
+ #
5
+ # This prompt generates code from architecture specifications,
6
+ # following established patterns and project conventions.
7
+
8
+ concept: implementation
9
+ version: "1.0.0"
10
+ recommended_model: sonnet
11
+
12
+ # ============================================================================
13
+ # PROMPTS
14
+ # ============================================================================
15
+
16
+ prompts:
17
+ # Primary action: Generate code from architecture
18
+ generate:
19
+ system: |
20
+ You are a senior software engineer implementing code from architecture specifications.
21
+ Your code is clean, well-tested, and follows established patterns.
22
+
23
+ ## Core Principles
24
+ 1. **Follow the Architecture**: Implement exactly what was designed
25
+ 2. **Pattern Consistency**: Match existing codebase patterns
26
+ 3. **Test Coverage**: Every public function gets tests
27
+ 4. **Error Handling**: Handle all failure modes gracefully
28
+ 5. **Security First**: Never introduce vulnerabilities
29
+
30
+ ## Implementation Process
31
+ 1. Review the architecture specification
32
+ 2. Identify files to create or modify
33
+ 3. Plan the implementation order (dependencies first)
34
+ 4. Generate code for each file
35
+ 5. Generate corresponding tests
36
+ 6. Document any deviations or blockers
37
+
38
+ ## Output Format
39
+ Respond with valid YAML:
40
+
41
+ ```yaml
42
+ impl_id: "impl-{number}"
43
+ arch_id: "arch-{number}"
44
+ status: "generating" | "completed" | "blocked"
45
+
46
+ # Summary for quick scanning
47
+ summary:
48
+ files_changed: 5
49
+ tests_added: 12
50
+ patterns_applied: ["repository", "dependency-injection"]
51
+ blockers: 0
52
+
53
+ files:
54
+ - path: "src/services/auth.ts"
55
+ action: "create" | "modify"
56
+ description: "Authentication service implementation"
57
+ content: |
58
+ // Full file content here
59
+ ...
60
+
61
+ tests:
62
+ - path: "tests/services/auth.test.ts"
63
+ description: "Unit tests for AuthService"
64
+ content: |
65
+ // Full test file content here
66
+ ...
67
+
68
+ patterns_applied:
69
+ - pattern: "Repository Pattern"
70
+ location: "src/repositories/"
71
+ rationale: "Separates data access from business logic"
72
+
73
+ deviations:
74
+ - from_architecture: "Used Redis instead of in-memory cache"
75
+ reason: "Production requirements discovered during implementation"
76
+ approved: false # Needs architecture revision
77
+
78
+ blockers:
79
+ - blocker: "Missing database migration for users table"
80
+ severity: "blocking"
81
+ suggested_resolution: "Run migration: npm run migrate"
82
+
83
+ implementation_notes:
84
+ - "Used existing ErrorHandler for consistency"
85
+ - "Added index on user.email for query performance"
86
+ ```
87
+
88
+ ## Code Quality Standards
89
+ - TypeScript: Use strict mode, no `any` types
90
+ - Naming: camelCase for functions, PascalCase for classes
91
+ - Functions: Single responsibility, max 30 lines preferred
92
+ - Error handling: Use custom error classes, not generic Error
93
+ - Comments: Only for non-obvious logic ("why" not "what")
94
+
95
+ user: |
96
+ Implement the following architecture:
97
+
98
+ ## Architecture Specification
99
+ ```yaml
100
+ {{arch_yaml}}
101
+ ```
102
+
103
+ {{#if existing_code}}
104
+ ## Existing Code Context
105
+ Files to be aware of:
106
+ {{#each existing_code}}
107
+ ### {{this.path}}
108
+ ```{{this.language}}
109
+ {{this.content}}
110
+ ```
111
+ {{/each}}
112
+ {{/if}}
113
+
114
+ {{#if project_conventions}}
115
+ ## Project Conventions
116
+ {{project_conventions}}
117
+ {{/if}}
118
+
119
+ {{#if tech_stack}}
120
+ ## Tech Stack
121
+ {{tech_stack}}
122
+ {{/if}}
123
+
124
+ # Fix implementation based on test failures
125
+ fix:
126
+ system: |
127
+ You are fixing implementation code based on test failures or review feedback.
128
+
129
+ ## Rules
130
+ - Focus only on the failing tests or specific feedback
131
+ - Don't refactor unrelated code
132
+ - Explain what was wrong and how you fixed it
133
+ - Update tests if the specification was misunderstood
134
+
135
+ user: |
136
+ Fix the implementation based on these issues:
137
+
138
+ ## Current Implementation
139
+ ```yaml
140
+ {{impl_yaml}}
141
+ ```
142
+
143
+ ## Issues to Fix
144
+ {{#if test_failures}}
145
+ ### Test Failures
146
+ {{#each test_failures}}
147
+ - Test: {{this.name}}
148
+ Error: {{this.error}}
149
+ Expected: {{this.expected}}
150
+ Actual: {{this.actual}}
151
+ {{/each}}
152
+ {{/if}}
153
+
154
+ {{#if review_feedback}}
155
+ ### Review Feedback
156
+ {{#each review_feedback}}
157
+ - {{this}}
158
+ {{/each}}
159
+ {{/if}}
160
+
161
+ # Refactor existing code
162
+ refactor:
163
+ system: |
164
+ You are refactoring existing code to improve quality without changing behavior.
165
+
166
+ ## Refactoring Guidelines
167
+ - Preserve all existing functionality
168
+ - Improve readability and maintainability
169
+ - Apply consistent patterns
170
+ - Add missing error handling
171
+ - Ensure test coverage remains complete
172
+
173
+ ## Output Format
174
+ Show the before/after for each file changed, with explanation.
175
+
176
+ user: |
177
+ Refactor this code:
178
+
179
+ ## Files to Refactor
180
+ {{#each files}}
181
+ ### {{this.path}}
182
+ ```{{this.language}}
183
+ {{this.content}}
184
+ ```
185
+ {{/each}}
186
+
187
+ ## Refactoring Goals
188
+ {{#each goals}}
189
+ - {{this}}
190
+ {{/each}}
191
+
192
+ # ============================================================================
193
+ # EXAMPLES (Few-Shot Learning)
194
+ # ============================================================================
195
+
196
+ examples:
197
+ generate:
198
+ - input:
199
+ arch_summary: "JWT authentication with refresh tokens"
200
+ components:
201
+ - name: "TokenService"
202
+ responsibility: "JWT creation and validation"
203
+ output: |
204
+ impl_id: "impl-001"
205
+ arch_id: "arch-001"
206
+ status: "completed"
207
+
208
+ summary:
209
+ files_changed: 2
210
+ tests_added: 8
211
+ patterns_applied: ["service-pattern", "dependency-injection"]
212
+ blockers: 0
213
+
214
+ files:
215
+ - path: "src/services/token.service.ts"
216
+ action: "create"
217
+ description: "JWT token creation and validation service"
218
+ content: |
219
+ import jwt from 'jsonwebtoken';
220
+ import { TokenPayload, TokenPair } from '../types/auth';
221
+ import { AuthenticationError } from '../errors';
222
+
223
+ export interface TokenServiceConfig {
224
+ accessTokenSecret: string;
225
+ refreshTokenSecret: string;
226
+ accessTokenExpiry: string;
227
+ refreshTokenExpiry: string;
228
+ }
229
+
230
+ export class TokenService {
231
+ constructor(private readonly config: TokenServiceConfig) {}
232
+
233
+ createTokenPair(payload: TokenPayload): TokenPair {
234
+ const accessToken = jwt.sign(payload, this.config.accessTokenSecret, {
235
+ expiresIn: this.config.accessTokenExpiry,
236
+ });
237
+
238
+ const refreshToken = jwt.sign(
239
+ { userId: payload.userId },
240
+ this.config.refreshTokenSecret,
241
+ { expiresIn: this.config.refreshTokenExpiry }
242
+ );
243
+
244
+ return { accessToken, refreshToken };
245
+ }
246
+
247
+ validateAccessToken(token: string): TokenPayload {
248
+ try {
249
+ return jwt.verify(token, this.config.accessTokenSecret) as TokenPayload;
250
+ } catch (error) {
251
+ throw new AuthenticationError('Invalid or expired access token');
252
+ }
253
+ }
254
+
255
+ validateRefreshToken(token: string): { userId: string } {
256
+ try {
257
+ return jwt.verify(token, this.config.refreshTokenSecret) as { userId: string };
258
+ } catch (error) {
259
+ throw new AuthenticationError('Invalid or expired refresh token');
260
+ }
261
+ }
262
+ }
263
+
264
+ tests:
265
+ - path: "tests/services/token.service.test.ts"
266
+ description: "Unit tests for TokenService"
267
+ content: |
268
+ import { TokenService } from '../../src/services/token.service';
269
+ import { AuthenticationError } from '../../src/errors';
270
+
271
+ describe('TokenService', () => {
272
+ const config = {
273
+ accessTokenSecret: 'test-access-secret',
274
+ refreshTokenSecret: 'test-refresh-secret',
275
+ accessTokenExpiry: '15m',
276
+ refreshTokenExpiry: '7d',
277
+ };
278
+
279
+ let tokenService: TokenService;
280
+
281
+ beforeEach(() => {
282
+ tokenService = new TokenService(config);
283
+ });
284
+
285
+ describe('createTokenPair', () => {
286
+ it('should create valid access and refresh tokens', () => {
287
+ const payload = { userId: 'user-123', email: 'test@example.com' };
288
+ const tokens = tokenService.createTokenPair(payload);
289
+
290
+ expect(tokens.accessToken).toBeDefined();
291
+ expect(tokens.refreshToken).toBeDefined();
292
+ expect(tokens.accessToken).not.toBe(tokens.refreshToken);
293
+ });
294
+ });
295
+
296
+ describe('validateAccessToken', () => {
297
+ it('should validate a valid access token', () => {
298
+ const payload = { userId: 'user-123', email: 'test@example.com' };
299
+ const tokens = tokenService.createTokenPair(payload);
300
+
301
+ const decoded = tokenService.validateAccessToken(tokens.accessToken);
302
+
303
+ expect(decoded.userId).toBe(payload.userId);
304
+ expect(decoded.email).toBe(payload.email);
305
+ });
306
+
307
+ it('should throw AuthenticationError for invalid token', () => {
308
+ expect(() => {
309
+ tokenService.validateAccessToken('invalid-token');
310
+ }).toThrow(AuthenticationError);
311
+ });
312
+ });
313
+
314
+ describe('validateRefreshToken', () => {
315
+ it('should validate a valid refresh token', () => {
316
+ const payload = { userId: 'user-123', email: 'test@example.com' };
317
+ const tokens = tokenService.createTokenPair(payload);
318
+
319
+ const decoded = tokenService.validateRefreshToken(tokens.refreshToken);
320
+
321
+ expect(decoded.userId).toBe(payload.userId);
322
+ });
323
+
324
+ it('should throw AuthenticationError for invalid token', () => {
325
+ expect(() => {
326
+ tokenService.validateRefreshToken('invalid-token');
327
+ }).toThrow(AuthenticationError);
328
+ });
329
+ });
330
+ });
331
+
332
+ patterns_applied:
333
+ - pattern: "Service Pattern"
334
+ location: "src/services/"
335
+ rationale: "Encapsulates business logic, easily testable"
336
+ - pattern: "Dependency Injection"
337
+ location: "Constructor config"
338
+ rationale: "Allows different configs for test/prod"
339
+
340
+ deviations: []
341
+ blockers: []
342
+
343
+ implementation_notes:
344
+ - "Used jsonwebtoken library (industry standard)"
345
+ - "Custom AuthenticationError for clear error handling"
346
+ - "Config injected via constructor for testability"
347
+
348
+ # ============================================================================
349
+ # VALIDATION
350
+ # ============================================================================
351
+
352
+ validation:
353
+ required_fields:
354
+ - impl_id
355
+ - arch_id
356
+ - status
357
+ - files
358
+
359
+ code_quality_checks:
360
+ - no_any_types: true
361
+ - no_console_log: true
362
+ - has_error_handling: true
363
+ - has_tests: true
364
+
365
+ test_coverage_minimum: 0.8
@@ -0,0 +1,303 @@
1
+ concept: planning
2
+ version: "1.0.0"
3
+ recommended_model: sonnet
4
+
5
+ description: |
6
+ Explicit Chain-of-Thought planning phase that precedes complex concept actions.
7
+ Forces structured reasoning before implementation decisions.
8
+
9
+ prompts:
10
+ create:
11
+ system: |
12
+ You are a senior technical planner specializing in structured reasoning.
13
+ Your role is to think through problems systematically before solutions are designed.
14
+
15
+ ## Chain-of-Thought Process
16
+
17
+ You MUST work through these steps explicitly, showing your reasoning:
18
+
19
+ ### Step 1: Decompose the Problem
20
+ - What is being asked?
21
+ - What are the sub-problems?
22
+ - What are the dependencies between sub-problems?
23
+ - What is the scope boundary?
24
+
25
+ ### Step 2: Gather Constraints
26
+ - Technical constraints (language, framework, existing patterns)
27
+ - Business constraints (timeline, resources, compliance)
28
+ - Quality constraints (performance, security, maintainability)
29
+ - Integration constraints (APIs, databases, services)
30
+
31
+ ### Step 3: Identify Unknowns
32
+ - What information is missing?
33
+ - What assumptions are we making?
34
+ - What risks exist?
35
+ - What clarifications are needed?
36
+
37
+ ### Step 4: Generate Options
38
+ - List at least 3 possible approaches
39
+ - For each approach:
40
+ - Brief description
41
+ - Key trade-offs
42
+ - Fit with constraints
43
+ - Risk level
44
+
45
+ ### Step 5: Evaluate and Recommend
46
+ - Score each option against constraints
47
+ - Identify the recommended approach
48
+ - Explain why this approach is best
49
+ - Note what would change the recommendation
50
+
51
+ ### Step 6: Define Success Criteria
52
+ - How will we know this succeeded?
53
+ - What metrics matter?
54
+ - What are the acceptance conditions?
55
+
56
+ ## Output Requirements
57
+ - Show ALL reasoning steps explicitly
58
+ - Do not skip to conclusions
59
+ - Include confidence levels
60
+ - Flag any blockers that need resolution
61
+
62
+ user: |
63
+ Create a plan for the following:
64
+
65
+ ## Context
66
+ {{context}}
67
+
68
+ ## Objective
69
+ {{objective}}
70
+
71
+ ## Known Constraints
72
+ {{#each constraints}}
73
+ - {{this}}
74
+ {{/each}}
75
+
76
+ ## Relevant Learnings from Past Failures
77
+ {{#each learnings}}
78
+ - {{this.insight}}
79
+ {{/each}}
80
+
81
+ ---
82
+
83
+ Work through all 6 planning steps explicitly.
84
+ Show your reasoning at each step.
85
+ Output as YAML matching the planning schema.
86
+
87
+ review:
88
+ system: |
89
+ You review plans created by the planning process.
90
+ Check for completeness, logical consistency, and overlooked factors.
91
+
92
+ ## Review Checklist
93
+ - Are all sub-problems identified?
94
+ - Are constraints complete and accurate?
95
+ - Are assumptions explicitly stated?
96
+ - Are at least 3 options considered?
97
+ - Is the evaluation criteria clear?
98
+ - Is the recommendation well-justified?
99
+ - Are success criteria measurable?
100
+
101
+ user: |
102
+ Review this plan:
103
+
104
+ ```yaml
105
+ {{plan}}
106
+ ```
107
+
108
+ Check against the review checklist.
109
+ Identify any gaps or improvements needed.
110
+
111
+ examples:
112
+ create:
113
+ - input:
114
+ context: |
115
+ E-commerce platform with 10K daily users.
116
+ React frontend, Node.js backend, PostgreSQL database.
117
+ Currently no caching layer.
118
+ objective: |
119
+ Add product search functionality with autocomplete.
120
+ constraints:
121
+ - Search results must appear within 200ms
122
+ - Must work with existing product catalog (50K products)
123
+ - Cannot significantly increase hosting costs
124
+ learnings:
125
+ - insight: Consider rate limits when integrating external APIs
126
+ - insight: Add input validation at all API boundaries
127
+ output: |
128
+ plan_id: plan-001
129
+ objective: Add product search functionality with autocomplete
130
+ timestamp: 2025-01-15T10:00:00Z
131
+
132
+ step_1_decomposition:
133
+ main_problem: Implement fast product search with autocomplete
134
+ sub_problems:
135
+ - name: Search indexing
136
+ description: Index 50K products for fast retrieval
137
+ dependencies: []
138
+
139
+ - name: Search API
140
+ description: Backend endpoint for search queries
141
+ dependencies: [search_indexing]
142
+
143
+ - name: Autocomplete UI
144
+ description: Frontend component with debounced input
145
+ dependencies: [search_api]
146
+
147
+ - name: Search ranking
148
+ description: Relevance algorithm for results
149
+ dependencies: [search_indexing]
150
+
151
+ scope_boundary: |
152
+ In scope: Basic text search, autocomplete, relevance ranking
153
+ Out of scope: Faceted search, filters, search analytics
154
+
155
+ step_2_constraints:
156
+ technical:
157
+ - React frontend (must use existing component patterns)
158
+ - Node.js backend (Express, existing middleware)
159
+ - PostgreSQL (50K products, ~100MB data)
160
+
161
+ performance:
162
+ - 200ms response time requirement
163
+ - Support 10K daily users
164
+ - Handle burst traffic during sales
165
+
166
+ cost:
167
+ - Minimize hosting cost increase
168
+ - Prefer solutions with free tier
169
+
170
+ quality:
171
+ - Input validation required (learning from past failures)
172
+ - Rate limiting needed (learning from past failures)
173
+
174
+ step_3_unknowns:
175
+ missing_information:
176
+ - Current database query performance
177
+ - Peak concurrent users
178
+ - Product data structure
179
+
180
+ assumptions:
181
+ - Product titles and descriptions are searchable
182
+ - English language only
183
+ - No personalization required
184
+
185
+ risks:
186
+ - PostgreSQL full-text may not meet 200ms at scale
187
+ - Autocomplete could overwhelm API without rate limiting
188
+
189
+ clarifications_needed:
190
+ - Is fuzzy matching required?
191
+ - Should search history be stored?
192
+
193
+ step_4_options:
194
+ - name: PostgreSQL Full-Text Search
195
+ description: Use native PostgreSQL tsvector/tsquery
196
+ trade_offs:
197
+ pros:
198
+ - No additional infrastructure
199
+ - Zero additional cost
200
+ - Simpler deployment
201
+ cons:
202
+ - May not meet 200ms at 50K products
203
+ - Limited autocomplete support
204
+ - Scaling limited to DB scaling
205
+ fit_with_constraints: Medium
206
+ risk_level: Medium
207
+
208
+ - name: Elasticsearch
209
+ description: Dedicated search cluster
210
+ trade_offs:
211
+ pros:
212
+ - Excellent performance at scale
213
+ - Built-in autocomplete
214
+ - Advanced relevance tuning
215
+ cons:
216
+ - Additional infrastructure cost
217
+ - Operational complexity
218
+ - Data sync required
219
+ fit_with_constraints: Low (cost constraint)
220
+ risk_level: Low
221
+
222
+ - name: Meilisearch (Self-hosted)
223
+ description: Lightweight search engine, self-hosted
224
+ trade_offs:
225
+ pros:
226
+ - Fast and lightweight
227
+ - Easy autocomplete
228
+ - Minimal resource needs
229
+ - Free and open source
230
+ cons:
231
+ - Another service to manage
232
+ - Less mature than Elasticsearch
233
+ fit_with_constraints: High
234
+ risk_level: Low
235
+
236
+ step_5_evaluation:
237
+ scoring:
238
+ postgresql:
239
+ performance: 2/5
240
+ cost: 5/5
241
+ complexity: 5/5
242
+ total: 12/15
243
+
244
+ elasticsearch:
245
+ performance: 5/5
246
+ cost: 2/5
247
+ complexity: 2/5
248
+ total: 9/15
249
+
250
+ meilisearch:
251
+ performance: 4/5
252
+ cost: 4/5
253
+ complexity: 4/5
254
+ total: 12/15
255
+
256
+ recommendation: Meilisearch (Self-hosted)
257
+ rationale: |
258
+ Meilisearch offers the best balance of performance and cost.
259
+ It meets the 200ms requirement easily, has excellent autocomplete
260
+ support, and can run on minimal resources (256MB RAM).
261
+ The operational overhead is low compared to Elasticsearch.
262
+
263
+ would_change_if: |
264
+ - If cost is no concern: Elasticsearch
265
+ - If <10K products: PostgreSQL full-text
266
+ - If already using Elasticsearch: Use existing cluster
267
+
268
+ step_6_success_criteria:
269
+ metrics:
270
+ - p95 search latency < 200ms
271
+ - Autocomplete suggestions appear < 100ms
272
+ - Search relevance satisfaction > 80%
273
+
274
+ acceptance_conditions:
275
+ - All 50K products indexed and searchable
276
+ - Autocomplete shows suggestions after 2 characters
277
+ - Results ranked by relevance
278
+ - Rate limiting prevents abuse
279
+ - Input properly validated
280
+
281
+ confidence: high
282
+ blockers: []
283
+ status: ready
284
+
285
+ validation:
286
+ required_fields:
287
+ - plan_id
288
+ - objective
289
+ - step_1_decomposition
290
+ - step_2_constraints
291
+ - step_3_unknowns
292
+ - step_4_options
293
+ - step_5_evaluation
294
+ - step_6_success_criteria
295
+ - status
296
+
297
+ options_requirements:
298
+ minimum_count: 3
299
+ must_have_trade_offs: true
300
+
301
+ evaluation_requirements:
302
+ must_have_recommendation: true
303
+ must_have_rationale: true