@tyvm/knowhow 0.0.145 → 0.0.147

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 (320) hide show
  1. package/autodoc/cli-reference.md +36 -7
  2. package/bin/knowhow.js +8 -6
  3. package/package.json +1 -1
  4. package/src/agents/base/base.ts +24 -0
  5. package/src/agents/historyRollback.ts +36 -0
  6. package/src/agents/tools/startAgentTask.ts +41 -9
  7. package/src/auth/browserLogin.ts +9 -3
  8. package/src/auth/keyAuth.ts +115 -0
  9. package/src/auth/keyManager.ts +166 -0
  10. package/src/chat/CliChatService.ts +16 -0
  11. package/src/chat/modules/AgentModule.ts +144 -56
  12. package/src/chat/modules/AskModule.ts +2 -0
  13. package/src/chat/modules/BaseChatModule.ts +0 -1
  14. package/src/chat/modules/CustomCommandsModule.ts +2 -0
  15. package/src/chat/modules/InternalChatModule.ts +2 -0
  16. package/src/chat/modules/RemoteSyncModule.ts +4 -0
  17. package/src/chat/modules/RendererModule.ts +2 -0
  18. package/src/chat/modules/SearchModule.ts +2 -0
  19. package/src/chat/modules/SessionsModule.ts +110 -39
  20. package/src/chat/modules/SetupModule.ts +2 -0
  21. package/src/chat/modules/ShellCommandModule.ts +2 -0
  22. package/src/chat/modules/SystemModule.ts +2 -0
  23. package/src/chat/types.ts +5 -2
  24. package/src/cli.ts +1 -1
  25. package/src/clients/anthropic.ts +24 -0
  26. package/src/clients/fireworks.ts +3 -0
  27. package/src/clients/gemini.ts +8 -0
  28. package/src/clients/index.ts +2 -0
  29. package/src/clients/openai.ts +7 -4
  30. package/src/clients/types.ts +30 -7
  31. package/src/clients/xai.ts +23 -4
  32. package/src/commands/agent.ts +11 -39
  33. package/src/commands/agents.ts +403 -53
  34. package/src/commands/misc.ts +3 -2
  35. package/src/commands/services.ts +49 -3
  36. package/src/login.ts +89 -28
  37. package/src/plugins/plugins.ts +16 -0
  38. package/src/processors/TokenCompressor.ts +40 -8
  39. package/src/processors/ToolResponseCache.ts +17 -8
  40. package/src/processors/tools/boundedToolResponse.ts +49 -0
  41. package/src/processors/tools/grepToolResponse.ts +164 -38
  42. package/src/processors/tools/index.ts +2 -0
  43. package/src/processors/tools/jqToolResponse.ts +40 -10
  44. package/src/processors/tools/listStoredToolResponses.ts +51 -10
  45. package/src/processors/tools/tailToolResponse.ts +85 -17
  46. package/src/services/AgentService.ts +2 -0
  47. package/src/services/AgentSyncFs.ts +65 -0
  48. package/src/services/AgentSyncKnowhowWeb.ts +22 -4
  49. package/src/services/BehaviorsService.ts +2 -0
  50. package/src/services/DockerService.ts +2 -0
  51. package/src/services/EmbeddingService.ts +2 -0
  52. package/src/services/EmbeddingsService.ts +3 -0
  53. package/src/services/KnowhowClient.ts +68 -7
  54. package/src/services/LazyToolsService.ts +16 -0
  55. package/src/services/Mcp.ts +11 -2
  56. package/src/services/McpServer.ts +2 -0
  57. package/src/services/MessageProcessor.ts +2 -0
  58. package/src/services/MinimalToolsService.ts +2 -0
  59. package/src/services/RuntimeReloadService.ts +31 -0
  60. package/src/services/SessionManager.ts +5 -0
  61. package/src/services/SkillsService.ts +2 -0
  62. package/src/services/SyncedAgentWatcher.ts +2 -0
  63. package/src/services/SyncerService.ts +23 -8
  64. package/src/services/TaskRegistry.ts +2 -0
  65. package/src/services/Tools.ts +13 -0
  66. package/src/services/TracingService.ts +116 -0
  67. package/src/services/index.ts +10 -0
  68. package/src/services/modules/index.ts +49 -3
  69. package/src/services/modules/types.ts +8 -0
  70. package/src/types.ts +2 -0
  71. package/src/util/Trace.ts +236 -0
  72. package/src/utils/http.ts +18 -2
  73. package/tests/clients/fireworks.test.ts +65 -0
  74. package/tests/clients/reasoningEffort.test.ts +79 -0
  75. package/tests/compressor/toolResponseCache.test.ts +2 -1
  76. package/tests/manual/clients/completions.test.ts +27 -10
  77. package/tests/processors/TokenCompressor.test.ts +17 -3
  78. package/tests/processors/tools/boundedRetrievalTools.test.ts +68 -0
  79. package/tests/processors/tools/grepToolResponse.test.ts +88 -1
  80. package/tests/unit/agents/historyRollback.test.ts +53 -0
  81. package/tests/unit/auth/keyAuth.test.ts +102 -0
  82. package/tests/unit/auth/keyManager.test.ts +67 -0
  83. package/tests/unit/chat/historyCommandArgs.test.ts +37 -0
  84. package/tests/unit/commands/agents.test.ts +68 -0
  85. package/tests/unit/login.test.ts +119 -0
  86. package/tests/unit/plugins/pluginLoading.test.ts +31 -0
  87. package/tests/unit/services/AgentSyncKnowhowWeb.test.ts +38 -0
  88. package/tests/unit/services/LazyToolsService.test.ts +29 -0
  89. package/tests/unit/services/RuntimeReloadService.test.ts +29 -0
  90. package/tests/unit/services/SessionManager.test.ts +43 -0
  91. package/tests/unit/services/SyncerService.test.ts +45 -0
  92. package/tests/unit/util/Trace.test.ts +119 -0
  93. package/tests/unit/utils/http.test.ts +43 -0
  94. package/ts_build/package.json +1 -1
  95. package/ts_build/src/agents/base/base.d.ts +1 -0
  96. package/ts_build/src/agents/base/base.js +31 -2
  97. package/ts_build/src/agents/base/base.js.map +1 -1
  98. package/ts_build/src/agents/historyRollback.d.ts +2 -0
  99. package/ts_build/src/agents/historyRollback.js +22 -0
  100. package/ts_build/src/agents/historyRollback.js.map +1 -0
  101. package/ts_build/src/agents/tools/startAgentTask.d.ts +2 -0
  102. package/ts_build/src/agents/tools/startAgentTask.js +36 -9
  103. package/ts_build/src/agents/tools/startAgentTask.js.map +1 -1
  104. package/ts_build/src/auth/browserLogin.d.ts +1 -0
  105. package/ts_build/src/auth/browserLogin.js +5 -2
  106. package/ts_build/src/auth/browserLogin.js.map +1 -1
  107. package/ts_build/src/auth/keyAuth.d.ts +5 -0
  108. package/ts_build/src/auth/keyAuth.js +79 -0
  109. package/ts_build/src/auth/keyAuth.js.map +1 -0
  110. package/ts_build/src/auth/keyManager.d.ts +14 -0
  111. package/ts_build/src/auth/keyManager.js +145 -0
  112. package/ts_build/src/auth/keyManager.js.map +1 -0
  113. package/ts_build/src/chat/CliChatService.js +15 -0
  114. package/ts_build/src/chat/CliChatService.js.map +1 -1
  115. package/ts_build/src/chat/modules/AgentModule.d.ts +13 -1
  116. package/ts_build/src/chat/modules/AgentModule.js +96 -43
  117. package/ts_build/src/chat/modules/AgentModule.js.map +1 -1
  118. package/ts_build/src/chat/modules/AskModule.js +12 -2
  119. package/ts_build/src/chat/modules/AskModule.js.map +1 -1
  120. package/ts_build/src/chat/modules/BaseChatModule.js.map +1 -1
  121. package/ts_build/src/chat/modules/CustomCommandsModule.js +12 -2
  122. package/ts_build/src/chat/modules/CustomCommandsModule.js.map +1 -1
  123. package/ts_build/src/chat/modules/InternalChatModule.js +16 -2
  124. package/ts_build/src/chat/modules/InternalChatModule.js.map +1 -1
  125. package/ts_build/src/chat/modules/RemoteSyncModule.js +19 -2
  126. package/ts_build/src/chat/modules/RemoteSyncModule.js.map +1 -1
  127. package/ts_build/src/chat/modules/RendererModule.js +17 -2
  128. package/ts_build/src/chat/modules/RendererModule.js.map +1 -1
  129. package/ts_build/src/chat/modules/SearchModule.js +12 -2
  130. package/ts_build/src/chat/modules/SearchModule.js.map +1 -1
  131. package/ts_build/src/chat/modules/SessionsModule.d.ts +6 -0
  132. package/ts_build/src/chat/modules/SessionsModule.js +114 -24
  133. package/ts_build/src/chat/modules/SessionsModule.js.map +1 -1
  134. package/ts_build/src/chat/modules/SetupModule.js +17 -2
  135. package/ts_build/src/chat/modules/SetupModule.js.map +1 -1
  136. package/ts_build/src/chat/modules/ShellCommandModule.js +12 -2
  137. package/ts_build/src/chat/modules/ShellCommandModule.js.map +1 -1
  138. package/ts_build/src/chat/modules/SystemModule.js +12 -2
  139. package/ts_build/src/chat/modules/SystemModule.js.map +1 -1
  140. package/ts_build/src/chat/types.d.ts +5 -2
  141. package/ts_build/src/cli.js +1 -1
  142. package/ts_build/src/cli.js.map +1 -1
  143. package/ts_build/src/clients/anthropic.d.ts +1 -0
  144. package/ts_build/src/clients/anthropic.js +12 -0
  145. package/ts_build/src/clients/anthropic.js.map +1 -1
  146. package/ts_build/src/clients/fireworks.js +1 -0
  147. package/ts_build/src/clients/fireworks.js.map +1 -1
  148. package/ts_build/src/clients/gemini.js +8 -0
  149. package/ts_build/src/clients/gemini.js.map +1 -1
  150. package/ts_build/src/clients/index.js +19 -4
  151. package/ts_build/src/clients/index.js.map +1 -1
  152. package/ts_build/src/clients/openai.js +4 -2
  153. package/ts_build/src/clients/openai.js.map +1 -1
  154. package/ts_build/src/clients/types.d.ts +4 -1
  155. package/ts_build/src/clients/types.js +14 -0
  156. package/ts_build/src/clients/types.js.map +1 -1
  157. package/ts_build/src/clients/xai.d.ts +1 -0
  158. package/ts_build/src/clients/xai.js +23 -4
  159. package/ts_build/src/clients/xai.js.map +1 -1
  160. package/ts_build/src/commands/agent.js +7 -22
  161. package/ts_build/src/commands/agent.js.map +1 -1
  162. package/ts_build/src/commands/agents.d.ts +1 -1
  163. package/ts_build/src/commands/agents.js +174 -16
  164. package/ts_build/src/commands/agents.js.map +1 -1
  165. package/ts_build/src/commands/misc.js +3 -2
  166. package/ts_build/src/commands/misc.js.map +1 -1
  167. package/ts_build/src/commands/services.d.ts +2 -0
  168. package/ts_build/src/commands/services.js +45 -3
  169. package/ts_build/src/commands/services.js.map +1 -1
  170. package/ts_build/src/login.d.ts +1 -1
  171. package/ts_build/src/login.js +53 -15
  172. package/ts_build/src/login.js.map +1 -1
  173. package/ts_build/src/plugins/plugins.d.ts +1 -0
  174. package/ts_build/src/plugins/plugins.js +14 -0
  175. package/ts_build/src/plugins/plugins.js.map +1 -1
  176. package/ts_build/src/processors/TokenCompressor.js +15 -6
  177. package/ts_build/src/processors/TokenCompressor.js.map +1 -1
  178. package/ts_build/src/processors/ToolResponseCache.d.ts +3 -3
  179. package/ts_build/src/processors/ToolResponseCache.js +8 -8
  180. package/ts_build/src/processors/ToolResponseCache.js.map +1 -1
  181. package/ts_build/src/processors/tools/boundedToolResponse.d.ts +7 -0
  182. package/ts_build/src/processors/tools/boundedToolResponse.js +27 -0
  183. package/ts_build/src/processors/tools/boundedToolResponse.js.map +1 -0
  184. package/ts_build/src/processors/tools/grepToolResponse.d.ts +4 -0
  185. package/ts_build/src/processors/tools/grepToolResponse.js +101 -25
  186. package/ts_build/src/processors/tools/grepToolResponse.js.map +1 -1
  187. package/ts_build/src/processors/tools/index.d.ts +2 -2
  188. package/ts_build/src/processors/tools/index.js.map +1 -1
  189. package/ts_build/src/processors/tools/jqToolResponse.d.ts +5 -1
  190. package/ts_build/src/processors/tools/jqToolResponse.js +26 -9
  191. package/ts_build/src/processors/tools/jqToolResponse.js.map +1 -1
  192. package/ts_build/src/processors/tools/listStoredToolResponses.d.ts +7 -1
  193. package/ts_build/src/processors/tools/listStoredToolResponses.js +39 -9
  194. package/ts_build/src/processors/tools/listStoredToolResponses.js.map +1 -1
  195. package/ts_build/src/processors/tools/tailToolResponse.d.ts +5 -0
  196. package/ts_build/src/processors/tools/tailToolResponse.js +56 -13
  197. package/ts_build/src/processors/tools/tailToolResponse.js.map +1 -1
  198. package/ts_build/src/services/AgentService.js +18 -2
  199. package/ts_build/src/services/AgentService.js.map +1 -1
  200. package/ts_build/src/services/AgentSyncFs.d.ts +3 -0
  201. package/ts_build/src/services/AgentSyncFs.js +62 -15
  202. package/ts_build/src/services/AgentSyncFs.js.map +1 -1
  203. package/ts_build/src/services/AgentSyncKnowhowWeb.d.ts +2 -0
  204. package/ts_build/src/services/AgentSyncKnowhowWeb.js +28 -6
  205. package/ts_build/src/services/AgentSyncKnowhowWeb.js.map +1 -1
  206. package/ts_build/src/services/BehaviorsService.js +12 -2
  207. package/ts_build/src/services/BehaviorsService.js.map +1 -1
  208. package/ts_build/src/services/DockerService.js +20 -8
  209. package/ts_build/src/services/DockerService.js.map +1 -1
  210. package/ts_build/src/services/EmbeddingService.js +16 -2
  211. package/ts_build/src/services/EmbeddingService.js.map +1 -1
  212. package/ts_build/src/services/EmbeddingsService.js +12 -2
  213. package/ts_build/src/services/EmbeddingsService.js.map +1 -1
  214. package/ts_build/src/services/KnowhowClient.d.ts +7 -2
  215. package/ts_build/src/services/KnowhowClient.js +108 -10
  216. package/ts_build/src/services/KnowhowClient.js.map +1 -1
  217. package/ts_build/src/services/LazyToolsService.d.ts +2 -0
  218. package/ts_build/src/services/LazyToolsService.js +26 -2
  219. package/ts_build/src/services/LazyToolsService.js.map +1 -1
  220. package/ts_build/src/services/Mcp.js +20 -4
  221. package/ts_build/src/services/Mcp.js.map +1 -1
  222. package/ts_build/src/services/McpServer.js +17 -2
  223. package/ts_build/src/services/McpServer.js.map +1 -1
  224. package/ts_build/src/services/MessageProcessor.js +16 -2
  225. package/ts_build/src/services/MessageProcessor.js.map +1 -1
  226. package/ts_build/src/services/MinimalToolsService.js +16 -2
  227. package/ts_build/src/services/MinimalToolsService.js.map +1 -1
  228. package/ts_build/src/services/RuntimeReloadService.d.ts +12 -0
  229. package/ts_build/src/services/RuntimeReloadService.js +26 -0
  230. package/ts_build/src/services/RuntimeReloadService.js.map +1 -0
  231. package/ts_build/src/services/SessionManager.js +19 -2
  232. package/ts_build/src/services/SessionManager.js.map +1 -1
  233. package/ts_build/src/services/SkillsService.js +16 -2
  234. package/ts_build/src/services/SkillsService.js.map +1 -1
  235. package/ts_build/src/services/SyncedAgentWatcher.js +16 -2
  236. package/ts_build/src/services/SyncedAgentWatcher.js.map +1 -1
  237. package/ts_build/src/services/SyncerService.d.ts +1 -0
  238. package/ts_build/src/services/SyncerService.js +27 -5
  239. package/ts_build/src/services/SyncerService.js.map +1 -1
  240. package/ts_build/src/services/TaskRegistry.js +12 -2
  241. package/ts_build/src/services/TaskRegistry.js.map +1 -1
  242. package/ts_build/src/services/Tools.d.ts +1 -0
  243. package/ts_build/src/services/Tools.js +21 -2
  244. package/ts_build/src/services/Tools.js.map +1 -1
  245. package/ts_build/src/services/TracingService.d.ts +16 -0
  246. package/ts_build/src/services/TracingService.js +35 -0
  247. package/ts_build/src/services/TracingService.js.map +1 -0
  248. package/ts_build/src/services/index.d.ts +8 -0
  249. package/ts_build/src/services/index.js +9 -1
  250. package/ts_build/src/services/index.js.map +1 -1
  251. package/ts_build/src/services/modules/index.d.ts +6 -0
  252. package/ts_build/src/services/modules/index.js +29 -3
  253. package/ts_build/src/services/modules/index.js.map +1 -1
  254. package/ts_build/src/services/modules/types.d.ts +3 -0
  255. package/ts_build/src/types.d.ts +1 -0
  256. package/ts_build/src/types.js.map +1 -1
  257. package/ts_build/src/util/Trace.d.ts +11 -0
  258. package/ts_build/src/util/Trace.js +107 -0
  259. package/ts_build/src/util/Trace.js.map +1 -0
  260. package/ts_build/src/utils/http.d.ts +6 -2
  261. package/ts_build/src/utils/http.js +8 -2
  262. package/ts_build/src/utils/http.js.map +1 -1
  263. package/ts_build/tests/clients/fireworks.test.d.ts +1 -0
  264. package/ts_build/tests/clients/fireworks.test.js +65 -0
  265. package/ts_build/tests/clients/fireworks.test.js.map +1 -0
  266. package/ts_build/tests/clients/reasoningEffort.test.d.ts +1 -0
  267. package/ts_build/tests/clients/reasoningEffort.test.js +68 -0
  268. package/ts_build/tests/clients/reasoningEffort.test.js.map +1 -0
  269. package/ts_build/tests/compressor/toolResponseCache.test.js +1 -1
  270. package/ts_build/tests/compressor/toolResponseCache.test.js.map +1 -1
  271. package/ts_build/tests/manual/clients/completions.test.js +19 -6
  272. package/ts_build/tests/manual/clients/completions.test.js.map +1 -1
  273. package/ts_build/tests/processors/TokenCompressor.test.js +11 -2
  274. package/ts_build/tests/processors/TokenCompressor.test.js.map +1 -1
  275. package/ts_build/tests/processors/tools/boundedRetrievalTools.test.d.ts +1 -0
  276. package/ts_build/tests/processors/tools/boundedRetrievalTools.test.js +57 -0
  277. package/ts_build/tests/processors/tools/boundedRetrievalTools.test.js.map +1 -0
  278. package/ts_build/tests/processors/tools/grepToolResponse.test.js +37 -0
  279. package/ts_build/tests/processors/tools/grepToolResponse.test.js.map +1 -1
  280. package/ts_build/tests/unit/agents/historyRollback.test.d.ts +1 -0
  281. package/ts_build/tests/unit/agents/historyRollback.test.js +42 -0
  282. package/ts_build/tests/unit/agents/historyRollback.test.js.map +1 -0
  283. package/ts_build/tests/unit/auth/keyAuth.test.d.ts +1 -0
  284. package/ts_build/tests/unit/auth/keyAuth.test.js +77 -0
  285. package/ts_build/tests/unit/auth/keyAuth.test.js.map +1 -0
  286. package/ts_build/tests/unit/auth/keyManager.test.d.ts +1 -0
  287. package/ts_build/tests/unit/auth/keyManager.test.js +52 -0
  288. package/ts_build/tests/unit/auth/keyManager.test.js.map +1 -0
  289. package/ts_build/tests/unit/chat/historyCommandArgs.test.d.ts +1 -0
  290. package/ts_build/tests/unit/chat/historyCommandArgs.test.js +29 -0
  291. package/ts_build/tests/unit/chat/historyCommandArgs.test.js.map +1 -0
  292. package/ts_build/tests/unit/commands/agents.test.d.ts +1 -0
  293. package/ts_build/tests/unit/commands/agents.test.js +91 -0
  294. package/ts_build/tests/unit/commands/agents.test.js.map +1 -0
  295. package/ts_build/tests/unit/login.test.d.ts +1 -0
  296. package/ts_build/tests/unit/login.test.js +97 -0
  297. package/ts_build/tests/unit/login.test.js.map +1 -0
  298. package/ts_build/tests/unit/plugins/pluginLoading.test.js +59 -0
  299. package/ts_build/tests/unit/plugins/pluginLoading.test.js.map +1 -1
  300. package/ts_build/tests/unit/services/AgentSyncKnowhowWeb.test.d.ts +1 -0
  301. package/ts_build/tests/unit/services/AgentSyncKnowhowWeb.test.js +32 -0
  302. package/ts_build/tests/unit/services/AgentSyncKnowhowWeb.test.js.map +1 -0
  303. package/ts_build/tests/unit/services/LazyToolsService.test.d.ts +1 -0
  304. package/ts_build/tests/unit/services/LazyToolsService.test.js +27 -0
  305. package/ts_build/tests/unit/services/LazyToolsService.test.js.map +1 -0
  306. package/ts_build/tests/unit/services/RuntimeReloadService.test.d.ts +1 -0
  307. package/ts_build/tests/unit/services/RuntimeReloadService.test.js +26 -0
  308. package/ts_build/tests/unit/services/RuntimeReloadService.test.js.map +1 -0
  309. package/ts_build/tests/unit/services/SessionManager.test.d.ts +1 -0
  310. package/ts_build/tests/unit/services/SessionManager.test.js +72 -0
  311. package/ts_build/tests/unit/services/SessionManager.test.js.map +1 -0
  312. package/ts_build/tests/unit/services/SyncerService.test.d.ts +1 -0
  313. package/ts_build/tests/unit/services/SyncerService.test.js +40 -0
  314. package/ts_build/tests/unit/services/SyncerService.test.js.map +1 -0
  315. package/ts_build/tests/unit/util/Trace.test.d.ts +1 -0
  316. package/ts_build/tests/unit/util/Trace.test.js +107 -0
  317. package/ts_build/tests/unit/util/Trace.test.js.map +1 -0
  318. package/ts_build/tests/unit/utils/http.test.d.ts +1 -0
  319. package/ts_build/tests/unit/utils/http.test.js +69 -0
  320. package/ts_build/tests/unit/utils/http.test.js.map +1 -0
