@tyvm/knowhow 0.0.15 → 0.0.17

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 (129) hide show
  1. package/package.json +2 -1
  2. package/src/agents/base/base.ts +25 -6
  3. package/src/agents/index.ts +2 -2
  4. package/src/agents/tools/agentCall.ts +0 -1
  5. package/src/agents/tools/execCommand.ts +95 -4
  6. package/src/agents/tools/list.ts +23 -19
  7. package/src/agents/tools/writeFile.ts +1 -1
  8. package/src/chat.ts +11 -0
  9. package/src/config.ts +3 -1
  10. package/src/processors/Base64ImageDetector.ts +190 -0
  11. package/src/processors/TokenCompressor.ts +357 -0
  12. package/src/processors/ToolResponseCache.ts +235 -0
  13. package/src/services/Mcp.ts +4 -1
  14. package/src/services/MessageProcessor.ts +107 -0
  15. package/src/services/Tools.ts +100 -1
  16. package/src/services/types.ts +57 -0
  17. package/ts_build/src/agents/base/base.d.ts +3 -1
  18. package/ts_build/src/agents/base/base.js +20 -5
  19. package/ts_build/src/agents/base/base.js.map +1 -1
  20. package/ts_build/src/agents/index.d.ts +2 -2
  21. package/ts_build/src/agents/index.js +5 -3
  22. package/ts_build/src/agents/index.js.map +1 -1
  23. package/ts_build/src/agents/tools/agentCall.js.map +1 -1
  24. package/ts_build/src/agents/tools/execCommand.d.ts +6 -1
  25. package/ts_build/src/agents/tools/execCommand.js +70 -4
  26. package/ts_build/src/agents/tools/execCommand.js.map +1 -1
  27. package/ts_build/src/agents/tools/expandTokens.d.ts +3 -0
  28. package/ts_build/src/agents/tools/expandTokens.js +33 -0
  29. package/ts_build/src/agents/tools/expandTokens.js.map +1 -0
  30. package/ts_build/src/agents/tools/getBigString.d.ts +3 -0
  31. package/ts_build/src/agents/tools/getBigString.js +33 -0
  32. package/ts_build/src/agents/tools/getBigString.js.map +1 -0
  33. package/ts_build/src/agents/tools/list.js +19 -17
  34. package/ts_build/src/agents/tools/list.js.map +1 -1
  35. package/ts_build/src/agents/tools/writeFile.js +1 -1
  36. package/ts_build/src/agents/tools/writeFile.js.map +1 -1
  37. package/ts_build/src/chat.js +6 -0
  38. package/ts_build/src/chat.js.map +1 -1
  39. package/ts_build/src/config.js +1 -1
  40. package/ts_build/src/config.js.map +1 -1
  41. package/ts_build/src/processors/Base64ImageDetector.d.ts +14 -0
  42. package/ts_build/src/processors/Base64ImageDetector.js +153 -0
  43. package/ts_build/src/processors/Base64ImageDetector.js.map +1 -0
  44. package/ts_build/src/processors/TokenCompressor.d.ts +28 -0
  45. package/ts_build/src/processors/TokenCompressor.js +226 -0
  46. package/ts_build/src/processors/TokenCompressor.js.map +1 -0
  47. package/ts_build/src/processors/ToolResponseCache.d.ts +22 -0
  48. package/ts_build/src/processors/ToolResponseCache.js +164 -0
  49. package/ts_build/src/processors/ToolResponseCache.js.map +1 -0
  50. package/ts_build/src/processors/ToolResponseManipulator.d.ts +22 -0
  51. package/ts_build/src/processors/ToolResponseManipulator.js +162 -0
  52. package/ts_build/src/processors/ToolResponseManipulator.js.map +1 -0
  53. package/ts_build/src/services/Mcp.js +3 -1
  54. package/ts_build/src/services/Mcp.js.map +1 -1
  55. package/ts_build/src/services/MessageProcessor.d.ts +17 -0
  56. package/ts_build/src/services/MessageProcessor.js +63 -0
  57. package/ts_build/src/services/MessageProcessor.js.map +1 -0
  58. package/ts_build/src/services/Tools.d.ts +12 -0
  59. package/ts_build/src/services/Tools.js +71 -0
  60. package/ts_build/src/services/Tools.js.map +1 -1
  61. package/ts_build/src/services/types.d.ts +32 -0
  62. package/ts_build/src/services/types.js +38 -0
  63. package/ts_build/src/services/types.js.map +1 -0
  64. package/ts_build/src/agents/configurable/OpenAIAgent.d.ts +0 -0
  65. package/ts_build/src/agents/configurable/OpenAIAgent.js +0 -1
  66. package/ts_build/src/agents/configurable/OpenAIAgent.js.map +0 -1
  67. package/ts_build/src/agents/tools/client.d.ts +0 -5
  68. package/ts_build/src/agents/tools/client.js +0 -21
  69. package/ts_build/src/agents/tools/client.js.map +0 -1
  70. package/ts_build/src/agents/tools/googleSearchTypes.d.ts +0 -74
  71. package/ts_build/src/agents/tools/googleSearchTypes.js +0 -3
  72. package/ts_build/src/agents/tools/googleSearchTypes.js.map +0 -1
  73. package/ts_build/src/commands/chat-ui.d.ts +0 -1
  74. package/ts_build/src/commands/chat-ui.js +0 -14
  75. package/ts_build/src/commands/chat-ui.js.map +0 -1
  76. package/ts_build/src/demo/chat-ui-demo.d.ts +0 -3
  77. package/ts_build/src/demo/chat-ui-demo.js +0 -20
  78. package/ts_build/src/demo/chat-ui-demo.js.map +0 -1
  79. package/ts_build/src/plugins/EmbeddingPluginV2.d.ts +0 -7
  80. package/ts_build/src/plugins/EmbeddingPluginV2.js +0 -41
  81. package/ts_build/src/plugins/EmbeddingPluginV2.js.map +0 -1
  82. package/ts_build/src/plugins/GitHubPluginV2.d.ts +0 -10
  83. package/ts_build/src/plugins/GitHubPluginV2.js +0 -57
  84. package/ts_build/src/plugins/GitHubPluginV2.js.map +0 -1
  85. package/ts_build/src/plugins/downloader/index.d.ts +0 -3
  86. package/ts_build/src/plugins/downloader/index.js +0 -41
  87. package/ts_build/src/plugins/downloader/index.js.map +0 -1
  88. package/ts_build/src/services/MessagePreprocessor.d.ts +0 -26
  89. package/ts_build/src/services/MessagePreprocessor.js +0 -190
  90. package/ts_build/src/services/MessagePreprocessor.js.map +0 -1
  91. package/ts_build/src/services/__tests__/MessagePreprocessor.test.d.ts +0 -1
  92. package/ts_build/src/services/__tests__/MessagePreprocessor.test.js +0 -117
  93. package/ts_build/src/services/__tests__/MessagePreprocessor.test.js.map +0 -1
  94. package/ts_build/src/terminal.d.ts +0 -1
  95. package/ts_build/src/terminal.js +0 -35
  96. package/ts_build/src/terminal.js.map +0 -1
  97. package/ts_build/src/ui/InkChatUI.d.ts +0 -1
  98. package/ts_build/src/ui/InkChatUI.js +0 -792
  99. package/ts_build/src/ui/InkChatUI.js.map +0 -1
  100. package/ts_build/src/ui/components/ChatInterface.d.ts +0 -15
  101. package/ts_build/src/ui/components/ChatInterface.js +0 -39
  102. package/ts_build/src/ui/components/ChatInterface.js.map +0 -1
  103. package/ts_build/src/ui/components/ChatMessage.d.ts +0 -8
  104. package/ts_build/src/ui/components/ChatMessage.js +0 -7
  105. package/ts_build/src/ui/components/ChatMessage.js.map +0 -1
  106. package/ts_build/src/ui/components/CommandPalette.d.ts +0 -8
  107. package/ts_build/src/ui/components/CommandPalette.js +0 -23
  108. package/ts_build/src/ui/components/CommandPalette.js.map +0 -1
  109. package/ts_build/src/ui/components/InputBar.d.ts +0 -8
  110. package/ts_build/src/ui/components/InputBar.js +0 -8
  111. package/ts_build/src/ui/components/InputBar.js.map +0 -1
  112. package/ts_build/src/ui/components/Sidebar.d.ts +0 -9
  113. package/ts_build/src/ui/components/Sidebar.js +0 -7
  114. package/ts_build/src/ui/components/Sidebar.js.map +0 -1
  115. package/ts_build/src/ui/components/StatusBar.d.ts +0 -10
  116. package/ts_build/src/ui/components/StatusBar.js +0 -8
  117. package/ts_build/src/ui/components/StatusBar.js.map +0 -1
  118. package/ts_build/src/ui/demo.d.ts +0 -3
  119. package/ts_build/src/ui/demo.js +0 -26
  120. package/ts_build/src/ui/demo.js.map +0 -1
  121. package/ts_build/src/ui/index.d.ts +0 -13
  122. package/ts_build/src/ui/index.js +0 -16
  123. package/ts_build/src/ui/index.js.map +0 -1
  124. package/ts_build/tests/integration/OpenAI-MessagePreprocessor.test.d.ts +0 -1
  125. package/ts_build/tests/integration/OpenAI-MessagePreprocessor.test.js +0 -148
  126. package/ts_build/tests/integration/OpenAI-MessagePreprocessor.test.js.map +0 -1
  127. package/ts_build/tests/services/MessagePreprocessor.test.d.ts +0 -1
  128. package/ts_build/tests/services/MessagePreprocessor.test.js +0 -117
  129. package/ts_build/tests/services/MessagePreprocessor.test.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Mcp.js","sourceRoot":"","sources":["../../../src/services/Mcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Mcp.js","sourceRoot":"","sources":["../../../src/services/Mcp.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { Message } from "../clients/types";
