@stackmemoryai/stackmemory 0.8.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (793) hide show
  1. package/LICENSE +64 -0
  2. package/README.md +54 -4
  3. package/dist/src/agents/core/agent-task-manager.js +0 -1
  4. package/dist/src/agents/verifiers/base-verifier.js +0 -1
  5. package/dist/src/agents/verifiers/formatter-verifier.js +0 -1
  6. package/dist/src/agents/verifiers/llm-judge.js +0 -1
  7. package/dist/src/cli/auto-detect.js +0 -1
  8. package/dist/src/cli/claude-sm-danger.js +0 -1
  9. package/dist/src/cli/claude-sm.js +69 -373
  10. package/dist/src/cli/codex-sm-danger.js +0 -1
  11. package/dist/src/cli/codex-sm.js +28 -1
  12. package/dist/src/cli/commands/api.js +0 -1
  13. package/dist/src/cli/commands/auto-background.js +0 -1
  14. package/dist/src/cli/commands/cleanup-processes.js +0 -1
  15. package/dist/src/cli/commands/clear.js +0 -1
  16. package/dist/src/cli/commands/config.js +0 -1
  17. package/dist/src/cli/commands/context-rehydrate.js +0 -1
  18. package/dist/src/cli/commands/context.js +0 -1
  19. package/dist/src/cli/commands/daemon.js +0 -1
  20. package/dist/src/cli/commands/dashboard.js +4 -5
  21. package/dist/src/cli/commands/db.js +0 -1
  22. package/dist/src/cli/commands/decision.js +0 -1
  23. package/dist/src/cli/commands/discovery.js +0 -1
  24. package/dist/src/cli/commands/handoff.js +0 -1
  25. package/dist/src/cli/commands/hooks.js +0 -1
  26. package/dist/src/cli/commands/linear.js +0 -1
  27. package/dist/src/cli/commands/log.js +0 -1
  28. package/dist/src/cli/commands/login.js +0 -1
  29. package/dist/src/cli/commands/migrate.js +0 -1
  30. package/dist/src/cli/commands/model.js +0 -1
  31. package/dist/src/cli/commands/onboard.js +22 -7
  32. package/dist/src/cli/commands/ping.js +0 -1
  33. package/dist/src/cli/commands/projects.js +0 -1
  34. package/dist/src/cli/commands/ralph.js +0 -1
  35. package/dist/src/cli/commands/retrieval.js +0 -1
  36. package/dist/src/cli/commands/search.js +0 -1
  37. package/dist/src/cli/commands/service.js +0 -1
  38. package/dist/src/cli/commands/session.js +0 -1
  39. package/dist/src/cli/commands/setup.js +1 -6
  40. package/dist/src/cli/commands/shell.js +0 -1
  41. package/dist/src/cli/commands/signup.js +0 -1
  42. package/dist/src/cli/commands/skills.js +4 -3
  43. package/dist/src/cli/commands/storage-tier.js +0 -1
  44. package/dist/src/cli/commands/sweep.js +0 -1
  45. package/dist/src/cli/commands/tasks.js +0 -1
  46. package/dist/src/cli/commands/worktree.js +10 -5
  47. package/dist/src/cli/index.js +9 -76
  48. package/dist/src/cli/opencode-sm.js +28 -1
  49. package/dist/src/cli/utils/viewer.js +0 -1
  50. package/dist/src/core/config/config-manager.js +0 -1
  51. package/dist/src/core/config/feature-flags.js +1 -14
  52. package/dist/src/core/config/storage-config.js +0 -1
  53. package/dist/src/core/config/types.js +0 -1
  54. package/dist/src/core/context/auto-context.js +0 -1
  55. package/dist/src/core/context/dual-stack-manager.js +0 -1
  56. package/dist/src/core/context/enhanced-rehydration.js +0 -2
  57. package/dist/src/core/context/frame-database.js +60 -6
  58. package/dist/src/core/context/frame-digest.js +0 -1
  59. package/dist/src/core/context/frame-handoff-manager.js +0 -1
  60. package/dist/src/core/context/frame-lifecycle-hooks.js +0 -1
  61. package/dist/src/core/context/frame-recovery.js +0 -1
  62. package/dist/src/core/context/frame-stack.js +0 -1
  63. package/dist/src/core/context/frame-types.js +0 -1
  64. package/dist/src/core/context/index.js +0 -1
  65. package/dist/src/core/context/permission-manager.js +0 -1
  66. package/dist/src/core/context/recursive-context-manager.js +3 -2
  67. package/dist/src/core/context/refactored-frame-manager.js +0 -1
  68. package/dist/src/core/context/shared-context-layer.js +0 -1
  69. package/dist/src/core/context/stack-merge-resolver.js +0 -1
  70. package/dist/src/core/context/validation.js +0 -1
  71. package/dist/src/core/database/batch-operations.js +0 -1
  72. package/dist/src/core/database/connection-pool.js +0 -1
  73. package/dist/src/core/database/database-adapter.js +0 -1
  74. package/dist/src/core/database/embedding-provider-factory.js +0 -1
  75. package/dist/src/core/database/embedding-provider.js +0 -1
  76. package/dist/src/core/database/migration-manager.js +0 -1
  77. package/dist/src/core/database/ollama-embedding-provider.js +0 -1
  78. package/dist/src/core/database/openai-embedding-provider.js +0 -1
  79. package/dist/src/core/database/query-cache.js +0 -1
  80. package/dist/src/core/database/query-router.js +0 -1
  81. package/dist/src/core/database/sqlite-adapter.js +18 -108
  82. package/dist/src/core/database/transformers-embedding-provider.js +0 -1
  83. package/dist/src/core/digest/enhanced-hybrid-digest.js +0 -1
  84. package/dist/src/core/digest/frame-digest-integration.js +0 -1
  85. package/dist/src/core/digest/hybrid-digest-generator.js +0 -1
  86. package/dist/src/core/digest/index.js +0 -1
  87. package/dist/src/core/digest/types.js +0 -1
  88. package/dist/src/core/errors/error-utils.js +0 -1
  89. package/dist/src/core/errors/index.js +0 -1
  90. package/dist/src/core/errors/recovery.js +0 -1
  91. package/dist/src/core/execution/parallel-executor.js +0 -1
  92. package/dist/src/core/extensions/custom-tools.js +0 -1
  93. package/dist/src/core/extensions/index.js +0 -1
  94. package/dist/src/core/extensions/loader.js +0 -1
  95. package/dist/src/core/extensions/plugin-system.js +0 -1
  96. package/dist/src/core/extensions/provider-adapter.js +0 -1
  97. package/dist/src/core/extensions/sandbox-runtime.js +0 -1
  98. package/dist/src/core/extensions/types.js +0 -1
  99. package/dist/src/core/frame/workflow-templates.js +0 -1
  100. package/dist/src/core/merge/conflict-detector.js +0 -1
  101. package/dist/src/core/merge/index.js +0 -1
  102. package/dist/src/core/merge/resolution-engine.js +0 -1
  103. package/dist/src/core/merge/stack-diff.js +0 -1
  104. package/dist/src/core/merge/types.js +0 -1
  105. package/dist/src/core/merge/unified-merge-resolver.js +0 -1
  106. package/dist/src/core/models/fallback-monitor.js +0 -1
  107. package/dist/src/core/models/model-router.js +0 -1
  108. package/dist/src/core/monitoring/error-handler.js +0 -1
  109. package/dist/src/core/monitoring/logger.js +0 -1
  110. package/dist/src/core/monitoring/metrics.js +0 -1
  111. package/dist/src/core/monitoring/progress-tracker.js +0 -1
  112. package/dist/src/core/monitoring/session-monitor.js +0 -1
  113. package/dist/src/core/performance/context-cache.js +0 -1
  114. package/dist/src/core/performance/index.js +0 -1
  115. package/dist/src/core/performance/lazy-context-loader.js +3 -8
  116. package/dist/src/core/performance/monitor.js +0 -1
  117. package/dist/src/core/performance/optimized-frame-context.js +0 -1
  118. package/dist/src/core/performance/performance-benchmark.js +0 -1
  119. package/dist/src/core/performance/performance-profiler.js +0 -1
  120. package/dist/src/core/performance/streaming-jsonl-parser.js +0 -1
  121. package/dist/src/core/persistence/postgres-adapter.js +0 -1
  122. package/dist/src/core/projects/project-isolation.js +0 -1
  123. package/dist/src/core/projects/project-manager.js +0 -1
  124. package/dist/src/core/query/query-parser.js +0 -1
  125. package/dist/src/core/query/query-templates.js +0 -1
  126. package/dist/src/core/retrieval/context-retriever.js +0 -1
  127. package/dist/src/core/retrieval/index.js +0 -1
  128. package/dist/src/core/retrieval/llm-context-retrieval.js +0 -1
  129. package/dist/src/core/retrieval/llm-provider.js +0 -1
  130. package/dist/src/core/retrieval/privacy-filter.js +0 -1
  131. package/dist/src/core/retrieval/retrieval-audit.js +0 -1
  132. package/dist/src/core/retrieval/summary-generator.js +15 -6
  133. package/dist/src/core/retrieval/types.js +0 -1
  134. package/dist/src/core/retrieval/unified-context-assembler.js +0 -1
  135. package/dist/src/core/security/index.js +0 -1
  136. package/dist/src/core/security/input-sanitizer.js +0 -1
  137. package/dist/src/core/session/clear-survival.js +0 -1
  138. package/dist/src/core/session/enhanced-handoff.js +0 -1
  139. package/dist/src/core/session/handoff-generator.js +0 -1
  140. package/dist/src/core/session/index.js +0 -1
  141. package/dist/src/core/session/session-manager.js +0 -1
  142. package/dist/src/core/skills/index.js +0 -1
  143. package/dist/src/core/skills/skill-storage.js +0 -1
  144. package/dist/src/core/skills/types.js +0 -1
  145. package/dist/src/core/storage/chromadb-adapter.js +0 -1
  146. package/dist/src/core/storage/infinite-storage.js +0 -1
  147. package/dist/src/core/storage/project-registry.js +0 -1
  148. package/dist/src/core/storage/remote-storage.js +4 -2
  149. package/dist/src/core/storage/storage-tier-manager.js +0 -1
  150. package/dist/src/core/storage/two-tier-storage.js +0 -1
  151. package/dist/src/core/trace/cli-trace-wrapper.js +0 -1
  152. package/dist/src/core/trace/db-trace-wrapper.js +0 -1
  153. package/dist/src/core/trace/debug-trace.js +0 -1
  154. package/dist/src/core/trace/index.js +0 -1
  155. package/dist/src/core/trace/linear-api-wrapper.js +0 -1
  156. package/dist/src/core/trace/trace-detector.js +0 -1
  157. package/dist/src/core/trace/trace-store.js +4 -5
  158. package/dist/src/core/trace/types.js +0 -1
  159. package/dist/src/core/types.js +0 -1
  160. package/dist/src/core/utils/async-mutex.js +0 -1
  161. package/dist/src/core/utils/compression.js +0 -1
  162. package/dist/src/core/utils/update-checker.js +0 -1
  163. package/dist/src/core/worktree/worktree-manager.js +0 -1
  164. package/dist/src/daemon/daemon-config.js +0 -1
  165. package/dist/src/daemon/services/context-service.js +0 -1
  166. package/dist/src/daemon/services/linear-service.js +0 -1
  167. package/dist/src/daemon/services/maintenance-service.js +0 -1
  168. package/dist/src/daemon/services/memory-service.js +0 -1
  169. package/dist/src/daemon/session-daemon.js +0 -1
  170. package/dist/src/daemon/unified-daemon.js +0 -1
  171. package/dist/src/features/analytics/api/analytics-api.js +0 -1
  172. package/dist/src/features/analytics/core/analytics-service.js +1 -2
  173. package/dist/src/features/analytics/index.js +0 -1
  174. package/dist/src/features/analytics/queries/metrics-queries.js +8 -9
  175. package/dist/src/features/analytics/types/metrics.js +0 -1
  176. package/dist/src/features/browser/browser-mcp.js +0 -1
  177. package/dist/src/features/sweep/index.js +0 -1
  178. package/dist/src/features/sweep/prediction-client.js +0 -1
  179. package/dist/src/features/sweep/prompt-builder.js +0 -1
  180. package/dist/src/features/sweep/pty-wrapper.js +11 -2
  181. package/dist/src/features/sweep/state-watcher.js +0 -1
  182. package/dist/src/features/sweep/status-bar.js +0 -1
  183. package/dist/src/features/sweep/sweep-server-manager.js +0 -1
  184. package/dist/src/features/sweep/tab-interceptor.js +0 -1
  185. package/dist/src/features/sweep/types.js +0 -1
  186. package/dist/src/features/tasks/linear-task-manager.js +0 -1
  187. package/dist/src/features/tasks/task-aware-context.js +0 -1
  188. package/dist/src/features/tui/simple-monitor.js +0 -1
  189. package/dist/src/features/tui/swarm-monitor.js +0 -1
  190. package/dist/src/features/web/client/stores/task-store.js +0 -1
  191. package/dist/src/features/web/server/index.js +0 -1
  192. package/dist/src/features/workers/tmux-manager.js +0 -1
  193. package/dist/src/features/workers/worker-registry.js +0 -1
  194. package/dist/src/hooks/auto-background.js +0 -1
  195. package/dist/src/hooks/config.js +0 -1
  196. package/dist/src/hooks/daemon.js +0 -1
  197. package/dist/src/hooks/diffmem-hooks.js +0 -1
  198. package/dist/src/hooks/events.js +0 -1
  199. package/dist/src/hooks/index.js +0 -4
  200. package/dist/src/hooks/linear-task-picker.js +0 -1
  201. package/dist/src/hooks/schemas.js +0 -118
  202. package/dist/src/hooks/secure-fs.js +0 -1
  203. package/dist/src/hooks/security-logger.js +0 -1
  204. package/dist/src/hooks/session-summary.js +0 -1
  205. package/dist/src/index.js +0 -1
  206. package/dist/src/integrations/anthropic/client.js +0 -1
  207. package/dist/src/integrations/claude-code/agent-bridge.js +0 -1
  208. package/dist/src/integrations/claude-code/enhanced-pre-clear-hooks.js +0 -1
  209. package/dist/src/integrations/claude-code/lifecycle-hooks.js +0 -1
  210. package/dist/src/integrations/claude-code/post-task-hooks.js +0 -1
  211. package/dist/src/integrations/claude-code/subagent-client-stub.js +0 -1
  212. package/dist/src/integrations/claude-code/subagent-client.js +0 -1
  213. package/dist/src/integrations/claude-code/task-coordinator.js +0 -1
  214. package/dist/src/integrations/diffmem/client.js +0 -1
  215. package/dist/src/integrations/diffmem/config.js +0 -1
  216. package/dist/src/integrations/diffmem/index.js +0 -1
  217. package/dist/src/integrations/diffmem/types.js +0 -1
  218. package/dist/src/integrations/linear/auth.js +0 -1
  219. package/dist/src/integrations/linear/auto-sync.js +0 -1
  220. package/dist/src/integrations/linear/client.js +0 -1
  221. package/dist/src/integrations/linear/config.js +0 -1
  222. package/dist/src/integrations/linear/migration.js +0 -1
  223. package/dist/src/integrations/linear/oauth-server.js +0 -1
  224. package/dist/src/integrations/linear/rest-client.js +0 -1
  225. package/dist/src/integrations/linear/sync-manager.js +0 -1
  226. package/dist/src/integrations/linear/sync-service.js +0 -1
  227. package/dist/src/integrations/linear/sync.js +0 -1
  228. package/dist/src/integrations/linear/types.js +0 -1
  229. package/dist/src/integrations/linear/unified-sync.js +0 -1
  230. package/dist/src/integrations/linear/webhook-handler.js +0 -1
  231. package/dist/src/integrations/linear/webhook-server.js +0 -1
  232. package/dist/src/integrations/linear/webhook.js +0 -1
  233. package/dist/src/integrations/mcp/handlers/code-execution-handlers.js +0 -1
  234. package/dist/src/integrations/mcp/handlers/context-handlers.js +43 -30
  235. package/dist/src/integrations/mcp/handlers/diffmem-handlers.js +0 -1
  236. package/dist/src/integrations/mcp/handlers/discovery-handlers.js +0 -1
  237. package/dist/src/integrations/mcp/handlers/index.js +1 -3
  238. package/dist/src/integrations/mcp/handlers/linear-handlers.js +24 -61
  239. package/dist/src/integrations/mcp/handlers/skill-handlers.js +0 -1
  240. package/dist/src/integrations/mcp/handlers/task-handlers.js +0 -1
  241. package/dist/src/integrations/mcp/handlers/trace-handlers.js +0 -1
  242. package/dist/src/integrations/mcp/index.js +0 -1
  243. package/dist/src/integrations/mcp/middleware/tool-scoring.js +3 -2
  244. package/dist/src/integrations/mcp/pending-utils.js +0 -1
  245. package/dist/src/integrations/mcp/refactored-server.js +0 -1
  246. package/dist/src/integrations/mcp/remote-server.js +0 -1
  247. package/dist/src/integrations/mcp/schemas.js +0 -1
  248. package/dist/src/integrations/mcp/server.js +20 -24
  249. package/dist/src/integrations/mcp/tool-definitions-code.js +0 -1
  250. package/dist/src/integrations/mcp/tool-definitions.js +0 -1
  251. package/dist/src/integrations/ralph/bridge/ralph-stackmemory-bridge.js +0 -1
  252. package/dist/src/integrations/ralph/context/context-budget-manager.js +0 -1
  253. package/dist/src/integrations/ralph/context/stackmemory-context-loader.js +0 -1
  254. package/dist/src/integrations/ralph/coordination/enhanced-coordination.js +0 -1
  255. package/dist/src/integrations/ralph/index.js +0 -1
  256. package/dist/src/integrations/ralph/learning/pattern-learner.js +0 -1
  257. package/dist/src/integrations/ralph/lifecycle/iteration-lifecycle.js +5 -5
  258. package/dist/src/integrations/ralph/monitoring/swarm-dashboard.js +0 -1
  259. package/dist/src/integrations/ralph/monitoring/swarm-registry.js +0 -1
  260. package/dist/src/integrations/ralph/orchestration/multi-loop-orchestrator.js +0 -1
  261. package/dist/src/integrations/ralph/patterns/compounding-engineering-pattern.js +0 -1
  262. package/dist/src/integrations/ralph/patterns/extended-coherence-sessions.js +0 -1
  263. package/dist/src/integrations/ralph/patterns/oracle-worker-pattern.js +0 -1
  264. package/dist/src/integrations/ralph/performance/performance-optimizer.js +0 -1
  265. package/dist/src/integrations/ralph/recovery/crash-recovery.js +0 -1
  266. package/dist/src/integrations/ralph/state/state-reconciler.js +25 -9
  267. package/dist/src/integrations/ralph/swarm/git-workflow-manager.js +0 -1
  268. package/dist/src/integrations/ralph/swarm/swarm-coordinator.js +0 -1
  269. package/dist/src/integrations/ralph/types.js +0 -1
  270. package/dist/src/integrations/ralph/visualization/ralph-debugger.js +0 -1
  271. package/dist/src/mcp/stackmemory-mcp-server.js +0 -1
  272. package/dist/src/middleware/exponential-rate-limiter.js +0 -1
  273. package/dist/src/models/user.model.js +0 -1
  274. package/dist/src/orchestrators/multimodal/constants.js +0 -1
  275. package/dist/src/orchestrators/multimodal/harness.js +0 -1
  276. package/dist/src/orchestrators/multimodal/providers.js +0 -1
  277. package/dist/src/orchestrators/multimodal/types.js +0 -1
  278. package/dist/src/orchestrators/multimodal/utils.js +0 -1
  279. package/dist/src/servers/production/auth-middleware.js +0 -1
  280. package/dist/src/services/config-service.js +0 -1
  281. package/dist/src/services/context-service.js +0 -1
  282. package/dist/src/skills/api-discovery.js +0 -1
  283. package/dist/src/skills/api-skill.js +0 -1
  284. package/dist/src/skills/claude-skills.js +0 -1
  285. package/dist/src/skills/dashboard-launcher.js +0 -1
  286. package/dist/src/skills/linear-task-runner.js +0 -1
  287. package/dist/src/skills/recursive-agent-orchestrator.js +0 -1
  288. package/dist/src/skills/repo-ingestion-skill.js +0 -1
  289. package/dist/src/skills/spec-generator-skill.js +0 -1
  290. package/dist/src/skills/unified-rlm-orchestrator.js +0 -1
  291. package/dist/src/types/task.js +0 -1
  292. package/dist/src/utils/env.js +0 -1
  293. package/dist/src/utils/formatting.js +0 -1
  294. package/dist/src/utils/process-cleanup.js +0 -1
  295. package/package.json +33 -8
  296. package/scripts/smoke-init-db.sh +77 -0
  297. package/dist/scripts/benchmark-performance.js +0 -48
  298. package/dist/scripts/benchmark-performance.js.map +0 -7
  299. package/dist/scripts/check-redis.js +0 -42
  300. package/dist/scripts/check-redis.js.map +0 -7
  301. package/dist/scripts/initialize.js +0 -183
  302. package/dist/scripts/initialize.js.map +0 -7
  303. package/dist/scripts/list-linear-tasks.js +0 -124
  304. package/dist/scripts/list-linear-tasks.js.map +0 -7
  305. package/dist/scripts/measure-handoff-impact.js +0 -340
  306. package/dist/scripts/measure-handoff-impact.js.map +0 -7
  307. package/dist/scripts/query-chromadb.js +0 -160
  308. package/dist/scripts/query-chromadb.js.map +0 -7
  309. package/dist/scripts/show-linear-summary.js +0 -119
  310. package/dist/scripts/show-linear-summary.js.map +0 -7
  311. package/dist/scripts/simple-swarm-demo.js +0 -90
  312. package/dist/scripts/simple-swarm-demo.js.map +0 -7
  313. package/dist/scripts/status.js +0 -155
  314. package/dist/scripts/status.js.map +0 -7
  315. package/dist/scripts/test-chromadb-sync.js +0 -192
  316. package/dist/scripts/test-chromadb-sync.js.map +0 -7
  317. package/dist/scripts/test-ralph-iteration-fix.js +0 -86
  318. package/dist/scripts/test-ralph-iteration-fix.js.map +0 -7
  319. package/dist/scripts/test-ralph-iterations.js +0 -121
  320. package/dist/scripts/test-ralph-iterations.js.map +0 -7
  321. package/dist/scripts/test-redis-storage.js +0 -389
  322. package/dist/scripts/test-redis-storage.js.map +0 -7
  323. package/dist/scripts/test-simple-ralph-state-sync.js +0 -115
  324. package/dist/scripts/test-simple-ralph-state-sync.js.map +0 -7
  325. package/dist/scripts/test-swarm-fixes.js +0 -125
  326. package/dist/scripts/test-swarm-fixes.js.map +0 -7
  327. package/dist/scripts/test-swarm-tui.js +0 -23
  328. package/dist/scripts/test-swarm-tui.js.map +0 -7
  329. package/dist/scripts/test-tui-shortcuts.js +0 -52
  330. package/dist/scripts/test-tui-shortcuts.js.map +0 -7
  331. package/dist/scripts/validate-tui-shortcuts.js +0 -60
  332. package/dist/scripts/validate-tui-shortcuts.js.map +0 -7
  333. package/dist/src/agents/core/agent-task-manager.js.map +0 -7
  334. package/dist/src/agents/verifiers/base-verifier.js.map +0 -7
  335. package/dist/src/agents/verifiers/formatter-verifier.js.map +0 -7
  336. package/dist/src/agents/verifiers/llm-judge.js.map +0 -7
  337. package/dist/src/cli/auto-detect.js.map +0 -7
  338. package/dist/src/cli/claude-sm-danger.js.map +0 -7
  339. package/dist/src/cli/claude-sm.js.map +0 -7
  340. package/dist/src/cli/codex-sm-danger.js.map +0 -7
  341. package/dist/src/cli/codex-sm.js.map +0 -7
  342. package/dist/src/cli/commands/api.js.map +0 -7
  343. package/dist/src/cli/commands/auto-background.js.map +0 -7
  344. package/dist/src/cli/commands/cleanup-processes.js.map +0 -7
  345. package/dist/src/cli/commands/clear.js.map +0 -7
  346. package/dist/src/cli/commands/config.js.map +0 -7
  347. package/dist/src/cli/commands/context-rehydrate.js.map +0 -7
  348. package/dist/src/cli/commands/context.js.map +0 -7
  349. package/dist/src/cli/commands/daemon.js.map +0 -7
  350. package/dist/src/cli/commands/dashboard.js.map +0 -7
  351. package/dist/src/cli/commands/db.js.map +0 -7
  352. package/dist/src/cli/commands/decision.js.map +0 -7
  353. package/dist/src/cli/commands/discovery.js.map +0 -7
  354. package/dist/src/cli/commands/handoff.js.map +0 -7
  355. package/dist/src/cli/commands/hooks.js.map +0 -7
  356. package/dist/src/cli/commands/linear.js.map +0 -7
  357. package/dist/src/cli/commands/log.js.map +0 -7
  358. package/dist/src/cli/commands/login.js.map +0 -7
  359. package/dist/src/cli/commands/migrate.js.map +0 -7
  360. package/dist/src/cli/commands/model.js.map +0 -7
  361. package/dist/src/cli/commands/onboard.js.map +0 -7
  362. package/dist/src/cli/commands/ping.js.map +0 -7
  363. package/dist/src/cli/commands/projects.js.map +0 -7
  364. package/dist/src/cli/commands/ralph.js.map +0 -7
  365. package/dist/src/cli/commands/retrieval.js.map +0 -7
  366. package/dist/src/cli/commands/search.js.map +0 -7
  367. package/dist/src/cli/commands/service.js.map +0 -7
  368. package/dist/src/cli/commands/session.js.map +0 -7
  369. package/dist/src/cli/commands/settings.js +0 -306
  370. package/dist/src/cli/commands/settings.js.map +0 -7
  371. package/dist/src/cli/commands/setup.js.map +0 -7
  372. package/dist/src/cli/commands/shell.js.map +0 -7
  373. package/dist/src/cli/commands/signup.js.map +0 -7
  374. package/dist/src/cli/commands/skills.js.map +0 -7
  375. package/dist/src/cli/commands/sms-notify.js +0 -795
  376. package/dist/src/cli/commands/sms-notify.js.map +0 -7
  377. package/dist/src/cli/commands/storage-tier.js.map +0 -7
  378. package/dist/src/cli/commands/sweep.js.map +0 -7
  379. package/dist/src/cli/commands/tasks.js.map +0 -7
  380. package/dist/src/cli/commands/worktree.js.map +0 -7
  381. package/dist/src/cli/index.js.map +0 -7
  382. package/dist/src/cli/opencode-sm.js.map +0 -7
  383. package/dist/src/cli/utils/viewer.js.map +0 -7
  384. package/dist/src/core/config/config-manager.js.map +0 -7
  385. package/dist/src/core/config/feature-flags.js.map +0 -7
  386. package/dist/src/core/config/storage-config.js.map +0 -7
  387. package/dist/src/core/config/types.js.map +0 -7
  388. package/dist/src/core/context/auto-context.js.map +0 -7
  389. package/dist/src/core/context/dual-stack-manager.js.map +0 -7
  390. package/dist/src/core/context/enhanced-rehydration.js.map +0 -7
  391. package/dist/src/core/context/frame-database.js.map +0 -7
  392. package/dist/src/core/context/frame-digest.js.map +0 -7
  393. package/dist/src/core/context/frame-handoff-manager.js.map +0 -7
  394. package/dist/src/core/context/frame-lifecycle-hooks.js.map +0 -7
  395. package/dist/src/core/context/frame-recovery.js.map +0 -7
  396. package/dist/src/core/context/frame-stack.js.map +0 -7
  397. package/dist/src/core/context/frame-types.js.map +0 -7
  398. package/dist/src/core/context/index.js.map +0 -7
  399. package/dist/src/core/context/permission-manager.js.map +0 -7
  400. package/dist/src/core/context/recursive-context-manager.js.map +0 -7
  401. package/dist/src/core/context/refactored-frame-manager.js.map +0 -7
  402. package/dist/src/core/context/shared-context-layer.js.map +0 -7
  403. package/dist/src/core/context/stack-merge-resolver.js.map +0 -7
  404. package/dist/src/core/context/validation.js.map +0 -7
  405. package/dist/src/core/database/batch-operations.js.map +0 -7
  406. package/dist/src/core/database/connection-pool.js.map +0 -7
  407. package/dist/src/core/database/database-adapter.js.map +0 -7
  408. package/dist/src/core/database/embedding-provider-factory.js.map +0 -7
  409. package/dist/src/core/database/embedding-provider.js.map +0 -7
  410. package/dist/src/core/database/migration-manager.js.map +0 -7
  411. package/dist/src/core/database/ollama-embedding-provider.js.map +0 -7
  412. package/dist/src/core/database/openai-embedding-provider.js.map +0 -7
  413. package/dist/src/core/database/query-cache.js.map +0 -7
  414. package/dist/src/core/database/query-router.js.map +0 -7
  415. package/dist/src/core/database/sqlite-adapter.js.map +0 -7
  416. package/dist/src/core/database/transformers-embedding-provider.js.map +0 -7
  417. package/dist/src/core/digest/enhanced-hybrid-digest.js.map +0 -7
  418. package/dist/src/core/digest/frame-digest-integration.js.map +0 -7
  419. package/dist/src/core/digest/hybrid-digest-generator.js.map +0 -7
  420. package/dist/src/core/digest/index.js.map +0 -7
  421. package/dist/src/core/digest/types.js.map +0 -7
  422. package/dist/src/core/errors/error-utils.js.map +0 -7
  423. package/dist/src/core/errors/index.js.map +0 -7
  424. package/dist/src/core/errors/recovery.js.map +0 -7
  425. package/dist/src/core/execution/parallel-executor.js.map +0 -7
  426. package/dist/src/core/extensions/custom-tools.js.map +0 -7
  427. package/dist/src/core/extensions/index.js.map +0 -7
  428. package/dist/src/core/extensions/loader.js.map +0 -7
  429. package/dist/src/core/extensions/plugin-system.js.map +0 -7
  430. package/dist/src/core/extensions/provider-adapter.js.map +0 -7
  431. package/dist/src/core/extensions/sandbox-runtime.js.map +0 -7
  432. package/dist/src/core/extensions/types.js.map +0 -7
  433. package/dist/src/core/frame/workflow-templates.js.map +0 -7
  434. package/dist/src/core/merge/conflict-detector.js.map +0 -7
  435. package/dist/src/core/merge/index.js.map +0 -7
  436. package/dist/src/core/merge/resolution-engine.js.map +0 -7
  437. package/dist/src/core/merge/stack-diff.js.map +0 -7
  438. package/dist/src/core/merge/types.js.map +0 -7
  439. package/dist/src/core/merge/unified-merge-resolver.js.map +0 -7
  440. package/dist/src/core/models/fallback-monitor.js.map +0 -7
  441. package/dist/src/core/models/model-router.js.map +0 -7
  442. package/dist/src/core/monitoring/error-handler.js.map +0 -7
  443. package/dist/src/core/monitoring/logger.js.map +0 -7
  444. package/dist/src/core/monitoring/metrics.js.map +0 -7
  445. package/dist/src/core/monitoring/progress-tracker.js.map +0 -7
  446. package/dist/src/core/monitoring/session-monitor.js.map +0 -7
  447. package/dist/src/core/performance/context-cache.js.map +0 -7
  448. package/dist/src/core/performance/index.js.map +0 -7
  449. package/dist/src/core/performance/lazy-context-loader.js.map +0 -7
  450. package/dist/src/core/performance/monitor.js.map +0 -7
  451. package/dist/src/core/performance/optimized-frame-context.js.map +0 -7
  452. package/dist/src/core/performance/performance-benchmark.js.map +0 -7
  453. package/dist/src/core/performance/performance-profiler.js.map +0 -7
  454. package/dist/src/core/performance/streaming-jsonl-parser.js.map +0 -7
  455. package/dist/src/core/persistence/postgres-adapter.js.map +0 -7
  456. package/dist/src/core/projects/project-isolation.js.map +0 -7
  457. package/dist/src/core/projects/project-manager.js.map +0 -7
  458. package/dist/src/core/query/query-parser.js.map +0 -7
  459. package/dist/src/core/query/query-templates.js.map +0 -7
  460. package/dist/src/core/retrieval/context-retriever.js.map +0 -7
  461. package/dist/src/core/retrieval/index.js.map +0 -7
  462. package/dist/src/core/retrieval/llm-context-retrieval.js.map +0 -7
  463. package/dist/src/core/retrieval/llm-provider.js.map +0 -7
  464. package/dist/src/core/retrieval/privacy-filter.js.map +0 -7
  465. package/dist/src/core/retrieval/retrieval-audit.js.map +0 -7
  466. package/dist/src/core/retrieval/summary-generator.js.map +0 -7
  467. package/dist/src/core/retrieval/types.js.map +0 -7
  468. package/dist/src/core/retrieval/unified-context-assembler.js.map +0 -7
  469. package/dist/src/core/security/index.js.map +0 -7
  470. package/dist/src/core/security/input-sanitizer.js.map +0 -7
  471. package/dist/src/core/session/clear-survival.js.map +0 -7
  472. package/dist/src/core/session/enhanced-handoff.js.map +0 -7
  473. package/dist/src/core/session/handoff-generator.js.map +0 -7
  474. package/dist/src/core/session/index.js.map +0 -7
  475. package/dist/src/core/session/session-manager.js.map +0 -7
  476. package/dist/src/core/skills/index.js.map +0 -7
  477. package/dist/src/core/skills/skill-storage.js.map +0 -7
  478. package/dist/src/core/skills/types.js.map +0 -7
  479. package/dist/src/core/storage/chromadb-adapter.js.map +0 -7
  480. package/dist/src/core/storage/infinite-storage.js.map +0 -7
  481. package/dist/src/core/storage/project-registry.js.map +0 -7
  482. package/dist/src/core/storage/remote-storage.js.map +0 -7
  483. package/dist/src/core/storage/storage-tier-manager.js.map +0 -7
  484. package/dist/src/core/storage/two-tier-storage.js.map +0 -7
  485. package/dist/src/core/trace/cli-trace-wrapper.js.map +0 -7
  486. package/dist/src/core/trace/db-trace-wrapper.js.map +0 -7
  487. package/dist/src/core/trace/debug-trace.js.map +0 -7
  488. package/dist/src/core/trace/index.js.map +0 -7
  489. package/dist/src/core/trace/linear-api-wrapper.js.map +0 -7
  490. package/dist/src/core/trace/trace-detector.js.map +0 -7
  491. package/dist/src/core/trace/trace-store.js.map +0 -7
  492. package/dist/src/core/trace/types.js.map +0 -7
  493. package/dist/src/core/types.js.map +0 -7
  494. package/dist/src/core/utils/async-mutex.js.map +0 -7
  495. package/dist/src/core/utils/compression.js.map +0 -7
  496. package/dist/src/core/utils/update-checker.js.map +0 -7
  497. package/dist/src/core/worktree/worktree-manager.js.map +0 -7
  498. package/dist/src/daemon/daemon-config.js.map +0 -7
  499. package/dist/src/daemon/services/context-service.js.map +0 -7
  500. package/dist/src/daemon/services/linear-service.js.map +0 -7
  501. package/dist/src/daemon/services/maintenance-service.js.map +0 -7
  502. package/dist/src/daemon/services/memory-service.js.map +0 -7
  503. package/dist/src/daemon/session-daemon.js.map +0 -7
  504. package/dist/src/daemon/unified-daemon.js.map +0 -7
  505. package/dist/src/features/analytics/api/analytics-api.js.map +0 -7
  506. package/dist/src/features/analytics/core/analytics-service.js.map +0 -7
  507. package/dist/src/features/analytics/index.js.map +0 -7
  508. package/dist/src/features/analytics/queries/metrics-queries.js.map +0 -7
  509. package/dist/src/features/analytics/types/metrics.js.map +0 -7
  510. package/dist/src/features/browser/browser-mcp.js.map +0 -7
  511. package/dist/src/features/sweep/index.js.map +0 -7
  512. package/dist/src/features/sweep/prediction-client.js.map +0 -7
  513. package/dist/src/features/sweep/prompt-builder.js.map +0 -7
  514. package/dist/src/features/sweep/pty-wrapper.js.map +0 -7
  515. package/dist/src/features/sweep/state-watcher.js.map +0 -7
  516. package/dist/src/features/sweep/status-bar.js.map +0 -7
  517. package/dist/src/features/sweep/sweep-server-manager.js.map +0 -7
  518. package/dist/src/features/sweep/tab-interceptor.js.map +0 -7
  519. package/dist/src/features/sweep/types.js.map +0 -7
  520. package/dist/src/features/tasks/linear-task-manager.js.map +0 -7
  521. package/dist/src/features/tasks/task-aware-context.js.map +0 -7
  522. package/dist/src/features/tui/simple-monitor.js.map +0 -7
  523. package/dist/src/features/tui/swarm-monitor.js.map +0 -7
  524. package/dist/src/features/web/client/stores/task-store.js.map +0 -7
  525. package/dist/src/features/web/server/index.js.map +0 -7
  526. package/dist/src/features/workers/tmux-manager.js.map +0 -7
  527. package/dist/src/features/workers/worker-registry.js.map +0 -7
  528. package/dist/src/hooks/auto-background.js.map +0 -7
  529. package/dist/src/hooks/claude-code-whatsapp-hook.js +0 -197
  530. package/dist/src/hooks/claude-code-whatsapp-hook.js.map +0 -7
  531. package/dist/src/hooks/config.js.map +0 -7
  532. package/dist/src/hooks/daemon.js.map +0 -7
  533. package/dist/src/hooks/diffmem-hooks.js.map +0 -7
  534. package/dist/src/hooks/events.js.map +0 -7
  535. package/dist/src/hooks/index.js.map +0 -7
  536. package/dist/src/hooks/linear-task-picker.js.map +0 -7
  537. package/dist/src/hooks/schemas.js.map +0 -7
  538. package/dist/src/hooks/secure-fs.js.map +0 -7
  539. package/dist/src/hooks/security-logger.js.map +0 -7
  540. package/dist/src/hooks/session-summary.js.map +0 -7
  541. package/dist/src/hooks/sms-action-runner.js +0 -371
  542. package/dist/src/hooks/sms-action-runner.js.map +0 -7
  543. package/dist/src/hooks/sms-notify.js +0 -506
  544. package/dist/src/hooks/sms-notify.js.map +0 -7
  545. package/dist/src/hooks/sms-watcher.js +0 -93
  546. package/dist/src/hooks/sms-watcher.js.map +0 -7
  547. package/dist/src/hooks/sms-webhook.js +0 -555
  548. package/dist/src/hooks/sms-webhook.js.map +0 -7
  549. package/dist/src/hooks/whatsapp-commands.js +0 -479
  550. package/dist/src/hooks/whatsapp-commands.js.map +0 -7
  551. package/dist/src/hooks/whatsapp-scheduler.js +0 -317
  552. package/dist/src/hooks/whatsapp-scheduler.js.map +0 -7
  553. package/dist/src/hooks/whatsapp-sync.js +0 -409
  554. package/dist/src/hooks/whatsapp-sync.js.map +0 -7
  555. package/dist/src/index.js.map +0 -7
  556. package/dist/src/integrations/anthropic/client.js.map +0 -7
  557. package/dist/src/integrations/claude-code/agent-bridge.js.map +0 -7
  558. package/dist/src/integrations/claude-code/enhanced-pre-clear-hooks.js.map +0 -7
  559. package/dist/src/integrations/claude-code/lifecycle-hooks.js.map +0 -7
  560. package/dist/src/integrations/claude-code/post-task-hooks.js.map +0 -7
  561. package/dist/src/integrations/claude-code/subagent-client-stub.js.map +0 -7
  562. package/dist/src/integrations/claude-code/subagent-client.js.map +0 -7
  563. package/dist/src/integrations/claude-code/task-coordinator.js.map +0 -7
  564. package/dist/src/integrations/diffmem/client.js.map +0 -7
  565. package/dist/src/integrations/diffmem/config.js.map +0 -7
  566. package/dist/src/integrations/diffmem/index.js.map +0 -7
  567. package/dist/src/integrations/diffmem/types.js.map +0 -7
  568. package/dist/src/integrations/linear/auth.js.map +0 -7
  569. package/dist/src/integrations/linear/auto-sync.js.map +0 -7
  570. package/dist/src/integrations/linear/client.js.map +0 -7
  571. package/dist/src/integrations/linear/config.js.map +0 -7
  572. package/dist/src/integrations/linear/migration.js.map +0 -7
  573. package/dist/src/integrations/linear/oauth-server.js.map +0 -7
  574. package/dist/src/integrations/linear/rest-client.js.map +0 -7
  575. package/dist/src/integrations/linear/sync-manager.js.map +0 -7
  576. package/dist/src/integrations/linear/sync-service.js.map +0 -7
  577. package/dist/src/integrations/linear/sync.js.map +0 -7
  578. package/dist/src/integrations/linear/types.js.map +0 -7
  579. package/dist/src/integrations/linear/unified-sync.js.map +0 -7
  580. package/dist/src/integrations/linear/webhook-handler.js.map +0 -7
  581. package/dist/src/integrations/linear/webhook-server.js.map +0 -7
  582. package/dist/src/integrations/linear/webhook.js.map +0 -7
  583. package/dist/src/integrations/mcp/handlers/code-execution-handlers.js.map +0 -7
  584. package/dist/src/integrations/mcp/handlers/context-handlers.js.map +0 -7
  585. package/dist/src/integrations/mcp/handlers/diffmem-handlers.js.map +0 -7
  586. package/dist/src/integrations/mcp/handlers/discovery-handlers.js.map +0 -7
  587. package/dist/src/integrations/mcp/handlers/index.js.map +0 -7
  588. package/dist/src/integrations/mcp/handlers/linear-handlers.js.map +0 -7
  589. package/dist/src/integrations/mcp/handlers/skill-handlers.js.map +0 -7
  590. package/dist/src/integrations/mcp/handlers/task-handlers.js.map +0 -7
  591. package/dist/src/integrations/mcp/handlers/trace-handlers.js.map +0 -7
  592. package/dist/src/integrations/mcp/index.js.map +0 -7
  593. package/dist/src/integrations/mcp/middleware/tool-scoring.js.map +0 -7
  594. package/dist/src/integrations/mcp/pending-utils.js.map +0 -7
  595. package/dist/src/integrations/mcp/refactored-server.js.map +0 -7
  596. package/dist/src/integrations/mcp/remote-server.js.map +0 -7
  597. package/dist/src/integrations/mcp/schemas.js.map +0 -7
  598. package/dist/src/integrations/mcp/server.js.map +0 -7
  599. package/dist/src/integrations/mcp/tool-definitions-code.js.map +0 -7
  600. package/dist/src/integrations/mcp/tool-definitions.js.map +0 -7
  601. package/dist/src/integrations/ralph/bridge/ralph-stackmemory-bridge.js.map +0 -7
  602. package/dist/src/integrations/ralph/context/context-budget-manager.js.map +0 -7
  603. package/dist/src/integrations/ralph/context/stackmemory-context-loader.js.map +0 -7
  604. package/dist/src/integrations/ralph/coordination/enhanced-coordination.js.map +0 -7
  605. package/dist/src/integrations/ralph/index.js.map +0 -7
  606. package/dist/src/integrations/ralph/learning/pattern-learner.js.map +0 -7
  607. package/dist/src/integrations/ralph/lifecycle/iteration-lifecycle.js.map +0 -7
  608. package/dist/src/integrations/ralph/monitoring/swarm-dashboard.js.map +0 -7
  609. package/dist/src/integrations/ralph/monitoring/swarm-registry.js.map +0 -7
  610. package/dist/src/integrations/ralph/orchestration/multi-loop-orchestrator.js.map +0 -7
  611. package/dist/src/integrations/ralph/patterns/compounding-engineering-pattern.js.map +0 -7
  612. package/dist/src/integrations/ralph/patterns/extended-coherence-sessions.js.map +0 -7
  613. package/dist/src/integrations/ralph/patterns/oracle-worker-pattern.js.map +0 -7
  614. package/dist/src/integrations/ralph/performance/performance-optimizer.js.map +0 -7
  615. package/dist/src/integrations/ralph/recovery/crash-recovery.js.map +0 -7
  616. package/dist/src/integrations/ralph/state/state-reconciler.js.map +0 -7
  617. package/dist/src/integrations/ralph/swarm/git-workflow-manager.js.map +0 -7
  618. package/dist/src/integrations/ralph/swarm/swarm-coordinator.js.map +0 -7
  619. package/dist/src/integrations/ralph/types.js.map +0 -7
  620. package/dist/src/integrations/ralph/visualization/ralph-debugger.js.map +0 -7
  621. package/dist/src/mcp/stackmemory-mcp-server.js.map +0 -7
  622. package/dist/src/middleware/exponential-rate-limiter.js.map +0 -7
  623. package/dist/src/models/user.model.js.map +0 -7
  624. package/dist/src/orchestrators/multimodal/constants.js.map +0 -7
  625. package/dist/src/orchestrators/multimodal/harness.js.map +0 -7
  626. package/dist/src/orchestrators/multimodal/providers.js.map +0 -7
  627. package/dist/src/orchestrators/multimodal/types.js.map +0 -7
  628. package/dist/src/orchestrators/multimodal/utils.js.map +0 -7
  629. package/dist/src/servers/production/auth-middleware.js.map +0 -7
  630. package/dist/src/services/config-service.js.map +0 -7
  631. package/dist/src/services/context-service.js.map +0 -7
  632. package/dist/src/skills/api-discovery.js.map +0 -7
  633. package/dist/src/skills/api-skill.js.map +0 -7
  634. package/dist/src/skills/claude-skills.js.map +0 -7
  635. package/dist/src/skills/dashboard-launcher.js.map +0 -7
  636. package/dist/src/skills/linear-task-runner.js.map +0 -7
  637. package/dist/src/skills/recursive-agent-orchestrator.js.map +0 -7
  638. package/dist/src/skills/repo-ingestion-skill.js.map +0 -7
  639. package/dist/src/skills/spec-generator-skill.js.map +0 -7
  640. package/dist/src/skills/unified-rlm-orchestrator.js.map +0 -7
  641. package/dist/src/types/task.js.map +0 -7
  642. package/dist/src/utils/env.js.map +0 -7
  643. package/dist/src/utils/formatting.js.map +0 -7
  644. package/dist/src/utils/process-cleanup.js.map +0 -7
  645. package/scripts/README-TESTING.md +0 -186
  646. package/scripts/analyze-cli-security.js +0 -288
  647. package/scripts/archive/add-phase-tasks-to-linear.js +0 -163
  648. package/scripts/archive/analyze-linear-duplicates.js +0 -214
  649. package/scripts/archive/analyze-remaining-duplicates.js +0 -230
  650. package/scripts/archive/analyze-sta-duplicates.js +0 -292
  651. package/scripts/archive/analyze-sta-graphql.js +0 -399
  652. package/scripts/archive/cancel-duplicate-tasks.ts +0 -246
  653. package/scripts/archive/check-all-duplicates.ts +0 -419
  654. package/scripts/archive/clean-duplicate-tasks.js +0 -114
  655. package/scripts/archive/cleanup-duplicate-tasks.ts +0 -286
  656. package/scripts/archive/create-phase-tasks.js +0 -387
  657. package/scripts/archive/delete-linear-duplicates.js +0 -182
  658. package/scripts/archive/delete-remaining-duplicates.js +0 -158
  659. package/scripts/archive/delete-sta-duplicates.js +0 -201
  660. package/scripts/archive/delete-sta-oauth.js +0 -201
  661. package/scripts/archive/export-sta-tasks.js +0 -62
  662. package/scripts/archive/install-auto-sync.js +0 -266
  663. package/scripts/archive/install-chromadb-hooks.sh +0 -133
  664. package/scripts/archive/install-enhanced-clear-hooks.sh +0 -431
  665. package/scripts/archive/install-post-task-hooks.sh +0 -289
  666. package/scripts/archive/install-stackmemory-hooks.sh +0 -420
  667. package/scripts/archive/merge-linear-duplicates-safe.ts +0 -362
  668. package/scripts/archive/merge-linear-duplicates.ts +0 -182
  669. package/scripts/archive/remove-sta-tasks.js +0 -70
  670. package/scripts/archive/setup-background-sync.sh +0 -168
  671. package/scripts/archive/setup-claude-auto-triggers.sh +0 -181
  672. package/scripts/archive/setup-claude-autostart.sh +0 -305
  673. package/scripts/archive/setup-git-hooks.sh +0 -25
  674. package/scripts/archive/setup-linear-oauth.sh +0 -46
  675. package/scripts/archive/setup-mcp.sh +0 -113
  676. package/scripts/archive/setup-railway-deployment.sh +0 -81
  677. package/scripts/auto-handoff.sh +0 -262
  678. package/scripts/background-sync-manager.js +0 -478
  679. package/scripts/benchmark-performance.ts +0 -57
  680. package/scripts/check-redis.ts +0 -48
  681. package/scripts/chromadb-auto-loader.sh +0 -128
  682. package/scripts/chromadb-context-loader.js +0 -479
  683. package/scripts/claude-chromadb-hook.js +0 -460
  684. package/scripts/claude-linear-skill.js +0 -455
  685. package/scripts/claude-pre-commit.sh +0 -302
  686. package/scripts/claude-sm-autostart.js +0 -579
  687. package/scripts/claude-with-chromadb.sh +0 -69
  688. package/scripts/clean-linear-backlog.js +0 -273
  689. package/scripts/cleanup-old-sessions.sh +0 -57
  690. package/scripts/create-cleanup-issues.js +0 -302
  691. package/scripts/create-sandbox.sh +0 -269
  692. package/scripts/debug-linear-update.js +0 -174
  693. package/scripts/delete-linear-tasks.js +0 -167
  694. package/scripts/demos/browser-test.ts +0 -39
  695. package/scripts/demos/ralph-integration-demo.ts +0 -245
  696. package/scripts/demos/trace-demo.ts +0 -200
  697. package/scripts/demos/trace-detector.demo.ts +0 -171
  698. package/scripts/demos/trace-test.ts +0 -79
  699. package/scripts/deploy-ralph-swarm.sh +0 -365
  700. package/scripts/deploy.sh +0 -89
  701. package/scripts/deployment/test-deployment.js +0 -194
  702. package/scripts/detect-and-rehydrate.js +0 -162
  703. package/scripts/detect-and-rehydrate.mjs +0 -165
  704. package/scripts/development/create-demo-tasks.js +0 -143
  705. package/scripts/development/debug-frame-test.js +0 -16
  706. package/scripts/development/demo-auto-sync.js +0 -128
  707. package/scripts/development/fix-all-imports.js +0 -213
  708. package/scripts/development/fix-imports.js +0 -229
  709. package/scripts/development/fix-lint-loop.cjs +0 -103
  710. package/scripts/development/fix-project-id.ts +0 -161
  711. package/scripts/development/fix-strict-mode-issues.ts +0 -291
  712. package/scripts/development/reorganize-structure.sh +0 -228
  713. package/scripts/development/test-persistence-direct.js +0 -148
  714. package/scripts/development/test-persistence.js +0 -114
  715. package/scripts/development/test-tasks.js +0 -93
  716. package/scripts/development/update-imports.js +0 -212
  717. package/scripts/fetch-linear-status.js +0 -125
  718. package/scripts/initialize.ts +0 -220
  719. package/scripts/install-notify-hook.sh +0 -84
  720. package/scripts/linear-auto-sync.js +0 -262
  721. package/scripts/linear-auto-sync.sh +0 -161
  722. package/scripts/linear-sync-daemon.js +0 -150
  723. package/scripts/linear-task-review.js +0 -237
  724. package/scripts/list-linear-tasks.ts +0 -178
  725. package/scripts/mcp-proxy.js +0 -66
  726. package/scripts/measure-handoff-impact.mjs +0 -395
  727. package/scripts/measure-handoff-impact.ts +0 -450
  728. package/scripts/publish-local.js +0 -74
  729. package/scripts/query-chromadb.ts +0 -201
  730. package/scripts/ralph-integration-test.js +0 -274
  731. package/scripts/reconcile-local-tasks.js +0 -170
  732. package/scripts/recreate-frames-db.js +0 -89
  733. package/scripts/setup-notify-webhook.sh +0 -103
  734. package/scripts/show-linear-summary.ts +0 -172
  735. package/scripts/simple-swarm-demo.ts +0 -114
  736. package/scripts/stackmemory-auto-handoff.sh +0 -231
  737. package/scripts/start-linear-sync-daemon.sh +0 -141
  738. package/scripts/start-temporal-paradox.sh +0 -214
  739. package/scripts/status.ts +0 -224
  740. package/scripts/stop-notify-webhook.sh +0 -19
  741. package/scripts/swarm-monitor.js +0 -509
  742. package/scripts/sync-and-clean-tasks.js +0 -258
  743. package/scripts/sync-linear-graphql.js +0 -303
  744. package/scripts/sync-linear-tasks.js +0 -186
  745. package/scripts/test-auto-triggers.sh +0 -57
  746. package/scripts/test-browser-mcp.js +0 -74
  747. package/scripts/test-chromadb-full.js +0 -115
  748. package/scripts/test-chromadb-hooks.sh +0 -28
  749. package/scripts/test-chromadb-sync.ts +0 -245
  750. package/scripts/test-claude-config.sh +0 -123
  751. package/scripts/test-cli-security.js +0 -293
  752. package/scripts/test-code-execution.js +0 -143
  753. package/scripts/test-hooks-persistence.sh +0 -220
  754. package/scripts/test-installation-scenarios.sh +0 -359
  755. package/scripts/test-installation.sh +0 -224
  756. package/scripts/test-mcp.js +0 -163
  757. package/scripts/test-parallel-swarms.js +0 -443
  758. package/scripts/test-pre-publish-quick.sh +0 -77
  759. package/scripts/test-quality-gates.sh +0 -263
  760. package/scripts/test-ralph-iteration-fix.ts +0 -118
  761. package/scripts/test-ralph-iterations.ts +0 -164
  762. package/scripts/test-redis-storage.ts +0 -490
  763. package/scripts/test-rlm-basic.sh +0 -122
  764. package/scripts/test-rlm-comprehensive.sh +0 -260
  765. package/scripts/test-rlm-e2e.sh +0 -268
  766. package/scripts/test-rlm-simple.js +0 -90
  767. package/scripts/test-rlm.js +0 -110
  768. package/scripts/test-session-handoff.sh +0 -165
  769. package/scripts/test-setup-e2e.sh +0 -154
  770. package/scripts/test-shell-integration.sh +0 -275
  771. package/scripts/test-simple-ralph-state-sync.ts +0 -178
  772. package/scripts/test-swarm-fixes.ts +0 -161
  773. package/scripts/test-swarm-git-workflow.js +0 -338
  774. package/scripts/test-swarm-tui.ts +0 -34
  775. package/scripts/test-tui-shortcuts.ts +0 -66
  776. package/scripts/testing/ab-test-runner.ts +0 -510
  777. package/scripts/testing/collect-metrics.ts +0 -457
  778. package/scripts/testing/quick-effectiveness-demo.js +0 -187
  779. package/scripts/testing/ralph-cli-test.js +0 -88
  780. package/scripts/testing/ralph-integration-validation.js +0 -727
  781. package/scripts/testing/ralph-swarm-test-scenarios.js +0 -613
  782. package/scripts/testing/real-performance-test.js +0 -422
  783. package/scripts/testing/results/real-performance-results.json +0 -90
  784. package/scripts/testing/run-effectiveness-tests.sh +0 -176
  785. package/scripts/testing/simple-effectiveness-test.js +0 -310
  786. package/scripts/testing/test-tier-migration.js +0 -100
  787. package/scripts/update-linear-status.js +0 -268
  788. package/scripts/update-linear-tasks-fixed.js +0 -284
  789. package/scripts/validate-claude-config.sh +0 -155
  790. package/scripts/validate-swarm-implementation.js +0 -467
  791. package/scripts/validate-tui-shortcuts.ts +0 -83
  792. package/templates/claude-hooks/notify-review-hook.js +0 -360
  793. package/templates/claude-hooks/sms-response-handler.js +0 -174
