squish-memory 1.1.5 → 1.2.1

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 (646) hide show
  1. package/.env.example +32 -16
  2. package/CHANGELOG.md +147 -0
  3. package/README.md +120 -78
  4. package/{scripts → bin}/dependency-manager.mjs +217 -217
  5. package/{scripts → bin}/detect-clients.mjs +78 -78
  6. package/bin/install-interactive.mjs +321 -0
  7. package/bin/squish-mcp.mjs +44 -0
  8. package/bin/squish.mjs +33 -0
  9. package/config/mcp-migration-map.json +1 -6
  10. package/config/mcp-mode-semantics.json +19 -23
  11. package/config/mcp-remote-auth.json +3 -26
  12. package/config/mcp-universal.schema.json +5 -35
  13. package/config/settings.json +107 -52
  14. package/config.js +5 -0
  15. package/config.ts +218 -0
  16. package/core/adapters/config/claude-code.ts +133 -0
  17. package/core/adapters/config/cursor.ts +90 -0
  18. package/core/adapters/config/opencode.ts +89 -0
  19. package/core/adapters/config/windsurf.ts +90 -0
  20. package/core/adapters/index.ts +102 -0
  21. package/core/adapters/timeline.ts +116 -0
  22. package/core/adapters/types.ts +166 -0
  23. package/core/agent-preferences.ts +140 -0
  24. package/core/algorithms/analytics/token-estimator.ts +216 -0
  25. package/core/algorithms/detection/hash-filters.ts +260 -0
  26. package/core/algorithms/detection/semantic-ranker.ts +194 -0
  27. package/core/algorithms/detection/two-stage-detector.ts +421 -0
  28. package/core/algorithms/handlers/approve-merge.ts +215 -0
  29. package/core/algorithms/handlers/detect-duplicates.ts +192 -0
  30. package/core/algorithms/handlers/get-stats.ts +132 -0
  31. package/core/algorithms/handlers/list-proposals.ts +130 -0
  32. package/core/algorithms/handlers/preview-merge.ts +139 -0
  33. package/core/algorithms/handlers/reject-merge.ts +93 -0
  34. package/core/algorithms/handlers/reverse-merge.ts +155 -0
  35. package/{dist/core/algorithms/index.js → core/algorithms/index.ts} +39 -26
  36. package/core/algorithms/operations/cache-maintenance.ts +182 -0
  37. package/core/algorithms/safety/safety-checks.ts +256 -0
  38. package/core/algorithms/strategies/merge-strategies.ts +381 -0
  39. package/core/algorithms/types.ts +140 -0
  40. package/core/algorithms/utils/response-builder.ts +61 -0
  41. package/core/associations.ts +363 -0
  42. package/core/beliefs/decay.ts +289 -0
  43. package/core/beliefs/extractor.ts +131 -0
  44. package/core/beliefs/store.ts +557 -0
  45. package/core/beliefs/types.ts +38 -0
  46. package/core/commands/mcp-server.ts +5 -0
  47. package/core/compression.ts +177 -0
  48. package/core/config.js +2 -0
  49. package/core/consolidation.ts +330 -0
  50. package/core/context/agent-context.ts +388 -0
  51. package/core/context/context-paging.ts +449 -0
  52. package/core/context/context-window.ts +234 -0
  53. package/core/context/context.ts +35 -0
  54. package/core/embeddings/embeddings.ts +616 -0
  55. package/core/embeddings/google-multimodal.ts +200 -0
  56. package/{dist/core/local-embeddings.js → core/embeddings/local-embeddings.ts} +12 -11
  57. package/core/embeddings/qmd-client.ts +495 -0
  58. package/core/embeddings/transformers-local.ts +261 -0
  59. package/core/embeddings.js +4 -0
  60. package/core/error-handling.ts +206 -0
  61. package/core/external +219 -0
  62. package/core/graph/entity-deduplicator.ts +232 -0
  63. package/core/graph/graph-builder.ts +257 -0
  64. package/core/graph/graph-traversal.ts +490 -0
  65. package/core/graph/index.ts +24 -0
  66. package/core/graph/llm-entity-extractor.ts +402 -0
  67. package/core/graph/multi-hop-retrieval.ts +317 -0
  68. package/core/graph/relationship-extractor.ts +465 -0
  69. package/core/hooks/agent-hooks.ts +653 -0
  70. package/core/hooks/auto-tagger.ts +149 -0
  71. package/core/hooks/capture-filter.ts +169 -0
  72. package/core/hot-cache.ts +388 -0
  73. package/core/index.ts +10 -0
  74. package/core/ingestion/agent-memory.ts +167 -0
  75. package/core/ingestion/core-memory.ts +326 -0
  76. package/core/ingestion/learnings.ts +260 -0
  77. package/core/ingestion/signal-engine.ts +266 -0
  78. package/core/integrations/obsidian-vault.ts +197 -0
  79. package/core/layers/generator.ts +115 -0
  80. package/{dist/core/lib/db-client.d.ts → core/lib/db-client.ts} +168 -114
  81. package/core/lib/parse-embedding.ts +59 -0
  82. package/{dist/core/lib/schemas.js → core/lib/schemas.ts} +102 -87
  83. package/core/lib/types.ts +49 -0
  84. package/core/lib/utils.ts +151 -0
  85. package/core/lib/validation.ts +180 -0
  86. package/core/lifecycle.ts +353 -0
  87. package/core/logger.ts +59 -0
  88. package/core/memory/bridge-discovery.ts +395 -0
  89. package/core/memory/categorizer.ts +390 -0
  90. package/core/memory/conflict-detector.ts +62 -0
  91. package/core/memory/consolidation.ts +372 -0
  92. package/core/memory/context-collector.ts +75 -0
  93. package/core/memory/contradiction-resolver.ts +494 -0
  94. package/core/memory/edit-workflow.ts +174 -0
  95. package/core/memory/entity-extractor.ts +426 -0
  96. package/core/memory/entity-resolver.ts +89 -0
  97. package/core/memory/explain.ts +112 -0
  98. package/core/memory/fact-deriver.ts +300 -0
  99. package/core/memory/fact-extractor.ts +120 -0
  100. package/core/memory/feedback-tracker.ts +200 -0
  101. package/core/memory/hooks.ts +230 -0
  102. package/core/memory/hybrid-retrieval.ts +65 -0
  103. package/core/memory/hybrid-scorer.ts +325 -0
  104. package/core/memory/hybrid-search.ts +748 -0
  105. package/core/memory/importance.ts +319 -0
  106. package/{dist/core/memory/index.js → core/memory/index.ts} +11 -10
  107. package/core/memory/loader.ts +178 -0
  108. package/core/memory/markdown/markdown-storage.ts +318 -0
  109. package/core/memory/memories.ts +565 -0
  110. package/core/memory/memory-lifecycle.ts +51 -0
  111. package/core/memory/memory-manager.ts +53 -0
  112. package/core/memory/migrate.ts +173 -0
  113. package/core/memory/normalization.ts +30 -0
  114. package/core/memory/path-strengthener.ts +211 -0
  115. package/core/memory/progressive-disclosure.ts +392 -0
  116. package/core/memory/query-processor.ts +130 -0
  117. package/core/memory/query-rewriter.ts +153 -0
  118. package/core/memory/response-analyzer.ts +81 -0
  119. package/core/memory/retrieval-feedback.ts +276 -0
  120. package/core/memory/serialization.ts +83 -0
  121. package/core/memory/stale-cleaner.ts +147 -0
  122. package/core/memory/stats.ts +181 -0
  123. package/core/memory/telemetry.ts +392 -0
  124. package/core/memory/temporal-facts.ts +356 -0
  125. package/core/memory/temporal-parser.ts +477 -0
  126. package/core/memory/trigger-detector.ts +104 -0
  127. package/core/memory/write-gate.ts +288 -0
  128. package/{dist/core/places/index.js → core/places/index.ts} +12 -12
  129. package/core/places/memory-places.ts +339 -0
  130. package/core/places/places.ts +406 -0
  131. package/core/places/rules.ts +308 -0
  132. package/core/places/walking.ts +192 -0
  133. package/core/projects +89 -0
  134. package/core/projects.ts +131 -0
  135. package/core/redis.ts +82 -0
  136. package/core/responses.ts +187 -0
  137. package/core/runtime/trust-report.ts +195 -0
  138. package/core/runtime/trust-state.ts +360 -0
  139. package/core/scheduler/cron-scheduler.ts +590 -0
  140. package/core/scheduler/heartbeat.ts +91 -0
  141. package/{dist/core/scheduler/index.js → core/scheduler/index.ts} +8 -8
  142. package/core/scheduler/job-runner.ts +197 -0
  143. package/core/search/conversations.ts +166 -0
  144. package/core/search/entities.ts +46 -0
  145. package/core/search/folder-context.ts +154 -0
  146. package/core/search/graph-boost.ts +22 -0
  147. package/{dist/core/search/index.js → core/search/index.ts} +4 -5
  148. package/core/search/qmd-wrapper.ts +84 -0
  149. package/core/security/encrypt.ts +51 -0
  150. package/core/security/governance.ts +102 -0
  151. package/core/security/privacy.ts +108 -0
  152. package/core/security/secret-detector.ts +122 -0
  153. package/core/session/auto-load.ts +160 -0
  154. package/core/session/entity-tracker.ts +363 -0
  155. package/{dist/core/session/index.js → core/session/index.ts} +7 -7
  156. package/core/session/reference-resolver.ts +158 -0
  157. package/core/session/self-iteration-job.ts +478 -0
  158. package/core/session/session-hooks.ts +69 -0
  159. package/core/session/types.ts +36 -0
  160. package/core/session/working-set.ts +275 -0
  161. package/{dist/core/snapshots/cleanup.js → core/snapshots/cleanup.ts} +13 -12
  162. package/core/snapshots/comparison.ts +59 -0
  163. package/core/snapshots/creation.ts +139 -0
  164. package/core/snapshots/retrieval.ts +44 -0
  165. package/core/snapshots/stats.ts +63 -0
  166. package/core/storage/cache.ts +241 -0
  167. package/core/storage/database.ts +23 -0
  168. package/{dist/core/summarization/cleanup.js → core/summarization/cleanup.ts} +13 -12
  169. package/core/summarization/queries.ts +32 -0
  170. package/core/summarization/stats.ts +64 -0
  171. package/core/summarization/strategies.ts +52 -0
  172. package/core/summarization.ts +248 -0
  173. package/core/temporal-facts.ts +244 -0
  174. package/core/tracing/collector.ts +470 -0
  175. package/core/tracing/visualizer.ts +195 -0
  176. package/core/utils/cleanup-operations.ts +50 -0
  177. package/core/utils/content-extraction.ts +95 -0
  178. package/core/utils/filter-builder.ts +56 -0
  179. package/core/utils/history-traversal.ts +63 -0
  180. package/core/utils/memory-operations.ts +56 -0
  181. package/core/utils/query-operations.ts +83 -0
  182. package/core/utils/summarization-helpers.ts +45 -0
  183. package/core/utils/temporal-queries.ts +39 -0
  184. package/{dist/core/utils/vector-operations.js → core/utils/vector-operations.ts} +135 -129
  185. package/core/utils/version-management.ts +74 -0
  186. package/core/worker.ts +333 -0
  187. package/db/adapter.ts +215 -0
  188. package/{dist/db/bootstrap.js → db/bootstrap.ts} +388 -418
  189. package/db/drizzle/migrations/0000_needy_cerebro.sql +402 -0
  190. package/db/drizzle/migrations/meta/0000_snapshot.json +3451 -0
  191. package/db/drizzle/migrations/meta/_journal.json +13 -0
  192. package/db/drizzle/schema-sqlite.ts +1032 -0
  193. package/db/drizzle/schema.ts +1128 -0
  194. package/db/drizzle.config.ts +12 -0
  195. package/db/index.ts +83 -0
  196. package/db/init.sql +5 -0
  197. package/db/migrations/associations.ts +35 -0
  198. package/db/migrations/beliefs.ts +89 -0
  199. package/db/migrations/core-memory.ts +35 -0
  200. package/db/migrations/fts.ts +59 -0
  201. package/db/migrations/index.ts +54 -0
  202. package/db/migrations/indexes.ts +36 -0
  203. package/db/migrations/learnings.ts +34 -0
  204. package/db/migrations/maintenance.ts +68 -0
  205. package/db/migrations/memories.ts +22 -0
  206. package/db/migrations/memory-places.ts +35 -0
  207. package/db/migrations/places.ts +49 -0
  208. package/db/migrations/projects.ts +21 -0
  209. package/db/migrations/tier-conversion.ts +24 -0
  210. package/db/neon.ts +22 -0
  211. package/db/schema/beliefs.ts +50 -0
  212. package/db/schema/generator.ts +159 -0
  213. package/db/schema/index.ts +58 -0
  214. package/db/schema/learnings.ts +32 -0
  215. package/db/schema/memories.ts +83 -0
  216. package/db/schema/projects.ts +33 -0
  217. package/db/schema.ts +13 -0
  218. package/db/supabase.ts +27 -0
  219. package/mcp.json.example +8 -11
  220. package/package.json +140 -159
  221. package/packages/cli/package.json +22 -0
  222. package/packages/cli/src/commands/clean.ts +68 -0
  223. package/packages/cli/src/commands/context.ts +79 -0
  224. package/packages/cli/src/commands/doctor.ts +357 -0
  225. package/packages/cli/src/commands/forget.ts +72 -0
  226. package/packages/cli/src/commands/health.ts +36 -0
  227. package/packages/cli/src/commands/inspect.ts +41 -0
  228. package/packages/cli/src/commands/link.ts +50 -0
  229. package/packages/cli/src/commands/migrate.ts +93 -0
  230. package/packages/cli/src/commands/recall.ts +99 -0
  231. package/packages/cli/src/commands/recent.ts +57 -0
  232. package/packages/cli/src/commands/remember.ts +139 -0
  233. package/packages/cli/src/commands/run.ts +58 -0
  234. package/packages/cli/src/commands/stale.ts +43 -0
  235. package/packages/cli/src/commands/stats.ts +42 -0
  236. package/packages/cli/src/index.ts +57 -0
  237. package/packages/cli/tsconfig.json +24 -0
  238. package/packages/mcp/package.json +26 -0
  239. package/packages/mcp/src/index.ts +940 -0
  240. package/packages/mcp/tsconfig.json +20 -0
  241. package/skills/squish-memory/SKILL.md +38 -35
  242. package/skills/squish-memory/{scripts/install.sh → install.sh} +1 -1
  243. package/skills/squish-memory/references/claude-desktop.json +12 -0
  244. package/skills/squish-memory/references/openclaw.json +13 -0
  245. package/skills/squish-memory/references/opencode.json +14 -0
  246. package/config/hooks/claude-code-hooks.json +0 -39
  247. package/config/hooks/cursor-hooks.json +0 -30
  248. package/config/hooks/opencode-hooks.json +0 -30
  249. package/config/hooks/windsurf-hooks.json +0 -30
  250. package/config/mcp-cli-fallback-policy.json +0 -22
  251. package/config/mcp.json +0 -38
  252. package/config/plugin-manifest.json +0 -101
  253. package/config/plugin-manifest.schema.json +0 -244
  254. package/config/plugin.json +0 -32
  255. package/config/remote-memory-policy.json +0 -32
  256. package/core/commands/context-paging.md +0 -51
  257. package/core/commands/context-status.md +0 -22
  258. package/core/commands/context.md +0 -5
  259. package/core/commands/core-memory.md +0 -56
  260. package/core/commands/health.md +0 -5
  261. package/core/commands/init.md +0 -39
  262. package/core/commands/merge.md +0 -113
  263. package/core/commands/recall.md +0 -5
  264. package/core/commands/remember.md +0 -11
  265. package/core/commands/search.md +0 -10
  266. package/dist/config.d.ts +0 -83
  267. package/dist/config.js +0 -242
  268. package/dist/core/adapters/config/claude-code.d.ts +0 -45
  269. package/dist/core/adapters/config/claude-code.js +0 -113
  270. package/dist/core/adapters/config/cursor.d.ts +0 -26
  271. package/dist/core/adapters/config/cursor.js +0 -74
  272. package/dist/core/adapters/config/opencode.d.ts +0 -23
  273. package/dist/core/adapters/config/opencode.js +0 -73
  274. package/dist/core/adapters/config/windsurf.d.ts +0 -26
  275. package/dist/core/adapters/config/windsurf.js +0 -74
  276. package/dist/core/adapters/index.d.ts +0 -45
  277. package/dist/core/adapters/index.js +0 -84
  278. package/dist/core/adapters/scripts/install-adapter.d.ts +0 -19
  279. package/dist/core/adapters/scripts/install-adapter.js +0 -149
  280. package/dist/core/adapters/timeline.d.ts +0 -23
  281. package/dist/core/adapters/timeline.js +0 -88
  282. package/dist/core/adapters/types.d.ts +0 -157
  283. package/dist/core/adapters/types.js +0 -50
  284. package/dist/core/algorithms/analytics/token-estimator.d.ts +0 -50
  285. package/dist/core/algorithms/analytics/token-estimator.js +0 -154
  286. package/dist/core/algorithms/detection/hash-filters.d.ts +0 -47
  287. package/dist/core/algorithms/detection/hash-filters.js +0 -190
  288. package/dist/core/algorithms/detection/semantic-ranker.d.ts +0 -32
  289. package/dist/core/algorithms/detection/semantic-ranker.js +0 -118
  290. package/dist/core/algorithms/detection/two-stage-detector.d.ts +0 -52
  291. package/dist/core/algorithms/detection/two-stage-detector.js +0 -299
  292. package/dist/core/algorithms/handlers/approve-merge.d.ts +0 -22
  293. package/dist/core/algorithms/handlers/approve-merge.js +0 -179
  294. package/dist/core/algorithms/handlers/detect-duplicates.d.ts +0 -47
  295. package/dist/core/algorithms/handlers/detect-duplicates.js +0 -145
  296. package/dist/core/algorithms/handlers/get-stats.d.ts +0 -39
  297. package/dist/core/algorithms/handlers/get-stats.js +0 -88
  298. package/dist/core/algorithms/handlers/list-proposals.d.ts +0 -45
  299. package/dist/core/algorithms/handlers/list-proposals.js +0 -83
  300. package/dist/core/algorithms/handlers/preview-merge.d.ts +0 -39
  301. package/dist/core/algorithms/handlers/preview-merge.js +0 -93
  302. package/dist/core/algorithms/handlers/reject-merge.d.ts +0 -28
  303. package/dist/core/algorithms/handlers/reject-merge.js +0 -69
  304. package/dist/core/algorithms/handlers/reverse-merge.d.ts +0 -21
  305. package/dist/core/algorithms/handlers/reverse-merge.js +0 -121
  306. package/dist/core/algorithms/index.d.ts +0 -21
  307. package/dist/core/algorithms/operations/cache-maintenance.d.ts +0 -12
  308. package/dist/core/algorithms/operations/cache-maintenance.js +0 -157
  309. package/dist/core/algorithms/safety/safety-checks.d.ts +0 -22
  310. package/dist/core/algorithms/safety/safety-checks.js +0 -179
  311. package/dist/core/algorithms/strategies/merge-strategies.d.ts +0 -50
  312. package/dist/core/algorithms/strategies/merge-strategies.js +0 -288
  313. package/dist/core/algorithms/types.d.ts +0 -133
  314. package/dist/core/algorithms/types.js +0 -5
  315. package/dist/core/algorithms/utils/response-builder.d.ts +0 -28
  316. package/dist/core/algorithms/utils/response-builder.js +0 -37
  317. package/dist/core/associations.d.ts +0 -31
  318. package/dist/core/associations.js +0 -248
  319. package/dist/core/autosave.d.ts +0 -19
  320. package/dist/core/autosave.js +0 -16
  321. package/dist/core/commands/managed-sync.d.ts +0 -10
  322. package/dist/core/commands/managed-sync.js +0 -64
  323. package/dist/core/commands/mcp-server.d.ts +0 -3
  324. package/dist/core/commands/mcp-server.js +0 -739
  325. package/dist/core/consolidation.d.ts +0 -37
  326. package/dist/core/consolidation.js +0 -248
  327. package/dist/core/context/agent-context.d.ts +0 -106
  328. package/dist/core/context/agent-context.js +0 -274
  329. package/dist/core/context/context-paging.d.ts +0 -80
  330. package/dist/core/context/context-paging.js +0 -328
  331. package/dist/core/context/context-window.d.ts +0 -40
  332. package/dist/core/context/context-window.js +0 -177
  333. package/dist/core/context/context.d.ts +0 -7
  334. package/dist/core/context/context.js +0 -22
  335. package/dist/core/embeddings/google-multimodal.d.ts +0 -14
  336. package/dist/core/embeddings/google-multimodal.js +0 -142
  337. package/dist/core/embeddings/qmd-client.d.ts +0 -136
  338. package/dist/core/embeddings/qmd-client.js +0 -403
  339. package/dist/core/embeddings.d.ts +0 -29
  340. package/dist/core/embeddings.js +0 -454
  341. package/dist/core/error-handling.d.ts +0 -63
  342. package/dist/core/error-handling.js +0 -173
  343. package/dist/core/external-folder/index.d.ts +0 -102
  344. package/dist/core/external-folder/index.js +0 -294
  345. package/dist/core/hooks/agent-hooks.d.ts +0 -74
  346. package/dist/core/hooks/agent-hooks.js +0 -244
  347. package/dist/core/hooks/auto-tagger.d.ts +0 -19
  348. package/dist/core/hooks/auto-tagger.js +0 -155
  349. package/dist/core/hooks/capture-filter.d.ts +0 -41
  350. package/dist/core/hooks/capture-filter.js +0 -128
  351. package/dist/core/index.d.ts +0 -10
  352. package/dist/core/index.js +0 -14
  353. package/dist/core/ingestion/agent-memory.d.ts +0 -22
  354. package/dist/core/ingestion/agent-memory.js +0 -109
  355. package/dist/core/ingestion/core-memory.d.ts +0 -78
  356. package/dist/core/ingestion/core-memory.js +0 -226
  357. package/dist/core/ingestion/learnings.d.ts +0 -57
  358. package/dist/core/ingestion/learnings.js +0 -202
  359. package/dist/core/layers/generator.d.ts +0 -25
  360. package/dist/core/layers/generator.js +0 -76
  361. package/dist/core/lib/db-client.js +0 -130
  362. package/dist/core/lib/schemas.d.ts +0 -129
  363. package/dist/core/lib/utils.d.ts +0 -14
  364. package/dist/core/lib/utils.js +0 -90
  365. package/dist/core/lib/validation.d.ts +0 -38
  366. package/dist/core/lib/validation.js +0 -151
  367. package/dist/core/lifecycle.d.ts +0 -26
  368. package/dist/core/lifecycle.js +0 -302
  369. package/dist/core/local-embeddings.d.ts +0 -11
  370. package/dist/core/logger.d.ts +0 -16
  371. package/dist/core/logger.js +0 -40
  372. package/dist/core/mcp/client.d.ts +0 -17
  373. package/dist/core/mcp/client.js +0 -101
  374. package/dist/core/mcp/index.d.ts +0 -6
  375. package/dist/core/mcp/index.js +0 -6
  376. package/dist/core/mcp/server.d.ts +0 -18
  377. package/dist/core/mcp/server.js +0 -157
  378. package/dist/core/mcp/standalone-server.d.ts +0 -13
  379. package/dist/core/mcp/standalone-server.js +0 -46
  380. package/dist/core/mcp/tools.d.ts +0 -9
  381. package/dist/core/mcp/tools.js +0 -365
  382. package/dist/core/mcp/types.d.ts +0 -315
  383. package/dist/core/mcp/types.js +0 -48
  384. package/dist/core/memory/bridge-discovery.d.ts +0 -50
  385. package/dist/core/memory/bridge-discovery.js +0 -291
  386. package/dist/core/memory/categorizer.d.ts +0 -27
  387. package/dist/core/memory/categorizer.js +0 -305
  388. package/dist/core/memory/conflict-detector.d.ts +0 -7
  389. package/dist/core/memory/conflict-detector.js +0 -43
  390. package/dist/core/memory/consolidation.d.ts +0 -42
  391. package/dist/core/memory/consolidation.js +0 -303
  392. package/dist/core/memory/context-collector.d.ts +0 -10
  393. package/dist/core/memory/context-collector.js +0 -56
  394. package/dist/core/memory/contradiction-resolver.d.ts +0 -40
  395. package/dist/core/memory/contradiction-resolver.js +0 -368
  396. package/dist/core/memory/edit-workflow.d.ts +0 -19
  397. package/dist/core/memory/edit-workflow.js +0 -120
  398. package/dist/core/memory/entity-extractor.d.ts +0 -33
  399. package/dist/core/memory/entity-extractor.js +0 -336
  400. package/dist/core/memory/entity-resolver.d.ts +0 -23
  401. package/dist/core/memory/entity-resolver.js +0 -64
  402. package/dist/core/memory/fact-extractor.d.ts +0 -24
  403. package/dist/core/memory/fact-extractor.js +0 -89
  404. package/dist/core/memory/feedback-tracker.d.ts +0 -12
  405. package/dist/core/memory/feedback-tracker.js +0 -155
  406. package/dist/core/memory/hooks.d.ts +0 -88
  407. package/dist/core/memory/hooks.js +0 -174
  408. package/dist/core/memory/hybrid-retrieval.d.ts +0 -29
  409. package/dist/core/memory/hybrid-retrieval.js +0 -139
  410. package/dist/core/memory/hybrid-scorer.d.ts +0 -40
  411. package/dist/core/memory/hybrid-scorer.js +0 -284
  412. package/dist/core/memory/hybrid-search.d.ts +0 -20
  413. package/dist/core/memory/hybrid-search.js +0 -359
  414. package/dist/core/memory/importance.d.ts +0 -63
  415. package/dist/core/memory/importance.js +0 -298
  416. package/dist/core/memory/index.d.ts +0 -8
  417. package/dist/core/memory/loader.d.ts +0 -31
  418. package/dist/core/memory/loader.js +0 -141
  419. package/dist/core/memory/markdown/markdown-storage.d.ts +0 -72
  420. package/dist/core/memory/markdown/markdown-storage.js +0 -243
  421. package/dist/core/memory/memories.d.ts +0 -47
  422. package/dist/core/memory/memories.js +0 -449
  423. package/dist/core/memory/memory-lifecycle.d.ts +0 -8
  424. package/dist/core/memory/memory-lifecycle.js +0 -55
  425. package/dist/core/memory/memory-manager.d.ts +0 -15
  426. package/dist/core/memory/memory-manager.js +0 -46
  427. package/dist/core/memory/migrate.d.ts +0 -21
  428. package/dist/core/memory/migrate.js +0 -134
  429. package/dist/core/memory/normalization.d.ts +0 -22
  430. package/dist/core/memory/normalization.js +0 -26
  431. package/dist/core/memory/progressive-disclosure.d.ts +0 -43
  432. package/dist/core/memory/progressive-disclosure.js +0 -280
  433. package/dist/core/memory/query-processor.d.ts +0 -21
  434. package/dist/core/memory/query-processor.js +0 -72
  435. package/dist/core/memory/query-rewriter.d.ts +0 -13
  436. package/dist/core/memory/query-rewriter.js +0 -118
  437. package/dist/core/memory/response-analyzer.d.ts +0 -9
  438. package/dist/core/memory/response-analyzer.js +0 -61
  439. package/dist/core/memory/serialization.d.ts +0 -10
  440. package/dist/core/memory/serialization.js +0 -84
  441. package/dist/core/memory/stats.d.ts +0 -22
  442. package/dist/core/memory/stats.js +0 -138
  443. package/dist/core/memory/telemetry.d.ts +0 -69
  444. package/dist/core/memory/telemetry.js +0 -313
  445. package/dist/core/memory/temporal-facts.d.ts +0 -41
  446. package/dist/core/memory/temporal-facts.js +0 -283
  447. package/dist/core/memory/temporal-parser.d.ts +0 -32
  448. package/dist/core/memory/temporal-parser.js +0 -385
  449. package/dist/core/memory/trigger-detector.d.ts +0 -14
  450. package/dist/core/memory/trigger-detector.js +0 -42
  451. package/dist/core/memory/write-gate.d.ts +0 -54
  452. package/dist/core/memory/write-gate.js +0 -210
  453. package/dist/core/namespaces/index.d.ts +0 -71
  454. package/dist/core/namespaces/index.js +0 -305
  455. package/dist/core/namespaces/uri-parser.d.ts +0 -31
  456. package/dist/core/namespaces/uri-parser.js +0 -74
  457. package/dist/core/obsidian-vault.d.ts +0 -30
  458. package/dist/core/obsidian-vault.js +0 -94
  459. package/dist/core/places/index.d.ts +0 -14
  460. package/dist/core/places/memory-places.d.ts +0 -68
  461. package/dist/core/places/memory-places.js +0 -261
  462. package/dist/core/places/places.d.ts +0 -88
  463. package/dist/core/places/places.js +0 -314
  464. package/dist/core/places/rules.d.ts +0 -74
  465. package/dist/core/places/rules.js +0 -240
  466. package/dist/core/places/walking.d.ts +0 -56
  467. package/dist/core/places/walking.js +0 -121
  468. package/dist/core/projects.d.ts +0 -17
  469. package/dist/core/projects.js +0 -108
  470. package/dist/core/redis.d.ts +0 -11
  471. package/dist/core/redis.js +0 -69
  472. package/dist/core/responses.d.ts +0 -96
  473. package/dist/core/responses.js +0 -122
  474. package/dist/core/scheduler/cron-scheduler.d.ts +0 -32
  475. package/dist/core/scheduler/cron-scheduler.js +0 -332
  476. package/dist/core/scheduler/heartbeat.d.ts +0 -11
  477. package/dist/core/scheduler/heartbeat.js +0 -73
  478. package/dist/core/scheduler/index.d.ts +0 -8
  479. package/dist/core/scheduler/job-runner.d.ts +0 -11
  480. package/dist/core/scheduler/job-runner.js +0 -164
  481. package/dist/core/search/conversations.d.ts +0 -25
  482. package/dist/core/search/conversations.js +0 -110
  483. package/dist/core/search/entities.d.ts +0 -12
  484. package/dist/core/search/entities.js +0 -31
  485. package/dist/core/search/folder-context.d.ts +0 -25
  486. package/dist/core/search/folder-context.js +0 -119
  487. package/dist/core/search/graph-boost.d.ts +0 -7
  488. package/dist/core/search/graph-boost.js +0 -23
  489. package/dist/core/search/index.d.ts +0 -4
  490. package/dist/core/search/qmd-search.d.ts +0 -61
  491. package/dist/core/search/qmd-search.js +0 -178
  492. package/dist/core/security/encrypt.d.ts +0 -6
  493. package/dist/core/security/encrypt.js +0 -47
  494. package/dist/core/security/governance.d.ts +0 -26
  495. package/dist/core/security/governance.js +0 -79
  496. package/dist/core/security/privacy.d.ts +0 -23
  497. package/dist/core/security/privacy.js +0 -82
  498. package/dist/core/security/secret-detector.d.ts +0 -32
  499. package/dist/core/security/secret-detector.js +0 -88
  500. package/dist/core/session/auto-load.d.ts +0 -6
  501. package/dist/core/session/auto-load.js +0 -119
  502. package/dist/core/session/index.d.ts +0 -7
  503. package/dist/core/session/self-iteration-job.d.ts +0 -20
  504. package/dist/core/session/self-iteration-job.js +0 -282
  505. package/dist/core/session/session-hooks.d.ts +0 -18
  506. package/dist/core/session/session-hooks.js +0 -58
  507. package/dist/core/session/types.d.ts +0 -26
  508. package/dist/core/session/types.js +0 -10
  509. package/dist/core/session-hooks/self-iteration-job.d.ts +0 -20
  510. package/dist/core/session-hooks/self-iteration-job.js +0 -282
  511. package/dist/core/session-hooks/session-hooks.d.ts +0 -18
  512. package/dist/core/session-hooks/session-hooks.js +0 -58
  513. package/dist/core/snapshots/cleanup.d.ts +0 -9
  514. package/dist/core/snapshots/comparison.d.ts +0 -19
  515. package/dist/core/snapshots/comparison.js +0 -43
  516. package/dist/core/snapshots/creation.d.ts +0 -19
  517. package/dist/core/snapshots/creation.js +0 -126
  518. package/dist/core/snapshots/retrieval.d.ts +0 -7
  519. package/dist/core/snapshots/retrieval.js +0 -41
  520. package/dist/core/snapshots/stats.d.ts +0 -11
  521. package/dist/core/snapshots/stats.js +0 -52
  522. package/dist/core/snapshots.d.ts +0 -29
  523. package/dist/core/snapshots.js +0 -220
  524. package/dist/core/storage/cache.d.ts +0 -13
  525. package/dist/core/storage/cache.js +0 -202
  526. package/dist/core/storage/database.d.ts +0 -12
  527. package/dist/core/storage/database.js +0 -12
  528. package/dist/core/summarization/cleanup.d.ts +0 -9
  529. package/dist/core/summarization/queries.d.ts +0 -9
  530. package/dist/core/summarization/queries.js +0 -28
  531. package/dist/core/summarization/stats.d.ts +0 -14
  532. package/dist/core/summarization/stats.js +0 -52
  533. package/dist/core/summarization/strategies.d.ts +0 -24
  534. package/dist/core/summarization/strategies.js +0 -28
  535. package/dist/core/summarization.d.ts +0 -37
  536. package/dist/core/summarization.js +0 -188
  537. package/dist/core/sync/qmd-sync.d.ts +0 -94
  538. package/dist/core/sync/qmd-sync.js +0 -201
  539. package/dist/core/temporal-facts.d.ts +0 -54
  540. package/dist/core/temporal-facts.js +0 -193
  541. package/dist/core/toon.d.ts +0 -43
  542. package/dist/core/toon.js +0 -160
  543. package/dist/core/tracing/collector.d.ts +0 -111
  544. package/dist/core/tracing/collector.js +0 -350
  545. package/dist/core/tracing/visualizer.d.ts +0 -32
  546. package/dist/core/tracing/visualizer.js +0 -165
  547. package/dist/core/utils/cleanup-operations.d.ts +0 -13
  548. package/dist/core/utils/cleanup-operations.js +0 -44
  549. package/dist/core/utils/content-extraction.d.ts +0 -19
  550. package/dist/core/utils/content-extraction.js +0 -75
  551. package/dist/core/utils/filter-builder.d.ts +0 -13
  552. package/dist/core/utils/filter-builder.js +0 -44
  553. package/dist/core/utils/history-traversal.d.ts +0 -13
  554. package/dist/core/utils/history-traversal.js +0 -50
  555. package/dist/core/utils/memory-operations.d.ts +0 -17
  556. package/dist/core/utils/memory-operations.js +0 -43
  557. package/dist/core/utils/query-operations.d.ts +0 -18
  558. package/dist/core/utils/query-operations.js +0 -65
  559. package/dist/core/utils/summarization-helpers.d.ts +0 -21
  560. package/dist/core/utils/summarization-helpers.js +0 -38
  561. package/dist/core/utils/temporal-queries.d.ts +0 -13
  562. package/dist/core/utils/temporal-queries.js +0 -27
  563. package/dist/core/utils/vector-operations.d.ts +0 -71
  564. package/dist/core/utils/version-management.d.ts +0 -9
  565. package/dist/core/utils/version-management.js +0 -61
  566. package/dist/core/worker.d.ts +0 -82
  567. package/dist/core/worker.js +0 -272
  568. package/dist/db/adapter.d.ts +0 -7
  569. package/dist/db/adapter.js +0 -175
  570. package/dist/db/bootstrap.d.ts +0 -9
  571. package/dist/db/drizzle/schema-sqlite.d.ts +0 -4837
  572. package/dist/db/drizzle/schema-sqlite.js +0 -684
  573. package/dist/db/drizzle/schema.d.ts +0 -4082
  574. package/dist/db/drizzle/schema.js +0 -770
  575. package/dist/db/drizzle.config.d.ts +0 -3
  576. package/dist/db/drizzle.config.js +0 -12
  577. package/dist/db/index.d.ts +0 -7
  578. package/dist/db/index.js +0 -89
  579. package/dist/db/neon.d.ts +0 -8
  580. package/dist/db/neon.js +0 -20
  581. package/dist/db/schema/index.d.ts +0 -40
  582. package/dist/db/schema/index.js +0 -105
  583. package/dist/db/schema/tables/context-sessions.d.ts +0 -9
  584. package/dist/db/schema/tables/context-sessions.js +0 -37
  585. package/dist/db/schema/tables/conversations.d.ts +0 -9
  586. package/dist/db/schema/tables/conversations.js +0 -47
  587. package/dist/db/schema/tables/core-memory.d.ts +0 -9
  588. package/dist/db/schema/tables/core-memory.js +0 -41
  589. package/dist/db/schema/tables/entities.d.ts +0 -9
  590. package/dist/db/schema/tables/entities.js +0 -39
  591. package/dist/db/schema/tables/entity-relations.d.ts +0 -9
  592. package/dist/db/schema/tables/entity-relations.js +0 -31
  593. package/dist/db/schema/tables/learnings.d.ts +0 -9
  594. package/dist/db/schema/tables/learnings.js +0 -66
  595. package/dist/db/schema/tables/memories.d.ts +0 -9
  596. package/dist/db/schema/tables/memories.js +0 -161
  597. package/dist/db/schema/tables/memory-associations.d.ts +0 -9
  598. package/dist/db/schema/tables/memory-associations.js +0 -39
  599. package/dist/db/schema/tables/memory-hash-cache.d.ts +0 -9
  600. package/dist/db/schema/tables/memory-hash-cache.js +0 -29
  601. package/dist/db/schema/tables/memory-merge-history.d.ts +0 -9
  602. package/dist/db/schema/tables/memory-merge-history.js +0 -33
  603. package/dist/db/schema/tables/memory-merge-proposals.d.ts +0 -9
  604. package/dist/db/schema/tables/memory-merge-proposals.js +0 -39
  605. package/dist/db/schema/tables/messages.d.ts +0 -9
  606. package/dist/db/schema/tables/messages.js +0 -41
  607. package/dist/db/schema/tables/namespaces.d.ts +0 -9
  608. package/dist/db/schema/tables/namespaces.js +0 -37
  609. package/dist/db/schema/tables/projects.d.ts +0 -9
  610. package/dist/db/schema/tables/projects.js +0 -31
  611. package/dist/db/schema/tables/users.d.ts +0 -9
  612. package/dist/db/schema/tables/users.js +0 -27
  613. package/dist/db/schema.d.ts +0 -3
  614. package/dist/db/schema.js +0 -11
  615. package/dist/db/supabase.d.ts +0 -9
  616. package/dist/db/supabase.js +0 -24
  617. package/dist/index.d.ts +0 -7
  618. package/dist/index.js +0 -1677
  619. package/dist/vendor/sql.js/sql-wasm.wasm +0 -0
  620. package/dist/webui/server.d.ts +0 -5
  621. package/dist/webui/server.js +0 -642
  622. package/generated/mcp/manifest.json +0 -23
  623. package/generated/mcp/mcp-servers.json +0 -25
  624. package/generated/mcp/mcporter.json +0 -34
  625. package/generated/mcp/openclaw-memory-qmd.json +0 -17
  626. package/generated/mcp/runtime.json +0 -12
  627. package/scripts/README.md +0 -60
  628. package/scripts/build-release.sh +0 -36
  629. package/scripts/check-secrets.js +0 -132
  630. package/scripts/copy-runtime-assets.mjs +0 -26
  631. package/scripts/generate-mcp.mjs +0 -264
  632. package/scripts/github-release.sh +0 -77
  633. package/scripts/init-dirs.mjs +0 -13
  634. package/scripts/install-claude-code.sh +0 -85
  635. package/scripts/install-cursor.sh +0 -56
  636. package/scripts/install-hooks.sh +0 -73
  637. package/scripts/install-interactive.mjs +0 -357
  638. package/scripts/install-opencode.sh +0 -75
  639. package/scripts/install-plugin.mjs +0 -415
  640. package/scripts/install-windsurf.sh +0 -67
  641. package/scripts/remote-preflight.mjs +0 -62
  642. package/scripts/squish-fallback.mjs +0 -132
  643. package/scripts/test-interactive.mjs +0 -131
  644. package/scripts/verify-mcp.mjs +0 -214
  645. package/skills/squish-memory/scripts/install.mjs +0 -335
  646. package/skills/squish-memory/write_skill.js +0 -2