2
+ export type ProcessorLifecycle = "initial_call" | "per_call" | "post_call";
3
+ export type MessageProcessorFunction = (originalMessages: Message[], modifiedMessages: Message[]) => Promise<void> | void;
4
+ export interface ProcessorRegistration {
5
+ processor: MessageProcessorFunction;
6
+ priority: number;
7
+ }
8
+ export declare class MessageProcessor {
9
+ private processors;
10
+ constructor();
11
+ setProcessors(lifecycle: ProcessorLifecycle, processors: MessageProcessorFunction[]): void;
12
+ registerProcessor(lifecycle: ProcessorLifecycle, processor: MessageProcessorFunction, priority?: number): void;
13
+ removeProcessor(lifecycle: ProcessorLifecycle, processor: MessageProcessorFunction): void;
14
+ processMessages(messages: Message[], lifecycle: ProcessorLifecycle): Promise<Message[]>;
15
+ getProcessorsForLifecycle(lifecycle: ProcessorLifecycle): MessageProcessorFunction[];
16
+ clearProcessors(lifecycle?: ProcessorLifecycle): void;
17
+ }
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MessageProcessor = void 0;
4
+ class MessageProcessor {
5
+ processors = new Map();
6
+ constructor() {
7
+ this.processors.set("initial_call", []);
8
+ this.processors.set("per_call", []);
9
+ this.processors.set("post_call", []);
10
+ }
11
+ setProcessors(lifecycle, processors) {
12
+ const registrations = processors.map((proc) => ({
13
+ processor: proc,
14
+ priority: 0,
15
+ }));
16
+ registrations.sort((a, b) => b.priority - a.priority);
17
+ this.processors.set(lifecycle, registrations);
18
+ }
19
+ registerProcessor(lifecycle, processor, priority = 0) {
20
+ const registrations = this.processors.get(lifecycle) || [];
21
+ registrations.push({ processor, priority });
22
+ registrations.sort((a, b) => b.priority - a.priority);
23
+ this.processors.set(lifecycle, registrations);
24
+ }
25
+ removeProcessor(lifecycle, processor) {
26
+ const registrations = this.processors.get(lifecycle) || [];
27
+ const filtered = registrations.filter((reg) => reg.processor !== processor);
28
+ this.processors.set(lifecycle, filtered);
29
+ }
30
+ async processMessages(messages, lifecycle) {
31
+ const registrations = this.processors.get(lifecycle) || [];
32
+ if (registrations.length === 0) {
33
+ return messages;
34
+ }
35
+ const modifiedMessages = JSON.parse(JSON.stringify(messages));
36
+ for (const registration of registrations) {
37
+ try {
38
+ await registration.processor(messages, modifiedMessages);
39
+ }
40
+ catch (error) {
41
+ console.error(`Message processor error in ${lifecycle}:`, error);
42
+ }
43
+ }
44
+ return modifiedMessages;
45
+ }
46
+ getProcessorsForLifecycle(lifecycle) {
47
+ const registrations = this.processors.get(lifecycle) || [];
48
+ return registrations.map((reg) => reg.processor);
49
+ }
50
+ clearProcessors(lifecycle) {
51
+ if (lifecycle) {
52
+ this.processors.set(lifecycle, []);
53
+ }
54
+ else {
55
+ this.processors.clear();
56
+ this.processors.set("initial_call", []);
57
+ this.processors.set("per_call", []);
58
+ this.processors.set("post_call", []);
59
+ }
60
+ }
61
+ }
62
+ exports.MessageProcessor = MessageProcessor;
63
+ //# sourceMappingURL=MessageProcessor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MessageProcessor.js","sourceRoot":"","sources":["../../../src/services/MessageProcessor.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,10 @@
1
1
  import { Tool } from "../clients/types";
