@treasuredata/tdx 0.16.6 → 0.16.8

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 (291) hide show
  1. package/dist/bin.js +1 -1
  2. package/dist/build-info.json +3 -3
  3. package/dist/cli-categories.d.ts +1 -1
  4. package/dist/cli-categories.js +1 -1
  5. package/dist/cli-categories.js.map +1 -1
  6. package/dist/cli.d.ts.map +1 -1
  7. package/dist/cli.js +1 -1
  8. package/dist/cli.js.map +1 -1
  9. package/dist/commands/activations.js +1 -1
  10. package/dist/commands/agent-command.js +1 -1
  11. package/dist/commands/agent-test-command.d.ts.map +1 -1
  12. package/dist/commands/agent-test-command.js +1 -1
  13. package/dist/commands/agent-test-command.js.map +1 -1
  14. package/dist/commands/api-command.js +1 -1
  15. package/dist/commands/auth-command.js +1 -1
  16. package/dist/commands/chat-command.js +1 -1
  17. package/dist/commands/claude-command.js +1 -1
  18. package/dist/commands/claude-statusline-command.js +1 -1
  19. package/dist/commands/claude-usage-command.js +1 -1
  20. package/dist/commands/command.d.ts.map +1 -1
  21. package/dist/commands/command.js +1 -1
  22. package/dist/commands/command.js.map +1 -1
  23. package/dist/commands/connection-command.js +1 -1
  24. package/dist/commands/databases.js +1 -1
  25. package/dist/commands/describe.js +1 -1
  26. package/dist/commands/engage-command.js +1 -1
  27. package/dist/commands/job-command.js +1 -1
  28. package/dist/commands/journey-command.js +1 -1
  29. package/dist/commands/journey-validate-command.js +1 -1
  30. package/dist/commands/llm-command.js +1 -1
  31. package/dist/commands/llm-proxy.js +1 -1
  32. package/dist/commands/mcp-command.js +1 -1
  33. package/dist/commands/parent-segment-command.js +1 -1
  34. package/dist/commands/profile-command.js +1 -1
  35. package/dist/commands/profiles-command.js +1 -1
  36. package/dist/commands/query-command.js +1 -1
  37. package/dist/commands/segment-command.js +1 -1
  38. package/dist/commands/segment-create-command.js +1 -1
  39. package/dist/commands/segment-fields-command.js +1 -1
  40. package/dist/commands/segment-pull-command.js +1 -1
  41. package/dist/commands/segment-push-command.js +1 -1
  42. package/dist/commands/segment-update-command.js +1 -1
  43. package/dist/commands/segment-use-command.js +1 -1
  44. package/dist/commands/segment-validate-command.js +1 -1
  45. package/dist/commands/segments.js +1 -1
  46. package/dist/commands/show.js +1 -1
  47. package/dist/commands/status-command.d.ts +20 -0
  48. package/dist/commands/status-command.d.ts.map +1 -0
  49. package/dist/commands/status-command.js +1 -0
  50. package/dist/commands/status-command.js.map +1 -0
  51. package/dist/commands/tables.js +1 -1
  52. package/dist/commands/unset-command.js +1 -1
  53. package/dist/commands/use-command.js +1 -1
  54. package/dist/commands/user-command.js +1 -1
  55. package/dist/commands/workflow-command.js +1 -1
  56. package/dist/core/auth.js +1 -1
  57. package/dist/core/command-output.js +1 -1
  58. package/dist/core/config.js +1 -1
  59. package/dist/core/connection-cache.js +1 -1
  60. package/dist/core/constants.js +1 -1
  61. package/dist/core/credential-cache.js +1 -1
  62. package/dist/core/global-context.d.ts +1 -1
  63. package/dist/core/global-context.d.ts.map +1 -1
  64. package/dist/core/global-context.js +1 -1
  65. package/dist/core/global-context.js.map +1 -1
  66. package/dist/core/keychain.js +1 -1
  67. package/dist/core/profile.d.ts +5 -0
  68. package/dist/core/profile.d.ts.map +1 -1
  69. package/dist/core/profile.js +1 -1
  70. package/dist/core/profile.js.map +1 -1
  71. package/dist/core/project-config.js +1 -1
  72. package/dist/core/session.js +1 -1
  73. package/dist/core/user-cache.js +1 -1
  74. package/dist/core/version.js +1 -1
  75. package/dist/index.js +1 -1
  76. package/dist/mcp/server.js +1 -1
  77. package/dist/mcp/tools/index.js +1 -1
  78. package/dist/mcp/tools/tdx-run.js +1 -1
  79. package/dist/mcp/tools/tdx-search.js +1 -1
  80. package/dist/mcp/utils.js +1 -1
  81. package/dist/proxy/anthropic-adapter.js +1 -1
  82. package/dist/proxy/claude-usage-tracker.js +1 -1
  83. package/dist/proxy/context-signature.js +1 -1
  84. package/dist/proxy/conversation-utils.js +1 -1
  85. package/dist/proxy/passthrough-server.js +1 -1
  86. package/dist/proxy/server.js +1 -1
  87. package/dist/proxy/session-cache.js +1 -1
  88. package/dist/proxy/sse-usage-parser.js +1 -1
  89. package/dist/sdk/agent/agent-config.js +1 -1
  90. package/dist/sdk/agent/agent-ref-parser.js +1 -1
  91. package/dist/sdk/agent/agent-yaml.d.ts +3 -1
  92. package/dist/sdk/agent/agent-yaml.d.ts.map +1 -1
  93. package/dist/sdk/agent/agent-yaml.js +1 -1
  94. package/dist/sdk/agent/agent-yaml.js.map +1 -1
  95. package/dist/sdk/agent/test/evaluator.js +1 -1
  96. package/dist/sdk/agent/test/executor.js +1 -1
  97. package/dist/sdk/agent/test/index.js +1 -1
  98. package/dist/sdk/agent/test/output.js +1 -1
  99. package/dist/sdk/agent/test/parser.d.ts.map +1 -1
  100. package/dist/sdk/agent/test/parser.js +1 -1
  101. package/dist/sdk/agent/test/parser.js.map +1 -1
  102. package/dist/sdk/agent/test/types.d.ts +4 -0
  103. package/dist/sdk/agent/test/types.d.ts.map +1 -1
  104. package/dist/sdk/agent/types/agent-def.d.ts +3 -3
  105. package/dist/sdk/agent/types/agent-def.d.ts.map +1 -1
  106. package/dist/sdk/api.js +1 -1
  107. package/dist/sdk/api.js.map +1 -1
  108. package/dist/sdk/claude-agent/claude-agent-client.d.ts.map +1 -1
  109. package/dist/sdk/claude-agent/claude-agent-client.js +1 -1
  110. package/dist/sdk/claude-agent/claude-agent-client.js.map +1 -1
  111. package/dist/sdk/claude-agent/environment.js +1 -1
  112. package/dist/sdk/claude-agent/index.js +1 -1
  113. package/dist/sdk/claude-agent/system-prompts.d.ts +1 -1
  114. package/dist/sdk/claude-agent/system-prompts.d.ts.map +1 -1
  115. package/dist/sdk/claude-agent/system-prompts.js +1 -1
  116. package/dist/sdk/claude-agent/system-prompts.js.map +1 -1
  117. package/dist/sdk/claude-agent/types.d.ts +6 -0
  118. package/dist/sdk/claude-agent/types.d.ts.map +1 -1
  119. package/dist/sdk/client/cdp-api-client.d.ts +1 -2
  120. package/dist/sdk/client/cdp-api-client.d.ts.map +1 -1
  121. package/dist/sdk/client/cdp-api-client.js +1 -1
  122. package/dist/sdk/client/cdp-api-client.js.map +1 -1
  123. package/dist/sdk/client/endpoints.js +1 -1
  124. package/dist/sdk/client/engage-api-client.d.ts +1 -1
  125. package/dist/sdk/client/engage-api-client.js +1 -1
  126. package/dist/sdk/client/engage-api-client.js.map +1 -1
  127. package/dist/sdk/client/http-client.d.ts +2 -5
  128. package/dist/sdk/client/http-client.d.ts.map +1 -1
  129. package/dist/sdk/client/http-client.js +1 -1
  130. package/dist/sdk/client/http-client.js.map +1 -1
  131. package/dist/sdk/client/llm-api-client.d.ts +10 -3
  132. package/dist/sdk/client/llm-api-client.d.ts.map +1 -1
  133. package/dist/sdk/client/llm-api-client.js +1 -1
  134. package/dist/sdk/client/llm-api-client.js.map +1 -1
  135. package/dist/sdk/client/rate-limiter.js +1 -1
  136. package/dist/sdk/client/td-api-client.d.ts +2 -4
  137. package/dist/sdk/client/td-api-client.d.ts.map +1 -1
  138. package/dist/sdk/client/td-api-client.js +1 -1
  139. package/dist/sdk/client/td-api-client.js.map +1 -1
  140. package/dist/sdk/client/trino-api-client.d.ts +1 -3
  141. package/dist/sdk/client/trino-api-client.d.ts.map +1 -1
  142. package/dist/sdk/client/trino-api-client.js +1 -1
  143. package/dist/sdk/client/trino-api-client.js.map +1 -1
  144. package/dist/sdk/client/workflow-client.d.ts +1 -2
  145. package/dist/sdk/client/workflow-client.d.ts.map +1 -1
  146. package/dist/sdk/client/workflow-client.js +1 -1
  147. package/dist/sdk/client/workflow-client.js.map +1 -1
  148. package/dist/sdk/connection-validator.js +1 -1
  149. package/dist/sdk/connection.js +1 -1
  150. package/dist/sdk/connection.js.map +1 -1
  151. package/dist/sdk/engage.js +1 -1
  152. package/dist/sdk/errors.js +1 -1
  153. package/dist/sdk/index.d.ts +2 -10
  154. package/dist/sdk/index.d.ts.map +1 -1
  155. package/dist/sdk/index.js +1 -1
  156. package/dist/sdk/index.js.map +1 -1
  157. package/dist/sdk/io/index.js +1 -1
  158. package/dist/sdk/io/node-filesystem.js +1 -1
  159. package/dist/sdk/job.js +1 -1
  160. package/dist/sdk/job.js.map +1 -1
  161. package/dist/sdk/journey.js +1 -1
  162. package/dist/sdk/journey.js.map +1 -1
  163. package/dist/sdk/llm/chat-cache.js +1 -1
  164. package/dist/sdk/llm/index.d.ts +1 -0
  165. package/dist/sdk/llm/index.d.ts.map +1 -1
  166. package/dist/sdk/llm/index.js +1 -1
  167. package/dist/sdk/llm/index.js.map +1 -1
  168. package/dist/sdk/llm/llm-backup-utils.js +1 -1
  169. package/dist/sdk/llm/model-aliases.js +1 -1
  170. package/dist/sdk/llm/model-factors.js +1 -1
  171. package/dist/sdk/query/index.js +1 -1
  172. package/dist/sdk/query/index.js.map +1 -1
  173. package/dist/sdk/query/sql-parser.js +1 -1
  174. package/dist/sdk/segment/child-segment-yaml.js +1 -1
  175. package/dist/sdk/segment/fields-display.js +1 -1
  176. package/dist/sdk/segment/file-discovery.js +1 -1
  177. package/dist/sdk/segment/journey-utils.js +1 -1
  178. package/dist/sdk/segment/journey-yaml.js +1 -1
  179. package/dist/sdk/segment/parent-segment-preview.js +1 -1
  180. package/dist/sdk/segment/parent-segment-yaml.js +1 -1
  181. package/dist/sdk/segment/pull-workflow.js +1 -1
  182. package/dist/sdk/segment/push-workflow.js +1 -1
  183. package/dist/sdk/segment/resolution-context.js +1 -1
  184. package/dist/sdk/segment/segment-path-parser.js +1 -1
  185. package/dist/sdk/segment/segment-ref-parser.js +1 -1
  186. package/dist/sdk/segment/target-resolution.js +1 -1
  187. package/dist/sdk/segment/tdx-config.js +1 -1
  188. package/dist/sdk/segment/validate-files.js +1 -1
  189. package/dist/sdk/segment/yaml-validator.js +1 -1
  190. package/dist/sdk/segment.js +1 -1
  191. package/dist/sdk/segment.js.map +1 -1
  192. package/dist/sdk/types/index.d.ts +1 -1
  193. package/dist/sdk/types/index.d.ts.map +1 -1
  194. package/dist/sdk/types/index.js +1 -1
  195. package/dist/sdk/types/index.js.map +1 -1
  196. package/dist/sdk/types/llm.d.ts +36 -1
  197. package/dist/sdk/types/llm.d.ts.map +1 -1
  198. package/dist/sdk/types/progress.js +1 -1
  199. package/dist/sdk/user.js +1 -1
  200. package/dist/sdk/user.js.map +1 -1
  201. package/dist/sdk/util/format-detector.js +1 -1
  202. package/dist/sdk/util/formatters.js +1 -1
  203. package/dist/sdk/util/index.js +1 -1
  204. package/dist/sdk/util/tree-formatter.js +1 -1
  205. package/dist/sdk/workflow/clone-workflow.js +1 -1
  206. package/dist/sdk/workflow/index.js +1 -1
  207. package/dist/sdk/workflow/index.js.map +1 -1
  208. package/dist/sdk/workflow/pull-workflow.js +1 -1
  209. package/dist/sdk/workflow/push-workflow.js +1 -1
  210. package/dist/sdk/workflow/tdx-config.js +1 -1
  211. package/dist/sdk/workflow/workflow-utils.js +1 -1
  212. package/dist/test-utils/command-runner.d.ts +99 -0
  213. package/dist/test-utils/command-runner.d.ts.map +1 -0
  214. package/dist/test-utils/command-runner.js +1 -0
  215. package/dist/test-utils/command-runner.js.map +1 -0
  216. package/dist/test-utils/factories.d.ts +183 -0
  217. package/dist/test-utils/factories.d.ts.map +1 -0
  218. package/dist/test-utils/factories.js +1 -0
  219. package/dist/test-utils/factories.js.map +1 -0
  220. package/dist/test-utils/fixtures.d.ts +395 -0
  221. package/dist/test-utils/fixtures.d.ts.map +1 -0
  222. package/dist/test-utils/fixtures.js +1 -0
  223. package/dist/test-utils/fixtures.js.map +1 -0
  224. package/dist/test-utils/http-mock.d.ts +285 -0
  225. package/dist/test-utils/http-mock.d.ts.map +1 -0
  226. package/dist/test-utils/http-mock.js +1 -0
  227. package/dist/test-utils/http-mock.js.map +1 -0
  228. package/dist/test-utils/index.d.ts +47 -0
  229. package/dist/test-utils/index.d.ts.map +1 -0
  230. package/dist/test-utils/index.js +1 -0
  231. package/dist/test-utils/index.js.map +1 -0
  232. package/dist/utils/async.js +1 -1
  233. package/dist/utils/colors.js +1 -1
  234. package/dist/utils/diff.js +1 -1
  235. package/dist/utils/file-permissions.js +1 -1
  236. package/dist/utils/global-cache.js +1 -1
  237. package/dist/utils/json-loader.js +1 -1
  238. package/dist/utils/local-cache.js +1 -1
  239. package/dist/utils/logger/formatters/default-formatter.d.ts +33 -0
  240. package/dist/utils/logger/formatters/default-formatter.d.ts.map +1 -0
  241. package/dist/utils/logger/formatters/default-formatter.js +1 -0
  242. package/dist/utils/logger/formatters/default-formatter.js.map +1 -0
  243. package/dist/utils/logger/formatters/index.d.ts +8 -0
  244. package/dist/utils/logger/formatters/index.d.ts.map +1 -0
  245. package/dist/utils/logger/formatters/index.js +1 -0
  246. package/dist/utils/logger/formatters/index.js.map +1 -0
  247. package/dist/utils/logger/handlers/console-handler.d.ts +31 -0
  248. package/dist/utils/logger/handlers/console-handler.d.ts.map +1 -0
  249. package/dist/utils/logger/handlers/console-handler.js +1 -0
  250. package/dist/utils/logger/handlers/console-handler.js.map +1 -0
  251. package/dist/utils/logger/handlers/file-handler.d.ts +51 -0
  252. package/dist/utils/logger/handlers/file-handler.d.ts.map +1 -0
  253. package/dist/utils/logger/handlers/file-handler.js +1 -0
  254. package/dist/utils/logger/handlers/file-handler.js.map +1 -0
  255. package/dist/utils/logger/handlers/index.d.ts +11 -0
  256. package/dist/utils/logger/handlers/index.d.ts.map +1 -0
  257. package/dist/utils/logger/handlers/index.js +1 -0
  258. package/dist/utils/logger/handlers/index.js.map +1 -0
  259. package/dist/utils/logger/handlers/null-handler.d.ts +16 -0
  260. package/dist/utils/logger/handlers/null-handler.d.ts.map +1 -0
  261. package/dist/utils/logger/handlers/null-handler.js +1 -0
  262. package/dist/utils/logger/handlers/null-handler.js.map +1 -0
  263. package/dist/utils/logger/index.d.ts +37 -0
  264. package/dist/utils/logger/index.d.ts.map +1 -0
  265. package/dist/utils/logger/index.js +1 -0
  266. package/dist/utils/logger/index.js.map +1 -0
  267. package/dist/utils/logger/logger.d.ts +132 -0
  268. package/dist/utils/logger/logger.d.ts.map +1 -0
  269. package/dist/utils/logger/logger.js +1 -0
  270. package/dist/utils/logger/logger.js.map +1 -0
  271. package/dist/utils/logger/types.d.ts +95 -0
  272. package/dist/utils/logger/types.d.ts.map +1 -0
  273. package/dist/utils/logger/types.js +1 -0
  274. package/dist/utils/logger/types.js.map +1 -0
  275. package/dist/utils/option-validation.js +1 -1
  276. package/dist/utils/port.js +1 -1
  277. package/dist/utils/process.js +1 -1
  278. package/dist/utils/prompt.js +1 -1
  279. package/dist/utils/spinner.js +1 -1
  280. package/dist/utils/sse-parser.d.ts +9 -2
  281. package/dist/utils/sse-parser.d.ts.map +1 -1
  282. package/dist/utils/sse-parser.js +1 -1
  283. package/dist/utils/sse-parser.js.map +1 -1
  284. package/dist/utils/string-utils.js +1 -1
  285. package/dist/utils/table-ref-parser.js +1 -1
  286. package/dist/utils/tdx-logger.d.ts +44 -21
  287. package/dist/utils/tdx-logger.d.ts.map +1 -1
  288. package/dist/utils/tdx-logger.js +1 -1
  289. package/dist/utils/tdx-logger.js.map +1 -1
  290. package/dist/utils/version-check.js +1 -1
  291. package/package.json +1 -1
