@treasuredata/tdx 2026.3.53 → 2026.3.54

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 (219) hide show
  1. package/dist/bin.js +1 -1
  2. package/dist/build-info.json +3 -3
  3. package/dist/cli-categories.js +1 -1
  4. package/dist/cli.js +1 -1
  5. package/dist/commands/activations.js +1 -1
  6. package/dist/commands/agent-command.js +1 -1
  7. package/dist/commands/agent-test-command.js +1 -1
  8. package/dist/commands/api-command.js +1 -1
  9. package/dist/commands/auth-command.js +1 -1
  10. package/dist/commands/cas-command.js +1 -1
  11. package/dist/commands/cas-segment-command.js +1 -1
  12. package/dist/commands/chat-command.js +1 -1
  13. package/dist/commands/claude-command.js +1 -1
  14. package/dist/commands/claude-statusline-command.js +1 -1
  15. package/dist/commands/claude-usage-command.js +1 -1
  16. package/dist/commands/command.js +1 -1
  17. package/dist/commands/connection-command.js +1 -1
  18. package/dist/commands/databases.js +1 -1
  19. package/dist/commands/delivery-command.js +1 -1
  20. package/dist/commands/describe.js +1 -1
  21. package/dist/commands/engage-campaign-pull-command.js +1 -1
  22. package/dist/commands/engage-campaign-push-command.js +1 -1
  23. package/dist/commands/engage-campaign-validate-command.js +1 -1
  24. package/dist/commands/engage-command.js +1 -1
  25. package/dist/commands/engage-template-pull-command.js +1 -1
  26. package/dist/commands/engage-template-push-command.js +1 -1
  27. package/dist/commands/engage-template-validate-command.js +1 -1
  28. package/dist/commands/job-command.js +1 -1
  29. package/dist/commands/journey-command.js +1 -1
  30. package/dist/commands/journey-validate-command.js +1 -1
  31. package/dist/commands/llm-command.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/policy-command.js +1 -1
  35. package/dist/commands/profile-command.js +1 -1
  36. package/dist/commands/profiles-command.js +1 -1
  37. package/dist/commands/query-command.js +1 -1
  38. package/dist/commands/schedule-command.js +1 -1
  39. package/dist/commands/segment-command.js +1 -1
  40. package/dist/commands/segment-create-command.js +1 -1
  41. package/dist/commands/segment-fields-command.js +1 -1
  42. package/dist/commands/segment-pull-command.js +1 -1
  43. package/dist/commands/segment-push-command.js +1 -1
  44. package/dist/commands/segment-update-command.js +1 -1
  45. package/dist/commands/segment-use-command.js +1 -1
  46. package/dist/commands/segment-validate-command.js +1 -1
  47. package/dist/commands/segments.js +1 -1
  48. package/dist/commands/show.js +1 -1
  49. package/dist/commands/status-command.js +1 -1
  50. package/dist/commands/tables.js +1 -1
  51. package/dist/commands/unset-command.js +1 -1
  52. package/dist/commands/upgrade-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/work-command.js +1 -1
  56. package/dist/commands/workflow-command.js +1 -1
  57. package/dist/core/auth.js +1 -1
  58. package/dist/core/command-output.js +1 -1
  59. package/dist/core/config.js +1 -1
  60. package/dist/core/connection-cache.js +1 -1
  61. package/dist/core/constants.js +1 -1
  62. package/dist/core/credential-cache.js +1 -1
  63. package/dist/core/global-context.js +1 -1
  64. package/dist/core/keychain.js +1 -1
  65. package/dist/core/oauth-keychain.js +1 -1
  66. package/dist/core/oauth.js +1 -1
  67. package/dist/core/profile.js +1 -1
  68. package/dist/core/project-config.js +1 -1
  69. package/dist/core/session.js +1 -1
  70. package/dist/core/user-cache.js +1 -1
  71. package/dist/core/version.js +1 -1
  72. package/dist/index.js +1 -1
  73. package/dist/mcp/server.js +1 -1
  74. package/dist/mcp/tools/index.js +1 -1
  75. package/dist/mcp/tools/tdx-run.js +1 -1
  76. package/dist/mcp/tools/tdx-search.js +1 -1
  77. package/dist/mcp/tools/work-create-item.js +1 -1
  78. package/dist/mcp/utils.js +1 -1
  79. package/dist/proxy/claude-usage-tracker.js +1 -1
  80. package/dist/proxy/passthrough-server.js +1 -1
  81. package/dist/proxy/sse-usage-parser.js +1 -1
  82. package/dist/sdk/agent/agent-config.js +1 -1
  83. package/dist/sdk/agent/agent-ref-parser.js +1 -1
  84. package/dist/sdk/agent/agent-yaml.js +1 -1
  85. package/dist/sdk/agent/test/evaluator.js +1 -1
  86. package/dist/sdk/agent/test/executor.js +1 -1
  87. package/dist/sdk/agent/test/index.js +1 -1
  88. package/dist/sdk/agent/test/output.js +1 -1
  89. package/dist/sdk/agent/test/parser.js +1 -1
  90. package/dist/sdk/agent/tool-target-registry.js +1 -1
  91. package/dist/sdk/api.js +1 -1
  92. package/dist/sdk/cas/cas-api-client.js +1 -1
  93. package/dist/sdk/cas/cas-audience-yaml.js +1 -1
  94. package/dist/sdk/cas/cas-segment-yaml.js +1 -1
  95. package/dist/sdk/cas/index.js +1 -1
  96. package/dist/sdk/cas/pull-workflow.js +1 -1
  97. package/dist/sdk/cas/push-workflow.js +1 -1
  98. package/dist/sdk/client/cdp-api-client.js +1 -1
  99. package/dist/sdk/client/delivery-api-client.js +1 -1
  100. package/dist/sdk/client/endpoints.js +1 -1
  101. package/dist/sdk/client/engage-api-client.js +1 -1
  102. package/dist/sdk/client/http-client.js +1 -1
  103. package/dist/sdk/client/llm-api-client.js +1 -1
  104. package/dist/sdk/client/oauth-refresh.js +1 -1
  105. package/dist/sdk/client/rate-limiter.js +1 -1
  106. package/dist/sdk/client/td-api-client.js +1 -1
  107. package/dist/sdk/client/trino-api-client.js +1 -1
  108. package/dist/sdk/client/workflow-client.js +1 -1
  109. package/dist/sdk/connection-validator.js +1 -1
  110. package/dist/sdk/connection.js +1 -1
  111. package/dist/sdk/delivery.js +1 -1
  112. package/dist/sdk/engage/campaign-pull.js +1 -1
  113. package/dist/sdk/engage/campaign-push.js +1 -1
  114. package/dist/sdk/engage/campaign-validator.js +1 -1
  115. package/dist/sdk/engage/campaign-yaml.js +1 -1
  116. package/dist/sdk/engage/template-pull.js +1 -1
  117. package/dist/sdk/engage/template-push.js +1 -1
  118. package/dist/sdk/engage/template-validator.js +1 -1
  119. package/dist/sdk/engage/template-yaml.js +1 -1
  120. package/dist/sdk/engage/types/campaign-def.js +1 -1
  121. package/dist/sdk/engage/types/campaign-schema.js +1 -1
  122. package/dist/sdk/engage/types/template-schema.js +1 -1
  123. package/dist/sdk/engage.js +1 -1
  124. package/dist/sdk/errors.js +1 -1
  125. package/dist/sdk/index.js +1 -1
  126. package/dist/sdk/io/index.js +1 -1
  127. package/dist/sdk/io/node-filesystem.js +1 -1
  128. package/dist/sdk/job.js +1 -1
  129. package/dist/sdk/journey.js +1 -1
  130. package/dist/sdk/llm/chat-cache.js +1 -1
  131. package/dist/sdk/llm/index.js +1 -1
  132. package/dist/sdk/llm/llm-backup-utils.js +1 -1
  133. package/dist/sdk/llm/model-factors.js +1 -1
  134. package/dist/sdk/personalization.js +1 -1
  135. package/dist/sdk/policy.js +1 -1
  136. package/dist/sdk/query/index.js +1 -1
  137. package/dist/sdk/query/sql-parser.js +1 -1
  138. package/dist/sdk/realtime.js +1 -1
  139. package/dist/sdk/schedule.js +1 -1
  140. package/dist/sdk/segment/child-segment-yaml.js +1 -1
  141. package/dist/sdk/segment/fields-display.js +1 -1
  142. package/dist/sdk/segment/file-discovery.js +1 -1
  143. package/dist/sdk/segment/journey-utils.js +1 -1
  144. package/dist/sdk/segment/journey-validator.js +1 -1
  145. package/dist/sdk/segment/journey-yaml.js +1 -1
  146. package/dist/sdk/segment/parent-segment-preview.js +1 -1
  147. package/dist/sdk/segment/parent-segment-yaml.js +1 -1
  148. package/dist/sdk/segment/pull-workflow.js +1 -1
  149. package/dist/sdk/segment/push-recovery.js +1 -1
  150. package/dist/sdk/segment/push-workflow.js +1 -1
  151. package/dist/sdk/segment/resolution-context.js +1 -1
  152. package/dist/sdk/segment/segment-path-parser.js +1 -1
  153. package/dist/sdk/segment/segment-ref-parser.js +1 -1
  154. package/dist/sdk/segment/segment-validator.js +1 -1
  155. package/dist/sdk/segment/target-resolution.js +1 -1
  156. package/dist/sdk/segment/tdx-config.js +1 -1
  157. package/dist/sdk/segment/types/activation-schema.js +1 -1
  158. package/dist/sdk/segment/types/journey-def.js +1 -1
  159. package/dist/sdk/segment/types/journey-schema.js +1 -1
  160. package/dist/sdk/segment/types/segment-def.js +1 -1
  161. package/dist/sdk/segment/types/segment-schema.js +1 -1
  162. package/dist/sdk/segment/validate-files.js +1 -1
  163. package/dist/sdk/segment/yaml-validator.js +1 -1
  164. package/dist/sdk/segment.js +1 -1
  165. package/dist/sdk/types/index.js +1 -1
  166. package/dist/sdk/types/progress.js +1 -1
  167. package/dist/sdk/types/workspace.js +1 -1
  168. package/dist/sdk/user.js +1 -1
  169. package/dist/sdk/util/format-detector.js +1 -1
  170. package/dist/sdk/util/formatters.js +1 -1
  171. package/dist/sdk/util/index.js +1 -1
  172. package/dist/sdk/util/paginate.js +1 -1
  173. package/dist/sdk/util/tree-formatter.js +1 -1
  174. package/dist/sdk/workflow/archive-validation.js +1 -1
  175. package/dist/sdk/workflow/clone-workflow.js +1 -1
  176. package/dist/sdk/workflow/index.js +1 -1
  177. package/dist/sdk/workflow/pull-workflow.js +1 -1
  178. package/dist/sdk/workflow/push-workflow.js +1 -1
  179. package/dist/sdk/workflow/tdx-config.js +1 -1
  180. package/dist/sdk/workflow/workflow-utils.js +1 -1
  181. package/dist/sdk/workspace/frontmatter.js +1 -1
  182. package/dist/sdk/workspace/git.js +1 -1
  183. package/dist/sdk/workspace/index.js +1 -1
  184. package/dist/sdk/workspace/templates.js +1 -1
  185. package/dist/sdk/workspace/weekly.js +1 -1
  186. package/dist/sdk/workspace/wikilinks.js +1 -1
  187. package/dist/test-utils/command-runner.js +1 -1
  188. package/dist/test-utils/factories.js +1 -1
  189. package/dist/test-utils/fixtures.js +1 -1
  190. package/dist/test-utils/http-mock.js +1 -1
  191. package/dist/test-utils/index.js +1 -1
  192. package/dist/utils/async.js +1 -1
  193. package/dist/utils/colors.js +1 -1
  194. package/dist/utils/diff.js +1 -1
  195. package/dist/utils/file-permissions.js +1 -1
  196. package/dist/utils/file-reader.js +1 -1
  197. package/dist/utils/github-releases.js +1 -1
  198. package/dist/utils/global-cache.js +1 -1
  199. package/dist/utils/json-loader.js +1 -1
  200. package/dist/utils/local-cache.js +1 -1
  201. package/dist/utils/logger/formatters/default-formatter.js +1 -1
  202. package/dist/utils/logger/formatters/index.js +1 -1
  203. package/dist/utils/logger/handlers/console-handler.js +1 -1
  204. package/dist/utils/logger/handlers/file-handler.js +1 -1
  205. package/dist/utils/logger/handlers/index.js +1 -1
  206. package/dist/utils/logger/handlers/null-handler.js +1 -1
  207. package/dist/utils/logger/index.js +1 -1
  208. package/dist/utils/logger/logger.js +1 -1
  209. package/dist/utils/logger/types.js +1 -1
  210. package/dist/utils/option-validation.js +1 -1
  211. package/dist/utils/process.js +1 -1
  212. package/dist/utils/prompt.js +1 -1
  213. package/dist/utils/spinner.js +1 -1
  214. package/dist/utils/sse-parser.js +1 -1
  215. package/dist/utils/string-utils.js +1 -1
  216. package/dist/utils/table-ref-parser.js +1 -1
  217. package/dist/utils/tdx-logger.js +1 -1
  218. package/dist/utils/version-check.js +1 -1
  219. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- function a70_0x180f(_0x1074be,_0x1ff4f0){_0x1074be=_0x1074be-0xd9;var _0x3a01a1=a70_0x3a01();var _0x180fb1=_0x3a01a1[_0x1074be];return _0x180fb1;}(function(_0x44899a,_0x2dfccd){var _0x1d4576=a70_0x180f,_0x50d118=_0x44899a();while(!![]){try{var _0x366648=-parseInt(_0x1d4576(0xd9))/0x1*(-parseInt(_0x1d4576(0xe3))/0x2)+-parseInt(_0x1d4576(0xe0))/0x3*(-parseInt(_0x1d4576(0xde))/0x4)+-parseInt(_0x1d4576(0xe2))/0x5+-parseInt(_0x1d4576(0xe4))/0x6*(parseInt(_0x1d4576(0xdd))/0x7)+parseInt(_0x1d4576(0xdb))/0x8*(parseInt(_0x1d4576(0xdc))/0x9)+-parseInt(_0x1d4576(0xe1))/0xa+parseInt(_0x1d4576(0xdf))/0xb*(parseInt(_0x1d4576(0xda))/0xc);if(_0x366648===_0x2dfccd)break;else _0x50d118['push'](_0x50d118['shift']());}catch(_0x645a64){_0x50d118['push'](_0x50d118['shift']());}}}(a70_0x3a01,0x59c1f));export*from'./sdk/types/index.js';export*from'./core/config.js';export*from'./core/auth.js';export*from'./sdk/client/http-client.js';export*from'./sdk/client/td-api-client.js';export{TrinoApiClient}from'./sdk/client/trino-api-client.js';export*from'./sdk/client/rate-limiter.js';export*from'./sdk/types/trino.js';export*from'./commands/command.js';export*from'./commands/query-command.js';export*from'./commands/databases.js';function a70_0x3a01(){var _0x4d2345=['956895VmudRv','493526XzOXjR','5844NPLOmZ','1QmSwYG','116148zoEITc','1445824oBUCXW','9wSRsuN','756yaljeB','2356004LKqpij','11CbriYj','3bwuhed','3619530mpZnrz'];a70_0x3a01=function(){return _0x4d2345;};return a70_0x3a01();}export*from'./commands/tables.js';export*from'./commands/segments.js';export*from'./commands/activations.js';export*from'./commands/show.js';export*from'./commands/describe.js';export*from'./sdk/index.js';
