lemma-mcp 0.7.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 (68) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +474 -0
  3. package/README.tr.md +384 -0
  4. package/dist/guides/core.d.ts +33 -0
  5. package/dist/guides/core.d.ts.map +1 -0
  6. package/dist/guides/core.js +424 -0
  7. package/dist/guides/core.js.map +1 -0
  8. package/dist/guides/index.d.ts +2 -0
  9. package/dist/guides/index.d.ts.map +1 -0
  10. package/dist/guides/index.js +2 -0
  11. package/dist/guides/index.js.map +1 -0
  12. package/dist/guides/task-map.d.ts +3 -0
  13. package/dist/guides/task-map.d.ts.map +1 -0
  14. package/dist/guides/task-map.js +107 -0
  15. package/dist/guides/task-map.js.map +1 -0
  16. package/dist/index.d.ts +3 -0
  17. package/dist/index.d.ts.map +1 -0
  18. package/dist/index.js +7 -0
  19. package/dist/index.js.map +1 -0
  20. package/dist/memory/config.d.ts +6 -0
  21. package/dist/memory/config.d.ts.map +1 -0
  22. package/dist/memory/config.js +69 -0
  23. package/dist/memory/config.js.map +1 -0
  24. package/dist/memory/core.d.ts +27 -0
  25. package/dist/memory/core.d.ts.map +1 -0
  26. package/dist/memory/core.js +415 -0
  27. package/dist/memory/core.js.map +1 -0
  28. package/dist/memory/index.d.ts +2 -0
  29. package/dist/memory/index.d.ts.map +1 -0
  30. package/dist/memory/index.js +2 -0
  31. package/dist/memory/index.js.map +1 -0
  32. package/dist/server/handlers.d.ts +131 -0
  33. package/dist/server/handlers.d.ts.map +1 -0
  34. package/dist/server/handlers.js +694 -0
  35. package/dist/server/handlers.js.map +1 -0
  36. package/dist/server/hooks.d.ts +16 -0
  37. package/dist/server/hooks.d.ts.map +1 -0
  38. package/dist/server/hooks.js +77 -0
  39. package/dist/server/hooks.js.map +1 -0
  40. package/dist/server/index.d.ts +5 -0
  41. package/dist/server/index.d.ts.map +1 -0
  42. package/dist/server/index.js +322 -0
  43. package/dist/server/index.js.map +1 -0
  44. package/dist/server/system-prompt.d.ts +5 -0
  45. package/dist/server/system-prompt.d.ts.map +1 -0
  46. package/dist/server/system-prompt.js +143 -0
  47. package/dist/server/system-prompt.js.map +1 -0
  48. package/dist/server/tools.d.ts +22 -0
  49. package/dist/server/tools.d.ts.map +1 -0
  50. package/dist/server/tools.js +443 -0
  51. package/dist/server/tools.js.map +1 -0
  52. package/dist/sessions/core.d.ts +17 -0
  53. package/dist/sessions/core.d.ts.map +1 -0
  54. package/dist/sessions/core.js +162 -0
  55. package/dist/sessions/core.js.map +1 -0
  56. package/dist/sessions/index.d.ts +2 -0
  57. package/dist/sessions/index.d.ts.map +1 -0
  58. package/dist/sessions/index.js +2 -0
  59. package/dist/sessions/index.js.map +1 -0
  60. package/dist/sessions/virtual.d.ts +23 -0
  61. package/dist/sessions/virtual.d.ts.map +1 -0
  62. package/dist/sessions/virtual.js +157 -0
  63. package/dist/sessions/virtual.js.map +1 -0
  64. package/dist/types.d.ts +143 -0
  65. package/dist/types.d.ts.map +1 -0
  66. package/dist/types.js +2 -0
  67. package/dist/types.js.map +1 -0
  68. package/package.json +62 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/server/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,oBAAoB,CAAC;AAC3C,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC;AAC7C,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAC;AACjD,OAAO,KAAK,cAAc,MAAM,wBAAwB,CAAC;AA+HzD,IAAI,eAAe,GAAkB,IAAI,CAAC;AAE1C,IAAI,aAAa,GAAwB,IAAI,CAAC;AAE9C,MAAM,UAAU,eAAe,CAAC,EAAc;IAC5C,aAAa,GAAG,EAAE,CAAC;AACrB,CAAC;AAED,SAAS,kBAAkB;IACzB,IAAI,aAAa;QAAE,aAAa,EAAE,CAAC;AACrC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAAuB;IAC9D,MAAM,QAAQ,GAAG,IAAI,EAAE,SAAS,CAAC;IACjC,MAAM,YAAY,GAAG,IAAI,EAAE,YAAY,IAAI,EAAE,CAAC;IAC9C,MAAM,eAAe,GAAG,IAAI,EAAE,gBAAgB,IAAI,IAAI,CAAC;IAEvD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,0CAA0C,EAAE,CAAC;YAC7E,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC;IAC5C,MAAM,QAAQ,GAAG,QAAQ,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IACzD,IAAI,QAAQ,EAAE,CAAC;QACb,QAAQ,CAAC,MAAM,GAAG,WAAW,CAAC;QAC9B,QAAQ,CAAC,YAAY,GAAG,WAAW,CAAC;IACtC,CAAC;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IAC/D,OAAO,CAAC,gBAAgB,GAAG,eAAe,CAAC;IAC3C,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC;IACrC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1B,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IAEnC,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACtC,MAAM,QAAQ,GAAG,CAAC,QAAQ,EAAE,GAAG,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvD,MAAM,WAAW,GAAG,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAC9D,MAAM,oBAAoB,GAAG,MAAM,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAEnE,IAAI,QAAQ,GAAG,oBAAoB,OAAO,CAAC,UAAU,KAAK,QAAQ,KAAK,CAAC;IACxE,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,QAAQ,IAAI,iBAAiB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IAC3D,CAAC;IACD,QAAQ,IAAI,KAAK,oBAAoB,EAAE,CAAC;IAExC,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;KAC5C,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAAqB;IAC1D,MAAM,OAAO,GAAG,IAAI,EAAE,OAAO,CAAC;IAC9B,MAAM,aAAa,GAAG,IAAI,EAAE,cAAc,IAAI,IAAI,CAAC;IACnD,MAAM,OAAO,GAAG,IAAI,EAAE,OAAO,IAAI,EAAE,CAAC;IAEpC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,wCAAwC,EAAE,CAAC;YAC3E,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC;IAC5C,MAAM,OAAO,GAAG,eAAe;QAC7B,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,WAAW,EAAE,eAAe,CAAC;QACpD,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAE5C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kCAAkC,EAAE,CAAC;YACrE,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;IAE9D,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACtC,MAAM,gBAAgB,GAAa,EAAE,CAAC;IAEtC,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1D,KAAK,MAAM,SAAS,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YACrD,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oBAC1B,KAAK,CAAC,aAAa,GAAG,CAAC,KAAK,CAAC,aAAa,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;gBACvD,CAAC;qBAAM,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oBACjC,KAAK,CAAC,aAAa,GAAG,CAAC,KAAK,CAAC,aAAa,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;oBACrD,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,aAAa,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,IAAI,CAAC,CAAC,CAAC;oBACtE,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;wBACf,MAAM,IAAI,GAAG,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC;wBACzC,IAAI,IAAI,GAAG,GAAG,EAAE,CAAC;4BACf,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,SAAS,qBAAqB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,aAAa,IAAI,KAAK,yCAAyC,CAAC,CAAC;wBACjK,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IAC/B,CAAC;IAED,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IACnC,eAAe,GAAG,IAAI,CAAC;IAEvB,IAAI,QAAQ,GAAG,WAAW,OAAO,CAAC,UAAU,WAAW,OAAO,IAAI,CAAC;IACnE,QAAQ,IAAI,SAAS,OAAO,CAAC,SAAS,gBAAgB,OAAO,CAAC,SAAS,MAAM,OAAO,CAAC,YAAY,IAAI,CAAC;IACtG,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,QAAQ,IAAI,YAAY,OAAO,CAAC,MAAM,aAAa,CAAC;IACtD,CAAC;IACD,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,QAAQ,IAAI,+BAA+B,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IAC7E,CAAC;IAED,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;KAC5C,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAAqB;IAC1D,MAAM,cAAc,GAAG,IAAI,EAAE,OAAO,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;IAC7D,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,IAAI,IAAI,CAAC;IAClC,MAAM,QAAQ,GAAG,IAAI,EAAE,EAAE,IAAI,IAAI,CAAC;IAClC,MAAM,OAAO,GAAG,IAAI,EAAE,OAAO,IAAI,IAAI,CAAC;IACtC,MAAM,OAAO,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAEnC,IAAI,MAAM,GAAU,IAAI,CAAC,UAAU,EAAE,CAAC;IAEtC,MAAM,SAAS,GAAG,IAAI,EAAE,GAAG,IAAI,IAAI,CAAC;IACpC,IAAI,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClE,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC;YACvD,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACtD,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACjC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC;YAClD,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CAAC,aAAa,GAAG,cAAc,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACxB,kBAAkB,EAAE,CAAC;QACrB,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;SACxD,CAAC;IACJ,CAAC;IAED,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC;QAC5D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4BAA4B,QAAQ,aAAa,EAAE,CAAC;gBACpF,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACtD,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACjC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACxB,kBAAkB,EAAE,CAAC;QAErB,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC;SACrE,CAAC;IACJ,CAAC;IAED,MAAM,cAAc,GAAG,OAAO;QAC5B,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAEjD,MAAM,OAAO,GAAG,IAAI,CAAC,sBAAsB,CAAC,cAAc,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;IAEvE,MAAM,SAAS,GAAG,IAAI,GAAG,CAAE,OAAiB,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACpE,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;QAC1B,IAAI,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAClD,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,IAAI,QAAQ,CAAC;IACxE,MAAM,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC9D,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IACxB,kBAAkB,EAAE,CAAC;IACrB,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KAC7C,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAoB;IACxD,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,CAAC;IAChC,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,IAAI,IAAI,CAAC;IAClC,MAAM,WAAW,GAAG,IAAI,EAAE,WAAW,IAAI,IAAI,CAAC;IAC9C,MAAM,OAAO,GAAG,IAAI,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;IAClE,MAAM,MAAM,GAAG,CAAC,IAAI,EAAE,MAAM,IAAI,IAAI,CAAkB,CAAC;IAEvD,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC9C,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,8DAA8D,EAAE,CAAC;YACjG,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAU,IAAI,CAAC,UAAU,EAAE,CAAC;IAExC,MAAM,YAAY,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACzE,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,oCAAoC,YAAY,CAAC,EAAE,OAAO,YAAY,CAAC,KAAK,4BAA4B,YAAY,CAAC,EAAE,6BAA6B;iBAC3J,CAAC;YACF,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IACvF,IAAI,eAAe,EAAE,CAAC;QACpB,MAAM,WAAW,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;QACnE,IAAI,OAAO,EAAE,CAAC;YACZ,WAAW,CAAC,UAAU,GAAG,eAAe,CAAC;YACzC,WAAW,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;YAC1C,OAAO,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,EAAE,CAAC;YAC1D,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAC9C,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACzB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IACxB,kBAAkB,EAAE,CAAC;IAErB,MAAM,SAAS,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,WAAW,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC;IAC3F,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,WAAW,CAAC,EAAE,IAAI,SAAS,MAAM,WAAW,CAAC,KAAK,eAAe,WAAW,CAAC,WAAW,EAAE,EAAE,CAAC;KACjJ,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAAuB;IAC9D,MAAM,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC;IACpB,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,CAAC;IAC1B,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,CAAC;IAChC,MAAM,UAAU,GAAG,IAAI,EAAE,UAAU,CAAC;IAEpC,IAAI,CAAC,EAAE,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;QAClC,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,wDAAwD,EAAE,CAAC;YAC3F,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAU,IAAI,CAAC,UAAU,EAAE,CAAC;IACxC,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAE9D,IAAI,WAAW,KAAK,CAAC,CAAC,EAAE,CAAC;QACvB,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4BAA4B,EAAE,aAAa,EAAE,CAAC;YAC9E,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iCAAiC,EAAE,CAAC;gBACpE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,MAAM,CAAC,WAAW,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC;IACpC,CAAC;IAED,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACjC,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,oCAAoC,EAAE,CAAC;gBACvE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,MAAM,CAAC,WAAW,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACxC,MAAM,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC;IAED,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,GAAG,CAAC,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACvE,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sDAAsD,EAAE,CAAC;gBACzF,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,MAAM,CAAC,WAAW,CAAC,CAAC,UAAU,GAAG,UAAU,CAAC;IAC9C,CAAC;IAED,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IACxB,kBAAkB,EAAE,CAAC;IAErB,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,MAAM,CAAC,WAAW,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;KAC9F,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAAuB;IAC9D,MAAM,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC;IAEpB,IAAI,CAAC,EAAE,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;QAClC,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,wDAAwD,EAAE,CAAC;YAC3F,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAU,IAAI,CAAC,UAAU,EAAE,CAAC;IACxC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC;IACpC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAExD,IAAI,QAAQ,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;QACtC,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4BAA4B,EAAE,aAAa,EAAE,CAAC;YAC9E,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3C,kBAAkB,EAAE,CAAC;IAErB,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4BAA4B,EAAE,EAAE,EAAE,CAAC;KACpE,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,IAAyB;IAClE,MAAM,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC;IACpB,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,CAAC;IAE5B,IAAI,CAAC,EAAE,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;QAClC,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,mCAAmC,EAAE,CAAC;YACtE,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,SAAS,EAAE,CAAC;QAChC,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,6DAA6D,EAAE,CAAC;YAChG,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAU,IAAI,CAAC,UAAU,EAAE,CAAC;IACxC,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAE9D,IAAI,WAAW,KAAK,CAAC,CAAC,EAAE,CAAC;QACvB,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4BAA4B,EAAE,aAAa,EAAE,CAAC;YAC9E,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;QACxD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,CAAC;QAC5C,MAAM,CAAC,WAAW,CAAC,CAAC,iBAAiB,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,iBAAiB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACzF,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACxB,kBAAkB,EAAE,CAAC;QACrB,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,mCAAmC,EAAE,4BAA4B,MAAM,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;SACjJ,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;QAC9D,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC,CAAC;QAC9C,MAAM,CAAC,WAAW,CAAC,CAAC,iBAAiB,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,iBAAiB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACzF,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACxB,kBAAkB,EAAE,CAAC;QACrB,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,mCAAmC,EAAE,4BAA4B,MAAM,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;SACjJ,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAsB;IAC5D,MAAM,GAAG,GAAG,IAAI,EAAE,GAAG,CAAC;IACtB,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,CAAC;IAC1B,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,CAAC;IAChC,MAAM,OAAO,GAAG,IAAI,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;IAElE,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClD,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4DAA4D,EAAE,CAAC;YAC/F,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACxC,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iDAAiD,EAAE,CAAC;YACpF,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC9C,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,oDAAoD,EAAE,CAAC;YACvF,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAU,IAAI,CAAC,UAAU,EAAE,CAAC;IAExC,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,EAAU,EAAE,EAAE,CAAC,CAAE,MAAgB,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IAC9F,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iCAAiC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACzF,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAa,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACjF,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAEzB,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACpE,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IAC9B,kBAAkB,EAAE,CAAC;IAErB,MAAM,SAAS,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,WAAW,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC;IAC3F,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,CAAC,MAAM,oBAAoB,WAAW,CAAC,EAAE,IAAI,SAAS,MAAM,WAAW,CAAC,KAAK,mBAAmB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;KACjK,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAAmB;IACtD,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,IAAI,IAAI,CAAC;IACxC,MAAM,SAAS,GAAG,IAAI,EAAE,KAAK,IAAI,IAAI,CAAC;IACtC,MAAM,IAAI,GAAG,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC;IAChC,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAEtC,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACnD,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;SAC7C,CAAC;IACJ,CAAC;IAED,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACrD,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;SACnE,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,QAAQ;QACvB,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,QAAQ,CAAC;QACjD,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,SAAS,GAAG,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACtD,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KAC7C,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,IAAwB;IAChE,MAAM,SAAS,GAAG,IAAI,EAAE,KAAK,CAAC;IAC9B,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,CAAC;IAChC,MAAM,WAAW,GAAG,IAAI,EAAE,WAAW,IAAI,EAAE,CAAC;IAC5C,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,IAAI,EAAE,CAAC;IACtC,MAAM,SAAS,GAAG,IAAI,EAAE,SAAS,IAAI,EAAE,CAAC;IAExC,IAAI,CAAC,SAAS,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC5B,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,uDAAuD,EAAE,CAAC;YAC1F,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACtC,MAAM,OAAO,GAAG,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAEtH,IAAI,eAAe,EAAE,CAAC;QACpB,MAAM,WAAW,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;QACnE,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,OAAO,CAAC,WAAW;gBAAE,OAAO,CAAC,WAAW,GAAG,EAAE,CAAC;YACnD,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;gBAC3D,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;YACpD,CAAC;YACD,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IAE7B,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,KAAK,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7C,MAAM,QAAQ,GAAG,GAAG,MAAM,WAAW,OAAO,CAAC,KAAK,MAAM,OAAO,CAAC,QAAQ,MAAM,OAAO,CAAC,WAAW,YAAY,OAAO,CAAC,SAAS,CAAC,MAAM,eAAe,OAAO,CAAC,QAAQ,CAAC,MAAM,WAAW,CAAC;IAEvL,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;KAC5C,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAsB;IAC5D,MAAM,SAAS,GAAG,IAAI,EAAE,KAAK,CAAC;IAC9B,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,CAAC;IAChC,MAAM,WAAW,GAAG,IAAI,EAAE,WAAW,CAAC;IACtC,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,IAAI,EAAE,CAAC;IACtC,MAAM,SAAS,GAAG,IAAI,EAAE,SAAS,IAAI,EAAE,CAAC;IAExC,IAAI,CAAC,SAAS,IAAI,CAAC,QAAQ,IAAI,CAAC,WAAW,EAAE,CAAC;QAC5C,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,uEAAuE,EAAE,CAAC;YAC1G,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACtC,MAAM,QAAQ,GAAG,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAE/D,IAAI,QAAQ,EAAE,CAAC;QACb,QAAQ,CAAC,WAAW,GAAG,WAAW,CAAC;QACnC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC7B,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sCAAsC,QAAQ,CAAC,KAAK,MAAM,QAAQ,CAAC,QAAQ,GAAG,EAAE,CAAC;SAClH,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IAC3F,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACzB,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IAE7B,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,QAAQ,CAAC,KAAK,MAAM,QAAQ,CAAC,QAAQ,2BAA2B,EAAE,CAAC;KAC1H,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAAuB;IAC9D,MAAM,QAAQ,GAAG,IAAI,EAAE,SAAS,CAAC;IACjC,MAAM,SAAS,GAAG,IAAI,EAAE,KAAK,CAAC;IAC9B,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,IAAI,UAAU,CAAC;IAE9C,IAAI,CAAC,QAAQ,IAAI,CAAC,SAAS,EAAE,CAAC;QAC5B,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,wDAAwD,EAAE,CAAC;YAC3F,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAU,IAAI,CAAC,UAAU,EAAE,CAAC;IAC3C,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC;IAE/D,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,mCAAmC,QAAQ,cAAc,EAAE,CAAC;YAC5F,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACtC,MAAM,OAAO,GAAG,MAAM,CAAC,cAAc,CACnC,SAAS,EACT,SAAS,EACT,QAAQ,EACR,QAAQ,CAAC,QAAQ,EACjB,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAC7B,CAAC;IAEF,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IAE7B,IAAI,QAAQ,GAAG,kCAAkC,QAAQ,iBAAiB,OAAO,CAAC,KAAK,MAAM,OAAO,CAAC,QAAQ,QAAQ,CAAC;IACtH,QAAQ,IAAI,MAAM,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAE9C,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;KAC5C,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAsB;IAC5D,MAAM,SAAS,GAAG,IAAI,EAAE,KAAK,CAAC;IAC9B,MAAM,OAAO,GAA4B;QACvC,KAAK,EAAE,IAAI,EAAE,QAAQ;QACrB,QAAQ,EAAE,IAAI,EAAE,QAAQ;QACxB,WAAW,EAAE,IAAI,EAAE,WAAW;QAC9B,iBAAiB,EAAE,IAAI,EAAE,iBAAiB;QAC1C,YAAY,EAAE,IAAI,EAAE,YAAY;QAChC,aAAa,EAAE,IAAI,EAAE,aAAa;QAClC,UAAU,EAAE,IAAI,EAAE,UAAU;KAC7B,CAAC;IAEF,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sCAAsC,EAAE,CAAC;YACzE,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACtC,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAElE,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,SAAS,cAAc,EAAE,CAAC;YAC3E,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IAC7B,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,OAAO,CAAC,KAAK,OAAO,MAAM,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;KAC7G,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAsB;IAC5D,MAAM,SAAS,GAAG,IAAI,EAAE,KAAK,CAAC;IAE9B,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sCAAsC,EAAE,CAAC;YACzE,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACtC,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAEzD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,SAAS,cAAc,EAAE,CAAC;YAC3E,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,8BAA8B,SAAS,EAAE,EAAE,CAAC;KAC7E,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAAqB;IAC1D,MAAM,UAAU,GAAG,IAAI,EAAE,MAAM,CAAC;IAChC,MAAM,YAAY,GAAG,IAAI,EAAE,KAAK,CAAC;IACjC,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,CAAC;IAChC,MAAM,WAAW,GAAG,IAAI,EAAE,WAAW,IAAI,EAAE,CAAC;IAC5C,IAAI,QAAQ,GAAyB,IAAI,EAAE,QAAQ,CAAC;IACpD,IAAI,SAAS,GAAyB,IAAI,EAAE,SAAS,CAAC;IAEtD,IAAI,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvE,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,8DAA8D,EAAE,CAAC;YACjG,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,YAAY,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC/B,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,uDAAuD,EAAE,CAAC;YAC1F,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAU,MAAM,CAAC,UAAU,EAAE,CAAC;IAE7C,MAAM,YAAY,GAAU,EAAE,CAAC;IAC/B,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,MAAM,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,EAAE,CAAC;YACN,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,8BAA8B,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACtF,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,QAAQ,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACxE,CAAC;IACD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,SAAS,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3F,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAExF,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,CAAM,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAExF,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IAC9F,QAAQ,CAAC,WAAW,GAAG,UAAU,CAAC;IAClC,QAAQ,CAAC,aAAa,GAAG,YAAY,CAAC;IACtC,QAAQ,CAAC,cAAc,GAAG,QAAQ,CAAC;IACnC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEzB,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IACrH,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IAEhC,IAAI,QAAQ,GAAG,UAAU,UAAU,CAAC,MAAM,iBAAiB,QAAQ,CAAC,KAAK,MAAM,QAAQ,CAAC,QAAQ,KAAK,CAAC;IACtG,QAAQ,IAAI,gBAAgB,UAAU,iBAAiB,QAAQ,CAAC,MAAM,iBAAiB,SAAS,CAAC,MAAM,IAAI,CAAC;IAC5G,QAAQ,IAAI,YAAY,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IAEhD,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;KAC5C,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAsB;IAC5D,MAAM,OAAO,GAAG,IAAI,EAAE,OAAO,IAAI,IAAI,CAAC;IACtC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnD,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;KAC3D,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,KAA+B;IACrE,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;IACjC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IACxC,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;KAClE,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAAuB;IAC9D,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;IAChC,MAAM,cAAc,GAAG,cAAc,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAG,cAAc,CAAC,wBAAwB,EAAE,CAAC;IAE1D,IAAI,MAAM,GAAG,oBAAoB,CAAC;IAElC,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,IAAI,mBAAmB,OAAO,CAAC,UAAU,CAAC,MAAM,eAAe,CAAC;QACtE,IAAI,OAAO,CAAC,iBAAiB,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,iBAAiB,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAC3E,CAAC;QACD,IAAI,OAAO,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,gBAAgB,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QACpE,CAAC;QACD,MAAM,IAAI,IAAI,CAAC;IACjB,CAAC;IAED,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,oBAAoB,cAAc,CAAC,MAAM,MAAM,CAAC;QAC1D,KAAK,MAAM,CAAC,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YAC3C,MAAM,KAAK,GAAG,CAAC,CAAC,YAAY,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAClF,MAAM,IAAI,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,mBAAmB,SAAS,KAAK,IAAI,CAAC;QAClE,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,kCAAkC,CAAC;IAC/C,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;AACvD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAAwB;IAC3D,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAEjD,IAAI,CAAC;QACH,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,eAAe;gBAClB,OAAO,MAAM,kBAAkB,CAAC,IAAwB,CAAC,CAAC;YAC5D,KAAK,aAAa;gBAChB,OAAO,MAAM,gBAAgB,CAAC,IAAsB,CAAC,CAAC;YACxD,KAAK,aAAa;gBAChB,OAAO,MAAM,gBAAgB,CAAC,IAAsB,CAAC,CAAC;YACxD,KAAK,YAAY;gBACf,OAAO,MAAM,eAAe,CAAC,IAAqB,CAAC,CAAC;YACtD,KAAK,eAAe;gBAClB,OAAO,MAAM,kBAAkB,CAAC,IAAwB,CAAC,CAAC;YAC5D,KAAK,eAAe;gBAClB,OAAO,MAAM,kBAAkB,CAAC,IAAwB,CAAC,CAAC;YAC5D,KAAK,iBAAiB;gBACpB,OAAO,MAAM,oBAAoB,CAAC,IAA0B,CAAC,CAAC;YAChE,KAAK,cAAc;gBACjB,OAAO,MAAM,iBAAiB,CAAC,IAAuB,CAAC,CAAC;YAC1D,KAAK,cAAc;gBACjB,OAAO,MAAM,iBAAiB,CAAC,IAAuB,CAAC,CAAC;YAC1D,KAAK,cAAc;gBACjB,OAAO,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACvC,KAAK,WAAW;gBACd,OAAO,MAAM,cAAc,CAAC,IAAoB,CAAC,CAAC;YACpD,KAAK,gBAAgB;gBACnB,OAAO,MAAM,mBAAmB,CAAC,IAAyB,CAAC,CAAC;YAC9D,KAAK,cAAc;gBACjB,OAAO,MAAM,iBAAiB,CAAC,IAAuB,CAAC,CAAC;YAC1D,KAAK,eAAe;gBAClB,OAAO,MAAM,kBAAkB,CAAC,IAAwB,CAAC,CAAC;YAC5D,KAAK,cAAc;gBACjB,OAAO,MAAM,iBAAiB,CAAC,IAAuB,CAAC,CAAC;YAC1D,KAAK,cAAc;gBACjB,OAAO,MAAM,iBAAiB,CAAC,IAAuB,CAAC,CAAC;YAC1D,KAAK,aAAa;gBAChB,OAAO,MAAM,gBAAgB,CAAC,IAAsB,CAAC,CAAC;YACxD,KAAK,eAAe;gBAClB,OAAO,MAAM,kBAAkB,CAAC,IAAwB,CAAC,CAAC;YAC5D;gBACE,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,wBAAwB,IAAI,GAAG,EAAE,CAAC;oBAClE,OAAO,EAAE,IAAI;iBACd,CAAC;QACN,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAW,KAAe,CAAC,OAAO,EAAE,EAAE,CAAC;YACvE,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -0,0 +1,16 @@
