lua-cli 1.3.2-alpha.0 → 1.3.2-alpha.2
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/dist/commands/compile.js +227 -165
- package/dist/commands/dev.js +117 -114
- package/dist/commands/test.js +122 -130
- package/dist/services/api.d.ts +4 -4
- package/dist/services/api.js +8 -4
- package/dist/skill.d.ts +16 -1
- package/dist/skill.js +49 -0
- package/dist/types/index.d.ts +3 -3
- package/dist/user-data-api.d.ts +1 -0
- package/dist/user-data-api.js +9 -4
- package/dist/utils/files.js +33 -5
- package/dist/utils/sandbox.d.ts +96 -0
- package/dist/utils/sandbox.js +161 -0
- package/dist/web/app.css +274 -43
- package/dist/web/app.js +13 -13
- package/dist/web/tools-page.css +70 -53
- package/package.json +1 -1
- package/template/lua.skill.yaml +16 -0
- package/template/package-lock.json +9 -1
- package/template/package.json +3 -3
- package/template/src/index.ts +3 -13
- package/template/src/tools/CreatePostTool.ts +15 -23
- package/template/src/tools/GetWeatherTool.ts +22 -23
- package/template/src/tools/UserDataTool.ts +56 -0
- package/template/src/services/MathService.ts +0 -61
- package/template/src/tools/AdvancedMathTool.ts +0 -82
- package/template/src/tools/CalculatorTool.ts +0 -65
- package/template/src/tools/GetUserDataTool.ts +0 -38
- package/template/tools/UserPreferencesTool.ts +0 -73
package/dist/web/app.css
CHANGED
|
@@ -93,8 +93,8 @@ body {
|
|
|
93
93
|
color: #cccccc;
|
|
94
94
|
border: 1px solid #3e3e42;
|
|
95
95
|
border-radius: 6px;
|
|
96
|
-
padding:
|
|
97
|
-
font-size:
|
|
96
|
+
padding: 6px 12px;
|
|
97
|
+
font-size: 12px;
|
|
98
98
|
font-weight: 500;
|
|
99
99
|
font-family: inherit;
|
|
100
100
|
cursor: pointer;
|
|
@@ -188,24 +188,30 @@ body {
|
|
|
188
188
|
}
|
|
189
189
|
|
|
190
190
|
.clear-chat-button {
|
|
191
|
-
background: #
|
|
191
|
+
background: #333333;
|
|
192
192
|
color: white;
|
|
193
193
|
border: none;
|
|
194
194
|
border-radius: 4px;
|
|
195
|
-
padding: 6px
|
|
196
|
-
font-size:
|
|
195
|
+
padding: 6px;
|
|
196
|
+
font-size: 14px;
|
|
197
197
|
font-family: inherit;
|
|
198
198
|
cursor: pointer;
|
|
199
199
|
transition: background-color 0.2s;
|
|
200
|
+
width: 28px;
|
|
201
|
+
height: 28px;
|
|
202
|
+
display: flex;
|
|
203
|
+
align-items: center;
|
|
204
|
+
justify-content: center;
|
|
200
205
|
margin-left: auto;
|
|
201
206
|
}
|
|
202
207
|
|
|
203
208
|
.clear-chat-button:hover:not(:disabled) {
|
|
204
|
-
background: #
|
|
209
|
+
background: #000000;
|
|
205
210
|
}
|
|
206
211
|
|
|
207
212
|
.clear-chat-button:disabled {
|
|
208
|
-
background: #
|
|
213
|
+
background: #2d2d30;
|
|
214
|
+
color: #8c8c8c;
|
|
209
215
|
cursor: not-allowed;
|
|
210
216
|
}
|
|
211
217
|
|
|
@@ -423,8 +429,8 @@ body {
|
|
|
423
429
|
color: white;
|
|
424
430
|
border: none;
|
|
425
431
|
border-radius: 20px;
|
|
426
|
-
padding:
|
|
427
|
-
font-size:
|
|
432
|
+
padding: 8px 16px;
|
|
433
|
+
font-size: 12px;
|
|
428
434
|
font-weight: 500;
|
|
429
435
|
font-family: inherit;
|
|
430
436
|
cursor: pointer;
|
|
@@ -483,19 +489,24 @@ body {
|
|
|
483
489
|
}
|
|
484
490
|
|
|
485
491
|
.refresh-button {
|
|
486
|
-
background: #
|
|
492
|
+
background: #333333;
|
|
487
493
|
color: #cccccc;
|
|
488
494
|
border: none;
|
|
489
495
|
border-radius: 4px;
|
|
490
|
-
padding: 6px
|
|
491
|
-
font-size:
|
|
496
|
+
padding: 6px;
|
|
497
|
+
font-size: 14px;
|
|
492
498
|
font-family: inherit;
|
|
493
499
|
cursor: pointer;
|
|
494
500
|
transition: background-color 0.2s;
|
|
501
|
+
width: 28px;
|
|
502
|
+
height: 28px;
|
|
503
|
+
display: flex;
|
|
504
|
+
align-items: center;
|
|
505
|
+
justify-content: center;
|
|
495
506
|
}
|
|
496
507
|
|
|
497
508
|
.refresh-button:hover:not(:disabled) {
|
|
498
|
-
background: #
|
|
509
|
+
background: #000000;
|
|
499
510
|
}
|
|
500
511
|
|
|
501
512
|
.refresh-button:disabled {
|
|
@@ -505,45 +516,55 @@ body {
|
|
|
505
516
|
}
|
|
506
517
|
|
|
507
518
|
.save-button {
|
|
508
|
-
background: #
|
|
519
|
+
background: #333333;
|
|
509
520
|
color: white;
|
|
510
521
|
border: none;
|
|
511
522
|
border-radius: 4px;
|
|
512
|
-
padding: 6px
|
|
513
|
-
font-size:
|
|
523
|
+
padding: 6px;
|
|
524
|
+
font-size: 14px;
|
|
514
525
|
font-family: inherit;
|
|
515
526
|
cursor: pointer;
|
|
516
527
|
transition: background-color 0.2s;
|
|
528
|
+
width: 28px;
|
|
529
|
+
height: 28px;
|
|
530
|
+
display: flex;
|
|
531
|
+
align-items: center;
|
|
532
|
+
justify-content: center;
|
|
517
533
|
}
|
|
518
534
|
|
|
519
535
|
.save-button:hover:not(:disabled) {
|
|
520
|
-
background: #
|
|
536
|
+
background: #000000;
|
|
521
537
|
}
|
|
522
538
|
|
|
523
539
|
.save-button:disabled {
|
|
524
|
-
background: #
|
|
540
|
+
background: #2d2d30;
|
|
525
541
|
color: #8c8c8c;
|
|
526
542
|
cursor: not-allowed;
|
|
527
543
|
}
|
|
528
544
|
|
|
529
545
|
.clear-button {
|
|
530
|
-
background: #
|
|
546
|
+
background: #333333;
|
|
531
547
|
color: white;
|
|
532
548
|
border: none;
|
|
533
549
|
border-radius: 4px;
|
|
534
|
-
padding: 6px
|
|
535
|
-
font-size:
|
|
550
|
+
padding: 6px;
|
|
551
|
+
font-size: 14px;
|
|
536
552
|
font-family: inherit;
|
|
537
553
|
cursor: pointer;
|
|
538
554
|
transition: background-color 0.2s;
|
|
555
|
+
width: 28px;
|
|
556
|
+
height: 28px;
|
|
557
|
+
display: flex;
|
|
558
|
+
align-items: center;
|
|
559
|
+
justify-content: center;
|
|
539
560
|
}
|
|
540
561
|
|
|
541
562
|
.clear-button:hover:not(:disabled) {
|
|
542
|
-
background: #
|
|
563
|
+
background: #000000;
|
|
543
564
|
}
|
|
544
565
|
|
|
545
566
|
.clear-button:disabled {
|
|
546
|
-
background: #
|
|
567
|
+
background: #2d2d30;
|
|
547
568
|
color: #8c8c8c;
|
|
548
569
|
cursor: not-allowed;
|
|
549
570
|
}
|
|
@@ -578,7 +599,60 @@ body {
|
|
|
578
599
|
padding: 12px;
|
|
579
600
|
}
|
|
580
601
|
|
|
581
|
-
.json-
|
|
602
|
+
.json-display {
|
|
603
|
+
width: 100%;
|
|
604
|
+
height: 100%;
|
|
605
|
+
background: #1e1e1e;
|
|
606
|
+
color: #cccccc;
|
|
607
|
+
border: 1px solid #3e3e42;
|
|
608
|
+
border-radius: 4px;
|
|
609
|
+
padding: 12px;
|
|
610
|
+
font-size: 13px;
|
|
611
|
+
font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
|
|
612
|
+
outline: none;
|
|
613
|
+
resize: none;
|
|
614
|
+
line-height: 1.4;
|
|
615
|
+
cursor: pointer;
|
|
616
|
+
overflow: auto;
|
|
617
|
+
white-space: pre-wrap;
|
|
618
|
+
word-break: break-word;
|
|
619
|
+
}
|
|
620
|
+
|
|
621
|
+
.json-display:hover {
|
|
622
|
+
border-color: #007acc;
|
|
623
|
+
}
|
|
624
|
+
|
|
625
|
+
/* JSON Syntax Highlighting */
|
|
626
|
+
.json-key {
|
|
627
|
+
color: #9cdcfe;
|
|
628
|
+
}
|
|
629
|
+
|
|
630
|
+
.json-string {
|
|
631
|
+
color: #ce9178;
|
|
632
|
+
}
|
|
633
|
+
|
|
634
|
+
.json-number {
|
|
635
|
+
color: #b5cea8;
|
|
636
|
+
}
|
|
637
|
+
|
|
638
|
+
.json-boolean {
|
|
639
|
+
color: #569cd6;
|
|
640
|
+
}
|
|
641
|
+
|
|
642
|
+
.json-null {
|
|
643
|
+
color: #569cd6;
|
|
644
|
+
}
|
|
645
|
+
|
|
646
|
+
.json-editor-container {
|
|
647
|
+
position: relative;
|
|
648
|
+
width: 100%;
|
|
649
|
+
height: 100%;
|
|
650
|
+
}
|
|
651
|
+
|
|
652
|
+
.json-highlight-background {
|
|
653
|
+
position: absolute;
|
|
654
|
+
top: 0;
|
|
655
|
+
left: 0;
|
|
582
656
|
width: 100%;
|
|
583
657
|
height: 100%;
|
|
584
658
|
background: #1e1e1e;
|
|
@@ -588,15 +662,45 @@ body {
|
|
|
588
662
|
padding: 12px;
|
|
589
663
|
font-size: 13px;
|
|
590
664
|
font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
|
|
665
|
+
line-height: 1.4;
|
|
666
|
+
overflow: auto;
|
|
667
|
+
white-space: pre-wrap;
|
|
668
|
+
word-break: break-word;
|
|
669
|
+
pointer-events: none;
|
|
670
|
+
z-index: 1;
|
|
671
|
+
}
|
|
672
|
+
|
|
673
|
+
.json-textarea-overlay {
|
|
674
|
+
position: absolute;
|
|
675
|
+
top: 0;
|
|
676
|
+
left: 0;
|
|
677
|
+
width: 100%;
|
|
678
|
+
height: 100%;
|
|
679
|
+
background: transparent;
|
|
680
|
+
color: transparent;
|
|
681
|
+
border: 1px solid #3e3e42;
|
|
682
|
+
border-radius: 4px;
|
|
683
|
+
padding: 12px;
|
|
684
|
+
font-size: 13px;
|
|
685
|
+
font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
|
|
591
686
|
outline: none;
|
|
592
687
|
resize: none;
|
|
593
688
|
line-height: 1.4;
|
|
689
|
+
overflow: auto;
|
|
690
|
+
white-space: pre-wrap;
|
|
691
|
+
word-break: break-word;
|
|
692
|
+
z-index: 2;
|
|
693
|
+
caret-color: #cccccc;
|
|
594
694
|
}
|
|
595
695
|
|
|
596
|
-
.json-textarea:focus {
|
|
696
|
+
.json-textarea-overlay:focus {
|
|
597
697
|
border-color: #007acc;
|
|
598
698
|
}
|
|
599
699
|
|
|
700
|
+
.json-textarea-overlay::selection {
|
|
701
|
+
background: rgba(0, 122, 204, 0.3);
|
|
702
|
+
}
|
|
703
|
+
|
|
600
704
|
.user-data-info {
|
|
601
705
|
background: #252526;
|
|
602
706
|
border-top: 1px solid #3e3e42;
|
|
@@ -635,6 +739,38 @@ body {
|
|
|
635
739
|
overflow: hidden;
|
|
636
740
|
border-left: 1px solid #3e3e42;
|
|
637
741
|
flex-shrink: 0;
|
|
742
|
+
height: 100%;
|
|
743
|
+
min-width: 500px;
|
|
744
|
+
}
|
|
745
|
+
|
|
746
|
+
.top-section {
|
|
747
|
+
flex: 1;
|
|
748
|
+
display: flex;
|
|
749
|
+
flex-direction: column;
|
|
750
|
+
overflow: hidden;
|
|
751
|
+
}
|
|
752
|
+
|
|
753
|
+
.bottom-section {
|
|
754
|
+
height: 50%;
|
|
755
|
+
display: flex;
|
|
756
|
+
flex-direction: column;
|
|
757
|
+
border-top: 1px solid #3e3e42;
|
|
758
|
+
overflow: hidden;
|
|
759
|
+
}
|
|
760
|
+
|
|
761
|
+
.console-header {
|
|
762
|
+
background: #2d2d30;
|
|
763
|
+
color: #cccccc;
|
|
764
|
+
padding: 6px 10px;
|
|
765
|
+
border-bottom: 1px solid #3e3e42;
|
|
766
|
+
display: flex;
|
|
767
|
+
align-items: center;
|
|
768
|
+
font-size: 12px;
|
|
769
|
+
flex-shrink: 0;
|
|
770
|
+
}
|
|
771
|
+
|
|
772
|
+
.console-title {
|
|
773
|
+
font-weight: 600;
|
|
638
774
|
}
|
|
639
775
|
|
|
640
776
|
.log-header {
|
|
@@ -657,8 +793,8 @@ body {
|
|
|
657
793
|
background: transparent;
|
|
658
794
|
color: #cccccc;
|
|
659
795
|
border: none;
|
|
660
|
-
padding:
|
|
661
|
-
font-size:
|
|
796
|
+
padding: 6px 12px;
|
|
797
|
+
font-size: 11px;
|
|
662
798
|
font-family: inherit;
|
|
663
799
|
font-weight: 500;
|
|
664
800
|
cursor: pointer;
|
|
@@ -720,7 +856,7 @@ body {
|
|
|
720
856
|
display: flex;
|
|
721
857
|
justify-content: space-between;
|
|
722
858
|
align-items: center;
|
|
723
|
-
padding:
|
|
859
|
+
padding: 12px 16px;
|
|
724
860
|
background: #2d2d30;
|
|
725
861
|
border-bottom: 1px solid #3e3e42;
|
|
726
862
|
color: #cccccc;
|
|
@@ -734,26 +870,41 @@ body {
|
|
|
734
870
|
|
|
735
871
|
.logs-title {
|
|
736
872
|
color: #cccccc;
|
|
873
|
+
font-size: 14px;
|
|
874
|
+
font-weight: 600;
|
|
875
|
+
color: #ffffff;
|
|
876
|
+
font-family: inherit;
|
|
877
|
+
}
|
|
878
|
+
|
|
879
|
+
.logs-actions {
|
|
880
|
+
display: flex;
|
|
881
|
+
gap: 8px;
|
|
737
882
|
}
|
|
738
883
|
|
|
739
884
|
.clear-logs-button {
|
|
740
|
-
background: #
|
|
885
|
+
background: #333333;
|
|
741
886
|
color: white;
|
|
742
887
|
border: none;
|
|
743
888
|
border-radius: 4px;
|
|
744
|
-
padding:
|
|
745
|
-
font-size:
|
|
889
|
+
padding: 6px;
|
|
890
|
+
font-size: 14px;
|
|
746
891
|
font-family: inherit;
|
|
747
892
|
cursor: pointer;
|
|
748
893
|
transition: background-color 0.2s;
|
|
894
|
+
width: 28px;
|
|
895
|
+
height: 28px;
|
|
896
|
+
display: flex;
|
|
897
|
+
align-items: center;
|
|
898
|
+
justify-content: center;
|
|
749
899
|
}
|
|
750
900
|
|
|
751
901
|
.clear-logs-button:hover:not(:disabled) {
|
|
752
|
-
background: #
|
|
902
|
+
background: #000000;
|
|
753
903
|
}
|
|
754
904
|
|
|
755
905
|
.clear-logs-button:disabled {
|
|
756
|
-
background: #
|
|
906
|
+
background: #2d2d30;
|
|
907
|
+
color: #8c8c8c;
|
|
757
908
|
cursor: not-allowed;
|
|
758
909
|
}
|
|
759
910
|
|
|
@@ -904,17 +1055,74 @@ body {
|
|
|
904
1055
|
.log-timestamp {
|
|
905
1056
|
color: #888;
|
|
906
1057
|
margin-right: 8px;
|
|
1058
|
+
width: 80px;
|
|
1059
|
+
flex-shrink: 0;
|
|
1060
|
+
display: inline-block;
|
|
1061
|
+
font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
|
|
1062
|
+
font-size: 11px;
|
|
907
1063
|
}
|
|
908
1064
|
|
|
909
1065
|
.log-type {
|
|
910
1066
|
font-weight: bold;
|
|
911
1067
|
margin-right: 8px;
|
|
1068
|
+
width: 50px;
|
|
1069
|
+
flex-shrink: 0;
|
|
1070
|
+
display: inline-block;
|
|
1071
|
+
font-size: 11px;
|
|
912
1072
|
}
|
|
913
1073
|
|
|
914
1074
|
.log-message {
|
|
915
1075
|
color: #cccccc;
|
|
916
1076
|
}
|
|
917
1077
|
|
|
1078
|
+
.log-message.ellipsed {
|
|
1079
|
+
white-space: nowrap;
|
|
1080
|
+
overflow: hidden;
|
|
1081
|
+
text-overflow: ellipsis;
|
|
1082
|
+
flex: 1;
|
|
1083
|
+
min-width: 0;
|
|
1084
|
+
}
|
|
1085
|
+
|
|
1086
|
+
.log-message.expanded {
|
|
1087
|
+
white-space: normal;
|
|
1088
|
+
overflow: visible;
|
|
1089
|
+
text-overflow: unset;
|
|
1090
|
+
flex: 1;
|
|
1091
|
+
min-width: 0;
|
|
1092
|
+
}
|
|
1093
|
+
|
|
1094
|
+
.full-message {
|
|
1095
|
+
margin-bottom: 8px;
|
|
1096
|
+
padding: 8px;
|
|
1097
|
+
background: #2a2a2a;
|
|
1098
|
+
border-radius: 4px;
|
|
1099
|
+
border-left: 3px solid #007acc;
|
|
1100
|
+
}
|
|
1101
|
+
|
|
1102
|
+
.error-details {
|
|
1103
|
+
margin-bottom: 8px;
|
|
1104
|
+
padding: 8px;
|
|
1105
|
+
background: #2a2a2a;
|
|
1106
|
+
border-radius: 4px;
|
|
1107
|
+
border-left: 3px solid #d73a49;
|
|
1108
|
+
}
|
|
1109
|
+
|
|
1110
|
+
.detail-label {
|
|
1111
|
+
font-size: 11px;
|
|
1112
|
+
color: #888;
|
|
1113
|
+
margin-bottom: 4px;
|
|
1114
|
+
font-weight: 600;
|
|
1115
|
+
text-transform: uppercase;
|
|
1116
|
+
}
|
|
1117
|
+
|
|
1118
|
+
.detail-content {
|
|
1119
|
+
font-size: 12px;
|
|
1120
|
+
color: #e6e6e6;
|
|
1121
|
+
word-break: break-word;
|
|
1122
|
+
white-space: pre-wrap;
|
|
1123
|
+
font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
|
|
1124
|
+
}
|
|
1125
|
+
|
|
918
1126
|
|
|
919
1127
|
.log-connection-status {
|
|
920
1128
|
font-size: 11px;
|
|
@@ -937,24 +1145,28 @@ body {
|
|
|
937
1145
|
/* Persona panel */
|
|
938
1146
|
.persona-section {
|
|
939
1147
|
background: #252526;
|
|
940
|
-
padding: 16px;
|
|
941
1148
|
height: 100%;
|
|
942
1149
|
display: flex;
|
|
943
1150
|
flex-direction: column;
|
|
944
1151
|
}
|
|
945
1152
|
|
|
946
1153
|
.persona-header {
|
|
1154
|
+
background: #2d2d30;
|
|
1155
|
+
color: #cccccc;
|
|
1156
|
+
padding: 12px 16px;
|
|
1157
|
+
border-bottom: 1px solid #3e3e42;
|
|
947
1158
|
display: flex;
|
|
948
1159
|
justify-content: space-between;
|
|
949
1160
|
align-items: center;
|
|
950
|
-
|
|
1161
|
+
flex-shrink: 0;
|
|
951
1162
|
}
|
|
952
1163
|
|
|
953
1164
|
.persona-header h3 {
|
|
954
1165
|
margin: 0;
|
|
955
|
-
color: #cccccc;
|
|
956
1166
|
font-size: 14px;
|
|
957
|
-
font-weight:
|
|
1167
|
+
font-weight: 600;
|
|
1168
|
+
color: #ffffff;
|
|
1169
|
+
font-family: inherit;
|
|
958
1170
|
}
|
|
959
1171
|
|
|
960
1172
|
.edit-btn {
|
|
@@ -986,6 +1198,14 @@ body {
|
|
|
986
1198
|
flex: 1;
|
|
987
1199
|
}
|
|
988
1200
|
|
|
1201
|
+
.persona-content {
|
|
1202
|
+
flex: 1;
|
|
1203
|
+
padding: 12px;
|
|
1204
|
+
display: flex;
|
|
1205
|
+
flex-direction: column;
|
|
1206
|
+
overflow: hidden;
|
|
1207
|
+
}
|
|
1208
|
+
|
|
989
1209
|
.persona-edit {
|
|
990
1210
|
display: flex;
|
|
991
1211
|
flex-direction: column;
|
|
@@ -1016,22 +1236,33 @@ body {
|
|
|
1016
1236
|
.persona-actions {
|
|
1017
1237
|
display: flex;
|
|
1018
1238
|
gap: 8px;
|
|
1019
|
-
justify-content: flex-end;
|
|
1020
1239
|
}
|
|
1021
1240
|
|
|
1022
1241
|
.save-btn {
|
|
1023
|
-
background: #
|
|
1242
|
+
background: #333333;
|
|
1024
1243
|
color: white;
|
|
1025
1244
|
border: none;
|
|
1026
|
-
padding: 8px 16px;
|
|
1027
1245
|
border-radius: 4px;
|
|
1028
|
-
|
|
1246
|
+
padding: 6px;
|
|
1247
|
+
font-size: 14px;
|
|
1248
|
+
font-family: inherit;
|
|
1029
1249
|
cursor: pointer;
|
|
1030
1250
|
transition: background-color 0.2s;
|
|
1251
|
+
width: 28px;
|
|
1252
|
+
height: 28px;
|
|
1253
|
+
display: flex;
|
|
1254
|
+
align-items: center;
|
|
1255
|
+
justify-content: center;
|
|
1031
1256
|
}
|
|
1032
1257
|
|
|
1033
|
-
.save-btn:hover {
|
|
1034
|
-
background: #
|
|
1258
|
+
.save-btn:hover:not(:disabled) {
|
|
1259
|
+
background: #000000;
|
|
1260
|
+
}
|
|
1261
|
+
|
|
1262
|
+
.save-btn:disabled {
|
|
1263
|
+
background: #2d2d30;
|
|
1264
|
+
color: #8c8c8c;
|
|
1265
|
+
cursor: not-allowed;
|
|
1035
1266
|
}
|
|
1036
1267
|
|
|
1037
1268
|
.cancel-btn {
|