1
+ function a70_0x26f2(){var _0x132de0=['86nkfbcj','12365jutdLg','10109TOWHyo','1166976mRckih','1224009WKWkzY','10LNtvds','825880ZLsKHW','7NDKNqB','3580hcjzYd','1158777eEtkSQ','1673604tMzJGG'];a70_0x26f2=function(){return _0x132de0;};return a70_0x26f2();}(function(_0x5c68fa,_0x5e6461){var _0x4dac7a=a70_0x524d,_0xc6c82b=_0x5c68fa();while(!![]){try{var _0x4d831b=-parseInt(_0x4dac7a(0x91))/0x1*(parseInt(_0x4dac7a(0x90))/0x2)+parseInt(_0x4dac7a(0x8e))/0x3+parseInt(_0x4dac7a(0x96))/0x4*(parseInt(_0x4dac7a(0x95))/0x5)+parseInt(_0x4dac7a(0x8f))/0x6*(-parseInt(_0x4dac7a(0x8c))/0x7)+-parseInt(_0x4dac7a(0x93))/0x8+parseInt(_0x4dac7a(0x94))/0x9+-parseInt(_0x4dac7a(0x8d))/0xa*(-parseInt(_0x4dac7a(0x92))/0xb);if(_0x4d831b===_0x5e6461)break;else _0xc6c82b['push'](_0xc6c82b['shift']());}catch(_0x5194cd){_0xc6c82b['push'](_0xc6c82b['shift']());}}}(a70_0x26f2,0x4b1f5));export*from'./sdk/types/index.js';export*from'./core/config.js';export*from'./core/auth.js';export*from'./sdk/client/http-client.js';export*from'./sdk/client/td-api-client.js';export{TrinoApiClient}from'./sdk/client/trino-api-client.js';export*from'./sdk/client/rate-limiter.js';export*from'./sdk/types/trino.js';export*from'./commands/command.js';export*from'./commands/query-command.js';export*from'./commands/databases.js';export*from'./commands/tables.js';export*from'./commands/segments.js';export*from'./commands/activations.js';export*from'./commands/show.js';export*from'./commands/describe.js';function a70_0x524d(_0x556e75,_0x3dda60){_0x556e75=_0x556e75-0x8c;var _0x26f23e=a70_0x26f2();var _0x524dd9=_0x26f23e[_0x556e75];return _0x524dd9;}export*from'./sdk/index.js';
@@ -1 +1 @@
1
- (function(_0x59fd23,_0x1a8f9c){const _0x36d902=a71_0x4db6,_0x1063be=_0x59fd23();while(!![]){try{const _0x2c69f3=parseInt(_0x36d902(0xbb))/0x1+-parseInt(_0x36d902(0xbd))/0x2*(-parseInt(_0x36d902(0xad))/0x3)+parseInt(_0x36d902(0xa8))/0x4+-parseInt(_0x36d902(0xc0))/0x5+-parseInt(_0x36d902(0xb2))/0x6+-parseInt(_0x36d902(0xcb))/0x7*(-parseInt(_0x36d902(0xc4))/0x8)+parseInt(_0x36d902(0xb1))/0x9;if(_0x2c69f3===_0x1a8f9c)break;else _0x1063be['push'](_0x1063be['shift']());}catch(_0x23d9d3){_0x1063be['push'](_0x1063be['shift']());}}}(a71_0x3468,0x70b18));import{McpServer}from'@modelcontextprotocol/sdk/server/mcp.js';import{StdioServerTransport}from'@modelcontextprotocol/sdk/server/stdio.js';import{z}from'zod';import{executeTdxRun,searchCommands,executeWorkCreateItem,WorkCreateItemInputSchema}from'./tools/index.js';export function createMCPServer(_0x5ba2b5={}){const _0x369177=a71_0x4db6,_0x2cfe24=new McpServer({'name':_0x369177(0xc1),'version':_0x369177(0xa3)});return _0x2cfe24[_0x369177(0xa2)](_0x369177(0xb8),{'description':_0x369177(0xac),'inputSchema':{'args':z['array'](z[_0x369177(0xa5)]())[_0x369177(0x9f)]('Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])')}},async({args:_0x139814})=>{const _0x446f95=_0x369177,_0x588d6b=await executeTdxRun({'args':_0x139814},_0x5ba2b5['env']||{});return _0x588d6b['success']?{'content':[{'type':_0x446f95(0xa4),'text':_0x588d6b[_0x446f95(0xa6)]||_0x446f95(0xa0)}]}:{'content':[{'type':'text','text':_0x588d6b[_0x446f95(0xb0)]||_0x588d6b[_0x446f95(0xa6)]||'Command\x20failed'}],'isError':!![]};}),_0x2cfe24[_0x369177(0xa2)](_0x369177(0xaa),{'description':_0x369177(0xb4),'inputSchema':{'query':z[_0x369177(0xa5)]()[_0x369177(0x9f)](_0x369177(0xc5)),'category':z['enum']([_0x369177(0xae),_0x369177(0xc3),'AI',_0x369177(0xba),_0x369177(0xa1)])['optional']()[_0x369177(0x9f)](_0x369177(0xc7))}},async({query:_0x4bfd56,category:_0x13c17e})=>{const _0xe0609a=_0x369177,_0x5cff87=searchCommands({'query':_0x4bfd56,'category':_0x13c17e});if(_0x5cff87[_0xe0609a(0xbf)]===0x0)return{'content':[{'type':'text','text':'No\x20commands\x20found\x20matching\x20\x22'+_0x4bfd56+'\x22'}]};const _0x5ca453=_0x5cff87['map'](_0xeb04e5=>{const _0x126481=_0xe0609a,_0x54cd90=_0xeb04e5['examples'][_0x126481(0xb5)](_0x3b7577=>'\x20\x20'+_0x3b7577)[_0x126481(0xa9)]('\x0a');return'**'+_0xeb04e5[_0x126481(0xb9)]+_0x126481(0xc9)+_0xeb04e5['category']+')\x0a'+_0xeb04e5['description']+_0x126481(0xa7)+_0x54cd90;})['join']('\x0a\x0a---\x0a\x0a');return{'content':[{'type':_0xe0609a(0xa4),'text':_0x5ca453}]};}),_0x2cfe24[_0x369177(0xa2)](_0x369177(0xc2),{'description':'Create\x20a\x20work\x20item\x20in\x20the\x20workspace\x20with\x20auto-generated\x20slug,\x20correct\x20folder\x20placement,\x20and\x20auto-commit.\x0a\x0aExamples:\x0a-\x20Create\x20a\x20task:\x20{\x22title\x22:\x20\x22Fix\x20login\x20bug\x22,\x20\x22tags\x22:\x20[\x22bugfix\x22]}\x0a-\x20Create\x20a\x20note:\x20{\x22title\x22:\x20\x22Meeting\x20notes\x22,\x20\x22kind\x22:\x20\x22note\x22}\x0a-\x20Create\x20with\x20PR\x20link:\x20{\x22title\x22:\x20\x22Add\x20auth\x22,\x20\x22github\x22:\x20\x22treasure-data/tdx#123\x22}\x0a-\x20Create\x20from\x20template:\x20{\x22title\x22:\x20\x22New\x20feature\x22,\x20\x22template\x22:\x20\x22feature\x22}\x0a\x0aReturns\x20the\x20file\x20path\x20and\x20slug\x20of\x20the\x20created\x20document.','inputSchema':WorkCreateItemInputSchema[_0x369177(0xbe)]},async({title:_0x1686e8,kind:_0x2815c7,status:_0x4dd3d9,tags:_0x492d07,priority:_0x53dbe3,body:_0x1a3d80,template:_0x2c41fe,github:_0x180e03,jira:_0x48f392})=>{const _0x5bbd00=_0x369177,_0x55f249=executeWorkCreateItem({'title':_0x1686e8,'kind':_0x2815c7,'status':_0x4dd3d9,'tags':_0x492d07,'priority':_0x53dbe3,'body':_0x1a3d80,'template':_0x2c41fe,'github':_0x180e03,'jira':_0x48f392});return _0x55f249[_0x5bbd00(0x9e)]?{'content':[{'type':_0x5bbd00(0xa4),'text':JSON[_0x5bbd00(0xca)]({'path':_0x55f249[_0x5bbd00(0xb6)],'slug':_0x55f249[_0x5bbd00(0x9d)]})}]}:{'content':[{'type':'text','text':_0x55f249['error']||_0x5bbd00(0xb3)}],'isError':!![]};}),_0x2cfe24;}export async function startMCPServer(_0x5d2ff6={}){const _0x30bced=a71_0x4db6,_0x95570=createMCPServer(_0x5d2ff6),_0x542b8d=new StdioServerTransport();return await _0x95570[_0x30bced(0xc6)](_0x542b8d),new Promise(_0x29bf17=>{const _0x41a4fa=_0x30bced;let _0x193205=![];const _0x2b7156=async()=>{const _0x391559=a71_0x4db6;if(_0x193205)return;_0x193205=!![],await _0x95570[_0x391559(0xab)](),_0x29bf17();};process[_0x41a4fa(0xbc)](_0x41a4fa(0xc8),_0x2b7156),process['once'](_0x41a4fa(0xb7),_0x2b7156),process[_0x41a4fa(0xaf)][_0x41a4fa(0xbc)](_0x41a4fa(0xab),_0x2b7156);});}function a71_0x4db6(_0x43d2fd,_0x1a79f7){_0x43d2fd=_0x43d2fd-0x9d;const _0x3468c9=a71_0x3468();let _0x4db6f0=_0x3468c9[_0x43d2fd];return _0x4db6f0;}function a71_0x3468(){const _0x420d43=['CDP','1308600ICFKBg','Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)','connect','Optional\x20filter\x20by\x20category','SIGINT','**\x20(','stringify','7AMgTTL','slug','success','describe','Command\x20completed\x20successfully','Utilities','registerTool','1.0.0','text','string','output','\x0a\x0aExamples:\x0a','3416640ostRik','join','tdx_search','close','Execute\x20any\x20tdx\x20CLI\x20command.\x20Returns\x20JSON\x20output.\x0a\x0aExamples:\x0a-\x20List\x20databases:\x20{\x22args\x22:\x20[\x22databases\x22]}\x0a-\x20Run\x20SQL\x20query:\x20{\x22args\x22:\x20[\x22query\x22,\x20\x22SELECT\x20*\x20FROM\x20mydb.users\x20LIMIT\x2010\x22]}\x0a-\x20List\x20segments:\x20{\x22args\x22:\x20[\x22segments\x22,\x20\x22--recursive\x22]}\x0a-\x20Show\x20job\x20details:\x20{\x22args\x22:\x20[\x22job\x22,\x20\x22show\x22,\x20\x2212345\x22]}\x0a-\x20List\x20tables:\x20{\x22args\x22:\x20[\x22tables\x22,\x20\x22mydb.*\x22]}\x0a\x0aNote:\x20Some\x20commands\x20(auth,\x20profile\x20management,\x20mcp)\x20are\x20blocked\x20for\x20security.','870HtdDZG','Data','stdin','error','4033278NNWoQQ','5475354XKQzhl','Failed\x20to\x20create\x20item','Search\x20for\x20relevant\x20tdx\x20commands\x20based\x20on\x20what\x20you\x20want\x20to\x20do.\x0a\x0aExamples:\x0a-\x20{\x22query\x22:\x20\x22how\x20to\x20run\x20SQL\x20queries\x22}\x0a-\x20{\x22query\x22:\x20\x22list\x20databases\x20and\x20tables\x22}\x0a-\x20{\x22query\x22:\x20\x22manage\x20customer\x20segments\x22,\x20\x22category\x22:\x20\x22CDP\x22}\x0a-\x20{\x22query\x22:\x20\x22workflow\x20logs\x22}\x0a\x0aCategories:\x20Data,\x20CDP,\x20AI,\x20Context,\x20Utilities\x0a\x0aReturns\x20matching\x20commands\x20with\x20descriptions\x20and\x20example\x20usage.','map','path','SIGTERM','tdx_run','name','Context','364911EUPBmg','once','688LxoZaJ','shape','length','2781985YbMphm','tdx','work_create_item'];a71_0x3468=function(){return _0x420d43;};return a71_0x3468();}
1
+ (function(_0x5a17a6,_0x4c4206){const _0x45ce47=a71_0xcfee,_0x39884e=_0x5a17a6();while(!![]){try{const _0x4f7c84=-parseInt(_0x45ce47(0xf0))/0x1+parseInt(_0x45ce47(0xdb))/0x2*(parseInt(_0x45ce47(0xd9))/0x3)+-parseInt(_0x45ce47(0xd5))/0x4*(parseInt(_0x45ce47(0xf5))/0x5)+-parseInt(_0x45ce47(0xdc))/0x6+parseInt(_0x45ce47(0xeb))/0x7+-parseInt(_0x45ce47(0xd2))/0x8+parseInt(_0x45ce47(0xe4))/0x9*(parseInt(_0x45ce47(0xcf))/0xa);if(_0x4f7c84===_0x4c4206)break;else _0x39884e['push'](_0x39884e['shift']());}catch(_0xe1525c){_0x39884e['push'](_0x39884e['shift']());}}}(a71_0x2f82,0x95609));import{McpServer}from'@modelcontextprotocol/sdk/server/mcp.js';import{StdioServerTransport}from'@modelcontextprotocol/sdk/server/stdio.js';function a71_0xcfee(_0x35a01b,_0x3a93fb){_0x35a01b=_0x35a01b-0xc6;const _0x2f8257=a71_0x2f82();let _0xcfee3a=_0x2f8257[_0x35a01b];return _0xcfee3a;}import{z}from'zod';function a71_0x2f82(){const _0xb0e91f=['describe','optional','map','Utilities','close','Failed\x20to\x20create\x20item','950yqXwHE','once','error','1128208MvszHV','Create\x20a\x20work\x20item\x20in\x20the\x20workspace\x20with\x20auto-generated\x20slug,\x20correct\x20folder\x20placement,\x20and\x20auto-commit.\x0a\x0aExamples:\x0a-\x20Create\x20a\x20task:\x20{\x22title\x22:\x20\x22Fix\x20login\x20bug\x22,\x20\x22tags\x22:\x20[\x22bugfix\x22]}\x0a-\x20Create\x20a\x20note:\x20{\x22title\x22:\x20\x22Meeting\x20notes\x22,\x20\x22kind\x22:\x20\x22note\x22}\x0a-\x20Create\x20with\x20PR\x20link:\x20{\x22title\x22:\x20\x22Add\x20auth\x22,\x20\x22github\x22:\x20\x22treasure-data/tdx#123\x22}\x0a-\x20Create\x20from\x20template:\x20{\x22title\x22:\x20\x22New\x20feature\x22,\x20\x22template\x22:\x20\x22feature\x22}\x0a\x0aReturns\x20the\x20file\x20path\x20and\x20slug\x20of\x20the\x20created\x20document.','tdx_search','8ZMjSLT','length','stringify','category','42mFfssY','shape','23548itULZO','1724094FWcAUI','tdx','text','Data','array','env','1.0.0','Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])','15723vDSJWo','string','SIGTERM','examples','Optional\x20filter\x20by\x20category','description','\x0a\x0aExamples:\x0a','7481628aoJbyT','registerTool','connect','stdin','output','202579Rnmclv','Search\x20for\x20relevant\x20tdx\x20commands\x20based\x20on\x20what\x20you\x20want\x20to\x20do.\x0a\x0aExamples:\x0a-\x20{\x22query\x22:\x20\x22how\x20to\x20run\x20SQL\x20queries\x22}\x0a-\x20{\x22query\x22:\x20\x22list\x20databases\x20and\x20tables\x22}\x0a-\x20{\x22query\x22:\x20\x22manage\x20customer\x20segments\x22,\x20\x22category\x22:\x20\x22CDP\x22}\x0a-\x20{\x22query\x22:\x20\x22workflow\x20logs\x22}\x0a\x0aCategories:\x20Data,\x20CDP,\x20AI,\x20Context,\x20Utilities\x0a\x0aReturns\x20matching\x20commands\x20with\x20descriptions\x20and\x20example\x20usage.','slug','**\x20(','Command\x20failed','392005VSTaVt','No\x20commands\x20found\x20matching\x20\x22','Execute\x20any\x20tdx\x20CLI\x20command.\x20Returns\x20JSON\x20output.\x0a\x0aExamples:\x0a-\x20List\x20databases:\x20{\x22args\x22:\x20[\x22databases\x22]}\x0a-\x20Run\x20SQL\x20query:\x20{\x22args\x22:\x20[\x22query\x22,\x20\x22SELECT\x20*\x20FROM\x20mydb.users\x20LIMIT\x2010\x22]}\x0a-\x20List\x20segments:\x20{\x22args\x22:\x20[\x22segments\x22,\x20\x22--recursive\x22]}\x0a-\x20Show\x20job\x20details:\x20{\x22args\x22:\x20[\x22job\x22,\x20\x22show\x22,\x20\x2212345\x22]}\x0a-\x20List\x20tables:\x20{\x22args\x22:\x20[\x22tables\x22,\x20\x22mydb.*\x22]}\x0a\x0aNote:\x20Some\x20commands\x20(auth,\x20profile\x20management,\x20mcp)\x20are\x20blocked\x20for\x20security.','name','success','work_create_item','join','Command\x20completed\x20successfully','enum'];a71_0x2f82=function(){return _0xb0e91f;};return a71_0x2f82();}import{executeTdxRun,searchCommands,executeWorkCreateItem,WorkCreateItemInputSchema}from'./tools/index.js';export function createMCPServer(_0x1f2660={}){const _0x44422a=a71_0xcfee,_0xaf28be=new McpServer({'name':_0x44422a(0xdd),'version':_0x44422a(0xe2)});return _0xaf28be[_0x44422a(0xec)]('tdx_run',{'description':_0x44422a(0xf7),'inputSchema':{'args':z[_0x44422a(0xe0)](z[_0x44422a(0xe5)]())[_0x44422a(0xc9)](_0x44422a(0xe3))}},async({args:_0x22df33})=>{const _0x45f4ee=_0x44422a,_0x1ab24a=await executeTdxRun({'args':_0x22df33},_0x1f2660[_0x45f4ee(0xe1)]||{});return _0x1ab24a[_0x45f4ee(0xf9)]?{'content':[{'type':_0x45f4ee(0xde),'text':_0x1ab24a['output']||_0x45f4ee(0xc7)}]}:{'content':[{'type':_0x45f4ee(0xde),'text':_0x1ab24a['error']||_0x1ab24a[_0x45f4ee(0xef)]||_0x45f4ee(0xf4)}],'isError':!![]};}),_0xaf28be['registerTool'](_0x44422a(0xd4),{'description':_0x44422a(0xf1),'inputSchema':{'query':z[_0x44422a(0xe5)]()[_0x44422a(0xc9)]('Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)'),'category':z[_0x44422a(0xc8)]([_0x44422a(0xdf),'CDP','AI','Context',_0x44422a(0xcc)])[_0x44422a(0xca)]()[_0x44422a(0xc9)](_0x44422a(0xe8))}},async({query:_0x1d2396,category:_0x360e22})=>{const _0x4735a4=_0x44422a,_0x562f8=searchCommands({'query':_0x1d2396,'category':_0x360e22});if(_0x562f8[_0x4735a4(0xd6)]===0x0)return{'content':[{'type':_0x4735a4(0xde),'text':_0x4735a4(0xf6)+_0x1d2396+'\x22'}]};const _0x217883=_0x562f8[_0x4735a4(0xcb)](_0x251a5a=>{const _0x2f8aa0=_0x4735a4,_0x2273f3=_0x251a5a[_0x2f8aa0(0xe7)]['map'](_0x352f34=>'\x20\x20'+_0x352f34)['join']('\x0a');return'**'+_0x251a5a[_0x2f8aa0(0xf8)]+_0x2f8aa0(0xf3)+_0x251a5a[_0x2f8aa0(0xd8)]+')\x0a'+_0x251a5a[_0x2f8aa0(0xe9)]+_0x2f8aa0(0xea)+_0x2273f3;})[_0x4735a4(0xc6)]('\x0a\x0a---\x0a\x0a');return{'content':[{'type':'text','text':_0x217883}]};}),_0xaf28be[_0x44422a(0xec)](_0x44422a(0xfa),{'description':_0x44422a(0xd3),'inputSchema':WorkCreateItemInputSchema[_0x44422a(0xda)]},async({title:_0x16a100,kind:_0xfe597d,status:_0x33964f,tags:_0x49147a,priority:_0x5e6945,body:_0x1e119e,template:_0x1e7a98,github:_0x1904e4,jira:_0x1997f7})=>{const _0x2c7fea=_0x44422a,_0x145a44=executeWorkCreateItem({'title':_0x16a100,'kind':_0xfe597d,'status':_0x33964f,'tags':_0x49147a,'priority':_0x5e6945,'body':_0x1e119e,'template':_0x1e7a98,'github':_0x1904e4,'jira':_0x1997f7});return _0x145a44[_0x2c7fea(0xf9)]?{'content':[{'type':_0x2c7fea(0xde),'text':JSON[_0x2c7fea(0xd7)]({'path':_0x145a44['path'],'slug':_0x145a44[_0x2c7fea(0xf2)]})}]}:{'content':[{'type':_0x2c7fea(0xde),'text':_0x145a44[_0x2c7fea(0xd1)]||_0x2c7fea(0xce)}],'isError':!![]};}),_0xaf28be;}export async function startMCPServer(_0xb0e75d={}){const _0x580b28=a71_0xcfee,_0x233bff=createMCPServer(_0xb0e75d),_0x1fda50=new StdioServerTransport();return await _0x233bff[_0x580b28(0xed)](_0x1fda50),new Promise(_0x563e59=>{const _0x3a5c9f=_0x580b28;let _0x4b8949=![];const _0x484ae7=async()=>{const _0x25641c=a71_0xcfee;if(_0x4b8949)return;_0x4b8949=!![],await _0x233bff[_0x25641c(0xcd)](),_0x563e59();};process['once']('SIGINT',_0x484ae7),process['once'](_0x3a5c9f(0xe6),_0x484ae7),process[_0x3a5c9f(0xee)][_0x3a5c9f(0xd0)]('close',_0x484ae7);});}
@@ -1 +1 @@
1
- (function(_0x130078,_0x20a66b){var _0x18bf37=a72_0x4592,_0x59e8e6=_0x130078();while(!![]){try{var _0x41fbdf=-parseInt(_0x18bf37(0x1ac))/0x1+parseInt(_0x18bf37(0x1a5))/0x2+parseInt(_0x18bf37(0x1a7))/0x3+parseInt(_0x18bf37(0x1ae))/0x4+parseInt(_0x18bf37(0x1a9))/0x5*(-parseInt(_0x18bf37(0x1aa))/0x6)+-parseInt(_0x18bf37(0x1a6))/0x7*(parseInt(_0x18bf37(0x1ad))/0x8)+-parseInt(_0x18bf37(0x1ab))/0x9*(-parseInt(_0x18bf37(0x1a8))/0xa);if(_0x41fbdf===_0x20a66b)break;else _0x59e8e6['push'](_0x59e8e6['shift']());}catch(_0x47a818){_0x59e8e6['push'](_0x59e8e6['shift']());}}}(a72_0x579c,0x6fd20));function a72_0x4592(_0x12f4f6,_0x3551dd){_0x12f4f6=_0x12f4f6-0x1a5;var _0x579cc2=a72_0x579c();var _0x4592a9=_0x579cc2[_0x12f4f6];return _0x4592a9;}export{executeTdxRun,TdxRunInputSchema}from'./tdx-run.js';export{searchCommands,TdxSearchInputSchema}from'./tdx-search.js';function a72_0x579c(){var _0x628252=['5nCMMQm','2888862HFFdqG','1504530JdgggX','51380cNfUQu','8hojlKq','1063824wLJYVk','770620bennvo','5260045LVFdBI','1267086mkJmvL','40WNRrBx'];a72_0x579c=function(){return _0x628252;};return a72_0x579c();}export{executeWorkCreateItem,WorkCreateItemInputSchema}from'./work-create-item.js';
1
+ (function(_0xb1db9e,_0x5582e6){var _0x3113e8=a72_0x4dcb,_0x43adca=_0xb1db9e();while(!![]){try{var _0x2d86eb=parseInt(_0x3113e8(0x1aa))/0x1*(parseInt(_0x3113e8(0x1a9))/0x2)+parseInt(_0x3113e8(0x1ab))/0x3+-parseInt(_0x3113e8(0x1a3))/0x4+parseInt(_0x3113e8(0x1a8))/0x5*(parseInt(_0x3113e8(0x1a5))/0x6)+parseInt(_0x3113e8(0x1a6))/0x7+-parseInt(_0x3113e8(0x1a7))/0x8+parseInt(_0x3113e8(0x1a2))/0x9*(-parseInt(_0x3113e8(0x1a4))/0xa);if(_0x2d86eb===_0x5582e6)break;else _0x43adca['push'](_0x43adca['shift']());}catch(_0x1e9245){_0x43adca['push'](_0x43adca['shift']());}}}(a72_0x3714,0xcc838));function a72_0x3714(){var _0x5071d7=['4509jnjRdr','2523572pNsLAH','7030hFQKJV','1316262bxnWCN','10502016TsSmOc','11088424DwvBKS','15pNmEYl','189454AVXwpe','1seYLvH','2861073cOmmna'];a72_0x3714=function(){return _0x5071d7;};return a72_0x3714();}export{executeTdxRun,TdxRunInputSchema}from'./tdx-run.js';function a72_0x4dcb(_0x15d637,_0x561c88){_0x15d637=_0x15d637-0x1a2;var _0x37142c=a72_0x3714();var _0x4dcb0f=_0x37142c[_0x15d637];return _0x4dcb0f;}export{searchCommands,TdxSearchInputSchema}from'./tdx-search.js';export{executeWorkCreateItem,WorkCreateItemInputSchema}from'./work-create-item.js';
@@ -1 +1 @@
1
- const a73_0x41485b=a73_0x6dbe;(function(_0x15619c,_0x4c9f65){const _0x1f1b39=a73_0x6dbe,_0x4e0184=_0x15619c();while(!![]){try{const _0x1917eb=-parseInt(_0x1f1b39(0x159))/0x1*(-parseInt(_0x1f1b39(0x173))/0x2)+-parseInt(_0x1f1b39(0x160))/0x3*(parseInt(_0x1f1b39(0x172))/0x4)+parseInt(_0x1f1b39(0x178))/0x5+parseInt(_0x1f1b39(0x162))/0x6+parseInt(_0x1f1b39(0x171))/0x7*(-parseInt(_0x1f1b39(0x15c))/0x8)+-parseInt(_0x1f1b39(0x16b))/0x9*(parseInt(_0x1f1b39(0x15f))/0xa)+-parseInt(_0x1f1b39(0x168))/0xb;if(_0x1917eb===_0x4c9f65)break;else _0x4e0184['push'](_0x4e0184['shift']());}catch(_0x5e0a08){_0x4e0184['push'](_0x4e0184['shift']());}}}(a73_0x3e27,0xcc1f7));function a73_0x3e27(){const _0x54156b=['object','9190478iJcYtS','Command\x20timed\x20out\x20after\x2015\x20minutes.\x20For\x20long-running\x20queries,\x20use\x20job\x20submit\x20instead.','stdout','306qQEzJx','Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])','toString','resourcesPath','node.exe','stderr','153916lWzzAn','20AXSdQm','4vLqlvO','execPath','This\x20command\x20is\x20not\x20allowed\x20via\x20MCP','SIGTERM','string','5967200KayazK','ignore','platform','544763EBXRwg','pipe','error','48gzMUhG','win32','true','19190RwNMNR','630801VknsFk','--no-color','3822768zHQiqV','data','message','array','node'];a73_0x3e27=function(){return _0x54156b;};return a73_0x3e27();}import{spawn}from'child_process';import{dirname,join}from'path';import{existsSync}from'fs';import{z}from'zod';import{isBlockedCommand,getBlockedReason,formatOutput}from'../utils.js';function a73_0x6dbe(_0x58ddf7,_0x3e02a9){_0x58ddf7=_0x58ddf7-0x158;const _0x3e273e=a73_0x3e27();let _0x6dbe72=_0x3e273e[_0x58ddf7];return _0x6dbe72;}export const TdxRunInputSchema=z[a73_0x41485b(0x167)]({'args':z[a73_0x41485b(0x165)](z[a73_0x41485b(0x177)]())['describe'](a73_0x41485b(0x16c))});const DEFAULT_TIMEOUT_MS=0xf*0x3c*0x3e8;function getNodeBinDir(){const _0x139443=a73_0x41485b,_0x3ad8f5=process[_0x139443(0x16e)];if(_0x3ad8f5){const _0x1de2e0=join(_0x3ad8f5,_0x139443(0x166)),_0xcee916=process[_0x139443(0x158)]==='win32'?_0x139443(0x16f):_0x139443(0x166);if(existsSync(join(_0x1de2e0,_0xcee916)))return _0x1de2e0;}return dirname(process[_0x139443(0x174)]);}export async function executeTdxRun(_0x7b2321,_0x2ee864){const _0x1b6768=a73_0x41485b,{args:_0x545266}=_0x7b2321;if(isBlockedCommand(_0x545266)){const _0x33ade9=getBlockedReason(_0x545266);return{'success':![],'output':'','error':_0x33ade9||_0x1b6768(0x175),'exitCode':0x1};}const _0x513fca=['--json',_0x1b6768(0x161),..._0x545266],_0x44b086=getNodeBinDir(),_0x2008b5=process[_0x1b6768(0x158)]===_0x1b6768(0x15d)?';':':',_0x3c66f9=_0x2ee864['PATH']??process.env.PATH??'',_0x79df07=''+_0x44b086+_0x2008b5+_0x3c66f9;return new Promise(_0x542909=>{const _0x3c5e2d=_0x1b6768,_0x513958=spawn('tdx',_0x513fca,{'env':{...process.env,..._0x2ee864,'PATH':_0x79df07,'CI':_0x3c5e2d(0x15e)},'stdio':[_0x3c5e2d(0x179),_0x3c5e2d(0x15a),_0x3c5e2d(0x15a)]});let _0xbe35b2='',_0x39570a='',_0x3f0ef5=![];const _0x307545=setTimeout(()=>{const _0x4822ea=_0x3c5e2d;_0x3f0ef5=!![],_0x513958['kill'](_0x4822ea(0x176));},DEFAULT_TIMEOUT_MS);_0x513958[_0x3c5e2d(0x16a)]['on'](_0x3c5e2d(0x163),_0x395b09=>{const _0x3f7be7=_0x3c5e2d;_0xbe35b2+=_0x395b09[_0x3f7be7(0x16d)]();}),_0x513958[_0x3c5e2d(0x170)]['on']('data',_0x278ae3=>{const _0xe99526=_0x3c5e2d;_0x39570a+=_0x278ae3[_0xe99526(0x16d)]();}),_0x513958['on'](_0x3c5e2d(0x15b),_0x22fb49=>{const _0x52cbab=_0x3c5e2d;clearTimeout(_0x307545),_0x542909({'success':![],'output':'','error':'Failed\x20to\x20spawn\x20tdx:\x20'+_0x22fb49[_0x52cbab(0x164)],'exitCode':0x1});}),_0x513958['on']('close',_0x343e60=>{const _0x5581c9=_0x3c5e2d;clearTimeout(_0x307545);if(_0x3f0ef5){_0x542909({'success':![],'output':formatOutput(_0xbe35b2),'error':_0x5581c9(0x169),'exitCode':0x7c});return;}const _0x5c2504=_0x343e60??0x1,_0x29894d=_0x5c2504===0x0,_0x307ec5=formatOutput(_0xbe35b2||_0x39570a),_0x408a6d=!_0x29894d&&_0x39570a?formatOutput(_0x39570a):undefined;_0x542909({'success':_0x29894d,'output':_0x307ec5,'error':_0x408a6d,'exitCode':_0x5c2504});});});}
1
+ const a73_0x10b1df=a73_0x32b7;(function(_0x48308b,_0x3f7070){const _0x3c17aa=a73_0x32b7,_0x12d852=_0x48308b();while(!![]){try{const _0x2fdf22=-parseInt(_0x3c17aa(0x1bb))/0x1*(parseInt(_0x3c17aa(0x1cf))/0x2)+-parseInt(_0x3c17aa(0x1b9))/0x3+parseInt(_0x3c17aa(0x1cb))/0x4+parseInt(_0x3c17aa(0x1b2))/0x5+parseInt(_0x3c17aa(0x1ad))/0x6*(-parseInt(_0x3c17aa(0x1b1))/0x7)+-parseInt(_0x3c17aa(0x1c7))/0x8*(parseInt(_0x3c17aa(0x1b5))/0x9)+parseInt(_0x3c17aa(0x1bc))/0xa*(parseInt(_0x3c17aa(0x1ca))/0xb);if(_0x2fdf22===_0x3f7070)break;else _0x12d852['push'](_0x12d852['shift']());}catch(_0x3bcefe){_0x12d852['push'](_0x12d852['shift']());}}}(a73_0x8e7a,0xf17ea));function a73_0x32b7(_0x29feb6,_0x16a238){_0x29feb6=_0x29feb6-0x1ad;const _0x8e7a0d=a73_0x8e7a();let _0x32b78e=_0x8e7a0d[_0x29feb6];return _0x32b78e;}import{spawn}from'child_process';import{dirname,join}from'path';import{existsSync}from'fs';import{z}from'zod';import{isBlockedCommand,getBlockedReason,formatOutput}from'../utils.js';export const TdxRunInputSchema=z[a73_0x10b1df(0x1b7)]({'args':z['array'](z['string']())[a73_0x10b1df(0x1be)](a73_0x10b1df(0x1b0))});const DEFAULT_TIMEOUT_MS=0xf*0x3c*0x3e8;function getNodeBinDir(){const _0x14100e=a73_0x10b1df,_0x33698e=process[_0x14100e(0x1ae)];if(_0x33698e){const _0x463205=join(_0x33698e,'node'),_0x3e631c=process['platform']===_0x14100e(0x1af)?_0x14100e(0x1c6):_0x14100e(0x1c2);if(existsSync(join(_0x463205,_0x3e631c)))return _0x463205;}return dirname(process[_0x14100e(0x1c8)]);}export async function executeTdxRun(_0x2509d9,_0x270b4a){const _0x4efc00=a73_0x10b1df,{args:_0x341569}=_0x2509d9;if(isBlockedCommand(_0x341569)){const _0x2b1d3a=getBlockedReason(_0x341569);return{'success':![],'output':'','error':_0x2b1d3a||_0x4efc00(0x1b4),'exitCode':0x1};}const _0xe063f8=['--json','--no-color',..._0x341569],_0x560bbf=getNodeBinDir(),_0x8b6093=process[_0x4efc00(0x1b8)]==='win32'?';':':',_0x1a7e31=_0x270b4a[_0x4efc00(0x1ce)]??process.env.PATH??'',_0xbe9127=''+_0x560bbf+_0x8b6093+_0x1a7e31;return new Promise(_0x4fe98e=>{const _0x1a84e4=_0x4efc00,_0x4dbffd=spawn(_0x1a84e4(0x1bd),_0xe063f8,{'env':{...process.env,..._0x270b4a,'PATH':_0xbe9127,'CI':_0x1a84e4(0x1b6)},'stdio':[_0x1a84e4(0x1c5),_0x1a84e4(0x1b3),'pipe']});let _0x447cd9='',_0x145fd8='',_0x1e0b3a=![];const _0x1d9098=setTimeout(()=>{const _0x5496c9=_0x1a84e4;_0x1e0b3a=!![],_0x4dbffd['kill'](_0x5496c9(0x1cc));},DEFAULT_TIMEOUT_MS);_0x4dbffd['stdout']['on'](_0x1a84e4(0x1cd),_0x33d86f=>{const _0x2ce4dc=_0x1a84e4;_0x447cd9+=_0x33d86f[_0x2ce4dc(0x1c0)]();}),_0x4dbffd[_0x1a84e4(0x1ba)]['on'](_0x1a84e4(0x1cd),_0x1906c4=>{const _0x5850d3=_0x1a84e4;_0x145fd8+=_0x1906c4[_0x5850d3(0x1c0)]();}),_0x4dbffd['on'](_0x1a84e4(0x1c4),_0x5abada=>{const _0x350b27=_0x1a84e4;clearTimeout(_0x1d9098),_0x4fe98e({'success':![],'output':'','error':_0x350b27(0x1c9)+_0x5abada[_0x350b27(0x1bf)],'exitCode':0x1});}),_0x4dbffd['on'](_0x1a84e4(0x1c3),_0x298362=>{const _0x48a543=_0x1a84e4;clearTimeout(_0x1d9098);if(_0x1e0b3a){_0x4fe98e({'success':![],'output':formatOutput(_0x447cd9),'error':_0x48a543(0x1c1),'exitCode':0x7c});return;}const _0x2c90c5=_0x298362??0x1,_0x2fe5ae=_0x2c90c5===0x0,_0x2e9ede=formatOutput(_0x447cd9||_0x145fd8),_0xebb75b=!_0x2fe5ae&&_0x145fd8?formatOutput(_0x145fd8):undefined;_0x4fe98e({'success':_0x2fe5ae,'output':_0x2e9ede,'error':_0xebb75b,'exitCode':_0x2c90c5});});});}function a73_0x8e7a(){const _0x527906=['close','error','ignore','node.exe','24mzZsWL','execPath','Failed\x20to\x20spawn\x20tdx:\x20','12457291ZQcazf','3099988RQmYuR','SIGTERM','data','PATH','18NyyiOK','18UwwiHp','resourcesPath','win32','Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])','2513693nXldYU','6189960OHCkhG','pipe','This\x20command\x20is\x20not\x20allowed\x20via\x20MCP','1931850UKuSaT','true','object','platform','170670aCJLGz','stderr','42019NAnkRO','10onnYLG','tdx','describe','message','toString','Command\x20timed\x20out\x20after\x2015\x20minutes.\x20For\x20long-running\x20queries,\x20use\x20job\x20submit\x20instead.','node'];a73_0x8e7a=function(){return _0x527906;};return a73_0x8e7a();}
@@ -1 +1 @@
1
- function a74_0x12b1(_0x233202,_0x2d2e51){_0x233202=_0x233202-0x74;const _0x13454b=a74_0x1345();let _0x12b1d4=_0x13454b[_0x233202];return _0x12b1d4;}const a74_0x12fb26=a74_0x12b1;(function(_0xf5ed9a,_0xe452f2){const _0x233627=a74_0x12b1,_0x4427bb=_0xf5ed9a();while(!![]){try{const _0x105b12=parseInt(_0x233627(0xe1))/0x1*(-parseInt(_0x233627(0x8c))/0x2)+-parseInt(_0x233627(0xcf))/0x3*(parseInt(_0x233627(0x128))/0x4)+parseInt(_0x233627(0x134))/0x5+parseInt(_0x233627(0x112))/0x6+parseInt(_0x233627(0x92))/0x7+-parseInt(_0x233627(0x165))/0x8*(parseInt(_0x233627(0xa5))/0x9)+-parseInt(_0x233627(0x136))/0xa*(-parseInt(_0x233627(0x77))/0xb);if(_0x105b12===_0xe452f2)break;else _0x4427bb['push'](_0x4427bb['shift']());}catch(_0x566c21){_0x4427bb['push'](_0x4427bb['shift']());}}}(a74_0x1345,0x487e0));import{z}from'zod';const COMMANDS=[{'name':a74_0x12fb26(0x10b),'description':a74_0x12fb26(0xa0),'category':a74_0x12fb26(0x153),'keywords':[a74_0x12fb26(0x7a),a74_0x12fb26(0x7e),'db',a74_0x12fb26(0x109),a74_0x12fb26(0xf4),'all'],'examples':[a74_0x12fb26(0x13a),a74_0x12fb26(0xc6),a74_0x12fb26(0x91)]},{'name':a74_0x12fb26(0x12d),'description':a74_0x12fb26(0x9e),'category':a74_0x12fb26(0x153),'keywords':['table',a74_0x12fb26(0x11d),a74_0x12fb26(0x109),a74_0x12fb26(0xf4),a74_0x12fb26(0xa9)],'examples':['tdx\x20table\x20list',a74_0x12fb26(0xee),'tdx\x20tables\x20--database\x20mydb']},{'name':a74_0x12fb26(0xf4),'description':'Show\x20table\x20contents\x20(SELECT\x20*\x20with\x20limit)','category':a74_0x12fb26(0x153),'keywords':['show',a74_0x12fb26(0xf9),a74_0x12fb26(0x10f),'data',a74_0x12fb26(0xdd),a74_0x12fb26(0x76),'records'],'examples':[a74_0x12fb26(0xfd),a74_0x12fb26(0x93)]},{'name':'describe','description':a74_0x12fb26(0x168),'category':a74_0x12fb26(0x153),'keywords':[a74_0x12fb26(0xb1),'schema',a74_0x12fb26(0xc4),a74_0x12fb26(0x8e),'structure',a74_0x12fb26(0xe2)],'examples':[a74_0x12fb26(0x13f),a74_0x12fb26(0xd6)]},{'name':a74_0x12fb26(0x15c),'description':a74_0x12fb26(0x113),'category':'Data','keywords':[a74_0x12fb26(0x15c),a74_0x12fb26(0xcb),'select',a74_0x12fb26(0xd7),a74_0x12fb26(0x85),a74_0x12fb26(0xd5),a74_0x12fb26(0x130)],'examples':[a74_0x12fb26(0xe0),a74_0x12fb26(0x133)]},{'name':a74_0x12fb26(0xd9),'description':a74_0x12fb26(0x15a),'category':'Data','keywords':[a74_0x12fb26(0x106),a74_0x12fb26(0x164),'list','history','queries'],'examples':['tdx\x20job\x20list',a74_0x12fb26(0xc2),'tdx\x20jobs\x20--limit\x2020']},{'name':a74_0x12fb26(0x15f),'description':a74_0x12fb26(0x156),'category':a74_0x12fb26(0x153),'keywords':['job',a74_0x12fb26(0xf4),a74_0x12fb26(0x118),a74_0x12fb26(0x131),a74_0x12fb26(0x114)],'examples':[a74_0x12fb26(0x166)]},{'name':'job\x20result','description':'Get\x20job\x20results','category':a74_0x12fb26(0x153),'keywords':[a74_0x12fb26(0x106),a74_0x12fb26(0x169),a74_0x12fb26(0x10d),a74_0x12fb26(0x75)],'examples':[a74_0x12fb26(0x159)]},{'name':'job\x20kill','description':'Kill\x20a\x20running\x20job','category':a74_0x12fb26(0x153),'keywords':[a74_0x12fb26(0x106),'kill',a74_0x12fb26(0x14d),a74_0x12fb26(0xbc),a74_0x12fb26(0x108)],'examples':['tdx\x20job\x20kill\x2012345']},{'name':a74_0x12fb26(0x15b),'description':a74_0x12fb26(0x126),'category':a74_0x12fb26(0x153),'keywords':[a74_0x12fb26(0x137),a74_0x12fb26(0x95),'digdag',a74_0x12fb26(0x109)],'examples':['tdx\x20workflow\x20projects',a74_0x12fb26(0x98)]},{'name':a74_0x12fb26(0x16b),'description':'List\x20workflow\x20sessions','category':'Data','keywords':[a74_0x12fb26(0x137),'sessions',a74_0x12fb26(0xbf),'executions'],'examples':[a74_0x12fb26(0x7c),'tdx\x20wf\x20sessions\x20--limit\x2010']},{'name':a74_0x12fb26(0xb7),'description':'View\x20workflow\x20logs','category':a74_0x12fb26(0x153),'keywords':['workflow',a74_0x12fb26(0x155),a74_0x12fb26(0x10d),'debug'],'examples':[a74_0x12fb26(0x10a)]},{'name':a74_0x12fb26(0xf1),'description':a74_0x12fb26(0xce),'category':a74_0x12fb26(0x153),'keywords':[a74_0x12fb26(0x137),a74_0x12fb26(0xd5),a74_0x12fb26(0x85),a74_0x12fb26(0xbe),a74_0x12fb26(0x11b)],'examples':['tdx\x20workflow\x20run\x20myproject/myworkflow']},{'name':'segment\x20list','description':a74_0x12fb26(0x78),'category':'CDP','keywords':[a74_0x12fb26(0x96),a74_0x12fb26(0x12c),a74_0x12fb26(0xca),'list',a74_0x12fb26(0xd1)],'examples':['tdx\x20segment\x20list',a74_0x12fb26(0xe4),a74_0x12fb26(0x110)]},{'name':a74_0x12fb26(0x139),'description':'Show\x20segment\x20details','category':a74_0x12fb26(0x80),'keywords':[a74_0x12fb26(0x96),a74_0x12fb26(0xf4),a74_0x12fb26(0x118),a74_0x12fb26(0x114),a74_0x12fb26(0xf9)],'examples':['tdx\x20segment\x20show\x20\x22My\x20Segment\x22']},{'name':a74_0x12fb26(0x87),'description':a74_0x12fb26(0xec),'category':a74_0x12fb26(0x80),'keywords':[a74_0x12fb26(0x96),a74_0x12fb26(0xcb),a74_0x12fb26(0x15c),a74_0x12fb26(0xc8)],'examples':[a74_0x12fb26(0xab)]},{'name':a74_0x12fb26(0x111),'description':'Pull\x20segment\x20definition\x20to\x20YAML','category':'CDP','keywords':[a74_0x12fb26(0x96),a74_0x12fb26(0x14e),a74_0x12fb26(0x75),a74_0x12fb26(0x119),a74_0x12fb26(0x13b)],'examples':[a74_0x12fb26(0x82)]},{'name':a74_0x12fb26(0x8f),'description':a74_0x12fb26(0xaf),'category':a74_0x12fb26(0x80),'keywords':[a74_0x12fb26(0x96),'push',a74_0x12fb26(0x13c),a74_0x12fb26(0x135),'create',a74_0x12fb26(0x157)],'examples':[a74_0x12fb26(0x171),'tdx\x20sg\x20push\x20segment.yaml\x20--dry-run']},{'name':a74_0x12fb26(0xa2),'description':a74_0x12fb26(0x173),'category':a74_0x12fb26(0x80),'keywords':['segment',a74_0x12fb26(0x10e),'attributes','columns','schema'],'examples':[a74_0x12fb26(0xb4),a74_0x12fb26(0xe6)]},{'name':'parent-segment\x20list','description':a74_0x12fb26(0x12a),'category':a74_0x12fb26(0x80),'keywords':[a74_0x12fb26(0xfc),a74_0x12fb26(0x96),a74_0x12fb26(0x16c),'list',a74_0x12fb26(0xf3)],'examples':['tdx\x20parent-segment\x20list',a74_0x12fb26(0xfb)]},{'name':a74_0x12fb26(0xa1),'description':'Pull\x20parent\x20segment\x20definition\x20to\x20YAML','category':a74_0x12fb26(0x80),'keywords':[a74_0x12fb26(0xfc),a74_0x12fb26(0x96),a74_0x12fb26(0x14e),a74_0x12fb26(0x75),a74_0x12fb26(0x119)],'examples':['tdx\x20parent-segment\x20pull\x20\x22My\x20Parent\x22\x20-o\x20parent.yaml',a74_0x12fb26(0x11e)]},{'name':a74_0x12fb26(0xda),'description':a74_0x12fb26(0xa4),'category':a74_0x12fb26(0x80),'keywords':[a74_0x12fb26(0xfc),a74_0x12fb26(0x96),a74_0x12fb26(0x161),a74_0x12fb26(0x13c),'create'],'examples':[a74_0x12fb26(0x147),a74_0x12fb26(0x121)]},{'name':a74_0x12fb26(0x86),'description':'Validate\x20parent\x20segment\x20configuration','category':a74_0x12fb26(0x80),'keywords':[a74_0x12fb26(0xfc),a74_0x12fb26(0x96),a74_0x12fb26(0x14b),a74_0x12fb26(0xeb),'verify'],'examples':['tdx\x20parent-segment\x20validate\x20parent.yaml',a74_0x12fb26(0xae)]},{'name':a74_0x12fb26(0x13d),'description':a74_0x12fb26(0x15e),'category':'CDP','keywords':['parent','segment',a74_0x12fb26(0x10f),a74_0x12fb26(0xe5),a74_0x12fb26(0xff)],'examples':[a74_0x12fb26(0x170),a74_0x12fb26(0x129)]},{'name':'journey\x20list','description':a74_0x12fb26(0x172),'category':'CDP','keywords':[a74_0x12fb26(0x16d),'journeys',a74_0x12fb26(0x109),'orchestration'],'examples':[a74_0x12fb26(0xd2),a74_0x12fb26(0x94)]},{'name':a74_0x12fb26(0xa6),'description':a74_0x12fb26(0xed),'category':a74_0x12fb26(0x80),'keywords':[a74_0x12fb26(0x16d),a74_0x12fb26(0xf9),'show',a74_0x12fb26(0x118)],'examples':[a74_0x12fb26(0x83)]},{'name':a74_0x12fb26(0x116),'description':a74_0x12fb26(0x10c),'category':a74_0x12fb26(0x80),'keywords':[a74_0x12fb26(0x16d),a74_0x12fb26(0x14e),a74_0x12fb26(0x75),a74_0x12fb26(0x119)],'examples':[a74_0x12fb26(0x120)]},{'name':a74_0x12fb26(0x148),'description':a74_0x12fb26(0xc9),'category':'CDP','keywords':[a74_0x12fb26(0x16d),a74_0x12fb26(0x161),a74_0x12fb26(0x13c),a74_0x12fb26(0x84)],'examples':[a74_0x12fb26(0xd3)]},{'name':'activations','description':'List\x20segment\x20activations\x20(exports)','category':a74_0x12fb26(0x80),'keywords':[a74_0x12fb26(0x7f),a74_0x12fb26(0x154),a74_0x12fb26(0x119),a74_0x12fb26(0x89),a74_0x12fb26(0xf2)],'examples':[a74_0x12fb26(0xad),a74_0x12fb26(0x158)]},{'name':a74_0x12fb26(0x102),'description':a74_0x12fb26(0x16f),'category':a74_0x12fb26(0x80),'keywords':[a74_0x12fb26(0x11c),a74_0x12fb26(0x12e),a74_0x12fb26(0xf2),a74_0x12fb26(0x109)],'examples':[a74_0x12fb26(0xa8)]},{'name':'connection\x20schema','description':a74_0x12fb26(0xdb),'category':a74_0x12fb26(0x80),'keywords':[a74_0x12fb26(0x11c),a74_0x12fb26(0xa9),a74_0x12fb26(0xe8),a74_0x12fb26(0xde)],'examples':[a74_0x12fb26(0x146),a74_0x12fb26(0x122)]},{'name':a74_0x12fb26(0x123),'description':a74_0x12fb26(0x101),'category':'AI','keywords':['agent',a74_0x12fb26(0x160),'llm','ai',a74_0x12fb26(0x109)],'examples':[a74_0x12fb26(0x90),a74_0x12fb26(0xfa)]},{'name':a74_0x12fb26(0x81),'description':'Show\x20agent\x20details','category':'AI','keywords':['agent',a74_0x12fb26(0xf4),a74_0x12fb26(0x118),a74_0x12fb26(0x114)],'examples':[a74_0x12fb26(0xb3)]},{'name':a74_0x12fb26(0x74),'description':a74_0x12fb26(0x88),'category':'AI','keywords':[a74_0x12fb26(0x13e),a74_0x12fb26(0x14e),a74_0x12fb26(0x75),a74_0x12fb26(0x119)],'examples':[a74_0x12fb26(0xef)]},{'name':a74_0x12fb26(0xd4),'description':a74_0x12fb26(0xf5),'category':'AI','keywords':['agent','push',a74_0x12fb26(0x13c),'create',a74_0x12fb26(0x144)],'examples':[a74_0x12fb26(0x104)]},{'name':a74_0x12fb26(0xea),'description':a74_0x12fb26(0x14f),'category':'AI','keywords':[a74_0x12fb26(0xea),a74_0x12fb26(0x140),'ai',a74_0x12fb26(0x9b),a74_0x12fb26(0xc3),a74_0x12fb26(0xb8)],'examples':[a74_0x12fb26(0x138),a74_0x12fb26(0x9d)]},{'name':'chats','description':a74_0x12fb26(0x105),'category':'AI','keywords':['chat',a74_0x12fb26(0x167),a74_0x12fb26(0x141),'history','conversations'],'examples':[a74_0x12fb26(0x163),'tdx\x20chats\x20--limit\x2010']},{'name':a74_0x12fb26(0x16e),'description':'List\x20available\x20LLM\x20models','category':'AI','keywords':[a74_0x12fb26(0x140),a74_0x12fb26(0x103),'ai','list'],'examples':[a74_0x12fb26(0xb5)]},{'name':a74_0x12fb26(0xbb),'description':a74_0x12fb26(0xb9),'category':'AI','keywords':['llm',a74_0x12fb26(0x95),'ai','list'],'examples':['tdx\x20llm\x20projects']},{'name':a74_0x12fb26(0xc5),'description':a74_0x12fb26(0x15d),'category':a74_0x12fb26(0x12f),'keywords':[a74_0x12fb26(0xc5),a74_0x12fb26(0x97),'context',a74_0x12fb26(0x117),a74_0x12fb26(0x142)],'examples':[a74_0x12fb26(0x9a),'tdx\x20use\x20--database\x20mydb',a74_0x12fb26(0x151)]},{'name':a74_0x12fb26(0xe7),'description':a74_0x12fb26(0xc1),'category':'Context','keywords':['unset',a74_0x12fb26(0xb2),a74_0x12fb26(0xfe),'context'],'examples':[a74_0x12fb26(0xd0),a74_0x12fb26(0xe3)]},{'name':a74_0x12fb26(0x16a),'description':a74_0x12fb26(0xd8),'category':a74_0x12fb26(0x12f),'keywords':['profile',a74_0x12fb26(0xac),a74_0x12fb26(0x109),a74_0x12fb26(0xe8)],'examples':[a74_0x12fb26(0xb0),a74_0x12fb26(0x8d)]},{'name':a74_0x12fb26(0xdf),'description':a74_0x12fb26(0xdc),'category':a74_0x12fb26(0x12f),'keywords':[a74_0x12fb26(0x162),'show',a74_0x12fb26(0x118),a74_0x12fb26(0xe8)],'examples':[a74_0x12fb26(0x11f)]},{'name':a74_0x12fb26(0x99),'description':'Show\x20authentication\x20status','category':a74_0x12fb26(0x12f),'keywords':[a74_0x12fb26(0x99),a74_0x12fb26(0x115),'status',a74_0x12fb26(0xaa)],'examples':['tdx\x20auth',a74_0x12fb26(0xa3)]},{'name':a74_0x12fb26(0xe9),'description':a74_0x12fb26(0x100),'category':a74_0x12fb26(0x12f),'keywords':['user','me','whoami',a74_0x12fb26(0xa7)],'examples':[a74_0x12fb26(0xc7)]},{'name':a74_0x12fb26(0x125),'description':a74_0x12fb26(0x14c),'category':a74_0x12fb26(0x12f),'keywords':[a74_0x12fb26(0x125),a74_0x12fb26(0x109),a74_0x12fb26(0x127),a74_0x12fb26(0xb6)],'examples':[a74_0x12fb26(0x7d),a74_0x12fb26(0xf6)]},{'name':'api','description':'Make\x20raw\x20HTTP\x20requests\x20to\x20TD\x20APIs','category':a74_0x12fb26(0x9c),'keywords':[a74_0x12fb26(0xf0),a74_0x12fb26(0xf7),a74_0x12fb26(0x143),a74_0x12fb26(0xc0),a74_0x12fb26(0x79)],'examples':[a74_0x12fb26(0x14a),a74_0x12fb26(0xba),a74_0x12fb26(0x132)]}];export const TdxSearchInputSchema=z[a74_0x12fb26(0x145)]({'query':z[a74_0x12fb26(0x8a)]()[a74_0x12fb26(0xb1)]('Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)'),'category':z[a74_0x12fb26(0x8b)](['Data',a74_0x12fb26(0x80),'AI',a74_0x12fb26(0x12f),a74_0x12fb26(0x9c)])[a74_0x12fb26(0x149)]()['describe']('Optional\x20filter\x20by\x20category')});export function searchCommands(_0x5607fc){const _0x325245=a74_0x12fb26,{query:_0x46766f,category:_0x297b94}=_0x5607fc,_0x2609eb=_0x46766f[_0x325245(0x9f)](),_0x5b9e5c=_0x2609eb[_0x325245(0x12b)](/\s+/)[_0x325245(0x124)](_0x40a6c1=>_0x40a6c1[_0x325245(0x11a)]>0x0);let _0x5b3d49=COMMANDS;_0x297b94&&(_0x5b3d49=_0x5b3d49[_0x325245(0x124)](_0x2ebec3=>_0x2ebec3[_0x325245(0xbd)]===_0x297b94));const _0x468967=_0x5b3d49['map'](_0x3cce42=>{const _0x13cc28=_0x325245;let _0x101edc=0x0;_0x3cce42[_0x13cc28(0x107)][_0x13cc28(0x9f)]()===_0x2609eb&&(_0x101edc+=0x64);_0x3cce42[_0x13cc28(0x107)][_0x13cc28(0x9f)]()[_0x13cc28(0x150)](_0x2609eb)&&(_0x101edc+=0x32);_0x3cce42['description'][_0x13cc28(0x9f)]()[_0x13cc28(0x150)](_0x2609eb)&&(_0x101edc+=0x1e);for(const _0x21e6ae of _0x5b9e5c){for(const _0x47a829 of _0x3cce42['keywords']){if(_0x47a829===_0x21e6ae)_0x101edc+=0x14;else(_0x47a829[_0x13cc28(0x150)](_0x21e6ae)||_0x21e6ae[_0x13cc28(0x150)](_0x47a829))&&(_0x101edc+=0xa);}_0x3cce42[_0x13cc28(0x107)]['toLowerCase']()[_0x13cc28(0x150)](_0x21e6ae)&&(_0x101edc+=0xf),_0x3cce42[_0x13cc28(0xcd)][_0x13cc28(0x9f)]()[_0x13cc28(0x150)](_0x21e6ae)&&(_0x101edc+=0x5);}return{'name':_0x3cce42[_0x13cc28(0x107)],'description':_0x3cce42[_0x13cc28(0xcd)],'category':_0x3cce42[_0x13cc28(0xbd)],'examples':_0x3cce42[_0x13cc28(0x7b)],'score':_0x101edc};});return _0x468967[_0x325245(0x124)](_0x485544=>_0x485544[_0x325245(0xf8)]>0x0)[_0x325245(0xcc)]((_0xbb12e1,_0x538305)=>_0x538305['score']-_0xbb12e1[_0x325245(0xf8)])[_0x325245(0x152)](0x0,0xa);}function a74_0x1345(){const _0x42f9c0=['agent','tdx\x20describe\x20mydb.users','llm','sessions','select','raw','deploy','object','tdx\x20connection\x20schema\x20salesforce','tdx\x20parent-segment\x20push\x20parent.yaml','journey\x20push','optional','tdx\x20api\x20/v3/database/list','validate','List\x20users\x20in\x20account','cancel','pull','Chat\x20with\x20an\x20LLM\x20agent','includes','tdx\x20use\x20--parent-segment\x20\x22My\x20PS\x22','slice','Data','activations','logs','Show\x20job\x20details','update','tdx\x20activations\x20--segment\x20\x22My\x20Segment\x22','tdx\x20job\x20result\x2012345','List\x20query\x20jobs','workflow\x20projects','query','Set\x20session\x20context\x20(database,\x20parent\x20segment,\x20etc.)','Preview\x20parent\x20segment\x20data','job\x20show','agents','push','profile','tdx\x20chats','jobs','16uaGAhn','tdx\x20job\x20show\x2012345','chats','Describe\x20table\x20schema\x20(columns,\x20types)','result','profile\x20list','workflow\x20sessions','master','journey','llm\x20models','List\x20data\x20connections','tdx\x20parent-segment\x20preview','tdx\x20segment\x20push\x20segment.yaml','List\x20customer\x20journeys','List\x20available\x20segment\x20fields','agent\x20pull','download','rows','4692974aISSdj','List\x20audience\x20segments','curl','database','examples','tdx\x20workflow\x20sessions\x20myproject','tdx\x20users','databases','activation','CDP','agent\x20show','tdx\x20segment\x20pull\x20\x22My\x20Segment\x22\x20-o\x20segment.yaml','tdx\x20journey\x20view\x20\x22My\x20Journey\x22','create','execute','parent-segment\x20validate','segment\x20sql','Pull\x20agent\x20definition\x20to\x20YAML','sync','string','enum','8lYUXVX','tdx\x20profiles','types','segment\x20push','tdx\x20agent\x20list','tdx\x20databases\x20mydb*','915936AxUSTC','tdx\x20show\x20mydb.users\x20--limit\x20100','tdx\x20journeys','projects','segment','set','tdx\x20wf\x20projects','auth','tdx\x20use\x20mydb','conversation','Utilities','tdx\x20chat\x20--agent\x20myproject/myagent\x20\x22What\x20is\x20TD?\x22','List\x20tables\x20in\x20a\x20database','toLowerCase','List\x20all\x20databases','parent-segment\x20pull','segment\x20fields','tdx\x20auth\x20--profile\x20myprofile','Push\x20parent\x20segment\x20definition\x20from\x20YAML','1439469rYGeTS','journey\x20view','account','tdx\x20connection\x20list','schema','login','tdx\x20segment\x20sql\x20\x22My\x20Segment\x22','profiles','tdx\x20activations','tdx\x20ps\x20validate','Push\x20segment\x20definition\x20from\x20YAML','tdx\x20profile\x20list','describe','clear','tdx\x20agent\x20show\x20myproject/myagent','tdx\x20segment\x20fields','tdx\x20llm\x20models','members','workflow\x20logs','message','List\x20LLM\x20projects','tdx\x20api\x20/v1/audiences\x20--type\x20cdp','llm\x20projects','stop','category','start','runs','request','Clear\x20session\x20context','tdx\x20jobs','ask','columns','use','tdx\x20databases','tdx\x20user','generate','Push\x20journey\x20definition\x20from\x20YAML','audience','sql','sort','description','Run\x20a\x20workflow','3sXeEhQ','tdx\x20unset\x20--database','cdp','tdx\x20journey\x20list','tdx\x20journey\x20push\x20journey.yaml','agent\x20push','run','tdx\x20describe\x20mydb.events','trino','List\x20configured\x20profiles','job\x20list','parent-segment\x20push','Show\x20connection\x20schema\x20for\x20activations','Show\x20profile\x20details','contents','settings','profile\x20show','tdx\x20query\x20\x22SELECT\x20*\x20FROM\x20mydb.users\x20LIMIT\x2010\x22','19315gxhOje','definition','tdx\x20unset\x20--all','tdx\x20segments','sample','tdx\x20sg\x20fields','unset','config','user','chat','check','Generate\x20SQL\x20for\x20a\x20segment','View\x20journey\x20details','tdx\x20tables\x20mydb.*','tdx\x20agent\x20pull\x20myproject/myagent\x20-o\x20agent.yaml','api','workflow\x20run','destination','customer','show','Push\x20agent\x20definition\x20from\x20YAML','tdx\x20user\x20list','http','score','view','tdx\x20agents','tdx\x20ps\x20list','parent','tdx\x20show\x20mydb.users','reset','data','Show\x20current\x20user\x20info','List\x20LLM\x20agents','connection\x20list','models','tdx\x20agent\x20push\x20agent.yaml','List\x20chat\x20sessions','job','name','abort','list','tdx\x20workflow\x20logs\x20<attempt_id>','database\x20list','Pull\x20journey\x20definition\x20to\x20YAML','output','fields','preview','tdx\x20segments\x20--recursive','segment\x20pull','928302VFgcgi','Execute\x20SQL\x20query\x20using\x20Trino','info','authentication','journey\x20pull','switch','details','export','length','trigger','connection','tables','tdx\x20ps\x20pull','tdx\x20profile\x20show\x20myprofile','tdx\x20journey\x20pull\x20\x22My\x20Journey\x22\x20-o\x20journey.yaml','tdx\x20ps\x20push\x20--dry-run','tdx\x20connection\x20schema\x20google_ads','agent\x20list','filter','users','List\x20workflow\x20projects','team','1995628RNIKDd','tdx\x20ps\x20preview\x20--limit\x2010','List\x20parent\x20segments\x20(customer\x20masters)','split','segments','table\x20list','connections','Context','presto','status','tdx\x20api\x20-X\x20POST\x20--data\x20\x27{\x22query\x22:\x22SELECT\x201\x22}\x27\x20/v3/job/issue/hive/mydb','tdx\x20query\x20\x22SELECT\x20count(*)\x20FROM\x20mydb.events\x22','2403890rIScAm','import','10AeJTdO','workflow','tdx\x20chat\x20\x22Hello\x22','segment\x20show','tdx\x20database\x20list','yaml','upload','parent-segment\x20preview'];a74_0x1345=function(){return _0x42f9c0;};return a74_0x1345();}
1
+ function a74_0x1bef(_0x178cc0,_0x5334aa){_0x178cc0=_0x178cc0-0x7c;const _0x29cb7e=a74_0x29cb();let _0x1bef6f=_0x29cb7e[_0x178cc0];return _0x1bef6f;}const a74_0x2260bd=a74_0x1bef;(function(_0x5e4396,_0x3e1e0e){const _0x851dee=a74_0x1bef,_0x5c06e1=_0x5e4396();while(!![]){try{const _0x2269cc=-parseInt(_0x851dee(0x11a))/0x1+parseInt(_0x851dee(0x7c))/0x2*(parseInt(_0x851dee(0x8e))/0x3)+parseInt(_0x851dee(0xa3))/0x4+-parseInt(_0x851dee(0x150))/0x5+parseInt(_0x851dee(0x104))/0x6*(-parseInt(_0x851dee(0xc8))/0x7)+-parseInt(_0x851dee(0x8a))/0x8+-parseInt(_0x851dee(0xc9))/0x9*(-parseInt(_0x851dee(0x111))/0xa);if(_0x2269cc===_0x3e1e0e)break;else _0x5c06e1['push'](_0x5c06e1['shift']());}catch(_0x3342c7){_0x5c06e1['push'](_0x5c06e1['shift']());}}}(a74_0x29cb,0x36eb3));import{z}from'zod';const COMMANDS=[{'name':'database\x20list','description':'List\x20all\x20databases','category':a74_0x2260bd(0xfb),'keywords':[a74_0x2260bd(0x169),a74_0x2260bd(0xf2),'db','list',a74_0x2260bd(0x117),'all'],'examples':['tdx\x20database\x20list',a74_0x2260bd(0x129),'tdx\x20databases\x20mydb*']},{'name':a74_0x2260bd(0x82),'description':a74_0x2260bd(0x144),'category':a74_0x2260bd(0xfb),'keywords':[a74_0x2260bd(0xf6),a74_0x2260bd(0xab),a74_0x2260bd(0x163),a74_0x2260bd(0x117),a74_0x2260bd(0x14a)],'examples':[a74_0x2260bd(0x14b),'tdx\x20tables\x20mydb.*',a74_0x2260bd(0xfd)]},{'name':a74_0x2260bd(0x117),'description':a74_0x2260bd(0xfe),'category':a74_0x2260bd(0xfb),'keywords':['show',a74_0x2260bd(0xd5),a74_0x2260bd(0x11c),'data','contents',a74_0x2260bd(0xdd),a74_0x2260bd(0x109)],'examples':[a74_0x2260bd(0xbd),a74_0x2260bd(0xee)]},{'name':a74_0x2260bd(0x11e),'description':a74_0x2260bd(0xd2),'category':'Data','keywords':['describe',a74_0x2260bd(0x14a),'columns',a74_0x2260bd(0x122),a74_0x2260bd(0xb6),'definition'],'examples':[a74_0x2260bd(0x157),a74_0x2260bd(0xf5)]},{'name':a74_0x2260bd(0xc7),'description':'Execute\x20SQL\x20query\x20using\x20Trino','category':a74_0x2260bd(0xfb),'keywords':[a74_0x2260bd(0xc7),a74_0x2260bd(0x168),a74_0x2260bd(0xe2),a74_0x2260bd(0x162),a74_0x2260bd(0x84),'run',a74_0x2260bd(0x158)],'examples':[a74_0x2260bd(0x132),'tdx\x20query\x20\x22SELECT\x20count(*)\x20FROM\x20mydb.events\x22']},{'name':a74_0x2260bd(0xc0),'description':a74_0x2260bd(0x83),'category':a74_0x2260bd(0xfb),'keywords':[a74_0x2260bd(0x135),a74_0x2260bd(0x81),'list','history','queries'],'examples':[a74_0x2260bd(0x98),'tdx\x20jobs',a74_0x2260bd(0xf7)]},{'name':a74_0x2260bd(0x12c),'description':a74_0x2260bd(0x97),'category':a74_0x2260bd(0xfb),'keywords':['job',a74_0x2260bd(0x117),a74_0x2260bd(0x87),a74_0x2260bd(0x15c),a74_0x2260bd(0x165)],'examples':[a74_0x2260bd(0x160)]},{'name':'job\x20result','description':a74_0x2260bd(0xea),'category':a74_0x2260bd(0xfb),'keywords':[a74_0x2260bd(0x135),a74_0x2260bd(0x10e),a74_0x2260bd(0x110),a74_0x2260bd(0xb1)],'examples':[a74_0x2260bd(0x107)]},{'name':'job\x20kill','description':'Kill\x20a\x20running\x20job','category':a74_0x2260bd(0xfb),'keywords':[a74_0x2260bd(0x135),'kill',a74_0x2260bd(0xd0),a74_0x2260bd(0x8c),a74_0x2260bd(0xb0)],'examples':[a74_0x2260bd(0x12b)]},{'name':a74_0x2260bd(0x14f),'description':a74_0x2260bd(0x166),'category':'Data','keywords':[a74_0x2260bd(0x115),'projects',a74_0x2260bd(0x14e),a74_0x2260bd(0x163)],'examples':[a74_0x2260bd(0xae),a74_0x2260bd(0xaf)]},{'name':a74_0x2260bd(0xf9),'description':a74_0x2260bd(0x9d),'category':a74_0x2260bd(0xfb),'keywords':[a74_0x2260bd(0x115),a74_0x2260bd(0x138),a74_0x2260bd(0x119),'executions'],'examples':['tdx\x20workflow\x20sessions\x20myproject',a74_0x2260bd(0xe6)]},{'name':a74_0x2260bd(0x15a),'description':a74_0x2260bd(0x7f),'category':'Data','keywords':[a74_0x2260bd(0x115),a74_0x2260bd(0x103),'output',a74_0x2260bd(0x15f)],'examples':[a74_0x2260bd(0x137)]},{'name':'workflow\x20run','description':a74_0x2260bd(0xb3),'category':'Data','keywords':[a74_0x2260bd(0x115),a74_0x2260bd(0x7e),a74_0x2260bd(0x84),'start',a74_0x2260bd(0x10f)],'examples':[a74_0x2260bd(0x136)]},{'name':a74_0x2260bd(0xe9),'description':'List\x20audience\x20segments','category':a74_0x2260bd(0x124),'keywords':[a74_0x2260bd(0x13a),a74_0x2260bd(0xf4),a74_0x2260bd(0x116),a74_0x2260bd(0x163),'cdp'],'examples':[a74_0x2260bd(0x92),'tdx\x20segments',a74_0x2260bd(0x96)]},{'name':'segment\x20show','description':'Show\x20segment\x20details','category':a74_0x2260bd(0x124),'keywords':[a74_0x2260bd(0x13a),a74_0x2260bd(0x117),a74_0x2260bd(0x87),'info',a74_0x2260bd(0xd5)],'examples':['tdx\x20segment\x20show\x20\x22My\x20Segment\x22']},{'name':'segment\x20sql','description':a74_0x2260bd(0x167),'category':'CDP','keywords':['segment',a74_0x2260bd(0x168),a74_0x2260bd(0xc7),a74_0x2260bd(0xac)],'examples':[a74_0x2260bd(0x9a)]},{'name':a74_0x2260bd(0x15d),'description':'Pull\x20segment\x20definition\x20to\x20YAML','category':'CDP','keywords':[a74_0x2260bd(0x13a),a74_0x2260bd(0xd9),a74_0x2260bd(0xb1),'export','yaml'],'examples':['tdx\x20segment\x20pull\x20\x22My\x20Segment\x22\x20-o\x20segment.yaml']},{'name':'segment\x20push','description':a74_0x2260bd(0x9f),'category':a74_0x2260bd(0x124),'keywords':[a74_0x2260bd(0x13a),a74_0x2260bd(0x11b),a74_0x2260bd(0x14c),'import',a74_0x2260bd(0xed),a74_0x2260bd(0xd8)],'examples':[a74_0x2260bd(0xe0),a74_0x2260bd(0x108)]},{'name':a74_0x2260bd(0x15e),'description':a74_0x2260bd(0xde),'category':a74_0x2260bd(0x124),'keywords':[a74_0x2260bd(0x13a),a74_0x2260bd(0xb2),a74_0x2260bd(0x152),a74_0x2260bd(0x123),a74_0x2260bd(0x14a)],'examples':[a74_0x2260bd(0x154),a74_0x2260bd(0x10d)]},{'name':a74_0x2260bd(0x114),'description':'List\x20parent\x20segments\x20(customer\x20masters)','category':'CDP','keywords':[a74_0x2260bd(0x100),a74_0x2260bd(0x13a),a74_0x2260bd(0x85),a74_0x2260bd(0x163),a74_0x2260bd(0x12a)],'examples':[a74_0x2260bd(0x16a),a74_0x2260bd(0xe4)]},{'name':a74_0x2260bd(0xc2),'description':'Pull\x20parent\x20segment\x20definition\x20to\x20YAML','category':'CDP','keywords':[a74_0x2260bd(0x100),a74_0x2260bd(0x13a),a74_0x2260bd(0xd9),a74_0x2260bd(0xb1),a74_0x2260bd(0xa6)],'examples':['tdx\x20parent-segment\x20pull\x20\x22My\x20Parent\x22\x20-o\x20parent.yaml','tdx\x20ps\x20pull']},{'name':a74_0x2260bd(0x131),'description':'Push\x20parent\x20segment\x20definition\x20from\x20YAML','category':a74_0x2260bd(0x124),'keywords':['parent',a74_0x2260bd(0x13a),a74_0x2260bd(0x11b),a74_0x2260bd(0x14c),a74_0x2260bd(0xed)],'examples':['tdx\x20parent-segment\x20push\x20parent.yaml','tdx\x20ps\x20push\x20--dry-run']},{'name':a74_0x2260bd(0xb7),'description':a74_0x2260bd(0x113),'category':a74_0x2260bd(0x124),'keywords':[a74_0x2260bd(0x100),a74_0x2260bd(0x13a),'validate',a74_0x2260bd(0xcc),a74_0x2260bd(0x9e)],'examples':[a74_0x2260bd(0x11d),a74_0x2260bd(0xa2)]},{'name':'parent-segment\x20preview','description':a74_0x2260bd(0x112),'category':a74_0x2260bd(0x124),'keywords':[a74_0x2260bd(0x100),a74_0x2260bd(0x13a),'preview',a74_0x2260bd(0xcf),a74_0x2260bd(0x128)],'examples':[a74_0x2260bd(0xcb),a74_0x2260bd(0x93)]},{'name':a74_0x2260bd(0xad),'description':a74_0x2260bd(0xba),'category':'CDP','keywords':['journey',a74_0x2260bd(0xc5),'list',a74_0x2260bd(0xb4)],'examples':['tdx\x20journey\x20list',a74_0x2260bd(0x121)]},{'name':a74_0x2260bd(0x151),'description':a74_0x2260bd(0xd7),'category':a74_0x2260bd(0x124),'keywords':[a74_0x2260bd(0x89),'view',a74_0x2260bd(0x117),a74_0x2260bd(0x87)],'examples':[a74_0x2260bd(0x139)]},{'name':'journey\x20pull','description':'Pull\x20journey\x20definition\x20to\x20YAML','category':a74_0x2260bd(0x124),'keywords':[a74_0x2260bd(0x89),a74_0x2260bd(0xd9),a74_0x2260bd(0xb1),a74_0x2260bd(0xa6)],'examples':['tdx\x20journey\x20pull\x20\x22My\x20Journey\x22\x20-o\x20journey.yaml']},{'name':a74_0x2260bd(0x105),'description':a74_0x2260bd(0x12e),'category':a74_0x2260bd(0x124),'keywords':[a74_0x2260bd(0x89),'push','upload',a74_0x2260bd(0xed)],'examples':[a74_0x2260bd(0xa1)]},{'name':a74_0x2260bd(0xef),'description':a74_0x2260bd(0xc6),'category':'CDP','keywords':[a74_0x2260bd(0x153),a74_0x2260bd(0xef),a74_0x2260bd(0xa6),a74_0x2260bd(0xdf),a74_0x2260bd(0x90)],'examples':[a74_0x2260bd(0x12d),a74_0x2260bd(0xda)]},{'name':'connection\x20list','description':a74_0x2260bd(0x8b),'category':a74_0x2260bd(0x124),'keywords':[a74_0x2260bd(0xe1),'connections',a74_0x2260bd(0x90),a74_0x2260bd(0x163)],'examples':[a74_0x2260bd(0x161)]},{'name':a74_0x2260bd(0x91),'description':a74_0x2260bd(0x134),'category':'CDP','keywords':[a74_0x2260bd(0xe1),'schema','config',a74_0x2260bd(0xfc)],'examples':[a74_0x2260bd(0x143),a74_0x2260bd(0xb9)]},{'name':'agent\x20list','description':a74_0x2260bd(0xa7),'category':'AI','keywords':['agent',a74_0x2260bd(0x13c),a74_0x2260bd(0x118),'ai',a74_0x2260bd(0x163)],'examples':[a74_0x2260bd(0x13b),a74_0x2260bd(0xb5)]},{'name':a74_0x2260bd(0xa8),'description':a74_0x2260bd(0xff),'category':'AI','keywords':['agent','show','details',a74_0x2260bd(0x165)],'examples':[a74_0x2260bd(0x10c)]},{'name':'agent\x20pull','description':a74_0x2260bd(0x126),'category':'AI','keywords':[a74_0x2260bd(0x13d),'pull',a74_0x2260bd(0xb1),a74_0x2260bd(0xa6)],'examples':[a74_0x2260bd(0xc3)]},{'name':a74_0x2260bd(0x8d),'description':a74_0x2260bd(0x148),'category':'AI','keywords':['agent',a74_0x2260bd(0x11b),'upload',a74_0x2260bd(0xed),a74_0x2260bd(0xbf)],'examples':[a74_0x2260bd(0x164)]},{'name':a74_0x2260bd(0x11f),'description':a74_0x2260bd(0x80),'category':'AI','keywords':[a74_0x2260bd(0x11f),'llm','ai','conversation',a74_0x2260bd(0x146),a74_0x2260bd(0x10b)],'examples':[a74_0x2260bd(0x8f),'tdx\x20chat\x20--agent\x20myproject/myagent\x20\x22What\x20is\x20TD?\x22']},{'name':a74_0x2260bd(0x141),'description':a74_0x2260bd(0xbc),'category':'AI','keywords':['chat',a74_0x2260bd(0x141),a74_0x2260bd(0x138),'history','conversations'],'examples':[a74_0x2260bd(0x14d),a74_0x2260bd(0xf0)]},{'name':'llm\x20models','description':a74_0x2260bd(0x102),'category':'AI','keywords':[a74_0x2260bd(0x118),a74_0x2260bd(0xe3),'ai',a74_0x2260bd(0x163)],'examples':['tdx\x20llm\x20models']},{'name':a74_0x2260bd(0xf3),'description':a74_0x2260bd(0xeb),'category':'AI','keywords':[a74_0x2260bd(0x118),a74_0x2260bd(0x94),'ai',a74_0x2260bd(0x163)],'examples':['tdx\x20llm\x20projects']},{'name':a74_0x2260bd(0xa9),'description':a74_0x2260bd(0xdc),'category':a74_0x2260bd(0x125),'keywords':[a74_0x2260bd(0xa9),a74_0x2260bd(0x140),'context',a74_0x2260bd(0xf1),a74_0x2260bd(0xe2)],'examples':['tdx\x20use\x20mydb',a74_0x2260bd(0x13e),'tdx\x20use\x20--parent-segment\x20\x22My\x20PS\x22']},{'name':a74_0x2260bd(0x145),'description':a74_0x2260bd(0xd3),'category':a74_0x2260bd(0x125),'keywords':[a74_0x2260bd(0x145),a74_0x2260bd(0xc4),a74_0x2260bd(0xb8),'context'],'examples':[a74_0x2260bd(0xcd),a74_0x2260bd(0xca)]},{'name':a74_0x2260bd(0x142),'description':a74_0x2260bd(0xaa),'category':a74_0x2260bd(0x125),'keywords':[a74_0x2260bd(0xfa),'profiles',a74_0x2260bd(0x163),a74_0x2260bd(0x13f)],'examples':['tdx\x20profile\x20list',a74_0x2260bd(0xc1)]},{'name':'profile\x20show','description':'Show\x20profile\x20details','category':a74_0x2260bd(0x125),'keywords':[a74_0x2260bd(0xfa),'show',a74_0x2260bd(0x87),a74_0x2260bd(0x13f)],'examples':[a74_0x2260bd(0xd4)]},{'name':a74_0x2260bd(0x133),'description':a74_0x2260bd(0xbb),'category':a74_0x2260bd(0x125),'keywords':[a74_0x2260bd(0x133),a74_0x2260bd(0x88),a74_0x2260bd(0x15c),'login'],'examples':[a74_0x2260bd(0xbe),'tdx\x20auth\x20--profile\x20myprofile']},{'name':a74_0x2260bd(0x10a),'description':a74_0x2260bd(0x159),'category':a74_0x2260bd(0x125),'keywords':['user','me',a74_0x2260bd(0x120),a74_0x2260bd(0xdb)],'examples':[a74_0x2260bd(0x127)]},{'name':'users','description':a74_0x2260bd(0xce),'category':'Context','keywords':[a74_0x2260bd(0x9c),'list',a74_0x2260bd(0x95),'members'],'examples':[a74_0x2260bd(0x7d),'tdx\x20user\x20list']},{'name':'api','description':'Make\x20raw\x20HTTP\x20requests\x20to\x20TD\x20APIs','category':a74_0x2260bd(0x86),'keywords':[a74_0x2260bd(0xa5),a74_0x2260bd(0x130),'raw',a74_0x2260bd(0xe7),'curl'],'examples':[a74_0x2260bd(0xa0),'tdx\x20api\x20/v1/audiences\x20--type\x20cdp','tdx\x20api\x20-X\x20POST\x20--data\x20\x27{\x22query\x22:\x22SELECT\x201\x22}\x27\x20/v3/job/issue/hive/mydb']}];export const TdxSearchInputSchema=z[a74_0x2260bd(0x106)]({'query':z[a74_0x2260bd(0x147)]()['describe'](a74_0x2260bd(0x9b)),'category':z[a74_0x2260bd(0x15b)]([a74_0x2260bd(0xfb),a74_0x2260bd(0x124),'AI',a74_0x2260bd(0x125),'Utilities'])[a74_0x2260bd(0xd6)]()[a74_0x2260bd(0x11e)]('Optional\x20filter\x20by\x20category')});function a74_0x29cb(){const _0x2bc55a=['tdx\x20jobs\x20--limit\x2020','examples','workflow\x20sessions','profile','Data','settings','tdx\x20tables\x20--database\x20mydb','Show\x20table\x20contents\x20(SELECT\x20*\x20with\x20limit)','Show\x20agent\x20details','parent','slice','List\x20available\x20LLM\x20models','logs','6LFVWaw','journey\x20push','object','tdx\x20job\x20result\x2012345','tdx\x20sg\x20push\x20segment.yaml\x20--dry-run','records','user','message','tdx\x20agent\x20show\x20myproject/myagent','tdx\x20sg\x20fields','result','trigger','output','643530KBNvdL','Preview\x20parent\x20segment\x20data','Validate\x20parent\x20segment\x20configuration','parent-segment\x20list','workflow','audience','show','llm','runs','103395zpFpJc','push','preview','tdx\x20parent-segment\x20validate\x20parent.yaml','describe','chat','whoami','tdx\x20journeys','types','columns','CDP','Context','Pull\x20agent\x20definition\x20to\x20YAML','tdx\x20user','data','tdx\x20databases','customer','tdx\x20job\x20kill\x2012345','job\x20show','tdx\x20activations','Push\x20journey\x20definition\x20from\x20YAML','length','http','parent-segment\x20push','tdx\x20query\x20\x22SELECT\x20*\x20FROM\x20mydb.users\x20LIMIT\x2010\x22','auth','Show\x20connection\x20schema\x20for\x20activations','job','tdx\x20workflow\x20run\x20myproject/myworkflow','tdx\x20workflow\x20logs\x20<attempt_id>','sessions','tdx\x20journey\x20view\x20\x22My\x20Journey\x22','segment','tdx\x20agent\x20list','agents','agent','tdx\x20use\x20--database\x20mydb','config','set','chats','profile\x20list','tdx\x20connection\x20schema\x20salesforce','List\x20tables\x20in\x20a\x20database','unset','ask','string','Push\x20agent\x20definition\x20from\x20YAML','name','schema','tdx\x20table\x20list','upload','tdx\x20chats','digdag','workflow\x20projects','266510EAFtqH','journey\x20view','attributes','activation','tdx\x20segment\x20fields','includes','toLowerCase','tdx\x20describe\x20mydb.users','presto','Show\x20current\x20user\x20info','workflow\x20logs','enum','status','segment\x20pull','segment\x20fields','debug','tdx\x20job\x20show\x2012345','tdx\x20connection\x20list','trino','list','tdx\x20agent\x20push\x20agent.yaml','info','List\x20workflow\x20projects','Generate\x20SQL\x20for\x20a\x20segment','sql','database','tdx\x20parent-segment\x20list','150674cliCVR','tdx\x20users','run','View\x20workflow\x20logs','Chat\x20with\x20an\x20LLM\x20agent','jobs','table\x20list','List\x20query\x20jobs','execute','master','Utilities','details','authentication','journey','479848mIxMyC','List\x20data\x20connections','stop','agent\x20push','9dGowSY','tdx\x20chat\x20\x22Hello\x22','destination','connection\x20schema','tdx\x20segment\x20list','tdx\x20ps\x20preview\x20--limit\x2010','projects','team','tdx\x20segments\x20--recursive','Show\x20job\x20details','tdx\x20job\x20list','sort','tdx\x20segment\x20sql\x20\x22My\x20Segment\x22','Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)','users','List\x20workflow\x20sessions','verify','Push\x20segment\x20definition\x20from\x20YAML','tdx\x20api\x20/v3/database/list','tdx\x20journey\x20push\x20journey.yaml','tdx\x20ps\x20validate','1082168fTLoEZ','split','api','export','List\x20LLM\x20agents','agent\x20show','use','List\x20configured\x20profiles','tables','generate','journey\x20list','tdx\x20workflow\x20projects','tdx\x20wf\x20projects','abort','download','fields','Run\x20a\x20workflow','orchestration','tdx\x20agents','structure','parent-segment\x20validate','reset','tdx\x20connection\x20schema\x20google_ads','List\x20customer\x20journeys','Show\x20authentication\x20status','List\x20chat\x20sessions','tdx\x20show\x20mydb.users','tdx\x20auth','deploy','job\x20list','tdx\x20profiles','parent-segment\x20pull','tdx\x20agent\x20pull\x20myproject/myagent\x20-o\x20agent.yaml','clear','journeys','List\x20segment\x20activations\x20(exports)','query','834967UhMJSZ','9bGRaXn','tdx\x20unset\x20--all','tdx\x20parent-segment\x20preview','check','tdx\x20unset\x20--database','List\x20users\x20in\x20account','sample','cancel','filter','Describe\x20table\x20schema\x20(columns,\x20types)','Clear\x20session\x20context','tdx\x20profile\x20show\x20myprofile','view','optional','View\x20journey\x20details','update','pull','tdx\x20activations\x20--segment\x20\x22My\x20Segment\x22','account','Set\x20session\x20context\x20(database,\x20parent\x20segment,\x20etc.)','rows','List\x20available\x20segment\x20fields','sync','tdx\x20segment\x20push\x20segment.yaml','connection','select','models','tdx\x20ps\x20list','description','tdx\x20wf\x20sessions\x20--limit\x2010','request','score','segment\x20list','Get\x20job\x20results','List\x20LLM\x20projects','category','create','tdx\x20show\x20mydb.users\x20--limit\x20100','activations','tdx\x20chats\x20--limit\x2010','switch','databases','llm\x20projects','segments','tdx\x20describe\x20mydb.events','table'];a74_0x29cb=function(){return _0x2bc55a;};return a74_0x29cb();}export function searchCommands(_0x1bbcd9){const _0x17104a=a74_0x2260bd,{query:_0x3543bd,category:_0x59d804}=_0x1bbcd9,_0x4ffc58=_0x3543bd[_0x17104a(0x156)](),_0x2510eb=_0x4ffc58[_0x17104a(0xa4)](/\s+/)['filter'](_0x5dbe36=>_0x5dbe36[_0x17104a(0x12f)]>0x0);let _0x563efe=COMMANDS;_0x59d804&&(_0x563efe=_0x563efe[_0x17104a(0xd1)](_0x1ed31b=>_0x1ed31b[_0x17104a(0xec)]===_0x59d804));const _0x182e94=_0x563efe['map'](_0x1f119b=>{const _0x26ed1d=_0x17104a;let _0x189dff=0x0;_0x1f119b['name'][_0x26ed1d(0x156)]()===_0x4ffc58&&(_0x189dff+=0x64);_0x1f119b[_0x26ed1d(0x149)][_0x26ed1d(0x156)]()[_0x26ed1d(0x155)](_0x4ffc58)&&(_0x189dff+=0x32);_0x1f119b['description'][_0x26ed1d(0x156)]()[_0x26ed1d(0x155)](_0x4ffc58)&&(_0x189dff+=0x1e);for(const _0x7a7a59 of _0x2510eb){for(const _0x12877e of _0x1f119b['keywords']){if(_0x12877e===_0x7a7a59)_0x189dff+=0x14;else(_0x12877e[_0x26ed1d(0x155)](_0x7a7a59)||_0x7a7a59[_0x26ed1d(0x155)](_0x12877e))&&(_0x189dff+=0xa);}_0x1f119b['name'][_0x26ed1d(0x156)]()[_0x26ed1d(0x155)](_0x7a7a59)&&(_0x189dff+=0xf),_0x1f119b[_0x26ed1d(0xe5)][_0x26ed1d(0x156)]()[_0x26ed1d(0x155)](_0x7a7a59)&&(_0x189dff+=0x5);}return{'name':_0x1f119b[_0x26ed1d(0x149)],'description':_0x1f119b[_0x26ed1d(0xe5)],'category':_0x1f119b[_0x26ed1d(0xec)],'examples':_0x1f119b[_0x26ed1d(0xf8)],'score':_0x189dff};});return _0x182e94[_0x17104a(0xd1)](_0x199585=>_0x199585['score']>0x0)[_0x17104a(0x99)]((_0x6c7cfa,_0x1800c5)=>_0x1800c5[_0x17104a(0xe8)]-_0x6c7cfa[_0x17104a(0xe8)])[_0x17104a(0x101)](0x0,0xa);}
@@ -1 +1 @@
1
- const a75_0x2670da=a75_0x5529;(function(_0x1e140c,_0x296d7c){const _0x5e4b1a=a75_0x5529,_0x54a6a8=_0x1e140c();while(!![]){try{const _0x4731ee=-parseInt(_0x5e4b1a(0xfe))/0x1+-parseInt(_0x5e4b1a(0xe8))/0x2+-parseInt(_0x5e4b1a(0xf8))/0x3*(-parseInt(_0x5e4b1a(0xe5))/0x4)+-parseInt(_0x5e4b1a(0x108))/0x5+-parseInt(_0x5e4b1a(0xec))/0x6+-parseInt(_0x5e4b1a(0x105))/0x7*(-parseInt(_0x5e4b1a(0xe7))/0x8)+parseInt(_0x5e4b1a(0x110))/0x9;if(_0x4731ee===_0x296d7c)break;else _0x54a6a8['push'](_0x54a6a8['shift']());}catch(_0x401296){_0x54a6a8['push'](_0x54a6a8['shift']());}}}(a75_0x54e1,0x96d66));import{z}from'zod';import{WorkspaceSDK,resolveWorkspacePath}from'../../sdk/workspace/index.js';function a75_0x5529(_0x4d2f7f,_0x235996){_0x4d2f7f=_0x4d2f7f-0xe5;const _0x54e179=a75_0x54e1();let _0x552900=_0x54e179[_0x4d2f7f];return _0x552900;}function a75_0x54e1(){const _0x4d6a0a=['4180722ECNyiC','Tags\x20for\x20the\x20item','body','fileName','item','github','accepted','No\x20workspace\x20found.\x20Run\x20`tdx\x20work\x20init`\x20to\x20create\x20one.','status','optional','Document\x20kind\x20(default:\x20\x22item\x22)','kind','204720YUlxFb','describe','guide','low','Initial\x20status\x20(default:\x20\x22todo\x22\x20for\x20items,\x20\x22proposed\x22\x20for\x20guides)','superseded','678079ExMliO','enum','critical','todo','priority','createDocument','tags','6782405ktkrqE','replace','GitHub\x20PR/issue\x20reference\x20(owner/repo#number)','3429070aHvEfi','filePath','string','title','deprecated','Template\x20name\x20from\x20templates/\x20folder','design_review','in_progress','12020670askBwQ','JIRA\x20ticket\x20reference\x20(org/TICKET-ID)','60CGIfSG','object','8vSgPHS','1299270dJklvp','Item\x20title\x20(required)','reference','note'];a75_0x54e1=function(){return _0x4d6a0a;};return a75_0x54e1();}const TASK_STATUSES=['backlog',a75_0x2670da(0x101),'planning',a75_0x2670da(0x10e),a75_0x2670da(0x10f),'review','done','void'],GUIDE_STATUSES=['proposed',a75_0x2670da(0xf2),a75_0x2670da(0x10c),a75_0x2670da(0xfd)];export const WorkCreateItemInputSchema=z[a75_0x2670da(0xe6)]({'title':z[a75_0x2670da(0x10a)]()[a75_0x2670da(0xf9)](a75_0x2670da(0xe9)),'kind':z[a75_0x2670da(0xff)]([a75_0x2670da(0xf0),a75_0x2670da(0xeb),a75_0x2670da(0xfa),a75_0x2670da(0xea)])[a75_0x2670da(0xf5)]()[a75_0x2670da(0xf9)](a75_0x2670da(0xf6)),'status':z[a75_0x2670da(0xff)]([...TASK_STATUSES,...GUIDE_STATUSES])[a75_0x2670da(0xf5)]()[a75_0x2670da(0xf9)](a75_0x2670da(0xfc)),'tags':z['array'](z['string']())[a75_0x2670da(0xf5)]()[a75_0x2670da(0xf9)](a75_0x2670da(0xed)),'priority':z[a75_0x2670da(0xff)]([a75_0x2670da(0x100),'high','medium',a75_0x2670da(0xfb)])[a75_0x2670da(0xf5)]()[a75_0x2670da(0xf9)]('Priority\x20level'),'body':z[a75_0x2670da(0x10a)]()[a75_0x2670da(0xf5)]()[a75_0x2670da(0xf9)]('Markdown\x20body\x20content'),'template':z[a75_0x2670da(0x10a)]()[a75_0x2670da(0xf5)]()[a75_0x2670da(0xf9)](a75_0x2670da(0x10d)),'github':z[a75_0x2670da(0x10a)]()[a75_0x2670da(0xf5)]()[a75_0x2670da(0xf9)](a75_0x2670da(0x107)),'jira':z[a75_0x2670da(0x10a)]()[a75_0x2670da(0xf5)]()[a75_0x2670da(0xf9)](a75_0x2670da(0x111))});export function executeWorkCreateItem(_0xab518e){const _0x582eb2=a75_0x2670da,_0x1b2c93=resolveWorkspacePath();if(!_0x1b2c93)return{'success':![],'error':_0x582eb2(0xf3)};const _0x57fe09=new WorkspaceSDK(_0x1b2c93),_0xc9f20f={'title':_0xab518e[_0x582eb2(0x10b)],'kind':_0xab518e[_0x582eb2(0xf7)]||'item','status':_0xab518e[_0x582eb2(0xf4)],'tags':_0xab518e[_0x582eb2(0x104)],'priority':_0xab518e[_0x582eb2(0x102)],'body':_0xab518e[_0x582eb2(0xee)],'template':_0xab518e['template'],'github':_0xab518e[_0x582eb2(0xf1)],'jira':_0xab518e['jira']},_0x1aa6f1=_0x57fe09[_0x582eb2(0x103)](_0xc9f20f);return{'success':!![],'path':_0x1aa6f1[_0x582eb2(0x109)],'slug':_0x1aa6f1[_0x582eb2(0xef)][_0x582eb2(0x106)](/\.md$/,'')};}
1
+ const a75_0x26e1ef=a75_0x324c;function a75_0x2166(){const _0x56d5e4=['deprecated','Markdown\x20body\x20content','string','object','Initial\x20status\x20(default:\x20\x22todo\x22\x20for\x20items,\x20\x22proposed\x22\x20for\x20guides)','105057zOOMUW','medium','in_progress','high','tags','Item\x20title\x20(required)','github','done','review','accepted','critical','932OmUFGh','kind','3996212GfsuWj','5YRItmv','100bFwtiY','833220wvfhHZ','backlog','priority','JIRA\x20ticket\x20reference\x20(org/TICKET-ID)','jira','177032JhsSoJ','describe','optional','replace','reference','1682534TALSSd','enum','Template\x20name\x20from\x20templates/\x20folder','proposed','filePath','void','createDocument','superseded','status','body','template','planning','note','8kwHzCd','256JjpwmF','item','1839198HaGJab','Document\x20kind\x20(default:\x20\x22item\x22)','design_review','fileName','No\x20workspace\x20found.\x20Run\x20`tdx\x20work\x20init`\x20to\x20create\x20one.','GitHub\x20PR/issue\x20reference\x20(owner/repo#number)'];a75_0x2166=function(){return _0x56d5e4;};return a75_0x2166();}(function(_0x2fd13d,_0x5a5ecc){const _0x5bcec2=a75_0x324c,_0x52b96e=_0x2fd13d();while(!![]){try{const _0x1080da=-parseInt(_0x5bcec2(0x198))/0x1*(-parseInt(_0x5bcec2(0x1b0))/0x2)+-parseInt(_0x5bcec2(0x1b5))/0x3+parseInt(_0x5bcec2(0x1ba))/0x4+-parseInt(_0x5bcec2(0x1b3))/0x5*(-parseInt(_0x5bcec2(0x19a))/0x6)+-parseInt(_0x5bcec2(0x1bf))/0x7*(-parseInt(_0x5bcec2(0x197))/0x8)+-parseInt(_0x5bcec2(0x1a5))/0x9*(-parseInt(_0x5bcec2(0x1b4))/0xa)+-parseInt(_0x5bcec2(0x1b2))/0xb;if(_0x1080da===_0x5a5ecc)break;else _0x52b96e['push'](_0x52b96e['shift']());}catch(_0x31a1da){_0x52b96e['push'](_0x52b96e['shift']());}}}(a75_0x2166,0x2d723));import{z}from'zod';function a75_0x324c(_0x487372,_0x2cdda3){_0x487372=_0x487372-0x191;const _0x2166e7=a75_0x2166();let _0x324cbf=_0x2166e7[_0x487372];return _0x324cbf;}import{WorkspaceSDK,resolveWorkspacePath}from'../../sdk/workspace/index.js';const TASK_STATUSES=[a75_0x26e1ef(0x1b6),'todo',a75_0x26e1ef(0x195),a75_0x26e1ef(0x19c),a75_0x26e1ef(0x1a7),a75_0x26e1ef(0x1ad),a75_0x26e1ef(0x1ac),a75_0x26e1ef(0x1c4)],GUIDE_STATUSES=[a75_0x26e1ef(0x1c2),a75_0x26e1ef(0x1ae),a75_0x26e1ef(0x1a0),a75_0x26e1ef(0x191)];export const WorkCreateItemInputSchema=z[a75_0x26e1ef(0x1a3)]({'title':z['string']()['describe'](a75_0x26e1ef(0x1aa)),'kind':z[a75_0x26e1ef(0x1c0)]([a75_0x26e1ef(0x199),a75_0x26e1ef(0x196),'guide',a75_0x26e1ef(0x1be)])['optional']()[a75_0x26e1ef(0x1bb)](a75_0x26e1ef(0x19b)),'status':z[a75_0x26e1ef(0x1c0)]([...TASK_STATUSES,...GUIDE_STATUSES])['optional']()[a75_0x26e1ef(0x1bb)](a75_0x26e1ef(0x1a4)),'tags':z['array'](z[a75_0x26e1ef(0x1a2)]())['optional']()['describe']('Tags\x20for\x20the\x20item'),'priority':z[a75_0x26e1ef(0x1c0)]([a75_0x26e1ef(0x1af),a75_0x26e1ef(0x1a8),a75_0x26e1ef(0x1a6),'low'])[a75_0x26e1ef(0x1bc)]()['describe']('Priority\x20level'),'body':z[a75_0x26e1ef(0x1a2)]()['optional']()[a75_0x26e1ef(0x1bb)](a75_0x26e1ef(0x1a1)),'template':z['string']()['optional']()[a75_0x26e1ef(0x1bb)](a75_0x26e1ef(0x1c1)),'github':z[a75_0x26e1ef(0x1a2)]()[a75_0x26e1ef(0x1bc)]()[a75_0x26e1ef(0x1bb)](a75_0x26e1ef(0x19f)),'jira':z[a75_0x26e1ef(0x1a2)]()[a75_0x26e1ef(0x1bc)]()[a75_0x26e1ef(0x1bb)](a75_0x26e1ef(0x1b8))});export function executeWorkCreateItem(_0x3c1fe6){const _0x24d039=a75_0x26e1ef,_0x561ae9=resolveWorkspacePath();if(!_0x561ae9)return{'success':![],'error':_0x24d039(0x19e)};const _0x2f04a6=new WorkspaceSDK(_0x561ae9),_0x47a5a5={'title':_0x3c1fe6['title'],'kind':_0x3c1fe6[_0x24d039(0x1b1)]||_0x24d039(0x199),'status':_0x3c1fe6[_0x24d039(0x192)],'tags':_0x3c1fe6[_0x24d039(0x1a9)],'priority':_0x3c1fe6[_0x24d039(0x1b7)],'body':_0x3c1fe6[_0x24d039(0x193)],'template':_0x3c1fe6[_0x24d039(0x194)],'github':_0x3c1fe6[_0x24d039(0x1ab)],'jira':_0x3c1fe6[_0x24d039(0x1b9)]},_0x33562c=_0x2f04a6[_0x24d039(0x1c5)](_0x47a5a5);return{'success':!![],'path':_0x33562c[_0x24d039(0x1c3)],'slug':_0x33562c[_0x24d039(0x19d)][_0x24d039(0x1bd)](/\.md$/,'')};}
package/dist/mcp/utils.js CHANGED
@@ -1 +1 @@
1
- const a76_0x37883b=a76_0x443e;(function(_0x1f593c,_0x394e55){const _0x191bb0=a76_0x443e,_0x35cc49=_0x1f593c();while(!![]){try{const _0x3f887e=-parseInt(_0x191bb0(0x1b6))/0x1*(parseInt(_0x191bb0(0x1bc))/0x2)+parseInt(_0x191bb0(0x1c5))/0x3*(parseInt(_0x191bb0(0x1b1))/0x4)+-parseInt(_0x191bb0(0x1c4))/0x5*(-parseInt(_0x191bb0(0x1b4))/0x6)+-parseInt(_0x191bb0(0x1bd))/0x7*(parseInt(_0x191bb0(0x1a9))/0x8)+parseInt(_0x191bb0(0x1c1))/0x9*(-parseInt(_0x191bb0(0x1b0))/0xa)+parseInt(_0x191bb0(0x1c6))/0xb*(-parseInt(_0x191bb0(0x1b5))/0xc)+-parseInt(_0x191bb0(0x1a8))/0xd*(-parseInt(_0x191bb0(0x1b9))/0xe);if(_0x3f887e===_0x394e55)break;else _0x35cc49['push'](_0x35cc49['shift']());}catch(_0x29dfc9){_0x35cc49['push'](_0x35cc49['shift']());}}}(a76_0x3ec5,0xd88ee));const BLOCKED_COMMANDS=['auth\x20setup',a76_0x37883b(0x1bb),a76_0x37883b(0x1af),a76_0x37883b(0x1c7),a76_0x37883b(0x1aa),a76_0x37883b(0x1ad),'mcp'],BLOCKED_FLAGS=[a76_0x37883b(0x1c2),'-p'];export function hasBlockedFlag(_0x106a18){const _0x2c97d4=a76_0x37883b;for(const _0x37d0c2 of _0x106a18){const _0x39cbb1=_0x37d0c2[_0x2c97d4(0x1b2)]();for(const _0x54f93d of BLOCKED_FLAGS){if(_0x39cbb1===_0x54f93d||_0x39cbb1['startsWith'](_0x54f93d+'='))return!![];}}return![];}function a76_0x3ec5(){const _0x2c5199=['--profile','mcp','10yzvueQ','37488nEqzHH','11WUWbPu','profile\x20create','slice','trimEnd','117lxvgut','3557856zbzoeY','profile\x20delete','join','This\x20command\x20is\x20not\x20allowed\x20via\x20MCP','profile\x20remove','includes','auth\x20clear','66630cByide','480TSnJQC','toLowerCase','Cannot\x20run\x20MCP\x20server\x20recursively','2758740sqLHwe','9632508sfWTYc','307287cDQzIb','auth\x20setup','length','3407432kvfcbj','Profile\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','auth\x20login','8RMWUHZ','7KjORnc','replace','Credential\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','startsWith','1683WsZIFO'];a76_0x3ec5=function(){return _0x2c5199;};return a76_0x3ec5();}export function isBlockedCommand(_0x5c0a37){const _0x5e8575=a76_0x37883b;if(_0x5c0a37[_0x5e8575(0x1b8)]===0x0)return![];if(hasBlockedFlag(_0x5c0a37))return!![];const _0x19f0cb=_0x5c0a37[_0x5e8575(0x1a6)](0x0,0x2)[_0x5e8575(0x1ab)]('\x20')[_0x5e8575(0x1b2)]();for(const _0x2f5719 of BLOCKED_COMMANDS){if(_0x19f0cb['startsWith'](_0x2f5719))return!![];}const _0x4e41f6=_0x5c0a37[0x0][_0x5e8575(0x1b2)]();for(const _0x358cc8 of BLOCKED_COMMANDS){if(!_0x358cc8[_0x5e8575(0x1ae)]('\x20')&&_0x4e41f6===_0x358cc8)return!![];}return![];}function a76_0x443e(_0x181846,_0x48cee4){_0x181846=_0x181846-0x1a6;const _0x3ec5b2=a76_0x3ec5();let _0x443e20=_0x3ec5b2[_0x181846];return _0x443e20;}export function getBlockedReason(_0x18cab3){const _0x1c573c=a76_0x37883b;if(!isBlockedCommand(_0x18cab3))return undefined;if(hasBlockedFlag(_0x18cab3))return'Profile\x20switching\x20via\x20--profile\x20flag\x20is\x20not\x20allowed\x20via\x20MCP';const _0x33bfc8=_0x18cab3[_0x1c573c(0x1a6)](0x0,0x2)[_0x1c573c(0x1ab)]('\x20')[_0x1c573c(0x1b2)](),_0x597dae=_0x18cab3[0x0][_0x1c573c(0x1b2)]();if(_0x33bfc8[_0x1c573c(0x1c0)](_0x1c573c(0x1b7))||_0x33bfc8[_0x1c573c(0x1c0)]('auth\x20login')||_0x33bfc8[_0x1c573c(0x1c0)](_0x1c573c(0x1af)))return _0x1c573c(0x1bf);if(_0x33bfc8['startsWith'](_0x1c573c(0x1c7))||_0x33bfc8['startsWith'](_0x1c573c(0x1aa))||_0x33bfc8[_0x1c573c(0x1c0)](_0x1c573c(0x1ad)))return _0x1c573c(0x1ba);if(_0x597dae===_0x1c573c(0x1c3))return _0x1c573c(0x1b3);return _0x1c573c(0x1ac);}export function formatOutput(_0x3cc45e){const _0x2c73c5=a76_0x37883b,_0xf4bd89=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;let _0x9b62fd=_0x3cc45e[_0x2c73c5(0x1be)](_0xf4bd89,'');return _0x9b62fd=_0x9b62fd[_0x2c73c5(0x1be)](/\r\n/g,'\x0a')[_0x2c73c5(0x1be)](/\r/g,'\x0a'),_0x9b62fd=_0x9b62fd[_0x2c73c5(0x1a7)](),_0x9b62fd;}
1
+ const a76_0x1538cd=a76_0xab54;(function(_0x5a83ec,_0x18119b){const _0x3c9357=a76_0xab54,_0x276812=_0x5a83ec();while(!![]){try{const _0x4bb6d1=parseInt(_0x3c9357(0xe6))/0x1*(-parseInt(_0x3c9357(0xf4))/0x2)+parseInt(_0x3c9357(0xd9))/0x3+parseInt(_0x3c9357(0xe8))/0x4*(-parseInt(_0x3c9357(0xf3))/0x5)+parseInt(_0x3c9357(0xf1))/0x6*(parseInt(_0x3c9357(0xe2))/0x7)+-parseInt(_0x3c9357(0xef))/0x8+-parseInt(_0x3c9357(0xdb))/0x9+parseInt(_0x3c9357(0xe1))/0xa;if(_0x4bb6d1===_0x18119b)break;else _0x276812['push'](_0x276812['shift']());}catch(_0x4eacd0){_0x276812['push'](_0x276812['shift']());}}}(a76_0x412f,0xcf830));const BLOCKED_COMMANDS=[a76_0x1538cd(0xdf),a76_0x1538cd(0xe4),a76_0x1538cd(0xea),a76_0x1538cd(0xeb),a76_0x1538cd(0xed),a76_0x1538cd(0xe7),'mcp'],BLOCKED_FLAGS=[a76_0x1538cd(0xe3),'-p'];export function hasBlockedFlag(_0x2d1ade){for(const _0x741eb4 of _0x2d1ade){const _0x382447=_0x741eb4['toLowerCase']();for(const _0x55c4c4 of BLOCKED_FLAGS){if(_0x382447===_0x55c4c4||_0x382447['startsWith'](_0x55c4c4+'='))return!![];}}return![];}export function isBlockedCommand(_0xa60813){const _0x112290=a76_0x1538cd;if(_0xa60813[_0x112290(0xf2)]===0x0)return![];if(hasBlockedFlag(_0xa60813))return!![];const _0x393326=_0xa60813[_0x112290(0xe0)](0x0,0x2)[_0x112290(0xdc)]('\x20')['toLowerCase']();for(const _0x3e352d of BLOCKED_COMMANDS){if(_0x393326[_0x112290(0xec)](_0x3e352d))return!![];}const _0x514349=_0xa60813[0x0]['toLowerCase']();for(const _0xc4f3a of BLOCKED_COMMANDS){if(!_0xc4f3a['includes']('\x20')&&_0x514349===_0xc4f3a)return!![];}return![];}export function getBlockedReason(_0x3091ea){const _0x4e9040=a76_0x1538cd;if(!isBlockedCommand(_0x3091ea))return undefined;if(hasBlockedFlag(_0x3091ea))return'Profile\x20switching\x20via\x20--profile\x20flag\x20is\x20not\x20allowed\x20via\x20MCP';const _0x253d40=_0x3091ea[_0x4e9040(0xe0)](0x0,0x2)[_0x4e9040(0xdc)]('\x20')[_0x4e9040(0xee)](),_0x5e42ee=_0x3091ea[0x0][_0x4e9040(0xee)]();if(_0x253d40[_0x4e9040(0xec)]('auth\x20setup')||_0x253d40[_0x4e9040(0xec)](_0x4e9040(0xe4))||_0x253d40[_0x4e9040(0xec)](_0x4e9040(0xea)))return _0x4e9040(0xdd);if(_0x253d40['startsWith'](_0x4e9040(0xeb))||_0x253d40[_0x4e9040(0xec)](_0x4e9040(0xed))||_0x253d40[_0x4e9040(0xec)]('profile\x20remove'))return _0x4e9040(0xde);if(_0x5e42ee===_0x4e9040(0xf0))return _0x4e9040(0xe5);return'This\x20command\x20is\x20not\x20allowed\x20via\x20MCP';}function a76_0x412f(){const _0x4a23d3=['auth\x20login','Cannot\x20run\x20MCP\x20server\x20recursively','164732AjTogM','profile\x20remove','4kHMatg','trimEnd','auth\x20clear','profile\x20create','startsWith','profile\x20delete','toLowerCase','208232WThxIy','mcp','2262774TuEceF','length','1324820zatChR','10fFbcvO','165189OFpQrE','replace','15237072dqBIEh','join','Credential\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','Profile\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','auth\x20setup','slice','32254370PtrPrx','7LClibl','--profile'];a76_0x412f=function(){return _0x4a23d3;};return a76_0x412f();}function a76_0xab54(_0x597d8a,_0x1150ef){_0x597d8a=_0x597d8a-0xd9;const _0x412f5d=a76_0x412f();let _0xab540=_0x412f5d[_0x597d8a];return _0xab540;}export function formatOutput(_0x3ef7a6){const _0x28d2f1=a76_0x1538cd,_0xc98e8b=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;let _0x597358=_0x3ef7a6[_0x28d2f1(0xda)](_0xc98e8b,'');return _0x597358=_0x597358[_0x28d2f1(0xda)](/\r\n/g,'\x0a')[_0x28d2f1(0xda)](/\r/g,'\x0a'),_0x597358=_0x597358[_0x28d2f1(0xe9)](),_0x597358;}
@@ -1 +1 @@
1
- (function(_0x4f826d,_0x4fad29){const _0x561905=a77_0x411c,_0x558b3e=_0x4f826d();while(!![]){try{const _0x54a727=parseInt(_0x561905(0x16e))/0x1+parseInt(_0x561905(0x155))/0x2+-parseInt(_0x561905(0x157))/0x3*(-parseInt(_0x561905(0x16f))/0x4)+parseInt(_0x561905(0x153))/0x5+-parseInt(_0x561905(0x185))/0x6*(-parseInt(_0x561905(0x154))/0x7)+-parseInt(_0x561905(0x189))/0x8+parseInt(_0x561905(0x17f))/0x9*(-parseInt(_0x561905(0x171))/0xa);if(_0x54a727===_0x4fad29)break;else _0x558b3e['push'](_0x558b3e['shift']());}catch(_0x4b3766){_0x558b3e['push'](_0x558b3e['shift']());}}}(a77_0x2396,0x2acc2));import{readFile,writeFile,appendFile,mkdir,readdir,stat}from'node:fs/promises';import{existsSync}from'node:fs';import{join,resolve}from'node:path';import{getModelPricing,calculateTokenCost,usdToAiCredits}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 a77_0x2396(){const _0xead808=['sort','.jsonl','cacheCreationInputTokens','208635ImgNDA','3843fEydpR','281286qkBopy','profiles','759171pNqzrx','profile','todayCredits','daily','entries','.jsonl:','totalChatUnits','getTime','entryCount','inputTokens','length','todayDate','timestamp','Invalid\x20session\x20ID:\x20path\x20traversal\x20detected','object','outputTokens','lastUsedAt','Failed\x20to\x20process\x20session\x20','month','trim','slice','source','replace','252010kruvpI','4NvVEse','Failed\x20to\x20read\x20usage\x20directory:','230XPblGG','totalCredits','values','parse','stringify','utf-8','monthly','getMonth','mtime','keys','filter','default','credits','map','248733uNxWiD','sessions','toISOString','tdx-claude','getFullYear','message','1488aDRPEA','sources','split','WARN','101120htJyLj','lastUpdatedAt','monthCredits','endsWith','warn','claude-usage'];a77_0x2396=function(){return _0xead808;};return a77_0x2396();}async function getLogger(){const _0x24f067=a77_0x411c;return!usageLogger&&(usageLogger=new TDXLogger(LogLevel[_0x24f067(0x188)],!![]),await usageLogger['init']()),usageLogger;}function getUsageDir(){const _0x132b95=a77_0x411c;return join(getGlobalCacheDir(),_0x132b95(0x14f));}function sanitizeSessionId(_0x588edc){const _0x28eb13=a77_0x411c;return _0x588edc[_0x28eb13(0x16d)](/[^a-zA-Z0-9_-]/g,'_');}function getSafeJsonlPath(_0x9e5a79){const _0x329ef4=a77_0x411c,_0x502674=getUsageDir(),_0x305c94=sanitizeSessionId(_0x9e5a79),_0x53fe5b=resolve(_0x502674,_0x305c94+'.jsonl');if(!_0x53fe5b['startsWith'](_0x502674))throw new Error(_0x329ef4(0x164));return _0x53fe5b;}function getStatsCachePath(){return join(getUsageDir(),'stats-cache.json');}async function ensureUsageDir(){const _0x4642a5=getUsageDir();!existsSync(_0x4642a5)&&await mkdir(_0x4642a5,{'recursive':!![]});}export async function appendUsageEntry(_0xf978be,_0x884c10){const _0x22626a=a77_0x411c,_0x4f43ad=sanitizeSessionId(_0xf978be);await ensureUsageDir();const _0x3ce024=getSafeJsonlPath(_0x4f43ad),_0x3ec687=JSON[_0x22626a(0x175)](_0x884c10)+'\x0a';await appendFile(_0x3ce024,_0x3ec687,'utf-8');}async function readSessionJsonl(_0x5c82c5){const _0x1b1b4f=a77_0x411c,_0x55ee8e=getSafeJsonlPath(_0x5c82c5);if(!existsSync(_0x55ee8e))return[];try{const _0x47d809=await readFile(_0x55ee8e,_0x1b1b4f(0x176)),_0x4250b4=_0x47d809[_0x1b1b4f(0x16a)]()[_0x1b1b4f(0x187)]('\x0a')[_0x1b1b4f(0x17b)](Boolean);return _0x4250b4[_0x1b1b4f(0x17e)](_0x50123b=>{const _0x197fa0=_0x1b1b4f;try{return JSON[_0x197fa0(0x174)](_0x50123b);}catch{return null;}})['filter'](_0x52ad90=>_0x52ad90!==null);}catch(_0xe2e539){const _0x3e4b34=await getLogger();return _0x3e4b34[_0x1b1b4f(0x14e)]('Failed\x20to\x20read\x20usage\x20file\x20'+_0x5c82c5+_0x1b1b4f(0x15c),_0xe2e539 instanceof Error?_0xe2e539[_0x1b1b4f(0x184)]:String(_0xe2e539)),[];}}async function getAllSessionFiles(){const _0x26acf5=a77_0x411c,_0x75d8a5=getUsageDir();if(!existsSync(_0x75d8a5))return[];try{const _0x541cb6=await readdir(_0x75d8a5);return _0x541cb6[_0x26acf5(0x17b)](_0x4da444=>_0x4da444[_0x26acf5(0x18c)](_0x26acf5(0x151)))[_0x26acf5(0x17e)](_0x1d04d3=>_0x1d04d3[_0x26acf5(0x16d)](_0x26acf5(0x151),''));}catch(_0x687440){const _0x386cdf=await getLogger();return _0x386cdf[_0x26acf5(0x14e)](_0x26acf5(0x170),_0x687440 instanceof Error?_0x687440[_0x26acf5(0x184)]:String(_0x687440)),[];}}async function readStatsCache(){const _0x4ada6c=a77_0x411c,_0x2814b7=getStatsCachePath();if(!existsSync(_0x2814b7))return null;try{const _0x1decc0=await readFile(_0x2814b7,_0x4ada6c(0x176)),_0x56ccc3=JSON[_0x4ada6c(0x174)](_0x1decc0),_0x39aaf5=Object[_0x4ada6c(0x173)](_0x56ccc3[_0x4ada6c(0x180)]||{})[0x0];if(_0x39aaf5&&_0x4ada6c(0x15d)in _0x39aaf5)return null;return _0x56ccc3;}catch{return null;}}async function writeStatsCache(_0x2e11fe){await ensureUsageDir();const _0x1f57af=getStatsCachePath();await writeFile(_0x1f57af,JSON['stringify'](_0x2e11fe,null,0x2),'utf-8');}async function isCacheUpToDate(_0x263e00,_0x4b67a9){const _0x5201f9=a77_0x411c,_0x1d2030=_0x263e00[_0x5201f9(0x180)][_0x4b67a9];if(!_0x1d2030)return![];const _0x47fabd=getSafeJsonlPath(_0x4b67a9);if(!existsSync(_0x47fabd))return!![];try{const _0x50cd43=await stat(_0x47fabd),_0x5e1bcb=new Date(_0x1d2030[_0x5201f9(0x18a)])[_0x5201f9(0x15e)](),_0x15782b=_0x50cd43[_0x5201f9(0x179)][_0x5201f9(0x15e)]();return _0x5e1bcb>_0x15782b;}catch{return![];}}export async function rebuildCache(){const _0x13f3ca=a77_0x411c,_0x3e6c2f=new Date(),_0x3821c8=_0x3e6c2f[_0x13f3ca(0x181)]()[_0x13f3ca(0x16b)](0x0,0xa),_0x32bef8=_0x3e6c2f[_0x13f3ca(0x181)]()[_0x13f3ca(0x16b)](0x0,0x7),_0x135e2c={'daily':{},'monthly':{},'sessions':{},'profiles':{},'sources':{},'lastRebuiltAt':_0x3e6c2f[_0x13f3ca(0x181)]()},_0x44734a=await getAllSessionFiles();for(const _0x12b0ad of _0x44734a){try{const _0x3ddf18=await readSessionJsonl(_0x12b0ad);if(_0x3ddf18[_0x13f3ca(0x161)]===0x0)continue;let _0x1fc506=0x0;const _0x1e84c4={};let _0xba5d1d='';for(const _0x58dcd7 of _0x3ddf18){const _0x2257dd=getModelPricing(_0x58dcd7['model']),_0x42920b=calculateTokenCost(_0x58dcd7[_0x13f3ca(0x160)],_0x58dcd7[_0x13f3ca(0x166)],_0x58dcd7[_0x13f3ca(0x152)]??0x0,_0x58dcd7['cacheReadInputTokens']??0x0,_0x2257dd),_0x4be8be=usdToAiCredits(_0x42920b);_0x1fc506+=_0x4be8be;const _0x1ff7a9=_0x58dcd7['contextSignature']||_0x13f3ca(0x17c);_0x1e84c4[_0x1ff7a9]=_0x58dcd7[_0x13f3ca(0x160)]+(_0x58dcd7[_0x13f3ca(0x152)]??0x0)+(_0x58dcd7['cacheReadInputTokens']??0x0);_0x58dcd7[_0x13f3ca(0x163)]>_0xba5d1d&&(_0xba5d1d=_0x58dcd7[_0x13f3ca(0x163)]);const _0x4a2833=_0x58dcd7[_0x13f3ca(0x163)][_0x13f3ca(0x16b)](0x0,0xa);!_0x135e2c[_0x13f3ca(0x15a)][_0x4a2833]&&(_0x135e2c[_0x13f3ca(0x15a)][_0x4a2833]={'totalCredits':0x0,'entryCount':0x0});_0x135e2c[_0x13f3ca(0x15a)][_0x4a2833][_0x13f3ca(0x172)]+=_0x4be8be,_0x135e2c['daily'][_0x4a2833][_0x13f3ca(0x15f)]+=0x1;const _0x44c42c=_0x58dcd7[_0x13f3ca(0x163)][_0x13f3ca(0x16b)](0x0,0x7);!_0x135e2c[_0x13f3ca(0x177)][_0x44c42c]&&(_0x135e2c[_0x13f3ca(0x177)][_0x44c42c]={'totalCredits':0x0,'entryCount':0x0});_0x135e2c[_0x13f3ca(0x177)][_0x44c42c][_0x13f3ca(0x172)]+=_0x4be8be,_0x135e2c[_0x13f3ca(0x177)][_0x44c42c]['entryCount']+=0x1;const _0x4a0d34=_0x58dcd7[_0x13f3ca(0x158)]||'default';!_0x135e2c[_0x13f3ca(0x156)][_0x4a0d34]&&(_0x135e2c[_0x13f3ca(0x156)][_0x4a0d34]={'totalCredits':0x0,'entryCount':0x0,'lastUsedAt':'','todayCredits':0x0,'todayDate':_0x3821c8,'monthCredits':0x0,'month':_0x32bef8});_0x135e2c[_0x13f3ca(0x156)][_0x4a0d34]['totalCredits']+=_0x4be8be,_0x135e2c[_0x13f3ca(0x156)][_0x4a0d34][_0x13f3ca(0x15f)]+=0x1;_0x58dcd7['timestamp']>_0x135e2c['profiles'][_0x4a0d34][_0x13f3ca(0x167)]&&(_0x135e2c[_0x13f3ca(0x156)][_0x4a0d34][_0x13f3ca(0x167)]=_0x58dcd7['timestamp']);_0x4a2833===_0x3821c8&&(_0x135e2c[_0x13f3ca(0x156)][_0x4a0d34][_0x13f3ca(0x159)]+=_0x4be8be);_0x44c42c===_0x32bef8&&(_0x135e2c['profiles'][_0x4a0d34][_0x13f3ca(0x18b)]+=_0x4be8be);const _0x4e27fb=_0x58dcd7[_0x13f3ca(0x16c)]||_0x13f3ca(0x182);!_0x135e2c[_0x13f3ca(0x186)][_0x4e27fb]&&(_0x135e2c['sources'][_0x4e27fb]={'totalCredits':0x0,'entryCount':0x0,'todayCredits':0x0,'todayDate':_0x3821c8,'monthCredits':0x0,'month':_0x32bef8}),_0x135e2c[_0x13f3ca(0x186)][_0x4e27fb][_0x13f3ca(0x172)]+=_0x4be8be,_0x135e2c[_0x13f3ca(0x186)][_0x4e27fb][_0x13f3ca(0x15f)]+=0x1,_0x4a2833===_0x3821c8&&(_0x135e2c[_0x13f3ca(0x186)][_0x4e27fb][_0x13f3ca(0x159)]+=_0x4be8be),_0x44c42c===_0x32bef8&&(_0x135e2c[_0x13f3ca(0x186)][_0x4e27fb][_0x13f3ca(0x18b)]+=_0x4be8be);}_0x135e2c[_0x13f3ca(0x180)][_0x12b0ad]={'totalCredits':_0x1fc506,'latestContextTokensBySignature':_0x1e84c4,'createdAt':_0x3ddf18[0x0][_0x13f3ca(0x163)],'lastUpdatedAt':_0xba5d1d};}catch(_0x41ad15){const _0x56c893=await getLogger();_0x56c893[_0x13f3ca(0x14e)](_0x13f3ca(0x168)+_0x12b0ad+':',_0x41ad15 instanceof Error?_0x41ad15['message']:String(_0x41ad15));continue;}}return cleanupOldEntries(_0x135e2c),await writeStatsCache(_0x135e2c),_0x135e2c;}function cleanupOldEntries(_0x2d92a4){const _0x2e08c5=a77_0x411c,_0x5e1fdb=new Date(),_0x5338f0=new Date(_0x5e1fdb[_0x2e08c5(0x15e)]()-0x7*0x18*0x3c*0x3c*0x3e8);for(const _0x46b387 of Object[_0x2e08c5(0x17a)](_0x2d92a4['daily'])){new Date(_0x46b387)<_0x5338f0&&delete _0x2d92a4[_0x2e08c5(0x15a)][_0x46b387];}const _0x30fe32=new Date(_0x5e1fdb[_0x2e08c5(0x183)]()-0x1,_0x5e1fdb[_0x2e08c5(0x178)](),0x1);for(const _0x8f90e9 of Object['keys'](_0x2d92a4[_0x2e08c5(0x177)])){const [_0x392e77,_0x399919]=_0x8f90e9[_0x2e08c5(0x187)]('-')[_0x2e08c5(0x17e)](Number),_0x38e34f=new Date(_0x392e77,_0x399919-0x1,0x1);_0x38e34f<_0x30fe32&&delete _0x2d92a4[_0x2e08c5(0x177)][_0x8f90e9];}const _0x41739c=new Date(_0x5e1fdb[_0x2e08c5(0x15e)]()-0x1e*0x18*0x3c*0x3c*0x3e8);for(const [_0x2bb9a3,_0x99fa1]of Object[_0x2e08c5(0x15b)](_0x2d92a4[_0x2e08c5(0x180)])){new Date(_0x99fa1[_0x2e08c5(0x18a)])<_0x41739c&&delete _0x2d92a4[_0x2e08c5(0x180)][_0x2bb9a3];}}export async function getOrUpdateCache(_0x4a7e79){const _0x8c47bc=_0x4a7e79?sanitizeSessionId(_0x4a7e79):undefined,_0x4347cc=await readStatsCache();if(!_0x4347cc)return rebuildCache();if(_0x8c47bc){const _0x4cf7c6=await isCacheUpToDate(_0x4347cc,_0x8c47bc);if(!_0x4cf7c6)return rebuildCache();}return _0x4347cc;}export async function getSessionCredits(_0x402401){const _0x245260=a77_0x411c,_0x28adf1=sanitizeSessionId(_0x402401),_0x343f8c=await getOrUpdateCache(_0x28adf1),_0x35aa89=_0x343f8c['sessions'][_0x28adf1];if(!_0x35aa89)return 0x0;return _0x35aa89[_0x245260(0x172)];}export async function getTodayCredits(){const _0x1e852c=a77_0x411c,_0x2a8fee=await getOrUpdateCache(),_0x22a8da=new Date()[_0x1e852c(0x181)]()[_0x1e852c(0x16b)](0x0,0xa),_0x297b9b=_0x2a8fee[_0x1e852c(0x15a)][_0x22a8da];if(!_0x297b9b)return 0x0;return _0x297b9b[_0x1e852c(0x172)];}export async function getMonthCredits(){const _0x20d559=a77_0x411c,_0x145972=await getOrUpdateCache(),_0x2d73d0=new Date()['toISOString']()[_0x20d559(0x16b)](0x0,0x7),_0x3cb89a=_0x145972[_0x20d559(0x177)][_0x2d73d0];if(!_0x3cb89a)return 0x0;return _0x3cb89a[_0x20d559(0x172)];}function a77_0x411c(_0x94fdd2,_0x254a0d){_0x94fdd2=_0x94fdd2-0x14e;const _0x2396ad=a77_0x2396();let _0x411ceb=_0x2396ad[_0x94fdd2];return _0x411ceb;}export async function getSessionStats(_0x456d87){const _0x2fee84=a77_0x411c,_0x13ad1d=sanitizeSessionId(_0x456d87),_0x49174b=await getOrUpdateCache(_0x13ad1d);return _0x49174b[_0x2fee84(0x180)][_0x13ad1d]||null;}function getMaxLatestContextTokens(_0x384989){const _0x3013d9=a77_0x411c,_0x46f67f=Object['values'](_0x384989);if(_0x46f67f[_0x3013d9(0x161)]===0x0)return 0x0;return Math['max'](..._0x46f67f);}export async function getUsageStats(_0x568f0f,_0x343eb6){const _0x5f53da=a77_0x411c,_0xa45616=sanitizeSessionId(_0x568f0f),_0xcc1e9d=await getOrUpdateCache(_0xa45616),_0x4566c8=_0xcc1e9d['sessions'][_0xa45616],_0x37f64a=new Date()[_0x5f53da(0x181)]()[_0x5f53da(0x16b)](0x0,0xa),_0x547e9c=new Date()[_0x5f53da(0x181)]()[_0x5f53da(0x16b)](0x0,0x7);if(_0x343eb6){const _0x44c841=_0xcc1e9d[_0x5f53da(0x156)]?.[_0x343eb6],_0x2bcf79=_0x44c841?.[_0x5f53da(0x162)]===_0x37f64a?_0x44c841['todayCredits']:0x0,_0x324971=_0x44c841?.[_0x5f53da(0x169)]===_0x547e9c?_0x44c841[_0x5f53da(0x18b)]:0x0;return{'sessionCredits':_0x4566c8?_0x4566c8[_0x5f53da(0x172)]:0x0,'todayCredits':_0x2bcf79,'monthCredits':_0x324971,'latestContextTokens':_0x4566c8?getMaxLatestContextTokens(_0x4566c8['latestContextTokensBySignature']):0x0};}return{'sessionCredits':_0x4566c8?_0x4566c8[_0x5f53da(0x172)]:0x0,'todayCredits':_0xcc1e9d[_0x5f53da(0x15a)][_0x37f64a]?_0xcc1e9d[_0x5f53da(0x15a)][_0x37f64a][_0x5f53da(0x172)]:0x0,'monthCredits':_0xcc1e9d[_0x5f53da(0x177)][_0x547e9c]?_0xcc1e9d[_0x5f53da(0x177)][_0x547e9c][_0x5f53da(0x172)]:0x0,'latestContextTokens':_0x4566c8?getMaxLatestContextTokens(_0x4566c8['latestContextTokensBySignature']):0x0};}export async function getAllProfileStats(){const _0x421323=a77_0x411c,_0xdb2174=await getOrUpdateCache(),_0x45fb47=_0xdb2174[_0x421323(0x156)]||{};return Object['entries'](_0x45fb47)[_0x421323(0x17b)](([,_0x55cb83])=>_0x55cb83&&typeof _0x55cb83===_0x421323(0x165))[_0x421323(0x17e)](([_0x3e4eab,_0xc05da9])=>({'profile':_0x3e4eab,'credits':_0xc05da9[_0x421323(0x172)]||0x0,'entryCount':_0xc05da9[_0x421323(0x15f)]||0x0,'lastUsedAt':_0xc05da9[_0x421323(0x167)]||''}))[_0x421323(0x150)]((_0x285361,_0x23a056)=>_0x23a056['credits']-_0x285361['credits']);}export async function getAllSourceStats(){const _0x359a68=a77_0x411c,_0x4e922b=await getOrUpdateCache(),_0x5424dd=_0x4e922b[_0x359a68(0x186)]||{},_0x22a5a5=new Date()[_0x359a68(0x181)]()[_0x359a68(0x16b)](0x0,0xa),_0x2ca8e8=new Date()['toISOString']()[_0x359a68(0x16b)](0x0,0x7);return Object[_0x359a68(0x15b)](_0x5424dd)[_0x359a68(0x17b)](([,_0x1206ac])=>_0x1206ac&&typeof _0x1206ac==='object')[_0x359a68(0x17e)](([_0xf8cade,_0xe2427])=>({'source':_0xf8cade,'credits':_0xe2427[_0x359a68(0x172)]||0x0,'todayCredits':_0xe2427[_0x359a68(0x162)]===_0x22a5a5?_0xe2427['todayCredits']||0x0:0x0,'monthCredits':_0xe2427['month']===_0x2ca8e8?_0xe2427[_0x359a68(0x18b)]||0x0:0x0,'entryCount':_0xe2427[_0x359a68(0x15f)]||0x0}))[_0x359a68(0x150)]((_0x3cad4b,_0x514660)=>_0x514660[_0x359a68(0x17d)]-_0x3cad4b[_0x359a68(0x17d)]);}export async function getUsageSummary(){const _0x76fee8=a77_0x411c,_0x5bd6e5=await getOrUpdateCache(),_0x2a2029=_0x5bd6e5[_0x76fee8(0x156)]||{},_0x1d1498=new Date()[_0x76fee8(0x181)]()[_0x76fee8(0x16b)](0x0,0xa),_0x4b9c28=new Date()[_0x76fee8(0x181)]()[_0x76fee8(0x16b)](0x0,0x7),_0x25048a=Object[_0x76fee8(0x173)](_0x2a2029)[_0x76fee8(0x17b)](_0x2d08bd=>_0x2d08bd&&typeof _0x2d08bd===_0x76fee8(0x165)),_0x1f0ac2=_0x25048a['reduce']((_0x3f866f,_0x1f06aa)=>_0x3f866f+(_0x1f06aa['totalCredits']||0x0),0x0);return{'todayCredits':_0x5bd6e5[_0x76fee8(0x15a)][_0x1d1498]?_0x5bd6e5[_0x76fee8(0x15a)][_0x1d1498][_0x76fee8(0x172)]||0x0:0x0,'monthCredits':_0x5bd6e5[_0x76fee8(0x177)][_0x4b9c28]?_0x5bd6e5[_0x76fee8(0x177)][_0x4b9c28][_0x76fee8(0x172)]||0x0:0x0,'totalCredits':_0x1f0ac2,'profileCount':_0x25048a[_0x76fee8(0x161)]};}
1
+ (function(_0x5edcb0,_0x989617){const _0x23efb2=a77_0x407a,_0x342fe2=_0x5edcb0();while(!![]){try{const _0x3ae905=-parseInt(_0x23efb2(0x155))/0x1+parseInt(_0x23efb2(0x130))/0x2+-parseInt(_0x23efb2(0x127))/0x3*(-parseInt(_0x23efb2(0x13f))/0x4)+-parseInt(_0x23efb2(0x141))/0x5*(-parseInt(_0x23efb2(0x142))/0x6)+-parseInt(_0x23efb2(0x13d))/0x7*(parseInt(_0x23efb2(0x159))/0x8)+-parseInt(_0x23efb2(0x138))/0x9+parseInt(_0x23efb2(0x15b))/0xa;if(_0x3ae905===_0x989617)break;else _0x342fe2['push'](_0x342fe2['shift']());}catch(_0x258f83){_0x342fe2['push'](_0x342fe2['shift']());}}}(a77_0x284d,0x90ec6));import{readFile,writeFile,appendFile,mkdir,readdir,stat}from'node:fs/promises';import{existsSync}from'node:fs';import{join,resolve}from'node:path';import{getModelPricing,calculateTokenCost,usdToAiCredits}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 _0x41885b=a77_0x407a;return!usageLogger&&(usageLogger=new TDXLogger(LogLevel[_0x41885b(0x14f)],!![]),await usageLogger['init']()),usageLogger;}function getUsageDir(){return join(getGlobalCacheDir(),'claude-usage');}function sanitizeSessionId(_0x4ddfc6){return _0x4ddfc6['replace'](/[^a-zA-Z0-9_-]/g,'_');}function a77_0x407a(_0x568b14,_0x45d208){_0x568b14=_0x568b14-0x126;const _0x284df7=a77_0x284d();let _0x407ac0=_0x284df7[_0x568b14];return _0x407ac0;}function getSafeJsonlPath(_0x348be2){const _0x1b75be=a77_0x407a,_0x371ae4=getUsageDir(),_0x1ef7a3=sanitizeSessionId(_0x348be2),_0x4bc7bf=resolve(_0x371ae4,_0x1ef7a3+_0x1b75be(0x139));if(!_0x4bc7bf[_0x1b75be(0x143)](_0x371ae4))throw new Error(_0x1b75be(0x147));return _0x4bc7bf;}function getStatsCachePath(){return join(getUsageDir(),'stats-cache.json');}async function ensureUsageDir(){const _0x2e4584=getUsageDir();!existsSync(_0x2e4584)&&await mkdir(_0x2e4584,{'recursive':!![]});}export async function appendUsageEntry(_0x302916,_0x58498e){const _0x4f8e5a=a77_0x407a,_0x33265a=sanitizeSessionId(_0x302916);await ensureUsageDir();const _0x38cda1=getSafeJsonlPath(_0x33265a),_0x4f568d=JSON['stringify'](_0x58498e)+'\x0a';await appendFile(_0x38cda1,_0x4f568d,_0x4f8e5a(0x14a));}async function readSessionJsonl(_0x4bac8){const _0x278346=a77_0x407a,_0x10a86b=getSafeJsonlPath(_0x4bac8);if(!existsSync(_0x10a86b))return[];try{const _0x3a0ce5=await readFile(_0x10a86b,_0x278346(0x14a)),_0x5e54b6=_0x3a0ce5[_0x278346(0x15c)]()[_0x278346(0x128)]('\x0a')[_0x278346(0x15f)](Boolean);return _0x5e54b6['map'](_0xe23485=>{const _0xd6c6f1=_0x278346;try{return JSON[_0xd6c6f1(0x12b)](_0xe23485);}catch{return null;}})[_0x278346(0x15f)](_0x355861=>_0x355861!==null);}catch(_0x523ea8){const _0x3de23f=await getLogger();return _0x3de23f[_0x278346(0x160)](_0x278346(0x152)+_0x4bac8+_0x278346(0x153),_0x523ea8 instanceof Error?_0x523ea8[_0x278346(0x132)]:String(_0x523ea8)),[];}}async function getAllSessionFiles(){const _0x23250b=a77_0x407a,_0x5cd6ad=getUsageDir();if(!existsSync(_0x5cd6ad))return[];try{const _0x1ce48c=await readdir(_0x5cd6ad);return _0x1ce48c[_0x23250b(0x15f)](_0x2eff78=>_0x2eff78['endsWith'](_0x23250b(0x139)))['map'](_0x92353d=>_0x92353d[_0x23250b(0x12e)](_0x23250b(0x139),''));}catch(_0x44c1a8){const _0x388ece=await getLogger();return _0x388ece[_0x23250b(0x160)](_0x23250b(0x156),_0x44c1a8 instanceof Error?_0x44c1a8['message']:String(_0x44c1a8)),[];}}async function readStatsCache(){const _0x561ea7=a77_0x407a,_0x1c86c5=getStatsCachePath();if(!existsSync(_0x1c86c5))return null;try{const _0x2f5f6b=await readFile(_0x1c86c5,'utf-8'),_0x15663c=JSON['parse'](_0x2f5f6b),_0x2dc318=Object[_0x561ea7(0x15e)](_0x15663c[_0x561ea7(0x135)]||{})[0x0];if(_0x2dc318&&_0x561ea7(0x161)in _0x2dc318)return null;return _0x15663c;}catch{return null;}}function a77_0x284d(){const _0x1e5718=['inputTokens','27642SCcDUM','split','monthly','credits','parse','entries','cacheReadInputTokens','replace','object','1951308GHJxoQ','daily','message','todayDate','length','sessions','profiles','profile','5808033oJuTiC','.jsonl','slice','contextSignature','toISOString','9233kspytY','lastUpdatedAt','340QeMRok','latestContextTokensBySignature','95oMSyhq','18486LlRZCW','startsWith','entryCount','outputTokens','todayCredits','Invalid\x20session\x20ID:\x20path\x20traversal\x20detected','map','timestamp','utf-8','model','sources','totalCredits','getTime','WARN','reduce','lastUsedAt','Failed\x20to\x20read\x20usage\x20file\x20','.jsonl:','sort','717635CAnMgf','Failed\x20to\x20read\x20usage\x20directory:','keys','cacheCreationInputTokens','1496SJHAqW','max','3858480daCcHY','trim','monthCredits','values','filter','warn','totalChatUnits','getFullYear'];a77_0x284d=function(){return _0x1e5718;};return a77_0x284d();}async function writeStatsCache(_0x3941dd){const _0x3f5c68=a77_0x407a;await ensureUsageDir();const _0x90f82e=getStatsCachePath();await writeFile(_0x90f82e,JSON['stringify'](_0x3941dd,null,0x2),_0x3f5c68(0x14a));}async function isCacheUpToDate(_0x433c3f,_0x4b9b8f){const _0x265812=a77_0x407a,_0x17c1e4=_0x433c3f[_0x265812(0x135)][_0x4b9b8f];if(!_0x17c1e4)return![];const _0x4caa30=getSafeJsonlPath(_0x4b9b8f);if(!existsSync(_0x4caa30))return!![];try{const _0x5f23e0=await stat(_0x4caa30),_0x74141b=new Date(_0x17c1e4[_0x265812(0x13e)])[_0x265812(0x14e)](),_0x2eb90f=_0x5f23e0['mtime']['getTime']();return _0x74141b>_0x2eb90f;}catch{return![];}}export async function rebuildCache(){const _0x22ec6f=a77_0x407a,_0xda1654=new Date(),_0x270e72=_0xda1654[_0x22ec6f(0x13c)]()[_0x22ec6f(0x13a)](0x0,0xa),_0x2fc170=_0xda1654[_0x22ec6f(0x13c)]()[_0x22ec6f(0x13a)](0x0,0x7),_0x23ab9f={'daily':{},'monthly':{},'sessions':{},'profiles':{},'sources':{},'lastRebuiltAt':_0xda1654['toISOString']()},_0x5339eb=await getAllSessionFiles();for(const _0x539924 of _0x5339eb){try{const _0x71b990=await readSessionJsonl(_0x539924);if(_0x71b990[_0x22ec6f(0x134)]===0x0)continue;let _0x4c2520=0x0;const _0x38e91b={};let _0x2034e1='';for(const _0x5f48b1 of _0x71b990){const _0x4c9f3a=getModelPricing(_0x5f48b1[_0x22ec6f(0x14b)]),_0x43889b=calculateTokenCost(_0x5f48b1[_0x22ec6f(0x126)],_0x5f48b1[_0x22ec6f(0x145)],_0x5f48b1[_0x22ec6f(0x158)]??0x0,_0x5f48b1[_0x22ec6f(0x12d)]??0x0,_0x4c9f3a),_0xed29a4=usdToAiCredits(_0x43889b);_0x4c2520+=_0xed29a4;const _0x527883=_0x5f48b1[_0x22ec6f(0x13b)]||'default';_0x38e91b[_0x527883]=_0x5f48b1['inputTokens']+(_0x5f48b1[_0x22ec6f(0x158)]??0x0)+(_0x5f48b1[_0x22ec6f(0x12d)]??0x0);_0x5f48b1[_0x22ec6f(0x149)]>_0x2034e1&&(_0x2034e1=_0x5f48b1[_0x22ec6f(0x149)]);const _0x207a79=_0x5f48b1['timestamp']['slice'](0x0,0xa);!_0x23ab9f[_0x22ec6f(0x131)][_0x207a79]&&(_0x23ab9f['daily'][_0x207a79]={'totalCredits':0x0,'entryCount':0x0});_0x23ab9f['daily'][_0x207a79][_0x22ec6f(0x14d)]+=_0xed29a4,_0x23ab9f['daily'][_0x207a79][_0x22ec6f(0x144)]+=0x1;const _0x26eb9a=_0x5f48b1['timestamp'][_0x22ec6f(0x13a)](0x0,0x7);!_0x23ab9f['monthly'][_0x26eb9a]&&(_0x23ab9f[_0x22ec6f(0x129)][_0x26eb9a]={'totalCredits':0x0,'entryCount':0x0});_0x23ab9f[_0x22ec6f(0x129)][_0x26eb9a][_0x22ec6f(0x14d)]+=_0xed29a4,_0x23ab9f[_0x22ec6f(0x129)][_0x26eb9a][_0x22ec6f(0x144)]+=0x1;const _0x408611=_0x5f48b1[_0x22ec6f(0x137)]||'default';!_0x23ab9f['profiles'][_0x408611]&&(_0x23ab9f[_0x22ec6f(0x136)][_0x408611]={'totalCredits':0x0,'entryCount':0x0,'lastUsedAt':'','todayCredits':0x0,'todayDate':_0x270e72,'monthCredits':0x0,'month':_0x2fc170});_0x23ab9f['profiles'][_0x408611][_0x22ec6f(0x14d)]+=_0xed29a4,_0x23ab9f[_0x22ec6f(0x136)][_0x408611][_0x22ec6f(0x144)]+=0x1;_0x5f48b1[_0x22ec6f(0x149)]>_0x23ab9f[_0x22ec6f(0x136)][_0x408611][_0x22ec6f(0x151)]&&(_0x23ab9f['profiles'][_0x408611][_0x22ec6f(0x151)]=_0x5f48b1[_0x22ec6f(0x149)]);_0x207a79===_0x270e72&&(_0x23ab9f['profiles'][_0x408611][_0x22ec6f(0x146)]+=_0xed29a4);_0x26eb9a===_0x2fc170&&(_0x23ab9f[_0x22ec6f(0x136)][_0x408611][_0x22ec6f(0x15d)]+=_0xed29a4);const _0x473f0d=_0x5f48b1['source']||'tdx-claude';!_0x23ab9f[_0x22ec6f(0x14c)][_0x473f0d]&&(_0x23ab9f[_0x22ec6f(0x14c)][_0x473f0d]={'totalCredits':0x0,'entryCount':0x0,'todayCredits':0x0,'todayDate':_0x270e72,'monthCredits':0x0,'month':_0x2fc170}),_0x23ab9f[_0x22ec6f(0x14c)][_0x473f0d][_0x22ec6f(0x14d)]+=_0xed29a4,_0x23ab9f[_0x22ec6f(0x14c)][_0x473f0d][_0x22ec6f(0x144)]+=0x1,_0x207a79===_0x270e72&&(_0x23ab9f[_0x22ec6f(0x14c)][_0x473f0d][_0x22ec6f(0x146)]+=_0xed29a4),_0x26eb9a===_0x2fc170&&(_0x23ab9f['sources'][_0x473f0d][_0x22ec6f(0x15d)]+=_0xed29a4);}_0x23ab9f['sessions'][_0x539924]={'totalCredits':_0x4c2520,'latestContextTokensBySignature':_0x38e91b,'createdAt':_0x71b990[0x0][_0x22ec6f(0x149)],'lastUpdatedAt':_0x2034e1};}catch(_0x2fae42){const _0x5b6066=await getLogger();_0x5b6066[_0x22ec6f(0x160)]('Failed\x20to\x20process\x20session\x20'+_0x539924+':',_0x2fae42 instanceof Error?_0x2fae42[_0x22ec6f(0x132)]:String(_0x2fae42));continue;}}return cleanupOldEntries(_0x23ab9f),await writeStatsCache(_0x23ab9f),_0x23ab9f;}function cleanupOldEntries(_0x4a9ea0){const _0x49560d=a77_0x407a,_0xd8bc82=new Date(),_0x48c106=new Date(_0xd8bc82[_0x49560d(0x14e)]()-0x7*0x18*0x3c*0x3c*0x3e8);for(const _0x151a7a of Object['keys'](_0x4a9ea0['daily'])){new Date(_0x151a7a)<_0x48c106&&delete _0x4a9ea0[_0x49560d(0x131)][_0x151a7a];}const _0x55257a=new Date(_0xd8bc82[_0x49560d(0x162)]()-0x1,_0xd8bc82['getMonth'](),0x1);for(const _0x2df523 of Object[_0x49560d(0x157)](_0x4a9ea0['monthly'])){const [_0x54bcd1,_0x1b16dd]=_0x2df523[_0x49560d(0x128)]('-')[_0x49560d(0x148)](Number),_0x2827e6=new Date(_0x54bcd1,_0x1b16dd-0x1,0x1);_0x2827e6<_0x55257a&&delete _0x4a9ea0[_0x49560d(0x129)][_0x2df523];}const _0x4f8447=new Date(_0xd8bc82['getTime']()-0x1e*0x18*0x3c*0x3c*0x3e8);for(const [_0x56128a,_0x200508]of Object[_0x49560d(0x12c)](_0x4a9ea0['sessions'])){new Date(_0x200508['lastUpdatedAt'])<_0x4f8447&&delete _0x4a9ea0[_0x49560d(0x135)][_0x56128a];}}export async function getOrUpdateCache(_0x449f5f){const _0xcd7175=_0x449f5f?sanitizeSessionId(_0x449f5f):undefined,_0x14721a=await readStatsCache();if(!_0x14721a)return rebuildCache();if(_0xcd7175){const _0x154b2f=await isCacheUpToDate(_0x14721a,_0xcd7175);if(!_0x154b2f)return rebuildCache();}return _0x14721a;}export async function getSessionCredits(_0x454892){const _0x53e857=sanitizeSessionId(_0x454892),_0x50430a=await getOrUpdateCache(_0x53e857),_0xd6a9c2=_0x50430a['sessions'][_0x53e857];if(!_0xd6a9c2)return 0x0;return _0xd6a9c2['totalCredits'];}export async function getTodayCredits(){const _0x2c3869=a77_0x407a,_0x511b34=await getOrUpdateCache(),_0x559316=new Date()[_0x2c3869(0x13c)]()[_0x2c3869(0x13a)](0x0,0xa),_0x363306=_0x511b34[_0x2c3869(0x131)][_0x559316];if(!_0x363306)return 0x0;return _0x363306['totalCredits'];}export async function getMonthCredits(){const _0x24d4ca=a77_0x407a,_0x211edf=await getOrUpdateCache(),_0x26d665=new Date()[_0x24d4ca(0x13c)]()[_0x24d4ca(0x13a)](0x0,0x7),_0x9ba172=_0x211edf['monthly'][_0x26d665];if(!_0x9ba172)return 0x0;return _0x9ba172[_0x24d4ca(0x14d)];}export async function getSessionStats(_0x176e2b){const _0x5684b5=a77_0x407a,_0xe91b33=sanitizeSessionId(_0x176e2b),_0x5bb04b=await getOrUpdateCache(_0xe91b33);return _0x5bb04b[_0x5684b5(0x135)][_0xe91b33]||null;}function getMaxLatestContextTokens(_0x507dd1){const _0x50a26f=a77_0x407a,_0x2c81f7=Object[_0x50a26f(0x15e)](_0x507dd1);if(_0x2c81f7[_0x50a26f(0x134)]===0x0)return 0x0;return Math[_0x50a26f(0x15a)](..._0x2c81f7);}export async function getUsageStats(_0x460364,_0x1dc3ed){const _0x40b672=a77_0x407a,_0x5d31ce=sanitizeSessionId(_0x460364),_0x88be7b=await getOrUpdateCache(_0x5d31ce),_0x4c784e=_0x88be7b[_0x40b672(0x135)][_0x5d31ce],_0x49a5dd=new Date()[_0x40b672(0x13c)]()['slice'](0x0,0xa),_0x4e70a9=new Date()[_0x40b672(0x13c)]()[_0x40b672(0x13a)](0x0,0x7);if(_0x1dc3ed){const _0x897cec=_0x88be7b[_0x40b672(0x136)]?.[_0x1dc3ed],_0x1e9900=_0x897cec?.[_0x40b672(0x133)]===_0x49a5dd?_0x897cec['todayCredits']:0x0,_0x3310d9=_0x897cec?.['month']===_0x4e70a9?_0x897cec[_0x40b672(0x15d)]:0x0;return{'sessionCredits':_0x4c784e?_0x4c784e['totalCredits']:0x0,'todayCredits':_0x1e9900,'monthCredits':_0x3310d9,'latestContextTokens':_0x4c784e?getMaxLatestContextTokens(_0x4c784e[_0x40b672(0x140)]):0x0};}return{'sessionCredits':_0x4c784e?_0x4c784e[_0x40b672(0x14d)]:0x0,'todayCredits':_0x88be7b[_0x40b672(0x131)][_0x49a5dd]?_0x88be7b['daily'][_0x49a5dd][_0x40b672(0x14d)]:0x0,'monthCredits':_0x88be7b[_0x40b672(0x129)][_0x4e70a9]?_0x88be7b['monthly'][_0x4e70a9]['totalCredits']:0x0,'latestContextTokens':_0x4c784e?getMaxLatestContextTokens(_0x4c784e[_0x40b672(0x140)]):0x0};}export async function getAllProfileStats(){const _0x37794e=a77_0x407a,_0x190163=await getOrUpdateCache(),_0x325423=_0x190163['profiles']||{};return Object[_0x37794e(0x12c)](_0x325423)[_0x37794e(0x15f)](([,_0x3330d1])=>_0x3330d1&&typeof _0x3330d1===_0x37794e(0x12f))[_0x37794e(0x148)](([_0x31560d,_0x120852])=>({'profile':_0x31560d,'credits':_0x120852[_0x37794e(0x14d)]||0x0,'entryCount':_0x120852[_0x37794e(0x144)]||0x0,'lastUsedAt':_0x120852[_0x37794e(0x151)]||''}))['sort']((_0x59f812,_0x5ad809)=>_0x5ad809[_0x37794e(0x12a)]-_0x59f812[_0x37794e(0x12a)]);}export async function getAllSourceStats(){const _0x132168=a77_0x407a,_0x4f3dd7=await getOrUpdateCache(),_0x5e51ac=_0x4f3dd7[_0x132168(0x14c)]||{},_0x3e8c8c=new Date()['toISOString']()[_0x132168(0x13a)](0x0,0xa),_0x34c34e=new Date()[_0x132168(0x13c)]()[_0x132168(0x13a)](0x0,0x7);return Object[_0x132168(0x12c)](_0x5e51ac)[_0x132168(0x15f)](([,_0x23f951])=>_0x23f951&&typeof _0x23f951===_0x132168(0x12f))[_0x132168(0x148)](([_0x5501b0,_0x498620])=>({'source':_0x5501b0,'credits':_0x498620[_0x132168(0x14d)]||0x0,'todayCredits':_0x498620[_0x132168(0x133)]===_0x3e8c8c?_0x498620['todayCredits']||0x0:0x0,'monthCredits':_0x498620['month']===_0x34c34e?_0x498620[_0x132168(0x15d)]||0x0:0x0,'entryCount':_0x498620[_0x132168(0x144)]||0x0}))[_0x132168(0x154)]((_0x260262,_0x44d0d5)=>_0x44d0d5[_0x132168(0x12a)]-_0x260262[_0x132168(0x12a)]);}export async function getUsageSummary(){const _0x19a091=a77_0x407a,_0x4bf74d=await getOrUpdateCache(),_0x51aff5=_0x4bf74d[_0x19a091(0x136)]||{},_0x441dc8=new Date()['toISOString']()[_0x19a091(0x13a)](0x0,0xa),_0x304003=new Date()['toISOString']()[_0x19a091(0x13a)](0x0,0x7),_0x14dbef=Object[_0x19a091(0x15e)](_0x51aff5)[_0x19a091(0x15f)](_0x1071ea=>_0x1071ea&&typeof _0x1071ea===_0x19a091(0x12f)),_0x2ea380=_0x14dbef[_0x19a091(0x150)]((_0x33f6f4,_0x58fc62)=>_0x33f6f4+(_0x58fc62[_0x19a091(0x14d)]||0x0),0x0);return{'todayCredits':_0x4bf74d[_0x19a091(0x131)][_0x441dc8]?_0x4bf74d[_0x19a091(0x131)][_0x441dc8]['totalCredits']||0x0:0x0,'monthCredits':_0x4bf74d['monthly'][_0x304003]?_0x4bf74d['monthly'][_0x304003]['totalCredits']||0x0:0x0,'totalCredits':_0x2ea380,'profileCount':_0x14dbef['length']};}
@@ -1 +1 @@
1
- const a78_0x26c689=a78_0x3a55;(function(_0x1ba822,_0x3e8158){const _0x32dc5b=a78_0x3a55,_0x134fbd=_0x1ba822();while(!![]){try{const _0x4493a0=parseInt(_0x32dc5b(0xc3))/0x1+-parseInt(_0x32dc5b(0xa1))/0x2+-parseInt(_0x32dc5b(0x8a))/0x3*(parseInt(_0x32dc5b(0x92))/0x4)+-parseInt(_0x32dc5b(0x100))/0x5*(parseInt(_0x32dc5b(0xe1))/0x6)+parseInt(_0x32dc5b(0xd4))/0x7+parseInt(_0x32dc5b(0xeb))/0x8*(parseInt(_0x32dc5b(0xb2))/0x9)+parseInt(_0x32dc5b(0xbc))/0xa;if(_0x4493a0===_0x3e8158)break;else _0x134fbd['push'](_0x134fbd['shift']());}catch(_0x31cd27){_0x134fbd['push'](_0x134fbd['shift']());}}}(a78_0x5e8c,0xee15b));import a78_0x5990ec from'fastify';import a78_0x140496 from'@fastify/cors';import{SSEUsageTracker}from'./sse-usage-parser.js';function a78_0x3a55(_0x259617,_0x8d3c8b){_0x259617=_0x259617-0x6f;const _0x5e8c4d=a78_0x5e8c();let _0x3a55e8=_0x5e8c4d[_0x259617];return _0x3a55e8;}import{appendUsageEntry}from'./claude-usage-tracker.js';import{getVersion}from'../core/version.js';import{isExperimentalAvailable}from'../core/config.js';import{refreshAccessToken}from'../sdk/client/oauth-refresh.js';import{saveOAuthTokens}from'../core/oauth-keychain.js';const DEFAULT_TIMEOUT_MS=0x5*0x3c*0x3e8,TDX_SYSTEM_PROMPT=a78_0x26c689(0xce)+(isExperimentalAvailable()?a78_0x26c689(0x70):'')+a78_0x26c689(0x101);function extractSessionUUID(_0x3ce531){const _0x1e42a4=a78_0x26c689,_0x306665=_0x3ce531[_0x1e42a4(0xf1)](/_session_([a-f0-9-]+)$/i);if(_0x306665)return _0x306665[0x1];return _0x3ce531;}export function injectSystemPrompt(_0x2c4519,_0x2127a6){const _0x4f2eb8=a78_0x26c689,_0x58a054=_0x2c4519['system'];if(!_0x58a054)return{..._0x2c4519,'system':_0x2127a6};if(typeof _0x58a054==='string')return{..._0x2c4519,'system':_0x58a054+'\x0a\x0a'+_0x2127a6};if(Array['isArray'](_0x58a054)){const _0x14da17={'type':_0x4f2eb8(0xaf),'text':_0x2127a6};return{..._0x2c4519,'system':[..._0x58a054,_0x14da17]};}return _0x2c4519;}export function shouldInjectSystemPrompt(_0x2c3c63){const _0x3b56c0=a78_0x26c689;return!_0x2c3c63[_0x3b56c0(0xe0)]()[_0x3b56c0(0x99)](_0x3b56c0(0xa0));}function a78_0x5e8c(){const _0x57f70f=['OPTIONS','30ggZWtS','GET','logger','outputTokens','setErrorHandler','[PASSTHROUGH]\x20Failed\x20to\x20log\x20usage:','headers','decode','357032UUOsAC','read',',\x20output=','getUsage','handleCountTokens','usage','X-TD-Client','includes','Authorization','raw','_boundPort','close','authorization','x-td-','haiku','725272FJFJNS','parse',',\x20cache_read=','port','register','url','refresh_token','accessToken','Bearer\x20','http://127.0.0.1:','[PASSTHROUGH]\x20Usage:\x20input=','content-length','api_error','config','text','post','tdx-claude','152199pkfsbr','Unknown\x20error','/v1/messages/count_tokens','no-cache','startPort','setupMiddleware','error','method','startsWith',',\x20model=','31712140wkJfkD','setupJsonParser','user_id','indexOf','X-TD-Client-Version','expiresAt','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20count_tokens\x20request:','389815VXwaIj','default','llmProxyUrl',',\x20cache_create=','Content-Type','oauth','name','POST','buildForwardHeaders','isArray','refreshTokenIfNeeded','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','setupRoutes','message','Error\x20body:\x20','status','unref','1568469oyuRoN','refreshTimer','cacheReadInputTokens','TD\x20LLM\x20Pass-through\x20Proxy\x20Server','handleStreamingResponse','connection','/health','TimeoutError','body','startTokenRefreshTimer','createServer','length','toLowerCase','6bvtiJF',':\x20messages=','toISOString','timeout','auth','tdx/','now','text/event-stream','No\x20available\x20port\x20found\x20between\x20','tdx','144btLnxl','type','has','\x20in\x20use,\x20trying\x20next...','host','header','match','application/json','logUsage','inputTokens','listen','stringify','debug','metadata','TD1\x20','entries','Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20','maxPortAttempts','cacheCreationInputTokens','[PASSTHROUGH]\x20Upstream\x20error:\x20','refreshToken','9295415UZbDRn','|\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|','timeout_error','x-api-key','SKIP_HEADERS','server','start','\x20and\x20','info','Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20','getAddress','Pass-through\x20proxy\x20server\x20started\x20on\x20port\x20','get','send','model','User-Agent','[PASSTHROUGH]\x20OAuth\x20token\x20refresh\x20failed:','|\x20Debug\x20agent\x20issues\x20|\x20tdx-skills:agent-debug\x20|\x0a','stop','string','flush','127.0.0.1','write','Pass-through\x20proxy\x20server\x20stopped','expires_at','consoleUrl','/v1/messages','keep-alive','addContentTypeParser',',\x20stream=','handleMessages','unknown','output_tokens','statusText','Forwarding\x20to:\x20','[PASSTHROUGH]\x20Forwarding\x20count_tokens\x20to:\x20','slice','cache_creation_input_tokens','writeHead','messages','stream_error','code'];a78_0x5e8c=function(){return _0x57f70f;};return a78_0x5e8c();}const TOKEN_REFRESH_INTERVAL_MS=0x5*0x3c*0x3e8,TOKEN_EXPIRY_BUFFER_MS=0x5*0x3c*0x3e8;export class PassThroughProxyServer{[a78_0x26c689(0x105)];[a78_0x26c689(0xae)];[a78_0x26c689(0x8c)];[a78_0x26c689(0x9c)];[a78_0x26c689(0xd5)];constructor(_0x5ae7a3){const _0x31c471=a78_0x26c689;this['config']=_0x5ae7a3,this[_0x31c471(0x8c)]=_0x5ae7a3[_0x31c471(0x8c)],this[_0x31c471(0x105)]=this['createServer']();}get[a78_0x26c689(0xa4)](){const _0x18abcf=a78_0x26c689;if(this[_0x18abcf(0x9c)]===undefined)throw new Error('Server\x20has\x20not\x20been\x20started\x20yet');return this[_0x18abcf(0x9c)];}[a78_0x26c689(0xde)](){const _0x1143e4=a78_0x26c689,_0x466976=a78_0x5990ec({'logger':![],'bodyLimit':0x40*0x400*0x400});return this['server']=_0x466976,this['setupJsonParser'](),this['setupMiddleware'](),this[_0x1143e4(0xcf)](),_0x466976;}[a78_0x26c689(0xbd)](){const _0x104bac=a78_0x26c689;this[_0x104bac(0x105)][_0x104bac(0x7b)](_0x104bac(0xf2),{'parseAs':_0x104bac(0x72)},(_0x5e7e6d,_0x3dcab9,_0x2059ac)=>{const _0x1df8ad=_0x104bac;try{const _0x478f80=JSON[_0x1df8ad(0xa2)](_0x3dcab9);_0x2059ac(null,_0x478f80);}catch(_0x40c50a){_0x2059ac(_0x40c50a,undefined);}});}[a78_0x26c689(0xb7)](){const _0xf59ac4=a78_0x26c689;this[_0xf59ac4(0x105)][_0xf59ac4(0xa5)](a78_0x140496,{'origin':!![],'methods':[_0xf59ac4(0x8b),'POST',_0xf59ac4(0x89)],'allowedHeaders':['Content-Type',_0xf59ac4(0x9a),'anthropic-version',_0xf59ac4(0x103)]}),this[_0xf59ac4(0x105)][_0xf59ac4(0x8e)]((_0x2c9265,_0x25d38f,_0x4738a2)=>{const _0x382946=_0xf59ac4,_0x5368ee=_0x2c9265 instanceof Error?_0x2c9265['message']:_0x382946(0xb3);this['logger']['error']('[PASSTHROUGH\x20PROXY\x20ERROR]:',_0x2c9265),_0x4738a2[_0x382946(0x88)](0x1f4)[_0x382946(0x10d)]({'type':_0x382946(0xb8),'error':{'type':_0x382946(0xad),'message':_0x5368ee}});});}['setupRoutes'](){const _0x542ef5=a78_0x26c689;this['server']['get'](_0x542ef5(0xda),async()=>{const _0x9eedb5=_0x542ef5;return{'status':'ok','message':_0x9eedb5(0xd7)};}),this[_0x542ef5(0x105)][_0x542ef5(0xb0)]('/v1/messages',async(_0x3ed8e8,_0x32f729)=>{const _0x978bf3=_0x542ef5;return this[_0x978bf3(0x7d)](_0x3ed8e8,_0x32f729);}),this[_0x542ef5(0x105)][_0x542ef5(0xb0)](_0x542ef5(0xb4),async(_0x533184,_0x26bcd0)=>{const _0xf94023=_0x542ef5;return this[_0xf94023(0x96)](_0x533184,_0x26bcd0);});}static ['SKIP_HEADERS']=new Set([a78_0x26c689(0xef),a78_0x26c689(0xd9),a78_0x26c689(0xac),'transfer-encoding',a78_0x26c689(0x9e),a78_0x26c689(0x103),'user-agent']);['buildForwardHeaders'](_0x474bce){const _0x31d959=a78_0x26c689,_0x5da4c5={};for(const [_0x4ea3c0,_0x5917ad]of Object[_0x31d959(0xfa)](_0x474bce['headers'])){const _0x254222=_0x4ea3c0[_0x31d959(0xe0)]();if(PassThroughProxyServer[_0x31d959(0x104)][_0x31d959(0xed)](_0x254222))continue;if(_0x254222[_0x31d959(0xba)](_0x31d959(0x9f)))continue;if(typeof _0x5917ad===_0x31d959(0x72))_0x5da4c5[_0x4ea3c0]=_0x5917ad;else Array[_0x31d959(0xcc)](_0x5917ad)&&(_0x5da4c5[_0x4ea3c0]=_0x5917ad['join'](',\x20'));}const _0x34ba8c=getVersion(),{auth:_0x5dcfe0}=this[_0x31d959(0xae)];return _0x5da4c5['Authorization']=_0x5dcfe0[_0x31d959(0xec)]===_0x31d959(0xc8)?_0x31d959(0xa9)+_0x5dcfe0['accessToken']:_0x31d959(0xf9)+_0x5dcfe0['apiKey'],_0x5da4c5[_0x31d959(0x10f)]=_0x31d959(0xe6)+_0x34ba8c,_0x5da4c5[_0x31d959(0x98)]=_0x31d959(0xea),_0x5da4c5[_0x31d959(0xc0)]=_0x34ba8c,_0x5da4c5;}async[a78_0x26c689(0x7d)](_0x33bf92,_0x474cf3){const _0x2ae5eb=a78_0x26c689,_0x5ef99a=_0x33bf92[_0x2ae5eb(0xdc)],_0x2fd2f1=_0x5ef99a['stream']!==![],_0x49bff8=_0x5ef99a[_0x2ae5eb(0xf8)],_0x3620b7=_0x49bff8?.[_0x2ae5eb(0xbe)]||_0x2ae5eb(0xc4),_0x2f4b72=extractSessionUUID(_0x3620b7),_0x3b1927=_0x5ef99a[_0x2ae5eb(0x10e)]||'unknown',_0x4ff182=shouldInjectSystemPrompt(_0x3b1927)?injectSystemPrompt(_0x5ef99a,TDX_SYSTEM_PROMPT):_0x5ef99a,_0x3cb412=JSON[_0x2ae5eb(0xf6)](_0x4ff182),_0x311234=Array[_0x2ae5eb(0xcc)](_0x5ef99a[_0x2ae5eb(0x86)])?_0x5ef99a[_0x2ae5eb(0x86)][_0x2ae5eb(0xdf)]:0x0;this[_0x2ae5eb(0x8c)][_0x2ae5eb(0x108)]('[PASSTHROUGH]\x20'+_0x33bf92[_0x2ae5eb(0xb9)]+'\x20'+_0x33bf92[_0x2ae5eb(0xa6)]+_0x2ae5eb(0xe2)+_0x311234+',\x20model='+_0x3b1927+_0x2ae5eb(0x7c)+_0x2fd2f1);const _0x2bd790=_0x33bf92[_0x2ae5eb(0xa6)][_0x2ae5eb(0x99)]('?')?_0x33bf92['url'][_0x2ae5eb(0x83)](_0x33bf92[_0x2ae5eb(0xa6)][_0x2ae5eb(0xbf)]('?')):'',_0x2d16d1=this[_0x2ae5eb(0xae)][_0x2ae5eb(0xc5)]+_0x2ae5eb(0x79)+_0x2bd790,_0x5526fb=this['buildForwardHeaders'](_0x33bf92);this[_0x2ae5eb(0x8c)][_0x2ae5eb(0xf7)](_0x2ae5eb(0x81)+_0x2d16d1);const _0xcdde1d=this['config']['timeoutMs']||DEFAULT_TIMEOUT_MS;try{const _0x31d5a7=await fetch(_0x2d16d1,{'method':_0x2ae5eb(0xca),'headers':_0x5526fb,'body':_0x3cb412,'signal':AbortSignal[_0x2ae5eb(0xe4)](_0xcdde1d)});if(!_0x31d5a7['ok']){const _0x59b39d=await _0x31d5a7['text']();return this[_0x2ae5eb(0x8c)]['error'](_0x2ae5eb(0xfe)+_0x31d5a7['status']+'\x20'+_0x31d5a7[_0x2ae5eb(0x80)]),this[_0x2ae5eb(0x8c)][_0x2ae5eb(0xf7)](_0x2ae5eb(0xd1)+_0x59b39d),_0x474cf3[_0x2ae5eb(0x88)](_0x31d5a7[_0x2ae5eb(0xd2)]),_0x474cf3[_0x2ae5eb(0xf0)](_0x2ae5eb(0xc7),_0x31d5a7[_0x2ae5eb(0x90)][_0x2ae5eb(0x10c)]('Content-Type')||_0x2ae5eb(0xf2)),_0x474cf3[_0x2ae5eb(0x10d)](_0x59b39d);}if(_0x2fd2f1&&_0x31d5a7[_0x2ae5eb(0xdc)])await this[_0x2ae5eb(0xd8)](_0x31d5a7[_0x2ae5eb(0xdc)],_0x474cf3,_0x2f4b72,_0x3b1927);else{const _0x24715d=await _0x31d5a7[_0x2ae5eb(0xaf)]();_0x474cf3[_0x2ae5eb(0xf0)](_0x2ae5eb(0xc7),_0x31d5a7[_0x2ae5eb(0x90)][_0x2ae5eb(0x10c)]('Content-Type')||_0x2ae5eb(0xf2));try{const _0x1bff6b=JSON['parse'](_0x24715d);_0x1bff6b[_0x2ae5eb(0x97)]&&await this[_0x2ae5eb(0xf3)](_0x2f4b72,_0x3b1927,_0x1bff6b[_0x2ae5eb(0x97)]['input_tokens']||0x0,_0x1bff6b[_0x2ae5eb(0x97)][_0x2ae5eb(0x7f)]||0x0,_0x1bff6b[_0x2ae5eb(0x97)][_0x2ae5eb(0x84)],_0x1bff6b[_0x2ae5eb(0x97)]['cache_read_input_tokens']);}catch{}return _0x474cf3['send'](_0x24715d);}}catch(_0x3422ae){const _0x1a61ab=_0x3422ae instanceof Error?_0x3422ae[_0x2ae5eb(0xd0)]:_0x2ae5eb(0xb3),_0x5a2319=_0x3422ae instanceof Error&&_0x3422ae['name']===_0x2ae5eb(0xdb);this[_0x2ae5eb(0x8c)][_0x2ae5eb(0xb8)]('[PASSTHROUGH]\x20Failed\x20to\x20forward\x20request:',_0x3422ae),_0x474cf3[_0x2ae5eb(0x88)](_0x5a2319?0x1f8:0x1f7)[_0x2ae5eb(0x10d)]({'type':'error','error':{'type':_0x5a2319?'timeout_error':_0x2ae5eb(0xad),'message':_0x5a2319?_0x2ae5eb(0x109)+_0xcdde1d+'ms':_0x2ae5eb(0xfb)+_0x1a61ab}});}}async[a78_0x26c689(0xd8)](_0x4acd36,_0x2181ab,_0x5b15f2,_0x4e8744){const _0x2c597b=a78_0x26c689;_0x2181ab[_0x2c597b(0x9b)][_0x2c597b(0x85)](0xc8,{'Content-Type':_0x2c597b(0xe8),'Cache-Control':_0x2c597b(0xb5),'Connection':_0x2c597b(0x7a)});const _0x38c621=new SSEUsageTracker(),_0x48458f=_0x4acd36['getReader'](),_0x149aba=new TextDecoder();try{while(!![]){const {done:_0x4ce8dc,value:_0x4df188}=await _0x48458f[_0x2c597b(0x93)]();if(_0x4ce8dc)break;const _0x1c210a=_0x149aba[_0x2c597b(0x91)](_0x4df188,{'stream':!![]});_0x38c621['processChunk'](_0x1c210a),_0x2181ab[_0x2c597b(0x9b)][_0x2c597b(0x75)](_0x1c210a);}_0x38c621[_0x2c597b(0x73)]();const _0x5a3995=_0x38c621[_0x2c597b(0x95)]();(_0x5a3995[_0x2c597b(0xf4)]>0x0||_0x5a3995[_0x2c597b(0x8d)]>0x0)&&await this[_0x2c597b(0xf3)](_0x5b15f2,_0x4e8744,_0x5a3995['inputTokens'],_0x5a3995[_0x2c597b(0x8d)],_0x5a3995[_0x2c597b(0xfd)],_0x5a3995[_0x2c597b(0xd6)]);}catch(_0x35abc6){this[_0x2c597b(0x8c)][_0x2c597b(0xb8)]('[PASSTHROUGH]\x20Stream\x20error:',_0x35abc6);const _0x5e14f7='event:\x20error\x0adata:\x20'+JSON[_0x2c597b(0xf6)]({'type':_0x2c597b(0xb8),'error':{'type':_0x2c597b(0x87),'message':'Stream\x20interrupted'}})+'\x0a\x0a';_0x2181ab['raw'][_0x2c597b(0x75)](_0x5e14f7);}finally{_0x2181ab[_0x2c597b(0x9b)]['end']();}}async[a78_0x26c689(0x96)](_0xdb2bd4,_0x531f4c){const _0x10f35c=a78_0x26c689,_0x26bbe=_0xdb2bd4[_0x10f35c(0xdc)],_0x527249=_0xdb2bd4[_0x10f35c(0xa6)][_0x10f35c(0x99)]('?')?_0xdb2bd4['url'][_0x10f35c(0x83)](_0xdb2bd4[_0x10f35c(0xa6)]['indexOf']('?')):'',_0x1cb12f=this[_0x10f35c(0xae)]['llmProxyUrl']+_0x10f35c(0xb4)+_0x527249,_0x3b10d3=this[_0x10f35c(0xcb)](_0xdb2bd4),_0x39576e=_0x26bbe['model']||_0x10f35c(0x7e),_0x2eaa7d=shouldInjectSystemPrompt(_0x39576e)?injectSystemPrompt(_0x26bbe,TDX_SYSTEM_PROMPT):_0x26bbe,_0x254125=JSON[_0x10f35c(0xf6)](_0x2eaa7d);this[_0x10f35c(0x8c)]['debug'](_0x10f35c(0x82)+_0x1cb12f);const _0xa61ec7=this[_0x10f35c(0xae)]['timeoutMs']||DEFAULT_TIMEOUT_MS;try{const _0x3da6dd=await fetch(_0x1cb12f,{'method':_0x10f35c(0xca),'headers':_0x3b10d3,'body':_0x254125,'signal':AbortSignal[_0x10f35c(0xe4)](_0xa61ec7)}),_0x30db4a=await _0x3da6dd['text']();return _0x531f4c['code'](_0x3da6dd[_0x10f35c(0xd2)]),_0x531f4c[_0x10f35c(0xf0)]('Content-Type',_0x3da6dd[_0x10f35c(0x90)]['get']('Content-Type')||_0x10f35c(0xf2)),_0x531f4c[_0x10f35c(0x10d)](_0x30db4a);}catch(_0x29cb40){const _0x17dd66=_0x29cb40 instanceof Error?_0x29cb40[_0x10f35c(0xd0)]:_0x10f35c(0xb3),_0x10318e=_0x29cb40 instanceof Error&&_0x29cb40[_0x10f35c(0xc9)]===_0x10f35c(0xdb);this[_0x10f35c(0x8c)][_0x10f35c(0xb8)](_0x10f35c(0xc2),_0x29cb40),_0x531f4c[_0x10f35c(0x88)](_0x10318e?0x1f8:0x1f7)['send']({'type':'error','error':{'type':_0x10318e?_0x10f35c(0x102):'api_error','message':_0x10318e?'Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20'+_0xa61ec7+'ms':'Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20'+_0x17dd66}});}}async[a78_0x26c689(0xf3)](_0x3da305,_0x3c54df,_0x21d372,_0x16a731,_0x45d078,_0x3a2526){const _0x665862=a78_0x26c689,_0x4e2756={'timestamp':new Date()[_0x665862(0xe3)](),'model':_0x3c54df,'inputTokens':_0x21d372,'outputTokens':_0x16a731,'cacheCreationInputTokens':_0x45d078,'cacheReadInputTokens':_0x3a2526,'profile':this[_0x665862(0xae)]['profile'],'source':_0x665862(0xb1)},_0x3da458=_0x45d078||_0x3a2526?_0x665862(0xc6)+(_0x45d078||0x0)+_0x665862(0xa3)+(_0x3a2526||0x0):'';this[_0x665862(0x8c)][_0x665862(0xf7)](_0x665862(0xab)+_0x21d372+_0x665862(0x94)+_0x16a731+_0x3da458+_0x665862(0xbb)+_0x3c54df);try{await appendUsageEntry(_0x3da305,_0x4e2756);}catch(_0x462092){this['logger']['error'](_0x665862(0x8f),_0x462092);}}[a78_0x26c689(0xdd)](){const _0x111bd5=a78_0x26c689;if(this['config'][_0x111bd5(0xe5)][_0x111bd5(0xec)]!==_0x111bd5(0xc8))return;this[_0x111bd5(0xd5)]=setInterval(()=>{void this['refreshTokenIfNeeded']();},TOKEN_REFRESH_INTERVAL_MS),this[_0x111bd5(0xd5)][_0x111bd5(0xd3)]();}async[a78_0x26c689(0xcd)](){const _0xc55ea6=a78_0x26c689,{auth:_0x432e0f}=this[_0xc55ea6(0xae)];if(_0x432e0f[_0xc55ea6(0xec)]!=='oauth')return;const _0x3f2523=!_0x432e0f[_0xc55ea6(0xc1)]||_0x432e0f['expiresAt']<Date[_0xc55ea6(0xe7)]()+TOKEN_EXPIRY_BUFFER_MS;if(!_0x3f2523)return;try{const _0x52face=await refreshAccessToken(_0x432e0f[_0xc55ea6(0x78)],_0x432e0f['refreshToken']);_0x432e0f[_0xc55ea6(0xa8)]=_0x52face['access_token'],_0x432e0f[_0xc55ea6(0xff)]=_0x52face[_0xc55ea6(0xa7)],_0x432e0f['expiresAt']=_0x52face[_0xc55ea6(0x77)],await saveOAuthTokens(_0x52face,this[_0xc55ea6(0xae)]['profile']),this[_0xc55ea6(0x8c)]['info']('[PASSTHROUGH]\x20OAuth\x20token\x20refreshed\x20successfully');}catch(_0x109c25){this['logger'][_0xc55ea6(0xb8)](_0xc55ea6(0x6f),_0x109c25);}}async[a78_0x26c689(0x106)](){const _0x37bfa6=a78_0x26c689,_0x1d9038=this[_0x37bfa6(0xae)][_0x37bfa6(0xfc)]??0x64;for(let _0x5e1f77=0x0;_0x5e1f77<_0x1d9038;_0x5e1f77++){const _0x5f7326=this['config']['startPort']+_0x5e1f77;try{await this['server'][_0x37bfa6(0xf5)]({'port':_0x5f7326,'host':_0x37bfa6(0x74)}),this['_boundPort']=_0x5f7326,this[_0x37bfa6(0x8c)][_0x37bfa6(0x108)](_0x37bfa6(0x10b)+_0x5f7326),this[_0x37bfa6(0x8c)][_0x37bfa6(0x108)](_0x37bfa6(0x81)+this[_0x37bfa6(0xae)]['llmProxyUrl']),this['startTokenRefreshTimer']();return;}catch(_0x11bc61){const _0x5b930e=_0x11bc61 instanceof Error&&'code'in _0x11bc61&&_0x11bc61['code']==='EADDRINUSE';if(!_0x5b930e)throw _0x11bc61;this['logger'][_0x37bfa6(0xf7)]('Port\x20'+_0x5f7326+_0x37bfa6(0xee)),this[_0x37bfa6(0xde)]();}}const _0x16def9=this[_0x37bfa6(0xae)][_0x37bfa6(0xb6)]+_0x1d9038-0x1;throw new Error(_0x37bfa6(0xe9)+this[_0x37bfa6(0xae)][_0x37bfa6(0xb6)]+_0x37bfa6(0x107)+_0x16def9);}async[a78_0x26c689(0x71)](){const _0x333013=a78_0x26c689;this['refreshTimer']&&(clearInterval(this[_0x333013(0xd5)]),this['refreshTimer']=undefined),await this[_0x333013(0x105)][_0x333013(0x9d)](),this[_0x333013(0x8c)][_0x333013(0x108)](_0x333013(0x76));}[a78_0x26c689(0x10a)](){const _0x33e682=a78_0x26c689;return _0x33e682(0xaa)+this['port'];}}
1
+ const a78_0x1c5c5e=a78_0x3184;(function(_0x22fde9,_0x4e0562){const _0xcfb4c8=a78_0x3184,_0x5aa77a=_0x22fde9();while(!![]){try{const _0x457cfc=-parseInt(_0xcfb4c8(0x1d7))/0x1*(-parseInt(_0xcfb4c8(0x1bd))/0x2)+-parseInt(_0xcfb4c8(0x21a))/0x3+-parseInt(_0xcfb4c8(0x22e))/0x4+parseInt(_0xcfb4c8(0x1d8))/0x5*(parseInt(_0xcfb4c8(0x253))/0x6)+-parseInt(_0xcfb4c8(0x234))/0x7+parseInt(_0xcfb4c8(0x225))/0x8+parseInt(_0xcfb4c8(0x1c4))/0x9*(parseInt(_0xcfb4c8(0x1fa))/0xa);if(_0x457cfc===_0x4e0562)break;else _0x5aa77a['push'](_0x5aa77a['shift']());}catch(_0x14451b){_0x5aa77a['push'](_0x5aa77a['shift']());}}}(a78_0x36e1,0x250d1));import a78_0x583874 from'fastify';function a78_0x3184(_0x4feb6a,_0x22ebd0){_0x4feb6a=_0x4feb6a-0x1b8;const _0x36e1cb=a78_0x36e1();let _0x3184ae=_0x36e1cb[_0x4feb6a];return _0x3184ae;}import a78_0x1629fd from'@fastify/cors';import{SSEUsageTracker}from'./sse-usage-parser.js';import{appendUsageEntry}from'./claude-usage-tracker.js';import{getVersion}from'../core/version.js';import{isExperimentalAvailable}from'../core/config.js';import{refreshAccessToken}from'../sdk/client/oauth-refresh.js';import{saveOAuthTokens}from'../core/oauth-keychain.js';const DEFAULT_TIMEOUT_MS=0x5*0x3c*0x3e8,TDX_SYSTEM_PROMPT=a78_0x1c5c5e(0x226)+(isExperimentalAvailable()?a78_0x1c5c5e(0x221):'')+a78_0x1c5c5e(0x245);function extractSessionUUID(_0xf0de3d){const _0x435de6=a78_0x1c5c5e,_0xe68f1c=_0xf0de3d[_0x435de6(0x20c)](/_session_([a-f0-9-]+)$/i);if(_0xe68f1c)return _0xe68f1c[0x1];return _0xf0de3d;}function a78_0x36e1(){const _0x426bdc=['host','OPTIONS','server','expires_at','[PASSTHROUGH]\x20Usage:\x20input=','130638WJpfkC','default','TD\x20LLM\x20Pass-through\x20Proxy\x20Server','parse','getUsage','flush','body','4kTZwws','apiKey','indexOf','handleStreamingResponse','stringify',',\x20cache_read=','setupRoutes','9QUYBaU','[PASSTHROUGH]\x20Upstream\x20error:\x20','join','[PASSTHROUGH]\x20OAuth\x20token\x20refreshed\x20successfully','\x20and\x20','keep-alive',',\x20model=','status','createServer','code','type','string','[PASSTHROUGH]\x20OAuth\x20token\x20refresh\x20failed:','startsWith','/v1/messages/count_tokens','timeout_error','application/json','name','statusText','78802TJCZxF','20LBLHaT','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20count_tokens\x20request:','read','profile','config','cacheCreationInputTokens','inputTokens','outputTokens','GET','[PASSTHROUGH]\x20Failed\x20to\x20log\x20usage:','unref','handleMessages','header','Bearer\x20','isArray','error','[PASSTHROUGH]\x20','api_error','url','access_token','metadata','startPort','has','accessToken','startTokenRefreshTimer','system','processChunk','SKIP_HEADERS','model','text/event-stream','headers','info','[PASSTHROUGH\x20PROXY\x20ERROR]:','setupMiddleware','950890ZODQBp','send','TimeoutError','get','cache_read_input_tokens','end','EADDRINUSE','timeoutMs','Server\x20has\x20not\x20been\x20started\x20yet','anthropic-version','close','messages','llmProxyUrl','Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20','connection','includes','refreshTimer','[PASSTHROUGH]\x20Forwarding\x20count_tokens\x20to:\x20','match',',\x20cache_create=','Authorization','haiku','usage','_boundPort','logUsage','oauth','text','x-td-','Content-Type','addContentTypeParser','tdx/','post','813396mseecx','X-TD-Client-Version','refreshToken','auth','expiresAt','register','Pass-through\x20proxy\x20server\x20started\x20on\x20port\x20','|\x20Debug\x20agent\x20issues\x20|\x20tdx-skills:agent-debug\x20|\x0a','/v1/messages','output_tokens',',\x20output=','2241984tMCNfJ','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','refreshTokenIfNeeded','consoleUrl','127.0.0.1','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20request:','\x20in\x20use,\x20trying\x20next...','port','writeHead','93660NvKaRC','start','handleCountTokens','Forwarding\x20to:\x20','transfer-encoding','toISOString','1216075zSlWyE','http://127.0.0.1:','Unknown\x20error','logger','No\x20available\x20port\x20found\x20between\x20','stop','TD1\x20','/health',',\x20stream=','toLowerCase','POST','decode','[PASSTHROUGH]\x20Stream\x20error:','write','Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20','setupJsonParser','Pass-through\x20proxy\x20server\x20stopped','|\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|','buildForwardHeaders','timeout','debug','message','unknown','X-TD-Client','entries','slice'];a78_0x36e1=function(){return _0x426bdc;};return a78_0x36e1();}export function injectSystemPrompt(_0x1a99b6,_0x2b4c7d){const _0x2d46f2=a78_0x1c5c5e,_0x5525bd=_0x1a99b6[_0x2d46f2(0x1f1)];if(!_0x5525bd)return{..._0x1a99b6,'system':_0x2b4c7d};if(typeof _0x5525bd===_0x2d46f2(0x1cf))return{..._0x1a99b6,'system':_0x5525bd+'\x0a\x0a'+_0x2b4c7d};if(Array[_0x2d46f2(0x1e6)](_0x5525bd)){const _0x3b9a1d={'type':_0x2d46f2(0x214),'text':_0x2b4c7d};return{..._0x1a99b6,'system':[..._0x5525bd,_0x3b9a1d]};}return _0x1a99b6;}export function shouldInjectSystemPrompt(_0x4b4825){const _0x3d38c9=a78_0x1c5c5e;return!_0x4b4825[_0x3d38c9(0x23d)]()[_0x3d38c9(0x209)](_0x3d38c9(0x20f));}const TOKEN_REFRESH_INTERVAL_MS=0x5*0x3c*0x3e8,TOKEN_EXPIRY_BUFFER_MS=0x5*0x3c*0x3e8;export class PassThroughProxyServer{[a78_0x1c5c5e(0x250)];['config'];[a78_0x1c5c5e(0x237)];[a78_0x1c5c5e(0x211)];[a78_0x1c5c5e(0x20a)];constructor(_0x1b3e59){const _0x2928ea=a78_0x1c5c5e;this[_0x2928ea(0x1dc)]=_0x1b3e59,this[_0x2928ea(0x237)]=_0x1b3e59['logger'],this['server']=this[_0x2928ea(0x1cc)]();}get['port'](){const _0x2ddf6d=a78_0x1c5c5e;if(this['_boundPort']===undefined)throw new Error(_0x2ddf6d(0x202));return this[_0x2ddf6d(0x211)];}[a78_0x1c5c5e(0x1cc)](){const _0x2b2508=a78_0x1c5c5e,_0x2e070f=a78_0x583874({'logger':![],'bodyLimit':0x40*0x400*0x400});return this[_0x2b2508(0x250)]=_0x2e070f,this[_0x2b2508(0x243)](),this['setupMiddleware'](),this[_0x2b2508(0x1c3)](),_0x2e070f;}[a78_0x1c5c5e(0x243)](){const _0x3564b5=a78_0x1c5c5e;this[_0x3564b5(0x250)][_0x3564b5(0x217)](_0x3564b5(0x1d4),{'parseAs':_0x3564b5(0x1cf)},(_0x25cf3c,_0x793d4c,_0x25ff93)=>{const _0x3da6b0=_0x3564b5;try{const _0x2e62b4=JSON[_0x3da6b0(0x1b9)](_0x793d4c);_0x25ff93(null,_0x2e62b4);}catch(_0x2dba2a){_0x25ff93(_0x2dba2a,undefined);}});}[a78_0x1c5c5e(0x1f9)](){const _0x483f25=a78_0x1c5c5e;this[_0x483f25(0x250)][_0x483f25(0x21f)](a78_0x1629fd,{'origin':!![],'methods':[_0x483f25(0x1e0),_0x483f25(0x23e),_0x483f25(0x24f)],'allowedHeaders':[_0x483f25(0x216),'Authorization',_0x483f25(0x203),'x-api-key']}),this['server']['setErrorHandler']((_0x40799d,_0x4511a2,_0x105f66)=>{const _0x3b5a93=_0x483f25,_0x219e67=_0x40799d instanceof Error?_0x40799d[_0x3b5a93(0x249)]:_0x3b5a93(0x236);this[_0x3b5a93(0x237)][_0x3b5a93(0x1e7)](_0x3b5a93(0x1f8),_0x40799d),_0x105f66[_0x3b5a93(0x1cd)](0x1f4)[_0x3b5a93(0x1fb)]({'type':_0x3b5a93(0x1e7),'error':{'type':_0x3b5a93(0x1e9),'message':_0x219e67}});});}[a78_0x1c5c5e(0x1c3)](){const _0xdf0387=a78_0x1c5c5e;this[_0xdf0387(0x250)][_0xdf0387(0x1fd)](_0xdf0387(0x23b),async()=>{const _0x171598=_0xdf0387;return{'status':'ok','message':_0x171598(0x1b8)};}),this[_0xdf0387(0x250)]['post'](_0xdf0387(0x222),async(_0x5e3e93,_0x50b278)=>{const _0x39065c=_0xdf0387;return this[_0x39065c(0x1e3)](_0x5e3e93,_0x50b278);}),this['server'][_0xdf0387(0x219)](_0xdf0387(0x1d2),async(_0x1d3bbd,_0x5ac578)=>{return this['handleCountTokens'](_0x1d3bbd,_0x5ac578);});}static ['SKIP_HEADERS']=new Set([a78_0x1c5c5e(0x24e),a78_0x1c5c5e(0x208),'content-length',a78_0x1c5c5e(0x232),'authorization','x-api-key','user-agent']);[a78_0x1c5c5e(0x246)](_0x201138){const _0x406fc6=a78_0x1c5c5e,_0x1152b0={};for(const [_0x2a80b5,_0x11efda]of Object[_0x406fc6(0x24c)](_0x201138[_0x406fc6(0x1f6)])){const _0x319075=_0x2a80b5[_0x406fc6(0x23d)]();if(PassThroughProxyServer[_0x406fc6(0x1f3)][_0x406fc6(0x1ee)](_0x319075))continue;if(_0x319075[_0x406fc6(0x1d1)](_0x406fc6(0x215)))continue;if(typeof _0x11efda===_0x406fc6(0x1cf))_0x1152b0[_0x2a80b5]=_0x11efda;else Array[_0x406fc6(0x1e6)](_0x11efda)&&(_0x1152b0[_0x2a80b5]=_0x11efda[_0x406fc6(0x1c6)](',\x20'));}const _0x2fb5ec=getVersion(),{auth:_0x504f6e}=this[_0x406fc6(0x1dc)];return _0x1152b0[_0x406fc6(0x20e)]=_0x504f6e[_0x406fc6(0x1ce)]===_0x406fc6(0x213)?_0x406fc6(0x1e5)+_0x504f6e[_0x406fc6(0x1ef)]:_0x406fc6(0x23a)+_0x504f6e[_0x406fc6(0x1be)],_0x1152b0['User-Agent']=_0x406fc6(0x218)+_0x2fb5ec,_0x1152b0[_0x406fc6(0x24b)]='tdx',_0x1152b0[_0x406fc6(0x21b)]=_0x2fb5ec,_0x1152b0;}async[a78_0x1c5c5e(0x1e3)](_0x2c3e21,_0x28623b){const _0x25f608=a78_0x1c5c5e,_0x17cf72=_0x2c3e21[_0x25f608(0x1bc)],_0x2f2158=_0x17cf72['stream']!==![],_0x4948d7=_0x17cf72[_0x25f608(0x1ec)],_0x2ba4c4=_0x4948d7?.['user_id']||_0x25f608(0x254),_0x53b820=extractSessionUUID(_0x2ba4c4),_0x14db29=_0x17cf72[_0x25f608(0x1f4)]||'unknown',_0x4478a7=shouldInjectSystemPrompt(_0x14db29)?injectSystemPrompt(_0x17cf72,TDX_SYSTEM_PROMPT):_0x17cf72,_0x63bf9=JSON[_0x25f608(0x1c1)](_0x4478a7),_0xd06c54=Array[_0x25f608(0x1e6)](_0x17cf72['messages'])?_0x17cf72[_0x25f608(0x205)]['length']:0x0;this[_0x25f608(0x237)]['info'](_0x25f608(0x1e8)+_0x2c3e21['method']+'\x20'+_0x2c3e21[_0x25f608(0x1ea)]+':\x20messages='+_0xd06c54+_0x25f608(0x1ca)+_0x14db29+_0x25f608(0x23c)+_0x2f2158);const _0x185542=_0x2c3e21[_0x25f608(0x1ea)][_0x25f608(0x209)]('?')?_0x2c3e21[_0x25f608(0x1ea)][_0x25f608(0x24d)](_0x2c3e21['url'][_0x25f608(0x1bf)]('?')):'',_0x6b8a5c=this[_0x25f608(0x1dc)]['llmProxyUrl']+_0x25f608(0x222)+_0x185542,_0xac77c2=this[_0x25f608(0x246)](_0x2c3e21);this[_0x25f608(0x237)]['debug'](_0x25f608(0x231)+_0x6b8a5c);const _0x235d80=this['config'][_0x25f608(0x201)]||DEFAULT_TIMEOUT_MS;try{const _0x5d6ea2=await fetch(_0x6b8a5c,{'method':_0x25f608(0x23e),'headers':_0xac77c2,'body':_0x63bf9,'signal':AbortSignal['timeout'](_0x235d80)});if(!_0x5d6ea2['ok']){const _0x16ef94=await _0x5d6ea2[_0x25f608(0x214)]();return this[_0x25f608(0x237)][_0x25f608(0x1e7)](_0x25f608(0x1c5)+_0x5d6ea2['status']+'\x20'+_0x5d6ea2[_0x25f608(0x1d6)]),this[_0x25f608(0x237)][_0x25f608(0x248)]('Error\x20body:\x20'+_0x16ef94),_0x28623b[_0x25f608(0x1cd)](_0x5d6ea2[_0x25f608(0x1cb)]),_0x28623b[_0x25f608(0x1e4)](_0x25f608(0x216),_0x5d6ea2[_0x25f608(0x1f6)]['get']('Content-Type')||_0x25f608(0x1d4)),_0x28623b[_0x25f608(0x1fb)](_0x16ef94);}if(_0x2f2158&&_0x5d6ea2[_0x25f608(0x1bc)])await this[_0x25f608(0x1c0)](_0x5d6ea2[_0x25f608(0x1bc)],_0x28623b,_0x53b820,_0x14db29);else{const _0x57bf68=await _0x5d6ea2[_0x25f608(0x214)]();_0x28623b[_0x25f608(0x1e4)](_0x25f608(0x216),_0x5d6ea2[_0x25f608(0x1f6)][_0x25f608(0x1fd)]('Content-Type')||_0x25f608(0x1d4));try{const _0xb9ff3c=JSON[_0x25f608(0x1b9)](_0x57bf68);_0xb9ff3c[_0x25f608(0x210)]&&await this['logUsage'](_0x53b820,_0x14db29,_0xb9ff3c['usage']['input_tokens']||0x0,_0xb9ff3c[_0x25f608(0x210)][_0x25f608(0x223)]||0x0,_0xb9ff3c['usage']['cache_creation_input_tokens'],_0xb9ff3c[_0x25f608(0x210)][_0x25f608(0x1fe)]);}catch{}return _0x28623b['send'](_0x57bf68);}}catch(_0x3b8b2c){const _0x3fc59a=_0x3b8b2c instanceof Error?_0x3b8b2c[_0x25f608(0x249)]:_0x25f608(0x236),_0x53eb4c=_0x3b8b2c instanceof Error&&_0x3b8b2c[_0x25f608(0x1d5)]===_0x25f608(0x1fc);this[_0x25f608(0x237)]['error'](_0x25f608(0x22a),_0x3b8b2c),_0x28623b[_0x25f608(0x1cd)](_0x53eb4c?0x1f8:0x1f7)[_0x25f608(0x1fb)]({'type':'error','error':{'type':_0x53eb4c?_0x25f608(0x1d3):_0x25f608(0x1e9),'message':_0x53eb4c?_0x25f608(0x242)+_0x235d80+'ms':_0x25f608(0x207)+_0x3fc59a}});}}async['handleStreamingResponse'](_0x57c41c,_0xda357b,_0x33705d,_0x23b437){const _0x48b51e=a78_0x1c5c5e;_0xda357b['raw'][_0x48b51e(0x22d)](0xc8,{'Content-Type':_0x48b51e(0x1f5),'Cache-Control':'no-cache','Connection':_0x48b51e(0x1c9)});const _0x110d60=new SSEUsageTracker(),_0x2a868c=_0x57c41c['getReader'](),_0x459cdb=new TextDecoder();try{while(!![]){const {done:_0xfdc121,value:_0x14d55f}=await _0x2a868c[_0x48b51e(0x1da)]();if(_0xfdc121)break;const _0x2ce70f=_0x459cdb[_0x48b51e(0x23f)](_0x14d55f,{'stream':!![]});_0x110d60[_0x48b51e(0x1f2)](_0x2ce70f),_0xda357b['raw'][_0x48b51e(0x241)](_0x2ce70f);}_0x110d60[_0x48b51e(0x1bb)]();const _0x496f6e=_0x110d60[_0x48b51e(0x1ba)]();(_0x496f6e['inputTokens']>0x0||_0x496f6e['outputTokens']>0x0)&&await this[_0x48b51e(0x212)](_0x33705d,_0x23b437,_0x496f6e[_0x48b51e(0x1de)],_0x496f6e[_0x48b51e(0x1df)],_0x496f6e[_0x48b51e(0x1dd)],_0x496f6e['cacheReadInputTokens']);}catch(_0x352f7e){this[_0x48b51e(0x237)][_0x48b51e(0x1e7)](_0x48b51e(0x240),_0x352f7e);const _0x40174e='event:\x20error\x0adata:\x20'+JSON[_0x48b51e(0x1c1)]({'type':'error','error':{'type':'stream_error','message':'Stream\x20interrupted'}})+'\x0a\x0a';_0xda357b['raw']['write'](_0x40174e);}finally{_0xda357b['raw'][_0x48b51e(0x1ff)]();}}async[a78_0x1c5c5e(0x230)](_0x3bb5ee,_0x37c840){const _0x5a17ba=a78_0x1c5c5e,_0x10f281=_0x3bb5ee[_0x5a17ba(0x1bc)],_0x22c90b=_0x3bb5ee[_0x5a17ba(0x1ea)][_0x5a17ba(0x209)]('?')?_0x3bb5ee[_0x5a17ba(0x1ea)][_0x5a17ba(0x24d)](_0x3bb5ee['url'][_0x5a17ba(0x1bf)]('?')):'',_0x24ec32=this['config'][_0x5a17ba(0x206)]+_0x5a17ba(0x1d2)+_0x22c90b,_0x52951c=this[_0x5a17ba(0x246)](_0x3bb5ee),_0x984a05=_0x10f281[_0x5a17ba(0x1f4)]||_0x5a17ba(0x24a),_0x861834=shouldInjectSystemPrompt(_0x984a05)?injectSystemPrompt(_0x10f281,TDX_SYSTEM_PROMPT):_0x10f281,_0x456202=JSON[_0x5a17ba(0x1c1)](_0x861834);this[_0x5a17ba(0x237)][_0x5a17ba(0x248)](_0x5a17ba(0x20b)+_0x24ec32);const _0x22ad17=this[_0x5a17ba(0x1dc)]['timeoutMs']||DEFAULT_TIMEOUT_MS;try{const _0x11860f=await fetch(_0x24ec32,{'method':'POST','headers':_0x52951c,'body':_0x456202,'signal':AbortSignal[_0x5a17ba(0x247)](_0x22ad17)}),_0x3d8db8=await _0x11860f['text']();return _0x37c840[_0x5a17ba(0x1cd)](_0x11860f[_0x5a17ba(0x1cb)]),_0x37c840[_0x5a17ba(0x1e4)]('Content-Type',_0x11860f[_0x5a17ba(0x1f6)][_0x5a17ba(0x1fd)]('Content-Type')||_0x5a17ba(0x1d4)),_0x37c840[_0x5a17ba(0x1fb)](_0x3d8db8);}catch(_0x529e0d){const _0x367d4c=_0x529e0d instanceof Error?_0x529e0d[_0x5a17ba(0x249)]:_0x5a17ba(0x236),_0x116682=_0x529e0d instanceof Error&&_0x529e0d[_0x5a17ba(0x1d5)]===_0x5a17ba(0x1fc);this[_0x5a17ba(0x237)][_0x5a17ba(0x1e7)](_0x5a17ba(0x1d9),_0x529e0d),_0x37c840[_0x5a17ba(0x1cd)](_0x116682?0x1f8:0x1f7)[_0x5a17ba(0x1fb)]({'type':_0x5a17ba(0x1e7),'error':{'type':_0x116682?_0x5a17ba(0x1d3):_0x5a17ba(0x1e9),'message':_0x116682?'Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20'+_0x22ad17+'ms':_0x5a17ba(0x207)+_0x367d4c}});}}async[a78_0x1c5c5e(0x212)](_0x2d00b5,_0x34423c,_0x1d4722,_0x2f1827,_0x379aa8,_0x1a2c06){const _0x1b17ee=a78_0x1c5c5e,_0x55a0d5={'timestamp':new Date()[_0x1b17ee(0x233)](),'model':_0x34423c,'inputTokens':_0x1d4722,'outputTokens':_0x2f1827,'cacheCreationInputTokens':_0x379aa8,'cacheReadInputTokens':_0x1a2c06,'profile':this[_0x1b17ee(0x1dc)][_0x1b17ee(0x1db)],'source':'tdx-claude'},_0x414b98=_0x379aa8||_0x1a2c06?_0x1b17ee(0x20d)+(_0x379aa8||0x0)+_0x1b17ee(0x1c2)+(_0x1a2c06||0x0):'';this[_0x1b17ee(0x237)][_0x1b17ee(0x248)](_0x1b17ee(0x252)+_0x1d4722+_0x1b17ee(0x224)+_0x2f1827+_0x414b98+_0x1b17ee(0x1ca)+_0x34423c);try{await appendUsageEntry(_0x2d00b5,_0x55a0d5);}catch(_0x360423){this[_0x1b17ee(0x237)][_0x1b17ee(0x1e7)](_0x1b17ee(0x1e1),_0x360423);}}[a78_0x1c5c5e(0x1f0)](){const _0x2ac05b=a78_0x1c5c5e;if(this[_0x2ac05b(0x1dc)][_0x2ac05b(0x21d)][_0x2ac05b(0x1ce)]!==_0x2ac05b(0x213))return;this[_0x2ac05b(0x20a)]=setInterval(()=>{void this['refreshTokenIfNeeded']();},TOKEN_REFRESH_INTERVAL_MS),this[_0x2ac05b(0x20a)][_0x2ac05b(0x1e2)]();}async[a78_0x1c5c5e(0x227)](){const _0x3601a8=a78_0x1c5c5e,{auth:_0x3ea6dd}=this['config'];if(_0x3ea6dd[_0x3601a8(0x1ce)]!==_0x3601a8(0x213))return;const _0x716794=!_0x3ea6dd[_0x3601a8(0x21e)]||_0x3ea6dd[_0x3601a8(0x21e)]<Date['now']()+TOKEN_EXPIRY_BUFFER_MS;if(!_0x716794)return;try{const _0x2a85cf=await refreshAccessToken(_0x3ea6dd[_0x3601a8(0x228)],_0x3ea6dd['refreshToken']);_0x3ea6dd[_0x3601a8(0x1ef)]=_0x2a85cf[_0x3601a8(0x1eb)],_0x3ea6dd[_0x3601a8(0x21c)]=_0x2a85cf['refresh_token'],_0x3ea6dd[_0x3601a8(0x21e)]=_0x2a85cf[_0x3601a8(0x251)],await saveOAuthTokens(_0x2a85cf,this[_0x3601a8(0x1dc)]['profile']),this[_0x3601a8(0x237)][_0x3601a8(0x1f7)](_0x3601a8(0x1c7));}catch(_0x5b650f){this[_0x3601a8(0x237)][_0x3601a8(0x1e7)](_0x3601a8(0x1d0),_0x5b650f);}}async[a78_0x1c5c5e(0x22f)](){const _0x455b82=a78_0x1c5c5e,_0x306096=this[_0x455b82(0x1dc)]['maxPortAttempts']??0x64;for(let _0x4be116=0x0;_0x4be116<_0x306096;_0x4be116++){const _0x4334e7=this[_0x455b82(0x1dc)]['startPort']+_0x4be116;try{await this['server']['listen']({'port':_0x4334e7,'host':_0x455b82(0x229)}),this['_boundPort']=_0x4334e7,this[_0x455b82(0x237)][_0x455b82(0x1f7)](_0x455b82(0x220)+_0x4334e7),this[_0x455b82(0x237)][_0x455b82(0x1f7)]('Forwarding\x20to:\x20'+this['config'][_0x455b82(0x206)]),this[_0x455b82(0x1f0)]();return;}catch(_0x443e6d){const _0x498f55=_0x443e6d instanceof Error&&_0x455b82(0x1cd)in _0x443e6d&&_0x443e6d[_0x455b82(0x1cd)]===_0x455b82(0x200);if(!_0x498f55)throw _0x443e6d;this['logger'][_0x455b82(0x248)]('Port\x20'+_0x4334e7+_0x455b82(0x22b)),this[_0x455b82(0x1cc)]();}}const _0x4c07b5=this[_0x455b82(0x1dc)][_0x455b82(0x1ed)]+_0x306096-0x1;throw new Error(_0x455b82(0x238)+this[_0x455b82(0x1dc)][_0x455b82(0x1ed)]+_0x455b82(0x1c8)+_0x4c07b5);}async[a78_0x1c5c5e(0x239)](){const _0x1c1594=a78_0x1c5c5e;this[_0x1c1594(0x20a)]&&(clearInterval(this[_0x1c1594(0x20a)]),this[_0x1c1594(0x20a)]=undefined),await this[_0x1c1594(0x250)][_0x1c1594(0x204)](),this[_0x1c1594(0x237)][_0x1c1594(0x1f7)](_0x1c1594(0x244));}['getAddress'](){const _0x231aba=a78_0x1c5c5e;return _0x231aba(0x235)+this[_0x231aba(0x22c)];}}
@@ -1 +1 @@
1
- function a79_0x59b7(_0x58b1c8,_0x5b0474){_0x58b1c8=_0x58b1c8-0x169;const _0xc3c65c=a79_0xc3c6();let _0x59b70d=_0xc3c65c[_0x58b1c8];return _0x59b70d;}const a79_0x52c63d=a79_0x59b7;function a79_0xc3c6(){const _0x3e85d6=['message_delta','8qDJVDD','processChunk','cacheCreationInputTokens','push','data','message_start','unknown','usage','data:\x20','cache_creation_input_tokens','max','updateFromUsage','27TDaraT','slice','7190uTBbvG','outputTokens','trim','cacheReadInputTokens','258VwPTIF','getUsage','560048FZTDiC','event:\x20','event','1565100tlNxfd','cache_read_input_tokens','startsWith','buffer','flush','output_tokens','77guwXST','2578617SlBdIH','19075nrmark','inputTokens','type','split','1683320SwGFjD','reset','onRawUsage','408524FPKayu','message','parse'];a79_0xc3c6=function(){return _0x3e85d6;};return a79_0xc3c6();}(function(_0x1b8da9,_0x460e44){const _0x26e651=a79_0x59b7,_0x25250a=_0x1b8da9();while(!![]){try{const _0x4604c6=-parseInt(_0x26e651(0x16b))/0x1+parseInt(_0x26e651(0x18f))/0x2*(-parseInt(_0x26e651(0x18d))/0x3)+-parseInt(_0x26e651(0x17d))/0x4+parseInt(_0x26e651(0x16e))/0x5+-parseInt(_0x26e651(0x169))/0x6*(parseInt(_0x26e651(0x176))/0x7)+-parseInt(_0x26e651(0x181))/0x8*(parseInt(_0x26e651(0x175))/0x9)+parseInt(_0x26e651(0x17a))/0xa*(parseInt(_0x26e651(0x174))/0xb);if(_0x4604c6===_0x460e44)break;else _0x25250a['push'](_0x25250a['shift']());}catch(_0x2e8603){_0x25250a['push'](_0x25250a['shift']());}}}(a79_0xc3c6,0x5ffa2));export function parseSSEChunk(_0x2b1884){const _0x307527=a79_0x59b7,_0x4ad255=[],_0x3102d5=_0x2b1884[_0x307527(0x179)]('\x0a\x0a'),_0x97f9f=_0x3102d5['pop']()||'';for(const _0x392a66 of _0x3102d5){if(!_0x392a66[_0x307527(0x191)]())continue;const _0x3fc43f={},_0x336e8a=_0x392a66[_0x307527(0x179)]('\x0a');for(const _0x2ee799 of _0x336e8a){if(_0x2ee799[_0x307527(0x170)](_0x307527(0x16c)))_0x3fc43f[_0x307527(0x16d)]=_0x2ee799[_0x307527(0x18e)](0x7);else _0x2ee799[_0x307527(0x170)](_0x307527(0x189))&&(_0x3fc43f['data']=_0x2ee799[_0x307527(0x18e)](0x6));}(_0x3fc43f['event']||_0x3fc43f[_0x307527(0x185)])&&_0x4ad255[_0x307527(0x184)](_0x3fc43f);}return{'events':_0x4ad255,'remaining':_0x97f9f};}export function extractMessageStartUsage(_0x4fc0d1){const _0xb1e199=a79_0x59b7;try{const _0x5778a0=JSON[_0xb1e199(0x17f)](_0x4fc0d1);if(_0x5778a0['type']==='message_start'&&_0x5778a0['message']?.[_0xb1e199(0x188)]){const _0x3d16c5=_0x5778a0[_0xb1e199(0x17e)][_0xb1e199(0x188)];return{'inputTokens':_0x3d16c5['input_tokens']||0x0,'outputTokens':_0x3d16c5[_0xb1e199(0x173)]||0x0,'cacheCreationInputTokens':_0x3d16c5[_0xb1e199(0x18a)],'cacheReadInputTokens':_0x3d16c5[_0xb1e199(0x16f)]};}}catch{}return null;}export function extractMessageDeltaUsage(_0xc9dc45){const _0x5e0f09=a79_0x59b7;try{const _0x224d07=JSON[_0x5e0f09(0x17f)](_0xc9dc45);if(_0x224d07[_0x5e0f09(0x178)]==='message_delta'&&_0x224d07['usage']){const _0x4e00bb=_0x224d07[_0x5e0f09(0x188)];return{'inputTokens':_0x4e00bb['input_tokens']||0x0,'outputTokens':_0x4e00bb[_0x5e0f09(0x173)]||0x0,'cacheCreationInputTokens':_0x4e00bb[_0x5e0f09(0x18a)],'cacheReadInputTokens':_0x4e00bb['cache_read_input_tokens']};}}catch{}return null;}export function extractUsageFromEvent(_0x1a5364){const _0x41bfe1=a79_0x59b7;if(!_0x1a5364['data'])return null;if(_0x1a5364['event']===_0x41bfe1(0x186))return extractMessageStartUsage(_0x1a5364[_0x41bfe1(0x185)]);if(_0x1a5364[_0x41bfe1(0x16d)]===_0x41bfe1(0x180))return extractMessageDeltaUsage(_0x1a5364[_0x41bfe1(0x185)]);return null;}export class SSEUsageTracker{[a79_0x52c63d(0x177)]=0x0;[a79_0x52c63d(0x190)]=0x0;[a79_0x52c63d(0x183)];[a79_0x52c63d(0x192)];['buffer']='';['updateFromUsage'](_0x4c9b11){const _0x1b56a9=a79_0x52c63d;this['inputTokens']=Math['max'](this['inputTokens'],_0x4c9b11[_0x1b56a9(0x177)]),this['outputTokens']=Math[_0x1b56a9(0x18b)](this[_0x1b56a9(0x190)],_0x4c9b11['outputTokens']),_0x4c9b11['cacheCreationInputTokens']!==undefined&&(this[_0x1b56a9(0x183)]=Math[_0x1b56a9(0x18b)](this[_0x1b56a9(0x183)]??0x0,_0x4c9b11[_0x1b56a9(0x183)])),_0x4c9b11[_0x1b56a9(0x192)]!==undefined&&(this[_0x1b56a9(0x192)]=Math['max'](this['cacheReadInputTokens']??0x0,_0x4c9b11[_0x1b56a9(0x192)]));}[a79_0x52c63d(0x17c)];[a79_0x52c63d(0x182)](_0x42313f){const _0x1e49f1=a79_0x52c63d;this[_0x1e49f1(0x171)]+=_0x42313f;const {events:_0x37dcf9,remaining:_0x31ac96}=parseSSEChunk(this['buffer']);this['buffer']=_0x31ac96;for(const _0xcd0bda of _0x37dcf9){const _0x3ab9f3=extractUsageFromEvent(_0xcd0bda);_0x3ab9f3&&(this[_0x1e49f1(0x17c)]?.(_0xcd0bda[_0x1e49f1(0x16d)]||_0x1e49f1(0x187),_0xcd0bda[_0x1e49f1(0x185)]||'',_0x3ab9f3),this[_0x1e49f1(0x18c)](_0x3ab9f3));}return _0x42313f;}[a79_0x52c63d(0x172)](){const _0x5d96b2=a79_0x52c63d;if(this['buffer'][_0x5d96b2(0x191)]()){const {events:_0x3bd4f5}=parseSSEChunk(this[_0x5d96b2(0x171)]+'\x0a\x0a');for(const _0x3c7a5e of _0x3bd4f5){const _0x1004b7=extractUsageFromEvent(_0x3c7a5e);_0x1004b7&&this['updateFromUsage'](_0x1004b7);}this['buffer']='';}}[a79_0x52c63d(0x16a)](){const _0xea64f0=a79_0x52c63d;return{'inputTokens':this[_0xea64f0(0x177)],'outputTokens':this[_0xea64f0(0x190)],'cacheCreationInputTokens':this[_0xea64f0(0x183)],'cacheReadInputTokens':this['cacheReadInputTokens']};}[a79_0x52c63d(0x17b)](){const _0x2d5716=a79_0x52c63d;this[_0x2d5716(0x177)]=0x0,this[_0x2d5716(0x190)]=0x0,this[_0x2d5716(0x183)]=undefined,this[_0x2d5716(0x192)]=undefined,this[_0x2d5716(0x171)]='';}}
1
+ const a79_0x31d5ad=a79_0x52d3;(function(_0x251886,_0x1e0b98){const _0x28dd58=a79_0x52d3,_0x5eb1d6=_0x251886();while(!![]){try{const _0x5ccee6=-parseInt(_0x28dd58(0x1e3))/0x1+-parseInt(_0x28dd58(0x201))/0x2*(-parseInt(_0x28dd58(0x1dd))/0x3)+parseInt(_0x28dd58(0x203))/0x4+parseInt(_0x28dd58(0x1df))/0x5+-parseInt(_0x28dd58(0x1fc))/0x6*(-parseInt(_0x28dd58(0x1f5))/0x7)+parseInt(_0x28dd58(0x1f1))/0x8*(parseInt(_0x28dd58(0x1e9))/0x9)+-parseInt(_0x28dd58(0x1ff))/0xa*(parseInt(_0x28dd58(0x1fe))/0xb);if(_0x5ccee6===_0x1e0b98)break;else _0x5eb1d6['push'](_0x5eb1d6['shift']());}catch(_0x1984cc){_0x5eb1d6['push'](_0x5eb1d6['shift']());}}}(a79_0x2d1d,0x576b7));function a79_0x52d3(_0x111ded,_0x3419db){_0x111ded=_0x111ded-0x1dc;const _0x2d1da2=a79_0x2d1d();let _0x52d3c1=_0x2d1da2[_0x111ded];return _0x52d3c1;}export function parseSSEChunk(_0x45cdac){const _0x461735=a79_0x52d3,_0x297bff=[],_0x4c7a33=_0x45cdac[_0x461735(0x204)]('\x0a\x0a'),_0x2d0806=_0x4c7a33[_0x461735(0x1e5)]()||'';for(const _0x3e8eae of _0x4c7a33){if(!_0x3e8eae[_0x461735(0x1ea)]())continue;const _0x2782c9={},_0x4f5e69=_0x3e8eae[_0x461735(0x204)]('\x0a');for(const _0x5c0e13 of _0x4f5e69){if(_0x5c0e13[_0x461735(0x1e8)](_0x461735(0x1f6)))_0x2782c9['event']=_0x5c0e13[_0x461735(0x1fa)](0x7);else _0x5c0e13['startsWith'](_0x461735(0x1f0))&&(_0x2782c9[_0x461735(0x1e0)]=_0x5c0e13['slice'](0x6));}(_0x2782c9[_0x461735(0x1ed)]||_0x2782c9[_0x461735(0x1e0)])&&_0x297bff[_0x461735(0x1de)](_0x2782c9);}return{'events':_0x297bff,'remaining':_0x2d0806};}export function extractMessageStartUsage(_0x39efec){const _0x1b4e82=a79_0x52d3;try{const _0x523941=JSON[_0x1b4e82(0x1f2)](_0x39efec);if(_0x523941[_0x1b4e82(0x1f4)]===_0x1b4e82(0x1f9)&&_0x523941[_0x1b4e82(0x202)]?.[_0x1b4e82(0x1ef)]){const _0x2b0738=_0x523941[_0x1b4e82(0x202)]['usage'];return{'inputTokens':_0x2b0738['input_tokens']||0x0,'outputTokens':_0x2b0738[_0x1b4e82(0x1dc)]||0x0,'cacheCreationInputTokens':_0x2b0738['cache_creation_input_tokens'],'cacheReadInputTokens':_0x2b0738[_0x1b4e82(0x1e1)]};}}catch{}return null;}export function extractMessageDeltaUsage(_0x1ab866){const _0x23e2fc=a79_0x52d3;try{const _0x549bef=JSON[_0x23e2fc(0x1f2)](_0x1ab866);if(_0x549bef[_0x23e2fc(0x1f4)]===_0x23e2fc(0x1f8)&&_0x549bef[_0x23e2fc(0x1ef)]){const _0x4f205a=_0x549bef[_0x23e2fc(0x1ef)];return{'inputTokens':_0x4f205a[_0x23e2fc(0x1ec)]||0x0,'outputTokens':_0x4f205a[_0x23e2fc(0x1dc)]||0x0,'cacheCreationInputTokens':_0x4f205a['cache_creation_input_tokens'],'cacheReadInputTokens':_0x4f205a[_0x23e2fc(0x1e1)]};}}catch{}return null;}export function extractUsageFromEvent(_0x52a679){const _0x36e9c1=a79_0x52d3;if(!_0x52a679[_0x36e9c1(0x1e0)])return null;if(_0x52a679[_0x36e9c1(0x1ed)]==='message_start')return extractMessageStartUsage(_0x52a679[_0x36e9c1(0x1e0)]);if(_0x52a679[_0x36e9c1(0x1ed)]===_0x36e9c1(0x1f8))return extractMessageDeltaUsage(_0x52a679[_0x36e9c1(0x1e0)]);return null;}export class SSEUsageTracker{[a79_0x31d5ad(0x1fb)]=0x0;['outputTokens']=0x0;[a79_0x31d5ad(0x1fd)];['cacheReadInputTokens'];[a79_0x31d5ad(0x1eb)]='';['updateFromUsage'](_0x56c04d){const _0x56586b=a79_0x31d5ad;this[_0x56586b(0x1fb)]=Math[_0x56586b(0x1e4)](this[_0x56586b(0x1fb)],_0x56c04d['inputTokens']),this[_0x56586b(0x1f3)]=Math[_0x56586b(0x1e4)](this[_0x56586b(0x1f3)],_0x56c04d[_0x56586b(0x1f3)]),_0x56c04d['cacheCreationInputTokens']!==undefined&&(this[_0x56586b(0x1fd)]=Math[_0x56586b(0x1e4)](this[_0x56586b(0x1fd)]??0x0,_0x56c04d[_0x56586b(0x1fd)])),_0x56c04d['cacheReadInputTokens']!==undefined&&(this['cacheReadInputTokens']=Math[_0x56586b(0x1e4)](this['cacheReadInputTokens']??0x0,_0x56c04d[_0x56586b(0x1e2)]));}['onRawUsage'];[a79_0x31d5ad(0x1ee)](_0x4673c7){const _0x1f6e71=a79_0x31d5ad;this['buffer']+=_0x4673c7;const {events:_0x5c7879,remaining:_0x5c7681}=parseSSEChunk(this['buffer']);this[_0x1f6e71(0x1eb)]=_0x5c7681;for(const _0x3f41a6 of _0x5c7879){const _0x1b2b27=extractUsageFromEvent(_0x3f41a6);_0x1b2b27&&(this['onRawUsage']?.(_0x3f41a6[_0x1f6e71(0x1ed)]||_0x1f6e71(0x1f7),_0x3f41a6['data']||'',_0x1b2b27),this[_0x1f6e71(0x1e7)](_0x1b2b27));}return _0x4673c7;}[a79_0x31d5ad(0x200)](){const _0xb4f8f4=a79_0x31d5ad;if(this[_0xb4f8f4(0x1eb)][_0xb4f8f4(0x1ea)]()){const {events:_0x1660ab}=parseSSEChunk(this['buffer']+'\x0a\x0a');for(const _0x3ba997 of _0x1660ab){const _0x2a6cf5=extractUsageFromEvent(_0x3ba997);_0x2a6cf5&&this['updateFromUsage'](_0x2a6cf5);}this['buffer']='';}}['getUsage'](){const _0x16eabf=a79_0x31d5ad;return{'inputTokens':this[_0x16eabf(0x1fb)],'outputTokens':this[_0x16eabf(0x1f3)],'cacheCreationInputTokens':this[_0x16eabf(0x1fd)],'cacheReadInputTokens':this['cacheReadInputTokens']};}[a79_0x31d5ad(0x1e6)](){const _0x314dc9=a79_0x31d5ad;this[_0x314dc9(0x1fb)]=0x0,this['outputTokens']=0x0,this[_0x314dc9(0x1fd)]=undefined,this[_0x314dc9(0x1e2)]=undefined,this['buffer']='';}}function a79_0x2d1d(){const _0x53ff61=['42lMRVhK','cacheCreationInputTokens','28941zIzedp','2270xUSqdL','flush','2382HXhWum','message','2292480KlekfO','split','output_tokens','339WvjjkY','push','1251130MyziqO','data','cache_read_input_tokens','cacheReadInputTokens','507723UnPkLH','max','pop','reset','updateFromUsage','startsWith','9rZNIni','trim','buffer','input_tokens','event','processChunk','usage','data:\x20','3819560nFQtkE','parse','outputTokens','type','27657YIWglW','event:\x20','unknown','message_delta','message_start','slice','inputTokens'];a79_0x2d1d=function(){return _0x53ff61;};return a79_0x2d1d();}