2
+ import { ToolOverrideFunction, ToolWrapper } from "./types";
2
3
  export declare class ToolsService {
3
4
  tools: Tool[];
5
+ private overrides;
6
+ private wrappers;
7
+ private originalFunctions;
4
8
  functions: {};
5
9
  getTools(): Tool[];
6
10
  getToolsByNames(names: string[]): Tool[];
@@ -15,5 +19,13 @@ export declare class ToolsService {
15
19
  addFunctions(fns: {
16
20
  [fnName: string]: (...args: any) => any;
17
21
  }): void;
22
+ registerOverride(pattern: string | RegExp, override: ToolOverrideFunction, priority?: number): void;
23
+ registerWrapper(pattern: string | RegExp, wrapper: ToolWrapper, priority?: number): void;
24
+ removeOverride(pattern: string | RegExp): void;
25
+ removeWrapper(pattern: string | RegExp): void;
26
+ private findMatchingOverride;
27
+ private findMatchingWrappers;
28
+ getOriginalFunction(name: string): ((...args: any[]) => any) | undefined;
29
+ clearOverrides(): void;
18
30
  }
19
31
  export declare const Tools: ToolsService;
@@ -1,8 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Tools = exports.ToolsService = void 0;
4
+ const types_1 = require("./types");
4
5
  class ToolsService {
5
6
  tools = [];
7
+ overrides = [];
8
+ wrappers = [];
9
+ originalFunctions = {};
6
10
  functions = {};
7
11
  getTools() {
8
12
  return this.tools;
@@ -27,6 +31,30 @@ class ToolsService {
27
31
  return this.functions[name];
28
32
  }
29
33
  setFunction(name, func) {
34
+ if (!this.originalFunctions[name]) {
35
+ this.originalFunctions[name] = func;
36
+ }
37
+ const override = this.findMatchingOverride(name);
38
+ if (override) {
39
+ this.functions[name] = async (...args) => {
40
+ const tool = this.getTool(name);
41
+ return await override.override(args, tool);
42
+ };
43
+ return;
44
+ }
45
+ const wrappers = this.findMatchingWrappers(name);
46
+ if (wrappers.length > 0) {
47
+ let wrappedFunction = func;
48
+ for (const wrapperReg of wrappers) {
49
+ const currentFunction = wrappedFunction;
50
+ wrappedFunction = async (...args) => {
51
+ const tool = this.getTool(name);
52
+ return await wrapperReg.wrapper(currentFunction, args, tool);
53
+ };
54
+ }
55
+ this.functions[name] = wrappedFunction;
56
+ return;
57
+ }
30
58
  this.functions[name] = func;
31
59
  }
32
60
  setFunctions(names, funcs) {
@@ -45,6 +73,49 @@ class ToolsService {
45
73
  this.setFunction(fnName, fns[fnName]);
46
74
  }
47
75
  }
76
+ registerOverride(pattern, override, priority = 0) {
77
+ this.overrides.push({ pattern, override, priority });
78
+ this.overrides.sort((a, b) => b.priority - a.priority);
79
+ }
80
+ registerWrapper(pattern, wrapper, priority = 0) {
81
+ this.wrappers.push({ pattern, wrapper, priority });
82
+ this.wrappers.sort((a, b) => b.priority - a.priority);
83
+ }
84
+ removeOverride(pattern) {
85
+ this.overrides = this.overrides.filter(reg => reg.pattern !== pattern);
86
+ }
87
+ removeWrapper(pattern) {
88
+ this.wrappers = this.wrappers.filter(reg => reg.pattern !== pattern);
89
+ }
90
+ findMatchingOverride(toolName) {
91
+ for (const registration of this.overrides) {
92
+ const matcher = (0, types_1.createPatternMatcher)(registration.pattern);
93
+ if (matcher.matches(toolName)) {
94
+ return registration;
95
+ }
96
+ }
97
+ return null;
98
+ }
99
+ findMatchingWrappers(toolName) {
100
+ const matchingWrappers = [];
101
+ for (const registration of this.wrappers) {
102
+ const matcher = (0, types_1.createPatternMatcher)(registration.pattern);
103
+ if (matcher.matches(toolName)) {
104
+ matchingWrappers.push(registration);
105
+ }
106
+ }
107
+ return matchingWrappers;
108
+ }
109
+ getOriginalFunction(name) {
110
+ return this.originalFunctions[name];
111
+ }
112
+ clearOverrides() {
113
+ this.overrides = [];
114
+ this.wrappers = [];
115
+ for (const [name, originalFunc] of Object.entries(this.originalFunctions)) {
116
+ this.functions[name] = originalFunc;
117
+ }
118
+ }
48
119
  }
49
120
  exports.ToolsService = ToolsService;
50
121
  exports.Tools = new ToolsService();
@@ -1 +1 @@
1
- {"version":3,"file":"Tools.js","sourceRoot":"","sources":["../../../src/services/Tools.ts"],"names":[],"mappings":";;;AAIA,MAAa,YAAY;IACvB,KAAK,GAAG,EAAY,CAAC;IAErB,SAAS,GAAG,EAAE,CAAC;IAEf,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,eAAe,CAAC,KAAe;QAC7B,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IACzE,CAAC;IAED,aAAa,CAAC,SAAmB,EAAE,YAA0B;QAC3D,MAAM,KAAK,GAAG,YAAY,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QACtD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAErB,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE;YAC5B,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;SACxD;IACH,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC;IAED,OAAO,CAAC,IAAY;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAChE,CAAC;IAED,WAAW,CAAC,IAAY;QAEtB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED,WAAW,CAAC,IAAY,EAAE,IAA2B;QACnD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC9B,CAAC;IAED,YAAY,CAAC,KAAe,EAAE,KAAgC;QAC5D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACrC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;SACtC;IACH,CAAC;IAED,OAAO,CAAC,IAAU;QAChB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;IAED,QAAQ,CAAC,KAAa;QACpB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,YAAY,CAAC,GAAgD;QAC3D,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACrC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;SACvC;IACH,CAAC;CACF;AA1DD,oCA0DC;AAEY,QAAA,KAAK,GAAG,IAAI,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"Tools.js","sourceRoot":"","sources":["../../../src/services/Tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ import { Tool } from "../clients/types";
2
+ export interface ToolOverrideFunction {
3
+ (originalArgs: any[], originalTool: Tool): Promise<any> | any;
4
+ }
5
+ export interface ToolOverrideRegistration {
6
+ pattern: string | RegExp;
7
+ override: ToolOverrideFunction;
8
+ priority: number;
9
+ }
10
+ export interface ToolWrapper {
11
+ (originalFunction: (...args: any[]) => any, originalArgs: any[], originalTool: Tool): Promise<any> | any;
12
+ }
13
+ export interface ToolWrapperRegistration {
14
+ pattern: string | RegExp;
15
+ wrapper: ToolWrapper;
16
+ priority: number;
17
+ }
18
+ export interface PatternMatcher {
19
+ matches(toolName: string): boolean;
20
+ pattern: string | RegExp;
21
+ }
22
+ export declare class StringPatternMatcher implements PatternMatcher {
23
+ pattern: string;
24
+ constructor(pattern: string);
25
+ matches(toolName: string): boolean;
26
+ }
27
+ export declare class RegexPatternMatcher implements PatternMatcher {
28
+ pattern: RegExp;
29
+ constructor(pattern: RegExp);
30
+ matches(toolName: string): boolean;
31
+ }
32
+ export declare function createPatternMatcher(pattern: string | RegExp): PatternMatcher;
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createPatternMatcher = exports.RegexPatternMatcher = exports.StringPatternMatcher = void 0;
4
+ class StringPatternMatcher {
5
+ pattern;
6
+ constructor(pattern) {
7
+ this.pattern = pattern;
8
+ }
9
+ matches(toolName) {
10
+ const regexPattern = this.pattern
11
+ .replace(/[.*+?^${}()|[\]\\]/g, '\\$&')
12
+ .replace(/\\\*/g, '.*')
13
+ .replace(/\\\?/g, '.');
14
+ const regex = new RegExp(`^${regexPattern}$`);
15
+ return regex.test(toolName);
16
+ }
17
+ }
18
+ exports.StringPatternMatcher = StringPatternMatcher;
19
+ class RegexPatternMatcher {
20
+ pattern;
21
+ constructor(pattern) {
22
+ this.pattern = pattern;
23
+ }
24
+ matches(toolName) {
25
+ return this.pattern.test(toolName);
26
+ }
27
+ }
28
+ exports.RegexPatternMatcher = RegexPatternMatcher;
29
+ function createPatternMatcher(pattern) {
30
+ if (typeof pattern === 'string') {
31
+ return new StringPatternMatcher(pattern);
32
+ }
33
+ else {
34
+ return new RegexPatternMatcher(pattern);
35
+ }
36
+ }
37
+ exports.createPatternMatcher = createPatternMatcher;
38
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/services/types.ts"],"names":[],"mappings":";;;AA2BA,MAAa,oBAAoB;IACZ;IAAnB,YAAmB,OAAe;QAAf,YAAO,GAAP,OAAO,CAAQ;IAAG,CAAC;IAEtC,OAAO,CAAC,QAAgB;QAEtB,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO;aAC9B,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC;aACtC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC;aACtB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAEzB,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,IAAI,YAAY,GAAG,CAAC,CAAC;QAC9C,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;CACF;AAbD,oDAaC;AAED,MAAa,mBAAmB;IACX;IAAnB,YAAmB,OAAe;QAAf,YAAO,GAAP,OAAO,CAAQ;IAAG,CAAC;IAEtC,OAAO,CAAC,QAAgB;QACtB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;CACF;AAND,kDAMC;AAED,SAAgB,oBAAoB,CAAC,OAAwB;IAC3D,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC/B,OAAO,IAAI,oBAAoB,CAAC,OAAO,CAAC,CAAC;KAC1C;SAAM;QACL,OAAO,IAAI,mBAAmB,CAAC,OAAO,CAAC,CAAC;KACzC;AACH,CAAC;AAND,oDAMC"}
File without changes
@@ -1 +0,0 @@
1
- //# sourceMappingURL=OpenAIAgent.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"OpenAIAgent.js","sourceRoot":"","sources":["../../../../src/agents/configurable/OpenAIAgent.ts"],"names":[],"mappings":""}
@@ -1,5 +0,0 @@
1
- import { CompletionOptions, CompletionResponse } from "../../clients/types";
2
- export declare function createAiCompletion(provider: string, options: CompletionOptions): Promise<CompletionResponse>;
3
- export declare function listModelsForProvider(provider: string): Promise<string[]>;
4
- export declare function listAllModels(): Promise<Record<string, string[]>>;
5
- export declare function listAllProviders(): Promise<string[]>;
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.listAllProviders = exports.listAllModels = exports.listModelsForProvider = exports.createAiCompletion = void 0;
4
- const clients_1 = require("../../clients");
5
- function createAiCompletion(provider, options) {
6
- return clients_1.Clients.createCompletion(provider, options);
7
- }
8
- exports.createAiCompletion = createAiCompletion;
9
- async function listModelsForProvider(provider) {
10
- return clients_1.Clients.getRegisteredModels(provider);
11
- }
12
- exports.listModelsForProvider = listModelsForProvider;
13
- async function listAllModels() {
14
- return clients_1.Clients.listAllModels();
15
- }
16
- exports.listAllModels = listAllModels;
17
- async function listAllProviders() {
18
- return clients_1.Clients.listAllProviders();
19
- }
20
- exports.listAllProviders = listAllProviders;
21
- //# sourceMappingURL=client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/agents/tools/client.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AAOxC,SAAgB,kBAAkB,CAChC,QAAgB,EAChB,OAA0B;IAE1B,OAAO,iBAAO,CAAC,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AACrD,CAAC;AALD,gDAKC;AAEM,KAAK,UAAU,qBAAqB,CACzC,QAAgB;IAEhB,OAAO,iBAAO,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;AAC/C,CAAC;AAJD,sDAIC;AAEM,KAAK,UAAU,aAAa;IACjC,OAAO,iBAAO,CAAC,aAAa,EAAE,CAAC;AACjC,CAAC;AAFD,sCAEC;AAEM,KAAK,UAAU,gBAAgB;IACpC,OAAO,iBAAO,CAAC,gBAAgB,EAAE,CAAC;AACpC,CAAC;AAFD,4CAEC"}
@@ -1,74 +0,0 @@
1
- interface GoogleSearchUrlTemplate {
2
- type: string;
3
- template: string;
4
- }
5
- interface GoogleSearchQuery {
6
- title: string;
7
- totalResults: string;
8
- searchTerms: string;
9
- count: number;
10
- startIndex: number;
11
- startPage: number;
12
- language: string;
13
- inputEncoding: string;
14
- outputEncoding: string;
15
- safe: string;
16
- cx: string;
17
- sort: string;
18
- filter: string;
19
- gl: string;
20
- cr: string;
21
- googleHost: string;
22
- disableCnTwTranslation: string;
23
- hq: string;
24
- hl: string;
25
- siteSearch: string;
26
- siteSearchFilter: string;
27
- exactTerms: string;
28
- excludeTerms: string;
29
- linkSite: string;
30
- orTerms: string;
31
- relatedSite: string;
32
- dateRestrict: string;
33
- lowRange: string;
34
- highRange: string;
35
- fileType: string;
36
- rights: string;
37
- searchType: string;
38
- imgSize: string;
39
- imgType: string;
40
- imgColorType: string;
41
- imgDominantColor: string;
42
- }
43
- interface GoogleSearchQueries {
44
- previousPage: GoogleSearchQuery[];
45
- request: GoogleSearchQuery[];
46
- nextPage: GoogleSearchQuery[];
47
- }
48
- interface GoogleSearchPromotion {
49
- }
50
- interface GoogleSearchContext {
51
- }
52
- interface GoogleSearchInformation {
53
- searchTime: number;
54
- formattedSearchTime: string;
55
- totalResults: string;
56
- formattedTotalResults: string;
57
- }
58
- interface GoogleSearchSpelling {
59
- correctedQuery: string;
60
- htmlCorrectedQuery: string;
61
- }
62
- interface GoogleSearchResult {
63
- }
64
- export interface GoogleSearchResponse {
65
- kind: string;
66
- url: GoogleSearchUrlTemplate;
67
- queries: GoogleSearchQueries;
68
- promotions?: GoogleSearchPromotion[];
69
- context?: GoogleSearchContext;
70
- searchInformation: GoogleSearchInformation;
71
- spelling?: GoogleSearchSpelling;
72
- items?: GoogleSearchResult[];
73
- }
74
- export {};
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=googleSearchTypes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"googleSearchTypes.js","sourceRoot":"","sources":["../../../../src/agents/tools/googleSearchTypes.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- export declare const chatUI: () => Promise<void>;
@@ -1,14 +0,0 @@
1
- import { startInkChatUI } from "../ui";
2
- export const chatUI = async () => {
3
- try {
4
- await startInkChatUI({
5
- aiName: "Knowhow",
6
- plugins: ["embeddings", "files", "git"],
7
- });
8
- }
9
- catch (error) {
10
- console.error("❌ Failed to start Chat UI:", error);
11
- process.exit(1);
12
- }
13
- };
14
- //# sourceMappingURL=chat-ui.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chat-ui.js","sourceRoot":"","sources":["../../../src/commands/chat-ui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,CAAC,MAAM,MAAM,GAAG,KAAK,IAAI,EAAE;IAC/B,IAAI,CAAC;QACH,MAAM,cAAc,CAAC;YACnB,MAAM,EAAE,SAAS;YACjB,OAAO,EAAE,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,CAAC;SACxC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;QACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC"}
@@ -1,3 +0,0 @@
1
- #!/usr/bin/env node
2
- declare const main: () => Promise<void>;
3
- export { main };
@@ -1,20 +0,0 @@
1
- #!/usr/bin/env node
2
- import { startInkChatUI } from '../ui';
3
- const main = async () => {
4
- console.log('Starting Knowhow Chat UI Demo...\n');
5
- try {
6
- await startInkChatUI({
7
- aiName: 'Knowhow',
8
- plugins: ['embeddings', 'files', 'github']
9
- });
10
- }
11
- catch (error) {
12
- console.error('Error starting chat UI:', error);
13
- process.exit(1);
14
- }
15
- };
16
- if (import.meta.url === `file://${process.argv[1]}`) {
17
- main();
18
- }
19
- export { main };
20
- //# sourceMappingURL=chat-ui-demo.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chat-ui-demo.js","sourceRoot":"","sources":["../../../src/demo/chat-ui-demo.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;IACtB,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;IAElD,IAAI,CAAC;QACH,MAAM,cAAc,CAAC;YACnB,MAAM,EAAE,SAAS;YACjB,OAAO,EAAE,CAAC,YAAY,EAAE,OAAO,EAAE,QAAQ,CAAC;SAC3C,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;QAChD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC;AAEF,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,UAAU,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACpD,IAAI,EAAE,CAAC;AACT,CAAC;AAED,OAAO,EAAE,IAAI,EAAE,CAAC"}
@@ -1,7 +0,0 @@
1
- import { PluginBase } from "./PluginBase";
2
- import { MinimalEmbedding } from "../types";
3
- export declare class EmbeddingPluginV2 extends PluginBase {
4
- constructor();
5
- embed(): Promise<MinimalEmbedding[]>;
6
- call(userPrompt?: string): Promise<string>;
7
- }
@@ -1,41 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EmbeddingPluginV2 = void 0;
4
- const PluginBase_1 = require("./PluginBase");
5
- const config_1 = require("../config");
6
- const embeddings_1 = require("../embeddings");
7
- class EmbeddingPluginV2 extends PluginBase_1.PluginBase {
8
- constructor() {
9
- const meta = {
10
- key: "embeddings-v2",
11
- name: "Embeddings Plugin V2",
12
- description: "Enhanced embedding plugin with enable/disable support",
13
- requires: [],
14
- };
15
- super(meta);
16
- }
17
- async embed() {
18
- return [];
19
- }
20
- async call(userPrompt) {
21
- if (!userPrompt) {
22
- return "EMBEDDING PLUGIN V2: No prompt provided";
23
- }
24
- const count = 7;
25
- const embeddings = await (0, embeddings_1.getConfiguredEmbeddings)();
26
- const config = await (0, config_1.getConfig)();
27
- const results = await (0, embeddings_1.queryEmbedding)(userPrompt, embeddings, config.embeddingModel);
28
- const context = results.slice(0, count);
29
- (0, embeddings_1.pruneVector)(context);
30
- (0, embeddings_1.pruneMetadata)(context);
31
- for (const entry of context) {
32
- console.log(`EMBEDDING PLUGIN V2: Reading entry ${entry.id}`);
33
- }
34
- const contextLength = JSON.stringify(context).split(" ").length;
35
- console.log(`EMBEDDING PLUGIN V2: Found ${context.length} entries. Loading ${contextLength} words`);
36
- return `EMBEDDING PLUGIN V2: Our knowledgebase contains this information which can be used to answer the question:
37
- ${JSON.stringify(context)}`;
38
- }
39
- }
40
- exports.EmbeddingPluginV2 = EmbeddingPluginV2;
41
- //# sourceMappingURL=EmbeddingPluginV2.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EmbeddingPluginV2.js","sourceRoot":"","sources":["../../../src/plugins/EmbeddingPluginV2.ts"],"names":[],"mappings":";;;AAAA,6CAAsD;AAEtD,sCAAsC;AACtC,8CAKuB;AAEvB,MAAa,iBAAkB,SAAQ,uBAAU;IAC/C;QACE,MAAM,IAAI,GAAe;YACvB,GAAG,EAAE,eAAe;YACpB,IAAI,EAAE,sBAAsB;YAC5B,WAAW,EAAE,uDAAuD;YACpE,QAAQ,EAAE,EAAE;SACb,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;IAED,KAAK,CAAC,KAAK;QACT,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,UAAmB;QAC5B,IAAI,CAAC,UAAU,EAAE;YACf,OAAO,yCAAyC,CAAC;SAClD;QAED,MAAM,KAAK,GAAG,CAAC,CAAC;QAChB,MAAM,UAAU,GAAG,MAAM,IAAA,oCAAuB,GAAE,CAAC;QACnD,MAAM,MAAM,GAAG,MAAM,IAAA,kBAAS,GAAE,CAAC;QACjC,MAAM,OAAO,GAAG,MAAM,IAAA,2BAAc,EAClC,UAAU,EACV,UAAU,EACV,MAAM,CAAC,cAAc,CACtB,CAAC;QACF,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAExC,IAAA,wBAAW,EAAC,OAAO,CAAC,CAAC;QACrB,IAAA,0BAAa,EAAC,OAAO,CAAC,CAAC;QAEvB,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE;YAC3B,OAAO,CAAC,GAAG,CAAC,sCAAsC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;SAC/D;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;QAChE,OAAO,CAAC,GAAG,CACT,8BAA8B,OAAO,CAAC,MAAM,qBAAqB,aAAa,QAAQ,CACvF,CAAC;QAEF,OAAO;MACL,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;IAC9B,CAAC;CACF;AA7CD,8CA6CC"}
@@ -1,10 +0,0 @@
1
- import { PluginBase } from "./PluginBase";
2
- import { MinimalEmbedding } from "../types";
3
- export declare class GitHubPluginV2 extends PluginBase {
4
- private octokit?;
5
- constructor();
6
- protected customEnableCheck(): boolean;
7
- embed(userPrompt: string): Promise<MinimalEmbedding[]>;
8
- extractUrls(userPrompt: string): string[];
9
- call(userPrompt?: string): Promise<string>;
10
- }
@@ -1,57 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GitHubPluginV2 = void 0;
4
- const PluginBase_1 = require("./PluginBase");
5
- const rest_1 = require("@octokit/rest");
6
- class GitHubPluginV2 extends PluginBase_1.PluginBase {
7
- octokit;
8
- constructor() {
9
- const meta = {
10
- key: "github-v2",
11
- name: "GitHub Plugin V2",
12
- description: "Enhanced GitHub plugin with automatic enable/disable based on token availability",
13
- requires: ["GITHUB_TOKEN"],
14
- };
15
- super(meta);
16
- }
17
- customEnableCheck() {
18
- try {
19
- const key = process.env.GITHUB_TOKEN;
20
- if (key) {
21
- this.octokit = new rest_1.Octokit({ auth: key });
22
- return true;
23
- }
24
- return false;
25
- }
26
- catch (error) {
27
- console.error("GITHUB PLUGIN V2: Failed to initialize Octokit client", error);
28
- return false;
29
- }
30
- }
31
- async embed(userPrompt) {
32
- const urls = this.extractUrls(userPrompt);
33
- if (!urls.length)
34
- return [];
35
- return [];
36
- }
37
- extractUrls(userPrompt) {
38
- const prUrlRegex = /https:\/\/github\.com\/([\w-]+)\/([\w-]+)\/pull\/(\d+)/g;
39
- const matches = userPrompt.match(prUrlRegex);
40
- return matches || [];
41
- }
42
- async call(userPrompt) {
43
- if (!userPrompt) {
44
- return "GITHUB PLUGIN V2: No prompt provided";
45
- }
46
- if (!this.octokit) {
47
- return "GITHUB PLUGIN V2: GitHub client not initialized";
48
- }
49
- const urls = this.extractUrls(userPrompt);
50
- if (!urls.length) {
51
- return "GITHUB PLUGIN V2: No pull request URLs detected.";
52
- }
53
- return `GITHUB PLUGIN V2: Found ${urls.length} GitHub URLs. Enhanced processing with enable/disable support.`;
54
- }
55
- }
56
- exports.GitHubPluginV2 = GitHubPluginV2;
57
- //# sourceMappingURL=GitHubPluginV2.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GitHubPluginV2.js","sourceRoot":"","sources":["../../../src/plugins/GitHubPluginV2.ts"],"names":[],"mappings":";;;AAAA,6CAAsD;AAEtD,wCAAwC;AAExC,MAAa,cAAe,SAAQ,uBAAU;IACpC,OAAO,CAAW;IAE1B;QACE,MAAM,IAAI,GAAe;YACvB,GAAG,EAAE,WAAW;YAChB,IAAI,EAAE,kBAAkB;YACxB,WAAW,EAAE,kFAAkF;YAC/F,QAAQ,EAAE,CAAC,cAAc,CAAC;SAC3B,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;IAES,iBAAiB;QAEzB,IAAI;YACF,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;YACrC,IAAI,GAAG,EAAE;gBACP,IAAI,CAAC,OAAO,GAAG,IAAI,cAAO,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;gBAC1C,OAAO,IAAI,CAAC;aACb;YACD,OAAO,KAAK,CAAC;SACd;QAAC,OAAO,KAAK,EAAE;YACd,OAAO,CAAC,KAAK,CAAC,uDAAuD,EAAE,KAAK,CAAC,CAAC;YAC9E,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,UAAkB;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAC1C,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,CAAC;QAG5B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,WAAW,CAAC,UAAkB;QAC5B,MAAM,UAAU,GACd,yDAAyD,CAAC;QAC5D,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC7C,OAAO,OAAO,IAAI,EAAE,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,UAAmB;QAC5B,IAAI,CAAC,UAAU,EAAE;YACf,OAAO,sCAAsC,CAAC;SAC/C;QAED,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,OAAO,iDAAiD,CAAC;SAC1D;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAE1C,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,OAAO,kDAAkD,CAAC;SAC3D;QAED,OAAO,2BAA2B,IAAI,CAAC,MAAM,gEAAgE,CAAC;IAChH,CAAC;CACF;AA5DD,wCA4DC"}