@treasuredata/tdx 2026.4.6 → 2026.4.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (220) 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/access-tracker.js +1 -1
  182. package/dist/sdk/workspace/frontmatter.js +1 -1
  183. package/dist/sdk/workspace/git.js +1 -1
  184. package/dist/sdk/workspace/index.js +1 -1
  185. package/dist/sdk/workspace/templates.js +1 -1
  186. package/dist/sdk/workspace/weekly.js +1 -1
  187. package/dist/sdk/workspace/wikilinks.js +1 -1
  188. package/dist/test-utils/command-runner.js +1 -1
  189. package/dist/test-utils/factories.js +1 -1
  190. package/dist/test-utils/fixtures.js +1 -1
  191. package/dist/test-utils/http-mock.js +1 -1
  192. package/dist/test-utils/index.js +1 -1
  193. package/dist/utils/async.js +1 -1
  194. package/dist/utils/colors.js +1 -1
  195. package/dist/utils/diff.js +1 -1
  196. package/dist/utils/file-permissions.js +1 -1
  197. package/dist/utils/file-reader.js +1 -1
  198. package/dist/utils/github-releases.js +1 -1
  199. package/dist/utils/global-cache.js +1 -1
  200. package/dist/utils/json-loader.js +1 -1
  201. package/dist/utils/local-cache.js +1 -1
  202. package/dist/utils/logger/formatters/default-formatter.js +1 -1
  203. package/dist/utils/logger/formatters/index.js +1 -1
  204. package/dist/utils/logger/handlers/console-handler.js +1 -1
  205. package/dist/utils/logger/handlers/file-handler.js +1 -1
  206. package/dist/utils/logger/handlers/index.js +1 -1
  207. package/dist/utils/logger/handlers/null-handler.js +1 -1
  208. package/dist/utils/logger/index.js +1 -1
  209. package/dist/utils/logger/logger.js +1 -1
  210. package/dist/utils/logger/types.js +1 -1
  211. package/dist/utils/option-validation.js +1 -1
  212. package/dist/utils/process.js +1 -1
  213. package/dist/utils/prompt.js +1 -1
  214. package/dist/utils/spinner.js +1 -1
  215. package/dist/utils/sse-parser.js +1 -1
  216. package/dist/utils/string-utils.js +1 -1
  217. package/dist/utils/table-ref-parser.js +1 -1
  218. package/dist/utils/tdx-logger.js +1 -1
  219. package/dist/utils/version-check.js +1 -1
  220. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- (function(_0x2ca668,_0x23638b){var _0x2cacf8=a70_0x23a7,_0x1ab142=_0x2ca668();while(!![]){try{var _0x1ba703=parseInt(_0x2cacf8(0x8d))/0x1*(parseInt(_0x2cacf8(0x92))/0x2)+parseInt(_0x2cacf8(0x8f))/0x3+parseInt(_0x2cacf8(0x97))/0x4*(parseInt(_0x2cacf8(0x96))/0x5)+parseInt(_0x2cacf8(0x90))/0x6*(parseInt(_0x2cacf8(0x94))/0x7)+-parseInt(_0x2cacf8(0x8e))/0x8*(-parseInt(_0x2cacf8(0x95))/0x9)+-parseInt(_0x2cacf8(0x93))/0xa*(parseInt(_0x2cacf8(0x8c))/0xb)+-parseInt(_0x2cacf8(0x91))/0xc;if(_0x1ba703===_0x23638b)break;else _0x1ab142['push'](_0x1ab142['shift']());}catch(_0x4a4598){_0x1ab142['push'](_0x1ab142['shift']());}}}(a70_0x2078,0x61c4d));export*from'./sdk/types/index.js';export*from'./core/config.js';function a70_0x2078(){var _0x21503e=['205497FfmaDg','5xeyEEE','1594584gyoJtt','1438206YehRWd','161339mGQicE','112rgdbJd','178044CUMCTt','1071558kBjgbO','6776016KSUJlq','6CSzXIJ','50DGOmdf','14lXFfKD'];a70_0x2078=function(){return _0x21503e;};return a70_0x2078();}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';function a70_0x23a7(_0x5db0c7,_0x324db1){_0x5db0c7=_0x5db0c7-0x8c;var _0x2078b4=a70_0x2078();var _0x23a7ac=_0x2078b4[_0x5db0c7];return _0x23a7ac;}export*from'./commands/describe.js';export*from'./sdk/index.js';