1
+ export declare const HookTypes: {
2
+ readonly ON_START: "onStart";
3
+ readonly ON_PROJECT_CHANGE: "onProjectChange";
4
+ };
5
+ type HookCallback = (context: Record<string, unknown>) => Promise<unknown> | Promise<void>;
6
+ type PromptModifierFn = (prompt: string, context: Record<string, unknown>) => Promise<string>;
7
+ export declare function registerHook(hookType: string, callback: HookCallback): () => void;
8
+ export declare function triggerHook(hookType: string, context?: Record<string, unknown>): Promise<unknown[]>;
9
+ export declare function getHookCount(hookType: string): number;
10
+ export declare function clearHooks(): void;
11
+ export declare function registerPromptModifier(modifier: PromptModifierFn): () => void;
12
+ export declare function applyPromptModifiers(prompt: string, context?: Record<string, unknown>): Promise<string>;
13
+ export declare function getPromptModifierCount(): number;
14
+ export declare function clearPromptModifiers(): void;
15
+ export {};
16
+ //# sourceMappingURL=hooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/server/hooks.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS;;;CAGZ,CAAC;AAEX,KAAK,YAAY,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAC3F,KAAK,gBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AAS9F,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,GAAG,MAAM,IAAI,CAajF;AAED,wBAAsB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAiB7G;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAErD;AAED,wBAAgB,UAAU,IAAI,IAAI,CAIjC;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,MAAM,IAAI,CAa7E;AAED,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAYjH;AAED,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C;AAED,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C"}
@@ -0,0 +1,77 @@
1
+ export const HookTypes = {
2
+ ON_START: "onStart",
3
+ ON_PROJECT_CHANGE: "onProjectChange",
4
+ };
5
+ const hooks = {
6
+ [HookTypes.ON_START]: [],
7
+ [HookTypes.ON_PROJECT_CHANGE]: [],
8
+ };
9
+ const promptModifiers = [];
10
+ export function registerHook(hookType, callback) {
11
+ if (!hooks[hookType]) {
12
+ throw new Error(`Unknown hook type: ${hookType}`);
13
+ }
14
+ hooks[hookType].push(callback);
15
+ return () => {
16
+ const index = hooks[hookType]?.indexOf(callback);
17
+ if (index != null && index > -1) {
18
+ hooks[hookType]?.splice(index, 1);
19
+ }
20
+ };
21
+ }
22
+ export async function triggerHook(hookType, context = {}) {
23
+ if (!hooks[hookType]) {
24
+ throw new Error(`Unknown hook type: ${hookType}`);
25
+ }
26
+ const results = [];
27
+ for (const callback of hooks[hookType]) {
28
+ try {
29
+ const result = await callback(context);
30
+ results.push(result);
31
+ }
32
+ catch (error) {
33
+ console.error(`Hook ${hookType} callback failed:`, error.message);
34
+ results.push({ error: error.message });
35
+ }
36
+ }
37
+ return results;
38
+ }
39
+ export function getHookCount(hookType) {
40
+ return hooks[hookType]?.length || 0;
41
+ }
42
+ export function clearHooks() {
43
+ for (const hookType of Object.keys(hooks)) {
44
+ hooks[hookType] = [];
45
+ }
46
+ }
47
+ export function registerPromptModifier(modifier) {
48
+ if (typeof modifier !== "function") {
49
+ throw new Error("Modifier must be a function");
50
+ }
51
+ promptModifiers.push(modifier);
52
+ return () => {
53
+ const index = promptModifiers.indexOf(modifier);
54
+ if (index > -1) {
55
+ promptModifiers.splice(index, 1);
56
+ }
57
+ };
58
+ }
59
+ export async function applyPromptModifiers(prompt, context = {}) {
60
+ let modifiedPrompt = prompt;
61
+ for (const modifier of promptModifiers) {
62
+ try {
63
+ modifiedPrompt = await modifier(modifiedPrompt, context);
64
+ }
65
+ catch (error) {
66
+ console.error("Prompt modifier failed:", error.message);
67
+ }
68
+ }
69
+ return modifiedPrompt;
70
+ }
71
+ export function getPromptModifierCount() {
72
+ return promptModifiers.length;
73
+ }
74
+ export function clearPromptModifiers() {
75
+ promptModifiers.length = 0;
76
+ }
77
+ //# sourceMappingURL=hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/server/hooks.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env node
2
+ import { Server } from "@modelcontextprotocol/sdk/server/index.js";
3
+ export declare function getServer(): Server;
4
+ export declare function startServer(): Promise<void>;
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAmCnE,wBAAgB,SAAS,IAAI,MAAM,CAElC;AAyUD,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAcjD"}
@@ -0,0 +1,322 @@
1
+ #!/usr/bin/env node
2
+ import { Server } from "@modelcontextprotocol/sdk/server/index.js";
3
+ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
4
+ import { CallToolRequestSchema, ListToolsRequestSchema, ListResourcesRequestSchema, ReadResourceRequestSchema, InitializeRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
5
+ import * as core from "../memory/index.js";
6
+ import * as guides from "../guides/index.js";
7
+ import * as virtualSession from "../sessions/virtual.js";
8
+ import { BASE_SYSTEM_PROMPT } from "./system-prompt.js";
9
+ import { TOOLS } from "./tools.js";
10
+ import { handleCallTool } from "./handlers.js";
11
+ import { triggerHook, HookTypes } from "./hooks.js";
12
+ import * as core_config from "../memory/config.js";
13
+ import { setNotifyChange } from "./handlers.js";
14
+ let detectedProject = null;
15
+ const server = new Server({
16
+ name: "lemma",
17
+ version: "1.0.0",
18
+ }, {
19
+ capabilities: {
20
+ tools: {},
21
+ resources: {},
22
+ },
23
+ });
24
+ export function getServer() {
25
+ return server;
26
+ }
27
+ server.setRequestHandler(ListToolsRequestSchema, async () => {
28
+ return { tools: buildToolsWithMemory() };
29
+ });
30
+ function buildToolsWithMemory() {
31
+ const tools = TOOLS.map(t => ({ ...t }));
32
+ const memoryIdx = tools.findIndex(t => t.name === "memory_read");
33
+ if (memoryIdx === -1)
34
+ return tools;
35
+ const config = core_config.loadConfig();
36
+ const memory = core.loadMemory();
37
+ const projectName = detectedProject;
38
+ const projectFragments = projectName
39
+ ? core.filterByProject(memory, projectName).sort((a, b) => b.confidence - a.confidence)
40
+ : [];
41
+ const globalFragments = core.filterByProject(memory, null).sort((a, b) => b.confidence - a.confidence);
42
+ let contextBlock = "";
43
+ let tokensUsed = 0;
44
+ const budget = config.token_budget.full_content || 3000;
45
+ const maxFrags = config.injection.max_full_content_fragments || 10;
46
+ let count = 0;
47
+ const injectedIds = new Set();
48
+ const allSorted = [...projectFragments, ...globalFragments];
49
+ if (allSorted.length > 0) {
50
+ contextBlock += `\n\nYOUR MEMORIES (you already know these — no need to call memory_read for them):\n`;
51
+ for (const frag of allSorted) {
52
+ if (count >= maxFrags)
53
+ break;
54
+ const entry = `---\n[${frag.id}] ${frag.title} (${(frag.confidence * 100).toFixed(0)}%)\n${frag.fragment}\n`;
55
+ const cost = core_config.estimateTokens(entry);
56
+ if (tokensUsed + cost > budget)
57
+ break;
58
+ contextBlock += entry;
59
+ tokensUsed += cost;
60
+ count++;
61
+ injectedIds.add(frag.id);
62
+ }
63
+ const remaining = allSorted.filter((f) => !injectedIds.has(f.id)).slice(0, 15);
64
+ if (remaining.length > 0) {
65
+ contextBlock += `---\nADDITIONAL (call memory_read for details):\n`;
66
+ for (const frag of remaining) {
67
+ const scope = frag.project ? `[${frag.project}]` : "[global]";
68
+ contextBlock += `[${frag.id}] ${scope} ${frag.title}\n`;
69
+ }
70
+ }
71
+ }
72
+ const allGuides = guides.loadGuides();
73
+ const topGuides = guides.getTopGuides(allGuides, 5);
74
+ if (topGuides.length > 0) {
75
+ contextBlock += `\nACTIVE GUIDES:\n`;
76
+ for (const g of topGuides) {
77
+ const learnings = (g.learnings || []).slice(0, 3).join("; ");
78
+ contextBlock += `- ${g.guide} (${g.category}, ${g.usage_count}x)${learnings ? ": " + learnings : ""}\n`;
79
+ }
80
+ }
81
+ if (contextBlock) {
82
+ tools[memoryIdx] = {
83
+ ...tools[memoryIdx],
84
+ description: tools[memoryIdx].description + contextBlock,
85
+ };
86
+ }
87
+ return tools;
88
+ }
89
+ function buildDynamicInstructions(projectName) {
90
+ const config = core_config.loadConfig();
91
+ const memory = core.loadMemory();
92
+ const projectFragments = projectName
93
+ ? core.filterByProject(memory, projectName)
94
+ .sort((a, b) => b.confidence - a.confidence)
95
+ : [];
96
+ const globalFragments = core.filterByProject(memory, null)
97
+ .sort((a, b) => b.confidence - a.confidence);
98
+ const allGuides = guides.loadGuides();
99
+ const topGuides = guides.getTopGuides(allGuides, config.injection.max_guides);
100
+ let instructions = "";
101
+ const fullBudget = config.token_budget.full_content;
102
+ const allSorted = [...projectFragments, ...globalFragments];
103
+ let tokensUsed = 0;
104
+ const fullContentIds = new Set();
105
+ const fullContentParts = [];
106
+ for (const frag of allSorted) {
107
+ const entryText = `### [${frag.id}] ${frag.title} (${(frag.confidence * 100).toFixed(0)}%)\n${frag.fragment}\n`;
108
+ const cost = core_config.estimateTokens(entryText);
109
+ if (tokensUsed + cost > fullBudget)
110
+ break;
111
+ if (fullContentParts.length >= config.injection.max_full_content_fragments)
112
+ break;
113
+ fullContentParts.push(entryText);
114
+ tokensUsed += cost;
115
+ fullContentIds.add(frag.id);
116
+ }
117
+ if (fullContentParts.length > 0) {
118
+ instructions += `## What You Already Know (no need to call memory_read for these)\n\n`;
119
+ for (const part of fullContentParts) {
120
+ instructions += part + "\n";
121
+ }
122
+ }
123
+ const remaining = allSorted.filter((f) => !fullContentIds.has(f.id));
124
+ const maxSummary = config.injection.max_summary_fragments;
125
+ if (remaining.length > 0) {
126
+ instructions += `## Additional Memory Index (call \`memory_read id="<id>"\` for details)\n\n`;
127
+ const toShow = remaining.slice(0, maxSummary);
128
+ for (const frag of toShow) {
129
+ const scope = frag.project ? `[${frag.project}]` : "[global]";
130
+ const desc = (frag.description || "").replace(/\n/g, " ").slice(0, 80);
131
+ instructions += `- [${frag.id}] ${scope} ${frag.title}${desc ? " — " + desc : ""}\n`;
132
+ }
133
+ if (remaining.length > maxSummary) {
134
+ instructions += `- ... and ${remaining.length - maxSummary} more (use \`memory_read\` to browse)\n`;
135
+ }
136
+ instructions += "\n";
137
+ }
138
+ if (topGuides.length > 0) {
139
+ const maxDetail = config.injection.max_guide_detail;
140
+ const guideBudget = config.token_budget.guides_detail;
141
+ instructions += `## Guides (accumulated experience)\n\n`;
142
+ let guideTokens = 0;
143
+ let detailCount = 0;
144
+ for (const guide of topGuides) {
145
+ if (detailCount < maxDetail && guide.description && guide.description.length > 20) {
146
+ const entry = `### ${guide.guide} (${guide.category}) — ${guide.usage_count}x used\n`;
147
+ const desc = guide.description.length > 300 ? guide.description.slice(0, 300) + "..." : guide.description;
148
+ const fullEntry = entry + desc + "\n\n";
149
+ const cost = core_config.estimateTokens(fullEntry);
150
+ if (guideTokens + cost <= guideBudget) {
151
+ instructions += fullEntry;
152
+ guideTokens += cost;
153
+ detailCount++;
154
+ continue;
155
+ }
156
+ }
157
+ instructions += `- ${guide.guide} (${guide.category}) — ${guide.usage_count}x used\n`;
158
+ }
159
+ instructions += `\nUse \`guide_get guide="<name>"\` for full guide details.\n\n`;
160
+ }
161
+ if (projectName) {
162
+ instructions = `# Lemma — Your Memory (project: ${projectName})\n\n` + instructions;
163
+ }
164
+ else {
165
+ instructions = `# Lemma — Your Memory\n\n` + instructions;
166
+ }
167
+ if (fullContentParts.length === 0 && remaining.length === 0) {
168
+ instructions += `No memories stored yet. Start working and call \`memory_add\` to build your memory.\n`;
169
+ }
170
+ instructions += `\n**RULE:** Call \`memory_add\` AFTER learning something new. If you skip this, the knowledge is lost forever — you will NOT remember it next session.`;
171
+ return instructions;
172
+ }
173
+ server.setRequestHandler(InitializeRequestSchema, async (_request) => {
174
+ detectedProject = core.detectProject();
175
+ if (detectedProject) {
176
+ console.error(`[Lemma] Detected project: ${detectedProject}`);
177
+ }
178
+ const instructions = buildDynamicInstructions(detectedProject);
179
+ return {
180
+ protocolVersion: "2024-11-05",
181
+ capabilities: {
182
+ tools: {},
183
+ resources: {},
184
+ },
185
+ serverInfo: {
186
+ name: "lemma",
187
+ version: "1.0.0",
188
+ },
189
+ instructions,
190
+ };
191
+ });
192
+ server.setRequestHandler(ListResourcesRequestSchema, async () => {
193
+ const resources = [
194
+ {
195
+ uri: "lemma://system-prompt",
196
+ name: "Lemma System Prompt",
197
+ description: "System prompt for LLM clients using Lemma memory",
198
+ mimeType: "text/markdown",
199
+ },
200
+ {
201
+ uri: "lemma://context/current",
202
+ name: "Lemma Current Context",
203
+ description: "Dynamically generated context with current memories and guides",
204
+ mimeType: "text/markdown",
205
+ },
206
+ ];
207
+ return { resources };
208
+ });
209
+ server.setRequestHandler(ReadResourceRequestSchema, async (request) => {
210
+ const { uri } = request.params;
211
+ if (uri === "lemma://system-prompt") {
212
+ return {
213
+ contents: [
214
+ {
215
+ uri,
216
+ mimeType: "text/markdown",
217
+ text: BASE_SYSTEM_PROMPT,
218
+ },
219
+ ],
220
+ };
221
+ }
222
+ if (uri === "lemma://context/current") {
223
+ const contextStr = buildDynamicInstructions(detectedProject);
224
+ return {
225
+ contents: [
226
+ {
227
+ uri,
228
+ mimeType: "text/markdown",
229
+ text: contextStr,
230
+ },
231
+ ],
232
+ };
233
+ }
234
+ if (uri.startsWith("lemma://memory/")) {
235
+ const id = uri.replace("lemma://memory/", "");
236
+ const memory = core.loadMemory();
237
+ const fragment = memory.find((f) => f.id === id);
238
+ if (!fragment) {
239
+ throw new Error(`Memory fragment not found: ${id}`);
240
+ }
241
+ return {
242
+ contents: [
243
+ {
244
+ uri,
245
+ mimeType: "application/json",
246
+ text: JSON.stringify(fragment, null, 2),
247
+ },
248
+ ],
249
+ };
250
+ }
251
+ if (uri.startsWith("lemma://guides/")) {
252
+ const guideName = uri.replace("lemma://guides/", "").toLowerCase();
253
+ const allGuides = guides.loadGuides();
254
+ const guide = allGuides.find((g) => g.guide === guideName);
255
+ if (!guide) {
256
+ throw new Error(`Guide not found: ${guideName}`);
257
+ }
258
+ return {
259
+ contents: [
260
+ {
261
+ uri,
262
+ mimeType: "application/json",
263
+ text: JSON.stringify(guide, null, 2),
264
+ },
265
+ ],
266
+ };
267
+ }
268
+ throw new Error(`Unknown resource: ${uri}`);
269
+ });
270
+ server.setRequestHandler(CallToolRequestSchema, (async (request) => {
271
+ const result = await handleCallTool(request);
272
+ try {
273
+ virtualSession.recordToolCall(request.params.name, request.params.arguments, result);
274
+ }
275
+ catch { }
276
+ return result;
277
+ }));
278
+ async function initializeContext() {
279
+ const cfg = core_config.loadConfig();
280
+ virtualSession.setVirtualSessionConfig(cfg.virtual_session);
281
+ core.applySessionDecay();
282
+ detectedProject = core.detectProject();
283
+ if (detectedProject) {
284
+ console.error(`[Lemma] Detected project: ${detectedProject}`);
285
+ const memory = core.loadMemory();
286
+ const projectFragments = core.filterByProject(memory, detectedProject);
287
+ if (projectFragments.length > 0) {
288
+ console.error(`[Lemma] Found ${projectFragments.length} memory fragment(s) for this project`);
289
+ }
290
+ else {
291
+ console.error(`[Lemma] No saved memories for this project yet`);
292
+ }
293
+ }
294
+ else {
295
+ console.error(`[Lemma] No project detected (running in global context)`);
296
+ }
297
+ await triggerHook(HookTypes.ON_START, {
298
+ project: detectedProject,
299
+ timestamp: new Date().toISOString(),
300
+ });
301
+ }
302
+ export async function startServer() {
303
+ await initializeContext();
304
+ const transport = new StdioServerTransport();
305
+ await server.connect(transport);
306
+ setNotifyChange(() => {
307
+ try {
308
+ server.notification({
309
+ method: "notifications/resources/updated",
310
+ params: { uri: "lemma://context/current" },
311
+ });
312
+ }
313
+ catch { }
314
+ });
315
+ }
316
+ if (import.meta.url === `file://${process.argv[1].replace(/\\/g, '/')}`) {
317
+ startServer().catch((error) => {
318
+ console.error("Fatal error:", error);
319
+ process.exit(1);
320
+ });
321
+ }
322
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ declare const BASE_SYSTEM_PROMPT = "<system_prompt>\n<identity>\n# Lemma \u2014 Persistent Memory for LLMs\n</identity>\n\n<critical_rules>\n## MANDATORY BEHAVIOR \u2014 NO EXCEPTIONS\n\n1. **ALWAYS call `memory_read` FIRST** before reading files, searching code, or answering questions about a project. Your memory may already contain the answer.\n2. **ALWAYS call `memory_add`** after learning something new about the project, solving a bug, discovering a pattern, or making a decision. If you skip this, the knowledge is lost forever \u2014 you will NOT remember it next session.\n3. **NEVER say \"I'll remember this next time\"** \u2014 you won't. The ONLY way to persist knowledge is through `memory_add` or `guide_practice`. Execute the tool immediately, do not just promise to remember.\n4. **NEVER re-discover what you already know.** Check memory before exploring filesystem. If a memory fragment answers your question, use it.\n</critical_rules>\n\n<workflow>\n## Operational Loop\n1. **Recall (FIRST):** `memory_read` \u2192 `guide_get` \u2014 check what you already know. DO THIS BEFORE ANYTHING ELSE.\n2. **Act:** Read files, search code, implement changes \u2014 but only if memory didn't already have the answer.\n3. **Persist (LAST):** `memory_add` or `guide_practice` \u2014 save new findings BEFORE responding to the user.\n</workflow>\n\n<memory_strategy>\n## Retrieval Strategy\n1. **Global:** Check general conventions and preferences first.\n2. **Project:** Look for project-specific patterns and tech stack details.\n3. **Methodology:** Use `guide_get` for established workflows.\n</memory_strategy>\n\n<scope_rules>\n## Scope Rules\n| Scope | Use For | Example |\n|-------|---------|---------|\n| project: null | Global preferences | \"User prefers dark mode\" |\n| project: \"Name\" | Project-specific | \"Lemma uses Node.js 18+\" |\n</scope_rules>\n\n<distillation_examples>\n## Distillation Examples\n- **Raw:** \"Apollo Client with custom cache, 5min invalidation\" \u2192 **Distilled:** \"Apollo Cache: Custom policy, 5min auto-invalidation.\"\n- **Raw:** \"I hate Tailwind, use CSS modules\" \u2192 **Distilled:** \"Styling: CSS Modules only (No Tailwind).\"\n- **Raw:** \"Prisma with PostgreSQL on Supabase\" \u2192 **Distilled:** \"Prisma + PostgreSQL (Supabase).\"\n- **Raw:** \"Always write tests first in __tests__/\" \u2192 **Distilled:** \"TDD: Tests first, located in __tests__/.\"\n</distillation_examples>\n\n<guide_tracking>\n## Guide System\n- **Memory** = WHAT you know \u2014 static facts (\"TypeScript strict mode\", \"API at /api/v1\")\n- **Guide** = HOW you work \u2014 accumulated experience (\"React 45x, learned: prefer composition\")\n\n**Tools:** `guide_create` (methodology), `guide_practice` (track usage), `guide_distill` (memory\u2192guide), `guide_merge` (consolidate)\n</guide_tracking>\n\n<tool_focus_rule>\nWhen you see tool names: EXECUTE the tool, don't discuss it. Lemma is your memory \u2014 use it.\n</tool_focus_rule>\n</system_prompt>";
2
+ export declare function getDynamicSystemPrompt(projectName: string | null): Promise<string>;
3
+ export { BASE_SYSTEM_PROMPT };
4
+ export declare const SYSTEM_PROMPT = "<system_prompt>\n<identity>\n# Lemma \u2014 Persistent Memory for LLMs\n</identity>\n\n<critical_rules>\n## MANDATORY BEHAVIOR \u2014 NO EXCEPTIONS\n\n1. **ALWAYS call `memory_read` FIRST** before reading files, searching code, or answering questions about a project. Your memory may already contain the answer.\n2. **ALWAYS call `memory_add`** after learning something new about the project, solving a bug, discovering a pattern, or making a decision. If you skip this, the knowledge is lost forever \u2014 you will NOT remember it next session.\n3. **NEVER say \"I'll remember this next time\"** \u2014 you won't. The ONLY way to persist knowledge is through `memory_add` or `guide_practice`. Execute the tool immediately, do not just promise to remember.\n4. **NEVER re-discover what you already know.** Check memory before exploring filesystem. If a memory fragment answers your question, use it.\n</critical_rules>\n\n<workflow>\n## Operational Loop\n1. **Recall (FIRST):** `memory_read` \u2192 `guide_get` \u2014 check what you already know. DO THIS BEFORE ANYTHING ELSE.\n2. **Act:** Read files, search code, implement changes \u2014 but only if memory didn't already have the answer.\n3. **Persist (LAST):** `memory_add` or `guide_practice` \u2014 save new findings BEFORE responding to the user.\n</workflow>\n\n<memory_strategy>\n## Retrieval Strategy\n1. **Global:** Check general conventions and preferences first.\n2. **Project:** Look for project-specific patterns and tech stack details.\n3. **Methodology:** Use `guide_get` for established workflows.\n</memory_strategy>\n\n<scope_rules>\n## Scope Rules\n| Scope | Use For | Example |\n|-------|---------|---------|\n| project: null | Global preferences | \"User prefers dark mode\" |\n| project: \"Name\" | Project-specific | \"Lemma uses Node.js 18+\" |\n</scope_rules>\n\n<distillation_examples>\n## Distillation Examples\n- **Raw:** \"Apollo Client with custom cache, 5min invalidation\" \u2192 **Distilled:** \"Apollo Cache: Custom policy, 5min auto-invalidation.\"\n- **Raw:** \"I hate Tailwind, use CSS modules\" \u2192 **Distilled:** \"Styling: CSS Modules only (No Tailwind).\"\n- **Raw:** \"Prisma with PostgreSQL on Supabase\" \u2192 **Distilled:** \"Prisma + PostgreSQL (Supabase).\"\n- **Raw:** \"Always write tests first in __tests__/\" \u2192 **Distilled:** \"TDD: Tests first, located in __tests__/.\"\n</distillation_examples>\n\n<guide_tracking>\n## Guide System\n- **Memory** = WHAT you know \u2014 static facts (\"TypeScript strict mode\", \"API at /api/v1\")\n- **Guide** = HOW you work \u2014 accumulated experience (\"React 45x, learned: prefer composition\")\n\n**Tools:** `guide_create` (methodology), `guide_practice` (track usage), `guide_distill` (memory\u2192guide), `guide_merge` (consolidate)\n</guide_tracking>\n\n<tool_focus_rule>\nWhen you see tool names: EXECUTE the tool, don't discuss it. Lemma is your memory \u2014 use it.\n</tool_focus_rule>\n</system_prompt>";
5
+ //# sourceMappingURL=system-prompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system-prompt.d.ts","sourceRoot":"","sources":["../../src/server/system-prompt.ts"],"names":[],"mappings":"AAIA,QAAA,MAAM,kBAAkB,05FAuDP,CAAC;AAuDlB,wBAAsB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAkDxF;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAC9B,eAAO,MAAM,aAAa,05FAAqB,CAAC"}