@a-company/paradigm 5.11.0 → 5.21.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 (408) hide show
  1. package/dist/accept-orchestration-IUAWQZUN.js +18 -0
  2. package/dist/add-P76GEMGF.js +8 -0
  3. package/dist/agent-UUTYOFTH.js +33 -0
  4. package/dist/agent-loader-EPXURMO7.js +2 -0
  5. package/dist/agent-loader-PYGPX6D2.js +2 -0
  6. package/dist/agent-state-KSQ3S7OB.js +2 -0
  7. package/dist/agents-suggest-HYTFMQD3.js +10 -0
  8. package/dist/aggregate-W66DM3GA.js +10 -0
  9. package/dist/ambient-HYZR42NX.js +35 -0
  10. package/dist/assess-UFPYEJKP.js +9 -0
  11. package/dist/auto-RHJXOZFL.js +14 -0
  12. package/dist/beacon-5QVYV5DF.js +13 -0
  13. package/dist/calibration-OLJYB5HN.js +7 -0
  14. package/dist/check-THVGY4R5.js +14 -0
  15. package/dist/chunk-22ISTMKI.js +31 -0
  16. package/dist/chunk-2QO33NYK.js +3 -0
  17. package/dist/chunk-33LKBMVK.js +134 -0
  18. package/dist/chunk-4QADCWPU.js +7 -0
  19. package/dist/chunk-4TXOVRWD.js +3 -0
  20. package/dist/chunk-4UJ4NIEQ.js +4 -0
  21. package/dist/chunk-4ZGGWZ32.js +3 -0
  22. package/dist/chunk-5TAVYPOV.js +2 -0
  23. package/dist/chunk-6EX37L4Q.js +8 -0
  24. package/dist/chunk-AD5TAD2A.js +5 -0
  25. package/dist/chunk-AGVAHVUA.js +2 -0
  26. package/dist/chunk-AO7ZSRME.js +13 -0
  27. package/dist/chunk-BFD3GFRK.js +2 -0
  28. package/dist/chunk-D34YFK4M.js +6 -0
  29. package/dist/chunk-DVZWCXB6.js +2 -0
  30. package/dist/chunk-EKZDFEJW.js +2 -0
  31. package/dist/chunk-ET5XJTSX.js +2 -0
  32. package/dist/chunk-FYDRENK7.js +3 -0
  33. package/dist/chunk-HMQ5BHP2.js +743 -0
  34. package/dist/chunk-HXKWL3VK.js +29 -0
  35. package/dist/chunk-IZSBGW6E.js +2 -0
  36. package/dist/chunk-J32OPJEX.js +2 -0
  37. package/dist/chunk-JBDMCRPP.js +7 -0
  38. package/dist/chunk-JIXHEBGK.js +7 -0
  39. package/dist/chunk-JNSJVCTU.js +2 -0
  40. package/dist/chunk-JQKKVAAN.js +2 -0
  41. package/dist/chunk-KLBH26PA.js +429 -0
  42. package/dist/chunk-L6K5HNDL.js +24 -0
  43. package/dist/chunk-LKAT7IAK.js +2 -0
  44. package/dist/chunk-M4UMM6DC.js +5 -0
  45. package/dist/chunk-NKYNHSA5.js +424 -0
  46. package/dist/chunk-NW6OKHE6.js +5 -0
  47. package/dist/chunk-NXRVR37G.js +60 -0
  48. package/dist/chunk-ODVKPZZ4.js +2 -0
  49. package/dist/chunk-PUBB7LIT.js +5 -0
  50. package/dist/chunk-Q2J542ST.js +2 -0
  51. package/dist/chunk-QGZRM6ZB.js +2 -0
  52. package/dist/chunk-QNZEG7IT.js +13 -0
  53. package/dist/chunk-QT2LKB3P.js +7 -0
  54. package/dist/chunk-RVRARWSY.js +9 -0
  55. package/dist/chunk-T6IDXUUA.js +2 -0
  56. package/dist/chunk-TYWB5IQJ.js +3 -0
  57. package/dist/chunk-UIKLE3WD.js +2 -0
  58. package/dist/chunk-V7K6CQVX.js +111 -0
  59. package/dist/chunk-VCKKJDLP.js +8 -0
  60. package/dist/chunk-VG7FN2TU.js +4 -0
  61. package/dist/chunk-W5IWDW4Y.js +16 -0
  62. package/dist/chunk-W7C6FFMO.js +8 -0
  63. package/dist/chunk-WESTEMIM.js +10 -0
  64. package/dist/chunk-WR6D3SC6.js +5 -0
  65. package/dist/chunk-WS2N27RX.js +3 -0
  66. package/dist/chunk-XMAV5AG6.js +2 -0
  67. package/dist/chunk-XROULIQN.js +2 -0
  68. package/dist/chunk-XUFYOXOU.js +3 -0
  69. package/dist/chunk-Y4XFVDZC.js +3 -0
  70. package/dist/chunk-Y6KXTQBG.js +2 -0
  71. package/dist/{chunk-GTR2TBIJ.js → chunk-Z2UZUCY6.js} +237 -1047
  72. package/dist/chunk-Z34K6GY2.js +8 -0
  73. package/dist/claude-4LR3LJQZ.js +13 -0
  74. package/dist/claude-cli-UP6HGH7C.js +6 -0
  75. package/dist/claude-code-RLJ4GX77.js +11 -0
  76. package/dist/claude-code-teams-R37HJY3Y.js +29 -0
  77. package/dist/commands-LMUD5L6R.js +455 -0
  78. package/dist/compliance-GZ7UAOG3.js +6 -0
  79. package/dist/conductor-Y5IXELTL.js +4 -0
  80. package/dist/config-schema-HR7LDEQ6.js +2 -0
  81. package/dist/constellation-CG7C4WFE.js +13 -0
  82. package/dist/context-audit-RSSRX6XC.js +6 -0
  83. package/dist/cost-IDNVMAEV.js +10 -0
  84. package/dist/cost-PK4KIF7R.js +2 -0
  85. package/dist/cursor-cli-QKF7Z6M2.js +4 -0
  86. package/dist/cursorrules-U5O4G5T4.js +14 -0
  87. package/dist/decision-loader-2XPZE4EZ.js +2 -0
  88. package/dist/delete-P5VULXR4.js +14 -0
  89. package/dist/diff-RTFUKJHF.js +9 -0
  90. package/dist/discipline-H7LDI6NT.js +2 -0
  91. package/dist/dist-3ZCH25SG.js +2 -0
  92. package/dist/dist-KGRCLBJP-2QAPFYNF.js +39 -0
  93. package/dist/dist-R3RWD35F.js +2 -0
  94. package/dist/dist-VGFSP3XM.js +2 -0
  95. package/dist/dist-VXCZWVVJ.js +2 -0
  96. package/dist/dist-W3XCATBJ.js +2 -0
  97. package/dist/docs-EDQ2STFK.js +2 -0
  98. package/dist/docs-RXPN6CK7.js +12 -0
  99. package/dist/doctor-2T2QL6VM.js +2 -0
  100. package/dist/drift-ILZE5BFJ.js +13 -0
  101. package/dist/echo-UPTQUEDU.js +46 -0
  102. package/dist/edit-GUU3HBVW.js +9 -0
  103. package/dist/event-Y3VXC2RV.js +3 -0
  104. package/dist/explain-files-3GPZUETV.js +4 -0
  105. package/dist/export-CV5KCTPS.js +2 -0
  106. package/dist/flow-S3RQ4YPY.js +11 -0
  107. package/dist/global-C44FW4G2.js +13 -0
  108. package/dist/graduate-3BBSC27A.js +5 -0
  109. package/dist/graph-CNDE5TAT.js +2 -0
  110. package/dist/graph-server-COZR5C3Z.js +14 -0
  111. package/dist/habits-4J2KRYUL.js +42 -0
  112. package/dist/history-UW454SDP.js +12 -0
  113. package/dist/hooks-XH52VGOU.js +2 -0
  114. package/dist/index.js +15 -1039
  115. package/dist/init-24MAQJFM.js +2 -0
  116. package/dist/integrity-UYDOOJDP.js +7 -0
  117. package/dist/integrity-checker-DHGMZQDG.js +2 -0
  118. package/dist/journal-loader-GLH7XFTK.js +2 -0
  119. package/dist/lint-IGKE6UPS.js +26 -0
  120. package/dist/list-5IUGP3ZB.js +7 -0
  121. package/dist/list-YKIQNKGB.js +6 -0
  122. package/dist/lore-loader-RVQI5GXL.js +2 -0
  123. package/dist/lore-loader-XY5MZRR2.js +2 -0
  124. package/dist/lore-server-FC2GMDLT.js +14 -0
  125. package/dist/manual-RXSPSFLL.js +20 -0
  126. package/dist/mcp.js +93 -20529
  127. package/dist/migrate-X5OMAFAQ.js +59 -0
  128. package/dist/migrate-assessments-GEI5WMI2.js +4 -0
  129. package/dist/model-discovery-HMB3YI4L.js +2 -0
  130. package/dist/nomination-engine-XF7TWPAP.js +2 -0
  131. package/dist/notebook-PE3JSYZI.js +11 -0
  132. package/dist/notebook-loader-CENTDDUJ.js +2 -0
  133. package/dist/orchestrate-35HBQ3O3.js +8 -0
  134. package/dist/peers-P2KXU7ZK.js +5 -0
  135. package/dist/persona-STQWZH5P.js +29 -0
  136. package/dist/pipeline-MZUITRVN.js +4 -0
  137. package/dist/platform-server-2KXHGHFV.js +25 -0
  138. package/dist/plugin-update-checker-M7PW434O.js +2 -0
  139. package/dist/portal-check-3JVNLOEP.js +8 -0
  140. package/dist/portal-compliance-2UG4VKWH.js +2 -0
  141. package/dist/probe-5L5BQDGE.js +6 -0
  142. package/dist/project-type-SURTOIG7.js +2 -0
  143. package/dist/promote-NJQDZBZA.js +8 -0
  144. package/dist/providers-4PXMWA7V.js +8 -0
  145. package/dist/quiz-FE5UGAY2.js +10 -0
  146. package/dist/record-YXPB34MY.js +6 -0
  147. package/dist/reindex-PGDQSM42.js +2 -0
  148. package/dist/remember-MJRNTXYS.js +14 -0
  149. package/dist/retag-N5XF3KXP.js +6 -0
  150. package/dist/review-6UAH6V3R.js +11 -0
  151. package/dist/review-77QI6VOC.js +6 -0
  152. package/dist/ripple-ZGDITCGB.js +10 -0
  153. package/dist/roster-FLRZ5J42.js +2 -0
  154. package/dist/sentinel-HYAZ3CO5.js +19 -0
  155. package/dist/sentinel-bridge-VR357PKL.js +2 -0
  156. package/dist/sentinel-mcp.js +38 -3808
  157. package/dist/sentinel.js +1 -34
  158. package/dist/serve-JE6UF5P2.js +8 -0
  159. package/dist/serve-L52ZUTU6.js +10 -0
  160. package/dist/serve-OY6XYL7F.js +12 -0
  161. package/dist/server-2MNROHF6.js +7 -0
  162. package/dist/server-4YNUIK4W.js +8 -0
  163. package/dist/session-tracker-SKOMBDOW.js +2 -0
  164. package/dist/session-work-log-3MNUDEZ6.js +2 -0
  165. package/dist/session-work-log-J2H5OZBR.js +2 -0
  166. package/dist/setup-3F5IK7MO.js +31 -0
  167. package/dist/setup-KPIMRZ4Q.js +2 -0
  168. package/dist/shift-6GCNH666.js +11 -0
  169. package/dist/show-BOAVWZPZ.js +7 -0
  170. package/dist/show-PJ5LFLIL.js +5 -0
  171. package/dist/snapshot-L2G56RPL.js +8 -0
  172. package/dist/spawn-UH5RENSE.js +12 -0
  173. package/dist/status-77M3SDIF.js +8 -0
  174. package/dist/status-A37ECYNJ.js +6 -0
  175. package/dist/summary-ZJLQ6KHB.js +7 -0
  176. package/dist/sweep-HU74OPVW.js +17 -0
  177. package/dist/switch-CTW4PDGI.js +17 -0
  178. package/dist/symphony-3QMBGCZY.js +2 -0
  179. package/dist/symphony-QI63XL62.js +53 -0
  180. package/dist/symphony-loader-XACVV2E3.js +2 -0
  181. package/dist/symphony-peers-U4KHMKGI.js +2 -0
  182. package/dist/symphony-peers-X5NGWXFP.js +2 -0
  183. package/dist/symphony-relay-5GY5JIPT.js +3 -0
  184. package/dist/sync-QRDSFETO.js +2 -0
  185. package/dist/sync-llms-HL5PPW3M.js +15 -0
  186. package/dist/task-loader-NZFDTUQ5.js +2 -0
  187. package/dist/team-WGERKGNP.js +2 -0
  188. package/dist/test-BQJMS4Y2.js +111 -0
  189. package/dist/thread-HFXK65D4.js +41 -0
  190. package/dist/timeline-K3ZFKJ3R.js +6 -0
  191. package/dist/triage-FCWOZASE.js +18 -0
  192. package/dist/tutorial-UC6YQMNN.js +305 -0
  193. package/dist/university-content/courses/.purpose +74 -5
  194. package/dist/university-content/plsat/.purpose +3 -2
  195. package/dist/university-ui/assets/{index-BjewBB6s.js → index-CGFJczb1.js} +2 -2
  196. package/dist/university-ui/assets/{index-BjewBB6s.js.map → index-CGFJczb1.js.map} +1 -1
  197. package/dist/university-ui/index.html +1 -1
  198. package/dist/upgrade-B4IOLZYK.js +53 -0
  199. package/dist/validate-C6SMKGYD.js +9 -0
  200. package/dist/validate-LSCDOLBO.js +13 -0
  201. package/dist/validate-VZXTJHGO.js +6 -0
  202. package/dist/watch-LRM5XD46.js +8 -0
  203. package/dist/watch-PZCCUP6K.js +9 -0
  204. package/dist/wisdom-XZ3QKPNP.js +7 -0
  205. package/dist/work-log-loader-DL5GZ2BQ.js +2 -0
  206. package/dist/workspace-2ODL5WLY.js +2 -0
  207. package/package.json +1 -1
  208. package/platform-ui/dist/assets/AmbientSection-DqQ2mfCO.js +1 -0
  209. package/platform-ui/dist/assets/{CanvasSection-DwPTRdIN.js → CanvasSection-DLW0s-Bu.js} +1 -1
  210. package/platform-ui/dist/assets/{DocsSection-BJc_ws4I.js → DocsSection-BQ9Hi51g.js} +1 -1
  211. package/platform-ui/dist/assets/{GitSection-DhqBo1xc.js → GitSection-QQeUX6o3.js} +1 -1
  212. package/platform-ui/dist/assets/{GraphSection-D9fhVnZ0.js → GraphSection-0c9C-w7K.js} +2 -2
  213. package/platform-ui/dist/assets/{GraphSection-BlgXTl53.css → GraphSection-Bbs2a8sC.css} +1 -1
  214. package/platform-ui/dist/assets/LoreSection--t56kCj2.js +1 -0
  215. package/platform-ui/dist/assets/LoreSection-qnmm3o4y.css +1 -0
  216. package/platform-ui/dist/assets/SentinelSection-C4OoME9U.js +1 -0
  217. package/platform-ui/dist/assets/{SymphonySection-BRoBaUSS.js → SymphonySection-B-rvsLxq.js} +1 -1
  218. package/platform-ui/dist/assets/TeamSection-CBFmNEEo.js +1 -0
  219. package/platform-ui/dist/assets/index-Bxp0TVaf.css +1 -0
  220. package/platform-ui/dist/assets/index-DPpOdAtC.js +57 -0
  221. package/platform-ui/dist/index.html +2 -2
  222. package/dist/accept-orchestration-UQLM7PTQ.js +0 -189
  223. package/dist/add-FZRKEGH4.js +0 -81
  224. package/dist/agent-WERIO2XV.js +0 -523
  225. package/dist/agent-loader-TFIANSF4.js +0 -44
  226. package/dist/agent-state-S5DAWPTF.js +0 -24
  227. package/dist/agents-suggest-DNSYJ6IA.js +0 -83
  228. package/dist/aggregate-H57K7PNV.js +0 -88
  229. package/dist/assess-4WVXZLZQ.js +0 -68
  230. package/dist/auto-QFS5NHQU.js +0 -504
  231. package/dist/beacon-KXZXYQHX.js +0 -251
  232. package/dist/calibration-V46G7JTY.js +0 -135
  233. package/dist/check-OWAIWV23.js +0 -175
  234. package/dist/chunk-2IO7JAG2.js +0 -148
  235. package/dist/chunk-2T6BTYBN.js +0 -712
  236. package/dist/chunk-36TKPM5Z.js +0 -400
  237. package/dist/chunk-45MUDW6E.js +0 -804
  238. package/dist/chunk-4BLYIB7J.js +0 -5701
  239. package/dist/chunk-4L3UTYQX.js +0 -677
  240. package/dist/chunk-4NCFWYGG.js +0 -110
  241. package/dist/chunk-54LTTQBH.js +0 -138
  242. package/dist/chunk-5EWAQHFY.js +0 -269
  243. package/dist/chunk-5JGJACDU.js +0 -37
  244. package/dist/chunk-5OUOLN6M.js +0 -659
  245. package/dist/chunk-5VKJBNJL.js +0 -444
  246. package/dist/chunk-6N3JTACN.js +0 -2260
  247. package/dist/chunk-6QC3YGB6.js +0 -114
  248. package/dist/chunk-7N7GSU6K.js +0 -34
  249. package/dist/chunk-ABVQGRF7.js +0 -268
  250. package/dist/chunk-CL7JSK52.js +0 -129
  251. package/dist/chunk-CSD7IHSN.js +0 -152
  252. package/dist/chunk-EDOAWN7J.js +0 -717
  253. package/dist/chunk-EKGMAM62.js +0 -525
  254. package/dist/chunk-EZ3GOCYC.js +0 -132
  255. package/dist/chunk-F3BCHPYT.js +0 -143
  256. package/dist/chunk-FKJUBQU3.js +0 -3081
  257. package/dist/chunk-GT5QGC2H.js +0 -253
  258. package/dist/chunk-GZDFVP2N.js +0 -540
  259. package/dist/chunk-IRKUEJVW.js +0 -405
  260. package/dist/chunk-J2JEQRT3.js +0 -164
  261. package/dist/chunk-JASGXLK3.js +0 -679
  262. package/dist/chunk-KVDYJLTC.js +0 -121
  263. package/dist/chunk-L27I3CPZ.js +0 -357
  264. package/dist/chunk-LHLIAYQ3.js +0 -185
  265. package/dist/chunk-MCMOGQMU.js +0 -145
  266. package/dist/chunk-NQKQG45G.js +0 -688
  267. package/dist/chunk-PBHIFAL4.js +0 -259
  268. package/dist/chunk-PDX44BCA.js +0 -11
  269. package/dist/chunk-PMXRGPRQ.js +0 -305
  270. package/dist/chunk-RAB5IKPR.js +0 -487
  271. package/dist/chunk-RJE5G7WO.js +0 -590
  272. package/dist/chunk-RTHA3XRE.js +0 -880
  273. package/dist/chunk-S2HO5MLR.js +0 -621
  274. package/dist/chunk-S3ORKP3V.js +0 -716
  275. package/dist/chunk-TAIJOFOE.js +0 -124
  276. package/dist/chunk-TXESEO7Y.js +0 -245
  277. package/dist/chunk-UPLDI7CN.js +0 -1334
  278. package/dist/chunk-VL67H5IC.js +0 -506
  279. package/dist/chunk-VPPK3SY4.js +0 -1136
  280. package/dist/chunk-YMDLDELF.js +0 -314
  281. package/dist/chunk-YO6DVTL7.js +0 -99
  282. package/dist/chunk-YRZ5RPEB.js +0 -1561
  283. package/dist/chunk-ZDHLG5VP.js +0 -5676
  284. package/dist/chunk-ZGUAAVMA.js +0 -756
  285. package/dist/chunk-ZSYVKSY6.js +0 -2602
  286. package/dist/claude-FRRWJSTJ.js +0 -362
  287. package/dist/claude-cli-XJLK2X4L.js +0 -276
  288. package/dist/claude-code-HTBA4XRB.js +0 -126
  289. package/dist/claude-code-teams-T4SP24MD.js +0 -199
  290. package/dist/commands-5N4ILTPH.js +0 -5859
  291. package/dist/conductor-CQVGTEQN.js +0 -161
  292. package/dist/config-schema-EA4XALGG.js +0 -154
  293. package/dist/constellation-A26CCGQS.js +0 -225
  294. package/dist/context-audit-RLO3ETRP.js +0 -682
  295. package/dist/cost-BGM32XJU.js +0 -93
  296. package/dist/cost-VI46A4XL.js +0 -174
  297. package/dist/cursor-cli-JVEZGHWQ.js +0 -269
  298. package/dist/cursorrules-HLIKJJZT.js +0 -84
  299. package/dist/decision-loader-WWCLIQPJ.js +0 -20
  300. package/dist/delete-KBRPQLPC.js +0 -56
  301. package/dist/diff-D4X53HAC.js +0 -126
  302. package/dist/discipline-FA4OZXIS.js +0 -24
  303. package/dist/dist-34NA5RS5.js +0 -74
  304. package/dist/dist-5QE2BB2B-5S3T6Y3T.js +0 -6919
  305. package/dist/dist-77JDTVAY.js +0 -62
  306. package/dist/dist-OGTSAZ55.js +0 -1358
  307. package/dist/dist-QK4SQAK7.js +0 -64
  308. package/dist/dist-TA6LSC2Q.js +0 -20
  309. package/dist/docs-PBZB7LYP.js +0 -89
  310. package/dist/docs-QIYKO3BR.js +0 -155
  311. package/dist/doctor-ULBOHEIC.js +0 -11
  312. package/dist/drift-R5NRKFHI.js +0 -251
  313. package/dist/echo-O2LY7CC2.js +0 -248
  314. package/dist/edit-R2HNLMOG.js +0 -63
  315. package/dist/event-25OJKDCE.js +0 -31
  316. package/dist/export-IWVL7XLF.js +0 -38
  317. package/dist/flow-CRRVV3O3.js +0 -185
  318. package/dist/global-3NG5JXUB.js +0 -136
  319. package/dist/graduate-USAWGBJM.js +0 -160
  320. package/dist/graph-VHUMAAS6.js +0 -12
  321. package/dist/graph-server-YL22VBBN.js +0 -116
  322. package/dist/habits-OL5NGPXO.js +0 -1405
  323. package/dist/history-WOWC573W.js +0 -277
  324. package/dist/hooks-HFWSCGPV.js +0 -12
  325. package/dist/integrity-IHO4FZTS.js +0 -194
  326. package/dist/integrity-checker-PSKJA5SB.js +0 -12
  327. package/dist/journal-loader-5EYSBFFY.js +0 -18
  328. package/dist/lint-K6CJGGPH.js +0 -456
  329. package/dist/list-4YK7QKFF.js +0 -57
  330. package/dist/list-ENR7Q4CR.js +0 -56
  331. package/dist/lore-loader-7NO6N6FT.js +0 -26
  332. package/dist/lore-server-UNJY5KC3.js +0 -118
  333. package/dist/manual-G6FISID5.js +0 -204
  334. package/dist/migrate-LS45DNEV.js +0 -889
  335. package/dist/migrate-assessments-RGH4O6IX.js +0 -97
  336. package/dist/model-discovery-D2H3VBGC.js +0 -8
  337. package/dist/nomination-engine-RV5CNO5B.js +0 -42
  338. package/dist/notebook-YWIYGEHV.js +0 -155
  339. package/dist/orchestrate-JLILBBJE.js +0 -324
  340. package/dist/peers-DEOUIZM6.js +0 -82
  341. package/dist/persona-UHAHIVST.js +0 -390
  342. package/dist/pipeline-L4HCSBGN.js +0 -263
  343. package/dist/platform-server-H5YO3DQD.js +0 -1475
  344. package/dist/plugin-update-checker-KRRSGXMV.js +0 -12
  345. package/dist/portal-check-NPYGII2D.js +0 -42
  346. package/dist/portal-compliance-J7DGAPFX.js +0 -18
  347. package/dist/probe-MHL5HQZ2.js +0 -167
  348. package/dist/promote-F6ZYZZAL.js +0 -182
  349. package/dist/providers-GK7PB2OL.js +0 -104
  350. package/dist/quiz-M66SC7F7.js +0 -99
  351. package/dist/record-RA4WR2BO.js +0 -49
  352. package/dist/reindex-5LTD53ZC.js +0 -16
  353. package/dist/remember-HBWJ655S.js +0 -77
  354. package/dist/retag-3OLCVDEQ.js +0 -62
  355. package/dist/review-27ATYTD2.js +0 -33
  356. package/dist/review-57QMURZV.js +0 -334
  357. package/dist/ripple-JPBXP5I3.js +0 -215
  358. package/dist/sentinel-4XIG4STA.js +0 -63
  359. package/dist/sentinel-bridge-MDUXTQRL.js +0 -109
  360. package/dist/serve-CAH3PHE7.js +0 -33
  361. package/dist/serve-INL7SNBK.js +0 -36
  362. package/dist/serve-KBSE36PL.js +0 -49
  363. package/dist/server-54SKYFFY.js +0 -1647
  364. package/dist/server-XUOIO7E6.js +0 -338
  365. package/dist/session-tracker-C4BMD5WG.js +0 -13
  366. package/dist/session-work-log-MZ47OAPB.js +0 -20
  367. package/dist/setup-EDS27WUR.js +0 -25
  368. package/dist/setup-KO5AFC4K.js +0 -296
  369. package/dist/shift-D2JOHHBF.js +0 -668
  370. package/dist/show-5PV5KFJE.js +0 -176
  371. package/dist/show-NQKYX6WQ.js +0 -82
  372. package/dist/snapshot-BK4RBPCG.js +0 -62
  373. package/dist/spawn-RCHNXDHE.js +0 -196
  374. package/dist/status-WGIAQODY.js +0 -71
  375. package/dist/summary-NIRABMF5.js +0 -140
  376. package/dist/sweep-QMHNSIY5.js +0 -934
  377. package/dist/switch-6EJPZDIA.js +0 -232
  378. package/dist/symphony-4OCY36AI.js +0 -791
  379. package/dist/symphony-B75X2MME.js +0 -326
  380. package/dist/symphony-loader-UZGON56V.js +0 -90
  381. package/dist/symphony-peers-2ZQYLRNI.js +0 -34
  382. package/dist/symphony-peers-OL7F6M5S.js +0 -121
  383. package/dist/symphony-relay-UJYUXN65.js +0 -710
  384. package/dist/sync-VEHUH4OA.js +0 -11
  385. package/dist/sync-llms-YHCFIE6X.js +0 -166
  386. package/dist/task-loader-LDYWQSLM.js +0 -20
  387. package/dist/team-O5MIIFMA.js +0 -34
  388. package/dist/test-566CP5KC.js +0 -1017
  389. package/dist/thread-N754I4D5.js +0 -274
  390. package/dist/timeline-M3CICQFE.js +0 -112
  391. package/dist/triage-HHYGT3HY.js +0 -671
  392. package/dist/tutorial-KD22SUNO.js +0 -666
  393. package/dist/upgrade-H5PF32BW.js +0 -551
  394. package/dist/validate-CNKEKO6A.js +0 -134
  395. package/dist/validate-MB5ULIHS.js +0 -39
  396. package/dist/validate-QH3LADM6.js +0 -64
  397. package/dist/watch-2TKP5PVL.js +0 -199
  398. package/dist/watch-ZF4ML6CD.js +0 -111
  399. package/dist/wisdom-AATMGNFA.js +0 -319
  400. package/dist/work-log-loader-5L45XNYZ.js +0 -14
  401. package/dist/workspace-6E6OSRNU.js +0 -21
  402. package/platform-ui/dist/assets/AmbientSection-WtHfNedO.js +0 -1
  403. package/platform-ui/dist/assets/LoreSection-C3EixkjW.css +0 -1
  404. package/platform-ui/dist/assets/LoreSection-CwDDHrz9.js +0 -1
  405. package/platform-ui/dist/assets/SentinelSection-Cl7e5oZ6.js +0 -1
  406. package/platform-ui/dist/assets/TeamSection-CqSIMrKz.js +0 -1
  407. package/platform-ui/dist/assets/index-CfpZFjea.css +0 -1
  408. package/platform-ui/dist/assets/index-F0KL9xrN.js +0 -57
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env node
2
+ import {a,e,d}from'./chunk-ET5XJTSX.js';import'./chunk-5TAVYPOV.js';import*as c from'fs';import*as p from'path';import {execSync}from'child_process';import n from'chalk';import*as w from'js-yaml';function R(s){return s.match(/(?:^|\s)((?:\/|\.\/|[a-zA-Z0-9_-]+\/)[^\s,;:'"]+\.[a-zA-Z]{1,10})\b/)?.[1]}async function $(s,l){try{let a$1=a(s),f=[];try{f=execSync("git diff --name-only HEAD",{cwd:s,encoding:"utf8",timeout:5e3}).trim().split(`
3
+ `).filter(Boolean);}catch{}let i;try{i=execSync("git status --porcelain",{cwd:s,encoding:"utf8",timeout:5e3}).trim()==="";}catch{}let u=p.join(s,"portal.yaml"),g=!1;if(c.existsSync(u))try{let t=c.readFileSync(u,"utf8"),e=w.load(t);g=e?.routes!=null&&Object.keys(e.routes).length>0;}catch{}let r=e({toolsCalled:[],filesModified:f,symbolsTouched:[],loreRecorded:!1,hasPortalRoutes:g,taskAddsRoutes:!1,gitClean:i}),o=d(a$1,l,r),d$1=0;if(o.evaluations.length>0)try{let t=p.join(s,".paradigm","sentinel");if(c.existsSync(t)){let{SentinelStorage:e}=await import('./dist-VGFSP3XM.js'),m=new e(t);for(let b of o.evaluations)m.recordPracticeEvent({habitId:b.habit.id,habitCategory:b.habit.category,result:b.result,engineer:"agent",sessionId:`cli-${Date.now().toString(36)}`,symbolsTouched:[],filesModified:f,notes:b.reason}),d$1++;}}catch{}let h=p.join(s,".paradigm",".habits-blocking");try{if(l==="on-stop"&&o.blocksCompletion){let t=o.evaluations.filter(e=>e.result==="skipped"&&e.habit.severity==="block").map(e=>`${e.habit.name}: ${e.reason}`);c.writeFileSync(h,t.join(`
4
+ `),"utf8");}else l==="on-stop"&&c.existsSync(h)&&c.unlinkSync(h);}catch{}return {trigger:l,evaluation:{total:o.summary.total,followed:o.summary.followed,skipped:o.summary.skipped,partial:o.summary.partial,blockingViolations:o.summary.blockingViolations,blocksCompletion:o.blocksCompletion},habits:o.evaluations.map(t=>({id:t.habit.id,name:t.habit.name,category:t.habit.category,severity:t.habit.severity,result:t.result,reason:t.reason,evidence:t.evidence})),recorded:d$1}}catch{return null}}async function P(s,l){let a=p.join(s,".paradigm","aspect-graph.db");if(!c.existsSync(a))return {driftedCount:0,healedCount:0,cleanCount:0,missingCount:0,details:[]};try{let{driftCheckCommand:f}=await import('./drift-ILZE5BFJ.js'),i="",u=console.log;console.log=g=>{i=g;};try{await f({json:!0,autoHeal:l});}finally{console.log=u;}return i?JSON.parse(i):null}catch{return null}}async function B(s){if(!c.existsSync(p.join(s,"portal.yaml")))return null;try{let{checkPortalCompliance:l}=await import('./portal-compliance-2UG4VKWH.js'),a=await l(s);return {status:a.status,declaredButUnusedCount:a.declaredButUnused.length,usedButUndeclaredCount:a.usedButUndeclared.length,properlyDeclaredCount:a.properlyDeclared.length,declaredButUnused:a.declaredButUnused,usedButUndeclared:a.usedButUndeclared,properlyDeclared:a.properlyDeclared}}catch{return null}}async function j(s){try{let{runPostflightLearning:l}=await import('./ambient-HYZR42NX.js');return await l(s)}catch{return null}}async function A(s){let l=process.cwd(),a=s.trigger||"on-stop",f=s.autoHeal!==false,i=[],u=[],g=await $(l,a),r=await P(l,f),o=await B(l);if(g?.evaluation.blocksCompletion){let t=g.habits.filter(e=>e.result==="skipped"&&e.severity==="block");for(let e of t){let m=`Blocking habit not satisfied: ${e.name} \u2014 ${e.reason}`;i.push(m),u.push({message:m,source:"habits",file:R(e.reason),severity:"blocking"});}}if(r&&r.driftedCount>0){let t=`${r.driftedCount} aspect anchor(s) have drifted (content genuinely changed). Run paradigm_aspect_check to review.`;i.push(t);for(let e of r.details.filter(m=>m.status==="drifted"))u.push({message:`Aspect ~${e.aspectId} drifted at lines ${e.startLine}-${e.endLine}`,source:"drift",file:e.path,severity:"advisory"});u.filter(e=>e.source==="drift").length===0&&u.push({message:t,source:"drift",severity:"advisory"});}if(o&&o.usedButUndeclaredCount>0){let t=`${o.usedButUndeclaredCount} gate(s) used in code but not declared in portal.yaml: ${o.usedButUndeclared.join(", ")}`;i.push(t);for(let e of o.usedButUndeclared)u.push({message:`Gate ^${e} used in code but not declared in portal.yaml`,source:"portal",file:"portal.yaml",severity:"blocking"});}let d=null;s.learn&&(d=await j(l));let h={habits:g,drift:r,portal:o,violations:i,structuredViolations:u,postflight:s.learn?d:void 0};if(s.json)console.log(JSON.stringify(h));else {if(console.log(n.magenta(`
5
+ Paradigm Compliance Check
6
+ `)),g){let{evaluation:t}=g,e=t.blocksCompletion?n.red:n.green;console.log(n.white(" Habits:")),console.log(` ${e(`${t.followed} followed, ${t.skipped} skipped, ${t.partial} partial`)}`),t.blockingViolations>0&&console.log(n.red(` ${t.blockingViolations} blocking violation(s)`)),console.log();}if(r&&(console.log(n.white(" Drift:")),r.healedCount>0&&console.log(n.green(` Auto-healed: ${r.healedCount} shifted anchor(s)`)),r.cleanCount>0&&console.log(n.green(` Clean: ${r.cleanCount} anchor(s)`)),r.driftedCount>0&&console.log(n.red(` Drifted: ${r.driftedCount} anchor(s)`)),r.missingCount>0&&console.log(n.yellow(` Missing: ${r.missingCount} anchor file(s)`)),console.log()),o){console.log(n.white(" Portal:"));let t=o.status==="compliant"?n.green:o.status==="warnings"?n.yellow:n.red;console.log(` Status: ${t(o.status)}`),o.usedButUndeclaredCount>0&&console.log(n.red(` ${o.usedButUndeclaredCount} undeclared gate(s)`)),console.log();}if(d){if(console.log(n.white(" Postflight Learning:")),d.journalsWritten>0){console.log(n.green(` Journals written: ${d.journalsWritten}`));for(let[t,e]of Object.entries(d.journalsByAgent))e>0&&console.log(n.gray(` ${t}: ${e} entries`));}else console.log(n.gray(" No verdicts to learn from"));d.promoted>0&&console.log(n.green(` Promoted to notebooks: ${d.promoted}`)),console.log();}if(i.length>0){console.log(n.red(` ${i.length} violation(s):`));for(let t of i)console.log(n.red(` - ${t}`));}else console.log(n.green(" All checks passed."));console.log();}i.length>0&&(process.exitCode=1);}export{A as complianceCheckCommand};
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env node
2
+ import {a as a$1}from'./chunk-LKAT7IAK.js';import'./chunk-5TAVYPOV.js';import {execSync,spawn}from'child_process';import*as c from'fs';import*as r from'path';import*as p from'os';import {fileURLToPath}from'url';import e from'chalk';var b=fileURLToPath(import.meta.url),w=r.dirname(b),a=r.join(p.homedir(),".paradigm","conductor","bin","conductor");async function k(t){let n=a$1.command("conductor");if(t.install){await C(t,n);return}let i=x(t,n);if(i){if(t.build){let o=d();if(o){l(o,t,n);let s=r.join(o,".build","release","conductor");f(s,n);return}else n.error("--build requires the Paradigm monorepo"),console.log(e.gray(" Run from inside the a-paradigm repo, or use --install to update the global binary.")),process.exit(1);}f(i,n);}}function x(t,n){if(c.existsSync(a))return a;let i=d();if(i){let o=r.join(i,".build","release","conductor");if(c.existsSync(o)||(n.info("Dev binary not found, building\u2026"),l(i,t,n),c.existsSync(o)))return o}return n.error("Conductor binary not found"),console.log(""),console.log(e.white(" To install Conductor:")),console.log(e.cyan(" cd <paradigm-repo> && paradigm conductor --install")),console.log(""),console.log(e.gray(" This builds the native binary and installs it to ~/.paradigm/conductor/bin/")),console.log(e.gray(" After that, `paradigm conductor` works from any directory.")),console.log(""),process.exit(1),null}async function C(t,n){let i=d();i||(n.error("Cannot install \u2014 not in the Paradigm monorepo"),console.log(e.gray(" Run this command from inside the a-paradigm repository.")),process.exit(1));let o=r.join(i,".build","release","conductor");(!c.existsSync(o)||t.build)&&l(i,t,n),c.existsSync(o)||(n.error("Build did not produce a binary"),process.exit(1));let s=r.dirname(a);c.mkdirSync(s,{recursive:true}),c.copyFileSync(o,a),c.chmodSync(a,493);let m=(c.statSync(a).size/(1024*1024)).toFixed(1);n.success(`Conductor installed (${m} MB)`),console.log(""),console.log(e.green(" \u2713 ")+e.white("Installed to ")+e.cyan("~/.paradigm/conductor/bin/conductor")),console.log(e.green(" \u2713 ")+e.white("Run ")+e.cyan("paradigm conductor")+e.white(" from any directory")),console.log("");}function l(t,n,i){i.info("Building Conductor\u2026");try{execSync("swift build -c release",{cwd:t,stdio:n.verbose?"inherit":"pipe"}),i.success("Build complete");}catch(o){i.error("Build failed");let s=o.message||"";s.includes("xcode-select")?(console.log(e.gray(" Xcode Command Line Tools are required.")),console.log(e.gray(" Install with: xcode-select --install"))):console.log(e.gray(` ${s.slice(0,200)}`)),process.exit(1);}}function f(t,n){n.info("Launching Conductor\u2026"),spawn(t,[],{detached:true,stdio:"ignore"}).unref();let o=t===a;console.log(e.cyan(`
3
+ Paradigm Conductor is running.`)),o&&console.log(e.gray(" Binary: ~/.paradigm/conductor/bin/conductor")),console.log(e.gray(" Look for the waveform icon in your menu bar.")),console.log(e.gray(` Quit via the menu bar icon or Cmd+Q.
4
+ `));}function d(){let t=r.resolve(w,"..");for(let o=0;o<5;o++){let s=r.join(t,"packages","conductor");if(c.existsSync(r.join(s,"Package.swift")))return s;t=r.dirname(t);}let n=r.join(process.cwd(),"packages","conductor");if(c.existsSync(r.join(n,"Package.swift")))return n;if(c.existsSync(r.join(process.cwd(),"Package.swift"))&&r.basename(process.cwd())==="conductor")return process.cwd();let i=process.cwd();for(let o=0;o<5;o++){i=r.dirname(i);let s=r.join(i,"packages","conductor");if(c.existsSync(r.join(s,"Package.swift")))return s}return null}export{k as conductorCommand};
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ import'./chunk-5TAVYPOV.js';import {z}from'zod';import*as r from'js-yaml';var p=z.enum(["web","backend","fullstack","api","cli","ml","mobile","game","embedded","devops","data","library","monorepo","custom"]),g=z.enum(["auto","claude","claude-code","cursor-cli","claude-cli","manual"]),i=z.object({name:z.string(),description:z.string(),examples:z.array(z.string()).optional()}).passthrough(),u=z.object({file:z.string().optional(),"core-tags":z.array(z.string()).optional(),"allow-suggestions":z.boolean().optional()}).passthrough(),m=z.object({overview:z.string().optional(),"how-to-use":z.array(z.string()).optional(),"update-rules":z.array(z.string()).optional()}).passthrough(),d=z.object({enforce:z.boolean().optional(),"default-level":z.enum(["debug","info","warn","error"]).optional(),"symbol-mapping":z.record(z.string(),z.string()).optional()}).passthrough(),b=z.object({pattern:z.string(),depth:z.number().optional()}),h=z.object({toolCacheTtlMs:z.number().optional()}).passthrough(),f=z.object({model:z.string().optional(),"context-window":z.number().optional()}).passthrough(),y=z.object({enabled:z.boolean().optional(),"index-file":z.string().optional(),"docs-path":z.string().optional()}).passthrough(),w=z.object({enabled:z.boolean().optional(),"auto-include":z.boolean().optional()}).passthrough(),j=z.object({version:z.string(),project:z.string(),discipline:p.optional(),"agent-provider":g.optional(),"agent-guidelines":m.optional(),"symbol-system":z.record(z.string(),i).optional(),"tag-bank":u.optional(),component_types:z.record(z.string(),z.string()).optional(),logging:d.optional(),"purpose-required":z.array(b).optional(),conventions:z.array(z.string()).optional(),workspace:z.string().optional(),limits:h.optional(),"ai-agent":f.optional(),context:y.optional(),probe:w.optional(),states:z.record(z.string(),z.unknown()).optional(),"custom-symbols":z.record(z.string(),i).optional()}).passthrough(),v=new Set(["version","project","discipline","agent-provider","agent-guidelines","symbol-system","tag-bank","component_types","logging","purpose-required","conventions","workspace","limits","ai-agent","context","probe","states","custom-symbols","docs","features"]);function S(l){let s=[],e=[],t;try{t=r.load(l);}catch(n){return {valid:false,warnings:[],errors:[`YAML parse error: ${n.message}`]}}if(!t||typeof t!="object")return {valid:false,warnings:[],errors:["Config must be a YAML object"]};for(let n of Object.keys(t))v.has(n)||s.push(`Unrecognized config key: "${n}"`);let a=j.safeParse(t);if(!a.success)for(let n of a.error.issues){let c=n.path.join(".");e.push(`${c}: ${n.message}`);}return {valid:e.length===0,warnings:s,errors:e}}export{j as paradigmConfigSchema,S as validateConfig};
@@ -0,0 +1,13 @@
1
+ #!/usr/bin/env node
2
+ import {m as m$1,o,C,B,r}from'./chunk-T6IDXUUA.js';import'./chunk-JIXHEBGK.js';import'./chunk-QT2LKB3P.js';import {a}from'./chunk-LKAT7IAK.js';import'./chunk-5TAVYPOV.js';import*as u from'fs';import*as m from'path';import e from'chalk';import F from'ora';function I(t){let o={gates:[],signals:[],components:[],flows:[],aspects:[]};for(let r of t){if(!r||r.length<2)continue;switch(r[0]){case "^":o.gates.push(r);break;case "!":o.signals.push(r);break;case "#":o.components.push(r);break;case "$":o.flows.push(r);break;case "~":o.aspects.push(r);break}}return o}function T(t,o){let r$1={},g={},l=B(t),a=C(t);for(let s of a){let n=I(s.references),i={type:s.type,path:s.filePath,references:s.references,referencedBy:s.referencedBy};s.description&&(i.description=s.description),s.tags&&s.tags.length>0&&(i.tags=s.tags),n.gates.length>0&&(i.gates=n.gates),n.signals.length>0&&(i.signals=n.signals),n.components.length>0&&(i.components=n.components),n.flows.length>0&&(i.flows=n.flows),n.aspects.length>0&&(i.aspects=n.aspects),r$1[s.symbol]=i;}let y=r(t,"flow");for(let s of y){let n=s.data,i=n?.sequence||n?.gates||s.references;g[s.symbol]={description:s.description,sequence:i};}return {version:"1.0",generated:new Date().toISOString(),project:o,stats:{components:l.component,flows:l.flow,gates:l.gate,signals:l.signal,aspects:l.aspect,total:Object.values(l).reduce((s,n)=>s+n,0)},stars:r$1,orbits:g}}async function z(t,o$1={}){let r=process.cwd(),g=t?m.resolve(r,t):r,l=m.basename(g),a$1=o$1.format||"json";o$1.quiet||console.log(e.blue(`
3
+ \u2728 Building Constellation...
4
+ `));let y=F("Aggregating symbols...").start(),s=a.command("constellation").start("Building constellation",{project:l});try{let n=await m$1(g),i=o(n);a.operation("aggregate").debug("Symbols aggregated",{count:C(i).length}),y.text="Building constellation...";let p=T(i,l),$=m.join(g,".paradigm");u.existsSync($)||u.mkdirSync($,{recursive:!0});let h=o$1.output||m.join($,`constellation.${a$1}`),S;if(a$1==="yaml"?S=d(p):S=JSON.stringify(p,null,2),u.writeFileSync(h,S,"utf8"),a.component("constellation-file").success("Constellation written",{path:h,format:a$1}),y.succeed("Constellation built"),s.success("Constellation built",{path:h,stars:Object.keys(p.stars).length}),!o$1.quiet){console.log(e.white(`
5
+ Constellation Stats`)),console.log(e.gray("\u2500".repeat(40)));let f=p.stats,q=[{symbol:"#",name:"Components",count:f.components,color:e.green},{symbol:"$",name:"Flows",count:f.flows,color:e.yellow},{symbol:"^",name:"Gates",count:f.gates,color:e.red},{symbol:"!",name:"Signals",count:f.signals,color:e.cyan},{symbol:"~",name:"Aspects",count:f.aspects,color:e.magenta}];for(let{symbol:c,name:R,count:O,color:E}of q)O>0&&console.log(` ${E(c)} ${R.padEnd(12)} ${e.cyan(O.toString())}`);console.log(e.gray("\u2500".repeat(40))),console.log(` Total stars: ${e.cyan(f.total.toString())}`),console.log(` Total orbits: ${e.cyan(Object.keys(p.orbits).length.toString())}`),console.log(e.gray(`
6
+ Output: ${h}
7
+ `));let w=Object.entries(p.stars).find(([,c])=>c.references.length>0||c.referencedBy.length>0);if(w){console.log(e.white("Sample Star")),console.log(e.gray("\u2500".repeat(40))),console.log(e.cyan(` ${w[0]}`));let c=w[1];c.gates?.length&&console.log(e.gray(` gates: ${c.gates.join(", ")}`)),c.components?.length&&console.log(e.gray(` components: ${c.components.join(", ")}`)),c.signals?.length&&console.log(e.gray(` signals: ${c.signals.join(", ")}`)),c.referencedBy.length&&console.log(e.gray(` referencedBy: ${c.referencedBy.join(", ")}`)),console.log("");}}if(n.errors.length>0&&!o$1.quiet){console.log(e.yellow("Warnings")),console.log(e.gray("\u2500".repeat(40)));for(let f of n.errors.slice(0,5))console.log(e.yellow(` \u26A0 ${f.filePath}: ${f.message}`));n.errors.length>5&&console.log(e.gray(` ... and ${n.errors.length-5} more`)),console.log("");}return p}catch(n){y.fail("Failed to build constellation"),s.error("Constellation build failed",{error:n.message}),console.log(e.red(`Error: ${n.message}
8
+ `)),process.exit(1);}}function d(t,o=0){let r=" ".repeat(o);if(t==null)return "null";if(typeof t=="string")return t.includes(":")||t.includes("#")||t.includes(`
9
+ `)||t.startsWith("@")||t.startsWith("^")?`"${t.replace(/"/g,'\\"')}"`:t;if(typeof t=="number"||typeof t=="boolean")return String(t);if(Array.isArray(t))return t.length===0?"[]":t.map(g=>`${r}- ${d(g,o)}`).join(`
10
+ `);if(typeof t=="object"){let g=Object.entries(t);return g.length===0?"{}":g.map(([l,a])=>typeof a=="object"&&a!==null&&!Array.isArray(a)?`${r}${l}:
11
+ ${d(a,o+1)}`:Array.isArray(a)?a.length===0?`${r}${l}: []`:`${r}${l}:
12
+ ${d(a,o+1)}`:`${r}${l}: ${d(a,o)}`).join(`
13
+ `)}return String(t)}export{z as constellationCommand};
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env node
2
+ import {a}from'./chunk-LKAT7IAK.js';import'./chunk-5TAVYPOV.js';import*as h from'fs';import*as f from'path';import*as v from'js-yaml';var w=["CLAUDE.md",".cursorrules","AGENTS.md"];function k(i){let e=[];for(let r of w){let t=f.join(i,r);if(h.existsSync(t)){let l=h.readFileSync(t,"utf8");e.push({name:r,content:l,lines:l.split(`
3
+ `)});}}return e}function C(i,e){let r=new Set,t=new Set(["node_modules","dist",".git",".paradigm","coverage","build","__pycache__","target",".next",".nuxt"]);function l(n){let u;try{u=h.readdirSync(n,{withFileTypes:!0});}catch{return}let a=false;for(let o of u){if(t.has(o.name))continue;let s=f.join(n,o.name);if(o.isDirectory())l(s);else if(o.isFile()){let c=f.extname(o.name);e.includes(c)&&(a=true);}}a&&r.add(n);}return l(i),r}function S(i,e){let r=i;for(;;){if(h.existsSync(f.join(r,".purpose")))return true;if(r===e)break;let t=f.dirname(r);if(t===r)break;r=t;}return false}async function $(i){let e=[],r=k(i);if(r.length===0)return e.push({check:"stale-references",status:"advisory",message:"No instruction files found (CLAUDE.md, .cursorrules, AGENTS.md)"}),e;let t=/(?:^|\s|`|"|')([.a-zA-Z0-9_-]+(?:\/[.a-zA-Z0-9_*{}-]+)+\/?)/gm,l=/(?:^|\s|`|"|')([a-zA-Z0-9_-]+\.(?:ts|js|py|rs|go|yaml|yml|json|md|toml))\b/gm,n=[],u=new Set;for(let a of r){let o=[],s;for(t.lastIndex=0;(s=t.exec(a.content))!==null;)o.push(s[1]);for(l.lastIndex=0;(s=l.exec(a.content))!==null;)o.push(s[1]);for(let c of o){let d=c.replace(/\/+$/,"").replace(/`/g,"");if(d.startsWith("http")||d.startsWith("//")||d.includes("*")||d.includes("{")||d.startsWith("paradigm://")||d.startsWith("node_modules/")||u.has(d))continue;u.add(d);let p=/\.(ts|js|py|rs|go|yaml|yml|json|md|toml)(?:\/|$)/.test(d),g=/^(\.|src\/|packages\/|lib\/|app\/|docs\/)/.test(d);if(!p&&!g)continue;let y=f.join(i,d);h.existsSync(y)||n.push(`${a.name}: ${d}`);}}return n.length>0?e.push({check:"stale-references",status:"error",message:`${n.length} dead path reference${n.length>1?"s":""} in instruction files`,details:n,fix:"Update or remove dead paths from instruction files"}):e.push({check:"stale-references",status:"ok",message:"All referenced paths exist"}),e}async function A(i){let e=[],r=k(i),t=f.join(i,".paradigm","config.yaml");if(h.existsSync(t)){let o=h.readFileSync(t,"utf8");r.push({name:"config.yaml",content:o,lines:o.split(`
4
+ `)});}if(r.length===0)return e.push({check:"convention-contradictions",status:"ok",message:"No instruction files to check"}),e;let l=[],n=[],u=[[/\bcamelCase\b/i,"camelCase"],[/\bkebab[- ]?case\b/i,"kebab-case"],[/\bsnake[_ ]?case\b/i,"snake_case"],[/\bPascalCase\b/i,"PascalCase"]];for(let o of r)for(let s=0;s<o.lines.length;s++){let c=o.lines[s];for(let[d,p]of u)if(d.test(c)){let g=c.match(/\b(file|variable|function|class|component|symbol|directory|folder|module|import)\s*nam/i),y=g?g[1].toLowerCase():"general";l.push({scope:y,directive:p,source:o.name,line:s+1});}}let a=new Map;for(let o of l){let s=a.get(o.scope)||[];s.push(o),a.set(o.scope,s);}for(let[o,s]of a){let c=new Set(s.map(p=>p.directive)),d=[["camelCase","kebab-case"],["camelCase","snake_case"],["kebab-case","snake_case"]];for(let[p,g]of d)if(c.has(p)&&c.has(g)){let y=s.find(b=>b.directive===p),m=s.find(b=>b.directive===g);n.push(`${o} naming: ${p} (${y.source}:${y.line}) vs ${g} (${m.source}:${m.line})`);}}return n.length>0?e.push({check:"convention-contradictions",status:"warn",message:`${n.length} potential convention contradiction${n.length>1?"s":""}`,details:n,fix:"Reconcile conflicting naming/style conventions in instruction files"}):e.push({check:"convention-contradictions",status:"ok",message:"No contradictions detected"}),e}var R=new Set(["typescript","tsup","vitest","eslint","prettier","rimraf","tsx","ts-node","nodemon","concurrently","husky","lint-staged","unbuild","turbo","lerna","changesets"]),P=["@types/","@typescript-eslint/","@eslint/"];async function j(i){let e=[],r=f.join(i,"package.json");if(!h.existsSync(r))return e.push({check:"undocumented-stack",status:"ok",message:"No package.json found (not a JS/TS project or monorepo root)"}),e;let t;try{t=JSON.parse(h.readFileSync(r,"utf8"));}catch{return e.push({check:"undocumented-stack",status:"advisory",message:"Could not parse package.json"}),e}let l=new Set([...Object.keys(t.dependencies||{}),...Object.keys(t.devDependencies||{})]),n=[];for(let s of l)R.has(s)||P.some(c=>s.startsWith(c))||n.push(s);if(n.length===0)return e.push({check:"undocumented-stack",status:"ok",message:"No major dependencies to document"}),e;let a=k(i).map(s=>s.content).join(`
5
+ `).toLowerCase(),o=[];for(let s of n){let c=s.toLowerCase(),d=s.includes("/")?s.split("/").pop():s;!a.includes(c)&&!a.includes(d.toLowerCase())&&o.push(s);}return o.length>0?e.push({check:"undocumented-stack",status:"advisory",message:`${o.length} dependenc${o.length>1?"ies":"y"} not mentioned in instruction files`,details:o.slice(0,20),fix:"Consider documenting major dependencies in CLAUDE.md for AI context"}):e.push({check:"undocumented-stack",status:"ok",message:"All major dependencies are documented"}),e}async function E(i){let e=[],t=C(i,[".ts",".js",".py",".rs",".go",".tsx",".jsx"]);if(t.size===0)return e.push({check:"purpose-coverage",status:"ok",message:"No source directories found"}),e;let l=0,n=[];for(let o of t)if(S(o,i))l++;else {let s=f.relative(i,o);n.push(s);}let u=t.size,a=Math.round(l/u*100);return a<80?e.push({check:"purpose-coverage",status:"warn",message:`${a}% purpose coverage (${l}/${u} source directories) \u2014 below 80% threshold`,details:n.slice(0,15),fix:"Create .purpose files in uncovered source directories"}):e.push({check:"purpose-coverage",status:"ok",message:`${a}% purpose coverage (${l}/${u} source directories)`}),e}async function N(i){let e=[],r=f.join(i,".paradigm","scan-index.json");if(!h.existsSync(r))return e.push({check:"orphaned-symbols",status:"advisory",message:"No scan-index.json found \u2014 run paradigm scan first"}),e;let t;try{t=JSON.parse(h.readFileSync(r,"utf8"));}catch{return e.push({check:"orphaned-symbols",status:"advisory",message:"Could not parse scan-index.json"}),e}let l=["components","gates","signals","flows","aspects"],n=new Map,u=new Set;for(let s of l){let c=t[s];if(!(!c||typeof c!="object")){for(let[d,p]of Object.entries(c))if(p.symbol&&n.set(p.symbol,d),p.related&&Array.isArray(p.related))for(let g of p.related)u.add(g);}}let a=new Set;for(let s of l){let c=t[s];if(!(!c||typeof c!="object"))for(let[,d]of Object.entries(c))d.symbol&&d.related&&Array.isArray(d.related)&&d.related.length>0&&a.add(d.symbol);}let o=[];for(let[s]of n)!u.has(s)&&!a.has(s)&&o.push(s);return o.length>0?e.push({check:"orphaned-symbols",status:"advisory",message:`${o.length} isolated symbol${o.length>1?"s":""} (no connections to other symbols)`,details:o.slice(0,20),fix:"Wire isolated symbols into features or remove them from .purpose files"}):e.push({check:"orphaned-symbols",status:"ok",message:"All symbols are connected"}),e}async function F(i){let e=[],r=f.join(i,"portal.yaml");if(!h.existsSync(r))return e.push({check:"stale-portal",status:"ok",message:"No portal.yaml found (no routes to check)"}),e;let t;try{t=v.load(h.readFileSync(r,"utf8"));}catch{return e.push({check:"stale-portal",status:"error",message:"Could not parse portal.yaml"}),e}if(!t?.routes||typeof t.routes!="object")return e.push({check:"stale-portal",status:"ok",message:"No routes defined in portal.yaml"}),e;let l=Object.keys(t.routes),n=[],u=[".ts",".js",".py",".rs",".go"],a=[];function o(c){let d=new Set(["node_modules","dist",".git",".paradigm","coverage","build","target"]);try{let p=h.readdirSync(c,{withFileTypes:!0});for(let g of p){if(d.has(g.name))continue;let y=f.join(c,g.name);if(g.isDirectory())o(y);else if(g.isFile()){let m=f.extname(g.name);u.includes(m)&&a.push(y);}}}catch{}}o(i);let s=a.map(c=>({full:c,name:f.basename(c,f.extname(c)).toLowerCase(),relPath:f.relative(i,c).toLowerCase()}));for(let c of l){let p=c.replace(/^(GET|POST|PUT|PATCH|DELETE|HEAD|OPTIONS)\s+/i,"").split("/").filter(m=>m&&!m.startsWith(":")&&m!=="api");if(p.length===0)continue;let g=p[0].toLowerCase();s.some(m=>m.name.includes(g)||m.relPath.includes(g))||n.push(c);}return n.length>0?e.push({check:"stale-portal",status:"error",message:`${n.length} portal route${n.length>1?"s":""} with no matching implementation file`,details:n,fix:"Implement missing route handlers or remove stale routes from portal.yaml"}):e.push({check:"stale-portal",status:"ok",message:`All ${l.length} portal routes have matching implementation files`}),e}var _=[{pattern:/\btry to\b/i,label:"try to"},{pattern:/\bmaybe\b/i,label:"maybe"},{pattern:/\bif possible\b/i,label:"if possible"},{pattern:/\bconsider\b(?!-handoff)/i,label:"consider"},{pattern:/\bmight want to\b/i,label:"might want to"},{pattern:/\byou could\b/i,label:"you could"},{pattern:/\boptionally\b/i,label:"optionally"}];async function T(i){let e=[],r=k(i);if(r.length===0)return e.push({check:"instruction-vagueness",status:"ok",message:"No instruction files to check"}),e;let t=[];for(let l of r)for(let n=0;n<l.lines.length;n++){let u=l.lines[n];if(!u.trimStart().startsWith("```")&&!u.trim().startsWith("|---")){for(let{pattern:a,label:o}of _)if(a.test(u)){let s=u.trim(),c=s.length>80?s.slice(0,77)+"...":s;t.push(`${l.name}:${n+1} \u2014 "${o}" \u2014 ${c}`);}}}return t.length>0?e.push({check:"instruction-vagueness",status:"advisory",message:`${t.length} vague phrase${t.length>1?"s":""} in instruction files`,details:t.slice(0,20),fix:"Replace vague language with clear, actionable directives"}):e.push({check:"instruction-vagueness",status:"ok",message:"No vague language detected"}),e}async function I(i){let e=[],r=f.join(i,".paradigm","config.yaml");if(!h.existsSync(r))return e.push({check:"config-schema-validation",status:"advisory",message:"No .paradigm/config.yaml found"}),e;try{let t=h.readFileSync(r,"utf8"),{validateConfig:l}=await import('./config-schema-HR7LDEQ6.js'),n=l(t),u=[];for(let a of n.errors)u.push(`Error: ${a}`);for(let a of n.warnings)u.push(`Warning: ${a}`);n.errors.length>0?e.push({check:"config-schema-validation",status:"error",message:`${n.errors.length} schema error${n.errors.length>1?"s":""} in config.yaml`,details:u,fix:"Fix invalid fields in .paradigm/config.yaml"}):n.warnings.length>0?e.push({check:"config-schema-validation",status:"warn",message:`${n.warnings.length} unrecognized key${n.warnings.length>1?"s":""} in config.yaml`,details:u,fix:"Check for typos in .paradigm/config.yaml field names"}):e.push({check:"config-schema-validation",status:"ok",message:"config.yaml schema is valid"});}catch(t){e.push({check:"config-schema-validation",status:"error",message:`Could not validate config.yaml: ${t.message}`});}return e}async function L(i){let e=[],r=[];function t(a){let o=new Set(["node_modules","dist",".git",".paradigm","coverage","build"]);try{let s=h.readdirSync(a,{withFileTypes:!0});for(let c of s){if(o.has(c.name))continue;let d=f.join(a,c.name);c.isDirectory()?t(d):c.name===".purpose"&&r.push(d);}}catch{}}if(t(i),r.length===0)return e.push({check:"purpose-file-health",status:"ok",message:"No .purpose files to check"}),e;let l=[],n=0,u="";for(let a of r)try{let s=h.readFileSync(a,"utf8").split(`
6
+ `).length;if(s>n&&(n=s,u=f.relative(i,a)),s>500){let c=s>1e3?"!!":"!";l.push(`${c} ${f.relative(i,a)} (${s} lines)`);}}catch{continue}return l.length>0?e.push({check:"purpose-file-health",status:"warn",message:`${l.length} oversized .purpose file${l.length>1?"s":""} (largest: ${u} at ${n} lines)`,details:l,fix:"Split large .purpose files by component type or subdirectory"}):e.push({check:"purpose-file-health",status:"ok",message:`${r.length} .purpose files, all under 500 lines`}),e}async function W(i,e){let r=a.command("doctor:context-audit").start("Running context audit checks"),t=[];t.push(...await $(i)),t.push(...await A(i)),t.push(...await j(i)),t.push(...await E(i)),t.push(...await N(i)),t.push(...await F(i)),t.push(...await T(i)),t.push(...await I(i)),t.push(...await L(i));let l=t.filter(a=>a.status==="error").length,n=t.filter(a=>a.status==="warn").length,u=t.filter(a=>a.status==="advisory").length;return l>0?r.error("Context audit found issues",{errors:l,warnings:n,advisories:u}):r.success("Context audit complete",{warnings:n,advisories:u}),t}export{W as runContextAudit};
@@ -0,0 +1,10 @@
1
+ #!/usr/bin/env node
2
+ import {e}from'./chunk-JIXHEBGK.js';import {e as e$1}from'./chunk-QT2LKB3P.js';import'./chunk-5TAVYPOV.js';import*as v from'fs';import*as l from'path';import o from'chalk';import D from'ora';function Q(t){let a=t.length;return Math.ceil(a/3.5)}function f(t,a){try{let s=v.readFileSync(t,"utf8"),m=Buffer.byteLength(s,"utf8"),C=Q(s),r=l.relative(a,t);return {path:t,relativePath:r,tokens:C,bytes:m}}catch{return null}}function i(t){return t<1e3?t.toString():`${(t/1e3).toFixed(1)}k`}async function L(t,a){let s=t?l.resolve(t):process.cwd(),m=D();a.json||console.log(o.blue(`
3
+ \u{1F4B0} Paradigm Cost Analysis
4
+ `)),m.start("Analyzing context files...");let C=await e(s),r=[];for(let e of C){let n=f(e,s);n&&r.push(n);}let A=await e$1(s),y=[];for(let e of A){let n=f(e,s);n&&y.push(n);}let R=l.join(s,".paradigm","scan-index.json"),h=f(R,s),I=l.join(s,".cursorrules"),q=l.join(s,".cursor","rules","paradigm.mdc"),g=f(I,s);g||(g=f(q,s)),m.stop();let x=r.reduce((e,n)=>e+n.tokens,0),F=y.reduce((e,n)=>e+n.tokens,0),b=h?.tokens||0,P=g?.tokens||0,w=x+F+b,u=w+P,T=150,k=T*7,c=u>0?Math.round((1-k/u)*100):0,d=[],M=r.filter(e=>e.tokens>500);M.length>0&&d.push(`${M.length} .purpose file(s) exceed 500 tokens. Consider splitting large features.`);let N=l.join(s,".cursor","mcp.json"),$=v.existsSync(N);$||d.push("MCP not configured. Run `paradigm mcp setup` to enable dynamic context (80%+ savings)."),h||d.push("No scan-index.json found. Run `paradigm index` for visual discovery support."),r.length<3&&d.push("Few .purpose files found. Add more context for better AI understanding.");let O={static:{purposeFiles:r,portalFiles:y,scanIndex:h,cursorrules:g,total:u},dynamic:{avgQueryTokens:T,typicalConversation:k},savings:{percentage:Math.max(0,c),description:c>0?`${c}% fewer tokens with MCP vs static context`:"MCP provides on-demand context loading"},recommendations:d};if(a.json){console.log(JSON.stringify(O,null,2));return}if(console.log(o.white("Context Token Analysis")),console.log(o.gray("\u2500".repeat(50))),console.log(o.cyan(`
5
+ Static Context (loaded every conversation):`)),console.log(` .purpose files (${r.length}):`.padEnd(35)+o.yellow(i(x)+" tokens")),console.log(` portal.yaml (${y.length}):`.padEnd(35)+o.yellow(i(F)+" tokens")),h&&console.log(" scan-index.json:".padEnd(35)+o.yellow(i(b)+" tokens")),g&&console.log(" .cursorrules:".padEnd(35)+o.yellow(i(P)+" tokens")),console.log(o.gray("\u2500".repeat(50))),console.log(" Static Total:".padEnd(35)+o.yellow.bold(i(u)+" tokens")),console.log(o.cyan(`
6
+ Dynamic Context (MCP on-demand):`)),console.log(" Avg query response:".padEnd(35)+o.green(i(T)+" tokens")),console.log(" Typical conversation (~7 queries):".padEnd(35)+o.green(i(k)+" tokens")),console.log(o.cyan(`
7
+ Potential Savings:`)),c>0){let e=c>70?o.green:c>40?o.yellow:o.white;console.log(" MCP vs Static:".padEnd(35)+e.bold(`${c}% reduction`));let n=u/1e3*.01,p=k/1e3*.01,j=n-p;j>.001&&console.log(" Est. savings per conversation:".padEnd(35)+o.green(`~$${j.toFixed(4)}`));}if(a.detailed&&r.length>0){console.log(o.cyan(`
8
+ Top Token Consumers:`));let e=[...r].sort((n,p)=>p.tokens-n.tokens).slice(0,5);for(let n of e){let p=Math.round(n.tokens/w*100);console.log(` ${n.relativePath}`.padEnd(40)+o.gray(`${i(n.tokens)} (${p}%)`));}}if(d.length>0){console.log(o.cyan(`
9
+ Recommendations:`));for(let e of d)console.log(o.yellow(` \u2022 ${e}`));}console.log(o.cyan(`
10
+ MCP Status:`)),$?console.log(o.green(" \u2713 MCP configured - using dynamic context loading")):(console.log(o.yellow(" \u25CB MCP not configured")),console.log(o.gray(" Run `paradigm mcp setup` to enable token-efficient queries"))),console.log("");}export{L as costCommand};
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ import {a}from'./chunk-FYDRENK7.js';import {d,c}from'./chunk-EKZDFEJW.js';import'./chunk-5TAVYPOV.js';import*as y from'path';import o from'chalk';async function p(g,n){let m=g?y.resolve(g):process.cwd(),s,a$1;if(n.days){let l=parseInt(n.days);s=new Date,s.setDate(s.getDate()-l);}n.from&&(s=new Date(n.from)),n.to&&(a$1=new Date(n.to));let e=new a(m).getCostSummary(s,a$1);if(n.json){console.log(JSON.stringify(e,null,2));return}if(console.log(),console.log(o.blue("\u2501".repeat(50))),console.log(o.blue(" Orchestration Cost Summary")),console.log(o.blue("\u2501".repeat(50))),console.log(),s||a$1){let l=s?s.toISOString().slice(0,10):"beginning",t=a$1?a$1.toISOString().slice(0,10):"now";console.log(o.gray(` Period: ${l} to ${t}`)),console.log();}if(console.log(o.cyan(" Totals:")),console.log(o.white(` Orchestrations: ${e.orchestrationCount}`)),console.log(o.white(` Total tokens: ${d(e.totalTokens)}`)),console.log(o.white(` Total cost: ${c(e.totalCost)}`)),console.log(),Object.keys(e.byModel).length>0){console.log(o.cyan(" By Model:"));for(let[l,t]of Object.entries(e.byModel)){let c$1=(t.cost/e.totalCost*100).toFixed(1);console.log(o.gray(` ${l.padEnd(8)} ${c(t.cost).padStart(10)} (${c$1}%) - ${t.count} calls`));}console.log();}if(Object.keys(e.byAgent).length>0&&n.detailed){console.log(o.cyan(" By Agent:"));for(let[l,t]of Object.entries(e.byAgent)){let c$1=(t.cost/e.totalCost*100).toFixed(1);console.log(o.gray(` ${l.padEnd(12)} ${c(t.cost).padStart(10)} (${c$1}%) - ${t.count} calls`));}console.log();}if(e.byDay.length>0&&n.detailed){console.log(o.cyan(" By Day (recent):"));let l=e.byDay.slice(-7);for(let t of l){let c$1="\u2588".repeat(Math.ceil(t.cost/e.totalCost*20));console.log(o.gray(` ${t.date} ${c(t.cost).padStart(10)} ${o.blue(c$1)}`));}console.log();}n.detailed&&(console.log(o.cyan(" Model Pricing Reference:")),console.log(o.gray(" opus: $15.00 / $75.00 per 1M tokens (in/out)")),console.log(o.gray(" sonnet: $3.00 / $15.00 per 1M tokens (in/out)")),console.log(o.gray(" haiku: $0.25 / $1.25 per 1M tokens (in/out)")),console.log()),e.totalCost>1&&(console.log(o.yellow(" Tips to reduce costs:")),console.log(o.gray(" - Use haiku for builder/tester agents")),console.log(o.gray(' - Set budget limits: --budget "cost=5"')),console.log(o.gray(' - Compare modes: paradigm team orchestrate "..." --compare')),console.log());}export{p as teamCostCommand};
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env node
2
+ import {a}from'./chunk-EKZDFEJW.js';import'./chunk-5TAVYPOV.js';import*as v from'fs';import*as m from'path';import {execSync,spawn}from'child_process';import {EventEmitter}from'events';var C=class{name="cursor-cli";agentPath=null;constructor(){}listModels(){return ["opus","sonnet","haiku"]}supportsParallel(){return true}supportsMcp(){return true}getTokenCost(s){return a[s]}async isAvailable(){if(!this.isCursorEnvironment())return false;try{let s=execSync("which agent",{encoding:"utf-8"}).trim();if(s)return this.agentPath=s,!0}catch{let s=["/usr/local/bin/agent",m.join(process.env.HOME||"",".local/bin/agent"),m.join(process.env.HOME||"",".cursor/bin/agent"),"/Applications/Cursor.app/Contents/Resources/app/bin/agent"];for(let n of s)if(v.existsSync(n))return this.agentPath=n,true}return false}isCursorEnvironment(){return process.env.TERM_PROGRAM==="cursor"||!!process.env.CURSOR_SESSION||!!process.env.CURSOR_TRACE_ID||(process.env.VSCODE_CWD?.toLowerCase().includes("cursor")??false)||(process.env.VSCODE_NLS_CONFIG?.toLowerCase().includes("cursor")??false)||process.env.TERM_PROGRAM==="vscode"&&(process.env.VSCODE_GIT_ASKPASS_NODE?.toLowerCase().includes("cursor")??false)}async*spawn(s,n){if(!this.agentPath){yield {type:"error",content:"Cursor agent CLI not found",timestamp:new Date().toISOString()};return}let t=this.buildPrompt(s,n);yield {type:"text",content:`Starting ${s.name} agent via Cursor CLI...
3
+ `,timestamp:new Date().toISOString()};let g=["-p",t.slice(0,8e3)];if(n.model){let e=this.mapToCursorModel(n.model);e&&g.push("--model",e);}let r=new EventEmitter,h="",d={input:0,output:0,total:0},i=null,c=false,a=spawn(this.agentPath,g,{cwd:n.workingDirectory||process.cwd(),env:{...process.env},stdio:["pipe","pipe","pipe"]});a.stdout?.on("data",e=>{let o=e.toString();h+=o,r.emit("text",o);}),a.stderr?.on("data",e=>{let o=e.toString();o.toLowerCase().includes("error")?(i=o,r.emit("error",new Error(o))):r.emit("progress",o);}),a.on("close",e=>{c=true;let o=Math.ceil(h.length/4),y=Math.ceil(t.length/4);d={input:y,output:o,total:y+o},r.emit("done",e);}),a.on("error",e=>{i=e.message,r.emit("error",e);});let f=n.timeout||300*1e3,S=setTimeout(()=>{a.kill(),i=`Cursor agent timed out after ${f/1e3}s`,r.emit("timeout");},f),p=[],l=null,u=e=>{l?(l(e),l=null):p.push(e);};for(r.on("text",e=>{u({type:"text",content:e,timestamp:new Date().toISOString()});}),r.on("progress",e=>{u({type:"text",content:".",timestamp:new Date().toISOString()});}),r.on("done",()=>{clearTimeout(S),u({type:"done",content:"Agent completed",usage:d,timestamp:new Date().toISOString()});}),r.on("timeout",()=>{u({type:"error",content:i||"Timeout",timestamp:new Date().toISOString()});}),r.on("error",e=>{clearTimeout(S),u({type:"error",content:e.message,timestamp:new Date().toISOString()});});!c||p.length>0;)if(p.length>0){let e=p.shift();if(yield e,e.type==="done"||e.type==="error")break}else {let e=await new Promise(o=>{l=o,setTimeout(()=>o(null),100);});if(e&&(yield e,e.type==="done"||e.type==="error"))break}i&&!c&&(yield {type:"error",content:i,timestamp:new Date().toISOString()});}buildPrompt(s,n){let t=[];return t.push(`# ${s.name.toUpperCase()} Agent`),t.push(""),t.push("## Role"),t.push(s.role),t.push(""),t.push("## Task"),t.push(n.task),t.push(""),n.context.systemPrompt&&(t.push("## Context"),t.push(n.context.systemPrompt.slice(0,3e3)),t.push("")),n.context.symbols.length>0&&(t.push("## Symbols"),t.push(n.context.symbols.join(", ")),t.push("")),n.context.handoffContext&&(t.push("## From Previous Agent"),t.push(n.context.handoffContext),t.push("")),t.push("## Instructions"),t.push("Complete the task above. Be concise and focused. Keep response under 500 words."),t.join(`
4
+ `)}mapToCursorModel(s){switch(s){case "opus":return "claude-opus-4-6";case "sonnet":return "claude-sonnet-4-5-20250929";case "haiku":return "claude-haiku-4-5-20251001";default:return null}}};export{C as CursorCliProvider};
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env node
2
+ import {d,a,c as c$1,b}from'./chunk-W7C6FFMO.js';import'./chunk-4TXOVRWD.js';import {c,d as d$1,e as e$1}from'./chunk-JQKKVAAN.js';import'./chunk-5TAVYPOV.js';import*as s from'fs';import*as o from'path';import e from'chalk';import j from'ora';async function D(d$2,a$1){let r=d$2?o.resolve(d$2):process.cwd(),t=o.basename(r),u=o.join(r,".paradigm"),i=j();if(!d(r))if(a$1.init){i.start("Creating .paradigm config...");let n=c(t);s.writeFileSync(u,d$1(n),"utf8"),i.succeed(e.green(".paradigm config created"));}else console.log(e.red(`
3
+ \u274C No .paradigm file found.`)),console.log(e.gray(`
4
+ Run with --init to create a default .paradigm config:`)),console.log(e.cyan(` paradigm cursorrules --init
5
+ `)),process.exit(1);let c$2;try{let n=s.readFileSync(u,"utf8");c$2=e$1(n);}catch(n){let b=n;console.log(e.red(`
6
+ \u274C Failed to parse .paradigm: ${b.message}
7
+ `)),process.exit(1);}let S=s.existsSync(o.join(r,".paradigm","scan-index.json"))||s.existsSync(o.join(r,".paradigm-scan-index.json")),l=a$1.withScan||S;if(a$1.preview){let n=a(c$2,t,{withScan:l});console.log(e.blue(`
8
+ --- Preview of .cursorrules content ---
9
+ `)),console.log(n),console.log(e.blue(`
10
+ --- End preview ---
11
+ `));return}let f="create";a$1.append?f="append":!a$1.force&&c$1(r)&&(console.log(e.yellow(`
12
+ \u26A0\uFE0F .cursorrules already exists.`)),console.log(e.gray(`Use --force to overwrite, or --append to add Paradigm section.
13
+ `)),process.exit(1)),i.start("Generating .cursorrules...");let g=b(r,c$2,f,t,{withScan:l});g.success?(i.succeed(e.green(g.message)),console.log(e.gray(`
14
+ Path: ${g.path}`)),l&&console.log(e.gray(" Includes: Scan protocol")),console.log()):(i.fail(e.red("Failed to generate .cursorrules")),process.exit(1));}export{D as cursorrrulesCommand};
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export{f as findDecisionsForSymbol,g as getDecisionSummary,e as loadDecision,d as loadDecisions,a as recordDecision,c as supersedeDecision,b as updateDecision}from'./chunk-Q2J542ST.js';import'./chunk-5TAVYPOV.js';
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env node
2
+ import {g,i as i$1}from'./chunk-WS2N27RX.js';import'./chunk-5TAVYPOV.js';import e from'chalk';async function i(n,r){let l=process.cwd(),o=await g(l,n);if(!o){console.error(e.red(`
3
+ Entry not found: ${n}
4
+ `)),process.exitCode=1;return}if(r.dryRun){console.log(e.cyan(`
5
+ [dry-run] Would delete lore entry:`)),console.log(e.white(` ${o.id} - ${o.title}`)),console.log(e.gray(` Type: ${o.type} | Author: ${o.author} | ${o.timestamp}`)),console.log(e.gray(` Symbols: ${(o.symbols_touched||[]).join(", ")}`)),console.log(e.cyan(`
6
+ [dry-run] No changes made.
7
+ `));return}if(!r.yes){console.log(e.yellow(`
8
+ Will delete lore entry:`)),console.log(e.white(` ${o.id} - ${o.title}`)),console.log(e.gray(` Type: ${o.type} | Author: ${o.author} | ${o.timestamp}`)),console.log(e.gray(` Symbols: ${(o.symbols_touched||[]).join(", ")}`)),console.log(e.gray(`
9
+ Use --yes to confirm deletion.
10
+ `));return}await i$1(l,n)?console.log(e.green(`
11
+ Deleted lore entry: ${n}
12
+ `)):(console.error(e.red(`
13
+ Failed to delete: ${n}
14
+ `)),process.exitCode=1);}export{i as loreDeleteCommand};
@@ -0,0 +1,9 @@
1
+ #!/usr/bin/env node
2
+ import {b}from'./chunk-L6K5HNDL.js';import'./chunk-TYWB5IQJ.js';import'./chunk-WESTEMIM.js';import'./chunk-FYDRENK7.js';import'./chunk-IZSBGW6E.js';import'./chunk-AO7ZSRME.js';import'./chunk-NW6OKHE6.js';import'./chunk-EKZDFEJW.js';import'./chunk-T6IDXUUA.js';import'./chunk-JIXHEBGK.js';import'./chunk-QT2LKB3P.js';import'./chunk-5TAVYPOV.js';import*as i from'fs';import*as a from'path';import o from'chalk';async function D(l,f,t){let d=f?a.resolve(f):process.cwd();if(!l){t.json?console.log(JSON.stringify({error:"Orchestration ID required"})):(console.log(o.red(`
3
+ Orchestration ID required.`)),console.log(o.gray(`Usage: paradigm team diff <orchestration-id>
4
+ `)));return}let e=new b(d).getOrchestration(l);if(!e){t.json?console.log(JSON.stringify({error:"Orchestration not found",id:l})):console.log(o.red(`
5
+ Orchestration not found: ${l}
6
+ `));return}if(t.json){console.log(JSON.stringify({id:e.id,task:e.task,status:e.status,artifacts:e.artifacts},null,2));return}if(console.log(),console.log(o.blue("\u2501".repeat(60))),console.log(o.blue(` Diff: ${e.id}`)),console.log(o.blue("\u2501".repeat(60))),console.log(),console.log(o.gray(` Task: ${e.task.slice(0,50)}${e.task.length>50?"...":""}`)),console.log(o.gray(` Status: ${e.status}`)),console.log(),e.artifacts.length===0){console.log(o.gray(" No file changes in this orchestration.")),console.log();return}console.log(o.cyan(" Files Changed:")),console.log();let s=[],r=[],c=[];for(let n of e.artifacts)n.action==="created"?s.push(n.path):n.action==="modified"?r.push(n.path):n.action==="deleted"&&c.push(n.path);if(s.length>0){console.log(o.green(" Created:"));for(let n of s)if(console.log(o.green(` + ${n}`)),t.full){let h=a.join(d,n);if(i.existsSync(h)){let g=i.readFileSync(h,"utf-8"),m=g.split(`
7
+ `).slice(0,20);for(let p of m)console.log(o.gray(` \u2502 ${p}`));g.split(`
8
+ `).length>20&&console.log(o.gray(` \u2502 ... (${g.split(`
9
+ `).length-20} more lines)`));}}console.log();}if(r.length>0){console.log(o.yellow(" Modified:"));for(let n of r)console.log(o.yellow(` ~ ${n}`));console.log();}if(c.length>0){console.log(o.red(" Deleted:"));for(let n of c)console.log(o.red(` - ${n}`));console.log();}console.log(o.gray("\u2500".repeat(60))),console.log(o.gray(` Summary: ${s.length} created, ${r.length} modified, ${c.length} deleted`)),console.log(),e.status==="completed"&&(console.log(o.cyan(" Actions:")),console.log(o.gray(` paradigm team accept ${e.id} # Accept these changes`)),console.log(o.gray(` paradigm team reject ${e.id} # Reject and cleanup`)),console.log());}export{D as teamDiffCommand};
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export{b as DISCIPLINE_MAPPINGS,c as GENERIC_SYMBOL_MAPPING,f as STACK_PRESETS,a as detectDiscipline,g as detectStack,d as getDisciplineConfig,e as getDisciplineScanPatterns,h as getStackConfig,i as listStackPresets}from'./chunk-UIKLE3WD.js';import'./chunk-5TAVYPOV.js';
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export{b as PREFIX_TO_TYPE,a as SYMBOL_PREFIXES,j as addConnection,h as addPremiseNode,m as aggregateFromDirectory,l as aggregateFromPremise,o as buildSymbolIndex,e as createEmptyPremiseFile,k as createSnapshot,n as createSymbolIndex,E as createSymbolString,v as getAllComponentTypes,C as getAllSymbols,A as getAllTags,G as getAutocompleteSuggestions,w as getChildComponents,u as getComponentsByType,g as getDefaultPremiseContent,y as getReferencesFrom,x as getReferencesTo,p as getSymbol,q as getSymbolById,B as getSymbolCounts,s as getSymbolsBySource,z as getSymbolsByTag,r as getSymbolsByType,F as isValidSymbol,d as parsePremiseContent,c as parsePremiseFile,D as parseSymbol,t as searchSymbols,f as serializePremiseFile,i as updateNodePosition}from'./chunk-T6IDXUUA.js';import'./chunk-JIXHEBGK.js';import'./chunk-QT2LKB3P.js';import'./chunk-5TAVYPOV.js';