claude-mpm 4.1.15__py3-none-any.whl → 4.1.19__py3-none-any.whl
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.
- claude_mpm/VERSION +1 -1
- claude_mpm/agents/templates/web_qa.json +94 -18
- claude_mpm/cli/commands/mpm_init.py +154 -7
- claude_mpm/cli/commands/mpm_init_handler.py +1 -0
- claude_mpm/cli/parsers/mpm_init_parser.py +13 -0
- claude_mpm/commands/mpm-init.md +162 -0
- claude_mpm/dashboard/static/css/activity.css +165 -0
- claude_mpm/dashboard/static/css/dashboard.css +18 -15
- claude_mpm/dashboard/static/js/components/activity-tree.js +654 -499
- {claude_mpm-4.1.15.dist-info → claude_mpm-4.1.19.dist-info}/METADATA +1 -1
- {claude_mpm-4.1.15.dist-info → claude_mpm-4.1.19.dist-info}/RECORD +15 -14
- {claude_mpm-4.1.15.dist-info → claude_mpm-4.1.19.dist-info}/WHEEL +0 -0
- {claude_mpm-4.1.15.dist-info → claude_mpm-4.1.19.dist-info}/entry_points.txt +0 -0
- {claude_mpm-4.1.15.dist-info → claude_mpm-4.1.19.dist-info}/licenses/LICENSE +0 -0
- {claude_mpm-4.1.15.dist-info → claude_mpm-4.1.19.dist-info}/top_level.txt +0 -0
|
@@ -261,6 +261,14 @@
|
|
|
261
261
|
flex-shrink: 0;
|
|
262
262
|
}
|
|
263
263
|
|
|
264
|
+
.tree-status-icon {
|
|
265
|
+
font-size: 14px;
|
|
266
|
+
width: 18px;
|
|
267
|
+
text-align: center;
|
|
268
|
+
flex-shrink: 0;
|
|
269
|
+
margin-left: 2px;
|
|
270
|
+
}
|
|
271
|
+
|
|
264
272
|
.tree-expand-icon {
|
|
265
273
|
font-size: 12px;
|
|
266
274
|
width: 16px;
|
|
@@ -470,6 +478,7 @@ body .activity-tree-container .linear-tree .tree-node.tool.status-in_progress,
|
|
|
470
478
|
background: #e6fffa !important;
|
|
471
479
|
border-left-color: #38b2ac !important;
|
|
472
480
|
border-left-width: 3px !important;
|
|
481
|
+
animation: pulse-tool 2s infinite;
|
|
473
482
|
}
|
|
474
483
|
|
|
475
484
|
body .activity-tree-container .linear-tree .tree-node.tool.status-completed,
|
|
@@ -486,6 +495,43 @@ body .activity-tree-container .linear-tree .tree-node.tool.status-failed,
|
|
|
486
495
|
border-left-width: 2px !important;
|
|
487
496
|
}
|
|
488
497
|
|
|
498
|
+
/* Tool Status Icons */
|
|
499
|
+
.tree-node.tool .tree-status-icon {
|
|
500
|
+
color: #718096;
|
|
501
|
+
}
|
|
502
|
+
|
|
503
|
+
.tree-node.tool.status-in_progress .tree-status-icon {
|
|
504
|
+
color: #38b2ac;
|
|
505
|
+
animation: spin 2s linear infinite;
|
|
506
|
+
}
|
|
507
|
+
|
|
508
|
+
.tree-node.tool.status-completed .tree-status-icon {
|
|
509
|
+
color: #38a169;
|
|
510
|
+
}
|
|
511
|
+
|
|
512
|
+
.tree-node.tool.status-failed .tree-status-icon {
|
|
513
|
+
color: #e53e3e;
|
|
514
|
+
}
|
|
515
|
+
|
|
516
|
+
/* Spinning animation for in-progress tools */
|
|
517
|
+
@keyframes spin {
|
|
518
|
+
0% { transform: rotate(0deg); }
|
|
519
|
+
100% { transform: rotate(360deg); }
|
|
520
|
+
}
|
|
521
|
+
|
|
522
|
+
/* Pulse animation for in-progress tools */
|
|
523
|
+
@keyframes pulse-tool {
|
|
524
|
+
0% {
|
|
525
|
+
background: #e6fffa !important;
|
|
526
|
+
}
|
|
527
|
+
50% {
|
|
528
|
+
background: #b2f5ea !important;
|
|
529
|
+
}
|
|
530
|
+
100% {
|
|
531
|
+
background: #e6fffa !important;
|
|
532
|
+
}
|
|
533
|
+
}
|
|
534
|
+
|
|
489
535
|
/* Privileged Tool (TodoWrite) - High Specificity */
|
|
490
536
|
body .activity-tree-container .linear-tree .tree-node.tool.privileged-tool,
|
|
491
537
|
.tree-node.tool.privileged-tool {
|
|
@@ -523,6 +569,7 @@ body .activity-tree-container .linear-tree .tree-node.tool.privileged-tool .tree
|
|
|
523
569
|
background: #e6fffa !important;
|
|
524
570
|
border-left-color: #38b2ac !important;
|
|
525
571
|
border-left-width: 3px !important;
|
|
572
|
+
animation: pulse-tool 2s infinite;
|
|
526
573
|
}
|
|
527
574
|
|
|
528
575
|
.tree-node.tool:not(.privileged-tool).status-completed {
|
|
@@ -612,6 +659,44 @@ body .activity-tree-container .linear-tree .tree-node.tool.privileged-tool .tree
|
|
|
612
659
|
}
|
|
613
660
|
}
|
|
614
661
|
|
|
662
|
+
/* Pinned TODOs Styles */
|
|
663
|
+
.tree-node.pinned-todos {
|
|
664
|
+
background: linear-gradient(135deg, #fff8dc 0%, #f0e68c 100%) !important;
|
|
665
|
+
border-left: 4px solid #daa520 !important;
|
|
666
|
+
border-radius: 6px !important;
|
|
667
|
+
margin: 4px 0 !important;
|
|
668
|
+
font-weight: 600 !important;
|
|
669
|
+
}
|
|
670
|
+
|
|
671
|
+
.tree-node.pinned-todos:hover {
|
|
672
|
+
background: linear-gradient(135deg, #f0e68c 0%, #daa520 100%) !important;
|
|
673
|
+
box-shadow: 0 4px 8px rgba(218, 165, 32, 0.3) !important;
|
|
674
|
+
}
|
|
675
|
+
|
|
676
|
+
.tree-node.pinned-todos .tree-label {
|
|
677
|
+
color: #b8860b !important;
|
|
678
|
+
font-weight: bold !important;
|
|
679
|
+
}
|
|
680
|
+
|
|
681
|
+
.tree-node.pinned-todos .tree-icon {
|
|
682
|
+
color: #daa520 !important;
|
|
683
|
+
font-size: 18px !important;
|
|
684
|
+
}
|
|
685
|
+
|
|
686
|
+
.tree-node.pinned-todos .tree-params {
|
|
687
|
+
background: #f5deb3 !important;
|
|
688
|
+
color: #8b4513 !important;
|
|
689
|
+
font-weight: 600 !important;
|
|
690
|
+
border: 1px solid #daa520 !important;
|
|
691
|
+
}
|
|
692
|
+
|
|
693
|
+
.tree-node.pinned-todos .tree-status {
|
|
694
|
+
background: #daa520 !important;
|
|
695
|
+
color: white !important;
|
|
696
|
+
font-weight: bold !important;
|
|
697
|
+
text-transform: uppercase !important;
|
|
698
|
+
}
|
|
699
|
+
|
|
615
700
|
/* Tree Legend */
|
|
616
701
|
.tree-legend {
|
|
617
702
|
position: absolute;
|
|
@@ -1518,4 +1603,84 @@ body .activity-tree-container .linear-tree .tree-node.tool.privileged-tool .tree
|
|
|
1518
1603
|
.tree-expand-icon:focus {
|
|
1519
1604
|
outline: 2px solid #4299e1;
|
|
1520
1605
|
outline-offset: 2px;
|
|
1606
|
+
}
|
|
1607
|
+
|
|
1608
|
+
/* Active/current item highlighting */
|
|
1609
|
+
.tree-node.current-active {
|
|
1610
|
+
background: linear-gradient(90deg, rgba(245, 158, 11, 0.1) 0%, transparent 100%);
|
|
1611
|
+
border-left: 3px solid #f59e0b;
|
|
1612
|
+
animation: pulse-active 2s ease-in-out infinite;
|
|
1613
|
+
}
|
|
1614
|
+
|
|
1615
|
+
.tree-node.has-active .tree-node-content {
|
|
1616
|
+
font-weight: 600;
|
|
1617
|
+
}
|
|
1618
|
+
|
|
1619
|
+
.tree-node.todowrite.has-active .tree-icon {
|
|
1620
|
+
animation: rotate-icon 3s linear infinite;
|
|
1621
|
+
}
|
|
1622
|
+
|
|
1623
|
+
@keyframes pulse-active {
|
|
1624
|
+
0%, 100% {
|
|
1625
|
+
background: linear-gradient(90deg, rgba(245, 158, 11, 0.1) 0%, transparent 100%);
|
|
1626
|
+
}
|
|
1627
|
+
50% {
|
|
1628
|
+
background: linear-gradient(90deg, rgba(245, 158, 11, 0.2) 0%, transparent 100%);
|
|
1629
|
+
}
|
|
1630
|
+
}
|
|
1631
|
+
|
|
1632
|
+
@keyframes rotate-icon {
|
|
1633
|
+
from {
|
|
1634
|
+
transform: rotate(0deg);
|
|
1635
|
+
}
|
|
1636
|
+
to {
|
|
1637
|
+
transform: rotate(360deg);
|
|
1638
|
+
}
|
|
1639
|
+
}
|
|
1640
|
+
|
|
1641
|
+
/* Collapsed state indicators */
|
|
1642
|
+
.tree-node.agent:not(.expanded) .tree-label {
|
|
1643
|
+
font-style: italic;
|
|
1644
|
+
color: #4b5563;
|
|
1645
|
+
}
|
|
1646
|
+
|
|
1647
|
+
.tree-node.agent .tree-label .current-status {
|
|
1648
|
+
color: #f59e0b;
|
|
1649
|
+
font-weight: 600;
|
|
1650
|
+
margin-left: 10px;
|
|
1651
|
+
}
|
|
1652
|
+
|
|
1653
|
+
/* TodoWrite specific styles */
|
|
1654
|
+
.tree-node.todowrite {
|
|
1655
|
+
background: rgba(99, 102, 241, 0.05);
|
|
1656
|
+
border-radius: 4px;
|
|
1657
|
+
margin: 2px 0;
|
|
1658
|
+
}
|
|
1659
|
+
|
|
1660
|
+
.tree-node.todowrite .tree-node-content {
|
|
1661
|
+
padding: 4px 8px;
|
|
1662
|
+
}
|
|
1663
|
+
|
|
1664
|
+
/* Multiple call/update indicators */
|
|
1665
|
+
.tree-node .tree-label .call-count,
|
|
1666
|
+
.tree-node .tree-label .update-count {
|
|
1667
|
+
color: #6366f1;
|
|
1668
|
+
font-weight: 600;
|
|
1669
|
+
font-size: 0.85em;
|
|
1670
|
+
opacity: 0.8;
|
|
1671
|
+
}
|
|
1672
|
+
|
|
1673
|
+
.tree-node.tool .tree-label {
|
|
1674
|
+
position: relative;
|
|
1675
|
+
}
|
|
1676
|
+
|
|
1677
|
+
.tree-node.tool .call-indicator {
|
|
1678
|
+
display: inline-block;
|
|
1679
|
+
background: #f59e0b;
|
|
1680
|
+
color: white;
|
|
1681
|
+
border-radius: 10px;
|
|
1682
|
+
padding: 0 6px;
|
|
1683
|
+
font-size: 0.75em;
|
|
1684
|
+
margin-left: 5px;
|
|
1685
|
+
font-weight: 600;
|
|
1521
1686
|
}
|
|
@@ -661,8 +661,8 @@ label {
|
|
|
661
661
|
}
|
|
662
662
|
|
|
663
663
|
.status-pending {
|
|
664
|
-
background: #
|
|
665
|
-
color: #
|
|
664
|
+
background: #f3f4f6;
|
|
665
|
+
color: #4b5563;
|
|
666
666
|
padding: 2px 6px;
|
|
667
667
|
border-radius: 4px;
|
|
668
668
|
font-size: 11px;
|
|
@@ -2779,13 +2779,15 @@ button:disabled:hover {
|
|
|
2779
2779
|
}
|
|
2780
2780
|
|
|
2781
2781
|
.tool-phase.pre_tool {
|
|
2782
|
-
background: #
|
|
2783
|
-
color: #
|
|
2782
|
+
background: #f0f9ff;
|
|
2783
|
+
color: #0369a1;
|
|
2784
|
+
border: 1px solid #bae6fd;
|
|
2784
2785
|
}
|
|
2785
2786
|
|
|
2786
2787
|
.tool-phase.post_tool {
|
|
2787
2788
|
background: #d1fae5;
|
|
2788
2789
|
color: #065f46;
|
|
2790
|
+
border: 1px solid #a7f3d0;
|
|
2789
2791
|
}
|
|
2790
2792
|
|
|
2791
2793
|
.tool-timestamp {
|
|
@@ -2838,8 +2840,9 @@ button:disabled:hover {
|
|
|
2838
2840
|
}
|
|
2839
2841
|
|
|
2840
2842
|
.tool-status-indicator.status-blocked {
|
|
2841
|
-
background: #
|
|
2842
|
-
color: #
|
|
2843
|
+
background: #fef2f2;
|
|
2844
|
+
color: #dc2626;
|
|
2845
|
+
border: 1px solid #fecaca;
|
|
2843
2846
|
}
|
|
2844
2847
|
|
|
2845
2848
|
.tool-status-indicator.status-running {
|
|
@@ -2909,9 +2912,9 @@ button:disabled:hover {
|
|
|
2909
2912
|
}
|
|
2910
2913
|
|
|
2911
2914
|
.tool-result-status.tool-blocked {
|
|
2912
|
-
background: #
|
|
2913
|
-
color: #
|
|
2914
|
-
border: 1px solid #
|
|
2915
|
+
background: #fff1f2;
|
|
2916
|
+
color: #be123c;
|
|
2917
|
+
border: 1px solid #fecdd3;
|
|
2915
2918
|
}
|
|
2916
2919
|
|
|
2917
2920
|
.tool-result-status.tool-running {
|
|
@@ -3686,8 +3689,8 @@ button:disabled:hover {
|
|
|
3686
3689
|
}
|
|
3687
3690
|
|
|
3688
3691
|
.status-pending {
|
|
3689
|
-
background: #
|
|
3690
|
-
color: #
|
|
3692
|
+
background: #f3f4f6;
|
|
3693
|
+
color: #4b5563;
|
|
3691
3694
|
}
|
|
3692
3695
|
|
|
3693
3696
|
.agent-event-details {
|
|
@@ -3942,8 +3945,8 @@ button:disabled:hover {
|
|
|
3942
3945
|
}
|
|
3943
3946
|
|
|
3944
3947
|
.status-count.pending {
|
|
3945
|
-
background: #
|
|
3946
|
-
color: #
|
|
3948
|
+
background: #f3f4f6;
|
|
3949
|
+
color: #4b5563;
|
|
3947
3950
|
}
|
|
3948
3951
|
|
|
3949
3952
|
.todo-list {
|
|
@@ -3973,8 +3976,8 @@ button:disabled:hover {
|
|
|
3973
3976
|
}
|
|
3974
3977
|
|
|
3975
3978
|
.todo-item.pending {
|
|
3976
|
-
border-left-color: #
|
|
3977
|
-
background: #
|
|
3979
|
+
border-left-color: #9ca3af;
|
|
3980
|
+
background: #f9fafb;
|
|
3978
3981
|
}
|
|
3979
3982
|
|
|
3980
3983
|
.todo-icon {
|