@@ -1,121 +0,0 @@
1
- /**
2
- * Walking Interface - Sequential memory retrieval through places
3
- *
4
- * Implements Method of Loci walking through memory places:
5
- * - Walk single place to get memories in order
6
- * - Walk all places for full tour
7
- * - Token budget handling with TOON compression
8
- */
9
- import { getProjectPlaces } from './places.js';
10
- import { getPlaceMemories } from './memory-places.js';
11
- import { getMemory } from '../memory/memories.js';
12
- import { compressForContext } from '../toon.js';
13
- import { logger } from '../logger.js';
14
- /**
15
- * Walk through a single place
16
- */
17
- export async function walkPlace(projectId, placeType, options = {}) {
18
- const { tokenBudget = 170, maxMemoriesPerPlace = 10, includePurpose = true, compressWithToon = false } = options;
19
- // Get the place
20
- const places = await getProjectPlaces(projectId);
21
- const place = places.find(p => p.placeType === placeType);
22
- if (!place) {
23
- logger.warn(`[Walking] Place not found: ${placeType}`);
24
- return null;
25
- }
26
- // Get memory IDs for this place
27
- const memoryIds = await getPlaceMemories(place.id, maxMemoriesPerPlace);
28
- // Get full memories
29
- const memories = [];
30
- let totalTokens = 0;
31
- for (const memoryId of memoryIds) {
32
- const memory = await getMemory(memoryId);
33
- if (!memory)
34
- continue;
35
- let content = memory.content || '';
36
- // Compress with TOON if requested
37
- if (compressWithToon && content) {
38
- content = compressForContext(content);
39
- }
40
- const tokenEstimate = Math.ceil(content.length / 4); // rough token estimate
41
- if (totalTokens + tokenEstimate > tokenBudget) {
42
- // Would exceed budget - stop adding
43
- break;
44
- }
45
- memories.push({
46
- id: memory.id,
47
- content,
48
- type: memory.type,
49
- tags: memory.tags || [],
50
- createdAt: memory.createdAt || '',
51
- });
52
- totalTokens += tokenEstimate;
53
- }
54
- return {
55
- place,
56
- memories,
57
- totalTokens,
58
- truncated: memories.length < memoryIds.length,
59
- };
60
- }
61
- /**
62
- * Walk through all places in loci order
63
- */
64
- export async function walkAllPlaces(projectId, options = {}) {
65
- const places = await getProjectPlaces(projectId);
66
- const results = [];
67
- for (const place of places) {
68
- const walkResult = await walkPlace(projectId, place.placeType, options);
69
- if (walkResult && walkResult.memories.length > 0) {
70
- results.push(walkResult);
71
- }
72
- }
73
- logger.info(`[Walking] Walked ${results.length} places for project ${projectId}`);
74
- return results;
75
- }
76
- /**
77
- * Quick tour - just place names and purposes (minimal tokens)
78
- */
79
- export async function quickTour(projectId) {
80
- const places = await getProjectPlaces(projectId);
81
- return {
82
- places: places.map(p => ({
83
- name: p.name,
84
- purpose: p.purpose || '',
85
- memoryCount: p.memoryCount,
86
- })),
87
- totalMemories: places.reduce((sum, p) => sum + p.memoryCount, 0),
88
- };
89
- }
90
- /**
91
- * Get context summary for a place (for injection)
92
- */
93
- export async function getPlaceContext(projectId, placeType, maxTokens = 50) {
94
- const walkResult = await walkPlace(projectId, placeType, {
95
- tokenBudget: maxTokens,
96
- compressWithToon: true,
97
- });
98
- if (!walkResult || walkResult.memories.length === 0) {
99
- return '';
100
- }
101
- const lines = walkResult.memories.map((m, i) => `${i + 1}. [${m.type}] ${m.content.substring(0, 100)}`);
102
- return `## ${walkResult.place.name}\n${lines.join('\n')}`;
103
- }
104
- /**
105
- * Full context for session start (all places)
106
- */
107
- export async function getFullWalkingContext(projectId, maxTokens = 170) {
108
- const results = await walkAllPlaces(projectId, {
109
- tokenBudget: Math.floor(maxTokens / 7), // Distribute across 7 places
110
- compressWithToon: true,
111
- });
112
- if (results.length === 0) {
113
- return 'No memories yet. Start building your spatial memory!';
114
- }
115
- const sections = results.map(r => {
116
- const lines = r.memories.slice(0, 3).map((m, i) => ` ${i + 1}. ${m.content.substring(0, 60)}...`).join('\n');
117
- return `## ${r.place.name}\n${lines}`;
118
- });
119
- return sections.join('\n\n');
120
- }
121
- //# sourceMappingURL=walking.js.map
@@ -1,17 +0,0 @@
1
- export interface ProjectRecord {
2
- id: string;
3
- name: string;
4
- path: string;
5
- description?: string | null;
6
- metadata?: Record<string, unknown> | null;
7
- }
8
- export declare function getProjectByPath(path: string): Promise<ProjectRecord | null>;
9
- export declare function ensureProject(path?: string): Promise<ProjectRecord | null>;
10
- export declare class ProjectNotFoundError extends Error {
11
- constructor(path: string);
12
- }
13
- export declare function requireProject(path: string): Promise<ProjectRecord>;
14
- export declare function getOrCreateProject(path?: string): Promise<ProjectRecord | null>;
15
- export declare function getAllProjects(): Promise<ProjectRecord[]>;
16
- export declare function getProjectById(id: string): Promise<ProjectRecord | null>;
17
- //# sourceMappingURL=projects.d.ts.map
@@ -1,108 +0,0 @@
1
- import { basename } from 'path';
2
- import { randomUUID } from 'crypto';
3
- import { eq } from 'drizzle-orm';
4
- import { getDb } from '../db/index.js';
5
- import { getSchema } from '../db/schema.js';
6
- import { serializeMetadata, deserializeMetadata } from './memory/serialization.js';
7
- import { createDatabaseClient } from './storage/database.js';
8
- export async function getProjectByPath(path) {
9
- try {
10
- const db = createDatabaseClient(await getDb());
11
- const schema = await getSchema();
12
- const rows = await db.select().from(schema.projects).where(eq(schema.projects.path, path)).limit(1);
13
- const row = rows[0];
14
- if (!row)
15
- return null;
16
- return normalizeProject(row);
17
- }
18
- catch (error) {
19
- throw error;
20
- }
21
- }
22
- export async function ensureProject(path) {
23
- if (!path)
24
- return null;
25
- const existing = await getProjectByPath(path);
26
- if (existing)
27
- return existing;
28
- const db = createDatabaseClient(await getDb());
29
- const schema = await getSchema();
30
- const id = randomUUID();
31
- const name = basename(path) || path;
32
- const metadata = { source: 'mcp' };
33
- await db.insert(schema.projects).values({
34
- id,
35
- name,
36
- path,
37
- metadata: serializeMetadata(metadata),
38
- });
39
- return { id, name, path, metadata };
40
- }
41
- export class ProjectNotFoundError extends Error {
42
- constructor(path) {
43
- super(`Project not found: ${path}`);
44
- this.name = 'ProjectNotFoundError';
45
- }
46
- }
47
- export async function requireProject(path) {
48
- const project = await getProjectByPath(path);
49
- if (!project) {
50
- throw new ProjectNotFoundError(path);
51
- }
52
- return project;
53
- }
54
- export async function getOrCreateProject(path) {
55
- if (!path)
56
- return null;
57
- const existing = await getProjectByPath(path);
58
- if (existing)
59
- return existing;
60
- const db = createDatabaseClient(await getDb());
61
- const schema = await getSchema();
62
- const id = randomUUID();
63
- const name = basename(path) || path;
64
- const metadata = { source: 'mcp' };
65
- await db.insert(schema.projects).values({
66
- id,
67
- name,
68
- path,
69
- metadata: serializeMetadata(metadata),
70
- });
71
- return { id, name, path, metadata };
72
- }
73
- function normalizeProject(row) {
74
- const metadata = deserializeMetadata(row.metadata ?? null);
75
- return {
76
- id: row.id,
77
- name: row.name,
78
- path: row.path,
79
- description: row.description ?? null,
80
- metadata,
81
- };
82
- }
83
- export async function getAllProjects() {
84
- try {
85
- const db = createDatabaseClient(await getDb());
86
- const schema = await getSchema();
87
- const rows = await db.select().from(schema.projects);
88
- return rows.map(normalizeProject);
89
- }
90
- catch (error) {
91
- throw error;
92
- }
93
- }
94
- export async function getProjectById(id) {
95
- try {
96
- const db = createDatabaseClient(await getDb());
97
- const schema = await getSchema();
98
- const rows = await db.select().from(schema.projects).where(eq(schema.projects.id, id)).limit(1);
99
- const row = rows[0];
100
- if (!row)
101
- return null;
102
- return normalizeProject(row);
103
- }
104
- catch (error) {
105
- throw error;
106
- }
107
- }
108
- //# sourceMappingURL=projects.js.map
@@ -1,11 +0,0 @@
1
- import { RedisClientType } from 'redis';
2
- export declare function getRedisClient(): Promise<RedisClientType>;
3
- export declare function closeRedisConnection(): Promise<void>;
4
- export declare function cacheGet<T>(key: string): Promise<T | null>;
5
- export declare function cacheSet<T>(key: string, value: T, ttlSeconds?: number): Promise<void>;
6
- export declare function cacheDelete(key: string): Promise<void>;
7
- export declare function cacheClear(pattern: string): Promise<void>;
8
- export declare function publish(channel: string, message: unknown): Promise<void>;
9
- export declare function subscribe(channel: string, callback: (message: unknown) => void): Promise<void>;
10
- export declare function checkRedisHealth(): Promise<boolean>;
11
- //# sourceMappingURL=redis.d.ts.map
@@ -1,69 +0,0 @@
1
- import { createClient } from 'redis';
2
- import { performRedisPublish } from './utils/memory-operations.js';
3
- import { logger } from './logger.js';
4
- const REDIS_URL = process.env.REDIS_URL || 'redis://localhost:6379';
5
- let client = null;
6
- export async function getRedisClient() {
7
- if (client && client.isOpen) {
8
- return client;
9
- }
10
- client = createClient({ url: REDIS_URL });
11
- client.on('error', (err) => {
12
- logger.error('Redis client error', err);
13
- });
14
- client.on('connect', () => {
15
- logger.info('Redis connected');
16
- });
17
- await client.connect();
18
- return client;
19
- }
20
- export async function closeRedisConnection() {
21
- if (client && client.isOpen) {
22
- await client.quit();
23
- client = null;
24
- }
25
- }
26
- // Cache helpers with TTL
27
- export async function cacheGet(key) {
28
- const redis = await getRedisClient();
29
- const value = await redis.get(key);
30
- return value ? JSON.parse(value) : null;
31
- }
32
- export async function cacheSet(key, value, ttlSeconds = 300) {
33
- const redis = await getRedisClient();
34
- await redis.setEx(key, ttlSeconds, JSON.stringify(value));
35
- }
36
- export async function cacheDelete(key) {
37
- const redis = await getRedisClient();
38
- await redis.del(key);
39
- }
40
- export async function cacheClear(pattern) {
41
- const redis = await getRedisClient();
42
- const keys = await redis.keys(pattern);
43
- if (keys.length > 0) {
44
- await redis.del(keys);
45
- }
46
- }
47
- // Pub/Sub for real-time sync
48
- export async function publish(channel, message) {
49
- await performRedisPublish(getRedisClient, channel, message);
50
- }
51
- export async function subscribe(channel, callback) {
52
- const subscriber = (await getRedisClient()).duplicate();
53
- await subscriber.connect();
54
- await subscriber.subscribe(channel, (message) => {
55
- callback(JSON.parse(message));
56
- });
57
- }
58
- // Check Redis health
59
- export async function checkRedisHealth() {
60
- try {
61
- const redis = await getRedisClient();
62
- const pong = await redis.ping();
63
- return pong === 'PONG';
64
- }
65
- catch {
66
- return false;
67
- }
68
- }
69
- //# sourceMappingURL=redis.js.map
@@ -1,96 +0,0 @@
1
- /**
2
- * ResponseFormatter - Unified response formatting for all Squish output contexts
3
- * @module core/responses
4
- */
5
- export type ResponseStatus = 'ok' | 'error';
6
- export interface BaseResponse<T = unknown> {
7
- status: ResponseStatus;
8
- message?: string;
9
- data?: T;
10
- error?: string;
11
- timestamp?: string;
12
- }
13
- export interface PaginatedResponse<T> extends BaseResponse<T[]> {
14
- count: number;
15
- total?: number;
16
- page?: number;
17
- limit?: number;
18
- }
19
- /**
20
- * Format options for web responses
21
- */
22
- export interface WebFormatOptions {
23
- statusCode?: number;
24
- pagination?: {
25
- total: number;
26
- page: number;
27
- limit: number;
28
- };
29
- }
30
- /**
31
- * Unified response formatter for all Squish output contexts
32
- */
33
- export declare class ResponseFormatter {
34
- /**
35
- * Generate ISO timestamp
36
- */
37
- private static getTimestamp;
38
- /**
39
- * Build base response with timestamp
40
- */
41
- private static buildBase;
42
- /**
43
- * Format response for CLI output (pretty-printed JSON)
44
- */
45
- static cli<T>(data: T, message?: string): string;
46
- /**
47
- * Format error for CLI and exit process
48
- */
49
- static cliError(error: Error): never;
50
- /**
51
- * Format successful response for Web API
52
- */
53
- static web<T>(data: T, message?: string, options?: WebFormatOptions): {
54
- status: number;
55
- body: BaseResponse<T>;
56
- };
57
- /**
58
- * Format error response for Web API
59
- */
60
- static webError(error: Error, options?: {
61
- statusCode?: number;
62
- log?: boolean;
63
- }): {
64
- status: number;
65
- body: BaseResponse;
66
- };
67
- /**
68
- * Format response for MCP tools
69
- */
70
- static mcp<T>(data: T, message?: string): {
71
- content: Array<{
72
- type: string;
73
- text: string;
74
- }>;
75
- };
76
- /**
77
- * Format error for MCP tools (throws McpError)
78
- */
79
- static mcpError(error: Error, context?: string): never;
80
- /**
81
- * Format response for algorithm handlers
82
- */
83
- static algorithm<T>(data: T, message: string, options?: {
84
- ok?: boolean;
85
- error?: string;
86
- }): BaseResponse<T>;
87
- /**
88
- * Convenience method for success responses
89
- */
90
- static success<T>(data: T, message?: string): BaseResponse<T>;
91
- /**
92
- * Convenience method for failure responses
93
- */
94
- static failure(message: string, error?: Error | string): BaseResponse;
95
- }
96
- //# sourceMappingURL=responses.d.ts.map
@@ -1,122 +0,0 @@
1
- /**
2
- * ResponseFormatter - Unified response formatting for all Squish output contexts
3
- * @module core/responses
4
- */
5
- /**
6
- * Unified response formatter for all Squish output contexts
7
- */
8
- export class ResponseFormatter {
9
- /**
10
- * Generate ISO timestamp
11
- */
12
- static getTimestamp() {
13
- return new Date().toISOString();
14
- }
15
- /**
16
- * Build base response with timestamp
17
- */
18
- static buildBase(status, message, data, error) {
19
- return {
20
- status,
21
- message,
22
- data,
23
- error,
24
- timestamp: this.getTimestamp(),
25
- };
26
- }
27
- // CLI Formatters
28
- /**
29
- * Format response for CLI output (pretty-printed JSON)
30
- */
31
- static cli(data, message) {
32
- const response = this.buildBase(data instanceof Error ? 'error' : 'ok', message, data);
33
- return JSON.stringify(response, null, 2);
34
- }
35
- /**
36
- * Format error for CLI and exit process
37
- */
38
- static cliError(error) {
39
- const response = this.buildBase('error', error.message, undefined, error.message);
40
- console.error(JSON.stringify(response, null, 2));
41
- process.exit(1);
42
- }
43
- // Web API Formatters
44
- /**
45
- * Format successful response for Web API
46
- */
47
- static web(data, message, options) {
48
- const body = this.buildBase('ok', message, data);
49
- // Add pagination metadata if provided
50
- if (options?.pagination) {
51
- body.count = options.pagination.total;
52
- body.total = options.pagination.total;
53
- body.page = options.pagination.page;
54
- body.limit = options.pagination.limit;
55
- }
56
- return {
57
- status: options?.statusCode ?? 200,
58
- body,
59
- };
60
- }
61
- /**
62
- * Format error response for Web API
63
- */
64
- static webError(error, options) {
65
- const statusCode = options?.statusCode ?? 500;
66
- const body = this.buildBase('error', error.message, undefined, error.message);
67
- if (options?.log !== false) {
68
- console.error(`[Web API Error ${statusCode}]:`, error.message);
69
- }
70
- return { status: statusCode, body };
71
- }
72
- // MCP Formatters
73
- /**
74
- * Format response for MCP tools
75
- */
76
- static mcp(data, message) {
77
- const response = this.buildBase('ok', message, data);
78
- return {
79
- content: [{ type: 'text', text: JSON.stringify(response, null, 2) }],
80
- };
81
- }
82
- /**
83
- * Format error for MCP tools (throws McpError)
84
- */
85
- static mcpError(error, context) {
86
- const message = context ? `${context}: ${error.message}` : error.message;
87
- const response = this.buildBase('error', message, undefined, message);
88
- // Import McpError dynamically to avoid requiring @modelcontextprotocol/sdk in non-MCP contexts
89
- try {
90
- const { McpError, ErrorCode } = require('@modelcontextprotocol/sdk/types.js');
91
- throw new McpError(ErrorCode.InternalError, JSON.stringify(response));
92
- }
93
- catch (e) {
94
- // If McpError is not available, throw a standard error with MCP-formatted message
95
- const mcpError = new Error(JSON.stringify(response));
96
- mcpError.name = 'McpError';
97
- throw mcpError;
98
- }
99
- }
100
- // Algorithm Handler Formatters
101
- /**
102
- * Format response for algorithm handlers
103
- */
104
- static algorithm(data, message, options) {
105
- const isOk = options?.ok !== false;
106
- return this.buildBase(isOk ? 'ok' : 'error', message, isOk ? data : undefined, options?.error);
107
- }
108
- /**
109
- * Convenience method for success responses
110
- */
111
- static success(data, message) {
112
- return this.buildBase('ok', message, data);
113
- }
114
- /**
115
- * Convenience method for failure responses
116
- */
117
- static failure(message, error) {
118
- const errorMessage = error instanceof Error ? error.message : error;
119
- return this.buildBase('error', message, undefined, errorMessage);
120
- }
121
- }
122
- //# sourceMappingURL=responses.js.map
@@ -1,32 +0,0 @@
1
- /** Cron Scheduler - Persistent cron-based job scheduling with fallback support */
2
- export type JobType = 'nightly' | 'weekly' | 'hourly';
3
- export type JobStatus = 'success' | 'failed' | 'skipped';
4
- export interface ScheduledJob {
5
- id: string;
6
- jobName: string;
7
- jobType: JobType;
8
- cronExpression: string;
9
- enabled: boolean;
10
- lastRunAt: Date | null;
11
- nextRunAt: Date | null;
12
- jobConfig: Record<string, unknown>;
13
- }
14
- export interface JobExecutionContext {
15
- jobId: string;
16
- jobName: string;
17
- jobType: JobType;
18
- config: Record<string, unknown>;
19
- startedAt: Date;
20
- }
21
- export type JobHandler = (context: JobExecutionContext) => Promise<{
22
- recordsProcessed: number;
23
- summary: Record<string, unknown>;
24
- }>;
25
- export declare function registerJobHandler(jobName: string, handler: JobHandler): void;
26
- export declare function initializeScheduler(): Promise<void>;
27
- export declare function scheduleJob(job: ScheduledJob): Promise<void>;
28
- export declare function executeJob(job: ScheduledJob): Promise<void>;
29
- export declare function getScheduledJobs(): Promise<ScheduledJob[]>;
30
- export declare function getOverdueJobs(): Promise<ScheduledJob[]>;
31
- export declare function stopAllJobs(): void;
32
- //# sourceMappingURL=cron-scheduler.d.ts.map