monomind 2.5.2 → 2.5.4

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 (122) hide show
  1. package/README.md +1 -1
  2. package/package.json +1 -1
  3. package/packages/@monomind/cli/.claude/agents/github/repo-architect.md +3 -3
  4. package/packages/@monomind/cli/.claude/agents/github/sync-coordinator.md +2 -2
  5. package/packages/@monomind/cli/.claude/agents/specialists/integration-architect.md +4 -4
  6. package/packages/@monomind/cli/.claude/commands/github/repo-architect.md +4 -4
  7. package/packages/@monomind/cli/.claude/commands/github/sync-coordinator.md +2 -2
  8. package/packages/@monomind/cli/.claude/helpers/event-logger.cjs +2 -2
  9. package/packages/@monomind/cli/.claude/helpers/extras-registry.json +1 -1
  10. package/packages/@monomind/cli/.claude/helpers/handlers/agent-start-handler.cjs +2 -2
  11. package/packages/@monomind/cli/.claude/helpers/handlers/edit-handler.cjs +2 -2
  12. package/packages/@monomind/cli/.claude/helpers/handlers/gates-handler.cjs +6 -1
  13. package/packages/@monomind/cli/.claude/helpers/handlers/route-handler.cjs +1 -1
  14. package/packages/@monomind/cli/.claude/helpers/handlers/session-handler.cjs +1 -1
  15. package/packages/@monomind/cli/.claude/helpers/handlers/session-restore-handler.cjs +11 -11
  16. package/packages/@monomind/cli/.claude/helpers/handlers/task-handler.cjs +2 -2
  17. package/packages/@monomind/cli/.claude/helpers/hook-handler.cjs +8 -8
  18. package/packages/@monomind/cli/.claude/skills/mastermind-techport/SKILL.md +1 -1
  19. package/packages/@monomind/cli/.claude/skills/monodesign/SKILL.md +2 -2
  20. package/packages/@monomind/cli/.claude/skills/monodesign/reference/antipatterns-catalog.md +47 -2
  21. package/packages/@monomind/cli/.claude/skills/monodesign/reference/critique.md +1 -1
  22. package/packages/@monomind/cli/.claude/skills/monodesign/reference/live.md +0 -8
  23. package/packages/@monomind/cli/.claude/skills/monodesign/reference/polish.md +2 -2
  24. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/context-signals.mjs +39 -6
  25. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/context.mjs +0 -1
  26. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/critique-storage.mjs +175 -2
  27. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detect-csp.mjs +0 -1
  28. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detect.mjs +0 -1
  29. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/browser/injected/index.mjs +25 -1
  30. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/cli/main.mjs +0 -1
  31. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/design-system.mjs +0 -1
  32. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/detect-antipatterns-browser.js +356 -1
  33. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/detect-antipatterns.mjs +0 -1
  34. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/engines/browser/detect-url.mjs +0 -1
  35. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/engines/browser/drivers.mjs +0 -1
  36. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/engines/regex/detect-text.mjs +63 -1
  37. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/engines/static-html/css-cascade.mjs +0 -1
  38. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/engines/static-html/detect-html.mjs +19 -1
  39. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/engines/visual/screenshot-contrast.mjs +0 -1
  40. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/findings.mjs +0 -1
  41. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/fix/css-regions.mjs +181 -0
  42. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/fix/fixers.mjs +373 -0
  43. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/fix/index.mjs +426 -0
  44. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/node/file-system.mjs +0 -1
  45. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/profile/profiler.mjs +0 -1
  46. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/registry/antipatterns.mjs +49 -1
  47. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/rules/checks.mjs +292 -1
  48. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/shared/color.mjs +0 -1
  49. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/shared/constants.mjs +0 -1
  50. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/shared/fonts.mjs +0 -1
  51. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/shared/inline-ignores.mjs +0 -1
  52. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/detector/shared/page.mjs +0 -1
  53. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/hook-admin.mjs +0 -1
  54. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/hook-before-edit.mjs +0 -1
  55. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/hook-lib.mjs +0 -1
  56. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/hook.mjs +0 -1
  57. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/lib/design-parser.mjs +0 -1
  58. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/lib/is-generated.mjs +0 -1
  59. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/lib/monodesign-config.mjs +0 -1
  60. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/lib/monodesign-paths.mjs +0 -1
  61. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/lib/provider.mjs +0 -1
  62. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/lib/target-args.mjs +0 -1
  63. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/browser-script-parts.mjs +0 -1
  64. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/completion.mjs +0 -1
  65. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/event-validation.mjs +0 -1
  66. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/insert-ui.mjs +0 -1
  67. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/manual-apply.mjs +0 -1
  68. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/manual-edit-routes.mjs +0 -1
  69. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/manual-edits-buffer.mjs +0 -1
  70. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/session-store.mjs +5 -2
  71. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/svelte-component.mjs +0 -1
  72. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/sveltekit-adapter.mjs +0 -1
  73. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/ui-core.mjs +0 -1
  74. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live/vocabulary.mjs +0 -1
  75. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-accept.mjs +0 -1
  76. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-browser-dom.js +0 -1
  77. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-browser-session.js +0 -1
  78. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-browser.js +0 -1
  79. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-commit-manual-edits.mjs +0 -1
  80. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-complete.mjs +0 -1
  81. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-copy-edit-agent.mjs +0 -1
  82. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-discard-manual-edits.mjs +0 -1
  83. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-inject.mjs +0 -1
  84. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-insert.mjs +0 -1
  85. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-manual-edit-evidence.mjs +0 -1
  86. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-poll.mjs +0 -1
  87. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-resume.mjs +0 -1
  88. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-server.mjs +0 -1
  89. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-status.mjs +0 -1
  90. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-target.mjs +0 -1
  91. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live-wrap.mjs +0 -1
  92. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/live.mjs +0 -1
  93. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/modern-screenshot.umd.js +0 -1
  94. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/palette.mjs +0 -1
  95. package/packages/@monomind/cli/.claude/skills/monodesign/scripts/pin.mjs +0 -1
  96. package/packages/@monomind/cli/README.md +1 -1
  97. package/packages/@monomind/cli/dist/src/commands/design-detect.js +62 -1
  98. package/packages/@monomind/cli/dist/src/commands/design-palette.d.ts +0 -1
  99. package/packages/@monomind/cli/dist/src/commands/design-palette.js +0 -1
  100. package/packages/@monomind/cli/dist/src/commands/doctor-project-checks.d.ts +1 -1
  101. package/packages/@monomind/cli/dist/src/commands/doctor-project-checks.js +1 -1
  102. package/packages/@monomind/cli/dist/src/commands/hooks-workers.d.ts +1 -1
  103. package/packages/@monomind/cli/dist/src/commands/hooks-workers.js +8 -8
  104. package/packages/@monomind/cli/dist/src/commands/init.js +2 -2
  105. package/packages/@monomind/cli/dist/src/index.d.ts +1 -1
  106. package/packages/@monomind/cli/dist/src/index.js +3 -3
  107. package/packages/@monomind/cli/dist/src/init/claudemd-generator.js +5 -5
  108. package/packages/@monomind/cli/dist/src/init/executor.js +3 -3
  109. package/packages/@monomind/cli/dist/src/knowledge/document-pipeline.js +3 -1
  110. package/packages/@monomind/cli/dist/src/mcp-server.js +2 -2
  111. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-intelligence.d.ts +1 -1
  112. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-intelligence.js +1 -1
  113. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-routing.js +2 -2
  114. package/packages/@monomind/cli/dist/src/mcp-tools/hooks-tools.js +1 -1
  115. package/packages/@monomind/cli/dist/src/memory/memory-kg.d.ts +5 -4
  116. package/packages/@monomind/cli/dist/src/memory/memory-kg.js +5 -4
  117. package/packages/@monomind/cli/dist/src/routing/embed-worker.js +1 -1
  118. package/packages/@monomind/cli/dist/src/routing/llm-caller.js +1 -1
  119. package/packages/@monomind/cli/dist/src/routing/route-layer-factory.js +1 -1
  120. package/packages/@monomind/cli/dist/src/ui/dashboard.html +22 -20
  121. package/packages/@monomind/cli/dist/src/update/checker.js +3 -3
  122. package/packages/@monomind/cli/package.json +5 -5
