claude-memory-layer 1.0.27 → 1.0.29

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 (331) hide show
  1. package/.env.example +7 -0
  2. package/AGENTS.md +11 -0
  3. package/README.md +374 -49
  4. package/benchmarks/replay/anonymized-real-sessions.json +48 -0
  5. package/dist/cli/index.js +10097 -6003
  6. package/dist/cli/index.js.map +4 -4
  7. package/dist/core/index.js +9745 -5587
  8. package/dist/core/index.js.map +4 -4
  9. package/dist/hooks/post-tool-use.js +6545 -5270
  10. package/dist/hooks/post-tool-use.js.map +4 -4
  11. package/dist/hooks/semantic-daemon.js +6646 -5354
  12. package/dist/hooks/semantic-daemon.js.map +4 -4
  13. package/dist/hooks/session-end.js +6618 -5347
  14. package/dist/hooks/session-end.js.map +4 -4
  15. package/dist/hooks/session-start.js +6619 -5354
  16. package/dist/hooks/session-start.js.map +4 -4
  17. package/dist/hooks/stop.js +6614 -5325
  18. package/dist/hooks/stop.js.map +4 -4
  19. package/dist/hooks/user-prompt-submit.js +6702 -5356
  20. package/dist/hooks/user-prompt-submit.js.map +4 -4
  21. package/dist/index.js +13537 -0
  22. package/dist/index.js.map +7 -0
  23. package/dist/mcp/index.js +20770 -0
  24. package/dist/mcp/index.js.map +7 -0
  25. package/dist/server/api/index.js +6632 -5319
  26. package/dist/server/api/index.js.map +4 -4
  27. package/dist/server/index.js +6667 -5340
  28. package/dist/server/index.js.map +4 -4
  29. package/dist/services/memory-service.js +6568 -5350
  30. package/dist/services/memory-service.js.map +4 -4
  31. package/dist/ui/assets/js/bootstrap.js +244 -0
  32. package/dist/ui/assets/js/chat.js +373 -0
  33. package/dist/ui/assets/js/disclosure.js +232 -0
  34. package/dist/ui/assets/js/modals.js +298 -0
  35. package/dist/ui/assets/js/overview.js +655 -0
  36. package/dist/ui/assets/js/state.js +72 -0
  37. package/dist/ui/assets/js/views.js +468 -0
  38. package/dist/ui/index.html +43 -1
  39. package/dist/ui/index.ts +3 -0
  40. package/dist/ui/style.css +222 -0
  41. package/docs/ARCHITECTURE_COMPARISON_AND_RECOMMENDATIONS.md +627 -0
  42. package/docs/HERMES_MEMORY_INGESTION_ANALYSIS.md +440 -0
  43. package/docs/MEMORY_USEFULNESS_AUDIT.md +371 -0
  44. package/docs/MEMORY_USEFULNESS_AUDIT_RAW.json +80 -0
  45. package/docs/MEMSEARCH_PROJECT_STRUCTURE_ANALYSIS.md +333 -0
  46. package/docs/PRODUCT_VALIDATION_MATRIX.md +82 -0
  47. package/docs/PROJECT_STRUCTURE_ANALYSIS.md +421 -0
  48. package/docs/REFACTORING_MILESTONES_AND_ISSUES.md +501 -0
  49. package/docs/REFACTORING_PLAN_THIN_CORE.md +414 -0
  50. package/docs/REFERENCE_PROJECT_ANALYSES.md +25 -0
  51. package/docs/SUPERLOCALMEMORY_PROJECT_STRUCTURE_ANALYSIS.md +452 -0
  52. package/docs/TARGET_ARCHITECTURE_AND_FOLDER_STRUCTURE.md +446 -0
  53. package/docs/architecture/comparison-index.md +47 -0
  54. package/docs/reports/codex-real-data-validation-20260505T040447Z.md +46 -0
  55. package/package.json +12 -5
  56. package/scripts/build.ts +25 -8
  57. package/scripts/generate-session-qrels.ts +126 -0
  58. package/scripts/postinstall-embedding-backend.cjs +142 -0
  59. package/scripts/replay-retrieval-benchmark.ts +69 -0
  60. package/specs/thin-core-refactor/context.md +275 -0
  61. package/specs/thin-core-refactor/plan.md +536 -0
  62. package/specs/thin-core-refactor/spec.md +465 -0
  63. package/src/adapters/claude/capture/index.ts +3 -0
  64. package/src/adapters/claude/context/index.ts +3 -0
  65. package/src/adapters/claude/hooks/index.ts +21 -0
  66. package/src/adapters/claude/hooks/post-tool-use.ts +239 -0
  67. package/src/adapters/claude/hooks/prompt-injection-policy.ts +104 -0
  68. package/src/adapters/claude/hooks/semantic-daemon-client.ts +209 -0
  69. package/src/adapters/claude/hooks/semantic-daemon.ts +283 -0
  70. package/src/adapters/claude/hooks/session-end.ts +59 -0
  71. package/src/adapters/claude/hooks/session-start.ts +73 -0
  72. package/src/adapters/claude/hooks/stop.ts +128 -0
  73. package/src/adapters/claude/hooks/user-prompt-submit.ts +361 -0
  74. package/src/adapters/claude/index.ts +4 -0
  75. package/src/adapters/claude/transcript/index.ts +4 -0
  76. package/src/adapters/claude/transcript/transcript-reader.ts +57 -0
  77. package/src/adapters/claude/transcript/turn-reconstructor.ts +65 -0
  78. package/src/apps/cli/claude-settings-hooks.ts +138 -0
  79. package/src/apps/cli/codex-import-runner.ts +125 -0
  80. package/src/apps/cli/codex-validation-output.ts +95 -0
  81. package/src/apps/cli/hermes-import-runner.ts +130 -0
  82. package/src/apps/cli/hermes-validation-output.ts +91 -0
  83. package/src/apps/cli/index.ts +1731 -0
  84. package/src/apps/cli/mcp-install.ts +106 -0
  85. package/src/apps/cli/retrieval-disclosure-output.ts +196 -0
  86. package/src/apps/dashboard/assets/js/bootstrap.js +244 -0
  87. package/src/apps/dashboard/assets/js/chat.js +373 -0
  88. package/src/apps/dashboard/assets/js/disclosure.js +232 -0
  89. package/src/apps/dashboard/assets/js/modals.js +298 -0
  90. package/src/apps/dashboard/assets/js/overview.js +655 -0
  91. package/src/apps/dashboard/assets/js/state.js +72 -0
  92. package/src/apps/dashboard/assets/js/views.js +468 -0
  93. package/src/{ui → apps/dashboard}/index.html +43 -1
  94. package/src/apps/dashboard/index.ts +3 -0
  95. package/src/{ui → apps/dashboard}/style.css +222 -0
  96. package/src/apps/index.ts +5 -0
  97. package/src/apps/server/api/chat.ts +244 -0
  98. package/src/apps/server/api/citations.ts +105 -0
  99. package/src/apps/server/api/events.ts +137 -0
  100. package/src/apps/server/api/health.ts +53 -0
  101. package/src/apps/server/api/index.ts +26 -0
  102. package/src/apps/server/api/projects.ts +74 -0
  103. package/src/apps/server/api/search.ts +184 -0
  104. package/src/apps/server/api/sessions.ts +115 -0
  105. package/src/apps/server/api/stats.ts +723 -0
  106. package/src/apps/server/api/turns.ts +143 -0
  107. package/src/apps/server/api/utils.ts +65 -0
  108. package/src/apps/server/index.ts +111 -0
  109. package/src/cli/index.ts +2 -1311
  110. package/src/cli/retrieval-disclosure-output.ts +2 -0
  111. package/src/compat/index.ts +5 -0
  112. package/src/core/derive/fact-deriver.ts +170 -0
  113. package/src/core/derive/index.ts +2 -0
  114. package/src/core/derive/summary-deriver.ts +76 -0
  115. package/src/core/embedder.ts +4 -152
  116. package/src/core/engine/embedding-maintenance-service.ts +187 -0
  117. package/src/core/engine/endless-memory-services.ts +4 -0
  118. package/src/core/engine/index.ts +19 -0
  119. package/src/core/engine/memory-engine-services.ts +170 -0
  120. package/src/core/engine/memory-ingest-service.ts +317 -0
  121. package/src/core/engine/memory-query-service.ts +173 -0
  122. package/src/core/engine/memory-runtime-service.ts +162 -0
  123. package/src/core/engine/memory-service-composition.ts +231 -0
  124. package/src/core/engine/retrieval-analytics-service.ts +181 -0
  125. package/src/core/engine/retrieval-disclosure-service.ts +420 -0
  126. package/src/core/engine/retrieval-orchestrator.ts +377 -0
  127. package/src/core/engine/retrieval-services.ts +176 -0
  128. package/src/core/engine/shared-memory-services.ts +4 -0
  129. package/src/core/entity-repo.ts +1 -3
  130. package/src/core/event-store.ts +3 -3
  131. package/src/core/evidence-aligner.ts +2 -2
  132. package/src/core/external-market-context.ts +582 -0
  133. package/src/core/graduation.ts +2 -3
  134. package/src/core/index.ts +21 -0
  135. package/src/core/matcher.ts +2 -4
  136. package/src/core/model/memory-fact.ts +30 -0
  137. package/src/core/model/memory-rule.ts +14 -0
  138. package/src/core/model/memory-summary.ts +21 -0
  139. package/src/core/model/raw-event.ts +28 -0
  140. package/src/core/model/retrieval-result.ts +35 -0
  141. package/src/core/privacy/filter.ts +21 -10
  142. package/src/core/product-validation-matrix.ts +314 -0
  143. package/src/core/progressive-retriever.ts +1 -2
  144. package/src/core/registry/project-path.ts +54 -0
  145. package/src/core/registry/session-registry.ts +69 -0
  146. package/src/core/replay-evaluator.ts +625 -0
  147. package/src/core/retrieval-benchmark.ts +117 -0
  148. package/src/core/retrieval-quality.ts +109 -0
  149. package/src/core/retriever.ts +53 -15
  150. package/src/core/session-qrels.ts +360 -0
  151. package/src/core/shared-event-store.ts +1 -1
  152. package/src/core/sqlite-event-store.ts +35 -11
  153. package/src/core/task/blocker-resolver.ts +2 -2
  154. package/src/core/task/task-resolver.ts +0 -1
  155. package/src/core/vector-outbox.ts +1 -10
  156. package/src/core/vector-worker.ts +1 -1
  157. package/src/extensions/endless-memory/endless-memory-services.ts +350 -0
  158. package/src/extensions/endless-memory/index.ts +1 -0
  159. package/src/extensions/index.ts +5 -0
  160. package/src/extensions/mcp/handlers.ts +960 -0
  161. package/src/extensions/mcp/index.ts +48 -0
  162. package/src/extensions/mcp/tools.ts +252 -0
  163. package/src/extensions/shared-memory/index.ts +1 -0
  164. package/src/extensions/shared-memory/shared-memory-services.ts +211 -0
  165. package/src/extensions/vector/embedder.ts +197 -0
  166. package/src/extensions/vector/index.ts +1 -0
  167. package/src/hooks/post-tool-use.ts +3 -236
  168. package/src/hooks/semantic-daemon-client.ts +1 -208
  169. package/src/hooks/semantic-daemon.ts +6 -271
  170. package/src/hooks/session-end.ts +4 -79
  171. package/src/hooks/session-start.ts +4 -73
  172. package/src/hooks/stop.ts +3 -173
  173. package/src/hooks/user-prompt-submit.ts +3 -338
  174. package/src/index.ts +13 -0
  175. package/src/mcp/handlers.ts +2 -212
  176. package/src/mcp/index.ts +3 -46
  177. package/src/mcp/tools.ts +2 -78
  178. package/src/server/api/chat.ts +2 -244
  179. package/src/server/api/citations.ts +2 -105
  180. package/src/server/api/events.ts +2 -137
  181. package/src/server/api/health.ts +2 -53
  182. package/src/server/api/index.ts +2 -26
  183. package/src/server/api/projects.ts +2 -74
  184. package/src/server/api/search.ts +2 -102
  185. package/src/server/api/sessions.ts +2 -115
  186. package/src/server/api/stats.ts +2 -724
  187. package/src/server/api/turns.ts +2 -143
  188. package/src/server/api/utils.ts +2 -46
  189. package/src/server/index.ts +2 -100
  190. package/src/services/bootstrap-organizer.ts +46 -26
  191. package/src/services/codex-session-history-importer.ts +521 -29
  192. package/src/services/hermes-session-history-importer.ts +733 -0
  193. package/src/services/memory-service-config.ts +36 -0
  194. package/src/services/memory-service-registry.ts +150 -0
  195. package/src/services/memory-service.ts +211 -1325
  196. package/src/services/session-history-importer.ts +58 -14
  197. package/tests/README.md +23 -0
  198. package/tests/adapters/claude/claude-semantic-daemon-adapter.test.ts +54 -0
  199. package/tests/adapters/claude/claude-transcript-reconstructor.test.ts +98 -0
  200. package/tests/adapters/claude-hook-prompt-injection-policy.test.ts +99 -0
  201. package/tests/apps/app-layer-boundary.test.ts +48 -0
  202. package/tests/apps/claude-settings-hooks.test.ts +107 -0
  203. package/tests/apps/cli-disclosure-output.test.ts +212 -0
  204. package/tests/apps/codex-import-runner.test.ts +99 -0
  205. package/tests/apps/codex-validation-output.test.ts +100 -0
  206. package/tests/apps/hermes-import-runner.test.ts +99 -0
  207. package/tests/apps/mcp-install-command.test.ts +59 -0
  208. package/tests/apps/package-build-entrypoints.test.ts +30 -0
  209. package/tests/apps/postinstall-embedding-backend.test.ts +167 -0
  210. package/tests/apps/search-api-disclosure.test.ts +162 -0
  211. package/tests/apps/stats-api-lightweight.test.ts +67 -0
  212. package/tests/apps/ui-disclosure-output.test.ts +140 -0
  213. package/tests/{bootstrap-organizer.test.ts → core/bootstrap-organizer.test.ts} +1 -1
  214. package/tests/{canonical-key.test.ts → core/canonical-key.test.ts} +1 -1
  215. package/tests/core/codex-session-history-importer-validation.test.ts +185 -0
  216. package/tests/{consolidation-worker.test.ts → core/consolidation-worker.test.ts} +2 -2
  217. package/tests/core/embedding-maintenance-service.test.ts +282 -0
  218. package/tests/{evidence-aligner.test.ts → core/evidence-aligner.test.ts} +1 -1
  219. package/tests/core/external-market-context.test.ts +209 -0
  220. package/tests/core/fact-deriver.test.ts +79 -0
  221. package/tests/core/hermes-session-history-importer-validation.test.ts +609 -0
  222. package/tests/{ingest-interceptor.test.ts → core/ingest-interceptor.test.ts} +1 -1
  223. package/tests/{markdown-mirror.test.ts → core/markdown-mirror.test.ts} +2 -2
  224. package/tests/{matcher.test.ts → core/matcher.test.ts} +1 -1
  225. package/tests/{md-mirror.test.ts → core/md-mirror.test.ts} +2 -2
  226. package/tests/core/memory-engine-services.test.ts +240 -0
  227. package/tests/core/memory-ingest-service.test.ts +296 -0
  228. package/tests/core/memory-query-service.test.ts +129 -0
  229. package/tests/core/memory-runtime-service.test.ts +201 -0
  230. package/tests/core/memory-service-composition.test.ts +192 -0
  231. package/tests/core/memory-service-config.test.ts +41 -0
  232. package/tests/core/memory-service-facade.test.ts +30 -0
  233. package/tests/core/memory-service-registry.test.ts +206 -0
  234. package/tests/core/product-validation-matrix.test.ts +61 -0
  235. package/tests/core/project-registry.test.ts +78 -0
  236. package/tests/core/replay-evaluator.test.ts +181 -0
  237. package/tests/core/retrieval-analytics-service.test.ts +210 -0
  238. package/tests/core/retrieval-benchmark.test.ts +93 -0
  239. package/tests/core/retrieval-disclosure-service.test.ts +264 -0
  240. package/tests/core/retrieval-orchestrator.test.ts +403 -0
  241. package/tests/core/retrieval-quality.test.ts +31 -0
  242. package/tests/core/retrieval-services.test.ts +185 -0
  243. package/tests/{retriever-fallback-chain.test.ts → core/retriever-fallback-chain.test.ts} +3 -3
  244. package/tests/{retriever-strategy-scope.test.ts → core/retriever-strategy-scope.test.ts} +70 -3
  245. package/tests/{retriever.memu-adoption.test.ts → core/retriever.memu-adoption.test.ts} +3 -3
  246. package/tests/core/session-history-importer-filter.test.ts +78 -0
  247. package/tests/core/session-qrels.test.ts +250 -0
  248. package/tests/{sqlite-event-store-replication.test.ts → core/sqlite-event-store-replication.test.ts} +36 -1
  249. package/tests/core/summary-deriver.test.ts +66 -0
  250. package/tests/extensions/embedder-warning-suppression.test.ts +53 -0
  251. package/tests/extensions/endless-memory-extension-boundary.test.ts +17 -0
  252. package/tests/extensions/endless-memory-services.test.ts +325 -0
  253. package/tests/extensions/mcp-context-tools.test.ts +905 -0
  254. package/tests/extensions/mcp-extension-boundary.test.ts +21 -0
  255. package/tests/extensions/mcp-package-build.test.ts +22 -0
  256. package/tests/extensions/mcp-project-aware-tools.test.ts +102 -0
  257. package/tests/extensions/shared-memory-extension-boundary.test.ts +24 -0
  258. package/tests/extensions/shared-memory-services.test.ts +309 -0
  259. package/tests/extensions/vector-extension-boundary.test.ts +21 -0
  260. package/.claude/settings.local.json +0 -25
  261. package/.npm-cache/_cacache/content-v2/sha512/04/76/c098f88dfe584a2b80870bff7421b05d17d3d9ee1027f77772332a22d3f93a9a57101a2855107f6ad82077a818bba912b2bc317f2361b5ddb09ad284d9ce +0 -0
  262. package/.npm-cache/_cacache/content-v2/sha512/60/25/d2ecd39cfc7cab58351162814be77f935c6d6491c10c3745d456da7ddb2117ffd90c10e53fe3c0f1ed16b403307841543634504398b16ee4e6b6dd8e0c45 +0 -0
  263. package/.npm-cache/_cacache/index-v5/2b/9a/7f8f40206ed8a2e0a84efaa953ccaed1f5d001e14b931083f2e7a0738007 +0 -2
  264. package/.npm-cache/_cacache/index-v5/2e/d9/fcfa5c6a6abdc2a3644ab84a95936047298c465a2f47ee03db8f7fe1e946 +0 -3
  265. package/.npm-cache/_cacache/index-v5/a9/42/e519633356d12d3d2f19da66a8301016d496c8f5c3e0554124aaa62dc043 +0 -2
  266. package/.npm-cache/_logs/2026-02-26T12_04_52_729Z-debug-0.log +0 -256
  267. package/.npm-cache/_logs/2026-02-26T12_05_36_835Z-debug-0.log +0 -18
  268. package/.npm-cache/_logs/2026-02-26T12_05_45_982Z-debug-0.log +0 -32
  269. package/.npm-cache/_logs/2026-02-26T12_05_48_515Z-debug-0.log +0 -260
  270. package/.npm-cache/_logs/2026-02-26T12_05_53_567Z-debug-0.log +0 -69
  271. package/.npm-cache/_update-notifier-last-checked +0 -0
  272. package/bootstrap-kb/decisions/decisions.md +0 -244
  273. package/bootstrap-kb/glossary/glossary.md +0 -46
  274. package/bootstrap-kb/modules/.claude-plugin.md +0 -22
  275. package/bootstrap-kb/modules/agents.md.md +0 -15
  276. package/bootstrap-kb/modules/claude.md.md +0 -15
  277. package/bootstrap-kb/modules/context.md.md +0 -15
  278. package/bootstrap-kb/modules/docs.md +0 -18
  279. package/bootstrap-kb/modules/handoff.md.md +0 -15
  280. package/bootstrap-kb/modules/package-lock.json.md +0 -15
  281. package/bootstrap-kb/modules/package.json.md +0 -15
  282. package/bootstrap-kb/modules/plan.md.md +0 -15
  283. package/bootstrap-kb/modules/readme.md.md +0 -15
  284. package/bootstrap-kb/modules/scripts.md +0 -26
  285. package/bootstrap-kb/modules/spec.md.md +0 -15
  286. package/bootstrap-kb/modules/specs.md +0 -20
  287. package/bootstrap-kb/modules/src.md +0 -51
  288. package/bootstrap-kb/modules/tests.md +0 -42
  289. package/bootstrap-kb/modules/tsconfig.json.md +0 -15
  290. package/bootstrap-kb/modules/vitest.config.ts.md +0 -15
  291. package/bootstrap-kb/overview/overview.md +0 -40
  292. package/bootstrap-kb/sources/manifest.json +0 -950
  293. package/bootstrap-kb/sources/manifest.md +0 -227
  294. package/bootstrap-kb/timeline/timeline.md +0 -57
  295. package/claude-memory-layer-1.0.14.tgz +0 -0
  296. package/d.sh +0 -3
  297. package/deploy.sh +0 -3
  298. package/dist/ui/app.js +0 -2101
  299. package/memory/.claude-plugin/commands/2026-02-25.md +0 -263
  300. package/memory/_index.md +0 -419
  301. package/memory/agent_response/uncategorized/2026-02-26.md +0 -176
  302. package/memory/agent_response/uncategorized/2026-03-03.md +0 -14
  303. package/memory/agent_response/uncategorized/2026-03-04.md +0 -1421
  304. package/memory/agent_response/uncategorized/2026-03-05.md +0 -157
  305. package/memory/default/uncategorized/2026-02-25.md +0 -4839
  306. package/memory/session_summary/uncategorized/2026-02-26.md +0 -13
  307. package/memory/session_summary/uncategorized/2026-03-03.md +0 -5
  308. package/memory/session_summary/uncategorized/2026-03-04.md +0 -50
  309. package/memory/specs/20260207-dashboard-upgrade/2026-02-25.md +0 -142
  310. package/memory/specs/citations-system/2026-02-25.md +0 -1121
  311. package/memory/specs/endless-mode/2026-02-25.md +0 -1392
  312. package/memory/specs/entity-edge-model/2026-02-25.md +0 -1263
  313. package/memory/specs/evidence-aligner-v2/2026-02-25.md +0 -1028
  314. package/memory/specs/mcp-desktop-integration/2026-02-25.md +0 -1334
  315. package/memory/specs/post-tool-use-hook/2026-02-25.md +0 -1164
  316. package/memory/specs/private-tags/2026-02-25.md +0 -1057
  317. package/memory/specs/progressive-disclosure/2026-02-25.md +0 -1436
  318. package/memory/specs/task-entity-system/2026-02-25.md +0 -924
  319. package/memory/specs/vector-outbox-v2/2026-02-25.md +0 -1510
  320. package/memory/specs/web-viewer-ui/2026-02-25.md +0 -1709
  321. package/memory/tool_observation/uncategorized/2026-02-26.md +0 -209
  322. package/memory/tool_observation/uncategorized/2026-03-03.md +0 -21
  323. package/memory/tool_observation/uncategorized/2026-03-04.md +0 -1033
  324. package/memory/tool_observation/uncategorized/2026-03-05.md +0 -33
  325. package/memory/user_prompt/uncategorized/2026-02-26.md +0 -25
  326. package/memory/user_prompt/uncategorized/2026-03-04.md +0 -634
  327. package/memory/user_prompt/uncategorized/2026-03-05.md +0 -6
  328. package/specs/optional-duckdb/context.md +0 -77
  329. package/specs/optional-duckdb/plan.md +0 -142
  330. package/specs/optional-duckdb/spec.md +0 -35
  331. package/src/ui/app.js +0 -2101