@@ -1 +1 @@
1
- (function(_0x1dca10,_0x2315c4){const _0x3e41b8=a62_0x304e,_0x4eec6e=_0x1dca10();while(!![]){try{const _0x4d4400=parseInt(_0x3e41b8(0x151))/0x1+parseInt(_0x3e41b8(0x13f))/0x2*(parseInt(_0x3e41b8(0x12a))/0x3)+-parseInt(_0x3e41b8(0x12e))/0x4+parseInt(_0x3e41b8(0x11a))/0x5*(parseInt(_0x3e41b8(0x125))/0x6)+parseInt(_0x3e41b8(0x142))/0x7+parseInt(_0x3e41b8(0x150))/0x8*(parseInt(_0x3e41b8(0x127))/0x9)+-parseInt(_0x3e41b8(0x13a))/0xa;if(_0x4d4400===_0x2315c4)break;else _0x4eec6e['push'](_0x4eec6e['shift']());}catch(_0xd991e1){_0x4eec6e['push'](_0x4eec6e['shift']());}}}(a62_0x2ade,0x99cb7));import{readFile,writeFile,appendFile,mkdir,readdir,stat}from'node:fs/promises';import{existsSync}from'node:fs';import{join,resolve}from'node:path';import{getModelFactor,calculateChatUnit,calculateCredits}from'../sdk/llm/model-factors.js';import{TDXLogger,LogLevel}from'../utils/tdx-logger.js';import{getGlobalCacheDir}from'../utils/global-cache.js';let usageLogger=null;function a62_0x2ade(){const _0xde68d6=['entryCount','object','stringify','map','split','20hyTXNP','Invalid\x20session\x20ID:\x20path\x20traversal\x20detected','credits','lastUsedAt','filter','entries','keys','utf-8','message','warn','profiles','1209552LneUNJ','reduce','5801670wlRpGe','monthly','parse','2367912RNYFnY','monthChatUnits','sessions','contextSignature','324244qagHii','todayDate','timestamp','WARN','claude-usage','lastUpdatedAt','stats-cache.json','inputTokens','outputTokens','Failed\x20to\x20read\x20usage\x20file\x20','.jsonl:','todayChatUnits','25234950XhZSwz','getTime','length','totalChatUnits','sort','2Fyicno','profile','daily','3430735McwSLM','slice','Failed\x20to\x20read\x20usage\x20directory:','getFullYear','init','month','endsWith','values','toISOString','default','startsWith','model','max','.jsonl','8LYRPSZ','504092zstxwZ','replace'];a62_0x2ade=function(){return _0xde68d6;};return a62_0x2ade();}async function getLogger(){const _0x19914a=a62_0x304e;return!usageLogger&&(usageLogger=new TDXLogger(LogLevel[_0x19914a(0x131)],!![]),await usageLogger[_0x19914a(0x146)]()),usageLogger;}function getUsageDir(){const _0x4a90c9=a62_0x304e;return join(getGlobalCacheDir(),_0x4a90c9(0x132));}function sanitizeSessionId(_0x21e565){const _0x1b5e13=a62_0x304e;return _0x21e565[_0x1b5e13(0x152)](/[^a-zA-Z0-9_-]/g,'_');}function getSafeJsonlPath(_0x1e0f8b){const _0x2f0d60=a62_0x304e,_0x59760a=getUsageDir(),_0x371144=sanitizeSessionId(_0x1e0f8b),_0xc2ca38=resolve(_0x59760a,_0x371144+_0x2f0d60(0x14f));if(!_0xc2ca38[_0x2f0d60(0x14c)](_0x59760a))throw new Error(_0x2f0d60(0x11b));return _0xc2ca38;}function getStatsCachePath(){const _0x14d75f=a62_0x304e;return join(getUsageDir(),_0x14d75f(0x134));}function a62_0x304e(_0x50e09f,_0x2626c3){_0x50e09f=_0x50e09f-0x11a;const _0x2ade1d=a62_0x2ade();let _0x304ee6=_0x2ade1d[_0x50e09f];return _0x304ee6;}async function ensureUsageDir(){const _0x5c26a3=getUsageDir();!existsSync(_0x5c26a3)&&await mkdir(_0x5c26a3,{'recursive':!![]});}export async function appendUsageEntry(_0x2a4df5,_0x15e72f){const _0x166f99=a62_0x304e,_0x1dad2b=sanitizeSessionId(_0x2a4df5);await ensureUsageDir();const _0x272ea7=getSafeJsonlPath(_0x1dad2b),_0x4dc9c2=JSON[_0x166f99(0x155)](_0x15e72f)+'\x0a';await appendFile(_0x272ea7,_0x4dc9c2,_0x166f99(0x121));}async function readSessionJsonl(_0x2aa716){const _0x228e78=a62_0x304e,_0x1ffdca=getSafeJsonlPath(_0x2aa716);if(!existsSync(_0x1ffdca))return[];try{const _0x26046b=await readFile(_0x1ffdca,_0x228e78(0x121)),_0x5183d8=_0x26046b['trim']()[_0x228e78(0x157)]('\x0a')[_0x228e78(0x11e)](Boolean);return _0x5183d8[_0x228e78(0x156)](_0x23b934=>{const _0x4de9b4=_0x228e78;try{return JSON[_0x4de9b4(0x129)](_0x23b934);}catch{return null;}})['filter'](_0x45563d=>_0x45563d!==null);}catch(_0x4c65f2){const _0x332b74=await getLogger();return _0x332b74[_0x228e78(0x123)](_0x228e78(0x137)+_0x2aa716+_0x228e78(0x138),_0x4c65f2 instanceof Error?_0x4c65f2[_0x228e78(0x122)]:String(_0x4c65f2)),[];}}async function getAllSessionFiles(){const _0x3b910d=a62_0x304e,_0x36b616=getUsageDir();if(!existsSync(_0x36b616))return[];try{const _0x1b0931=await readdir(_0x36b616);return _0x1b0931[_0x3b910d(0x11e)](_0x54d4b7=>_0x54d4b7[_0x3b910d(0x148)](_0x3b910d(0x14f)))['map'](_0x4de9df=>_0x4de9df[_0x3b910d(0x152)]('.jsonl',''));}catch(_0x5d6f0c){const _0x1c4b60=await getLogger();return _0x1c4b60[_0x3b910d(0x123)](_0x3b910d(0x144),_0x5d6f0c instanceof Error?_0x5d6f0c['message']:String(_0x5d6f0c)),[];}}async function readStatsCache(){const _0x5968a5=a62_0x304e,_0x108b85=getStatsCachePath();if(!existsSync(_0x108b85))return null;try{const _0x35acc0=await readFile(_0x108b85,_0x5968a5(0x121));return JSON[_0x5968a5(0x129)](_0x35acc0);}catch{return null;}}async function writeStatsCache(_0x1be6ec){await ensureUsageDir();const _0x5bbd93=getStatsCachePath();await writeFile(_0x5bbd93,JSON['stringify'](_0x1be6ec,null,0x2),'utf-8');}async function isCacheUpToDate(_0x499dd9,_0x3d2f5b){const _0x5ce86d=a62_0x304e,_0x486fa6=_0x499dd9['sessions'][_0x3d2f5b];if(!_0x486fa6)return![];const _0x347699=getSafeJsonlPath(_0x3d2f5b);if(!existsSync(_0x347699))return!![];try{const _0x44d9ea=await stat(_0x347699),_0x280950=new Date(_0x486fa6[_0x5ce86d(0x133)])['getTime'](),_0x2e9305=_0x44d9ea['mtime'][_0x5ce86d(0x13b)]();return _0x280950>_0x2e9305;}catch{return![];}}export async function rebuildCache(){const _0x7e3f6d=a62_0x304e,_0x3d9bee=new Date(),_0x5a3532=_0x3d9bee['toISOString']()['slice'](0x0,0xa),_0x2f65d5=_0x3d9bee[_0x7e3f6d(0x14a)]()[_0x7e3f6d(0x143)](0x0,0x7),_0x2be5de={'daily':{},'monthly':{},'sessions':{},'profiles':{},'lastRebuiltAt':_0x3d9bee[_0x7e3f6d(0x14a)]()},_0x5e066c=await getAllSessionFiles();for(const _0x71d51d of _0x5e066c){try{const _0x107ff9=await readSessionJsonl(_0x71d51d);if(_0x107ff9[_0x7e3f6d(0x13c)]===0x0)continue;let _0x221dc7=0x0;const _0x5511b8={};let _0x173b3f='';for(const _0x49ab16 of _0x107ff9){const _0x4963cf=getModelFactor(_0x49ab16[_0x7e3f6d(0x14d)]),_0x291726=calculateChatUnit(_0x49ab16[_0x7e3f6d(0x135)],_0x49ab16[_0x7e3f6d(0x136)],_0x4963cf);_0x221dc7+=_0x291726;const _0x4c81b5=_0x49ab16[_0x7e3f6d(0x12d)]||_0x7e3f6d(0x14b);_0x5511b8[_0x4c81b5]=_0x49ab16[_0x7e3f6d(0x135)];_0x49ab16['timestamp']>_0x173b3f&&(_0x173b3f=_0x49ab16[_0x7e3f6d(0x130)]);const _0x3bfdbf=_0x49ab16['timestamp'][_0x7e3f6d(0x143)](0x0,0xa);!_0x2be5de[_0x7e3f6d(0x141)][_0x3bfdbf]&&(_0x2be5de[_0x7e3f6d(0x141)][_0x3bfdbf]={'totalChatUnits':0x0,'entryCount':0x0});_0x2be5de[_0x7e3f6d(0x141)][_0x3bfdbf][_0x7e3f6d(0x13d)]+=_0x291726,_0x2be5de['daily'][_0x3bfdbf][_0x7e3f6d(0x153)]+=0x1;const _0x41d96b=_0x49ab16['timestamp'][_0x7e3f6d(0x143)](0x0,0x7);!_0x2be5de[_0x7e3f6d(0x128)][_0x41d96b]&&(_0x2be5de['monthly'][_0x41d96b]={'totalChatUnits':0x0,'entryCount':0x0});_0x2be5de[_0x7e3f6d(0x128)][_0x41d96b][_0x7e3f6d(0x13d)]+=_0x291726,_0x2be5de[_0x7e3f6d(0x128)][_0x41d96b][_0x7e3f6d(0x153)]+=0x1;const _0x4e6020=_0x49ab16[_0x7e3f6d(0x140)]||_0x7e3f6d(0x14b);!_0x2be5de[_0x7e3f6d(0x124)][_0x4e6020]&&(_0x2be5de[_0x7e3f6d(0x124)][_0x4e6020]={'totalChatUnits':0x0,'entryCount':0x0,'lastUsedAt':'','todayChatUnits':0x0,'todayDate':_0x5a3532,'monthChatUnits':0x0,'month':_0x2f65d5}),_0x2be5de['profiles'][_0x4e6020][_0x7e3f6d(0x13d)]+=_0x291726,_0x2be5de[_0x7e3f6d(0x124)][_0x4e6020][_0x7e3f6d(0x153)]+=0x1,_0x49ab16[_0x7e3f6d(0x130)]>_0x2be5de[_0x7e3f6d(0x124)][_0x4e6020][_0x7e3f6d(0x11d)]&&(_0x2be5de[_0x7e3f6d(0x124)][_0x4e6020][_0x7e3f6d(0x11d)]=_0x49ab16[_0x7e3f6d(0x130)]),_0x3bfdbf===_0x5a3532&&(_0x2be5de[_0x7e3f6d(0x124)][_0x4e6020][_0x7e3f6d(0x139)]+=_0x291726),_0x41d96b===_0x2f65d5&&(_0x2be5de[_0x7e3f6d(0x124)][_0x4e6020][_0x7e3f6d(0x12b)]+=_0x291726);}_0x2be5de['sessions'][_0x71d51d]={'totalChatUnits':_0x221dc7,'latestInputTokensByContext':_0x5511b8,'createdAt':_0x107ff9[0x0]['timestamp'],'lastUpdatedAt':_0x173b3f};}catch(_0x45e01a){const _0x4dbf3a=await getLogger();_0x4dbf3a[_0x7e3f6d(0x123)]('Failed\x20to\x20process\x20session\x20'+_0x71d51d+':',_0x45e01a instanceof Error?_0x45e01a[_0x7e3f6d(0x122)]:String(_0x45e01a));continue;}}return cleanupOldEntries(_0x2be5de),await writeStatsCache(_0x2be5de),_0x2be5de;}function cleanupOldEntries(_0x1d5167){const _0x3109fb=a62_0x304e,_0x1f7b34=new Date(),_0x516d83=new Date(_0x1f7b34[_0x3109fb(0x13b)]()-0x7*0x18*0x3c*0x3c*0x3e8);for(const _0x194575 of Object[_0x3109fb(0x120)](_0x1d5167[_0x3109fb(0x141)])){new Date(_0x194575)<_0x516d83&&delete _0x1d5167[_0x3109fb(0x141)][_0x194575];}const _0x2aedec=new Date(_0x1f7b34[_0x3109fb(0x145)]()-0x1,_0x1f7b34['getMonth'](),0x1);for(const _0x3ce94e of Object[_0x3109fb(0x120)](_0x1d5167['monthly'])){const [_0x3689d6,_0x2011ba]=_0x3ce94e[_0x3109fb(0x157)]('-')['map'](Number),_0x36a9d1=new Date(_0x3689d6,_0x2011ba-0x1,0x1);_0x36a9d1<_0x2aedec&&delete _0x1d5167[_0x3109fb(0x128)][_0x3ce94e];}const _0x213773=new Date(_0x1f7b34[_0x3109fb(0x13b)]()-0x1e*0x18*0x3c*0x3c*0x3e8);for(const [_0xb39a9a,_0x37ede9]of Object['entries'](_0x1d5167[_0x3109fb(0x12c)])){new Date(_0x37ede9['lastUpdatedAt'])<_0x213773&&delete _0x1d5167[_0x3109fb(0x12c)][_0xb39a9a];}}export async function getOrUpdateCache(_0xdc0b4d){const _0x1024a3=_0xdc0b4d?sanitizeSessionId(_0xdc0b4d):undefined,_0x7946a2=await readStatsCache();if(!_0x7946a2)return rebuildCache();if(_0x1024a3){const _0x346eaf=await isCacheUpToDate(_0x7946a2,_0x1024a3);if(!_0x346eaf)return rebuildCache();}return _0x7946a2;}export async function getSessionCredits(_0x3fe370){const _0x383c9f=a62_0x304e,_0x49baa2=sanitizeSessionId(_0x3fe370),_0x48de30=await getOrUpdateCache(_0x49baa2),_0x134681=_0x48de30[_0x383c9f(0x12c)][_0x49baa2];if(!_0x134681)return 0x0;return calculateCredits(_0x134681['totalChatUnits']);}export async function getTodayCredits(){const _0x2a1760=a62_0x304e,_0x3a0ba8=await getOrUpdateCache(),_0x392ac4=new Date()['toISOString']()[_0x2a1760(0x143)](0x0,0xa),_0x2dbcaa=_0x3a0ba8[_0x2a1760(0x141)][_0x392ac4];if(!_0x2dbcaa)return 0x0;return calculateCredits(_0x2dbcaa[_0x2a1760(0x13d)]);}export async function getMonthCredits(){const _0x293ccf=a62_0x304e,_0x545c91=await getOrUpdateCache(),_0x4722d0=new Date()[_0x293ccf(0x14a)]()['slice'](0x0,0x7),_0x16f823=_0x545c91[_0x293ccf(0x128)][_0x4722d0];if(!_0x16f823)return 0x0;return calculateCredits(_0x16f823[_0x293ccf(0x13d)]);}export async function getSessionStats(_0x572eb6){const _0x40effa=sanitizeSessionId(_0x572eb6),_0x28eaa3=await getOrUpdateCache(_0x40effa);return _0x28eaa3['sessions'][_0x40effa]||null;}function getMaxLatestInputTokens(_0x3f7bef){const _0x3841e2=a62_0x304e,_0x1cdde8=Object[_0x3841e2(0x149)](_0x3f7bef);if(_0x1cdde8[_0x3841e2(0x13c)]===0x0)return 0x0;return Math[_0x3841e2(0x14e)](..._0x1cdde8);}export async function getUsageStats(_0x226dc6,_0x557148){const _0x29e14d=a62_0x304e,_0x1deac9=sanitizeSessionId(_0x226dc6),_0x14ef59=await getOrUpdateCache(_0x1deac9),_0xa4183a=_0x14ef59[_0x29e14d(0x12c)][_0x1deac9],_0xeb2b94=new Date()[_0x29e14d(0x14a)]()[_0x29e14d(0x143)](0x0,0xa),_0xd4260a=new Date()[_0x29e14d(0x14a)]()[_0x29e14d(0x143)](0x0,0x7);if(_0x557148){const _0x296bb3=_0x14ef59[_0x29e14d(0x124)]?.[_0x557148],_0x3e5041=_0x296bb3?.[_0x29e14d(0x12f)]===_0xeb2b94?calculateCredits(_0x296bb3[_0x29e14d(0x139)]):0x0,_0x3d1731=_0x296bb3?.[_0x29e14d(0x147)]===_0xd4260a?calculateCredits(_0x296bb3['monthChatUnits']):0x0;return{'sessionCredits':_0xa4183a?calculateCredits(_0xa4183a['totalChatUnits']):0x0,'todayCredits':_0x3e5041,'monthCredits':_0x3d1731,'latestInputTokens':_0xa4183a?getMaxLatestInputTokens(_0xa4183a['latestInputTokensByContext']):0x0};}return{'sessionCredits':_0xa4183a?calculateCredits(_0xa4183a[_0x29e14d(0x13d)]):0x0,'todayCredits':_0x14ef59[_0x29e14d(0x141)][_0xeb2b94]?calculateCredits(_0x14ef59[_0x29e14d(0x141)][_0xeb2b94][_0x29e14d(0x13d)]):0x0,'monthCredits':_0x14ef59[_0x29e14d(0x128)][_0xd4260a]?calculateCredits(_0x14ef59[_0x29e14d(0x128)][_0xd4260a]['totalChatUnits']):0x0,'latestInputTokens':_0xa4183a?getMaxLatestInputTokens(_0xa4183a['latestInputTokensByContext']):0x0};}export async function getAllProfileStats(){const _0x3486ca=a62_0x304e,_0x4c6034=await getOrUpdateCache(),_0x2736e8=_0x4c6034[_0x3486ca(0x124)]||{};return Object[_0x3486ca(0x11f)](_0x2736e8)[_0x3486ca(0x11e)](([,_0x57f978])=>_0x57f978&&typeof _0x57f978==='object')[_0x3486ca(0x156)](([_0x6d9d03,_0xceb20])=>({'profile':_0x6d9d03,'credits':calculateCredits(_0xceb20[_0x3486ca(0x13d)]||0x0),'entryCount':_0xceb20[_0x3486ca(0x153)]||0x0,'lastUsedAt':_0xceb20[_0x3486ca(0x11d)]||''}))[_0x3486ca(0x13e)]((_0x321873,_0x1e5acd)=>_0x1e5acd[_0x3486ca(0x11c)]-_0x321873[_0x3486ca(0x11c)]);}export async function getUsageSummary(){const _0x1e00dc=a62_0x304e,_0x50bd2c=await getOrUpdateCache(),_0x4df104=_0x50bd2c[_0x1e00dc(0x124)]||{},_0x271235=new Date()[_0x1e00dc(0x14a)]()[_0x1e00dc(0x143)](0x0,0xa),_0x3d5d2c=new Date()['toISOString']()['slice'](0x0,0x7),_0x2e73d6=Object[_0x1e00dc(0x149)](_0x4df104)[_0x1e00dc(0x11e)](_0x39790f=>_0x39790f&&typeof _0x39790f===_0x1e00dc(0x154)),_0x53b56b=_0x2e73d6[_0x1e00dc(0x126)]((_0x302a63,_0xe6af96)=>_0x302a63+(_0xe6af96['totalChatUnits']||0x0),0x0);return{'todayCredits':_0x50bd2c[_0x1e00dc(0x141)][_0x271235]?calculateCredits(_0x50bd2c[_0x1e00dc(0x141)][_0x271235][_0x1e00dc(0x13d)]||0x0):0x0,'monthCredits':_0x50bd2c[_0x1e00dc(0x128)][_0x3d5d2c]?calculateCredits(_0x50bd2c[_0x1e00dc(0x128)][_0x3d5d2c][_0x1e00dc(0x13d)]||0x0):0x0,'totalCredits':calculateCredits(_0x53b56b),'profileCount':_0x2e73d6['length']};}
1
+ (function(_0x1d5a0e,_0x3addeb){const _0x1edc07=a63_0x28fe,_0x3c0246=_0x1d5a0e();while(!![]){try{const _0x5dce2a=parseInt(_0x1edc07(0x212))/0x1*(parseInt(_0x1edc07(0x1ea))/0x2)+parseInt(_0x1edc07(0x1f3))/0x3*(parseInt(_0x1edc07(0x205))/0x4)+parseInt(_0x1edc07(0x1f0))/0x5*(-parseInt(_0x1edc07(0x1f6))/0x6)+-parseInt(_0x1edc07(0x204))/0x7+-parseInt(_0x1edc07(0x1fd))/0x8+parseInt(_0x1edc07(0x20d))/0x9+parseInt(_0x1edc07(0x1ee))/0xa*(parseInt(_0x1edc07(0x214))/0xb);if(_0x5dce2a===_0x3addeb)break;else _0x3c0246['push'](_0x3c0246['shift']());}catch(_0x388b00){_0x3c0246['push'](_0x3c0246['shift']());}}}(a63_0x4aaf,0xb5e64));import{readFile,writeFile,appendFile,mkdir,readdir,stat}from'node:fs/promises';import{existsSync}from'node:fs';import{join,resolve}from'node:path';import{getModelFactor,calculateChatUnit,calculateCredits}from'../sdk/llm/model-factors.js';import{TDXLogger,LogLevel}from'../utils/tdx-logger.js';import{getGlobalCacheDir}from'../utils/global-cache.js';let usageLogger=null;async function getLogger(){const _0x4515f9=a63_0x28fe;return!usageLogger&&(usageLogger=new TDXLogger(LogLevel[_0x4515f9(0x217)],!![]),await usageLogger[_0x4515f9(0x1f8)]()),usageLogger;}function getUsageDir(){const _0x14b9a6=a63_0x28fe;return join(getGlobalCacheDir(),_0x14b9a6(0x1e1));}function a63_0x28fe(_0xc8866a,_0x2eeed5){_0xc8866a=_0xc8866a-0x1de;const _0x4aaf7a=a63_0x4aaf();let _0x28fe6f=_0x4aaf7a[_0xc8866a];return _0x28fe6f;}function sanitizeSessionId(_0x5493bd){const _0x32079e=a63_0x28fe;return _0x5493bd[_0x32079e(0x1f5)](/[^a-zA-Z0-9_-]/g,'_');}function getSafeJsonlPath(_0x5a9106){const _0x4051a3=a63_0x28fe,_0xf7c3ac=getUsageDir(),_0x4a3658=sanitizeSessionId(_0x5a9106),_0xcba2dc=resolve(_0xf7c3ac,_0x4a3658+_0x4051a3(0x207));if(!_0xcba2dc[_0x4051a3(0x1ef)](_0xf7c3ac))throw new Error('Invalid\x20session\x20ID:\x20path\x20traversal\x20detected');return _0xcba2dc;}function getStatsCachePath(){return join(getUsageDir(),'stats-cache.json');}async function ensureUsageDir(){const _0x36c08c=getUsageDir();!existsSync(_0x36c08c)&&await mkdir(_0x36c08c,{'recursive':!![]});}export async function appendUsageEntry(_0x58156d,_0x20e873){const _0x29e328=a63_0x28fe,_0x5e441d=sanitizeSessionId(_0x58156d);await ensureUsageDir();const _0x28bfb3=getSafeJsonlPath(_0x5e441d),_0x27245f=JSON[_0x29e328(0x1ed)](_0x20e873)+'\x0a';await appendFile(_0x28bfb3,_0x27245f,_0x29e328(0x1f9));}async function readSessionJsonl(_0x2f7f2b){const _0x4cf91c=a63_0x28fe,_0x506b50=getSafeJsonlPath(_0x2f7f2b);if(!existsSync(_0x506b50))return[];try{const _0x43049d=await readFile(_0x506b50,_0x4cf91c(0x1f9)),_0xa9e62e=_0x43049d[_0x4cf91c(0x1e2)]()[_0x4cf91c(0x1df)]('\x0a')[_0x4cf91c(0x206)](Boolean);return _0xa9e62e[_0x4cf91c(0x1fa)](_0x3f0e8f=>{const _0x50a22c=_0x4cf91c;try{return JSON[_0x50a22c(0x20a)](_0x3f0e8f);}catch{return null;}})[_0x4cf91c(0x206)](_0x3295f6=>_0x3295f6!==null);}catch(_0x3310cd){const _0x1a4339=await getLogger();return _0x1a4339[_0x4cf91c(0x1fc)]('Failed\x20to\x20read\x20usage\x20file\x20'+_0x2f7f2b+'.jsonl:',_0x3310cd instanceof Error?_0x3310cd[_0x4cf91c(0x203)]:String(_0x3310cd)),[];}}async function getAllSessionFiles(){const _0x178df1=a63_0x28fe,_0x365333=getUsageDir();if(!existsSync(_0x365333))return[];try{const _0x5620c0=await readdir(_0x365333);return _0x5620c0['filter'](_0x2555b1=>_0x2555b1['endsWith'](_0x178df1(0x207)))[_0x178df1(0x1fa)](_0xcde779=>_0xcde779[_0x178df1(0x1f5)](_0x178df1(0x207),''));}catch(_0x1b989c){const _0x50152c=await getLogger();return _0x50152c[_0x178df1(0x1fc)](_0x178df1(0x1e8),_0x1b989c instanceof Error?_0x1b989c['message']:String(_0x1b989c)),[];}}function a63_0x4aaf(){const _0x3dcb2a=['init','utf-8','map','totalChatUnits','warn','3519800QMacrV','entries','profiles','values','length','slice','message','5631444XKwgUL','12YOOGUz','filter','.jsonl','lastUpdatedAt','Failed\x20to\x20process\x20session\x20','parse','keys','mtime','2725731airIbv','monthly','timestamp','latestInputTokensByContext','inputTokens','585028qTvKoY','monthChatUnits','4096279pDVyvC','entryCount','month','WARN','object','daily','split','contextSignature','claude-usage','trim','credits','todayDate','default','toISOString','getFullYear','Failed\x20to\x20read\x20usage\x20directory:','profile','2hcunmp','model','lastUsedAt','stringify','30Djzzjf','startsWith','83755ETscEg','getTime','sessions','51477MbjbMq','todayChatUnits','replace','24DFmjpD','max'];a63_0x4aaf=function(){return _0x3dcb2a;};return a63_0x4aaf();}async function readStatsCache(){const _0x499aa3=a63_0x28fe,_0x30f19d=getStatsCachePath();if(!existsSync(_0x30f19d))return null;try{const _0x35f1c8=await readFile(_0x30f19d,_0x499aa3(0x1f9));return JSON['parse'](_0x35f1c8);}catch{return null;}}async function writeStatsCache(_0x443e54){const _0x110375=a63_0x28fe;await ensureUsageDir();const _0xfc3f1c=getStatsCachePath();await writeFile(_0xfc3f1c,JSON[_0x110375(0x1ed)](_0x443e54,null,0x2),'utf-8');}async function isCacheUpToDate(_0x4070b7,_0x493438){const _0x3f5fff=a63_0x28fe,_0x32cd35=_0x4070b7[_0x3f5fff(0x1f2)][_0x493438];if(!_0x32cd35)return![];const _0x1833ad=getSafeJsonlPath(_0x493438);if(!existsSync(_0x1833ad))return!![];try{const _0x7c7bef=await stat(_0x1833ad),_0x33fb73=new Date(_0x32cd35[_0x3f5fff(0x208)])[_0x3f5fff(0x1f1)](),_0x3a37a3=_0x7c7bef[_0x3f5fff(0x20c)][_0x3f5fff(0x1f1)]();return _0x33fb73>_0x3a37a3;}catch{return![];}}export async function rebuildCache(){const _0x7ee7ba=a63_0x28fe,_0x2ecac4=new Date(),_0xa95345=_0x2ecac4[_0x7ee7ba(0x1e6)]()['slice'](0x0,0xa),_0x69513b=_0x2ecac4[_0x7ee7ba(0x1e6)]()[_0x7ee7ba(0x202)](0x0,0x7),_0x33f1f0={'daily':{},'monthly':{},'sessions':{},'profiles':{},'lastRebuiltAt':_0x2ecac4[_0x7ee7ba(0x1e6)]()},_0x2f6275=await getAllSessionFiles();for(const _0x3bc396 of _0x2f6275){try{const _0x130a5f=await readSessionJsonl(_0x3bc396);if(_0x130a5f[_0x7ee7ba(0x201)]===0x0)continue;let _0x46fd15=0x0;const _0x2f0c50={};let _0x5589a2='';for(const _0x2127a6 of _0x130a5f){const _0x6577fd=getModelFactor(_0x2127a6[_0x7ee7ba(0x1eb)]),_0x210359=calculateChatUnit(_0x2127a6['inputTokens'],_0x2127a6['outputTokens'],_0x6577fd);_0x46fd15+=_0x210359;const _0xb883e1=_0x2127a6[_0x7ee7ba(0x1e0)]||_0x7ee7ba(0x1e5);_0x2f0c50[_0xb883e1]=_0x2127a6[_0x7ee7ba(0x211)];_0x2127a6[_0x7ee7ba(0x20f)]>_0x5589a2&&(_0x5589a2=_0x2127a6['timestamp']);const _0xa9e252=_0x2127a6[_0x7ee7ba(0x20f)]['slice'](0x0,0xa);!_0x33f1f0['daily'][_0xa9e252]&&(_0x33f1f0[_0x7ee7ba(0x1de)][_0xa9e252]={'totalChatUnits':0x0,'entryCount':0x0});_0x33f1f0['daily'][_0xa9e252]['totalChatUnits']+=_0x210359,_0x33f1f0[_0x7ee7ba(0x1de)][_0xa9e252]['entryCount']+=0x1;const _0x34fbe5=_0x2127a6['timestamp']['slice'](0x0,0x7);!_0x33f1f0[_0x7ee7ba(0x20e)][_0x34fbe5]&&(_0x33f1f0[_0x7ee7ba(0x20e)][_0x34fbe5]={'totalChatUnits':0x0,'entryCount':0x0});_0x33f1f0[_0x7ee7ba(0x20e)][_0x34fbe5][_0x7ee7ba(0x1fb)]+=_0x210359,_0x33f1f0[_0x7ee7ba(0x20e)][_0x34fbe5][_0x7ee7ba(0x215)]+=0x1;const _0x32a754=_0x2127a6[_0x7ee7ba(0x1e9)]||_0x7ee7ba(0x1e5);!_0x33f1f0[_0x7ee7ba(0x1ff)][_0x32a754]&&(_0x33f1f0['profiles'][_0x32a754]={'totalChatUnits':0x0,'entryCount':0x0,'lastUsedAt':'','todayChatUnits':0x0,'todayDate':_0xa95345,'monthChatUnits':0x0,'month':_0x69513b}),_0x33f1f0[_0x7ee7ba(0x1ff)][_0x32a754][_0x7ee7ba(0x1fb)]+=_0x210359,_0x33f1f0[_0x7ee7ba(0x1ff)][_0x32a754]['entryCount']+=0x1,_0x2127a6[_0x7ee7ba(0x20f)]>_0x33f1f0[_0x7ee7ba(0x1ff)][_0x32a754][_0x7ee7ba(0x1ec)]&&(_0x33f1f0[_0x7ee7ba(0x1ff)][_0x32a754]['lastUsedAt']=_0x2127a6[_0x7ee7ba(0x20f)]),_0xa9e252===_0xa95345&&(_0x33f1f0['profiles'][_0x32a754][_0x7ee7ba(0x1f4)]+=_0x210359),_0x34fbe5===_0x69513b&&(_0x33f1f0[_0x7ee7ba(0x1ff)][_0x32a754]['monthChatUnits']+=_0x210359);}_0x33f1f0[_0x7ee7ba(0x1f2)][_0x3bc396]={'totalChatUnits':_0x46fd15,'latestInputTokensByContext':_0x2f0c50,'createdAt':_0x130a5f[0x0][_0x7ee7ba(0x20f)],'lastUpdatedAt':_0x5589a2};}catch(_0xe8c384){const _0x44eabc=await getLogger();_0x44eabc['warn'](_0x7ee7ba(0x209)+_0x3bc396+':',_0xe8c384 instanceof Error?_0xe8c384['message']:String(_0xe8c384));continue;}}return cleanupOldEntries(_0x33f1f0),await writeStatsCache(_0x33f1f0),_0x33f1f0;}function cleanupOldEntries(_0x3957c5){const _0x5887fb=a63_0x28fe,_0x4edb3f=new Date(),_0x46cfa9=new Date(_0x4edb3f[_0x5887fb(0x1f1)]()-0x7*0x18*0x3c*0x3c*0x3e8);for(const _0x3fa2de of Object[_0x5887fb(0x20b)](_0x3957c5['daily'])){new Date(_0x3fa2de)<_0x46cfa9&&delete _0x3957c5['daily'][_0x3fa2de];}const _0x46e8c8=new Date(_0x4edb3f[_0x5887fb(0x1e7)]()-0x1,_0x4edb3f['getMonth'](),0x1);for(const _0x544367 of Object[_0x5887fb(0x20b)](_0x3957c5[_0x5887fb(0x20e)])){const [_0x2c71da,_0x2e1090]=_0x544367[_0x5887fb(0x1df)]('-')[_0x5887fb(0x1fa)](Number),_0x37f442=new Date(_0x2c71da,_0x2e1090-0x1,0x1);_0x37f442<_0x46e8c8&&delete _0x3957c5['monthly'][_0x544367];}const _0x1c3e41=new Date(_0x4edb3f[_0x5887fb(0x1f1)]()-0x1e*0x18*0x3c*0x3c*0x3e8);for(const [_0x7bd870,_0x2401bb]of Object['entries'](_0x3957c5['sessions'])){new Date(_0x2401bb[_0x5887fb(0x208)])<_0x1c3e41&&delete _0x3957c5[_0x5887fb(0x1f2)][_0x7bd870];}}export async function getOrUpdateCache(_0x2c8726){const _0x996351=_0x2c8726?sanitizeSessionId(_0x2c8726):undefined,_0x3fea24=await readStatsCache();if(!_0x3fea24)return rebuildCache();if(_0x996351){const _0xb15712=await isCacheUpToDate(_0x3fea24,_0x996351);if(!_0xb15712)return rebuildCache();}return _0x3fea24;}export async function getSessionCredits(_0x26a5d5){const _0x3ba294=a63_0x28fe,_0x221b63=sanitizeSessionId(_0x26a5d5),_0x328573=await getOrUpdateCache(_0x221b63),_0x238339=_0x328573['sessions'][_0x221b63];if(!_0x238339)return 0x0;return calculateCredits(_0x238339[_0x3ba294(0x1fb)]);}export async function getTodayCredits(){const _0x4b63c9=a63_0x28fe,_0x2c513d=await getOrUpdateCache(),_0x573fde=new Date()[_0x4b63c9(0x1e6)]()[_0x4b63c9(0x202)](0x0,0xa),_0x12b105=_0x2c513d[_0x4b63c9(0x1de)][_0x573fde];if(!_0x12b105)return 0x0;return calculateCredits(_0x12b105[_0x4b63c9(0x1fb)]);}export async function getMonthCredits(){const _0x6a7bc8=a63_0x28fe,_0x1446d5=await getOrUpdateCache(),_0x37baee=new Date()['toISOString']()[_0x6a7bc8(0x202)](0x0,0x7),_0x340654=_0x1446d5[_0x6a7bc8(0x20e)][_0x37baee];if(!_0x340654)return 0x0;return calculateCredits(_0x340654['totalChatUnits']);}export async function getSessionStats(_0x3828e8){const _0x151376=sanitizeSessionId(_0x3828e8),_0x272100=await getOrUpdateCache(_0x151376);return _0x272100['sessions'][_0x151376]||null;}function getMaxLatestInputTokens(_0xecf83c){const _0x124918=a63_0x28fe,_0x5d8b2a=Object['values'](_0xecf83c);if(_0x5d8b2a[_0x124918(0x201)]===0x0)return 0x0;return Math[_0x124918(0x1f7)](..._0x5d8b2a);}export async function getUsageStats(_0x144a51,_0x37a6ac){const _0x2c01e0=a63_0x28fe,_0x2376b6=sanitizeSessionId(_0x144a51),_0x3fdd9a=await getOrUpdateCache(_0x2376b6),_0x235d0b=_0x3fdd9a[_0x2c01e0(0x1f2)][_0x2376b6],_0x106cb3=new Date()[_0x2c01e0(0x1e6)]()['slice'](0x0,0xa),_0x52d5a1=new Date()[_0x2c01e0(0x1e6)]()[_0x2c01e0(0x202)](0x0,0x7);if(_0x37a6ac){const _0x412a47=_0x3fdd9a[_0x2c01e0(0x1ff)]?.[_0x37a6ac],_0xdf3aba=_0x412a47?.[_0x2c01e0(0x1e4)]===_0x106cb3?calculateCredits(_0x412a47[_0x2c01e0(0x1f4)]):0x0,_0x509a6c=_0x412a47?.[_0x2c01e0(0x216)]===_0x52d5a1?calculateCredits(_0x412a47[_0x2c01e0(0x213)]):0x0;return{'sessionCredits':_0x235d0b?calculateCredits(_0x235d0b[_0x2c01e0(0x1fb)]):0x0,'todayCredits':_0xdf3aba,'monthCredits':_0x509a6c,'latestInputTokens':_0x235d0b?getMaxLatestInputTokens(_0x235d0b['latestInputTokensByContext']):0x0};}return{'sessionCredits':_0x235d0b?calculateCredits(_0x235d0b[_0x2c01e0(0x1fb)]):0x0,'todayCredits':_0x3fdd9a[_0x2c01e0(0x1de)][_0x106cb3]?calculateCredits(_0x3fdd9a[_0x2c01e0(0x1de)][_0x106cb3][_0x2c01e0(0x1fb)]):0x0,'monthCredits':_0x3fdd9a[_0x2c01e0(0x20e)][_0x52d5a1]?calculateCredits(_0x3fdd9a['monthly'][_0x52d5a1][_0x2c01e0(0x1fb)]):0x0,'latestInputTokens':_0x235d0b?getMaxLatestInputTokens(_0x235d0b[_0x2c01e0(0x210)]):0x0};}export async function getAllProfileStats(){const _0x2aa11f=a63_0x28fe,_0x20fe4e=await getOrUpdateCache(),_0x57b6c1=_0x20fe4e[_0x2aa11f(0x1ff)]||{};return Object[_0x2aa11f(0x1fe)](_0x57b6c1)['filter'](([,_0x399af2])=>_0x399af2&&typeof _0x399af2===_0x2aa11f(0x218))[_0x2aa11f(0x1fa)](([_0x52c3a0,_0x1d8022])=>({'profile':_0x52c3a0,'credits':calculateCredits(_0x1d8022[_0x2aa11f(0x1fb)]||0x0),'entryCount':_0x1d8022[_0x2aa11f(0x215)]||0x0,'lastUsedAt':_0x1d8022[_0x2aa11f(0x1ec)]||''}))['sort']((_0x578e83,_0x554a44)=>_0x554a44[_0x2aa11f(0x1e3)]-_0x578e83[_0x2aa11f(0x1e3)]);}export async function getUsageSummary(){const _0x14b34c=a63_0x28fe,_0x26c7dc=await getOrUpdateCache(),_0x4f79f0=_0x26c7dc['profiles']||{},_0x3d9cd5=new Date()[_0x14b34c(0x1e6)]()[_0x14b34c(0x202)](0x0,0xa),_0xa34c19=new Date()[_0x14b34c(0x1e6)]()[_0x14b34c(0x202)](0x0,0x7),_0x1c998d=Object[_0x14b34c(0x200)](_0x4f79f0)[_0x14b34c(0x206)](_0x22deb5=>_0x22deb5&&typeof _0x22deb5===_0x14b34c(0x218)),_0x53385e=_0x1c998d['reduce']((_0x3a28dc,_0x365d64)=>_0x3a28dc+(_0x365d64['totalChatUnits']||0x0),0x0);return{'todayCredits':_0x26c7dc[_0x14b34c(0x1de)][_0x3d9cd5]?calculateCredits(_0x26c7dc[_0x14b34c(0x1de)][_0x3d9cd5]['totalChatUnits']||0x0):0x0,'monthCredits':_0x26c7dc['monthly'][_0xa34c19]?calculateCredits(_0x26c7dc[_0x14b34c(0x20e)][_0xa34c19][_0x14b34c(0x1fb)]||0x0):0x0,'totalCredits':calculateCredits(_0x53385e),'profileCount':_0x1c998d[_0x14b34c(0x201)]};}
@@ -1 +1 @@
1
- function a63_0x2431(_0x254306,_0x268361){_0x254306=_0x254306-0x173;const _0x2df620=a63_0x2df6();let _0x243130=_0x2df620[_0x254306];return _0x243130;}(function(_0x367d75,_0x1a0665){const _0xe21cc2=a63_0x2431,_0x59ddf4=_0x367d75();while(!![]){try{const _0x3a9f00=-parseInt(_0xe21cc2(0x17d))/0x1+-parseInt(_0xe21cc2(0x174))/0x2+parseInt(_0xe21cc2(0x176))/0x3*(-parseInt(_0xe21cc2(0x182))/0x4)+parseInt(_0xe21cc2(0x17e))/0x5+-parseInt(_0xe21cc2(0x175))/0x6+parseInt(_0xe21cc2(0x185))/0x7*(parseInt(_0xe21cc2(0x17f))/0x8)+parseInt(_0xe21cc2(0x183))/0x9*(parseInt(_0xe21cc2(0x173))/0xa);if(_0x3a9f00===_0x1a0665)break;else _0x59ddf4['push'](_0x59ddf4['shift']());}catch(_0x479076){_0x59ddf4['push'](_0x59ddf4['shift']());}}}(a63_0x2df6,0x32766));function a63_0x2df6(){const _0xbdd51c=['347382UsTyHd','stringify','822479mcmkKc','sort','130kleGKT','767318brUjHD','340848ZJVFCd','3AZzTmB','localeCompare','map','properties','update','name','required','251850EUyRfU','1579455zRvcez','8LsDtsj','filter','hex','144604ZbnoNq'];a63_0x2df6=function(){return _0xbdd51c;};return a63_0x2df6();}import{createHash}from'crypto';import{extractModelAlias,resolveModelAlias}from'../sdk/llm/model-aliases.js';export function calculateContextSignature(_0x5328bd,_0x2cb8d6,_0x5493e7,_0x3fbd63){const _0x42a662=a63_0x2431,_0x1b9390=extractModelAlias(_0x5328bd),_0x47eab8=resolveModelAlias(_0x1b9390),_0x35f71e=[..._0x2cb8d6||[]]['sort'](),_0x1c4dc2=(_0x5493e7||[])[_0x42a662(0x180)](_0x40defb=>_0x40defb!=null)[_0x42a662(0x178)](_0x3c2d60=>({'name':_0x3c2d60[_0x42a662(0x17b)],'params':Object['keys'](_0x3c2d60['input_schema']?.[_0x42a662(0x179)]||{})[_0x42a662(0x186)](),'required':(_0x3c2d60['input_schema']?.[_0x42a662(0x17c)]||[])['sort']()}))[_0x42a662(0x186)]((_0x52432f,_0x57399e)=>_0x52432f[_0x42a662(0x17b)][_0x42a662(0x177)](_0x57399e['name'])),_0x5b71c4=JSON[_0x42a662(0x184)]({'model':_0x47eab8,'prompts':_0x35f71e,'tools':_0x1c4dc2,'reasoning':_0x3fbd63});return createHash('sha256')[_0x42a662(0x17a)](_0x5b71c4)['digest'](_0x42a662(0x181))['substring'](0x0,0x10);}
1
+ (function(_0x5e4484,_0x56ebea){const _0x3c8471=a64_0x5182,_0x3d44d6=_0x5e4484();while(!![]){try{const _0x3bc7b8=parseInt(_0x3c8471(0x1fd))/0x1*(-parseInt(_0x3c8471(0x208))/0x2)+parseInt(_0x3c8471(0x1fe))/0x3*(-parseInt(_0x3c8471(0x1fc))/0x4)+parseInt(_0x3c8471(0x1f9))/0x5+parseInt(_0x3c8471(0x1f6))/0x6+-parseInt(_0x3c8471(0x1f4))/0x7*(parseInt(_0x3c8471(0x204))/0x8)+-parseInt(_0x3c8471(0x200))/0x9+parseInt(_0x3c8471(0x209))/0xa;if(_0x3bc7b8===_0x56ebea)break;else _0x3d44d6['push'](_0x3d44d6['shift']());}catch(_0x2f5aa7){_0x3d44d6['push'](_0x3d44d6['shift']());}}}(a64_0x356e,0x6c0c7));import{createHash}from'crypto';import{extractModelAlias,resolveModelAlias}from'../sdk/llm/model-aliases.js';function a64_0x5182(_0x550937,_0x5081ef){_0x550937=_0x550937-0x1f4;const _0x356ef9=a64_0x356e();let _0x51820f=_0x356ef9[_0x550937];return _0x51820f;}export function calculateContextSignature(_0xc22c92,_0x399f34,_0x258679,_0x3c9bd1){const _0x5d8133=a64_0x5182,_0x3884f4=extractModelAlias(_0xc22c92),_0x1906bb=resolveModelAlias(_0x3884f4),_0x1e9fb3=[..._0x399f34||[]][_0x5d8133(0x1f7)](),_0x3bde94=(_0x258679||[])[_0x5d8133(0x205)](_0x4ea2b2=>_0x4ea2b2!=null)[_0x5d8133(0x201)](_0x59162f=>({'name':_0x59162f[_0x5d8133(0x1fa)],'params':Object[_0x5d8133(0x1f8)](_0x59162f[_0x5d8133(0x1f5)]?.[_0x5d8133(0x1fb)]||{})[_0x5d8133(0x1f7)](),'required':(_0x59162f[_0x5d8133(0x1f5)]?.[_0x5d8133(0x203)]||[])[_0x5d8133(0x1f7)]()}))['sort']((_0x23f273,_0x1dae66)=>_0x23f273[_0x5d8133(0x1fa)]['localeCompare'](_0x1dae66[_0x5d8133(0x1fa)])),_0xc0304b=JSON['stringify']({'model':_0x1906bb,'prompts':_0x1e9fb3,'tools':_0x3bde94,'reasoning':_0x3c9bd1});return createHash('sha256')[_0x5d8133(0x1ff)](_0xc0304b)[_0x5d8133(0x202)](_0x5d8133(0x207))[_0x5d8133(0x206)](0x0,0x10);}function a64_0x356e(){const _0x5a0dc2=['359582uXSUpL','7433300sdWvPp','21eULeEv','input_schema','2741076cvYgKQ','sort','keys','2615010JvfNbi','name','properties','37108XGgKEH','1AsqhCs','12DKeLog','update','7899705dIiGwh','map','digest','required','495912UhUVKW','filter','substring','hex'];a64_0x356e=function(){return _0x5a0dc2;};return a64_0x356e();}
@@ -1 +1 @@
1
- (function(_0x3d2b93,_0x3a2c43){const _0x471155=a64_0x32d4,_0x27c922=_0x3d2b93();while(!![]){try{const _0x19ebf9=parseInt(_0x471155(0xf8))/0x1*(-parseInt(_0x471155(0xfb))/0x2)+parseInt(_0x471155(0x102))/0x3*(-parseInt(_0x471155(0xe7))/0x4)+-parseInt(_0x471155(0xeb))/0x5+parseInt(_0x471155(0xef))/0x6+parseInt(_0x471155(0x105))/0x7*(parseInt(_0x471155(0x107))/0x8)+parseInt(_0x471155(0xed))/0x9*(parseInt(_0x471155(0xec))/0xa)+parseInt(_0x471155(0xf7))/0xb*(parseInt(_0x471155(0xf4))/0xc);if(_0x19ebf9===_0x3a2c43)break;else _0x27c922['push'](_0x27c922['shift']());}catch(_0x84dc62){_0x27c922['push'](_0x27c922['shift']());}}}(a64_0x2362,0x9d59d));export function formatConversationHistory(_0x3a34cc){const _0x3032b6=a64_0x32d4;if(!_0x3a34cc||!Array['isArray'](_0x3a34cc))return'';const _0x1ff729=_0x3a34cc[_0x3032b6(0xe5)](_0x19b197=>_0x19b197!=null)['map'](_0x15fecc=>{const _0x57cd85=_0x3032b6,_0x4ef8d1=[],_0x526d0d=[];if(_0x15fecc[_0x57cd85(0xe3)]!=null&&Array[_0x57cd85(0xf1)](_0x15fecc[_0x57cd85(0xe3)]))for(const _0x593be1 of _0x15fecc[_0x57cd85(0xe3)]){if(!_0x593be1)continue;if(_0x593be1[_0x57cd85(0xe2)]==='text'&&_0x593be1[_0x57cd85(0xe8)])_0x4ef8d1['push'](_0x593be1[_0x57cd85(0xe8)]);else{if(_0x593be1[_0x57cd85(0xe2)]===_0x57cd85(0x103)&&_0x593be1['name']){const _0xecc664=_0x593be1[_0x57cd85(0xea)]?JSON[_0x57cd85(0xff)](_0x593be1[_0x57cd85(0xea)]):'{}';_0x526d0d[_0x57cd85(0xdf)]('<tool_use\x20name=\x22'+_0x593be1[_0x57cd85(0x100)]+_0x57cd85(0xe0)+(_0x593be1['id']||_0x57cd85(0xf5))+_0x57cd85(0xf3)+_0xecc664+_0x57cd85(0xf6));}else{if(_0x593be1[_0x57cd85(0xe2)]===_0x57cd85(0xf0)&&_0x593be1[_0x57cd85(0xe1)]){let _0x282c01='';if(typeof _0x593be1[_0x57cd85(0xe3)]==='string')_0x282c01=_0x593be1[_0x57cd85(0xe3)];else _0x593be1['content']!=null&&Array[_0x57cd85(0xf1)](_0x593be1[_0x57cd85(0xe3)])&&(_0x282c01=_0x593be1[_0x57cd85(0xe3)][_0x57cd85(0xe5)](_0x3202c3=>_0x3202c3&&_0x3202c3[_0x57cd85(0xe2)]==='text'&&_0x3202c3[_0x57cd85(0xe8)])['map'](_0x3cb2ef=>_0x3cb2ef[_0x57cd85(0xe8)])['join']('\x0a'));const _0x5ef99a=_0x593be1[_0x57cd85(0xde)]?_0x57cd85(0xf9):'';_0x526d0d[_0x57cd85(0xdf)](_0x57cd85(0xdd)+_0x593be1[_0x57cd85(0xe1)]+'\x22'+_0x5ef99a+']\x0a'+_0x282c01);}}}}else typeof _0x15fecc[_0x57cd85(0xe3)]===_0x57cd85(0xee)&&_0x15fecc[_0x57cd85(0xe3)]&&_0x4ef8d1[_0x57cd85(0xdf)](_0x15fecc[_0x57cd85(0xe3)]);if(_0x4ef8d1['length']===0x0&&_0x526d0d[_0x57cd85(0xfa)]===0x0)return null;const _0x4451b7=_0x15fecc['role']===_0x57cd85(0x104)?_0x57cd85(0x101):_0x57cd85(0x108),_0x4d3495=[];return(_0x4ef8d1['length']>0x0||_0x15fecc[_0x57cd85(0xfd)]===_0x57cd85(0xf2)&&_0x526d0d[_0x57cd85(0xfa)]>0x0)&&_0x4d3495[_0x57cd85(0xdf)](_0x4451b7+'\x0a'+_0x4ef8d1[_0x57cd85(0xfe)]('\x0a\x0a')),_0x4d3495[_0x57cd85(0xdf)](..._0x526d0d),_0x4d3495[_0x57cd85(0xfe)]('\x0a\x0a');})['filter'](_0x51cba6=>_0x51cba6!=null&&_0x51cba6[_0x3032b6(0xfa)]>0x0)[_0x3032b6(0xfe)]('\x0a\x0a');return _0x1ff729?_0x1ff729+_0x3032b6(0xe6):'';}function a64_0x2362(){const _0x4827a5=['slice','input','3107680lIxIdV','10Dihshe','10212867OokZGt','string','1715322VUJXBq','tool_result','isArray','assistant','\x22>\x0a','72GcatOh','unknown','\x0a</tool_use>','2119711IxGwct','1dirXpZ','\x20error=\x22true\x22','length','936830ZvLOeF','No\x20user\x20message\x20found\x20in\x20request','role','join','stringify','name','[user]','2737641gZWatq','tool_use','user','203tSVGPr','message.content\x20must\x20be\x20a\x20string\x20or\x20array,\x20got:\x20','19352MArgoc','[assistant]','pop','[tool_result\x20tool_use_id=\x22','is_error','push','\x22\x20id=\x22','tool_use_id','type','content','map','filter','\x0a\x0a[chat\x20history\x20end]','4LNTjSQ','text'];a64_0x2362=function(){return _0x4827a5;};return a64_0x2362();}export function calculateConversationDelta(_0x366add,_0x17d2ff){const _0x5d5c75=a64_0x32d4;if(_0x17d2ff['length']===0x0)return _0x366add;const _0x3eb1eb=_0x17d2ff[_0x5d5c75(0xfa)];return _0x366add[_0x5d5c75(0xe9)](_0x3eb1eb);}function a64_0x32d4(_0x5dc877,_0x299e02){_0x5dc877=_0x5dc877-0xdd;const _0x2362d7=a64_0x2362();let _0x32d450=_0x2362d7[_0x5dc877];return _0x32d450;}export function extractLastUserMessage(_0x57fa68,_0x22f7a1){const _0x1849ca=a64_0x32d4;let _0x4d0c68=_0x57fa68['filter'](_0x29f49c=>_0x29f49c[_0x1849ca(0xfd)]===_0x1849ca(0x104))['pop']();if(!_0x4d0c68){_0x4d0c68=_0x22f7a1[_0x1849ca(0xe5)](_0x63f31=>_0x63f31[_0x1849ca(0xfd)]==='user')[_0x1849ca(0x109)]();if(!_0x4d0c68)return{'message':null,'text':null,'error':_0x1849ca(0xfc)};}if(typeof _0x4d0c68[_0x1849ca(0xe3)]===_0x1849ca(0xee))return{'message':_0x4d0c68,'text':_0x4d0c68['content'],'error':null};if(_0x4d0c68[_0x1849ca(0xe3)]!=null&&Array[_0x1849ca(0xf1)](_0x4d0c68['content'])){const _0x4fa15c=_0x4d0c68[_0x1849ca(0xe3)][_0x1849ca(0xe5)](_0x5c243d=>_0x5c243d&&_0x5c243d['type']==='text'&&_0x5c243d[_0x1849ca(0xe8)])[_0x1849ca(0xe4)](_0x2c329a=>_0x2c329a[_0x1849ca(0xe8)])[_0x1849ca(0xfe)]('\x0a');return{'message':_0x4d0c68,'text':_0x4fa15c,'error':null};}return{'message':_0x4d0c68,'text':null,'error':_0x1849ca(0x106)+typeof _0x4d0c68['content']+'\x20'+_0x4d0c68[_0x1849ca(0xe3)]};}
1
+ function a65_0x6267(){const _0x399879=['24fGxMnq','104xwhJAO','\x20error=\x22true\x22','\x0a\x0a[chat\x20history\x20end]','157923ZbwLxI','\x22\x20id=\x22','user','5tZaZnK','content','\x22>\x0a','16830oQKCJB','type','map','string','assistant','push','[user]','tool_use_id','4475004QxcWDl','7489839YsRZHB','10502hzZapu','filter','slice','6501vAVZwf','No\x20user\x20message\x20found\x20in\x20request','message.content\x20must\x20be\x20a\x20string\x20or\x20array,\x20got:\x20','role','name','pop','is_error','11311908edMLVA','join','52YvYZRW','124cBlPxj','input','isArray','length','text','tool_use','5624487WTwotT'];a65_0x6267=function(){return _0x399879;};return a65_0x6267();}(function(_0x41d977,_0x4037f2){const _0x35cad8=a65_0x1cca,_0x343279=_0x41d977();while(!![]){try{const _0x493db9=-parseInt(_0x35cad8(0x203))/0x1*(-parseInt(_0x35cad8(0x1ee))/0x2)+parseInt(_0x35cad8(0x206))/0x3*(parseInt(_0x35cad8(0x1fb))/0x4)+parseInt(_0x35cad8(0x209))/0x5*(parseInt(_0x35cad8(0x1ec))/0x6)+-parseInt(_0x35cad8(0x1ed))/0x7+parseInt(_0x35cad8(0x202))/0x8*(parseInt(_0x35cad8(0x201))/0x9)+-parseInt(_0x35cad8(0x20c))/0xa*(-parseInt(_0x35cad8(0x1f1))/0xb)+-parseInt(_0x35cad8(0x1f8))/0xc*(parseInt(_0x35cad8(0x1fa))/0xd);if(_0x493db9===_0x4037f2)break;else _0x343279['push'](_0x343279['shift']());}catch(_0x5ddd62){_0x343279['push'](_0x343279['shift']());}}}(a65_0x6267,0xe8966));function a65_0x1cca(_0x5ab7cc,_0x444275){_0x5ab7cc=_0x5ab7cc-0x1ec;const _0x626724=a65_0x6267();let _0x1cca3f=_0x626724[_0x5ab7cc];return _0x1cca3f;}export function formatConversationHistory(_0xa89bd2){const _0x302209=a65_0x1cca;if(!_0xa89bd2||!Array[_0x302209(0x1fd)](_0xa89bd2))return'';const _0x31509f=_0xa89bd2[_0x302209(0x1ef)](_0x127b30=>_0x127b30!=null)[_0x302209(0x20e)](_0x21b41c=>{const _0x26b116=_0x302209,_0xbd4645=[],_0x1434e7=[];if(_0x21b41c[_0x26b116(0x20a)]!=null&&Array[_0x26b116(0x1fd)](_0x21b41c[_0x26b116(0x20a)]))for(const _0x4f8e5e of _0x21b41c[_0x26b116(0x20a)]){if(!_0x4f8e5e)continue;if(_0x4f8e5e['type']===_0x26b116(0x1ff)&&_0x4f8e5e[_0x26b116(0x1ff)])_0xbd4645[_0x26b116(0x211)](_0x4f8e5e[_0x26b116(0x1ff)]);else{if(_0x4f8e5e['type']===_0x26b116(0x200)&&_0x4f8e5e['name']){const _0x8001f=_0x4f8e5e[_0x26b116(0x1fc)]?JSON['stringify'](_0x4f8e5e['input']):'{}';_0x1434e7[_0x26b116(0x211)]('<tool_use\x20name=\x22'+_0x4f8e5e[_0x26b116(0x1f5)]+_0x26b116(0x207)+(_0x4f8e5e['id']||'unknown')+_0x26b116(0x20b)+_0x8001f+'\x0a</tool_use>');}else{if(_0x4f8e5e[_0x26b116(0x20d)]==='tool_result'&&_0x4f8e5e['tool_use_id']){let _0x50692c='';if(typeof _0x4f8e5e['content']===_0x26b116(0x20f))_0x50692c=_0x4f8e5e[_0x26b116(0x20a)];else _0x4f8e5e[_0x26b116(0x20a)]!=null&&Array[_0x26b116(0x1fd)](_0x4f8e5e[_0x26b116(0x20a)])&&(_0x50692c=_0x4f8e5e[_0x26b116(0x20a)][_0x26b116(0x1ef)](_0x3611d5=>_0x3611d5&&_0x3611d5['type']===_0x26b116(0x1ff)&&_0x3611d5[_0x26b116(0x1ff)])[_0x26b116(0x20e)](_0x313ba6=>_0x313ba6[_0x26b116(0x1ff)])[_0x26b116(0x1f9)]('\x0a'));const _0xa93f43=_0x4f8e5e[_0x26b116(0x1f7)]?_0x26b116(0x204):'';_0x1434e7[_0x26b116(0x211)]('[tool_result\x20tool_use_id=\x22'+_0x4f8e5e[_0x26b116(0x213)]+'\x22'+_0xa93f43+']\x0a'+_0x50692c);}}}}else typeof _0x21b41c[_0x26b116(0x20a)]===_0x26b116(0x20f)&&_0x21b41c['content']&&_0xbd4645[_0x26b116(0x211)](_0x21b41c[_0x26b116(0x20a)]);if(_0xbd4645[_0x26b116(0x1fe)]===0x0&&_0x1434e7[_0x26b116(0x1fe)]===0x0)return null;const _0x3376d3=_0x21b41c[_0x26b116(0x1f4)]===_0x26b116(0x208)?_0x26b116(0x212):'[assistant]',_0x283747=[];return(_0xbd4645['length']>0x0||_0x21b41c[_0x26b116(0x1f4)]===_0x26b116(0x210)&&_0x1434e7[_0x26b116(0x1fe)]>0x0)&&_0x283747['push'](_0x3376d3+'\x0a'+_0xbd4645['join']('\x0a\x0a')),_0x283747['push'](..._0x1434e7),_0x283747[_0x26b116(0x1f9)]('\x0a\x0a');})['filter'](_0x56e18a=>_0x56e18a!=null&&_0x56e18a[_0x302209(0x1fe)]>0x0)['join']('\x0a\x0a');return _0x31509f?_0x31509f+_0x302209(0x205):'';}export function calculateConversationDelta(_0x5082b4,_0x5c299e){const _0x3a8591=a65_0x1cca;if(_0x5c299e[_0x3a8591(0x1fe)]===0x0)return _0x5082b4;const _0x1852e2=_0x5c299e[_0x3a8591(0x1fe)];return _0x5082b4[_0x3a8591(0x1f0)](_0x1852e2);}export function extractLastUserMessage(_0x28615d,_0x47c71d){const _0x2b1d24=a65_0x1cca;let _0x3ec2e9=_0x28615d[_0x2b1d24(0x1ef)](_0x22001f=>_0x22001f[_0x2b1d24(0x1f4)]==='user')[_0x2b1d24(0x1f6)]();if(!_0x3ec2e9){_0x3ec2e9=_0x47c71d[_0x2b1d24(0x1ef)](_0x426dec=>_0x426dec[_0x2b1d24(0x1f4)]===_0x2b1d24(0x208))[_0x2b1d24(0x1f6)]();if(!_0x3ec2e9)return{'message':null,'text':null,'error':_0x2b1d24(0x1f2)};}if(typeof _0x3ec2e9[_0x2b1d24(0x20a)]===_0x2b1d24(0x20f))return{'message':_0x3ec2e9,'text':_0x3ec2e9[_0x2b1d24(0x20a)],'error':null};if(_0x3ec2e9[_0x2b1d24(0x20a)]!=null&&Array[_0x2b1d24(0x1fd)](_0x3ec2e9[_0x2b1d24(0x20a)])){const _0x9b87bc=_0x3ec2e9[_0x2b1d24(0x20a)][_0x2b1d24(0x1ef)](_0x2b42c1=>_0x2b42c1&&_0x2b42c1[_0x2b1d24(0x20d)]==='text'&&_0x2b42c1[_0x2b1d24(0x1ff)])['map'](_0x13f107=>_0x13f107['text'])[_0x2b1d24(0x1f9)]('\x0a');return{'message':_0x3ec2e9,'text':_0x9b87bc,'error':null};}return{'message':_0x3ec2e9,'text':null,'error':_0x2b1d24(0x1f3)+typeof _0x3ec2e9[_0x2b1d24(0x20a)]+'\x20'+_0x3ec2e9[_0x2b1d24(0x20a)]};}
@@ -1 +1 @@
1
- const a65_0x2a4841=a65_0x2424;(function(_0x599270,_0x195633){const _0x280ce3=a65_0x2424,_0x200c14=_0x599270();while(!![]){try{const _0x363232=-parseInt(_0x280ce3(0x186))/0x1*(-parseInt(_0x280ce3(0x159))/0x2)+parseInt(_0x280ce3(0x168))/0x3*(parseInt(_0x280ce3(0x171))/0x4)+parseInt(_0x280ce3(0x16d))/0x5*(parseInt(_0x280ce3(0x1ad))/0x6)+parseInt(_0x280ce3(0x1bb))/0x7*(parseInt(_0x280ce3(0x15f))/0x8)+-parseInt(_0x280ce3(0x1a6))/0x9*(-parseInt(_0x280ce3(0x1ab))/0xa)+parseInt(_0x280ce3(0x14d))/0xb*(parseInt(_0x280ce3(0x17f))/0xc)+-parseInt(_0x280ce3(0x138))/0xd;if(_0x363232===_0x195633)break;else _0x200c14['push'](_0x200c14['shift']());}catch(_0x3f0891){_0x200c14['push'](_0x200c14['shift']());}}}(a65_0x16f2,0xec13a));import a65_0x368a1b from'fastify';function a65_0x2424(_0xd49641,_0x343f79){_0xd49641=_0xd49641-0x138;const _0x16f265=a65_0x16f2();let _0x242409=_0x16f265[_0xd49641];return _0x242409;}import a65_0x365edc from'@fastify/cors';import{SSEUsageTracker}from'./sse-usage-parser.js';import{appendUsageEntry}from'./claude-usage-tracker.js';import{getVersion}from'../core/version.js';const DEFAULT_TIMEOUT_MS=0x5*0x3c*0x3e8,TDX_SYSTEM_PROMPT=a65_0x2a4841(0x145);function extractSessionUUID(_0x3275f3){const _0x185416=a65_0x2a4841,_0x3bea83=_0x3275f3[_0x185416(0x166)](/_session_([a-f0-9-]+)$/i);if(_0x3bea83)return _0x3bea83[0x1];return _0x3275f3;}function a65_0x16f2(){const _0x1a0a46=['cacheCreationInputTokens','post','handleStreamingResponse','decode','[PASSTHROUGH]\x20Forwarding\x20count_tokens\x20to:\x20','model','getUsage','http://127.0.0.1:','status','llmProxyUrl','7HuHwwk','TimeoutError','name','url','info','listen','55159754NxttJH','x-api-key','isArray',',\x20model=',',\x20cache_create=','cache_read_input_tokens','addContentTypeParser','messages','Pass-through\x20proxy\x20server\x20started\x20on\x20port\x20','close','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20request:','/health','startsWith','You\x20are\x20`tdx\x20claude`,\x20an\x20extension\x20of\x20Claude\x20Code\x20with\x20tdx\x20CLI\x20tools\x20(https://tdx.treasuredata.com/)\x20and\x20skills\x20for\x20Treasure\x20Data\x20and\x20CDP.\x0a\x0aFor\x20Treasure\x20Data\x20tasks,\x20use\x20these\x20skills:\x0a\x0a|\x20Task\x20|\x20Skill\x20|\x0a|------|-------|\x0a|\x20tdx\x20CLI\x20operations\x20(databases,\x20tables,\x20queries)\x20|\x20tdx-skills:tdx-basic\x20|\x0a|\x20CDP\x20parent\x20segments\x20(YAML\x20config)\x20|\x20tdx-skills:parent-segment\x20|\x0a|\x20CDP\x20child\x20segments\x20(rules,\x20activations)\x20|\x20tdx-skills:segment\x20|\x0a|\x20Validate\x20segment\x20YAML\x20|\x20tdx-skills:validate-segment\x20|\x0a|\x20CDP\x20journeys\x20(stages,\x20steps)\x20|\x20tdx-skills:journey\x20|\x0a|\x20Validate\x20journey\x20YAML\x20|\x20tdx-skills:validate-journey\x20|\x0a|\x20Configure\x20activations\x20|\x20tdx-skills:connector-config\x20|\x0a|\x20Build\x20LLM\x20agents\x20|\x20tdx-skills:agent\x20|\x0a|\x20Write\x20agent\x20system\x20prompts\x20|\x20tdx-skills:agent-prompt\x20|\x0a|\x20TD\x20Trino\x20SQL\x20queries\x20|\x20sql-skills:trino\x20|\x0a|\x20TD\x20Hive\x20SQL\x20queries\x20|\x20sql-skills:hive\x20|\x0a|\x20Time\x20filtering\x20(td_interval,\x20partition\x20pruning)\x20|\x20sql-skills:time-filtering\x20|\x0a|\x20Optimize\x20slow\x20Trino\x20queries\x20|\x20sql-skills:trino-optimizer\x20|\x0a|\x20Convert\x20Trino\x20to\x20Hive\x20(memory\x20errors)\x20|\x20sql-skills:trino-to-hive-migration\x20|\x0a|\x20Treasure\x20Workflow\x20(.dig\x20files)\x20|\x20workflow-skills:digdag\x20|\x0a|\x20Debug/manage\x20workflows\x20|\x20workflow-skills:workflow-management\x20|\x0a|\x20dbt\x20with\x20TD\x20Trino\x20|\x20workflow-skills:dbt\x20|\x0a|\x20JavaScript\x20SDK\x20(browser\x20tracking)\x20|\x20sdk-skills:javascript\x20|\x0a|\x20Python\x20SDK\x20(pytd,\x20pandas)\x20|\x20sdk-skills:python\x20|','GET','Content-Type','host','[PASSTHROUGH]\x20','Forwarding\x20to:\x20','event:\x20error\x0adata:\x20','tdx','7271bUopWJ','toISOString','headers','processChunk','logger','buildForwardHeaders','message','body','write','X-TD-Client','unknown','TD\x20LLM\x20Pass-through\x20Proxy\x20Server','4HKrppf','input_tokens','[PASSTHROUGH]\x20Usage:\x20input=','api_error','authorization','connection','4142752DIxxWJ','usage','join','outputTokens','parse','handleCountTokens','haiku','match','end','760719uVZQOy','X-TD-Client-Version','content-length','register','anthropic-version','89935fFoMEm','system','User-Agent','text/event-stream','28NjYKGV',',\x20cache_read=','setupRoutes','OPTIONS','Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20','Error\x20body:\x20','getReader','/v1/messages','error','metadata','getAddress','entries','logUsage','POST','14532tZAiRS','Authorization','application/json','no-cache','x-td-','port','code','367338wffQGG','[PASSTHROUGH]\x20Failed\x20to\x20log\x20usage:','Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20','header','setupJsonParser','cache_creation_input_tokens','user-agent','text','timeoutMs','raw','Unknown\x20error','[PASSTHROUGH]\x20Stream\x20error:','[PASSTHROUGH]\x20Upstream\x20error:\x20','has','toLowerCase','string','start','timeout_error','cacheReadInputTokens','method','/v1/messages/count_tokens','TD1\x20','profile','stop','debug','setErrorHandler','config','server','get','timeout','transfer-encoding','SKIP_HEADERS','27Izvnzp','setupMiddleware',':\x20messages=','send','inputTokens','4486840qgTRFs','tdx/','12qnrziD','apiKey','stringify','read'];a65_0x16f2=function(){return _0x1a0a46;};return a65_0x16f2();}export function injectSystemPrompt(_0x416d4d,_0x13a0f7){const _0x396c42=a65_0x2a4841,_0x5e3232=_0x416d4d[_0x396c42(0x16e)];if(!_0x5e3232)return{..._0x416d4d,'system':_0x13a0f7};if(typeof _0x5e3232==='string')return{..._0x416d4d,'system':_0x13a0f7+'\x0a\x0a'+_0x5e3232};if(Array['isArray'](_0x5e3232)){const _0x28263d={'type':_0x396c42(0x18d),'text':_0x13a0f7};return{..._0x416d4d,'system':[_0x28263d,..._0x5e3232]};}return _0x416d4d;}export function shouldInjectSystemPrompt(_0x44cd44){const _0x16ca15=a65_0x2a4841;return!_0x44cd44[_0x16ca15(0x194)]()['includes'](_0x16ca15(0x165));}export class PassThroughProxyServer{['server'];[a65_0x2a4841(0x1a0)];[a65_0x2a4841(0x151)];constructor(_0x5019cb){const _0x393ca7=a65_0x2a4841;this[_0x393ca7(0x1a0)]=_0x5019cb,this[_0x393ca7(0x151)]=_0x5019cb[_0x393ca7(0x151)],this[_0x393ca7(0x1a1)]=a65_0x368a1b({'logger':![],'bodyLimit':0x40*0x400*0x400}),this[_0x393ca7(0x18a)](),this['setupMiddleware'](),this[_0x393ca7(0x173)]();}[a65_0x2a4841(0x18a)](){const _0x1398df=a65_0x2a4841;this['server'][_0x1398df(0x13e)]('application/json',{'parseAs':_0x1398df(0x195)},(_0x702c7a,_0x2c001e,_0x554c9b)=>{try{const _0x455ffb=JSON['parse'](_0x2c001e);_0x554c9b(null,_0x455ffb);}catch(_0x399d94){_0x554c9b(_0x399d94,undefined);}});}[a65_0x2a4841(0x1a7)](){const _0x44c452=a65_0x2a4841;this[_0x44c452(0x1a1)][_0x44c452(0x16b)](a65_0x365edc,{'origin':!![],'methods':[_0x44c452(0x146),'POST',_0x44c452(0x174)],'allowedHeaders':[_0x44c452(0x147),'Authorization',_0x44c452(0x16c),_0x44c452(0x139)]}),this[_0x44c452(0x1a1)][_0x44c452(0x19f)]((_0x2e9955,_0x1f0316,_0x5e8ec2)=>{const _0x3ae65b=_0x44c452,_0x817878=_0x2e9955 instanceof Error?_0x2e9955[_0x3ae65b(0x153)]:_0x3ae65b(0x190);this[_0x3ae65b(0x151)][_0x3ae65b(0x179)]('[PASSTHROUGH\x20PROXY\x20ERROR]:',_0x2e9955),_0x5e8ec2['code'](0x1f4)[_0x3ae65b(0x1a9)]({'type':_0x3ae65b(0x179),'error':{'type':_0x3ae65b(0x15c),'message':_0x817878}});});}[a65_0x2a4841(0x173)](){const _0x30c867=a65_0x2a4841;this[_0x30c867(0x1a1)][_0x30c867(0x1a2)](_0x30c867(0x143),async()=>{const _0x73c72c=_0x30c867;return{'status':'ok','message':_0x73c72c(0x158)};}),this[_0x30c867(0x1a1)][_0x30c867(0x1b2)](_0x30c867(0x178),async(_0x21f0be,_0x40028a)=>{return this['handleMessages'](_0x21f0be,_0x40028a);}),this[_0x30c867(0x1a1)][_0x30c867(0x1b2)](_0x30c867(0x19a),async(_0xbc2d71,_0x5905c7)=>{const _0x2bd5c3=_0x30c867;return this[_0x2bd5c3(0x164)](_0xbc2d71,_0x5905c7);});}static ['SKIP_HEADERS']=new Set([a65_0x2a4841(0x148),a65_0x2a4841(0x15e),a65_0x2a4841(0x16a),a65_0x2a4841(0x1a4),a65_0x2a4841(0x15d),'x-api-key',a65_0x2a4841(0x18c)]);['buildForwardHeaders'](_0xcb516a){const _0x1e784f=a65_0x2a4841,_0x34c80f={};for(const [_0x1ece27,_0x2bb27a]of Object[_0x1e784f(0x17c)](_0xcb516a[_0x1e784f(0x14f)])){const _0x4bdd76=_0x1ece27[_0x1e784f(0x194)]();if(PassThroughProxyServer[_0x1e784f(0x1a5)][_0x1e784f(0x193)](_0x4bdd76))continue;if(_0x4bdd76[_0x1e784f(0x144)](_0x1e784f(0x183)))continue;if(typeof _0x2bb27a===_0x1e784f(0x195))_0x34c80f[_0x1ece27]=_0x2bb27a;else Array[_0x1e784f(0x13a)](_0x2bb27a)&&(_0x34c80f[_0x1ece27]=_0x2bb27a[_0x1e784f(0x161)](',\x20'));}const _0x3f54ab=getVersion();return _0x34c80f[_0x1e784f(0x180)]=_0x1e784f(0x19b)+this['config'][_0x1e784f(0x1ae)],_0x34c80f[_0x1e784f(0x16f)]=_0x1e784f(0x1ac)+_0x3f54ab,_0x34c80f[_0x1e784f(0x156)]=_0x1e784f(0x14c),_0x34c80f[_0x1e784f(0x169)]=_0x3f54ab,_0x34c80f;}async['handleMessages'](_0x5baf7f,_0x8c1165){const _0x30e167=a65_0x2a4841,_0x2a979a=_0x5baf7f['body'],_0x3d6179=_0x2a979a['stream']!==![],_0x120229=_0x2a979a[_0x30e167(0x17a)],_0x20b578=_0x120229?.['user_id']||'default',_0x16ba53=extractSessionUUID(_0x20b578),_0x52535e=_0x2a979a[_0x30e167(0x1b6)]||_0x30e167(0x157),_0x2533ce=shouldInjectSystemPrompt(_0x52535e)?injectSystemPrompt(_0x2a979a,TDX_SYSTEM_PROMPT):_0x2a979a,_0xe03c72=JSON[_0x30e167(0x1af)](_0x2533ce),_0x3e8f75=Array[_0x30e167(0x13a)](_0x2a979a[_0x30e167(0x13f)])?_0x2a979a[_0x30e167(0x13f)]['length']:0x0;this[_0x30e167(0x151)][_0x30e167(0x1bf)](_0x30e167(0x149)+_0x5baf7f[_0x30e167(0x199)]+'\x20'+_0x5baf7f[_0x30e167(0x1be)]+_0x30e167(0x1a8)+_0x3e8f75+_0x30e167(0x13b)+_0x52535e+',\x20stream='+_0x3d6179);const _0x59712b=this[_0x30e167(0x1a0)][_0x30e167(0x1ba)]+_0x30e167(0x178),_0x2ba65d=this[_0x30e167(0x152)](_0x5baf7f);this['logger'][_0x30e167(0x19e)](_0x30e167(0x14a)+_0x59712b);const _0x381cd5=this['config'][_0x30e167(0x18e)]||DEFAULT_TIMEOUT_MS;try{const _0x572407=await fetch(_0x59712b,{'method':_0x30e167(0x17e),'headers':_0x2ba65d,'body':_0xe03c72,'signal':AbortSignal[_0x30e167(0x1a3)](_0x381cd5)});if(!_0x572407['ok']){const _0x132844=await _0x572407[_0x30e167(0x18d)]();return this[_0x30e167(0x151)][_0x30e167(0x179)](_0x30e167(0x192)+_0x572407[_0x30e167(0x1b9)]+'\x20'+_0x572407['statusText']),this[_0x30e167(0x151)]['debug'](_0x30e167(0x176)+_0x132844),_0x8c1165[_0x30e167(0x185)](_0x572407[_0x30e167(0x1b9)]),_0x8c1165[_0x30e167(0x189)](_0x30e167(0x147),_0x572407[_0x30e167(0x14f)][_0x30e167(0x1a2)](_0x30e167(0x147))||'application/json'),_0x8c1165[_0x30e167(0x1a9)](_0x132844);}if(_0x3d6179&&_0x572407[_0x30e167(0x154)])await this[_0x30e167(0x1b3)](_0x572407['body'],_0x8c1165,_0x16ba53,_0x52535e);else{const _0x3d939b=await _0x572407[_0x30e167(0x18d)]();_0x8c1165[_0x30e167(0x189)](_0x30e167(0x147),_0x572407[_0x30e167(0x14f)][_0x30e167(0x1a2)](_0x30e167(0x147))||_0x30e167(0x181));try{const _0x49286a=JSON[_0x30e167(0x163)](_0x3d939b);_0x49286a['usage']&&await this[_0x30e167(0x17d)](_0x16ba53,_0x52535e,_0x49286a['usage'][_0x30e167(0x15a)]||0x0,_0x49286a[_0x30e167(0x160)]['output_tokens']||0x0,_0x49286a[_0x30e167(0x160)][_0x30e167(0x18b)],_0x49286a[_0x30e167(0x160)][_0x30e167(0x13d)]);}catch{}return _0x8c1165[_0x30e167(0x1a9)](_0x3d939b);}}catch(_0x33b8e3){const _0x42b4b1=_0x33b8e3 instanceof Error?_0x33b8e3[_0x30e167(0x153)]:'Unknown\x20error',_0xb962=_0x33b8e3 instanceof Error&&_0x33b8e3[_0x30e167(0x1bd)]===_0x30e167(0x1bc);this[_0x30e167(0x151)][_0x30e167(0x179)](_0x30e167(0x142),_0x33b8e3),_0x8c1165[_0x30e167(0x185)](_0xb962?0x1f8:0x1f7)['send']({'type':_0x30e167(0x179),'error':{'type':_0xb962?'timeout_error':_0x30e167(0x15c),'message':_0xb962?'Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20'+_0x381cd5+'ms':_0x30e167(0x175)+_0x42b4b1}});}}async[a65_0x2a4841(0x1b3)](_0xd3c0fb,_0x4da8ee,_0x1181bc,_0xa75797){const _0x1f2d9d=a65_0x2a4841;_0x4da8ee[_0x1f2d9d(0x18f)]['writeHead'](0xc8,{'Content-Type':_0x1f2d9d(0x170),'Cache-Control':_0x1f2d9d(0x182),'Connection':'keep-alive'});const _0x31f84d=new SSEUsageTracker(),_0x2e1e92=_0xd3c0fb[_0x1f2d9d(0x177)](),_0x4e5a6d=new TextDecoder();try{while(!![]){const {done:_0x876464,value:_0x5a1fce}=await _0x2e1e92[_0x1f2d9d(0x1b0)]();if(_0x876464)break;const _0x2310c8=_0x4e5a6d[_0x1f2d9d(0x1b4)](_0x5a1fce,{'stream':!![]});_0x31f84d[_0x1f2d9d(0x150)](_0x2310c8),_0x4da8ee['raw'][_0x1f2d9d(0x155)](_0x2310c8);}const _0xd14d00=_0x31f84d[_0x1f2d9d(0x1b7)]();(_0xd14d00[_0x1f2d9d(0x1aa)]>0x0||_0xd14d00[_0x1f2d9d(0x162)]>0x0)&&await this[_0x1f2d9d(0x17d)](_0x1181bc,_0xa75797,_0xd14d00['inputTokens'],_0xd14d00[_0x1f2d9d(0x162)],_0xd14d00[_0x1f2d9d(0x1b1)],_0xd14d00[_0x1f2d9d(0x198)]);}catch(_0x311882){this[_0x1f2d9d(0x151)][_0x1f2d9d(0x179)](_0x1f2d9d(0x191),_0x311882);const _0x16e5fb=_0x1f2d9d(0x14b)+JSON[_0x1f2d9d(0x1af)]({'type':_0x1f2d9d(0x179),'error':{'type':'stream_error','message':'Stream\x20interrupted'}})+'\x0a\x0a';_0x4da8ee['raw'][_0x1f2d9d(0x155)](_0x16e5fb);}finally{_0x4da8ee[_0x1f2d9d(0x18f)][_0x1f2d9d(0x167)]();}}async['handleCountTokens'](_0xa88335,_0x5beb89){const _0x43e587=a65_0x2a4841,_0x5158f3=_0xa88335[_0x43e587(0x154)],_0x45f31b=this[_0x43e587(0x1a0)][_0x43e587(0x1ba)]+_0x43e587(0x19a),_0x4f49d5=this[_0x43e587(0x152)](_0xa88335),_0x1b9c3a=_0x5158f3[_0x43e587(0x1b6)]||_0x43e587(0x157),_0x13a3bc=shouldInjectSystemPrompt(_0x1b9c3a)?injectSystemPrompt(_0x5158f3,TDX_SYSTEM_PROMPT):_0x5158f3,_0xd60146=JSON[_0x43e587(0x1af)](_0x13a3bc);this[_0x43e587(0x151)][_0x43e587(0x19e)](_0x43e587(0x1b5)+_0x45f31b);const _0x30afff=this['config'][_0x43e587(0x18e)]||DEFAULT_TIMEOUT_MS;try{const _0x2a0510=await fetch(_0x45f31b,{'method':_0x43e587(0x17e),'headers':_0x4f49d5,'body':_0xd60146,'signal':AbortSignal['timeout'](_0x30afff)}),_0x5b055b=await _0x2a0510[_0x43e587(0x18d)]();return _0x5beb89[_0x43e587(0x185)](_0x2a0510['status']),_0x5beb89['header'](_0x43e587(0x147),_0x2a0510['headers'][_0x43e587(0x1a2)]('Content-Type')||_0x43e587(0x181)),_0x5beb89[_0x43e587(0x1a9)](_0x5b055b);}catch(_0x3ffe56){const _0x5e5991=_0x3ffe56 instanceof Error?_0x3ffe56[_0x43e587(0x153)]:_0x43e587(0x190),_0x17dfff=_0x3ffe56 instanceof Error&&_0x3ffe56['name']===_0x43e587(0x1bc);this['logger'][_0x43e587(0x179)]('[PASSTHROUGH]\x20Failed\x20to\x20forward\x20count_tokens\x20request:',_0x3ffe56),_0x5beb89['code'](_0x17dfff?0x1f8:0x1f7)['send']({'type':_0x43e587(0x179),'error':{'type':_0x17dfff?_0x43e587(0x197):_0x43e587(0x15c),'message':_0x17dfff?_0x43e587(0x188)+_0x30afff+'ms':_0x43e587(0x175)+_0x5e5991}});}}async['logUsage'](_0x35035f,_0x43b1e4,_0x2b5c46,_0xa7f0f6,_0x5977ae,_0x28c524){const _0x312ad1=a65_0x2a4841,_0x1691cd={'timestamp':new Date()[_0x312ad1(0x14e)](),'model':_0x43b1e4,'inputTokens':_0x2b5c46,'outputTokens':_0xa7f0f6,'cacheCreationInputTokens':_0x5977ae,'cacheReadInputTokens':_0x28c524,'profile':this[_0x312ad1(0x1a0)][_0x312ad1(0x19c)]},_0x3081ef=_0x5977ae||_0x28c524?_0x312ad1(0x13c)+(_0x5977ae||0x0)+_0x312ad1(0x172)+(_0x28c524||0x0):'';this[_0x312ad1(0x151)][_0x312ad1(0x19e)](_0x312ad1(0x15b)+_0x2b5c46+',\x20output='+_0xa7f0f6+_0x3081ef+_0x312ad1(0x13b)+_0x43b1e4);try{await appendUsageEntry(_0x35035f,_0x1691cd);}catch(_0x2214d8){this['logger']['error'](_0x312ad1(0x187),_0x2214d8);}}async[a65_0x2a4841(0x196)](){const _0xf37bf4=a65_0x2a4841;await this['server'][_0xf37bf4(0x1c0)]({'port':this[_0xf37bf4(0x1a0)][_0xf37bf4(0x184)],'host':'127.0.0.1'}),this[_0xf37bf4(0x151)]['info'](_0xf37bf4(0x140)+this[_0xf37bf4(0x1a0)][_0xf37bf4(0x184)]),this[_0xf37bf4(0x151)]['info'](_0xf37bf4(0x14a)+this[_0xf37bf4(0x1a0)][_0xf37bf4(0x1ba)]);}async[a65_0x2a4841(0x19d)](){const _0x4528a5=a65_0x2a4841;await this[_0x4528a5(0x1a1)][_0x4528a5(0x141)](),this[_0x4528a5(0x151)][_0x4528a5(0x1bf)]('Pass-through\x20proxy\x20server\x20stopped');}[a65_0x2a4841(0x17b)](){const _0x1a18d9=a65_0x2a4841;return _0x1a18d9(0x1b8)+this['config'][_0x1a18d9(0x184)];}}
1
+ const a66_0x102e43=a66_0x44bd;(function(_0x49dc56,_0x3f5db7){const _0x4919f9=a66_0x44bd,_0x31d4de=_0x49dc56();while(!![]){try{const _0x1436b4=parseInt(_0x4919f9(0x1af))/0x1+parseInt(_0x4919f9(0x1ff))/0x2+-parseInt(_0x4919f9(0x1a8))/0x3+-parseInt(_0x4919f9(0x1ed))/0x4*(-parseInt(_0x4919f9(0x209))/0x5)+parseInt(_0x4919f9(0x205))/0x6+parseInt(_0x4919f9(0x1ba))/0x7+-parseInt(_0x4919f9(0x218))/0x8;if(_0x1436b4===_0x3f5db7)break;else _0x31d4de['push'](_0x31d4de['shift']());}catch(_0x1aadcc){_0x31d4de['push'](_0x31d4de['shift']());}}}(a66_0x473f,0x601e2));function a66_0x473f(){const _0x518703=['url','TD\x20LLM\x20Pass-through\x20Proxy\x20Server','server','buildForwardHeaders','messages','isArray','Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20','host','cache_creation_input_tokens','llmProxyUrl','Content-Type','OPTIONS','1878939Xezqna','length','X-TD-Client-Version','/v1/messages',',\x20model=','api_error','X-TD-Client','454474OmgFqU','text','SKIP_HEADERS','anthropic-version','Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20','inputTokens','outputTokens','match','system','Stream\x20interrupted','close','94339xHpirh','POST','tdx/','application/json','startsWith','error',',\x20cache_read=','getReader','TimeoutError','listen','parse','code','debug','x-td-','usage','[PASSTHROUGH]\x20','x-api-key','connection','127.0.0.1',',\x20stream=','timeout_error','GET','cacheCreationInputTokens','handleCountTokens','entries','model','logUsage','text/event-stream','write','headers','Forwarding\x20to:\x20','writeHead','handleStreamingResponse','setupJsonParser','stringify','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20count_tokens\x20request:','name','Unknown\x20error','getUsage','content-length',',\x20cache_create=','You\x20are\x20`tdx\x20claude`,\x20an\x20extension\x20of\x20Claude\x20Code\x20with\x20tdx\x20CLI\x20tools\x20(https://tdx.treasuredata.com/)\x20and\x20skills\x20for\x20Treasure\x20Data\x20and\x20CDP.\x0a\x0aFor\x20Treasure\x20Data\x20tasks,\x20use\x20these\x20skills:\x0a\x0a|\x20Task\x20|\x20Skill\x20|\x0a|------|-------|\x0a|\x20tdx\x20CLI\x20operations\x20(databases,\x20tables,\x20queries)\x20|\x20tdx-skills:tdx-basic\x20|\x0a|\x20CDP\x20parent\x20segments\x20(YAML\x20config)\x20|\x20tdx-skills:parent-segment\x20|\x0a|\x20CDP\x20child\x20segments\x20(rules,\x20activations)\x20|\x20tdx-skills:segment\x20|\x0a|\x20Validate\x20segment\x20YAML\x20|\x20tdx-skills:validate-segment\x20|\x0a|\x20CDP\x20journeys\x20(stages,\x20steps)\x20|\x20tdx-skills:journey\x20|\x0a|\x20Validate\x20journey\x20YAML\x20|\x20tdx-skills:validate-journey\x20|\x0a|\x20Configure\x20activations\x20|\x20tdx-skills:connector-config\x20|\x0a|\x20Build\x20LLM\x20agents\x20|\x20tdx-skills:agent\x20|\x0a|\x20Write\x20agent\x20system\x20prompts\x20|\x20tdx-skills:agent-prompt\x20|\x0a|\x20TD\x20Trino\x20SQL\x20queries\x20|\x20sql-skills:trino\x20|\x0a|\x20TD\x20Hive\x20SQL\x20queries\x20|\x20sql-skills:hive\x20|\x0a|\x20Time\x20filtering\x20(td_interval,\x20partition\x20pruning)\x20|\x20sql-skills:time-filtering\x20|\x0a|\x20Optimize\x20slow\x20Trino\x20queries\x20|\x20sql-skills:trino-optimizer\x20|\x0a|\x20Convert\x20Trino\x20to\x20Hive\x20(memory\x20errors)\x20|\x20sql-skills:trino-to-hive-migration\x20|\x0a|\x20Treasure\x20Workflow\x20(.dig\x20files)\x20|\x20workflow-skills:digdag\x20|\x0a|\x20Debug/manage\x20workflows\x20|\x20workflow-skills:workflow-management\x20|\x0a|\x20dbt\x20with\x20TD\x20Trino\x20|\x20workflow-skills:dbt\x20|\x0a|\x20JavaScript\x20SDK\x20(browser\x20tracking)\x20|\x20sdk-skills:javascript\x20|\x0a|\x20Python\x20SDK\x20(pytd,\x20pandas)\x20|\x20sdk-skills:python\x20|','haiku','statusText','Pass-through\x20proxy\x20server\x20stopped','[PASSTHROUGH]\x20Failed\x20to\x20log\x20usage:','timeoutMs','output_tokens','get','send','status','4UwdWZZ','default','authorization','body','end','config','post','handleMessages','[PASSTHROUGH]\x20Stream\x20error:','/health','[PASSTHROUGH]\x20Usage:\x20input=','logger','message','register','input_tokens','cache_read_input_tokens','setupMiddleware','header','1306520WqFaBP','keep-alive','setErrorHandler',',\x20output=','metadata','port','2680950juAXwB','apiKey','/v1/messages/count_tokens','includes','3569215QrioHb','TD1\x20','string','Authorization',':\x20messages=','toISOString','processChunk','Error\x20body:\x20','no-cache','raw','method','unknown','stop','toLowerCase','stream','10094944XsfrEe','setupRoutes','timeout','has','start','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20request:','info'];a66_0x473f=function(){return _0x518703;};return a66_0x473f();}import a66_0x15e081 from'fastify';import a66_0x21b6c9 from'@fastify/cors';import{SSEUsageTracker}from'./sse-usage-parser.js';import{appendUsageEntry}from'./claude-usage-tracker.js';import{getVersion}from'../core/version.js';const DEFAULT_TIMEOUT_MS=0x5*0x3c*0x3e8,TDX_SYSTEM_PROMPT=a66_0x102e43(0x1e3);function a66_0x44bd(_0x25e1f1,_0x457aac){_0x25e1f1=_0x25e1f1-0x1a2;const _0x473fe1=a66_0x473f();let _0x44bd42=_0x473fe1[_0x25e1f1];return _0x44bd42;}function extractSessionUUID(_0x311659){const _0x2de2bb=a66_0x102e43,_0x38109d=_0x311659[_0x2de2bb(0x1b6)](/_session_([a-f0-9-]+)$/i);if(_0x38109d)return _0x38109d[0x1];return _0x311659;}export function injectSystemPrompt(_0x5aeb1d,_0x5a42d1){const _0x162c6f=a66_0x102e43,_0x2ecf51=_0x5aeb1d[_0x162c6f(0x1b7)];if(!_0x2ecf51)return{..._0x5aeb1d,'system':_0x5a42d1};if(typeof _0x2ecf51===_0x162c6f(0x20b))return{..._0x5aeb1d,'system':_0x5a42d1+'\x0a\x0a'+_0x2ecf51};if(Array[_0x162c6f(0x224)](_0x2ecf51)){const _0x319212={'type':'text','text':_0x5a42d1};return{..._0x5aeb1d,'system':[_0x319212,..._0x2ecf51]};}return _0x5aeb1d;}export function shouldInjectSystemPrompt(_0x11a0f9){const _0x1a51fb=a66_0x102e43;return!_0x11a0f9[_0x1a51fb(0x216)]()[_0x1a51fb(0x208)](_0x1a51fb(0x1e4));}export class PassThroughProxyServer{[a66_0x102e43(0x221)];[a66_0x102e43(0x1f2)];['logger'];constructor(_0x4ead8d){const _0x36663f=a66_0x102e43;this['config']=_0x4ead8d,this[_0x36663f(0x1f8)]=_0x4ead8d[_0x36663f(0x1f8)],this[_0x36663f(0x221)]=a66_0x15e081({'logger':![],'bodyLimit':0x40*0x400*0x400}),this[_0x36663f(0x1db)](),this[_0x36663f(0x1fd)](),this[_0x36663f(0x219)]();}[a66_0x102e43(0x1db)](){const _0x385ab1=a66_0x102e43;this[_0x385ab1(0x221)]['addContentTypeParser'](_0x385ab1(0x1bd),{'parseAs':_0x385ab1(0x20b)},(_0x2c2d68,_0xd8e809,_0x2d041c)=>{const _0x42af59=_0x385ab1;try{const _0x426d=JSON[_0x42af59(0x1c4)](_0xd8e809);_0x2d041c(null,_0x426d);}catch(_0x17af75){_0x2d041c(_0x17af75,undefined);}});}[a66_0x102e43(0x1fd)](){const _0x260334=a66_0x102e43;this[_0x260334(0x221)][_0x260334(0x1fa)](a66_0x21b6c9,{'origin':!![],'methods':[_0x260334(0x1cf),_0x260334(0x1bb),_0x260334(0x1a7)],'allowedHeaders':[_0x260334(0x1a6),_0x260334(0x20c),_0x260334(0x1b2),'x-api-key']}),this[_0x260334(0x221)][_0x260334(0x201)]((_0x40f887,_0x9c2e6c,_0x134681)=>{const _0x26341e=_0x260334,_0x2856fd=_0x40f887 instanceof Error?_0x40f887[_0x26341e(0x1f9)]:_0x26341e(0x1df);this[_0x26341e(0x1f8)][_0x26341e(0x1bf)]('[PASSTHROUGH\x20PROXY\x20ERROR]:',_0x40f887),_0x134681[_0x26341e(0x1c5)](0x1f4)[_0x26341e(0x1eb)]({'type':_0x26341e(0x1bf),'error':{'type':'api_error','message':_0x2856fd}});});}['setupRoutes'](){const _0x440351=a66_0x102e43;this[_0x440351(0x221)][_0x440351(0x1ea)](_0x440351(0x1f6),async()=>{const _0x212eb3=_0x440351;return{'status':'ok','message':_0x212eb3(0x220)};}),this['server'][_0x440351(0x1f3)](_0x440351(0x1ab),async(_0x4cf3fe,_0x243057)=>{const _0x112101=_0x440351;return this[_0x112101(0x1f4)](_0x4cf3fe,_0x243057);}),this[_0x440351(0x221)][_0x440351(0x1f3)](_0x440351(0x207),async(_0x5a4b77,_0x376240)=>{const _0x439264=_0x440351;return this[_0x439264(0x1d1)](_0x5a4b77,_0x376240);});}static [a66_0x102e43(0x1b1)]=new Set([a66_0x102e43(0x1a3),a66_0x102e43(0x1cb),a66_0x102e43(0x1e1),'transfer-encoding',a66_0x102e43(0x1ef),a66_0x102e43(0x1ca),'user-agent']);[a66_0x102e43(0x222)](_0x49d560){const _0x4862f3=a66_0x102e43,_0x7d18d5={};for(const [_0xa51232,_0x42d4e5]of Object[_0x4862f3(0x1d2)](_0x49d560[_0x4862f3(0x1d7)])){const _0xfa84bb=_0xa51232[_0x4862f3(0x216)]();if(PassThroughProxyServer[_0x4862f3(0x1b1)][_0x4862f3(0x21b)](_0xfa84bb))continue;if(_0xfa84bb[_0x4862f3(0x1be)](_0x4862f3(0x1c7)))continue;if(typeof _0x42d4e5==='string')_0x7d18d5[_0xa51232]=_0x42d4e5;else Array[_0x4862f3(0x224)](_0x42d4e5)&&(_0x7d18d5[_0xa51232]=_0x42d4e5['join'](',\x20'));}const _0x3ca581=getVersion();return _0x7d18d5[_0x4862f3(0x20c)]=_0x4862f3(0x20a)+this[_0x4862f3(0x1f2)][_0x4862f3(0x206)],_0x7d18d5['User-Agent']=_0x4862f3(0x1bc)+_0x3ca581,_0x7d18d5[_0x4862f3(0x1ae)]='tdx',_0x7d18d5[_0x4862f3(0x1aa)]=_0x3ca581,_0x7d18d5;}async[a66_0x102e43(0x1f4)](_0x60c9e2,_0x578439){const _0x388afc=a66_0x102e43,_0x207018=_0x60c9e2[_0x388afc(0x1f0)],_0x943169=_0x207018[_0x388afc(0x217)]!==![],_0x65ddad=_0x207018[_0x388afc(0x203)],_0x1b3300=_0x65ddad?.['user_id']||_0x388afc(0x1ee),_0x339010=extractSessionUUID(_0x1b3300),_0x2b572b=_0x207018[_0x388afc(0x1d3)]||'unknown',_0x5f0b19=shouldInjectSystemPrompt(_0x2b572b)?injectSystemPrompt(_0x207018,TDX_SYSTEM_PROMPT):_0x207018,_0x83ebe1=JSON['stringify'](_0x5f0b19),_0x24cc09=Array['isArray'](_0x207018[_0x388afc(0x223)])?_0x207018[_0x388afc(0x223)][_0x388afc(0x1a9)]:0x0;this[_0x388afc(0x1f8)][_0x388afc(0x21e)](_0x388afc(0x1c9)+_0x60c9e2[_0x388afc(0x213)]+'\x20'+_0x60c9e2[_0x388afc(0x21f)]+_0x388afc(0x20d)+_0x24cc09+_0x388afc(0x1ac)+_0x2b572b+_0x388afc(0x1cd)+_0x943169);const _0x151e10=this['config'][_0x388afc(0x1a5)]+_0x388afc(0x1ab),_0x271e84=this['buildForwardHeaders'](_0x60c9e2);this[_0x388afc(0x1f8)][_0x388afc(0x1c6)](_0x388afc(0x1d8)+_0x151e10);const _0x2f1751=this[_0x388afc(0x1f2)][_0x388afc(0x1e8)]||DEFAULT_TIMEOUT_MS;try{const _0x3cf6bc=await fetch(_0x151e10,{'method':_0x388afc(0x1bb),'headers':_0x271e84,'body':_0x83ebe1,'signal':AbortSignal[_0x388afc(0x21a)](_0x2f1751)});if(!_0x3cf6bc['ok']){const _0x56ce16=await _0x3cf6bc[_0x388afc(0x1b0)]();return this[_0x388afc(0x1f8)][_0x388afc(0x1bf)]('[PASSTHROUGH]\x20Upstream\x20error:\x20'+_0x3cf6bc[_0x388afc(0x1ec)]+'\x20'+_0x3cf6bc[_0x388afc(0x1e5)]),this[_0x388afc(0x1f8)][_0x388afc(0x1c6)](_0x388afc(0x210)+_0x56ce16),_0x578439[_0x388afc(0x1c5)](_0x3cf6bc[_0x388afc(0x1ec)]),_0x578439[_0x388afc(0x1fe)](_0x388afc(0x1a6),_0x3cf6bc[_0x388afc(0x1d7)][_0x388afc(0x1ea)]('Content-Type')||_0x388afc(0x1bd)),_0x578439[_0x388afc(0x1eb)](_0x56ce16);}if(_0x943169&&_0x3cf6bc[_0x388afc(0x1f0)])await this[_0x388afc(0x1da)](_0x3cf6bc['body'],_0x578439,_0x339010,_0x2b572b);else{const _0x26801b=await _0x3cf6bc[_0x388afc(0x1b0)]();_0x578439['header'](_0x388afc(0x1a6),_0x3cf6bc[_0x388afc(0x1d7)][_0x388afc(0x1ea)]('Content-Type')||_0x388afc(0x1bd));try{const _0x2cc08f=JSON['parse'](_0x26801b);_0x2cc08f[_0x388afc(0x1c8)]&&await this['logUsage'](_0x339010,_0x2b572b,_0x2cc08f[_0x388afc(0x1c8)][_0x388afc(0x1fb)]||0x0,_0x2cc08f['usage'][_0x388afc(0x1e9)]||0x0,_0x2cc08f[_0x388afc(0x1c8)][_0x388afc(0x1a4)],_0x2cc08f[_0x388afc(0x1c8)][_0x388afc(0x1fc)]);}catch{}return _0x578439['send'](_0x26801b);}}catch(_0xa4dac4){const _0x21b7bb=_0xa4dac4 instanceof Error?_0xa4dac4[_0x388afc(0x1f9)]:_0x388afc(0x1df),_0x30d211=_0xa4dac4 instanceof Error&&_0xa4dac4[_0x388afc(0x1de)]===_0x388afc(0x1c2);this['logger'][_0x388afc(0x1bf)](_0x388afc(0x21d),_0xa4dac4),_0x578439[_0x388afc(0x1c5)](_0x30d211?0x1f8:0x1f7)[_0x388afc(0x1eb)]({'type':_0x388afc(0x1bf),'error':{'type':_0x30d211?_0x388afc(0x1ce):_0x388afc(0x1ad),'message':_0x30d211?_0x388afc(0x1a2)+_0x2f1751+'ms':'Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20'+_0x21b7bb}});}}async[a66_0x102e43(0x1da)](_0x2ca2e3,_0x341fa2,_0x7274b,_0x3e0de1){const _0xf7b535=a66_0x102e43;_0x341fa2['raw'][_0xf7b535(0x1d9)](0xc8,{'Content-Type':_0xf7b535(0x1d5),'Cache-Control':_0xf7b535(0x211),'Connection':_0xf7b535(0x200)});const _0x1c895d=new SSEUsageTracker(),_0x37fe99=_0x2ca2e3[_0xf7b535(0x1c1)](),_0x35aada=new TextDecoder();try{while(!![]){const {done:_0x5b84b9,value:_0x5b4174}=await _0x37fe99['read']();if(_0x5b84b9)break;const _0x584a9d=_0x35aada['decode'](_0x5b4174,{'stream':!![]});_0x1c895d[_0xf7b535(0x20f)](_0x584a9d),_0x341fa2[_0xf7b535(0x212)]['write'](_0x584a9d);}const _0x45a94d=_0x1c895d[_0xf7b535(0x1e0)]();(_0x45a94d[_0xf7b535(0x1b4)]>0x0||_0x45a94d[_0xf7b535(0x1b5)]>0x0)&&await this[_0xf7b535(0x1d4)](_0x7274b,_0x3e0de1,_0x45a94d[_0xf7b535(0x1b4)],_0x45a94d['outputTokens'],_0x45a94d[_0xf7b535(0x1d0)],_0x45a94d['cacheReadInputTokens']);}catch(_0x1d95ca){this['logger'][_0xf7b535(0x1bf)](_0xf7b535(0x1f5),_0x1d95ca);const _0x51e317='event:\x20error\x0adata:\x20'+JSON[_0xf7b535(0x1dc)]({'type':'error','error':{'type':'stream_error','message':_0xf7b535(0x1b8)}})+'\x0a\x0a';_0x341fa2[_0xf7b535(0x212)][_0xf7b535(0x1d6)](_0x51e317);}finally{_0x341fa2[_0xf7b535(0x212)][_0xf7b535(0x1f1)]();}}async['handleCountTokens'](_0x218f7f,_0x3245dc){const _0x59b5fe=a66_0x102e43,_0x51f4b6=_0x218f7f[_0x59b5fe(0x1f0)],_0xbe2c66=this['config'][_0x59b5fe(0x1a5)]+'/v1/messages/count_tokens',_0x45f9f2=this[_0x59b5fe(0x222)](_0x218f7f),_0xe7ebab=_0x51f4b6[_0x59b5fe(0x1d3)]||_0x59b5fe(0x214),_0x5df38a=shouldInjectSystemPrompt(_0xe7ebab)?injectSystemPrompt(_0x51f4b6,TDX_SYSTEM_PROMPT):_0x51f4b6,_0x1ef110=JSON['stringify'](_0x5df38a);this[_0x59b5fe(0x1f8)][_0x59b5fe(0x1c6)]('[PASSTHROUGH]\x20Forwarding\x20count_tokens\x20to:\x20'+_0xbe2c66);const _0xcf6e99=this['config'][_0x59b5fe(0x1e8)]||DEFAULT_TIMEOUT_MS;try{const _0xc81550=await fetch(_0xbe2c66,{'method':'POST','headers':_0x45f9f2,'body':_0x1ef110,'signal':AbortSignal[_0x59b5fe(0x21a)](_0xcf6e99)}),_0x5b8398=await _0xc81550['text']();return _0x3245dc[_0x59b5fe(0x1c5)](_0xc81550[_0x59b5fe(0x1ec)]),_0x3245dc['header']('Content-Type',_0xc81550[_0x59b5fe(0x1d7)]['get'](_0x59b5fe(0x1a6))||_0x59b5fe(0x1bd)),_0x3245dc['send'](_0x5b8398);}catch(_0x19d6d6){const _0x5291fd=_0x19d6d6 instanceof Error?_0x19d6d6[_0x59b5fe(0x1f9)]:_0x59b5fe(0x1df),_0x1a4c63=_0x19d6d6 instanceof Error&&_0x19d6d6[_0x59b5fe(0x1de)]==='TimeoutError';this[_0x59b5fe(0x1f8)][_0x59b5fe(0x1bf)](_0x59b5fe(0x1dd),_0x19d6d6),_0x3245dc['code'](_0x1a4c63?0x1f8:0x1f7)[_0x59b5fe(0x1eb)]({'type':_0x59b5fe(0x1bf),'error':{'type':_0x1a4c63?_0x59b5fe(0x1ce):_0x59b5fe(0x1ad),'message':_0x1a4c63?_0x59b5fe(0x1a2)+_0xcf6e99+'ms':_0x59b5fe(0x1b3)+_0x5291fd}});}}async[a66_0x102e43(0x1d4)](_0x157da2,_0x71e5de,_0x38ac91,_0x4b735a,_0x57c61e,_0x1b048d){const _0x31c491=a66_0x102e43,_0x3a2f34={'timestamp':new Date()[_0x31c491(0x20e)](),'model':_0x71e5de,'inputTokens':_0x38ac91,'outputTokens':_0x4b735a,'cacheCreationInputTokens':_0x57c61e,'cacheReadInputTokens':_0x1b048d,'profile':this[_0x31c491(0x1f2)]['profile']},_0x3451e0=_0x57c61e||_0x1b048d?_0x31c491(0x1e2)+(_0x57c61e||0x0)+_0x31c491(0x1c0)+(_0x1b048d||0x0):'';this['logger'][_0x31c491(0x1c6)](_0x31c491(0x1f7)+_0x38ac91+_0x31c491(0x202)+_0x4b735a+_0x3451e0+_0x31c491(0x1ac)+_0x71e5de);try{await appendUsageEntry(_0x157da2,_0x3a2f34);}catch(_0x27cf68){this[_0x31c491(0x1f8)][_0x31c491(0x1bf)](_0x31c491(0x1e7),_0x27cf68);}}async[a66_0x102e43(0x21c)](){const _0x2ba6be=a66_0x102e43;await this['server'][_0x2ba6be(0x1c3)]({'port':this[_0x2ba6be(0x1f2)][_0x2ba6be(0x204)],'host':_0x2ba6be(0x1cc)}),this['logger']['info']('Pass-through\x20proxy\x20server\x20started\x20on\x20port\x20'+this['config'][_0x2ba6be(0x204)]),this[_0x2ba6be(0x1f8)][_0x2ba6be(0x21e)](_0x2ba6be(0x1d8)+this[_0x2ba6be(0x1f2)][_0x2ba6be(0x1a5)]);}async[a66_0x102e43(0x215)](){const _0xea3589=a66_0x102e43;await this[_0xea3589(0x221)][_0xea3589(0x1b9)](),this[_0xea3589(0x1f8)][_0xea3589(0x21e)](_0xea3589(0x1e6));}['getAddress'](){const _0xffb314=a66_0x102e43;return'http://127.0.0.1:'+this['config'][_0xffb314(0x204)];}}
@@ -1 +1 @@
1
- const a66_0x870d4f=a66_0x24e1;(function(_0x33ca3d,_0x5c25b2){const _0x25c380=a66_0x24e1,_0x44304f=_0x33ca3d();while(!![]){try{const _0x46c034=parseInt(_0x25c380(0x103))/0x1+-parseInt(_0x25c380(0xf9))/0x2+parseInt(_0x25c380(0x111))/0x3*(-parseInt(_0x25c380(0x170))/0x4)+parseInt(_0x25c380(0x15f))/0x5*(-parseInt(_0x25c380(0x139))/0x6)+parseInt(_0x25c380(0x101))/0x7+-parseInt(_0x25c380(0x173))/0x8+-parseInt(_0x25c380(0x113))/0x9*(-parseInt(_0x25c380(0x12d))/0xa);if(_0x46c034===_0x5c25b2)break;else _0x44304f['push'](_0x44304f['shift']());}catch(_0x3632ea){_0x44304f['push'](_0x44304f['shift']());}}}(a66_0x542c,0xae014));import a66_0x435fa0 from'fastify';import a66_0x277db3 from'@fastify/cors';function a66_0x542c(){const _0xcbcc5d=['Failed\x20to\x20create\x20chat,\x20will\x20fall\x20back\x20to\x20lazy\x20creation:','Debug\x20info:','validateMessageRequest','usage','close','unknown','request_too_large','Non-streaming\x20responses\x20are\x20not\x20yet\x20supported',']\x20Continue\x20chat\x20for\x20model\x20','substring','join','originalMessage','getOrCreateSession',',\x20is\x20new\x20context:\x20','port',')\x20to\x20stay\x20under\x20','api_error','header:\x20','Proxy\x20server\x20started\x20at\x20localhost:','push',',\x20model=','headers','/v1/messages','isArray','2622034sseMFo','Failed\x20to\x20generate\x20tool\x20prompt:',',\x20context\x20signature:\x20','method','Authorization','new\x20tool(s)','map','continue','6075741ANgoDC','chat','88997BxMWEP','setupRoutes','System\x20prompts:\x20','replace','handleRouteError','new\x20system\x20prompt(s)','size','error','length','set','event','listen','[PROXY\x20ERROR]\x20Streaming\x20error:','code','42IcBDce','Context:','30904839AFhGyW',',\x20context=','Reset\x20chat\x20ID\x20to\x20recover\x20on\x20next\x20request','system','trim','Failed\x20to\x20log\x20usage\x20entry:\x20','stream','getOrCreateDefaultAgent','warn','/v1/messages/count_tokens','raw','x-api-key','get','\x20chars.\x20Cleared\x20chat\x20state\x20for\x20session\x20','INVALID_REQUEST','Unknown\x20error','trace',',\x20tools=','post','chatId','message_delta','Creating/looking\x20up\x20agent\x20for:\x20','\x20system\x20prompts,\x20','Concurrent\x20chat\x20creation\x20failed,\x20will\x20fall\x20back\x20to\x20lazy\x20creation:','Failed\x20to\x20initialize\x20chat\x20stream.\x20Please\x20try\x20again.','messageHistory','10QzHtbh','Final\x20message\x20reconstructed\x20after\x20context\x20reset:','keep-alive','Model\x20normalization:\x20','Agent\x20cached:\x20','body','Embedded\x20in\x20chat\x20-\x20system\x20prompts:\x20','\x0a</conversation_history>','profile','add','getAgentForModel','\x0a---\x0a\x0a','6RxIQOs','message','creating','messages','metadata','\x20(reasoning:\x20','filter','handleCountTokens','chats','embeddedSystemPrompts','info','Failed\x20to\x20start\x20proxy\x20server:\x20','server','TD\x20LLM\x20Proxy\x20Server','config','embeddedToolsByName','clear','/health','data','text/event-stream','startChat','Validation\x20failed:\x20tools\x20must\x20be\x20an\x20array\x20if\x20provided',',\x20system_prompts=','default','lastUsedAt',':\x20messages=','\x20messages,\x20','agentId','setupMiddleware','llm','helpText','budget_tokens','text','Failed\x20to\x20reconstruct\x20message\x20-\x20all\x20parts\x20are\x20empty,\x20using\x20fallback','attributes','setErrorHandler','\x20tools,\x20message_size=','toISOString','5071250stQsRd','debug','thinking','end','[session:\x20','output_tokens','OPTIONS',',\x20tools:\x20','...\x22','createPromise','Final\x20message\x20is\x20empty\x20after\x20construction\x20-\x20starting\x20fresh\x20conversation','isUserError','name','Embedding','Content-Type','s,\x20expires\x20after\x20',']\x20Created\x20new\x20chat\x20for\x20model\x20','42056smgOdr','write','has','9645152YbBADv','register','context','no-cache','Chat\x20ID:\x20','...','POST','tools','cleanupExpiredChats','model',',\x20tool_names=[','site','getAddress','http://localhost:','catch','cleanupInterval','delete','agentCache','stringify','\x20->\x20','Evicted\x20oldest\x20chat\x20(signature:\x20','now','address','0.0.0.0','not_supported_error','Validation\x20failed:\x20messages\x20array\x20is\x20required\x20and\x20must\x20not\x20be\x20empty','handleMessages','type','http://','sessionCache','[PROXY\x20ERROR]\x20Unhandled\x20error\x20in\x20','Failed\x20to\x20extract\x20tool\x20results:','tdx','Started\x20cache\x20cleanup\x20interval\x20(runs\x20every\x20','logger','dev-us01','user_id',':\x20estimated\x20input_tokens=','Added\x20system\x20prompt\x20previews:'];a66_0x542c=function(){return _0xcbcc5d;};return a66_0x542c();}import{ErrorCode,SDKError}from'../sdk/index.js';import{transformTDStreamToAnthropic,formatAnthropicSSE,generateMessageId,generateToolPrompt,extractToolResults,estimateInputTokensFromRequest}from'./anthropic-adapter.js';import{colorizeJSON,colorizeJSONCompact}from'../utils/colors.js';function a66_0x24e1(_0x1ce41f,_0x28649b){_0x1ce41f=_0x1ce41f-0xc6;const _0x542ca9=a66_0x542c();let _0x24e13c=_0x542ca9[_0x1ce41f];return _0x24e13c;}import{extractModelAlias,resolveModelAlias}from'../sdk/llm/model-aliases.js';import{SessionCache}from'./session-cache.js';import{appendUsageEntry}from'./claude-usage-tracker.js';import{calculateContextSignature}from'./context-signature.js';import{formatConversationHistory,calculateConversationDelta,extractLastUserMessage}from'./conversation-utils.js';function extractSessionUUID(_0x1bb99e){const _0x26e410=_0x1bb99e['match'](/_session_([a-f0-9-]+)$/i);if(_0x26e410)return _0x26e410[0x1];return _0x1bb99e;}function clearChatState(_0x303e6b){const _0x46297c=a66_0x24e1;_0x303e6b[_0x46297c(0x126)]='',_0x303e6b[_0x46297c(0x142)][_0x46297c(0x149)](),_0x303e6b[_0x46297c(0x148)][_0x46297c(0x149)]();}function mapBudgetTokensToReasoningEffort(_0x801b62,_0x2fcaa4){const _0x51e62b=a66_0x24e1;if(_0x2fcaa4!==_0x51e62b(0xdd))return 0x0;if(!_0x801b62||_0x801b62===0x0)return 0x0;if(_0x801b62<=0x400)return 0x1;if(_0x801b62<=0x800)return 0x2;if(_0x801b62<=0x1000)return 0x3;return 0x4;}const MAX_CHATS_PER_SESSION=0xa,CACHE_EXPIRATION_MS=0xa*0x3c*0x3e8,CLEANUP_INTERVAL_MS=0x3c*0x3e8;export class ProxyServer{[a66_0x870d4f(0x145)];[a66_0x870d4f(0xd7)];[a66_0x870d4f(0xcb)];['config'];[a66_0x870d4f(0xc9)];[a66_0x870d4f(0xdc)];constructor(_0xbd3dcf){const _0x41a6af=a66_0x870d4f;this[_0x41a6af(0xdc)]=_0xbd3dcf['logger'],this['config']=_0xbd3dcf,this[_0x41a6af(0xd7)]=new SessionCache({'maxChatsPerSession':MAX_CHATS_PER_SESSION,'cacheExpirationMs':CACHE_EXPIRATION_MS}),this[_0x41a6af(0xcb)]=new Map(),this['server']=a66_0x435fa0({'logger':![],'bodyLimit':0x40*0x400*0x400}),this[_0x41a6af(0x155)](),this[_0x41a6af(0x104)]();}async[a66_0x870d4f(0x137)](_0x4d8394,_0x21e04f=0x0){const _0x1fb577=a66_0x870d4f,_0x4b54a8=extractModelAlias(_0x4d8394),_0x2861ac=resolveModelAlias(_0x4b54a8),_0xc45231=_0x2861ac+'_'+_0x21e04f;let _0x397ad2=this[_0x1fb577(0xcb)][_0x1fb577(0x11f)](_0xc45231);if(!_0x397ad2){this[_0x1fb577(0xdc)][_0x1fb577(0x160)](_0x1fb577(0x130)+_0x4d8394+_0x1fb577(0xcd)+_0x4b54a8+_0x1fb577(0xcd)+_0x2861ac),this[_0x1fb577(0xdc)]['debug'](_0x1fb577(0x128)+_0x2861ac+_0x1fb577(0x13e)+_0x21e04f+')');const _0x302720=await this[_0x1fb577(0x147)][_0x1fb577(0xda)]['llm'][_0x1fb577(0x11a)](_0x2861ac,_0x21e04f);_0x397ad2=_0x302720['id'],this['agentCache'][_0x1fb577(0x10c)](_0xc45231,_0x397ad2),this['logger']['debug'](_0x1fb577(0x131)+_0xc45231+_0x1fb577(0xcd)+_0x397ad2+'\x20('+_0x302720[_0x1fb577(0x15b)]['name']+')');}return _0x397ad2;}['cleanupExpiredChats'](){const _0x2d5f46=a66_0x870d4f;this['sessionCache'][_0x2d5f46(0x17b)]();}[a66_0x870d4f(0x155)](){const _0x441f78=a66_0x870d4f;this[_0x441f78(0x145)][_0x441f78(0x174)](a66_0x277db3,{'origin':!![],'methods':['GET',_0x441f78(0x179),_0x441f78(0x165)],'allowedHeaders':[_0x441f78(0x16d),_0x441f78(0xfd),'anthropic-version',_0x441f78(0x11e)]}),this[_0x441f78(0x145)][_0x441f78(0x15c)]((_0x2d82a7,_0x3be27d,_0x16de3f)=>{const _0x118087=_0x441f78;this[_0x118087(0x107)](_0x2d82a7,_0x3be27d,_0x16de3f);});}[a66_0x870d4f(0x107)](_0x2041fe,_0x11ed85,_0x2103c8){const _0x9a1c03=a66_0x870d4f;if(_0x2041fe instanceof SDKError){const _0x54ca02=_0x2041fe[_0x9a1c03(0x16a)]()?0x190:0x1f4;_0x2103c8[_0x9a1c03(0x110)](_0x54ca02)['send']({'type':_0x9a1c03(0x10a),'error':{'type':_0x2041fe[_0x9a1c03(0x110)],'message':_0x2041fe[_0x9a1c03(0xec)],'helpText':_0x2041fe[_0x9a1c03(0x157)]}});}else{const _0x3388fd=_0x2041fe instanceof Error?_0x2041fe[_0x9a1c03(0x13a)]:_0x9a1c03(0x122);this[_0x9a1c03(0xdc)]['error'](_0x9a1c03(0xd8)+_0x11ed85[_0x9a1c03(0xfc)]+'\x20'+_0x11ed85['url']+':',_0x2041fe),_0x2103c8[_0x9a1c03(0x110)](0x1f4)['send']({'type':_0x9a1c03(0x10a),'error':{'type':_0x9a1c03(0xf1),'message':_0x3388fd}});}}[a66_0x870d4f(0x104)](){const _0x438fde=a66_0x870d4f;this[_0x438fde(0x145)]['get'](_0x438fde(0x14a),async()=>{const _0x115920=_0x438fde;return{'status':'ok','message':_0x115920(0x146)};}),this[_0x438fde(0x145)]['post'](_0x438fde(0xf7),async(_0x3166ec,_0x249c82)=>{const _0x3e7d8e=_0x438fde;return this[_0x3e7d8e(0xd4)](_0x3166ec,_0x249c82)[_0x3e7d8e(0xc8)](_0x1fc712=>{const _0xfa3e21=_0x3e7d8e;this[_0xfa3e21(0x107)](_0x1fc712,_0x3166ec,_0x249c82);});}),this[_0x438fde(0x145)][_0x438fde(0x125)](_0x438fde(0x11c),async(_0x5192b2,_0x42ba18)=>{const _0xdb21a=_0x438fde;return this[_0xdb21a(0x140)](_0x5192b2)[_0xdb21a(0xc8)](_0x1b225c=>{const _0x47e674=_0xdb21a;this[_0x47e674(0x107)](_0x1b225c,_0x5192b2,_0x42ba18);});});}[a66_0x870d4f(0xe3)](_0x57bdf7){const _0x234a23=a66_0x870d4f;if(!_0x57bdf7[_0x234a23(0x13c)]||!Array[_0x234a23(0xf8)](_0x57bdf7[_0x234a23(0x13c)])||_0x57bdf7[_0x234a23(0x13c)][_0x234a23(0x10b)]===0x0)throw new SDKError(ErrorCode[_0x234a23(0x121)],_0x234a23(0xd3));if(_0x57bdf7[_0x234a23(0x17a)]&&!Array['isArray'](_0x57bdf7[_0x234a23(0x17a)]))throw new SDKError(ErrorCode[_0x234a23(0x121)],_0x234a23(0x14e));}async[a66_0x870d4f(0xd4)](_0x35ec09,_0xc3ff16){const _0x43102c=a66_0x870d4f,_0x3ef26c=_0x35ec09[_0x43102c(0x132)];this[_0x43102c(0xe3)](_0x3ef26c);const _0x11aec6=_0x3ef26c['messages']?.[_0x43102c(0x10b)]??0x0,_0x4665b9=_0x3ef26c[_0x43102c(0x17c)]||_0x43102c(0xe6);this['logger'][_0x43102c(0x143)](_0x35ec09[_0x43102c(0xfc)]+'\x20'+_0x35ec09['url']+_0x43102c(0x152)+_0x11aec6+_0x43102c(0xf5)+_0x4665b9),this[_0x43102c(0xdc)]['debug'](_0x43102c(0xf2)+colorizeJSONCompact(_0x35ec09[_0x43102c(0xf6)]));this[_0x43102c(0xdc)][_0x43102c(0x123)]&&this['logger']['trace'](colorizeJSON(_0x3ef26c,{'color':!![]}));const _0x4b8fc9=_0x3ef26c[_0x43102c(0x13d)]?.[_0x43102c(0xde)]||_0x43102c(0x150),_0x3e8e60=extractSessionUUID(_0x4b8fc9),_0x5764b8=this[_0x43102c(0xd7)][_0x43102c(0xed)](_0x3e8e60,this[_0x43102c(0x147)]['projectId']),_0xee3778=[];if(_0x3ef26c[_0x43102c(0x116)]){if(typeof _0x3ef26c[_0x43102c(0x116)]==='string')_0xee3778['push'](_0x3ef26c['system']);else{if(Array[_0x43102c(0xf8)](_0x3ef26c[_0x43102c(0x116)]))for(const _0x7077ae of _0x3ef26c[_0x43102c(0x116)]){_0x7077ae[_0x43102c(0xd5)]==='text'&&_0x7077ae['text']&&_0xee3778[_0x43102c(0xf4)](_0x7077ae[_0x43102c(0x159)]);}}}const _0x4f887e=_0x3ef26c['tools']||[],_0x1f0280=_0x3ef26c[_0x43102c(0x161)]?.[_0x43102c(0x158)],_0x300296=mapBudgetTokensToReasoningEffort(_0x1f0280,this[_0x43102c(0x147)][_0x43102c(0x17e)]),_0x2b685b=calculateContextSignature(_0x3ef26c[_0x43102c(0x17c)],_0xee3778,_0x4f887e,_0x300296);let _0x432c9a=_0x5764b8['chats'][_0x43102c(0x11f)](_0x2b685b);const _0x32b6f9=!_0x432c9a;if(!_0x432c9a){const _0x2c7516=await this[_0x43102c(0x137)](_0x3ef26c[_0x43102c(0x17c)],_0x300296);_0x432c9a={'chatId':'','agentId':_0x2c7516,'contextSignature':_0x2b685b,'embeddedSystemPrompts':new Set(),'embeddedToolsByName':new Map(),'messageHistory':[],'lastUsedAt':Date[_0x43102c(0xcf)]()},_0x5764b8[_0x43102c(0x141)]['set'](_0x2b685b,_0x432c9a);if(_0x5764b8[_0x43102c(0x141)][_0x43102c(0x109)]>MAX_CHATS_PER_SESSION){let _0x3bf7e8=null,_0x475b9a=Date[_0x43102c(0xcf)]();for(const [_0x37bec9,_0x4fe636]of _0x5764b8['chats']){_0x4fe636[_0x43102c(0x151)]<_0x475b9a&&(_0x475b9a=_0x4fe636['lastUsedAt'],_0x3bf7e8=_0x37bec9);}_0x3bf7e8&&(_0x5764b8['chats'][_0x43102c(0xca)](_0x3bf7e8),this[_0x43102c(0xdc)][_0x43102c(0x160)](_0x43102c(0xce)+_0x3bf7e8+_0x43102c(0xf0)+MAX_CHATS_PER_SESSION+'\x20limit'));}}else _0x432c9a[_0x43102c(0x151)]=Date['now']();if(!_0x432c9a[_0x43102c(0x126)]){if(_0x432c9a[_0x43102c(0x13b)]&&_0x432c9a[_0x43102c(0x168)]){this['logger'][_0x43102c(0x160)]('Waiting\x20for\x20concurrent\x20chat\x20creation\x20for\x20context:\x20'+_0x2b685b);try{_0x432c9a[_0x43102c(0x126)]=await _0x432c9a[_0x43102c(0x168)];}catch(_0x59d109){this[_0x43102c(0xdc)]['error'](_0x43102c(0x12a),_0x59d109);}}else{if(!_0x432c9a[_0x43102c(0x13b)]){_0x432c9a[_0x43102c(0x13b)]=!![],_0x432c9a[_0x43102c(0x168)]=((async()=>{const _0x1fbc5e=_0x43102c;try{const _0x148cad=await this[_0x1fbc5e(0x147)]['tdx'][_0x1fbc5e(0x156)][_0x1fbc5e(0x14d)](_0x432c9a[_0x1fbc5e(0x154)]);return this['logger'][_0x1fbc5e(0x143)]('['+_0x148cad['id']+_0x1fbc5e(0x16f)+_0x3ef26c[_0x1fbc5e(0x17c)]+_0x1fbc5e(0x114)+_0x2b685b),_0x148cad['id'];}catch(_0x58dcf8){this[_0x1fbc5e(0xdc)][_0x1fbc5e(0x10a)](_0x1fbc5e(0xe1),_0x58dcf8);throw _0x58dcf8;}finally{_0x432c9a[_0x1fbc5e(0x13b)]=![],_0x432c9a[_0x1fbc5e(0x168)]=undefined;}})());try{_0x432c9a['chatId']=await _0x432c9a[_0x43102c(0x168)];}catch{}}}}const _0x2809d6=_0xee3778[_0x43102c(0x13f)](_0x345a26=>!_0x432c9a['embeddedSystemPrompts']['has'](_0x345a26)),_0x42f09f=_0x4f887e['filter'](_0x23fb72=>!_0x432c9a[_0x43102c(0x148)][_0x43102c(0x172)](_0x23fb72['name']));this[_0x43102c(0xdc)][_0x43102c(0x160)](_0x43102c(0x163)+_0x3e8e60+']\x20model:\x20'+_0x3ef26c['model']+_0x43102c(0xfb)+_0x2b685b+_0x43102c(0xee)+_0x32b6f9),this[_0x43102c(0xdc)][_0x43102c(0x160)](_0x43102c(0x177)+_0x432c9a[_0x43102c(0x126)]),this[_0x43102c(0xdc)]['debug'](_0x43102c(0x105)+_0xee3778[_0x43102c(0x10b)]+_0x43102c(0x166)+_0x4f887e[_0x43102c(0x10b)]),this['logger'][_0x43102c(0x160)](_0x43102c(0x133)+_0x432c9a[_0x43102c(0x142)]['size']+_0x43102c(0x166)+_0x432c9a[_0x43102c(0x148)]['size']),this['logger'][_0x43102c(0x160)]('New\x20-\x20system\x20prompts:\x20'+_0x2809d6[_0x43102c(0x10b)]+_0x43102c(0x166)+_0x42f09f[_0x43102c(0x10b)]);_0x2809d6[_0x43102c(0x10b)]>0x0&&this['logger']['debug'](_0x43102c(0xe0),_0x2809d6[_0x43102c(0xff)](_0x188a47=>_0x188a47[_0x43102c(0xea)](0x0,0x32)+_0x43102c(0x178))[_0x43102c(0xeb)]('\x20|\x20'));_0x42f09f[_0x43102c(0x10b)]>0x0&&this[_0x43102c(0xdc)][_0x43102c(0x160)]('Added\x20tool\x20names:',_0x42f09f[_0x43102c(0xff)](_0x227214=>_0x227214[_0x43102c(0x16b)])[_0x43102c(0xeb)](',\x20'));const _0x236f7c=calculateConversationDelta(_0x3ef26c[_0x43102c(0x13c)],_0x432c9a[_0x43102c(0x12c)]),_0x410e4a=extractLastUserMessage(_0x236f7c,_0x3ef26c[_0x43102c(0x13c)]);if(_0x410e4a['error'])throw new SDKError(ErrorCode['INVALID_REQUEST'],_0x410e4a[_0x43102c(0x10a)]);const _0x34c08b=_0x410e4a['text']||'',_0x490d87=()=>{const _0x16b504=_0x43102c,_0x595de3=[];_0xee3778[_0x16b504(0x10b)]>0x0&&_0x595de3[_0x16b504(0xf4)](_0xee3778[_0x16b504(0xeb)]('\x0a\x0a'));_0x4f887e[_0x16b504(0x10b)]>0x0&&_0x595de3[_0x16b504(0xf4)](generateToolPrompt(_0x4f887e));if(_0x3ef26c[_0x16b504(0x13c)]&&_0x3ef26c[_0x16b504(0x13c)]['length']>0x1){const _0x47276f=formatConversationHistory(_0x3ef26c[_0x16b504(0x13c)]);_0x47276f&&_0x595de3[_0x16b504(0xf4)]('\x0a\x0a<conversation_history>\x0a'+_0x47276f+_0x16b504(0x134));}return _0x595de3[_0x16b504(0xf4)](_0x34c08b),_0x595de3['filter'](_0x569a7b=>_0x569a7b&&_0x569a7b[_0x16b504(0x117)]())['join'](_0x16b504(0x138));};let _0x5453f2;if(_0x32b6f9){this['logger'][_0x43102c(0x143)]('['+_0x432c9a[_0x43102c(0x126)]+']\x20Building\x20a\x20new\x20context\x20for\x20model\x20'+_0x3ef26c[_0x43102c(0x17c)]+_0x43102c(0x14f)+_0xee3778[_0x43102c(0x10b)]+_0x43102c(0x124)+_0x4f887e['length']+_0x43102c(0x17d)+_0x4f887e['map'](_0x19179e=>_0x19179e[_0x43102c(0x16b)])[_0x43102c(0xeb)](',\x20')+']'),_0x5453f2=_0x490d87();for(const _0x3522c1 of _0xee3778){_0x432c9a['embeddedSystemPrompts'][_0x43102c(0x136)](_0x3522c1);}for(const _0x27b2cd of _0x4f887e){_0x432c9a[_0x43102c(0x148)][_0x43102c(0x10c)](_0x27b2cd[_0x43102c(0x16b)],_0x27b2cd);}}else{const _0x494db2=[];_0x2809d6[_0x43102c(0x10b)]>0x0&&(_0x494db2[_0x43102c(0xf4)](_0x2809d6['join']('\x0a\x0a')),this['logger'][_0x43102c(0x160)](_0x43102c(0x16c),_0x2809d6[_0x43102c(0x10b)],_0x43102c(0x108)));if(_0x42f09f['length']>0x0)try{_0x494db2['push'](generateToolPrompt(_0x42f09f)),this[_0x43102c(0xdc)][_0x43102c(0x160)](_0x43102c(0x16c),_0x42f09f[_0x43102c(0x10b)],_0x43102c(0xfe));}catch(_0x3f03a4){this[_0x43102c(0xdc)]['error'](_0x43102c(0xfa),_0x3f03a4);}try{const _0x31e59b=extractToolResults(_0x236f7c);_0x31e59b&&(_0x494db2[_0x43102c(0xf4)](_0x31e59b),this['logger'][_0x43102c(0x160)]('Including\x20tool\x20results'));}catch(_0x549be3){this[_0x43102c(0xdc)][_0x43102c(0x10a)](_0x43102c(0xd9),_0x549be3);}_0x494db2[_0x43102c(0xf4)](_0x34c08b);const _0x45639e=_0x494db2['filter'](_0xc72cbf=>_0xc72cbf&&_0xc72cbf[_0x43102c(0x117)]());_0x5453f2=_0x45639e[_0x43102c(0x10b)]>0x0?_0x45639e['join']('\x0a---\x0a\x0a'):_0x34c08b;for(const _0xdc8531 of _0x2809d6){_0x432c9a[_0x43102c(0x142)][_0x43102c(0x136)](_0xdc8531);}for(const _0x4db10e of _0x42f09f){_0x432c9a[_0x43102c(0x148)][_0x43102c(0x10c)](_0x4db10e['name'],_0x4db10e);}}(!_0x5453f2||!_0x5453f2[_0x43102c(0x117)]())&&(this[_0x43102c(0xdc)][_0x43102c(0x11b)](_0x43102c(0x169)),this[_0x43102c(0xdc)][_0x43102c(0x11b)]('Context:',{'isNewContext':_0x32b6f9,'userMessageLength':_0x34c08b?.[_0x43102c(0x10b)]||0x0,'systemPromptsCount':_0xee3778[_0x43102c(0x10b)],'toolsCount':_0x4f887e[_0x43102c(0x10b)],'messagesCount':_0x3ef26c[_0x43102c(0x13c)]?.['length']||0x0,'newMessagesCount':_0x236f7c['length']}),clearChatState(_0x432c9a),_0x5453f2=_0x490d87(),(!_0x5453f2||!_0x5453f2[_0x43102c(0x117)]())&&(this[_0x43102c(0xdc)][_0x43102c(0x10a)](_0x43102c(0x15a)),this[_0x43102c(0xdc)][_0x43102c(0x10a)](_0x43102c(0xe2),{'systemPromptsCount':_0xee3778[_0x43102c(0x10b)],'toolsCount':_0x4f887e['length'],'messagesCount':_0x3ef26c[_0x43102c(0x13c)]?.[_0x43102c(0x10b)]||0x0,'userMessageLength':_0x34c08b?.[_0x43102c(0x10b)]||0x0}),_0x5453f2=_0x43102c(0x100)),this[_0x43102c(0xdc)][_0x43102c(0x143)](_0x43102c(0x12e),_0x5453f2['substring'](0x0,0x64)+_0x43102c(0x178)));const _0x5dc36c=_0x3ef26c[_0x43102c(0x119)]!==![];if(_0x5dc36c){_0xc3ff16['raw']['writeHead'](0xc8,{'Content-Type':_0x43102c(0x14c),'Cache-Control':_0x43102c(0x176),'Connection':_0x43102c(0x12f),'X-Accel-Buffering':'no'});const _0x5bab22=generateMessageId();let _0x2d5b34=0x0,_0x2d8251=0x0;try{if(_0x432c9a[_0x43102c(0x126)]){const _0x560582=_0x5453f2[_0x43102c(0xea)](0x0,0x32)[_0x43102c(0x106)](/\n/g,'\x20');this['logger'][_0x43102c(0x143)]('['+_0x432c9a[_0x43102c(0x126)]+_0x43102c(0xe9)+_0x3ef26c['model']+_0x43102c(0x114)+_0x2b685b+',\x20'+_0x3ef26c['messages'][_0x43102c(0x10b)]+_0x43102c(0x153)+_0xee3778[_0x43102c(0x10b)]+_0x43102c(0x129)+_0x4f887e[_0x43102c(0x10b)]+_0x43102c(0x15d)+_0x5453f2[_0x43102c(0x10b)]+',\x20\x22'+_0x560582+_0x43102c(0x167));}const _0x35bb04=this[_0x43102c(0x147)][_0x43102c(0xda)][_0x43102c(0x156)][_0x43102c(0x102)](_0x5453f2,{'chatId':_0x432c9a['chatId']||undefined,'agentId':_0x432c9a['chatId']?undefined:_0x432c9a[_0x43102c(0x154)]});if(!_0x35bb04){this[_0x43102c(0xdc)][_0x43102c(0x10a)]('[PROXY\x20ERROR]\x20Chat\x20stream\x20is\x20undefined'),this['logger'][_0x43102c(0x10a)](_0x43102c(0x112),JSON[_0x43102c(0xcc)]({'chatId':_0x432c9a[_0x43102c(0x126)],'agentId':_0x432c9a[_0x43102c(0x154)],'model':_0x3ef26c['model'],'sessionId':_0x3e8e60,'contextSignature':_0x2b685b})),_0x432c9a[_0x43102c(0x126)]='',this[_0x43102c(0xdc)][_0x43102c(0x11b)](_0x43102c(0x115));const _0x359f8e=formatAnthropicSSE({'type':'error','error':{'type':_0x43102c(0xf1),'message':_0x43102c(0x12b)},'request_id':_0x5bab22});_0xc3ff16[_0x43102c(0x11d)]['write'](_0x359f8e),_0xc3ff16[_0x43102c(0x11d)]['end']();return;}_0x432c9a[_0x43102c(0x12c)]=_0x3ef26c[_0x43102c(0x13c)];const _0x104a18=_0x432c9a;async function*_0x5696d5(_0x2c069d){const _0x2e4148=_0x43102c;for await(const _0xa3e17e of _0x2c069d){if(_0xa3e17e[_0x2e4148(0xd5)]===_0x2e4148(0x13d))_0xa3e17e['data'][_0x2e4148(0x126)]&&!_0x104a18[_0x2e4148(0x126)]&&(_0x104a18['chatId']=_0xa3e17e['data'][_0x2e4148(0x126)]);else _0xa3e17e[_0x2e4148(0xd5)]===_0x2e4148(0x10d)&&(yield _0xa3e17e[_0x2e4148(0x14b)]);}}const _0x2a44e8=_0x5696d5(_0x35bb04);_0x2d5b34=estimateInputTokensFromRequest(_0x3ef26c);const _0x2235ba=transformTDStreamToAnthropic(_0x2a44e8,_0x5bab22,_0x3ef26c[_0x43102c(0x17c)],this['logger'],_0x34c08b,_0x2d5b34),_0xf4104c=_0x5453f2[_0x43102c(0x10b)];let _0x228e71=0x0;for await(const _0x5d7ef1 of _0x2235ba){const _0x5df204=formatAnthropicSSE(_0x5d7ef1);_0x228e71++,this[_0x43102c(0xdc)][_0x43102c(0x160)](colorizeJSONCompact(_0x5d7ef1,{'color':!![]})),_0x5d7ef1['type']==='error'&&_0x5d7ef1[_0x43102c(0x10a)][_0x43102c(0xd5)]===_0x43102c(0xe7)&&(clearChatState(_0x432c9a),this['logger'][_0x43102c(0x11b)]('[CONTEXT\x20LENGTH\x20ERROR]\x20'+_0x5d7ef1[_0x43102c(0x10a)][_0x43102c(0x13a)]+'\x20Input\x20size:\x20'+_0xf4104c+_0x43102c(0x120)+_0x3e8e60+',\x20context:\x20'+_0x2b685b)),_0x5d7ef1['type']===_0x43102c(0x127)&&_0x5d7ef1['usage']?.[_0x43102c(0x164)]&&(_0x2d8251=_0x5d7ef1[_0x43102c(0xe4)][_0x43102c(0x164)]),_0xc3ff16['raw'][_0x43102c(0x171)](_0x5df204);}this[_0x43102c(0xdc)][_0x43102c(0x160)]('Stream\x20complete.\x20Sent\x20'+_0x228e71+'\x20SSE\x20events.'),appendUsageEntry(_0x3e8e60,{'timestamp':new Date()[_0x43102c(0x15e)](),'model':_0x3ef26c[_0x43102c(0x17c)],'inputTokens':_0x2d5b34,'outputTokens':_0x2d8251,'contextSignature':_0x2b685b,'profile':this[_0x43102c(0x147)]['tdx']?.[_0x43102c(0x175)]?.['profile'],'chatId':_0x432c9a[_0x43102c(0x126)]||undefined})[_0x43102c(0xc8)](_0x2204b5=>{const _0x610473=_0x43102c;this[_0x610473(0xdc)][_0x610473(0x11b)](_0x610473(0x118)+_0x2204b5);}),_0xc3ff16[_0x43102c(0x11d)][_0x43102c(0x162)]();}catch(_0x42cec0){(_0x2d5b34>0x0||_0x2d8251>0x0)&&appendUsageEntry(_0x3e8e60,{'timestamp':new Date()[_0x43102c(0x15e)](),'model':_0x3ef26c['model'],'inputTokens':_0x2d5b34,'outputTokens':_0x2d8251,'contextSignature':_0x2b685b,'profile':this[_0x43102c(0x147)]['tdx']?.[_0x43102c(0x175)]?.[_0x43102c(0x135)],'chatId':_0x432c9a[_0x43102c(0x126)]||undefined})[_0x43102c(0xc8)](_0x3de58b=>{const _0x2be7e8=_0x43102c;this['logger'][_0x2be7e8(0x11b)]('Failed\x20to\x20log\x20usage\x20entry\x20on\x20error:\x20'+_0x3de58b);});const _0x14fccc=_0x42cec0 instanceof Error?_0x42cec0[_0x43102c(0x13a)]:_0x43102c(0x122);this[_0x43102c(0xdc)][_0x43102c(0x10a)](_0x43102c(0x10f),_0x42cec0),this[_0x43102c(0xdc)][_0x43102c(0x10a)](_0x43102c(0x112),JSON[_0x43102c(0xcc)]({'chatId':_0x432c9a[_0x43102c(0x126)],'agentId':_0x432c9a[_0x43102c(0x154)],'model':_0x3ef26c[_0x43102c(0x17c)],'sessionId':_0x3e8e60,'contextSignature':_0x2b685b})),_0x432c9a[_0x43102c(0x126)]='',this[_0x43102c(0xdc)][_0x43102c(0x11b)]('Reset\x20chat\x20state\x20to\x20recover\x20on\x20next\x20request');const _0x1e5f58=formatAnthropicSSE({'type':'error','error':{'type':'api_error','message':_0x14fccc},'request_id':_0x5bab22});_0xc3ff16[_0x43102c(0x11d)]['write'](_0x1e5f58),_0xc3ff16[_0x43102c(0x11d)]['end']();}}else this['logger'][_0x43102c(0x10a)]('[PROXY\x20ERROR]\x20Non-streaming\x20responses\x20are\x20not\x20yet\x20supported'),_0xc3ff16[_0x43102c(0x110)](0x1f5)['send']({'type':_0x43102c(0x10a),'error':{'type':_0x43102c(0xd2),'message':_0x43102c(0xe8)}});}async[a66_0x870d4f(0x140)](_0x3b183e){const _0x197817=a66_0x870d4f,_0x5f2064=_0x3b183e[_0x197817(0x132)],_0x2148d9=estimateInputTokensFromRequest(_0x5f2064);return this['logger'][_0x197817(0x143)](_0x3b183e[_0x197817(0xfc)]+'\x20'+_0x3b183e['url']+_0x197817(0xdf)+_0x2148d9),{'input_tokens':_0x2148d9};}async['start'](){const _0x18dc5e=a66_0x870d4f;try{await this[_0x18dc5e(0x145)][_0x18dc5e(0x10e)]({'port':this[_0x18dc5e(0x147)][_0x18dc5e(0xef)],'host':_0x18dc5e(0xd1)}),this[_0x18dc5e(0xdc)][_0x18dc5e(0x143)](_0x18dc5e(0xf3)+this[_0x18dc5e(0x147)][_0x18dc5e(0xef)]),this[_0x18dc5e(0xc9)]=setInterval(()=>{const _0x41e107=_0x18dc5e;this[_0x41e107(0x17b)]();},CLEANUP_INTERVAL_MS),this['logger'][_0x18dc5e(0x160)](_0x18dc5e(0xdb)+CLEANUP_INTERVAL_MS/0x3e8+_0x18dc5e(0x16e)+CACHE_EXPIRATION_MS/0x3e8+'s)');}catch(_0x34788a){const _0x1d79d0=_0x34788a instanceof Error?_0x34788a[_0x18dc5e(0x13a)]:_0x18dc5e(0x122);throw new Error(_0x18dc5e(0x144)+_0x1d79d0);}}async['stop'](){const _0x207cd3=a66_0x870d4f;this[_0x207cd3(0xc9)]&&(clearInterval(this['cleanupInterval']),this['cleanupInterval']=undefined),await this['server'][_0x207cd3(0xe5)]();}[a66_0x870d4f(0xc6)](){const _0x7f2242=a66_0x870d4f,_0x83a5f1=this[_0x7f2242(0x145)][_0x7f2242(0x145)][_0x7f2242(0xd0)]();if(typeof _0x83a5f1==='string')return _0x83a5f1;if(_0x83a5f1)return _0x7f2242(0xd6)+_0x83a5f1['address']+':'+_0x83a5f1['port'];return _0x7f2242(0xc7)+this['config'][_0x7f2242(0xef)];}}
1
+ const a67_0x3e4ca2=a67_0x4435;(function(_0x26d4ca,_0x17e1fc){const _0x2d30c0=a67_0x4435,_0x548fbf=_0x26d4ca();while(!![]){try{const _0x269dfd=-parseInt(_0x2d30c0(0x202))/0x1+parseInt(_0x2d30c0(0x1b3))/0x2*(parseInt(_0x2d30c0(0x1fc))/0x3)+parseInt(_0x2d30c0(0x217))/0x4+-parseInt(_0x2d30c0(0x1bb))/0x5+-parseInt(_0x2d30c0(0x207))/0x6*(-parseInt(_0x2d30c0(0x25b))/0x7)+parseInt(_0x2d30c0(0x1fe))/0x8*(-parseInt(_0x2d30c0(0x1cf))/0x9)+-parseInt(_0x2d30c0(0x244))/0xa*(-parseInt(_0x2d30c0(0x204))/0xb);if(_0x269dfd===_0x17e1fc)break;else _0x548fbf['push'](_0x548fbf['shift']());}catch(_0x4ee14f){_0x548fbf['push'](_0x548fbf['shift']());}}}(a67_0x1939,0x5b217));import a67_0x8c3a6a from'fastify';import a67_0x20861e from'@fastify/cors';import{ErrorCode,SDKError}from'../sdk/index.js';import{transformTDStreamToAnthropic,formatAnthropicSSE,generateMessageId,generateToolPrompt,extractToolResults,estimateInputTokensFromRequest}from'./anthropic-adapter.js';import{colorizeJSON,colorizeJSONCompact}from'../utils/colors.js';function a67_0x1939(){const _0x223ed2=['isArray','\x20chars.\x20Cleared\x20chat\x20state\x20for\x20session\x20','stream','unknown','Context:','chatId','listen','Failed\x20to\x20extract\x20tool\x20results:','\x20system\x20prompts,\x20','handleMessages','url','text/event-stream','server','2512560BeIRSI','request_too_large','cleanupInterval','set','logger','[PROXY\x20ERROR]\x20Chat\x20stream\x20is\x20undefined','chats','helpText','setupRoutes','info','handleRouteError','now','Content-Type','code','\x0a</conversation_history>','agentCache','address','metadata','startChat','messageHistory','embeddedSystemPrompts','headers','write','config','new\x20system\x20prompt(s)','toISOString','http://','Stream\x20complete.\x20Sent\x20','data',',\x20context:\x20','lastUsedAt','message','Creating/looking\x20up\x20agent\x20for:\x20','Chat\x20ID:\x20','\x20->\x20','text','Validation\x20failed:\x20tools\x20must\x20be\x20an\x20array\x20if\x20provided','stringify','string','has','setErrorHandler','site','messages',']\x20Created\x20new\x20chat\x20for\x20model\x20','Proxy\x20server\x20started\x20at\x20localhost:','30YJqaDw','originalMessage',',\x20tools:\x20',',\x20system_prompts=','get','context','handleCountTokens','model','tdx','Waiting\x20for\x20concurrent\x20chat\x20creation\x20for\x20context:\x20','Failed\x20to\x20create\x20chat,\x20will\x20fall\x20back\x20to\x20lazy\x20creation:','debug','trace','/v1/messages','writeHead','body','system','Non-streaming\x20responses\x20are\x20not\x20yet\x20supported','profile','isUserError','catch','send','event','7tLbAMd','error','getOrCreateDefaultAgent','tools','add','push','x-api-key','agentId','POST','sessionCache','Added\x20tool\x20names:','28euENNh','anthropic-version','message_delta','start',',\x20context\x20signature:\x20','type',':\x20messages=','Failed\x20to\x20log\x20usage\x20entry\x20on\x20error:\x20','623135VzXdyF','\x20SSE\x20events.','thinking','chat','method','filter','warn','Failed\x20to\x20reconstruct\x20message\x20-\x20all\x20parts\x20are\x20empty,\x20using\x20fallback',')\x20to\x20stay\x20under\x20',',\x20context=','\x0a\x0a<conversation_history>\x0a','end','delete','Reset\x20chat\x20state\x20to\x20recover\x20on\x20next\x20request','getAgentForModel','substring','Validation\x20failed:\x20messages\x20array\x20is\x20required\x20and\x20must\x20not\x20be\x20empty','Model\x20normalization:\x20','post','keep-alive','9LMZIrE','default','size','new\x20tool(s)','Authorization','projectId','creating','\x20(reasoning:\x20','INVALID_REQUEST','Embedding','Including\x20tool\x20results','raw','header:\x20','no-cache','embeddedToolsByName','cleanupExpiredChats','stop','getAddress',']\x20model:\x20','not_supported_error','validateMessageRequest','usage','map','\x20Input\x20size:\x20','http://localhost:','...\x22','\x20tools,\x20message_size=','attributes','Added\x20system\x20prompt\x20previews:','0.0.0.0','clear','length','\x20|\x20','[PROXY\x20ERROR]\x20Unhandled\x20error\x20in\x20','port','Evicted\x20oldest\x20chat\x20(signature:\x20','join','close',',\x20\x22','budget_tokens','s,\x20expires\x20after\x20','setupMiddleware','Started\x20cache\x20cleanup\x20interval\x20(runs\x20every\x20','GET','createPromise','6867jIAWAD','\x0a---\x0a\x0a','4210248RQFRTM','System\x20prompts:\x20','trim','name','402218AStWOH','/health','2524709BDyhtM','api_error','Unknown\x20error','465924esexeY','OPTIONS','[session:\x20'];a67_0x1939=function(){return _0x223ed2;};return a67_0x1939();}import{extractModelAlias,resolveModelAlias}from'../sdk/llm/model-aliases.js';import{SessionCache}from'./session-cache.js';import{appendUsageEntry}from'./claude-usage-tracker.js';import{calculateContextSignature}from'./context-signature.js';import{formatConversationHistory,calculateConversationDelta,extractLastUserMessage}from'./conversation-utils.js';function extractSessionUUID(_0x9d84e5){const _0x5cc848=_0x9d84e5['match'](/_session_([a-f0-9-]+)$/i);if(_0x5cc848)return _0x5cc848[0x1];return _0x9d84e5;}function clearChatState(_0x1e06d5){const _0x5770f6=a67_0x4435;_0x1e06d5[_0x5770f6(0x20f)]='',_0x1e06d5['embeddedSystemPrompts']['clear'](),_0x1e06d5[_0x5770f6(0x1dd)][_0x5770f6(0x1ed)]();}function mapBudgetTokensToReasoningEffort(_0xa7569a,_0x4c5d40){if(_0x4c5d40!=='dev-us01')return 0x0;if(!_0xa7569a||_0xa7569a===0x0)return 0x0;if(_0xa7569a<=0x400)return 0x1;if(_0xa7569a<=0x800)return 0x2;if(_0xa7569a<=0x1000)return 0x3;return 0x4;}function a67_0x4435(_0x50f002,_0x5d2ddf){_0x50f002=_0x50f002-0x1b3;const _0x193936=a67_0x1939();let _0x4435db=_0x193936[_0x50f002];return _0x4435db;}const MAX_CHATS_PER_SESSION=0xa,CACHE_EXPIRATION_MS=0xa*0x3c*0x3e8,CLEANUP_INTERVAL_MS=0x3c*0x3e8;export class ProxyServer{[a67_0x3e4ca2(0x216)];[a67_0x3e4ca2(0x264)];[a67_0x3e4ca2(0x226)];['config'];['cleanupInterval'];[a67_0x3e4ca2(0x21b)];constructor(_0x5786fe){const _0x59c9bd=a67_0x3e4ca2;this[_0x59c9bd(0x21b)]=_0x5786fe['logger'],this[_0x59c9bd(0x22e)]=_0x5786fe,this[_0x59c9bd(0x264)]=new SessionCache({'maxChatsPerSession':MAX_CHATS_PER_SESSION,'cacheExpirationMs':CACHE_EXPIRATION_MS}),this['agentCache']=new Map(),this[_0x59c9bd(0x216)]=a67_0x8c3a6a({'logger':![],'bodyLimit':0x40*0x400*0x400}),this['setupMiddleware'](),this['setupRoutes']();}async['getAgentForModel'](_0x222974,_0x7ee3e=0x0){const _0x56ee73=a67_0x3e4ca2,_0x314792=extractModelAlias(_0x222974),_0x4404ef=resolveModelAlias(_0x314792),_0x47b27b=_0x4404ef+'_'+_0x7ee3e;let _0x55d0c3=this['agentCache'][_0x56ee73(0x248)](_0x47b27b);if(!_0x55d0c3){this['logger'][_0x56ee73(0x24f)](_0x56ee73(0x1cc)+_0x222974+_0x56ee73(0x239)+_0x314792+_0x56ee73(0x239)+_0x4404ef),this[_0x56ee73(0x21b)][_0x56ee73(0x24f)](_0x56ee73(0x237)+_0x4404ef+_0x56ee73(0x1d6)+_0x7ee3e+')');const _0x1813ea=await this[_0x56ee73(0x22e)][_0x56ee73(0x24c)]['llm'][_0x56ee73(0x25d)](_0x4404ef,_0x7ee3e);_0x55d0c3=_0x1813ea['id'],this[_0x56ee73(0x226)]['set'](_0x47b27b,_0x55d0c3),this[_0x56ee73(0x21b)]['debug']('Agent\x20cached:\x20'+_0x47b27b+_0x56ee73(0x239)+_0x55d0c3+'\x20('+_0x1813ea[_0x56ee73(0x1ea)][_0x56ee73(0x201)]+')');}return _0x55d0c3;}[a67_0x3e4ca2(0x1de)](){const _0x9b46f=a67_0x3e4ca2;this[_0x9b46f(0x264)]['cleanupExpiredChats']();}[a67_0x3e4ca2(0x1f8)](){const _0x190f47=a67_0x3e4ca2;this[_0x190f47(0x216)]['register'](a67_0x20861e,{'origin':!![],'methods':[_0x190f47(0x1fa),_0x190f47(0x263),_0x190f47(0x208)],'allowedHeaders':[_0x190f47(0x223),_0x190f47(0x1d3),_0x190f47(0x1b4),_0x190f47(0x261)]}),this[_0x190f47(0x216)][_0x190f47(0x23f)]((_0x57097c,_0x189e14,_0x2af7bd)=>{const _0x5e449a=_0x190f47;this[_0x5e449a(0x221)](_0x57097c,_0x189e14,_0x2af7bd);});}[a67_0x3e4ca2(0x221)](_0x4b6f4f,_0x188b8f,_0x1565b8){const _0xbc7dc1=a67_0x3e4ca2;if(_0x4b6f4f instanceof SDKError){const _0x20452c=_0x4b6f4f[_0xbc7dc1(0x257)]()?0x190:0x1f4;_0x1565b8['code'](_0x20452c)['send']({'type':_0xbc7dc1(0x25c),'error':{'type':_0x4b6f4f[_0xbc7dc1(0x224)],'message':_0x4b6f4f[_0xbc7dc1(0x245)],'helpText':_0x4b6f4f[_0xbc7dc1(0x21e)]}});}else{const _0x56f93f=_0x4b6f4f instanceof Error?_0x4b6f4f[_0xbc7dc1(0x236)]:_0xbc7dc1(0x206);this[_0xbc7dc1(0x21b)][_0xbc7dc1(0x25c)](_0xbc7dc1(0x1f0)+_0x188b8f[_0xbc7dc1(0x1bf)]+'\x20'+_0x188b8f[_0xbc7dc1(0x214)]+':',_0x4b6f4f),_0x1565b8[_0xbc7dc1(0x224)](0x1f4)[_0xbc7dc1(0x259)]({'type':_0xbc7dc1(0x25c),'error':{'type':_0xbc7dc1(0x205),'message':_0x56f93f}});}}[a67_0x3e4ca2(0x21f)](){const _0xe96e0c=a67_0x3e4ca2;this[_0xe96e0c(0x216)][_0xe96e0c(0x248)](_0xe96e0c(0x203),async()=>{return{'status':'ok','message':'TD\x20LLM\x20Proxy\x20Server'};}),this[_0xe96e0c(0x216)]['post'](_0xe96e0c(0x251),async(_0x1415bc,_0x3159b1)=>{const _0x4bdb2a=_0xe96e0c;return this[_0x4bdb2a(0x213)](_0x1415bc,_0x3159b1)[_0x4bdb2a(0x258)](_0x4ee1de=>{this['handleRouteError'](_0x4ee1de,_0x1415bc,_0x3159b1);});}),this[_0xe96e0c(0x216)][_0xe96e0c(0x1cd)]('/v1/messages/count_tokens',async(_0x1c40d6,_0xd82bc6)=>{const _0x5eb1bf=_0xe96e0c;return this[_0x5eb1bf(0x24a)](_0x1c40d6)[_0x5eb1bf(0x258)](_0x306acb=>{const _0x2cde92=_0x5eb1bf;this[_0x2cde92(0x221)](_0x306acb,_0x1c40d6,_0xd82bc6);});});}[a67_0x3e4ca2(0x1e3)](_0x2a2a25){const _0x2ea147=a67_0x3e4ca2;if(!_0x2a2a25[_0x2ea147(0x241)]||!Array[_0x2ea147(0x20a)](_0x2a2a25[_0x2ea147(0x241)])||_0x2a2a25['messages'][_0x2ea147(0x1ee)]===0x0)throw new SDKError(ErrorCode['INVALID_REQUEST'],_0x2ea147(0x1cb));if(_0x2a2a25[_0x2ea147(0x25e)]&&!Array[_0x2ea147(0x20a)](_0x2a2a25[_0x2ea147(0x25e)]))throw new SDKError(ErrorCode[_0x2ea147(0x1d7)],_0x2ea147(0x23b));}async['handleMessages'](_0x56432e,_0x99d2af){const _0x1a53b4=a67_0x3e4ca2,_0x590a69=_0x56432e[_0x1a53b4(0x253)];this[_0x1a53b4(0x1e3)](_0x590a69);const _0x36bf85=_0x590a69[_0x1a53b4(0x241)]?.[_0x1a53b4(0x1ee)]??0x0,_0x780133=_0x590a69['model']||_0x1a53b4(0x20d);this[_0x1a53b4(0x21b)][_0x1a53b4(0x220)](_0x56432e[_0x1a53b4(0x1bf)]+'\x20'+_0x56432e['url']+_0x1a53b4(0x1b9)+_0x36bf85+',\x20model='+_0x780133),this[_0x1a53b4(0x21b)]['debug'](_0x1a53b4(0x1db)+colorizeJSONCompact(_0x56432e[_0x1a53b4(0x22c)]));this['logger'][_0x1a53b4(0x250)]&&this[_0x1a53b4(0x21b)][_0x1a53b4(0x250)](colorizeJSON(_0x590a69,{'color':!![]}));const _0x13c3a3=_0x590a69[_0x1a53b4(0x228)]?.['user_id']||_0x1a53b4(0x1d0),_0x3497f3=extractSessionUUID(_0x13c3a3),_0xe7b211=this['sessionCache']['getOrCreateSession'](_0x3497f3,this['config'][_0x1a53b4(0x1d4)]),_0x51876d=[];if(_0x590a69[_0x1a53b4(0x254)]){if(typeof _0x590a69[_0x1a53b4(0x254)]==='string')_0x51876d[_0x1a53b4(0x260)](_0x590a69[_0x1a53b4(0x254)]);else{if(Array[_0x1a53b4(0x20a)](_0x590a69['system']))for(const _0x359aa8 of _0x590a69[_0x1a53b4(0x254)]){_0x359aa8[_0x1a53b4(0x1b8)]==='text'&&_0x359aa8[_0x1a53b4(0x23a)]&&_0x51876d[_0x1a53b4(0x260)](_0x359aa8[_0x1a53b4(0x23a)]);}}}const _0x28256c=_0x590a69[_0x1a53b4(0x25e)]||[],_0x1a9d2f=_0x590a69[_0x1a53b4(0x1bd)]?.[_0x1a53b4(0x1f6)],_0x10f7b1=mapBudgetTokensToReasoningEffort(_0x1a9d2f,this[_0x1a53b4(0x22e)][_0x1a53b4(0x240)]),_0x30d473=calculateContextSignature(_0x590a69['model'],_0x51876d,_0x28256c,_0x10f7b1);let _0x40b51d=_0xe7b211[_0x1a53b4(0x21d)][_0x1a53b4(0x248)](_0x30d473);const _0x28f87d=!_0x40b51d;if(!_0x40b51d){const _0x24e1ac=await this[_0x1a53b4(0x1c9)](_0x590a69[_0x1a53b4(0x24b)],_0x10f7b1);_0x40b51d={'chatId':'','agentId':_0x24e1ac,'contextSignature':_0x30d473,'embeddedSystemPrompts':new Set(),'embeddedToolsByName':new Map(),'messageHistory':[],'lastUsedAt':Date[_0x1a53b4(0x222)]()},_0xe7b211[_0x1a53b4(0x21d)][_0x1a53b4(0x21a)](_0x30d473,_0x40b51d);if(_0xe7b211[_0x1a53b4(0x21d)]['size']>MAX_CHATS_PER_SESSION){let _0x69f8b1=null,_0x3fd9e4=Date[_0x1a53b4(0x222)]();for(const [_0x4ca0da,_0x13277a]of _0xe7b211[_0x1a53b4(0x21d)]){_0x13277a[_0x1a53b4(0x235)]<_0x3fd9e4&&(_0x3fd9e4=_0x13277a['lastUsedAt'],_0x69f8b1=_0x4ca0da);}_0x69f8b1&&(_0xe7b211[_0x1a53b4(0x21d)][_0x1a53b4(0x1c7)](_0x69f8b1),this['logger'][_0x1a53b4(0x24f)](_0x1a53b4(0x1f2)+_0x69f8b1+_0x1a53b4(0x1c3)+MAX_CHATS_PER_SESSION+'\x20limit'));}}else _0x40b51d[_0x1a53b4(0x235)]=Date[_0x1a53b4(0x222)]();if(!_0x40b51d[_0x1a53b4(0x20f)]){if(_0x40b51d[_0x1a53b4(0x1d5)]&&_0x40b51d[_0x1a53b4(0x1fb)]){this[_0x1a53b4(0x21b)]['debug'](_0x1a53b4(0x24d)+_0x30d473);try{_0x40b51d['chatId']=await _0x40b51d[_0x1a53b4(0x1fb)];}catch(_0x507db2){this[_0x1a53b4(0x21b)][_0x1a53b4(0x25c)]('Concurrent\x20chat\x20creation\x20failed,\x20will\x20fall\x20back\x20to\x20lazy\x20creation:',_0x507db2);}}else{if(!_0x40b51d[_0x1a53b4(0x1d5)]){_0x40b51d[_0x1a53b4(0x1d5)]=!![],_0x40b51d[_0x1a53b4(0x1fb)]=((async()=>{const _0x1a7ce1=_0x1a53b4;try{const _0x7f7908=await this[_0x1a7ce1(0x22e)][_0x1a7ce1(0x24c)]['llm'][_0x1a7ce1(0x229)](_0x40b51d[_0x1a7ce1(0x262)]);return this[_0x1a7ce1(0x21b)][_0x1a7ce1(0x220)]('['+_0x7f7908['id']+_0x1a7ce1(0x242)+_0x590a69[_0x1a7ce1(0x24b)]+_0x1a7ce1(0x1c4)+_0x30d473),_0x7f7908['id'];}catch(_0x1595b1){this[_0x1a7ce1(0x21b)][_0x1a7ce1(0x25c)](_0x1a7ce1(0x24e),_0x1595b1);throw _0x1595b1;}finally{_0x40b51d[_0x1a7ce1(0x1d5)]=![],_0x40b51d[_0x1a7ce1(0x1fb)]=undefined;}})());try{_0x40b51d[_0x1a53b4(0x20f)]=await _0x40b51d[_0x1a53b4(0x1fb)];}catch{}}}}const _0x497cd3=_0x51876d[_0x1a53b4(0x1c0)](_0x3e8893=>!_0x40b51d[_0x1a53b4(0x22b)][_0x1a53b4(0x23e)](_0x3e8893)),_0x1370b3=_0x28256c[_0x1a53b4(0x1c0)](_0x20b0ea=>!_0x40b51d[_0x1a53b4(0x1dd)]['has'](_0x20b0ea['name']));this[_0x1a53b4(0x21b)]['debug'](_0x1a53b4(0x209)+_0x3497f3+_0x1a53b4(0x1e1)+_0x590a69['model']+_0x1a53b4(0x1b7)+_0x30d473+',\x20is\x20new\x20context:\x20'+_0x28f87d),this[_0x1a53b4(0x21b)]['debug'](_0x1a53b4(0x238)+_0x40b51d[_0x1a53b4(0x20f)]),this['logger'][_0x1a53b4(0x24f)](_0x1a53b4(0x1ff)+_0x51876d[_0x1a53b4(0x1ee)]+_0x1a53b4(0x246)+_0x28256c['length']),this[_0x1a53b4(0x21b)][_0x1a53b4(0x24f)]('Embedded\x20in\x20chat\x20-\x20system\x20prompts:\x20'+_0x40b51d[_0x1a53b4(0x22b)][_0x1a53b4(0x1d1)]+_0x1a53b4(0x246)+_0x40b51d[_0x1a53b4(0x1dd)][_0x1a53b4(0x1d1)]),this[_0x1a53b4(0x21b)][_0x1a53b4(0x24f)]('New\x20-\x20system\x20prompts:\x20'+_0x497cd3[_0x1a53b4(0x1ee)]+_0x1a53b4(0x246)+_0x1370b3[_0x1a53b4(0x1ee)]);_0x497cd3[_0x1a53b4(0x1ee)]>0x0&&this[_0x1a53b4(0x21b)][_0x1a53b4(0x24f)](_0x1a53b4(0x1eb),_0x497cd3[_0x1a53b4(0x1e5)](_0x50ccb4=>_0x50ccb4[_0x1a53b4(0x1ca)](0x0,0x32)+'...')[_0x1a53b4(0x1f3)](_0x1a53b4(0x1ef)));_0x1370b3[_0x1a53b4(0x1ee)]>0x0&&this[_0x1a53b4(0x21b)][_0x1a53b4(0x24f)](_0x1a53b4(0x265),_0x1370b3[_0x1a53b4(0x1e5)](_0x104022=>_0x104022[_0x1a53b4(0x201)])[_0x1a53b4(0x1f3)](',\x20'));const _0x42736b=calculateConversationDelta(_0x590a69['messages'],_0x40b51d[_0x1a53b4(0x22a)]),_0x38f81b=extractLastUserMessage(_0x42736b,_0x590a69[_0x1a53b4(0x241)]);if(_0x38f81b[_0x1a53b4(0x25c)])throw new SDKError(ErrorCode[_0x1a53b4(0x1d7)],_0x38f81b[_0x1a53b4(0x25c)]);const _0x4fe586=_0x38f81b[_0x1a53b4(0x23a)]||'',_0x57e5d0=()=>{const _0x3282e6=_0x1a53b4,_0x4a29db=[];_0x51876d['length']>0x0&&_0x4a29db['push'](_0x51876d[_0x3282e6(0x1f3)]('\x0a\x0a'));_0x28256c['length']>0x0&&_0x4a29db[_0x3282e6(0x260)](generateToolPrompt(_0x28256c));if(_0x590a69[_0x3282e6(0x241)]&&_0x590a69['messages']['length']>0x1){const _0x18b2fc=formatConversationHistory(_0x590a69[_0x3282e6(0x241)]);_0x18b2fc&&_0x4a29db[_0x3282e6(0x260)](_0x3282e6(0x1c5)+_0x18b2fc+_0x3282e6(0x225));}return _0x4a29db['push'](_0x4fe586),_0x4a29db[_0x3282e6(0x1c0)](_0x55a108=>_0x55a108&&_0x55a108[_0x3282e6(0x200)]())['join'](_0x3282e6(0x1fd));};let _0x35f5f8;if(_0x28f87d){this[_0x1a53b4(0x21b)][_0x1a53b4(0x220)]('['+_0x40b51d['chatId']+']\x20Building\x20a\x20new\x20context\x20for\x20model\x20'+_0x590a69[_0x1a53b4(0x24b)]+_0x1a53b4(0x247)+_0x51876d[_0x1a53b4(0x1ee)]+',\x20tools='+_0x28256c[_0x1a53b4(0x1ee)]+',\x20tool_names=['+_0x28256c['map'](_0x4378d4=>_0x4378d4[_0x1a53b4(0x201)])[_0x1a53b4(0x1f3)](',\x20')+']'),_0x35f5f8=_0x57e5d0();for(const _0x5e736c of _0x51876d){_0x40b51d[_0x1a53b4(0x22b)]['add'](_0x5e736c);}for(const _0x277a29 of _0x28256c){_0x40b51d[_0x1a53b4(0x1dd)][_0x1a53b4(0x21a)](_0x277a29[_0x1a53b4(0x201)],_0x277a29);}}else{const _0x5e521f=[];_0x497cd3[_0x1a53b4(0x1ee)]>0x0&&(_0x5e521f[_0x1a53b4(0x260)](_0x497cd3[_0x1a53b4(0x1f3)]('\x0a\x0a')),this[_0x1a53b4(0x21b)]['debug']('Embedding',_0x497cd3[_0x1a53b4(0x1ee)],_0x1a53b4(0x22f)));if(_0x1370b3['length']>0x0)try{_0x5e521f[_0x1a53b4(0x260)](generateToolPrompt(_0x1370b3)),this[_0x1a53b4(0x21b)][_0x1a53b4(0x24f)](_0x1a53b4(0x1d8),_0x1370b3[_0x1a53b4(0x1ee)],_0x1a53b4(0x1d2));}catch(_0x4c2936){this[_0x1a53b4(0x21b)][_0x1a53b4(0x25c)]('Failed\x20to\x20generate\x20tool\x20prompt:',_0x4c2936);}try{const _0x4caeb0=extractToolResults(_0x42736b);_0x4caeb0&&(_0x5e521f[_0x1a53b4(0x260)](_0x4caeb0),this[_0x1a53b4(0x21b)][_0x1a53b4(0x24f)](_0x1a53b4(0x1d9)));}catch(_0x160fbf){this[_0x1a53b4(0x21b)][_0x1a53b4(0x25c)](_0x1a53b4(0x211),_0x160fbf);}_0x5e521f[_0x1a53b4(0x260)](_0x4fe586);const _0x596571=_0x5e521f[_0x1a53b4(0x1c0)](_0x40a00b=>_0x40a00b&&_0x40a00b['trim']());_0x35f5f8=_0x596571[_0x1a53b4(0x1ee)]>0x0?_0x596571['join'](_0x1a53b4(0x1fd)):_0x4fe586;for(const _0x4957b9 of _0x497cd3){_0x40b51d[_0x1a53b4(0x22b)][_0x1a53b4(0x25f)](_0x4957b9);}for(const _0x4edd51 of _0x1370b3){_0x40b51d['embeddedToolsByName'][_0x1a53b4(0x21a)](_0x4edd51['name'],_0x4edd51);}}(!_0x35f5f8||!_0x35f5f8[_0x1a53b4(0x200)]())&&(this['logger'][_0x1a53b4(0x1c1)]('Final\x20message\x20is\x20empty\x20after\x20construction\x20-\x20starting\x20fresh\x20conversation'),this[_0x1a53b4(0x21b)][_0x1a53b4(0x1c1)]('Context:',{'isNewContext':_0x28f87d,'userMessageLength':_0x4fe586?.[_0x1a53b4(0x1ee)]||0x0,'systemPromptsCount':_0x51876d[_0x1a53b4(0x1ee)],'toolsCount':_0x28256c[_0x1a53b4(0x1ee)],'messagesCount':_0x590a69[_0x1a53b4(0x241)]?.['length']||0x0,'newMessagesCount':_0x42736b[_0x1a53b4(0x1ee)]}),clearChatState(_0x40b51d),_0x35f5f8=_0x57e5d0(),(!_0x35f5f8||!_0x35f5f8[_0x1a53b4(0x200)]())&&(this[_0x1a53b4(0x21b)][_0x1a53b4(0x25c)](_0x1a53b4(0x1c2)),this[_0x1a53b4(0x21b)][_0x1a53b4(0x25c)]('Debug\x20info:',{'systemPromptsCount':_0x51876d[_0x1a53b4(0x1ee)],'toolsCount':_0x28256c[_0x1a53b4(0x1ee)],'messagesCount':_0x590a69[_0x1a53b4(0x241)]?.[_0x1a53b4(0x1ee)]||0x0,'userMessageLength':_0x4fe586?.[_0x1a53b4(0x1ee)]||0x0}),_0x35f5f8='continue'),this[_0x1a53b4(0x21b)][_0x1a53b4(0x220)]('Final\x20message\x20reconstructed\x20after\x20context\x20reset:',_0x35f5f8[_0x1a53b4(0x1ca)](0x0,0x64)+'...'));const _0x4bbe33=_0x590a69[_0x1a53b4(0x20c)]!==![];if(_0x4bbe33){_0x99d2af[_0x1a53b4(0x1da)][_0x1a53b4(0x252)](0xc8,{'Content-Type':_0x1a53b4(0x215),'Cache-Control':_0x1a53b4(0x1dc),'Connection':_0x1a53b4(0x1ce),'X-Accel-Buffering':'no'});const _0x3c63f2=generateMessageId();let _0x2939b5=0x0,_0x55a838=0x0;try{if(_0x40b51d[_0x1a53b4(0x20f)]){const _0xe692c7=_0x35f5f8[_0x1a53b4(0x1ca)](0x0,0x32)['replace'](/\n/g,'\x20');this[_0x1a53b4(0x21b)][_0x1a53b4(0x220)]('['+_0x40b51d[_0x1a53b4(0x20f)]+']\x20Continue\x20chat\x20for\x20model\x20'+_0x590a69[_0x1a53b4(0x24b)]+_0x1a53b4(0x1c4)+_0x30d473+',\x20'+_0x590a69[_0x1a53b4(0x241)][_0x1a53b4(0x1ee)]+'\x20messages,\x20'+_0x51876d['length']+_0x1a53b4(0x212)+_0x28256c[_0x1a53b4(0x1ee)]+_0x1a53b4(0x1e9)+_0x35f5f8[_0x1a53b4(0x1ee)]+_0x1a53b4(0x1f5)+_0xe692c7+_0x1a53b4(0x1e8));}const _0x4e09b8=this[_0x1a53b4(0x22e)][_0x1a53b4(0x24c)]['llm'][_0x1a53b4(0x1be)](_0x35f5f8,{'chatId':_0x40b51d[_0x1a53b4(0x20f)]||undefined,'agentId':_0x40b51d[_0x1a53b4(0x20f)]?undefined:_0x40b51d[_0x1a53b4(0x262)]});if(!_0x4e09b8){this[_0x1a53b4(0x21b)][_0x1a53b4(0x25c)](_0x1a53b4(0x21c)),this[_0x1a53b4(0x21b)][_0x1a53b4(0x25c)]('Context:',JSON['stringify']({'chatId':_0x40b51d[_0x1a53b4(0x20f)],'agentId':_0x40b51d[_0x1a53b4(0x262)],'model':_0x590a69['model'],'sessionId':_0x3497f3,'contextSignature':_0x30d473})),_0x40b51d[_0x1a53b4(0x20f)]='',this[_0x1a53b4(0x21b)][_0x1a53b4(0x1c1)]('Reset\x20chat\x20ID\x20to\x20recover\x20on\x20next\x20request');const _0x50e806=formatAnthropicSSE({'type':'error','error':{'type':_0x1a53b4(0x205),'message':'Failed\x20to\x20initialize\x20chat\x20stream.\x20Please\x20try\x20again.'},'request_id':_0x3c63f2});_0x99d2af[_0x1a53b4(0x1da)][_0x1a53b4(0x22d)](_0x50e806),_0x99d2af['raw'][_0x1a53b4(0x1c6)]();return;}_0x40b51d[_0x1a53b4(0x22a)]=_0x590a69[_0x1a53b4(0x241)];const _0x4d0693=_0x40b51d;async function*_0x490b1c(_0x1103b9){const _0x531483=_0x1a53b4;for await(const _0x140294 of _0x1103b9){if(_0x140294['type']==='metadata')_0x140294[_0x531483(0x233)]['chatId']&&!_0x4d0693[_0x531483(0x20f)]&&(_0x4d0693[_0x531483(0x20f)]=_0x140294[_0x531483(0x233)][_0x531483(0x20f)]);else _0x140294['type']===_0x531483(0x25a)&&(yield _0x140294[_0x531483(0x233)]);}}const _0x1b6eb5=_0x490b1c(_0x4e09b8);_0x2939b5=estimateInputTokensFromRequest(_0x590a69);const _0x1592b1=transformTDStreamToAnthropic(_0x1b6eb5,_0x3c63f2,_0x590a69['model'],this[_0x1a53b4(0x21b)],_0x4fe586,_0x2939b5),_0x23f083=_0x35f5f8['length'];let _0x1f801b=0x0;for await(const _0x353263 of _0x1592b1){const _0x2c9f94=formatAnthropicSSE(_0x353263);_0x1f801b++,this[_0x1a53b4(0x21b)][_0x1a53b4(0x24f)](colorizeJSONCompact(_0x353263,{'color':!![]})),_0x353263[_0x1a53b4(0x1b8)]===_0x1a53b4(0x25c)&&_0x353263[_0x1a53b4(0x25c)][_0x1a53b4(0x1b8)]===_0x1a53b4(0x218)&&(clearChatState(_0x40b51d),this[_0x1a53b4(0x21b)][_0x1a53b4(0x1c1)]('[CONTEXT\x20LENGTH\x20ERROR]\x20'+_0x353263[_0x1a53b4(0x25c)][_0x1a53b4(0x236)]+_0x1a53b4(0x1e6)+_0x23f083+_0x1a53b4(0x20b)+_0x3497f3+_0x1a53b4(0x234)+_0x30d473)),_0x353263[_0x1a53b4(0x1b8)]===_0x1a53b4(0x1b5)&&_0x353263[_0x1a53b4(0x1e4)]?.['output_tokens']&&(_0x55a838=_0x353263[_0x1a53b4(0x1e4)]['output_tokens']),_0x99d2af[_0x1a53b4(0x1da)][_0x1a53b4(0x22d)](_0x2c9f94);}this[_0x1a53b4(0x21b)][_0x1a53b4(0x24f)](_0x1a53b4(0x232)+_0x1f801b+_0x1a53b4(0x1bc)),appendUsageEntry(_0x3497f3,{'timestamp':new Date()[_0x1a53b4(0x230)](),'model':_0x590a69['model'],'inputTokens':_0x2939b5,'outputTokens':_0x55a838,'contextSignature':_0x30d473,'profile':this[_0x1a53b4(0x22e)][_0x1a53b4(0x24c)]?.['context']?.['profile'],'chatId':_0x40b51d[_0x1a53b4(0x20f)]||undefined})[_0x1a53b4(0x258)](_0x4397d1=>{const _0x4bf1ab=_0x1a53b4;this[_0x4bf1ab(0x21b)][_0x4bf1ab(0x1c1)]('Failed\x20to\x20log\x20usage\x20entry:\x20'+_0x4397d1);}),_0x99d2af[_0x1a53b4(0x1da)]['end']();}catch(_0x34d03a){(_0x2939b5>0x0||_0x55a838>0x0)&&appendUsageEntry(_0x3497f3,{'timestamp':new Date()['toISOString'](),'model':_0x590a69[_0x1a53b4(0x24b)],'inputTokens':_0x2939b5,'outputTokens':_0x55a838,'contextSignature':_0x30d473,'profile':this[_0x1a53b4(0x22e)][_0x1a53b4(0x24c)]?.[_0x1a53b4(0x249)]?.[_0x1a53b4(0x256)],'chatId':_0x40b51d[_0x1a53b4(0x20f)]||undefined})[_0x1a53b4(0x258)](_0xf92a1f=>{const _0x139305=_0x1a53b4;this['logger'][_0x139305(0x1c1)](_0x139305(0x1ba)+_0xf92a1f);});const _0x3583d3=_0x34d03a instanceof Error?_0x34d03a[_0x1a53b4(0x236)]:_0x1a53b4(0x206);this[_0x1a53b4(0x21b)]['error']('[PROXY\x20ERROR]\x20Streaming\x20error:',_0x34d03a),this['logger'][_0x1a53b4(0x25c)](_0x1a53b4(0x20e),JSON[_0x1a53b4(0x23c)]({'chatId':_0x40b51d[_0x1a53b4(0x20f)],'agentId':_0x40b51d[_0x1a53b4(0x262)],'model':_0x590a69[_0x1a53b4(0x24b)],'sessionId':_0x3497f3,'contextSignature':_0x30d473})),_0x40b51d[_0x1a53b4(0x20f)]='',this[_0x1a53b4(0x21b)][_0x1a53b4(0x1c1)](_0x1a53b4(0x1c8));const _0x37355b=formatAnthropicSSE({'type':'error','error':{'type':_0x1a53b4(0x205),'message':_0x3583d3},'request_id':_0x3c63f2});_0x99d2af[_0x1a53b4(0x1da)][_0x1a53b4(0x22d)](_0x37355b),_0x99d2af[_0x1a53b4(0x1da)]['end']();}}else this['logger'][_0x1a53b4(0x25c)]('[PROXY\x20ERROR]\x20Non-streaming\x20responses\x20are\x20not\x20yet\x20supported'),_0x99d2af['code'](0x1f5)['send']({'type':_0x1a53b4(0x25c),'error':{'type':_0x1a53b4(0x1e2),'message':_0x1a53b4(0x255)}});}async[a67_0x3e4ca2(0x24a)](_0x3b5081){const _0x156c5b=a67_0x3e4ca2,_0x1092c9=_0x3b5081[_0x156c5b(0x253)],_0xfbad3a=estimateInputTokensFromRequest(_0x1092c9);return this[_0x156c5b(0x21b)][_0x156c5b(0x220)](_0x3b5081[_0x156c5b(0x1bf)]+'\x20'+_0x3b5081[_0x156c5b(0x214)]+':\x20estimated\x20input_tokens='+_0xfbad3a),{'input_tokens':_0xfbad3a};}async[a67_0x3e4ca2(0x1b6)](){const _0x433e82=a67_0x3e4ca2;try{await this[_0x433e82(0x216)][_0x433e82(0x210)]({'port':this[_0x433e82(0x22e)][_0x433e82(0x1f1)],'host':_0x433e82(0x1ec)}),this[_0x433e82(0x21b)][_0x433e82(0x220)](_0x433e82(0x243)+this[_0x433e82(0x22e)][_0x433e82(0x1f1)]),this[_0x433e82(0x219)]=setInterval(()=>{const _0x3ba111=_0x433e82;this[_0x3ba111(0x1de)]();},CLEANUP_INTERVAL_MS),this[_0x433e82(0x21b)]['debug'](_0x433e82(0x1f9)+CLEANUP_INTERVAL_MS/0x3e8+_0x433e82(0x1f7)+CACHE_EXPIRATION_MS/0x3e8+'s)');}catch(_0x1b0649){const _0x1fa29b=_0x1b0649 instanceof Error?_0x1b0649[_0x433e82(0x236)]:'Unknown\x20error';throw new Error('Failed\x20to\x20start\x20proxy\x20server:\x20'+_0x1fa29b);}}async[a67_0x3e4ca2(0x1df)](){const _0xdf5a81=a67_0x3e4ca2;this[_0xdf5a81(0x219)]&&(clearInterval(this[_0xdf5a81(0x219)]),this[_0xdf5a81(0x219)]=undefined),await this[_0xdf5a81(0x216)][_0xdf5a81(0x1f4)]();}[a67_0x3e4ca2(0x1e0)](){const _0x1ecb0e=a67_0x3e4ca2,_0x10fdb8=this[_0x1ecb0e(0x216)][_0x1ecb0e(0x216)]['address']();if(typeof _0x10fdb8===_0x1ecb0e(0x23d))return _0x10fdb8;if(_0x10fdb8)return _0x1ecb0e(0x231)+_0x10fdb8[_0x1ecb0e(0x227)]+':'+_0x10fdb8[_0x1ecb0e(0x1f1)];return _0x1ecb0e(0x1e7)+this[_0x1ecb0e(0x22e)][_0x1ecb0e(0x1f1)];}}
@@ -1 +1 @@
1
- const a67_0xb8f029=a67_0x130d;function a67_0x52a1(){const _0x177626=['getSessionCount','6027615VvBMdt','3709566fBaJtB','1336641CBfDlv','6012srKOUA','chats','getTotalChatCount','2rhSPwH','lastUsedAt','sessions','getSession','values','now','clear','43640HQMiwL','maxChatsPerSession','get','delete','config','size','set','\x20not\x20found','2977024VYisaY','push','cacheExpirationMs','1143212OEySdJ','getOrCreateSession','cleanupExpiredChats','Session\x20','1074954TwOuxk'];a67_0x52a1=function(){return _0x177626;};return a67_0x52a1();}function a67_0x130d(_0x3dd62f,_0x3e41f3){_0x3dd62f=_0x3dd62f-0x1d6;const _0x52a168=a67_0x52a1();let _0x130d40=_0x52a168[_0x3dd62f];return _0x130d40;}(function(_0x139075,_0x3a1865){const _0x5422d5=a67_0x130d,_0x3465f7=_0x139075();while(!![]){try{const _0x3b27f8=parseInt(_0x5422d5(0x1e8))/0x1*(parseInt(_0x5422d5(0x1d6))/0x2)+parseInt(_0x5422d5(0x1f0))/0x3+parseInt(_0x5422d5(0x1e5))/0x4+parseInt(_0x5422d5(0x1ee))/0x5+parseInt(_0x5422d5(0x1ec))/0x6+parseInt(_0x5422d5(0x1ef))/0x7+-parseInt(_0x5422d5(0x1dd))/0x8*(parseInt(_0x5422d5(0x1f1))/0x9);if(_0x3b27f8===_0x3a1865)break;else _0x3465f7['push'](_0x3465f7['shift']());}catch(_0x3773f8){_0x3465f7['push'](_0x3465f7['shift']());}}}(a67_0x52a1,0x9362f));export class SessionCache{[a67_0xb8f029(0x1d8)];['config'];constructor(_0x116068){const _0x152f24=a67_0xb8f029;this[_0x152f24(0x1e1)]=_0x116068,this[_0x152f24(0x1d8)]=new Map();}[a67_0xb8f029(0x1e9)](_0x287af4,_0x372d6e){const _0x3c9770=a67_0xb8f029;let _0x19ecc5=this[_0x3c9770(0x1d8)][_0x3c9770(0x1df)](_0x287af4);return!_0x19ecc5&&(_0x19ecc5={'projectId':_0x372d6e,'chats':new Map()},this['sessions'][_0x3c9770(0x1e3)](_0x287af4,_0x19ecc5)),_0x19ecc5;}[a67_0xb8f029(0x1d9)](_0x76b247){const _0x5093a0=a67_0xb8f029;return this['sessions'][_0x5093a0(0x1df)](_0x76b247);}['getOrCreateChat'](_0x5a13c8,_0x35c2fa,_0x29d232){const _0x1228bd=a67_0xb8f029,_0x304c5e=this['sessions']['get'](_0x5a13c8);if(!_0x304c5e)throw new Error(_0x1228bd(0x1eb)+_0x5a13c8+_0x1228bd(0x1e4));let _0x29df79=_0x304c5e['chats']['get'](_0x35c2fa);if(!_0x29df79){_0x29df79={'chatId':'','agentId':_0x29d232,'contextSignature':_0x35c2fa,'embeddedSystemPrompts':new Set(),'embeddedToolsByName':new Map(),'messageHistory':[],'lastUsedAt':Date[_0x1228bd(0x1db)]()},_0x304c5e['chats']['set'](_0x35c2fa,_0x29df79);if(_0x304c5e[_0x1228bd(0x1f2)][_0x1228bd(0x1e2)]>this[_0x1228bd(0x1e1)][_0x1228bd(0x1de)]){let _0x2412ba=null,_0x45de6a=Date['now']();for(const [_0x58f8d2,_0x4b85f6]of _0x304c5e['chats']){_0x4b85f6[_0x1228bd(0x1d7)]<_0x45de6a&&(_0x45de6a=_0x4b85f6[_0x1228bd(0x1d7)],_0x2412ba=_0x58f8d2);}_0x2412ba&&_0x304c5e['chats']['delete'](_0x2412ba);}}else _0x29df79[_0x1228bd(0x1d7)]=Date[_0x1228bd(0x1db)]();return _0x29df79;}[a67_0xb8f029(0x1ea)](){const _0x535360=a67_0xb8f029,_0xb052db=Date[_0x535360(0x1db)]();let _0x486e1e=0x0;for(const [_0x3a5db7,_0x203dbc]of this[_0x535360(0x1d8)]){const _0x440cfb=[];for(const [_0x24bfc0,_0x38eb7a]of _0x203dbc[_0x535360(0x1f2)]){_0xb052db-_0x38eb7a[_0x535360(0x1d7)]>this[_0x535360(0x1e1)][_0x535360(0x1e7)]&&_0x440cfb[_0x535360(0x1e6)](_0x24bfc0);}for(const _0x4dacf7 of _0x440cfb){_0x203dbc[_0x535360(0x1f2)][_0x535360(0x1e0)](_0x4dacf7),_0x486e1e++;}_0x203dbc[_0x535360(0x1f2)][_0x535360(0x1e2)]===0x0&&this[_0x535360(0x1d8)][_0x535360(0x1e0)](_0x3a5db7);}return _0x486e1e;}[a67_0xb8f029(0x1ed)](){const _0x8d43bd=a67_0xb8f029;return this['sessions'][_0x8d43bd(0x1e2)];}[a67_0xb8f029(0x1f3)](){const _0x415217=a67_0xb8f029;let _0x176ab2=0x0;for(const _0x2b6a11 of this[_0x415217(0x1d8)][_0x415217(0x1da)]()){_0x176ab2+=_0x2b6a11[_0x415217(0x1f2)][_0x415217(0x1e2)];}return _0x176ab2;}['clear'](){const _0xdea936=a67_0xb8f029;this[_0xdea936(0x1d8)][_0xdea936(0x1dc)]();}}
1
+ function a68_0x2e46(){const _0xf5a788=['45SPyVXy','getOrCreateSession','maxChatsPerSession','size','2911948MPwdPR','lastUsedAt','23778EsiPpN','sessions','now','config','6280825qYGkLK','values','getSessionCount','3344864ibuPIs','clear','cacheExpirationMs','833jgMtND','push','getOrCreateChat','Session\x20','delete','465665BRPsWQ','339372ldLCNW','set','chats','\x20not\x20found','cleanupExpiredChats','get','3953775PrPfev'];a68_0x2e46=function(){return _0xf5a788;};return a68_0x2e46();}const a68_0x2c58df=a68_0x35a2;function a68_0x35a2(_0x2f872e,_0x3f8479){_0x2f872e=_0x2f872e-0x1f0;const _0x2e46d3=a68_0x2e46();let _0x35a25b=_0x2e46d3[_0x2f872e];return _0x35a25b;}(function(_0x2b2805,_0x3c8a9a){const _0x154a63=a68_0x35a2,_0x337d51=_0x2b2805();while(!![]){try{const _0x405f01=parseInt(_0x154a63(0x1f8))/0x1+-parseInt(_0x154a63(0x204))/0x2+parseInt(_0x154a63(0x1ff))/0x3+parseInt(_0x154a63(0x1f9))/0x4+-parseInt(_0x154a63(0x20a))/0x5+-parseInt(_0x154a63(0x206))/0x6*(parseInt(_0x154a63(0x1f3))/0x7)+parseInt(_0x154a63(0x1f0))/0x8*(parseInt(_0x154a63(0x200))/0x9);if(_0x405f01===_0x3c8a9a)break;else _0x337d51['push'](_0x337d51['shift']());}catch(_0x14ecc0){_0x337d51['push'](_0x337d51['shift']());}}}(a68_0x2e46,0xbd445));export class SessionCache{[a68_0x2c58df(0x207)];[a68_0x2c58df(0x209)];constructor(_0x289c69){const _0x1cda12=a68_0x2c58df;this[_0x1cda12(0x209)]=_0x289c69,this[_0x1cda12(0x207)]=new Map();}[a68_0x2c58df(0x201)](_0x1941bf,_0x25dea2){const _0x5bb78a=a68_0x2c58df;let _0x47ac7c=this[_0x5bb78a(0x207)][_0x5bb78a(0x1fe)](_0x1941bf);return!_0x47ac7c&&(_0x47ac7c={'projectId':_0x25dea2,'chats':new Map()},this[_0x5bb78a(0x207)][_0x5bb78a(0x1fa)](_0x1941bf,_0x47ac7c)),_0x47ac7c;}['getSession'](_0x5dde63){const _0x44e902=a68_0x2c58df;return this[_0x44e902(0x207)]['get'](_0x5dde63);}[a68_0x2c58df(0x1f5)](_0x56ca5b,_0x54628f,_0x282a8f){const _0x444ec2=a68_0x2c58df,_0x21c9d2=this[_0x444ec2(0x207)][_0x444ec2(0x1fe)](_0x56ca5b);if(!_0x21c9d2)throw new Error(_0x444ec2(0x1f6)+_0x56ca5b+_0x444ec2(0x1fc));let _0x23df78=_0x21c9d2[_0x444ec2(0x1fb)][_0x444ec2(0x1fe)](_0x54628f);if(!_0x23df78){_0x23df78={'chatId':'','agentId':_0x282a8f,'contextSignature':_0x54628f,'embeddedSystemPrompts':new Set(),'embeddedToolsByName':new Map(),'messageHistory':[],'lastUsedAt':Date[_0x444ec2(0x208)]()},_0x21c9d2[_0x444ec2(0x1fb)][_0x444ec2(0x1fa)](_0x54628f,_0x23df78);if(_0x21c9d2[_0x444ec2(0x1fb)][_0x444ec2(0x203)]>this[_0x444ec2(0x209)][_0x444ec2(0x202)]){let _0x123d3f=null,_0x262178=Date[_0x444ec2(0x208)]();for(const [_0x243324,_0x651dcc]of _0x21c9d2['chats']){_0x651dcc[_0x444ec2(0x205)]<_0x262178&&(_0x262178=_0x651dcc[_0x444ec2(0x205)],_0x123d3f=_0x243324);}_0x123d3f&&_0x21c9d2['chats'][_0x444ec2(0x1f7)](_0x123d3f);}}else _0x23df78[_0x444ec2(0x205)]=Date[_0x444ec2(0x208)]();return _0x23df78;}[a68_0x2c58df(0x1fd)](){const _0x185b1b=a68_0x2c58df,_0x51b856=Date[_0x185b1b(0x208)]();let _0x56ce22=0x0;for(const [_0x5d9b97,_0x14ffa9]of this[_0x185b1b(0x207)]){const _0x18aba0=[];for(const [_0x36db6e,_0xdf7110]of _0x14ffa9[_0x185b1b(0x1fb)]){_0x51b856-_0xdf7110[_0x185b1b(0x205)]>this[_0x185b1b(0x209)][_0x185b1b(0x1f2)]&&_0x18aba0[_0x185b1b(0x1f4)](_0x36db6e);}for(const _0x9101d0 of _0x18aba0){_0x14ffa9[_0x185b1b(0x1fb)][_0x185b1b(0x1f7)](_0x9101d0),_0x56ce22++;}_0x14ffa9['chats'][_0x185b1b(0x203)]===0x0&&this['sessions'][_0x185b1b(0x1f7)](_0x5d9b97);}return _0x56ce22;}[a68_0x2c58df(0x20c)](){const _0x129598=a68_0x2c58df;return this[_0x129598(0x207)][_0x129598(0x203)];}['getTotalChatCount'](){const _0x45af45=a68_0x2c58df;let _0x5c0db6=0x0;for(const _0x559842 of this['sessions'][_0x45af45(0x20b)]()){_0x5c0db6+=_0x559842[_0x45af45(0x1fb)][_0x45af45(0x203)];}return _0x5c0db6;}[a68_0x2c58df(0x1f1)](){const _0x41b843=a68_0x2c58df;this['sessions'][_0x41b843(0x1f1)]();}}
@@ -1 +1 @@
1
- const a68_0x2c5058=a68_0x2f73;(function(_0xab3b94,_0x36254b){const _0x93fa9f=a68_0x2f73,_0x4c4177=_0xab3b94();while(!![]){try{const _0x401cdb=parseInt(_0x93fa9f(0x1db))/0x1+parseInt(_0x93fa9f(0x1ce))/0x2*(parseInt(_0x93fa9f(0x1d8))/0x3)+-parseInt(_0x93fa9f(0x1c2))/0x4+parseInt(_0x93fa9f(0x1bb))/0x5*(-parseInt(_0x93fa9f(0x1d9))/0x6)+parseInt(_0x93fa9f(0x1c4))/0x7+-parseInt(_0x93fa9f(0x1d4))/0x8*(parseInt(_0x93fa9f(0x1bf))/0x9)+parseInt(_0x93fa9f(0x1c1))/0xa;if(_0x401cdb===_0x36254b)break;else _0x4c4177['push'](_0x4c4177['shift']());}catch(_0x3c4745){_0x4c4177['push'](_0x4c4177['shift']());}}}(a68_0x1336,0x1bac5));function a68_0x2f73(_0x14d10b,_0x1237d7){_0x14d10b=_0x14d10b-0x1ba;const _0x1336fb=a68_0x1336();let _0x2f73b5=_0x1336fb[_0x14d10b];return _0x2f73b5;}export function parseSSEChunk(_0x1e6a17){const _0x407acb=a68_0x2f73,_0x173594=[],_0x5e9881=_0x1e6a17['split']('\x0a\x0a'),_0x466410=_0x5e9881[_0x407acb(0x1bc)]()||'';for(const _0xc78b60 of _0x5e9881){if(!_0xc78b60[_0x407acb(0x1cf)]())continue;const _0x33892d={},_0x46392=_0xc78b60[_0x407acb(0x1be)]('\x0a');for(const _0x3bbccf of _0x46392){if(_0x3bbccf['startsWith'](_0x407acb(0x1d2)))_0x33892d['event']=_0x3bbccf[_0x407acb(0x1d6)](0x7);else _0x3bbccf['startsWith']('data:\x20')&&(_0x33892d[_0x407acb(0x1d0)]=_0x3bbccf[_0x407acb(0x1d6)](0x6));}(_0x33892d[_0x407acb(0x1d7)]||_0x33892d[_0x407acb(0x1d0)])&&_0x173594[_0x407acb(0x1c0)](_0x33892d);}return{'events':_0x173594,'remaining':_0x466410};}export function extractMessageStartUsage(_0x1319c7){const _0x4cfe06=a68_0x2f73;try{const _0x29874f=JSON[_0x4cfe06(0x1ba)](_0x1319c7);if(_0x29874f[_0x4cfe06(0x1c9)]==='message_start'&&_0x29874f['message']?.[_0x4cfe06(0x1cd)]){const _0x4a2b45=_0x29874f[_0x4cfe06(0x1bd)][_0x4cfe06(0x1cd)];return{'inputTokens':_0x4a2b45[_0x4cfe06(0x1ca)]||0x0,'outputTokens':_0x4a2b45[_0x4cfe06(0x1c6)]||0x0,'cacheCreationInputTokens':_0x4a2b45['cache_creation_input_tokens'],'cacheReadInputTokens':_0x4a2b45[_0x4cfe06(0x1d5)]};}}catch{}return null;}export function extractMessageDeltaUsage(_0x2e504c){const _0x549dc0=a68_0x2f73;try{const _0x26df32=JSON[_0x549dc0(0x1ba)](_0x2e504c);if(_0x26df32[_0x549dc0(0x1c9)]===_0x549dc0(0x1cb)&&_0x26df32['usage']){const _0x337bca=_0x26df32[_0x549dc0(0x1cd)];return{'inputTokens':_0x337bca[_0x549dc0(0x1ca)]||0x0,'outputTokens':_0x337bca[_0x549dc0(0x1c6)]||0x0,'cacheCreationInputTokens':_0x337bca[_0x549dc0(0x1c5)],'cacheReadInputTokens':_0x337bca['cache_read_input_tokens']};}}catch{}return null;}export function extractUsageFromEvent(_0x5a6bdc){const _0x4d9b5c=a68_0x2f73;if(!_0x5a6bdc[_0x4d9b5c(0x1d0)])return null;if(_0x5a6bdc[_0x4d9b5c(0x1d7)]===_0x4d9b5c(0x1cc))return extractMessageStartUsage(_0x5a6bdc[_0x4d9b5c(0x1d0)]);if(_0x5a6bdc[_0x4d9b5c(0x1d7)]===_0x4d9b5c(0x1cb))return extractMessageDeltaUsage(_0x5a6bdc[_0x4d9b5c(0x1d0)]);return null;}export class SSEUsageTracker{[a68_0x2c5058(0x1c3)]=0x0;[a68_0x2c5058(0x1da)]=0x0;[a68_0x2c5058(0x1d1)];[a68_0x2c5058(0x1c7)];[a68_0x2c5058(0x1d3)]='';['processChunk'](_0x3e4fc0){const _0x3fae79=a68_0x2c5058;this['buffer']+=_0x3e4fc0;const {events:_0x303385,remaining:_0x577fc6}=parseSSEChunk(this[_0x3fae79(0x1d3)]);this[_0x3fae79(0x1d3)]=_0x577fc6;for(const _0x54f7a1 of _0x303385){const _0x286fdf=extractUsageFromEvent(_0x54f7a1);_0x286fdf&&(this[_0x3fae79(0x1c3)]=_0x286fdf[_0x3fae79(0x1c3)],this[_0x3fae79(0x1da)]=_0x286fdf[_0x3fae79(0x1da)],_0x286fdf['cacheCreationInputTokens']!==undefined&&(this[_0x3fae79(0x1d1)]=_0x286fdf['cacheCreationInputTokens']),_0x286fdf[_0x3fae79(0x1c7)]!==undefined&&(this[_0x3fae79(0x1c7)]=_0x286fdf['cacheReadInputTokens']));}return _0x3e4fc0;}[a68_0x2c5058(0x1c8)](){const _0x4b525e=a68_0x2c5058;return{'inputTokens':this[_0x4b525e(0x1c3)],'outputTokens':this[_0x4b525e(0x1da)],'cacheCreationInputTokens':this[_0x4b525e(0x1d1)],'cacheReadInputTokens':this[_0x4b525e(0x1c7)]};}['reset'](){const _0x1ea340=a68_0x2c5058;this[_0x1ea340(0x1c3)]=0x0,this[_0x1ea340(0x1da)]=0x0,this[_0x1ea340(0x1d1)]=undefined,this[_0x1ea340(0x1c7)]=undefined,this[_0x1ea340(0x1d3)]='';}}function a68_0x1336(){const _0x4fcb11=['903824DPcUGO','cache_read_input_tokens','slice','event','87PkTRkh','42KKqMGk','outputTokens','36556MdsgBc','parse','117355cnlIUn','pop','message','split','9DFVizQ','push','424180oJVKyU','75944NBrHbA','inputTokens','1361976gNzRBC','cache_creation_input_tokens','output_tokens','cacheReadInputTokens','getUsage','type','input_tokens','message_delta','message_start','usage','9384rJSJpP','trim','data','cacheCreationInputTokens','event:\x20','buffer'];a68_0x1336=function(){return _0x4fcb11;};return a68_0x1336();}
1
+ const a69_0x4c93f2=a69_0x3cd2;(function(_0x44c991,_0x1d1c5d){const _0x4d3a79=a69_0x3cd2,_0x1cf844=_0x44c991();while(!![]){try{const _0x417687=parseInt(_0x4d3a79(0xae))/0x1+parseInt(_0x4d3a79(0xb4))/0x2*(parseInt(_0x4d3a79(0xb7))/0x3)+-parseInt(_0x4d3a79(0xbe))/0x4+-parseInt(_0x4d3a79(0xc0))/0x5+-parseInt(_0x4d3a79(0xc4))/0x6*(parseInt(_0x4d3a79(0xca))/0x7)+-parseInt(_0x4d3a79(0xb1))/0x8+parseInt(_0x4d3a79(0xcc))/0x9;if(_0x417687===_0x1d1c5d)break;else _0x1cf844['push'](_0x1cf844['shift']());}catch(_0x1c8406){_0x1cf844['push'](_0x1cf844['shift']());}}}(a69_0x10aa,0x6f6d3));export function parseSSEChunk(_0x425258){const _0x518a99=a69_0x3cd2,_0x2ebafc=[],_0x33caac=_0x425258[_0x518a99(0xc3)]('\x0a\x0a'),_0x34da2d=_0x33caac[_0x518a99(0xc8)]()||'';for(const _0x422cf7 of _0x33caac){if(!_0x422cf7[_0x518a99(0xc9)]())continue;const _0x522109={},_0x179cb4=_0x422cf7[_0x518a99(0xc3)]('\x0a');for(const _0x186a34 of _0x179cb4){if(_0x186a34[_0x518a99(0xbf)](_0x518a99(0xc5)))_0x522109[_0x518a99(0xbd)]=_0x186a34[_0x518a99(0xcd)](0x7);else _0x186a34[_0x518a99(0xbf)](_0x518a99(0xc7))&&(_0x522109[_0x518a99(0xc1)]=_0x186a34[_0x518a99(0xcd)](0x6));}(_0x522109[_0x518a99(0xbd)]||_0x522109[_0x518a99(0xc1)])&&_0x2ebafc['push'](_0x522109);}return{'events':_0x2ebafc,'remaining':_0x34da2d};}export function extractMessageStartUsage(_0x1e2083){const _0x4118fc=a69_0x3cd2;try{const _0x5051cb=JSON[_0x4118fc(0xcb)](_0x1e2083);if(_0x5051cb[_0x4118fc(0xb9)]===_0x4118fc(0xd1)&&_0x5051cb[_0x4118fc(0xb0)]?.['usage']){const _0x5f7109=_0x5051cb[_0x4118fc(0xb0)][_0x4118fc(0xb6)];return{'inputTokens':_0x5f7109[_0x4118fc(0xb8)]||0x0,'outputTokens':_0x5f7109[_0x4118fc(0xbb)]||0x0,'cacheCreationInputTokens':_0x5f7109[_0x4118fc(0xb2)],'cacheReadInputTokens':_0x5f7109[_0x4118fc(0xc2)]};}}catch{}return null;}function a69_0x3cd2(_0x214e4c,_0x4db412){_0x214e4c=_0x214e4c-0xae;const _0x10aaf6=a69_0x10aa();let _0x3cd28c=_0x10aaf6[_0x214e4c];return _0x3cd28c;}export function extractMessageDeltaUsage(_0x24e6fc){const _0x5e27dd=a69_0x3cd2;try{const _0x38579e=JSON['parse'](_0x24e6fc);if(_0x38579e[_0x5e27dd(0xb9)]===_0x5e27dd(0xb5)&&_0x38579e[_0x5e27dd(0xb6)]){const _0x2f596c=_0x38579e[_0x5e27dd(0xb6)];return{'inputTokens':_0x2f596c[_0x5e27dd(0xb8)]||0x0,'outputTokens':_0x2f596c['output_tokens']||0x0,'cacheCreationInputTokens':_0x2f596c[_0x5e27dd(0xb2)],'cacheReadInputTokens':_0x2f596c[_0x5e27dd(0xc2)]};}}catch{}return null;}export function extractUsageFromEvent(_0x2fb67f){const _0x2dd5d7=a69_0x3cd2;if(!_0x2fb67f[_0x2dd5d7(0xc1)])return null;if(_0x2fb67f[_0x2dd5d7(0xbd)]===_0x2dd5d7(0xd1))return extractMessageStartUsage(_0x2fb67f[_0x2dd5d7(0xc1)]);if(_0x2fb67f[_0x2dd5d7(0xbd)]===_0x2dd5d7(0xb5))return extractMessageDeltaUsage(_0x2fb67f[_0x2dd5d7(0xc1)]);return null;}function a69_0x10aa(){const _0x2f9d03=['cacheCreationInputTokens','data:\x20','pop','trim','73010hFuMUR','parse','8223498MjGKDq','slice','inputTokens','reset','outputTokens','message_start','840216EucvDq','getUsage','message','1367160LgXejJ','cache_creation_input_tokens','buffer','6124ozEPLw','message_delta','usage','51difJjb','input_tokens','type','cacheReadInputTokens','output_tokens','processChunk','event','374320EywspS','startsWith','2870220VTCxrU','data','cache_read_input_tokens','split','294cFXmHa','event:\x20'];a69_0x10aa=function(){return _0x2f9d03;};return a69_0x10aa();}export class SSEUsageTracker{[a69_0x4c93f2(0xce)]=0x0;[a69_0x4c93f2(0xd0)]=0x0;[a69_0x4c93f2(0xc6)];['cacheReadInputTokens'];[a69_0x4c93f2(0xb3)]='';[a69_0x4c93f2(0xbc)](_0x24b505){const _0x2cc4c1=a69_0x4c93f2;this['buffer']+=_0x24b505;const {events:_0x3d4189,remaining:_0x45d09d}=parseSSEChunk(this['buffer']);this[_0x2cc4c1(0xb3)]=_0x45d09d;for(const _0x329832 of _0x3d4189){const _0x84f9e1=extractUsageFromEvent(_0x329832);_0x84f9e1&&(this[_0x2cc4c1(0xce)]=_0x84f9e1[_0x2cc4c1(0xce)],this[_0x2cc4c1(0xd0)]=_0x84f9e1[_0x2cc4c1(0xd0)],_0x84f9e1['cacheCreationInputTokens']!==undefined&&(this['cacheCreationInputTokens']=_0x84f9e1[_0x2cc4c1(0xc6)]),_0x84f9e1[_0x2cc4c1(0xba)]!==undefined&&(this['cacheReadInputTokens']=_0x84f9e1[_0x2cc4c1(0xba)]));}return _0x24b505;}[a69_0x4c93f2(0xaf)](){const _0x4549ea=a69_0x4c93f2;return{'inputTokens':this[_0x4549ea(0xce)],'outputTokens':this[_0x4549ea(0xd0)],'cacheCreationInputTokens':this[_0x4549ea(0xc6)],'cacheReadInputTokens':this[_0x4549ea(0xba)]};}[a69_0x4c93f2(0xcf)](){const _0x593c9f=a69_0x4c93f2;this['inputTokens']=0x0,this['outputTokens']=0x0,this[_0x593c9f(0xc6)]=undefined,this[_0x593c9f(0xba)]=undefined,this['buffer']='';}}
@@ -1 +1 @@
1
- const a69_0x3580e5=a69_0xbe18;function a69_0x8998(){const _0x1b5481=['6379160BLkYTf','2327478PwTcAx','Invalid\x20tdx.json:\x20expected\x20object','context','327609JoOpGC','Invalid\x20tdx.json:\x20missing\x20or\x20invalid\x20\x27llm_project\x27\x20field','90136LHqrvM','7pDIwxj','basename','isDirectory','tdx.json','303180LTYcqS','multiple_agents','19125010mHbxmZ','no_local_folder','join','\x22\x20but\x20no\x20local\x20folder\x20found.','stringify','llm_project','length','3rKHpsE','prompts','no_context','agent.yml','parse','dirname','11kyCQAz','resolve','root','24wuEqnd','knowledge_bases','filter','No\x20agent\x20tdx.json\x20found.\x20Please\x20run\x20\x27tdx\x20agent\x20pull\x20<project>\x27\x20first\x20to\x20create\x20the\x20folder\x20structure.','local','agents','object','Invalid\x20JSON\x20in\x20','utf-8','No\x20tdx.json\x20found\x20and\x20llm_project\x20is\x20not\x20set.','1721030EkXPTU','cwd'];a69_0x8998=function(){return _0x1b5481;};return a69_0x8998();}(function(_0x2707da,_0x1c7a94){const _0x1565ab=a69_0xbe18,_0x4ec781=_0x2707da();while(!![]){try{const _0x448420=-parseInt(_0x1565ab(0xdb))/0x1+-parseInt(_0x1565ab(0xd3))/0x2*(-parseInt(_0x1565ab(0xc0))/0x3)+parseInt(_0x1565ab(0xc9))/0x4*(parseInt(_0x1565ab(0xe0))/0x5)+parseInt(_0x1565ab(0xd6))/0x6*(parseInt(_0x1565ab(0xdc))/0x7)+parseInt(_0x1565ab(0xd5))/0x8+parseInt(_0x1565ab(0xd9))/0x9+-parseInt(_0x1565ab(0xe2))/0xa*(parseInt(_0x1565ab(0xc6))/0xb);if(_0x448420===_0x1c7a94)break;else _0x4ec781['push'](_0x4ec781['shift']());}catch(_0x4c90d3){_0x4ec781['push'](_0x4ec781['shift']());}}}(a69_0x8998,0x6c40b));import{existsSync,readFileSync,readdirSync}from'fs';import a69_0x993699 from'path';import{sanitizeForFilesystem,normalizeName}from'./agent-yaml.js';const TDX_CONFIG_FILE=a69_0x3580e5(0xdf),AGENTS_DIR=a69_0x3580e5(0xce);export function findAgentConfigPath(_0x37053c=process[a69_0x3580e5(0xd4)]()){const _0x1dec55=a69_0x3580e5;let _0x488576=a69_0x993699[_0x1dec55(0xc7)](_0x37053c);const _0x2cb9af=a69_0x993699[_0x1dec55(0xc4)](_0x488576)[_0x1dec55(0xc8)];while(_0x488576!==_0x2cb9af){const _0x25c7ad=a69_0x993699[_0x1dec55(0xe4)](_0x488576,TDX_CONFIG_FILE);if(existsSync(_0x25c7ad))try{const _0x300e7a=readFileSync(_0x25c7ad,_0x1dec55(0xd1)),_0x24a6c6=JSON[_0x1dec55(0xc4)](_0x300e7a);if(_0x24a6c6[_0x1dec55(0xe7)])return _0x25c7ad;}catch{}_0x488576=a69_0x993699[_0x1dec55(0xc5)](_0x488576);}return null;}export function loadAgentConfig(_0x3db2b5){const _0x58f2b2=a69_0x3580e5,_0x439b1c=readFileSync(_0x3db2b5,_0x58f2b2(0xd1));let _0x287ad8;try{_0x287ad8=JSON[_0x58f2b2(0xc4)](_0x439b1c);}catch{throw new Error(_0x58f2b2(0xd0)+_0x3db2b5);}if(!_0x287ad8||typeof _0x287ad8!==_0x58f2b2(0xcf))throw new Error(_0x58f2b2(0xd7));const _0x58dda9=_0x287ad8;if(!_0x58dda9[_0x58f2b2(0xe7)]||typeof _0x58dda9[_0x58f2b2(0xe7)]!=='string')throw new Error(_0x58f2b2(0xda));return{'llm_project':_0x58dda9[_0x58f2b2(0xe7)]};}export function findAgentConfig(_0x4d5ca8=process[a69_0x3580e5(0xd4)]()){const _0x2dc3aa=a69_0x3580e5,_0x3c40a4=findAgentConfigPath(_0x4d5ca8);if(!_0x3c40a4)throw new Error(_0x2dc3aa(0xcc));const _0x54cfe5=loadAgentConfig(_0x3c40a4),_0xec15cf=a69_0x993699[_0x2dc3aa(0xc5)](_0x3c40a4);return{'config':_0x54cfe5,'configPath':_0x3c40a4,'configDir':_0xec15cf};}export function getAgentProjectDir(_0x4b49b8,_0x48b20e=process[a69_0x3580e5(0xd4)]()){const _0x2330c7=a69_0x3580e5;return a69_0x993699[_0x2330c7(0xe4)](_0x48b20e,AGENTS_DIR,_0x4b49b8);}export function getAgentConfigPath(_0x232dae,_0x5c43a9=process['cwd']()){const _0x5b8b3f=a69_0x3580e5;return a69_0x993699[_0x5b8b3f(0xe4)](getAgentProjectDir(_0x232dae,_0x5c43a9),TDX_CONFIG_FILE);}export function createAgentConfigContent(_0x50dc51){const _0x348c1d=a69_0x3580e5,_0x3eef66={'llm_project':_0x50dc51};return JSON[_0x348c1d(0xe6)](_0x3eef66,null,0x2)+'\x0a';}export function isAgentDir(_0x2f05c3){const _0x29516b=a69_0x3580e5;return existsSync(a69_0x993699['join'](_0x2f05c3,_0x29516b(0xc3)));}export function isAgentYamlPath(_0x46e1d9){const _0x2be7f0=a69_0x3580e5;return a69_0x993699[_0x2be7f0(0xdd)](_0x46e1d9)===_0x2be7f0(0xc3);}export function getAgentDirFromYamlPath(_0x2af0eb){const _0x2b6a0c=a69_0x3580e5;return a69_0x993699[_0x2b6a0c(0xc5)](_0x2af0eb);}export const PROJECT_SUBDIRS={'KNOWLEDGE_BASES':a69_0x3580e5(0xca),'PROMPTS':a69_0x3580e5(0xc1),'INTEGRATIONS':'integrations'};function a69_0xbe18(_0x2941f3,_0x3717f4){_0x2941f3=_0x2941f3-0xc0;const _0x8998a7=a69_0x8998();let _0xbe181=_0x8998a7[_0x2941f3];return _0xbe181;}export function getKnowledgeBasesDir(_0x1d6026){return a69_0x993699['join'](_0x1d6026,PROJECT_SUBDIRS['KNOWLEDGE_BASES']);}export function getPromptsDir(_0x57e699){return a69_0x993699['join'](_0x57e699,PROJECT_SUBDIRS['PROMPTS']);}export function getIntegrationsDir(_0x3c1a34){const _0x53a338=a69_0x3580e5;return a69_0x993699[_0x53a338(0xe4)](_0x3c1a34,PROJECT_SUBDIRS['INTEGRATIONS']);}export function resolveProjectFromContext(_0x4e7a4c,_0x5c0447,_0x53eb49){const _0x478bd2=a69_0x3580e5,_0x58cb2c=_0x53eb49?.['requireFile'],_0x363d1f=findAgentConfigPath(a69_0x993699['resolve'](_0x4e7a4c));if(_0x363d1f)return{'found':!![],'projectDir':a69_0x993699['dirname'](_0x363d1f),'configPath':_0x363d1f,'source':_0x478bd2(0xcd)};if(!_0x5c0447)return{'found':![],'reason':_0x478bd2(0xc2),'message':_0x478bd2(0xd2)};const _0x52798d=sanitizeForFilesystem(_0x5c0447),_0x5b5462=a69_0x993699[_0x478bd2(0xe4)](process[_0x478bd2(0xd4)](),AGENTS_DIR);let _0x87238b=a69_0x993699[_0x478bd2(0xe4)](_0x5b5462,_0x52798d),_0x251039=a69_0x993699[_0x478bd2(0xe4)](_0x87238b,TDX_CONFIG_FILE);if(!existsSync(_0x87238b)){const _0x40efcc=normalizeName(_0x5c0447),_0x51556b=a69_0x993699['join'](_0x5b5462,_0x40efcc);existsSync(_0x51556b)&&(_0x87238b=_0x51556b,_0x251039=a69_0x993699[_0x478bd2(0xe4)](_0x87238b,TDX_CONFIG_FILE));}if(!existsSync(_0x87238b))return{'found':![],'reason':_0x478bd2(0xe3),'llmProject':_0x5c0447,'message':'Current\x20context\x20has\x20llm_project=\x22'+_0x5c0447+_0x478bd2(0xe5)};if(_0x58cb2c){const _0x2be262=readdirSync(_0x87238b,{'withFileTypes':!![]}),_0x632ee1=_0x2be262[_0x478bd2(0xcb)](_0x438ce7=>_0x438ce7[_0x478bd2(0xde)]())['map'](_0x2c3649=>_0x2c3649['name'])['filter'](_0x26b9d5=>{const _0x52584a=_0x478bd2,_0x1848f4=a69_0x993699[_0x52584a(0xe4)](_0x87238b,_0x26b9d5,_0x58cb2c);return existsSync(_0x1848f4);});if(_0x632ee1[_0x478bd2(0xe8)]===0x0)return{'found':![],'reason':'no_tests','llmProject':_0x5c0447,'projectDir':_0x87238b};if(_0x632ee1[_0x478bd2(0xe8)]>0x1)return{'found':![],'reason':_0x478bd2(0xe1),'llmProject':_0x5c0447,'agentDirs':_0x632ee1,'projectDir':_0x87238b};return{'found':!![],'projectDir':a69_0x993699[_0x478bd2(0xe4)](_0x87238b,_0x632ee1[0x0]),'configPath':_0x251039,'source':_0x478bd2(0xd8)};}return{'found':!![],'projectDir':_0x87238b,'configPath':_0x251039,'source':_0x478bd2(0xd8)};}
1
+ const a70_0x1734cc=a70_0x5723;(function(_0x3f371c,_0x29a6cf){const _0x36e006=a70_0x5723,_0x7c45d0=_0x3f371c();while(!![]){try{const _0x1e8ee7=parseInt(_0x36e006(0x15d))/0x1+-parseInt(_0x36e006(0x173))/0x2*(parseInt(_0x36e006(0x17f))/0x3)+parseInt(_0x36e006(0x17e))/0x4*(-parseInt(_0x36e006(0x169))/0x5)+-parseInt(_0x36e006(0x172))/0x6*(-parseInt(_0x36e006(0x175))/0x7)+-parseInt(_0x36e006(0x16a))/0x8*(parseInt(_0x36e006(0x162))/0x9)+-parseInt(_0x36e006(0x17c))/0xa+-parseInt(_0x36e006(0x165))/0xb*(-parseInt(_0x36e006(0x170))/0xc);if(_0x1e8ee7===_0x29a6cf)break;else _0x7c45d0['push'](_0x7c45d0['shift']());}catch(_0x3f29fa){_0x7c45d0['push'](_0x7c45d0['shift']());}}}(a70_0x3e54,0xa8f75));import{existsSync,readFileSync,readdirSync}from'fs';import a70_0x26fc02 from'path';import{sanitizeForFilesystem,normalizeName}from'./agent-yaml.js';const TDX_CONFIG_FILE=a70_0x1734cc(0x17b),AGENTS_DIR='agents';export function findAgentConfigPath(_0x47e772=process['cwd']()){const _0x3e1e6a=a70_0x1734cc;let _0x276c09=a70_0x26fc02[_0x3e1e6a(0x17d)](_0x47e772);const _0x48b3e6=a70_0x26fc02[_0x3e1e6a(0x174)](_0x276c09)[_0x3e1e6a(0x17a)];while(_0x276c09!==_0x48b3e6){const _0x4052c2=a70_0x26fc02[_0x3e1e6a(0x15b)](_0x276c09,TDX_CONFIG_FILE);if(existsSync(_0x4052c2))try{const _0x47624b=readFileSync(_0x4052c2,_0x3e1e6a(0x16d)),_0x215f99=JSON[_0x3e1e6a(0x174)](_0x47624b);if(_0x215f99[_0x3e1e6a(0x180)])return _0x4052c2;}catch{}_0x276c09=a70_0x26fc02[_0x3e1e6a(0x176)](_0x276c09);}return null;}export function loadAgentConfig(_0x241506){const _0x1ed959=a70_0x1734cc,_0x2e433d=readFileSync(_0x241506,_0x1ed959(0x16d));let _0xdd69bc;try{_0xdd69bc=JSON[_0x1ed959(0x174)](_0x2e433d);}catch{throw new Error('Invalid\x20JSON\x20in\x20'+_0x241506);}if(!_0xdd69bc||typeof _0xdd69bc!==_0x1ed959(0x15c))throw new Error(_0x1ed959(0x15f));const _0x5740f1=_0xdd69bc;if(!_0x5740f1[_0x1ed959(0x180)]||typeof _0x5740f1['llm_project']!==_0x1ed959(0x177))throw new Error('Invalid\x20tdx.json:\x20missing\x20or\x20invalid\x20\x27llm_project\x27\x20field');return{'llm_project':_0x5740f1[_0x1ed959(0x180)]};}export function findAgentConfig(_0x1d2610=process[a70_0x1734cc(0x16c)]()){const _0x5904d8=a70_0x1734cc,_0x1b943e=findAgentConfigPath(_0x1d2610);if(!_0x1b943e)throw new Error(_0x5904d8(0x160));const _0x26a875=loadAgentConfig(_0x1b943e),_0x4b4977=a70_0x26fc02[_0x5904d8(0x176)](_0x1b943e);return{'config':_0x26a875,'configPath':_0x1b943e,'configDir':_0x4b4977};}export function getAgentProjectDir(_0x48addc,_0x158912=process[a70_0x1734cc(0x16c)]()){const _0xa99c77=a70_0x1734cc;return a70_0x26fc02[_0xa99c77(0x15b)](_0x158912,AGENTS_DIR,_0x48addc);}export function getAgentConfigPath(_0x420ed2,_0x4ea141=process[a70_0x1734cc(0x16c)]()){const _0x1b938f=a70_0x1734cc;return a70_0x26fc02[_0x1b938f(0x15b)](getAgentProjectDir(_0x420ed2,_0x4ea141),TDX_CONFIG_FILE);}function a70_0x3e54(){const _0x4ce8b9=['no_local_folder','cwd','utf-8','basename','local','120vLGfvs','filter','15342yqnEJe','20452LoPnEM','parse','1477IgQpVh','dirname','string','No\x20tdx.json\x20found\x20and\x20llm_project\x20is\x20not\x20set.','name','root','tdx.json','13170350uboEMj','resolve','5147612VRlFRN','390RLadjp','llm_project','length','agent.yml','multiple_agents','isDirectory','stringify','join','object','795922VtkYGI','requireFile','Invalid\x20tdx.json:\x20expected\x20object','No\x20agent\x20tdx.json\x20found.\x20Please\x20run\x20\x27tdx\x20agent\x20pull\x20<project>\x27\x20first\x20to\x20create\x20the\x20folder\x20structure.','PROMPTS','918gcTqkg','INTEGRATIONS','context','4957832UsqigW','integrations','\x22\x20but\x20no\x20local\x20folder\x20found.','map','5xYpskA','95464ovFADi'];a70_0x3e54=function(){return _0x4ce8b9;};return a70_0x3e54();}export function createAgentConfigContent(_0x50b386){const _0x51df58=a70_0x1734cc,_0x497575={'llm_project':_0x50b386};return JSON[_0x51df58(0x15a)](_0x497575,null,0x2)+'\x0a';}function a70_0x5723(_0x24068c,_0x109ec3){_0x24068c=_0x24068c-0x159;const _0x3e54c0=a70_0x3e54();let _0x5723b9=_0x3e54c0[_0x24068c];return _0x5723b9;}export function isAgentDir(_0x465f1c){const _0xc36eff=a70_0x1734cc;return existsSync(a70_0x26fc02[_0xc36eff(0x15b)](_0x465f1c,_0xc36eff(0x182)));}export function isAgentYamlPath(_0x3df6c6){const _0x1a9eb0=a70_0x1734cc;return a70_0x26fc02[_0x1a9eb0(0x16e)](_0x3df6c6)===_0x1a9eb0(0x182);}export function getAgentDirFromYamlPath(_0x2b6581){const _0x41b02b=a70_0x1734cc;return a70_0x26fc02[_0x41b02b(0x176)](_0x2b6581);}export const PROJECT_SUBDIRS={'KNOWLEDGE_BASES':'knowledge_bases','PROMPTS':'prompts','INTEGRATIONS':a70_0x1734cc(0x166)};export function getKnowledgeBasesDir(_0xcaf8e4){const _0x27292f=a70_0x1734cc;return a70_0x26fc02[_0x27292f(0x15b)](_0xcaf8e4,PROJECT_SUBDIRS['KNOWLEDGE_BASES']);}export function getPromptsDir(_0xabf8e5){const _0xd9a25e=a70_0x1734cc;return a70_0x26fc02[_0xd9a25e(0x15b)](_0xabf8e5,PROJECT_SUBDIRS[_0xd9a25e(0x161)]);}export function getIntegrationsDir(_0x3e541b){const _0x181357=a70_0x1734cc;return a70_0x26fc02[_0x181357(0x15b)](_0x3e541b,PROJECT_SUBDIRS[_0x181357(0x163)]);}export function resolveProjectFromContext(_0x5f531c,_0x30d90d,_0x116705){const _0x44b825=a70_0x1734cc,_0x29deba=_0x116705?.[_0x44b825(0x15e)],_0x15cbbc=findAgentConfigPath(a70_0x26fc02['resolve'](_0x5f531c));if(_0x15cbbc)return{'found':!![],'projectDir':a70_0x26fc02[_0x44b825(0x176)](_0x15cbbc),'configPath':_0x15cbbc,'source':_0x44b825(0x16f)};if(!_0x30d90d)return{'found':![],'reason':'no_context','message':_0x44b825(0x178)};const _0x4b9193=sanitizeForFilesystem(_0x30d90d),_0xa9e6a8=a70_0x26fc02['join'](process[_0x44b825(0x16c)](),AGENTS_DIR);let _0x1f5612=a70_0x26fc02[_0x44b825(0x15b)](_0xa9e6a8,_0x4b9193),_0x504b4f=a70_0x26fc02[_0x44b825(0x15b)](_0x1f5612,TDX_CONFIG_FILE);if(!existsSync(_0x1f5612)){const _0x1a4e74=normalizeName(_0x30d90d),_0x250390=a70_0x26fc02['join'](_0xa9e6a8,_0x1a4e74);existsSync(_0x250390)&&(_0x1f5612=_0x250390,_0x504b4f=a70_0x26fc02[_0x44b825(0x15b)](_0x1f5612,TDX_CONFIG_FILE));}if(!existsSync(_0x1f5612))return{'found':![],'reason':_0x44b825(0x16b),'llmProject':_0x30d90d,'message':'Current\x20context\x20has\x20llm_project=\x22'+_0x30d90d+_0x44b825(0x167)};if(_0x29deba){const _0x328390=readdirSync(_0x1f5612,{'withFileTypes':!![]}),_0x1369dd=_0x328390[_0x44b825(0x171)](_0x414d1d=>_0x414d1d[_0x44b825(0x159)]())[_0x44b825(0x168)](_0x567b90=>_0x567b90[_0x44b825(0x179)])['filter'](_0x23eb72=>{const _0x1e45e8=_0x44b825,_0x577788=a70_0x26fc02[_0x1e45e8(0x15b)](_0x1f5612,_0x23eb72,_0x29deba);return existsSync(_0x577788);});if(_0x1369dd[_0x44b825(0x181)]===0x0)return{'found':![],'reason':'no_tests','llmProject':_0x30d90d,'projectDir':_0x1f5612};if(_0x1369dd[_0x44b825(0x181)]>0x1)return{'found':![],'reason':_0x44b825(0x183),'llmProject':_0x30d90d,'agentDirs':_0x1369dd,'projectDir':_0x1f5612};return{'found':!![],'projectDir':a70_0x26fc02[_0x44b825(0x15b)](_0x1f5612,_0x1369dd[0x0]),'configPath':_0x504b4f,'source':_0x44b825(0x164)};}return{'found':!![],'projectDir':_0x1f5612,'configPath':_0x504b4f,'source':_0x44b825(0x164)};}
@@ -1 +1 @@
1
- function a70_0x5f2e(){const _0x745a6b=['1149000YsOJDW','6813cbNJso','Agent\x20reference\x20cannot\x20be\x20empty','1736oRiLal','Agent\x20name\x20cannot\x20be\x20empty','length','split','trim','82zHoTLp','246600ACSRCT','6llbFbQ','3143903YrNiLd','.\x20Expected\x20\x22project_name\x22\x20or\x20\x22project_name/agent_name\x22','4399370gfdIlu','9122mxeaeV','392520BdvQUL'];a70_0x5f2e=function(){return _0x745a6b;};return a70_0x5f2e();}(function(_0x9ecf37,_0x5abaa9){const _0x11cd9c=a70_0x573d,_0x55ab14=_0x9ecf37();while(!![]){try{const _0x2227bb=-parseInt(_0x11cd9c(0xaf))/0x1*(-parseInt(_0x11cd9c(0xa5))/0x2)+-parseInt(_0x11cd9c(0xa6))/0x3+-parseInt(_0x11cd9c(0xb0))/0x4+parseInt(_0x11cd9c(0xa7))/0x5+parseInt(_0x11cd9c(0xb1))/0x6*(-parseInt(_0x11cd9c(0xa2))/0x7)+-parseInt(_0x11cd9c(0xaa))/0x8*(parseInt(_0x11cd9c(0xa8))/0x9)+parseInt(_0x11cd9c(0xa4))/0xa;if(_0x2227bb===_0x5abaa9)break;else _0x55ab14['push'](_0x55ab14['shift']());}catch(_0x1e6f2b){_0x55ab14['push'](_0x55ab14['shift']());}}}(a70_0x5f2e,0x3a11b));function a70_0x573d(_0x2ad527,_0x46f8d2){_0x2ad527=_0x2ad527-0xa2;const _0x5f2edc=a70_0x5f2e();let _0x573d06=_0x5f2edc[_0x2ad527];return _0x573d06;}export function parseAgentRef(_0x312eb){const _0x1090ff=a70_0x573d;if(!_0x312eb||_0x312eb[_0x1090ff(0xae)]()==='')throw new Error(_0x1090ff(0xa9));const _0x3e9006=_0x312eb[_0x1090ff(0xae)](),_0x2c2361=_0x3e9006[_0x1090ff(0xad)]('/');if(_0x2c2361[_0x1090ff(0xac)]===0x1)return{'projectName':_0x2c2361[0x0],'agentName':undefined};else{if(_0x2c2361[_0x1090ff(0xac)]===0x2){const [_0x2a62ef,_0x4c3762]=_0x2c2361;if(!_0x2a62ef||_0x2a62ef['trim']()==='')throw new Error('Project\x20name\x20cannot\x20be\x20empty');if(!_0x4c3762||_0x4c3762[_0x1090ff(0xae)]()==='')throw new Error(_0x1090ff(0xab));return{'projectName':_0x2a62ef[_0x1090ff(0xae)](),'agentName':_0x4c3762['trim']()};}else throw new Error('Invalid\x20agent\x20reference\x20format:\x20'+_0x312eb+_0x1090ff(0xa3));}}
1
+ function a71_0x158c(_0x3334ae,_0x3aa67f){_0x3334ae=_0x3334ae-0x129;const _0x30f739=a71_0x30f7();let _0x158c62=_0x30f739[_0x3334ae];return _0x158c62;}function a71_0x30f7(){const _0x499c3f=['1874709HRrYyE','466210UmRwpP','604746NlcAeR','trim','188937HxRDVP','244419WEtTtO','.\x20Expected\x20\x22project_name\x22\x20or\x20\x22project_name/agent_name\x22','7DAJsVV','Agent\x20name\x20cannot\x20be\x20empty','2555280ArymsV','88070gPMBXP','Project\x20name\x20cannot\x20be\x20empty','2oJIuch','split','20JgbGzl','165osrDht','length'];a71_0x30f7=function(){return _0x499c3f;};return a71_0x30f7();}(function(_0x500af5,_0x1a23de){const _0x426112=a71_0x158c,_0x177821=_0x500af5();while(!![]){try{const _0x41b765=parseInt(_0x426112(0x137))/0x1+-parseInt(_0x426112(0x12d))/0x2*(parseInt(_0x426112(0x136))/0x3)+parseInt(_0x426112(0x12f))/0x4*(-parseInt(_0x426112(0x12b))/0x5)+parseInt(_0x426112(0x134))/0x6*(-parseInt(_0x426112(0x139))/0x7)+-parseInt(_0x426112(0x12a))/0x8+-parseInt(_0x426112(0x132))/0x9+-parseInt(_0x426112(0x133))/0xa*(-parseInt(_0x426112(0x130))/0xb);if(_0x41b765===_0x1a23de)break;else _0x177821['push'](_0x177821['shift']());}catch(_0x2221b7){_0x177821['push'](_0x177821['shift']());}}}(a71_0x30f7,0x28157));export function parseAgentRef(_0x5e1c5b){const _0x349baa=a71_0x158c;if(!_0x5e1c5b||_0x5e1c5b[_0x349baa(0x135)]()==='')throw new Error('Agent\x20reference\x20cannot\x20be\x20empty');const _0x20d5be=_0x5e1c5b[_0x349baa(0x135)](),_0x4673e5=_0x20d5be[_0x349baa(0x12e)]('/');if(_0x4673e5[_0x349baa(0x131)]===0x1)return{'projectName':_0x4673e5[0x0],'agentName':undefined};else{if(_0x4673e5[_0x349baa(0x131)]===0x2){const [_0x229083,_0x8138e1]=_0x4673e5;if(!_0x229083||_0x229083['trim']()==='')throw new Error(_0x349baa(0x12c));if(!_0x8138e1||_0x8138e1['trim']()==='')throw new Error(_0x349baa(0x129));return{'projectName':_0x229083[_0x349baa(0x135)](),'agentName':_0x8138e1[_0x349baa(0x135)]()};}else throw new Error('Invalid\x20agent\x20reference\x20format:\x20'+_0x5e1c5b+_0x349baa(0x138));}}
@@ -37,7 +37,7 @@ export declare function migrateModelType(modelType: string): string;
37
37
  /**
38
38
  * Resource types that can be referenced
39
39
  */
