@stackmemoryai/stackmemory 0.2.6 → 0.2.8

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 (406) hide show
  1. package/README.md +262 -83
  2. package/dist/scripts/cancel-duplicate-tasks.d.ts +7 -0
  3. package/dist/scripts/cancel-duplicate-tasks.d.ts.map +1 -0
  4. package/dist/scripts/cancel-duplicate-tasks.js +172 -0
  5. package/dist/scripts/cancel-duplicate-tasks.js.map +1 -0
  6. package/dist/scripts/list-linear-tasks.d.ts +6 -0
  7. package/dist/scripts/list-linear-tasks.d.ts.map +1 -0
  8. package/dist/scripts/list-linear-tasks.js +121 -0
  9. package/dist/scripts/list-linear-tasks.js.map +1 -0
  10. package/dist/scripts/merge-linear-duplicates-safe.d.ts +7 -0
  11. package/dist/scripts/merge-linear-duplicates-safe.d.ts.map +1 -0
  12. package/dist/scripts/merge-linear-duplicates-safe.js +267 -0
  13. package/dist/scripts/merge-linear-duplicates-safe.js.map +1 -0
  14. package/dist/scripts/show-linear-summary.d.ts +6 -0
  15. package/dist/scripts/show-linear-summary.d.ts.map +1 -0
  16. package/dist/scripts/show-linear-summary.js +120 -0
  17. package/dist/scripts/show-linear-summary.js.map +1 -0
  18. package/dist/scripts/status.js +6 -2
  19. package/dist/scripts/status.js.map +1 -1
  20. package/dist/src/cli/auto-detect.d.ts +61 -0
  21. package/dist/src/cli/auto-detect.d.ts.map +1 -0
  22. package/dist/src/cli/auto-detect.js +350 -0
  23. package/dist/src/cli/auto-detect.js.map +1 -0
  24. package/dist/src/cli/claude-sm.d.ts +7 -0
  25. package/dist/src/cli/claude-sm.d.ts.map +1 -0
  26. package/dist/src/cli/claude-sm.js +357 -0
  27. package/dist/src/cli/claude-sm.js.map +1 -0
  28. package/dist/src/cli/commands/config.d.ts +6 -0
  29. package/dist/src/cli/commands/config.d.ts.map +1 -0
  30. package/dist/src/cli/commands/config.js +224 -0
  31. package/dist/src/cli/commands/config.js.map +1 -0
  32. package/dist/src/cli/commands/context.d.ts +7 -0
  33. package/dist/src/cli/commands/context.d.ts.map +1 -0
  34. package/dist/src/cli/commands/context.js +365 -0
  35. package/dist/src/cli/commands/context.js.map +1 -0
  36. package/dist/src/cli/commands/linear-test.d.ts +6 -0
  37. package/dist/src/cli/commands/linear-test.d.ts.map +1 -0
  38. package/dist/src/cli/commands/linear-test.js +123 -0
  39. package/dist/src/cli/commands/linear-test.js.map +1 -0
  40. package/dist/src/cli/commands/linear.d.ts +6 -0
  41. package/dist/src/cli/commands/linear.d.ts.map +1 -0
  42. package/dist/src/cli/commands/linear.js +393 -0
  43. package/dist/src/cli/commands/linear.js.map +1 -0
  44. package/dist/src/cli/commands/log.d.ts +7 -0
  45. package/dist/src/cli/commands/log.d.ts.map +1 -0
  46. package/dist/src/cli/commands/log.js +168 -0
  47. package/dist/src/cli/commands/log.js.map +1 -0
  48. package/dist/src/cli/commands/onboard.d.ts +8 -0
  49. package/dist/src/cli/commands/onboard.d.ts.map +1 -0
  50. package/dist/src/cli/commands/onboard.js +363 -0
  51. package/dist/src/cli/commands/onboard.js.map +1 -0
  52. package/dist/src/cli/commands/projects.js +1 -1
  53. package/dist/src/cli/commands/projects.js.map +1 -1
  54. package/dist/src/cli/commands/search.d.ts +7 -0
  55. package/dist/src/cli/commands/search.d.ts.map +1 -0
  56. package/dist/src/cli/commands/search.js +162 -0
  57. package/dist/src/cli/commands/search.js.map +1 -0
  58. package/dist/src/cli/commands/session.d.ts +7 -0
  59. package/dist/src/cli/commands/session.d.ts.map +1 -0
  60. package/dist/src/cli/commands/session.js +222 -0
  61. package/dist/src/cli/commands/session.js.map +1 -0
  62. package/dist/src/cli/commands/tasks.d.ts +7 -0
  63. package/dist/src/cli/commands/tasks.d.ts.map +1 -0
  64. package/dist/src/cli/commands/tasks.js +229 -0
  65. package/dist/src/cli/commands/tasks.js.map +1 -0
  66. package/dist/src/cli/commands/webhook.d.ts +3 -0
  67. package/dist/src/cli/commands/webhook.d.ts.map +1 -0
  68. package/dist/src/cli/commands/webhook.js +157 -0
  69. package/dist/src/cli/commands/webhook.js.map +1 -0
  70. package/dist/src/cli/commands/worktree.d.ts +8 -0
  71. package/dist/src/cli/commands/worktree.d.ts.map +1 -0
  72. package/dist/src/cli/commands/worktree.js +339 -0
  73. package/dist/src/cli/commands/worktree.js.map +1 -0
  74. package/dist/src/cli/index.d.ts +2 -1
  75. package/dist/src/cli/index.d.ts.map +1 -1
  76. package/dist/src/cli/index.js +337 -50
  77. package/dist/src/cli/index.js.map +1 -1
  78. package/dist/src/cli/utils/viewer.d.ts.map +1 -1
  79. package/dist/src/cli/utils/viewer.js +3 -1
  80. package/dist/src/cli/utils/viewer.js.map +1 -1
  81. package/dist/src/core/config/config-manager.d.ts +95 -0
  82. package/dist/src/core/config/config-manager.d.ts.map +1 -0
  83. package/dist/src/core/config/config-manager.js +359 -0
  84. package/dist/src/core/config/config-manager.js.map +1 -0
  85. package/dist/src/core/config/types.d.ts +72 -0
  86. package/dist/src/core/config/types.d.ts.map +1 -0
  87. package/dist/src/core/config/types.js +127 -0
  88. package/dist/src/core/config/types.js.map +1 -0
  89. package/dist/src/core/context/auto-context.d.ts +22 -0
  90. package/dist/src/core/context/auto-context.d.ts.map +1 -0
  91. package/dist/src/core/context/auto-context.js +77 -0
  92. package/dist/src/core/context/auto-context.js.map +1 -0
  93. package/dist/src/core/context/compaction-handler.d.ts +119 -0
  94. package/dist/src/core/context/compaction-handler.d.ts.map +1 -0
  95. package/dist/src/core/context/compaction-handler.js +306 -0
  96. package/dist/src/core/context/compaction-handler.js.map +1 -0
  97. package/dist/src/core/context/frame-manager.d.ts +4 -0
  98. package/dist/src/core/context/frame-manager.d.ts.map +1 -1
  99. package/dist/src/core/context/frame-manager.js +350 -144
  100. package/dist/src/core/context/frame-manager.js.map +1 -1
  101. package/dist/src/core/context/model-aware-compaction.d.ts +101 -0
  102. package/dist/src/core/context/model-aware-compaction.d.ts.map +1 -0
  103. package/dist/src/core/context/model-aware-compaction.js +616 -0
  104. package/dist/src/core/context/model-aware-compaction.js.map +1 -0
  105. package/dist/src/core/errors/index.d.ts +135 -0
  106. package/dist/src/core/errors/index.d.ts.map +1 -0
  107. package/dist/src/core/errors/index.js +274 -0
  108. package/dist/src/core/errors/index.js.map +1 -0
  109. package/dist/src/core/errors/recovery.d.ts +86 -0
  110. package/dist/src/core/errors/recovery.d.ts.map +1 -0
  111. package/dist/src/core/errors/recovery.js +274 -0
  112. package/dist/src/core/errors/recovery.js.map +1 -0
  113. package/dist/src/core/projects/project-manager.d.ts.map +1 -1
  114. package/dist/src/core/projects/project-manager.js +240 -122
  115. package/dist/src/core/projects/project-manager.js.map +1 -1
  116. package/dist/src/core/query/query-parser.d.ts +104 -0
  117. package/dist/src/core/query/query-parser.d.ts.map +1 -0
  118. package/dist/src/core/query/query-parser.js +347 -0
  119. package/dist/src/core/query/query-parser.js.map +1 -0
  120. package/dist/src/core/retrieval/index.d.ts +8 -0
  121. package/dist/src/core/retrieval/index.d.ts.map +1 -0
  122. package/dist/src/core/retrieval/index.js +8 -0
  123. package/dist/src/core/retrieval/index.js.map +1 -0
  124. package/dist/src/core/retrieval/llm-context-retrieval.d.ts +71 -0
  125. package/dist/src/core/retrieval/llm-context-retrieval.d.ts.map +1 -0
  126. package/dist/src/core/retrieval/llm-context-retrieval.js +545 -0
  127. package/dist/src/core/retrieval/llm-context-retrieval.js.map +1 -0
  128. package/dist/src/core/retrieval/summary-generator.d.ts +63 -0
  129. package/dist/src/core/retrieval/summary-generator.d.ts.map +1 -0
  130. package/dist/src/core/retrieval/summary-generator.js +622 -0
  131. package/dist/src/core/retrieval/summary-generator.js.map +1 -0
  132. package/dist/src/core/retrieval/types.d.ts +257 -0
  133. package/dist/src/core/retrieval/types.d.ts.map +1 -0
  134. package/dist/src/core/retrieval/types.js +18 -0
  135. package/dist/src/core/retrieval/types.js.map +1 -0
  136. package/dist/src/core/session/index.d.ts +2 -0
  137. package/dist/src/core/session/index.d.ts.map +1 -0
  138. package/dist/src/core/session/index.js +2 -0
  139. package/dist/src/core/session/index.js.map +1 -0
  140. package/dist/src/core/session/session-manager.d.ts +69 -0
  141. package/dist/src/core/session/session-manager.d.ts.map +1 -0
  142. package/dist/src/core/session/session-manager.js +311 -0
  143. package/dist/src/core/session/session-manager.js.map +1 -0
  144. package/dist/src/core/trace/trace-detector.d.ts +108 -0
  145. package/dist/src/core/trace/trace-detector.d.ts.map +1 -0
  146. package/dist/src/core/trace/trace-detector.demo.d.ts +5 -0
  147. package/dist/src/core/trace/trace-detector.demo.d.ts.map +1 -0
  148. package/dist/src/core/trace/trace-detector.demo.js +145 -0
  149. package/dist/src/core/trace/trace-detector.demo.js.map +1 -0
  150. package/dist/src/core/trace/trace-detector.js +425 -0
  151. package/dist/src/core/trace/trace-detector.js.map +1 -0
  152. package/dist/src/core/trace/trace-store.d.ts +60 -0
  153. package/dist/src/core/trace/trace-store.d.ts.map +1 -0
  154. package/dist/src/core/trace/trace-store.js +323 -0
  155. package/dist/src/core/trace/trace-store.js.map +1 -0
  156. package/dist/src/core/trace/types.d.ts +81 -0
  157. package/dist/src/core/trace/types.d.ts.map +1 -0
  158. package/dist/src/core/trace/types.js +70 -0
  159. package/dist/src/core/trace/types.js.map +1 -0
  160. package/dist/src/core/utils/update-checker.d.ts.map +1 -1
  161. package/dist/src/core/utils/update-checker.js +82 -25
  162. package/dist/src/core/utils/update-checker.js.map +1 -1
  163. package/dist/src/core/worktree/worktree-manager.d.ts +110 -0
  164. package/dist/src/core/worktree/worktree-manager.d.ts.map +1 -0
  165. package/dist/src/core/worktree/worktree-manager.js +456 -0
  166. package/dist/src/core/worktree/worktree-manager.js.map +1 -0
  167. package/dist/src/features/analytics/core/analytics-service.d.ts +6 -0
  168. package/dist/src/features/analytics/core/analytics-service.d.ts.map +1 -1
  169. package/dist/src/features/analytics/core/analytics-service.js +125 -10
  170. package/dist/src/features/analytics/core/analytics-service.js.map +1 -1
  171. package/dist/src/features/analytics/queries/metrics-queries.d.ts.map +1 -1
  172. package/dist/src/features/analytics/queries/metrics-queries.js +220 -163
  173. package/dist/src/features/analytics/queries/metrics-queries.js.map +1 -1
  174. package/dist/src/features/browser/browser-mcp.d.ts.map +1 -1
  175. package/dist/src/features/browser/browser-mcp.js +3 -0
  176. package/dist/src/features/browser/browser-mcp.js.map +1 -1
  177. package/dist/src/features/tasks/pebbles-task-store.d.ts +4 -0
  178. package/dist/src/features/tasks/pebbles-task-store.d.ts.map +1 -1
  179. package/dist/src/features/tasks/pebbles-task-store.js +299 -141
  180. package/dist/src/features/tasks/pebbles-task-store.js.map +1 -1
  181. package/dist/src/integrations/linear/client.d.ts +28 -1
  182. package/dist/src/integrations/linear/client.d.ts.map +1 -1
  183. package/dist/src/integrations/linear/client.js +87 -0
  184. package/dist/src/integrations/linear/client.js.map +1 -1
  185. package/dist/src/integrations/linear/sync-manager.d.ts +76 -0
  186. package/dist/src/integrations/linear/sync-manager.d.ts.map +1 -0
  187. package/dist/src/integrations/linear/sync-manager.js +223 -0
  188. package/dist/src/integrations/linear/sync-manager.js.map +1 -0
  189. package/dist/src/integrations/linear/sync-service.d.ts +25 -0
  190. package/dist/src/integrations/linear/sync-service.d.ts.map +1 -0
  191. package/dist/src/integrations/linear/sync-service.js +198 -0
  192. package/dist/src/integrations/linear/sync-service.js.map +1 -0
  193. package/dist/src/integrations/linear/sync.d.ts +23 -1
  194. package/dist/src/integrations/linear/sync.d.ts.map +1 -1
  195. package/dist/src/integrations/linear/sync.js +156 -9
  196. package/dist/src/integrations/linear/sync.js.map +1 -1
  197. package/dist/src/integrations/linear/types.d.ts +75 -0
  198. package/dist/src/integrations/linear/types.d.ts.map +1 -0
  199. package/dist/src/integrations/linear/types.js +2 -0
  200. package/dist/src/integrations/linear/types.js.map +1 -0
  201. package/dist/src/integrations/linear/webhook-server.d.ts +32 -0
  202. package/dist/src/integrations/linear/webhook-server.d.ts.map +1 -0
  203. package/dist/src/integrations/linear/webhook-server.js +188 -0
  204. package/dist/src/integrations/linear/webhook-server.js.map +1 -0
  205. package/dist/src/integrations/linear/webhook.d.ts +95 -0
  206. package/dist/src/integrations/linear/webhook.d.ts.map +1 -0
  207. package/dist/src/integrations/linear/webhook.js +204 -0
  208. package/dist/src/integrations/linear/webhook.js.map +1 -0
  209. package/dist/src/integrations/mcp/server.d.ts +14 -0
  210. package/dist/src/integrations/mcp/server.d.ts.map +1 -1
  211. package/dist/src/integrations/mcp/server.js +849 -61
  212. package/dist/src/integrations/mcp/server.js.map +1 -1
  213. package/dist/src/integrations/mcp/trace-test.d.ts +5 -0
  214. package/dist/src/integrations/mcp/trace-test.d.ts.map +1 -0
  215. package/dist/src/integrations/mcp/trace-test.js +54 -0
  216. package/dist/src/integrations/mcp/trace-test.js.map +1 -0
  217. package/dist/src/servers/production/auth-middleware.d.ts +2 -2
  218. package/dist/src/servers/production/auth-middleware.d.ts.map +1 -1
  219. package/dist/src/servers/production/auth-middleware.js +1 -1
  220. package/dist/src/servers/production/auth-middleware.js.map +1 -1
  221. package/dist/src/services/config-service.d.ts +44 -0
  222. package/dist/src/services/config-service.d.ts.map +1 -0
  223. package/dist/src/services/config-service.js +61 -0
  224. package/dist/src/services/config-service.js.map +1 -0
  225. package/dist/src/services/context-service.d.ts +17 -0
  226. package/dist/src/services/context-service.d.ts.map +1 -0
  227. package/dist/src/services/context-service.js +88 -0
  228. package/dist/src/services/context-service.js.map +1 -0
  229. package/dist/src/types/task.d.ts +27 -0
  230. package/dist/src/types/task.d.ts.map +1 -0
  231. package/dist/src/types/task.js +2 -0
  232. package/dist/src/types/task.js.map +1 -0
  233. package/dist/src/utils/logger.d.ts +13 -0
  234. package/dist/src/utils/logger.d.ts.map +1 -0
  235. package/dist/src/utils/logger.js +52 -0
  236. package/dist/src/utils/logger.js.map +1 -0
  237. package/package.json +24 -10
  238. package/dist/attention-scoring/src/attention-tracker.d.ts +0 -79
  239. package/dist/attention-scoring/src/attention-tracker.d.ts.map +0 -1
  240. package/dist/attention-scoring/src/attention-tracker.js +0 -488
  241. package/dist/attention-scoring/src/attention-tracker.js.map +0 -1
  242. package/dist/attention-scoring/src/mcp-integration.d.ts +0 -56
  243. package/dist/attention-scoring/src/mcp-integration.d.ts.map +0 -1
  244. package/dist/attention-scoring/src/mcp-integration.js +0 -369
  245. package/dist/attention-scoring/src/mcp-integration.js.map +0 -1
  246. package/dist/index.js +0 -382
  247. package/dist/p2p-sync/src/p2p-sync.d.ts +0 -81
  248. package/dist/p2p-sync/src/p2p-sync.d.ts.map +0 -1
  249. package/dist/p2p-sync/src/p2p-sync.js +0 -457
  250. package/dist/p2p-sync/src/p2p-sync.js.map +0 -1
  251. package/dist/p2p-sync/src/team-context-sync.d.ts +0 -99
  252. package/dist/p2p-sync/src/team-context-sync.d.ts.map +0 -1
  253. package/dist/p2p-sync/src/team-context-sync.js +0 -491
  254. package/dist/p2p-sync/src/team-context-sync.js.map +0 -1
  255. package/dist/src/analytics/api/analytics-api.d.ts +0 -24
  256. package/dist/src/analytics/api/analytics-api.d.ts.map +0 -1
  257. package/dist/src/analytics/api/analytics-api.js +0 -279
  258. package/dist/src/analytics/api/analytics-api.js.map +0 -1
  259. package/dist/src/analytics/core/analytics-service.d.ts +0 -23
  260. package/dist/src/analytics/core/analytics-service.d.ts.map +0 -1
  261. package/dist/src/analytics/core/analytics-service.js +0 -160
  262. package/dist/src/analytics/core/analytics-service.js.map +0 -1
  263. package/dist/src/analytics/index.d.ts +0 -12
  264. package/dist/src/analytics/index.d.ts.map +0 -1
  265. package/dist/src/analytics/index.js +0 -11
  266. package/dist/src/analytics/index.js.map +0 -1
  267. package/dist/src/analytics/queries/metrics-queries.d.ts +0 -11
  268. package/dist/src/analytics/queries/metrics-queries.d.ts.map +0 -1
  269. package/dist/src/analytics/queries/metrics-queries.js +0 -179
  270. package/dist/src/analytics/queries/metrics-queries.js.map +0 -1
  271. package/dist/src/analytics/types/metrics.d.ts +0 -60
  272. package/dist/src/analytics/types/metrics.d.ts.map +0 -1
  273. package/dist/src/analytics/types/metrics.js +0 -2
  274. package/dist/src/analytics/types/metrics.js.map +0 -1
  275. package/dist/src/beads/beads-task-store.d.ts +0 -117
  276. package/dist/src/beads/beads-task-store.d.ts.map +0 -1
  277. package/dist/src/beads/beads-task-store.js +0 -318
  278. package/dist/src/beads/beads-task-store.js.map +0 -1
  279. package/dist/src/beads/task-aware-context.d.ts +0 -103
  280. package/dist/src/beads/task-aware-context.d.ts.map +0 -1
  281. package/dist/src/beads/task-aware-context.js +0 -395
  282. package/dist/src/beads/task-aware-context.js.map +0 -1
  283. package/dist/src/beads-task-store.d.ts +0 -117
  284. package/dist/src/beads-task-store.d.ts.map +0 -1
  285. package/dist/src/beads-task-store.js +0 -318
  286. package/dist/src/beads-task-store.js.map +0 -1
  287. package/dist/src/cli/analytics-viewer.d.ts +0 -3
  288. package/dist/src/cli/analytics-viewer.d.ts.map +0 -1
  289. package/dist/src/cli/analytics-viewer.js +0 -89
  290. package/dist/src/cli/analytics-viewer.js.map +0 -1
  291. package/dist/src/cli/cli.d.ts +0 -7
  292. package/dist/src/cli/cli.d.ts.map +0 -1
  293. package/dist/src/cli/cli.js +0 -704
  294. package/dist/src/cli/cli.js.map +0 -1
  295. package/dist/src/cli/project-commands.d.ts +0 -8
  296. package/dist/src/cli/project-commands.d.ts.map +0 -1
  297. package/dist/src/cli/project-commands.js +0 -212
  298. package/dist/src/cli/project-commands.js.map +0 -1
  299. package/dist/src/cli.d.ts +0 -7
  300. package/dist/src/cli.d.ts.map +0 -1
  301. package/dist/src/cli.js +0 -73
  302. package/dist/src/cli.js.map +0 -1
  303. package/dist/src/core/error-handler.d.ts +0 -46
  304. package/dist/src/core/error-handler.d.ts.map +0 -1
  305. package/dist/src/core/error-handler.js +0 -212
  306. package/dist/src/core/error-handler.js.map +0 -1
  307. package/dist/src/core/frame-manager.d.ts +0 -106
  308. package/dist/src/core/frame-manager.d.ts.map +0 -1
  309. package/dist/src/core/frame-manager.js +0 -387
  310. package/dist/src/core/frame-manager.js.map +0 -1
  311. package/dist/src/core/logger.d.ts +0 -24
  312. package/dist/src/core/logger.d.ts.map +0 -1
  313. package/dist/src/core/logger.js +0 -121
  314. package/dist/src/core/logger.js.map +0 -1
  315. package/dist/src/core/logger.test.d.ts +0 -2
  316. package/dist/src/core/logger.test.d.ts.map +0 -1
  317. package/dist/src/core/logger.test.js +0 -31
  318. package/dist/src/core/logger.test.js.map +0 -1
  319. package/dist/src/core/progress-tracker.d.ts +0 -95
  320. package/dist/src/core/progress-tracker.d.ts.map +0 -1
  321. package/dist/src/core/progress-tracker.js +0 -178
  322. package/dist/src/core/progress-tracker.js.map +0 -1
  323. package/dist/src/core/project-manager.d.ts +0 -130
  324. package/dist/src/core/project-manager.d.ts.map +0 -1
  325. package/dist/src/core/project-manager.js +0 -582
  326. package/dist/src/core/project-manager.js.map +0 -1
  327. package/dist/src/core/update-checker.d.ts +0 -38
  328. package/dist/src/core/update-checker.d.ts.map +0 -1
  329. package/dist/src/core/update-checker.js +0 -156
  330. package/dist/src/core/update-checker.js.map +0 -1
  331. package/dist/src/error-handler.d.ts +0 -42
  332. package/dist/src/error-handler.d.ts.map +0 -1
  333. package/dist/src/error-handler.js +0 -155
  334. package/dist/src/error-handler.js.map +0 -1
  335. package/dist/src/frame-manager.d.ts +0 -106
  336. package/dist/src/frame-manager.d.ts.map +0 -1
  337. package/dist/src/frame-manager.js +0 -361
  338. package/dist/src/frame-manager.js.map +0 -1
  339. package/dist/src/integrations/browser-mcp.d.ts +0 -94
  340. package/dist/src/integrations/browser-mcp.d.ts.map +0 -1
  341. package/dist/src/integrations/browser-mcp.js +0 -431
  342. package/dist/src/integrations/browser-mcp.js.map +0 -1
  343. package/dist/src/integrations/linear-auth.d.ts +0 -99
  344. package/dist/src/integrations/linear-auth.d.ts.map +0 -1
  345. package/dist/src/integrations/linear-auth.js +0 -319
  346. package/dist/src/integrations/linear-auth.js.map +0 -1
  347. package/dist/src/integrations/linear-auto-sync.d.ts +0 -77
  348. package/dist/src/integrations/linear-auto-sync.d.ts.map +0 -1
  349. package/dist/src/integrations/linear-auto-sync.js +0 -268
  350. package/dist/src/integrations/linear-auto-sync.js.map +0 -1
  351. package/dist/src/integrations/linear-client.d.ts +0 -86
  352. package/dist/src/integrations/linear-client.d.ts.map +0 -1
  353. package/dist/src/integrations/linear-client.js +0 -277
  354. package/dist/src/integrations/linear-client.js.map +0 -1
  355. package/dist/src/integrations/linear-config.d.ts +0 -51
  356. package/dist/src/integrations/linear-config.d.ts.map +0 -1
  357. package/dist/src/integrations/linear-config.js +0 -103
  358. package/dist/src/integrations/linear-config.js.map +0 -1
  359. package/dist/src/integrations/linear-sync.d.ts +0 -97
  360. package/dist/src/integrations/linear-sync.d.ts.map +0 -1
  361. package/dist/src/integrations/linear-sync.js +0 -391
  362. package/dist/src/integrations/linear-sync.js.map +0 -1
  363. package/dist/src/logger.d.ts +0 -24
  364. package/dist/src/logger.d.ts.map +0 -1
  365. package/dist/src/logger.js +0 -120
  366. package/dist/src/logger.js.map +0 -1
  367. package/dist/src/mcp/mcp-server.d.ts +0 -40
  368. package/dist/src/mcp/mcp-server.d.ts.map +0 -1
  369. package/dist/src/mcp/mcp-server.js +0 -828
  370. package/dist/src/mcp/mcp-server.js.map +0 -1
  371. package/dist/src/mcp-server.d.ts +0 -32
  372. package/dist/src/mcp-server.d.ts.map +0 -1
  373. package/dist/src/mcp-server.js +0 -441
  374. package/dist/src/mcp-server.js.map +0 -1
  375. package/dist/src/pebbles/pebbles-task-store.d.ts +0 -117
  376. package/dist/src/pebbles/pebbles-task-store.d.ts.map +0 -1
  377. package/dist/src/pebbles/pebbles-task-store.js +0 -335
  378. package/dist/src/pebbles/pebbles-task-store.js.map +0 -1
  379. package/dist/src/pebbles/task-aware-context.d.ts +0 -103
  380. package/dist/src/pebbles/task-aware-context.d.ts.map +0 -1
  381. package/dist/src/pebbles/task-aware-context.js +0 -412
  382. package/dist/src/pebbles/task-aware-context.js.map +0 -1
  383. package/dist/src/railway/index.d.ts +0 -7
  384. package/dist/src/railway/index.d.ts.map +0 -1
  385. package/dist/src/railway/index.js +0 -401
  386. package/dist/src/railway/index.js.map +0 -1
  387. package/dist/src/runway/auth/auth-middleware.d.ts +0 -66
  388. package/dist/src/runway/auth/auth-middleware.d.ts.map +0 -1
  389. package/dist/src/runway/auth/auth-middleware.js +0 -337
  390. package/dist/src/runway/auth/auth-middleware.js.map +0 -1
  391. package/dist/src/runway/server/runway-mcp-server.d.ts +0 -46
  392. package/dist/src/runway/server/runway-mcp-server.d.ts.map +0 -1
  393. package/dist/src/runway/server/runway-mcp-server.js +0 -601
  394. package/dist/src/runway/server/runway-mcp-server.js.map +0 -1
  395. package/dist/src/runway.bak/auth/auth-middleware.d.ts +0 -66
  396. package/dist/src/runway.bak/auth/auth-middleware.d.ts.map +0 -1
  397. package/dist/src/runway.bak/auth/auth-middleware.js +0 -337
  398. package/dist/src/runway.bak/auth/auth-middleware.js.map +0 -1
  399. package/dist/src/runway.bak/server/runway-mcp-server.d.ts +0 -46
  400. package/dist/src/runway.bak/server/runway-mcp-server.d.ts.map +0 -1
  401. package/dist/src/runway.bak/server/runway-mcp-server.js +0 -601
  402. package/dist/src/runway.bak/server/runway-mcp-server.js.map +0 -1
  403. package/dist/src/task-aware-context.d.ts +0 -103
  404. package/dist/src/task-aware-context.d.ts.map +0 -1
  405. package/dist/src/task-aware-context.js +0 -395
  406. package/dist/src/task-aware-context.js.map +0 -1