@@ -1,176 +0,0 @@
1
-
2
- ## 2026-02-26T13:24:02.294Z | aff47d45-6a32-45d6-b584-15f4d93e2ff8
3
- - type: agent_response
4
- - session: f8003696-c17e-4e1d-819b-9502d73b9bd4
5
- 이제 문제를 파악했습니다. 현재 프롬프트에서 챗봇이 실제로 수행할 수 없는 기능(재고 확인, 쿠폰 적용, 배송 추적 등)도 제안 가능하도록 허용하고 있습니다.
6
-
7
- 챗봇의 실제 기능 목록을 기반으로 두 프롬프트 모두 개선하겠습니다.
8
-
9
- 먼저 **일반 프롬프트** (`_SYSTEM_PROMPT`)에 제한 사항을 추가합니다.
10
-
11
- 수정 완료했습니다. 변경 요약:
12
-
13
- ### 변경 사항 (`app/services/suggestion_service.py`)
14
-
15
- **1. 일반 프롬프트 (`_SYSTEM_PROMPT`)에 추가:**
16
- - "챗봇이 제공할 수 없는 기능" 섹션 신규 추가
17
- - 재고/품절 확인, 쿠폰/할인코드, 주문/결제, 배송 추적, 교환/반품/환불, A/S/보증, 회원/포인트, 매장 정보
18
- - 챗봇이 할 수 있는 기능 명시 (상품 검색, 가격 비교, 리뷰 분석, 방송 일정, 판매량 순위, 설명서 정보 등)
19
- - 좋은 예시에서 '배송 가능 지역 알려줘' → '홈쇼핑 방송 일정 알려줘'로 교체
20
-
21
- **2. PDID 프롬프트 (`_SYSTEM_PROMPT_PDID`) 변경:**
22
- - 허용 유형에서 불가능한 항목 제거: 배송/교환/반품, 할인/프로모션, A/S, 색상/사이즈 옵션
23
- - "챗봇이 제공할 수 없는 기능" 섹션 신규 추가 (재고, 쿠폰, 주문, 배송, 교환/반품, A/S, 회원, 색상/사이즈 옵션)
24
- - 챗봇이 이 상품에 대해 할 수 있는 것 명시 (설명서 기반 정보, 리뷰 분석, 방송 일정)
25
-
26
- 이제 "각 색상·사이즈별 재고 가능 여부 확인해줘" 같은 제안이 생성되지 않습니다.
27
- ## 2026-02-26T13:53:54.660Z | 798fb69b-1aed-469f-96e3-167b90a5e186
28
- - type: agent_response
29
- - session: bench-session-2
30
- 문제를 파악했습니다. `retrieval_traces` 테이블은 `sqlite-event-store.ts`에서 `CREATE TABLE IF NOT EXISTS`로 정의되어 있지만, API 엔드포인트에서 사용하는 DB 인스턴스가 해당 테이블을 초기화하지 못하고 있는 것 같습니다.
31
-
32
- 좀 더 정확한 원인을 확인하겠습니다.
33
- ## 2026-02-26T13:53:54.688Z | 8519d875-d5db-4b5c-8c6b-0542fbadf52c
34
- - type: agent_response
35
- - session: bench-session-2
36
- 원인을 찾았습니다. `sqlite-event-store.ts:56-60`에서:
37
-
38
- ```typescript
39
- // In read-only mode, skip schema creation
40
- if (this.readOnly) {
41
- this.initialized = true;
42
- return;
43
- }
44
- ```
45
-
46
- API 대시보드는 `readOnly: true`로 서비스를 생성하므로 스키마 생성을 건너뜁니다. 만약 DB가 `retrieval_traces` 테이블이 추가되기 전에 생성되었다면, read-only 모드에서는 테이블을 만들 수 없어서 에러가 발생합니다.
47
-
48
- `getRecentRetrievalTraces`와 `getRetrievalTraceStats`에서 테이블 미존재 시 빈 결과를 반환하도록 수정하겠습니다.
49
- ## 2026-02-26T13:53:54.697Z | cc73dce3-e4db-44f1-8a44-e6e1156f5c24
50
- - type: agent_response
51
- - session: bench-session-2
52
- 수정 완료했습니다. 빌드해서 확인하겠습니다.
53
- ## 2026-02-26T13:53:54.706Z | 66619324-dfef-4d55-bad6-406528e4cefa
54
- - type: agent_response
55
- - session: bench-session-2
56
- 빌드 성공했습니다.
57
-
58
- **원인**: `getServiceFromQuery()`가 `readOnly: true`로 `MemoryService`를 생성 → `initialize()`에서 read-only 모드일 때 스키마 생성을 건너뜀 → 이전 버전 DB에 `retrieval_traces` 테이블이 없으면 쿼리 시 에러 발생
59
-
60
- **수정 내용** (`sqlite-event-store.ts`):
61
- - `getRecentRetrievalTraces()`: `no such table` 에러 시 빈 배열 `[]` 반환
62
- - `getRetrievalTraceStats()`: `no such table` 에러 시 기본 빈 stats 객체 반환
63
- - 다른 에러는 기존대로 throw
64
- ## 2026-02-26T13:53:54.714Z | 2ab64c5d-2185-43ab-9077-3907362a96de
65
- - type: agent_response
66
- - session: bench-session-2
67
- `sqlite-event-store.ts:53-60`에서 보면:
68
-
69
- ```typescript
70
- async initialize(): Promise<void> {
71
- if (this.initialized) return;
72
-
73
- // In read-only mode, skip schema creation
74
- if (this.readOnly) {
75
- this.initialized = true;
76
- return;
77
- }
78
-
79
- // Create all tables in a single exec...
80
- sqliteExec(this.db, `CREATE TABLE IF NOT EXISTS ...`);
81
- }
82
- ```
83
-
84
- **스키마 생성 시점**: `MemoryService`가 **write 모드**로 `initialize()`를 처음 호출할 때입니다.
85
-
86
- 이건 실제로 MCP 플러그인이 Claude Code 세션에서 메모리를 기록할 때 발생합니다 (retrieve/store 호출 시).
87
-
88
- **문제 상황**:
89
- - 대시보드 API는 `readOnly: true`로 서비스를 생성 → 스키마 생성 안 함
90
- - 해당 프로젝트 DB가 `retrieval_traces` 테이블 추가 **이전 버전**에서 만들어졌으면, write 모드 세션이 한 번도 다시 초기화되지 않은 상태
91
- - 결과적으로 read-only API에서 존재하지 않는 테이블을 쿼리 → 에러
92
-
93
- **정상 흐름**: 해당 프로젝트에서 Claude Code를 한번 사용하면 write 모드 초기화가 실행되고 `CREATE TABLE IF NOT EXISTS`로 테이블이 생성됩니다. 그 이후엔 대시보드에서도 정상 조회됩니다.
94
-
95
- 방금 수정은 그 사이 간극(테이블 없는 상태)에서 에러 대신 빈 결과를 반환하도록 한 것입니다.
96
- ## 2026-02-26T13:53:54.721Z | f362a4f6-a91c-4f25-89fa-4108e6418340
97
- - type: agent_response
98
- - session: bench-session-2
99
- 커밋 완료: `60d59c6`
100
-
101
- `getRecentRetrievalTraces()`와 `getRetrievalTraceStats()`에서 `no such table` 에러 시 빈 결과를 반환하도록 수정했습니다.
102
- ## 2026-02-26T13:54:46.336Z | 08733485-243f-4a65-a81d-ec962bc9a1d5
103
- - type: agent_response
104
- - session: bench-session-3
105
- 문제를 파악했습니다. `retrieval_traces` 테이블은 `sqlite-event-store.ts`에서 `CREATE TABLE IF NOT EXISTS`로 정의되어 있지만, API 엔드포인트에서 사용하는 DB 인스턴스가 해당 테이블을 초기화하지 못하고 있는 것 같습니다.
106
-
107
- 좀 더 정확한 원인을 확인하겠습니다.
108
- ## 2026-02-26T13:54:46.356Z | acc9926e-20d3-477d-8fa0-e67983db0c0c
109
- - type: agent_response
110
- - session: bench-session-3
111
- 원인을 찾았습니다. `sqlite-event-store.ts:56-60`에서:
112
-
113
- ```typescript
114
- // In read-only mode, skip schema creation
115
- if (this.readOnly) {
116
- this.initialized = true;
117
- return;
118
- }
119
- ```
120
-
121
- API 대시보드는 `readOnly: true`로 서비스를 생성하므로 스키마 생성을 건너뜁니다. 만약 DB가 `retrieval_traces` 테이블이 추가되기 전에 생성되었다면, read-only 모드에서는 테이블을 만들 수 없어서 에러가 발생합니다.
122
-
123
- `getRecentRetrievalTraces`와 `getRetrievalTraceStats`에서 테이블 미존재 시 빈 결과를 반환하도록 수정하겠습니다.
124
- ## 2026-02-26T13:54:46.365Z | fca49e8b-4b39-48e7-a250-bd6100f96bab
125
- - type: agent_response
126
- - session: bench-session-3
127
- 수정 완료했습니다. 빌드해서 확인하겠습니다.
128
- ## 2026-02-26T13:54:46.374Z | 4e471294-7597-4a58-abc9-c220ac92b4bc
129
- - type: agent_response
130
- - session: bench-session-3
131
- 빌드 성공했습니다.
132
-
133
- **원인**: `getServiceFromQuery()`가 `readOnly: true`로 `MemoryService`를 생성 → `initialize()`에서 read-only 모드일 때 스키마 생성을 건너뜀 → 이전 버전 DB에 `retrieval_traces` 테이블이 없으면 쿼리 시 에러 발생
134
-
135
- **수정 내용** (`sqlite-event-store.ts`):
136
- - `getRecentRetrievalTraces()`: `no such table` 에러 시 빈 배열 `[]` 반환
137
- - `getRetrievalTraceStats()`: `no such table` 에러 시 기본 빈 stats 객체 반환
138
- - 다른 에러는 기존대로 throw
139
- ## 2026-02-26T13:54:46.382Z | a2ece559-3e19-4553-a558-ec809b54b527
140
- - type: agent_response
141
- - session: bench-session-3
142
- `sqlite-event-store.ts:53-60`에서 보면:
143
-
144
- ```typescript
145
- async initialize(): Promise<void> {
146
- if (this.initialized) return;
147
-
148
- // In read-only mode, skip schema creation
149
- if (this.readOnly) {
150
- this.initialized = true;
151
- return;
152
- }
153
-
154
- // Create all tables in a single exec...
155
- sqliteExec(this.db, `CREATE TABLE IF NOT EXISTS ...`);
156
- }
157
- ```
158
-
159
- **스키마 생성 시점**: `MemoryService`가 **write 모드**로 `initialize()`를 처음 호출할 때입니다.
160
-
161
- 이건 실제로 MCP 플러그인이 Claude Code 세션에서 메모리를 기록할 때 발생합니다 (retrieve/store 호출 시).
162
-
163
- **문제 상황**:
164
- - 대시보드 API는 `readOnly: true`로 서비스를 생성 → 스키마 생성 안 함
165
- - 해당 프로젝트 DB가 `retrieval_traces` 테이블 추가 **이전 버전**에서 만들어졌으면, write 모드 세션이 한 번도 다시 초기화되지 않은 상태
166
- - 결과적으로 read-only API에서 존재하지 않는 테이블을 쿼리 → 에러
167
-
168
- **정상 흐름**: 해당 프로젝트에서 Claude Code를 한번 사용하면 write 모드 초기화가 실행되고 `CREATE TABLE IF NOT EXISTS`로 테이블이 생성됩니다. 그 이후엔 대시보드에서도 정상 조회됩니다.
169
-
170
- 방금 수정은 그 사이 간극(테이블 없는 상태)에서 에러 대신 빈 결과를 반환하도록 한 것입니다.
171
- ## 2026-02-26T13:54:46.390Z | e21b392c-87c3-44b0-a355-2fb753804ba6
172
- - type: agent_response
173
- - session: bench-session-3
174
- 커밋 완료: `60d59c6`
175
-
176
- `getRecentRetrievalTraces()`와 `getRetrievalTraceStats()`에서 `no such table` 에러 시 빈 결과를 반환하도록 수정했습니다.
@@ -1,14 +0,0 @@
1
-
2
- ## 2026-03-03T14:04:37.701Z | 55805b7d-13d2-4e6e-9c1d-bcdf1f1259f9
3
- - type: agent_response
4
- - session: 3252b490-16ca-40fb-b30c-1171456e2c89
5
- 커밋 완료했습니다.
6
-
7
- **커밋 `b37aa13`** - `feat(cli): expand hook coverage to all lifecycle events`
8
-
9
- 변경 내용:
10
- - `src/cli/index.ts`: `SessionStart`, `Stop`, `SessionEnd` 훅 추가, `makeHook` 헬퍼로 리팩토링, `REQUIRED_HOOK_FILES` 상수 및 `hasHook` 헬퍼 추가, install/uninstall/status 명령 업데이트
11
- - `scripts/delete-unknown-projects.js`: 세션 레지스트리에 없는 프로젝트 디렉토리 정리 스크립트 (신규)
12
- - `package.json` / `package-lock.json`: 버전 1.0.18, `ops:projects:clean-unknown` 스크립트 추가
13
-
14
- 제외된 파일 (커밋 불포함): `.npm-cache/`, `bootstrap-kb/`, `claude-memory-layer-1.0.14.tgz`, `d.sh`, `deploy.sh`, `memory/`, `yarn.lock` (빌드 아티팩트 및 로컬 파일)