@@ -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
  }
@@ -102,6 +103,7 @@ class ModulesService {
102
103
  }
103
104
  let importedModule;
104
105
  let loaded = false;
106
+ let selectedResolvedPath = modulePath;
105
107
  const errors = [];
106
108
  for (const resolvedPath of candidates) {
107
109
  try {
@@ -115,6 +117,7 @@ class ModulesService {
115
117
  context: context,
116
118
  });
117
119
  }
120
+ selectedResolvedPath = resolvedPath;
118
121
  loaded = true;
119
122
  break;
120
123
  }
@@ -132,9 +135,14 @@ class ModulesService {
132
135
  ` Run "knowhow modules setup --global" or "knowhow modules install ${modulePath} --global" to fix this.\n\n`);
133
136
  continue;
134
137
  }
135
- loadedModules.push({ modulePath, module: importedModule });
138
+ loadedModules.push({
139
+ modulePath,
140
+ resolvedPath: selectedResolvedPath,
141
+ module: importedModule,
142
+ });
136
143
  }
137
- for (const { modulePath, module: importedModule } of loadedModules) {
144
+ for (const { modulePath, resolvedPath, module: importedModule } of loadedModules) {
145
+ const initParams = { config, cwd: process.cwd(), context: context };
138
146
  try {
139
147
  await importedModule.init({
140
148
  config,
@@ -147,6 +155,7 @@ class ModulesService {
147
155
  process.stderr.write(`\n⚠️ Failed to init module "${modulePath}": ${err?.message || err}\n\n`);
148
156
  continue;
149
157
  }
158
+ this._loadedModules.push({ modulePath, resolvedPath, module: importedModule, params: initParams });
150
159
  if (context.Agents) {
151
160
  for (const agent of importedModule.agents) {
152
161
  context.Agents.registerAgent(agent);
@@ -171,13 +180,30 @@ class ModulesService {
171
180
  }
172
181
  }
173
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
+ }
174
200
  async loadModulesFromConfig(context) {
175
201
  const config = await (0, config_1.getConfig)();
176
202
  const globalConfig = await (0, config_1.getGlobalConfig)();
177
203
  const globalModules = (0, utils_1.toUniqueArray)(globalConfig.modules || []);
178
204
  const localModules = (0, utils_1.toUniqueArray)(config.modules || []).filter((m) => !globalModules.includes(m));
179
205
  if (globalModules.length > 0) {
180
- await this.loadModulesFrom({ ...config, modules: globalModules }, context, globalResolvePaths());
206
+ await this.loadModulesFrom({ ...globalConfig, ...config, modules: globalModules }, context, globalResolvePaths());
181
207
  }
182
208
  if (localModules.length > 0) {
183
209
  await this.loadModulesFrom({ ...config, modules: localModules }, context, localResolvePaths());
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/modules/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/modules/index.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ import { EventService } from "../EventService";
15
15
  import { ConversionService } from "../conversion/ConversionService";
16
16
  import { BehaviorsService } from "../BehaviorsService";
17
17
  import { ComputerUseService } from "./computerUse";
18
+ import { TracingService as TracingServiceType } from "../TracingService";
18
19
  export interface ModuleChatCommand {
19
20
  name: string;
20
21
  description: string;
@@ -55,10 +56,12 @@ export interface ModuleContext {
55
56
  Behaviors?: BehaviorsService;
56
57
  ComputerUse?: ComputerUseService;
57
58
  [key: string]: any;
59
+ Tracing?: typeof TracingServiceType;
58
60
  }
59
61
  export interface KnowhowModule {
60
62
  register?: (params: InitParams) => Promise<void>;
61
63
  init: (params: InitParams) => Promise<void>;
64
+ destroy?: (params: InitParams) => Promise<void>;
62
65
  commands: ModuleChatCommand[];
63
66
  tools: ModuleTool[];
64
67
  agents: ModuleAgent[];
@@ -43,6 +43,7 @@ export type Config = {
43
43
  [fileExtension: string]: string;
44
44
  };
45
45
  orgId?: string;
46
+ cliIdentityPath?: string;
46
47
  syncRemote?: boolean;
47
48
  micCommand?: string;
48
49
  defaultMic?: string;
@@ -1 +1 @@
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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;AAgQA,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,11 @@
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 abstract new (...args: unknown[]) => object>(constructor: T) => T;
11
+ export declare function tracify<T extends object>(instance: T, namespace: string, options?: TraceAllOptions): T;
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Trace = Trace;
4
+ exports.TraceAll = TraceAll;
5
+ exports.tracify = tracify;
6
+ const TracingService_1 = require("../services/TracingService");
7
+ function runWithSpan(spanName, attributes, fn) {
8
+ const span = TracingService_1.TracingService.startSpan(spanName, attributes);
9
+ const finish = (err) => {
10
+ if (err !== undefined) {
11
+ span.recordError(err);
12
+ }
13
+ span.end();
14
+ };
15
+ try {
16
+ const result = TracingService_1.TracingService.withSpan(span, fn);
17
+ if (result instanceof Promise) {
18
+ return result.then((value) => {
19
+ finish();
20
+ return value;
21
+ }, (err) => {
22
+ finish(err);
23
+ throw err;
24
+ });
25
+ }
26
+ finish();
27
+ return result;
28
+ }
29
+ catch (err) {
30
+ finish(err);
31
+ throw err;
32
+ }
33
+ }
34
+ function Trace(options = {}) {
35
+ return function (target, propertyKey, descriptor) {
36
+ const originalMethod = descriptor.value;
37
+ const className = target.constructor?.name ?? "Unknown";
38
+ const resolvedSpanName = options.spanName ?? `${className}.${propertyKey}`;
39
+ const staticAttrs = {
40
+ "code.function": propertyKey,
41
+ "code.namespace": className,
42
+ ...options.attributes,
43
+ };
44
+ descriptor.value = function (...args) {
45
+ return runWithSpan(resolvedSpanName, staticAttrs, () => originalMethod.apply(this, args));
46
+ };
47
+ return descriptor;
48
+ };
49
+ }
50
+ function TraceAll(options = {}) {
51
+ const skip = new Set(options.skip ?? []);
52
+ return function (constructor) {
53
+ const className = constructor.name;
54
+ const proto = constructor.prototype;
55
+ for (const key of Object.getOwnPropertyNames(proto)) {
56
+ if (key === "constructor")
57
+ continue;
58
+ if (key.startsWith("_"))
59
+ continue;
60
+ if (skip.has(key))
61
+ continue;
62
+ const descriptor = Object.getOwnPropertyDescriptor(proto, key);
63
+ if (!descriptor || typeof descriptor.value !== "function")
64
+ continue;
65
+ const originalMethod = descriptor.value;
66
+ const spanName = `${className}.${key}`;
67
+ const staticAttrs = {
68
+ "code.function": key,
69
+ "code.namespace": className,
70
+ ...options.attributes,
71
+ };
72
+ descriptor.value = function (...args) {
73
+ return runWithSpan(spanName, staticAttrs, () => originalMethod.apply(this, args));
74
+ };
75
+ Object.defineProperty(proto, key, descriptor);
76
+ }
77
+ return constructor;
78
+ };
79
+ }
80
+ function tracify(instance, namespace, options = {}) {
81
+ const skip = new Set(options.skip ?? []);
82
+ return new Proxy(instance, {
83
+ get(target, prop, receiver) {
84
+ const value = Reflect.get(target, prop, receiver);
85
+ const methodName = typeof prop === "string" ? prop : String(prop);
86
+ if (typeof prop === "symbol")
87
+ return value;
88
+ if (methodName.startsWith("_") || skip.has(methodName))
89
+ return value;
90
+ if (value !== null && typeof value === "object") {
91
+ return tracify(value, `${namespace}.${methodName}`, options);
92
+ }
93
+ if (typeof value !== "function")
94
+ return value;
95
+ const spanName = `${namespace}.${methodName}`;
96
+ const staticAttrs = {
97
+ "code.function": methodName,
98
+ "code.namespace": namespace,
99
+ ...options.attributes,
100
+ };
101
+ return function (...args) {
102
+ return runWithSpan(spanName, staticAttrs, () => value.apply(target, args));
103
+ };
104
+ },
105
+ });
106
+ }
107
+ //# sourceMappingURL=Trace.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Trace.js","sourceRoot":"","sources":["../../../src/util/Trace.ts"],"names":[],"mappings":"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"}
@@ -9,14 +9,18 @@ export declare class HttpError extends Error {
9
9
  body?: any;
10
10
  constructor(status: number, response: Response, message: string, body?: any);
11
11
  }
12
+ export declare const HTTP_UNAUTHORIZED_HANDLER: unique symbol;
13
+ export type RefreshableHeaders = Record<string, string> & {
14
+ [HTTP_UNAUTHORIZED_HANDLER]?: () => Promise<void>;
15
+ };
12
16
  declare function request<T = any>(url: string, options?: {
13
17
  method?: string;
14
- headers?: Record<string, string>;
18
+ headers?: RefreshableHeaders;
15
19
  body?: any;
16
20
  responseType?: "json" | "arraybuffer" | "stream" | "text";
17
21
  params?: Record<string, any>;
18
22
  timeout?: number;
19
- }): Promise<HttpResponse<T>>;
23
+ }, mayRefresh?: boolean): Promise<HttpResponse<T>>;
20
24
  export declare const http: {
21
25
  get: <T = any>(url: string, options?: Omit<Parameters<typeof request>[1], "method">) => Promise<HttpResponse<T>>;
22
26
  post: <T = any>(url: string, body?: any, options?: Omit<Parameters<typeof request>[1], "method" | "body">) => Promise<HttpResponse<T>>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.http = exports.HttpError = void 0;
3
+ exports.http = exports.HTTP_UNAUTHORIZED_HANDLER = exports.HttpError = void 0;
4
4
  class HttpError extends Error {
5
5
  status;
6
6
  response;
@@ -14,6 +14,7 @@ class HttpError extends Error {
14
14
  }
15
15
  }
16
16
  exports.HttpError = HttpError;
17
+ exports.HTTP_UNAUTHORIZED_HANDLER = Symbol("httpUnauthorizedHandler");
17
18
  async function parseBody(response, responseType) {
18
19
  if (responseType === "arraybuffer") {
19
20
  return (await response.arrayBuffer());
@@ -31,7 +32,7 @@ async function parseBody(response, responseType) {
31
32
  return text;
32
33
  }
33
34
  }
34
- async function request(url, options = {}) {
35
+ async function request(url, options = {}, mayRefresh = true) {
35
36
  const { method = "GET", headers = {}, body, responseType, params, timeout = 30000 } = options;
36
37
  let fullUrl = url;
37
38
  if (params && Object.keys(params).length > 0) {
@@ -82,6 +83,11 @@ async function request(url, options = {}) {
82
83
  clearTimeout(timeoutId);
83
84
  }
84
85
  if (!response.ok) {
86
+ const refresh = headers[exports.HTTP_UNAUTHORIZED_HANDLER];
87
+ if (response.status === 401 && mayRefresh && refresh) {
88
+ await refresh();
89
+ return request(url, options, false);
90
+ }
85
91
  const text = await response.text().catch(() => "");
86
92
  let parsedBody;
87
93
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/utils/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/utils/http.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const http_1 = __importDefault(require("../../src/utils/http"));
7
+ const fireworks_1 = require("../../src/clients/fireworks");
8
+ const fireworks_2 = require("../../src/clients/pricing/fireworks");
9
+ jest.mock("../../src/utils/http", () => ({
10
+ __esModule: true,
11
+ default: { post: jest.fn() },
12
+ }));
13
+ const post = http_1.default.post;
14
+ describe("GenericFireworksClient", () => {
15
+ beforeEach(() => {
16
+ post.mockReset();
17
+ post.mockResolvedValue({
18
+ data: {
19
+ choices: [{ message: { role: "assistant", content: "ok" } }],
20
+ model: fireworks_2.FireworksModels.DeepseekV4Flash,
21
+ usage: { prompt_tokens: 2, completion_tokens: 1, total_tokens: 3 },
22
+ },
23
+ });
24
+ });
25
+ it("removes non-Fireworks options and tool return metadata", async () => {
26
+ const client = new fireworks_1.GenericFireworksClient("test-key");
27
+ await client.createChatCompletion({
28
+ model: fireworks_2.FireworksModels.DeepseekV4Flash,
29
+ messages: [{ role: "user", content: "hello" }],
30
+ max_tokens: 100,
31
+ reasoning_summary: true,
32
+ long_ttl_cache: true,
33
+ tools: [{
34
+ type: "function",
35
+ function: {
36
+ name: "lookup",
37
+ description: "Look something up",
38
+ parameters: { type: "object", properties: {} },
39
+ returns: { type: "string" },
40
+ },
41
+ }],
42
+ });
43
+ expect(post).toHaveBeenCalledTimes(1);
44
+ const [url, body, requestOptions] = post.mock.calls[0];
45
+ expect(url).toBe("https://api.fireworks.ai/inference/v1/chat/completions");
46
+ expect(requestOptions).toMatchObject({
47
+ headers: { Authorization: "Bearer test-key" },
48
+ });
49
+ expect(body).toMatchObject({
50
+ model: fireworks_2.FireworksModels.DeepseekV4Flash,
51
+ messages: [{ role: "user", content: "hello" }],
52
+ max_tokens: 100,
53
+ tool_choice: "auto",
54
+ });
55
+ const serializedBody = JSON.parse(JSON.stringify(body));
56
+ expect(serializedBody).not.toHaveProperty("reasoning_summary");
57
+ expect(serializedBody).not.toHaveProperty("long_ttl_cache");
58
+ expect(serializedBody.tools[0].function).toEqual({
59
+ name: "lookup",
60
+ description: "Look something up",
61
+ parameters: { type: "object", properties: {} },
62
+ });
63
+ });
64
+ });
65
+ //# sourceMappingURL=fireworks.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fireworks.test.js","sourceRoot":"","sources":["../../../tests/clients/fireworks.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const anthropic_1 = require("../../src/clients/anthropic");
4
+ const gemini_1 = require("../../src/clients/gemini");
5
+ const openai_1 = require("../../src/clients/openai");
6
+ const pricing_1 = require("../../src/clients/pricing");
7
+ const types_1 = require("../../src/clients/types");
8
+ const types_2 = require("../../src/types");
9
+ const xai_1 = require("../../src/clients/xai");
10
+ const options = (model, reasoning_effort) => ({
11
+ model,
12
+ reasoning_effort,
13
+ messages: [],
14
+ });
15
+ describe("reasoning effort values", () => {
16
+ it("accepts the complete provider-neutral set and rejects other values", () => {
17
+ expect(types_1.REASONING_EFFORTS).toEqual([
18
+ "none",
19
+ "minimal",
20
+ "low",
21
+ "medium",
22
+ "high",
23
+ "xhigh",
24
+ "max",
25
+ ]);
26
+ types_1.REASONING_EFFORTS.forEach((effort) => expect((0, types_1.isReasoningEffort)(effort)).toBe(true));
27
+ expect((0, types_1.isReasoningEffort)("extra-high")).toBe(false);
28
+ expect((0, types_1.isReasoningEffort)(undefined)).toBe(false);
29
+ });
30
+ it("maps provider-neutral values to OpenAI legacy and Responses spellings", () => {
31
+ const client = new openai_1.GenericOpenAiClient("fake-key");
32
+ expect(client.resolveReasoningEffort(options("unknown", "none"))).toBe("low");
33
+ expect(client.resolveReasoningEffort(options("unknown", "minimal"))).toBe("low");
34
+ expect(client.resolveReasoningEffort(options("unknown", "xhigh"))).toBe("high");
35
+ expect(client.resolveReasoningEffort(options("unknown", "max"))).toBe("high");
36
+ expect(client.resolveReasoningEffortForModel(options("unknown", "max"))).toBe("xhigh");
37
+ });
38
+ it("maps all values to valid Gemini thinking levels and budgets", () => {
39
+ const client = new gemini_1.GenericGeminiClient("fake-key");
40
+ const levelModel = types_2.GoogleThinkingLevelModels[0];
41
+ const budgetModel = types_2.GoogleThinkingBudgetModels[0];
42
+ expect(client.buildThinkingConfig(options(levelModel, "none"))).toEqual({ thinkingLevel: "minimal" });
43
+ expect(client.buildThinkingConfig(options(levelModel, "minimal"))).toEqual({ thinkingLevel: "minimal" });
44
+ expect(client.buildThinkingConfig(options(levelModel, "xhigh"))).toEqual({ thinkingLevel: "high" });
45
+ expect(client.buildThinkingConfig(options(levelModel, "max"))).toEqual({ thinkingLevel: "high" });
46
+ expect(client.buildThinkingConfig(options(budgetModel, "none"))).toEqual({ thinkingBudget: 0 });
47
+ expect(client.buildThinkingConfig(options(budgetModel, "minimal"))).toEqual({ thinkingBudget: 512 });
48
+ expect(client.buildThinkingConfig(options(budgetModel, "medium"))).toEqual({ thinkingBudget: 8192 });
49
+ expect(client.buildThinkingConfig(options(budgetModel, "max"))).toEqual({ thinkingBudget: -1 });
50
+ });
51
+ it("maps provider-neutral values to Anthropic output effort", () => {
52
+ const client = new anthropic_1.GenericAnthropicClient("fake-key");
53
+ expect(client.getEffortOutputConfig(pricing_1.AnthropicModels.Sonnet5, "none")).toBeUndefined();
54
+ expect(client.getEffortOutputConfig(pricing_1.AnthropicModels.Sonnet5, "minimal")).toEqual({ effort: "low" });
55
+ expect(client.getEffortOutputConfig(pricing_1.AnthropicModels.Sonnet5, "xhigh")).toEqual({ effort: "xhigh" });
56
+ expect(client.getEffortOutputConfig(pricing_1.AnthropicModels.Sonnet5, "max")).toEqual({ effort: "max" });
57
+ expect(client.getEffortOutputConfig("unsupported", "high")).toBeUndefined();
58
+ });
59
+ it("maps provider-neutral values to xAI legacy effort", () => {
60
+ const client = new xai_1.GenericXAIClient("fake-key");
61
+ expect(client.resolveLegacyReasoningEffort("none")).toBeUndefined();
62
+ expect(client.resolveLegacyReasoningEffort("minimal")).toBe("low");
63
+ expect(client.resolveLegacyReasoningEffort("medium")).toBe("medium");
64
+ expect(client.resolveLegacyReasoningEffort("xhigh")).toBe("high");
65
+ expect(client.resolveLegacyReasoningEffort("max")).toBe("high");
66
+ });
67
+ });
68
+ //# sourceMappingURL=reasoningEffort.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reasoningEffort.test.js","sourceRoot":"","sources":["../../../tests/clients/reasoningEffort.test.ts"],"names":[],"mappings":";;AAAA,2DAAqE;AACrE,qDAA+D;AAC/D,qDAA+D;AAC/D,uDAA4D;AAC5D,mDAIiC;AACjC,2CAGyB;AACzB,+CAAyD;AAEzD,MAAM,OAAO,GAAG,CAAC,KAAa,EAAE,gBAAiC,EAAE,EAAE,CAAC,CAAC;IACrE,KAAK;IACL,gBAAgB;IAChB,QAAQ,EAAE,EAAE;CACb,CAAC,CAAC;AAEH,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACvC,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC5E,MAAM,CAAC,yBAAiB,CAAC,CAAC,OAAO,CAAC;YAChC,MAAM;YACN,SAAS;YACT,KAAK;YACL,QAAQ;YACR,MAAM;YACN,OAAO;YACP,KAAK;SACN,CAAC,CAAC;QACH,yBAAiB,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAA,yBAAiB,EAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACpF,MAAM,CAAC,IAAA,yBAAiB,EAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpD,MAAM,CAAC,IAAA,yBAAiB,EAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,GAAG,EAAE;QAC/E,MAAM,MAAM,GAAG,IAAI,4BAAmB,CAAC,UAAU,CAAC,CAAC;QACnD,MAAM,CAAC,MAAM,CAAC,sBAAsB,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9E,MAAM,CAAC,MAAM,CAAC,sBAAsB,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjF,MAAM,CAAC,MAAM,CAAC,sBAAsB,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChF,MAAM,CAAC,MAAM,CAAC,sBAAsB,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9E,MAAM,CAAC,MAAM,CAAC,8BAA8B,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,GAAG,EAAE;QACrE,MAAM,MAAM,GAAG,IAAI,4BAAmB,CAAC,UAAU,CAAC,CAAC;QACnD,MAAM,UAAU,GAAG,iCAAyB,CAAC,CAAC,CAAC,CAAC;QAChD,MAAM,WAAW,GAAG,kCAA0B,CAAC,CAAC,CAAC,CAAC;QAElD,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC,CAAC;QACtG,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC,CAAC;QACzG,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,CAAC;QACpG,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,CAAC;QAClG,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC,CAAC;QAChG,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;QACrG,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;QACrG,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;QACjE,MAAM,MAAM,GAAG,IAAI,kCAAsB,CAAC,UAAU,CAAC,CAAC;QACtD,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,yBAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QACtF,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,yBAAe,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QACpG,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,yBAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QACpG,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,yBAAe,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QAChG,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,MAAM,MAAM,GAAG,IAAI,sBAAgB,CAAC,UAAU,CAAC,CAAC;QAChD,MAAM,CAAC,MAAM,CAAC,4BAA4B,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QACpE,MAAM,CAAC,MAAM,CAAC,4BAA4B,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnE,MAAM,CAAC,MAAM,CAAC,4BAA4B,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrE,MAAM,CAAC,MAAM,CAAC,4BAA4B,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClE,MAAM,CAAC,MAAM,CAAC,4BAA4B,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -113,7 +113,7 @@ const path = __importStar(require("path"));
113
113
  (0, globals_1.expect)(typeof names[0]).toBe("string");
114
114
  });
115
115
  (0, globals_1.it)("should filter data array with ._data | map(select(.private == true))", async () => {
116
- const result = await cache.queryToolResponse("github-repos", "._data | map(select(.private == true))");
116
+ const result = await cache.queryToolResponse("github-repos", "._data | map(select(.private == true))", { maxCharacters: 50_000 });
117
117
  const privateRepos = JSON.parse(result);
118
118
  (0, globals_1.expect)(Array.isArray(privateRepos)).toBe(true);
119
119
  privateRepos.forEach((repo) => {
@@ -1 +1 @@
1
- {"version":3,"file":"toolResponseCache.test.js","sourceRoot":"","sources":["../../../tests/compressor/toolResponseCache.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"toolResponseCache.test.js","sourceRoot":"","sources":["../../../tests/compressor/toolResponseCache.test.ts"],"names":[],"mappings":"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"}