40
- export type RefType = 'knowledge_base' | 'agent' | 'web_search_tool' | 'image_generator' | 'prompt';
40
+ export type RefType = 'knowledge_base' | 'agent' | 'web_search_tool' | 'image_generator' | 'prompt' | 'parent_segment_kb';
41
41
  /**
42
42
  * Parsed reference from @ref(...) syntax
43
43
  */
@@ -198,6 +198,8 @@ export interface AgentDefToRequestContext {
198
198
  resolveImageGeneratorId: (name: string) => Promise<string | undefined>;
199
199
  /** @see ResolutionContext.resolvePromptId */
200
200
  resolvePromptId: (name: string) => Promise<string | undefined>;
201
+ /** Resolve parent segment KB ID for the project (singleton, no name needed) */
202
+ resolveParentSegmentKBId?: () => Promise<string | undefined>;
201
203
  /** Optional callback for warnings (e.g., unresolved tool references) */
202
204
  onWarning?: (message: string) => void;
203
205
  }
@@ -1 +1 @@
1
- {"version":3,"file":"agent-yaml.d.ts","sourceRoot":"","sources":["../../../src/sdk/agent/agent-yaml.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-yaml.d.ts","sourceRoot":"","sources":["../../../src/sdk/agent/agent-yaml.ts"],"names":[],"mappings":"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"}