@@ -126,14 +126,17 @@ html, body { height: 100%; background: var(--bg); color: var(--text-hi); font-fa
126
126
  /* ── detail panel ─────────────────────────────────────────── */
127
127
  #detail-panel {
128
128
  position: absolute; top: 0; right: 252px; bottom: 0;
129
- width: 0; overflow: hidden;
129
+ width: 280px; overflow: hidden;
130
130
  background: oklch(13% 0.009 55);
131
131
  border-left: 1px solid var(--border);
132
132
  border-right: 1px solid var(--border);
133
- transition: width 0.22s cubic-bezier(0.16, 1, 0.3, 1);
133
+ /* compositor-only reveal (opacity/transform) animating width reflows on every frame */
134
+ opacity: 0; visibility: hidden; transform: translateX(12px);
135
+ transition: opacity 0.22s cubic-bezier(0.16, 1, 0.3, 1), transform 0.22s cubic-bezier(0.16, 1, 0.3, 1), visibility 0s 0.22s;
134
136
  display: flex; flex-direction: column; z-index: 10;
135
137
  }
136
- #detail-panel.open { width: 280px; }
138
+ #detail-panel.open { opacity: 1; visibility: visible; transform: none; transition: opacity 0.22s cubic-bezier(0.16, 1, 0.3, 1), transform 0.22s cubic-bezier(0.16, 1, 0.3, 1), visibility 0s 0s; }
139
+ @media (prefers-reduced-motion: reduce) { #detail-panel { transition: none; } #rp-fill { transition: none; } }
137
140
  #detail-head { padding: 12px 14px; border-bottom: 1px solid var(--border); display: flex; align-items: center; gap: 8px; flex-shrink: 0; }
138
141
  #detail-head h3 { font-size: 12px; font-weight: 600; color: var(--text-hi); flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
139
142
  #detail-close { font-size: 14px; color: var(--text-lo); background: none; border: none; cursor: pointer; padding: 0 2px; line-height: 1; }
@@ -245,7 +248,7 @@ html, body { height: 100%; background: var(--bg); color: var(--text-hi); font-fa
245
248
  .loop-cdown { font-family: var(--mono); font-size: 11px; color: var(--accent); white-space: nowrap; display: inline; }
246
249
  .loop-cdown.overdue { color: var(--red); }
247
250
  .lp-bar { height: 4px; background: var(--border); border-radius: 2px; margin-top: 5px; overflow: hidden; }
248
- .lp-fill { height: 100%; background: var(--accent); border-radius: 2px; transition: width 0.4s ease; }
251
+ .lp-fill { height: 100%; background: var(--accent); border-radius: 2px; }
249
252
  .loop-stop-btn { font-size: 11px; padding: 2px 8px; background: none; border: 1px solid var(--border); border-radius: 4px; color: var(--text-lo); cursor: pointer; font-family: var(--sans); }
250
253
  .loop-stop-btn:hover { border-color: var(--red); color: var(--red); }
251
254
  .loop-status.done { background: var(--surface-hi); color: var(--text-xs); }
@@ -789,7 +792,7 @@ html, body { height: 100%; background: var(--bg); color: var(--text-hi); font-fa
789
792
  .rp-btn:hover { color:var(--text-hi); }
790
793
  .rp-btn.active { color:var(--accent); border-color:oklch(72% 0.18 75 / 0.5); }
791
794
  #rp-progress { flex:1; height:3px; background:var(--surface-hi); border-radius:2px; overflow:hidden; }
792
- #rp-fill { height:100%; background:var(--accent); border-radius:2px; transition:width 0.15s; }
795
+ #rp-fill { height:100%; width:100%; background:var(--accent); border-radius:2px; transform:scaleX(0); transform-origin:left; transition:transform 0.15s; }
793
796
  #rp-counter { font-size:11px; color:var(--text-lo); font-family:var(--mono); white-space:nowrap; }
794
797
 
795
798
  /* ── agent chat view ─────────────────────────────────────── */
@@ -931,7 +934,7 @@ html, body { height: 100%; background: var(--bg); color: var(--text-hi); font-fa
931
934
  .burn-gauge-row { display:flex; align-items:center; gap:8px; margin-bottom:4px; }
932
935
  .burn-gauge-label { font-size:10px; color:var(--text-lo); width:60px; flex-shrink:0; }
933
936
  .burn-gauge-track { flex:1; height:6px; background:var(--surface-hi); border-radius:3px; overflow:hidden; }
934
- .burn-gauge-fill { height:100%; border-radius:3px; transition:width 0.4s, background 0.4s; }
937
+ .burn-gauge-fill { height:100%; border-radius:3px; }
935
938
  .burn-val { font-size:10px; font-family:var(--mono); color:var(--text-xs); white-space:nowrap; }
936
939
  .burn-rate-ok { background:oklch(65% 0.15 150); }
937
940
  .burn-rate-warn { background:oklch(72% 0.18 75); }
@@ -1222,7 +1225,7 @@ textarea.sess-note-input:focus { border-color:var(--accent); }
1222
1225
  .mg-bar-row { display:flex; align-items:center; gap:8px; margin-bottom:5px; font-size:12px; }
1223
1226
  .mg-bar-row .mg-bar-lbl { width:140px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--text-mid); flex-shrink:0; }
1224
1227
  .mg-bar-track { flex:1; background:var(--surface-hi); border-radius:3px; height:6px; overflow:hidden; }
1225
- .mg-bar-fill { height:100%; border-radius:3px; background:var(--accent); transition:width 0.3s; }
1228
+ .mg-bar-fill { height:100%; border-radius:3px; background:var(--accent); }
1226
1229
  .mg-bar-fill.mg { background:var(--mg-accent); }
1227
1230
  .mg-bar-val { width:32px; text-align:right; color:var(--text-lo); font-size:11px; font-family:var(--mono); }
1228
1231
  .mg-section-title { font-size:11px; text-transform:uppercase; letter-spacing:0.07em; color:var(--text-xs); margin:16px 0 8px; }
@@ -1258,7 +1261,7 @@ textarea.sess-note-input:focus { border-color:var(--accent); }
1258
1261
  .mgr-ranked-num { font-size:10px; font-family:var(--mono); color:var(--text-lo); text-align:right; }
1259
1262
  .mgr-ranked-name { font-size:12px; color:var(--text-hi); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
1260
1263
  .mgr-ranked-bar-wrap { height:3px; background:oklch(25% 0.008 55); border-radius:2px; overflow:hidden; }
1261
- .mgr-ranked-bar-fill { height:100%; border-radius:2px; background:var(--accent); transition:width 0.45s cubic-bezier(0.16,1,0.3,1); }
1264
+ .mgr-ranked-bar-fill { height:100%; border-radius:2px; background:var(--accent); transform-origin:left; transition:transform 0.45s cubic-bezier(0.16,1,0.3,1); }
1262
1265
  .mgr-ranked-val { font-size:11px; font-family:var(--mono); color:var(--accent); text-align:right; white-space:nowrap; }
1263
1266
  /* risk items */
1264
1267
  .mgr-risk-list { display:flex; flex-direction:column; gap:6px; }
@@ -1289,7 +1292,7 @@ textarea.sess-note-input:focus { border-color:var(--accent); }
1289
1292
  .mgr-bar-row { display:grid; grid-template-columns:130px 1fr 70px; align-items:center; gap:10px; }
1290
1293
  .mgr-bar-label { font-size:11px; font-family:var(--mono); color:var(--text-mid); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
1291
1294
  .mgr-bar-track { height:4px; background:oklch(25% 0.008 55); border-radius:2px; overflow:hidden; }
1292
- .mgr-bar-fill { height:100%; border-radius:2px; transition:width 0.5s cubic-bezier(0.16,1,0.3,1); }
1295
+ .mgr-bar-fill { height:100%; border-radius:2px; transform-origin:left; transition:transform 0.5s cubic-bezier(0.16,1,0.3,1); }
1293
1296
  .mgr-bar-count { font-size:11px; font-family:var(--mono); color:var(--text-lo); text-align:right; white-space:nowrap; }
1294
1297
  /* all-clear */
1295
1298
  .mgr-clear { font-size:12px; color:var(--green); font-family:var(--mono); padding:8px 0; display:flex; align-items:center; gap:8px; }
@@ -1346,7 +1349,7 @@ textarea.sess-note-input:focus { border-color:var(--accent); }
1346
1349
  .mgr-node-name { font-size:12px; font-weight:600; color:var(--text-hi); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
1347
1350
  .mgr-node-type { font-size:10px; font-family:var(--mono); color:var(--text-lo); background:oklch(25% 0.008 55); padding:2px 7px; border-radius:3px; white-space:nowrap; }
1348
1351
  .mgr-node-bar-wrap { height:3px; background:oklch(25% 0.008 55); border-radius:2px; overflow:hidden; }
1349
- .mgr-node-bar-fill { height:100%; background:var(--accent); border-radius:2px; transition:width 0.4s cubic-bezier(0.16,1,0.3,1); }
1352
+ .mgr-node-bar-fill { height:100%; background:var(--accent); border-radius:2px; transform-origin:left; transition:transform 0.4s cubic-bezier(0.16,1,0.3,1); }
1350
1353
  .mgr-node-count { font-size:11px; font-family:var(--mono); color:var(--accent); text-align:right; white-space:nowrap; }
1351
1354
 
1352
1355
  /* Type distribution */
@@ -1354,7 +1357,7 @@ textarea.sess-note-input:focus { border-color:var(--accent); }
1354
1357
  .mgr-type-row { display:grid; grid-template-columns:100px 1fr 52px 44px; align-items:center; gap:12px; }
1355
1358
  .mgr-type-name { font-size:11px; font-family:var(--mono); color:var(--text-mid); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
1356
1359
  .mgr-type-bar-wrap { height:4px; background:oklch(25% 0.008 55); border-radius:2px; overflow:hidden; }
1357
- .mgr-type-bar-fill { height:100%; border-radius:2px; transition:width 0.5s cubic-bezier(0.16,1,0.3,1); }
1360
+ .mgr-type-bar-fill { height:100%; border-radius:2px; transform-origin:left; transition:transform 0.5s cubic-bezier(0.16,1,0.3,1); }
1358
1361
  .mgr-type-count { font-size:11px; font-family:var(--mono); color:var(--text-mid); text-align:right; }
1359
1362
  .mgr-type-pct { font-size:10px; font-family:var(--mono); color:var(--text-lo); text-align:right; }
1360
1363
 
@@ -1490,7 +1493,7 @@ select.pb-cfg-inp { padding: 4px 7px; cursor: pointer; }
1490
1493
  .wf-run-meta span { display: flex; align-items: center; gap: 4px; }
1491
1494
  .wf-run-error { font-size: 11px; color: var(--red); margin-top: 6px; font-family: var(--mono); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
1492
1495
  .wf-progress-bar { height: 3px; background: var(--border); border-radius: 2px; margin-top: 8px; overflow: hidden; }
1493
- .wf-progress-bar-fill { height: 100%; background: var(--accent); border-radius: 2px; transition: width 0.3s; }
1496
+ .wf-progress-bar-fill { height: 100%; background: var(--accent); border-radius: 2px; }
1494
1497
  #wf-runs-list .loading-txt, #wf-defs-list .loading-txt { padding: 40px 0; text-align: center; color: var(--text-lo); }
1495
1498
  .wf-def-card { background: var(--surface); border: 1px solid var(--border); border-radius: 8px; padding: 14px 16px; margin-bottom: 8px; display: flex; align-items: flex-start; gap: 14px; cursor: default; transition: border-color 0.12s; }
1496
1499
  .wf-def-card:hover { border-color: var(--accent); }
@@ -1675,7 +1678,7 @@ select.pb-cfg-inp { padding: 4px 7px; cursor: pointer; }
1675
1678
  <button class="rp-btn" id="rp-play" onclick="replayToggle()" title="Play/pause replay">▶</button>
1676
1679
  <button class="rp-btn" onclick="replayStep(-1)" title="Step back">‹</button>
1677
1680
  <button class="rp-btn" onclick="replayStep(1)" title="Step forward">›</button>
1678
- <div id="rp-progress"><div id="rp-fill" style="width:0%"></div></div>
1681
+ <div id="rp-progress"><div id="rp-fill"></div></div>
1679
1682
  <span id="rp-counter">0 / 0</span>
1680
1683
  <button class="rp-btn" onclick="stopReplay()" title="Exit replay">✕</button>
1681
1684
  </div>
@@ -4969,7 +4972,7 @@ function highlightReplayEntry() {
4969
4972
  });
4970
4973
  const total = replayEvents.length;
4971
4974
  const pct = total > 1 ? Math.round(replayIdx / (total - 1) * 100) : 100;
4972
- document.getElementById('rp-fill').style.width = pct + '%';
4975
+ document.getElementById('rp-fill').style.transform = 'scaleX(' + (pct / 100) + ')';
4973
4976
  document.getElementById('rp-counter').textContent = `${replayIdx + 1} / ${total}`;
4974
4977
  // scroll into view
4975
4978
  replayEvents[replayIdx]?.scrollIntoView({ block: 'nearest' });
@@ -6463,7 +6466,7 @@ function v2RenderOrgChart() {
6463
6466
  } else {
6464
6467
  // CSS fallback: simple fade-in stagger
6465
6468
  pane.querySelectorAll('.v2oc-node').forEach((el, i) => {
6466
- el.style.animation = `v2nodeIn 0.45s cubic-bezier(0.34,1.56,0.64,1) ${(i * 0.08).toFixed(2)}s forwards`;
6469
+ el.style.animation = `v2nodeIn 0.45s cubic-bezier(0.16,1,0.3,1) ${(i * 0.08).toFixed(2)}s forwards`;
6467
6470
  el.style.opacity = '0';
6468
6471
  });
6469
6472
  }
@@ -12299,8 +12302,8 @@ function mgShowResult(title, html) {
12299
12302
  requestAnimationFrame(() => {
12300
12303
  if (window.matchMedia('(prefers-reduced-motion: reduce)').matches) return;
12301
12304
  panel.querySelectorAll('.mgr-ranked-bar-fill, .mgr-bar-fill').forEach(b => {
12302
- const w = b.style.width; b.style.width = '0';
12303
- requestAnimationFrame(() => { b.style.width = w; });
12305
+ b.style.transform = 'scaleX(0)';
12306
+ requestAnimationFrame(() => { b.style.transform = 'scaleX(1)'; });
12304
12307
  });
12305
12308
  });
12306
12309
  }
@@ -13218,9 +13221,8 @@ function mgRenderReport(markdown, el, stats) {
13218
13221
  requestAnimationFrame(() => {
13219
13222
  if (window.matchMedia('(prefers-reduced-motion: reduce)').matches) return;
13220
13223
  el.querySelectorAll('.mgr-node-bar-fill, .mgr-type-bar-fill').forEach(b => {
13221
- const w = b.style.width;
13222
- b.style.width = '0';
13223
- requestAnimationFrame(() => { b.style.width = w; });
13224
+ b.style.transform = 'scaleX(0)';
13225
+ requestAnimationFrame(() => { b.style.transform = 'scaleX(1)'; });
13224
13226
  });
13225
13227
  });
13226
13228
  }
@@ -46,9 +46,9 @@ const MONOMIND_PACKAGES = [
46
46
  '@monoes/monograph',
47
47
  '@monoes/memory',
48
48
  '@monoes/monodesign',
49
- '@monomind/hooks',
50
- '@monomind/mcp',
51
- '@monomind/routing',
49
+ '@monoes/hooks',
50
+ '@monoes/mcp',
51
+ '@monoes/routing',
52
52
  ];
53
53
  // npm package name regex — covers plain names and @scope/name forms.
54
54
  // Validates before using the name in URLs or filesystem paths.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@monoes/monomindcli",
3
- "version": "2.5.2",
3
+ "version": "2.5.4",
4
4
  "type": "module",
5
5
  "description": "CLI engine for Monomind \u2014 an open-source MCP server that extends Claude Code with a codebase knowledge graph (tree-sitter + SQLite), persistent memory, multi-agent task coordination, and session hooks. MIT licensed, fully local.",
6
6
  "main": "dist/src/index.js",
@@ -96,7 +96,7 @@
96
96
  "dependencies": {
97
97
  "@anthropic-ai/claude-agent-sdk": "^0.3.207",
98
98
  "@monoes/monobrowse": "^1.0.3",
99
- "@monoes/monodesign": "^1.0.1",
99
+ "@monoes/monodesign": "^1.2.0",
100
100
  "@monoes/monograph": "^1.4.0",
101
101
  "@noble/ed25519": "^2.1.0",
102
102
  "mammoth": "^1.12.0",
@@ -108,9 +108,9 @@
108
108
  "optionalDependencies": {
109
109
  "@huggingface/transformers": "^3.8.1",
110
110
  "@monoes/memory": "^1.0.10",
111
- "@monomind/hooks": "*",
112
- "@monomind/mcp": "*",
113
- "@monomind/routing": "*",
111
+ "@monoes/hooks": "^1.0.0",
112
+ "@monoes/mcp": "^1.0.0",
113
+ "@monoes/routing": "^1.0.0",
114
114
  "monofence-ai": "*",
115
115
  "sql.js": "^1.14.1"
116
116
  },