@tyvm/knowhow 0.0.111 → 0.0.113
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/package.json +1 -1
- package/scripts/test-repetition-hint.ts +234 -0
- package/src/chat/CliChatService.ts +14 -6
- package/src/chat/modules/AgentModule.ts +4 -1
- package/src/chat/modules/ClipboardImageModule.ts +136 -0
- package/src/chat/modules/InternalChatModule.ts +3 -0
- package/src/chat/modules/RendererModule.ts +30 -2
- package/src/clients/xai.ts +42 -20
- package/src/processors/CustomVariables.ts +175 -0
- package/src/services/EventService.ts +5 -33
- package/src/utils/index.ts +1 -0
- package/tests/fixtures/fake-secret.txt +1 -0
- package/tests/manual/modalities/xai.modalities.test.ts +42 -55
- package/tests/processors/CustomVariables.test.ts +416 -1
- package/ts_build/package.json +1 -1
- package/ts_build/src/chat/CliChatService.js +9 -4
- package/ts_build/src/chat/CliChatService.js.map +1 -1
- package/ts_build/src/chat/modules/AgentModule.js +3 -1
- package/ts_build/src/chat/modules/AgentModule.js.map +1 -1
- package/ts_build/src/chat/modules/ClipboardImageModule.d.ts +15 -0
- package/ts_build/src/chat/modules/ClipboardImageModule.js +157 -0
- package/ts_build/src/chat/modules/ClipboardImageModule.js.map +1 -0
- package/ts_build/src/chat/modules/InternalChatModule.d.ts +1 -0
- package/ts_build/src/chat/modules/InternalChatModule.js +3 -0
- package/ts_build/src/chat/modules/InternalChatModule.js.map +1 -1
- package/ts_build/src/chat/modules/RendererModule.js +30 -1
- package/ts_build/src/chat/modules/RendererModule.js.map +1 -1
- package/ts_build/src/clients/xai.js +36 -19
- package/ts_build/src/clients/xai.js.map +1 -1
- package/ts_build/src/processors/CustomVariables.d.ts +10 -0
- package/ts_build/src/processors/CustomVariables.js +127 -0
- package/ts_build/src/processors/CustomVariables.js.map +1 -1
- package/ts_build/src/services/EventService.d.ts +0 -4
- package/ts_build/src/services/EventService.js +4 -15
- package/ts_build/src/services/EventService.js.map +1 -1
- package/ts_build/src/utils/index.js.map +1 -1
- package/ts_build/tests/manual/modalities/xai.modalities.test.js +29 -46
- package/ts_build/tests/manual/modalities/xai.modalities.test.js.map +1 -1
- package/ts_build/tests/processors/CustomVariables.test.js +347 -0
- package/ts_build/tests/processors/CustomVariables.test.js.map +1 -1
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { Message } from "../../src/clients/types";
|
|
1
|
+
import { Message } from "../../src/clients/types";
|
|
2
2
|
import { CustomVariables } from "../../src/processors/CustomVariables";
|
|
3
3
|
import { ToolsService } from "../../src/services";
|
|
4
|
+
import * as fs from "fs";
|
|
4
5
|
|
|
5
6
|
describe("CustomVariables", () => {
|
|
6
7
|
let customVariables: CustomVariables;
|
|
@@ -553,4 +554,418 @@ describe("CustomVariables", () => {
|
|
|
553
554
|
expect(modifiedMessages[0].content).toBe("Empty: '' Spaces: ' '");
|
|
554
555
|
});
|
|
555
556
|
});
|
|
557
|
+
|
|
558
|
+
describe("JWT token use case", () => {
|
|
559
|
+
let setVariableFunction: (name: string, contents: any) => string;
|
|
560
|
+
|
|
561
|
+
const LONG_JWT =
|
|
562
|
+
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9." +
|
|
563
|
+
"eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyLCJleHAiOjE3MTYyMzkwMjIsInJvbGVzIjpbImFkbWluIiwidXNlciJdLCJvcmciOiJhY21lLWNvcnAiLCJlbWFpbCI6ImpvaG5AYWNtZS5jb20ifQ." +
|
|
564
|
+
"SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c";
|
|
565
|
+
|
|
566
|
+
beforeEach(() => {
|
|
567
|
+
const addFunctionsCalls = mockToolsService.addFunctions.mock.calls;
|
|
568
|
+
const setVariableCall = addFunctionsCalls.find(
|
|
569
|
+
(call) => call[0].setVariable
|
|
570
|
+
);
|
|
571
|
+
setVariableFunction = setVariableCall[0].setVariable;
|
|
572
|
+
});
|
|
573
|
+
|
|
574
|
+
it("should store a long JWT and substitute it in a tool call argument", async () => {
|
|
575
|
+
// LLM stores the JWT once
|
|
576
|
+
setVariableFunction("jwt_token", LONG_JWT);
|
|
577
|
+
|
|
578
|
+
// LLM uses {{jwt_token}} in a tool call instead of repeating the full JWT
|
|
579
|
+
const messages: Message[] = [
|
|
580
|
+
{
|
|
581
|
+
role: "assistant",
|
|
582
|
+
content: null,
|
|
583
|
+
tool_calls: [
|
|
584
|
+
{
|
|
585
|
+
id: "call_abc",
|
|
586
|
+
type: "function",
|
|
587
|
+
function: {
|
|
588
|
+
name: "execCommand",
|
|
589
|
+
arguments: JSON.stringify({
|
|
590
|
+
command: 'curl -H "Authorization: Bearer {{jwt_token}}" https://api.example.com/data',
|
|
591
|
+
}),
|
|
592
|
+
},
|
|
593
|
+
},
|
|
594
|
+
],
|
|
595
|
+
},
|
|
596
|
+
];
|
|
597
|
+
|
|
598
|
+
const processor = customVariables.createProcessor();
|
|
599
|
+
const modifiedMessages = [...messages];
|
|
600
|
+
await processor(messages, modifiedMessages);
|
|
601
|
+
|
|
602
|
+
// The tool call argument should have the full JWT substituted in
|
|
603
|
+
const args = JSON.parse(modifiedMessages[0].tool_calls![0].function.arguments);
|
|
604
|
+
expect(args.command).toBe(
|
|
605
|
+
`curl -H "Authorization: Bearer ${LONG_JWT}" https://api.example.com/data`
|
|
606
|
+
);
|
|
607
|
+
// And the original message should be unchanged
|
|
608
|
+
expect(messages[0].tool_calls![0].function.arguments).toContain("{{jwt_token}}");
|
|
609
|
+
});
|
|
610
|
+
|
|
611
|
+
it("should allow reusing the JWT variable across multiple tool calls without repeating it", async () => {
|
|
612
|
+
setVariableFunction("jwt_token", LONG_JWT);
|
|
613
|
+
|
|
614
|
+
// Simulate multiple tool calls all using {{jwt_token}} - LLM never outputs full JWT again
|
|
615
|
+
const toolCallMessages: Message[] = [
|
|
616
|
+
{
|
|
617
|
+
role: "assistant",
|
|
618
|
+
content: null,
|
|
619
|
+
tool_calls: [
|
|
620
|
+
{
|
|
621
|
+
id: "call_1",
|
|
622
|
+
type: "function",
|
|
623
|
+
function: {
|
|
624
|
+
name: "execCommand",
|
|
625
|
+
arguments: JSON.stringify({ command: 'curl -H "Authorization: Bearer {{jwt_token}}" https://api.example.com/users' }),
|
|
626
|
+
},
|
|
627
|
+
},
|
|
628
|
+
],
|
|
629
|
+
},
|
|
630
|
+
{
|
|
631
|
+
role: "assistant",
|
|
632
|
+
content: null,
|
|
633
|
+
tool_calls: [
|
|
634
|
+
{
|
|
635
|
+
id: "call_2",
|
|
636
|
+
type: "function",
|
|
637
|
+
function: {
|
|
638
|
+
name: "execCommand",
|
|
639
|
+
arguments: JSON.stringify({ command: 'curl -H "Authorization: Bearer {{jwt_token}}" https://api.example.com/posts' }),
|
|
640
|
+
},
|
|
641
|
+
},
|
|
642
|
+
],
|
|
643
|
+
},
|
|
644
|
+
];
|
|
645
|
+
|
|
646
|
+
const processor = customVariables.createProcessor();
|
|
647
|
+
const modifiedMessages = [...toolCallMessages];
|
|
648
|
+
await processor(toolCallMessages, modifiedMessages);
|
|
649
|
+
|
|
650
|
+
// Both tool calls should have the full JWT
|
|
651
|
+
const args1 = JSON.parse(modifiedMessages[0].tool_calls![0].function.arguments);
|
|
652
|
+
const args2 = JSON.parse(modifiedMessages[1].tool_calls![0].function.arguments);
|
|
653
|
+
|
|
654
|
+
expect(args1.command).toContain(LONG_JWT);
|
|
655
|
+
expect(args2.command).toContain(LONG_JWT);
|
|
656
|
+
|
|
657
|
+
// Original messages should still have the placeholder
|
|
658
|
+
expect(toolCallMessages[0].tool_calls![0].function.arguments).toContain("{{jwt_token}}");
|
|
659
|
+
expect(toolCallMessages[1].tool_calls![0].function.arguments).toContain("{{jwt_token}}");
|
|
660
|
+
});
|
|
661
|
+
|
|
662
|
+
describe("storeToolCallToVariable privacy proof", () => {
|
|
663
|
+
/**
|
|
664
|
+
* This test proves that when an LLM uses storeToolCallToVariable to load
|
|
665
|
+
* a sensitive value (e.g. a JWT from a file), the LLM *never* sees the
|
|
666
|
+
* actual value in any message. The tool response only says
|
|
667
|
+
* "stored in variable X" - the raw secret stays server-side in the
|
|
668
|
+
* variable storage, and the LLM uses {{jwt_token}} as a placeholder.
|
|
669
|
+
*/
|
|
670
|
+
let storeToolCallFunction: (
|
|
671
|
+
varName: string,
|
|
672
|
+
toolName: string,
|
|
673
|
+
toolArgs: string
|
|
674
|
+
) => Promise<string>;
|
|
675
|
+
let setVariableFunction: (name: string, contents: any) => string;
|
|
676
|
+
|
|
677
|
+
beforeEach(() => {
|
|
678
|
+
const addFunctionsCalls = mockToolsService.addFunctions.mock.calls;
|
|
679
|
+
storeToolCallFunction = addFunctionsCalls.find(
|
|
680
|
+
(call) => call[0].storeToolCallToVariable
|
|
681
|
+
)![0].storeToolCallToVariable;
|
|
682
|
+
setVariableFunction = addFunctionsCalls.find(
|
|
683
|
+
(call) => call[0].setVariable
|
|
684
|
+
)![0].setVariable;
|
|
685
|
+
});
|
|
686
|
+
|
|
687
|
+
it("should store JWT from a file without the LLM ever seeing the value", async () => {
|
|
688
|
+
// Simulate a tool that reads the JWT file (like execCommand cat .knowhow/.jwt)
|
|
689
|
+
const jwtContent = fs.readFileSync(`${__dirname}/../fixtures/fake-secret.txt`, "utf-8").trim();
|
|
690
|
+
|
|
691
|
+
// The tool returns the file contents - but only to storeToolCallToVariable, not to the LLM
|
|
692
|
+
mockToolsService.callTool.mockResolvedValue(jwtContent as any);
|
|
693
|
+
|
|
694
|
+
// LLM calls: storeToolCallToVariable("jwt_token", "execCommand", '{"command":"cat .knowhow/.jwt"}')
|
|
695
|
+
const toolResponse = await storeToolCallFunction(
|
|
696
|
+
"jwt_token",
|
|
697
|
+
"execCommand",
|
|
698
|
+
JSON.stringify({ command: "cat tests/fixtures/fake-secret.txt" })
|
|
699
|
+
);
|
|
700
|
+
|
|
701
|
+
// The LLM only sees this confirmation message - NOT the JWT value itself
|
|
702
|
+
expect(toolResponse).toBe(
|
|
703
|
+
'Tool call result for "execCommand" has been stored in variable "jwt_token".'
|
|
704
|
+
);
|
|
705
|
+
expect(toolResponse).not.toContain(jwtContent);
|
|
706
|
+
expect(toolResponse).not.toContain("eyJ"); // No JWT content in the response
|
|
707
|
+
|
|
708
|
+
// The JWT IS stored internally and can be substituted into future tool calls
|
|
709
|
+
const processor = customVariables.createProcessor();
|
|
710
|
+
|
|
711
|
+
const messages: Message[] = [
|
|
712
|
+
{
|
|
713
|
+
role: "assistant",
|
|
714
|
+
content: null,
|
|
715
|
+
tool_calls: [
|
|
716
|
+
{
|
|
717
|
+
id: "call_curl",
|
|
718
|
+
type: "function",
|
|
719
|
+
function: {
|
|
720
|
+
name: "execCommand",
|
|
721
|
+
// LLM uses placeholder - never outputs the actual JWT
|
|
722
|
+
arguments: JSON.stringify({
|
|
723
|
+
command: 'curl -H "Authorization: Bearer {{jwt_token}}" https://api.example.com',
|
|
724
|
+
}),
|
|
725
|
+
},
|
|
726
|
+
},
|
|
727
|
+
],
|
|
728
|
+
},
|
|
729
|
+
];
|
|
730
|
+
|
|
731
|
+
const modifiedMessages = [...messages];
|
|
732
|
+
await processor(messages, modifiedMessages);
|
|
733
|
+
|
|
734
|
+
// The actual JWT is injected at execution time
|
|
735
|
+
const args = JSON.parse(modifiedMessages[0].tool_calls![0].function.arguments);
|
|
736
|
+
expect(args.command).toContain(jwtContent);
|
|
737
|
+
|
|
738
|
+
// But the original message still has the placeholder (LLM never saw the JWT)
|
|
739
|
+
expect(messages[0].tool_calls![0].function.arguments).toContain("{{jwt_token}}");
|
|
740
|
+
expect(messages[0].tool_calls![0].function.arguments).not.toContain(jwtContent);
|
|
741
|
+
});
|
|
742
|
+
|
|
743
|
+
it("should prove the full storeToolCallToVariable flow with real JWT file", async () => {
|
|
744
|
+
// Use a fake secret file instead of a real JWT, to prove the secret is never exposed
|
|
745
|
+
const fakePath = `${__dirname}/../fixtures/fake-secret.txt`;
|
|
746
|
+
const fakeSecret = fs.readFileSync(fakePath, "utf-8").trim();
|
|
747
|
+
|
|
748
|
+
// Simulate the execCommand tool returning the JWT file contents
|
|
749
|
+
mockToolsService.callTool.mockResolvedValue(fakeSecret as any);
|
|
750
|
+
|
|
751
|
+
// Step 1: LLM stores JWT via storeToolCallToVariable - only gets a confirmation back
|
|
752
|
+
const storeResponse = await storeToolCallFunction(
|
|
753
|
+
"jwt_token",
|
|
754
|
+
"execCommand",
|
|
755
|
+
JSON.stringify({ command: `cat ${fakePath}` })
|
|
756
|
+
);
|
|
757
|
+
|
|
758
|
+
// LLM message history only contains this - not the JWT
|
|
759
|
+
expect(storeResponse).toContain('stored in variable "jwt_token"');
|
|
760
|
+
expect(storeResponse).not.toContain(fakeSecret);
|
|
761
|
+
|
|
762
|
+
// Step 2: LLM uses {{jwt_token}} in subsequent curl calls
|
|
763
|
+
const processor = customVariables.createProcessor();
|
|
764
|
+
const curlMessages: Message[] = [
|
|
765
|
+
{
|
|
766
|
+
role: "assistant",
|
|
767
|
+
content: null,
|
|
768
|
+
tool_calls: [
|
|
769
|
+
{
|
|
770
|
+
id: "call_api1",
|
|
771
|
+
type: "function",
|
|
772
|
+
function: {
|
|
773
|
+
name: "execCommand",
|
|
774
|
+
arguments: JSON.stringify({
|
|
775
|
+
command: 'curl -H "Authorization: Bearer {{jwt_token}}" https://api.example.com/users',
|
|
776
|
+
}),
|
|
777
|
+
},
|
|
778
|
+
},
|
|
779
|
+
],
|
|
780
|
+
},
|
|
781
|
+
{
|
|
782
|
+
role: "assistant",
|
|
783
|
+
content: null,
|
|
784
|
+
tool_calls: [
|
|
785
|
+
{
|
|
786
|
+
id: "call_api2",
|
|
787
|
+
type: "function",
|
|
788
|
+
function: {
|
|
789
|
+
name: "execCommand",
|
|
790
|
+
arguments: JSON.stringify({
|
|
791
|
+
command: 'curl -H "Authorization: Bearer {{jwt_token}}" https://api.example.com/posts',
|
|
792
|
+
}),
|
|
793
|
+
},
|
|
794
|
+
},
|
|
795
|
+
],
|
|
796
|
+
},
|
|
797
|
+
];
|
|
798
|
+
|
|
799
|
+
const modifiedMessages = [...curlMessages];
|
|
800
|
+
await processor(curlMessages, modifiedMessages);
|
|
801
|
+
|
|
802
|
+
// Both calls get the real JWT injected
|
|
803
|
+
const args1 = JSON.parse(modifiedMessages[0].tool_calls![0].function.arguments);
|
|
804
|
+
const args2 = JSON.parse(modifiedMessages[1].tool_calls![0].function.arguments);
|
|
805
|
+
expect(args1.command).toContain(fakeSecret);
|
|
806
|
+
expect(args2.command).toContain(fakeSecret);
|
|
807
|
+
// Original messages still have placeholder - JWT never appeared in LLM messages
|
|
808
|
+
expect(curlMessages[0].tool_calls![0].function.arguments).not.toContain(fakeSecret);
|
|
809
|
+
expect(curlMessages[1].tool_calls![0].function.arguments).not.toContain(fakeSecret);
|
|
810
|
+
});
|
|
811
|
+
});
|
|
812
|
+
|
|
813
|
+
describe("createRepetitionHintProcessor", () => {
|
|
814
|
+
it("should append a hint when a large string is repeated across multiple tool calls", async () => {
|
|
815
|
+
const longString = "x".repeat(100);
|
|
816
|
+
const messages: Message[] = [
|
|
817
|
+
{
|
|
818
|
+
role: "assistant",
|
|
819
|
+
content: null,
|
|
820
|
+
tool_calls: [{ id: "c1", type: "function", function: { name: "toolA", arguments: JSON.stringify({ token: longString }) } }],
|
|
821
|
+
},
|
|
822
|
+
{
|
|
823
|
+
role: "assistant",
|
|
824
|
+
content: null,
|
|
825
|
+
tool_calls: [{ id: "c2", type: "function", function: { name: "toolA", arguments: JSON.stringify({ token: longString }) } }],
|
|
826
|
+
},
|
|
827
|
+
];
|
|
828
|
+
|
|
829
|
+
const processor = customVariables.createRepetitionHintProcessor({ minLength: 50, minRepetitions: 2 });
|
|
830
|
+
const modified = JSON.parse(JSON.stringify(messages));
|
|
831
|
+
await processor(messages, modified);
|
|
832
|
+
|
|
833
|
+
// A hint message should be appended
|
|
834
|
+
const hint = modified[modified.length - 1];
|
|
835
|
+
expect(hint.role).toBe("user");
|
|
836
|
+
expect(hint.content).toContain("large repetitions");
|
|
837
|
+
expect(hint.content).toContain("toolA");
|
|
838
|
+
expect(hint.content).toContain("setVariable");
|
|
839
|
+
expect(hint.content).toContain("storeToolCallToVariable");
|
|
840
|
+
});
|
|
841
|
+
|
|
842
|
+
it("should not append a hint when strings are short", async () => {
|
|
843
|
+
const messages: Message[] = [
|
|
844
|
+
{
|
|
845
|
+
role: "assistant",
|
|
846
|
+
content: null,
|
|
847
|
+
tool_calls: [{ id: "c1", type: "function", function: { name: "toolA", arguments: JSON.stringify({ token: "short" }) } }],
|
|
848
|
+
},
|
|
849
|
+
{
|
|
850
|
+
role: "assistant",
|
|
851
|
+
content: null,
|
|
852
|
+
tool_calls: [{ id: "c2", type: "function", function: { name: "toolA", arguments: JSON.stringify({ token: "short" }) } }],
|
|
853
|
+
},
|
|
854
|
+
];
|
|
855
|
+
|
|
856
|
+
const processor = customVariables.createRepetitionHintProcessor({ minLength: 50, minRepetitions: 2 });
|
|
857
|
+
const modified = JSON.parse(JSON.stringify(messages));
|
|
858
|
+
await processor(messages, modified);
|
|
859
|
+
|
|
860
|
+
// No hint should be appended - length of messages unchanged
|
|
861
|
+
expect(modified.length).toBe(messages.length);
|
|
862
|
+
});
|
|
863
|
+
|
|
864
|
+
it("should not append a hint when a large string appears only once", async () => {
|
|
865
|
+
const longString = "y".repeat(100);
|
|
866
|
+
const messages: Message[] = [
|
|
867
|
+
{
|
|
868
|
+
role: "assistant",
|
|
869
|
+
content: null,
|
|
870
|
+
tool_calls: [{ id: "c1", type: "function", function: { name: "toolB", arguments: JSON.stringify({ value: longString }) } }],
|
|
871
|
+
},
|
|
872
|
+
{
|
|
873
|
+
role: "assistant",
|
|
874
|
+
content: null,
|
|
875
|
+
tool_calls: [{ id: "c2", type: "function", function: { name: "toolB", arguments: JSON.stringify({ value: "something_different_entirely" }) } }],
|
|
876
|
+
},
|
|
877
|
+
];
|
|
878
|
+
|
|
879
|
+
const processor = customVariables.createRepetitionHintProcessor({ minLength: 50, minRepetitions: 2 });
|
|
880
|
+
const modified = JSON.parse(JSON.stringify(messages));
|
|
881
|
+
await processor(messages, modified);
|
|
882
|
+
expect(modified.length).toBe(messages.length);
|
|
883
|
+
});
|
|
884
|
+
|
|
885
|
+
it("should list all tool names that use repeated values", async () => {
|
|
886
|
+
const longString = "z".repeat(100);
|
|
887
|
+
const messages: Message[] = [
|
|
888
|
+
{
|
|
889
|
+
role: "assistant",
|
|
890
|
+
content: null,
|
|
891
|
+
tool_calls: [{ id: "c1", type: "function", function: { name: "toolX", arguments: JSON.stringify({ auth: longString }) } }],
|
|
892
|
+
},
|
|
893
|
+
{
|
|
894
|
+
role: "assistant",
|
|
895
|
+
content: null,
|
|
896
|
+
tool_calls: [{ id: "c2", type: "function", function: { name: "toolY", arguments: JSON.stringify({ auth: longString }) } }],
|
|
897
|
+
},
|
|
898
|
+
{
|
|
899
|
+
role: "assistant",
|
|
900
|
+
content: null,
|
|
901
|
+
tool_calls: [{ id: "c3", type: "function", function: { name: "toolZ", arguments: JSON.stringify({ auth: longString }) } }],
|
|
902
|
+
},
|
|
903
|
+
];
|
|
904
|
+
const processor = customVariables.createRepetitionHintProcessor({ minLength: 50, minRepetitions: 2 });
|
|
905
|
+
const modified = JSON.parse(JSON.stringify(messages));
|
|
906
|
+
await processor(messages, modified);
|
|
907
|
+
const hint = modified[modified.length - 1];
|
|
908
|
+
expect(hint.content).toContain("toolX");
|
|
909
|
+
expect(hint.content).toContain("toolY");
|
|
910
|
+
expect(hint.content).toContain("toolZ");
|
|
911
|
+
});
|
|
912
|
+
|
|
913
|
+
it("should use default options when none provided", async () => {
|
|
914
|
+
const longString = "a".repeat(60); // > 50 default minLength
|
|
915
|
+
const messages: Message[] = [
|
|
916
|
+
{
|
|
917
|
+
role: "assistant",
|
|
918
|
+
content: null,
|
|
919
|
+
tool_calls: [{ id: "c1", type: "function", function: { name: "myTool", arguments: JSON.stringify({ key: longString }) } }],
|
|
920
|
+
},
|
|
921
|
+
{
|
|
922
|
+
role: "assistant",
|
|
923
|
+
content: null,
|
|
924
|
+
tool_calls: [{ id: "c2", type: "function", function: { name: "myTool", arguments: JSON.stringify({ key: longString }) } }],
|
|
925
|
+
},
|
|
926
|
+
];
|
|
927
|
+
const processor = customVariables.createRepetitionHintProcessor(); // default options
|
|
928
|
+
const modified = JSON.parse(JSON.stringify(messages));
|
|
929
|
+
await processor(messages, modified);
|
|
930
|
+
const hint = modified[modified.length - 1];
|
|
931
|
+
expect(hint.role).toBe("user");
|
|
932
|
+
expect(hint.content).toContain("myTool");
|
|
933
|
+
});
|
|
934
|
+
|
|
935
|
+
it("should detect repeated substrings embedded within different larger strings", async () => {
|
|
936
|
+
// Simulate the JWT-in-curl-command pattern:
|
|
937
|
+
// Each command is unique but all contain the same JWT substring
|
|
938
|
+
const jwt = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiJmYWtlLXVzZXItaWQifQ.FAKE_SIGNATURE_DO_NOT_USE";
|
|
939
|
+
const messages: Message[] = [
|
|
940
|
+
{
|
|
941
|
+
role: "assistant",
|
|
942
|
+
content: null,
|
|
943
|
+
tool_calls: [{
|
|
944
|
+
id: "c1", type: "function",
|
|
945
|
+
function: { name: "execCommand", arguments: JSON.stringify({ command: `curl -H 'Authorization: Bearer ${jwt}' https://api.example.com/endpoint-one` }) }
|
|
946
|
+
}],
|
|
947
|
+
},
|
|
948
|
+
{
|
|
949
|
+
role: "assistant",
|
|
950
|
+
content: null,
|
|
951
|
+
tool_calls: [{
|
|
952
|
+
id: "c2", type: "function",
|
|
953
|
+
function: { name: "execCommand", arguments: JSON.stringify({ command: `curl -H 'Authorization: Bearer ${jwt}' https://api.example.com/endpoint-two --data '{"key":"value"}'` }) }
|
|
954
|
+
}],
|
|
955
|
+
},
|
|
956
|
+
];
|
|
957
|
+
|
|
958
|
+
const processor = customVariables.createRepetitionHintProcessor({ minLength: 50, minRepetitions: 2, minSubstringLength: 50 });
|
|
959
|
+
const modified = JSON.parse(JSON.stringify(messages));
|
|
960
|
+
await processor(messages, modified);
|
|
961
|
+
|
|
962
|
+
// Should have detected the JWT appearing in both commands and added a hint
|
|
963
|
+
expect(modified.length).toBe(3);
|
|
964
|
+
const hint = modified[modified.length - 1];
|
|
965
|
+
expect(hint.role).toBe("user");
|
|
966
|
+
expect(hint.content).toContain("execCommand");
|
|
967
|
+
expect(hint.content).toContain("setVariable");
|
|
968
|
+
});
|
|
969
|
+
});
|
|
970
|
+
});
|
|
556
971
|
});
|
package/ts_build/package.json
CHANGED
|
@@ -153,10 +153,15 @@ class CliChatService {
|
|
|
153
153
|
}
|
|
154
154
|
else {
|
|
155
155
|
const availableCommands = this.getCommandsForActiveModes();
|
|
156
|
-
|
|
157
|
-
.
|
|
158
|
-
.
|
|
159
|
-
|
|
156
|
+
const looksLikeFilepath = commandName.includes("/") ||
|
|
157
|
+
commandName.includes(".") ||
|
|
158
|
+
commandName.includes("\\");
|
|
159
|
+
if (!looksLikeFilepath) {
|
|
160
|
+
console.log(`Unknown command "/${commandName}". Available commands: ${availableCommands
|
|
161
|
+
.map((cmd) => `/${cmd.name}`)
|
|
162
|
+
.join(", ")}`);
|
|
163
|
+
return true;
|
|
164
|
+
}
|
|
160
165
|
}
|
|
161
166
|
}
|
|
162
167
|
for (const module of this.modules) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CliChatService.js","sourceRoot":"","sources":["../../../src/chat/CliChatService.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"CliChatService.js","sourceRoot":"","sources":["../../../src/chat/CliChatService.ts"],"names":[],"mappings":"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"}
|
|
@@ -493,10 +493,11 @@ class AgentModule extends BaseChatModule_1.BaseChatModule {
|
|
|
493
493
|
new ToolResponseCache_1.ToolResponseCache(agent.tools).createProcessor(),
|
|
494
494
|
new TokenCompressor_1.TokenCompressor(agent.tools).createProcessor((msg) => Boolean(msg.role === "tool" && msg.tool_call_id)),
|
|
495
495
|
];
|
|
496
|
+
const customVariables = new index_4.CustomVariables(agent.tools);
|
|
496
497
|
agent.messageProcessor.setProcessors("pre_call", [
|
|
497
498
|
new index_4.Base64ImageProcessor(agent.tools).createProcessor(),
|
|
498
499
|
...caching,
|
|
499
|
-
|
|
500
|
+
customVariables.createProcessor(),
|
|
500
501
|
]);
|
|
501
502
|
agent.messageProcessor.setProcessors("post_call", [
|
|
502
503
|
new index_4.XmlToolCallProcessor().createProcessor(),
|
|
@@ -505,6 +506,7 @@ class AgentModule extends BaseChatModule_1.BaseChatModule {
|
|
|
505
506
|
agent.messageProcessor.setProcessors("post_tools", [
|
|
506
507
|
new index_4.Base64ImageProcessor(agent.tools).createProcessor(),
|
|
507
508
|
...caching,
|
|
509
|
+
customVariables.createRepetitionHintProcessor(),
|
|
508
510
|
]);
|
|
509
511
|
const agentLogHandler = (logData) => {
|
|
510
512
|
this.renderer.render({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentModule.js","sourceRoot":"","sources":["../../../../src/chat/modules/AgentModule.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AgentModule.js","sourceRoot":"","sources":["../../../../src/chat/modules/AgentModule.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,0CAA6D;AAC7D,gDAK8B;AAE9B,uCAAyB;AACzB,wDAA0C;AAC1C,2CAA6B;AAE7B,qDAAkD;AAClD,gDAAgD;AAKhD,6CAA2C;AAC3C,sEAAmE;AACnE,0EAAuE;AACvE,kDAKgC;AAEhC,yCAAyE;AAEzE,gEAAmE;AAEnE,MAAa,WAAY,SAAQ,+BAAc;IAC7C,IAAI,GAAG,OAAO,CAAC;IACf,WAAW,GAAG,iCAAiC,CAAC;IAGxC,aAAa,CAA8B;IAG3C,YAAY,CAAe;IAC3B,cAAc,CAAiB;IAE/B,gBAAgB,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;IAEtC,iBAAiB,CAAqB;IAEtC,mBAAmB,CAAiC;IAGpD,gBAAgB,CAA2B;IAC3C,WAAW,CAAqB;IAChC,cAAc,CAAqB;IAEnC,gBAAgB,CAAkB;IAElC,eAAe,CAET;IAEd;QACE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,YAAY,GAAG,IAAI,oBAAY,EAAE,CAAC;QACvC,IAAI,CAAC,cAAc,GAAG,IAAI,sBAAc,EAAE,CAAC;IAC7C,CAAC;IAMM,mBAAmB,CAAC,MAAW;QACpC,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC;IACjC,CAAC;IAED,WAAW;QACT,OAAO;YACL;gBACE,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,wBAAwB;gBACrC,OAAO,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC;aAC5C;YACD;gBACE,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,uBAAuB;gBACpC,OAAO,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC;aAC7C;YACD;gBACE,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,oCAAoC;gBACjD,KAAK,EAAE,CAAC,gBAAgB,CAAC;gBACzB,OAAO,EAAE,KAAK,EAAE,KAAe,EAAiB,EAAE;oBAChD,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;wBACvB,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;wBACjC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;oBAC/B,CAAC;gBACH,CAAC;aACF;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,sCAAsC;gBACnD,KAAK,EAAE,CAAC,gBAAgB,CAAC;gBACzB,OAAO,EAAE,KAAK,EAAE,KAAe,EAAiB,EAAE;oBAChD,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;wBACvB,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;wBACnC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;oBACjC,CAAC;gBACH,CAAC;aACF;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,mCAAmC;gBAChD,KAAK,EAAE,CAAC,gBAAgB,CAAC;gBACzB,OAAO,EAAE,KAAK,EAAE,KAAe,EAAiB,EAAE;oBAChD,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;wBACvB,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;wBAChC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;wBACjC,IAAI,CAAC,eAAe,EAAE,CAAC;oBACzB,CAAC;gBACH,CAAC;aACF;YACD;gBACE,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,0CAA0C;gBACvD,KAAK,EAAE,CAAC,gBAAgB,CAAC;gBACzB,OAAO,EAAE,KAAK,EAAE,KAAe,EAAiB,EAAE;oBAChD,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;oBACnC,IAAI,CAAC,eAAe,EAAE,CAAC;gBACzB,CAAC;aACF;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,oCAAoC;gBACjD,KAAK,EAAE,CAAC,gBAAgB,CAAC;gBACzB,OAAO,EAAE,KAAK,EAAE,KAAe,EAAiB,EAAE;oBAChD,IAAI,CAAC,eAAe,EAAE,CAAC;gBACzB,CAAC;aACF;SACF,CAAC;IACJ,CAAC;IAKO,eAAe;QACrB,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QAG/B,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAE5B,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACtC,CAAC;QAGD,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC7B,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,CAAC;YACxC,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;QACvC,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,CAAC;QAC/C,IAAI,OAAO;YAAE,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC;IACrD,CAAC;IAED,QAAQ;QACN,OAAO;YACL;gBACE,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,wBAAwB;gBACrC,MAAM,EAAE,IAAI;gBACZ,UAAU,EAAE,GAAG,EAAE;oBACf,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,CAAC;oBAC3C,OAAO,GAAG,EAAE,YAAY;wBACtB,CAAC,CAAC,iBAAiB,GAAG,CAAC,YAAY,IAAI;wBACvC,CAAC,CAAC,iBAAiB,CAAC;gBACxB,CAAC;aACF;YACD;gBACE,IAAI,EAAE,gBAAgB;gBACtB,WAAW,EAAE,6BAA6B;gBAC1C,MAAM,EAAE,KAAK;gBACb,UAAU,EAAE,GAAG,EAAE,CACf,IAAI,CAAC,aAAa;oBAChB,CAAC,CAAC,gCAAgC,IAAI,CAAC,aAAa,CAAC,IAAI,IAAI;oBAC7D,CAAC,CAAC,sCAAsC;aAC7C;SACF,CAAC;IACJ,CAAC;IAKD,IAAY,QAAQ;QAClB,OAAO,CACJ,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,EAAE,QAA0B;YAC3D,IAAI,0BAAe,EAAE,CACtB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAAoB;QACnC,MAAM,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAGhC,MAAM,MAAM,GAAG,IAAA,gBAAQ,GAAE,CAAC,MAAM,CAAC;QACjC,MAAM,CAAC,WAAW,CAChB,EAAE,GAAG,EAAE,uBAAuB,EAAE,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,EACpE,CAAC,QAAa,EAAE,EAAE;YAChB,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;YAC/C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACnB,IAAI,EAAE,KAAK;gBACX,MAAM,EAAE,IAAI,CAAC,iBAAiB;gBAC9B,SAAS,EAAE,QAAQ,CAAC,MAAM;gBAC1B,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,MAAM;gBAC/B,SAAS,EAAE,QAAQ,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aAC1D,CAAC,CAAC;QACL,CAAC,CACF,CAAC;QAEF,MAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,IAAc;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,CAAC;QAG/C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,IAAI,OAAO,EAAE,SAAS,EAAE,CAAC;gBAEvB,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,SAAS,GAAG,KAAK,CAAC;oBAC1B,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;oBAClC,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;oBACjC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;gBACxC,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;gBAC3D,OAAO;YACT,CAAC;iBAAM,CAAC;gBAEN,OAAO,CAAC,GAAG,CACT,8GAA8G,CAC/G,CAAC;gBACF,OAAO;YACT,CAAC;QACH,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAE1B,IAAI,CAAC;YACH,IAAI,0BAAiB,CAAC,SAAsB,CAAC,EAAE,CAAC;gBAE9C,IAAI,OAAO,EAAE,CAAC;oBAEZ,MAAM,YAAY,GAAG,IAAA,gBAAQ,GAAE,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;oBACzD,MAAM,SAAS,GAAG,IAAA,oBAAW,EAC3B,SAAsB,EACtB,YAAY,CACA,CAAC;oBACf,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;oBAClC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;oBACzB,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;oBAIjC,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,aAAa,CAAC,SAAS,CACxD,SAAS,EACT,SAAS,CAAC,QAAQ,EAAE,CACrB,CAAC;oBAEF,OAAO,CAAC,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC;oBACxC,OAAO,CAAC,eAAe,GAAG,UAAU,CAAC,QAAQ,CAAC;oBAE9C,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBACpC,CAAC;gBAED,OAAO,CAAC,GAAG,CACT,uCAAuC,SAAS,kCAAkC,CACnF,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CACT,UAAU,SAAS,oDAAoD,CACxE,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,yBAAyB,SAAS,GAAG,EAAE,KAAK,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAKM,eAAe;QACpB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAKM,iBAAiB;QACtB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAKM,WAAW;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAKM,sBAAsB;QAC3B,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAKM,sBAAsB,CAAC,CAAiC;QAC7D,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;IAC/B,CAAC;IAKM,oBAAoB;QACzB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAKM,oBAAoB,CAAC,EAAsB;QAChD,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;IAC9B,CAAC;IAWM,kBAAkB,CACvB,MAAc,EACd,WAAyB,EACzB,UAKC,EACD,SAAiB;QAEjB,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;YACxB,WAAW,CAAC,WAAW,CACrB,EAAE,GAAG,EAAE,6BAA6B,EAAE,KAAK,EAAE,UAAU,CAAC,QAAQ,EAAE,EAClE,CAAC,IAAS,EAAE,EAAE,CACZ,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACnB,IAAI,EAAE,UAAU;gBAChB,MAAM;gBACN,SAAS;gBACT,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACxB,CAAC,CACL,CAAC;QACJ,CAAC;QACD,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;YACxB,WAAW,CAAC,WAAW,CACrB,EAAE,GAAG,EAAE,6BAA6B,EAAE,KAAK,EAAE,UAAU,CAAC,QAAQ,EAAE,EAClE,CAAC,IAAS,EAAE,EAAE,CACZ,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACnB,IAAI,EAAE,YAAY;gBAClB,MAAM;gBACN,SAAS;gBACT,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,MAAM,EAAE,IAAI,CAAC,YAAY;aAC1B,CAAC,CACL,CAAC;QACJ,CAAC;QACD,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;YACxB,WAAW,CAAC,WAAW,CACrB,EAAE,GAAG,EAAE,6BAA6B,EAAE,KAAK,EAAE,UAAU,CAAC,QAAQ,EAAE,EAClE,CAAC,IAAS,EAAE,EAAE,CACZ,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACnB,IAAI,EAAE,cAAc;gBACpB,MAAM;gBACN,SAAS;gBACT,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,IAAI,EAAE,WAAW;aAClB,CAAC,CACL,CAAC;QACJ,CAAC;QAGD,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC;QAChC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAGtC,IAAI,CAAC,gBAAgB,GAAG,WAAW,CAAC;QACpC,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QAChC,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC;QAClC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;IAC5B,CAAC;IAMM,oBAAoB;QACzB,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,IAAI,CAAC,gBAAgB,CAAC,8BAA8B,CAClD,qBAAqB,CACtB,CAAC;YACF,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;QACpC,CAAC;QACD,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;QACnC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAQM,oBAAoB;QACzB,IACE,CAAC,IAAI,CAAC,gBAAgB;YACtB,CAAC,IAAI,CAAC,WAAW;YACjB,CAAC,IAAI,CAAC,eAAe;YACrB,CAAC,IAAI,CAAC,cAAc;YAEpB,OAAO;QACT,IAAI,CAAC,kBAAkB,CACrB,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,cAAc,CACpB,CAAC;IACJ,CAAC;IAKD,KAAK,CAAC,mBAAmB,CAAC,IAAc;QACtC,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,0BAAiB,CAAC,CAAC;YAElD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1B,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;gBACnC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;oBAC1B,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;gBAC7B,CAAC,CAAC,CAAC;gBACH,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;gBAElC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,QAAQ,CACpD,4BAA4B,EAC5B,UAAU,CACX,CAAC;gBAEF,IACE,aAAa;oBACb,aAAa,CAAC,IAAI,EAAE;oBACpB,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,EACzC,CAAC;oBACD,MAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;gBACxD,CAAC;qBAAM,IAAI,aAAa,IAAI,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC;oBACjD,OAAO,CAAC,GAAG,CAAC,UAAU,aAAa,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;gBAC5D,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;YAC9C,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAKM,mBAAmB;QACxB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAKM,KAAK,CAAC,aAAa,CACxB,SAAiB,EACjB,YAAqB;QAErB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YAC3D,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CAAC,WAAW,SAAS,aAAa,CAAC,CAAC;gBACjD,OAAO;YACT,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,0BAA0B,SAAS,EAAE,CAAC,CAAC;YACnD,OAAO,CAAC,GAAG,CAAC,UAAU,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;YAC3C,OAAO,CAAC,GAAG,CAAC,kBAAkB,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;YACtD,OAAO,CAAC,GAAG,CAAC,WAAW,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YAGzC,MAAM,YAAY,GAAG;gBACnB,6CAA6C;gBAC7C,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,qBAAqB,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE;gBACvE,4EAA4E;gBAC5E,YAAY,CAAC,CAAC,CAAC,wBAAwB,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE;aAC3D;iBACE,MAAM,CAAC,OAAO,CAAC;iBACf,IAAI,CAAC,IAAI,CAAC,CAAC;YAGd,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;YAGtC,MAAM,iBAAiB,GAAgB,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBACrF,CAAC,CAAC,CAAC,OAA+B,CAAC;gBACnC,CAAC,CAAC,OAAsB,CAAC;YAC3B,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACvG,MAAM,cAAc,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC;YAGvC,MAAM,aAAa,GAAG,CAAC,GAAG,UAAU,CAAC;iBAClC,OAAO,EAAE;iBACT,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC;YAExE,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE,CAAC;gBACzB,cAAc,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;YAC/D,CAAC;iBAAM,CAAC;gBACN,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,GAAG,aAAa,CAAC;gBAC1D,cAAc,CAAC,WAAW,CAAC,GAAG;oBAC5B,GAAG,cAAc,CAAC,WAAW,CAAC;oBAC9B,OAAO,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC,OAAO,GAAG,mCAAmC,YAAY,aAAa;iBAC5G,CAAC;YACJ,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;YACtC,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,CAAC;YAC/C,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,YAAY,CAAC;YAC5D,MAAM,iBAAiB,GAAG,OAAO,EAAE,SAAS,CAAC;YAE7C,IAAI,CAAC,SAAS,IAAI,CAAC,0BAAiB,CAAC,SAAsB,CAAC,EAAE,CAAC;gBAC7D,OAAO,CAAC,KAAK,CAAC,SAAS,SAAS,aAAa,CAAC,CAAC;gBAC/C,OAAO;YACT,CAAC;YAGD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC;gBAC9C,SAAS;gBACT,KAAK,EAAE,YAAY;gBACnB,SAAS,EAAE,OAAO,CAAC,gBAAgB;gBACnC,qBAAqB,EAAE,OAAO,CAAC,aAAa;gBAC5C,WAAW,EAAE,EAAE;gBACf,GAAG,EAAE,KAAK;aACX,CAAC,CAAC;YAIH,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE;gBACjD,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,CAAC;gBAC3C,IAAI,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBAC9B,GAAG,CAAC,SAAS,GAAG,KAAK,CAAC;oBACtB,GAAG,CAAC,aAAa,GAAG,SAAS,CAAC;oBAC9B,GAAG,CAAC,YAAY,GAAG,SAAS,CAAC;oBAC7B,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;gBACzC,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;QAChF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CACX,4BAA4B,SAAS,GAAG,EACvC,KAAe,CAAC,OAAO,CACzB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAa,EAAE,OAAoB;QAEnD,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAE/C,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACvB,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC;oBACvC,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,KAAK;iBACf,CAAC,CAAC;gBACH,OAAO,IAAI,CAAC;YACd,CAAC;YAED,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;YAEhD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,CACtC,OAAO,CAAC,aAAa,EACrB,KAAK,EACL,OAAO,CAAC,WAAW,CACpB,CAAC;YAEF,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC;gBACvB,KAAK;gBACL,MAAM,EAAE,EAAE;gBACV,MAAM;aACP,CAAC,CAAC;YAEH,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAKM,KAAK,CAAC,UAAU,CAAC,OAavB;QACC,IAAI,CAAC,0BAAiB,CAAC,OAAO,CAAC,SAAsB,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CACb,UACE,OAAO,CAAC,SACV,kCAAkC,MAAM,CAAC,IAAI,CAAC,0BAAiB,CAAC,CAAC,IAAI,CACnE,IAAI,CACL,EAAE,CACJ,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,EAAE,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;QACvD,MAAM,YAAY,GAAG,IAAA,gBAAQ,GAAE,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;QACzD,MAAM,KAAK,GAAG,IAAA,oBAAW,EACvB,OAAO,CAAC,SAAsB,EAC9B,YAAY,CACA,CAAC;QAEf,IAAI,IAAI,GAAG,KAAK,CAAC;QACjB,IAAI,MAAM,GAAG,MAAM,CAAC;QACpB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAC3E,IAAI,aAAiC,CAAC;QAEtC,IAAI,CAAC;YAEH,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,CAAC;YAC/C,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC;YAGvC,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAC5D,KAAK,EACL,OAAO,EACP,WAAW,CACZ,CAAC;YAGF,IAAI,QAAQ,GAAa;gBACvB,MAAM;gBACN,gBAAgB,EAAE,OAAO,CAAC,SAAS;gBACnC,aAAa,EAAE,OAAO,CAAC,qBAAqB;gBAC5C,SAAS;gBACT,KAAK;gBACL,YAAY,EAAE,KAAK;gBACnB,eAAe;gBACf,MAAM,EAAE,SAAS;gBACjB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;gBACrB,SAAS,EAAE,CAAC;aACb,CAAC;YAGF,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAG7C,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;YAIvC,MAAM,MAAM,GAAG,IAAI,qBAAa,EAAE,CAAC;YAGnC,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC;gBACzC,MAAM;gBACN,MAAM,EAAE,KAAK;gBACb,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;gBACpD,SAAS;aACV,CAAC,CAAC;YAEH,MAAM,SAAS,GAAG,MAAM,CAAC,mBAAmB,EAAE,CAAC;YAC/C,aAAa,GAAG,SAAS,CAAC;YAC1B,QAAQ,CAAC,aAAa,GAAG,SAAS,IAAI,UAAU,CAAC;YACjD,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAE7C,MAAM,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;YAG/C,MAAM,mBAAmB,GAAG,KAAK,EAAE,WAAgB,EAAE,EAAE;gBACrD,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;gBAC/C,QAAQ,CAAC,SAAS,GAAG,KAAK,CAAC,eAAe,EAAE,CAAC;YAC/C,CAAC,CAAC;YACF,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,EAAE,mBAAmB,CAAC,CAAC;YAEzE,OAAO,CAAC,GAAG,CACT,cAAM,CAAC,KAAK,CAAC,cAAc,KAAK,CAAC,IAAI,kBAAkB,MAAM,OAAO,CAAC,CACtE,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,cAAM,CAAC,KAAK,CAAC,aAAa,KAAK,EAAE,CAAC,CAAC,CAAC;YAGhD,MAAM,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAE5B,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;gBAClB,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC7C,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC9B,KAAK,CAAC,mBAAmB,CAAC;oBACxB,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAe,EAAE;iBAC5D,CAAC,CAAC;YACL,CAAC;YAOD,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAC1B,UAAU,EACV,KAAK,EAAE,YAAmB,EAAE,YAAiB,EAAE,EAAE;gBAC/C,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;gBAGjC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;gBACrC,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;gBAChE,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;gBAC9B,OAAO,CAAC,GAAG,CAAC,cAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC;gBAC1C,OAAO,MAAM,WAAW,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;YAClD,CAAC,EACD,EAAE,CACH,CAAC;YAEF,MAAM,OAAO,GAAG;gBACd,IAAI,qCAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,eAAe,EAAE;gBACpD,IAAI,iCAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,CAAC,GAAG,EAAE,EAAE,CACvD,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,CAAC,YAAY,CAAC,CACjD;aACF,CAAC;YAEF,MAAM,eAAe,GAAG,IAAI,uBAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAEzD,KAAK,CAAC,gBAAgB,CAAC,aAAa,CAAC,UAAU,EAAE;gBAC/C,IAAI,4BAAoB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,eAAe,EAAE;gBACvD,GAAG,OAAO;gBACV,eAAe,CAAC,eAAe,EAAE;aAClC,CAAC,CAAC;YAEH,KAAK,CAAC,gBAAgB,CAAC,aAAa,CAAC,WAAW,EAAE;gBAChD,IAAI,4BAAoB,EAAE,CAAC,eAAe,EAAE;gBAC5C,IAAI,4BAAoB,EAAE,CAAC,eAAe,EAAE;aAC7C,CAAC,CAAC;YAEH,KAAK,CAAC,gBAAgB,CAAC,aAAa,CAAC,YAAY,EAAE;gBACjD,IAAI,4BAAoB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,eAAe,EAAE;gBACvD,GAAG,OAAO;gBACV,eAAe,CAAC,6BAA6B,EAAE;aAChD,CAAC,CAAC;YAIH,MAAM,eAAe,GAAG,CAAC,OAAY,EAAE,EAAE;gBACvC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;oBACnB,IAAI,EAAE,KAAK;oBACX,MAAM;oBACN,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,KAAK,EAAE,OAAO,CAAC,KAAK;oBACpB,SAAS,EAAE,OAAO,CAAC,SAAS;iBAC7B,CAAC,CAAC;YACL,CAAC,CAAC;YACF,MAAM,kBAAkB,GAAG,CAAC,UAAe,EAAE,EAAE;gBAC7C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;oBACnB,IAAI,EAAE,aAAa;oBACnB,MAAM;oBACN,SAAS,EAAE,UAAU,CAAC,SAAS;oBAC/B,aAAa,EAAE,UAAU,CAAC,aAAa;oBACvC,OAAO,EAAE,UAAU,CAAC,OAAO;oBAC3B,SAAS,EAAE,UAAU,CAAC,SAAS;iBAChC,CAAC,CAAC;YACL,CAAC,CAAC;YAEF,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;YACjE,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;YAEvE,MAAM,aAAa,GAAG,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,EAAE;gBACpD,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;oBAC9D,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;oBAC/C,IAAI,GAAG,IAAI,CAAC;oBACZ,MAAM,GAAG,OAAO,IAAI,yBAAyB,CAAC;oBAE9C,KAAK,CAAC,WAAW,CAAC,cAAc,CAC9B,KAAK,CAAC,UAAU,CAAC,YAAY,EAC7B,mBAAmB,CACpB,CAAC;oBAEF,KAAK,CAAC,WAAW,CAAC,cAAc,CAC9B,KAAK,CAAC,UAAU,CAAC,QAAQ,EACzB,eAAe,CAChB,CAAC;oBACF,KAAK,CAAC,WAAW,CAAC,cAAc,CAC9B,KAAK,CAAC,UAAU,CAAC,WAAW,EAC5B,kBAAkB,CACnB,CAAC;oBAEF,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAGzC,MAAM,MAAM,CAAC,mBAAmB,EAAE,CAAC;oBAEnC,IAAI,QAAQ,EAAE,CAAC;wBACb,QAAQ,CAAC,MAAM,GAAG,WAAW,CAAC;wBAE9B,QAAQ,CAAC,SAAS,GAAG,KAAK,CAAC,eAAe,EAAE,CAAC;wBAE7C,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;wBAC/C,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;oBAChC,CAAC;oBAED,OAAO,CAAC,GAAG,CAAC,cAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;oBAClC,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;oBAC9C,OAAO,CAAC,OAAO,CAAC,CAAC;gBACnB,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAGH,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;gBACzB,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;YACxD,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,sBAAsB,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;YACvD,OAAO,CAAC,GAAG,CAAC,YAAY,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;YAEzC,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;gBACzB,OAAO,CAAC,GAAG,CAAC,mBAAmB,OAAO,CAAC,YAAY,UAAU,CAAC,CAAC;YACjE,CAAC;YACD,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;gBAC1B,OAAO,CAAC,GAAG,CAAC,oBAAoB,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;YAC3D,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAE5B,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;gBAChB,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC9B,CAAC;YAED,OAAO;gBACL,KAAK;gBACL,MAAM;gBACN,eAAe;gBACf,YAAY,EAAE,KAAK;gBACnB,aAAa;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;YAC5C,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAAC,MAAc,EAAE,SAAkB;QAChE,MAAM,YAAY,GAAW,MAAM,CAAC;QACpC,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CACjC,UAAU,EACV,WAAW,EACX,QAAQ,EACR,YAAY,EACZ,eAAe,CAChB,CAAC;QAEF,IAAI,OAAO,GAAgB,EAAE,CAAC;QAG9B,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;gBAClE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACjC,OAAO,GAAG,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC;gBACjC,OAAO,CAAC,GAAG,CAAC,oCAAoC,iBAAiB,EAAE,CAAC,CAAC;YACvE,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAClE,CAAC;QACH,CAAC;aAAM,CAAC;YAEN,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAI,mCAAmB,EAAE,CAAC;gBACzC,OAAO,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;gBACpD,OAAO,CAAC,GAAG,CAAC,2CAA2C,YAAY,EAAE,CAAC,CAAC;YACzE,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YACtE,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAMM,KAAK,CAAC,kBAAkB,CAAC,OAM/B;QACC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QAGjE,IAAI,eAAe,GAAG,EAAE,CAAC;QACzB,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC/B,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,CACnC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,OAAO,CAC3C,CAAC;gBACF,IAAI,YAAY,EAAE,CAAC;oBACjB,eAAe;wBACb,OAAO,YAAY,CAAC,OAAO,KAAK,QAAQ;4BACtC,CAAC,CAAC,YAAY,CAAC,OAAO;4BACtB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;gBAC7C,CAAC;YACH,CAAC;QACH,CAAC;QAGD,MAAM,YAAY,GAAG;YACnB,6CAA6C;YAC7C,eAAe,CAAC,CAAC,CAAC,qBAAqB,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE;YAC7D,0CAA0C;YAC1C,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;SACnB;aACE,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,IAAI,CAAC,CAAC;QAGd,MAAM,UAAU,GACd,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACnE,MAAM,cAAc,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC;QAGvC,MAAM,WAAW,GAAG,UAAU;aAC3B,OAAO,EAAE;aACT,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC;QAExE,IAAI,WAAW,KAAK,CAAC,CAAC,EAAE,CAAC;YACvB,cAAc,CAAC,IAAI,CAAC;gBAClB,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,YAAY;aACtB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,GAAG,WAAW,CAAC;YACxD,MAAM,eAAe,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;YACpD,eAAe,CAAC,OAAO,IAAI,mCAAmC,YAAY,aAAa,CAAC;QAC1F,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC;YACnC,SAAS;YACT,KAAK,EAAE,YAAY;YACnB,SAAS;YACT,qBAAqB,EAAE,MAAM;YAC7B,GAAG,EAAE,KAAK;SACX,CAAC,CAAC;QAGH,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;QAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC;IACjD,CAAC;IAKD,cAAc;QACZ,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC,CAAC,GAAG,CACnD,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;YACvB,MAAM;YACN,KAAK,EAAE,QAAQ;SAChB,CAAC,CACH,CAAC;IACJ,CAAC;IAKD,YAAY,CAAC,MAAc;QACzB,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAClC,OAAO,CAAC,GAAG,CAAC,cAAM,CAAC,KAAK,CAAC,6BAA6B,MAAM,IAAI,CAAC,CAAC,CAAC;YACnE,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,CAAC,GAAG,CACT,cAAM,CAAC,KAAK,CAAC,UAAU,MAAM,oCAAoC,CAAC,CACnE,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC;IAKO,WAAW,CACjB,MAAc,EACd,QAAkB,EAClB,OAAc;QAEd,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC;IAKO,aAAa,CAAC,MAAc,EAAE,OAAc;QAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC/C,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;IAKO,KAAK,CAAC,UAAU,CACtB,aAAwB,EACxB,YAAoB,EACpB,cAAiC,EAAE;QAEnC,IAAI,CAAC;YACH,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC;gBAC/D,SAAS,EAAE,aAAa,CAAC,IAAI;gBAC7B,KAAK,EAAE,YAAY;gBACnB,WAAW;gBACX,KAAK,EAAE,aAAa,CAAC,QAAQ,EAAE;gBAC/B,QAAQ,EAAE,aAAa,CAAC,WAAW,EAAS;gBAC5C,GAAG,EAAE,KAAK;aACX,CAAC,CAAC;YAGH,IAAI,IAAI,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,EAAE,CAAC;gBAC/C,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC/C,CAAC;YAED,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC;YAEjE,OAAO,EAAE,MAAM,EAAE,CAAC;QACpB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,qBAAqB,CACzB,MAAc,EACd,KAAsB,EACtB,YAAqB,EACrB,eAAuB;QAEvB,IAAI,CAAC;YACH,IAAI,gBAAoC,CAAC;YAGzC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAC7C,CAAC;YAGD,IAAI,CAAC,kBAAkB,CACrB,MAAM,EACN,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,IAAI,CACX,CAAC;YACF,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,CAAC;YAC/C,IAAI,OAAO;gBAAE,OAAO,CAAC,iBAAiB,GAAG,MAAM,CAAC;YAGhD,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;YAG3B,MAAM,WAAW,GAAG,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,EAAE;gBAClD,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE;oBAExD,gBAAgB,GAAG,OAAO,IAAI,yBAAyB,CAAC;oBACxD,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,KAAK,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;oBAG/D,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBACpD,IAAI,aAAa,EAAE,CAAC;wBAClB,IAAI,aAAa,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;4BACvC,aAAa,CAAC,MAAM,GAAG,WAAW,CAAC;4BACnC,aAAa,CAAC,SAAS,GAAG,KAAK,CAAC,eAAe,EAAE,CAAC;4BAClD,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;wBACrC,CAAC;oBACH,CAAC;oBAED,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;wBACxB,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;wBACnE,IAAI,KAAK;4BAAE,KAAK,CAAC,MAAM,GAAG,gBAAgB,CAAC;oBAC7C,CAAC;oBAED,OAAO,CAAC,MAAM,CAAC,CAAC;oBAEhB,IAAI,CAAC,eAAe,EAAE,CAAC;gBACzB,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAGH,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAC9C,KAAmB,CAAC,IAAI,CACvB,QAAQ,EAAE,eAAe,IAAI,QAAQ,EAAE,YAAY,IAAI,YAAY,EACnE,eAAe,CAChB,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;CACF;AAtkCD,kCAskCC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ChatModule, ChatCommand, ChatMode, ChatContext } from "../types";
|
|
2
|
+
import { CliChatService } from "../CliChatService";
|
|
3
|
+
export declare function captureClipboardImage(): Promise<string | null>;
|
|
4
|
+
export declare class ClipboardImageModule implements ChatModule {
|
|
5
|
+
name: string;
|
|
6
|
+
description: string;
|
|
7
|
+
commands: ChatCommand[];
|
|
8
|
+
modes: ChatMode[];
|
|
9
|
+
getCommands(): ChatCommand[];
|
|
10
|
+
getModes(): ChatMode[];
|
|
11
|
+
initialize(chatService: CliChatService): Promise<void>;
|
|
12
|
+
private handlePasteCommand;
|
|
13
|
+
handleInput(input: string, context: ChatContext): Promise<boolean>;
|
|
14
|
+
cleanup(): Promise<void>;
|
|
15
|
+
}
|