@tyvm/knowhow 0.0.144 → 0.0.146

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 (253) hide show
  1. package/bin/knowhow.js +22 -20
  2. package/package.json +1 -1
  3. package/scripts/migrate-usage-json.js +147 -0
  4. package/src/agents/base/base.ts +65 -10
  5. package/src/agents/tools/patch.ts +84 -2
  6. package/src/agents/tools/textSearch.ts +98 -3
  7. package/src/chat/CliChatService.ts +16 -0
  8. package/src/chat/modules/AgentModule.ts +159 -29
  9. package/src/chat/modules/SessionsModule.ts +13 -5
  10. package/src/chat/types.ts +15 -0
  11. package/src/chat.ts +11 -0
  12. package/src/cli.ts +2 -0
  13. package/src/clients/anthropic.ts +80 -1
  14. package/src/clients/contextLimits.ts +40 -0
  15. package/src/clients/fireworks.ts +3 -0
  16. package/src/clients/gemini.ts +67 -5
  17. package/src/clients/http.ts +85 -4
  18. package/src/clients/index.ts +4 -0
  19. package/src/clients/openai.ts +186 -35
  20. package/src/clients/pricing/fireworks.ts +50 -1
  21. package/src/clients/pricing/index.ts +1 -1
  22. package/src/clients/pricing/models.ts +3 -1
  23. package/src/clients/pricing/openai.ts +2 -2
  24. package/src/clients/pricing/qwen.ts +80 -0
  25. package/src/clients/qwen.ts +16 -0
  26. package/src/clients/types.ts +99 -8
  27. package/src/clients/xai.ts +96 -8
  28. package/src/commands/agent.ts +29 -1
  29. package/src/commands/services.ts +49 -3
  30. package/src/index.ts +9 -0
  31. package/src/plugins/plugins.ts +16 -0
  32. package/src/processors/Base64ImageDetector.ts +46 -7
  33. package/src/processors/GemmaToolProcessor.ts +163 -0
  34. package/src/processors/TokenCompressor.ts +40 -8
  35. package/src/processors/ToolResponseCache.ts +17 -8
  36. package/src/processors/index.ts +1 -0
  37. package/src/processors/tools/boundedToolResponse.ts +49 -0
  38. package/src/processors/tools/grepToolResponse.ts +164 -38
  39. package/src/processors/tools/index.ts +2 -0
  40. package/src/processors/tools/jqToolResponse.ts +40 -10
  41. package/src/processors/tools/listStoredToolResponses.ts +51 -10
  42. package/src/processors/tools/tailToolResponse.ts +85 -17
  43. package/src/services/AgentSyncFs.ts +37 -0
  44. package/src/services/LazyToolsService.ts +7 -0
  45. package/src/services/Mcp.ts +9 -2
  46. package/src/services/RuntimeReloadService.ts +31 -0
  47. package/src/services/SessionManager.ts +14 -0
  48. package/src/services/Tools.ts +14 -0
  49. package/src/services/TracingService.ts +116 -0
  50. package/src/services/index.ts +8 -0
  51. package/src/services/modules/computerUse.ts +216 -0
  52. package/src/services/modules/index.ts +90 -9
  53. package/src/services/modules/types.ts +31 -1
  54. package/src/types.ts +3 -0
  55. package/src/util/Trace.ts +236 -0
  56. package/tests/clients/contextLimits.test.ts +4 -0
  57. package/tests/clients/fireworks.test.ts +65 -0
  58. package/tests/clients/openai.images.test.ts +105 -0
  59. package/tests/clients/pricing.test.ts +6 -0
  60. package/tests/clients/reasoningEffort.test.ts +79 -0
  61. package/tests/compressor/toolResponseCache.test.ts +2 -1
  62. package/tests/compressor/usageBase64.json +159 -0
  63. package/tests/compressor/usageBase64.test.ts +175 -0
  64. package/tests/manual/clients/completions.test.ts +27 -10
  65. package/tests/patching/fixtures/transcript-mangles/agent-sync-fs-nested-catch.json +9 -0
  66. package/tests/patching/fixtures/transcript-mangles/automation-functions-crossed.json +9 -0
  67. package/tests/patching/fixtures/transcript-mangles/fruit-ninja-confirmed-retirement.json +8 -0
  68. package/tests/patching/patchFileOutput.test.ts +112 -1
  69. package/tests/patching/transcriptMangleRegression.test.ts +125 -0
  70. package/tests/processors/Base64ImageDetector.test.ts +36 -1
  71. package/tests/processors/TokenCompressor.test.ts +17 -3
  72. package/tests/processors/tools/boundedRetrievalTools.test.ts +68 -0
  73. package/tests/processors/tools/grepToolResponse.test.ts +88 -1
  74. package/tests/unit/plugins/pluginLoading.test.ts +31 -0
  75. package/tests/unit/services/RuntimeReloadService.test.ts +29 -0
  76. package/ts_build/package.json +1 -1
  77. package/ts_build/src/agents/base/base.d.ts +8 -1
  78. package/ts_build/src/agents/base/base.js +37 -3
  79. package/ts_build/src/agents/base/base.js.map +1 -1
  80. package/ts_build/src/agents/tools/patch.d.ts +1 -0
  81. package/ts_build/src/agents/tools/patch.js +35 -2
  82. package/ts_build/src/agents/tools/patch.js.map +1 -1
  83. package/ts_build/src/agents/tools/textSearch.js +56 -2
  84. package/ts_build/src/agents/tools/textSearch.js.map +1 -1
  85. package/ts_build/src/chat/CliChatService.js +15 -0
  86. package/ts_build/src/chat/CliChatService.js.map +1 -1
  87. package/ts_build/src/chat/modules/AgentModule.d.ts +14 -1
  88. package/ts_build/src/chat/modules/AgentModule.js +86 -24
  89. package/ts_build/src/chat/modules/AgentModule.js.map +1 -1
  90. package/ts_build/src/chat/modules/SessionsModule.js +5 -6
  91. package/ts_build/src/chat/modules/SessionsModule.js.map +1 -1
  92. package/ts_build/src/chat/types.d.ts +12 -0
  93. package/ts_build/src/chat.js +7 -0
  94. package/ts_build/src/chat.js.map +1 -1
  95. package/ts_build/src/cli.d.ts +2 -1
  96. package/ts_build/src/cli.js +1 -0
  97. package/ts_build/src/cli.js.map +1 -1
  98. package/ts_build/src/clients/anthropic.d.ts +1 -0
  99. package/ts_build/src/clients/anthropic.js +40 -1
  100. package/ts_build/src/clients/anthropic.js.map +1 -1
  101. package/ts_build/src/clients/contextLimits.js +25 -0
  102. package/ts_build/src/clients/contextLimits.js.map +1 -1
  103. package/ts_build/src/clients/fireworks.js +1 -0
  104. package/ts_build/src/clients/fireworks.js.map +1 -1
  105. package/ts_build/src/clients/gemini.js +56 -4
  106. package/ts_build/src/clients/gemini.js.map +1 -1
  107. package/ts_build/src/clients/http.d.ts +2 -0
  108. package/ts_build/src/clients/http.js +66 -9
  109. package/ts_build/src/clients/http.js.map +1 -1
  110. package/ts_build/src/clients/index.d.ts +1 -0
  111. package/ts_build/src/clients/index.js +4 -0
  112. package/ts_build/src/clients/index.js.map +1 -1
  113. package/ts_build/src/clients/openai.d.ts +6 -1
  114. package/ts_build/src/clients/openai.js +135 -35
  115. package/ts_build/src/clients/openai.js.map +1 -1
  116. package/ts_build/src/clients/pricing/fireworks.d.ts +4 -1
  117. package/ts_build/src/clients/pricing/fireworks.js +33 -1
  118. package/ts_build/src/clients/pricing/fireworks.js.map +1 -1
  119. package/ts_build/src/clients/pricing/index.d.ts +1 -1
  120. package/ts_build/src/clients/pricing/index.js +6 -2
  121. package/ts_build/src/clients/pricing/index.js.map +1 -1
  122. package/ts_build/src/clients/pricing/models.d.ts +2 -1
  123. package/ts_build/src/clients/pricing/models.js +4 -1
  124. package/ts_build/src/clients/pricing/models.js.map +1 -1
  125. package/ts_build/src/clients/pricing/openai.js +2 -2
  126. package/ts_build/src/clients/pricing/openai.js.map +1 -1
  127. package/ts_build/src/clients/pricing/qwen.d.ts +5 -0
  128. package/ts_build/src/clients/pricing/qwen.js +30 -0
  129. package/ts_build/src/clients/pricing/qwen.js.map +1 -0
  130. package/ts_build/src/clients/qwen.d.ts +4 -0
  131. package/ts_build/src/clients/qwen.js +15 -0
  132. package/ts_build/src/clients/qwen.js.map +1 -0
  133. package/ts_build/src/clients/types.d.ts +16 -1
  134. package/ts_build/src/clients/types.js +14 -0
  135. package/ts_build/src/clients/types.js.map +1 -1
  136. package/ts_build/src/clients/xai.d.ts +2 -0
  137. package/ts_build/src/clients/xai.js +79 -13
  138. package/ts_build/src/clients/xai.js.map +1 -1
  139. package/ts_build/src/commands/agent.js +15 -1
  140. package/ts_build/src/commands/agent.js.map +1 -1
  141. package/ts_build/src/commands/services.d.ts +2 -0
  142. package/ts_build/src/commands/services.js +45 -3
  143. package/ts_build/src/commands/services.js.map +1 -1
  144. package/ts_build/src/index.d.ts +2 -0
  145. package/ts_build/src/index.js +1 -0
  146. package/ts_build/src/index.js.map +1 -1
  147. package/ts_build/src/plugins/plugins.d.ts +1 -0
  148. package/ts_build/src/plugins/plugins.js +14 -0
  149. package/ts_build/src/plugins/plugins.js.map +1 -1
  150. package/ts_build/src/processors/Base64ImageDetector.js +22 -3
  151. package/ts_build/src/processors/Base64ImageDetector.js.map +1 -1
  152. package/ts_build/src/processors/GemmaToolProcessor.d.ts +14 -0
  153. package/ts_build/src/processors/GemmaToolProcessor.js +97 -0
  154. package/ts_build/src/processors/GemmaToolProcessor.js.map +1 -0
  155. package/ts_build/src/processors/TokenCompressor.js +15 -6
  156. package/ts_build/src/processors/TokenCompressor.js.map +1 -1
  157. package/ts_build/src/processors/ToolResponseCache.d.ts +3 -3
  158. package/ts_build/src/processors/ToolResponseCache.js +8 -8
  159. package/ts_build/src/processors/ToolResponseCache.js.map +1 -1
  160. package/ts_build/src/processors/index.d.ts +1 -0
  161. package/ts_build/src/processors/index.js +3 -1
  162. package/ts_build/src/processors/index.js.map +1 -1
  163. package/ts_build/src/processors/tools/boundedToolResponse.d.ts +7 -0
  164. package/ts_build/src/processors/tools/boundedToolResponse.js +27 -0
  165. package/ts_build/src/processors/tools/boundedToolResponse.js.map +1 -0
  166. package/ts_build/src/processors/tools/grepToolResponse.d.ts +4 -0
  167. package/ts_build/src/processors/tools/grepToolResponse.js +101 -25
  168. package/ts_build/src/processors/tools/grepToolResponse.js.map +1 -1
  169. package/ts_build/src/processors/tools/index.d.ts +2 -2
  170. package/ts_build/src/processors/tools/index.js.map +1 -1
  171. package/ts_build/src/processors/tools/jqToolResponse.d.ts +5 -1
  172. package/ts_build/src/processors/tools/jqToolResponse.js +26 -9
  173. package/ts_build/src/processors/tools/jqToolResponse.js.map +1 -1
  174. package/ts_build/src/processors/tools/listStoredToolResponses.d.ts +7 -1
  175. package/ts_build/src/processors/tools/listStoredToolResponses.js +39 -9
  176. package/ts_build/src/processors/tools/listStoredToolResponses.js.map +1 -1
  177. package/ts_build/src/processors/tools/tailToolResponse.d.ts +5 -0
  178. package/ts_build/src/processors/tools/tailToolResponse.js +56 -13
  179. package/ts_build/src/processors/tools/tailToolResponse.js.map +1 -1
  180. package/ts_build/src/services/AgentSyncFs.js +17 -0
  181. package/ts_build/src/services/AgentSyncFs.js.map +1 -1
  182. package/ts_build/src/services/LazyToolsService.d.ts +1 -0
  183. package/ts_build/src/services/LazyToolsService.js +5 -0
  184. package/ts_build/src/services/LazyToolsService.js.map +1 -1
  185. package/ts_build/src/services/Mcp.js +8 -2
  186. package/ts_build/src/services/Mcp.js.map +1 -1
  187. package/ts_build/src/services/RuntimeReloadService.d.ts +12 -0
  188. package/ts_build/src/services/RuntimeReloadService.js +26 -0
  189. package/ts_build/src/services/RuntimeReloadService.js.map +1 -0
  190. package/ts_build/src/services/SessionManager.js +12 -0
  191. package/ts_build/src/services/SessionManager.js.map +1 -1
  192. package/ts_build/src/services/Tools.d.ts +3 -0
  193. package/ts_build/src/services/Tools.js +5 -0
  194. package/ts_build/src/services/Tools.js.map +1 -1
  195. package/ts_build/src/services/TracingService.d.ts +16 -0
  196. package/ts_build/src/services/TracingService.js +35 -0
  197. package/ts_build/src/services/TracingService.js.map +1 -0
  198. package/ts_build/src/services/index.d.ts +6 -0
  199. package/ts_build/src/services/index.js +7 -1
  200. package/ts_build/src/services/index.js.map +1 -1
  201. package/ts_build/src/services/modules/computerUse.d.ts +163 -0
  202. package/ts_build/src/services/modules/computerUse.js +3 -0
  203. package/ts_build/src/services/modules/computerUse.js.map +1 -0
  204. package/ts_build/src/services/modules/index.d.ts +6 -0
  205. package/ts_build/src/services/modules/index.js +49 -6
  206. package/ts_build/src/services/modules/index.js.map +1 -1
  207. package/ts_build/src/services/modules/types.d.ts +7 -0
  208. package/ts_build/src/types.d.ts +3 -0
  209. package/ts_build/src/types.js.map +1 -1
  210. package/ts_build/src/util/Trace.d.ts +13 -0
  211. package/ts_build/src/util/Trace.js +107 -0
  212. package/ts_build/src/util/Trace.js.map +1 -0
  213. package/ts_build/src/workers/tools/index.d.ts +1 -1
  214. package/ts_build/tests/clients/contextLimits.test.js +2 -0
  215. package/ts_build/tests/clients/contextLimits.test.js.map +1 -1
  216. package/ts_build/tests/clients/fireworks.test.d.ts +1 -0
  217. package/ts_build/tests/clients/fireworks.test.js +65 -0
  218. package/ts_build/tests/clients/fireworks.test.js.map +1 -0
  219. package/ts_build/tests/clients/openai.images.test.d.ts +1 -0
  220. package/ts_build/tests/clients/openai.images.test.js +94 -0
  221. package/ts_build/tests/clients/openai.images.test.js.map +1 -0
  222. package/ts_build/tests/clients/pricing.test.js +4 -0
  223. package/ts_build/tests/clients/pricing.test.js.map +1 -1
  224. package/ts_build/tests/clients/reasoningEffort.test.d.ts +1 -0
  225. package/ts_build/tests/clients/reasoningEffort.test.js +68 -0
  226. package/ts_build/tests/clients/reasoningEffort.test.js.map +1 -0
  227. package/ts_build/tests/compressor/toolResponseCache.test.js +1 -1
  228. package/ts_build/tests/compressor/toolResponseCache.test.js.map +1 -1
  229. package/ts_build/tests/compressor/usageBase64.test.d.ts +1 -0
  230. package/ts_build/tests/compressor/usageBase64.test.js +109 -0
  231. package/ts_build/tests/compressor/usageBase64.test.js.map +1 -0
  232. package/ts_build/tests/manual/clients/completions.test.js +19 -6
  233. package/ts_build/tests/manual/clients/completions.test.js.map +1 -1
  234. package/ts_build/tests/patching/patchFileOutput.test.js +82 -0
  235. package/ts_build/tests/patching/patchFileOutput.test.js.map +1 -1
  236. package/ts_build/tests/patching/transcriptMangleRegression.test.d.ts +1 -0
  237. package/ts_build/tests/patching/transcriptMangleRegression.test.js +104 -0
  238. package/ts_build/tests/patching/transcriptMangleRegression.test.js.map +1 -0
  239. package/ts_build/tests/processors/Base64ImageDetector.test.js +24 -0
  240. package/ts_build/tests/processors/Base64ImageDetector.test.js.map +1 -1
  241. package/ts_build/tests/processors/TokenCompressor.test.js +11 -2
  242. package/ts_build/tests/processors/TokenCompressor.test.js.map +1 -1
  243. package/ts_build/tests/processors/tools/boundedRetrievalTools.test.d.ts +1 -0
  244. package/ts_build/tests/processors/tools/boundedRetrievalTools.test.js +57 -0
  245. package/ts_build/tests/processors/tools/boundedRetrievalTools.test.js.map +1 -0
  246. package/ts_build/tests/processors/tools/grepToolResponse.test.js +37 -0
  247. package/ts_build/tests/processors/tools/grepToolResponse.test.js.map +1 -1
  248. package/ts_build/tests/unit/plugins/pluginLoading.test.js +59 -0
  249. package/ts_build/tests/unit/plugins/pluginLoading.test.js.map +1 -1
  250. package/ts_build/tests/unit/services/RuntimeReloadService.test.d.ts +1 -0
  251. package/ts_build/tests/unit/services/RuntimeReloadService.test.js +26 -0
  252. package/ts_build/tests/unit/services/RuntimeReloadService.test.js.map +1 -0
  253. package/x-home.png +0 -0