@@ -1,119 +0,0 @@
1
- #!/usr/bin/env node
2
- import { fileURLToPath as __fileURLToPath } from 'url';
3
- import { dirname as __pathDirname } from 'path';
4
- const __filename = __fileURLToPath(import.meta.url);
5
- const __dirname = __pathDirname(__filename);
6
- import { readFileSync } from "fs";
7
- import { join } from "path";
8
- async function showLinearSummary() {
9
- const tokensPath = join(process.cwd(), ".stackmemory", "linear-tokens.json");
10
- let accessToken;
11
- try {
12
- const tokensData = readFileSync(tokensPath, "utf8");
13
- const tokens = JSON.parse(tokensData);
14
- accessToken = tokens.accessToken;
15
- } catch {
16
- console.error(
17
- "\u274C Failed to load Linear tokens. Please run: stackmemory linear setup"
18
- );
19
- process.exit(1);
20
- }
21
- const linearApiUrl = "https://api.linear.app/graphql";
22
- async function graphqlRequest(query, variables = {}) {
23
- const response = await fetch(linearApiUrl, {
24
- method: "POST",
25
- headers: {
26
- Authorization: `Bearer ${accessToken}`,
27
- "Content-Type": "application/json"
28
- },
29
- body: JSON.stringify({ query, variables })
30
- });
31
- if (!response.ok) {
32
- throw new Error(
33
- `Linear API error: ${response.status} ${response.statusText}`
34
- );
35
- }
36
- const result = await response.json();
37
- if (result.errors) {
38
- throw new Error(`GraphQL errors: ${JSON.stringify(result.errors)}`);
39
- }
40
- return result.data;
41
- }
42
- const issuesQuery = `
43
- query {
44
- issues(first: 250) {
45
- nodes {
46
- identifier
47
- title
48
- state {
49
- name
50
- type
51
- }
52
- createdAt
53
- updatedAt
54
- }
55
- }
56
- }
57
- `;
58
- const data = await graphqlRequest(issuesQuery);
59
- const issues = data.issues.nodes;
60
- const grouped = /* @__PURE__ */ new Map();
61
- for (const issue of issues) {
62
- const stateType = issue.state.type;
63
- if (!grouped.has(stateType)) {
64
- grouped.set(stateType, []);
65
- }
66
- const stateIssues = grouped.get(stateType);
67
- if (stateIssues) {
68
- stateIssues.push(issue);
69
- }
70
- }
71
- console.log("\n\u{1F4CA} Linear Task Summary\n");
72
- console.log("=".repeat(60));
73
- const stateOrder = [
74
- "backlog",
75
- "unstarted",
76
- "started",
77
- "completed",
78
- "canceled"
79
- ];
80
- for (const state of stateOrder) {
81
- const stateIssues = grouped.get(state) || [];
82
- if (stateIssues.length === 0) continue;
83
- const emoji = {
84
- backlog: "\u{1F4CB}",
85
- unstarted: "\u23F3",
86
- started: "\u{1F504}",
87
- completed: "\u2705",
88
- canceled: "\u274C"
89
- }[state] || "\u26AA";
90
- console.log(
91
- `
92
- ${emoji} ${state.toUpperCase()} (${stateIssues.length} tasks)`
93
- );
94
- console.log("-".repeat(40));
95
- const recent = stateIssues.sort(
96
- (a, b) => new Date(b.updatedAt).getTime() - new Date(a.updatedAt).getTime()
97
- ).slice(0, state === "canceled" ? 20 : 5);
98
- for (const issue of recent) {
99
- const updatedDate = new Date(issue.updatedAt).toLocaleDateString();
100
- console.log(
101
- ` ${issue.identifier.padEnd(10)} ${issue.title.slice(0, 50).padEnd(50)} ${updatedDate}`
102
- );
103
- }
104
- if (stateIssues.length > recent.length) {
105
- console.log(` ... and ${stateIssues.length - recent.length} more`);
106
- }
107
- }
108
- console.log("\n" + "=".repeat(60));
109
- console.log("\n\u{1F4C8} Total Issues: " + issues.length);
110
- const activeCount = (grouped.get("started")?.length ?? 0) + (grouped.get("unstarted")?.length ?? 0) + (grouped.get("backlog")?.length ?? 0);
111
- console.log(" Active: " + activeCount);
112
- console.log(" Completed: " + (grouped.get("completed")?.length ?? 0));
113
- console.log(" Canceled: " + (grouped.get("canceled")?.length ?? 0));
114
- }
115
- showLinearSummary().catch((error) => {
116
- console.error("\u274C Error:", error);
117
- process.exit(1);
118
- });
119
- //# sourceMappingURL=show-linear-summary.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../scripts/show-linear-summary.ts"],
4
- "sourcesContent": ["#!/usr/bin/env node\n\n/**\n * Show Linear task summary with all statuses\n */\n\nimport { readFileSync } from 'fs';\nimport { join } from 'path';\n\ninterface LinearIssue {\n identifier: string;\n title: string;\n state: {\n name: string;\n type: string;\n };\n createdAt: string;\n updatedAt: string;\n}\n\nasync function showLinearSummary() {\n // Load Linear tokens\n const tokensPath = join(process.cwd(), '.stackmemory', 'linear-tokens.json');\n let accessToken: string;\n\n try {\n const tokensData = readFileSync(tokensPath, 'utf8');\n const tokens = JSON.parse(tokensData);\n accessToken = tokens.accessToken;\n } catch {\n console.error(\n '\u274C Failed to load Linear tokens. Please run: stackmemory linear setup'\n );\n process.exit(1);\n }\n\n // GraphQL helper\n const linearApiUrl = 'https://api.linear.app/graphql';\n\n async function graphqlRequest(\n query: string,\n variables: Record<string, unknown> = {}\n ) {\n const response = await fetch(linearApiUrl, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${accessToken}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({ query, variables }),\n });\n\n if (!response.ok) {\n throw new Error(\n `Linear API error: ${response.status} ${response.statusText}`\n );\n }\n\n const result = (await response.json()) as {\n errors?: unknown[];\n data: unknown;\n };\n if (result.errors) {\n throw new Error(`GraphQL errors: ${JSON.stringify(result.errors)}`);\n }\n\n return result.data;\n }\n\n // Get issues grouped by state\n const issuesQuery = `\n query {\n issues(first: 250) {\n nodes {\n identifier\n title\n state {\n name\n type\n }\n createdAt\n updatedAt\n }\n }\n }\n `;\n\n const data = (await graphqlRequest(issuesQuery)) as {\n issues: { nodes: LinearIssue[] };\n };\n const issues = data.issues.nodes;\n\n // Group by state type\n const grouped = new Map<string, LinearIssue[]>();\n\n for (const issue of issues) {\n const stateType = issue.state.type;\n if (!grouped.has(stateType)) {\n grouped.set(stateType, []);\n }\n const stateIssues = grouped.get(stateType);\n if (stateIssues) {\n stateIssues.push(issue);\n }\n }\n\n // Display summary\n console.log('\\n\uD83D\uDCCA Linear Task Summary\\n');\n console.log('='.repeat(60));\n\n const stateOrder = [\n 'backlog',\n 'unstarted',\n 'started',\n 'completed',\n 'canceled',\n ];\n\n for (const state of stateOrder) {\n const stateIssues = grouped.get(state) || [];\n if (stateIssues.length === 0) continue;\n\n const emoji =\n {\n backlog: '\uD83D\uDCCB',\n unstarted: '\u23F3',\n started: '\uD83D\uDD04',\n completed: '\u2705',\n canceled: '\u274C',\n }[state] || '\u26AA';\n\n console.log(\n `\\n${emoji} ${state.toUpperCase()} (${stateIssues.length} tasks)`\n );\n console.log('-'.repeat(40));\n\n // Show recent items (last 5)\n const recent = stateIssues\n .sort(\n (a, b) =>\n new Date(b.updatedAt).getTime() - new Date(a.updatedAt).getTime()\n )\n .slice(0, state === 'canceled' ? 20 : 5);\n\n for (const issue of recent) {\n const updatedDate = new Date(issue.updatedAt).toLocaleDateString();\n console.log(\n ` ${issue.identifier.padEnd(10)} ${issue.title.slice(0, 50).padEnd(50)} ${updatedDate}`\n );\n }\n\n if (stateIssues.length > recent.length) {\n console.log(` ... and ${stateIssues.length - recent.length} more`);\n }\n }\n\n console.log('\\n' + '='.repeat(60));\n console.log('\\n\uD83D\uDCC8 Total Issues: ' + issues.length);\n const activeCount =\n (grouped.get('started')?.length ?? 0) +\n (grouped.get('unstarted')?.length ?? 0) +\n (grouped.get('backlog')?.length ?? 0);\n console.log(' Active: ' + activeCount);\n console.log(' Completed: ' + (grouped.get('completed')?.length ?? 0));\n console.log(' Canceled: ' + (grouped.get('canceled')?.length ?? 0));\n}\n\n// Run\nshowLinearSummary().catch((error) => {\n console.error('\u274C Error:', error);\n process.exit(1);\n});\n"],
5
- "mappings": "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",
6
- "names": []
7
- }
@@ -1,90 +0,0 @@
1
- #!/usr/bin/env npx tsx
2
- import { fileURLToPath as __fileURLToPath } from 'url';
3
- import { dirname as __pathDirname } from 'path';
4
- const __filename = __fileURLToPath(import.meta.url);
5
- const __dirname = __pathDirname(__filename);
6
- import "dotenv/config";
7
- import { SwarmCoordinator } from "../src/integrations/ralph/swarm/swarm-coordinator.js";
8
- import { SwarmRegistry } from "../src/integrations/ralph/monitoring/swarm-registry.js";
9
- import { logger } from "../src/core/monitoring/logger.js";
10
- async function runSimpleSwarm() {
11
- try {
12
- console.log("\u{1F9BE} Starting Simple Ralph Swarm Demo...");
13
- const registry = SwarmRegistry.getInstance();
14
- const coordinator = new SwarmCoordinator({
15
- maxAgents: 2,
16
- timeout: 3e4,
17
- enableGitWorkflow: false,
18
- // Disable git workflow to avoid branch conflicts
19
- enableStackMemoryBridge: false
20
- // Disable StackMemory integration temporarily
21
- });
22
- await coordinator.initialize();
23
- console.log("\u2705 Swarm coordinator initialized");
24
- const task = {
25
- id: "simple-demo-task",
26
- description: "Demonstrate basic swarm functionality without database dependencies",
27
- type: "demonstration",
28
- priority: "medium",
29
- estimatedDuration: 3e4,
30
- requirements: [
31
- "Show swarm initialization",
32
- "Demonstrate agent coordination",
33
- "Validate basic functionality"
34
- ]
35
- };
36
- console.log("\u{1F4CB} Task defined:", task.description);
37
- const swarmId = registry.registerSwarm(
38
- coordinator,
39
- "Simple Demo Swarm - No Database Dependencies"
40
- );
41
- console.log("\u{1F194} Swarm registered:", swarmId);
42
- const result = await coordinator.launchSwarm(
43
- task.description,
44
- [
45
- {
46
- role: "developer",
47
- specialization: "basic-functionality"
48
- }
49
- ],
50
- {
51
- enableRalphBridge: false,
52
- // Disable Ralph bridge to avoid database issues
53
- enableGitWorkflow: false
54
- // Already disabled in coordinator init
55
- }
56
- );
57
- console.log("\u{1F680} Swarm launched successfully!");
58
- console.log("\u{1F4CA} Result:", {
59
- swarmId: result.swarmId,
60
- agentCount: result.agents?.length || 0,
61
- status: result.status
62
- });
63
- const activeSwarms = registry.listActiveSwarms();
64
- console.log("\u{1F4C8} Active swarms:", activeSwarms.length);
65
- console.log("\u23F3 Simulating swarm work for 5 seconds...");
66
- await new Promise((resolve) => setTimeout(resolve, 5e3));
67
- console.log("\u{1F6D1} Stopping swarm...");
68
- await coordinator.stopSwarm();
69
- console.log("");
70
- console.log("\u{1F389} Simple swarm demo completed successfully!");
71
- console.log("");
72
- console.log("\u2705 Demonstrated:");
73
- console.log(" - Basic swarm coordinator initialization");
74
- console.log(" - Swarm registry management");
75
- console.log(" - Agent configuration without database dependencies");
76
- console.log(" - Simple task execution workflow");
77
- console.log("");
78
- console.log("\u{1F527} This approach bypasses:");
79
- console.log(" - Complex SessionManager database setup");
80
- console.log(" - StackMemory FrameManager initialization");
81
- console.log(" - Git workflow branch conflicts");
82
- console.log(" - Ralph-StackMemory bridge complications");
83
- } catch (error) {
84
- console.error("\u274C Simple swarm demo failed:", error.message);
85
- logger.error("Simple swarm demo error", error);
86
- process.exit(1);
87
- }
88
- }
89
- runSimpleSwarm();
90
- //# sourceMappingURL=simple-swarm-demo.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../scripts/simple-swarm-demo.ts"],
4
- "sourcesContent": ["#!/usr/bin/env npx tsx\n\n/**\n * Simple Ralph Swarm Demo - Minimal database dependencies\n * Demonstrates basic swarm coordination without complex SessionManager setup\n */\n\nimport 'dotenv/config';\nimport { SwarmCoordinator } from '../src/integrations/ralph/swarm/swarm-coordinator.js';\nimport { SwarmRegistry } from '../src/integrations/ralph/monitoring/swarm-registry.js';\nimport { logger } from '../src/core/monitoring/logger.js';\n\nasync function runSimpleSwarm() {\n try {\n console.log('\uD83E\uDDBE Starting Simple Ralph Swarm Demo...');\n\n // Initialize registry\n const registry = SwarmRegistry.getInstance();\n\n // Create a basic swarm coordinator without complex dependencies\n const coordinator = new SwarmCoordinator({\n maxAgents: 2,\n timeout: 30000,\n enableGitWorkflow: false, // Disable git workflow to avoid branch conflicts\n enableStackMemoryBridge: false, // Disable StackMemory integration temporarily\n });\n\n // Initialize coordinator\n await coordinator.initialize();\n\n console.log('\u2705 Swarm coordinator initialized');\n\n // Define a simple task\n const task = {\n id: 'simple-demo-task',\n description:\n 'Demonstrate basic swarm functionality without database dependencies',\n type: 'demonstration' as const,\n priority: 'medium' as const,\n estimatedDuration: 30000,\n requirements: [\n 'Show swarm initialization',\n 'Demonstrate agent coordination',\n 'Validate basic functionality',\n ],\n };\n\n console.log('\uD83D\uDCCB Task defined:', task.description);\n\n // Register the swarm\n const swarmId = registry.registerSwarm(\n coordinator,\n 'Simple Demo Swarm - No Database Dependencies'\n );\n\n console.log('\uD83C\uDD94 Swarm registered:', swarmId);\n\n // Launch with minimal configuration\n const result = await coordinator.launchSwarm(\n task.description,\n [\n {\n role: 'developer',\n specialization: 'basic-functionality',\n },\n ],\n {\n enableRalphBridge: false, // Disable Ralph bridge to avoid database issues\n enableGitWorkflow: false, // Already disabled in coordinator init\n }\n );\n\n console.log('\uD83D\uDE80 Swarm launched successfully!');\n console.log('\uD83D\uDCCA Result:', {\n swarmId: result.swarmId,\n agentCount: result.agents?.length || 0,\n status: result.status,\n });\n\n // Show registry status\n const activeSwarms = registry.listActiveSwarms();\n console.log('\uD83D\uDCC8 Active swarms:', activeSwarms.length);\n\n // Simulate some work\n console.log('\u23F3 Simulating swarm work for 5 seconds...');\n await new Promise((resolve) => setTimeout(resolve, 5000));\n\n // Stop the swarm\n console.log('\uD83D\uDED1 Stopping swarm...');\n await coordinator.stopSwarm();\n\n console.log('');\n console.log('\uD83C\uDF89 Simple swarm demo completed successfully!');\n console.log('');\n console.log('\u2705 Demonstrated:');\n console.log(' - Basic swarm coordinator initialization');\n console.log(' - Swarm registry management');\n console.log(' - Agent configuration without database dependencies');\n console.log(' - Simple task execution workflow');\n console.log('');\n console.log('\uD83D\uDD27 This approach bypasses:');\n console.log(' - Complex SessionManager database setup');\n console.log(' - StackMemory FrameManager initialization');\n console.log(' - Git workflow branch conflicts');\n console.log(' - Ralph-StackMemory bridge complications');\n } catch (error: unknown) {\n console.error('\u274C Simple swarm demo failed:', (error as Error).message);\n logger.error('Simple swarm demo error', error as Error);\n process.exit(1);\n }\n}\n\n// Run the demo\nrunSimpleSwarm();\n"],
5
- "mappings": ";;;;;AAOA,OAAO;AACP,SAAS,wBAAwB;AACjC,SAAS,qBAAqB;AAC9B,SAAS,cAAc;AAEvB,eAAe,iBAAiB;AAC9B,MAAI;AACF,YAAQ,IAAI,+CAAwC;AAGpD,UAAM,WAAW,cAAc,YAAY;AAG3C,UAAM,cAAc,IAAI,iBAAiB;AAAA,MACvC,WAAW;AAAA,MACX,SAAS;AAAA,MACT,mBAAmB;AAAA;AAAA,MACnB,yBAAyB;AAAA;AAAA,IAC3B,CAAC;AAGD,UAAM,YAAY,WAAW;AAE7B,YAAQ,IAAI,sCAAiC;AAG7C,UAAM,OAAO;AAAA,MACX,IAAI;AAAA,MACJ,aACE;AAAA,MACF,MAAM;AAAA,MACN,UAAU;AAAA,MACV,mBAAmB;AAAA,MACnB,cAAc;AAAA,QACZ;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,IACF;AAEA,YAAQ,IAAI,2BAAoB,KAAK,WAAW;AAGhD,UAAM,UAAU,SAAS;AAAA,MACvB;AAAA,MACA;AAAA,IACF;AAEA,YAAQ,IAAI,+BAAwB,OAAO;AAG3C,UAAM,SAAS,MAAM,YAAY;AAAA,MAC/B,KAAK;AAAA,MACL;AAAA,QACE;AAAA,UACE,MAAM;AAAA,UACN,gBAAgB;AAAA,QAClB;AAAA,MACF;AAAA,MACA;AAAA,QACE,mBAAmB;AAAA;AAAA,QACnB,mBAAmB;AAAA;AAAA,MACrB;AAAA,IACF;AAEA,YAAQ,IAAI,wCAAiC;AAC7C,YAAQ,IAAI,qBAAc;AAAA,MACxB,SAAS,OAAO;AAAA,MAChB,YAAY,OAAO,QAAQ,UAAU;AAAA,MACrC,QAAQ,OAAO;AAAA,IACjB,CAAC;AAGD,UAAM,eAAe,SAAS,iBAAiB;AAC/C,YAAQ,IAAI,4BAAqB,aAAa,MAAM;AAGpD,YAAQ,IAAI,+CAA0C;AACtD,UAAM,IAAI,QAAQ,CAAC,YAAY,WAAW,SAAS,GAAI,CAAC;AAGxD,YAAQ,IAAI,6BAAsB;AAClC,UAAM,YAAY,UAAU;AAE5B,YAAQ,IAAI,EAAE;AACd,YAAQ,IAAI,qDAA8C;AAC1D,YAAQ,IAAI,EAAE;AACd,YAAQ,IAAI,sBAAiB;AAC7B,YAAQ,IAAI,6CAA6C;AACzD,YAAQ,IAAI,gCAAgC;AAC5C,YAAQ,IAAI,wDAAwD;AACpE,YAAQ,IAAI,qCAAqC;AACjD,YAAQ,IAAI,EAAE;AACd,YAAQ,IAAI,mCAA4B;AACxC,YAAQ,IAAI,4CAA4C;AACxD,YAAQ,IAAI,8CAA8C;AAC1D,YAAQ,IAAI,oCAAoC;AAChD,YAAQ,IAAI,6CAA6C;AAAA,EAC3D,SAAS,OAAgB;AACvB,YAAQ,MAAM,oCAAgC,MAAgB,OAAO;AACrE,WAAO,MAAM,2BAA2B,KAAc;AACtD,YAAQ,KAAK,CAAC;AAAA,EAChB;AACF;AAGA,eAAe;",
6
- "names": []
7
- }
@@ -1,155 +0,0 @@
1
- #!/usr/bin/env tsx
2
- import { fileURLToPath as __fileURLToPath } from 'url';
3
- import { dirname as __pathDirname } from 'path';
4
- const __filename = __fileURLToPath(import.meta.url);
5
- const __dirname = __pathDirname(__filename);
6
- import Database from "better-sqlite3";
7
- import { existsSync, readFileSync } from "fs";
8
- import { join } from "path";
9
- import chalk from "chalk";
10
- const projectRoot = process.cwd();
11
- const stackDir = join(projectRoot, ".stackmemory");
12
- const dbPath = join(stackDir, "context.db");
13
- const configPath = join(stackDir, "config.json");
14
- console.log(chalk.blue.bold("\n[StackMemory Status]\n"));
15
- if (!existsSync(stackDir)) {
16
- console.log(chalk.red("[X] .stackmemory directory not found"));
17
- console.log(chalk.gray(" Run: stackmemory init"));
18
- process.exit(1);
19
- }
20
- console.log(chalk.green("[OK] .stackmemory directory exists"));
21
- if (existsSync(configPath)) {
22
- try {
23
- const config = JSON.parse(readFileSync(configPath, "utf-8"));
24
- console.log(chalk.green("[OK] config.json found"));
25
- console.log(chalk.gray(` version: ${config.version || "unknown"}`));
26
- console.log(chalk.gray(` project: ${config.project || "unknown"}`));
27
- console.log(
28
- chalk.gray(` initialized: ${config.initialized || "unknown"}`)
29
- );
30
- } catch {
31
- console.log(chalk.yellow("[!] config.json exists but failed to parse"));
32
- }
33
- } else {
34
- console.log(chalk.yellow("[!] config.json not found"));
35
- }
36
- if (!existsSync(dbPath)) {
37
- console.log(chalk.red("[X] context.db not found"));
38
- process.exit(1);
39
- }
40
- console.log(chalk.green("[OK] context.db exists"));
41
- const db = new Database(dbPath, { readonly: true });
42
- const stats = {
43
- contexts: db.prepare("SELECT COUNT(*) as count FROM contexts").get(),
44
- frames: db.prepare("SELECT COUNT(*) as count FROM frames").get(),
45
- attention: db.prepare("SELECT COUNT(*) as count FROM attention_log").get()
46
- };
47
- console.log(chalk.cyan("\n[Database Stats]"));
48
- console.log(` Contexts: ${stats.contexts.count}`);
49
- console.log(` Frames: ${stats.frames.count}`);
50
- console.log(` Attention logs: ${stats.attention.count}`);
51
- if (stats.contexts.count > 0) {
52
- console.log(chalk.cyan("\n[Top Contexts by Importance]"));
53
- const topContexts = db.prepare(
54
- `
55
- SELECT type, substr(content, 1, 60) as preview, importance, access_count
56
- FROM contexts
57
- ORDER BY importance DESC, access_count DESC
58
- LIMIT 5
59
- `
60
- ).all();
61
- topContexts.forEach((ctx, i) => {
62
- const importance = "*".repeat(Math.round(ctx.importance * 5));
63
- console.log(
64
- chalk.white(` ${i + 1}.`) + ` [${ctx.type}] ` + chalk.gray(`(${ctx.access_count} uses)`) + ` ${importance}`
65
- );
66
- console.log(chalk.gray(` ${ctx.preview}...`));
67
- });
68
- }
69
- const activeFrames = db.prepare(
70
- `
71
- SELECT name, type, datetime(created_at, 'unixepoch') as started
72
- FROM frames
73
- WHERE state = 'active'
74
- ORDER BY created_at DESC
75
- LIMIT 3
76
- `
77
- ).all();
78
- if (activeFrames.length > 0) {
79
- console.log(chalk.cyan("\n[Active Frames]"));
80
- activeFrames.forEach((frame) => {
81
- console.log(chalk.green(" *") + ` ${frame.name} (${frame.type})`);
82
- console.log(chalk.gray(` Started: ${frame.started}`));
83
- });
84
- }
85
- const recentAttention = db.prepare(
86
- `
87
- SELECT
88
- substr(query, 1, 50) as query_preview,
89
- COUNT(*) as count
90
- FROM attention_log
91
- WHERE timestamp > unixepoch() - 86400
92
- GROUP BY query_preview
93
- ORDER BY count DESC
94
- LIMIT 3
95
- `
96
- ).all();
97
- if (recentAttention.length > 0) {
98
- console.log(chalk.cyan("\n[Recent Query Patterns]"));
99
- recentAttention.forEach((pattern) => {
100
- console.log(
101
- chalk.yellow(" ?") + ` "${pattern.query_preview}..." (${pattern.count}x)`
102
- );
103
- });
104
- }
105
- const oldContexts = db.prepare(
106
- `
107
- SELECT COUNT(*) as count
108
- FROM contexts
109
- WHERE last_accessed < unixepoch() - 86400 * 7
110
- `
111
- ).get();
112
- if (oldContexts.count > 0) {
113
- console.log(
114
- chalk.yellow(
115
- `
116
- [!] ${oldContexts.count} contexts haven't been accessed in 7+ days`
117
- )
118
- );
119
- }
120
- console.log(chalk.cyan("\n[MCP Configuration]"));
121
- const mcpConfigPaths = [
122
- join(
123
- process.env.HOME || "",
124
- "Library/Application Support/Claude/claude_desktop_config.json"
125
- ),
126
- join(process.env.HOME || "", ".config/claude/claude_desktop_config.json")
127
- ];
128
- let mcpFound = false;
129
- for (const mcpPath of mcpConfigPaths) {
130
- if (existsSync(mcpPath)) {
131
- try {
132
- const mcpConfig = JSON.parse(readFileSync(mcpPath, "utf-8"));
133
- const hasStackMemory = mcpConfig.mcpServers?.stackmemory || mcpConfig.mcpServers?.["stackmemory-mcp"];
134
- if (hasStackMemory) {
135
- console.log(chalk.green(" [OK] MCP server configured"));
136
- mcpFound = true;
137
- } else {
138
- console.log(
139
- chalk.yellow(" [!] MCP config exists but stackmemory not configured")
140
- );
141
- }
142
- } catch {
143
- console.log(chalk.yellow(` [!] Failed to parse ${mcpPath}`));
144
- }
145
- break;
146
- }
147
- }
148
- if (!mcpFound) {
149
- console.log(chalk.gray(" [--] No MCP configuration found"));
150
- }
151
- console.log(
152
- chalk.gray('\nTip: Run "npm run analyze" for detailed attention analysis\n')
153
- );
154
- db.close();
155
- //# sourceMappingURL=status.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../scripts/status.ts"],
4
- "sourcesContent": ["#!/usr/bin/env tsx\n/**\n * Check StackMemory status and statistics\n */\n\nimport Database from 'better-sqlite3';\nimport { existsSync, readFileSync } from 'fs';\nimport { join } from 'path';\nimport chalk from 'chalk';\n\ninterface CountResult {\n count: number;\n}\n\ninterface ContextRow {\n type: string;\n preview: string;\n importance: number;\n access_count: number;\n}\n\ninterface FrameRow {\n name: string;\n type: string;\n started: string;\n}\n\ninterface AttentionRow {\n query_preview: string;\n count: number;\n}\n\nconst projectRoot = process.cwd();\nconst stackDir = join(projectRoot, '.stackmemory');\nconst dbPath = join(stackDir, 'context.db');\nconst configPath = join(stackDir, 'config.json');\n\n// Check if .stackmemory directory exists\nconsole.log(chalk.blue.bold('\\n[StackMemory Status]\\n'));\n\nif (!existsSync(stackDir)) {\n console.log(chalk.red('[X] .stackmemory directory not found'));\n console.log(chalk.gray(' Run: stackmemory init'));\n process.exit(1);\n}\nconsole.log(chalk.green('[OK] .stackmemory directory exists'));\n\n// Show config.json contents\nif (existsSync(configPath)) {\n try {\n const config = JSON.parse(readFileSync(configPath, 'utf-8'));\n console.log(chalk.green('[OK] config.json found'));\n console.log(chalk.gray(` version: ${config.version || 'unknown'}`));\n console.log(chalk.gray(` project: ${config.project || 'unknown'}`));\n console.log(\n chalk.gray(` initialized: ${config.initialized || 'unknown'}`)\n );\n } catch {\n console.log(chalk.yellow('[!] config.json exists but failed to parse'));\n }\n} else {\n console.log(chalk.yellow('[!] config.json not found'));\n}\n\n// Check database\nif (!existsSync(dbPath)) {\n console.log(chalk.red('[X] context.db not found'));\n process.exit(1);\n}\nconsole.log(chalk.green('[OK] context.db exists'));\n\nconst db = new Database(dbPath, { readonly: true });\n\n// Get statistics\nconst stats = {\n contexts: db\n .prepare('SELECT COUNT(*) as count FROM contexts')\n .get() as CountResult,\n frames: db\n .prepare('SELECT COUNT(*) as count FROM frames')\n .get() as CountResult,\n attention: db\n .prepare('SELECT COUNT(*) as count FROM attention_log')\n .get() as CountResult,\n};\n\nconsole.log(chalk.cyan('\\n[Database Stats]'));\nconsole.log(` Contexts: ${stats.contexts.count}`);\nconsole.log(` Frames: ${stats.frames.count}`);\nconsole.log(` Attention logs: ${stats.attention.count}`);\n\n// Get top contexts by importance\nif (stats.contexts.count > 0) {\n console.log(chalk.cyan('\\n[Top Contexts by Importance]'));\n\n const topContexts = db\n .prepare(\n `\n SELECT type, substr(content, 1, 60) as preview, importance, access_count\n FROM contexts\n ORDER BY importance DESC, access_count DESC\n LIMIT 5\n `\n )\n .all() as ContextRow[];\n\n topContexts.forEach((ctx, i) => {\n const importance = '*'.repeat(Math.round(ctx.importance * 5));\n console.log(\n chalk.white(` ${i + 1}.`) +\n ` [${ctx.type}] ` +\n chalk.gray(`(${ctx.access_count} uses)`) +\n ` ${importance}`\n );\n console.log(chalk.gray(` ${ctx.preview}...`));\n });\n}\n\n// Get active frames (using correct schema: name, type, state)\nconst activeFrames = db\n .prepare(\n `\n SELECT name, type, datetime(created_at, 'unixepoch') as started\n FROM frames\n WHERE state = 'active'\n ORDER BY created_at DESC\n LIMIT 3\n`\n )\n .all() as FrameRow[];\n\nif (activeFrames.length > 0) {\n console.log(chalk.cyan('\\n[Active Frames]'));\n activeFrames.forEach((frame) => {\n console.log(chalk.green(' *') + ` ${frame.name} (${frame.type})`);\n console.log(chalk.gray(` Started: ${frame.started}`));\n });\n}\n\n// Get recent attention patterns\nconst recentAttention = db\n .prepare(\n `\n SELECT\n substr(query, 1, 50) as query_preview,\n COUNT(*) as count\n FROM attention_log\n WHERE timestamp > unixepoch() - 86400\n GROUP BY query_preview\n ORDER BY count DESC\n LIMIT 3\n`\n )\n .all() as AttentionRow[];\n\nif (recentAttention.length > 0) {\n console.log(chalk.cyan('\\n[Recent Query Patterns]'));\n recentAttention.forEach((pattern) => {\n console.log(\n chalk.yellow(' ?') + ` \"${pattern.query_preview}...\" (${pattern.count}x)`\n );\n });\n}\n\n// Show context decay\nconst oldContexts = db\n .prepare(\n `\n SELECT COUNT(*) as count\n FROM contexts\n WHERE last_accessed < unixepoch() - 86400 * 7\n`\n )\n .get() as CountResult;\n\nif (oldContexts.count > 0) {\n console.log(\n chalk.yellow(\n `\\n[!] ${oldContexts.count} contexts haven't been accessed in 7+ days`\n )\n );\n}\n\n// Check MCP configuration\nconsole.log(chalk.cyan('\\n[MCP Configuration]'));\nconst mcpConfigPaths = [\n join(\n process.env.HOME || '',\n 'Library/Application Support/Claude/claude_desktop_config.json'\n ),\n join(process.env.HOME || '', '.config/claude/claude_desktop_config.json'),\n];\n\nlet mcpFound = false;\nfor (const mcpPath of mcpConfigPaths) {\n if (existsSync(mcpPath)) {\n try {\n const mcpConfig = JSON.parse(readFileSync(mcpPath, 'utf-8'));\n const hasStackMemory =\n mcpConfig.mcpServers?.stackmemory ||\n mcpConfig.mcpServers?.['stackmemory-mcp'];\n if (hasStackMemory) {\n console.log(chalk.green(' [OK] MCP server configured'));\n mcpFound = true;\n } else {\n console.log(\n chalk.yellow(' [!] MCP config exists but stackmemory not configured')\n );\n }\n } catch {\n console.log(chalk.yellow(` [!] Failed to parse ${mcpPath}`));\n }\n break;\n }\n}\nif (!mcpFound) {\n console.log(chalk.gray(' [--] No MCP configuration found'));\n}\n\nconsole.log(\n chalk.gray('\\nTip: Run \"npm run analyze\" for detailed attention analysis\\n')\n);\n\ndb.close();\n"],
5
- "mappings": "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",
6
- "names": []
7
- }
@@ -1,192 +0,0 @@
1
- #!/usr/bin/env tsx
2
- import { fileURLToPath as __fileURLToPath } from 'url';
3
- import { dirname as __pathDirname } from 'path';
4
- const __filename = __fileURLToPath(import.meta.url);
5
- const __dirname = __pathDirname(__filename);
6
- import { ChromaClient } from "chromadb";
7
- import * as fs from "fs";
8
- import * as path from "path";
9
- import * as os from "os";
10
- import * as readline from "readline";
11
- import dotenv from "dotenv";
12
- dotenv.config();
13
- async function testChromaDBConnection() {
14
- const apiKey = process.env.CHROMADB_API_KEY;
15
- const tenant = process.env.CHROMADB_TENANT;
16
- const database = process.env.CHROMADB_DATABASE || "stackmemory";
17
- if (!apiKey || !tenant) {
18
- console.error("\u274C Missing ChromaDB credentials in .env");
19
- console.log(" CHROMADB_API_KEY:", apiKey ? "\u2713 Set" : "\u2717 Missing");
20
- console.log(" CHROMADB_TENANT:", tenant ? "\u2713 Set" : "\u2717 Missing");
21
- console.log(" CHROMADB_DATABASE:", database);
22
- return null;
23
- }
24
- console.log("\u{1F504} Connecting to ChromaDB Cloud...");
25
- console.log(" Tenant:", tenant);
26
- console.log(" Database:", database);
27
- try {
28
- const client = new ChromaClient({
29
- ssl: true,
30
- host: "api.trychroma.com",
31
- port: 443,
32
- headers: {
33
- "X-Chroma-Token": apiKey
34
- },
35
- tenant,
36
- database
37
- });
38
- const heartbeat = await client.heartbeat();
39
- console.log("\u2705 ChromaDB connection successful:", heartbeat);
40
- return client;
41
- } catch (error) {
42
- console.error("\u274C Failed to connect to ChromaDB:", error.message);
43
- return null;
44
- }
45
- }
46
- async function getOrCreateCollection(client) {
47
- const collectionName = "stackmemory_contexts";
48
- try {
49
- const collections = await client.listCollections();
50
- console.log("\u{1F4DA} Existing collections:", collections.map((c) => c.name).join(", ") || "none");
51
- const collection = await client.getOrCreateCollection({
52
- name: collectionName,
53
- metadata: {
54
- description: "StackMemory context storage",
55
- created_by: "test-chromadb-sync",
56
- version: "2.0.0"
57
- }
58
- });
59
- console.log(`\u2705 Collection '${collectionName}' ready`);
60
- const count = await collection.count();
61
- console.log(` Current entries: ${count}`);
62
- return collection;
63
- } catch (error) {
64
- console.error("\u274C Failed to create/get collection:", error.message);
65
- return null;
66
- }
67
- }
68
- async function loadLocalContexts() {
69
- const storageFile = path.join(os.homedir(), ".stackmemory", "context-storage", "contexts.jsonl");
70
- if (!fs.existsSync(storageFile)) {
71
- console.log("\u26A0\uFE0F No local contexts found");
72
- return [];
73
- }
74
- const contexts = [];
75
- const fileStream = fs.createReadStream(storageFile);
76
- const rl = readline.createInterface({
77
- input: fileStream,
78
- crlfDelay: Infinity
79
- });
80
- for await (const line of rl) {
81
- if (line.trim()) {
82
- try {
83
- contexts.push(JSON.parse(line));
84
- } catch (error) {
85
- console.warn("Failed to parse line:", line.substring(0, 50));
86
- }
87
- }
88
- }
89
- console.log(`\u{1F4C1} Loaded ${contexts.length} local contexts`);
90
- return contexts;
91
- }
92
- async function syncContextsToChromaDB(collection, contexts) {
93
- console.log(`
94
- \u{1F504} Syncing ${contexts.length} contexts to ChromaDB...`);
95
- let synced = 0;
96
- let failed = 0;
97
- const batchSize = 10;
98
- for (let i = 0; i < contexts.length; i += batchSize) {
99
- const batch = contexts.slice(i, Math.min(i + batchSize, contexts.length));
100
- const ids = [];
101
- const documents = [];
102
- const metadatas = [];
103
- for (const ctx of batch) {
104
- ids.push(ctx.id || `ctx_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`);
105
- documents.push(ctx.content || JSON.stringify(ctx));
106
- const metadata = {
107
- timestamp: ctx.timestamp || ctx.stored_at || (/* @__PURE__ */ new Date()).toISOString(),
108
- type: ctx.type || "context",
109
- user_id: ctx.user_id || process.env.USER || "default",
110
- project: ctx.project || "stackmemory"
111
- };
112
- if (ctx.session_id) metadata.session_id = ctx.session_id;
113
- if (ctx.metadata) {
114
- Object.entries(ctx.metadata).forEach(([key, value]) => {
115
- if (value !== void 0 && value !== null) {
116
- metadata[key] = String(value);
117
- }
118
- });
119
- }
120
- metadatas.push(metadata);
121
- }
122
- try {
123
- await collection.upsert({
124
- ids,
125
- documents,
126
- metadatas
127
- });
128
- synced += batch.length;
129
- console.log(` \u2713 Batch ${Math.floor(i / batchSize) + 1}: ${batch.length} contexts synced`);
130
- } catch (error) {
131
- failed += batch.length;
132
- console.error(` \u2717 Batch ${Math.floor(i / batchSize) + 1} failed:`, error.message);
133
- }
134
- }
135
- console.log(`
136
- \u{1F4CA} Sync complete:`);
137
- console.log(` \u2705 Synced: ${synced}`);
138
- console.log(` \u274C Failed: ${failed}`);
139
- return { synced, failed };
140
- }
141
- async function queryRecentContexts(collection) {
142
- console.log("\n\u{1F50D} Querying recent contexts...");
143
- try {
144
- const results = await collection.query({
145
- queryTexts: ["task complete code change"],
146
- nResults: 5
147
- });
148
- if (results.ids && results.ids[0].length > 0) {
149
- console.log(`Found ${results.ids[0].length} relevant contexts:`);
150
- for (let i = 0; i < results.ids[0].length; i++) {
151
- const metadata = results.metadatas[0][i];
152
- const document = results.documents[0][i];
153
- console.log(`
154
- \u{1F4C4} Context ${i + 1}:`);
155
- console.log(` ID: ${results.ids[0][i]}`);
156
- console.log(` Type: ${metadata.type}`);
157
- console.log(` Timestamp: ${metadata.timestamp}`);
158
- console.log(` Content: ${document.substring(0, 100)}...`);
159
- }
160
- } else {
161
- console.log("No contexts found");
162
- }
163
- } catch (error) {
164
- console.error("Failed to query contexts:", error.message);
165
- }
166
- }
167
- async function main() {
168
- console.log("\u{1F680} ChromaDB Sync Test\n");
169
- const client = await testChromaDBConnection();
170
- if (!client) {
171
- console.error("\n\u274C Cannot proceed without ChromaDB connection");
172
- console.log("\n\u{1F4DD} To fix:");
173
- console.log("1. Ensure you have a ChromaDB Cloud account");
174
- console.log("2. Add credentials to .env:");
175
- console.log(" CHROMADB_API_KEY=your-api-key");
176
- console.log(" CHROMADB_TENANT=your-tenant-id");
177
- console.log(" CHROMADB_DATABASE=stackmemory");
178
- process.exit(1);
179
- }
180
- const collection = await getOrCreateCollection(client);
181
- if (!collection) {
182
- process.exit(1);
183
- }
184
- const contexts = await loadLocalContexts();
185
- if (contexts.length > 0) {
186
- await syncContextsToChromaDB(collection, contexts);
187
- }
188
- await queryRecentContexts(collection);
189
- console.log("\n\u2705 Test complete!");
190
- }
191
- main().catch(console.error);
192
- //# sourceMappingURL=test-chromadb-sync.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../scripts/test-chromadb-sync.ts"],
4
- "sourcesContent": ["#!/usr/bin/env tsx\n\n/**\n * Test ChromaDB synchronization and upload local contexts\n */\n\nimport { ChromaClient } from 'chromadb';\nimport * as fs from 'fs';\nimport * as path from 'path';\nimport * as os from 'os';\nimport * as readline from 'readline';\nimport dotenv from 'dotenv';\n\n// Load environment variables\ndotenv.config();\n\nasync function testChromaDBConnection() {\n const apiKey = process.env.CHROMADB_API_KEY;\n const tenant = process.env.CHROMADB_TENANT;\n const database = process.env.CHROMADB_DATABASE || 'stackmemory';\n \n if (!apiKey || !tenant) {\n console.error('\u274C Missing ChromaDB credentials in .env');\n console.log(' CHROMADB_API_KEY:', apiKey ? '\u2713 Set' : '\u2717 Missing');\n console.log(' CHROMADB_TENANT:', tenant ? '\u2713 Set' : '\u2717 Missing');\n console.log(' CHROMADB_DATABASE:', database);\n return null;\n }\n\n console.log('\uD83D\uDD04 Connecting to ChromaDB Cloud...');\n console.log(' Tenant:', tenant);\n console.log(' Database:', database);\n \n try {\n // Create ChromaDB client for cloud using new API\n const client = new ChromaClient({\n ssl: true,\n host: 'api.trychroma.com',\n port: 443,\n headers: {\n 'X-Chroma-Token': apiKey\n },\n tenant: tenant,\n database: database\n });\n\n // Test connection\n const heartbeat = await client.heartbeat();\n console.log('\u2705 ChromaDB connection successful:', heartbeat);\n \n return client;\n } catch (error: unknown) {\n console.error('\u274C Failed to connect to ChromaDB:', (error as Error).message);\n return null;\n }\n}\n\nasync function getOrCreateCollection(client: ChromaClient) {\n const collectionName = 'stackmemory_contexts';\n \n try {\n // Try to get existing collection\n const collections = await client.listCollections();\n console.log('\uD83D\uDCDA Existing collections:', collections.map((c: any) => c.name).join(', ') || 'none');\n \n // Get or create the collection\n const collection = await client.getOrCreateCollection({\n name: collectionName,\n metadata: {\n description: 'StackMemory context storage',\n created_by: 'test-chromadb-sync',\n version: '2.0.0'\n }\n });\n \n console.log(`\u2705 Collection '${collectionName}' ready`);\n \n // Get collection count\n const count = await collection.count();\n console.log(` Current entries: ${count}`);\n \n return collection;\n } catch (error: unknown) {\n console.error('\u274C Failed to create/get collection:', (error as Error).message);\n return null;\n }\n}\n\nasync function loadLocalContexts() {\n const storageFile = path.join(os.homedir(), '.stackmemory', 'context-storage', 'contexts.jsonl');\n \n if (!fs.existsSync(storageFile)) {\n console.log('\u26A0\uFE0F No local contexts found');\n return [];\n }\n \n const contexts: any[] = [];\n const fileStream = fs.createReadStream(storageFile);\n const rl = readline.createInterface({\n input: fileStream,\n crlfDelay: Infinity\n });\n\n for await (const line of rl) {\n if (line.trim()) {\n try {\n contexts.push(JSON.parse(line));\n } catch (error) {\n console.warn('Failed to parse line:', line.substring(0, 50));\n }\n }\n }\n \n console.log(`\uD83D\uDCC1 Loaded ${contexts.length} local contexts`);\n return contexts;\n}\n\nasync function syncContextsToChromaDB(collection: any, contexts: any[]) {\n console.log(`\\n\uD83D\uDD04 Syncing ${contexts.length} contexts to ChromaDB...`);\n \n let synced = 0;\n let failed = 0;\n \n // Batch upload for efficiency\n const batchSize = 10;\n for (let i = 0; i < contexts.length; i += batchSize) {\n const batch = contexts.slice(i, Math.min(i + batchSize, contexts.length));\n \n const ids: string[] = [];\n const documents: string[] = [];\n const metadatas: any[] = [];\n \n for (const ctx of batch) {\n ids.push(ctx.id || `ctx_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`);\n documents.push(ctx.content || JSON.stringify(ctx));\n \n // Prepare metadata\n const metadata: any = {\n timestamp: ctx.timestamp || ctx.stored_at || new Date().toISOString(),\n type: ctx.type || 'context',\n user_id: ctx.user_id || process.env.USER || 'default',\n project: ctx.project || 'stackmemory'\n };\n \n // Add additional metadata if present\n if (ctx.session_id) metadata.session_id = ctx.session_id;\n if (ctx.metadata) {\n Object.entries(ctx.metadata).forEach(([key, value]) => {\n if (value !== undefined && value !== null) {\n metadata[key] = String(value);\n }\n });\n }\n \n metadatas.push(metadata);\n }\n \n try {\n await collection.upsert({\n ids,\n documents,\n metadatas\n });\n synced += batch.length;\n console.log(` \u2713 Batch ${Math.floor(i / batchSize) + 1}: ${batch.length} contexts synced`);\n } catch (error: unknown) {\n failed += batch.length;\n console.error(` \u2717 Batch ${Math.floor(i / batchSize) + 1} failed:`, (error as Error).message);\n }\n }\n \n console.log(`\\n\uD83D\uDCCA Sync complete:`);\n console.log(` \u2705 Synced: ${synced}`);\n console.log(` \u274C Failed: ${failed}`);\n \n return { synced, failed };\n}\n\nasync function queryRecentContexts(collection: any) {\n console.log('\\n\uD83D\uDD0D Querying recent contexts...');\n \n try {\n // Query for recent contexts\n const results = await collection.query({\n queryTexts: ['task complete code change'],\n nResults: 5\n });\n \n if (results.ids && results.ids[0].length > 0) {\n console.log(`Found ${results.ids[0].length} relevant contexts:`);\n \n for (let i = 0; i < results.ids[0].length; i++) {\n const metadata = results.metadatas[0][i];\n const document = results.documents[0][i];\n console.log(`\\n\uD83D\uDCC4 Context ${i + 1}:`);\n console.log(` ID: ${results.ids[0][i]}`);\n console.log(` Type: ${metadata.type}`);\n console.log(` Timestamp: ${metadata.timestamp}`);\n console.log(` Content: ${document.substring(0, 100)}...`);\n }\n } else {\n console.log('No contexts found');\n }\n } catch (error: unknown) {\n console.error('Failed to query contexts:', (error as Error).message);\n }\n}\n\nasync function main() {\n console.log('\uD83D\uDE80 ChromaDB Sync Test\\n');\n \n // Connect to ChromaDB\n const client = await testChromaDBConnection();\n if (!client) {\n console.error('\\n\u274C Cannot proceed without ChromaDB connection');\n console.log('\\n\uD83D\uDCDD To fix:');\n console.log('1. Ensure you have a ChromaDB Cloud account');\n console.log('2. Add credentials to .env:');\n console.log(' CHROMADB_API_KEY=your-api-key');\n console.log(' CHROMADB_TENANT=your-tenant-id');\n console.log(' CHROMADB_DATABASE=stackmemory');\n process.exit(1);\n }\n \n // Get or create collection\n const collection = await getOrCreateCollection(client);\n if (!collection) {\n process.exit(1);\n }\n \n // Load local contexts\n const contexts = await loadLocalContexts();\n \n if (contexts.length > 0) {\n // Sync to ChromaDB\n await syncContextsToChromaDB(collection, contexts);\n }\n \n // Query recent contexts\n await queryRecentContexts(collection);\n \n console.log('\\n\u2705 Test complete!');\n}\n\nmain().catch(console.error);"],
5
- "mappings": "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",
6
- "names": []
7
- }