claude-memory-layer 1.0.18 → 1.0.20
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.
- package/config/kpi-thresholds.json +7 -0
- package/dist/cli/index.js +532 -79
- package/dist/cli/index.js.map +3 -3
- package/dist/core/index.js +49 -4
- package/dist/core/index.js.map +2 -2
- package/dist/hooks/post-tool-use.js +140 -3
- package/dist/hooks/post-tool-use.js.map +2 -2
- package/dist/hooks/session-end.js +140 -3
- package/dist/hooks/session-end.js.map +2 -2
- package/dist/hooks/session-start.js +140 -3
- package/dist/hooks/session-start.js.map +2 -2
- package/dist/hooks/stop.js +140 -3
- package/dist/hooks/stop.js.map +2 -2
- package/dist/hooks/user-prompt-submit.js +379 -34
- package/dist/hooks/user-prompt-submit.js.map +3 -3
- package/dist/server/api/index.js +467 -34
- package/dist/server/api/index.js.map +3 -3
- package/dist/server/index.js +474 -41
- package/dist/server/index.js.map +3 -3
- package/dist/services/memory-service.js +140 -3
- package/dist/services/memory-service.js.map +2 -2
- package/dist/ui/app.js +362 -4
- package/dist/ui/index.html +90 -0
- package/dist/ui/style.css +41 -0
- package/memory/_index.md +3 -0
- package/memory/agent_response/uncategorized/2026-03-03.md +14 -0
- package/memory/session_summary/uncategorized/2026-03-03.md +5 -0
- package/memory/tool_observation/uncategorized/2026-03-03.md +21 -0
- package/package.json +3 -2
- package/scripts/delete-unknown-projects.js +154 -0
- package/src/cli/index.ts +23 -1
- package/src/core/embedder.ts +3 -2
- package/src/core/sqlite-event-store.ts +32 -0
- package/src/core/types.ts +2 -2
- package/src/core/vector-store.ts +20 -0
- package/src/hooks/user-prompt-submit.ts +225 -29
- package/src/server/api/events.ts +7 -0
- package/src/server/api/stats.ts +346 -0
- package/src/services/memory-service.ts +119 -2
- package/src/ui/app.js +362 -4
- package/src/ui/index.html +90 -0
- package/src/ui/style.css +41 -0
package/src/ui/style.css
CHANGED
|
@@ -329,6 +329,23 @@ body {
|
|
|
329
329
|
opacity: 0.5;
|
|
330
330
|
}
|
|
331
331
|
|
|
332
|
+
.kpi-grid .stat-card .stat-value {
|
|
333
|
+
font-size: 28px;
|
|
334
|
+
}
|
|
335
|
+
.kpi-grid .stat-card .stat-label {
|
|
336
|
+
font-size: 12px;
|
|
337
|
+
}
|
|
338
|
+
.kpi-delta {
|
|
339
|
+
font-size: 11px;
|
|
340
|
+
margin-top: -4px;
|
|
341
|
+
margin-bottom: 8px;
|
|
342
|
+
color: var(--text-muted);
|
|
343
|
+
font-weight: 600;
|
|
344
|
+
}
|
|
345
|
+
.kpi-delta.good { color: var(--success); }
|
|
346
|
+
.kpi-delta.bad { color: var(--error); }
|
|
347
|
+
.kpi-delta.neutral { color: var(--text-muted); }
|
|
348
|
+
|
|
332
349
|
.stat-value {
|
|
333
350
|
font-size: 36px;
|
|
334
351
|
font-weight: 700;
|
|
@@ -485,8 +502,11 @@ body {
|
|
|
485
502
|
}
|
|
486
503
|
|
|
487
504
|
.type-user { background: rgba(59, 130, 246, 0.2); color: #60A5FA; }
|
|
505
|
+
.type-user-prompt { background: rgba(59, 130, 246, 0.2); color: #60A5FA; }
|
|
488
506
|
.type-agent { background: rgba(16, 185, 129, 0.2); color: #34D399; }
|
|
507
|
+
.type-agent-response { background: rgba(16, 185, 129, 0.2); color: #34D399; }
|
|
489
508
|
.type-tool { background: rgba(245, 158, 11, 0.2); color: #FBBF24; }
|
|
509
|
+
.type-tool-observation { background: rgba(245, 158, 11, 0.2); color: #FBBF24; }
|
|
490
510
|
.type-system { background: rgba(139, 92, 246, 0.2); color: #A78BFA; }
|
|
491
511
|
|
|
492
512
|
.event-time {
|
|
@@ -580,6 +600,10 @@ body {
|
|
|
580
600
|
color: var(--accent-primary);
|
|
581
601
|
font-weight: 600;
|
|
582
602
|
}
|
|
603
|
+
.sort-btn:disabled {
|
|
604
|
+
opacity: 0.35;
|
|
605
|
+
cursor: not-allowed;
|
|
606
|
+
}
|
|
583
607
|
|
|
584
608
|
/* Access Badge */
|
|
585
609
|
.access-badge {
|
|
@@ -594,6 +618,23 @@ body {
|
|
|
594
618
|
font-weight: 600;
|
|
595
619
|
}
|
|
596
620
|
|
|
621
|
+
.adherence-badge {
|
|
622
|
+
font-size: 10px;
|
|
623
|
+
padding: 3px 7px;
|
|
624
|
+
border-radius: 6px;
|
|
625
|
+
font-weight: 700;
|
|
626
|
+
text-transform: uppercase;
|
|
627
|
+
letter-spacing: 0.2px;
|
|
628
|
+
}
|
|
629
|
+
.adherence-checked {
|
|
630
|
+
background: rgba(52, 211, 153, 0.14);
|
|
631
|
+
color: #34D399;
|
|
632
|
+
}
|
|
633
|
+
.adherence-skipped {
|
|
634
|
+
background: rgba(148, 163, 184, 0.14);
|
|
635
|
+
color: #94A3B8;
|
|
636
|
+
}
|
|
637
|
+
|
|
597
638
|
/* Section Label */
|
|
598
639
|
.section-label {
|
|
599
640
|
font-size: 12px;
|