@@ -18,6 +18,11 @@ class ToolsService {
18
18
  this.context = { Tools: this };
19
19
  }
20
20
  }
21
+ resetTools() {
22
+ this.tools = [];
23
+ this.functions = {};
24
+ this.originalFunctions = {};
25
+ }
21
26
  getContext() {
22
27
  return this.context;
23
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Tools.js","sourceRoot":"","sources":["../../../src/services/Tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Tools.js","sourceRoot":"","sources":["../../../src/services/Tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ export interface SpanHandle {
2
+ setAttribute(key: string, value: string | number | boolean): void;
3
+ recordError(err: unknown): void;
4
+ end(): void;
5
+ }
6
+ export interface TracerImpl {
7
+ startSpan(name: string, attributes?: Record<string, string | number | boolean>): SpanHandle;
8
+ withSpan<T>(span: SpanHandle, fn: () => T): T;
9
+ }
10
+ export declare const TracingService: {
11
+ register(impl: TracerImpl): void;
12
+ reset(): void;
13
+ isEnabled(): boolean;
14
+ startSpan(name: string, attributes?: Record<string, string | number | boolean>): SpanHandle;
15
+ withSpan<T>(span: SpanHandle, fn: () => T): T;
16
+ };
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TracingService = void 0;
4
+ const noopSpan = {
5
+ setAttribute() { },
6
+ recordError() { },
7
+ end() { },
8
+ };
9
+ const noopTracer = {
10
+ startSpan() {
11
+ return noopSpan;
12
+ },
13
+ withSpan(_span, fn) {
14
+ return fn();
15
+ },
16
+ };
17
+ let _impl = noopTracer;
18
+ exports.TracingService = {
19
+ register(impl) {
20
+ _impl = impl;
21
+ },
22
+ reset() {
23
+ _impl = noopTracer;
24
+ },
25
+ isEnabled() {
26
+ return _impl !== noopTracer;
27
+ },
28
+ startSpan(name, attributes) {
29
+ return _impl.startSpan(name, attributes);
30
+ },
31
+ withSpan(span, fn) {
32
+ return _impl.withSpan(span, fn);
33
+ },
34
+ };
35
+ //# sourceMappingURL=TracingService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TracingService.js","sourceRoot":"","sources":["../../../src/services/TracingService.ts"],"names":[],"mappings":";;;AAiDA,MAAM,QAAQ,GAAe;IAC3B,YAAY,KAAI,CAAC;IACjB,WAAW,KAAI,CAAC;IAChB,GAAG,KAAI,CAAC;CACT,CAAC;AAEF,MAAM,UAAU,GAAe;IAC7B,SAAS;QACP,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,QAAQ,CAAC,KAAK,EAAE,EAAE;QAChB,OAAO,EAAE,EAAE,CAAC;IACd,CAAC;CACF,CAAC;AAIF,IAAI,KAAK,GAAe,UAAU,CAAC;AAiBtB,QAAA,cAAc,GAAG;IAM5B,QAAQ,CAAC,IAAgB;QACvB,KAAK,GAAG,IAAI,CAAC;IACf,CAAC;IAGD,KAAK;QACH,KAAK,GAAG,UAAU,CAAC;IACrB,CAAC;IAGD,SAAS;QACP,OAAO,KAAK,KAAK,UAAU,CAAC;IAC9B,CAAC;IAGD,SAAS,CACP,IAAY,EACZ,UAAsD;QAEtD,OAAO,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC3C,CAAC;IAGD,QAAQ,CAAI,IAAgB,EAAE,EAAW;QACvC,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAClC,CAAC;CACF,CAAC"}
@@ -11,6 +11,7 @@ import { PluginService } from "../plugins/plugins";
11
11
  import { DockerService } from "./DockerService";
12
12
  import { MediaProcessorService } from "./MediaProcessorService";
13
13
  import { BehaviorsService } from "./BehaviorsService";
14
+ import { RuntimeReloadService } from "./RuntimeReloadService";
14
15
  import { ConversionService } from "./conversion/ConversionService";
15
16
  export * from "./AgentService";
16
17
  export * from "./EventService";
@@ -32,7 +33,11 @@ export * from "./SyncedAgentWatcher";
32
33
  export * from "./SyncerService";
33
34
  export * from "./watchers";
34
35
  export { Clients } from "../clients";
36
+ export * from "../util/Trace";
37
+ export { TracingService } from "./TracingService";
38
+ export type { TracerImpl, SpanHandle } from "./TracingService";
35
39
  export * from "./conversion";
40
+ export * from "./RuntimeReloadService";
36
41
  export { BehaviorsService } from "./BehaviorsService";
37
42
  declare let Singletons: {
38
43
  Tools: ToolsService;
@@ -49,5 +54,6 @@ declare let Singletons: {
49
54
  MediaProcessor: MediaProcessorService;
50
55
  Conversion: ConversionService;
51
56
  Behaviors: BehaviorsService;
57
+ RuntimeReload: RuntimeReloadService;
52
58
  };
53
59
  export declare const services: () => typeof Singletons;
@@ -36,7 +36,7 @@ var __importStar = (this && this.__importStar) || (function () {
36
36
  };
37
37
  })();
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.services = exports.BehaviorsService = exports.Clients = exports.MCP = void 0;
39
+ exports.services = exports.BehaviorsService = exports.TracingService = exports.Clients = exports.MCP = void 0;
40
40
  const clients_1 = require("../clients");
41
41
  const AgentService_1 = require("./AgentService");
42
42
  const EventService_1 = require("./EventService");
@@ -50,6 +50,7 @@ const plugins_1 = require("../plugins/plugins");
50
50
  const DockerService_1 = require("./DockerService");
51
51
  const MediaProcessorService_1 = require("./MediaProcessorService");
52
52
  const BehaviorsService_1 = require("./BehaviorsService");
53
+ const RuntimeReloadService_1 = require("./RuntimeReloadService");
53
54
  const ConversionService_1 = require("./conversion/ConversionService");
54
55
  __exportStar(require("./AgentService"), exports);
55
56
  __exportStar(require("./EventService"), exports);
@@ -72,7 +73,11 @@ __exportStar(require("./SyncerService"), exports);
72
73
  __exportStar(require("./watchers"), exports);
73
74
  var clients_2 = require("../clients");
74
75
  Object.defineProperty(exports, "Clients", { enumerable: true, get: function () { return clients_2.Clients; } });
76
+ __exportStar(require("../util/Trace"), exports);
77
+ var TracingService_1 = require("./TracingService");
78
+ Object.defineProperty(exports, "TracingService", { enumerable: true, get: function () { return TracingService_1.TracingService; } });
75
79
  __exportStar(require("./conversion"), exports);
80
+ __exportStar(require("./RuntimeReloadService"), exports);
76
81
  var BehaviorsService_2 = require("./BehaviorsService");
77
82
  Object.defineProperty(exports, "BehaviorsService", { enumerable: true, get: function () { return BehaviorsService_2.BehaviorsService; } });
78
83
  let Singletons = {};
@@ -105,6 +110,7 @@ const services = () => {
105
110
  Tools,
106
111
  knowhowApiClient: new KnowhowClient_1.KnowhowSimpleClient(),
107
112
  Behaviors,
113
+ RuntimeReload: new RuntimeReloadService_1.RuntimeReloadService(),
108
114
  };
109
115
  Singletons.Tools.setContext({
110
116
  Agents,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wCAA+C;AAC/C,iDAA8C;AAC9C,iDAA8C;AAC9C,mCAAuC;AACvC,2DAAwD;AACxD,mDAAsD;AACtD,+BAAmC;AACnC,6BAAiC;AACjC,mCAAuC;AACvC,gDAAqE;AACrE,mDAAgD;AAKhD,mEAAgE;AAChE,yDAAsD;AAEtD,sEAAmE;AAEnE,iDAA+B;AAC/B,iDAA+B;AAC/B,0CAAwB;AACxB,sDAAoC;AACpC,uCAAqB;AACrB,0CAAwB;AACxB,qDAAmC;AACnC,wDAAsC;AACtC,6CAA6B;AAC7B,qDAAmC;AACnC,kDAAgC;AAChC,0DAAwC;AACxC,wDAAsC;AACtC,gDAA8B;AAC9B,mDAAiC;AACjC,iDAA+B;AAC/B,uDAAqC;AACrC,kDAAgC;AAChC,6CAA2B;AAC3B,sCAAqC;AAA5B,kGAAA,OAAO,OAAA;AAChB,+CAA6B;AAC7B,uDAAsD;AAA7C,oHAAA,gBAAgB,OAAA;AAEzB,IAAI,UAAU,GAAG,EAehB,CAAC;AAEK,MAAM,QAAQ,GAAG,GAAsB,EAAE;IAC9C,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,IAAI,oBAAY,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,IAAI,2BAAY,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,IAAI,2BAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC/C,MAAM,cAAc,GAAG,IAAI,6CAAqB,CAAC,iBAAO,CAAC,CAAC;QAC1D,MAAM,SAAS,GAAG,IAAI,mCAAgB,EAAE,CAAC;QACzC,MAAM,UAAU,GAAG,IAAI,qCAAiB,CAAC,iBAAO,EAAE,cAAc,CAAC,CAAC;QAClE,MAAM,OAAO,GAAG,IAAI,0BAAgB,CAAC;YACnC,MAAM;YACN,MAAM;YACN,KAAK;YACL,OAAO,EAAP,iBAAO;SACR,CAAC,CAAC;QAEH,UAAU,GAAG;YACX,MAAM;YACN,KAAK,EAAE,IAAI,cAAS,EAAE;YACtB,OAAO,EAAP,iBAAO;YACP,MAAM,EAAE,IAAI,6BAAa,EAAE;YAC3B,MAAM;YACN,UAAU,EAAE,IAAI,qCAAiB,EAAE;YACnC,KAAK,EAAE,IAAI,oBAAY,EAAE;YACzB,GAAG,EAAE,IAAI,gBAAU,EAAE;YACrB,cAAc;YACd,UAAU;YACV,OAAO;YACP,KAAK;YACL,gBAAgB,EAAE,IAAI,mCAAmB,EAAE;YAC3C,SAAS;SACV,CAAC;QAEF,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC;YAC1B,MAAM;YACN,MAAM;YACN,OAAO;YACP,OAAO,EAAP,iBAAO;YACP,SAAS;SACV,CAAC,CAAC;IACL,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AA1CW,QAAA,QAAQ,YA0CnB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wCAA+C;AAC/C,iDAA8C;AAC9C,iDAA8C;AAC9C,mCAAuC;AACvC,2DAAwD;AACxD,mDAAsD;AACtD,+BAAmC;AACnC,6BAAiC;AACjC,mCAAuC;AACvC,gDAAqE;AACrE,mDAAgD;AAKhD,mEAAgE;AAChE,yDAAsD;AACtD,iEAA8D;AAE9D,sEAAmE;AAGnE,iDAA+B;AAC/B,iDAA+B;AAC/B,0CAAwB;AACxB,sDAAoC;AACpC,uCAAqB;AACrB,0CAAwB;AACxB,qDAAmC;AACnC,wDAAsC;AACtC,6CAA6B;AAC7B,qDAAmC;AACnC,kDAAgC;AAChC,0DAAwC;AACxC,wDAAsC;AACtC,gDAA8B;AAC9B,mDAAiC;AACjC,iDAA+B;AAC/B,uDAAqC;AACrC,kDAAgC;AAChC,6CAA2B;AAC3B,sCAAqC;AAA5B,kGAAA,OAAO,OAAA;AAChB,gDAA8B;AAC9B,mDAAkD;AAAzC,gHAAA,cAAc,OAAA;AAEvB,+CAA6B;AAC7B,yDAAuC;AACvC,uDAAsD;AAA7C,oHAAA,gBAAgB,OAAA;AAEzB,IAAI,UAAU,GAAG,EAgBhB,CAAC;AAEK,MAAM,QAAQ,GAAG,GAAsB,EAAE;IAC9C,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,IAAI,oBAAY,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,IAAI,2BAAY,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,IAAI,2BAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC/C,MAAM,cAAc,GAAG,IAAI,6CAAqB,CAAC,iBAAO,CAAC,CAAC;QAC1D,MAAM,SAAS,GAAG,IAAI,mCAAgB,EAAE,CAAC;QACzC,MAAM,UAAU,GAAG,IAAI,qCAAiB,CAAC,iBAAO,EAAE,cAAc,CAAC,CAAC;QAClE,MAAM,OAAO,GAAG,IAAI,0BAAgB,CAAC;YACnC,MAAM;YACN,MAAM;YACN,KAAK;YACL,OAAO,EAAP,iBAAO;SACR,CAAC,CAAC;QAEH,UAAU,GAAG;YACX,MAAM;YACN,KAAK,EAAE,IAAI,cAAS,EAAE;YACtB,OAAO,EAAP,iBAAO;YACP,MAAM,EAAE,IAAI,6BAAa,EAAE;YAC3B,MAAM;YACN,UAAU,EAAE,IAAI,qCAAiB,EAAE;YACnC,KAAK,EAAE,IAAI,oBAAY,EAAE;YACzB,GAAG,EAAE,IAAI,gBAAU,EAAE;YACrB,cAAc;YACd,UAAU;YACV,OAAO;YACP,KAAK;YACL,gBAAgB,EAAE,IAAI,mCAAmB,EAAE;YAC3C,SAAS;YACT,aAAa,EAAE,IAAI,2CAAoB,EAAE;SAC1C,CAAC;QAEF,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC;YAC1B,MAAM;YACN,MAAM;YACN,OAAO;YACP,OAAO,EAAP,iBAAO;YACP,SAAS;SACV,CAAC,CAAC;IACL,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AA3CW,QAAA,QAAQ,YA2CnB"}
@@ -0,0 +1,163 @@
1
+ export interface Point {
2
+ x: number;
3
+ y: number;
4
+ }
5
+ export interface Size {
6
+ width: number;
7
+ height: number;
8
+ }
9
+ export interface Region extends Point, Size {
10
+ }
11
+ export type MouseButton = "left" | "right" | "middle";
12
+ export interface OverlayPrimitive {
13
+ kind: "rect" | "circle" | "line" | "point";
14
+ x: number;
15
+ y: number;
16
+ width?: number;
17
+ height?: number;
18
+ x2?: number;
19
+ y2?: number;
20
+ color?: string;
21
+ lineWidth?: number;
22
+ }
23
+ export interface Display {
24
+ id: number;
25
+ bounds: Region;
26
+ scaleFactor: number;
27
+ primary: boolean;
28
+ }
29
+ export interface ScreenshotOptions {
30
+ region?: Region;
31
+ displayId?: number;
32
+ format?: "png" | "jpeg";
33
+ scale?: number;
34
+ captureScale?: number;
35
+ }
36
+ export interface DriverCapabilities {
37
+ input: boolean;
38
+ capture: boolean;
39
+ windows: boolean;
40
+ reason?: string;
41
+ }
42
+ export interface AccessibilityElement {
43
+ id: string;
44
+ role: string;
45
+ subrole?: string;
46
+ title?: string;
47
+ description?: string;
48
+ value?: string;
49
+ enabled?: boolean;
50
+ focused?: boolean;
51
+ bounds?: Region;
52
+ actions: string[];
53
+ childCount: number;
54
+ }
55
+ export interface AccessibilityOptions {
56
+ maxDepth?: number;
57
+ maxElements?: number;
58
+ interactiveOnly?: boolean;
59
+ }
60
+ export interface ComputerDriver {
61
+ readonly name: string;
62
+ readonly priority?: number;
63
+ capabilities(): Promise<DriverCapabilities>;
64
+ getDisplays(): Promise<Display[]>;
65
+ screenSize(): Promise<Size>;
66
+ screenshot(opts?: ScreenshotOptions): Promise<Buffer>;
67
+ pixelColor(p: Point): Promise<string>;
68
+ mousePosition(): Promise<Point>;
69
+ moveMouse(p: Point, opts?: {
70
+ duration?: number;
71
+ }): Promise<void>;
72
+ click(button?: MouseButton, opts?: {
73
+ double?: boolean;
74
+ }): Promise<void>;
75
+ mouseDown(button?: MouseButton): Promise<void>;
76
+ mouseUp(button?: MouseButton): Promise<void>;
77
+ drag(from: Point, to: Point, opts?: {
78
+ button?: MouseButton;
79
+ duration?: number;
80
+ }): Promise<void>;
81
+ scroll(dx: number, dy: number): Promise<void>;
82
+ typeText(text: string, opts?: {
83
+ delay?: number;
84
+ }): Promise<void>;
85
+ pressKey(key: string): Promise<void>;
86
+ hotkey(...keys: string[]): Promise<void>;
87
+ keyDown(key: string): Promise<void>;
88
+ keyUp(key: string): Promise<void>;
89
+ getActiveWindow?(): Promise<{
90
+ title: string;
91
+ app?: string;
92
+ bounds?: Region;
93
+ } | null>;
94
+ listWindows?(): Promise<Array<{
95
+ title: string;
96
+ app?: string;
97
+ bounds?: Region;
98
+ }>>;
99
+ focusWindow?(match: string): Promise<boolean>;
100
+ accessibilityTrusted?(): Promise<boolean>;
101
+ accessibilityElements?(options?: AccessibilityOptions): Promise<AccessibilityElement[]>;
102
+ setAccessibilityValue?(id: string, value: string): Promise<void>;
103
+ performAccessibilityAction?(id: string, action: string): Promise<void>;
104
+ showOverlay?(primitives: OverlayPrimitive[]): Promise<void>;
105
+ clearOverlay?(): Promise<void>;
106
+ dispose?(): Promise<void>;
107
+ }
108
+ export interface ComputerUseService {
109
+ registerDriver(driver: ComputerDriver): void;
110
+ listDrivers(): string[];
111
+ getDriver(): Promise<ComputerDriver>;
112
+ capabilities(): Promise<DriverCapabilities>;
113
+ getDisplays(): Promise<Display[]>;
114
+ screenSize(): Promise<Size>;
115
+ screenshot(opts?: ScreenshotOptions): Promise<Buffer>;
116
+ screenshotBase64(opts?: ScreenshotOptions): Promise<string>;
117
+ pixelColor(p: Point): Promise<string>;
118
+ mousePosition(): Promise<Point>;
119
+ moveMouse(p: Point, opts?: {
120
+ duration?: number;
121
+ }): Promise<void>;
122
+ click(button?: MouseButton, opts?: {
123
+ double?: boolean;
124
+ }): Promise<void>;
125
+ drag(from: Point, to: Point, opts?: {
126
+ button?: MouseButton;
127
+ duration?: number;
128
+ }): Promise<void>;
129
+ scroll(dx: number, dy: number): Promise<void>;
130
+ scrollBy?(dx: number, dy: number, opts?: {
131
+ repeat?: number;
132
+ intervalMs?: number;
133
+ }): Promise<void>;
134
+ typeText(text: string, opts?: {
135
+ delay?: number;
136
+ }): Promise<void>;
137
+ pressKey(key: string): Promise<void>;
138
+ hotkey(...keys: string[]): Promise<void>;
139
+ screenshotAnnotated?(opts?: ScreenshotOptions & {
140
+ grid?: boolean;
141
+ gridStep?: number;
142
+ crosshair?: Point;
143
+ }): Promise<Buffer>;
144
+ getActiveWindow(): Promise<{
145
+ title: string;
146
+ app?: string;
147
+ bounds?: Region;
148
+ } | null>;
149
+ listWindows(): Promise<Array<{
150
+ title: string;
151
+ app?: string;
152
+ bounds?: Region;
153
+ }>>;
154
+ focusWindow(match: string): Promise<boolean>;
155
+ accessibilityTrusted(): Promise<boolean>;
156
+ accessibilityElements(options?: AccessibilityOptions): Promise<AccessibilityElement[]>;
157
+ selectAccessibilityOption(id: string, option: string): Promise<void>;
158
+ setAccessibilityValue(id: string, value: string): Promise<void>;
159
+ performAccessibilityAction(id: string, action: string): Promise<void>;
160
+ showOverlay(primitives: OverlayPrimitive[]): Promise<void>;
161
+ clearOverlay(): Promise<void>;
162
+ dispose(): Promise<void>;
163
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=computerUse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"computerUse.js","sourceRoot":"","sources":["../../../../src/services/modules/computerUse.ts"],"names":[],"mappings":""}
@@ -1,5 +1,6 @@
1
1
  import { ModuleContext } from "./types";
2
2
  export declare class ModulesService {
3
+ private _loadedModules;
3
4
  getDefaultContext(): Promise<{
4
5
  Tools: import("../Tools").ToolsService;
5
6
  Events: import("../EventService").EventService;
@@ -15,6 +16,7 @@ export declare class ModulesService {
15
16
  MediaProcessor: import("../MediaProcessorService").MediaProcessorService;
16
17
  Conversion: import("../").ConversionService;
17
18
  Behaviors: import("../BehaviorsService").BehaviorsService;
19
+ RuntimeReload: import("../RuntimeReloadService").RuntimeReloadService;
18
20
  }>;
19
21
  overrideDefaultContext(overrides: Partial<ModuleContext>): Promise<{
20
22
  Agents: import("../AgentService").AgentService;
@@ -28,14 +30,18 @@ export declare class ModulesService {
28
30
  Tunnel?: import("@tyvm/knowhow-tunnel").TunnelHandler;
29
31
  Program?: import("node_modules/commander/typings").Command;
30
32
  Behaviors: import("../BehaviorsService").BehaviorsService;
33
+ ComputerUse?: import("./computerUse").ComputerUseService;
34
+ Tracing?: typeof import("../TracingService").TracingService;
31
35
  Flags: import("../flags").FlagsService;
32
36
  Mcp: import("../Mcp").McpService;
33
37
  AwsS3: import("../S3").S3Service;
34
38
  Docker: import("../DockerService").DockerService;
35
39
  knowhowApiClient: import("../KnowhowClient").KnowhowSimpleClient;
40
+ RuntimeReload: import("../RuntimeReloadService").RuntimeReloadService;
36
41
  }>;
37
42
  loadModulesFrom(config: {
38
43
  modules: string[];
39
44
  } & any, context?: Partial<ModuleContext>, resolvePaths?: string[]): Promise<void>;
45
+ destroyModules(): Promise<void>;
40
46
  loadModulesFromConfig(context?: ModuleContext): Promise<void>;
41
47
  }
@@ -55,6 +55,7 @@ function globalResolvePaths() {
55
55
  ];
56
56
  }
57
57
  class ModulesService {
58
+ _loadedModules = [];
58
59
  async getDefaultContext() {
59
60
  return { ...(0, __1.services)() };
60
61
  }
@@ -72,6 +73,7 @@ class ModulesService {
72
73
  globalPaths.unshift(globalKnowhowNodeModules);
73
74
  }
74
75
  const allModulePaths = config.modules;
76
+ const loadedModules = [];
75
77
  for (const modulePath of allModulePaths) {
76
78
  const candidates = [];
77
79
  if (modulePath.startsWith(".")) {
@@ -101,18 +103,21 @@ class ModulesService {
101
103
  }
102
104
  let importedModule;
103
105
  let loaded = false;
106
+ let selectedResolvedPath = modulePath;
104
107
  const errors = [];
105
108
  for (const resolvedPath of candidates) {
106
109
  try {
107
110
  const rawModule = require(resolvedPath);
108
111
  importedModule = (rawModule.default || rawModule);
109
112
  context.Events?.log("ModulesService", `🔌 Loading module: ${modulePath} (resolved: ${resolvedPath})`);
110
- await importedModule.init({
111
- config,
112
- cwd: process.cwd(),
113
- context: context,
114
- });
115
- context.Events?.log("ModulesService", `✅ Module initialized: ${modulePath} (tools: ${importedModule.tools.length}, agents: ${importedModule.agents.length}, plugins: ${importedModule.plugins.length}, clients: ${importedModule.clients.length})`);
113
+ if (typeof importedModule.register === "function") {
114
+ await importedModule.register({
115
+ config,
116
+ cwd: process.cwd(),
117
+ context: context,
118
+ });
119
+ }
120
+ selectedResolvedPath = resolvedPath;
116
121
  loaded = true;
117
122
  break;
118
123
  }
@@ -130,6 +135,27 @@ class ModulesService {
130
135
  ` Run "knowhow modules setup --global" or "knowhow modules install ${modulePath} --global" to fix this.\n\n`);
131
136
  continue;
132
137
  }
138
+ loadedModules.push({
139
+ modulePath,
140
+ resolvedPath: selectedResolvedPath,
141
+ module: importedModule,
142
+ });
143
+ }
144
+ for (const { modulePath, resolvedPath, module: importedModule } of loadedModules) {
145
+ const initParams = { config, cwd: process.cwd(), context: context };
146
+ try {
147
+ await importedModule.init({
148
+ config,
149
+ cwd: process.cwd(),
150
+ context: context,
151
+ });
152
+ context.Events?.log("ModulesService", `✅ Module initialized: ${modulePath} (tools: ${importedModule.tools.length}, agents: ${importedModule.agents.length}, plugins: ${importedModule.plugins.length}, clients: ${importedModule.clients.length})`);
153
+ }
154
+ catch (err) {
155
+ process.stderr.write(`\n⚠️ Failed to init module "${modulePath}": ${err?.message || err}\n\n`);
156
+ continue;
157
+ }
158
+ this._loadedModules.push({ modulePath, resolvedPath, module: importedModule, params: initParams });
133
159
  if (context.Agents) {
134
160
  for (const agent of importedModule.agents) {
135
161
  context.Agents.registerAgent(agent);
@@ -154,6 +180,23 @@ class ModulesService {
154
180
  }
155
181
  }
156
182
  }
183
+ async destroyModules() {
184
+ const toDestroy = [...this._loadedModules].reverse();
185
+ this._loadedModules = [];
186
+ for (const { modulePath, resolvedPath, module: mod, params } of toDestroy) {
187
+ if (typeof mod.destroy === "function") {
188
+ try {
189
+ await mod.destroy(params);
190
+ }
191
+ catch (err) {
192
+ process.stderr.write(`\n⚠️ Error in module destroy "${modulePath}": ${err?.message || err}\n\n`);
193
+ }
194
+ }
195
+ if (require.cache[resolvedPath]) {
196
+ delete require.cache[resolvedPath];
197
+ }
198
+ }
199
+ }
157
200
  async loadModulesFromConfig(context) {
158
201
  const config = await (0, config_1.getConfig)();
159
202
  const globalConfig = await (0, config_1.getGlobalConfig)();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/modules/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA6B;AAC7B,uCAAyB;AACzB,+CAAiC;AAEjC,yCAA0D;AAE1D,2BAA+B;AAC/B,uCAA4C;AAiB5C,SAAS,iBAAiB;IACxB,OAAO;QACL,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,cAAc,CAAC;QACpD,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,cAAc,CAAC;QACnD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC;KACzC,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB;IACzB,OAAO;QACL,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,cAAc,CAAC;QACnD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,cAAc,CAAC;QACpD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC;KACzC,CAAC;AACJ,CAAC;AAED,MAAa,cAAc;IACzB,KAAK,CAAC,iBAAiB;QACrB,OAAO,EAAE,GAAG,IAAA,YAAQ,GAAE,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,SAAiC;QAC5D,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACtD,OAAO,EAAE,GAAG,cAAc,EAAE,GAAG,SAAS,EAAE,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,MAAmC,EACnC,OAAgC,EAChC,eAAyB,iBAAiB,EAAE;QAG5C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,GAAG,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,EAAE,CAAC;QACpD,CAAC;QAMD,MAAM,wBAAwB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,0BAA0B,CAAC,CAAC;QAClF,MAAM,WAAW,GAAI,MAAc,CAAC,WAAuB,CAAC;QAC5D,IAAI,WAAW,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAAC;YACnE,WAAW,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QAChD,CAAC;QAED,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC;QAOtC,KAAK,MAAM,UAAU,IAAI,cAAc,EAAE,CAAC;YAMxC,MAAM,UAAU,GAAa,EAAE,CAAC;YAChC,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC/B,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC;YAC3D,CAAC;iBAAM,CAAC;gBAGN,KAAK,MAAM,UAAU,IAAI,YAAY,EAAE,CAAC;oBACtC,IAAI,CAAC;wBACH,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE;4BAC3C,KAAK,EAAE,CAAC,UAAU,CAAC;yBACpB,CAAC,CAAC;wBACH,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC;4BAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAChE,CAAC;oBAAC,MAAM,CAAC;oBAET,CAAC;gBACH,CAAC;gBAED,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;oBAC7C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC;wBAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAChE,CAAC;gBAAC,MAAM,CAAC;gBAET,CAAC;gBACD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;oBAAE,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC3D,CAAC;YAMD,IAAI,cAA6B,CAAC;YAClC,IAAI,MAAM,GAAG,KAAK,CAAC;YACnB,MAAM,MAAM,GAA0C,EAAE,CAAC;YACzD,KAAK,MAAM,YAAY,IAAI,UAAU,EAAE,CAAC;gBACtC,IAAI,CAAC;oBACH,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;oBACxC,cAAc,GAAG,CAAC,SAAS,CAAC,OAAO,IAAI,SAAS,CAAkB,CAAC;oBACnE,OAAO,CAAC,MAAM,EAAE,GAAG,CACjB,gBAAgB,EAChB,sBAAsB,UAAU,eAAe,YAAY,GAAG,CAC/D,CAAC;oBACF,MAAM,cAAc,CAAC,IAAI,CAAC;wBACxB,MAAM;wBACN,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;wBAClB,OAAO,EAAE,OAAwB;qBAClC,CAAC,CAAC;oBACH,OAAO,CAAC,MAAM,EAAE,GAAG,CACjB,gBAAgB,EAChB,yBAAyB,UAAU,YAAY,cAAc,CAAC,KAAK,CAAC,MAAM,aAAa,cAAc,CAAC,MAAM,CAAC,MAAM,cAAc,cAAc,CAAC,OAAO,CAAC,MAAM,cAAc,cAAc,CAAC,OAAO,CAAC,MAAM,GAAG,CAC7M,CAAC;oBACF,MAAM,GAAG,IAAI,CAAC;oBACd,MAAM;gBACR,CAAC;gBAAC,OAAO,GAAQ,EAAE,CAAC;oBAClB,MAAM,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;gBAEvD,CAAC;YACH,CAAC;YAED,IAAI,CAAC,MAAM,EAAE,CAAC;gBAEZ,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBACvC,MAAM,MAAM,GAAG,IAAI;oBACjB,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;oBACzB,CAAC,CAAC,4BAA4B,CAAC;gBACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,gCAAgC,UAAU,MAAM,MAAM,IAAI;oBAC1D,aAAa,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,IAAI;oBAClD,uEAAuE,UAAU,6BAA6B,CAC/G,CAAC;gBACF,SAAS;YACX,CAAC;YAGD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,KAAK,MAAM,KAAK,IAAI,cAAc,CAAC,MAAM,EAAE,CAAC;oBAC1C,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;YAED,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;gBAClB,KAAK,MAAM,IAAI,IAAI,cAAc,CAAC,KAAK,EAAE,CAAC;oBACxC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBACvC,OAAO,CAAC,KAAK,CAAC,WAAW,CACvB,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAC7B,IAAI,CAAC,OAAO,CACb,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,KAAK,MAAM,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;oBAC5C,OAAO,CAAC,OAAO,CAAC,cAAc,CAC5B,MAAM,CAAC,IAAI,EACX,IAAI,MAAM,CAAC,MAAM,CAAC,OAAc,CAAC,CAClC,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,KAAK,MAAM,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;oBAC5C,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;oBAC/D,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;gBACjE,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,OAAuB;QACjD,MAAM,MAAM,GAAG,MAAM,IAAA,kBAAS,GAAE,CAAC;QAEjC,MAAM,YAAY,GAAG,MAAM,IAAA,wBAAe,GAAE,CAAC;QAE7C,MAAM,aAAa,GAAG,IAAA,qBAAa,EAAC,YAAY,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QAIhE,MAAM,YAAY,GAAG,IAAA,qBAAa,EAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CAC7D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAClC,CAAC;QAIF,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,CAAC,eAAe,CACxB,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,EACrC,OAAO,EACP,kBAAkB,EAAE,CACrB,CAAC;QACJ,CAAC;QAID,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,CAAC,eAAe,CACxB,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,EACpC,OAAO,EACP,iBAAiB,EAAE,CACpB,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AAvLD,wCAuLC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/modules/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA6B;AAC7B,uCAAyB;AACzB,+CAAiC;AAEjC,yCAA0D;AAE1D,2BAA+B;AAC/B,uCAA4C;AAiB5C,SAAS,iBAAiB;IACxB,OAAO;QACL,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,cAAc,CAAC;QACpD,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,cAAc,CAAC;QACnD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC;KACzC,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB;IACzB,OAAO;QACL,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,cAAc,CAAC;QACnD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,cAAc,CAAC;QACpD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC;KACzC,CAAC;AACJ,CAAC;AAED,MAAa,cAAc;IACjB,cAAc,GAKhB,EAAE,CAAC;IAET,KAAK,CAAC,iBAAiB;QACrB,OAAO,EAAE,GAAG,IAAA,YAAQ,GAAE,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,SAAiC;QAC5D,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACtD,OAAO,EAAE,GAAG,cAAc,EAAE,GAAG,SAAS,EAAE,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,MAAmC,EACnC,OAAgC,EAChC,eAAyB,iBAAiB,EAAE;QAG5C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,GAAG,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,EAAE,CAAC;QACpD,CAAC;QAMD,MAAM,wBAAwB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,0BAA0B,CAAC,CAAC;QAClF,MAAM,WAAW,GAAI,MAAc,CAAC,WAAuB,CAAC;QAC5D,IAAI,WAAW,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAAC;YACnE,WAAW,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QAChD,CAAC;QAED,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC;QAiBtC,MAAM,aAAa,GAIb,EAAE,CAAC;QAET,KAAK,MAAM,UAAU,IAAI,cAAc,EAAE,CAAC;YAMxC,MAAM,UAAU,GAAa,EAAE,CAAC;YAChC,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC/B,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC;YAC3D,CAAC;iBAAM,CAAC;gBAGN,KAAK,MAAM,UAAU,IAAI,YAAY,EAAE,CAAC;oBACtC,IAAI,CAAC;wBACH,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE;4BAC3C,KAAK,EAAE,CAAC,UAAU,CAAC;yBACpB,CAAC,CAAC;wBACH,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC;4BAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAChE,CAAC;oBAAC,MAAM,CAAC;oBAET,CAAC;gBACH,CAAC;gBAED,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;oBAC7C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC;wBAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAChE,CAAC;gBAAC,MAAM,CAAC;gBAET,CAAC;gBACD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;oBAAE,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC3D,CAAC;YAMD,IAAI,cAA6B,CAAC;YAClC,IAAI,MAAM,GAAG,KAAK,CAAC;YACnB,IAAI,oBAAoB,GAAG,UAAU,CAAC;YACtC,MAAM,MAAM,GAA0C,EAAE,CAAC;YACzD,KAAK,MAAM,YAAY,IAAI,UAAU,EAAE,CAAC;gBACtC,IAAI,CAAC;oBACH,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;oBACxC,cAAc,GAAG,CAAC,SAAS,CAAC,OAAO,IAAI,SAAS,CAAkB,CAAC;oBACnE,OAAO,CAAC,MAAM,EAAE,GAAG,CACjB,gBAAgB,EAChB,sBAAsB,UAAU,eAAe,YAAY,GAAG,CAC/D,CAAC;oBAIF,IAAI,OAAO,cAAc,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;wBAClD,MAAM,cAAc,CAAC,QAAQ,CAAC;4BAC5B,MAAM;4BACN,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;4BAClB,OAAO,EAAE,OAAwB;yBAClC,CAAC,CAAC;oBACL,CAAC;oBACD,oBAAoB,GAAG,YAAY,CAAC;oBACpC,MAAM,GAAG,IAAI,CAAC;oBACd,MAAM;gBACR,CAAC;gBAAC,OAAO,GAAQ,EAAE,CAAC;oBAClB,MAAM,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;gBAEvD,CAAC;YACH,CAAC;YAED,IAAI,CAAC,MAAM,EAAE,CAAC;gBAEZ,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBACvC,MAAM,MAAM,GAAG,IAAI;oBACjB,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;oBACzB,CAAC,CAAC,4BAA4B,CAAC;gBACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,gCAAgC,UAAU,MAAM,MAAM,IAAI;oBAC1D,aAAa,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,IAAI;oBAClD,uEAAuE,UAAU,6BAA6B,CAC/G,CAAC;gBACF,SAAS;YACX,CAAC;YACD,aAAa,CAAC,IAAI,CAAC;gBACjB,UAAU;gBACV,YAAY,EAAE,oBAAoB;gBAClC,MAAM,EAAE,cAAc;aACvB,CAAC,CAAC;QACL,CAAC;QAID,KAAK,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,aAAa,EAAE,CAAC;YACjF,MAAM,UAAU,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,OAAwB,EAAE,CAAC;YACrF,IAAI,CAAC;gBACH,MAAM,cAAc,CAAC,IAAI,CAAC;oBACxB,MAAM;oBACN,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;oBAClB,OAAO,EAAE,OAAwB;iBAClC,CAAC,CAAC;gBACH,OAAO,CAAC,MAAM,EAAE,GAAG,CACjB,gBAAgB,EAChB,yBAAyB,UAAU,YAAY,cAAc,CAAC,KAAK,CAAC,MAAM,aAAa,cAAc,CAAC,MAAM,CAAC,MAAM,cAAc,cAAc,CAAC,OAAO,CAAC,MAAM,cAAc,cAAc,CAAC,OAAO,CAAC,MAAM,GAAG,CAC7M,CAAC;YACJ,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,gCAAgC,UAAU,MAAM,GAAG,EAAE,OAAO,IAAI,GAAG,MAAM,CAC1E,CAAC;gBACF,SAAS;YACX,CAAC;YACD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;YAInG,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,KAAK,MAAM,KAAK,IAAI,cAAc,CAAC,MAAM,EAAE,CAAC;oBAC1C,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;YAED,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;gBAClB,KAAK,MAAM,IAAI,IAAI,cAAc,CAAC,KAAK,EAAE,CAAC;oBACxC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBACvC,OAAO,CAAC,KAAK,CAAC,WAAW,CACvB,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAC7B,IAAI,CAAC,OAAO,CACb,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,KAAK,MAAM,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;oBAC5C,OAAO,CAAC,OAAO,CAAC,cAAc,CAC5B,MAAM,CAAC,IAAI,EACX,IAAI,MAAM,CAAC,MAAM,CAAC,OAAc,CAAC,CAClC,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,KAAK,MAAM,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;oBAC5C,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;oBAC/D,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;gBACjE,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAOD,KAAK,CAAC,cAAc;QAClB,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,CAAC;QAErD,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QACzB,KAAK,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;YAC1E,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;gBACtC,IAAI,CAAC;oBACH,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC5B,CAAC;gBAAC,OAAO,GAAQ,EAAE,CAAC;oBAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,kCAAkC,UAAU,MAAM,GAAG,EAAE,OAAO,IAAI,GAAG,MAAM,CAC5E,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,IAAI,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;gBAChC,OAAO,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,OAAuB;QACjD,MAAM,MAAM,GAAG,MAAM,IAAA,kBAAS,GAAE,CAAC;QAEjC,MAAM,YAAY,GAAG,MAAM,IAAA,wBAAe,GAAE,CAAC;QAE7C,MAAM,aAAa,GAAG,IAAA,qBAAa,EAAC,YAAY,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QAIhE,MAAM,YAAY,GAAG,IAAA,qBAAa,EAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CAC7D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAClC,CAAC;QAIF,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,CAAC,eAAe,CACxB,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,EACrC,OAAO,EACP,kBAAkB,EAAE,CACrB,CAAC;QACJ,CAAC;QAID,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,CAAC,eAAe,CACxB,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,EACpC,OAAO,EACP,iBAAiB,EAAE,CACpB,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AAxQD,wCAwQC"}
@@ -14,6 +14,8 @@ import { TunnelHandler } from "@tyvm/knowhow-tunnel";
14
14
  import { EventService } from "../EventService";
15
15
  import { ConversionService } from "../conversion/ConversionService";
16
16
  import { BehaviorsService } from "../BehaviorsService";
17
+ import { ComputerUseService } from "./computerUse";
18
+ import { TracingService as TracingServiceType } from "../TracingService";
17
19
  export interface ModuleChatCommand {
18
20
  name: string;
19
21
  description: string;
@@ -52,9 +54,14 @@ export interface ModuleContext {
52
54
  Tunnel?: TunnelHandler;
53
55
  Program?: Command;
54
56
  Behaviors?: BehaviorsService;
57
+ ComputerUse?: ComputerUseService;
58
+ [key: string]: any;
59
+ Tracing?: typeof TracingServiceType;
55
60
  }
56
61
  export interface KnowhowModule {
62
+ register?: (params: InitParams) => Promise<void>;
57
63
  init: (params: InitParams) => Promise<void>;
64
+ destroy?: (params: InitParams) => Promise<void>;
58
65
  commands: ModuleChatCommand[];
59
66
  tools: ModuleTool[];
60
67
  agents: ModuleAgent[];
@@ -57,6 +57,9 @@ export type Config = {
57
57
  chat?: {
58
58
  rootModule?: string;
59
59
  renderer?: string;
60
+ defaultAgent?: string;
61
+ defaultModel?: string;
62
+ defaultProvider?: string;
60
63
  modules?: string[];
61
64
  };
62
65
  modules: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;AA2PA,8CAGC;AAED,gDAGC;AAlDD,2DAAmF;AAsCjF,oGAtCwB,+BAAmB,OAsCxB;AArCrB,qDAKkC;AA0BhC,sGA7BA,8BAAqB,OA6BA;AAAE,iGA7BA,yBAAgB,OA6BA;AAAE,0GA7BA,kCAAyB,OA6BA;AAClE,0GA7BA,kCAAyB,OA6BA;AAAE,kGA7BA,0BAAiB,OA6BA;AAAE,kGA7BA,0BAAiB,OA6BA;AAC/D,gGA7BA,wBAAe,OA6BA;AAAE,0GA7BA,kCAAyB,OA6BA;AAAE,qGA7BA,6BAAoB,OA6BA;AA3BlE,qDAIkC;AAwBZ,sGA1BpB,yBAAgB,OA0ByB;AACzC,kGA3BkB,0BAAiB,OA2BlB;AAAE,kGA3BkB,0BAAiB,OA2BlB;AAAE,gGA1BtC,wBAAe,OA0BsC;AAAE,0GA1BtC,kCAAyB,OA0BsC;AAChF,0GA3B4C,kCAAyB,OA2B5C;AAAE,2GA3B4C,mCAA0B,OA2B5C;AAzBvD,+CAE+B;AAyB7B,8FA1BW,mBAAa,OA0BX;AAAE,+FA1BW,oBAAc,OA0BX;AAAE,+FA1BW,oBAAc,OA0BX;AAAE,uGA1BW,4BAAsB,OA0BX;AAAE,mGA1BW,wBAAkB,OA0BX;AAxB3F,2DAA8D;AAEjD,QAAA,MAAM,GAAG;IACpB,SAAS,EAAE,2BAAe;IAC1B,GAAG,EAAE,eAAS;IACd,MAAM,EAAE,qBAAY;IACpB,MAAM,EAAE,qBAAY;IACpB,SAAS,EAAE,2BAAe;CAC3B,CAAC;AAEW,QAAA,eAAe,GAAG;IAC7B,MAAM,EAAE,8BAAqB;IAC7B,MAAM,EAAE,8BAAqB;CAC9B,CAAC;AAcF,SAAgB,iBAAiB,CAAC,OAAsC;IACtE,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IACxB,OAAO,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;AAC/B,CAAC;AAED,SAAgB,kBAAkB,CAAC,OAAsC;IACvE,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IACxB,OAAO,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;AAChC,CAAC;AAEY,QAAA,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,cAAM,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAC/D,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;IACf,OAAO,GAAG,CAAC;AACb,CAAC,EAAE,EAAE,CAA0D,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;AA8PA,8CAGC;AAED,gDAGC;AAlDD,2DAAmF;AAsCjF,oGAtCwB,+BAAmB,OAsCxB;AArCrB,qDAKkC;AA0BhC,sGA7BA,8BAAqB,OA6BA;AAAE,iGA7BA,yBAAgB,OA6BA;AAAE,0GA7BA,kCAAyB,OA6BA;AAClE,0GA7BA,kCAAyB,OA6BA;AAAE,kGA7BA,0BAAiB,OA6BA;AAAE,kGA7BA,0BAAiB,OA6BA;AAC/D,gGA7BA,wBAAe,OA6BA;AAAE,0GA7BA,kCAAyB,OA6BA;AAAE,qGA7BA,6BAAoB,OA6BA;AA3BlE,qDAIkC;AAwBZ,sGA1BpB,yBAAgB,OA0ByB;AACzC,kGA3BkB,0BAAiB,OA2BlB;AAAE,kGA3BkB,0BAAiB,OA2BlB;AAAE,gGA1BtC,wBAAe,OA0BsC;AAAE,0GA1BtC,kCAAyB,OA0BsC;AAChF,0GA3B4C,kCAAyB,OA2B5C;AAAE,2GA3B4C,mCAA0B,OA2B5C;AAzBvD,+CAE+B;AAyB7B,8FA1BW,mBAAa,OA0BX;AAAE,+FA1BW,oBAAc,OA0BX;AAAE,+FA1BW,oBAAc,OA0BX;AAAE,uGA1BW,4BAAsB,OA0BX;AAAE,mGA1BW,wBAAkB,OA0BX;AAxB3F,2DAA8D;AAEjD,QAAA,MAAM,GAAG;IACpB,SAAS,EAAE,2BAAe;IAC1B,GAAG,EAAE,eAAS;IACd,MAAM,EAAE,qBAAY;IACpB,MAAM,EAAE,qBAAY;IACpB,SAAS,EAAE,2BAAe;CAC3B,CAAC;AAEW,QAAA,eAAe,GAAG;IAC7B,MAAM,EAAE,8BAAqB;IAC7B,MAAM,EAAE,8BAAqB;CAC9B,CAAC;AAcF,SAAgB,iBAAiB,CAAC,OAAsC;IACtE,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IACxB,OAAO,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;AAC/B,CAAC;AAED,SAAgB,kBAAkB,CAAC,OAAsC;IACvE,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IACxB,OAAO,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;AAChC,CAAC;AAEY,QAAA,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,cAAM,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAC/D,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;IACf,OAAO,GAAG,CAAC;AACb,CAAC,EAAE,EAAE,CAA0D,CAAC"}
@@ -0,0 +1,13 @@
1
+ export interface TraceOptions {
2
+ spanName?: string;
3
+ attributes?: Record<string, string | number | boolean>;
4
+ }
5
+ export declare function Trace(options?: TraceOptions): (target: object, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
6
+ export interface TraceAllOptions {
7
+ attributes?: Record<string, string | number | boolean>;
8
+ skip?: string[];
9
+ }
10
+ export declare function TraceAll(options?: TraceAllOptions): <T extends {
11
+ new (...args: unknown[]): object;
12
+ }>(constructor: T) => T;
13
+ export declare function tracify<T extends object>(instance: T, namespace: string, options?: TraceAllOptions): T;