package/dist/index.js DELETED
@@ -1,382 +0,0 @@
1
- #!/usr/bin/env node
2
- /**
3
- * Railway MCP Server Entry Point
4
- * Simplified production server for Railway deployment
5
- */
6
- import express from 'express';
7
- import { createServer } from 'http';
8
- import { WebSocketServer } from 'ws';
9
- import cors from 'cors';
10
- import { Server } from '@modelcontextprotocol/sdk/server/index.js';
11
- import Database from 'better-sqlite3';
12
- import { join, dirname } from 'path';
13
- import { fileURLToPath } from 'url';
14
- import { existsSync, mkdirSync } from 'fs';
15
- const __filename = fileURLToPath(import.meta.url);
16
- const __dirname = dirname(__filename);
17
- // Configuration
18
- const config = {
19
- port: parseInt(process.env.PORT || '8080'),
20
- environment: process.env.NODE_ENV || 'development',
21
- corsOrigins: process.env.CORS_ORIGINS?.split(',') || ['http://localhost:3000'],
22
- authMode: process.env.AUTH_MODE || 'api_key',
23
- apiKeySecret: process.env.API_KEY_SECRET || 'development-secret',
24
- jwtSecret: process.env.JWT_SECRET || 'development-jwt-secret',
25
- databaseUrl: process.env.DATABASE_URL || join(process.cwd(), '.stackmemory', 'railway.db'),
26
- rateLimitEnabled: process.env.RATE_LIMIT_ENABLED === 'true',
27
- rateLimitFree: parseInt(process.env.RATE_LIMIT_FREE || '100'),
28
- enableWebSocket: process.env.ENABLE_WEBSOCKET !== 'false',
29
- enableAnalytics: process.env.ENABLE_ANALYTICS === 'true'
30
- };
31
- // Simple in-memory rate limiter
32
- const rateLimiter = new Map();
33
- class RailwayMCPServer {
34
- constructor() {
35
- this.connections = new Map();
36
- this.app = express();
37
- this.httpServer = createServer(this.app);
38
- this.initializeDatabase();
39
- this.setupMiddleware();
40
- this.setupRoutes();
41
- this.setupMCPServer();
42
- if (config.enableWebSocket) {
43
- this.setupWebSocket();
44
- }
45
- }
46
- initializeDatabase() {
47
- // Use PostgreSQL in production, SQLite for development
48
- if (config.environment === 'production' && config.databaseUrl.startsWith('postgresql://')) {
49
- console.log('Using PostgreSQL database');
50
- // In production, we'd use pg client here
51
- // For now, we'll use SQLite as fallback
52
- const dbPath = '/tmp/stackmemory.db';
53
- this.db = new Database(dbPath);
54
- }
55
- else {
56
- // Create database directory if it doesn't exist
57
- const dbDir = dirname(config.databaseUrl);
58
- if (!existsSync(dbDir)) {
59
- mkdirSync(dbDir, { recursive: true });
60
- }
61
- this.db = new Database(config.databaseUrl);
62
- }
63
- // Initialize tables
64
- this.db.exec(`
65
- CREATE TABLE IF NOT EXISTS contexts (
66
- id INTEGER PRIMARY KEY AUTOINCREMENT,
67
- project_id TEXT NOT NULL,
68
- content TEXT NOT NULL,
69
- type TEXT DEFAULT 'general',
70
- metadata TEXT DEFAULT '{}',
71
- created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
72
- updated_at DATETIME DEFAULT CURRENT_TIMESTAMP
73
- );
74
-
75
- CREATE TABLE IF NOT EXISTS api_keys (
76
- id INTEGER PRIMARY KEY AUTOINCREMENT,
77
- key_hash TEXT UNIQUE NOT NULL,
78
- user_id TEXT NOT NULL,
79
- name TEXT,
80
- created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
81
- last_used DATETIME,
82
- revoked BOOLEAN DEFAULT 0
83
- );
84
-
85
- CREATE INDEX IF NOT EXISTS idx_contexts_project ON contexts(project_id);
86
- CREATE INDEX IF NOT EXISTS idx_api_keys_hash ON api_keys(key_hash);
87
- `);
88
- }
89
- setupMiddleware() {
90
- // CORS
91
- this.app.use(cors({
92
- origin: config.corsOrigins,
93
- credentials: true
94
- }));
95
- // Body parsing
96
- this.app.use(express.json({ limit: '10mb' }));
97
- // Request logging
98
- this.app.use((req, res, next) => {
99
- console.log(`${new Date().toISOString()} ${req.method} ${req.path}`);
100
- next();
101
- });
102
- // Simple authentication middleware
103
- this.app.use('/api', this.authenticate.bind(this));
104
- // Rate limiting
105
- if (config.rateLimitEnabled) {
106
- this.app.use('/api', this.rateLimit.bind(this));
107
- }
108
- }
109
- authenticate(req, res, next) {
110
- // Skip auth for health check
111
- if (req.path === '/health') {
112
- return next();
113
- }
114
- const authHeader = req.headers.authorization;
115
- if (config.authMode === 'api_key') {
116
- // Simple API key authentication
117
- if (!authHeader?.startsWith('Bearer ')) {
118
- return res.status(401).json({ error: 'Missing API key' });
119
- }
120
- const apiKey = authHeader.substring(7);
121
- // In production, validate against database
122
- // For now, simple check
123
- if (apiKey.length < 32) {
124
- return res.status(403).json({ error: 'Invalid API key' });
125
- }
126
- req.user = { id: 'api-user', tier: 'free' };
127
- next();
128
- }
129
- else {
130
- // OAuth/JWT mode would go here
131
- next();
132
- }
133
- }
134
- rateLimit(req, res, next) {
135
- const userId = req.user?.id || req.ip;
136
- const now = Date.now();
137
- const windowMs = 15 * 60 * 1000; // 15 minutes
138
- const userLimit = rateLimiter.get(userId);
139
- if (!userLimit || userLimit.resetTime < now) {
140
- rateLimiter.set(userId, {
141
- count: 1,
142
- resetTime: now + windowMs
143
- });
144
- return next();
145
- }
146
- if (userLimit.count >= config.rateLimitFree) {
147
- const retryAfter = Math.ceil((userLimit.resetTime - now) / 1000);
148
- res.setHeader('Retry-After', retryAfter.toString());
149
- return res.status(429).json({
150
- error: 'Rate limit exceeded',
151
- retryAfter
152
- });
153
- }
154
- userLimit.count++;
155
- next();
156
- }
157
- setupRoutes() {
158
- // Health check
159
- this.app.get('/health', (req, res) => {
160
- const health = {
161
- status: 'healthy',
162
- version: '1.0.0',
163
- timestamp: new Date().toISOString(),
164
- uptime: process.uptime(),
165
- environment: config.environment
166
- };
167
- res.json(health);
168
- });
169
- // API Routes
170
- this.app.post('/api/context/save', (req, res) => {
171
- try {
172
- const { projectId = 'default', content, type = 'general', metadata = {} } = req.body;
173
- const stmt = this.db.prepare(`
174
- INSERT INTO contexts (project_id, content, type, metadata)
175
- VALUES (?, ?, ?, ?)
176
- `);
177
- const result = stmt.run(projectId, content, type, JSON.stringify(metadata));
178
- res.json({
179
- success: true,
180
- id: result.lastInsertRowid
181
- });
182
- }
183
- catch (error) {
184
- res.status(500).json({ error: error.message });
185
- }
186
- });
187
- this.app.get('/api/context/load', (req, res) => {
188
- try {
189
- const { projectId = 'default', limit = 10, offset = 0 } = req.query;
190
- const stmt = this.db.prepare(`
191
- SELECT * FROM contexts
192
- WHERE project_id = ?
193
- ORDER BY created_at DESC
194
- LIMIT ? OFFSET ?
195
- `);
196
- const contexts = stmt.all(projectId, limit, offset);
197
- res.json({
198
- success: true,
199
- contexts: contexts.map(c => ({
200
- ...c,
201
- metadata: JSON.parse(c.metadata)
202
- }))
203
- });
204
- }
205
- catch (error) {
206
- res.status(500).json({ error: error.message });
207
- }
208
- });
209
- // MCP tool execution endpoint
210
- this.app.post('/api/tools/execute', async (req, res) => {
211
- try {
212
- const { tool, params } = req.body;
213
- // Execute MCP tool
214
- const result = await this.executeMCPTool(tool, params);
215
- res.json({
216
- success: true,
217
- result
218
- });
219
- }
220
- catch (error) {
221
- res.status(500).json({ error: error.message });
222
- }
223
- });
224
- // Analytics endpoint
225
- if (config.enableAnalytics) {
226
- this.app.get('/api/analytics', (req, res) => {
227
- try {
228
- const { projectId = 'default' } = req.query;
229
- const stats = this.db.prepare(`
230
- SELECT
231
- COUNT(*) as total_contexts,
232
- COUNT(DISTINCT type) as unique_types,
233
- MAX(created_at) as last_activity
234
- FROM contexts
235
- WHERE project_id = ?
236
- `).get(projectId);
237
- res.json({
238
- success: true,
239
- analytics: stats
240
- });
241
- }
242
- catch (error) {
243
- res.status(500).json({ error: error.message });
244
- }
245
- });
246
- }
247
- }
248
- setupWebSocket() {
249
- this.wss = new WebSocketServer({
250
- server: this.httpServer,
251
- path: '/ws'
252
- });
253
- this.wss.on('connection', (ws, req) => {
254
- console.log('WebSocket connection established');
255
- const connectionId = Math.random().toString(36).substring(7);
256
- this.connections.set(connectionId, ws);
257
- ws.on('message', async (data) => {
258
- try {
259
- const message = JSON.parse(data.toString());
260
- const response = await this.handleWebSocketMessage(message);
261
- ws.send(JSON.stringify(response));
262
- }
263
- catch (error) {
264
- ws.send(JSON.stringify({
265
- error: error.message
266
- }));
267
- }
268
- });
269
- ws.on('close', () => {
270
- this.connections.delete(connectionId);
271
- console.log('WebSocket connection closed');
272
- });
273
- });
274
- }
275
- async handleWebSocketMessage(message) {
276
- const { type, tool, params } = message;
277
- switch (type) {
278
- case 'execute':
279
- return await this.executeMCPTool(tool, params);
280
- case 'ping':
281
- return { type: 'pong' };
282
- default:
283
- throw new Error(`Unknown message type: ${type}`);
284
- }
285
- }
286
- setupMCPServer() {
287
- this.mcpServer = new Server({
288
- name: 'stackmemory-railway',
289
- version: '1.0.0'
290
- }, {
291
- capabilities: {
292
- tools: {},
293
- resources: {}
294
- }
295
- });
296
- // Register MCP tools
297
- this.mcpServer.setRequestHandler('tools/list', async () => {
298
- return {
299
- tools: [
300
- {
301
- name: 'save_context',
302
- description: 'Save context to StackMemory',
303
- inputSchema: {
304
- type: 'object',
305
- properties: {
306
- content: { type: 'string' },
307
- type: { type: 'string' }
308
- }
309
- }
310
- },
311
- {
312
- name: 'load_context',
313
- description: 'Load context from StackMemory',
314
- inputSchema: {
315
- type: 'object',
316
- properties: {
317
- query: { type: 'string' },
318
- limit: { type: 'number' }
319
- }
320
- }
321
- }
322
- ]
323
- };
324
- });
325
- this.mcpServer.setRequestHandler('tools/call', async (request) => {
326
- const { name, arguments: args } = request.params;
327
- return await this.executeMCPTool(name, args);
328
- });
329
- }
330
- async executeMCPTool(tool, params) {
331
- switch (tool) {
332
- case 'save_context': {
333
- const stmt = this.db.prepare(`
334
- INSERT INTO contexts (project_id, content, type, metadata)
335
- VALUES (?, ?, ?, ?)
336
- `);
337
- const result = stmt.run(params.projectId || 'default', params.content, params.type || 'general', JSON.stringify(params.metadata || {}));
338
- return { id: result.lastInsertRowid, success: true };
339
- }
340
- case 'load_context': {
341
- const stmt = this.db.prepare(`
342
- SELECT * FROM contexts
343
- WHERE project_id = ? AND content LIKE ?
344
- ORDER BY created_at DESC
345
- LIMIT ?
346
- `);
347
- const contexts = stmt.all(params.projectId || 'default', `%${params.query || ''}%`, params.limit || 10);
348
- return { contexts, success: true };
349
- }
350
- default:
351
- throw new Error(`Unknown tool: ${tool}`);
352
- }
353
- }
354
- start() {
355
- this.httpServer.listen(config.port, '0.0.0.0', () => {
356
- console.log(`
357
- 🚂 Railway MCP Server Started
358
- ================================
359
- Environment: ${config.environment}
360
- Port: ${config.port}
361
- WebSocket: ${config.enableWebSocket ? 'Enabled' : 'Disabled'}
362
- Analytics: ${config.enableAnalytics ? 'Enabled' : 'Disabled'}
363
- Rate Limiting: ${config.rateLimitEnabled ? 'Enabled' : 'Disabled'}
364
- Auth Mode: ${config.authMode}
365
- ================================
366
- Health: http://localhost:${config.port}/health
367
- `);
368
- });
369
- }
370
- }
371
- // Start server
372
- const server = new RailwayMCPServer();
373
- server.start();
374
- // Graceful shutdown
375
- process.on('SIGTERM', () => {
376
- console.log('Shutting down gracefully...');
377
- process.exit(0);
378
- });
379
- process.on('SIGINT', () => {
380
- console.log('Shutting down...');
381
- process.exit(0);
382
- });
@@ -1,81 +0,0 @@
1
- /**
2
- * WebRTC P2P Sync Implementation for Beads/StackMemory
3
- *
4
- * Features:
5
- * - Direct peer-to-peer sync (zero server bandwidth)
6
- * - CRDT-based conflict resolution
7
- * - End-to-end encryption
8
- * - Automatic reconnection
9
- * - Offline queue
10
- */
11
- import nacl from 'tweetnacl';
12
- export declare class P2PSync {
13
- private peers;
14
- private db;
15
- private socket;
16
- private userId;
17
- private teamId;
18
- private syncQueue;
19
- private keypair;
20
- constructor(config: P2PConfig);
21
- private initDB;
22
- private connectSignaling;
23
- private connectToPeer;
24
- private handleSignal;
25
- private onPeerConnected;
26
- private handlePeerData;
27
- private getVectorClock;
28
- incrementClock(): VectorClock;
29
- private getOwnClock;
30
- private mergeVectorClock;
31
- createFrame(frame: Frame): void;
32
- updateFrame(frameId: string, updates: Partial<Frame>): void;
33
- deleteFrame(frameId: string): void;
34
- getFrame(frameId: string): Frame | null;
35
- private handleFrameUpdate;
36
- private isNewer;
37
- private logOperation;
38
- private getUnsyncedChanges;
39
- private batchChanges;
40
- private applyChanges;
41
- private sendRequestedFrames;
42
- private sendToPeer;
43
- private broadcast;
44
- private reconnectToPeer;
45
- private removePeer;
46
- private encrypt;
47
- private decrypt;
48
- discoverPeers(): Promise<PeerInfo[]>;
49
- private setupPeerHandlers;
50
- sync(): Promise<SyncStats>;
51
- disconnect(): void;
52
- }
53
- interface P2PConfig {
54
- userId: string;
55
- teamId: string;
56
- signalingServer: string;
57
- dbPath?: string;
58
- keypair?: nacl.BoxKeyPair;
59
- }
60
- interface PeerInfo {
61
- userId: string;
62
- publicKey: string;
63
- lastSeen: number;
64
- }
65
- interface Frame {
66
- id?: string;
67
- type: string;
68
- content: any;
69
- metadata?: any;
70
- }
71
- interface VectorClock {
72
- [peerId: string]: number;
73
- }
74
- interface SyncStats {
75
- connectedPeers: number;
76
- totalPeers: number;
77
- unsyncedChanges: number;
78
- lastSync: number;
79
- }
80
- export {};
81
- //# sourceMappingURL=p2p-sync.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"p2p-sync.d.ts","sourceRoot":"","sources":["../../../p2p-sync/src/p2p-sync.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAOH,OAAO,IAAI,MAAM,WAAW,CAAC;AAM7B,qBAAa,OAAO;IAClB,OAAO,CAAC,KAAK,CAA+C;IAC5D,OAAO,CAAC,EAAE,CAAoB;IAC9B,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,SAAS,CAAsC;IACvD,OAAO,CAAC,OAAO,CAAkB;gBAErB,MAAM,EAAE,SAAS;IAc7B,OAAO,CAAC,MAAM;IAmCd,OAAO,CAAC,gBAAgB;IA+BxB,OAAO,CAAC,aAAa;IA0CrB,OAAO,CAAC,YAAY;YAoBN,eAAe;IAkB7B,OAAO,CAAC,cAAc;IAgCtB,OAAO,CAAC,cAAc;IASf,cAAc,IAAI,WAAW;IAQpC,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,gBAAgB;IAkBjB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAwB/B,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI;IAyB3D,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAsBlC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI;IAY9C,OAAO,CAAC,iBAAiB;IAsBzB,OAAO,CAAC,OAAO;IAuBf,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,kBAAkB;IAgB1B,OAAO,CAAE,YAAY;IAMrB,OAAO,CAAC,YAAY;IAepB,OAAO,CAAC,mBAAmB;IAa3B,OAAO,CAAC,UAAU;IAelB,OAAO,CAAC,SAAS;IAMjB,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,OAAO;IAMf,OAAO,CAAC,OAAO;IASF,aAAa,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IASjD,OAAO,CAAC,iBAAiB;IAcZ,IAAI,IAAI,OAAO,CAAC,SAAS,CAAC;IAiBhC,UAAU;CAMlB;AAMD,UAAU,SAAS;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC;CAC3B;AAED,UAAU,QAAQ;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAOD,UAAU,KAAK;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,GAAG,CAAC;IACb,QAAQ,CAAC,EAAE,GAAG,CAAC;CAChB;AASD,UAAU,WAAW;IACnB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;CAC1B;AAmBD,UAAU,SAAS;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;CAClB"}