sensorium-mcp 2.16.29 → 2.16.31

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 (180) hide show
  1. package/dist/config.d.ts +1 -11
  2. package/dist/config.d.ts.map +1 -1
  3. package/dist/config.js +3 -49
  4. package/dist/config.js.map +1 -1
  5. package/dist/dashboard/presets.d.ts +18 -0
  6. package/dist/dashboard/presets.d.ts.map +1 -0
  7. package/dist/dashboard/presets.js +78 -0
  8. package/dist/dashboard/presets.js.map +1 -0
  9. package/dist/dashboard/routes.d.ts +33 -0
  10. package/dist/dashboard/routes.d.ts.map +1 -0
  11. package/dist/dashboard/routes.js +283 -0
  12. package/dist/dashboard/routes.js.map +1 -0
  13. package/dist/dashboard.d.ts +6 -29
  14. package/dist/dashboard.d.ts.map +1 -1
  15. package/dist/dashboard.js +6 -1158
  16. package/dist/dashboard.js.map +1 -1
  17. package/dist/data/file-storage.d.ts +19 -0
  18. package/dist/data/file-storage.d.ts.map +1 -0
  19. package/dist/data/file-storage.js +58 -0
  20. package/dist/data/file-storage.js.map +1 -0
  21. package/dist/data/memory/bootstrap.d.ts +40 -0
  22. package/dist/data/memory/bootstrap.d.ts.map +1 -0
  23. package/dist/data/memory/bootstrap.js +240 -0
  24. package/dist/data/memory/bootstrap.js.map +1 -0
  25. package/dist/data/memory/consolidation.d.ts +12 -0
  26. package/dist/data/memory/consolidation.d.ts.map +1 -0
  27. package/dist/data/memory/consolidation.js +248 -0
  28. package/dist/data/memory/consolidation.js.map +1 -0
  29. package/dist/data/memory/episodes.d.ts +34 -0
  30. package/dist/data/memory/episodes.d.ts.map +1 -0
  31. package/dist/data/memory/episodes.js +89 -0
  32. package/dist/data/memory/episodes.js.map +1 -0
  33. package/dist/data/memory/index.d.ts +14 -0
  34. package/dist/data/memory/index.d.ts.map +1 -0
  35. package/dist/data/memory/index.js +14 -0
  36. package/dist/data/memory/index.js.map +1 -0
  37. package/dist/data/memory/procedures.d.ts +42 -0
  38. package/dist/data/memory/procedures.d.ts.map +1 -0
  39. package/dist/data/memory/procedures.js +122 -0
  40. package/dist/data/memory/procedures.js.map +1 -0
  41. package/dist/data/memory/schema.d.ts +11 -0
  42. package/dist/data/memory/schema.d.ts.map +1 -0
  43. package/dist/data/memory/schema.js +327 -0
  44. package/dist/data/memory/schema.js.map +1 -0
  45. package/dist/data/memory/semantic.d.ts +94 -0
  46. package/dist/data/memory/semantic.d.ts.map +1 -0
  47. package/dist/data/memory/semantic.js +385 -0
  48. package/dist/data/memory/semantic.js.map +1 -0
  49. package/dist/data/memory/voice-sig.d.ts +33 -0
  50. package/dist/data/memory/voice-sig.d.ts.map +1 -0
  51. package/dist/data/memory/voice-sig.js +48 -0
  52. package/dist/data/memory/voice-sig.js.map +1 -0
  53. package/dist/data/templates.d.ts +19 -0
  54. package/dist/data/templates.d.ts.map +1 -0
  55. package/dist/data/templates.js +46 -0
  56. package/dist/data/templates.js.map +1 -0
  57. package/dist/dispatcher.d.ts +5 -97
  58. package/dist/dispatcher.d.ts.map +1 -1
  59. package/dist/dispatcher.js +5 -525
  60. package/dist/dispatcher.js.map +1 -1
  61. package/dist/drive.d.ts.map +1 -1
  62. package/dist/drive.js +3 -1
  63. package/dist/drive.js.map +1 -1
  64. package/dist/http-server.d.ts.map +1 -1
  65. package/dist/http-server.js +33 -0
  66. package/dist/http-server.js.map +1 -1
  67. package/dist/index.d.ts +4 -23
  68. package/dist/index.d.ts.map +1 -1
  69. package/dist/index.js +11 -289
  70. package/dist/index.js.map +1 -1
  71. package/dist/integrations/openai/chat.d.ts +29 -0
  72. package/dist/integrations/openai/chat.d.ts.map +1 -0
  73. package/dist/integrations/openai/chat.js +84 -0
  74. package/dist/integrations/openai/chat.js.map +1 -0
  75. package/dist/integrations/openai/index.d.ts +6 -0
  76. package/dist/integrations/openai/index.d.ts.map +1 -0
  77. package/dist/integrations/openai/index.js +6 -0
  78. package/dist/integrations/openai/index.js.map +1 -0
  79. package/dist/integrations/openai/speech.d.ts +21 -0
  80. package/dist/integrations/openai/speech.d.ts.map +1 -0
  81. package/dist/integrations/openai/speech.js +75 -0
  82. package/dist/integrations/openai/speech.js.map +1 -0
  83. package/dist/integrations/openai/video.d.ts +15 -0
  84. package/dist/integrations/openai/video.d.ts.map +1 -0
  85. package/dist/integrations/openai/video.js +131 -0
  86. package/dist/integrations/openai/video.js.map +1 -0
  87. package/dist/integrations/openai/vision.d.ts +23 -0
  88. package/dist/integrations/openai/vision.d.ts.map +1 -0
  89. package/dist/integrations/openai/vision.js +116 -0
  90. package/dist/integrations/openai/vision.js.map +1 -0
  91. package/dist/integrations/openai/voice-emotion.d.ts +41 -0
  92. package/dist/integrations/openai/voice-emotion.d.ts.map +1 -0
  93. package/dist/integrations/openai/voice-emotion.js +50 -0
  94. package/dist/integrations/openai/voice-emotion.js.map +1 -0
  95. package/dist/integrations/telegram/types.d.ts +112 -0
  96. package/dist/integrations/telegram/types.d.ts.map +1 -0
  97. package/dist/integrations/telegram/types.js +6 -0
  98. package/dist/integrations/telegram/types.js.map +1 -0
  99. package/dist/memory.d.ts +6 -205
  100. package/dist/memory.d.ts.map +1 -1
  101. package/dist/memory.js +6 -1373
  102. package/dist/memory.js.map +1 -1
  103. package/dist/openai.d.ts +11 -102
  104. package/dist/openai.d.ts.map +1 -1
  105. package/dist/openai.js +14 -421
  106. package/dist/openai.js.map +1 -1
  107. package/dist/response-builders.d.ts +1 -11
  108. package/dist/response-builders.d.ts.map +1 -1
  109. package/dist/response-builders.js +2 -38
  110. package/dist/response-builders.js.map +1 -1
  111. package/dist/server/factory.d.ts +17 -0
  112. package/dist/server/factory.d.ts.map +1 -0
  113. package/dist/server/factory.js +279 -0
  114. package/dist/server/factory.js.map +1 -0
  115. package/dist/services/dispatcher/broker.d.ts +83 -0
  116. package/dist/services/dispatcher/broker.d.ts.map +1 -0
  117. package/dist/services/dispatcher/broker.js +175 -0
  118. package/dist/services/dispatcher/broker.js.map +1 -0
  119. package/dist/services/dispatcher/index.d.ts +7 -0
  120. package/dist/services/dispatcher/index.d.ts.map +1 -0
  121. package/dist/services/dispatcher/index.js +7 -0
  122. package/dist/services/dispatcher/index.js.map +1 -0
  123. package/dist/services/dispatcher/lock.d.ts +25 -0
  124. package/dist/services/dispatcher/lock.d.ts.map +1 -0
  125. package/dist/services/dispatcher/lock.js +111 -0
  126. package/dist/services/dispatcher/lock.js.map +1 -0
  127. package/dist/services/dispatcher/poller.d.ts +19 -0
  128. package/dist/services/dispatcher/poller.d.ts.map +1 -0
  129. package/dist/services/dispatcher/poller.js +269 -0
  130. package/dist/services/dispatcher/poller.js.map +1 -0
  131. package/dist/telegram.d.ts +2 -88
  132. package/dist/telegram.d.ts.map +1 -1
  133. package/dist/telegram.js +2 -0
  134. package/dist/telegram.js.map +1 -1
  135. package/dist/tool-definitions.d.ts +1 -14
  136. package/dist/tool-definitions.d.ts.map +1 -1
  137. package/dist/tool-definitions.js +1 -404
  138. package/dist/tool-definitions.js.map +1 -1
  139. package/dist/tools/definitions.d.ts +15 -0
  140. package/dist/tools/definitions.d.ts.map +1 -0
  141. package/dist/tools/definitions.js +404 -0
  142. package/dist/tools/definitions.js.map +1 -0
  143. package/dist/tools/start-session-tool.d.ts.map +1 -1
  144. package/dist/tools/start-session-tool.js +2 -0
  145. package/dist/tools/start-session-tool.js.map +1 -1
  146. package/dist/tools/wait/drive-handler.d.ts +61 -0
  147. package/dist/tools/wait/drive-handler.d.ts.map +1 -0
  148. package/dist/tools/wait/drive-handler.js +138 -0
  149. package/dist/tools/wait/drive-handler.js.map +1 -0
  150. package/dist/tools/wait/index.d.ts +8 -0
  151. package/dist/tools/wait/index.d.ts.map +1 -0
  152. package/dist/tools/wait/index.js +8 -0
  153. package/dist/tools/wait/index.js.map +1 -0
  154. package/dist/tools/wait/media-processor.d.ts +52 -0
  155. package/dist/tools/wait/media-processor.d.ts.map +1 -0
  156. package/dist/tools/wait/media-processor.js +261 -0
  157. package/dist/tools/wait/media-processor.js.map +1 -0
  158. package/dist/tools/wait/message-delivery.d.ts +63 -0
  159. package/dist/tools/wait/message-delivery.d.ts.map +1 -0
  160. package/dist/tools/wait/message-delivery.js +281 -0
  161. package/dist/tools/wait/message-delivery.js.map +1 -0
  162. package/dist/tools/wait/poll-loop.d.ts +72 -0
  163. package/dist/tools/wait/poll-loop.d.ts.map +1 -0
  164. package/dist/tools/wait/poll-loop.js +280 -0
  165. package/dist/tools/wait/poll-loop.js.map +1 -0
  166. package/dist/tools/wait/reaction-handler.d.ts +49 -0
  167. package/dist/tools/wait/reaction-handler.d.ts.map +1 -0
  168. package/dist/tools/wait/reaction-handler.js +126 -0
  169. package/dist/tools/wait/reaction-handler.js.map +1 -0
  170. package/dist/tools/wait/task-handler.d.ts +40 -0
  171. package/dist/tools/wait/task-handler.d.ts.map +1 -0
  172. package/dist/tools/wait/task-handler.js +41 -0
  173. package/dist/tools/wait/task-handler.js.map +1 -0
  174. package/dist/tools/wait-tool.d.ts +3 -69
  175. package/dist/tools/wait-tool.d.ts.map +1 -1
  176. package/dist/tools/wait-tool.js +3 -876
  177. package/dist/tools/wait-tool.js.map +1 -1
  178. package/package.json +1 -1
  179. package/templates/daily-review.default.md +26 -0
  180. package/templates/drive-dispatcher.default.md +2 -0
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../src/dashboard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EACH,iBAAiB,EACjB,aAAa,EACb,mBAAmB,EACnB,yBAAyB,EAE5B,MAAM,aAAa,CAAC;AAErB,4EAA4E;AAC5E,oEAAoE;AACpE,MAAM,0BAA0B,GAAG;;;;;;;;;;;;;;;;;CAiBlC,CAAC;AAEF,wFAAwF;AACxF,MAAM,qBAAqB,GAA2B;IAClD,sBAAsB,EAAE;;;;;CAK3B;IACG,gBAAgB,EAAE;;;;;CAKrB;IACG,YAAY,EAAE;;;;;CAKjB;IACG,cAAc,EAAE;;;;;CAKnB;CACA,CAAC;AAEF,MAAM,iBAAiB,GAAG;IACtB,EAAE,IAAI,EAAE,oBAAoB,EAAE,GAAG,EAAE,sBAAsB,EAAE;IAC3D,EAAE,IAAI,EAAE,gBAAgB,EAAE,GAAG,EAAE,gBAAgB,EAAE;IACjD,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,YAAY,EAAE;IACzC,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,EAAE,cAAc,EAAE;CAChD,CAAC;AAEF,KAAK,UAAU,gBAAgB;IAC3B,MAAM,OAAO,GAA0D,EAAE,CAAC;IAC1E,KAAK,MAAM,GAAG,IAAI,iBAAiB,EAAE,CAAC;QAClC,IAAI,OAAe,CAAC;QACpB,IAAI,CAAC;YACD,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,GAAG,CAAC,GAAG,aAAa,CAAC,CAAC;YACpH,OAAO,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACnD,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,GAAG,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,yBAAyB,GAAG,CAAC,GAAG,aAAa,CAAC;QAC9F,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC;AAgBD,gFAAgF;AAEhF;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAClC,GAAoB,EACpB,GAAmB,EACnB,GAAqB,EACrB,SAAkB;IAElB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,UAAU,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,WAAW,EAAE,CAAC,CAAC;IACjF,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC;IAE1B,sBAAsB;IACtB,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;QACxC,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,0BAA0B,EAAE,CAAC,CAAC;QACnE,GAAG,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,iCAAiC;IACjC,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,IAAI,SAAS,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC;YACvC,MAAM,aAAa,GAAG,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAClG,IAAI,CAAC,aAAa,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;gBAChD,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;gBAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC;gBACnD,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;QACD,OAAO,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACpD,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,QAAQ,CAAC,GAAoB;IAClC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACnC,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACtD,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACtE,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,cAAc,CACnB,GAAoB,EACpB,IAAY,EACZ,GAAQ,EACR,GAAmB,EACnB,GAAqB;IAErB,MAAM,IAAI,GAAG,CAAC,IAAa,EAAE,MAAM,GAAG,GAAG,EAAE,EAAE;QACzC,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE;YAClB,cAAc,EAAE,kBAAkB;YAClC,eAAe,EAAE,UAAU;SAC9B,CAAC,CAAC;QACH,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IAClC,CAAC,CAAC;IAEF,IAAI,CAAC;QACD,MAAM,EAAE,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC;QAEvB,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;YACzB,MAAM,aAAa,GAAI,EAAE,CAAC,OAAO,CAAC,sCAAsC,CAAC,CAAC,GAAG,EAAsB,CAAC,GAAG,CAAC;YACxG,MAAM,sBAAsB,GAAI,EAAE,CAAC,OAAO,CAAC,6DAA6D,CAAC,CAAC,GAAG,EAAsB,CAAC,GAAG,CAAC;YACxI,MAAM,kBAAkB,GAAI,EAAE,CAAC,OAAO,CAAC,6FAA6F,CAAC,CAAC,GAAG,EAAsB,CAAC,GAAG,CAAC;YACpK,MAAM,eAAe,GAAI,EAAE,CAAC,OAAO,CAAC,wCAAwC,CAAC,CAAC,GAAG,EAAsB,CAAC,GAAG,CAAC;YAC5G,MAAM,oBAAoB,GAAI,EAAE,CAAC,OAAO,CAAC,8CAA8C,CAAC,CAAC,GAAG,EAAsB,CAAC,GAAG,CAAC;YACvH,MAAM,SAAS,GAAG,EAAE,CAAC,OAAO,CAAC,wEAAwE,CAAC,CAAC,GAAG,EAAoC,CAAC;YAC/I,MAAM,SAAS,GAAG,aAAa,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACjD,MAAM,SAAS,GAAG,EAAE,CAAC,OAAO,CAAC,oFAAoF,CAAC,CAAC,GAAG,EAAkC,CAAC;YACzJ,MAAM,QAAQ,GAAG,GAAG,CAAC,iBAAiB,EAAE,CAAC;YACzC,IAAI,CAAC;gBACD,MAAM,EAAE,EAAE,aAAa,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,eAAe,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,IAAI,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC,EAAE;gBACxM,cAAc,EAAE,QAAQ,CAAC,MAAM;gBAC/B,QAAQ;gBACR,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC;gBAC7D,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACvC,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,IAAI,IAAI,KAAK,eAAe,EAAE,CAAC;YAC3B,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAC;YAC9B,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC;YACvD,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;YAClE,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,YAAY,CAAiD,CAAC;YAC5G,MAAM,UAAU,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;YAC/E,MAAM,KAAK,GAAG,mBAAmB,CAAC,EAAE,EAAE;gBAClC,IAAI,EAAE,IAAI,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAA4B,CAAC,CAAC,CAAC,SAAS;gBAClF,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC;gBAC3B,MAAM,EAAE,IAAI;aACf,CAAC,CAAC;YACH,IAAI,CAAC,KAAK,CAAC,CAAC;YACZ,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,IAAI,IAAI,KAAK,eAAe,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAChH,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;YAClE,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YACzC,IAAI,QAAQ,EAAE,CAAC;gBACX,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;YACvD,CAAC;iBAAM,CAAC;gBACJ,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,wDAAwD,CAAC,CAAC,GAAG,CAAC,WAAW,CAA8B,CAAC;gBAChI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAClB,SAAS,EAAE,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBAClF,OAAO,EAAE,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO;oBAC7E,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS;iBACnF,CAAC,CAAC,CAAC,CAAC;YACT,CAAC;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;YACzB,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC;YACxB,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;YACzB,MAAM,CAAC,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC;YAC5C,IAAI,CAAC,CAAC,EAAE,CAAC;gBAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,EAAE,GAAG,CAAC,CAAC;gBAAC,OAAO,IAAI,CAAC;YAAC,CAAC;YACvE,IAAI,CAAC,yBAAyB,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YAC5G,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,+DAA+D;QAC/D,IAAI,IAAI,KAAK,gBAAgB,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;YACpD,KAAK,CAAC,KAAK,IAAI,EAAE;gBACb,IAAI,CAAC;oBACD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,qBAAqB,EAAE,WAAW,CAAC,CAAC;oBACzE,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;oBACpD,IAAI,OAAe,CAAC;oBACpB,IAAI,SAAS,GAAG,KAAK,CAAC;oBACtB,IAAI,CAAC;wBACD,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBAChD,CAAC;oBAAC,MAAM,CAAC;wBACL,2DAA2D;wBAC3D,IAAI,CAAC;4BACD,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,sBAAsB,CAAC,CAAC;4BAC7G,OAAO,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;wBACnD,CAAC;wBAAC,MAAM,CAAC;4BACL,4DAA4D;4BAC5D,OAAO,GAAG,0BAA0B,CAAC;wBACzC,CAAC;wBACD,SAAS,GAAG,IAAI,CAAC;oBACrB,CAAC;oBACD,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;gBACrE,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACX,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;gBAC3E,CAAC;YACL,CAAC,CAAC,EAAE,CAAC;YACL,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,+DAA+D;QAC/D,IAAI,IAAI,KAAK,sBAAsB,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;YAC1D,KAAK,CAAC,KAAK,IAAI,EAAE;gBACb,IAAI,CAAC;oBACD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,qBAAqB,EAAE,WAAW,CAAC,CAAC;oBACzE,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;oBAChD,IAAI,OAAO,GAAkB,IAAI,CAAC;oBAClC,IAAI,SAAS,GAAG,IAAI,CAAC;oBACrB,IAAI,CAAC;wBACD,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;wBAC5C,SAAS,GAAG,KAAK,CAAC;oBACtB,CAAC;oBAAC,MAAM,CAAC;wBACL,OAAO,GAAG,IAAI,CAAC;oBACnB,CAAC;oBACD,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;gBACjC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACX,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;gBAC3E,CAAC;YACL,CAAC,CAAC,EAAE,CAAC;YACL,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,IAAI,IAAI,KAAK,8BAA8B,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;YAClE,KAAK,CAAC,KAAK,IAAI,EAAE;gBACb,IAAI,CAAC;oBACD,MAAM,OAAO,GAAG,MAAM,gBAAgB,EAAE,CAAC;oBACzC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;gBACtB,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACX,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;gBAC3E,CAAC;YACL,CAAC,CAAC,EAAE,CAAC;YACL,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,IAAI,IAAI,KAAK,oCAAoC,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;YACxE,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC;YAClE,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACrE,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACxE,IAAI,aAAa,EAAE,CAAC;YAChB,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;YAE9B,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBACxB,KAAK,CAAC,KAAK,IAAI,EAAE;oBACb,IAAI,CAAC;wBACD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAC;wBACjC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAyB,CAAC;wBACxD,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;4BACrC,IAAI,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,EAAE,GAAG,CAAC,CAAC;4BAC9C,OAAO;wBACX,CAAC;wBACD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,qBAAqB,EAAE,WAAW,CAAC,CAAC;wBACzE,MAAM,KAAK,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;wBAC/C,MAAM,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,IAAI,KAAK,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;wBAC3E,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;oBACvB,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACX,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;oBAC3E,CAAC;gBACL,CAAC,CAAC,EAAE,CAAC;gBACL,OAAO,IAAI,CAAC;YAChB,CAAC;YAED,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC1B,KAAK,CAAC,KAAK,IAAI,EAAE;oBACb,IAAI,CAAC;wBACD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,qBAAqB,EAAE,WAAW,CAAC,CAAC;wBACzE,IAAI,CAAC;4BAAC,MAAM,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC;wBAAC,CAAC;wBAAC,MAAM,CAAC,CAAC,mBAAmB,CAAC,CAAC;wBACrF,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;oBACvB,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACX,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;oBAC3E,CAAC;gBACL,CAAC,CAAC,EAAE,CAAC;gBACL,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;QAED,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC;IAChB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QACvE,OAAO,IAAI,CAAC;IAChB,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CAAC,CAAS;IAC5B,IAAI,CAAC;QAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,CAAC,CAAC;IAAC,CAAC;AACrD,CAAC;AAED,gFAAgF;AAEhF,SAAS,gBAAgB;IACrB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA8zBH,CAAC;AACT,CAAC"}
1
+ {"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../src/dashboard.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * File storage utilities — saving binary files to disk,
3
+ * directory cleanup, and maintenance flag management.
4
+ *
5
+ * Extracted from config.ts during modular decomposition (phase 1).
6
+ */
7
+ export declare const FILES_DIR: string;
8
+ /**
9
+ * Save a buffer to disk under FILES_DIR with a unique timestamped name.
10
+ * Returns the absolute file path. Caps directory at 500 files by deleting oldest.
11
+ */
12
+ export declare function saveFileToDisk(buffer: Buffer, filename: string): string;
13
+ /**
14
+ * Check if a maintenance/update is pending.
15
+ * The update watcher writes this file before restarting the server.
16
+ * Returns the flag file content (version info) or null if no maintenance pending.
17
+ */
18
+ export declare function checkMaintenanceFlag(): string | null;
19
+ //# sourceMappingURL=file-storage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-storage.d.ts","sourceRoot":"","sources":["../../src/data/file-storage.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,eAAO,MAAM,SAAS,QAAkD,CAAC;AAGzE;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAqBvE;AAOD;;;;GAIG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,IAAI,CAOpD"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * File storage utilities — saving binary files to disk,
3
+ * directory cleanup, and maintenance flag management.
4
+ *
5
+ * Extracted from config.ts during modular decomposition (phase 1).
6
+ */
7
+ import { mkdirSync, existsSync, readFileSync, readdirSync, statSync, unlinkSync, writeFileSync } from "node:fs";
8
+ import { homedir } from "node:os";
9
+ import { join } from "node:path";
10
+ // ─── File storage ───────────────────────────────────────────────────────────
11
+ export const FILES_DIR = join(homedir(), ".remote-copilot-mcp", "files");
12
+ mkdirSync(FILES_DIR, { recursive: true });
13
+ /**
14
+ * Save a buffer to disk under FILES_DIR with a unique timestamped name.
15
+ * Returns the absolute file path. Caps directory at 500 files by deleting oldest.
16
+ */
17
+ export function saveFileToDisk(buffer, filename) {
18
+ const ts = Date.now();
19
+ const safeName = filename.replace(/[^a-zA-Z0-9._-]/g, "_");
20
+ const diskName = `${ts}-${safeName}`;
21
+ const filePath = join(FILES_DIR, diskName);
22
+ writeFileSync(filePath, buffer);
23
+ // Cleanup: cap at 500 files
24
+ try {
25
+ const files = readdirSync(FILES_DIR)
26
+ .map(f => ({ name: f, mtime: statSync(join(FILES_DIR, f)).mtimeMs }))
27
+ .sort((a, b) => a.mtime - b.mtime);
28
+ if (files.length > 500) {
29
+ const toDelete = files.slice(0, files.length - 500);
30
+ for (const f of toDelete) {
31
+ try {
32
+ unlinkSync(join(FILES_DIR, f.name));
33
+ }
34
+ catch (_) { /* ignore */ }
35
+ }
36
+ }
37
+ }
38
+ catch (_) { /* non-fatal */ }
39
+ return filePath;
40
+ }
41
+ // ─── Maintenance flag ───────────────────────────────────────────────────────
42
+ const DATA_DIR = join(homedir(), ".remote-copilot-mcp");
43
+ const MAINTENANCE_FLAG_PATH = join(DATA_DIR, "maintenance.flag");
44
+ /**
45
+ * Check if a maintenance/update is pending.
46
+ * The update watcher writes this file before restarting the server.
47
+ * Returns the flag file content (version info) or null if no maintenance pending.
48
+ */
49
+ export function checkMaintenanceFlag() {
50
+ try {
51
+ if (existsSync(MAINTENANCE_FLAG_PATH)) {
52
+ return readFileSync(MAINTENANCE_FLAG_PATH, "utf-8").trim();
53
+ }
54
+ }
55
+ catch { /* ignore read errors */ }
56
+ return null;
57
+ }
58
+ //# sourceMappingURL=file-storage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-storage.js","sourceRoot":"","sources":["../../src/data/file-storage.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAChH,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,+EAA+E;AAE/E,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,qBAAqB,EAAE,OAAO,CAAC,CAAC;AACzE,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAE1C;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,MAAc,EAAE,QAAgB;IAC7D,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACtB,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;IAC3D,MAAM,QAAQ,GAAG,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC;IACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC3C,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAEhC,4BAA4B;IAC5B,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,WAAW,CAAC,SAAS,CAAC;aACjC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;aACpE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YACvB,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;YACpD,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;gBACzB,IAAI,CAAC;oBAAC,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBAAC,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC,CAAC,eAAe,CAAC,CAAC;IAE/B,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,+EAA+E;AAE/E,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,qBAAqB,CAAC,CAAC;AACxD,MAAM,qBAAqB,GAAG,IAAI,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;AAEjE;;;;GAIG;AACH,MAAM,UAAU,oBAAoB;IAClC,IAAI,CAAC;QACH,IAAI,UAAU,CAAC,qBAAqB,CAAC,EAAE,CAAC;YACtC,OAAO,YAAY,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;QAC7D,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAC,wBAAwB,CAAC,CAAC;IACpC,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Session memory bootstrap / briefing assembly.
3
+ *
4
+ * Extracted from memory.ts — assembles the memory briefing injected at
5
+ * session start, provides memory status, topic index, forget, and
6
+ * compact refresh helpers.
7
+ */
8
+ import type { Database } from "./schema.js";
9
+ interface TopicEntry {
10
+ topic: string;
11
+ semanticCount: number;
12
+ proceduralCount: number;
13
+ lastUpdated: string | null;
14
+ avgConfidence: number;
15
+ totalAccesses: number;
16
+ }
17
+ interface MemoryStatus {
18
+ totalEpisodes: number;
19
+ unconsolidatedEpisodes: number;
20
+ totalSemanticNotes: number;
21
+ totalProcedures: number;
22
+ totalVoiceSignatures: number;
23
+ lastConsolidation: string | null;
24
+ topTopics: TopicEntry[];
25
+ dbSizeBytes: number;
26
+ }
27
+ export declare function getMemoryStatus(db: Database, threadId: number): MemoryStatus;
28
+ export declare function getTopicIndex(db: Database): TopicEntry[];
29
+ export declare function assembleBootstrap(db: Database, threadId: number): string;
30
+ /**
31
+ * Compact memory refresh — a condensed briefing for injection during long sessions.
32
+ * Much shorter than full bootstrap. Designed to re-ground the agent after context compaction.
33
+ */
34
+ export declare function assembleCompactRefresh(db: Database, threadId: number): string;
35
+ export declare function forgetMemory(db: Database, memoryId: string, reason: string): {
36
+ layer: string;
37
+ deleted: boolean;
38
+ };
39
+ export {};
40
+ //# sourceMappingURL=bootstrap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../../src/data/memory/bootstrap.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAW5C,UAAU,UAAU;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,YAAY;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,SAAS,EAAE,UAAU,EAAE,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;CACrB;AA0BD,wBAAgB,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,YAAY,CAkD5E;AAID,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,GAAG,UAAU,EAAE,CAKxD;AAID,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CA2FxE;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAU7E;AAID,wBAAgB,YAAY,CAC1B,EAAE,EAAE,QAAQ,EACZ,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAoErC"}
@@ -0,0 +1,240 @@
1
+ /**
2
+ * Session memory bootstrap / briefing assembly.
3
+ *
4
+ * Extracted from memory.ts — assembles the memory briefing injected at
5
+ * session start, provides memory status, topic index, forget, and
6
+ * compact refresh helpers.
7
+ */
8
+ import { statSync } from "fs";
9
+ import { homedir } from "os";
10
+ import { join } from "path";
11
+ import { getRecentEpisodes } from "./episodes.js";
12
+ import { getTopSemanticNotes, decrementTopicIndexForKeywords, } from "./semantic.js";
13
+ import { rowToProcedure } from "./procedures.js";
14
+ import { getVoiceBaseline } from "./voice-sig.js";
15
+ // ─── Helpers ─────────────────────────────────────────────────────────────────
16
+ function parseJsonArray(val) {
17
+ if (!val)
18
+ return [];
19
+ try {
20
+ return JSON.parse(val);
21
+ }
22
+ catch {
23
+ return [];
24
+ }
25
+ }
26
+ function rowToTopicEntry(row) {
27
+ return {
28
+ topic: row.topic,
29
+ semanticCount: row.semantic_count,
30
+ proceduralCount: row.procedural_count,
31
+ lastUpdated: row.last_updated ?? null,
32
+ avgConfidence: row.avg_confidence,
33
+ totalAccesses: row.total_accesses,
34
+ };
35
+ }
36
+ // ─── Memory Status ───────────────────────────────────────────────────────────
37
+ export function getMemoryStatus(db, threadId) {
38
+ const totalEpisodes = db.prepare(`SELECT COUNT(*) as cnt FROM episodes WHERE thread_id = ?`).get(threadId).cnt;
39
+ const unconsolidatedEpisodes = db
40
+ .prepare(`SELECT COUNT(*) as cnt FROM episodes WHERE thread_id = ? AND consolidated = 0`)
41
+ .get(threadId).cnt;
42
+ const totalSemanticNotes = db.prepare(`SELECT COUNT(*) as cnt FROM semantic_notes WHERE valid_to IS NULL AND superseded_by IS NULL`).get().cnt;
43
+ const totalProcedures = db.prepare(`SELECT COUNT(*) as cnt FROM procedures`).get().cnt;
44
+ const totalVoiceSignatures = db.prepare(`SELECT COUNT(*) as cnt FROM voice_signatures`).get().cnt;
45
+ const lastConsolidationRow = db
46
+ .prepare(`SELECT run_at FROM meta_consolidation_log ORDER BY run_at DESC LIMIT 1`)
47
+ .get();
48
+ const topTopics = getTopicIndex(db).slice(0, 5);
49
+ // Database file size
50
+ const dbPath = join(homedir(), ".remote-copilot-mcp", "memory.db");
51
+ let dbSizeBytes = 0;
52
+ try {
53
+ dbSizeBytes = statSync(dbPath).size;
54
+ }
55
+ catch {
56
+ // file might not exist yet or be inaccessible
57
+ }
58
+ return {
59
+ totalEpisodes,
60
+ unconsolidatedEpisodes,
61
+ totalSemanticNotes,
62
+ totalProcedures,
63
+ totalVoiceSignatures,
64
+ lastConsolidation: lastConsolidationRow?.run_at ?? null,
65
+ topTopics,
66
+ dbSizeBytes,
67
+ };
68
+ }
69
+ // ─── Topic Index ─────────────────────────────────────────────────────────────
70
+ export function getTopicIndex(db) {
71
+ const rows = db
72
+ .prepare(`SELECT * FROM meta_topic_index ORDER BY total_accesses DESC, semantic_count DESC LIMIT 50`)
73
+ .all();
74
+ return rows.map(rowToTopicEntry);
75
+ }
76
+ // ─── Bootstrap ───────────────────────────────────────────────────────────────
77
+ export function assembleBootstrap(db, threadId) {
78
+ const status = getMemoryStatus(db, threadId);
79
+ const recentEpisodes = getRecentEpisodes(db, threadId, 5);
80
+ const topNotes = getTopSemanticNotes(db, { limit: 10, sortBy: "access_count" });
81
+ // Preferences first
82
+ const preferences = topNotes.filter((n) => n.type === "preference");
83
+ const otherNotes = topNotes.filter((n) => n.type !== "preference");
84
+ const sortedNotes = [...preferences, ...otherNotes].slice(0, 10);
85
+ const activeProcedures = db
86
+ .prepare(`SELECT * FROM procedures ORDER BY times_executed DESC, confidence DESC LIMIT 5`)
87
+ .all();
88
+ const procedures = activeProcedures.map(rowToProcedure);
89
+ const baseline = getVoiceBaseline(db);
90
+ const lines = [];
91
+ lines.push("# Memory Briefing");
92
+ lines.push("");
93
+ // Status
94
+ lines.push("## Status");
95
+ lines.push(`- Episodes: ${status.totalEpisodes} (${status.unconsolidatedEpisodes} unconsolidated)`);
96
+ lines.push(`- Semantic notes: ${status.totalSemanticNotes}`);
97
+ lines.push(`- Procedures: ${status.totalProcedures}`);
98
+ lines.push(`- Voice signatures: ${status.totalVoiceSignatures}`);
99
+ if (status.lastConsolidation) {
100
+ lines.push(`- Last consolidation: ${status.lastConsolidation}`);
101
+ }
102
+ lines.push(`- DB size: ${(status.dbSizeBytes / 1024).toFixed(1)} KB`);
103
+ lines.push("");
104
+ // Recent episodes
105
+ if (recentEpisodes.length > 0) {
106
+ lines.push("## Recent Episodes");
107
+ for (const ep of recentEpisodes) {
108
+ const summary = typeof ep.content === "object" && ep.content !== null
109
+ ? ep.content.text ?? ep.content.caption ?? JSON.stringify(ep.content).slice(0, 120)
110
+ : String(ep.content).slice(0, 120);
111
+ lines.push(`- [${ep.type}/${ep.modality}] ${summary} (${ep.timestamp})`);
112
+ }
113
+ lines.push("");
114
+ }
115
+ // Key knowledge
116
+ if (sortedNotes.length > 0) {
117
+ lines.push("## Key Knowledge");
118
+ for (const note of sortedNotes) {
119
+ lines.push(`- **[${note.type}]** ${note.content} (conf: ${note.confidence.toFixed(2)}, accessed: ${note.accessCount}x)`);
120
+ }
121
+ lines.push("");
122
+ }
123
+ // Active procedures
124
+ if (procedures.length > 0) {
125
+ lines.push("## Active Procedures");
126
+ for (const proc of procedures) {
127
+ lines.push(`- **${proc.name}** (${proc.type}) — success: ${(proc.successRate * 100).toFixed(0)}%, used ${proc.timesExecuted}x`);
128
+ if (proc.steps.length > 0) {
129
+ lines.push(` Steps: ${proc.steps.join(" → ")}`);
130
+ }
131
+ }
132
+ lines.push("");
133
+ }
134
+ // Voice baseline
135
+ if (baseline && baseline.sampleCount > 0) {
136
+ lines.push("## Voice Baseline (30d)");
137
+ lines.push(`- Samples: ${baseline.sampleCount}`);
138
+ if (baseline.avgValence !== null)
139
+ lines.push(`- Avg valence: ${baseline.avgValence.toFixed(2)}`);
140
+ if (baseline.avgArousal !== null)
141
+ lines.push(`- Avg arousal: ${baseline.avgArousal.toFixed(2)}`);
142
+ if (baseline.avgSpeechRate !== null)
143
+ lines.push(`- Avg speech rate: ${baseline.avgSpeechRate.toFixed(1)}`);
144
+ if (baseline.avgMeanPitchHz !== null)
145
+ lines.push(`- Avg pitch: ${baseline.avgMeanPitchHz.toFixed(1)} Hz`);
146
+ lines.push("");
147
+ }
148
+ // Topics
149
+ if (status.topTopics.length > 0) {
150
+ lines.push("## Top Topics");
151
+ for (const t of status.topTopics) {
152
+ lines.push(`- ${t.topic} (semantic: ${t.semanticCount}, procedural: ${t.proceduralCount})`);
153
+ }
154
+ lines.push("");
155
+ }
156
+ return lines.join("\n");
157
+ }
158
+ /**
159
+ * Compact memory refresh — a condensed briefing for injection during long sessions.
160
+ * Much shorter than full bootstrap. Designed to re-ground the agent after context compaction.
161
+ */
162
+ export function assembleCompactRefresh(db, threadId) {
163
+ const topNotes = getTopSemanticNotes(db, { limit: 6, sortBy: "access_count" });
164
+ if (topNotes.length === 0)
165
+ return "";
166
+ const lines = [];
167
+ lines.push("## Memory Refresh");
168
+ for (const note of topNotes) {
169
+ lines.push(`- **[${note.type}]** ${note.content}`);
170
+ }
171
+ return lines.join("\n");
172
+ }
173
+ // ─── Forget ──────────────────────────────────────────────────────────────────
174
+ export function forgetMemory(db, memoryId, reason) {
175
+ // Determine layer by prefix
176
+ if (memoryId.startsWith("ep_")) {
177
+ const existing = db.prepare(`SELECT episode_id FROM episodes WHERE episode_id = ?`).get(memoryId);
178
+ if (!existing)
179
+ return { layer: "episodic", deleted: false };
180
+ db.transaction(() => {
181
+ db.prepare(`DELETE FROM episodes WHERE episode_id = ?`).run(memoryId);
182
+ // Also delete associated voice signature
183
+ db.prepare(`DELETE FROM voice_signatures WHERE episode_id = ?`).run(memoryId);
184
+ })();
185
+ return { layer: "episodic", deleted: true };
186
+ }
187
+ if (memoryId.startsWith("sn_")) {
188
+ const existing = db.prepare(`SELECT note_id, keywords FROM semantic_notes WHERE note_id = ?`).get(memoryId);
189
+ if (!existing)
190
+ return { layer: "semantic", deleted: false };
191
+ const kws = parseJsonArray(existing.keywords);
192
+ db.transaction(() => {
193
+ db.prepare(`DELETE FROM semantic_notes WHERE note_id = ?`).run(memoryId);
194
+ db.prepare(`DELETE FROM note_embeddings WHERE note_id = ?`).run(memoryId);
195
+ decrementTopicIndexForKeywords(db, kws, "semantic");
196
+ })();
197
+ return { layer: "semantic", deleted: true };
198
+ }
199
+ if (memoryId.startsWith("pr_")) {
200
+ const existing = db.prepare(`SELECT procedure_id, name FROM procedures WHERE procedure_id = ?`).get(memoryId);
201
+ if (!existing)
202
+ return { layer: "procedural", deleted: false };
203
+ const kws = existing.name.toLowerCase().split(/\s+/).filter((w) => w.length > 2);
204
+ db.transaction(() => {
205
+ db.prepare(`DELETE FROM procedures WHERE procedure_id = ?`).run(memoryId);
206
+ decrementTopicIndexForKeywords(db, kws, "procedural");
207
+ })();
208
+ return { layer: "procedural", deleted: true };
209
+ }
210
+ // Unknown prefix — try all layers
211
+ let row = db.prepare(`SELECT episode_id FROM episodes WHERE episode_id = ?`).get(memoryId);
212
+ if (row) {
213
+ db.transaction(() => {
214
+ db.prepare(`DELETE FROM episodes WHERE episode_id = ?`).run(memoryId);
215
+ db.prepare(`DELETE FROM voice_signatures WHERE episode_id = ?`).run(memoryId);
216
+ })();
217
+ return { layer: "episodic", deleted: true };
218
+ }
219
+ row = db.prepare(`SELECT note_id, keywords FROM semantic_notes WHERE note_id = ?`).get(memoryId);
220
+ if (row) {
221
+ const kws = parseJsonArray(row.keywords);
222
+ db.transaction(() => {
223
+ db.prepare(`DELETE FROM semantic_notes WHERE note_id = ?`).run(memoryId);
224
+ db.prepare(`DELETE FROM note_embeddings WHERE note_id = ?`).run(memoryId);
225
+ decrementTopicIndexForKeywords(db, kws, "semantic");
226
+ })();
227
+ return { layer: "semantic", deleted: true };
228
+ }
229
+ row = db.prepare(`SELECT procedure_id, name FROM procedures WHERE procedure_id = ?`).get(memoryId);
230
+ if (row) {
231
+ const kws = (row.name).toLowerCase().split(/\s+/).filter((w) => w.length > 2);
232
+ db.transaction(() => {
233
+ db.prepare(`DELETE FROM procedures WHERE procedure_id = ?`).run(memoryId);
234
+ decrementTopicIndexForKeywords(db, kws, "procedural");
235
+ })();
236
+ return { layer: "procedural", deleted: true };
237
+ }
238
+ return { layer: "unknown", deleted: false };
239
+ }
240
+ //# sourceMappingURL=bootstrap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../../src/data/memory/bootstrap.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { Database } from "./schema.js";
2
+ export interface ConsolidationReport {
3
+ episodesProcessed: number;
4
+ notesCreated: number;
5
+ durationMs: number;
6
+ details: string[];
7
+ }
8
+ export declare function runIntelligentConsolidation(db: Database, threadId: number, options?: {
9
+ maxEpisodes?: number;
10
+ dryRun?: boolean;
11
+ }): Promise<ConsolidationReport>;
12
+ //# sourceMappingURL=consolidation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consolidation.d.ts","sourceRoot":"","sources":["../../../src/data/memory/consolidation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAW5C,MAAM,WAAW,mBAAmB;IAClC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAiCD,wBAAsB,2BAA2B,CAC/C,EAAE,EAAE,QAAQ,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GACnD,OAAO,CAAC,mBAAmB,CAAC,CAsQ9B"}