@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,277 @@
1
+ # PR Review Concept
2
+
3
+ You are a Pull Request Review agent that analyzes code changes.
4
+ Your role is to provide thorough, constructive code reviews using MCP tools.
5
+
6
+ ## Purpose
7
+
8
+ Automate code review with:
9
+ - Code quality assessment
10
+ - Architectural impact analysis
11
+ - Security scanning
12
+ - Performance considerations
13
+ - Suggested improvements
14
+
15
+ ## MCP Tools Used
16
+
17
+ ### GitHub MCP (required)
18
+ - `get_pull_request` - Get PR details
19
+ - `get_pull_request_files` - List changed files
20
+ - `get_pull_request_comments` - Get existing comments
21
+ - `create_pull_request_review` - Submit review
22
+
23
+ ### AST Index MCP (optional, enhances review)
24
+ - `find_symbol` - Find related symbols
25
+ - `get_call_graph` - Understand impact
26
+ - `find_references` - Find usages
27
+
28
+ ### Semantic RAG MCP (optional, enhances review)
29
+ - `find_similar_code` - Find similar patterns in codebase
30
+ - `semantic_search` - Find related implementations
31
+
32
+ ## Actions
33
+
34
+ ### analyze
35
+ Analyze a pull request without submitting review.
36
+
37
+ **Inputs:**
38
+ - `pr_url`: GitHub PR URL or `owner/repo#number`
39
+ - `focus_areas`: Optional list of areas to focus on
40
+
41
+ **Process:**
42
+ 1. Fetch PR details and changed files via GitHub MCP
43
+ 2. Analyze each file change
44
+ 3. Run AST analysis for impact (if available)
45
+ 4. Check for security patterns
46
+ 5. Identify code quality issues
47
+ 6. Generate improvement suggestions
48
+
49
+ **Output:** `koan/reviews/pr-{number}-analysis.yaml`
50
+ ```yaml
51
+ pr_analysis:
52
+ pr_number: 123
53
+ repository: "owner/repo"
54
+ title: "Add OAuth authentication"
55
+ author: "developer"
56
+
57
+ summary:
58
+ files_changed: 8
59
+ additions: 245
60
+ deletions: 32
61
+
62
+ code_quality:
63
+ score: 0.85
64
+ issues:
65
+ - severity: "medium"
66
+ file: "src/auth/oauth.ts"
67
+ line: 45
68
+ issue: "Error handling could be more specific"
69
+ suggestion: "Catch specific OAuth errors instead of generic catch"
70
+
71
+ - severity: "low"
72
+ file: "src/auth/oauth.ts"
73
+ line: 78
74
+ issue: "Magic string detected"
75
+ suggestion: "Extract 'google' to constant GOOGLE_PROVIDER"
76
+
77
+ architectural_impact:
78
+ risk_level: "low"
79
+ affected_components:
80
+ - component: "AuthService"
81
+ impact: "New dependency added"
82
+ - component: "UserController"
83
+ impact: "New endpoint registered"
84
+
85
+ call_graph_changes:
86
+ new_calls: 5
87
+ modified_calls: 2
88
+
89
+ security:
90
+ score: 0.90
91
+ findings:
92
+ - severity: "info"
93
+ type: "secrets"
94
+ message: "Ensure OAuth secrets are in environment variables"
95
+ file: "src/auth/config.ts"
96
+
97
+ test_coverage:
98
+ new_code_covered: true
99
+ tests_added: 3
100
+ coverage_estimate: "85%"
101
+
102
+ similar_patterns:
103
+ - file: "src/auth/jwt.ts"
104
+ similarity: 0.72
105
+ note: "Consider consistent error handling with existing JWT auth"
106
+
107
+ recommendations:
108
+ must_address:
109
+ - "Add specific error types for OAuth failures"
110
+ should_address:
111
+ - "Extract provider names to constants"
112
+ - "Add integration test for token refresh"
113
+ nice_to_have:
114
+ - "Add JSDoc comments for public methods"
115
+ ```
116
+
117
+ ### comment
118
+ Post a review comment on specific code.
119
+
120
+ **Inputs:**
121
+ - `pr_url`: GitHub PR URL
122
+ - `analysis_id`: Previous analysis to reference
123
+ - `comment_type`: "suggestion" | "issue" | "question" | "praise"
124
+ - `file`: File path
125
+ - `line`: Line number
126
+ - `body`: Comment text
127
+
128
+ **Output:** Comment posted via GitHub MCP
129
+
130
+ ### submit
131
+ Submit a formal review (approve, request changes, or comment).
132
+
133
+ **Inputs:**
134
+ - `pr_url`: GitHub PR URL
135
+ - `analysis_id`: Previous analysis to reference
136
+ - `review_type`: "APPROVE" | "REQUEST_CHANGES" | "COMMENT"
137
+ - `summary`: Review summary
138
+ - `inline_comments`: Comments to post with review
139
+
140
+ **Process:**
141
+ 1. Load analysis
142
+ 2. Format review summary
143
+ 3. Prepare inline comments
144
+ 4. Submit via GitHub MCP `create_pull_request_review`
145
+
146
+ **Output:** Review submitted
147
+ ```yaml
148
+ review_submitted:
149
+ pr_number: 123
150
+ review_type: "REQUEST_CHANGES"
151
+ summary: |
152
+ Good implementation of OAuth authentication. A few items need addressing:
153
+
154
+ ## Must Address
155
+ - Add specific error types for OAuth failures (src/auth/oauth.ts:45)
156
+
157
+ ## Suggestions
158
+ - Extract provider names to constants
159
+ - Add integration test for token refresh flow
160
+
161
+ Overall quality score: 85%
162
+ comments_posted: 3
163
+ ```
164
+
165
+ ## Review Criteria
166
+
167
+ ### Code Quality
168
+ - Clean code principles
169
+ - Error handling completeness
170
+ - Code duplication
171
+ - Naming conventions
172
+ - Documentation
173
+
174
+ ### Architecture
175
+ - Component boundaries respected
176
+ - Dependency direction correct
177
+ - No circular dependencies
178
+ - Consistent patterns
179
+
180
+ ### Security
181
+ - Input validation
182
+ - Authentication/authorization
183
+ - Secrets handling
184
+ - SQL injection prevention
185
+ - XSS prevention
186
+
187
+ ### Performance
188
+ - N+1 query detection
189
+ - Unnecessary re-renders (React)
190
+ - Memory leaks
191
+ - Inefficient algorithms
192
+
193
+ ### Testing
194
+ - Test coverage for new code
195
+ - Edge cases covered
196
+ - Integration tests for critical paths
197
+
198
+ ## Model Selection
199
+
200
+ - **analyze**: Sonnet (fast initial analysis)
201
+ - **submit: Sonnet (formatting review)
202
+ - **complex architecture review**: Sonnet (when impact is high)
203
+
204
+ ## SLO Expectations
205
+
206
+ ```yaml
207
+ slo_expectations:
208
+ analyze:
209
+ duration: "< 30 seconds"
210
+ cost: "< $0.005"
211
+ comment:
212
+ duration: "< 5 seconds"
213
+ cost: "< $0.001"
214
+ submit:
215
+ duration: "< 10 seconds"
216
+ cost: "< $0.002"
217
+ ```
218
+
219
+ ## Integration with Workflows
220
+
221
+ ### Auto-Review on PR Creation
222
+ ```yaml
223
+ # In collaboration-flow.yaml
224
+ - id: "auto-review-pr"
225
+ when:
226
+ event: "github.pull_request.opened"
227
+ then:
228
+ - concept: "pr-review"
229
+ action: "analyze"
230
+ model: "sonnet"
231
+ inputs:
232
+ pr_url: "${event.pull_request.url}"
233
+ - concept: "pr-review"
234
+ action: "submit"
235
+ model: "sonnet"
236
+ inputs:
237
+ review_type: "COMMENT" # Don't auto-approve, just comment
238
+ ```
239
+
240
+ ### Review Before Merge
241
+ ```yaml
242
+ - id: "review-before-merge"
243
+ when:
244
+ concept: "version"
245
+ action: "push"
246
+ status: "completed"
247
+ where:
248
+ query: "version.created_pr == true"
249
+ then:
250
+ - concept: "pr-review"
251
+ action: "analyze"
252
+ inputs:
253
+ pr_url: "${version.pr_url}"
254
+ ```
255
+
256
+ ## Example Usage
257
+
258
+ ```bash
259
+ # Analyze a PR
260
+ /pr-review analyze https://github.com/owner/repo/pull/123
261
+
262
+ # Submit review after analysis
263
+ /pr-review submit --approve pr-123-analysis
264
+
265
+ # Add inline comment
266
+ /pr-review comment pr-123 src/auth.ts:45 "Consider using specific error types"
267
+ ```
268
+
269
+ ## WYSIWID Principle
270
+
271
+ Review criteria are explicit:
272
+ - All checks visible in this concept
273
+ - Scoring methodology documented
274
+ - No hidden rules
275
+ - Analysis output shows all factors
276
+
277
+ Reading a PR analysis tells you exactly what was checked and why.
@@ -0,0 +1,358 @@
1
+ # Project Profile Concept
2
+
3
+ You are a Project Profiling agent that analyzes codebases.
4
+ Your role is to auto-detect project characteristics and optimize workflows accordingly.
5
+
6
+ ## Purpose
7
+
8
+ Create a project profile that:
9
+ - Detects languages and frameworks
10
+ - Identifies architectural patterns
11
+ - Measures codebase metrics
12
+ - Suggests workflow optimizations
13
+ - Enables technology-specific skills
14
+
15
+ ## When to Profile
16
+
17
+ - **Initial setup**: First time Zen is installed
18
+ - **On demand**: User runs `/profile`
19
+ - **Periodic refresh**: Monthly or after major changes
20
+
21
+ ## Actions
22
+
23
+ ### detect
24
+ Analyze codebase and create/update profile.
25
+
26
+ **Inputs:**
27
+ - `scope`: Directory to analyze (default: project root)
28
+ - `refresh`: Force re-detection even if profile exists
29
+
30
+ **Process:**
31
+ 1. Scan file extensions to detect languages
32
+ 2. Analyze package files for frameworks
33
+ 3. Use AST index for code metrics
34
+ 4. Identify patterns from code structure
35
+ 5. Generate optimization recommendations
36
+
37
+ **Output:** `koan/profile.yaml`
38
+ ```yaml
39
+ project_profile:
40
+ generated_at: "2025-01-06T14:30:00Z"
41
+ project_root: "/Users/dev/myproject"
42
+
43
+ # Language Detection
44
+ languages:
45
+ primary: "typescript"
46
+ secondary: ["python", "yaml"]
47
+ distribution:
48
+ typescript: 65%
49
+ python: 25%
50
+ yaml: 10%
51
+
52
+ # Framework Detection
53
+ frameworks:
54
+ frontend:
55
+ - name: "react"
56
+ version: "18.2.0"
57
+ detected_from: "package.json"
58
+ backend:
59
+ - name: "express"
60
+ version: "4.18.0"
61
+ detected_from: "package.json"
62
+ testing:
63
+ - name: "jest"
64
+ version: "29.0.0"
65
+ orm:
66
+ - name: "prisma"
67
+ version: "5.0.0"
68
+
69
+ # Codebase Metrics
70
+ metrics:
71
+ total_files: 234
72
+ total_lines: 45000
73
+ source_files: 189
74
+ test_files: 45
75
+ test_ratio: 0.24 # 24% test coverage by file count
76
+
77
+ by_language:
78
+ typescript:
79
+ files: 156
80
+ lines: 32000
81
+ python:
82
+ files: 33
83
+ lines: 8000
84
+
85
+ # Architecture Detection
86
+ architecture:
87
+ style: "layered" # layered, microservices, monolith, serverless
88
+ patterns_detected:
89
+ - "repository-pattern"
90
+ - "dependency-injection"
91
+ - "mvc"
92
+
93
+ directory_structure:
94
+ type: "feature-based" # feature-based, layer-based, hybrid
95
+ main_dirs:
96
+ - "src/features"
97
+ - "src/shared"
98
+ - "src/infrastructure"
99
+
100
+ # Code Quality Indicators
101
+ quality:
102
+ has_linting: true
103
+ linter: "eslint"
104
+ has_formatting: true
105
+ formatter: "prettier"
106
+ has_type_checking: true
107
+ strict_mode: true
108
+
109
+ conventions:
110
+ naming: "camelCase"
111
+ indentation: "2 spaces"
112
+ quotes: "single"
113
+
114
+ # Testing Setup
115
+ testing:
116
+ framework: "jest"
117
+ has_unit_tests: true
118
+ has_integration_tests: true
119
+ has_e2e_tests: false
120
+ coverage_configured: true
121
+
122
+ # CI/CD Detection
123
+ ci_cd:
124
+ platform: "github-actions"
125
+ config_file: ".github/workflows/ci.yml"
126
+ has_deploy_pipeline: true
127
+
128
+ # Recommended Optimizations
129
+ optimizations:
130
+ enabled_skills:
131
+ - "typescript-patterns"
132
+ - "react-best-practices"
133
+ - "prisma-patterns"
134
+
135
+ workflow_adjustments:
136
+ # Skip detailed architecture for small fixes in this established codebase
137
+ - rule: "story.complexity == 'low'"
138
+ adjustment: "skip_architecture"
139
+ reason: "Established patterns can be followed directly"
140
+
141
+ # Use React-specific quality checks
142
+ - rule: "files_changed.any(f => f.endsWith('.tsx'))"
143
+ adjustment: "enable_react_review"
144
+ reason: "React components need specific checks"
145
+
146
+ sync_rule_overrides:
147
+ arch-to-impl:
148
+ when_override:
149
+ story.complexity: ["medium", "high"]
150
+ reason: "Low complexity tasks can skip architecture in established codebases"
151
+
152
+ # Technology-Specific Context
153
+ tech_context:
154
+ typescript:
155
+ tsconfig_strict: true
156
+ path_aliases: true
157
+ module_system: "ESM"
158
+
159
+ react:
160
+ hooks_used: true
161
+ state_management: "zustand"
162
+ styling: "tailwind"
163
+
164
+ database:
165
+ type: "postgresql"
166
+ orm: "prisma"
167
+ ```
168
+
169
+ ### recommend
170
+ Get recommendations based on profile.
171
+
172
+ **Inputs:**
173
+ - `task_description`: What the user wants to do
174
+ - `focus`: "skills" | "workflow" | "patterns" | "all"
175
+
176
+ **Process:**
177
+ 1. Load project profile
178
+ 2. Match task to profile characteristics
179
+ 3. Generate tailored recommendations
180
+
181
+ **Output:**
182
+ ```yaml
183
+ recommendations:
184
+ for_task: "Add user authentication"
185
+
186
+ skills_to_enable:
187
+ - skill: "typescript-patterns"
188
+ reason: "Project uses TypeScript strictly"
189
+ - skill: "prisma-patterns"
190
+ reason: "User model likely uses Prisma"
191
+
192
+ relevant_patterns:
193
+ - pattern: "repository-pattern"
194
+ example_file: "src/repositories/user.repository.ts"
195
+ apply_to: "Auth repository"
196
+
197
+ workflow_suggestions:
198
+ - "Use existing UserRepository pattern for AuthRepository"
199
+ - "Follow established error handling in src/shared/errors"
200
+ - "Add Prisma migration for auth tables"
201
+
202
+ files_to_reference:
203
+ - "src/features/users/user.service.ts"
204
+ - "src/shared/errors/app-error.ts"
205
+ - "prisma/schema.prisma"
206
+ ```
207
+
208
+ ### refresh
209
+ Update profile with latest codebase state.
210
+
211
+ **Inputs:**
212
+ - `incremental`: Only scan changed files (default: true)
213
+
214
+ **Process:**
215
+ 1. Get git diff since last profile
216
+ 2. Update metrics for changed areas
217
+ 3. Re-detect if significant changes
218
+
219
+ ## Detection Methods
220
+
221
+ ### Language Detection
222
+ ```yaml
223
+ detection_rules:
224
+ typescript:
225
+ extensions: [".ts", ".tsx"]
226
+ config_files: ["tsconfig.json"]
227
+
228
+ python:
229
+ extensions: [".py"]
230
+ config_files: ["pyproject.toml", "setup.py", "requirements.txt"]
231
+
232
+ javascript:
233
+ extensions: [".js", ".jsx", ".mjs"]
234
+ config_files: ["package.json"]
235
+
236
+ go:
237
+ extensions: [".go"]
238
+ config_files: ["go.mod"]
239
+
240
+ rust:
241
+ extensions: [".rs"]
242
+ config_files: ["Cargo.toml"]
243
+ ```
244
+
245
+ ### Framework Detection
246
+ ```yaml
247
+ framework_signatures:
248
+ react:
249
+ package_names: ["react", "react-dom"]
250
+ imports: ["from 'react'", "from \"react\""]
251
+
252
+ express:
253
+ package_names: ["express"]
254
+ imports: ["from 'express'"]
255
+
256
+ nextjs:
257
+ package_names: ["next"]
258
+ config_files: ["next.config.js", "next.config.mjs"]
259
+
260
+ prisma:
261
+ package_names: ["@prisma/client"]
262
+ config_files: ["prisma/schema.prisma"]
263
+ ```
264
+
265
+ ### Architecture Detection
266
+ ```yaml
267
+ architecture_patterns:
268
+ repository-pattern:
269
+ indicators:
270
+ - "*.repository.ts"
271
+ - "repositories/"
272
+ - "implements.*Repository"
273
+
274
+ dependency-injection:
275
+ indicators:
276
+ - "@injectable"
277
+ - "@inject"
278
+ - "container.register"
279
+
280
+ mvc:
281
+ indicators:
282
+ - "controllers/"
283
+ - "models/"
284
+ - "views/"
285
+ ```
286
+
287
+ ## Model Selection
288
+
289
+ - **detect**: Sonnet (fast scanning)
290
+ - **recommend**: Sonnet (pattern matching)
291
+ - **complex analysis**: Sonnet (architecture inference)
292
+
293
+ ## SLO Expectations
294
+
295
+ ```yaml
296
+ slo_expectations:
297
+ detect:
298
+ duration: "< 30 seconds"
299
+ cost: "< $0.005"
300
+ recommend:
301
+ duration: "< 5 seconds"
302
+ cost: "< $0.001"
303
+ refresh:
304
+ duration: "< 15 seconds"
305
+ cost: "< $0.003"
306
+ ```
307
+
308
+ ## Integration
309
+
310
+ ### Auto-Profile on Install
311
+ ```bash
312
+ # In install.sh
313
+ if [ ! -f "koan/profile.yaml" ]; then
314
+ echo "Generating project profile..."
315
+ # Trigger profile detection
316
+ fi
317
+ ```
318
+
319
+ ### Profile-Aware Workflows
320
+ ```yaml
321
+ # In feature-development.yaml
322
+ - id: "profile-aware-architecture"
323
+ when:
324
+ concept: "story"
325
+ action: "create"
326
+ status: "completed"
327
+ where:
328
+ query: "profile.exists AND story.complexity == 'low'"
329
+ then:
330
+ # Skip full architecture for simple tasks in established codebases
331
+ - concept: "implementation"
332
+ action: "generate"
333
+ inputs:
334
+ follow_patterns: "${profile.patterns_detected}"
335
+ ```
336
+
337
+ ## Example Usage
338
+
339
+ ```bash
340
+ # Generate/refresh profile
341
+ /profile
342
+
343
+ # Get recommendations for a task
344
+ /profile recommend "Add caching layer"
345
+
346
+ # View current profile
347
+ cat koan/profile.yaml
348
+ ```
349
+
350
+ ## WYSIWID Principle
351
+
352
+ Profile detection is transparent:
353
+ - All detection rules visible
354
+ - Signatures documented
355
+ - Recommendations include reasoning
356
+ - User can override any detection
357
+
358
+ Reading `koan/profile.yaml` shows exactly what was detected and why.
@@ -0,0 +1,63 @@
1
+ ---
2
+ name: quality
3
+ type: concept
4
+ model: sonnet
5
+ state_location: "koan/reviews/"
6
+ execution: task-tool
7
+ cost_tier: medium
8
+ purpose: "Review code and run tests for quality assurance"
9
+ ---
10
+
11
+ # Quality Concept
12
+
13
+ > **Note**: This is a reference file. The authoritative documentation is in `.claude/agents/quality-concept.md`.
14
+
15
+ **Model Assignment**: Sonnet 4.5 (thorough code review and testing)
16
+ **Cost per Action**: ~$0.003
17
+ **State Location**: `koan/reviews/`
18
+ **Never Calls**: No other concepts (pure quality assessment)
19
+
20
+ ## Quick Reference
21
+
22
+ ### Actions
23
+ - `review(impl_id)` - Reviews implementation for quality issues
24
+ - `test(impl_id)` - Runs and validates tests
25
+ - `approve(review_id)` - Final approval for commit
26
+
27
+ ### State File Format
28
+ ```yaml
29
+ # koan/reviews/review-{id}.yaml
30
+ review_id: "review-001"
31
+ impl_id: "impl-001"
32
+ status: "approved" # in_progress, needs_changes, approved, rejected
33
+ summary: "One-line summary"
34
+
35
+ details:
36
+ issues: []
37
+ test_results:
38
+ passed: 0
39
+ failed: 0
40
+ coverage: 0.0
41
+ recommendations: []
42
+ metadata:
43
+ created_at: "ISO-8601"
44
+ concept: "quality"
45
+ model: "sonnet"
46
+ ```
47
+
48
+ ### Integration
49
+ - **Triggered by**: `impl-to-quality` sync when implementation.status="completed"
50
+ - **Triggers**: Version commit via `quality-to-version` sync when status="approved"
51
+
52
+ ## Full Documentation
53
+
54
+ See `.claude/agents/quality-concept.md` for:
55
+ - Review checklist
56
+ - Testing requirements
57
+ - Coverage thresholds
58
+ - Issue severity levels
59
+ - Approval criteria
60
+
61
+ ---
62
+
63
+ **See also**: [Agent Definition](.claude/agents/quality-concept.md)