memorix 1.8.4 → 1.8.6
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/CHANGELOG.md +52 -0
- package/CLAUDE.md +3 -0
- package/README.md +8 -6
- package/README.zh-CN.md +5 -3
- package/assets/star-history-dark.svg +5 -5
- package/assets/star-history-light.svg +5 -5
- package/assets/star-history.json +35 -5
- package/dist/cli/index.js +1848 -754
- package/dist/dashboard/static/app.js +29 -885
- package/dist/dashboard/static/index.html +1 -5
- package/dist/dashboard/static/style.css +36 -503
- package/dist/index.d.ts +4 -4
- package/dist/index.js +286 -79
- package/dist/memcode/index.js +28035 -169
- package/dist/memcode-runtime/CHANGELOG.md +52 -0
- package/dist/sdk.js +103 -21
- package/dist/types.d.ts +1 -1
- package/docs/1.8.0-RELEASE-CANDIDATE-SPEC.md +22 -16
- package/docs/AGENT_OPERATOR_PLAYBOOK.md +2 -2
- package/docs/API_REFERENCE.md +10 -8
- package/docs/DASHBOARD.md +23 -0
- package/docs/DEVELOPMENT.md +2 -2
- package/docs/DOCKER.md +6 -3
- package/docs/INTEGRATIONS.md +2 -1
- package/docs/MODULES.md +46 -20
- package/docs/PERFORMANCE.md +1 -1
- package/docs/README.md +8 -7
- package/docs/SETUP.md +4 -3
- package/package.json +11 -11
- package/plugins/antigravity/memorix/plugin.json +1 -1
- package/plugins/antigravity/memorix/rules/memorix.md +5 -0
- package/plugins/claude/memorix/.claude-plugin/plugin.json +1 -1
- package/plugins/claude/memorix/skills/memorix-memory/SKILL.md +3 -0
- package/plugins/claude/memorix/skills/memorix-mini-skills/SKILL.md +2 -0
- package/plugins/claude/memorix/skills/memorix-orchestrate/SKILL.md +2 -0
- package/plugins/codebuddy/memorix/.codebuddy-plugin/plugin.json +1 -1
- package/plugins/codebuddy/memorix/skills/memorix-memory/SKILL.md +3 -0
- package/plugins/codebuddy/memorix/skills/memorix-mini-skills/SKILL.md +2 -0
- package/plugins/codebuddy/memorix/skills/memorix-orchestrate/SKILL.md +2 -0
- package/plugins/codex/memorix/.codex-plugin/plugin.json +1 -1
- package/plugins/codex/memorix/skills/memorix-memory/SKILL.md +3 -0
- package/plugins/codex/memorix/skills/memorix-mini-skills/SKILL.md +2 -0
- package/plugins/codex/memorix/skills/memorix-orchestrate/SKILL.md +2 -0
- package/plugins/copilot/memorix/plugin.json +1 -1
- package/plugins/copilot/memorix/skills/memorix-memory/SKILL.md +3 -0
- package/plugins/copilot/memorix/skills/memorix-mini-skills/SKILL.md +2 -0
- package/plugins/copilot/memorix/skills/memorix-orchestrate/SKILL.md +2 -0
- package/plugins/cursor/memorix/skills/memorix-memory/SKILL.md +3 -0
- package/plugins/cursor/memorix/skills/memorix-mini-skills/SKILL.md +2 -0
- package/plugins/cursor/memorix/skills/memorix-orchestrate/SKILL.md +2 -0
- package/plugins/gemini/memorix/GEMINI.md +5 -0
- package/plugins/gemini/memorix/gemini-extension.json +1 -1
- package/plugins/hermes/memorix/plugin.yaml +7 -1
- package/plugins/omp/memorix/package.json +1 -1
- package/plugins/openclaw/memorix/.codex-plugin/plugin.json +1 -1
- package/plugins/pi/memorix/package.json +1 -1
- package/plugins/pi/memorix/skills/memorix-memory/SKILL.md +3 -0
- package/plugins/pi/memorix/skills/memorix-mini-skills/SKILL.md +2 -0
- package/plugins/pi/memorix/skills/memorix-orchestrate/SKILL.md +2 -0
- package/server.json +2 -2
- package/src/cli/command-guide.ts +52 -1
- package/src/cli/commands/agent-integrations.ts +1 -0
- package/src/cli/commands/background.ts +166 -6
- package/src/cli/commands/hooks-install.ts +9 -2
- package/src/cli/commands/hooks-preview.ts +5 -0
- package/src/cli/commands/integrate.ts +2 -0
- package/src/cli/commands/serve-http.ts +73 -80
- package/src/cli/commands/serve.ts +95 -93
- package/src/cli/commands/setup.ts +11 -1
- package/src/cli/commands/uninstall.ts +24 -2
- package/src/cli/index.ts +1 -1
- package/src/codegraph/task-lens.ts +72 -7
- package/src/dashboard/static/index.html +1 -5
- package/src/dashboard/static/style.css +36 -503
- package/src/hooks/installers/index.ts +58 -0
- package/src/hooks/official-skills.ts +13 -6
- package/src/hooks/types.ts +2 -0
- package/src/integrations/registry.ts +9 -0
- package/src/memory/graph.ts +2 -2
- package/src/server/mcp-diagnostics.ts +9 -7
- package/src/server/modern-mcp-bridge.ts +108 -0
- package/src/server/stdio-startup-gate.ts +41 -2
- package/src/server/tool-profile.ts +7 -6
- package/src/server.ts +1 -1
- package/src/store/orama-store.ts +2 -2
- package/src/types.ts +1 -1
- package/src/wiki/types.ts +2 -2
- package/src/workspace/mcp-adapters/workbuddy.ts +71 -0
|
@@ -142,7 +142,7 @@
|
|
|
142
142
|
<path d="M23 21v-2a4 4 0 0 0-3-3.87"/>
|
|
143
143
|
<path d="M16 3.13a4 4 0 0 1 0 7.75"/>
|
|
144
144
|
</svg>
|
|
145
|
-
<span class="nav-label">
|
|
145
|
+
<span class="nav-label">Coordination</span>
|
|
146
146
|
</button>
|
|
147
147
|
</div>
|
|
148
148
|
<div class="sidebar-spacer"></div>
|
|
@@ -211,10 +211,6 @@
|
|
|
211
211
|
|
|
212
212
|
<!-- Apache ECharts 5 — Knowledge Graph renderer -->
|
|
213
213
|
<script src="https://cdn.jsdelivr.net/npm/echarts@5.5.1/dist/echarts.min.js"></script>
|
|
214
|
-
<!-- Cytoscape.js + Dagre — legacy entity-graph fallback -->
|
|
215
|
-
<script src="https://unpkg.com/cytoscape@3.30.4/dist/cytoscape.min.js"></script>
|
|
216
|
-
<script src="https://unpkg.com/dagre@0.8.5/dist/dagre.min.js"></script>
|
|
217
|
-
<script src="https://unpkg.com/cytoscape-dagre@2.5.0/cytoscape-dagre.js"></script>
|
|
218
214
|
<script>
|
|
219
215
|
// Cache-bust app.js by appending mtime-based version so edits always hit the browser.
|
|
220
216
|
(function () {
|
|
@@ -800,56 +800,6 @@ body {
|
|
|
800
800
|
gap: 2px;
|
|
801
801
|
}
|
|
802
802
|
|
|
803
|
-
.gfp-radio {
|
|
804
|
-
display: flex;
|
|
805
|
-
align-items: center;
|
|
806
|
-
gap: 8px;
|
|
807
|
-
padding: 6px 8px;
|
|
808
|
-
border-radius: var(--radius-sm);
|
|
809
|
-
cursor: pointer;
|
|
810
|
-
font-size: 12px;
|
|
811
|
-
color: var(--text-secondary);
|
|
812
|
-
transition: background var(--transition-fast);
|
|
813
|
-
border: none;
|
|
814
|
-
background: none;
|
|
815
|
-
width: 100%;
|
|
816
|
-
font-family: var(--font-sans);
|
|
817
|
-
text-align: left;
|
|
818
|
-
}
|
|
819
|
-
|
|
820
|
-
.gfp-radio:hover {
|
|
821
|
-
background: rgba(255,255,255,0.04);
|
|
822
|
-
}
|
|
823
|
-
|
|
824
|
-
.gfp-radio.active {
|
|
825
|
-
background: rgba(208, 188, 255, 0.08);
|
|
826
|
-
color: var(--text-primary);
|
|
827
|
-
font-weight: 500;
|
|
828
|
-
}
|
|
829
|
-
|
|
830
|
-
.gfp-radio-dot {
|
|
831
|
-
width: 14px;
|
|
832
|
-
height: 14px;
|
|
833
|
-
border-radius: 50%;
|
|
834
|
-
border: 2px solid var(--border-medium);
|
|
835
|
-
flex-shrink: 0;
|
|
836
|
-
display: flex;
|
|
837
|
-
align-items: center;
|
|
838
|
-
justify-content: center;
|
|
839
|
-
}
|
|
840
|
-
|
|
841
|
-
.gfp-radio.active .gfp-radio-dot {
|
|
842
|
-
border-color: var(--accent-purple);
|
|
843
|
-
}
|
|
844
|
-
|
|
845
|
-
.gfp-radio.active .gfp-radio-dot::after {
|
|
846
|
-
content: '';
|
|
847
|
-
width: 6px;
|
|
848
|
-
height: 6px;
|
|
849
|
-
border-radius: 50%;
|
|
850
|
-
background: var(--accent-purple);
|
|
851
|
-
}
|
|
852
|
-
|
|
853
803
|
.gfp-check {
|
|
854
804
|
display: flex;
|
|
855
805
|
align-items: center;
|
|
@@ -955,7 +905,7 @@ body {
|
|
|
955
905
|
color: var(--text-muted);
|
|
956
906
|
}
|
|
957
907
|
|
|
958
|
-
/* ── Center: Graph Container (
|
|
908
|
+
/* ── Center: Graph Container (Apache ECharts) ─────────────── */
|
|
959
909
|
#graph-container {
|
|
960
910
|
flex: 1;
|
|
961
911
|
min-width: 0;
|
|
@@ -966,13 +916,6 @@ body {
|
|
|
966
916
|
flex-direction: column;
|
|
967
917
|
}
|
|
968
918
|
|
|
969
|
-
#cytoscape-mount {
|
|
970
|
-
flex: 1;
|
|
971
|
-
min-height: 0;
|
|
972
|
-
height: 100%;
|
|
973
|
-
overflow: hidden;
|
|
974
|
-
}
|
|
975
|
-
|
|
976
919
|
.graph-status-bar {
|
|
977
920
|
height: 28px;
|
|
978
921
|
flex-shrink: 0;
|
|
@@ -1031,6 +974,16 @@ body {
|
|
|
1031
974
|
flex-direction: column;
|
|
1032
975
|
}
|
|
1033
976
|
|
|
977
|
+
@media (max-width: 1100px) and (min-width: 769px) {
|
|
978
|
+
.graph-filter-panel {
|
|
979
|
+
width: 180px;
|
|
980
|
+
}
|
|
981
|
+
|
|
982
|
+
.graph-inspector {
|
|
983
|
+
width: 220px;
|
|
984
|
+
}
|
|
985
|
+
}
|
|
986
|
+
|
|
1034
987
|
.gi-empty {
|
|
1035
988
|
display: flex;
|
|
1036
989
|
flex-direction: column;
|
|
@@ -1127,19 +1080,6 @@ body {
|
|
|
1127
1080
|
color: var(--accent-purple);
|
|
1128
1081
|
}
|
|
1129
1082
|
|
|
1130
|
-
.gi-obs-item {
|
|
1131
|
-
font-size: 12px;
|
|
1132
|
-
color: var(--text-secondary);
|
|
1133
|
-
line-height: 1.5;
|
|
1134
|
-
padding: 6px 10px;
|
|
1135
|
-
margin-bottom: 4px;
|
|
1136
|
-
border-radius: var(--radius-sm);
|
|
1137
|
-
background: var(--bg-surface);
|
|
1138
|
-
border-left: 2px solid var(--accent-purple);
|
|
1139
|
-
word-break: break-word;
|
|
1140
|
-
overflow-wrap: anywhere;
|
|
1141
|
-
}
|
|
1142
|
-
|
|
1143
1083
|
.gi-rel-item {
|
|
1144
1084
|
font-size: 12px;
|
|
1145
1085
|
color: var(--text-secondary);
|
|
@@ -1222,438 +1162,6 @@ body {
|
|
|
1222
1162
|
}
|
|
1223
1163
|
}
|
|
1224
1164
|
|
|
1225
|
-
/* ── Graph Tooltip ────────────────────────────────────────── */
|
|
1226
|
-
.graph-tooltip {
|
|
1227
|
-
position: absolute;
|
|
1228
|
-
background: var(--bg-card);
|
|
1229
|
-
border: 1px solid var(--border-medium);
|
|
1230
|
-
border-radius: var(--radius-sm);
|
|
1231
|
-
padding: 8px 12px;
|
|
1232
|
-
font-size: 12px;
|
|
1233
|
-
pointer-events: none;
|
|
1234
|
-
opacity: 0;
|
|
1235
|
-
transition: opacity var(--transition-fast);
|
|
1236
|
-
z-index: 100;
|
|
1237
|
-
max-width: 260px;
|
|
1238
|
-
box-sizing: border-box;
|
|
1239
|
-
white-space: normal;
|
|
1240
|
-
overflow-wrap: anywhere;
|
|
1241
|
-
word-break: break-word;
|
|
1242
|
-
box-shadow: var(--elevation-2);
|
|
1243
|
-
}
|
|
1244
|
-
|
|
1245
|
-
.graph-tooltip.visible {
|
|
1246
|
-
opacity: 1;
|
|
1247
|
-
}
|
|
1248
|
-
|
|
1249
|
-
.graph-tooltip-name {
|
|
1250
|
-
font-weight: 600;
|
|
1251
|
-
color: var(--text-primary);
|
|
1252
|
-
margin-bottom: 2px;
|
|
1253
|
-
}
|
|
1254
|
-
|
|
1255
|
-
.graph-tooltip-type {
|
|
1256
|
-
font-size: 11px;
|
|
1257
|
-
color: var(--text-muted);
|
|
1258
|
-
}
|
|
1259
|
-
|
|
1260
|
-
/* ── Table View ───────────────────────────────────────────── */
|
|
1261
|
-
.graph-table-container {
|
|
1262
|
-
flex: 1;
|
|
1263
|
-
overflow: auto;
|
|
1264
|
-
background: var(--bg-base);
|
|
1265
|
-
}
|
|
1266
|
-
|
|
1267
|
-
.graph-table {
|
|
1268
|
-
width: 100%;
|
|
1269
|
-
border-collapse: collapse;
|
|
1270
|
-
font-size: 12px;
|
|
1271
|
-
}
|
|
1272
|
-
|
|
1273
|
-
.graph-table th {
|
|
1274
|
-
text-align: left;
|
|
1275
|
-
font-size: 10px;
|
|
1276
|
-
font-weight: 600;
|
|
1277
|
-
color: var(--text-muted);
|
|
1278
|
-
text-transform: uppercase;
|
|
1279
|
-
letter-spacing: 0.5px;
|
|
1280
|
-
padding: 10px 14px;
|
|
1281
|
-
border-bottom: 1px solid var(--border-subtle);
|
|
1282
|
-
background: var(--bg-card);
|
|
1283
|
-
position: sticky;
|
|
1284
|
-
top: 0;
|
|
1285
|
-
z-index: 2;
|
|
1286
|
-
}
|
|
1287
|
-
|
|
1288
|
-
.graph-table td {
|
|
1289
|
-
padding: 8px 14px;
|
|
1290
|
-
border-bottom: 1px solid var(--border-subtle);
|
|
1291
|
-
color: var(--text-secondary);
|
|
1292
|
-
}
|
|
1293
|
-
|
|
1294
|
-
.graph-table tr:hover td {
|
|
1295
|
-
background: rgba(208, 188, 255, 0.02);
|
|
1296
|
-
}
|
|
1297
|
-
|
|
1298
|
-
.graph-table tr {
|
|
1299
|
-
cursor: pointer;
|
|
1300
|
-
transition: background var(--transition-fast);
|
|
1301
|
-
}
|
|
1302
|
-
|
|
1303
|
-
.graph-table .entity-name {
|
|
1304
|
-
font-weight: 500;
|
|
1305
|
-
color: var(--text-primary);
|
|
1306
|
-
}
|
|
1307
|
-
|
|
1308
|
-
.graph-table .entity-type-dot {
|
|
1309
|
-
display: inline-block;
|
|
1310
|
-
width: 8px;
|
|
1311
|
-
height: 8px;
|
|
1312
|
-
border-radius: 50%;
|
|
1313
|
-
margin-right: 6px;
|
|
1314
|
-
vertical-align: middle;
|
|
1315
|
-
}
|
|
1316
|
-
|
|
1317
|
-
/* Hide old graph elements */
|
|
1318
|
-
.graph-panel { display: none; }
|
|
1319
|
-
.graph-detail-drawer { display: none; }
|
|
1320
|
-
.graph-detail { display: none; }
|
|
1321
|
-
.graph-detail-empty { display: none; }
|
|
1322
|
-
|
|
1323
|
-
.graph-panel-tabs {
|
|
1324
|
-
display: flex;
|
|
1325
|
-
border-bottom: 1px solid rgba(255, 255, 255, 0.06);
|
|
1326
|
-
}
|
|
1327
|
-
|
|
1328
|
-
.gp-tab {
|
|
1329
|
-
flex: 1;
|
|
1330
|
-
padding: 10px 0;
|
|
1331
|
-
border: none;
|
|
1332
|
-
background: transparent;
|
|
1333
|
-
color: var(--text-muted);
|
|
1334
|
-
font-family: var(--font-sans);
|
|
1335
|
-
font-size: 10px;
|
|
1336
|
-
font-weight: 600;
|
|
1337
|
-
letter-spacing: 0.8px;
|
|
1338
|
-
text-transform: uppercase;
|
|
1339
|
-
cursor: pointer;
|
|
1340
|
-
transition: all var(--transition-fast);
|
|
1341
|
-
position: relative;
|
|
1342
|
-
}
|
|
1343
|
-
|
|
1344
|
-
.gp-tab:hover {
|
|
1345
|
-
color: var(--text-secondary);
|
|
1346
|
-
}
|
|
1347
|
-
|
|
1348
|
-
.gp-tab.active {
|
|
1349
|
-
color: var(--accent-purple);
|
|
1350
|
-
}
|
|
1351
|
-
|
|
1352
|
-
.gp-tab.active::after {
|
|
1353
|
-
content: '';
|
|
1354
|
-
position: absolute;
|
|
1355
|
-
bottom: 0;
|
|
1356
|
-
left: 20%;
|
|
1357
|
-
right: 20%;
|
|
1358
|
-
height: 2px;
|
|
1359
|
-
background: var(--accent-purple);
|
|
1360
|
-
border-radius: 2px 2px 0 0;
|
|
1361
|
-
}
|
|
1362
|
-
|
|
1363
|
-
.gp-content {
|
|
1364
|
-
padding: 14px;
|
|
1365
|
-
max-height: 400px;
|
|
1366
|
-
overflow-y: auto;
|
|
1367
|
-
}
|
|
1368
|
-
|
|
1369
|
-
.gp-content::-webkit-scrollbar {
|
|
1370
|
-
width: 4px;
|
|
1371
|
-
}
|
|
1372
|
-
|
|
1373
|
-
.gp-content::-webkit-scrollbar-thumb {
|
|
1374
|
-
background: rgba(255,255,255,0.1);
|
|
1375
|
-
border-radius: 2px;
|
|
1376
|
-
}
|
|
1377
|
-
|
|
1378
|
-
/* Graph panel search */
|
|
1379
|
-
.gp-search {
|
|
1380
|
-
width: 100%;
|
|
1381
|
-
padding: 8px 12px;
|
|
1382
|
-
background: rgba(255, 255, 255, 0.04);
|
|
1383
|
-
border: 1px solid rgba(255, 255, 255, 0.06);
|
|
1384
|
-
border-radius: var(--radius-sm);
|
|
1385
|
-
color: var(--text-primary);
|
|
1386
|
-
font-family: var(--font-sans);
|
|
1387
|
-
font-size: 12px;
|
|
1388
|
-
outline: none;
|
|
1389
|
-
transition: border-color var(--transition-fast);
|
|
1390
|
-
}
|
|
1391
|
-
|
|
1392
|
-
.gp-search:focus {
|
|
1393
|
-
border-color: var(--accent-purple);
|
|
1394
|
-
}
|
|
1395
|
-
|
|
1396
|
-
.gp-search::placeholder {
|
|
1397
|
-
color: var(--text-muted);
|
|
1398
|
-
}
|
|
1399
|
-
|
|
1400
|
-
/* Graph panel stats */
|
|
1401
|
-
.gp-stat-row {
|
|
1402
|
-
display: flex;
|
|
1403
|
-
justify-content: space-between;
|
|
1404
|
-
align-items: center;
|
|
1405
|
-
padding: 6px 0;
|
|
1406
|
-
}
|
|
1407
|
-
|
|
1408
|
-
.gp-stat-label {
|
|
1409
|
-
font-size: 12px;
|
|
1410
|
-
color: var(--text-secondary);
|
|
1411
|
-
}
|
|
1412
|
-
|
|
1413
|
-
.gp-stat-value {
|
|
1414
|
-
font-size: 13px;
|
|
1415
|
-
font-weight: 600;
|
|
1416
|
-
font-family: var(--font-mono);
|
|
1417
|
-
color: var(--text-primary);
|
|
1418
|
-
}
|
|
1419
|
-
|
|
1420
|
-
/* Graph panel legend items */
|
|
1421
|
-
.gp-legend-item {
|
|
1422
|
-
display: flex;
|
|
1423
|
-
align-items: center;
|
|
1424
|
-
gap: 10px;
|
|
1425
|
-
padding: 6px 8px;
|
|
1426
|
-
border-radius: var(--radius-sm);
|
|
1427
|
-
cursor: pointer;
|
|
1428
|
-
transition: background var(--transition-fast);
|
|
1429
|
-
}
|
|
1430
|
-
|
|
1431
|
-
.gp-legend-item:hover {
|
|
1432
|
-
background: rgba(255, 255, 255, 0.04);
|
|
1433
|
-
}
|
|
1434
|
-
|
|
1435
|
-
.gp-legend-dot {
|
|
1436
|
-
width: 10px;
|
|
1437
|
-
height: 10px;
|
|
1438
|
-
border-radius: 50%;
|
|
1439
|
-
flex-shrink: 0;
|
|
1440
|
-
}
|
|
1441
|
-
|
|
1442
|
-
.gp-legend-name {
|
|
1443
|
-
flex: 1;
|
|
1444
|
-
font-size: 12px;
|
|
1445
|
-
color: var(--text-secondary);
|
|
1446
|
-
white-space: nowrap;
|
|
1447
|
-
overflow: hidden;
|
|
1448
|
-
text-overflow: ellipsis;
|
|
1449
|
-
}
|
|
1450
|
-
|
|
1451
|
-
.gp-legend-count {
|
|
1452
|
-
font-size: 10px;
|
|
1453
|
-
font-family: var(--font-mono);
|
|
1454
|
-
color: var(--text-muted);
|
|
1455
|
-
}
|
|
1456
|
-
|
|
1457
|
-
/* Graph panel zoom controls */
|
|
1458
|
-
.gp-zoom-controls {
|
|
1459
|
-
display: flex;
|
|
1460
|
-
gap: 4px;
|
|
1461
|
-
margin-top: 10px;
|
|
1462
|
-
padding-top: 10px;
|
|
1463
|
-
border-top: 1px solid rgba(255, 255, 255, 0.04);
|
|
1464
|
-
}
|
|
1465
|
-
|
|
1466
|
-
.gp-zoom-btn {
|
|
1467
|
-
flex: 1;
|
|
1468
|
-
padding: 6px;
|
|
1469
|
-
border: 1px solid rgba(255, 255, 255, 0.06);
|
|
1470
|
-
background: rgba(255, 255, 255, 0.03);
|
|
1471
|
-
color: var(--text-secondary);
|
|
1472
|
-
border-radius: var(--radius-sm);
|
|
1473
|
-
cursor: pointer;
|
|
1474
|
-
font-size: 14px;
|
|
1475
|
-
font-weight: 600;
|
|
1476
|
-
transition: all var(--transition-fast);
|
|
1477
|
-
}
|
|
1478
|
-
|
|
1479
|
-
.gp-zoom-btn:hover {
|
|
1480
|
-
background: rgba(208, 188, 255, 0.1);
|
|
1481
|
-
border-color: rgba(208, 188, 255, 0.2);
|
|
1482
|
-
color: var(--accent-purple);
|
|
1483
|
-
}
|
|
1484
|
-
|
|
1485
|
-
/* Node detail drawer (bottom overlay) */
|
|
1486
|
-
.graph-detail-drawer {
|
|
1487
|
-
position: absolute;
|
|
1488
|
-
bottom: 0;
|
|
1489
|
-
left: 0;
|
|
1490
|
-
right: 0;
|
|
1491
|
-
max-height: 45%;
|
|
1492
|
-
background: rgba(14, 14, 26, 0.9);
|
|
1493
|
-
backdrop-filter: blur(20px);
|
|
1494
|
-
-webkit-backdrop-filter: blur(20px);
|
|
1495
|
-
border-top: 1px solid rgba(255, 255, 255, 0.08);
|
|
1496
|
-
border-radius: var(--radius-lg) var(--radius-lg) 0 0;
|
|
1497
|
-
padding: 0;
|
|
1498
|
-
overflow-y: auto;
|
|
1499
|
-
z-index: 15;
|
|
1500
|
-
transform: translateY(100%);
|
|
1501
|
-
transition: transform var(--transition-emphasized);
|
|
1502
|
-
}
|
|
1503
|
-
|
|
1504
|
-
.graph-detail-drawer.open {
|
|
1505
|
-
transform: translateY(0);
|
|
1506
|
-
}
|
|
1507
|
-
|
|
1508
|
-
.graph-detail-drawer .graph-detail-header {
|
|
1509
|
-
position: sticky;
|
|
1510
|
-
top: 0;
|
|
1511
|
-
background: rgba(14, 14, 26, 0.95);
|
|
1512
|
-
z-index: 1;
|
|
1513
|
-
}
|
|
1514
|
-
|
|
1515
|
-
.graph-detail {
|
|
1516
|
-
width: 0;
|
|
1517
|
-
display: none;
|
|
1518
|
-
}
|
|
1519
|
-
|
|
1520
|
-
.graph-detail-header {
|
|
1521
|
-
display: flex;
|
|
1522
|
-
align-items: center;
|
|
1523
|
-
gap: 14px;
|
|
1524
|
-
padding: 20px 24px;
|
|
1525
|
-
border-bottom: 1px solid rgba(255, 255, 255, 0.06);
|
|
1526
|
-
}
|
|
1527
|
-
|
|
1528
|
-
.graph-detail-dot {
|
|
1529
|
-
width: 16px;
|
|
1530
|
-
height: 16px;
|
|
1531
|
-
border-radius: 50%;
|
|
1532
|
-
flex-shrink: 0;
|
|
1533
|
-
}
|
|
1534
|
-
|
|
1535
|
-
.graph-detail-name {
|
|
1536
|
-
font-size: 16px;
|
|
1537
|
-
font-weight: 600;
|
|
1538
|
-
color: #FFFFFF;
|
|
1539
|
-
}
|
|
1540
|
-
|
|
1541
|
-
.graph-detail-type {
|
|
1542
|
-
font-size: 12px;
|
|
1543
|
-
color: #CAC4D0;
|
|
1544
|
-
font-family: var(--font-mono);
|
|
1545
|
-
}
|
|
1546
|
-
|
|
1547
|
-
.graph-detail-section {
|
|
1548
|
-
padding: 16px 24px;
|
|
1549
|
-
border-bottom: 1px solid rgba(255, 255, 255, 0.04);
|
|
1550
|
-
}
|
|
1551
|
-
|
|
1552
|
-
.graph-detail-section:last-child {
|
|
1553
|
-
border-bottom: none;
|
|
1554
|
-
}
|
|
1555
|
-
|
|
1556
|
-
.graph-detail-section h3 {
|
|
1557
|
-
font-size: 11px;
|
|
1558
|
-
font-weight: 600;
|
|
1559
|
-
color: #CAC4D0;
|
|
1560
|
-
text-transform: uppercase;
|
|
1561
|
-
letter-spacing: 0.8px;
|
|
1562
|
-
margin-bottom: 10px;
|
|
1563
|
-
display: flex;
|
|
1564
|
-
align-items: center;
|
|
1565
|
-
gap: 6px;
|
|
1566
|
-
}
|
|
1567
|
-
|
|
1568
|
-
.graph-detail-count {
|
|
1569
|
-
font-size: 10px;
|
|
1570
|
-
font-weight: 500;
|
|
1571
|
-
padding: 2px 8px;
|
|
1572
|
-
border-radius: var(--radius-sm);
|
|
1573
|
-
background: rgba(208, 188, 255, 0.1);
|
|
1574
|
-
color: var(--accent-purple);
|
|
1575
|
-
}
|
|
1576
|
-
|
|
1577
|
-
.graph-obs-item {
|
|
1578
|
-
font-size: 12px;
|
|
1579
|
-
color: #E6E1E5;
|
|
1580
|
-
line-height: 1.6;
|
|
1581
|
-
padding: 8px 12px;
|
|
1582
|
-
margin-bottom: 6px;
|
|
1583
|
-
border-radius: var(--radius-sm);
|
|
1584
|
-
background: rgba(255, 255, 255, 0.06);
|
|
1585
|
-
border-left: 2px solid var(--accent-purple);
|
|
1586
|
-
}
|
|
1587
|
-
|
|
1588
|
-
.graph-rel-item {
|
|
1589
|
-
font-size: 12px;
|
|
1590
|
-
color: #E6E1E5;
|
|
1591
|
-
padding: 6px 0;
|
|
1592
|
-
display: flex;
|
|
1593
|
-
align-items: center;
|
|
1594
|
-
gap: 8px;
|
|
1595
|
-
}
|
|
1596
|
-
|
|
1597
|
-
.graph-rel-arrow {
|
|
1598
|
-
color: var(--accent-purple);
|
|
1599
|
-
font-weight: 600;
|
|
1600
|
-
}
|
|
1601
|
-
|
|
1602
|
-
.graph-rel-type {
|
|
1603
|
-
font-family: var(--font-mono);
|
|
1604
|
-
font-size: 11px;
|
|
1605
|
-
color: #D0BCFF;
|
|
1606
|
-
padding: 2px 8px;
|
|
1607
|
-
background: rgba(255, 255, 255, 0.04);
|
|
1608
|
-
border-radius: var(--radius-sm);
|
|
1609
|
-
}
|
|
1610
|
-
|
|
1611
|
-
.graph-detail-muted {
|
|
1612
|
-
font-size: 12px;
|
|
1613
|
-
color: var(--text-muted);
|
|
1614
|
-
font-style: italic;
|
|
1615
|
-
}
|
|
1616
|
-
|
|
1617
|
-
.graph-tooltip {
|
|
1618
|
-
position: absolute;
|
|
1619
|
-
background: rgba(14, 14, 26, 0.92);
|
|
1620
|
-
backdrop-filter: blur(12px);
|
|
1621
|
-
border: 1px solid rgba(208, 188, 255, 0.15);
|
|
1622
|
-
border-radius: var(--radius-md);
|
|
1623
|
-
padding: 12px 16px;
|
|
1624
|
-
font-size: 13px;
|
|
1625
|
-
pointer-events: none;
|
|
1626
|
-
opacity: 0;
|
|
1627
|
-
transition: opacity var(--transition-fast);
|
|
1628
|
-
z-index: 100;
|
|
1629
|
-
max-width: 300px;
|
|
1630
|
-
box-sizing: border-box;
|
|
1631
|
-
white-space: normal;
|
|
1632
|
-
overflow-wrap: anywhere;
|
|
1633
|
-
word-break: break-word;
|
|
1634
|
-
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.6);
|
|
1635
|
-
}
|
|
1636
|
-
|
|
1637
|
-
.graph-tooltip.visible {
|
|
1638
|
-
opacity: 1;
|
|
1639
|
-
}
|
|
1640
|
-
|
|
1641
|
-
.graph-tooltip-name {
|
|
1642
|
-
font-weight: 600;
|
|
1643
|
-
color: var(--accent-purple);
|
|
1644
|
-
margin-bottom: 4px;
|
|
1645
|
-
}
|
|
1646
|
-
|
|
1647
|
-
.graph-tooltip-type {
|
|
1648
|
-
font-size: 11px;
|
|
1649
|
-
color: var(--text-muted);
|
|
1650
|
-
}
|
|
1651
|
-
|
|
1652
|
-
/* Hide text for graph-detail-empty since we use drawer now */
|
|
1653
|
-
.graph-detail-empty {
|
|
1654
|
-
display: none;
|
|
1655
|
-
}
|
|
1656
|
-
|
|
1657
1165
|
/* ============================================================
|
|
1658
1166
|
* Observations Page
|
|
1659
1167
|
* ============================================================ */
|
|
@@ -2560,6 +2068,31 @@ body {
|
|
|
2560
2068
|
.maintenance-dialog-body {
|
|
2561
2069
|
padding: 14px;
|
|
2562
2070
|
}
|
|
2071
|
+
|
|
2072
|
+
.team-header {
|
|
2073
|
+
align-items: stretch;
|
|
2074
|
+
flex-direction: column;
|
|
2075
|
+
gap: 14px;
|
|
2076
|
+
}
|
|
2077
|
+
|
|
2078
|
+
.team-header-left,
|
|
2079
|
+
.team-header-left > div:last-child {
|
|
2080
|
+
min-width: 0;
|
|
2081
|
+
}
|
|
2082
|
+
|
|
2083
|
+
.team-header-right {
|
|
2084
|
+
flex-wrap: wrap;
|
|
2085
|
+
justify-content: flex-start;
|
|
2086
|
+
gap: 8px;
|
|
2087
|
+
}
|
|
2088
|
+
|
|
2089
|
+
.team-header-right > div {
|
|
2090
|
+
margin-right: 0 !important;
|
|
2091
|
+
}
|
|
2092
|
+
|
|
2093
|
+
.team-refresh-time {
|
|
2094
|
+
margin-left: auto;
|
|
2095
|
+
}
|
|
2563
2096
|
}
|
|
2564
2097
|
|
|
2565
2098
|
/* Low quality indicator */
|
package/dist/index.d.ts
CHANGED
|
@@ -398,8 +398,8 @@ declare class TeamStore {
|
|
|
398
398
|
* Source: MCP Official Memory Server v0.6.3 (complete rewrite with same API).
|
|
399
399
|
*
|
|
400
400
|
* Key differences from official implementation:
|
|
401
|
-
* - Uses
|
|
402
|
-
* - Async initialization with persistence layer
|
|
401
|
+
* - Uses the project-scoped SQLite graph store; legacy JSONL is migration-only
|
|
402
|
+
* - Async initialization with the shared persistence layer
|
|
403
403
|
* - Project-scoped operations
|
|
404
404
|
*/
|
|
405
405
|
|
|
@@ -462,9 +462,9 @@ declare class KnowledgeGraphManager {
|
|
|
462
462
|
* We provide four profiles:
|
|
463
463
|
* - "micro" (stdio default): Agent-ready project context + bounded recovery/media controls — 9 tools.
|
|
464
464
|
* Suitable for normal MCP clients where every tool schema costs context tokens.
|
|
465
|
-
* - "lite": Core memory CRUD, sessions, reasoning, retention, backup —
|
|
465
|
+
* - "lite": Core memory CRUD, sessions, reasoning, retention, backup — 20 tools.
|
|
466
466
|
* Suitable for solo users who want the full memory surface without team tools.
|
|
467
|
-
* - "team" (HTTP default): lite + orchestration coordination tools, dashboard, and Knowledge Workspace —
|
|
467
|
+
* - "team" (HTTP default): lite + orchestration coordination tools, dashboard, and Knowledge Workspace — 28 tools.
|
|
468
468
|
* Suitable when an operator explicitly wants task/message/lock surfaces.
|
|
469
469
|
* - "full": Everything, including niche / advanced tools (consolidate, dedup,
|
|
470
470
|
* formation metrics, skills, rules/workspace sync, KG-official, image ingest).
|