1
+ (function(_0x35db41,_0x169303){var _0x2d81df=a70_0x3dd0,_0x417733=_0x35db41();while(!![]){try{var _0x355382=-parseInt(_0x2d81df(0x161))/0x1*(parseInt(_0x2d81df(0x15d))/0x2)+parseInt(_0x2d81df(0x159))/0x3*(parseInt(_0x2d81df(0x15c))/0x4)+-parseInt(_0x2d81df(0x15f))/0x5*(parseInt(_0x2d81df(0x160))/0x6)+-parseInt(_0x2d81df(0x158))/0x7*(parseInt(_0x2d81df(0x15b))/0x8)+-parseInt(_0x2d81df(0x15a))/0x9+parseInt(_0x2d81df(0x15e))/0xa+parseInt(_0x2d81df(0x157))/0xb;if(_0x355382===_0x169303)break;else _0x417733['push'](_0x417733['shift']());}catch(_0x12f192){_0x417733['push'](_0x417733['shift']());}}}(a70_0x52c1,0xecf59));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_0x52c1(){var _0x49a79d=['1782738WWOLeD','247749wbjSUL','53885073ZWbRMd','120127OdlYtw','14604OBXvHy','704160cCzNPd','896lGILje','208Jdnjpa','8lHDTMT','5928120XdkXkL','30cpjfUY'];a70_0x52c1=function(){return _0x49a79d;};return a70_0x52c1();}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_0x3dd0(_0x268272,_0x5009ad){_0x268272=_0x268272-0x157;var _0x52c106=a70_0x52c1();var _0x3dd040=_0x52c106[_0x268272];return _0x3dd040;}export*from'./sdk/index.js';
@@ -1 +1 @@
1
- (function(_0x105f79,_0x213e41){const _0x43a999=a71_0x3884,_0x1028a9=_0x105f79();while(!![]){try{const _0x2cda09=-parseInt(_0x43a999(0x18c))/0x1*(parseInt(_0x43a999(0x19b))/0x2)+-parseInt(_0x43a999(0x195))/0x3*(parseInt(_0x43a999(0x1a4))/0x4)+-parseInt(_0x43a999(0x1ba))/0x5*(-parseInt(_0x43a999(0x189))/0x6)+-parseInt(_0x43a999(0x1a8))/0x7*(parseInt(_0x43a999(0x1b9))/0x8)+parseInt(_0x43a999(0x1af))/0x9+parseInt(_0x43a999(0x18a))/0xa+parseInt(_0x43a999(0x1b5))/0xb;if(_0x2cda09===_0x213e41)break;else _0x1028a9['push'](_0x1028a9['shift']());}catch(_0x36928f){_0x1028a9['push'](_0x1028a9['shift']());}}}(a71_0x5188,0x6870c));function a71_0x5188(){const _0x1d218a=['19453Eththn','work_create_item','describe','name','once','output','success','864198IerZvS','Command\x20completed\x20successfully','stdin','SIGINT','tdx','join','8276059CxBiCG','length','shape','array','1624jorPgV','5PSZEjj','close','Context','4816428IIFhuh','2088810MowMwC','connect','222294GKjIPB','stringify','No\x20commands\x20found\x20matching\x20\x22','category','Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)','tdx_run','Optional\x20filter\x20by\x20category','registerTool','\x0a\x0a---\x0a\x0a','3VKCrvq','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.','optional','Utilities','string','map','2gFlONn','tdx_search','SIGTERM','text','Data','error','Command\x20failed','1.0.0','enum','2583164ipbwTd','description','examples','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.'];a71_0x5188=function(){return _0x1d218a;};return a71_0x5188();}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(_0x1c4d70={}){const _0x322658=a71_0x3884,_0x2157e3=new McpServer({'name':_0x322658(0x1b3),'version':_0x322658(0x1a2)});return _0x2157e3[_0x322658(0x193)](_0x322658(0x191),{'description':_0x322658(0x196),'inputSchema':{'args':z[_0x322658(0x1b8)](z[_0x322658(0x199)]())[_0x322658(0x1aa)]('Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])')}},async({args:_0x1fa8e1})=>{const _0x273a2c=_0x322658,_0x964e54=await executeTdxRun({'args':_0x1fa8e1},_0x1c4d70['env']||{});return _0x964e54[_0x273a2c(0x1ae)]?{'content':[{'type':_0x273a2c(0x19e),'text':_0x964e54[_0x273a2c(0x1ad)]||_0x273a2c(0x1b0)}]}:{'content':[{'type':_0x273a2c(0x19e),'text':_0x964e54[_0x273a2c(0x1a0)]||_0x964e54['output']||_0x273a2c(0x1a1)}],'isError':!![]};}),_0x2157e3[_0x322658(0x193)](_0x322658(0x19c),{'description':'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.','inputSchema':{'query':z['string']()[_0x322658(0x1aa)](_0x322658(0x190)),'category':z[_0x322658(0x1a3)]([_0x322658(0x19f),'CDP','AI',_0x322658(0x188),_0x322658(0x198)])[_0x322658(0x197)]()[_0x322658(0x1aa)](_0x322658(0x192))}},async({query:_0x49042d,category:_0x5e3212})=>{const _0x5639ce=_0x322658,_0x414d13=searchCommands({'query':_0x49042d,'category':_0x5e3212});if(_0x414d13[_0x5639ce(0x1b6)]===0x0)return{'content':[{'type':_0x5639ce(0x19e),'text':_0x5639ce(0x18e)+_0x49042d+'\x22'}]};const _0x35d526=_0x414d13[_0x5639ce(0x19a)](_0x3fc6f2=>{const _0x334335=_0x5639ce,_0x5437e5=_0x3fc6f2[_0x334335(0x1a6)][_0x334335(0x19a)](_0x390ed0=>'\x20\x20'+_0x390ed0)[_0x334335(0x1b4)]('\x0a');return'**'+_0x3fc6f2[_0x334335(0x1ab)]+'**\x20('+_0x3fc6f2[_0x334335(0x18f)]+')\x0a'+_0x3fc6f2[_0x334335(0x1a5)]+'\x0a\x0aExamples:\x0a'+_0x5437e5;})['join'](_0x5639ce(0x194));return{'content':[{'type':_0x5639ce(0x19e),'text':_0x35d526}]};}),_0x2157e3['registerTool'](_0x322658(0x1a9),{'description':_0x322658(0x1a7),'inputSchema':WorkCreateItemInputSchema[_0x322658(0x1b7)]},async({title:_0x45a3b7,kind:_0xf4bca2,status:_0xd724a4,tags:_0x509bc0,priority:_0x3c853f,body:_0x4a83df,template:_0x573c8f,github:_0x2d63a3,jira:_0x4dbfd8})=>{const _0x12b113=_0x322658,_0x4a6544=executeWorkCreateItem({'title':_0x45a3b7,'kind':_0xf4bca2,'status':_0xd724a4,'tags':_0x509bc0,'priority':_0x3c853f,'body':_0x4a83df,'template':_0x573c8f,'github':_0x2d63a3,'jira':_0x4dbfd8});return _0x4a6544[_0x12b113(0x1ae)]?{'content':[{'type':_0x12b113(0x19e),'text':JSON[_0x12b113(0x18d)]({'path':_0x4a6544['path'],'slug':_0x4a6544['slug']})}]}:{'content':[{'type':_0x12b113(0x19e),'text':_0x4a6544[_0x12b113(0x1a0)]||'Failed\x20to\x20create\x20item'}],'isError':!![]};}),_0x2157e3;}function a71_0x3884(_0x5e3282,_0x26415d){_0x5e3282=_0x5e3282-0x187;const _0x5188dc=a71_0x5188();let _0x3884ea=_0x5188dc[_0x5e3282];return _0x3884ea;}export async function startMCPServer(_0x5db1ea={}){const _0x517f62=a71_0x3884,_0x24ab05=createMCPServer(_0x5db1ea),_0x42ac1a=new StdioServerTransport();return await _0x24ab05[_0x517f62(0x18b)](_0x42ac1a),new Promise(_0x3af903=>{const _0x908970=_0x517f62;let _0x2c42ae=![];const _0x4df565=async()=>{const _0x5a1e23=a71_0x3884;if(_0x2c42ae)return;_0x2c42ae=!![],await _0x24ab05[_0x5a1e23(0x187)](),_0x3af903();};process[_0x908970(0x1ac)](_0x908970(0x1b2),_0x4df565),process['once'](_0x908970(0x19d),_0x4df565),process[_0x908970(0x1b1)][_0x908970(0x1ac)]('close',_0x4df565);});}
1
+ (function(_0xb39bce,_0x2db0e6){const _0x325e20=a71_0x512f,_0x55af96=_0xb39bce();while(!![]){try{const _0x1a7e98=parseInt(_0x325e20(0x123))/0x1+parseInt(_0x325e20(0x119))/0x2+-parseInt(_0x325e20(0x128))/0x3*(-parseInt(_0x325e20(0x112))/0x4)+-parseInt(_0x325e20(0x109))/0x5+-parseInt(_0x325e20(0x113))/0x6*(-parseInt(_0x325e20(0xfe))/0x7)+-parseInt(_0x325e20(0x10b))/0x8*(parseInt(_0x325e20(0x129))/0x9)+-parseInt(_0x325e20(0xff))/0xa*(parseInt(_0x325e20(0x107))/0xb);if(_0x1a7e98===_0x2db0e6)break;else _0x55af96['push'](_0x55af96['shift']());}catch(_0x4e3951){_0x55af96['push'](_0x55af96['shift']());}}}(a71_0x2b83,0x53257));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(_0x340458={}){const _0x221aa0=a71_0x512f,_0x51c15c=new McpServer({'name':_0x221aa0(0x101),'version':_0x221aa0(0x121)});return _0x51c15c[_0x221aa0(0x102)](_0x221aa0(0x125),{'description':_0x221aa0(0x126),'inputSchema':{'args':z[_0x221aa0(0x111)](z[_0x221aa0(0xf8)]())[_0x221aa0(0xfb)](_0x221aa0(0x127))}},async({args:_0x5698b1})=>{const _0x49625a=_0x221aa0,_0x29f5e7=await executeTdxRun({'args':_0x5698b1},_0x340458[_0x49625a(0x110)]||{});return _0x29f5e7[_0x49625a(0x11d)]?{'content':[{'type':_0x49625a(0x11e),'text':_0x29f5e7['output']||_0x49625a(0x12d)}]}:{'content':[{'type':_0x49625a(0x11e),'text':_0x29f5e7[_0x49625a(0x104)]||_0x29f5e7['output']||_0x49625a(0x117)}],'isError':!![]};}),_0x51c15c[_0x221aa0(0x102)](_0x221aa0(0x10f),{'description':_0x221aa0(0x115),'inputSchema':{'query':z['string']()[_0x221aa0(0xfb)](_0x221aa0(0x106)),'category':z[_0x221aa0(0x10a)]([_0x221aa0(0x10c),_0x221aa0(0x10d),'AI',_0x221aa0(0x118),_0x221aa0(0x120)])[_0x221aa0(0x11a)]()['describe'](_0x221aa0(0x12a))}},async({query:_0x3e64b3,category:_0x347cd2})=>{const _0x2692c3=_0x221aa0,_0x3c6fd6=searchCommands({'query':_0x3e64b3,'category':_0x347cd2});if(_0x3c6fd6['length']===0x0)return{'content':[{'type':_0x2692c3(0x11e),'text':'No\x20commands\x20found\x20matching\x20\x22'+_0x3e64b3+'\x22'}]};const _0x576b5f=_0x3c6fd6[_0x2692c3(0x11c)](_0x1b237d=>{const _0x194f09=_0x2692c3,_0x22e99d=_0x1b237d[_0x194f09(0xfc)][_0x194f09(0x11c)](_0x3227bc=>'\x20\x20'+_0x3227bc)[_0x194f09(0x122)]('\x0a');return'**'+_0x1b237d[_0x194f09(0x116)]+_0x194f09(0xf9)+_0x1b237d[_0x194f09(0xfd)]+')\x0a'+_0x1b237d[_0x194f09(0x11f)]+_0x194f09(0xfa)+_0x22e99d;})['join']('\x0a\x0a---\x0a\x0a');return{'content':[{'type':_0x2692c3(0x11e),'text':_0x576b5f}]};}),_0x51c15c[_0x221aa0(0x102)](_0x221aa0(0x10e),{'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[_0x221aa0(0x124)]},async({title:_0x1f1b78,kind:_0x27bde3,status:_0x52ee03,tags:_0x2a9b76,priority:_0x1237d3,body:_0xc4906d,template:_0xa1869a,github:_0x2ce9b3,jira:_0x27e815})=>{const _0x48a2e2=_0x221aa0,_0x5dc37c=executeWorkCreateItem({'title':_0x1f1b78,'kind':_0x27bde3,'status':_0x52ee03,'tags':_0x2a9b76,'priority':_0x1237d3,'body':_0xc4906d,'template':_0xa1869a,'github':_0x2ce9b3,'jira':_0x27e815});return _0x5dc37c[_0x48a2e2(0x11d)]?{'content':[{'type':_0x48a2e2(0x11e),'text':JSON[_0x48a2e2(0x105)]({'path':_0x5dc37c['path'],'slug':_0x5dc37c[_0x48a2e2(0x12c)]})}]}:{'content':[{'type':_0x48a2e2(0x11e),'text':_0x5dc37c['error']||'Failed\x20to\x20create\x20item'}],'isError':!![]};}),_0x51c15c;}export async function startMCPServer(_0x7262d6={}){const _0x37f8e2=a71_0x512f,_0x18af24=createMCPServer(_0x7262d6),_0x13b783=new StdioServerTransport();return await _0x18af24[_0x37f8e2(0x100)](_0x13b783),new Promise(_0x4294a9=>{const _0x1bd47f=_0x37f8e2;let _0x348b2c=![];const _0xe25bf8=async()=>{const _0x16c94f=a71_0x512f;if(_0x348b2c)return;_0x348b2c=!![],await _0x18af24[_0x16c94f(0x12b)](),_0x4294a9();};process[_0x1bd47f(0x103)](_0x1bd47f(0x114),_0xe25bf8),process[_0x1bd47f(0x103)](_0x1bd47f(0x11b),_0xe25bf8),process[_0x1bd47f(0x108)][_0x1bd47f(0x103)](_0x1bd47f(0x12b),_0xe25bf8);});}function a71_0x512f(_0x56e0e5,_0x274cb1){_0x56e0e5=_0x56e0e5-0xf8;const _0x2b83d6=a71_0x2b83();let _0x512f8d=_0x2b83d6[_0x56e0e5];return _0x512f8d;}function a71_0x2b83(){const _0x5e3cf3=['1693890EghWsv','enum','70744VmGIvj','Data','CDP','work_create_item','tdx_search','env','array','1263532dmVeMN','6RfAzZt','SIGINT','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.','name','Command\x20failed','Context','148714SNDPks','optional','SIGTERM','map','success','text','description','Utilities','1.0.0','join','626842wXWgGu','shape','tdx_run','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.','Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])','3FKQtXq','342hwGvSf','Optional\x20filter\x20by\x20category','close','slug','Command\x20completed\x20successfully','string','**\x20(','\x0a\x0aExamples:\x0a','describe','examples','category','428190kXRWWj','628730gsSArX','connect','tdx','registerTool','once','error','stringify','Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)','11mQOoiF','stdin'];a71_0x2b83=function(){return _0x5e3cf3;};return a71_0x2b83();}
@@ -1 +1 @@
1
- (function(_0x3377e0,_0x4e86b6){var _0x5e7941=a72_0x3f69,_0x11b74d=_0x3377e0();while(!![]){try{var _0x2211e1=-parseInt(_0x5e7941(0xd8))/0x1+parseInt(_0x5e7941(0xd2))/0x2*(-parseInt(_0x5e7941(0xd5))/0x3)+parseInt(_0x5e7941(0xd6))/0x4*(-parseInt(_0x5e7941(0xd4))/0x5)+-parseInt(_0x5e7941(0xda))/0x6+-parseInt(_0x5e7941(0xd3))/0x7*(-parseInt(_0x5e7941(0xd9))/0x8)+parseInt(_0x5e7941(0xdb))/0x9+-parseInt(_0x5e7941(0xd1))/0xa*(-parseInt(_0x5e7941(0xd7))/0xb);if(_0x2211e1===_0x4e86b6)break;else _0x11b74d['push'](_0x11b74d['shift']());}catch(_0x37be2d){_0x11b74d['push'](_0x11b74d['shift']());}}}(a72_0x5b5a,0xef161));function a72_0x3f69(_0x3420d3,_0xb6befd){_0x3420d3=_0x3420d3-0xd1;var _0x5b5a38=a72_0x5b5a();var _0x3f69fc=_0x5b5a38[_0x3420d3];return _0x3f69fc;}export{executeTdxRun,TdxRunInputSchema}from'./tdx-run.js';export{searchCommands,TdxSearchInputSchema}from'./tdx-search.js';export{executeWorkCreateItem,WorkCreateItemInputSchema}from'./work-create-item.js';function a72_0x5b5a(){var _0x12ca75=['2464413AfICgF','50tSXQok','12603WDBMYr','513108QRKGFO','11975799RGitTP','595845AAaYKI','8WWXWkc','1991946WzvUEv','2913264nAoDak','30OLhAeB','358bDosFz'];a72_0x5b5a=function(){return _0x12ca75;};return a72_0x5b5a();}
1
+ function a72_0x463b(_0x1f5128,_0x1ae7aa){_0x1f5128=_0x1f5128-0x15a;var _0x511b2f=a72_0x511b();var _0x463b26=_0x511b2f[_0x1f5128];return _0x463b26;}function a72_0x511b(){var _0x5e32d7=['651203SxxDgG','20RBiyLz','2210480jLktTA','102028kZUmkh','8ebDDEj','6ofhwMO','174539PeBbuF','586419baTGqc','2tOjeKN','9874359kulHTy','1333656wNjOVT'];a72_0x511b=function(){return _0x5e32d7;};return a72_0x511b();}(function(_0x4b14ca,_0x179ac1){var _0x2d716a=a72_0x463b,_0x33ae2f=_0x4b14ca();while(!![]){try{var _0x4b09ec=parseInt(_0x2d716a(0x15f))/0x1*(-parseInt(_0x2d716a(0x161))/0x2)+-parseInt(_0x2d716a(0x160))/0x3+parseInt(_0x2d716a(0x15c))/0x4*(parseInt(_0x2d716a(0x15a))/0x5)+parseInt(_0x2d716a(0x15e))/0x6*(-parseInt(_0x2d716a(0x164))/0x7)+-parseInt(_0x2d716a(0x15d))/0x8*(parseInt(_0x2d716a(0x163))/0x9)+-parseInt(_0x2d716a(0x15b))/0xa+parseInt(_0x2d716a(0x162))/0xb;if(_0x4b09ec===_0x179ac1)break;else _0x33ae2f['push'](_0x33ae2f['shift']());}catch(_0x1f659a){_0x33ae2f['push'](_0x33ae2f['shift']());}}}(a72_0x511b,0x28e00));export{executeTdxRun,TdxRunInputSchema}from'./tdx-run.js';export{searchCommands,TdxSearchInputSchema}from'./tdx-search.js';export{executeWorkCreateItem,WorkCreateItemInputSchema}from'./work-create-item.js';
@@ -1 +1 @@
1
- const a73_0x309c7d=a73_0x18fc;(function(_0x5d97f3,_0x5d29ed){const _0x2c8bac=a73_0x18fc,_0x893ee7=_0x5d97f3();while(!![]){try{const _0x1da076=parseInt(_0x2c8bac(0x1fe))/0x1+parseInt(_0x2c8bac(0x20a))/0x2+-parseInt(_0x2c8bac(0x1f5))/0x3*(parseInt(_0x2c8bac(0x204))/0x4)+-parseInt(_0x2c8bac(0x203))/0x5*(-parseInt(_0x2c8bac(0x1eb))/0x6)+-parseInt(_0x2c8bac(0x1fa))/0x7*(-parseInt(_0x2c8bac(0x20c))/0x8)+-parseInt(_0x2c8bac(0x1ee))/0x9+-parseInt(_0x2c8bac(0x201))/0xa*(-parseInt(_0x2c8bac(0x205))/0xb);if(_0x1da076===_0x5d29ed)break;else _0x893ee7['push'](_0x893ee7['shift']());}catch(_0x4cf983){_0x893ee7['push'](_0x893ee7['shift']());}}}(a73_0x5cd4,0x26743));function a73_0x18fc(_0x1853c7,_0x4e516f){_0x1853c7=_0x1853c7-0x1ea;const _0x5cd4de=a73_0x5cd4();let _0x18fc43=_0x5cd4de[_0x1853c7];return _0x18fc43;}import{spawn}from'child_process';import{dirname,join}from'path';function a73_0x5cd4(){const _0x5b59fd=['resourcesPath','Failed\x20to\x20spawn\x20tdx:\x20','SIGTERM','92146iRsMZZ','platform','8iZEtYI','--json','26178scLZsu','--no-color','kill','1872702GoVDQZ','close','pipe','PATH','win32','Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])','stdout','135582rDBoGb','message','toString','node.exe','data','410809sHewEl','ignore','object','stderr','237697FCthmu','node','true','30UwQLyW','array','15ssdWKB','4ySOnPy','202521JDiwvD','This\x20command\x20is\x20not\x20allowed\x20via\x20MCP'];a73_0x5cd4=function(){return _0x5b59fd;};return a73_0x5cd4();}import{existsSync}from'fs';import{z}from'zod';import{isBlockedCommand,getBlockedReason,formatOutput}from'../utils.js';export const TdxRunInputSchema=z[a73_0x309c7d(0x1fc)]({'args':z[a73_0x309c7d(0x202)](z['string']())['describe'](a73_0x309c7d(0x1f3))});const DEFAULT_TIMEOUT_MS=0xf*0x3c*0x3e8;function getNodeBinDir(){const _0x15921a=a73_0x309c7d,_0xa0825c=process[_0x15921a(0x207)];if(_0xa0825c){const _0x3a1b42=join(_0xa0825c,_0x15921a(0x1ff)),_0x35db15=process[_0x15921a(0x20b)]===_0x15921a(0x1f2)?_0x15921a(0x1f8):'node';if(existsSync(join(_0x3a1b42,_0x35db15)))return _0x3a1b42;}return dirname(process['execPath']);}export async function executeTdxRun(_0x4b2d4d,_0x4b9642){const _0x1d4bc7=a73_0x309c7d,{args:_0x1fd559}=_0x4b2d4d;if(isBlockedCommand(_0x1fd559)){const _0x8fec23=getBlockedReason(_0x1fd559);return{'success':![],'output':'','error':_0x8fec23||_0x1d4bc7(0x206),'exitCode':0x1};}const _0x2e6738=[_0x1d4bc7(0x1ea),_0x1d4bc7(0x1ec),..._0x1fd559],_0x4a2f57=getNodeBinDir(),_0x2293dd=process[_0x1d4bc7(0x20b)]===_0x1d4bc7(0x1f2)?';':':',_0x435339=_0x4b9642[_0x1d4bc7(0x1f1)]??process.env.PATH??'',_0x32a95f=''+_0x4a2f57+_0x2293dd+_0x435339;return new Promise(_0x14b2d7=>{const _0x342688=_0x1d4bc7,_0x339871=spawn('tdx',_0x2e6738,{'env':{...process.env,..._0x4b9642,'PATH':_0x32a95f,'CI':_0x342688(0x200)},'stdio':[_0x342688(0x1fb),'pipe',_0x342688(0x1f0)]});let _0x3f1326='',_0x491cb1='',_0x3cdcd8=![];const _0x62a33e=setTimeout(()=>{const _0x384502=_0x342688;_0x3cdcd8=!![],_0x339871[_0x384502(0x1ed)](_0x384502(0x209));},DEFAULT_TIMEOUT_MS);_0x339871[_0x342688(0x1f4)]['on'](_0x342688(0x1f9),_0x59d9cc=>{const _0x489c6b=_0x342688;_0x3f1326+=_0x59d9cc[_0x489c6b(0x1f7)]();}),_0x339871[_0x342688(0x1fd)]['on'](_0x342688(0x1f9),_0x248b4a=>{const _0x374c92=_0x342688;_0x491cb1+=_0x248b4a[_0x374c92(0x1f7)]();}),_0x339871['on']('error',_0x1d63a4=>{const _0x433b16=_0x342688;clearTimeout(_0x62a33e),_0x14b2d7({'success':![],'output':'','error':_0x433b16(0x208)+_0x1d63a4[_0x433b16(0x1f6)],'exitCode':0x1});}),_0x339871['on'](_0x342688(0x1ef),_0x2a18b5=>{clearTimeout(_0x62a33e);if(_0x3cdcd8){_0x14b2d7({'success':![],'output':formatOutput(_0x3f1326),'error':'Command\x20timed\x20out\x20after\x2015\x20minutes.\x20For\x20long-running\x20queries,\x20use\x20job\x20submit\x20instead.','exitCode':0x7c});return;}const _0x48f49f=_0x2a18b5??0x1,_0x14704f=_0x48f49f===0x0,_0xe26336=formatOutput(_0x3f1326||_0x491cb1),_0x3c1a04=!_0x14704f&&_0x491cb1?formatOutput(_0x491cb1):undefined;_0x14b2d7({'success':_0x14704f,'output':_0xe26336,'error':_0x3c1a04,'exitCode':_0x48f49f});});});}
1
+ const a73_0x2d2b42=a73_0x44e5;(function(_0x29a2c2,_0x2852f0){const _0x1c3fa0=a73_0x44e5,_0x473343=_0x29a2c2();while(!![]){try{const _0x2a7368=-parseInt(_0x1c3fa0(0xc1))/0x1+parseInt(_0x1c3fa0(0xd2))/0x2*(parseInt(_0x1c3fa0(0xbc))/0x3)+-parseInt(_0x1c3fa0(0xda))/0x4+parseInt(_0x1c3fa0(0xc2))/0x5+-parseInt(_0x1c3fa0(0xc9))/0x6+-parseInt(_0x1c3fa0(0xbe))/0x7*(-parseInt(_0x1c3fa0(0xd4))/0x8)+-parseInt(_0x1c3fa0(0xbd))/0x9*(-parseInt(_0x1c3fa0(0xd5))/0xa);if(_0x2a7368===_0x2852f0)break;else _0x473343['push'](_0x473343['shift']());}catch(_0x3df2bf){_0x473343['push'](_0x473343['shift']());}}}(a73_0x4867,0x5faec));import{spawn}from'child_process';function a73_0x4867(){const _0x45ede0=['stdout','144057PYwARM','18JLexcv','4753NnfDzN','--json','--no-color','779556cExkwE','381130VkEFvg','pipe','toString','true','describe','Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])','execPath','3694530zkflyO','SIGTERM','string','kill','node','ignore','resourcesPath','tdx','platform','14FUJmxW','This\x20command\x20is\x20not\x20allowed\x20via\x20MCP','4296dIvCzE','8745960QUJGnK','error','Command\x20timed\x20out\x20after\x2015\x20minutes.\x20For\x20long-running\x20queries,\x20use\x20job\x20submit\x20instead.','message','close','2955788lrGcdY','stderr','array','data'];a73_0x4867=function(){return _0x45ede0;};return a73_0x4867();}import{dirname,join}from'path';import{existsSync}from'fs';import{z}from'zod';import{isBlockedCommand,getBlockedReason,formatOutput}from'../utils.js';export const TdxRunInputSchema=z['object']({'args':z[a73_0x2d2b42(0xdc)](z[a73_0x2d2b42(0xcb)]())[a73_0x2d2b42(0xc6)](a73_0x2d2b42(0xc7))});const DEFAULT_TIMEOUT_MS=0xf*0x3c*0x3e8;function a73_0x44e5(_0xee1b59,_0x477ae7){_0xee1b59=_0xee1b59-0xbb;const _0x48672f=a73_0x4867();let _0x44e569=_0x48672f[_0xee1b59];return _0x44e569;}function getNodeBinDir(){const _0x53a03a=a73_0x2d2b42,_0x1b304a=process[_0x53a03a(0xcf)];if(_0x1b304a){const _0x577d9c=join(_0x1b304a,_0x53a03a(0xcd)),_0x40efde=process['platform']==='win32'?'node.exe':_0x53a03a(0xcd);if(existsSync(join(_0x577d9c,_0x40efde)))return _0x577d9c;}return dirname(process[_0x53a03a(0xc8)]);}export async function executeTdxRun(_0x3c3c27,_0x1d00f0){const _0x202eaa=a73_0x2d2b42,{args:_0x145913}=_0x3c3c27;if(isBlockedCommand(_0x145913)){const _0x472ebe=getBlockedReason(_0x145913);return{'success':![],'output':'','error':_0x472ebe||_0x202eaa(0xd3),'exitCode':0x1};}const _0x3329e4=[_0x202eaa(0xbf),_0x202eaa(0xc0),..._0x145913],_0x256af8=getNodeBinDir(),_0x503100=process[_0x202eaa(0xd1)]==='win32'?';':':',_0x1b7aa7=_0x1d00f0['PATH']??process.env.PATH??'',_0x2a8aa3=''+_0x256af8+_0x503100+_0x1b7aa7;return new Promise(_0x18a789=>{const _0x444d25=_0x202eaa,_0x1f55ce=spawn(_0x444d25(0xd0),_0x3329e4,{'env':{...process.env,..._0x1d00f0,'PATH':_0x2a8aa3,'CI':_0x444d25(0xc5)},'stdio':[_0x444d25(0xce),_0x444d25(0xc3),_0x444d25(0xc3)]});let _0x2d24b0='',_0x305994='',_0xfbea71=![];const _0x36ae49=setTimeout(()=>{const _0x1436e3=_0x444d25;_0xfbea71=!![],_0x1f55ce[_0x1436e3(0xcc)](_0x1436e3(0xca));},DEFAULT_TIMEOUT_MS);_0x1f55ce[_0x444d25(0xbb)]['on'](_0x444d25(0xdd),_0x1864d0=>{const _0x40da96=_0x444d25;_0x2d24b0+=_0x1864d0[_0x40da96(0xc4)]();}),_0x1f55ce[_0x444d25(0xdb)]['on']('data',_0x347ee1=>{const _0x137760=_0x444d25;_0x305994+=_0x347ee1[_0x137760(0xc4)]();}),_0x1f55ce['on'](_0x444d25(0xd6),_0xd20fc0=>{const _0x53bba9=_0x444d25;clearTimeout(_0x36ae49),_0x18a789({'success':![],'output':'','error':'Failed\x20to\x20spawn\x20tdx:\x20'+_0xd20fc0[_0x53bba9(0xd8)],'exitCode':0x1});}),_0x1f55ce['on'](_0x444d25(0xd9),_0x1e7098=>{const _0x5b924c=_0x444d25;clearTimeout(_0x36ae49);if(_0xfbea71){_0x18a789({'success':![],'output':formatOutput(_0x2d24b0),'error':_0x5b924c(0xd7),'exitCode':0x7c});return;}const _0x482083=_0x1e7098??0x1,_0x48b4f9=_0x482083===0x0,_0x30e1a8=formatOutput(_0x2d24b0||_0x305994),_0x5a592a=!_0x48b4f9&&_0x305994?formatOutput(_0x305994):undefined;_0x18a789({'success':_0x48b4f9,'output':_0x30e1a8,'error':_0x5a592a,'exitCode':_0x482083});});});}
@@ -1 +1 @@
1
- const a74_0x3977ad=a74_0x4a8d;(function(_0x5d2558,_0x2b47eb){const _0x36d71d=a74_0x4a8d,_0x520a49=_0x5d2558();while(!![]){try{const _0x483333=parseInt(_0x36d71d(0x19c))/0x1+-parseInt(_0x36d71d(0x20e))/0x2+-parseInt(_0x36d71d(0x1d2))/0x3*(-parseInt(_0x36d71d(0x245))/0x4)+-parseInt(_0x36d71d(0x1b1))/0x5*(-parseInt(_0x36d71d(0x1b0))/0x6)+parseInt(_0x36d71d(0x217))/0x7*(-parseInt(_0x36d71d(0x224))/0x8)+-parseInt(_0x36d71d(0x1c3))/0x9*(parseInt(_0x36d71d(0x24c))/0xa)+-parseInt(_0x36d71d(0x196))/0xb*(parseInt(_0x36d71d(0x1ce))/0xc);if(_0x483333===_0x2b47eb)break;else _0x520a49['push'](_0x520a49['shift']());}catch(_0x56515c){_0x520a49['push'](_0x520a49['shift']());}}}(a74_0x5329,0xa720c));import{z}from'zod';const COMMANDS=[{'name':a74_0x3977ad(0x172),'description':a74_0x3977ad(0x19a),'category':a74_0x3977ad(0x1d1),'keywords':[a74_0x3977ad(0x237),'databases','db',a74_0x3977ad(0x1fa),a74_0x3977ad(0x246),a74_0x3977ad(0x24e)],'examples':[a74_0x3977ad(0x1fc),a74_0x3977ad(0x175),a74_0x3977ad(0x216)]},{'name':a74_0x3977ad(0x1e8),'description':'List\x20tables\x20in\x20a\x20database','category':'Data','keywords':['table','tables',a74_0x3977ad(0x1fa),a74_0x3977ad(0x246),a74_0x3977ad(0x1aa)],'examples':['tdx\x20table\x20list',a74_0x3977ad(0x16c),a74_0x3977ad(0x1c5)]},{'name':'show','description':a74_0x3977ad(0x188),'category':'Data','keywords':[a74_0x3977ad(0x246),a74_0x3977ad(0x1fd),'preview','data',a74_0x3977ad(0x211),a74_0x3977ad(0x212),a74_0x3977ad(0x1d3)],'examples':[a74_0x3977ad(0x178),a74_0x3977ad(0x22d)]},{'name':a74_0x3977ad(0x1ae),'description':'Describe\x20table\x20schema\x20(columns,\x20types)','category':a74_0x3977ad(0x1d1),'keywords':[a74_0x3977ad(0x1ae),'schema','columns',a74_0x3977ad(0x190),a74_0x3977ad(0x22a),'definition'],'examples':[a74_0x3977ad(0x18d),a74_0x3977ad(0x1c4)]},{'name':a74_0x3977ad(0x20d),'description':'Execute\x20SQL\x20query\x20using\x20Trino','category':a74_0x3977ad(0x1d1),'keywords':[a74_0x3977ad(0x20d),a74_0x3977ad(0x16b),a74_0x3977ad(0x24b),a74_0x3977ad(0x22b),a74_0x3977ad(0x228),a74_0x3977ad(0x16a),a74_0x3977ad(0x240)],'examples':[a74_0x3977ad(0x235),a74_0x3977ad(0x232)]},{'name':a74_0x3977ad(0x1c7),'description':a74_0x3977ad(0x201),'category':a74_0x3977ad(0x1d1),'keywords':[a74_0x3977ad(0x254),'jobs',a74_0x3977ad(0x1fa),'history','queries'],'examples':[a74_0x3977ad(0x1a6),a74_0x3977ad(0x21e),a74_0x3977ad(0x218)]},{'name':a74_0x3977ad(0x174),'description':'Show\x20job\x20details','category':a74_0x3977ad(0x1d1),'keywords':[a74_0x3977ad(0x254),a74_0x3977ad(0x246),a74_0x3977ad(0x1e9),a74_0x3977ad(0x24a),a74_0x3977ad(0x1ca)],'examples':['tdx\x20job\x20show\x2012345']},{'name':'job\x20result','description':a74_0x3977ad(0x1b2),'category':a74_0x3977ad(0x1d1),'keywords':[a74_0x3977ad(0x254),a74_0x3977ad(0x19e),a74_0x3977ad(0x244),a74_0x3977ad(0x1dc)],'examples':[a74_0x3977ad(0x1ea)]},{'name':'job\x20kill','description':a74_0x3977ad(0x1f9),'category':'Data','keywords':['job',a74_0x3977ad(0x1b5),a74_0x3977ad(0x1b3),a74_0x3977ad(0x1e1),a74_0x3977ad(0x1b9)],'examples':[a74_0x3977ad(0x1e0)]},{'name':'workflow\x20projects','description':'List\x20workflow\x20projects','category':'Data','keywords':[a74_0x3977ad(0x1a9),a74_0x3977ad(0x220),a74_0x3977ad(0x1f4),'list'],'examples':[a74_0x3977ad(0x1f1),a74_0x3977ad(0x20a)]},{'name':a74_0x3977ad(0x248),'description':'List\x20workflow\x20sessions','category':a74_0x3977ad(0x1d1),'keywords':[a74_0x3977ad(0x1a9),a74_0x3977ad(0x1d0),a74_0x3977ad(0x1cb),'executions'],'examples':[a74_0x3977ad(0x202),a74_0x3977ad(0x166)]},{'name':'workflow\x20logs','description':a74_0x3977ad(0x238),'category':a74_0x3977ad(0x1d1),'keywords':[a74_0x3977ad(0x1a9),a74_0x3977ad(0x247),a74_0x3977ad(0x244),a74_0x3977ad(0x1f6)],'examples':[a74_0x3977ad(0x1e6)]},{'name':a74_0x3977ad(0x1a0),'description':a74_0x3977ad(0x165),'category':a74_0x3977ad(0x1d1),'keywords':[a74_0x3977ad(0x1a9),'run',a74_0x3977ad(0x228),a74_0x3977ad(0x1f0),a74_0x3977ad(0x252)],'examples':['tdx\x20workflow\x20run\x20myproject/myworkflow']},{'name':a74_0x3977ad(0x1d4),'description':a74_0x3977ad(0x257),'category':'CDP','keywords':['segment',a74_0x3977ad(0x22c),a74_0x3977ad(0x1ad),'list','cdp'],'examples':['tdx\x20segment\x20list',a74_0x3977ad(0x182),a74_0x3977ad(0x1f5)]},{'name':a74_0x3977ad(0x16f),'description':a74_0x3977ad(0x251),'category':'CDP','keywords':['segment',a74_0x3977ad(0x246),a74_0x3977ad(0x1e9),'info',a74_0x3977ad(0x1fd)],'examples':['tdx\x20segment\x20show\x20\x22My\x20Segment\x22']},{'name':a74_0x3977ad(0x233),'description':a74_0x3977ad(0x1b4),'category':a74_0x3977ad(0x229),'keywords':['segment',a74_0x3977ad(0x16b),a74_0x3977ad(0x20d),a74_0x3977ad(0x231)],'examples':[a74_0x3977ad(0x1d6)]},{'name':a74_0x3977ad(0x1da),'description':a74_0x3977ad(0x23d),'category':a74_0x3977ad(0x229),'keywords':[a74_0x3977ad(0x1c2),'pull',a74_0x3977ad(0x1dc),a74_0x3977ad(0x242),a74_0x3977ad(0x1ab)],'examples':[a74_0x3977ad(0x209)]},{'name':'segment\x20push','description':'Push\x20segment\x20definition\x20from\x20YAML','category':a74_0x3977ad(0x229),'keywords':[a74_0x3977ad(0x1c2),'push',a74_0x3977ad(0x17d),a74_0x3977ad(0x1dd),a74_0x3977ad(0x17a),'update'],'examples':[a74_0x3977ad(0x1cf),a74_0x3977ad(0x1bb)]},{'name':a74_0x3977ad(0x1bf),'description':'List\x20available\x20segment\x20fields','category':a74_0x3977ad(0x229),'keywords':[a74_0x3977ad(0x1c2),a74_0x3977ad(0x197),a74_0x3977ad(0x186),'columns','schema'],'examples':['tdx\x20segment\x20fields',a74_0x3977ad(0x23e)]},{'name':'parent-segment\x20list','description':a74_0x3977ad(0x1c1),'category':a74_0x3977ad(0x229),'keywords':[a74_0x3977ad(0x173),'segment','master',a74_0x3977ad(0x1fa),a74_0x3977ad(0x1cc)],'examples':['tdx\x20parent-segment\x20list','tdx\x20ps\x20list']},{'name':a74_0x3977ad(0x236),'description':a74_0x3977ad(0x191),'category':a74_0x3977ad(0x229),'keywords':[a74_0x3977ad(0x173),a74_0x3977ad(0x1c2),a74_0x3977ad(0x226),a74_0x3977ad(0x1dc),a74_0x3977ad(0x242)],'examples':[a74_0x3977ad(0x161),a74_0x3977ad(0x24d)]},{'name':a74_0x3977ad(0x20b),'description':a74_0x3977ad(0x230),'category':a74_0x3977ad(0x229),'keywords':['parent','segment',a74_0x3977ad(0x164),a74_0x3977ad(0x17d),a74_0x3977ad(0x17a)],'examples':[a74_0x3977ad(0x214),'tdx\x20ps\x20push\x20--dry-run']},{'name':'parent-segment\x20validate','description':a74_0x3977ad(0x206),'category':a74_0x3977ad(0x229),'keywords':[a74_0x3977ad(0x173),a74_0x3977ad(0x1c2),a74_0x3977ad(0x18c),a74_0x3977ad(0x256),a74_0x3977ad(0x222)],'examples':['tdx\x20parent-segment\x20validate\x20parent.yaml',a74_0x3977ad(0x176)]},{'name':a74_0x3977ad(0x205),'description':a74_0x3977ad(0x1c9),'category':'CDP','keywords':['parent',a74_0x3977ad(0x1c2),'preview',a74_0x3977ad(0x183),a74_0x3977ad(0x215)],'examples':['tdx\x20parent-segment\x20preview',a74_0x3977ad(0x1af)]},{'name':a74_0x3977ad(0x185),'description':a74_0x3977ad(0x1b8),'category':a74_0x3977ad(0x229),'keywords':[a74_0x3977ad(0x227),'journeys',a74_0x3977ad(0x1fa),a74_0x3977ad(0x1ef)],'examples':[a74_0x3977ad(0x181),a74_0x3977ad(0x21d)]},{'name':a74_0x3977ad(0x210),'description':'View\x20journey\x20details','category':a74_0x3977ad(0x229),'keywords':[a74_0x3977ad(0x227),'view',a74_0x3977ad(0x246),'details'],'examples':[a74_0x3977ad(0x221)]},{'name':a74_0x3977ad(0x1ed),'description':'Pull\x20journey\x20definition\x20to\x20YAML','category':a74_0x3977ad(0x229),'keywords':[a74_0x3977ad(0x227),'pull',a74_0x3977ad(0x1dc),a74_0x3977ad(0x242)],'examples':['tdx\x20journey\x20pull\x20\x22My\x20Journey\x22\x20-o\x20journey.yaml']},{'name':a74_0x3977ad(0x163),'description':a74_0x3977ad(0x255),'category':a74_0x3977ad(0x229),'keywords':[a74_0x3977ad(0x227),a74_0x3977ad(0x164),a74_0x3977ad(0x17d),a74_0x3977ad(0x17a)],'examples':[a74_0x3977ad(0x19f)]},{'name':a74_0x3977ad(0x18f),'description':a74_0x3977ad(0x16e),'category':'CDP','keywords':[a74_0x3977ad(0x223),'activations',a74_0x3977ad(0x242),'sync',a74_0x3977ad(0x1a2)],'examples':[a74_0x3977ad(0x1bd),a74_0x3977ad(0x1e7)]},{'name':a74_0x3977ad(0x208),'description':'List\x20data\x20connections','category':a74_0x3977ad(0x229),'keywords':[a74_0x3977ad(0x1df),a74_0x3977ad(0x198),a74_0x3977ad(0x1a2),a74_0x3977ad(0x1fa)],'examples':[a74_0x3977ad(0x23a)]},{'name':a74_0x3977ad(0x1f3),'description':a74_0x3977ad(0x203),'category':'CDP','keywords':[a74_0x3977ad(0x1df),a74_0x3977ad(0x1aa),a74_0x3977ad(0x1ff),a74_0x3977ad(0x219)],'examples':[a74_0x3977ad(0x23b),a74_0x3977ad(0x189)]},{'name':a74_0x3977ad(0x1a3),'description':a74_0x3977ad(0x1fb),'category':'AI','keywords':['agent',a74_0x3977ad(0x18e),a74_0x3977ad(0x193),'ai',a74_0x3977ad(0x1fa)],'examples':[a74_0x3977ad(0x17f),'tdx\x20agents']},{'name':'agent\x20show','description':a74_0x3977ad(0x168),'category':'AI','keywords':[a74_0x3977ad(0x239),a74_0x3977ad(0x246),a74_0x3977ad(0x1e9),a74_0x3977ad(0x1ca)],'examples':[a74_0x3977ad(0x1b7)]},{'name':a74_0x3977ad(0x225),'description':'Pull\x20agent\x20definition\x20to\x20YAML','category':'AI','keywords':[a74_0x3977ad(0x239),'pull','download',a74_0x3977ad(0x242)],'examples':[a74_0x3977ad(0x234)]},{'name':'agent\x20push','description':a74_0x3977ad(0x1ba),'category':'AI','keywords':[a74_0x3977ad(0x239),'push',a74_0x3977ad(0x17d),'create',a74_0x3977ad(0x200)],'examples':[a74_0x3977ad(0x19b)]},{'name':a74_0x3977ad(0x24f),'description':a74_0x3977ad(0x213),'category':'AI','keywords':[a74_0x3977ad(0x24f),a74_0x3977ad(0x193),'ai',a74_0x3977ad(0x18a),a74_0x3977ad(0x21c),a74_0x3977ad(0x1d8)],'examples':[a74_0x3977ad(0x1e4),'tdx\x20chat\x20--agent\x20myproject/myagent\x20\x22What\x20is\x20TD?\x22']},{'name':a74_0x3977ad(0x21f),'description':'List\x20chat\x20sessions','category':'AI','keywords':[a74_0x3977ad(0x24f),a74_0x3977ad(0x21f),a74_0x3977ad(0x1d0),a74_0x3977ad(0x23c),a74_0x3977ad(0x1fe)],'examples':['tdx\x20chats',a74_0x3977ad(0x1e2)]},{'name':a74_0x3977ad(0x170),'description':'List\x20available\x20LLM\x20models','category':'AI','keywords':['llm',a74_0x3977ad(0x179),'ai',a74_0x3977ad(0x1fa)],'examples':['tdx\x20llm\x20models']},{'name':a74_0x3977ad(0x250),'description':a74_0x3977ad(0x16d),'category':'AI','keywords':[a74_0x3977ad(0x193),'projects','ai','list'],'examples':['tdx\x20llm\x20projects']},{'name':a74_0x3977ad(0x1a1),'description':a74_0x3977ad(0x1d7),'category':'Context','keywords':[a74_0x3977ad(0x1a1),a74_0x3977ad(0x1bc),a74_0x3977ad(0x253),a74_0x3977ad(0x21a),'select'],'examples':[a74_0x3977ad(0x249),a74_0x3977ad(0x21b),a74_0x3977ad(0x17e)]},{'name':'unset','description':a74_0x3977ad(0x207),'category':a74_0x3977ad(0x169),'keywords':[a74_0x3977ad(0x1f7),'clear',a74_0x3977ad(0x19d),a74_0x3977ad(0x253)],'examples':[a74_0x3977ad(0x20c),a74_0x3977ad(0x1be)]},{'name':a74_0x3977ad(0x1ee),'description':a74_0x3977ad(0x1c6),'category':'Context','keywords':['profile',a74_0x3977ad(0x1c8),a74_0x3977ad(0x1fa),a74_0x3977ad(0x1ff)],'examples':[a74_0x3977ad(0x160),a74_0x3977ad(0x23f)]},{'name':a74_0x3977ad(0x22e),'description':a74_0x3977ad(0x1f2),'category':a74_0x3977ad(0x169),'keywords':[a74_0x3977ad(0x177),a74_0x3977ad(0x246),a74_0x3977ad(0x1e9),'config'],'examples':['tdx\x20profile\x20show\x20myprofile']},{'name':a74_0x3977ad(0x184),'description':a74_0x3977ad(0x1b6),'category':a74_0x3977ad(0x169),'keywords':['auth',a74_0x3977ad(0x195),a74_0x3977ad(0x24a),a74_0x3977ad(0x1a5)],'examples':[a74_0x3977ad(0x1e3),'tdx\x20auth\x20--profile\x20myprofile']},{'name':a74_0x3977ad(0x1d5),'description':a74_0x3977ad(0x180),'category':a74_0x3977ad(0x169),'keywords':[a74_0x3977ad(0x1d5),'me',a74_0x3977ad(0x1a4),a74_0x3977ad(0x204)],'examples':['tdx\x20user']},{'name':a74_0x3977ad(0x162),'description':a74_0x3977ad(0x17b),'category':'Context','keywords':[a74_0x3977ad(0x162),a74_0x3977ad(0x1fa),a74_0x3977ad(0x194),'members'],'examples':['tdx\x20users','tdx\x20user\x20list']},{'name':'api','description':a74_0x3977ad(0x243),'category':a74_0x3977ad(0x1a8),'keywords':[a74_0x3977ad(0x241),a74_0x3977ad(0x1e5),a74_0x3977ad(0x1ac),a74_0x3977ad(0x1eb),a74_0x3977ad(0x1a7)],'examples':[a74_0x3977ad(0x187),'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['object']({'query':z[a74_0x3977ad(0x1c0)]()[a74_0x3977ad(0x1ae)](a74_0x3977ad(0x1f8)),'category':z[a74_0x3977ad(0x167)](['Data',a74_0x3977ad(0x229),'AI','Context','Utilities'])[a74_0x3977ad(0x1ec)]()['describe']('Optional\x20filter\x20by\x20category')});export function searchCommands(_0x1d64eb){const _0xfc9760=a74_0x3977ad,{query:_0x3b9278,category:_0x389810}=_0x1d64eb,_0x330e88=_0x3b9278[_0xfc9760(0x199)](),_0x14a91b=_0x330e88['split'](/\s+/)['filter'](_0x20c4d6=>_0x20c4d6[_0xfc9760(0x1de)]>0x0);let _0x50c84c=COMMANDS;_0x389810&&(_0x50c84c=_0x50c84c['filter'](_0x1701a3=>_0x1701a3['category']===_0x389810));const _0xa37948=_0x50c84c['map'](_0x1de66e=>{const _0xefca00=_0xfc9760;let _0x13eb56=0x0;_0x1de66e[_0xefca00(0x1cd)]['toLowerCase']()===_0x330e88&&(_0x13eb56+=0x64);_0x1de66e['name'][_0xefca00(0x199)]()[_0xefca00(0x18b)](_0x330e88)&&(_0x13eb56+=0x32);_0x1de66e['description']['toLowerCase']()[_0xefca00(0x18b)](_0x330e88)&&(_0x13eb56+=0x1e);for(const _0x21dbd0 of _0x14a91b){for(const _0xb24c57 of _0x1de66e[_0xefca00(0x1d9)]){if(_0xb24c57===_0x21dbd0)_0x13eb56+=0x14;else(_0xb24c57[_0xefca00(0x18b)](_0x21dbd0)||_0x21dbd0[_0xefca00(0x18b)](_0xb24c57))&&(_0x13eb56+=0xa);}_0x1de66e['name']['toLowerCase']()['includes'](_0x21dbd0)&&(_0x13eb56+=0xf),_0x1de66e[_0xefca00(0x17c)][_0xefca00(0x199)]()[_0xefca00(0x18b)](_0x21dbd0)&&(_0x13eb56+=0x5);}return{'name':_0x1de66e['name'],'description':_0x1de66e[_0xefca00(0x17c)],'category':_0x1de66e[_0xefca00(0x192)],'examples':_0x1de66e[_0xefca00(0x22f)],'score':_0x13eb56};});return _0xa37948[_0xfc9760(0x20f)](_0x39b7cf=>_0x39b7cf['score']>0x0)[_0xfc9760(0x171)]((_0x47eb06,_0x1230fb)=>_0x1230fb['score']-_0x47eb06['score'])[_0xfc9760(0x1db)](0x0,0xa);}function a74_0x4a8d(_0x203158,_0x4f8155){_0x203158=_0x203158-0x160;const _0x53290a=a74_0x5329();let _0x4a8d0d=_0x53290a[_0x203158];return _0x4a8d0d;}function a74_0x5329(){const _0x341bf7=['profile','tdx\x20show\x20mydb.users','models','create','List\x20users\x20in\x20account','description','upload','tdx\x20use\x20--parent-segment\x20\x22My\x20PS\x22','tdx\x20agent\x20list','Show\x20current\x20user\x20info','tdx\x20journey\x20list','tdx\x20segments','sample','auth','journey\x20list','attributes','tdx\x20api\x20/v3/database/list','Show\x20table\x20contents\x20(SELECT\x20*\x20with\x20limit)','tdx\x20connection\x20schema\x20google_ads','conversation','includes','validate','tdx\x20describe\x20mydb.users','agents','activations','types','Pull\x20parent\x20segment\x20definition\x20to\x20YAML','category','llm','team','authentication','3223FeROyA','fields','connections','toLowerCase','List\x20all\x20databases','tdx\x20agent\x20push\x20agent.yaml','1111759SGNevZ','reset','result','tdx\x20journey\x20push\x20journey.yaml','workflow\x20run','use','destination','agent\x20list','whoami','login','tdx\x20job\x20list','curl','Utilities','workflow','schema','yaml','raw','audience','describe','tdx\x20ps\x20preview\x20--limit\x2010','34206CyUPGS','485fJgjdN','Get\x20job\x20results','cancel','Generate\x20SQL\x20for\x20a\x20segment','kill','Show\x20authentication\x20status','tdx\x20agent\x20show\x20myproject/myagent','List\x20customer\x20journeys','abort','Push\x20agent\x20definition\x20from\x20YAML','tdx\x20sg\x20push\x20segment.yaml\x20--dry-run','set','tdx\x20activations','tdx\x20unset\x20--all','segment\x20fields','string','List\x20parent\x20segments\x20(customer\x20masters)','segment','38943PJOhUJ','tdx\x20describe\x20mydb.events','tdx\x20tables\x20--database\x20mydb','List\x20configured\x20profiles','job\x20list','profiles','Preview\x20parent\x20segment\x20data','info','runs','customer','name','9624RafoEi','tdx\x20segment\x20push\x20segment.yaml','sessions','Data','3OhKcgt','records','segment\x20list','user','tdx\x20segment\x20sql\x20\x22My\x20Segment\x22','Set\x20session\x20context\x20(database,\x20parent\x20segment,\x20etc.)','message','keywords','segment\x20pull','slice','download','import','length','connection','tdx\x20job\x20kill\x2012345','stop','tdx\x20chats\x20--limit\x2010','tdx\x20auth','tdx\x20chat\x20\x22Hello\x22','http','tdx\x20workflow\x20logs\x20<attempt_id>','tdx\x20activations\x20--segment\x20\x22My\x20Segment\x22','table\x20list','details','tdx\x20job\x20result\x2012345','request','optional','journey\x20pull','profile\x20list','orchestration','start','tdx\x20workflow\x20projects','Show\x20profile\x20details','connection\x20schema','digdag','tdx\x20segments\x20--recursive','debug','unset','Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)','Kill\x20a\x20running\x20job','list','List\x20LLM\x20agents','tdx\x20database\x20list','view','conversations','config','deploy','List\x20query\x20jobs','tdx\x20workflow\x20sessions\x20myproject','Show\x20connection\x20schema\x20for\x20activations','account','parent-segment\x20preview','Validate\x20parent\x20segment\x20configuration','Clear\x20session\x20context','connection\x20list','tdx\x20segment\x20pull\x20\x22My\x20Segment\x22\x20-o\x20segment.yaml','tdx\x20wf\x20projects','parent-segment\x20push','tdx\x20unset\x20--database','query','335448sCWSuT','filter','journey\x20view','contents','rows','Chat\x20with\x20an\x20LLM\x20agent','tdx\x20parent-segment\x20push\x20parent.yaml','data','tdx\x20databases\x20mydb*','203161Scwsdq','tdx\x20jobs\x20--limit\x2020','settings','switch','tdx\x20use\x20--database\x20mydb','ask','tdx\x20journeys','tdx\x20jobs','chats','projects','tdx\x20journey\x20view\x20\x22My\x20Journey\x22','verify','activation','240QedPAm','agent\x20pull','pull','journey','execute','CDP','structure','trino','segments','tdx\x20show\x20mydb.users\x20--limit\x20100','profile\x20show','examples','Push\x20parent\x20segment\x20definition\x20from\x20YAML','generate','tdx\x20query\x20\x22SELECT\x20count(*)\x20FROM\x20mydb.events\x22','segment\x20sql','tdx\x20agent\x20pull\x20myproject/myagent\x20-o\x20agent.yaml','tdx\x20query\x20\x22SELECT\x20*\x20FROM\x20mydb.users\x20LIMIT\x2010\x22','parent-segment\x20pull','database','View\x20workflow\x20logs','agent','tdx\x20connection\x20list','tdx\x20connection\x20schema\x20salesforce','history','Pull\x20segment\x20definition\x20to\x20YAML','tdx\x20sg\x20fields','tdx\x20profiles','presto','api','export','Make\x20raw\x20HTTP\x20requests\x20to\x20TD\x20APIs','output','1847812eyQUuz','show','logs','workflow\x20sessions','tdx\x20use\x20mydb','status','select','390KwJYej','tdx\x20ps\x20pull','all','chat','llm\x20projects','Show\x20segment\x20details','trigger','context','job','Push\x20journey\x20definition\x20from\x20YAML','check','List\x20audience\x20segments','tdx\x20profile\x20list','tdx\x20parent-segment\x20pull\x20\x22My\x20Parent\x22\x20-o\x20parent.yaml','users','journey\x20push','push','Run\x20a\x20workflow','tdx\x20wf\x20sessions\x20--limit\x2010','enum','Show\x20agent\x20details','Context','run','sql','tdx\x20tables\x20mydb.*','List\x20LLM\x20projects','List\x20segment\x20activations\x20(exports)','segment\x20show','llm\x20models','sort','database\x20list','parent','job\x20show','tdx\x20databases','tdx\x20ps\x20validate'];a74_0x5329=function(){return _0x341bf7;};return a74_0x5329();}
1
+ function a74_0x1e6d(_0x3cb2ae,_0x3a3b39){_0x3cb2ae=_0x3cb2ae-0x187;const _0x4b673a=a74_0x4b67();let _0x1e6ddc=_0x4b673a[_0x3cb2ae];return _0x1e6ddc;}const a74_0x5f367c=a74_0x1e6d;(function(_0x15d2e4,_0x3a50bb){const _0x51bb1a=a74_0x1e6d,_0x506e5d=_0x15d2e4();while(!![]){try{const _0x553285=-parseInt(_0x51bb1a(0x221))/0x1*(parseInt(_0x51bb1a(0x263))/0x2)+-parseInt(_0x51bb1a(0x1fc))/0x3+-parseInt(_0x51bb1a(0x26d))/0x4*(parseInt(_0x51bb1a(0x1b5))/0x5)+parseInt(_0x51bb1a(0x1ec))/0x6*(-parseInt(_0x51bb1a(0x21a))/0x7)+-parseInt(_0x51bb1a(0x1fa))/0x8*(-parseInt(_0x51bb1a(0x1d1))/0x9)+-parseInt(_0x51bb1a(0x251))/0xa*(parseInt(_0x51bb1a(0x189))/0xb)+parseInt(_0x51bb1a(0x212))/0xc*(parseInt(_0x51bb1a(0x1f9))/0xd);if(_0x553285===_0x3a50bb)break;else _0x506e5d['push'](_0x506e5d['shift']());}catch(_0x509bb6){_0x506e5d['push'](_0x506e5d['shift']());}}}(a74_0x4b67,0x42e7d));import{z}from'zod';const COMMANDS=[{'name':a74_0x5f367c(0x258),'description':a74_0x5f367c(0x23d),'category':a74_0x5f367c(0x201),'keywords':[a74_0x5f367c(0x19c),a74_0x5f367c(0x233),'db',a74_0x5f367c(0x1ef),a74_0x5f367c(0x249),a74_0x5f367c(0x19b)],'examples':[a74_0x5f367c(0x237),a74_0x5f367c(0x27c),a74_0x5f367c(0x1e8)]},{'name':a74_0x5f367c(0x286),'description':'List\x20tables\x20in\x20a\x20database','category':'Data','keywords':['table',a74_0x5f367c(0x20e),a74_0x5f367c(0x1ef),a74_0x5f367c(0x249),a74_0x5f367c(0x260)],'examples':[a74_0x5f367c(0x25d),a74_0x5f367c(0x23e),a74_0x5f367c(0x265)]},{'name':a74_0x5f367c(0x249),'description':'Show\x20table\x20contents\x20(SELECT\x20*\x20with\x20limit)','category':'Data','keywords':[a74_0x5f367c(0x249),a74_0x5f367c(0x1a2),a74_0x5f367c(0x196),a74_0x5f367c(0x1b1),'contents',a74_0x5f367c(0x220),a74_0x5f367c(0x1a9)],'examples':['tdx\x20show\x20mydb.users',a74_0x5f367c(0x287)]},{'name':a74_0x5f367c(0x22b),'description':a74_0x5f367c(0x254),'category':a74_0x5f367c(0x201),'keywords':[a74_0x5f367c(0x22b),a74_0x5f367c(0x260),a74_0x5f367c(0x197),'types','structure',a74_0x5f367c(0x203)],'examples':[a74_0x5f367c(0x1c5),a74_0x5f367c(0x209)]},{'name':a74_0x5f367c(0x1be),'description':'Execute\x20SQL\x20query\x20using\x20Trino','category':a74_0x5f367c(0x201),'keywords':[a74_0x5f367c(0x1be),'sql','select',a74_0x5f367c(0x18d),a74_0x5f367c(0x21b),a74_0x5f367c(0x21f),'presto'],'examples':[a74_0x5f367c(0x24f),a74_0x5f367c(0x20c)]},{'name':a74_0x5f367c(0x1cf),'description':a74_0x5f367c(0x25e),'category':'Data','keywords':[a74_0x5f367c(0x27d),a74_0x5f367c(0x20f),a74_0x5f367c(0x1ef),'history',a74_0x5f367c(0x1c6)],'examples':[a74_0x5f367c(0x214),a74_0x5f367c(0x1a4),a74_0x5f367c(0x1b7)]},{'name':a74_0x5f367c(0x1b9),'description':a74_0x5f367c(0x1de),'category':a74_0x5f367c(0x201),'keywords':[a74_0x5f367c(0x27d),'show',a74_0x5f367c(0x1bb),a74_0x5f367c(0x1d8),a74_0x5f367c(0x245)],'examples':['tdx\x20job\x20show\x2012345']},{'name':'job\x20result','description':a74_0x5f367c(0x1bd),'category':a74_0x5f367c(0x201),'keywords':['job',a74_0x5f367c(0x25c),a74_0x5f367c(0x200),a74_0x5f367c(0x281)],'examples':[a74_0x5f367c(0x236)]},{'name':a74_0x5f367c(0x1e7),'description':a74_0x5f367c(0x1e3),'category':a74_0x5f367c(0x201),'keywords':[a74_0x5f367c(0x27d),a74_0x5f367c(0x19d),'cancel','stop',a74_0x5f367c(0x223)],'examples':[a74_0x5f367c(0x257)]},{'name':a74_0x5f367c(0x1ee),'description':a74_0x5f367c(0x226),'category':a74_0x5f367c(0x201),'keywords':[a74_0x5f367c(0x1e4),a74_0x5f367c(0x192),a74_0x5f367c(0x261),'list'],'examples':[a74_0x5f367c(0x1fb),'tdx\x20wf\x20projects']},{'name':a74_0x5f367c(0x27a),'description':'List\x20workflow\x20sessions','category':a74_0x5f367c(0x201),'keywords':[a74_0x5f367c(0x1e4),a74_0x5f367c(0x193),a74_0x5f367c(0x1df),'executions'],'examples':[a74_0x5f367c(0x240),a74_0x5f367c(0x234)]},{'name':a74_0x5f367c(0x1c2),'description':a74_0x5f367c(0x268),'category':a74_0x5f367c(0x201),'keywords':['workflow','logs','output',a74_0x5f367c(0x1dc)],'examples':[a74_0x5f367c(0x227)]},{'name':'workflow\x20run','description':a74_0x5f367c(0x235),'category':a74_0x5f367c(0x201),'keywords':[a74_0x5f367c(0x1e4),'run',a74_0x5f367c(0x21b),a74_0x5f367c(0x283),a74_0x5f367c(0x20a)],'examples':[a74_0x5f367c(0x1cb)]},{'name':'segment\x20list','description':'List\x20audience\x20segments','category':'CDP','keywords':[a74_0x5f367c(0x267),'segments',a74_0x5f367c(0x1a3),a74_0x5f367c(0x1ef),a74_0x5f367c(0x26a)],'examples':[a74_0x5f367c(0x1c4),a74_0x5f367c(0x1c1),'tdx\x20segments\x20--recursive']},{'name':a74_0x5f367c(0x285),'description':a74_0x5f367c(0x202),'category':'CDP','keywords':['segment','show',a74_0x5f367c(0x1bb),a74_0x5f367c(0x245),'view'],'examples':[a74_0x5f367c(0x21d)]},{'name':a74_0x5f367c(0x1c9),'description':'Generate\x20SQL\x20for\x20a\x20segment','category':a74_0x5f367c(0x1fd),'keywords':[a74_0x5f367c(0x267),'sql',a74_0x5f367c(0x1be),a74_0x5f367c(0x282)],'examples':[a74_0x5f367c(0x1af)]},{'name':a74_0x5f367c(0x205),'description':a74_0x5f367c(0x1a6),'category':'CDP','keywords':[a74_0x5f367c(0x267),'pull',a74_0x5f367c(0x281),'export',a74_0x5f367c(0x289)],'examples':[a74_0x5f367c(0x18a)]},{'name':'segment\x20push','description':'Push\x20segment\x20definition\x20from\x20YAML','category':'CDP','keywords':[a74_0x5f367c(0x267),a74_0x5f367c(0x1dd),a74_0x5f367c(0x1f0),'import',a74_0x5f367c(0x1cc),'update'],'examples':[a74_0x5f367c(0x1e6),a74_0x5f367c(0x191)]},{'name':a74_0x5f367c(0x1ae),'description':'List\x20available\x20segment\x20fields','category':a74_0x5f367c(0x1fd),'keywords':[a74_0x5f367c(0x267),a74_0x5f367c(0x1d9),'attributes','columns',a74_0x5f367c(0x260)],'examples':['tdx\x20segment\x20fields',a74_0x5f367c(0x1a0)]},{'name':'parent-segment\x20list','description':a74_0x5f367c(0x284),'category':a74_0x5f367c(0x1fd),'keywords':['parent','segment',a74_0x5f367c(0x1f1),a74_0x5f367c(0x1ef),a74_0x5f367c(0x1f3)],'examples':['tdx\x20parent-segment\x20list',a74_0x5f367c(0x1c3)]},{'name':a74_0x5f367c(0x243),'description':a74_0x5f367c(0x1b4),'category':'CDP','keywords':[a74_0x5f367c(0x274),'segment',a74_0x5f367c(0x247),a74_0x5f367c(0x281),'export'],'examples':[a74_0x5f367c(0x232),a74_0x5f367c(0x18f)]},{'name':'parent-segment\x20push','description':'Push\x20parent\x20segment\x20definition\x20from\x20YAML','category':a74_0x5f367c(0x1fd),'keywords':['parent','segment',a74_0x5f367c(0x1dd),a74_0x5f367c(0x1f0),'create'],'examples':['tdx\x20parent-segment\x20push\x20parent.yaml',a74_0x5f367c(0x278)]},{'name':a74_0x5f367c(0x1d5),'description':a74_0x5f367c(0x228),'category':a74_0x5f367c(0x1fd),'keywords':['parent',a74_0x5f367c(0x267),'validate','check','verify'],'examples':[a74_0x5f367c(0x21c),a74_0x5f367c(0x1eb)]},{'name':'parent-segment\x20preview','description':a74_0x5f367c(0x288),'category':a74_0x5f367c(0x1fd),'keywords':[a74_0x5f367c(0x274),a74_0x5f367c(0x267),a74_0x5f367c(0x196),a74_0x5f367c(0x1b2),a74_0x5f367c(0x1b1)],'examples':[a74_0x5f367c(0x24c),a74_0x5f367c(0x1d7)]},{'name':a74_0x5f367c(0x255),'description':a74_0x5f367c(0x1ff),'category':a74_0x5f367c(0x1fd),'keywords':[a74_0x5f367c(0x20d),a74_0x5f367c(0x276),a74_0x5f367c(0x1ef),'orchestration'],'examples':[a74_0x5f367c(0x25f),a74_0x5f367c(0x25b)]},{'name':a74_0x5f367c(0x1b6),'description':a74_0x5f367c(0x242),'category':'CDP','keywords':[a74_0x5f367c(0x20d),a74_0x5f367c(0x1a2),a74_0x5f367c(0x249),a74_0x5f367c(0x1bb)],'examples':[a74_0x5f367c(0x1ca)]},{'name':a74_0x5f367c(0x266),'description':a74_0x5f367c(0x27f),'category':'CDP','keywords':[a74_0x5f367c(0x20d),a74_0x5f367c(0x247),a74_0x5f367c(0x281),'export'],'examples':[a74_0x5f367c(0x18e)]},{'name':a74_0x5f367c(0x210),'description':'Push\x20journey\x20definition\x20from\x20YAML','category':a74_0x5f367c(0x1fd),'keywords':[a74_0x5f367c(0x20d),a74_0x5f367c(0x1dd),'upload',a74_0x5f367c(0x1cc)],'examples':[a74_0x5f367c(0x1cd)]},{'name':a74_0x5f367c(0x215),'description':'List\x20segment\x20activations\x20(exports)','category':a74_0x5f367c(0x1fd),'keywords':[a74_0x5f367c(0x1f6),a74_0x5f367c(0x215),a74_0x5f367c(0x24b),a74_0x5f367c(0x248),a74_0x5f367c(0x211)],'examples':['tdx\x20activations',a74_0x5f367c(0x187)]},{'name':a74_0x5f367c(0x1e5),'description':a74_0x5f367c(0x1ab),'category':a74_0x5f367c(0x1fd),'keywords':[a74_0x5f367c(0x27e),a74_0x5f367c(0x19a),a74_0x5f367c(0x211),a74_0x5f367c(0x1ef)],'examples':[a74_0x5f367c(0x24a)]},{'name':a74_0x5f367c(0x241),'description':a74_0x5f367c(0x1d6),'category':'CDP','keywords':[a74_0x5f367c(0x27e),a74_0x5f367c(0x260),'config',a74_0x5f367c(0x20b)],'examples':[a74_0x5f367c(0x1d4),a74_0x5f367c(0x264)]},{'name':a74_0x5f367c(0x273),'description':a74_0x5f367c(0x224),'category':'AI','keywords':[a74_0x5f367c(0x1bc),'agents','llm','ai',a74_0x5f367c(0x1ef)],'examples':[a74_0x5f367c(0x1e1),a74_0x5f367c(0x1f5)]},{'name':a74_0x5f367c(0x1b0),'description':a74_0x5f367c(0x219),'category':'AI','keywords':[a74_0x5f367c(0x1bc),a74_0x5f367c(0x249),a74_0x5f367c(0x1bb),a74_0x5f367c(0x245)],'examples':[a74_0x5f367c(0x18b)]},{'name':a74_0x5f367c(0x22f),'description':a74_0x5f367c(0x256),'category':'AI','keywords':['agent',a74_0x5f367c(0x247),a74_0x5f367c(0x281),a74_0x5f367c(0x24b)],'examples':[a74_0x5f367c(0x1ad)]},{'name':a74_0x5f367c(0x239),'description':a74_0x5f367c(0x24d),'category':'AI','keywords':[a74_0x5f367c(0x1bc),'push',a74_0x5f367c(0x1f0),'create','deploy'],'examples':[a74_0x5f367c(0x26c)]},{'name':'chat','description':a74_0x5f367c(0x22e),'category':'AI','keywords':[a74_0x5f367c(0x199),'llm','ai',a74_0x5f367c(0x1f8),a74_0x5f367c(0x25a),'message'],'examples':['tdx\x20chat\x20\x22Hello\x22',a74_0x5f367c(0x277)]},{'name':a74_0x5f367c(0x26f),'description':a74_0x5f367c(0x279),'category':'AI','keywords':[a74_0x5f367c(0x199),a74_0x5f367c(0x26f),a74_0x5f367c(0x193),a74_0x5f367c(0x271),a74_0x5f367c(0x270)],'examples':[a74_0x5f367c(0x1ea),a74_0x5f367c(0x252)]},{'name':a74_0x5f367c(0x190),'description':'List\x20available\x20LLM\x20models','category':'AI','keywords':[a74_0x5f367c(0x21e),a74_0x5f367c(0x280),'ai','list'],'examples':[a74_0x5f367c(0x269)]},{'name':a74_0x5f367c(0x1ce),'description':a74_0x5f367c(0x22d),'category':'AI','keywords':[a74_0x5f367c(0x21e),a74_0x5f367c(0x192),'ai',a74_0x5f367c(0x1ef)],'examples':[a74_0x5f367c(0x1db)]},{'name':a74_0x5f367c(0x26b),'description':'Set\x20session\x20context\x20(database,\x20parent\x20segment,\x20etc.)','category':a74_0x5f367c(0x1b8),'keywords':[a74_0x5f367c(0x26b),a74_0x5f367c(0x22c),a74_0x5f367c(0x18c),a74_0x5f367c(0x27b),a74_0x5f367c(0x198)],'examples':[a74_0x5f367c(0x1fe),a74_0x5f367c(0x238),a74_0x5f367c(0x24e)]},{'name':'unset','description':a74_0x5f367c(0x188),'category':a74_0x5f367c(0x1b8),'keywords':[a74_0x5f367c(0x1f2),a74_0x5f367c(0x259),a74_0x5f367c(0x1a1),a74_0x5f367c(0x18c)],'examples':[a74_0x5f367c(0x1a7),a74_0x5f367c(0x1da)]},{'name':'profile\x20list','description':a74_0x5f367c(0x23a),'category':'Context','keywords':[a74_0x5f367c(0x1e9),a74_0x5f367c(0x217),a74_0x5f367c(0x1ef),a74_0x5f367c(0x253)],'examples':['tdx\x20profile\x20list','tdx\x20profiles']},{'name':'profile\x20show','description':a74_0x5f367c(0x1ed),'category':a74_0x5f367c(0x1b8),'keywords':[a74_0x5f367c(0x1e9),a74_0x5f367c(0x249),a74_0x5f367c(0x1bb),a74_0x5f367c(0x253)],'examples':[a74_0x5f367c(0x1b3)]},{'name':a74_0x5f367c(0x23c),'description':a74_0x5f367c(0x1aa),'category':a74_0x5f367c(0x1b8),'keywords':[a74_0x5f367c(0x23c),'authentication',a74_0x5f367c(0x1d8),'login'],'examples':[a74_0x5f367c(0x1e2),a74_0x5f367c(0x26e)]},{'name':a74_0x5f367c(0x1e0),'description':a74_0x5f367c(0x1c8),'category':a74_0x5f367c(0x1b8),'keywords':[a74_0x5f367c(0x1e0),'me',a74_0x5f367c(0x272),'account'],'examples':[a74_0x5f367c(0x1f7)]},{'name':a74_0x5f367c(0x204),'description':a74_0x5f367c(0x1c7),'category':a74_0x5f367c(0x1b8),'keywords':[a74_0x5f367c(0x204),a74_0x5f367c(0x1ef),a74_0x5f367c(0x1a5),a74_0x5f367c(0x19e)],'examples':[a74_0x5f367c(0x1c0),a74_0x5f367c(0x1ba)]},{'name':a74_0x5f367c(0x275),'description':a74_0x5f367c(0x246),'category':a74_0x5f367c(0x216),'keywords':[a74_0x5f367c(0x275),a74_0x5f367c(0x1d3),'raw',a74_0x5f367c(0x23f),a74_0x5f367c(0x23b)],'examples':[a74_0x5f367c(0x22a),a74_0x5f367c(0x218),a74_0x5f367c(0x1bf)]}];export const TdxSearchInputSchema=z[a74_0x5f367c(0x208)]({'query':z[a74_0x5f367c(0x206)]()['describe'](a74_0x5f367c(0x1ac)),'category':z[a74_0x5f367c(0x213)]([a74_0x5f367c(0x201),'CDP','AI','Context',a74_0x5f367c(0x216)])[a74_0x5f367c(0x1d2)]()[a74_0x5f367c(0x22b)](a74_0x5f367c(0x231))});export function searchCommands(_0x1a8707){const _0x3ae3df=a74_0x5f367c,{query:_0x45f327,category:_0x4b3d6f}=_0x1a8707,_0x2b919a=_0x45f327[_0x3ae3df(0x1f4)](),_0x4d9432=_0x2b919a[_0x3ae3df(0x244)](/\s+/)[_0x3ae3df(0x19f)](_0x564995=>_0x564995[_0x3ae3df(0x222)]>0x0);let _0x343bdf=COMMANDS;_0x4b3d6f&&(_0x343bdf=_0x343bdf[_0x3ae3df(0x19f)](_0x56b5bf=>_0x56b5bf[_0x3ae3df(0x262)]===_0x4b3d6f));const _0x1bedfc=_0x343bdf[_0x3ae3df(0x195)](_0x4cee60=>{const _0x3a946c=_0x3ae3df;let _0x25df07=0x0;_0x4cee60[_0x3a946c(0x229)][_0x3a946c(0x1f4)]()===_0x2b919a&&(_0x25df07+=0x64);_0x4cee60[_0x3a946c(0x229)]['toLowerCase']()[_0x3a946c(0x1a8)](_0x2b919a)&&(_0x25df07+=0x32);_0x4cee60[_0x3a946c(0x207)]['toLowerCase']()[_0x3a946c(0x1a8)](_0x2b919a)&&(_0x25df07+=0x1e);for(const _0x49188f of _0x4d9432){for(const _0x834a3d of _0x4cee60[_0x3a946c(0x230)]){if(_0x834a3d===_0x49188f)_0x25df07+=0x14;else(_0x834a3d['includes'](_0x49188f)||_0x49188f[_0x3a946c(0x1a8)](_0x834a3d))&&(_0x25df07+=0xa);}_0x4cee60[_0x3a946c(0x229)][_0x3a946c(0x1f4)]()[_0x3a946c(0x1a8)](_0x49188f)&&(_0x25df07+=0xf),_0x4cee60[_0x3a946c(0x207)]['toLowerCase']()[_0x3a946c(0x1a8)](_0x49188f)&&(_0x25df07+=0x5);}return{'name':_0x4cee60['name'],'description':_0x4cee60[_0x3a946c(0x207)],'category':_0x4cee60[_0x3a946c(0x262)],'examples':_0x4cee60[_0x3a946c(0x194)],'score':_0x25df07};});return _0x1bedfc[_0x3ae3df(0x19f)](_0x44026b=>_0x44026b['score']>0x0)[_0x3ae3df(0x1d0)]((_0xdbc5b8,_0x5ca0bb)=>_0x5ca0bb[_0x3ae3df(0x250)]-_0xdbc5b8[_0x3ae3df(0x250)])[_0x3ae3df(0x225)](0x0,0xa);}function a74_0x4b67(){const _0xb91614=['tdx\x20journey\x20push\x20journey.yaml','llm\x20projects','job\x20list','sort','39717WKIppu','optional','http','tdx\x20connection\x20schema\x20salesforce','parent-segment\x20validate','Show\x20connection\x20schema\x20for\x20activations','tdx\x20ps\x20preview\x20--limit\x2010','status','fields','tdx\x20unset\x20--all','tdx\x20llm\x20projects','debug','push','Show\x20job\x20details','runs','user','tdx\x20agent\x20list','tdx\x20auth','Kill\x20a\x20running\x20job','workflow','connection\x20list','tdx\x20segment\x20push\x20segment.yaml','job\x20kill','tdx\x20databases\x20mydb*','profile','tdx\x20chats','tdx\x20ps\x20validate','18zyofto','Show\x20profile\x20details','workflow\x20projects','list','upload','master','unset','customer','toLowerCase','tdx\x20agents','activation','tdx\x20user','conversation','5967767pvAmfv','752qoGALL','tdx\x20workflow\x20projects','1057677fZoILK','CDP','tdx\x20use\x20mydb','List\x20customer\x20journeys','output','Data','Show\x20segment\x20details','definition','users','segment\x20pull','string','description','object','tdx\x20describe\x20mydb.events','trigger','settings','tdx\x20query\x20\x22SELECT\x20count(*)\x20FROM\x20mydb.events\x22','journey','tables','jobs','journey\x20push','destination','36oxvoNc','enum','tdx\x20job\x20list','activations','Utilities','profiles','tdx\x20api\x20/v1/audiences\x20--type\x20cdp','Show\x20agent\x20details','298081YAzOFw','execute','tdx\x20parent-segment\x20validate\x20parent.yaml','tdx\x20segment\x20show\x20\x22My\x20Segment\x22','llm','run','rows','205IajUCr','length','abort','List\x20LLM\x20agents','slice','List\x20workflow\x20projects','tdx\x20workflow\x20logs\x20<attempt_id>','Validate\x20parent\x20segment\x20configuration','name','tdx\x20api\x20/v3/database/list','describe','set','List\x20LLM\x20projects','Chat\x20with\x20an\x20LLM\x20agent','agent\x20pull','keywords','Optional\x20filter\x20by\x20category','tdx\x20parent-segment\x20pull\x20\x22My\x20Parent\x22\x20-o\x20parent.yaml','databases','tdx\x20wf\x20sessions\x20--limit\x2010','Run\x20a\x20workflow','tdx\x20job\x20result\x2012345','tdx\x20database\x20list','tdx\x20use\x20--database\x20mydb','agent\x20push','List\x20configured\x20profiles','curl','auth','List\x20all\x20databases','tdx\x20tables\x20mydb.*','request','tdx\x20workflow\x20sessions\x20myproject','connection\x20schema','View\x20journey\x20details','parent-segment\x20pull','split','info','Make\x20raw\x20HTTP\x20requests\x20to\x20TD\x20APIs','pull','sync','show','tdx\x20connection\x20list','export','tdx\x20parent-segment\x20preview','Push\x20agent\x20definition\x20from\x20YAML','tdx\x20use\x20--parent-segment\x20\x22My\x20PS\x22','tdx\x20query\x20\x22SELECT\x20*\x20FROM\x20mydb.users\x20LIMIT\x2010\x22','score','10OvvJAD','tdx\x20chats\x20--limit\x2010','config','Describe\x20table\x20schema\x20(columns,\x20types)','journey\x20list','Pull\x20agent\x20definition\x20to\x20YAML','tdx\x20job\x20kill\x2012345','database\x20list','clear','ask','tdx\x20journeys','result','tdx\x20table\x20list','List\x20query\x20jobs','tdx\x20journey\x20list','schema','digdag','category','2814RWtqcJ','tdx\x20connection\x20schema\x20google_ads','tdx\x20tables\x20--database\x20mydb','journey\x20pull','segment','View\x20workflow\x20logs','tdx\x20llm\x20models','cdp','use','tdx\x20agent\x20push\x20agent.yaml','4KFqlat','tdx\x20auth\x20--profile\x20myprofile','chats','conversations','history','whoami','agent\x20list','parent','api','journeys','tdx\x20chat\x20--agent\x20myproject/myagent\x20\x22What\x20is\x20TD?\x22','tdx\x20ps\x20push\x20--dry-run','List\x20chat\x20sessions','workflow\x20sessions','switch','tdx\x20databases','job','connection','Pull\x20journey\x20definition\x20to\x20YAML','models','download','generate','start','List\x20parent\x20segments\x20(customer\x20masters)','segment\x20show','table\x20list','tdx\x20show\x20mydb.users\x20--limit\x20100','Preview\x20parent\x20segment\x20data','yaml','tdx\x20activations\x20--segment\x20\x22My\x20Segment\x22','Clear\x20session\x20context','3825228HtCIOF','tdx\x20segment\x20pull\x20\x22My\x20Segment\x22\x20-o\x20segment.yaml','tdx\x20agent\x20show\x20myproject/myagent','context','trino','tdx\x20journey\x20pull\x20\x22My\x20Journey\x22\x20-o\x20journey.yaml','tdx\x20ps\x20pull','llm\x20models','tdx\x20sg\x20push\x20segment.yaml\x20--dry-run','projects','sessions','examples','map','preview','columns','select','chat','connections','all','database','kill','members','filter','tdx\x20sg\x20fields','reset','view','audience','tdx\x20jobs','team','Pull\x20segment\x20definition\x20to\x20YAML','tdx\x20unset\x20--database','includes','records','Show\x20authentication\x20status','List\x20data\x20connections','Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)','tdx\x20agent\x20pull\x20myproject/myagent\x20-o\x20agent.yaml','segment\x20fields','tdx\x20segment\x20sql\x20\x22My\x20Segment\x22','agent\x20show','data','sample','tdx\x20profile\x20show\x20myprofile','Pull\x20parent\x20segment\x20definition\x20to\x20YAML','2007315JWWtAJ','journey\x20view','tdx\x20jobs\x20--limit\x2020','Context','job\x20show','tdx\x20user\x20list','details','agent','Get\x20job\x20results','query','tdx\x20api\x20-X\x20POST\x20--data\x20\x27{\x22query\x22:\x22SELECT\x201\x22}\x27\x20/v3/job/issue/hive/mydb','tdx\x20users','tdx\x20segments','workflow\x20logs','tdx\x20ps\x20list','tdx\x20segment\x20list','tdx\x20describe\x20mydb.users','queries','List\x20users\x20in\x20account','Show\x20current\x20user\x20info','segment\x20sql','tdx\x20journey\x20view\x20\x22My\x20Journey\x22','tdx\x20workflow\x20run\x20myproject/myworkflow','create'];a74_0x4b67=function(){return _0xb91614;};return a74_0x4b67();}
@@ -1 +1 @@
1
- const a75_0x46aa80=a75_0x2ea5;(function(_0xffcd1a,_0x125d2d){const _0xfd35d6=a75_0x2ea5,_0x4923f9=_0xffcd1a();while(!![]){try{const _0x3bfd29=-parseInt(_0xfd35d6(0x1bd))/0x1+parseInt(_0xfd35d6(0x1b6))/0x2+-parseInt(_0xfd35d6(0x1c1))/0x3+-parseInt(_0xfd35d6(0x1c0))/0x4*(parseInt(_0xfd35d6(0x1c2))/0x5)+parseInt(_0xfd35d6(0x1ba))/0x6*(-parseInt(_0xfd35d6(0x1ca))/0x7)+parseInt(_0xfd35d6(0x1a8))/0x8+-parseInt(_0xfd35d6(0x1cd))/0x9*(-parseInt(_0xfd35d6(0x1bc))/0xa);if(_0x3bfd29===_0x125d2d)break;else _0x4923f9['push'](_0x4923f9['shift']());}catch(_0x58e66e){_0x4923f9['push'](_0x4923f9['shift']());}}}(a75_0x51c9,0x88b58));import{z}from'zod';function a75_0x51c9(){const _0x1bc5a7=['3318918BJrQXW','377315ENThel','Priority\x20level','note','fileName','void','medium','Tags\x20for\x20the\x20item','JIRA\x20ticket\x20reference\x20(org/TICKET-ID)','126noUxEa','deprecated','Item\x20title\x20(required)','61317DdsYym','guide','Document\x20kind\x20(default:\x20\x22item\x22)','string','done','kind','backlog','accepted','Markdown\x20body\x20content','No\x20workspace\x20found.\x20Run\x20`tdx\x20work\x20init`\x20to\x20create\x20one.','7516328GHMnpS','github','status','tags','review','item','describe','Initial\x20status\x20(default:\x20\x22todo\x22\x20for\x20items,\x20\x22proposed\x22\x20for\x20guides)','template','optional','todo','critical','design_review','low','1126574EUEVMf','object','array','proposed','211320YOxGCS','reference','3470kdHLxU','963009GSgMvn','jira','enum','32oJhtLH'];a75_0x51c9=function(){return _0x1bc5a7;};return a75_0x51c9();}import{WorkspaceSDK,resolveWorkspacePath}from'../../sdk/workspace/index.js';const TASK_STATUSES=[a75_0x46aa80(0x1d3),a75_0x46aa80(0x1b2),'planning',a75_0x46aa80(0x1b4),'in_progress',a75_0x46aa80(0x1ac),a75_0x46aa80(0x1d1),a75_0x46aa80(0x1c6)],GUIDE_STATUSES=[a75_0x46aa80(0x1b9),a75_0x46aa80(0x1d4),a75_0x46aa80(0x1cb),'superseded'];function a75_0x2ea5(_0x3ea014,_0x1d0e8b){_0x3ea014=_0x3ea014-0x1a7;const _0x51c9f5=a75_0x51c9();let _0x2ea5d8=_0x51c9f5[_0x3ea014];return _0x2ea5d8;}export const WorkCreateItemInputSchema=z[a75_0x46aa80(0x1b7)]({'title':z[a75_0x46aa80(0x1d0)]()[a75_0x46aa80(0x1ae)](a75_0x46aa80(0x1cc)),'kind':z['enum']([a75_0x46aa80(0x1ad),a75_0x46aa80(0x1c4),a75_0x46aa80(0x1ce),a75_0x46aa80(0x1bb)])['optional']()['describe'](a75_0x46aa80(0x1cf)),'status':z['enum']([...TASK_STATUSES,...GUIDE_STATUSES])[a75_0x46aa80(0x1b1)]()['describe'](a75_0x46aa80(0x1af)),'tags':z[a75_0x46aa80(0x1b8)](z['string']())[a75_0x46aa80(0x1b1)]()[a75_0x46aa80(0x1ae)](a75_0x46aa80(0x1c8)),'priority':z[a75_0x46aa80(0x1bf)]([a75_0x46aa80(0x1b3),'high',a75_0x46aa80(0x1c7),a75_0x46aa80(0x1b5)])[a75_0x46aa80(0x1b1)]()[a75_0x46aa80(0x1ae)](a75_0x46aa80(0x1c3)),'body':z['string']()[a75_0x46aa80(0x1b1)]()['describe'](a75_0x46aa80(0x1d5)),'template':z[a75_0x46aa80(0x1d0)]()[a75_0x46aa80(0x1b1)]()[a75_0x46aa80(0x1ae)]('Template\x20name\x20from\x20templates/\x20folder'),'github':z[a75_0x46aa80(0x1d0)]()['optional']()['describe']('GitHub\x20PR/issue\x20reference\x20(owner/repo#number)'),'jira':z[a75_0x46aa80(0x1d0)]()[a75_0x46aa80(0x1b1)]()['describe'](a75_0x46aa80(0x1c9))});export function executeWorkCreateItem(_0x2d66da){const _0x5b98ec=a75_0x46aa80,_0x4281ae=resolveWorkspacePath();if(!_0x4281ae)return{'success':![],'error':_0x5b98ec(0x1a7)};const _0x50b753=new WorkspaceSDK(_0x4281ae),_0x471ad1={'title':_0x2d66da['title'],'kind':_0x2d66da[_0x5b98ec(0x1d2)]||_0x5b98ec(0x1ad),'status':_0x2d66da[_0x5b98ec(0x1aa)],'tags':_0x2d66da[_0x5b98ec(0x1ab)],'priority':_0x2d66da['priority'],'body':_0x2d66da['body'],'template':_0x2d66da[_0x5b98ec(0x1b0)],'github':_0x2d66da[_0x5b98ec(0x1a9)],'jira':_0x2d66da[_0x5b98ec(0x1be)]},_0x3a923a=_0x50b753['createDocument'](_0x471ad1);return{'success':!![],'path':_0x3a923a['filePath'],'slug':_0x3a923a[_0x5b98ec(0x1c5)]['replace'](/\.md$/,'')};}
1
+ const a75_0x16802d=a75_0x2052;function a75_0x5ba7(){const _0x5b979e=['createDocument','1030nyCvvc','1658916zsKvyF','1089aGHWyk','accepted','JIRA\x20ticket\x20reference\x20(org/TICKET-ID)','note','todo','enum','done','1022dPOiRA','deprecated','Item\x20title\x20(required)','GitHub\x20PR/issue\x20reference\x20(owner/repo#number)','describe','template','jira','Template\x20name\x20from\x20templates/\x20folder','197770LBUuks','priority','github','2705382QvrYsV','design_review','review','planning','Markdown\x20body\x20content','medium','array','guide','Document\x20kind\x20(default:\x20\x22item\x22)','filePath','kind','74vUYdys','replace','Priority\x20level','optional','title','reference','proposed','No\x20workspace\x20found.\x20Run\x20`tdx\x20work\x20init`\x20to\x20create\x20one.','32584ftwkMZ','95loiPzr','256458lYUWsr','in_progress','high','object','string','void','item','3740787ItBbhw','backlog'];a75_0x5ba7=function(){return _0x5b979e;};return a75_0x5ba7();}function a75_0x2052(_0x4f27c8,_0x533211){_0x4f27c8=_0x4f27c8-0x19d;const _0x5ba721=a75_0x5ba7();let _0x20520f=_0x5ba721[_0x4f27c8];return _0x20520f;}(function(_0x413a3b,_0x2a734c){const _0x2a74e9=a75_0x2052,_0x1a8b2a=_0x413a3b();while(!![]){try{const _0xbb915a=parseInt(_0x2a74e9(0x1b4))/0x1*(-parseInt(_0x2a74e9(0x1a0))/0x2)+parseInt(_0x2a74e9(0x1c8))/0x3+-parseInt(_0x2a74e9(0x1b5))/0x4+parseInt(_0x2a74e9(0x1a9))/0x5*(-parseInt(_0x2a74e9(0x1aa))/0x6)+parseInt(_0x2a74e9(0x1bd))/0x7*(-parseInt(_0x2a74e9(0x1a8))/0x8)+-parseInt(_0x2a74e9(0x1b1))/0x9+-parseInt(_0x2a74e9(0x1c5))/0xa*(-parseInt(_0x2a74e9(0x1b6))/0xb);if(_0xbb915a===_0x2a734c)break;else _0x1a8b2a['push'](_0x1a8b2a['shift']());}catch(_0x14e66b){_0x1a8b2a['push'](_0x1a8b2a['shift']());}}}(a75_0x5ba7,0x8eb0c));import{z}from'zod';import{WorkspaceSDK,resolveWorkspacePath}from'../../sdk/workspace/index.js';const TASK_STATUSES=[a75_0x16802d(0x1b2),a75_0x16802d(0x1ba),a75_0x16802d(0x1cb),a75_0x16802d(0x1c9),a75_0x16802d(0x1ab),a75_0x16802d(0x1ca),a75_0x16802d(0x1bc),a75_0x16802d(0x1af)],GUIDE_STATUSES=[a75_0x16802d(0x1a6),a75_0x16802d(0x1b7),a75_0x16802d(0x1be),'superseded'];export const WorkCreateItemInputSchema=z[a75_0x16802d(0x1ad)]({'title':z['string']()[a75_0x16802d(0x1c1)](a75_0x16802d(0x1bf)),'kind':z[a75_0x16802d(0x1bb)]([a75_0x16802d(0x1b0),a75_0x16802d(0x1b9),a75_0x16802d(0x1cf),a75_0x16802d(0x1a5)])[a75_0x16802d(0x1a3)]()[a75_0x16802d(0x1c1)](a75_0x16802d(0x19d)),'status':z[a75_0x16802d(0x1bb)]([...TASK_STATUSES,...GUIDE_STATUSES])[a75_0x16802d(0x1a3)]()[a75_0x16802d(0x1c1)]('Initial\x20status\x20(default:\x20\x22todo\x22\x20for\x20items,\x20\x22proposed\x22\x20for\x20guides)'),'tags':z[a75_0x16802d(0x1ce)](z[a75_0x16802d(0x1ae)]())[a75_0x16802d(0x1a3)]()[a75_0x16802d(0x1c1)]('Tags\x20for\x20the\x20item'),'priority':z[a75_0x16802d(0x1bb)](['critical',a75_0x16802d(0x1ac),a75_0x16802d(0x1cd),'low'])[a75_0x16802d(0x1a3)]()['describe'](a75_0x16802d(0x1a2)),'body':z[a75_0x16802d(0x1ae)]()[a75_0x16802d(0x1a3)]()['describe'](a75_0x16802d(0x1cc)),'template':z[a75_0x16802d(0x1ae)]()['optional']()[a75_0x16802d(0x1c1)](a75_0x16802d(0x1c4)),'github':z[a75_0x16802d(0x1ae)]()[a75_0x16802d(0x1a3)]()['describe'](a75_0x16802d(0x1c0)),'jira':z['string']()['optional']()['describe'](a75_0x16802d(0x1b8))});export function executeWorkCreateItem(_0x8866b1){const _0x248d82=a75_0x16802d,_0x540425=resolveWorkspacePath();if(!_0x540425)return{'success':![],'error':_0x248d82(0x1a7)};const _0x151475=new WorkspaceSDK(_0x540425),_0x23f5bc={'title':_0x8866b1[_0x248d82(0x1a4)],'kind':_0x8866b1[_0x248d82(0x19f)]||_0x248d82(0x1b0),'status':_0x8866b1['status'],'tags':_0x8866b1['tags'],'priority':_0x8866b1[_0x248d82(0x1c6)],'body':_0x8866b1['body'],'template':_0x8866b1[_0x248d82(0x1c2)],'github':_0x8866b1[_0x248d82(0x1c7)],'jira':_0x8866b1[_0x248d82(0x1c3)]},_0x2c8134=_0x151475[_0x248d82(0x1b3)](_0x23f5bc);return{'success':!![],'path':_0x2c8134[_0x248d82(0x19e)],'slug':_0x2c8134['fileName'][_0x248d82(0x1a1)](/\.md$/,'')};}
package/dist/mcp/utils.js CHANGED
@@ -1 +1 @@
1
- const a76_0x489450=a76_0x2a8c;(function(_0x382856,_0x237a9a){const _0x3e345d=a76_0x2a8c,_0x34e66c=_0x382856();while(!![]){try{const _0x29672c=-parseInt(_0x3e345d(0x80))/0x1*(parseInt(_0x3e345d(0x86))/0x2)+-parseInt(_0x3e345d(0x97))/0x3+-parseInt(_0x3e345d(0x90))/0x4*(-parseInt(_0x3e345d(0x8a))/0x5)+-parseInt(_0x3e345d(0x8d))/0x6*(parseInt(_0x3e345d(0x7f))/0x7)+parseInt(_0x3e345d(0x91))/0x8*(-parseInt(_0x3e345d(0x98))/0x9)+parseInt(_0x3e345d(0x81))/0xa+parseInt(_0x3e345d(0x94))/0xb;if(_0x29672c===_0x237a9a)break;else _0x34e66c['push'](_0x34e66c['shift']());}catch(_0x5d1116){_0x34e66c['push'](_0x34e66c['shift']());}}}(a76_0x4ad2,0x79b1f));const BLOCKED_COMMANDS=[a76_0x489450(0x9a),'auth\x20login',a76_0x489450(0x82),a76_0x489450(0x85),'profile\x20delete',a76_0x489450(0x93),a76_0x489450(0x8e)],BLOCKED_FLAGS=[a76_0x489450(0x8b),'-p'];function a76_0x4ad2(){const _0x466870=['profile\x20create','16358GchNkM','join','toLowerCase','Cannot\x20run\x20MCP\x20server\x20recursively','5iLJmEw','--profile','replace','6KCUCMU','mcp','trimEnd','2267116llVqYv','108536gofLeV','slice','profile\x20remove','17057128VQJGpt','length','startsWith','2484pjhvsL','486kNPoOV','profile\x20delete','auth\x20setup','auth\x20login','5382629eaTfhK','27EsiBni','1042620rKnsTo','auth\x20clear','includes','Profile\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP'];a76_0x4ad2=function(){return _0x466870;};return a76_0x4ad2();}function a76_0x2a8c(_0x14d3ac,_0x171d9a){_0x14d3ac=_0x14d3ac-0x7f;const _0x4ad2fd=a76_0x4ad2();let _0x2a8c56=_0x4ad2fd[_0x14d3ac];return _0x2a8c56;}export function hasBlockedFlag(_0x9f8006){const _0xd16291=a76_0x489450;for(const _0x1e159c of _0x9f8006){const _0x2b1f25=_0x1e159c[_0xd16291(0x88)]();for(const _0xcafad9 of BLOCKED_FLAGS){if(_0x2b1f25===_0xcafad9||_0x2b1f25['startsWith'](_0xcafad9+'='))return!![];}}return![];}export function isBlockedCommand(_0x7d427c){const _0x18334c=a76_0x489450;if(_0x7d427c[_0x18334c(0x95)]===0x0)return![];if(hasBlockedFlag(_0x7d427c))return!![];const _0x20905f=_0x7d427c[_0x18334c(0x92)](0x0,0x2)[_0x18334c(0x87)]('\x20')[_0x18334c(0x88)]();for(const _0xc26a92 of BLOCKED_COMMANDS){if(_0x20905f[_0x18334c(0x96)](_0xc26a92))return!![];}const _0x848580=_0x7d427c[0x0][_0x18334c(0x88)]();for(const _0xb9003a of BLOCKED_COMMANDS){if(!_0xb9003a[_0x18334c(0x83)]('\x20')&&_0x848580===_0xb9003a)return!![];}return![];}export function getBlockedReason(_0x1c0816){const _0x43b769=a76_0x489450;if(!isBlockedCommand(_0x1c0816))return undefined;if(hasBlockedFlag(_0x1c0816))return'Profile\x20switching\x20via\x20--profile\x20flag\x20is\x20not\x20allowed\x20via\x20MCP';const _0x55f1d5=_0x1c0816[_0x43b769(0x92)](0x0,0x2)[_0x43b769(0x87)]('\x20')[_0x43b769(0x88)](),_0x1f608c=_0x1c0816[0x0][_0x43b769(0x88)]();if(_0x55f1d5[_0x43b769(0x96)](_0x43b769(0x9a))||_0x55f1d5[_0x43b769(0x96)](_0x43b769(0x9b))||_0x55f1d5[_0x43b769(0x96)](_0x43b769(0x82)))return'Credential\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP';if(_0x55f1d5['startsWith'](_0x43b769(0x85))||_0x55f1d5[_0x43b769(0x96)](_0x43b769(0x99))||_0x55f1d5[_0x43b769(0x96)](_0x43b769(0x93)))return _0x43b769(0x84);if(_0x1f608c===_0x43b769(0x8e))return _0x43b769(0x89);return'This\x20command\x20is\x20not\x20allowed\x20via\x20MCP';}export function formatOutput(_0x532419){const _0x151ab5=a76_0x489450,_0xd099f5=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;let _0x12e2c1=_0x532419[_0x151ab5(0x8c)](_0xd099f5,'');return _0x12e2c1=_0x12e2c1[_0x151ab5(0x8c)](/\r\n/g,'\x0a')[_0x151ab5(0x8c)](/\r/g,'\x0a'),_0x12e2c1=_0x12e2c1[_0x151ab5(0x8f)](),_0x12e2c1;}
1
+ function a76_0x36bf(_0x589aeb,_0x140a4d){_0x589aeb=_0x589aeb-0x1a4;const _0x39df2b=a76_0x39df();let _0x36bfee=_0x39df2b[_0x589aeb];return _0x36bfee;}const a76_0x1402d1=a76_0x36bf;(function(_0x43bf08,_0x57afc9){const _0x4e98e4=a76_0x36bf,_0x54e581=_0x43bf08();while(!![]){try{const _0x22302b=-parseInt(_0x4e98e4(0x1bb))/0x1+-parseInt(_0x4e98e4(0x1b1))/0x2*(-parseInt(_0x4e98e4(0x1ae))/0x3)+-parseInt(_0x4e98e4(0x1bd))/0x4*(parseInt(_0x4e98e4(0x1b5))/0x5)+-parseInt(_0x4e98e4(0x1b7))/0x6*(-parseInt(_0x4e98e4(0x1a5))/0x7)+parseInt(_0x4e98e4(0x1ba))/0x8*(parseInt(_0x4e98e4(0x1b3))/0x9)+parseInt(_0x4e98e4(0x1a4))/0xa+-parseInt(_0x4e98e4(0x1a8))/0xb*(-parseInt(_0x4e98e4(0x1b9))/0xc);if(_0x22302b===_0x57afc9)break;else _0x54e581['push'](_0x54e581['shift']());}catch(_0xea402f){_0x54e581['push'](_0x54e581['shift']());}}}(a76_0x39df,0xcca77));const BLOCKED_COMMANDS=['auth\x20setup',a76_0x1402d1(0x1c0),a76_0x1402d1(0x1af),a76_0x1402d1(0x1bc),'profile\x20delete','profile\x20remove','mcp'],BLOCKED_FLAGS=[a76_0x1402d1(0x1bf),'-p'];export function hasBlockedFlag(_0x1febd9){const _0x4831ad=a76_0x1402d1;for(const _0x1fd797 of _0x1febd9){const _0x4a750b=_0x1fd797[_0x4831ad(0x1ab)]();for(const _0x4bad85 of BLOCKED_FLAGS){if(_0x4a750b===_0x4bad85||_0x4a750b[_0x4831ad(0x1b8)](_0x4bad85+'='))return!![];}}return![];}function a76_0x39df(){const _0x10320c=['startsWith','12lKpaFd','920hhLnac','1597185fuUcti','profile\x20create','4ggZtTH','Profile\x20switching\x20via\x20--profile\x20flag\x20is\x20not\x20allowed\x20via\x20MCP','--profile','auth\x20login','960090kziUDb','2163giDatl','Credential\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','mcp','3757919ibVfYs','join','Cannot\x20run\x20MCP\x20server\x20recursively','toLowerCase','This\x20command\x20is\x20not\x20allowed\x20via\x20MCP','replace','4710BjXMXt','auth\x20clear','trimEnd','1858DiXtOA','length','7083ArNwAs','includes','1566095ArSlIW','slice','14796GDuNmG'];a76_0x39df=function(){return _0x10320c;};return a76_0x39df();}export function isBlockedCommand(_0x229af2){const _0x2ea850=a76_0x1402d1;if(_0x229af2[_0x2ea850(0x1b2)]===0x0)return![];if(hasBlockedFlag(_0x229af2))return!![];const _0x374623=_0x229af2[_0x2ea850(0x1b6)](0x0,0x2)[_0x2ea850(0x1a9)]('\x20')[_0x2ea850(0x1ab)]();for(const _0x23b096 of BLOCKED_COMMANDS){if(_0x374623[_0x2ea850(0x1b8)](_0x23b096))return!![];}const _0xd597cf=_0x229af2[0x0][_0x2ea850(0x1ab)]();for(const _0x5a27ab of BLOCKED_COMMANDS){if(!_0x5a27ab[_0x2ea850(0x1b4)]('\x20')&&_0xd597cf===_0x5a27ab)return!![];}return![];}export function getBlockedReason(_0x1f7fe1){const _0x1424fc=a76_0x1402d1;if(!isBlockedCommand(_0x1f7fe1))return undefined;if(hasBlockedFlag(_0x1f7fe1))return _0x1424fc(0x1be);const _0x21ddb5=_0x1f7fe1[_0x1424fc(0x1b6)](0x0,0x2)['join']('\x20')[_0x1424fc(0x1ab)](),_0xe0ba90=_0x1f7fe1[0x0][_0x1424fc(0x1ab)]();if(_0x21ddb5[_0x1424fc(0x1b8)]('auth\x20setup')||_0x21ddb5[_0x1424fc(0x1b8)]('auth\x20login')||_0x21ddb5[_0x1424fc(0x1b8)](_0x1424fc(0x1af)))return _0x1424fc(0x1a6);if(_0x21ddb5[_0x1424fc(0x1b8)](_0x1424fc(0x1bc))||_0x21ddb5['startsWith']('profile\x20delete')||_0x21ddb5[_0x1424fc(0x1b8)]('profile\x20remove'))return'Profile\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP';if(_0xe0ba90===_0x1424fc(0x1a7))return _0x1424fc(0x1aa);return _0x1424fc(0x1ac);}export function formatOutput(_0x48f165){const _0x24785e=a76_0x1402d1,_0x4d5eff=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;let _0x594906=_0x48f165[_0x24785e(0x1ad)](_0x4d5eff,'');return _0x594906=_0x594906[_0x24785e(0x1ad)](/\r\n/g,'\x0a')[_0x24785e(0x1ad)](/\r/g,'\x0a'),_0x594906=_0x594906[_0x24785e(0x1b0)](),_0x594906;}
@@ -1 +1 @@
1
- (function(_0x2fbb05,_0x8fda03){const _0x415003=a77_0x58e6,_0x5f11e2=_0x2fbb05();while(!![]){try{const _0x397c0a=-parseInt(_0x415003(0x10c))/0x1*(-parseInt(_0x415003(0x11a))/0x2)+parseInt(_0x415003(0x12c))/0x3*(parseInt(_0x415003(0x109))/0x4)+parseInt(_0x415003(0x119))/0x5*(-parseInt(_0x415003(0x111))/0x6)+parseInt(_0x415003(0x103))/0x7*(parseInt(_0x415003(0xff))/0x8)+parseInt(_0x415003(0x10a))/0x9*(-parseInt(_0x415003(0x112))/0xa)+parseInt(_0x415003(0x124))/0xb*(-parseInt(_0x415003(0xf7))/0xc)+parseInt(_0x415003(0x114))/0xd*(parseInt(_0x415003(0xf3))/0xe);if(_0x397c0a===_0x8fda03)break;else _0x5f11e2['push'](_0x5f11e2['shift']());}catch(_0x3b3d8d){_0x5f11e2['push'](_0x5f11e2['shift']());}}}(a77_0x51f9,0x287bd));import{readFile,writeFile,appendFile,mkdir,readdir,stat}from'node:fs/promises';import{existsSync}from'node:fs';import{join,resolve}from'node:path';function a77_0x51f9(){const _0x15ec8c=['split','length','latestContextTokensBySignature','toISOString','month','timestamp','Failed\x20to\x20read\x20usage\x20file\x20','keys','14DYAGLH','monthly','credits','cacheCreationInputTokens','84yGBODD','sources','getTime','getFullYear','lastUsedAt','stats-cache.json','sessions','Invalid\x20session\x20ID:\x20path\x20traversal\x20detected','280pdDvNM','endsWith','cacheReadInputTokens','profiles','49574XLSbpC','sort','contextSignature','max','parse','todayCredits','1516qsYaEk','2634642gUSncf','filter','2Lfdmwd','values','outputTokens','warn','stringify','6FXRPNp','10zKpKsx','utf-8','8880937AZLHUM','inputTokens','.jsonl','model','trim','1375265YgDfMr','3854KZESkq','source','totalChatUnits','map','totalCredits','default','entryCount','init','object','.jsonl:','447293SptCnx','replace','claude-usage','lastUpdatedAt','slice','reduce','entries','tdx-claude','660dmDEZF','monthCredits','daily','Failed\x20to\x20read\x20usage\x20directory:','Failed\x20to\x20process\x20session\x20'];a77_0x51f9=function(){return _0x15ec8c;};return a77_0x51f9();}import{getModelPricing,calculateTokenCost,usdToAiCredits}from'../sdk/llm/model-factors.js';function a77_0x58e6(_0x6ae4a,_0x4e7c64){_0x6ae4a=_0x6ae4a-0xeb;const _0x51f995=a77_0x51f9();let _0x58e602=_0x51f995[_0x6ae4a];return _0x58e602;}import{TDXLogger,LogLevel}from'../utils/tdx-logger.js';import{getGlobalCacheDir}from'../utils/global-cache.js';let usageLogger=null;async function getLogger(){const _0x4c7c24=a77_0x58e6;return!usageLogger&&(usageLogger=new TDXLogger(LogLevel['WARN'],!![]),await usageLogger[_0x4c7c24(0x121)]()),usageLogger;}function getUsageDir(){const _0x52b082=a77_0x58e6;return join(getGlobalCacheDir(),_0x52b082(0x126));}function sanitizeSessionId(_0x17745e){return _0x17745e['replace'](/[^a-zA-Z0-9_-]/g,'_');}function getSafeJsonlPath(_0x7ef83f){const _0x47e6a8=a77_0x58e6,_0x813869=getUsageDir(),_0x4064e0=sanitizeSessionId(_0x7ef83f),_0x907283=resolve(_0x813869,_0x4064e0+_0x47e6a8(0x116));if(!_0x907283['startsWith'](_0x813869))throw new Error(_0x47e6a8(0xfe));return _0x907283;}function getStatsCachePath(){const _0x598b74=a77_0x58e6;return join(getUsageDir(),_0x598b74(0xfc));}async function ensureUsageDir(){const _0x32d908=getUsageDir();!existsSync(_0x32d908)&&await mkdir(_0x32d908,{'recursive':!![]});}export async function appendUsageEntry(_0x1e36f5,_0x2a250b){const _0x37a030=a77_0x58e6,_0x121f2a=sanitizeSessionId(_0x1e36f5);await ensureUsageDir();const _0x5bc34f=getSafeJsonlPath(_0x121f2a),_0x49078b=JSON[_0x37a030(0x110)](_0x2a250b)+'\x0a';await appendFile(_0x5bc34f,_0x49078b,_0x37a030(0x113));}async function readSessionJsonl(_0x241ade){const _0x3d0a14=a77_0x58e6,_0x4ae551=getSafeJsonlPath(_0x241ade);if(!existsSync(_0x4ae551))return[];try{const _0x5438f5=await readFile(_0x4ae551,_0x3d0a14(0x113)),_0xe9d892=_0x5438f5[_0x3d0a14(0x118)]()[_0x3d0a14(0xeb)]('\x0a')[_0x3d0a14(0x10b)](Boolean);return _0xe9d892[_0x3d0a14(0x11d)](_0x5b7703=>{const _0x4fb3bf=_0x3d0a14;try{return JSON[_0x4fb3bf(0x107)](_0x5b7703);}catch{return null;}})['filter'](_0x25e2a4=>_0x25e2a4!==null);}catch(_0x333b3b){const _0x473f41=await getLogger();return _0x473f41['warn'](_0x3d0a14(0xf1)+_0x241ade+_0x3d0a14(0x123),_0x333b3b instanceof Error?_0x333b3b['message']:String(_0x333b3b)),[];}}async function getAllSessionFiles(){const _0x12b0f7=a77_0x58e6,_0x32b75a=getUsageDir();if(!existsSync(_0x32b75a))return[];try{const _0x5b05ba=await readdir(_0x32b75a);return _0x5b05ba[_0x12b0f7(0x10b)](_0x1aaaaf=>_0x1aaaaf[_0x12b0f7(0x100)]('.jsonl'))['map'](_0x133ea1=>_0x133ea1[_0x12b0f7(0x125)]('.jsonl',''));}catch(_0x389a45){const _0x2c6621=await getLogger();return _0x2c6621[_0x12b0f7(0x10f)](_0x12b0f7(0x12f),_0x389a45 instanceof Error?_0x389a45['message']:String(_0x389a45)),[];}}async function readStatsCache(){const _0x51545d=a77_0x58e6,_0x1b5a11=getStatsCachePath();if(!existsSync(_0x1b5a11))return null;try{const _0x4544c8=await readFile(_0x1b5a11,_0x51545d(0x113)),_0x55c969=JSON[_0x51545d(0x107)](_0x4544c8),_0x9a02fa=Object[_0x51545d(0x10d)](_0x55c969[_0x51545d(0xfd)]||{})[0x0];if(_0x9a02fa&&_0x51545d(0x11c)in _0x9a02fa)return null;return _0x55c969;}catch{return null;}}async function writeStatsCache(_0x56c450){const _0x2327ac=a77_0x58e6;await ensureUsageDir();const _0x385693=getStatsCachePath();await writeFile(_0x385693,JSON[_0x2327ac(0x110)](_0x56c450,null,0x2),_0x2327ac(0x113));}async function isCacheUpToDate(_0x106cc4,_0x41f107){const _0x164a48=a77_0x58e6,_0x20a3d2=_0x106cc4[_0x164a48(0xfd)][_0x41f107];if(!_0x20a3d2)return![];const _0x30f3aa=getSafeJsonlPath(_0x41f107);if(!existsSync(_0x30f3aa))return!![];try{const _0x53e294=await stat(_0x30f3aa),_0x233f8f=new Date(_0x20a3d2[_0x164a48(0x127)])['getTime'](),_0xb066d3=_0x53e294['mtime'][_0x164a48(0xf9)]();return _0x233f8f>_0xb066d3;}catch{return![];}}export async function rebuildCache(){const _0x37c738=a77_0x58e6,_0x10557a=new Date(),_0x5557e4=_0x10557a[_0x37c738(0xee)]()['slice'](0x0,0xa),_0xc97bbf=_0x10557a[_0x37c738(0xee)]()[_0x37c738(0x128)](0x0,0x7),_0x56a2b3={'daily':{},'monthly':{},'sessions':{},'profiles':{},'sources':{},'lastRebuiltAt':_0x10557a['toISOString']()},_0x357042=await getAllSessionFiles();for(const _0x49666a of _0x357042){try{const _0x45a929=await readSessionJsonl(_0x49666a);if(_0x45a929['length']===0x0)continue;let _0xd47c8b=0x0;const _0x5a6661={};let _0x1e75d8='';for(const _0x442d97 of _0x45a929){const _0x493827=getModelPricing(_0x442d97[_0x37c738(0x117)]),_0x1f7175=calculateTokenCost(_0x442d97[_0x37c738(0x115)],_0x442d97[_0x37c738(0x10e)],_0x442d97[_0x37c738(0xf6)]??0x0,_0x442d97[_0x37c738(0x101)]??0x0,_0x493827),_0x17d7bb=usdToAiCredits(_0x1f7175);_0xd47c8b+=_0x17d7bb;const _0x152a53=_0x442d97[_0x37c738(0x105)]||_0x37c738(0x11f);_0x5a6661[_0x152a53]=_0x442d97[_0x37c738(0x115)]+(_0x442d97[_0x37c738(0xf6)]??0x0)+(_0x442d97[_0x37c738(0x101)]??0x0);_0x442d97[_0x37c738(0xf0)]>_0x1e75d8&&(_0x1e75d8=_0x442d97[_0x37c738(0xf0)]);const _0x3cb829=_0x442d97['timestamp']['slice'](0x0,0xa);!_0x56a2b3['daily'][_0x3cb829]&&(_0x56a2b3[_0x37c738(0x12e)][_0x3cb829]={'totalCredits':0x0,'entryCount':0x0});_0x56a2b3['daily'][_0x3cb829][_0x37c738(0x11e)]+=_0x17d7bb,_0x56a2b3[_0x37c738(0x12e)][_0x3cb829][_0x37c738(0x120)]+=0x1;const _0x1361c9=_0x442d97[_0x37c738(0xf0)]['slice'](0x0,0x7);!_0x56a2b3['monthly'][_0x1361c9]&&(_0x56a2b3['monthly'][_0x1361c9]={'totalCredits':0x0,'entryCount':0x0});_0x56a2b3[_0x37c738(0xf4)][_0x1361c9]['totalCredits']+=_0x17d7bb,_0x56a2b3[_0x37c738(0xf4)][_0x1361c9][_0x37c738(0x120)]+=0x1;const _0x292b35=_0x442d97['profile']||'default';!_0x56a2b3[_0x37c738(0x102)][_0x292b35]&&(_0x56a2b3[_0x37c738(0x102)][_0x292b35]={'totalCredits':0x0,'entryCount':0x0,'lastUsedAt':'','todayCredits':0x0,'todayDate':_0x5557e4,'monthCredits':0x0,'month':_0xc97bbf});_0x56a2b3[_0x37c738(0x102)][_0x292b35][_0x37c738(0x11e)]+=_0x17d7bb,_0x56a2b3[_0x37c738(0x102)][_0x292b35][_0x37c738(0x120)]+=0x1;_0x442d97[_0x37c738(0xf0)]>_0x56a2b3['profiles'][_0x292b35]['lastUsedAt']&&(_0x56a2b3[_0x37c738(0x102)][_0x292b35][_0x37c738(0xfb)]=_0x442d97[_0x37c738(0xf0)]);_0x3cb829===_0x5557e4&&(_0x56a2b3['profiles'][_0x292b35]['todayCredits']+=_0x17d7bb);_0x1361c9===_0xc97bbf&&(_0x56a2b3['profiles'][_0x292b35]['monthCredits']+=_0x17d7bb);const _0xb6eee3=_0x442d97[_0x37c738(0x11b)]||_0x37c738(0x12b);!_0x56a2b3[_0x37c738(0xf8)][_0xb6eee3]&&(_0x56a2b3['sources'][_0xb6eee3]={'totalCredits':0x0,'entryCount':0x0,'todayCredits':0x0,'todayDate':_0x5557e4,'monthCredits':0x0,'month':_0xc97bbf}),_0x56a2b3[_0x37c738(0xf8)][_0xb6eee3]['totalCredits']+=_0x17d7bb,_0x56a2b3[_0x37c738(0xf8)][_0xb6eee3][_0x37c738(0x120)]+=0x1,_0x3cb829===_0x5557e4&&(_0x56a2b3[_0x37c738(0xf8)][_0xb6eee3][_0x37c738(0x108)]+=_0x17d7bb),_0x1361c9===_0xc97bbf&&(_0x56a2b3[_0x37c738(0xf8)][_0xb6eee3][_0x37c738(0x12d)]+=_0x17d7bb);}_0x56a2b3[_0x37c738(0xfd)][_0x49666a]={'totalCredits':_0xd47c8b,'latestContextTokensBySignature':_0x5a6661,'createdAt':_0x45a929[0x0][_0x37c738(0xf0)],'lastUpdatedAt':_0x1e75d8};}catch(_0x34b25f){const _0x38ab27=await getLogger();_0x38ab27[_0x37c738(0x10f)](_0x37c738(0x130)+_0x49666a+':',_0x34b25f instanceof Error?_0x34b25f['message']:String(_0x34b25f));continue;}}return cleanupOldEntries(_0x56a2b3),await writeStatsCache(_0x56a2b3),_0x56a2b3;}function cleanupOldEntries(_0x2029ca){const _0x5443bd=a77_0x58e6,_0x4f2629=new Date(),_0x29f162=new Date(_0x4f2629['getTime']()-0x7*0x18*0x3c*0x3c*0x3e8);for(const _0x269349 of Object[_0x5443bd(0xf2)](_0x2029ca[_0x5443bd(0x12e)])){new Date(_0x269349)<_0x29f162&&delete _0x2029ca[_0x5443bd(0x12e)][_0x269349];}const _0x5d5514=new Date(_0x4f2629[_0x5443bd(0xfa)]()-0x1,_0x4f2629['getMonth'](),0x1);for(const _0x2f770c of Object['keys'](_0x2029ca[_0x5443bd(0xf4)])){const [_0xbc2854,_0x5d5ac6]=_0x2f770c[_0x5443bd(0xeb)]('-')['map'](Number),_0x94e026=new Date(_0xbc2854,_0x5d5ac6-0x1,0x1);_0x94e026<_0x5d5514&&delete _0x2029ca[_0x5443bd(0xf4)][_0x2f770c];}const _0x3747c8=new Date(_0x4f2629['getTime']()-0x1e*0x18*0x3c*0x3c*0x3e8);for(const [_0x966f96,_0x13428f]of Object[_0x5443bd(0x12a)](_0x2029ca[_0x5443bd(0xfd)])){new Date(_0x13428f[_0x5443bd(0x127)])<_0x3747c8&&delete _0x2029ca[_0x5443bd(0xfd)][_0x966f96];}}export async function getOrUpdateCache(_0x214f63){const _0x53afd2=_0x214f63?sanitizeSessionId(_0x214f63):undefined,_0x191dea=await readStatsCache();if(!_0x191dea)return rebuildCache();if(_0x53afd2){const _0x3fb1b0=await isCacheUpToDate(_0x191dea,_0x53afd2);if(!_0x3fb1b0)return rebuildCache();}return _0x191dea;}export async function getSessionCredits(_0x1b0783){const _0x1998e9=a77_0x58e6,_0x38bc64=sanitizeSessionId(_0x1b0783),_0x25ca30=await getOrUpdateCache(_0x38bc64),_0xefcabc=_0x25ca30['sessions'][_0x38bc64];if(!_0xefcabc)return 0x0;return _0xefcabc[_0x1998e9(0x11e)];}export async function getTodayCredits(){const _0x403c15=a77_0x58e6,_0x2e6569=await getOrUpdateCache(),_0x5dce23=new Date()[_0x403c15(0xee)]()['slice'](0x0,0xa),_0x399fa0=_0x2e6569[_0x403c15(0x12e)][_0x5dce23];if(!_0x399fa0)return 0x0;return _0x399fa0['totalCredits'];}export async function getMonthCredits(){const _0x12b472=a77_0x58e6,_0x385e33=await getOrUpdateCache(),_0x1420df=new Date()[_0x12b472(0xee)]()[_0x12b472(0x128)](0x0,0x7),_0x2d0710=_0x385e33[_0x12b472(0xf4)][_0x1420df];if(!_0x2d0710)return 0x0;return _0x2d0710[_0x12b472(0x11e)];}export async function getSessionStats(_0x3feedd){const _0xdd8f8a=a77_0x58e6,_0x1690ae=sanitizeSessionId(_0x3feedd),_0xd071dc=await getOrUpdateCache(_0x1690ae);return _0xd071dc[_0xdd8f8a(0xfd)][_0x1690ae]||null;}function getMaxLatestContextTokens(_0x4b00cb){const _0x2bbc34=a77_0x58e6,_0x42a05c=Object[_0x2bbc34(0x10d)](_0x4b00cb);if(_0x42a05c[_0x2bbc34(0xec)]===0x0)return 0x0;return Math[_0x2bbc34(0x106)](..._0x42a05c);}export async function getUsageStats(_0x5c314d,_0x3bbe78){const _0x5057ba=a77_0x58e6,_0x34e6ce=sanitizeSessionId(_0x5c314d),_0x26871c=await getOrUpdateCache(_0x34e6ce),_0x4becfe=_0x26871c[_0x5057ba(0xfd)][_0x34e6ce],_0xd22a7c=new Date()['toISOString']()[_0x5057ba(0x128)](0x0,0xa),_0x2838f2=new Date()[_0x5057ba(0xee)]()[_0x5057ba(0x128)](0x0,0x7);if(_0x3bbe78){const _0x4189da=_0x26871c[_0x5057ba(0x102)]?.[_0x3bbe78],_0xefceac=_0x4189da?.['todayDate']===_0xd22a7c?_0x4189da[_0x5057ba(0x108)]:0x0,_0x358889=_0x4189da?.[_0x5057ba(0xef)]===_0x2838f2?_0x4189da[_0x5057ba(0x12d)]:0x0;return{'sessionCredits':_0x4becfe?_0x4becfe['totalCredits']:0x0,'todayCredits':_0xefceac,'monthCredits':_0x358889,'latestContextTokens':_0x4becfe?getMaxLatestContextTokens(_0x4becfe[_0x5057ba(0xed)]):0x0};}return{'sessionCredits':_0x4becfe?_0x4becfe['totalCredits']:0x0,'todayCredits':_0x26871c[_0x5057ba(0x12e)][_0xd22a7c]?_0x26871c[_0x5057ba(0x12e)][_0xd22a7c][_0x5057ba(0x11e)]:0x0,'monthCredits':_0x26871c[_0x5057ba(0xf4)][_0x2838f2]?_0x26871c['monthly'][_0x2838f2]['totalCredits']:0x0,'latestContextTokens':_0x4becfe?getMaxLatestContextTokens(_0x4becfe['latestContextTokensBySignature']):0x0};}export async function getAllProfileStats(){const _0x5cd170=a77_0x58e6,_0x23c7d7=await getOrUpdateCache(),_0x440f45=_0x23c7d7[_0x5cd170(0x102)]||{};return Object['entries'](_0x440f45)[_0x5cd170(0x10b)](([,_0x56f4f9])=>_0x56f4f9&&typeof _0x56f4f9===_0x5cd170(0x122))[_0x5cd170(0x11d)](([_0xf83e25,_0x2091d5])=>({'profile':_0xf83e25,'credits':_0x2091d5['totalCredits']||0x0,'entryCount':_0x2091d5[_0x5cd170(0x120)]||0x0,'lastUsedAt':_0x2091d5[_0x5cd170(0xfb)]||''}))[_0x5cd170(0x104)]((_0x3fa55b,_0x171a03)=>_0x171a03[_0x5cd170(0xf5)]-_0x3fa55b[_0x5cd170(0xf5)]);}export async function getAllSourceStats(){const _0x37e4d1=a77_0x58e6,_0x1d0790=await getOrUpdateCache(),_0x53c3da=_0x1d0790[_0x37e4d1(0xf8)]||{},_0x4aa125=new Date()[_0x37e4d1(0xee)]()[_0x37e4d1(0x128)](0x0,0xa),_0x1eee55=new Date()[_0x37e4d1(0xee)]()[_0x37e4d1(0x128)](0x0,0x7);return Object['entries'](_0x53c3da)[_0x37e4d1(0x10b)](([,_0x25b80c])=>_0x25b80c&&typeof _0x25b80c===_0x37e4d1(0x122))[_0x37e4d1(0x11d)](([_0x497ed5,_0x289020])=>({'source':_0x497ed5,'credits':_0x289020[_0x37e4d1(0x11e)]||0x0,'todayCredits':_0x289020['todayDate']===_0x4aa125?_0x289020[_0x37e4d1(0x108)]||0x0:0x0,'monthCredits':_0x289020['month']===_0x1eee55?_0x289020[_0x37e4d1(0x12d)]||0x0:0x0,'entryCount':_0x289020['entryCount']||0x0}))[_0x37e4d1(0x104)]((_0x44f4cb,_0x3c1cb5)=>_0x3c1cb5[_0x37e4d1(0xf5)]-_0x44f4cb[_0x37e4d1(0xf5)]);}export async function getUsageSummary(){const _0x1fcca2=a77_0x58e6,_0x98890b=await getOrUpdateCache(),_0x2795f3=_0x98890b['profiles']||{},_0x2e1b62=new Date()[_0x1fcca2(0xee)]()[_0x1fcca2(0x128)](0x0,0xa),_0x6960cb=new Date()['toISOString']()['slice'](0x0,0x7),_0x2ae606=Object[_0x1fcca2(0x10d)](_0x2795f3)[_0x1fcca2(0x10b)](_0x312e94=>_0x312e94&&typeof _0x312e94===_0x1fcca2(0x122)),_0x4e165f=_0x2ae606[_0x1fcca2(0x129)]((_0x510662,_0x18bb58)=>_0x510662+(_0x18bb58[_0x1fcca2(0x11e)]||0x0),0x0);return{'todayCredits':_0x98890b['daily'][_0x2e1b62]?_0x98890b[_0x1fcca2(0x12e)][_0x2e1b62]['totalCredits']||0x0:0x0,'monthCredits':_0x98890b[_0x1fcca2(0xf4)][_0x6960cb]?_0x98890b[_0x1fcca2(0xf4)][_0x6960cb][_0x1fcca2(0x11e)]||0x0:0x0,'totalCredits':_0x4e165f,'profileCount':_0x2ae606['length']};}
1
+ (function(_0x247f45,_0x30763e){const _0x3fe782=a77_0x1ce9,_0x4507ae=_0x247f45();while(!![]){try{const _0xa0bd19=parseInt(_0x3fe782(0x14d))/0x1*(parseInt(_0x3fe782(0x12c))/0x2)+parseInt(_0x3fe782(0x131))/0x3*(-parseInt(_0x3fe782(0x164))/0x4)+parseInt(_0x3fe782(0x15d))/0x5*(-parseInt(_0x3fe782(0x151))/0x6)+parseInt(_0x3fe782(0x13a))/0x7*(-parseInt(_0x3fe782(0x165))/0x8)+-parseInt(_0x3fe782(0x13d))/0x9+parseInt(_0x3fe782(0x160))/0xa*(-parseInt(_0x3fe782(0x135))/0xb)+-parseInt(_0x3fe782(0x167))/0xc*(-parseInt(_0x3fe782(0x171))/0xd);if(_0xa0bd19===_0x30763e)break;else _0x4507ae['push'](_0x4507ae['shift']());}catch(_0x5533eb){_0x4507ae['push'](_0x4507ae['shift']());}}}(a77_0x3893,0xeaac5));import{readFile,writeFile,appendFile,mkdir,readdir,stat}from'node:fs/promises';import{existsSync}from'node:fs';import{join,resolve}from'node:path';function a77_0x1ce9(_0x6091db,_0x568d4b){_0x6091db=_0x6091db-0x12b;const _0x3893f7=a77_0x3893();let _0x1ce99f=_0x3893f7[_0x6091db];return _0x1ce99f;}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 _0x413408=a77_0x1ce9;return!usageLogger&&(usageLogger=new TDXLogger(LogLevel['WARN'],!![]),await usageLogger[_0x413408(0x166)]()),usageLogger;}function getUsageDir(){const _0x5b8f4f=a77_0x1ce9;return join(getGlobalCacheDir(),_0x5b8f4f(0x148));}function sanitizeSessionId(_0x58c090){const _0x2da2c1=a77_0x1ce9;return _0x58c090[_0x2da2c1(0x16e)](/[^a-zA-Z0-9_-]/g,'_');}function getSafeJsonlPath(_0xd9ccb){const _0x5ce379=a77_0x1ce9,_0x45b850=getUsageDir(),_0x47bbb8=sanitizeSessionId(_0xd9ccb),_0x739ab3=resolve(_0x45b850,_0x47bbb8+_0x5ce379(0x144));if(!_0x739ab3[_0x5ce379(0x13e)](_0x45b850))throw new Error(_0x5ce379(0x15a));return _0x739ab3;}function getStatsCachePath(){const _0x7662c5=a77_0x1ce9;return join(getUsageDir(),_0x7662c5(0x12b));}async function ensureUsageDir(){const _0x4a456e=getUsageDir();!existsSync(_0x4a456e)&&await mkdir(_0x4a456e,{'recursive':!![]});}export async function appendUsageEntry(_0x5b0652,_0x29fb1f){const _0x1a2592=a77_0x1ce9,_0x2bcd1b=sanitizeSessionId(_0x5b0652);await ensureUsageDir();const _0xbc94b9=getSafeJsonlPath(_0x2bcd1b),_0x3b4ae7=JSON['stringify'](_0x29fb1f)+'\x0a';await appendFile(_0xbc94b9,_0x3b4ae7,_0x1a2592(0x14a));}async function readSessionJsonl(_0x4bd201){const _0x1982c4=a77_0x1ce9,_0x4219bf=getSafeJsonlPath(_0x4bd201);if(!existsSync(_0x4219bf))return[];try{const _0x33687b=await readFile(_0x4219bf,_0x1982c4(0x14a)),_0x18aaa5=_0x33687b[_0x1982c4(0x13c)]()[_0x1982c4(0x155)]('\x0a')[_0x1982c4(0x145)](Boolean);return _0x18aaa5[_0x1982c4(0x14f)](_0x5f0fd7=>{const _0x4021b5=_0x1982c4;try{return JSON[_0x4021b5(0x170)](_0x5f0fd7);}catch{return null;}})[_0x1982c4(0x145)](_0x533c5f=>_0x533c5f!==null);}catch(_0x45003f){const _0x67a132=await getLogger();return _0x67a132[_0x1982c4(0x158)](_0x1982c4(0x138)+_0x4bd201+_0x1982c4(0x149),_0x45003f instanceof Error?_0x45003f[_0x1982c4(0x136)]:String(_0x45003f)),[];}}async function getAllSessionFiles(){const _0x55c8ad=a77_0x1ce9,_0x51cb4c=getUsageDir();if(!existsSync(_0x51cb4c))return[];try{const _0x9a6982=await readdir(_0x51cb4c);return _0x9a6982[_0x55c8ad(0x145)](_0x577bfa=>_0x577bfa[_0x55c8ad(0x142)](_0x55c8ad(0x144)))['map'](_0x26635e=>_0x26635e[_0x55c8ad(0x16e)](_0x55c8ad(0x144),''));}catch(_0xfd8a25){const _0x36c168=await getLogger();return _0x36c168[_0x55c8ad(0x158)](_0x55c8ad(0x15f),_0xfd8a25 instanceof Error?_0xfd8a25['message']:String(_0xfd8a25)),[];}}async function readStatsCache(){const _0x2ce6f5=a77_0x1ce9,_0x576848=getStatsCachePath();if(!existsSync(_0x576848))return null;try{const _0x1d36b2=await readFile(_0x576848,_0x2ce6f5(0x14a)),_0x571b42=JSON[_0x2ce6f5(0x170)](_0x1d36b2),_0x88b822=Object[_0x2ce6f5(0x150)](_0x571b42['sessions']||{})[0x0];if(_0x88b822&&_0x2ce6f5(0x16f)in _0x88b822)return null;return _0x571b42;}catch{return null;}}async function writeStatsCache(_0x5f5d16){const _0x20f614=a77_0x1ce9;await ensureUsageDir();const _0xf284a7=getStatsCachePath();await writeFile(_0xf284a7,JSON['stringify'](_0x5f5d16,null,0x2),_0x20f614(0x14a));}async function isCacheUpToDate(_0x4c72a2,_0x21976a){const _0x3fbcf5=a77_0x1ce9,_0x12cc9d=_0x4c72a2[_0x3fbcf5(0x14b)][_0x21976a];if(!_0x12cc9d)return![];const _0x400ce8=getSafeJsonlPath(_0x21976a);if(!existsSync(_0x400ce8))return!![];try{const _0xcbfb82=await stat(_0x400ce8),_0x20bea8=new Date(_0x12cc9d[_0x3fbcf5(0x16a)])[_0x3fbcf5(0x15e)](),_0x21ecb9=_0xcbfb82[_0x3fbcf5(0x146)][_0x3fbcf5(0x15e)]();return _0x20bea8>_0x21ecb9;}catch{return![];}}function a77_0x3893(){const _0x129682=['warn','max','Invalid\x20session\x20ID:\x20path\x20traversal\x20detected','getMonth','contextSignature','20QqADMD','getTime','Failed\x20to\x20read\x20usage\x20directory:','10961310SqMkny','cacheReadInputTokens','lastUsedAt','Failed\x20to\x20process\x20session\x20','146116dRDMdG','8200cuxUHB','init','67777140MaIuvf','toISOString','todayDate','lastUpdatedAt','source','length','daily','replace','totalChatUnits','parse','13ZqhHdR','todayCredits','outputTokens','stats-cache.json','48364kOlWWY','entryCount','latestContextTokensBySignature','sort','totalCredits','87nfIZdF','model','slice','monthly','11PRyjjG','message','inputTokens','Failed\x20to\x20read\x20usage\x20file\x20','keys','6013sBbzkB','profile','trim','3016881wuABdt','startsWith','reduce','month','tdx-claude','endsWith','default','.jsonl','filter','mtime','entries','claude-usage','.jsonl:','utf-8','sessions','profiles','13uxOpIM','monthCredits','map','values','2445126KDxSmr','credits','object','timestamp','split','cacheCreationInputTokens','sources'];a77_0x3893=function(){return _0x129682;};return a77_0x3893();}export async function rebuildCache(){const _0x1f0a54=a77_0x1ce9,_0x2743f5=new Date(),_0x2e556f=_0x2743f5['toISOString']()['slice'](0x0,0xa),_0x215757=_0x2743f5['toISOString']()[_0x1f0a54(0x133)](0x0,0x7),_0x1a3da5={'daily':{},'monthly':{},'sessions':{},'profiles':{},'sources':{},'lastRebuiltAt':_0x2743f5[_0x1f0a54(0x168)]()},_0x210da3=await getAllSessionFiles();for(const _0x20cef5 of _0x210da3){try{const _0x27cba3=await readSessionJsonl(_0x20cef5);if(_0x27cba3['length']===0x0)continue;let _0xa8b608=0x0;const _0x3b3660={};let _0x4dbd15='';for(const _0x346211 of _0x27cba3){const _0x1150e4=getModelPricing(_0x346211[_0x1f0a54(0x132)]),_0x25fa2e=calculateTokenCost(_0x346211[_0x1f0a54(0x137)],_0x346211[_0x1f0a54(0x173)],_0x346211[_0x1f0a54(0x156)]??0x0,_0x346211[_0x1f0a54(0x161)]??0x0,_0x1150e4),_0x4d652e=usdToAiCredits(_0x25fa2e);_0xa8b608+=_0x4d652e;const _0x52f126=_0x346211[_0x1f0a54(0x15c)]||_0x1f0a54(0x143);_0x3b3660[_0x52f126]=_0x346211[_0x1f0a54(0x137)]+(_0x346211['cacheCreationInputTokens']??0x0)+(_0x346211[_0x1f0a54(0x161)]??0x0);_0x346211[_0x1f0a54(0x154)]>_0x4dbd15&&(_0x4dbd15=_0x346211['timestamp']);const _0x4cf239=_0x346211['timestamp'][_0x1f0a54(0x133)](0x0,0xa);!_0x1a3da5['daily'][_0x4cf239]&&(_0x1a3da5[_0x1f0a54(0x16d)][_0x4cf239]={'totalCredits':0x0,'entryCount':0x0});_0x1a3da5[_0x1f0a54(0x16d)][_0x4cf239][_0x1f0a54(0x130)]+=_0x4d652e,_0x1a3da5[_0x1f0a54(0x16d)][_0x4cf239]['entryCount']+=0x1;const _0x4a5362=_0x346211['timestamp']['slice'](0x0,0x7);!_0x1a3da5[_0x1f0a54(0x134)][_0x4a5362]&&(_0x1a3da5['monthly'][_0x4a5362]={'totalCredits':0x0,'entryCount':0x0});_0x1a3da5[_0x1f0a54(0x134)][_0x4a5362][_0x1f0a54(0x130)]+=_0x4d652e,_0x1a3da5[_0x1f0a54(0x134)][_0x4a5362][_0x1f0a54(0x12d)]+=0x1;const _0x2e5290=_0x346211[_0x1f0a54(0x13b)]||_0x1f0a54(0x143);!_0x1a3da5['profiles'][_0x2e5290]&&(_0x1a3da5['profiles'][_0x2e5290]={'totalCredits':0x0,'entryCount':0x0,'lastUsedAt':'','todayCredits':0x0,'todayDate':_0x2e556f,'monthCredits':0x0,'month':_0x215757});_0x1a3da5[_0x1f0a54(0x14c)][_0x2e5290][_0x1f0a54(0x130)]+=_0x4d652e,_0x1a3da5[_0x1f0a54(0x14c)][_0x2e5290][_0x1f0a54(0x12d)]+=0x1;_0x346211[_0x1f0a54(0x154)]>_0x1a3da5[_0x1f0a54(0x14c)][_0x2e5290]['lastUsedAt']&&(_0x1a3da5['profiles'][_0x2e5290]['lastUsedAt']=_0x346211[_0x1f0a54(0x154)]);_0x4cf239===_0x2e556f&&(_0x1a3da5[_0x1f0a54(0x14c)][_0x2e5290][_0x1f0a54(0x172)]+=_0x4d652e);_0x4a5362===_0x215757&&(_0x1a3da5['profiles'][_0x2e5290][_0x1f0a54(0x14e)]+=_0x4d652e);const _0x2bf387=_0x346211[_0x1f0a54(0x16b)]||_0x1f0a54(0x141);!_0x1a3da5[_0x1f0a54(0x157)][_0x2bf387]&&(_0x1a3da5[_0x1f0a54(0x157)][_0x2bf387]={'totalCredits':0x0,'entryCount':0x0,'todayCredits':0x0,'todayDate':_0x2e556f,'monthCredits':0x0,'month':_0x215757}),_0x1a3da5['sources'][_0x2bf387][_0x1f0a54(0x130)]+=_0x4d652e,_0x1a3da5[_0x1f0a54(0x157)][_0x2bf387][_0x1f0a54(0x12d)]+=0x1,_0x4cf239===_0x2e556f&&(_0x1a3da5[_0x1f0a54(0x157)][_0x2bf387][_0x1f0a54(0x172)]+=_0x4d652e),_0x4a5362===_0x215757&&(_0x1a3da5[_0x1f0a54(0x157)][_0x2bf387][_0x1f0a54(0x14e)]+=_0x4d652e);}_0x1a3da5['sessions'][_0x20cef5]={'totalCredits':_0xa8b608,'latestContextTokensBySignature':_0x3b3660,'createdAt':_0x27cba3[0x0][_0x1f0a54(0x154)],'lastUpdatedAt':_0x4dbd15};}catch(_0x2472b5){const _0x3c5d77=await getLogger();_0x3c5d77['warn'](_0x1f0a54(0x163)+_0x20cef5+':',_0x2472b5 instanceof Error?_0x2472b5['message']:String(_0x2472b5));continue;}}return cleanupOldEntries(_0x1a3da5),await writeStatsCache(_0x1a3da5),_0x1a3da5;}function cleanupOldEntries(_0x42f830){const _0xb5dc8c=a77_0x1ce9,_0x20dd1f=new Date(),_0x155a31=new Date(_0x20dd1f[_0xb5dc8c(0x15e)]()-0x7*0x18*0x3c*0x3c*0x3e8);for(const _0x1e0d84 of Object['keys'](_0x42f830[_0xb5dc8c(0x16d)])){new Date(_0x1e0d84)<_0x155a31&&delete _0x42f830[_0xb5dc8c(0x16d)][_0x1e0d84];}const _0x52f87f=new Date(_0x20dd1f['getFullYear']()-0x1,_0x20dd1f[_0xb5dc8c(0x15b)](),0x1);for(const _0x277b16 of Object[_0xb5dc8c(0x139)](_0x42f830[_0xb5dc8c(0x134)])){const [_0x21ebd1,_0x5a4fa1]=_0x277b16[_0xb5dc8c(0x155)]('-')[_0xb5dc8c(0x14f)](Number),_0x291f94=new Date(_0x21ebd1,_0x5a4fa1-0x1,0x1);_0x291f94<_0x52f87f&&delete _0x42f830[_0xb5dc8c(0x134)][_0x277b16];}const _0x5cc701=new Date(_0x20dd1f[_0xb5dc8c(0x15e)]()-0x1e*0x18*0x3c*0x3c*0x3e8);for(const [_0x46096b,_0x9d9da2]of Object[_0xb5dc8c(0x147)](_0x42f830['sessions'])){new Date(_0x9d9da2[_0xb5dc8c(0x16a)])<_0x5cc701&&delete _0x42f830[_0xb5dc8c(0x14b)][_0x46096b];}}export async function getOrUpdateCache(_0x2d8a7a){const _0x886eca=_0x2d8a7a?sanitizeSessionId(_0x2d8a7a):undefined,_0x369f3d=await readStatsCache();if(!_0x369f3d)return rebuildCache();if(_0x886eca){const _0x43af15=await isCacheUpToDate(_0x369f3d,_0x886eca);if(!_0x43af15)return rebuildCache();}return _0x369f3d;}export async function getSessionCredits(_0x5275a2){const _0x4a7efe=a77_0x1ce9,_0x24b65a=sanitizeSessionId(_0x5275a2),_0x225490=await getOrUpdateCache(_0x24b65a),_0x228151=_0x225490[_0x4a7efe(0x14b)][_0x24b65a];if(!_0x228151)return 0x0;return _0x228151['totalCredits'];}export async function getTodayCredits(){const _0x275dd2=a77_0x1ce9,_0x1fd863=await getOrUpdateCache(),_0x51ada6=new Date()[_0x275dd2(0x168)]()[_0x275dd2(0x133)](0x0,0xa),_0x5e9bba=_0x1fd863[_0x275dd2(0x16d)][_0x51ada6];if(!_0x5e9bba)return 0x0;return _0x5e9bba[_0x275dd2(0x130)];}export async function getMonthCredits(){const _0x692d16=a77_0x1ce9,_0x5489fb=await getOrUpdateCache(),_0x112a77=new Date()[_0x692d16(0x168)]()['slice'](0x0,0x7),_0x4c9cd7=_0x5489fb['monthly'][_0x112a77];if(!_0x4c9cd7)return 0x0;return _0x4c9cd7[_0x692d16(0x130)];}export async function getSessionStats(_0x259e04){const _0x9159e5=a77_0x1ce9,_0x2474c0=sanitizeSessionId(_0x259e04),_0x7d5afb=await getOrUpdateCache(_0x2474c0);return _0x7d5afb[_0x9159e5(0x14b)][_0x2474c0]||null;}function getMaxLatestContextTokens(_0x1fd1f4){const _0x5776ec=a77_0x1ce9,_0x38881a=Object[_0x5776ec(0x150)](_0x1fd1f4);if(_0x38881a[_0x5776ec(0x16c)]===0x0)return 0x0;return Math[_0x5776ec(0x159)](..._0x38881a);}export async function getUsageStats(_0x3d935b,_0x74da3a){const _0x421e8c=a77_0x1ce9,_0x13f24f=sanitizeSessionId(_0x3d935b),_0x3da185=await getOrUpdateCache(_0x13f24f),_0x62d130=_0x3da185[_0x421e8c(0x14b)][_0x13f24f],_0x135102=new Date()[_0x421e8c(0x168)]()[_0x421e8c(0x133)](0x0,0xa),_0x3e5447=new Date()['toISOString']()['slice'](0x0,0x7);if(_0x74da3a){const _0x44e74b=_0x3da185['profiles']?.[_0x74da3a],_0x5bdce5=_0x44e74b?.[_0x421e8c(0x169)]===_0x135102?_0x44e74b[_0x421e8c(0x172)]:0x0,_0x1e9bda=_0x44e74b?.[_0x421e8c(0x140)]===_0x3e5447?_0x44e74b[_0x421e8c(0x14e)]:0x0;return{'sessionCredits':_0x62d130?_0x62d130[_0x421e8c(0x130)]:0x0,'todayCredits':_0x5bdce5,'monthCredits':_0x1e9bda,'latestContextTokens':_0x62d130?getMaxLatestContextTokens(_0x62d130[_0x421e8c(0x12e)]):0x0};}return{'sessionCredits':_0x62d130?_0x62d130[_0x421e8c(0x130)]:0x0,'todayCredits':_0x3da185[_0x421e8c(0x16d)][_0x135102]?_0x3da185[_0x421e8c(0x16d)][_0x135102]['totalCredits']:0x0,'monthCredits':_0x3da185[_0x421e8c(0x134)][_0x3e5447]?_0x3da185['monthly'][_0x3e5447][_0x421e8c(0x130)]:0x0,'latestContextTokens':_0x62d130?getMaxLatestContextTokens(_0x62d130[_0x421e8c(0x12e)]):0x0};}export async function getAllProfileStats(){const _0x3adbc8=a77_0x1ce9,_0x410b10=await getOrUpdateCache(),_0x53e59c=_0x410b10['profiles']||{};return Object[_0x3adbc8(0x147)](_0x53e59c)[_0x3adbc8(0x145)](([,_0x4da27e])=>_0x4da27e&&typeof _0x4da27e===_0x3adbc8(0x153))[_0x3adbc8(0x14f)](([_0x5c7056,_0x595482])=>({'profile':_0x5c7056,'credits':_0x595482['totalCredits']||0x0,'entryCount':_0x595482[_0x3adbc8(0x12d)]||0x0,'lastUsedAt':_0x595482[_0x3adbc8(0x162)]||''}))['sort']((_0x45cce3,_0x320a7b)=>_0x320a7b[_0x3adbc8(0x152)]-_0x45cce3[_0x3adbc8(0x152)]);}export async function getAllSourceStats(){const _0x2098fc=a77_0x1ce9,_0x10aa11=await getOrUpdateCache(),_0xfd7248=_0x10aa11[_0x2098fc(0x157)]||{},_0x5a7d2f=new Date()[_0x2098fc(0x168)]()[_0x2098fc(0x133)](0x0,0xa),_0x259596=new Date()['toISOString']()[_0x2098fc(0x133)](0x0,0x7);return Object[_0x2098fc(0x147)](_0xfd7248)['filter'](([,_0x46cff3])=>_0x46cff3&&typeof _0x46cff3===_0x2098fc(0x153))[_0x2098fc(0x14f)](([_0x4a6c68,_0x1fc6d3])=>({'source':_0x4a6c68,'credits':_0x1fc6d3[_0x2098fc(0x130)]||0x0,'todayCredits':_0x1fc6d3[_0x2098fc(0x169)]===_0x5a7d2f?_0x1fc6d3[_0x2098fc(0x172)]||0x0:0x0,'monthCredits':_0x1fc6d3['month']===_0x259596?_0x1fc6d3['monthCredits']||0x0:0x0,'entryCount':_0x1fc6d3[_0x2098fc(0x12d)]||0x0}))[_0x2098fc(0x12f)]((_0x6aabc8,_0xd93c88)=>_0xd93c88[_0x2098fc(0x152)]-_0x6aabc8[_0x2098fc(0x152)]);}export async function getUsageSummary(){const _0x1581f0=a77_0x1ce9,_0x29cb68=await getOrUpdateCache(),_0xa75e75=_0x29cb68[_0x1581f0(0x14c)]||{},_0x877b35=new Date()['toISOString']()[_0x1581f0(0x133)](0x0,0xa),_0x2986b4=new Date()['toISOString']()[_0x1581f0(0x133)](0x0,0x7),_0x1c403d=Object['values'](_0xa75e75)[_0x1581f0(0x145)](_0x338033=>_0x338033&&typeof _0x338033==='object'),_0x574680=_0x1c403d[_0x1581f0(0x13f)]((_0x1a168e,_0x44578a)=>_0x1a168e+(_0x44578a[_0x1581f0(0x130)]||0x0),0x0);return{'todayCredits':_0x29cb68[_0x1581f0(0x16d)][_0x877b35]?_0x29cb68[_0x1581f0(0x16d)][_0x877b35]['totalCredits']||0x0:0x0,'monthCredits':_0x29cb68[_0x1581f0(0x134)][_0x2986b4]?_0x29cb68['monthly'][_0x2986b4][_0x1581f0(0x130)]||0x0:0x0,'totalCredits':_0x574680,'profileCount':_0x1c403d['length']};}
@@ -1 +1 @@
1
- const a78_0x4ca52f=a78_0x5b41;(function(_0x58786a,_0x4a4287){const _0x4d7bc9=a78_0x5b41,_0x2a56af=_0x58786a();while(!![]){try{const _0x3e1483=parseInt(_0x4d7bc9(0x142))/0x1+-parseInt(_0x4d7bc9(0x14f))/0x2+parseInt(_0x4d7bc9(0x12d))/0x3+parseInt(_0x4d7bc9(0x134))/0x4+parseInt(_0x4d7bc9(0x121))/0x5*(parseInt(_0x4d7bc9(0x130))/0x6)+-parseInt(_0x4d7bc9(0x122))/0x7*(-parseInt(_0x4d7bc9(0x140))/0x8)+parseInt(_0x4d7bc9(0xe5))/0x9*(-parseInt(_0x4d7bc9(0x107))/0xa);if(_0x3e1483===_0x4a4287)break;else _0x2a56af['push'](_0x2a56af['shift']());}catch(_0x119277){_0x2a56af['push'](_0x2a56af['shift']());}}}(a78_0x52bd,0x66602));import a78_0x556087 from'fastify';import a78_0x36db71 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_0x4ca52f(0x154)+(isExperimentalAvailable()?a78_0x4ca52f(0xe4):'')+a78_0x4ca52f(0x10b);function a78_0x52bd(){const _0x2e5f29=['method','x-td-','stop','flush','processChunk','expiresAt','|\x20Debug\x20agent\x20issues\x20|\x20tdx-skills:agent-debug\x20|\x0a','5895891XtdpbS','setupRoutes','input_tokens','EADDRINUSE','join','includes','body','/v1/messages','header','refreshTokenIfNeeded','debug','Server\x20has\x20not\x20been\x20started\x20yet','\x20in\x20use,\x20trying\x20next...',':\x20messages=','decode','outputTokens','apiKey','Stream\x20interrupted','host','access_token','unknown','raw','string','No\x20available\x20port\x20found\x20between\x20','listen','handleCountTokens','stream','createServer','SKIP_HEADERS','stringify','getAddress','[PASSTHROUGH]\x20Upstream\x20error:\x20','_boundPort','setupMiddleware','10zATMUP','refresh_token','http://127.0.0.1:','[PASSTHROUGH]\x20Stream\x20error:','|\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|','output_tokens','authorization','Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20','send','message','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20count_tokens\x20request:','User-Agent','length','system','post','event:\x20error\x0adata:\x20','logUsage','inputTokens','/health','Pass-through\x20proxy\x20server\x20stopped','POST','text','connection','TimeoutError','Pass-through\x20proxy\x20server\x20started\x20on\x20port\x20','isArray','15UWXuHl','7EATGiK','code','get','profile','Unknown\x20error','url','info','[PASSTHROUGH]\x20OAuth\x20token\x20refreshed\x20successfully','status','Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20','setupJsonParser','297603jYtbdT','slice','\x20and\x20','1039272lAdiMw','indexOf','startsWith','[PASSTHROUGH\x20PROXY\x20ERROR]:','2062100LpNFDs','anthropic-version','x-api-key',',\x20stream=','close','Forwarding\x20to:\x20','accessToken','auth','expires_at','cache_read_input_tokens','handleMessages','headers','2078664clUhOK','[PASSTHROUGH]\x20Forwarding\x20count_tokens\x20to:\x20','40988HSBWnz','refreshTimer','statusText','toLowerCase','api_error','error','consoleUrl','parse','[PASSTHROUGH]\x20Usage:\x20input=','logger','has','cache_creation_input_tokens','127.0.0.1','721508wXXYtY','buildForwardHeaders','model','timeoutMs','metadata','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','haiku','[PASSTHROUGH]\x20','Bearer\x20','default','TD\x20LLM\x20Pass-through\x20Proxy\x20Server','entries','cacheCreationInputTokens','start','Error\x20body:\x20','type','application/json','text/event-stream','Content-Type','refreshToken','transfer-encoding','now',',\x20model=','OPTIONS','server','cacheReadInputTokens','timeout_error','addContentTypeParser','write','[PASSTHROUGH]\x20OAuth\x20token\x20refresh\x20failed:','TD1\x20','no-cache','startPort','content-length','[PASSTHROUGH]\x20Failed\x20to\x20log\x20usage:','oauth','handleStreamingResponse','toISOString',',\x20cache_create=','port','maxPortAttempts','user-agent','config','match','read','usage'];a78_0x52bd=function(){return _0x2e5f29;};return a78_0x52bd();}function a78_0x5b41(_0x43407a,_0x5d4d68){_0x43407a=_0x43407a-0xe1;const _0x52bdee=a78_0x52bd();let _0x5b4159=_0x52bdee[_0x43407a];return _0x5b4159;}function extractSessionUUID(_0x4cdb4b){const _0x592716=a78_0x4ca52f,_0x2d387d=_0x4cdb4b[_0x592716(0x17a)](/_session_([a-f0-9-]+)$/i);if(_0x2d387d)return _0x2d387d[0x1];return _0x4cdb4b;}export function injectSystemPrompt(_0x5a96f3,_0x48cf56){const _0x368a1d=a78_0x4ca52f,_0x3a90d3=_0x5a96f3[_0x368a1d(0x114)];if(!_0x3a90d3)return{..._0x5a96f3,'system':_0x48cf56};if(typeof _0x3a90d3===_0x368a1d(0xfb))return{..._0x5a96f3,'system':_0x3a90d3+'\x0a\x0a'+_0x48cf56};if(Array[_0x368a1d(0x120)](_0x3a90d3)){const _0xf959c={'type':_0x368a1d(0x11c),'text':_0x48cf56};return{..._0x5a96f3,'system':[..._0x3a90d3,_0xf959c]};}return _0x5a96f3;}export function shouldInjectSystemPrompt(_0x3c2dc5){const _0x3d57e4=a78_0x4ca52f;return!_0x3c2dc5['toLowerCase']()[_0x3d57e4(0xea)](_0x3d57e4(0x155));}const TOKEN_REFRESH_INTERVAL_MS=0x5*0x3c*0x3e8,TOKEN_EXPIRY_BUFFER_MS=0x5*0x3c*0x3e8;export class PassThroughProxyServer{[a78_0x4ca52f(0x167)];[a78_0x4ca52f(0x179)];[a78_0x4ca52f(0x14b)];[a78_0x4ca52f(0x105)];[a78_0x4ca52f(0x143)];constructor(_0x506510){const _0x15b228=a78_0x4ca52f;this[_0x15b228(0x179)]=_0x506510,this[_0x15b228(0x14b)]=_0x506510[_0x15b228(0x14b)],this[_0x15b228(0x167)]=this[_0x15b228(0x100)]();}get[a78_0x4ca52f(0x176)](){const _0xe30607=a78_0x4ca52f;if(this[_0xe30607(0x105)]===undefined)throw new Error(_0xe30607(0xf0));return this[_0xe30607(0x105)];}[a78_0x4ca52f(0x100)](){const _0x3b4541=a78_0x4ca52f,_0x29901d=a78_0x556087({'logger':![],'bodyLimit':0x40*0x400*0x400});return this[_0x3b4541(0x167)]=_0x29901d,this[_0x3b4541(0x12c)](),this[_0x3b4541(0x106)](),this[_0x3b4541(0xe6)](),_0x29901d;}[a78_0x4ca52f(0x12c)](){const _0x321dcb=a78_0x4ca52f;this['server'][_0x321dcb(0x16a)](_0x321dcb(0x15f),{'parseAs':_0x321dcb(0xfb)},(_0x42c275,_0x22c745,_0x42d607)=>{try{const _0x3115d4=JSON['parse'](_0x22c745);_0x42d607(null,_0x3115d4);}catch(_0x257f86){_0x42d607(_0x257f86,undefined);}});}['setupMiddleware'](){const _0x4d8ecc=a78_0x4ca52f;this['server']['register'](a78_0x36db71,{'origin':!![],'methods':['GET',_0x4d8ecc(0x11b),_0x4d8ecc(0x166)],'allowedHeaders':[_0x4d8ecc(0x161),'Authorization',_0x4d8ecc(0x135),'x-api-key']}),this[_0x4d8ecc(0x167)]['setErrorHandler']((_0x96a7ac,_0x52f985,_0x491f9e)=>{const _0x4d8006=_0x4d8ecc,_0x2811a1=_0x96a7ac instanceof Error?_0x96a7ac[_0x4d8006(0x110)]:_0x4d8006(0x126);this[_0x4d8006(0x14b)][_0x4d8006(0x147)](_0x4d8006(0x133),_0x96a7ac),_0x491f9e[_0x4d8006(0x123)](0x1f4)['send']({'type':_0x4d8006(0x147),'error':{'type':_0x4d8006(0x146),'message':_0x2811a1}});});}[a78_0x4ca52f(0xe6)](){const _0x1ee97b=a78_0x4ca52f;this[_0x1ee97b(0x167)][_0x1ee97b(0x124)](_0x1ee97b(0x119),async()=>{const _0x139b06=_0x1ee97b;return{'status':'ok','message':_0x139b06(0x159)};}),this['server'][_0x1ee97b(0x115)](_0x1ee97b(0xec),async(_0x495d8c,_0x4cafbc)=>{const _0x45afa5=_0x1ee97b;return this[_0x45afa5(0x13e)](_0x495d8c,_0x4cafbc);}),this[_0x1ee97b(0x167)][_0x1ee97b(0x115)]('/v1/messages/count_tokens',async(_0x19c631,_0x16f15e)=>{const _0x295e9d=_0x1ee97b;return this[_0x295e9d(0xfe)](_0x19c631,_0x16f15e);});}static ['SKIP_HEADERS']=new Set([a78_0x4ca52f(0xf7),a78_0x4ca52f(0x11d),a78_0x4ca52f(0x170),a78_0x4ca52f(0x163),a78_0x4ca52f(0x10d),a78_0x4ca52f(0x136),a78_0x4ca52f(0x178)]);[a78_0x4ca52f(0x150)](_0x4b1bf8){const _0x11dd72=a78_0x4ca52f,_0x4d79c5={};for(const [_0x4dea9,_0x5f293a]of Object[_0x11dd72(0x15a)](_0x4b1bf8['headers'])){const _0x35f140=_0x4dea9[_0x11dd72(0x145)]();if(PassThroughProxyServer[_0x11dd72(0x101)][_0x11dd72(0x14c)](_0x35f140))continue;if(_0x35f140[_0x11dd72(0x132)](_0x11dd72(0x17e)))continue;if(typeof _0x5f293a==='string')_0x4d79c5[_0x4dea9]=_0x5f293a;else Array['isArray'](_0x5f293a)&&(_0x4d79c5[_0x4dea9]=_0x5f293a[_0x11dd72(0xe9)](',\x20'));}const _0x185b2f=getVersion(),{auth:_0x15460f}=this['config'];return _0x4d79c5['Authorization']=_0x15460f[_0x11dd72(0x15e)]===_0x11dd72(0x172)?_0x11dd72(0x157)+_0x15460f[_0x11dd72(0x13a)]:_0x11dd72(0x16d)+_0x15460f[_0x11dd72(0xf5)],_0x4d79c5[_0x11dd72(0x112)]='tdx/'+_0x185b2f,_0x4d79c5['X-TD-Client']='tdx',_0x4d79c5['X-TD-Client-Version']=_0x185b2f,_0x4d79c5;}async[a78_0x4ca52f(0x13e)](_0x49f166,_0x1dffbd){const _0x31bd58=a78_0x4ca52f,_0x33862e=_0x49f166[_0x31bd58(0xeb)],_0x188762=_0x33862e[_0x31bd58(0xff)]!==![],_0x16a475=_0x33862e[_0x31bd58(0x153)],_0x11c128=_0x16a475?.['user_id']||_0x31bd58(0x158),_0x4e40bb=extractSessionUUID(_0x11c128),_0x3a0de1=_0x33862e[_0x31bd58(0x151)]||'unknown',_0x4a8da9=shouldInjectSystemPrompt(_0x3a0de1)?injectSystemPrompt(_0x33862e,TDX_SYSTEM_PROMPT):_0x33862e,_0x53df3d=JSON['stringify'](_0x4a8da9),_0xd4cfa6=Array[_0x31bd58(0x120)](_0x33862e['messages'])?_0x33862e['messages'][_0x31bd58(0x113)]:0x0;this[_0x31bd58(0x14b)][_0x31bd58(0x128)](_0x31bd58(0x156)+_0x49f166[_0x31bd58(0x17d)]+'\x20'+_0x49f166[_0x31bd58(0x127)]+_0x31bd58(0xf2)+_0xd4cfa6+_0x31bd58(0x165)+_0x3a0de1+_0x31bd58(0x137)+_0x188762);const _0x587ace=_0x49f166[_0x31bd58(0x127)][_0x31bd58(0xea)]('?')?_0x49f166[_0x31bd58(0x127)]['slice'](_0x49f166[_0x31bd58(0x127)][_0x31bd58(0x131)]('?')):'',_0x35268d=this[_0x31bd58(0x179)]['llmProxyUrl']+_0x31bd58(0xec)+_0x587ace,_0x4f72d4=this[_0x31bd58(0x150)](_0x49f166);this['logger']['debug'](_0x31bd58(0x139)+_0x35268d);const _0x3c6831=this[_0x31bd58(0x179)][_0x31bd58(0x152)]||DEFAULT_TIMEOUT_MS;try{const _0x132d07=await fetch(_0x35268d,{'method':_0x31bd58(0x11b),'headers':_0x4f72d4,'body':_0x53df3d,'signal':AbortSignal['timeout'](_0x3c6831)});if(!_0x132d07['ok']){const _0x2b3621=await _0x132d07[_0x31bd58(0x11c)]();return this[_0x31bd58(0x14b)][_0x31bd58(0x147)](_0x31bd58(0x104)+_0x132d07[_0x31bd58(0x12a)]+'\x20'+_0x132d07[_0x31bd58(0x144)]),this[_0x31bd58(0x14b)][_0x31bd58(0xef)](_0x31bd58(0x15d)+_0x2b3621),_0x1dffbd[_0x31bd58(0x123)](_0x132d07['status']),_0x1dffbd[_0x31bd58(0xed)](_0x31bd58(0x161),_0x132d07[_0x31bd58(0x13f)]['get']('Content-Type')||_0x31bd58(0x15f)),_0x1dffbd[_0x31bd58(0x10f)](_0x2b3621);}if(_0x188762&&_0x132d07['body'])await this[_0x31bd58(0x173)](_0x132d07[_0x31bd58(0xeb)],_0x1dffbd,_0x4e40bb,_0x3a0de1);else{const _0x33922b=await _0x132d07[_0x31bd58(0x11c)]();_0x1dffbd[_0x31bd58(0xed)](_0x31bd58(0x161),_0x132d07[_0x31bd58(0x13f)][_0x31bd58(0x124)]('Content-Type')||_0x31bd58(0x15f));try{const _0x31e126=JSON[_0x31bd58(0x149)](_0x33922b);_0x31e126[_0x31bd58(0x17c)]&&await this[_0x31bd58(0x117)](_0x4e40bb,_0x3a0de1,_0x31e126[_0x31bd58(0x17c)][_0x31bd58(0xe7)]||0x0,_0x31e126[_0x31bd58(0x17c)][_0x31bd58(0x10c)]||0x0,_0x31e126['usage'][_0x31bd58(0x14d)],_0x31e126[_0x31bd58(0x17c)][_0x31bd58(0x13d)]);}catch{}return _0x1dffbd[_0x31bd58(0x10f)](_0x33922b);}}catch(_0x49e9e6){const _0x294439=_0x49e9e6 instanceof Error?_0x49e9e6[_0x31bd58(0x110)]:_0x31bd58(0x126),_0x41a8cd=_0x49e9e6 instanceof Error&&_0x49e9e6['name']===_0x31bd58(0x11e);this[_0x31bd58(0x14b)]['error']('[PASSTHROUGH]\x20Failed\x20to\x20forward\x20request:',_0x49e9e6),_0x1dffbd[_0x31bd58(0x123)](_0x41a8cd?0x1f8:0x1f7)['send']({'type':_0x31bd58(0x147),'error':{'type':_0x41a8cd?'timeout_error':_0x31bd58(0x146),'message':_0x41a8cd?_0x31bd58(0x10e)+_0x3c6831+'ms':_0x31bd58(0x12b)+_0x294439}});}}async[a78_0x4ca52f(0x173)](_0x108fdb,_0x444af8,_0x1b7877,_0x1009f2){const _0x3bcf44=a78_0x4ca52f;_0x444af8[_0x3bcf44(0xfa)]['writeHead'](0xc8,{'Content-Type':_0x3bcf44(0x160),'Cache-Control':_0x3bcf44(0x16e),'Connection':'keep-alive'});const _0x1fc939=new SSEUsageTracker(),_0x4830db=_0x108fdb['getReader'](),_0x41b978=new TextDecoder();try{while(!![]){const {done:_0x492dac,value:_0x35d4ef}=await _0x4830db[_0x3bcf44(0x17b)]();if(_0x492dac)break;const _0x265e3b=_0x41b978[_0x3bcf44(0xf3)](_0x35d4ef,{'stream':!![]});_0x1fc939[_0x3bcf44(0xe2)](_0x265e3b),_0x444af8[_0x3bcf44(0xfa)][_0x3bcf44(0x16b)](_0x265e3b);}_0x1fc939[_0x3bcf44(0xe1)]();const _0x3a715f=_0x1fc939['getUsage']();(_0x3a715f['inputTokens']>0x0||_0x3a715f[_0x3bcf44(0xf4)]>0x0)&&await this[_0x3bcf44(0x117)](_0x1b7877,_0x1009f2,_0x3a715f[_0x3bcf44(0x118)],_0x3a715f[_0x3bcf44(0xf4)],_0x3a715f[_0x3bcf44(0x15b)],_0x3a715f[_0x3bcf44(0x168)]);}catch(_0x31ae62){this[_0x3bcf44(0x14b)][_0x3bcf44(0x147)](_0x3bcf44(0x10a),_0x31ae62);const _0xc15766=_0x3bcf44(0x116)+JSON['stringify']({'type':_0x3bcf44(0x147),'error':{'type':'stream_error','message':_0x3bcf44(0xf6)}})+'\x0a\x0a';_0x444af8['raw']['write'](_0xc15766);}finally{_0x444af8[_0x3bcf44(0xfa)]['end']();}}async['handleCountTokens'](_0x151e00,_0x5a8d15){const _0x2ff7af=a78_0x4ca52f,_0x51715a=_0x151e00[_0x2ff7af(0xeb)],_0x2abc46=_0x151e00[_0x2ff7af(0x127)]['includes']('?')?_0x151e00[_0x2ff7af(0x127)][_0x2ff7af(0x12e)](_0x151e00['url'][_0x2ff7af(0x131)]('?')):'',_0x464be4=this[_0x2ff7af(0x179)]['llmProxyUrl']+'/v1/messages/count_tokens'+_0x2abc46,_0x5dcdd0=this[_0x2ff7af(0x150)](_0x151e00),_0x3d3e83=_0x51715a[_0x2ff7af(0x151)]||_0x2ff7af(0xf9),_0x5c5a91=shouldInjectSystemPrompt(_0x3d3e83)?injectSystemPrompt(_0x51715a,TDX_SYSTEM_PROMPT):_0x51715a,_0x4e0635=JSON[_0x2ff7af(0x102)](_0x5c5a91);this['logger'][_0x2ff7af(0xef)](_0x2ff7af(0x141)+_0x464be4);const _0x512160=this[_0x2ff7af(0x179)]['timeoutMs']||DEFAULT_TIMEOUT_MS;try{const _0x1aaac0=await fetch(_0x464be4,{'method':_0x2ff7af(0x11b),'headers':_0x5dcdd0,'body':_0x4e0635,'signal':AbortSignal['timeout'](_0x512160)}),_0x2c800a=await _0x1aaac0[_0x2ff7af(0x11c)]();return _0x5a8d15[_0x2ff7af(0x123)](_0x1aaac0[_0x2ff7af(0x12a)]),_0x5a8d15['header'](_0x2ff7af(0x161),_0x1aaac0[_0x2ff7af(0x13f)][_0x2ff7af(0x124)](_0x2ff7af(0x161))||'application/json'),_0x5a8d15[_0x2ff7af(0x10f)](_0x2c800a);}catch(_0x3783af){const _0x12f6a5=_0x3783af instanceof Error?_0x3783af[_0x2ff7af(0x110)]:'Unknown\x20error',_0x38e338=_0x3783af instanceof Error&&_0x3783af['name']==='TimeoutError';this['logger'][_0x2ff7af(0x147)](_0x2ff7af(0x111),_0x3783af),_0x5a8d15[_0x2ff7af(0x123)](_0x38e338?0x1f8:0x1f7)[_0x2ff7af(0x10f)]({'type':_0x2ff7af(0x147),'error':{'type':_0x38e338?_0x2ff7af(0x169):'api_error','message':_0x38e338?_0x2ff7af(0x10e)+_0x512160+'ms':_0x2ff7af(0x12b)+_0x12f6a5}});}}async[a78_0x4ca52f(0x117)](_0x197b9d,_0x119aae,_0x31770f,_0x12bb03,_0x2253d9,_0x49044b){const _0x32462e=a78_0x4ca52f,_0x3811ad={'timestamp':new Date()[_0x32462e(0x174)](),'model':_0x119aae,'inputTokens':_0x31770f,'outputTokens':_0x12bb03,'cacheCreationInputTokens':_0x2253d9,'cacheReadInputTokens':_0x49044b,'profile':this['config'][_0x32462e(0x125)],'source':'tdx-claude'},_0xba8d36=_0x2253d9||_0x49044b?_0x32462e(0x175)+(_0x2253d9||0x0)+',\x20cache_read='+(_0x49044b||0x0):'';this[_0x32462e(0x14b)][_0x32462e(0xef)](_0x32462e(0x14a)+_0x31770f+',\x20output='+_0x12bb03+_0xba8d36+_0x32462e(0x165)+_0x119aae);try{await appendUsageEntry(_0x197b9d,_0x3811ad);}catch(_0x5ad1af){this[_0x32462e(0x14b)][_0x32462e(0x147)](_0x32462e(0x171),_0x5ad1af);}}['startTokenRefreshTimer'](){const _0x195eab=a78_0x4ca52f;if(this[_0x195eab(0x179)][_0x195eab(0x13b)][_0x195eab(0x15e)]!==_0x195eab(0x172))return;this[_0x195eab(0x143)]=setInterval(()=>{const _0x42dabc=_0x195eab;void this[_0x42dabc(0xee)]();},TOKEN_REFRESH_INTERVAL_MS),this[_0x195eab(0x143)]['unref']();}async['refreshTokenIfNeeded'](){const _0x467f61=a78_0x4ca52f,{auth:_0x3d0888}=this['config'];if(_0x3d0888[_0x467f61(0x15e)]!==_0x467f61(0x172))return;const _0x1b0f02=!_0x3d0888[_0x467f61(0xe3)]||_0x3d0888[_0x467f61(0xe3)]<Date[_0x467f61(0x164)]()+TOKEN_EXPIRY_BUFFER_MS;if(!_0x1b0f02)return;try{const _0x3810ab=await refreshAccessToken(_0x3d0888[_0x467f61(0x148)],_0x3d0888[_0x467f61(0x162)]);_0x3d0888[_0x467f61(0x13a)]=_0x3810ab[_0x467f61(0xf8)],_0x3d0888[_0x467f61(0x162)]=_0x3810ab[_0x467f61(0x108)],_0x3d0888[_0x467f61(0xe3)]=_0x3810ab[_0x467f61(0x13c)],await saveOAuthTokens(_0x3810ab,this[_0x467f61(0x179)][_0x467f61(0x125)]),this[_0x467f61(0x14b)][_0x467f61(0x128)](_0x467f61(0x129));}catch(_0x49bb6c){this[_0x467f61(0x14b)][_0x467f61(0x147)](_0x467f61(0x16c),_0x49bb6c);}}async[a78_0x4ca52f(0x15c)](){const _0x26bd35=a78_0x4ca52f,_0x2790c2=this['config'][_0x26bd35(0x177)]??0x64;for(let _0x3a5130=0x0;_0x3a5130<_0x2790c2;_0x3a5130++){const _0x5598c4=this[_0x26bd35(0x179)][_0x26bd35(0x16f)]+_0x3a5130;try{await this[_0x26bd35(0x167)][_0x26bd35(0xfd)]({'port':_0x5598c4,'host':_0x26bd35(0x14e)}),this[_0x26bd35(0x105)]=_0x5598c4,this['logger'][_0x26bd35(0x128)](_0x26bd35(0x11f)+_0x5598c4),this[_0x26bd35(0x14b)][_0x26bd35(0x128)]('Forwarding\x20to:\x20'+this[_0x26bd35(0x179)]['llmProxyUrl']),this['startTokenRefreshTimer']();return;}catch(_0x1226c2){const _0x229f63=_0x1226c2 instanceof Error&&_0x26bd35(0x123)in _0x1226c2&&_0x1226c2[_0x26bd35(0x123)]===_0x26bd35(0xe8);if(!_0x229f63)throw _0x1226c2;this[_0x26bd35(0x14b)][_0x26bd35(0xef)]('Port\x20'+_0x5598c4+_0x26bd35(0xf1)),this[_0x26bd35(0x100)]();}}const _0x10e21e=this[_0x26bd35(0x179)][_0x26bd35(0x16f)]+_0x2790c2-0x1;throw new Error(_0x26bd35(0xfc)+this['config'][_0x26bd35(0x16f)]+_0x26bd35(0x12f)+_0x10e21e);}async[a78_0x4ca52f(0x17f)](){const _0x1f55e9=a78_0x4ca52f;this[_0x1f55e9(0x143)]&&(clearInterval(this[_0x1f55e9(0x143)]),this[_0x1f55e9(0x143)]=undefined),await this[_0x1f55e9(0x167)][_0x1f55e9(0x138)](),this[_0x1f55e9(0x14b)][_0x1f55e9(0x128)](_0x1f55e9(0x11a));}[a78_0x4ca52f(0x103)](){const _0x3de27f=a78_0x4ca52f;return _0x3de27f(0x109)+this[_0x3de27f(0x176)];}}
1
+ const a78_0x4f3aaf=a78_0x33e9;(function(_0x37001c,_0x2036f8){const _0x59b8b5=a78_0x33e9,_0x586289=_0x37001c();while(!![]){try{const _0x380c01=parseInt(_0x59b8b5(0xa9))/0x1*(-parseInt(_0x59b8b5(0x80))/0x2)+-parseInt(_0x59b8b5(0xbd))/0x3+parseInt(_0x59b8b5(0x112))/0x4*(parseInt(_0x59b8b5(0xc6))/0x5)+parseInt(_0x59b8b5(0x10d))/0x6*(-parseInt(_0x59b8b5(0xe8))/0x7)+parseInt(_0x59b8b5(0x96))/0x8*(-parseInt(_0x59b8b5(0xba))/0x9)+parseInt(_0x59b8b5(0xaf))/0xa+parseInt(_0x59b8b5(0x9f))/0xb*(parseInt(_0x59b8b5(0xfe))/0xc);if(_0x380c01===_0x2036f8)break;else _0x586289['push'](_0x586289['shift']());}catch(_0x5598b1){_0x586289['push'](_0x586289['shift']());}}}(a78_0x73e4,0xe1675));import a78_0x5e3db9 from'fastify';import a78_0x16c4b0 from'@fastify/cors';import{SSEUsageTracker}from'./sse-usage-parser.js';import{appendUsageEntry}from'./claude-usage-tracker.js';function a78_0x73e4(){const _0x25dd22=['No\x20available\x20port\x20found\x20between\x20','\x20and\x20','getReader','host','TD1\x20','startsWith','expires_at','cache_creation_input_tokens','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20request:','join','setupMiddleware','includes','127.0.0.1','x-td-','consoleUrl','createServer','SKIP_HEADERS','end','server','tdx-claude','http://127.0.0.1:','read','string','entries','handleMessages','setupJsonParser','metadata','write','7ejXLzi','get','type','text/event-stream','status','GET','cache_read_input_tokens','TD\x20LLM\x20Pass-through\x20Proxy\x20Server','no-cache','api_error','refreshTimer','oauth','llmProxyUrl','unref','x-api-key','buildForwardHeaders','handleStreamingResponse','/v1/messages/count_tokens','raw','post','Authorization','toISOString','5268RMxqyj','toLowerCase','Pass-through\x20proxy\x20server\x20stopped','[PASSTHROUGH]\x20Usage:\x20input=','error','/v1/messages','Content-Type','auth','Error\x20body:\x20','|\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|','[PASSTHROUGH]\x20Failed\x20to\x20log\x20usage:','send','port','getAddress','setupRoutes','8400966CCJtGr','isArray',',\x20stream=','[PASSTHROUGH]\x20OAuth\x20token\x20refreshed\x20successfully','headers','4xvsmhu','TimeoutError','outputTokens','profile','authorization','[PASSTHROUGH]\x20Stream\x20error:','[PASSTHROUGH]\x20OAuth\x20token\x20refresh\x20failed:','startTokenRefreshTimer','header','indexOf','timeoutMs','decode','name','length','cacheReadInputTokens','keep-alive','debug','content-length','6OHNJnC','expiresAt','inputTokens','code','has','writeHead','addContentTypeParser','now','[PASSTHROUGH]\x20Forwarding\x20count_tokens\x20to:\x20','refresh_token',',\x20cache_read=','Forwarding\x20to:\x20','messages','_boundPort','text','logger','config','\x20in\x20use,\x20trying\x20next...','usage',',\x20model=','timeout','stop','9244808Bremgf','startPort',',\x20cache_create=','processChunk','info','timeout_error','method','start','[PASSTHROUGH]\x20Upstream\x20error:\x20','148951aKTUwv','Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20','apiKey','url','POST','model','unknown','input_tokens','close','stream_error','420173jwAjfZ','event:\x20error\x0adata:\x20','stringify','system','anthropic-version','Unknown\x20error','732780JzCnlG','Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20','flush','refreshTokenIfNeeded','output_tokens','slice','tdx','refreshToken','Bearer\x20','user-agent','[PASSTHROUGH]\x20','9XZQPLg','Stream\x20interrupted','transfer-encoding','4606143ahsrSf','logUsage',':\x20messages=','handleCountTokens','accessToken','body','stream','EADDRINUSE','parse','1285690lTFKLk','message','access_token','application/json',',\x20output=','register'];a78_0x73e4=function(){return _0x25dd22;};return a78_0x73e4();}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';function a78_0x33e9(_0x1b334f,_0x548fe8){_0x1b334f=_0x1b334f-0x80;const _0x73e4da=a78_0x73e4();let _0x33e9d7=_0x73e4da[_0x1b334f];return _0x33e9d7;}const DEFAULT_TIMEOUT_MS=0x5*0x3c*0x3e8,TDX_SYSTEM_PROMPT='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'+(isExperimentalAvailable()?'|\x20Debug\x20agent\x20issues\x20|\x20tdx-skills:agent-debug\x20|\x0a':'')+a78_0x4f3aaf(0x107);function extractSessionUUID(_0x41e141){const _0x3b6203=_0x41e141['match'](/_session_([a-f0-9-]+)$/i);if(_0x3b6203)return _0x3b6203[0x1];return _0x41e141;}export function injectSystemPrompt(_0x50b74c,_0x20a30a){const _0x159ee5=a78_0x4f3aaf,_0x347aa7=_0x50b74c[_0x159ee5(0xac)];if(!_0x347aa7)return{..._0x50b74c,'system':_0x20a30a};if(typeof _0x347aa7===_0x159ee5(0xe2))return{..._0x50b74c,'system':_0x347aa7+'\x0a\x0a'+_0x20a30a};if(Array[_0x159ee5(0x10e)](_0x347aa7)){const _0x3d8d67={'type':_0x159ee5(0x8e),'text':_0x20a30a};return{..._0x50b74c,'system':[..._0x347aa7,_0x3d8d67]};}return _0x50b74c;}export function shouldInjectSystemPrompt(_0x15c0d4){const _0x12e667=a78_0x4f3aaf;return!_0x15c0d4[_0x12e667(0xff)]()[_0x12e667(0xd7)]('haiku');}const TOKEN_REFRESH_INTERVAL_MS=0x5*0x3c*0x3e8,TOKEN_EXPIRY_BUFFER_MS=0x5*0x3c*0x3e8;export class PassThroughProxyServer{[a78_0x4f3aaf(0xde)];[a78_0x4f3aaf(0x90)];['logger'];['_boundPort'];[a78_0x4f3aaf(0xf2)];constructor(_0x3542db){const _0x2a0b4c=a78_0x4f3aaf;this[_0x2a0b4c(0x90)]=_0x3542db,this[_0x2a0b4c(0x8f)]=_0x3542db[_0x2a0b4c(0x8f)],this[_0x2a0b4c(0xde)]=this['createServer']();}get['port'](){const _0x1e3318=a78_0x4f3aaf;if(this[_0x1e3318(0x8d)]===undefined)throw new Error('Server\x20has\x20not\x20been\x20started\x20yet');return this[_0x1e3318(0x8d)];}[a78_0x4f3aaf(0xdb)](){const _0x4acb83=a78_0x4f3aaf,_0x558b36=a78_0x5e3db9({'logger':![],'bodyLimit':0x40*0x400*0x400});return this[_0x4acb83(0xde)]=_0x558b36,this[_0x4acb83(0xe5)](),this[_0x4acb83(0xd6)](),this[_0x4acb83(0x10c)](),_0x558b36;}[a78_0x4f3aaf(0xe5)](){const _0x3b9787=a78_0x4f3aaf;this['server'][_0x3b9787(0x86)](_0x3b9787(0xc9),{'parseAs':_0x3b9787(0xe2)},(_0x40807d,_0x2ec2cf,_0x210c6a)=>{const _0x5067c9=_0x3b9787;try{const _0x4d4f08=JSON[_0x5067c9(0xc5)](_0x2ec2cf);_0x210c6a(null,_0x4d4f08);}catch(_0x2d0747){_0x210c6a(_0x2d0747,undefined);}});}[a78_0x4f3aaf(0xd6)](){const _0xeba767=a78_0x4f3aaf;this['server'][_0xeba767(0xcb)](a78_0x16c4b0,{'origin':!![],'methods':[_0xeba767(0xed),'POST','OPTIONS'],'allowedHeaders':[_0xeba767(0x104),'Authorization',_0xeba767(0xad),_0xeba767(0xf6)]}),this['server']['setErrorHandler']((_0x3d28a7,_0x1a6cad,_0x3781d4)=>{const _0x503a9a=_0xeba767,_0x3b6306=_0x3d28a7 instanceof Error?_0x3d28a7[_0x503a9a(0xc7)]:'Unknown\x20error';this['logger'][_0x503a9a(0x102)]('[PASSTHROUGH\x20PROXY\x20ERROR]:',_0x3d28a7),_0x3781d4['code'](0x1f4)['send']({'type':_0x503a9a(0x102),'error':{'type':_0x503a9a(0xf1),'message':_0x3b6306}});});}['setupRoutes'](){const _0x23fdf0=a78_0x4f3aaf;this[_0x23fdf0(0xde)][_0x23fdf0(0xe9)]('/health',async()=>{const _0xa75670=_0x23fdf0;return{'status':'ok','message':_0xa75670(0xef)};}),this['server'][_0x23fdf0(0xfb)]('/v1/messages',async(_0x1730b2,_0x3f913e)=>{const _0xb4861b=_0x23fdf0;return this[_0xb4861b(0xe4)](_0x1730b2,_0x3f913e);}),this['server'][_0x23fdf0(0xfb)](_0x23fdf0(0xf9),async(_0x5d89fb,_0x57d771)=>{const _0x536bf0=_0x23fdf0;return this[_0x536bf0(0xc0)](_0x5d89fb,_0x57d771);});}static [a78_0x4f3aaf(0xdc)]=new Set([a78_0x4f3aaf(0xcf),'connection',a78_0x4f3aaf(0x123),a78_0x4f3aaf(0xbc),a78_0x4f3aaf(0x116),a78_0x4f3aaf(0xf6),a78_0x4f3aaf(0xb8)]);[a78_0x4f3aaf(0xf7)](_0x3a2aac){const _0x2d74c5=a78_0x4f3aaf,_0x321653={};for(const [_0x5e4065,_0x285568]of Object[_0x2d74c5(0xe3)](_0x3a2aac[_0x2d74c5(0x111)])){const _0x4ae68=_0x5e4065['toLowerCase']();if(PassThroughProxyServer[_0x2d74c5(0xdc)][_0x2d74c5(0x84)](_0x4ae68))continue;if(_0x4ae68[_0x2d74c5(0xd1)](_0x2d74c5(0xd9)))continue;if(typeof _0x285568==='string')_0x321653[_0x5e4065]=_0x285568;else Array['isArray'](_0x285568)&&(_0x321653[_0x5e4065]=_0x285568[_0x2d74c5(0xd5)](',\x20'));}const _0x275ea4=getVersion(),{auth:_0x3f12ed}=this[_0x2d74c5(0x90)];return _0x321653[_0x2d74c5(0xfc)]=_0x3f12ed[_0x2d74c5(0xea)]===_0x2d74c5(0xf3)?_0x2d74c5(0xb7)+_0x3f12ed[_0x2d74c5(0xc1)]:_0x2d74c5(0xd0)+_0x3f12ed[_0x2d74c5(0xa1)],_0x321653['User-Agent']='tdx/'+_0x275ea4,_0x321653['X-TD-Client']=_0x2d74c5(0xb5),_0x321653['X-TD-Client-Version']=_0x275ea4,_0x321653;}async[a78_0x4f3aaf(0xe4)](_0x58310a,_0x4d5041){const _0x40c03a=a78_0x4f3aaf,_0x4864f8=_0x58310a[_0x40c03a(0xc2)],_0x1f3087=_0x4864f8[_0x40c03a(0xc3)]!==![],_0x33c619=_0x4864f8[_0x40c03a(0xe6)],_0x37e548=_0x33c619?.['user_id']||'default',_0x168d6b=extractSessionUUID(_0x37e548),_0x5d9f82=_0x4864f8[_0x40c03a(0xa4)]||_0x40c03a(0xa5),_0x476692=shouldInjectSystemPrompt(_0x5d9f82)?injectSystemPrompt(_0x4864f8,TDX_SYSTEM_PROMPT):_0x4864f8,_0x247490=JSON['stringify'](_0x476692),_0x55d341=Array[_0x40c03a(0x10e)](_0x4864f8['messages'])?_0x4864f8[_0x40c03a(0x8c)][_0x40c03a(0x11f)]:0x0;this['logger'][_0x40c03a(0x9a)](_0x40c03a(0xb9)+_0x58310a[_0x40c03a(0x9c)]+'\x20'+_0x58310a[_0x40c03a(0xa2)]+_0x40c03a(0xbf)+_0x55d341+_0x40c03a(0x93)+_0x5d9f82+_0x40c03a(0x10f)+_0x1f3087);const _0x3c8290=_0x58310a[_0x40c03a(0xa2)]['includes']('?')?_0x58310a[_0x40c03a(0xa2)][_0x40c03a(0xb4)](_0x58310a['url'][_0x40c03a(0x11b)]('?')):'',_0x4b7b25=this[_0x40c03a(0x90)][_0x40c03a(0xf4)]+_0x40c03a(0x103)+_0x3c8290,_0x1eaca7=this[_0x40c03a(0xf7)](_0x58310a);this[_0x40c03a(0x8f)]['debug'](_0x40c03a(0x8b)+_0x4b7b25);const _0x546006=this[_0x40c03a(0x90)]['timeoutMs']||DEFAULT_TIMEOUT_MS;try{const _0x3bbca1=await fetch(_0x4b7b25,{'method':_0x40c03a(0xa3),'headers':_0x1eaca7,'body':_0x247490,'signal':AbortSignal[_0x40c03a(0x94)](_0x546006)});if(!_0x3bbca1['ok']){const _0x38502b=await _0x3bbca1[_0x40c03a(0x8e)]();return this[_0x40c03a(0x8f)]['error'](_0x40c03a(0x9e)+_0x3bbca1[_0x40c03a(0xec)]+'\x20'+_0x3bbca1['statusText']),this['logger'][_0x40c03a(0x122)](_0x40c03a(0x106)+_0x38502b),_0x4d5041[_0x40c03a(0x83)](_0x3bbca1[_0x40c03a(0xec)]),_0x4d5041[_0x40c03a(0x11a)](_0x40c03a(0x104),_0x3bbca1[_0x40c03a(0x111)][_0x40c03a(0xe9)](_0x40c03a(0x104))||'application/json'),_0x4d5041[_0x40c03a(0x109)](_0x38502b);}if(_0x1f3087&&_0x3bbca1[_0x40c03a(0xc2)])await this[_0x40c03a(0xf8)](_0x3bbca1[_0x40c03a(0xc2)],_0x4d5041,_0x168d6b,_0x5d9f82);else{const _0x5505dd=await _0x3bbca1[_0x40c03a(0x8e)]();_0x4d5041['header'](_0x40c03a(0x104),_0x3bbca1['headers'][_0x40c03a(0xe9)](_0x40c03a(0x104))||_0x40c03a(0xc9));try{const _0x12fac8=JSON[_0x40c03a(0xc5)](_0x5505dd);_0x12fac8[_0x40c03a(0x92)]&&await this['logUsage'](_0x168d6b,_0x5d9f82,_0x12fac8[_0x40c03a(0x92)][_0x40c03a(0xa6)]||0x0,_0x12fac8[_0x40c03a(0x92)][_0x40c03a(0xb3)]||0x0,_0x12fac8[_0x40c03a(0x92)][_0x40c03a(0xd3)],_0x12fac8[_0x40c03a(0x92)][_0x40c03a(0xee)]);}catch{}return _0x4d5041[_0x40c03a(0x109)](_0x5505dd);}}catch(_0x49a6d3){const _0x3b0d53=_0x49a6d3 instanceof Error?_0x49a6d3[_0x40c03a(0xc7)]:'Unknown\x20error',_0x24482e=_0x49a6d3 instanceof Error&&_0x49a6d3[_0x40c03a(0x11e)]==='TimeoutError';this[_0x40c03a(0x8f)][_0x40c03a(0x102)](_0x40c03a(0xd4),_0x49a6d3),_0x4d5041[_0x40c03a(0x83)](_0x24482e?0x1f8:0x1f7)[_0x40c03a(0x109)]({'type':'error','error':{'type':_0x24482e?_0x40c03a(0x9b):_0x40c03a(0xf1),'message':_0x24482e?_0x40c03a(0xa0)+_0x546006+'ms':_0x40c03a(0xb0)+_0x3b0d53}});}}async['handleStreamingResponse'](_0x4214b1,_0x32dac1,_0x454c3e,_0xb6e49b){const _0xd6883c=a78_0x4f3aaf;_0x32dac1['raw'][_0xd6883c(0x85)](0xc8,{'Content-Type':_0xd6883c(0xeb),'Cache-Control':_0xd6883c(0xf0),'Connection':_0xd6883c(0x121)});const _0x4dda49=new SSEUsageTracker(),_0x3833e1=_0x4214b1[_0xd6883c(0xce)](),_0x13031d=new TextDecoder();try{while(!![]){const {done:_0x5ab83a,value:_0x15f4df}=await _0x3833e1[_0xd6883c(0xe1)]();if(_0x5ab83a)break;const _0x37db59=_0x13031d[_0xd6883c(0x11d)](_0x15f4df,{'stream':!![]});_0x4dda49[_0xd6883c(0x99)](_0x37db59),_0x32dac1['raw'][_0xd6883c(0xe7)](_0x37db59);}_0x4dda49[_0xd6883c(0xb1)]();const _0x179f8a=_0x4dda49['getUsage']();(_0x179f8a[_0xd6883c(0x82)]>0x0||_0x179f8a[_0xd6883c(0x114)]>0x0)&&await this[_0xd6883c(0xbe)](_0x454c3e,_0xb6e49b,_0x179f8a['inputTokens'],_0x179f8a['outputTokens'],_0x179f8a['cacheCreationInputTokens'],_0x179f8a[_0xd6883c(0x120)]);}catch(_0xdb848d){this[_0xd6883c(0x8f)][_0xd6883c(0x102)](_0xd6883c(0x117),_0xdb848d);const _0x128d3e=_0xd6883c(0xaa)+JSON[_0xd6883c(0xab)]({'type':_0xd6883c(0x102),'error':{'type':_0xd6883c(0xa8),'message':_0xd6883c(0xbb)}})+'\x0a\x0a';_0x32dac1['raw'][_0xd6883c(0xe7)](_0x128d3e);}finally{_0x32dac1[_0xd6883c(0xfa)][_0xd6883c(0xdd)]();}}async[a78_0x4f3aaf(0xc0)](_0x5a2b72,_0x4b70c7){const _0x1f74fa=a78_0x4f3aaf,_0x15a7f3=_0x5a2b72['body'],_0x14d1e2=_0x5a2b72[_0x1f74fa(0xa2)][_0x1f74fa(0xd7)]('?')?_0x5a2b72['url'][_0x1f74fa(0xb4)](_0x5a2b72['url']['indexOf']('?')):'',_0xf44ebd=this[_0x1f74fa(0x90)][_0x1f74fa(0xf4)]+_0x1f74fa(0xf9)+_0x14d1e2,_0x1291a6=this['buildForwardHeaders'](_0x5a2b72),_0x33491a=_0x15a7f3['model']||_0x1f74fa(0xa5),_0x2f636e=shouldInjectSystemPrompt(_0x33491a)?injectSystemPrompt(_0x15a7f3,TDX_SYSTEM_PROMPT):_0x15a7f3,_0x82ece3=JSON[_0x1f74fa(0xab)](_0x2f636e);this[_0x1f74fa(0x8f)][_0x1f74fa(0x122)](_0x1f74fa(0x88)+_0xf44ebd);const _0x4a1ba9=this[_0x1f74fa(0x90)][_0x1f74fa(0x11c)]||DEFAULT_TIMEOUT_MS;try{const _0x57a3f2=await fetch(_0xf44ebd,{'method':_0x1f74fa(0xa3),'headers':_0x1291a6,'body':_0x82ece3,'signal':AbortSignal[_0x1f74fa(0x94)](_0x4a1ba9)}),_0x230a95=await _0x57a3f2[_0x1f74fa(0x8e)]();return _0x4b70c7[_0x1f74fa(0x83)](_0x57a3f2[_0x1f74fa(0xec)]),_0x4b70c7[_0x1f74fa(0x11a)](_0x1f74fa(0x104),_0x57a3f2[_0x1f74fa(0x111)]['get'](_0x1f74fa(0x104))||_0x1f74fa(0xc9)),_0x4b70c7[_0x1f74fa(0x109)](_0x230a95);}catch(_0x1aadcc){const _0x43a2bf=_0x1aadcc instanceof Error?_0x1aadcc['message']:_0x1f74fa(0xae),_0x2de863=_0x1aadcc instanceof Error&&_0x1aadcc[_0x1f74fa(0x11e)]===_0x1f74fa(0x113);this[_0x1f74fa(0x8f)][_0x1f74fa(0x102)]('[PASSTHROUGH]\x20Failed\x20to\x20forward\x20count_tokens\x20request:',_0x1aadcc),_0x4b70c7[_0x1f74fa(0x83)](_0x2de863?0x1f8:0x1f7)[_0x1f74fa(0x109)]({'type':_0x1f74fa(0x102),'error':{'type':_0x2de863?_0x1f74fa(0x9b):_0x1f74fa(0xf1),'message':_0x2de863?_0x1f74fa(0xa0)+_0x4a1ba9+'ms':'Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20'+_0x43a2bf}});}}async[a78_0x4f3aaf(0xbe)](_0x188526,_0x48454c,_0x49527c,_0x522364,_0x1dd0f1,_0xfb6e4c){const _0x35dcb7=a78_0x4f3aaf,_0x483aca={'timestamp':new Date()[_0x35dcb7(0xfd)](),'model':_0x48454c,'inputTokens':_0x49527c,'outputTokens':_0x522364,'cacheCreationInputTokens':_0x1dd0f1,'cacheReadInputTokens':_0xfb6e4c,'profile':this[_0x35dcb7(0x90)][_0x35dcb7(0x115)],'source':_0x35dcb7(0xdf)},_0x231b14=_0x1dd0f1||_0xfb6e4c?_0x35dcb7(0x98)+(_0x1dd0f1||0x0)+_0x35dcb7(0x8a)+(_0xfb6e4c||0x0):'';this['logger'][_0x35dcb7(0x122)](_0x35dcb7(0x101)+_0x49527c+_0x35dcb7(0xca)+_0x522364+_0x231b14+',\x20model='+_0x48454c);try{await appendUsageEntry(_0x188526,_0x483aca);}catch(_0x3f0795){this[_0x35dcb7(0x8f)][_0x35dcb7(0x102)](_0x35dcb7(0x108),_0x3f0795);}}[a78_0x4f3aaf(0x119)](){const _0x364b3a=a78_0x4f3aaf;if(this[_0x364b3a(0x90)][_0x364b3a(0x105)][_0x364b3a(0xea)]!=='oauth')return;this['refreshTimer']=setInterval(()=>{const _0x37c82a=_0x364b3a;void this[_0x37c82a(0xb2)]();},TOKEN_REFRESH_INTERVAL_MS),this[_0x364b3a(0xf2)][_0x364b3a(0xf5)]();}async['refreshTokenIfNeeded'](){const _0x530595=a78_0x4f3aaf,{auth:_0x195e8a}=this[_0x530595(0x90)];if(_0x195e8a['type']!==_0x530595(0xf3))return;const _0x282468=!_0x195e8a[_0x530595(0x81)]||_0x195e8a[_0x530595(0x81)]<Date[_0x530595(0x87)]()+TOKEN_EXPIRY_BUFFER_MS;if(!_0x282468)return;try{const _0x27032e=await refreshAccessToken(_0x195e8a[_0x530595(0xda)],_0x195e8a[_0x530595(0xb6)]);_0x195e8a['accessToken']=_0x27032e[_0x530595(0xc8)],_0x195e8a['refreshToken']=_0x27032e[_0x530595(0x89)],_0x195e8a[_0x530595(0x81)]=_0x27032e[_0x530595(0xd2)],await saveOAuthTokens(_0x27032e,this[_0x530595(0x90)][_0x530595(0x115)]),this[_0x530595(0x8f)][_0x530595(0x9a)](_0x530595(0x110));}catch(_0x5de2df){this[_0x530595(0x8f)]['error'](_0x530595(0x118),_0x5de2df);}}async[a78_0x4f3aaf(0x9d)](){const _0x570775=a78_0x4f3aaf,_0x30e407=this['config']['maxPortAttempts']??0x64;for(let _0xabccee=0x0;_0xabccee<_0x30e407;_0xabccee++){const _0x5702ca=this['config']['startPort']+_0xabccee;try{await this['server']['listen']({'port':_0x5702ca,'host':_0x570775(0xd8)}),this['_boundPort']=_0x5702ca,this['logger'][_0x570775(0x9a)]('Pass-through\x20proxy\x20server\x20started\x20on\x20port\x20'+_0x5702ca),this['logger'][_0x570775(0x9a)]('Forwarding\x20to:\x20'+this['config'][_0x570775(0xf4)]),this['startTokenRefreshTimer']();return;}catch(_0x45eac8){const _0x256808=_0x45eac8 instanceof Error&&_0x570775(0x83)in _0x45eac8&&_0x45eac8[_0x570775(0x83)]===_0x570775(0xc4);if(!_0x256808)throw _0x45eac8;this[_0x570775(0x8f)]['debug']('Port\x20'+_0x5702ca+_0x570775(0x91)),this[_0x570775(0xdb)]();}}const _0x160d40=this[_0x570775(0x90)][_0x570775(0x97)]+_0x30e407-0x1;throw new Error(_0x570775(0xcc)+this[_0x570775(0x90)][_0x570775(0x97)]+_0x570775(0xcd)+_0x160d40);}async[a78_0x4f3aaf(0x95)](){const _0x47cb96=a78_0x4f3aaf;this[_0x47cb96(0xf2)]&&(clearInterval(this[_0x47cb96(0xf2)]),this[_0x47cb96(0xf2)]=undefined),await this[_0x47cb96(0xde)][_0x47cb96(0xa7)](),this['logger'][_0x47cb96(0x9a)](_0x47cb96(0x100));}[a78_0x4f3aaf(0x10b)](){const _0x353e58=a78_0x4f3aaf;return _0x353e58(0xe0)+this[_0x353e58(0x10a)];}}
@@ -1 +1 @@
1
- const a79_0x16abee=a79_0x45f0;(function(_0x3268e7,_0xc12a3e){const _0x3d3433=a79_0x45f0,_0x19b630=_0x3268e7();while(!![]){try{const _0x413e3a=-parseInt(_0x3d3433(0x111))/0x1*(parseInt(_0x3d3433(0x12e))/0x2)+-parseInt(_0x3d3433(0x12c))/0x3*(parseInt(_0x3d3433(0x12d))/0x4)+parseInt(_0x3d3433(0x123))/0x5*(-parseInt(_0x3d3433(0x119))/0x6)+-parseInt(_0x3d3433(0x10f))/0x7+-parseInt(_0x3d3433(0x11a))/0x8*(parseInt(_0x3d3433(0x12a))/0x9)+-parseInt(_0x3d3433(0x10e))/0xa*(parseInt(_0x3d3433(0x11e))/0xb)+parseInt(_0x3d3433(0x108))/0xc;if(_0x413e3a===_0xc12a3e)break;else _0x19b630['push'](_0x19b630['shift']());}catch(_0x56c32b){_0x19b630['push'](_0x19b630['shift']());}}}(a79_0x1dd6,0x70fb4));function a79_0x45f0(_0x350358,_0x357c4c){_0x350358=_0x350358-0x108;const _0x1dd673=a79_0x1dd6();let _0x45f050=_0x1dd673[_0x350358];return _0x45f050;}function a79_0x1dd6(){const _0x3500c3=['split','1287lkbhjf','type','input_tokens','cacheCreationInputTokens','message','data','cache_creation_input_tokens','message_start','1671294EFrhoV','1592qSClNO','message_delta','flush','startsWith','264QTVraC','usage','onRawUsage','event','pop','5pIZaHi','inputTokens','output_tokens','updateFromUsage','trim','max','cache_read_input_tokens','36657rcTbrl','slice','1107OPRvdG','1604DwVfrY','682BABAuc','buffer','35441400jPQMqg','event:\x20','outputTokens','cacheReadInputTokens','reset','parse','52440haCosF','4822370CMVjFp'];a79_0x1dd6=function(){return _0x3500c3;};return a79_0x1dd6();}export function parseSSEChunk(_0xf31ddc){const _0x1250af=a79_0x45f0,_0x74827c=[],_0x2bfc98=_0xf31ddc[_0x1250af(0x110)]('\x0a\x0a'),_0x4b4262=_0x2bfc98[_0x1250af(0x122)]()||'';for(const _0x393115 of _0x2bfc98){if(!_0x393115[_0x1250af(0x127)]())continue;const _0x23b7be={},_0x20e1d3=_0x393115[_0x1250af(0x110)]('\x0a');for(const _0x20c4a4 of _0x20e1d3){if(_0x20c4a4[_0x1250af(0x11d)](_0x1250af(0x109)))_0x23b7be['event']=_0x20c4a4[_0x1250af(0x12b)](0x7);else _0x20c4a4['startsWith']('data:\x20')&&(_0x23b7be[_0x1250af(0x116)]=_0x20c4a4['slice'](0x6));}(_0x23b7be['event']||_0x23b7be[_0x1250af(0x116)])&&_0x74827c['push'](_0x23b7be);}return{'events':_0x74827c,'remaining':_0x4b4262};}export function extractMessageStartUsage(_0x36ef20){const _0x561582=a79_0x45f0;try{const _0x1dd3e2=JSON[_0x561582(0x10d)](_0x36ef20);if(_0x1dd3e2[_0x561582(0x112)]===_0x561582(0x118)&&_0x1dd3e2[_0x561582(0x115)]?.[_0x561582(0x11f)]){const _0x35cd95=_0x1dd3e2[_0x561582(0x115)][_0x561582(0x11f)];return{'inputTokens':_0x35cd95[_0x561582(0x113)]||0x0,'outputTokens':_0x35cd95['output_tokens']||0x0,'cacheCreationInputTokens':_0x35cd95[_0x561582(0x117)],'cacheReadInputTokens':_0x35cd95['cache_read_input_tokens']};}}catch{}return null;}export function extractMessageDeltaUsage(_0x1355a7){const _0x58ed32=a79_0x45f0;try{const _0x4b0d75=JSON[_0x58ed32(0x10d)](_0x1355a7);if(_0x4b0d75[_0x58ed32(0x112)]===_0x58ed32(0x11b)&&_0x4b0d75['usage']){const _0x399e7a=_0x4b0d75[_0x58ed32(0x11f)];return{'inputTokens':_0x399e7a[_0x58ed32(0x113)]||0x0,'outputTokens':_0x399e7a[_0x58ed32(0x125)]||0x0,'cacheCreationInputTokens':_0x399e7a[_0x58ed32(0x117)],'cacheReadInputTokens':_0x399e7a[_0x58ed32(0x129)]};}}catch{}return null;}export function extractUsageFromEvent(_0x97e461){const _0x2a17a6=a79_0x45f0;if(!_0x97e461[_0x2a17a6(0x116)])return null;if(_0x97e461[_0x2a17a6(0x121)]===_0x2a17a6(0x118))return extractMessageStartUsage(_0x97e461[_0x2a17a6(0x116)]);if(_0x97e461[_0x2a17a6(0x121)]===_0x2a17a6(0x11b))return extractMessageDeltaUsage(_0x97e461[_0x2a17a6(0x116)]);return null;}export class SSEUsageTracker{[a79_0x16abee(0x124)]=0x0;[a79_0x16abee(0x10a)]=0x0;[a79_0x16abee(0x114)];[a79_0x16abee(0x10b)];[a79_0x16abee(0x12f)]='';['updateFromUsage'](_0x1f67c0){const _0x11f6c8=a79_0x16abee;this[_0x11f6c8(0x124)]=Math[_0x11f6c8(0x128)](this[_0x11f6c8(0x124)],_0x1f67c0[_0x11f6c8(0x124)]),this['outputTokens']=Math[_0x11f6c8(0x128)](this['outputTokens'],_0x1f67c0[_0x11f6c8(0x10a)]),_0x1f67c0[_0x11f6c8(0x114)]!==undefined&&(this[_0x11f6c8(0x114)]=Math[_0x11f6c8(0x128)](this['cacheCreationInputTokens']??0x0,_0x1f67c0[_0x11f6c8(0x114)])),_0x1f67c0[_0x11f6c8(0x10b)]!==undefined&&(this[_0x11f6c8(0x10b)]=Math['max'](this['cacheReadInputTokens']??0x0,_0x1f67c0[_0x11f6c8(0x10b)]));}[a79_0x16abee(0x120)];['processChunk'](_0x270443){const _0x30ec97=a79_0x16abee;this['buffer']+=_0x270443;const {events:_0x400040,remaining:_0xc4942c}=parseSSEChunk(this['buffer']);this[_0x30ec97(0x12f)]=_0xc4942c;for(const _0x41def7 of _0x400040){const _0x581c81=extractUsageFromEvent(_0x41def7);_0x581c81&&(this['onRawUsage']?.(_0x41def7[_0x30ec97(0x121)]||'unknown',_0x41def7[_0x30ec97(0x116)]||'',_0x581c81),this[_0x30ec97(0x126)](_0x581c81));}return _0x270443;}[a79_0x16abee(0x11c)](){const _0x2e7fc1=a79_0x16abee;if(this['buffer'][_0x2e7fc1(0x127)]()){const {events:_0x5bc96b}=parseSSEChunk(this[_0x2e7fc1(0x12f)]+'\x0a\x0a');for(const _0x2f633e of _0x5bc96b){const _0x14766d=extractUsageFromEvent(_0x2f633e);_0x14766d&&this[_0x2e7fc1(0x126)](_0x14766d);}this[_0x2e7fc1(0x12f)]='';}}['getUsage'](){const _0x429ec9=a79_0x16abee;return{'inputTokens':this[_0x429ec9(0x124)],'outputTokens':this['outputTokens'],'cacheCreationInputTokens':this[_0x429ec9(0x114)],'cacheReadInputTokens':this[_0x429ec9(0x10b)]};}[a79_0x16abee(0x10c)](){const _0x3d43b7=a79_0x16abee;this[_0x3d43b7(0x124)]=0x0,this[_0x3d43b7(0x10a)]=0x0,this[_0x3d43b7(0x114)]=undefined,this[_0x3d43b7(0x10b)]=undefined,this['buffer']='';}}
1
+ const a79_0x4cab86=a79_0x2117;function a79_0x2d1f(){const _0x347479=['inputTokens','pop','updateFromUsage','getUsage','output_tokens','message_start','onRawUsage','unknown','182UonUYy','6700985XSopdV','9502263lVNEWb','trim','max','startsWith','4401078CCgUfR','flush','5964012CxalYq','cache_read_input_tokens','cache_creation_input_tokens','reset','split','5SstIXs','5790tdhkWj','56782nrTblN','cacheCreationInputTokens','data','parse','input_tokens','event','cacheReadInputTokens','outputTokens','type','buffer','slice','8wSxBCS','message_delta','data:\x20','710UephPc','usage','processChunk','574242mRekPo','message'];a79_0x2d1f=function(){return _0x347479;};return a79_0x2d1f();}(function(_0x1a56d9,_0x4aba77){const _0x5d8f71=a79_0x2117,_0x420033=_0x1a56d9();while(!![]){try{const _0x2c3658=parseInt(_0x5d8f71(0x187))/0x1*(parseInt(_0x5d8f71(0x19a))/0x2)+-parseInt(_0x5d8f71(0x1aa))/0x3+parseInt(_0x5d8f71(0x1ac))/0x4+-parseInt(_0x5d8f71(0x1a5))/0x5+parseInt(_0x5d8f71(0x188))/0x6*(parseInt(_0x5d8f71(0x1a4))/0x7)+-parseInt(_0x5d8f71(0x194))/0x8*(-parseInt(_0x5d8f71(0x1a6))/0x9)+-parseInt(_0x5d8f71(0x197))/0xa*(parseInt(_0x5d8f71(0x189))/0xb);if(_0x2c3658===_0x4aba77)break;else _0x420033['push'](_0x420033['shift']());}catch(_0x5b8e91){_0x420033['push'](_0x420033['shift']());}}}(a79_0x2d1f,0xcb8f4));function a79_0x2117(_0x4346d1,_0x496c65){_0x4346d1=_0x4346d1-0x187;const _0x2d1fba=a79_0x2d1f();let _0x211780=_0x2d1fba[_0x4346d1];return _0x211780;}export function parseSSEChunk(_0x427475){const _0x5c1632=a79_0x2117,_0x1e033e=[],_0xa69b41=_0x427475[_0x5c1632(0x1b0)]('\x0a\x0a'),_0x4cd2a2=_0xa69b41[_0x5c1632(0x19d)]()||'';for(const _0x51065d of _0xa69b41){if(!_0x51065d[_0x5c1632(0x1a7)]())continue;const _0x10e540={},_0x5d4ffa=_0x51065d[_0x5c1632(0x1b0)]('\x0a');for(const _0x295d35 of _0x5d4ffa){if(_0x295d35[_0x5c1632(0x1a9)]('event:\x20'))_0x10e540['event']=_0x295d35[_0x5c1632(0x193)](0x7);else _0x295d35['startsWith'](_0x5c1632(0x196))&&(_0x10e540[_0x5c1632(0x18b)]=_0x295d35[_0x5c1632(0x193)](0x6));}(_0x10e540[_0x5c1632(0x18e)]||_0x10e540[_0x5c1632(0x18b)])&&_0x1e033e['push'](_0x10e540);}return{'events':_0x1e033e,'remaining':_0x4cd2a2};}export function extractMessageStartUsage(_0x250905){const _0x44c912=a79_0x2117;try{const _0x2a54d8=JSON[_0x44c912(0x18c)](_0x250905);if(_0x2a54d8['type']===_0x44c912(0x1a1)&&_0x2a54d8[_0x44c912(0x19b)]?.[_0x44c912(0x198)]){const _0x30a787=_0x2a54d8['message']['usage'];return{'inputTokens':_0x30a787[_0x44c912(0x18d)]||0x0,'outputTokens':_0x30a787[_0x44c912(0x1a0)]||0x0,'cacheCreationInputTokens':_0x30a787[_0x44c912(0x1ae)],'cacheReadInputTokens':_0x30a787[_0x44c912(0x1ad)]};}}catch{}return null;}export function extractMessageDeltaUsage(_0x46fbf0){const _0x39d137=a79_0x2117;try{const _0x3d3fbf=JSON[_0x39d137(0x18c)](_0x46fbf0);if(_0x3d3fbf[_0x39d137(0x191)]===_0x39d137(0x195)&&_0x3d3fbf[_0x39d137(0x198)]){const _0x282a38=_0x3d3fbf[_0x39d137(0x198)];return{'inputTokens':_0x282a38[_0x39d137(0x18d)]||0x0,'outputTokens':_0x282a38[_0x39d137(0x1a0)]||0x0,'cacheCreationInputTokens':_0x282a38['cache_creation_input_tokens'],'cacheReadInputTokens':_0x282a38[_0x39d137(0x1ad)]};}}catch{}return null;}export function extractUsageFromEvent(_0xc0d44e){const _0x32075f=a79_0x2117;if(!_0xc0d44e[_0x32075f(0x18b)])return null;if(_0xc0d44e[_0x32075f(0x18e)]==='message_start')return extractMessageStartUsage(_0xc0d44e[_0x32075f(0x18b)]);if(_0xc0d44e[_0x32075f(0x18e)]==='message_delta')return extractMessageDeltaUsage(_0xc0d44e[_0x32075f(0x18b)]);return null;}export class SSEUsageTracker{[a79_0x4cab86(0x19c)]=0x0;[a79_0x4cab86(0x190)]=0x0;['cacheCreationInputTokens'];[a79_0x4cab86(0x18f)];[a79_0x4cab86(0x192)]='';[a79_0x4cab86(0x19e)](_0x37c0e7){const _0x389160=a79_0x4cab86;this[_0x389160(0x19c)]=Math['max'](this[_0x389160(0x19c)],_0x37c0e7[_0x389160(0x19c)]),this[_0x389160(0x190)]=Math[_0x389160(0x1a8)](this[_0x389160(0x190)],_0x37c0e7[_0x389160(0x190)]),_0x37c0e7[_0x389160(0x18a)]!==undefined&&(this[_0x389160(0x18a)]=Math[_0x389160(0x1a8)](this[_0x389160(0x18a)]??0x0,_0x37c0e7[_0x389160(0x18a)])),_0x37c0e7[_0x389160(0x18f)]!==undefined&&(this[_0x389160(0x18f)]=Math[_0x389160(0x1a8)](this[_0x389160(0x18f)]??0x0,_0x37c0e7[_0x389160(0x18f)]));}[a79_0x4cab86(0x1a2)];[a79_0x4cab86(0x199)](_0x168a9f){const _0x54dcbb=a79_0x4cab86;this['buffer']+=_0x168a9f;const {events:_0x26ea67,remaining:_0x242116}=parseSSEChunk(this[_0x54dcbb(0x192)]);this['buffer']=_0x242116;for(const _0x44943c of _0x26ea67){const _0x13d977=extractUsageFromEvent(_0x44943c);_0x13d977&&(this[_0x54dcbb(0x1a2)]?.(_0x44943c[_0x54dcbb(0x18e)]||_0x54dcbb(0x1a3),_0x44943c[_0x54dcbb(0x18b)]||'',_0x13d977),this[_0x54dcbb(0x19e)](_0x13d977));}return _0x168a9f;}[a79_0x4cab86(0x1ab)](){const _0x53e80=a79_0x4cab86;if(this[_0x53e80(0x192)][_0x53e80(0x1a7)]()){const {events:_0x28c431}=parseSSEChunk(this[_0x53e80(0x192)]+'\x0a\x0a');for(const _0x4fc28c of _0x28c431){const _0x36bccd=extractUsageFromEvent(_0x4fc28c);_0x36bccd&&this[_0x53e80(0x19e)](_0x36bccd);}this[_0x53e80(0x192)]='';}}[a79_0x4cab86(0x19f)](){const _0x301908=a79_0x4cab86;return{'inputTokens':this[_0x301908(0x19c)],'outputTokens':this['outputTokens'],'cacheCreationInputTokens':this['cacheCreationInputTokens'],'cacheReadInputTokens':this[_0x301908(0x18f)]};}[a79_0x4cab86(0x1af)](){const _0x24afba=a79_0x4cab86;this[_0x24afba(0x19c)]=0x0,this[_0x24afba(0x190)]=0x0,this['cacheCreationInputTokens']=undefined,this['cacheReadInputTokens']=undefined,this[_0x24afba(0x192)]='';}}