@treasuredata/tdx 2026.4.0 → 2026.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (219) hide show
  1. package/dist/bin.js +1 -1
  2. package/dist/build-info.json +3 -3
  3. package/dist/cli-categories.js +1 -1
  4. package/dist/cli.js +1 -1
  5. package/dist/commands/activations.js +1 -1
  6. package/dist/commands/agent-command.js +1 -1
  7. package/dist/commands/agent-test-command.js +1 -1
  8. package/dist/commands/api-command.js +1 -1
  9. package/dist/commands/auth-command.js +1 -1
  10. package/dist/commands/cas-command.js +1 -1
  11. package/dist/commands/cas-segment-command.js +1 -1
  12. package/dist/commands/chat-command.js +1 -1
  13. package/dist/commands/claude-command.js +1 -1
  14. package/dist/commands/claude-statusline-command.js +1 -1
  15. package/dist/commands/claude-usage-command.js +1 -1
  16. package/dist/commands/command.js +1 -1
  17. package/dist/commands/connection-command.js +1 -1
  18. package/dist/commands/databases.js +1 -1
  19. package/dist/commands/delivery-command.js +1 -1
  20. package/dist/commands/describe.js +1 -1
  21. package/dist/commands/engage-campaign-pull-command.js +1 -1
  22. package/dist/commands/engage-campaign-push-command.js +1 -1
  23. package/dist/commands/engage-campaign-validate-command.js +1 -1
  24. package/dist/commands/engage-command.js +1 -1
  25. package/dist/commands/engage-template-pull-command.js +1 -1
  26. package/dist/commands/engage-template-push-command.js +1 -1
  27. package/dist/commands/engage-template-validate-command.js +1 -1
  28. package/dist/commands/job-command.js +1 -1
  29. package/dist/commands/journey-command.js +1 -1
  30. package/dist/commands/journey-validate-command.js +1 -1
  31. package/dist/commands/llm-command.js +1 -1
  32. package/dist/commands/mcp-command.js +1 -1
  33. package/dist/commands/parent-segment-command.js +1 -1
  34. package/dist/commands/policy-command.js +1 -1
  35. package/dist/commands/profile-command.js +1 -1
  36. package/dist/commands/profiles-command.js +1 -1
  37. package/dist/commands/query-command.js +1 -1
  38. package/dist/commands/schedule-command.js +1 -1
  39. package/dist/commands/segment-command.js +1 -1
  40. package/dist/commands/segment-create-command.js +1 -1
  41. package/dist/commands/segment-fields-command.js +1 -1
  42. package/dist/commands/segment-pull-command.js +1 -1
  43. package/dist/commands/segment-push-command.js +1 -1
  44. package/dist/commands/segment-update-command.js +1 -1
  45. package/dist/commands/segment-use-command.js +1 -1
  46. package/dist/commands/segment-validate-command.js +1 -1
  47. package/dist/commands/segments.js +1 -1
  48. package/dist/commands/show.js +1 -1
  49. package/dist/commands/status-command.js +1 -1
  50. package/dist/commands/tables.js +1 -1
  51. package/dist/commands/unset-command.js +1 -1
  52. package/dist/commands/upgrade-command.js +1 -1
  53. package/dist/commands/use-command.js +1 -1
  54. package/dist/commands/user-command.js +1 -1
  55. package/dist/commands/work-command.js +1 -1
  56. package/dist/commands/workflow-command.js +1 -1
  57. package/dist/core/auth.js +1 -1
  58. package/dist/core/command-output.js +1 -1
  59. package/dist/core/config.js +1 -1
  60. package/dist/core/connection-cache.js +1 -1
  61. package/dist/core/constants.js +1 -1
  62. package/dist/core/credential-cache.js +1 -1
  63. package/dist/core/global-context.js +1 -1
  64. package/dist/core/keychain.js +1 -1
  65. package/dist/core/oauth-keychain.js +1 -1
  66. package/dist/core/oauth.js +1 -1
  67. package/dist/core/profile.js +1 -1
  68. package/dist/core/project-config.js +1 -1
  69. package/dist/core/session.js +1 -1
  70. package/dist/core/user-cache.js +1 -1
  71. package/dist/core/version.js +1 -1
  72. package/dist/index.js +1 -1
  73. package/dist/mcp/server.js +1 -1
  74. package/dist/mcp/tools/index.js +1 -1
  75. package/dist/mcp/tools/tdx-run.js +1 -1
  76. package/dist/mcp/tools/tdx-search.js +1 -1
  77. package/dist/mcp/tools/work-create-item.js +1 -1
  78. package/dist/mcp/utils.js +1 -1
  79. package/dist/proxy/claude-usage-tracker.js +1 -1
  80. package/dist/proxy/passthrough-server.js +1 -1
  81. package/dist/proxy/sse-usage-parser.js +1 -1
  82. package/dist/sdk/agent/agent-config.js +1 -1
  83. package/dist/sdk/agent/agent-ref-parser.js +1 -1
  84. package/dist/sdk/agent/agent-yaml.js +1 -1
  85. package/dist/sdk/agent/test/evaluator.js +1 -1
  86. package/dist/sdk/agent/test/executor.js +1 -1
  87. package/dist/sdk/agent/test/index.js +1 -1
  88. package/dist/sdk/agent/test/output.js +1 -1
  89. package/dist/sdk/agent/test/parser.js +1 -1
  90. package/dist/sdk/agent/tool-target-registry.js +1 -1
  91. package/dist/sdk/api.js +1 -1
  92. package/dist/sdk/cas/cas-api-client.js +1 -1
  93. package/dist/sdk/cas/cas-audience-yaml.js +1 -1
  94. package/dist/sdk/cas/cas-segment-yaml.js +1 -1
  95. package/dist/sdk/cas/index.js +1 -1
  96. package/dist/sdk/cas/pull-workflow.js +1 -1
  97. package/dist/sdk/cas/push-workflow.js +1 -1
  98. package/dist/sdk/client/cdp-api-client.js +1 -1
  99. package/dist/sdk/client/delivery-api-client.js +1 -1
  100. package/dist/sdk/client/endpoints.js +1 -1
  101. package/dist/sdk/client/engage-api-client.js +1 -1
  102. package/dist/sdk/client/http-client.js +1 -1
  103. package/dist/sdk/client/llm-api-client.js +1 -1
  104. package/dist/sdk/client/oauth-refresh.js +1 -1
  105. package/dist/sdk/client/rate-limiter.js +1 -1
  106. package/dist/sdk/client/td-api-client.js +1 -1
  107. package/dist/sdk/client/trino-api-client.js +1 -1
  108. package/dist/sdk/client/workflow-client.js +1 -1
  109. package/dist/sdk/connection-validator.js +1 -1
  110. package/dist/sdk/connection.js +1 -1
  111. package/dist/sdk/delivery.js +1 -1
  112. package/dist/sdk/engage/campaign-pull.js +1 -1
  113. package/dist/sdk/engage/campaign-push.js +1 -1
  114. package/dist/sdk/engage/campaign-validator.js +1 -1
  115. package/dist/sdk/engage/campaign-yaml.js +1 -1
  116. package/dist/sdk/engage/template-pull.js +1 -1
  117. package/dist/sdk/engage/template-push.js +1 -1
  118. package/dist/sdk/engage/template-validator.js +1 -1
  119. package/dist/sdk/engage/template-yaml.js +1 -1
  120. package/dist/sdk/engage/types/campaign-def.js +1 -1
  121. package/dist/sdk/engage/types/campaign-schema.js +1 -1
  122. package/dist/sdk/engage/types/template-schema.js +1 -1
  123. package/dist/sdk/engage.js +1 -1
  124. package/dist/sdk/errors.js +1 -1
  125. package/dist/sdk/index.js +1 -1
  126. package/dist/sdk/io/index.js +1 -1
  127. package/dist/sdk/io/node-filesystem.js +1 -1
  128. package/dist/sdk/job.js +1 -1
  129. package/dist/sdk/journey.js +1 -1
  130. package/dist/sdk/llm/chat-cache.js +1 -1
  131. package/dist/sdk/llm/index.js +1 -1
  132. package/dist/sdk/llm/llm-backup-utils.js +1 -1
  133. package/dist/sdk/llm/model-factors.js +1 -1
  134. package/dist/sdk/personalization.js +1 -1
  135. package/dist/sdk/policy.js +1 -1
  136. package/dist/sdk/query/index.js +1 -1
  137. package/dist/sdk/query/sql-parser.js +1 -1
  138. package/dist/sdk/realtime.js +1 -1
  139. package/dist/sdk/schedule.js +1 -1
  140. package/dist/sdk/segment/child-segment-yaml.js +1 -1
  141. package/dist/sdk/segment/fields-display.js +1 -1
  142. package/dist/sdk/segment/file-discovery.js +1 -1
  143. package/dist/sdk/segment/journey-utils.js +1 -1
  144. package/dist/sdk/segment/journey-validator.js +1 -1
  145. package/dist/sdk/segment/journey-yaml.js +1 -1
  146. package/dist/sdk/segment/parent-segment-preview.js +1 -1
  147. package/dist/sdk/segment/parent-segment-yaml.js +1 -1
  148. package/dist/sdk/segment/pull-workflow.js +1 -1
  149. package/dist/sdk/segment/push-recovery.js +1 -1
  150. package/dist/sdk/segment/push-workflow.js +1 -1
  151. package/dist/sdk/segment/resolution-context.js +1 -1
  152. package/dist/sdk/segment/segment-path-parser.js +1 -1
  153. package/dist/sdk/segment/segment-ref-parser.js +1 -1
  154. package/dist/sdk/segment/segment-validator.js +1 -1
  155. package/dist/sdk/segment/target-resolution.js +1 -1
  156. package/dist/sdk/segment/tdx-config.js +1 -1
  157. package/dist/sdk/segment/types/activation-schema.js +1 -1
  158. package/dist/sdk/segment/types/journey-def.js +1 -1
  159. package/dist/sdk/segment/types/journey-schema.js +1 -1
  160. package/dist/sdk/segment/types/segment-def.js +1 -1
  161. package/dist/sdk/segment/types/segment-schema.js +1 -1
  162. package/dist/sdk/segment/validate-files.js +1 -1
  163. package/dist/sdk/segment/yaml-validator.js +1 -1
  164. package/dist/sdk/segment.js +1 -1
  165. package/dist/sdk/types/index.js +1 -1
  166. package/dist/sdk/types/progress.js +1 -1
  167. package/dist/sdk/types/workspace.js +1 -1
  168. package/dist/sdk/user.js +1 -1
  169. package/dist/sdk/util/format-detector.js +1 -1
  170. package/dist/sdk/util/formatters.js +1 -1
  171. package/dist/sdk/util/index.js +1 -1
  172. package/dist/sdk/util/paginate.js +1 -1
  173. package/dist/sdk/util/tree-formatter.js +1 -1
  174. package/dist/sdk/workflow/archive-validation.js +1 -1
  175. package/dist/sdk/workflow/clone-workflow.js +1 -1
  176. package/dist/sdk/workflow/index.js +1 -1
  177. package/dist/sdk/workflow/pull-workflow.js +1 -1
  178. package/dist/sdk/workflow/push-workflow.js +1 -1
  179. package/dist/sdk/workflow/tdx-config.js +1 -1
  180. package/dist/sdk/workflow/workflow-utils.js +1 -1
  181. package/dist/sdk/workspace/frontmatter.js +1 -1
  182. package/dist/sdk/workspace/git.js +1 -1
  183. package/dist/sdk/workspace/index.js +1 -1
  184. package/dist/sdk/workspace/templates.js +1 -1
  185. package/dist/sdk/workspace/weekly.js +1 -1
  186. package/dist/sdk/workspace/wikilinks.js +1 -1
  187. package/dist/test-utils/command-runner.js +1 -1
  188. package/dist/test-utils/factories.js +1 -1
  189. package/dist/test-utils/fixtures.js +1 -1
  190. package/dist/test-utils/http-mock.js +1 -1
  191. package/dist/test-utils/index.js +1 -1
  192. package/dist/utils/async.js +1 -1
  193. package/dist/utils/colors.js +1 -1
  194. package/dist/utils/diff.js +1 -1
  195. package/dist/utils/file-permissions.js +1 -1
  196. package/dist/utils/file-reader.js +1 -1
  197. package/dist/utils/github-releases.js +1 -1
  198. package/dist/utils/global-cache.js +1 -1
  199. package/dist/utils/json-loader.js +1 -1
  200. package/dist/utils/local-cache.js +1 -1
  201. package/dist/utils/logger/formatters/default-formatter.js +1 -1
  202. package/dist/utils/logger/formatters/index.js +1 -1
  203. package/dist/utils/logger/handlers/console-handler.js +1 -1
  204. package/dist/utils/logger/handlers/file-handler.js +1 -1
  205. package/dist/utils/logger/handlers/index.js +1 -1
  206. package/dist/utils/logger/handlers/null-handler.js +1 -1
  207. package/dist/utils/logger/index.js +1 -1
  208. package/dist/utils/logger/logger.js +1 -1
  209. package/dist/utils/logger/types.js +1 -1
  210. package/dist/utils/option-validation.js +1 -1
  211. package/dist/utils/process.js +1 -1
  212. package/dist/utils/prompt.js +1 -1
  213. package/dist/utils/spinner.js +1 -1
  214. package/dist/utils/sse-parser.js +1 -1
  215. package/dist/utils/string-utils.js +1 -1
  216. package/dist/utils/table-ref-parser.js +1 -1
  217. package/dist/utils/tdx-logger.js +1 -1
  218. package/dist/utils/version-check.js +1 -1
  219. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- (function(_0x5a5223,_0x3727fc){var _0x395239=a70_0x2b2d,_0x241a86=_0x5a5223();while(!![]){try{var _0x450731=-parseInt(_0x395239(0x1e5))/0x1*(-parseInt(_0x395239(0x1e6))/0x2)+-parseInt(_0x395239(0x1ec))/0x3+-parseInt(_0x395239(0x1e3))/0x4+-parseInt(_0x395239(0x1e2))/0x5*(-parseInt(_0x395239(0x1ea))/0x6)+parseInt(_0x395239(0x1eb))/0x7*(parseInt(_0x395239(0x1e7))/0x8)+parseInt(_0x395239(0x1e8))/0x9+parseInt(_0x395239(0x1e9))/0xa*(-parseInt(_0x395239(0x1e4))/0xb);if(_0x450731===_0x3727fc)break;else _0x241a86['push'](_0x241a86['shift']());}catch(_0x236204){_0x241a86['push'](_0x241a86['shift']());}}}(a70_0x32dc,0xe33e7));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_0x32dc(){var _0x257821=['2121QzqzJf','1354242NdkDjS','7275635zGPWjM','1698936SxHFzR','1749cqEbTR','670686vYRqdC','2YHVObs','44296CkyVCW','12286368WPxbBA','211430iuwqRQ','6GjMoMO'];a70_0x32dc=function(){return _0x257821;};return a70_0x32dc();}export*from'./commands/tables.js';export*from'./commands/segments.js';export*from'./commands/activations.js';function a70_0x2b2d(_0x455914,_0x316f2a){_0x455914=_0x455914-0x1e2;var _0x32dcae=a70_0x32dc();var _0x2b2d9a=_0x32dcae[_0x455914];return _0x2b2d9a;}export*from'./commands/show.js';export*from'./commands/describe.js';export*from'./sdk/index.js';
1
+ (function(_0x5d0cc3,_0x5d195a){var _0x1f31a5=a70_0x21f7,_0x28e207=_0x5d0cc3();while(!![]){try{var _0x46be94=-parseInt(_0x1f31a5(0x11e))/0x1*(parseInt(_0x1f31a5(0x123))/0x2)+parseInt(_0x1f31a5(0x11a))/0x3*(parseInt(_0x1f31a5(0x11c))/0x4)+-parseInt(_0x1f31a5(0x11f))/0x5*(-parseInt(_0x1f31a5(0x11d))/0x6)+parseInt(_0x1f31a5(0x117))/0x7*(parseInt(_0x1f31a5(0x121))/0x8)+parseInt(_0x1f31a5(0x119))/0x9*(parseInt(_0x1f31a5(0x118))/0xa)+-parseInt(_0x1f31a5(0x120))/0xb*(-parseInt(_0x1f31a5(0x11b))/0xc)+parseInt(_0x1f31a5(0x122))/0xd;if(_0x46be94===_0x5d195a)break;else _0x28e207['push'](_0x28e207['shift']());}catch(_0x48b655){_0x28e207['push'](_0x28e207['shift']());}}}(a70_0x3ec8,0x9bd1b));export*from'./sdk/types/index.js';function a70_0x21f7(_0x194af0,_0x2483ce){_0x194af0=_0x194af0-0x117;var _0x3ec825=a70_0x3ec8();var _0x21f701=_0x3ec825[_0x194af0];return _0x21f701;}function a70_0x3ec8(){var _0x25482a=['115374DHPIBP','12281MOONsg','5cVZidT','5918TuXewK','96SDRfox','1046760wdPnIh','194zGyVjQ','62384XgfBVN','435020brvmTp','207ZYkZzH','1487469NguSwO','2820dtItrz','4ykWfPR'];a70_0x3ec8=function(){return _0x25482a;};return a70_0x3ec8();}export*from'./core/config.js';export*from'./core/auth.js';export*from'./sdk/client/http-client.js';export*from'./sdk/client/td-api-client.js';export{TrinoApiClient}from'./sdk/client/trino-api-client.js';export*from'./sdk/client/rate-limiter.js';export*from'./sdk/types/trino.js';export*from'./commands/command.js';export*from'./commands/query-command.js';export*from'./commands/databases.js';export*from'./commands/tables.js';export*from'./commands/segments.js';export*from'./commands/activations.js';export*from'./commands/show.js';export*from'./commands/describe.js';export*from'./sdk/index.js';
@@ -1 +1 @@
1
- (function(_0x976599,_0xa703a5){const _0x5673be=a71_0x14e9,_0x4b5d2e=_0x976599();while(!![]){try{const _0x1251c0=-parseInt(_0x5673be(0xfa))/0x1+-parseInt(_0x5673be(0x110))/0x2+parseInt(_0x5673be(0xf4))/0x3*(-parseInt(_0x5673be(0x103))/0x4)+parseInt(_0x5673be(0x112))/0x5*(-parseInt(_0x5673be(0x11a))/0x6)+parseInt(_0x5673be(0xef))/0x7+-parseInt(_0x5673be(0x10c))/0x8+parseInt(_0x5673be(0xee))/0x9*(parseInt(_0x5673be(0xf9))/0xa);if(_0x1251c0===_0xa703a5)break;else _0x4b5d2e['push'](_0x4b5d2e['shift']());}catch(_0x25ea6d){_0x4b5d2e['push'](_0x4b5d2e['shift']());}}}(a71_0x55df,0x5bfc3));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';function a71_0x14e9(_0x5765e3,_0x41e726){_0x5765e3=_0x5765e3-0xe7;const _0x55df62=a71_0x55df();let _0x14e946=_0x55df62[_0x5765e3];return _0x14e946;}export function createMCPServer(_0x39ae01={}){const _0x48d55f=a71_0x14e9,_0xb84ca=new McpServer({'name':_0x48d55f(0xea),'version':_0x48d55f(0x10b)});return _0xb84ca[_0x48d55f(0x10d)](_0x48d55f(0x106),{'description':_0x48d55f(0xfb),'inputSchema':{'args':z[_0x48d55f(0xed)](z['string']())[_0x48d55f(0x108)]('Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])')}},async({args:_0x4775ce})=>{const _0x342db8=_0x48d55f,_0x62e7c9=await executeTdxRun({'args':_0x4775ce},_0x39ae01[_0x342db8(0x113)]||{});return _0x62e7c9[_0x342db8(0xf8)]?{'content':[{'type':_0x342db8(0xf5),'text':_0x62e7c9[_0x342db8(0xf2)]||_0x342db8(0x119)}]}:{'content':[{'type':_0x342db8(0xf5),'text':_0x62e7c9[_0x342db8(0x10f)]||_0x62e7c9[_0x342db8(0xf2)]||'Command\x20failed'}],'isError':!![]};}),_0xb84ca[_0x48d55f(0x10d)]('tdx_search',{'description':_0x48d55f(0x101),'inputSchema':{'query':z[_0x48d55f(0xe9)]()[_0x48d55f(0x108)](_0x48d55f(0x114)),'category':z[_0x48d55f(0xf3)]([_0x48d55f(0xeb),_0x48d55f(0xfc),'AI',_0x48d55f(0x109),'Utilities'])[_0x48d55f(0x102)]()[_0x48d55f(0x108)]('Optional\x20filter\x20by\x20category')}},async({query:_0x227590,category:_0x17135c})=>{const _0x1c0d36=_0x48d55f,_0x2fcb18=searchCommands({'query':_0x227590,'category':_0x17135c});if(_0x2fcb18[_0x1c0d36(0xf1)]===0x0)return{'content':[{'type':_0x1c0d36(0xf5),'text':_0x1c0d36(0x100)+_0x227590+'\x22'}]};const _0x2760a4=_0x2fcb18[_0x1c0d36(0x10a)](_0x99a7a7=>{const _0x404afd=_0x1c0d36,_0x24fa43=_0x99a7a7['examples']['map'](_0x4d619f=>'\x20\x20'+_0x4d619f)[_0x404afd(0xe7)]('\x0a');return'**'+_0x99a7a7[_0x404afd(0xec)]+'**\x20('+_0x99a7a7[_0x404afd(0x105)]+')\x0a'+_0x99a7a7[_0x404afd(0xe8)]+_0x404afd(0xff)+_0x24fa43;})[_0x1c0d36(0xe7)]('\x0a\x0a---\x0a\x0a');return{'content':[{'type':_0x1c0d36(0xf5),'text':_0x2760a4}]};}),_0xb84ca[_0x48d55f(0x10d)](_0x48d55f(0x107),{'description':_0x48d55f(0x10e),'inputSchema':WorkCreateItemInputSchema[_0x48d55f(0x111)]},async({title:_0x54fd99,kind:_0x2894a9,status:_0x199b67,tags:_0xefde13,priority:_0xd70261,body:_0x43647e,template:_0x1c1f63,github:_0x43755c,jira:_0x5e8ead})=>{const _0x194700=_0x48d55f,_0x56af7c=executeWorkCreateItem({'title':_0x54fd99,'kind':_0x2894a9,'status':_0x199b67,'tags':_0xefde13,'priority':_0xd70261,'body':_0x43647e,'template':_0x1c1f63,'github':_0x43755c,'jira':_0x5e8ead});return _0x56af7c[_0x194700(0xf8)]?{'content':[{'type':'text','text':JSON[_0x194700(0xfd)]({'path':_0x56af7c[_0x194700(0xfe)],'slug':_0x56af7c[_0x194700(0xf7)]})}]}:{'content':[{'type':_0x194700(0xf5),'text':_0x56af7c[_0x194700(0x10f)]||_0x194700(0x116)}],'isError':!![]};}),_0xb84ca;}export async function startMCPServer(_0x2c1a7c={}){const _0x313989=a71_0x14e9,_0x3d04fd=createMCPServer(_0x2c1a7c),_0x3277a0=new StdioServerTransport();return await _0x3d04fd[_0x313989(0xf0)](_0x3277a0),new Promise(_0x13f0e7=>{const _0x2a17be=_0x313989;let _0x4bfc9d=![];const _0x472b66=async()=>{const _0x5ef217=a71_0x14e9;if(_0x4bfc9d)return;_0x4bfc9d=!![],await _0x3d04fd[_0x5ef217(0x104)](),_0x13f0e7();};process[_0x2a17be(0x118)](_0x2a17be(0x115),_0x472b66),process[_0x2a17be(0x118)](_0x2a17be(0x117),_0x472b66),process[_0x2a17be(0xf6)][_0x2a17be(0x118)](_0x2a17be(0x104),_0x472b66);});}function a71_0x55df(){const _0x383da9=['map','1.0.0','5141208gWOZWU','registerTool','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.','error','746804NzrBXc','shape','2905ATsdMl','env','Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)','SIGINT','Failed\x20to\x20create\x20item','SIGTERM','once','Command\x20completed\x20successfully','4980ASZPBb','join','description','string','tdx','Data','name','array','21616011NJavtb','618191jjHxkQ','connect','length','output','enum','4197wAOuDD','text','stdin','slug','success','10fjNItR','214924MlfIgg','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.','CDP','stringify','path','\x0a\x0aExamples:\x0a','No\x20commands\x20found\x20matching\x20\x22','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.','optional','1144qFOZMB','close','category','tdx_run','work_create_item','describe','Context'];a71_0x55df=function(){return _0x383da9;};return a71_0x55df();}
1
+ (function(_0x29e340,_0x29b272){const _0x1d9249=a71_0x3b90,_0x36f30a=_0x29e340();while(!![]){try{const _0x5826d8=parseInt(_0x1d9249(0x1f3))/0x1+-parseInt(_0x1d9249(0x1f1))/0x2+-parseInt(_0x1d9249(0x1e1))/0x3+parseInt(_0x1d9249(0x205))/0x4+-parseInt(_0x1d9249(0x1f2))/0x5+parseInt(_0x1d9249(0x1fe))/0x6+parseInt(_0x1d9249(0x203))/0x7;if(_0x5826d8===_0x29b272)break;else _0x36f30a['push'](_0x36f30a['shift']());}catch(_0x1f6d0f){_0x36f30a['push'](_0x36f30a['shift']());}}}(a71_0x2b5c,0x1b718));import{McpServer}from'@modelcontextprotocol/sdk/server/mcp.js';import{StdioServerTransport}from'@modelcontextprotocol/sdk/server/stdio.js';function a71_0x3b90(_0x5304f1,_0x3d4101){_0x5304f1=_0x5304f1-0x1de;const _0x2b5c9b=a71_0x2b5c();let _0x3b90aa=_0x2b5c9b[_0x5304f1];return _0x3b90aa;}function a71_0x2b5c(){const _0x3592d6=['stdin','work_create_item','Optional\x20filter\x20by\x20category','Utilities','array','Command\x20failed','text','1.0.0','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.','string','slug','Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)','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.','describe','98042YvrmyF','805645ilqxxn','150502drNhaY','tdx','connect','stringify','error','map','registerTool','output','name','once','enum','1168038FbKaMr','No\x20commands\x20found\x20matching\x20\x22','join','Command\x20completed\x20successfully','Context','690011nmJAWr','close','169032IgBrPc','tdx_search','CDP','\x0a\x0a---\x0a\x0a','optional','490344UcTHko','Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])'];a71_0x2b5c=function(){return _0x3592d6;};return a71_0x2b5c();}import{z}from'zod';import{executeTdxRun,searchCommands,executeWorkCreateItem,WorkCreateItemInputSchema}from'./tools/index.js';export function createMCPServer(_0x89f6c2={}){const _0x204dad=a71_0x3b90,_0x9c2dd4=new McpServer({'name':_0x204dad(0x1f4),'version':_0x204dad(0x1ea)});return _0x9c2dd4[_0x204dad(0x1f9)]('tdx_run',{'description':_0x204dad(0x1eb),'inputSchema':{'args':z[_0x204dad(0x1e7)](z[_0x204dad(0x1ec)]())[_0x204dad(0x1f0)](_0x204dad(0x1e2))}},async({args:_0x3337b9})=>{const _0x475df4=_0x204dad,_0x116cf6=await executeTdxRun({'args':_0x3337b9},_0x89f6c2['env']||{});return _0x116cf6['success']?{'content':[{'type':_0x475df4(0x1e9),'text':_0x116cf6[_0x475df4(0x1fa)]||_0x475df4(0x201)}]}:{'content':[{'type':_0x475df4(0x1e9),'text':_0x116cf6[_0x475df4(0x1f7)]||_0x116cf6[_0x475df4(0x1fa)]||_0x475df4(0x1e8)}],'isError':!![]};}),_0x9c2dd4[_0x204dad(0x1f9)](_0x204dad(0x206),{'description':_0x204dad(0x1ef),'inputSchema':{'query':z[_0x204dad(0x1ec)]()[_0x204dad(0x1f0)](_0x204dad(0x1ee)),'category':z[_0x204dad(0x1fd)](['Data',_0x204dad(0x1de),'AI',_0x204dad(0x202),_0x204dad(0x1e6)])[_0x204dad(0x1e0)]()[_0x204dad(0x1f0)](_0x204dad(0x1e5))}},async({query:_0x1c69ff,category:_0x5014c1})=>{const _0x23ee07=_0x204dad,_0x38c2a6=searchCommands({'query':_0x1c69ff,'category':_0x5014c1});if(_0x38c2a6['length']===0x0)return{'content':[{'type':_0x23ee07(0x1e9),'text':_0x23ee07(0x1ff)+_0x1c69ff+'\x22'}]};const _0x167fde=_0x38c2a6[_0x23ee07(0x1f8)](_0x4a854e=>{const _0xcd1ce8=_0x23ee07,_0x1d8788=_0x4a854e['examples'][_0xcd1ce8(0x1f8)](_0x255815=>'\x20\x20'+_0x255815)[_0xcd1ce8(0x200)]('\x0a');return'**'+_0x4a854e[_0xcd1ce8(0x1fb)]+'**\x20('+_0x4a854e['category']+')\x0a'+_0x4a854e['description']+'\x0a\x0aExamples:\x0a'+_0x1d8788;})[_0x23ee07(0x200)](_0x23ee07(0x1df));return{'content':[{'type':_0x23ee07(0x1e9),'text':_0x167fde}]};}),_0x9c2dd4[_0x204dad(0x1f9)](_0x204dad(0x1e4),{'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['shape']},async({title:_0x1cbd49,kind:_0x445936,status:_0x1bc15f,tags:_0x418fa2,priority:_0x5bcbfc,body:_0x1bc64d,template:_0x71fec,github:_0x36395a,jira:_0x20b42e})=>{const _0x5d5e4d=_0x204dad,_0xbb414b=executeWorkCreateItem({'title':_0x1cbd49,'kind':_0x445936,'status':_0x1bc15f,'tags':_0x418fa2,'priority':_0x5bcbfc,'body':_0x1bc64d,'template':_0x71fec,'github':_0x36395a,'jira':_0x20b42e});return _0xbb414b['success']?{'content':[{'type':_0x5d5e4d(0x1e9),'text':JSON[_0x5d5e4d(0x1f6)]({'path':_0xbb414b['path'],'slug':_0xbb414b[_0x5d5e4d(0x1ed)]})}]}:{'content':[{'type':'text','text':_0xbb414b['error']||'Failed\x20to\x20create\x20item'}],'isError':!![]};}),_0x9c2dd4;}export async function startMCPServer(_0x34052e={}){const _0x518cbb=a71_0x3b90,_0x4c7b09=createMCPServer(_0x34052e),_0x5b7c03=new StdioServerTransport();return await _0x4c7b09[_0x518cbb(0x1f5)](_0x5b7c03),new Promise(_0x28ac4b=>{const _0x45aba1=_0x518cbb;let _0x5d0ee3=![];const _0x42967a=async()=>{const _0x2bcaa8=a71_0x3b90;if(_0x5d0ee3)return;_0x5d0ee3=!![],await _0x4c7b09[_0x2bcaa8(0x204)](),_0x28ac4b();};process[_0x45aba1(0x1fc)]('SIGINT',_0x42967a),process[_0x45aba1(0x1fc)]('SIGTERM',_0x42967a),process[_0x45aba1(0x1e3)][_0x45aba1(0x1fc)]('close',_0x42967a);});}
@@ -1 +1 @@
1
- (function(_0x327972,_0x6db09e){var _0x18ffee=a72_0x17c4,_0x49995e=_0x327972();while(!![]){try{var _0x1abbd8=-parseInt(_0x18ffee(0x124))/0x1*(-parseInt(_0x18ffee(0x126))/0x2)+parseInt(_0x18ffee(0x123))/0x3*(parseInt(_0x18ffee(0x120))/0x4)+parseInt(_0x18ffee(0x128))/0x5*(-parseInt(_0x18ffee(0x125))/0x6)+parseInt(_0x18ffee(0x11f))/0x7*(parseInt(_0x18ffee(0x122))/0x8)+-parseInt(_0x18ffee(0x121))/0x9+parseInt(_0x18ffee(0x129))/0xa+parseInt(_0x18ffee(0x11e))/0xb*(-parseInt(_0x18ffee(0x127))/0xc);if(_0x1abbd8===_0x6db09e)break;else _0x49995e['push'](_0x49995e['shift']());}catch(_0x25bc98){_0x49995e['push'](_0x49995e['shift']());}}}(a72_0x2cc8,0x9cdbe));function a72_0x17c4(_0x3eaeb1,_0x55e6d9){_0x3eaeb1=_0x3eaeb1-0x11e;var _0x2cc835=a72_0x2cc8();var _0x17c473=_0x2cc835[_0x3eaeb1];return _0x17c473;}export{executeTdxRun,TdxRunInputSchema}from'./tdx-run.js';function a72_0x2cc8(){var _0x5d8801=['378590dHoXsu','22TdtTCv','1183LoYdtD','69532SnkFMJ','10104192JQSfbi','28720rMdvNi','177fKAIch','102893oJzdkV','102GedrIZ','16bCPUBV','334260OOZGXz','197770HzqZNe'];a72_0x2cc8=function(){return _0x5d8801;};return a72_0x2cc8();}export{searchCommands,TdxSearchInputSchema}from'./tdx-search.js';export{executeWorkCreateItem,WorkCreateItemInputSchema}from'./work-create-item.js';
1
+ (function(_0x12c955,_0x3ec206){var _0x54c20e=a72_0x3da2,_0x4a0c55=_0x12c955();while(!![]){try{var _0x110c44=-parseInt(_0x54c20e(0x1df))/0x1+-parseInt(_0x54c20e(0x1e1))/0x2*(parseInt(_0x54c20e(0x1de))/0x3)+parseInt(_0x54c20e(0x1dc))/0x4*(parseInt(_0x54c20e(0x1e2))/0x5)+-parseInt(_0x54c20e(0x1e0))/0x6+-parseInt(_0x54c20e(0x1dd))/0x7+parseInt(_0x54c20e(0x1e4))/0x8+parseInt(_0x54c20e(0x1e3))/0x9;if(_0x110c44===_0x3ec206)break;else _0x4a0c55['push'](_0x4a0c55['shift']());}catch(_0x4106e8){_0x4a0c55['push'](_0x4a0c55['shift']());}}}(a72_0x370b,0x9c8d2));export{executeTdxRun,TdxRunInputSchema}from'./tdx-run.js';function a72_0x3da2(_0x178cb2,_0x5b4ee9){_0x178cb2=_0x178cb2-0x1dc;var _0x370bb7=a72_0x370b();var _0x3da254=_0x370bb7[_0x178cb2];return _0x3da254;}export{searchCommands,TdxSearchInputSchema}from'./tdx-search.js';function a72_0x370b(){var _0xb3bf48=['21114243VwxsHf','5011128nfxBJL','4514876TIWAEt','4124414zWKQqG','144yfpbwE','467365LtBLGq','7504848bJIkKe','48022oBOjlW','5TvyiUS'];a72_0x370b=function(){return _0xb3bf48;};return a72_0x370b();}export{executeWorkCreateItem,WorkCreateItemInputSchema}from'./work-create-item.js';
@@ -1 +1 @@
1
- const a73_0x2d6625=a73_0x5bb3;(function(_0x14932b,_0x107a6a){const _0x3812c5=a73_0x5bb3,_0x519b81=_0x14932b();while(!![]){try{const _0x28bd62=-parseInt(_0x3812c5(0x1a7))/0x1+-parseInt(_0x3812c5(0x195))/0x2*(-parseInt(_0x3812c5(0x194))/0x3)+-parseInt(_0x3812c5(0x197))/0x4*(parseInt(_0x3812c5(0x199))/0x5)+parseInt(_0x3812c5(0x192))/0x6+-parseInt(_0x3812c5(0x18e))/0x7+-parseInt(_0x3812c5(0x19b))/0x8+parseInt(_0x3812c5(0x196))/0x9;if(_0x28bd62===_0x107a6a)break;else _0x519b81['push'](_0x519b81['shift']());}catch(_0x97e970){_0x519b81['push'](_0x519b81['shift']());}}}(a73_0x4b0c,0x5af32));import{spawn}from'child_process';import{dirname,join}from'path';import{existsSync}from'fs';import{z}from'zod';import{isBlockedCommand,getBlockedReason,formatOutput}from'../utils.js';export const TdxRunInputSchema=z[a73_0x2d6625(0x18f)]({'args':z['array'](z[a73_0x2d6625(0x1a3)]())[a73_0x2d6625(0x1a6)]('Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])')});const DEFAULT_TIMEOUT_MS=0xf*0x3c*0x3e8;function a73_0x4b0c(){const _0x3d1fa1=['win32','1885506incbtT','object','platform','Command\x20timed\x20out\x20after\x2015\x20minutes.\x20For\x20long-running\x20queries,\x20use\x20job\x20submit\x20instead.','1583718uHvDZd','toString','1901946EnMVWW','2xzYiVJ','9706986HkGomT','52CcHwzi','This\x20command\x20is\x20not\x20allowed\x20via\x20MCP','175295GLcHaj','true','5220760wDOLWd','PATH','pipe','resourcesPath','ignore','data','kill','node','string','tdx','SIGTERM','describe','226239wPtykp','stdout','error','Failed\x20to\x20spawn\x20tdx:\x20'];a73_0x4b0c=function(){return _0x3d1fa1;};return a73_0x4b0c();}function getNodeBinDir(){const _0x4f6ad6=a73_0x2d6625,_0x46ddff=process[_0x4f6ad6(0x19e)];if(_0x46ddff){const _0x1ff4ed=join(_0x46ddff,_0x4f6ad6(0x1a2)),_0x494bc5=process[_0x4f6ad6(0x190)]===_0x4f6ad6(0x18d)?'node.exe':_0x4f6ad6(0x1a2);if(existsSync(join(_0x1ff4ed,_0x494bc5)))return _0x1ff4ed;}return dirname(process['execPath']);}function a73_0x5bb3(_0x75fbb4,_0x766506){_0x75fbb4=_0x75fbb4-0x18b;const _0x4b0cd6=a73_0x4b0c();let _0x5bb342=_0x4b0cd6[_0x75fbb4];return _0x5bb342;}export async function executeTdxRun(_0x2f5ca5,_0x56f710){const _0x2447af=a73_0x2d6625,{args:_0x219568}=_0x2f5ca5;if(isBlockedCommand(_0x219568)){const _0x13ca3f=getBlockedReason(_0x219568);return{'success':![],'output':'','error':_0x13ca3f||_0x2447af(0x198),'exitCode':0x1};}const _0x40a28a=['--json','--no-color',..._0x219568],_0x1b2da8=getNodeBinDir(),_0x4a8d72=process[_0x2447af(0x190)]===_0x2447af(0x18d)?';':':',_0x4ed52a=_0x56f710[_0x2447af(0x19c)]??process.env.PATH??'',_0x2565a7=''+_0x1b2da8+_0x4a8d72+_0x4ed52a;return new Promise(_0x228fc3=>{const _0x3774f3=_0x2447af,_0x17bf32=spawn(_0x3774f3(0x1a4),_0x40a28a,{'env':{...process.env,..._0x56f710,'PATH':_0x2565a7,'CI':_0x3774f3(0x19a)},'stdio':[_0x3774f3(0x19f),_0x3774f3(0x19d),_0x3774f3(0x19d)]});let _0x1755d6='',_0x560722='',_0x3434c1=![];const _0x2e6f81=setTimeout(()=>{const _0x40cc42=_0x3774f3;_0x3434c1=!![],_0x17bf32[_0x40cc42(0x1a1)](_0x40cc42(0x1a5));},DEFAULT_TIMEOUT_MS);_0x17bf32[_0x3774f3(0x1a8)]['on'](_0x3774f3(0x1a0),_0xe17dc4=>{const _0x4214f6=_0x3774f3;_0x1755d6+=_0xe17dc4[_0x4214f6(0x193)]();}),_0x17bf32['stderr']['on'](_0x3774f3(0x1a0),_0x419504=>{_0x560722+=_0x419504['toString']();}),_0x17bf32['on'](_0x3774f3(0x18b),_0x25ca18=>{const _0x306526=_0x3774f3;clearTimeout(_0x2e6f81),_0x228fc3({'success':![],'output':'','error':_0x306526(0x18c)+_0x25ca18['message'],'exitCode':0x1});}),_0x17bf32['on']('close',_0x2174e2=>{const _0x181634=_0x3774f3;clearTimeout(_0x2e6f81);if(_0x3434c1){_0x228fc3({'success':![],'output':formatOutput(_0x1755d6),'error':_0x181634(0x191),'exitCode':0x7c});return;}const _0x511e48=_0x2174e2??0x1,_0x522f9f=_0x511e48===0x0,_0xebafc=formatOutput(_0x1755d6||_0x560722),_0x5d8884=!_0x522f9f&&_0x560722?formatOutput(_0x560722):undefined;_0x228fc3({'success':_0x522f9f,'output':_0xebafc,'error':_0x5d8884,'exitCode':_0x511e48});});});}
1
+ const a73_0x1c16b3=a73_0x1c86;(function(_0x2a2786,_0x25804e){const _0x14184b=a73_0x1c86,_0x4e6a59=_0x2a2786();while(!![]){try{const _0x5224de=-parseInt(_0x14184b(0xaf))/0x1*(-parseInt(_0x14184b(0xa8))/0x2)+-parseInt(_0x14184b(0xb9))/0x3+-parseInt(_0x14184b(0xac))/0x4+parseInt(_0x14184b(0xad))/0x5*(-parseInt(_0x14184b(0xa1))/0x6)+parseInt(_0x14184b(0xb3))/0x7+-parseInt(_0x14184b(0xbf))/0x8*(-parseInt(_0x14184b(0xc2))/0x9)+parseInt(_0x14184b(0xb2))/0xa*(parseInt(_0x14184b(0xab))/0xb);if(_0x5224de===_0x25804e)break;else _0x4e6a59['push'](_0x4e6a59['shift']());}catch(_0x3d05d8){_0x4e6a59['push'](_0x4e6a59['shift']());}}}(a73_0x1550,0xbf4b6));import{spawn}from'child_process';import{dirname,join}from'path';function a73_0x1550(){const _0x198522=['1941828ArMNFF','--no-color','Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])','platform','true','resourcesPath','3199551RCdEzp','message','node','data','execPath','SIGTERM','8PWnMdi','close','stderr','9366138JeZbmc','kill','1134nkLgPr','toString','Failed\x20to\x20spawn\x20tdx:\x20','PATH','win32','tdx','node.exe','2477378OfEYSU','pipe','This\x20command\x20is\x20not\x20allowed\x20via\x20MCP','13403445GCJewB','4784952vAhEAZ','19285DCCdYN','object','1nnhZWO','Command\x20timed\x20out\x20after\x2015\x20minutes.\x20For\x20long-running\x20queries,\x20use\x20job\x20submit\x20instead.','--json','10zGhxjs'];a73_0x1550=function(){return _0x198522;};return a73_0x1550();}import{existsSync}from'fs';function a73_0x1c86(_0x2110f4,_0xfb9d36){_0x2110f4=_0x2110f4-0xa1;const _0x155037=a73_0x1550();let _0x1c8685=_0x155037[_0x2110f4];return _0x1c8685;}import{z}from'zod';import{isBlockedCommand,getBlockedReason,formatOutput}from'../utils.js';export const TdxRunInputSchema=z[a73_0x1c16b3(0xae)]({'args':z['array'](z['string']())['describe'](a73_0x1c16b3(0xb5))});const DEFAULT_TIMEOUT_MS=0xf*0x3c*0x3e8;function getNodeBinDir(){const _0x535b37=a73_0x1c16b3,_0x24b756=process[_0x535b37(0xb8)];if(_0x24b756){const _0x30289b=join(_0x24b756,_0x535b37(0xbb)),_0x3c3928=process[_0x535b37(0xb6)]===_0x535b37(0xa5)?_0x535b37(0xa7):_0x535b37(0xbb);if(existsSync(join(_0x30289b,_0x3c3928)))return _0x30289b;}return dirname(process[_0x535b37(0xbd)]);}export async function executeTdxRun(_0x4398d7,_0x3a1083){const _0x39f1c4=a73_0x1c16b3,{args:_0xf7873b}=_0x4398d7;if(isBlockedCommand(_0xf7873b)){const _0x1cb2f6=getBlockedReason(_0xf7873b);return{'success':![],'output':'','error':_0x1cb2f6||_0x39f1c4(0xaa),'exitCode':0x1};}const _0x23323a=[_0x39f1c4(0xb1),_0x39f1c4(0xb4),..._0xf7873b],_0x31471a=getNodeBinDir(),_0x5561ef=process[_0x39f1c4(0xb6)]===_0x39f1c4(0xa5)?';':':',_0x3aeb40=_0x3a1083[_0x39f1c4(0xa4)]??process.env.PATH??'',_0x37bd89=''+_0x31471a+_0x5561ef+_0x3aeb40;return new Promise(_0x8186ca=>{const _0x2e1071=_0x39f1c4,_0x27d2ec=spawn(_0x2e1071(0xa6),_0x23323a,{'env':{...process.env,..._0x3a1083,'PATH':_0x37bd89,'CI':_0x2e1071(0xb7)},'stdio':['ignore',_0x2e1071(0xa9),_0x2e1071(0xa9)]});let _0x371b23='',_0x124296='',_0xc4f705=![];const _0x40e2b1=setTimeout(()=>{const _0x58d078=_0x2e1071;_0xc4f705=!![],_0x27d2ec[_0x58d078(0xc3)](_0x58d078(0xbe));},DEFAULT_TIMEOUT_MS);_0x27d2ec['stdout']['on'](_0x2e1071(0xbc),_0x4b7531=>{const _0x3d27cb=_0x2e1071;_0x371b23+=_0x4b7531[_0x3d27cb(0xa2)]();}),_0x27d2ec[_0x2e1071(0xc1)]['on'](_0x2e1071(0xbc),_0x41606b=>{const _0x594d3f=_0x2e1071;_0x124296+=_0x41606b[_0x594d3f(0xa2)]();}),_0x27d2ec['on']('error',_0x163e3b=>{const _0xcef6b6=_0x2e1071;clearTimeout(_0x40e2b1),_0x8186ca({'success':![],'output':'','error':_0xcef6b6(0xa3)+_0x163e3b[_0xcef6b6(0xba)],'exitCode':0x1});}),_0x27d2ec['on'](_0x2e1071(0xc0),_0x1798df=>{const _0x2b1716=_0x2e1071;clearTimeout(_0x40e2b1);if(_0xc4f705){_0x8186ca({'success':![],'output':formatOutput(_0x371b23),'error':_0x2b1716(0xb0),'exitCode':0x7c});return;}const _0x12c547=_0x1798df??0x1,_0x4ab778=_0x12c547===0x0,_0x29e982=formatOutput(_0x371b23||_0x124296),_0x40cc38=!_0x4ab778&&_0x124296?formatOutput(_0x124296):undefined;_0x8186ca({'success':_0x4ab778,'output':_0x29e982,'error':_0x40cc38,'exitCode':_0x12c547});});});}
@@ -1 +1 @@
1
- const a74_0x32df9a=a74_0x1e56;(function(_0x5dd036,_0x27722e){const _0x1f70e7=a74_0x1e56,_0x22e441=_0x5dd036();while(!![]){try{const _0x189d10=-parseInt(_0x1f70e7(0x106))/0x1+-parseInt(_0x1f70e7(0xc9))/0x2+parseInt(_0x1f70e7(0x170))/0x3+parseInt(_0x1f70e7(0x17c))/0x4*(-parseInt(_0x1f70e7(0x137))/0x5)+-parseInt(_0x1f70e7(0xc8))/0x6+-parseInt(_0x1f70e7(0x14c))/0x7*(-parseInt(_0x1f70e7(0x11e))/0x8)+parseInt(_0x1f70e7(0x103))/0x9;if(_0x189d10===_0x27722e)break;else _0x22e441['push'](_0x22e441['shift']());}catch(_0x55df10){_0x22e441['push'](_0x22e441['shift']());}}}(a74_0x4c30,0x3069b));import{z}from'zod';const COMMANDS=[{'name':a74_0x32df9a(0xdf),'description':'List\x20all\x20databases','category':a74_0x32df9a(0xa3),'keywords':[a74_0x32df9a(0xb4),a74_0x32df9a(0x19a),'db','list',a74_0x32df9a(0x113),a74_0x32df9a(0x161)],'examples':[a74_0x32df9a(0x173),a74_0x32df9a(0xe8),a74_0x32df9a(0x13c)]},{'name':a74_0x32df9a(0xc3),'description':a74_0x32df9a(0x189),'category':a74_0x32df9a(0xa3),'keywords':[a74_0x32df9a(0xb2),a74_0x32df9a(0x12f),'list',a74_0x32df9a(0x113),a74_0x32df9a(0x104)],'examples':[a74_0x32df9a(0x119),'tdx\x20tables\x20mydb.*',a74_0x32df9a(0x144)]},{'name':'show','description':a74_0x32df9a(0x181),'category':a74_0x32df9a(0xa3),'keywords':[a74_0x32df9a(0x113),a74_0x32df9a(0x186),a74_0x32df9a(0xfd),a74_0x32df9a(0xda),a74_0x32df9a(0x17e),a74_0x32df9a(0x143),a74_0x32df9a(0xa4)],'examples':['tdx\x20show\x20mydb.users',a74_0x32df9a(0x129)]},{'name':a74_0x32df9a(0x174),'description':a74_0x32df9a(0x124),'category':a74_0x32df9a(0xa3),'keywords':[a74_0x32df9a(0x174),'schema',a74_0x32df9a(0x17b),'types','structure',a74_0x32df9a(0x100)],'examples':[a74_0x32df9a(0xfb),a74_0x32df9a(0x128)]},{'name':a74_0x32df9a(0xf6),'description':a74_0x32df9a(0x110),'category':a74_0x32df9a(0xa3),'keywords':[a74_0x32df9a(0xf6),'sql',a74_0x32df9a(0x10e),a74_0x32df9a(0x19b),'execute',a74_0x32df9a(0xf9),a74_0x32df9a(0x148)],'examples':[a74_0x32df9a(0x11f),a74_0x32df9a(0x17f)]},{'name':a74_0x32df9a(0xf0),'description':a74_0x32df9a(0x12a),'category':a74_0x32df9a(0xa3),'keywords':[a74_0x32df9a(0x108),'jobs',a74_0x32df9a(0x195),a74_0x32df9a(0x116),a74_0x32df9a(0xb6)],'examples':[a74_0x32df9a(0xae),a74_0x32df9a(0xeb),a74_0x32df9a(0x184)]},{'name':a74_0x32df9a(0x162),'description':a74_0x32df9a(0x172),'category':'Data','keywords':['job',a74_0x32df9a(0x113),a74_0x32df9a(0xaa),a74_0x32df9a(0xf4),a74_0x32df9a(0x146)],'examples':['tdx\x20job\x20show\x2012345']},{'name':'job\x20result','description':a74_0x32df9a(0xf2),'category':a74_0x32df9a(0xa3),'keywords':['job',a74_0x32df9a(0xdd),a74_0x32df9a(0xd8),a74_0x32df9a(0xca)],'examples':[a74_0x32df9a(0xb3)]},{'name':a74_0x32df9a(0xc6),'description':a74_0x32df9a(0x19f),'category':a74_0x32df9a(0xa3),'keywords':['job','kill',a74_0x32df9a(0xd3),'stop',a74_0x32df9a(0x111)],'examples':[a74_0x32df9a(0xcf)]},{'name':a74_0x32df9a(0x166),'description':a74_0x32df9a(0x15d),'category':'Data','keywords':[a74_0x32df9a(0x134),a74_0x32df9a(0xcd),'digdag',a74_0x32df9a(0x195)],'examples':[a74_0x32df9a(0x121),a74_0x32df9a(0xd1)]},{'name':a74_0x32df9a(0x149),'description':a74_0x32df9a(0x16e),'category':a74_0x32df9a(0xa3),'keywords':[a74_0x32df9a(0x134),'sessions',a74_0x32df9a(0x175),a74_0x32df9a(0x11c)],'examples':['tdx\x20workflow\x20sessions\x20myproject',a74_0x32df9a(0x122)]},{'name':a74_0x32df9a(0x18d),'description':a74_0x32df9a(0x12b),'category':'Data','keywords':[a74_0x32df9a(0x134),'logs',a74_0x32df9a(0xd8),'debug'],'examples':[a74_0x32df9a(0x10b)]},{'name':a74_0x32df9a(0xb8),'description':a74_0x32df9a(0x13e),'category':'Data','keywords':['workflow',a74_0x32df9a(0xf9),a74_0x32df9a(0x163),'start','trigger'],'examples':[a74_0x32df9a(0xfe)]},{'name':'segment\x20list','description':a74_0x32df9a(0x15e),'category':'CDP','keywords':[a74_0x32df9a(0xab),a74_0x32df9a(0x14d),a74_0x32df9a(0x114),a74_0x32df9a(0x195),a74_0x32df9a(0xe1)],'examples':[a74_0x32df9a(0x120),a74_0x32df9a(0x107),a74_0x32df9a(0x109)]},{'name':a74_0x32df9a(0x177),'description':a74_0x32df9a(0x157),'category':a74_0x32df9a(0xba),'keywords':['segment',a74_0x32df9a(0x113),a74_0x32df9a(0xaa),a74_0x32df9a(0x146),a74_0x32df9a(0x186)],'examples':['tdx\x20segment\x20show\x20\x22My\x20Segment\x22']},{'name':a74_0x32df9a(0x156),'description':a74_0x32df9a(0x13d),'category':a74_0x32df9a(0xba),'keywords':[a74_0x32df9a(0xab),a74_0x32df9a(0xcb),a74_0x32df9a(0xf6),a74_0x32df9a(0xff)],'examples':['tdx\x20segment\x20sql\x20\x22My\x20Segment\x22']},{'name':a74_0x32df9a(0x158),'description':'Pull\x20segment\x20definition\x20to\x20YAML','category':a74_0x32df9a(0xba),'keywords':['segment',a74_0x32df9a(0x17d),a74_0x32df9a(0xca),a74_0x32df9a(0xbe),a74_0x32df9a(0x1a0)],'examples':[a74_0x32df9a(0xbd)]},{'name':'segment\x20push','description':a74_0x32df9a(0xb1),'category':a74_0x32df9a(0xba),'keywords':[a74_0x32df9a(0xab),'push',a74_0x32df9a(0xed),a74_0x32df9a(0xb0),'create','update'],'examples':[a74_0x32df9a(0x155),a74_0x32df9a(0x18f)]},{'name':a74_0x32df9a(0xd5),'description':'List\x20available\x20segment\x20fields','category':'CDP','keywords':[a74_0x32df9a(0xab),a74_0x32df9a(0x141),a74_0x32df9a(0x199),a74_0x32df9a(0x17b),a74_0x32df9a(0x104)],'examples':[a74_0x32df9a(0x130),a74_0x32df9a(0xbc)]},{'name':a74_0x32df9a(0xef),'description':a74_0x32df9a(0xf1),'category':a74_0x32df9a(0xba),'keywords':[a74_0x32df9a(0xdb),a74_0x32df9a(0xab),'master','list',a74_0x32df9a(0x151)],'examples':[a74_0x32df9a(0xa2),a74_0x32df9a(0xa5)]},{'name':a74_0x32df9a(0x190),'description':'Pull\x20parent\x20segment\x20definition\x20to\x20YAML','category':a74_0x32df9a(0xba),'keywords':['parent',a74_0x32df9a(0xab),a74_0x32df9a(0x17d),a74_0x32df9a(0xca),a74_0x32df9a(0xbe)],'examples':[a74_0x32df9a(0x13b),'tdx\x20ps\x20pull']},{'name':a74_0x32df9a(0xf5),'description':a74_0x32df9a(0x140),'category':a74_0x32df9a(0xba),'keywords':[a74_0x32df9a(0xdb),a74_0x32df9a(0xab),'push',a74_0x32df9a(0xed),a74_0x32df9a(0x14f)],'examples':[a74_0x32df9a(0x196),a74_0x32df9a(0xee)]},{'name':'parent-segment\x20validate','description':a74_0x32df9a(0xea),'category':a74_0x32df9a(0xba),'keywords':['parent',a74_0x32df9a(0xab),a74_0x32df9a(0x182),a74_0x32df9a(0xbb),a74_0x32df9a(0x197)],'examples':[a74_0x32df9a(0x11a),a74_0x32df9a(0xb5)]},{'name':a74_0x32df9a(0xad),'description':'Preview\x20parent\x20segment\x20data','category':'CDP','keywords':[a74_0x32df9a(0xdb),a74_0x32df9a(0xab),a74_0x32df9a(0xfd),a74_0x32df9a(0xf3),'data'],'examples':[a74_0x32df9a(0x115),a74_0x32df9a(0x180)]},{'name':a74_0x32df9a(0x198),'description':'List\x20customer\x20journeys','category':a74_0x32df9a(0xba),'keywords':[a74_0x32df9a(0x192),a74_0x32df9a(0x102),a74_0x32df9a(0x195),'orchestration'],'examples':[a74_0x32df9a(0x127),'tdx\x20journeys']},{'name':'journey\x20view','description':a74_0x32df9a(0x167),'category':'CDP','keywords':[a74_0x32df9a(0x192),a74_0x32df9a(0x186),a74_0x32df9a(0x113),a74_0x32df9a(0xaa)],'examples':[a74_0x32df9a(0xc7)]},{'name':'journey\x20pull','description':a74_0x32df9a(0xcc),'category':a74_0x32df9a(0xba),'keywords':['journey',a74_0x32df9a(0x17d),'download',a74_0x32df9a(0xbe)],'examples':['tdx\x20journey\x20pull\x20\x22My\x20Journey\x22\x20-o\x20journey.yaml']},{'name':'journey\x20push','description':a74_0x32df9a(0x16f),'category':a74_0x32df9a(0xba),'keywords':[a74_0x32df9a(0x192),a74_0x32df9a(0x10c),a74_0x32df9a(0xed),a74_0x32df9a(0x14f)],'examples':[a74_0x32df9a(0x112)]},{'name':a74_0x32df9a(0x13f),'description':a74_0x32df9a(0x117),'category':a74_0x32df9a(0xba),'keywords':[a74_0x32df9a(0x18b),a74_0x32df9a(0x13f),a74_0x32df9a(0xbe),a74_0x32df9a(0x101),'destination'],'examples':[a74_0x32df9a(0xd2),a74_0x32df9a(0x153)]},{'name':a74_0x32df9a(0x15f),'description':a74_0x32df9a(0x118),'category':a74_0x32df9a(0xba),'keywords':[a74_0x32df9a(0xc1),a74_0x32df9a(0x131),a74_0x32df9a(0x11b),'list'],'examples':[a74_0x32df9a(0x18c)]},{'name':a74_0x32df9a(0xa0),'description':a74_0x32df9a(0x136),'category':a74_0x32df9a(0xba),'keywords':['connection',a74_0x32df9a(0x104),'config','settings'],'examples':[a74_0x32df9a(0xc4),a74_0x32df9a(0x16a)]},{'name':a74_0x32df9a(0x19c),'description':'List\x20LLM\x20agents','category':'AI','keywords':[a74_0x32df9a(0x187),a74_0x32df9a(0x183),a74_0x32df9a(0xac),'ai',a74_0x32df9a(0x195)],'examples':[a74_0x32df9a(0x13a),a74_0x32df9a(0x15c)]},{'name':a74_0x32df9a(0x154),'description':a74_0x32df9a(0x123),'category':'AI','keywords':[a74_0x32df9a(0x187),a74_0x32df9a(0x113),'details',a74_0x32df9a(0x146)],'examples':[a74_0x32df9a(0x15a)]},{'name':a74_0x32df9a(0xbf),'description':a74_0x32df9a(0xdc),'category':'AI','keywords':[a74_0x32df9a(0x187),'pull',a74_0x32df9a(0xca),a74_0x32df9a(0xbe)],'examples':['tdx\x20agent\x20pull\x20myproject/myagent\x20-o\x20agent.yaml']},{'name':a74_0x32df9a(0xd4),'description':a74_0x32df9a(0xc5),'category':'AI','keywords':[a74_0x32df9a(0x187),a74_0x32df9a(0x10c),a74_0x32df9a(0xed),a74_0x32df9a(0x14f),a74_0x32df9a(0x171)],'examples':[a74_0x32df9a(0x164)]},{'name':a74_0x32df9a(0x160),'description':a74_0x32df9a(0x12e),'category':'AI','keywords':[a74_0x32df9a(0x160),a74_0x32df9a(0xac),'ai','conversation',a74_0x32df9a(0x145),a74_0x32df9a(0x152)],'examples':[a74_0x32df9a(0x12c),a74_0x32df9a(0x14b)]},{'name':a74_0x32df9a(0x17a),'description':a74_0x32df9a(0x194),'category':'AI','keywords':[a74_0x32df9a(0x160),a74_0x32df9a(0x17a),a74_0x32df9a(0x193),a74_0x32df9a(0x116),a74_0x32df9a(0xe3)],'examples':[a74_0x32df9a(0x19e),a74_0x32df9a(0x125)]},{'name':a74_0x32df9a(0x105),'description':a74_0x32df9a(0xf7),'category':'AI','keywords':[a74_0x32df9a(0xac),'models','ai',a74_0x32df9a(0x195)],'examples':['tdx\x20llm\x20models']},{'name':a74_0x32df9a(0x179),'description':a74_0x32df9a(0xfc),'category':'AI','keywords':[a74_0x32df9a(0xac),a74_0x32df9a(0xcd),'ai',a74_0x32df9a(0x195)],'examples':[a74_0x32df9a(0xec)]},{'name':a74_0x32df9a(0x135),'description':a74_0x32df9a(0x9f),'category':a74_0x32df9a(0xc0),'keywords':['use',a74_0x32df9a(0xf8),'context','switch',a74_0x32df9a(0x10e)],'examples':[a74_0x32df9a(0xe0),a74_0x32df9a(0x10f),a74_0x32df9a(0x15b)]},{'name':a74_0x32df9a(0x138),'description':'Clear\x20session\x20context','category':a74_0x32df9a(0xc0),'keywords':['unset',a74_0x32df9a(0x176),'reset',a74_0x32df9a(0x19d)],'examples':[a74_0x32df9a(0x12d),a74_0x32df9a(0x165)]},{'name':a74_0x32df9a(0xd7),'description':a74_0x32df9a(0x150),'category':'Context','keywords':[a74_0x32df9a(0x14a),a74_0x32df9a(0x132),a74_0x32df9a(0x195),'config'],'examples':[a74_0x32df9a(0xaf),'tdx\x20profiles']},{'name':'profile\x20show','description':a74_0x32df9a(0x16d),'category':a74_0x32df9a(0xc0),'keywords':[a74_0x32df9a(0x14a),a74_0x32df9a(0x113),a74_0x32df9a(0xaa),a74_0x32df9a(0x16b)],'examples':[a74_0x32df9a(0xd9)]},{'name':a74_0x32df9a(0x10d),'description':a74_0x32df9a(0x168),'category':'Context','keywords':[a74_0x32df9a(0x10d),a74_0x32df9a(0x142),a74_0x32df9a(0xf4),a74_0x32df9a(0x188)],'examples':['tdx\x20auth',a74_0x32df9a(0x159)]},{'name':a74_0x32df9a(0x16c),'description':a74_0x32df9a(0xe6),'category':a74_0x32df9a(0xc0),'keywords':[a74_0x32df9a(0x16c),'me','whoami',a74_0x32df9a(0xe2)],'examples':['tdx\x20user']},{'name':a74_0x32df9a(0xce),'description':a74_0x32df9a(0x178),'category':a74_0x32df9a(0xc0),'keywords':['users','list',a74_0x32df9a(0x133),a74_0x32df9a(0x139)],'examples':[a74_0x32df9a(0xe5),a74_0x32df9a(0xfa)]},{'name':a74_0x32df9a(0xe9),'description':a74_0x32df9a(0xc2),'category':a74_0x32df9a(0xa8),'keywords':[a74_0x32df9a(0xe9),a74_0x32df9a(0xa6),a74_0x32df9a(0xe7),a74_0x32df9a(0x169),a74_0x32df9a(0x11d)],'examples':[a74_0x32df9a(0xa7),'tdx\x20api\x20/v1/audiences\x20--type\x20cdp',a74_0x32df9a(0xa1)]}];export const TdxSearchInputSchema=z['object']({'query':z[a74_0x32df9a(0xd0)]()['describe'](a74_0x32df9a(0x14e)),'category':z[a74_0x32df9a(0x18a)]([a74_0x32df9a(0xa3),'CDP','AI',a74_0x32df9a(0xc0),'Utilities'])['optional']()['describe'](a74_0x32df9a(0x147))});function a74_0x4c30(){const _0xe4b107=['use','Show\x20connection\x20schema\x20for\x20activations','5asHHPt','unset','members','tdx\x20agent\x20list','tdx\x20parent-segment\x20pull\x20\x22My\x20Parent\x22\x20-o\x20parent.yaml','tdx\x20databases\x20mydb*','Generate\x20SQL\x20for\x20a\x20segment','Run\x20a\x20workflow','activations','Push\x20parent\x20segment\x20definition\x20from\x20YAML','fields','authentication','rows','tdx\x20tables\x20--database\x20mydb','ask','info','Optional\x20filter\x20by\x20category','presto','workflow\x20sessions','profile','tdx\x20chat\x20--agent\x20myproject/myagent\x20\x22What\x20is\x20TD?\x22','126cprVEz','segments','Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)','create','List\x20configured\x20profiles','customer','message','tdx\x20activations\x20--segment\x20\x22My\x20Segment\x22','agent\x20show','tdx\x20segment\x20push\x20segment.yaml','segment\x20sql','Show\x20segment\x20details','segment\x20pull','tdx\x20auth\x20--profile\x20myprofile','tdx\x20agent\x20show\x20myproject/myagent','tdx\x20use\x20--parent-segment\x20\x22My\x20PS\x22','tdx\x20agents','List\x20workflow\x20projects','List\x20audience\x20segments','connection\x20list','chat','all','job\x20show','execute','tdx\x20agent\x20push\x20agent.yaml','tdx\x20unset\x20--all','workflow\x20projects','View\x20journey\x20details','Show\x20authentication\x20status','request','tdx\x20connection\x20schema\x20google_ads','config','user','Show\x20profile\x20details','List\x20workflow\x20sessions','Push\x20journey\x20definition\x20from\x20YAML','674247ChVUBE','deploy','Show\x20job\x20details','tdx\x20database\x20list','describe','runs','clear','segment\x20show','List\x20users\x20in\x20account','llm\x20projects','chats','columns','1083796QHBIwN','pull','contents','tdx\x20query\x20\x22SELECT\x20count(*)\x20FROM\x20mydb.events\x22','tdx\x20ps\x20preview\x20--limit\x2010','Show\x20table\x20contents\x20(SELECT\x20*\x20with\x20limit)','validate','agents','tdx\x20jobs\x20--limit\x2020','sort','view','agent','login','List\x20tables\x20in\x20a\x20database','enum','activation','tdx\x20connection\x20list','workflow\x20logs','name','tdx\x20sg\x20push\x20segment.yaml\x20--dry-run','parent-segment\x20pull','map','journey','sessions','List\x20chat\x20sessions','list','tdx\x20parent-segment\x20push\x20parent.yaml','verify','journey\x20list','attributes','databases','trino','agent\x20list','context','tdx\x20chats','Kill\x20a\x20running\x20job','yaml','Set\x20session\x20context\x20(database,\x20parent\x20segment,\x20etc.)','connection\x20schema','tdx\x20api\x20-X\x20POST\x20--data\x20\x27{\x22query\x22:\x22SELECT\x201\x22}\x27\x20/v3/job/issue/hive/mydb','tdx\x20parent-segment\x20list','Data','records','tdx\x20ps\x20list','http','tdx\x20api\x20/v3/database/list','Utilities','category','details','segment','llm','parent-segment\x20preview','tdx\x20job\x20list','tdx\x20profile\x20list','import','Push\x20segment\x20definition\x20from\x20YAML','table','tdx\x20job\x20result\x2012345','database','tdx\x20ps\x20validate','queries','score','workflow\x20run','includes','CDP','check','tdx\x20sg\x20fields','tdx\x20segment\x20pull\x20\x22My\x20Segment\x22\x20-o\x20segment.yaml','export','agent\x20pull','Context','connection','Make\x20raw\x20HTTP\x20requests\x20to\x20TD\x20APIs','table\x20list','tdx\x20connection\x20schema\x20salesforce','Push\x20agent\x20definition\x20from\x20YAML','job\x20kill','tdx\x20journey\x20view\x20\x22My\x20Journey\x22','1471860nulotw','655142ApyCHo','download','sql','Pull\x20journey\x20definition\x20to\x20YAML','projects','users','tdx\x20job\x20kill\x2012345','string','tdx\x20wf\x20projects','tdx\x20activations','cancel','agent\x20push','segment\x20fields','split','profile\x20list','output','tdx\x20profile\x20show\x20myprofile','data','parent','Pull\x20agent\x20definition\x20to\x20YAML','result','toLowerCase','database\x20list','tdx\x20use\x20mydb','cdp','account','conversations','slice','tdx\x20users','Show\x20current\x20user\x20info','raw','tdx\x20databases','api','Validate\x20parent\x20segment\x20configuration','tdx\x20jobs','tdx\x20llm\x20projects','upload','tdx\x20ps\x20push\x20--dry-run','parent-segment\x20list','job\x20list','List\x20parent\x20segments\x20(customer\x20masters)','Get\x20job\x20results','sample','status','parent-segment\x20push','query','List\x20available\x20LLM\x20models','set','run','tdx\x20user\x20list','tdx\x20describe\x20mydb.users','List\x20LLM\x20projects','preview','tdx\x20workflow\x20run\x20myproject/myworkflow','generate','definition','sync','journeys','9460791YTATrm','schema','llm\x20models','273293sEFdLc','tdx\x20segments','job','tdx\x20segments\x20--recursive','description','tdx\x20workflow\x20logs\x20<attempt_id>','push','auth','select','tdx\x20use\x20--database\x20mydb','Execute\x20SQL\x20query\x20using\x20Trino','abort','tdx\x20journey\x20push\x20journey.yaml','show','audience','tdx\x20parent-segment\x20preview','history','List\x20segment\x20activations\x20(exports)','List\x20data\x20connections','tdx\x20table\x20list','tdx\x20parent-segment\x20validate\x20parent.yaml','destination','executions','curl','17544DYYekw','tdx\x20query\x20\x22SELECT\x20*\x20FROM\x20mydb.users\x20LIMIT\x2010\x22','tdx\x20segment\x20list','tdx\x20workflow\x20projects','tdx\x20wf\x20sessions\x20--limit\x2010','Show\x20agent\x20details','Describe\x20table\x20schema\x20(columns,\x20types)','tdx\x20chats\x20--limit\x2010','filter','tdx\x20journey\x20list','tdx\x20describe\x20mydb.events','tdx\x20show\x20mydb.users\x20--limit\x20100','List\x20query\x20jobs','View\x20workflow\x20logs','tdx\x20chat\x20\x22Hello\x22','tdx\x20unset\x20--database','Chat\x20with\x20an\x20LLM\x20agent','tables','tdx\x20segment\x20fields','connections','profiles','team','workflow'];a74_0x4c30=function(){return _0xe4b107;};return a74_0x4c30();}function a74_0x1e56(_0x33c019,_0x2a8da4){_0x33c019=_0x33c019-0x9f;const _0x4c3022=a74_0x4c30();let _0x1e56ba=_0x4c3022[_0x33c019];return _0x1e56ba;}export function searchCommands(_0x268b82){const _0x52d4d9=a74_0x32df9a,{query:_0x768ffd,category:_0x502a8d}=_0x268b82,_0xf25586=_0x768ffd['toLowerCase'](),_0x19b119=_0xf25586[_0x52d4d9(0xd6)](/\s+/)['filter'](_0xed3de=>_0xed3de['length']>0x0);let _0x55fdd4=COMMANDS;_0x502a8d&&(_0x55fdd4=_0x55fdd4['filter'](_0x1e5bdd=>_0x1e5bdd['category']===_0x502a8d));const _0x2c5b9e=_0x55fdd4[_0x52d4d9(0x191)](_0x2c5b96=>{const _0x30c23a=_0x52d4d9;let _0xc702b5=0x0;_0x2c5b96[_0x30c23a(0x18e)][_0x30c23a(0xde)]()===_0xf25586&&(_0xc702b5+=0x64);_0x2c5b96[_0x30c23a(0x18e)][_0x30c23a(0xde)]()[_0x30c23a(0xb9)](_0xf25586)&&(_0xc702b5+=0x32);_0x2c5b96[_0x30c23a(0x10a)][_0x30c23a(0xde)]()[_0x30c23a(0xb9)](_0xf25586)&&(_0xc702b5+=0x1e);for(const _0x1eedbe of _0x19b119){for(const _0x12044a of _0x2c5b96['keywords']){if(_0x12044a===_0x1eedbe)_0xc702b5+=0x14;else(_0x12044a[_0x30c23a(0xb9)](_0x1eedbe)||_0x1eedbe['includes'](_0x12044a))&&(_0xc702b5+=0xa);}_0x2c5b96['name'][_0x30c23a(0xde)]()['includes'](_0x1eedbe)&&(_0xc702b5+=0xf),_0x2c5b96[_0x30c23a(0x10a)][_0x30c23a(0xde)]()[_0x30c23a(0xb9)](_0x1eedbe)&&(_0xc702b5+=0x5);}return{'name':_0x2c5b96[_0x30c23a(0x18e)],'description':_0x2c5b96[_0x30c23a(0x10a)],'category':_0x2c5b96[_0x30c23a(0xa9)],'examples':_0x2c5b96['examples'],'score':_0xc702b5};});return _0x2c5b9e[_0x52d4d9(0x126)](_0x4a0503=>_0x4a0503[_0x52d4d9(0xb7)]>0x0)[_0x52d4d9(0x185)]((_0x36b78f,_0x57be51)=>_0x57be51[_0x52d4d9(0xb7)]-_0x36b78f[_0x52d4d9(0xb7)])[_0x52d4d9(0xe4)](0x0,0xa);}
1
+ const a74_0x5097df=a74_0x1a33;(function(_0x3156ec,_0x276868){const _0x116c20=a74_0x1a33,_0x41e99f=_0x3156ec();while(!![]){try{const _0x3d9b04=-parseInt(_0x116c20(0x1a0))/0x1*(parseInt(_0x116c20(0x1b0))/0x2)+parseInt(_0x116c20(0x160))/0x3*(parseInt(_0x116c20(0x1dc))/0x4)+-parseInt(_0x116c20(0x1cf))/0x5+-parseInt(_0x116c20(0x1e8))/0x6*(-parseInt(_0x116c20(0x1a6))/0x7)+-parseInt(_0x116c20(0x25e))/0x8*(parseInt(_0x116c20(0x1f7))/0x9)+parseInt(_0x116c20(0x225))/0xa+parseInt(_0x116c20(0x20c))/0xb;if(_0x3d9b04===_0x276868)break;else _0x41e99f['push'](_0x41e99f['shift']());}catch(_0x2462e2){_0x41e99f['push'](_0x41e99f['shift']());}}}(a74_0x366d,0x3d35e));function a74_0x1a33(_0x263476,_0x5a4d9c){_0x263476=_0x263476-0x15d;const _0x366dfc=a74_0x366d();let _0x1a33bb=_0x366dfc[_0x263476];return _0x1a33bb;}import{z}from'zod';const COMMANDS=[{'name':a74_0x5097df(0x20e),'description':a74_0x5097df(0x1f5),'category':'Data','keywords':[a74_0x5097df(0x1db),a74_0x5097df(0x1e1),'db',a74_0x5097df(0x1f8),a74_0x5097df(0x25b),'all'],'examples':[a74_0x5097df(0x1b3),'tdx\x20databases',a74_0x5097df(0x197)]},{'name':a74_0x5097df(0x1e6),'description':a74_0x5097df(0x174),'category':a74_0x5097df(0x1e5),'keywords':[a74_0x5097df(0x187),a74_0x5097df(0x1c5),a74_0x5097df(0x1f8),'show',a74_0x5097df(0x24d)],'examples':[a74_0x5097df(0x1da),a74_0x5097df(0x1df),a74_0x5097df(0x16c)]},{'name':a74_0x5097df(0x25b),'description':a74_0x5097df(0x198),'category':'Data','keywords':[a74_0x5097df(0x25b),a74_0x5097df(0x234),'preview',a74_0x5097df(0x171),a74_0x5097df(0x1b8),a74_0x5097df(0x1bb),'records'],'examples':[a74_0x5097df(0x212),a74_0x5097df(0x181)]},{'name':'describe','description':a74_0x5097df(0x244),'category':a74_0x5097df(0x1e5),'keywords':[a74_0x5097df(0x18e),a74_0x5097df(0x24d),a74_0x5097df(0x209),a74_0x5097df(0x1b7),a74_0x5097df(0x1aa),a74_0x5097df(0x236)],'examples':[a74_0x5097df(0x1bc),a74_0x5097df(0x1bf)]},{'name':a74_0x5097df(0x204),'description':'Execute\x20SQL\x20query\x20using\x20Trino','category':a74_0x5097df(0x1e5),'keywords':[a74_0x5097df(0x204),a74_0x5097df(0x25c),a74_0x5097df(0x1e0),a74_0x5097df(0x19b),'execute',a74_0x5097df(0x1c6),a74_0x5097df(0x1b5)],'examples':[a74_0x5097df(0x168),a74_0x5097df(0x189)]},{'name':a74_0x5097df(0x1a3),'description':a74_0x5097df(0x15d),'category':a74_0x5097df(0x1e5),'keywords':[a74_0x5097df(0x200),a74_0x5097df(0x173),'list',a74_0x5097df(0x16a),a74_0x5097df(0x18b)],'examples':['tdx\x20job\x20list',a74_0x5097df(0x1c8),a74_0x5097df(0x24e)]},{'name':a74_0x5097df(0x222),'description':a74_0x5097df(0x20a),'category':'Data','keywords':[a74_0x5097df(0x200),'show',a74_0x5097df(0x1fb),a74_0x5097df(0x221),'info'],'examples':[a74_0x5097df(0x227)]},{'name':a74_0x5097df(0x217),'description':'Get\x20job\x20results','category':'Data','keywords':['job',a74_0x5097df(0x255),a74_0x5097df(0x229),'download'],'examples':[a74_0x5097df(0x1e7)]},{'name':a74_0x5097df(0x1a5),'description':a74_0x5097df(0x1b4),'category':a74_0x5097df(0x1e5),'keywords':[a74_0x5097df(0x200),a74_0x5097df(0x241),a74_0x5097df(0x1ed),a74_0x5097df(0x1d5),a74_0x5097df(0x1b1)],'examples':[a74_0x5097df(0x226)]},{'name':a74_0x5097df(0x239),'description':a74_0x5097df(0x252),'category':a74_0x5097df(0x1e5),'keywords':[a74_0x5097df(0x24c),a74_0x5097df(0x1d7),a74_0x5097df(0x1f1),a74_0x5097df(0x1f8)],'examples':[a74_0x5097df(0x215),'tdx\x20wf\x20projects']},{'name':a74_0x5097df(0x245),'description':a74_0x5097df(0x175),'category':'Data','keywords':[a74_0x5097df(0x24c),'sessions',a74_0x5097df(0x1cd),'executions'],'examples':[a74_0x5097df(0x15e),a74_0x5097df(0x1a1)]},{'name':a74_0x5097df(0x22e),'description':a74_0x5097df(0x232),'category':a74_0x5097df(0x1e5),'keywords':[a74_0x5097df(0x24c),a74_0x5097df(0x1d4),a74_0x5097df(0x229),a74_0x5097df(0x179)],'examples':['tdx\x20workflow\x20logs\x20<attempt_id>']},{'name':a74_0x5097df(0x23e),'description':a74_0x5097df(0x22b),'category':a74_0x5097df(0x1e5),'keywords':['workflow',a74_0x5097df(0x1c6),a74_0x5097df(0x1f0),a74_0x5097df(0x196),a74_0x5097df(0x1ef)],'examples':['tdx\x20workflow\x20run\x20myproject/myworkflow']},{'name':a74_0x5097df(0x17d),'description':a74_0x5097df(0x161),'category':a74_0x5097df(0x1d8),'keywords':[a74_0x5097df(0x195),a74_0x5097df(0x251),a74_0x5097df(0x163),a74_0x5097df(0x1f8),a74_0x5097df(0x208)],'examples':['tdx\x20segment\x20list',a74_0x5097df(0x23d),a74_0x5097df(0x21f)]},{'name':a74_0x5097df(0x1a9),'description':a74_0x5097df(0x248),'category':a74_0x5097df(0x1d8),'keywords':['segment',a74_0x5097df(0x25b),'details',a74_0x5097df(0x23a),a74_0x5097df(0x234)],'examples':['tdx\x20segment\x20show\x20\x22My\x20Segment\x22']},{'name':a74_0x5097df(0x1d1),'description':a74_0x5097df(0x199),'category':'CDP','keywords':['segment',a74_0x5097df(0x25c),a74_0x5097df(0x204),a74_0x5097df(0x257)],'examples':[a74_0x5097df(0x20b)]},{'name':a74_0x5097df(0x213),'description':'Pull\x20segment\x20definition\x20to\x20YAML','category':a74_0x5097df(0x1d8),'keywords':[a74_0x5097df(0x195),a74_0x5097df(0x238),a74_0x5097df(0x182),a74_0x5097df(0x193),a74_0x5097df(0x192)],'examples':['tdx\x20segment\x20pull\x20\x22My\x20Segment\x22\x20-o\x20segment.yaml']},{'name':a74_0x5097df(0x1b9),'description':'Push\x20segment\x20definition\x20from\x20YAML','category':a74_0x5097df(0x1d8),'keywords':[a74_0x5097df(0x195),a74_0x5097df(0x180),a74_0x5097df(0x233),a74_0x5097df(0x237),'create',a74_0x5097df(0x235)],'examples':[a74_0x5097df(0x1ff),'tdx\x20sg\x20push\x20segment.yaml\x20--dry-run']},{'name':a74_0x5097df(0x1f6),'description':a74_0x5097df(0x249),'category':a74_0x5097df(0x1d8),'keywords':['segment',a74_0x5097df(0x169),a74_0x5097df(0x23b),a74_0x5097df(0x209),a74_0x5097df(0x24d)],'examples':[a74_0x5097df(0x186),'tdx\x20sg\x20fields']},{'name':'parent-segment\x20list','description':a74_0x5097df(0x25a),'category':a74_0x5097df(0x1d8),'keywords':[a74_0x5097df(0x1be),a74_0x5097df(0x195),a74_0x5097df(0x243),a74_0x5097df(0x1f8),a74_0x5097df(0x190)],'examples':[a74_0x5097df(0x24f),'tdx\x20ps\x20list']},{'name':a74_0x5097df(0x224),'description':'Pull\x20parent\x20segment\x20definition\x20to\x20YAML','category':a74_0x5097df(0x1d8),'keywords':['parent',a74_0x5097df(0x195),a74_0x5097df(0x238),'download',a74_0x5097df(0x193)],'examples':[a74_0x5097df(0x18d),a74_0x5097df(0x219)]},{'name':a74_0x5097df(0x1f2),'description':a74_0x5097df(0x1d9),'category':'CDP','keywords':['parent',a74_0x5097df(0x195),'push',a74_0x5097df(0x233),a74_0x5097df(0x1d0)],'examples':[a74_0x5097df(0x1c2),a74_0x5097df(0x24a)]},{'name':'parent-segment\x20validate','description':a74_0x5097df(0x218),'category':'CDP','keywords':['parent','segment',a74_0x5097df(0x1ba),'check',a74_0x5097df(0x164)],'examples':['tdx\x20parent-segment\x20validate\x20parent.yaml',a74_0x5097df(0x23c)]},{'name':'parent-segment\x20preview','description':a74_0x5097df(0x1d2),'category':a74_0x5097df(0x1d8),'keywords':['parent',a74_0x5097df(0x195),a74_0x5097df(0x210),'sample','data'],'examples':['tdx\x20parent-segment\x20preview','tdx\x20ps\x20preview\x20--limit\x2010']},{'name':a74_0x5097df(0x170),'description':a74_0x5097df(0x19f),'category':a74_0x5097df(0x1d8),'keywords':[a74_0x5097df(0x18a),'journeys','list',a74_0x5097df(0x184)],'examples':[a74_0x5097df(0x1f9),'tdx\x20journeys']},{'name':a74_0x5097df(0x16b),'description':a74_0x5097df(0x22f),'category':a74_0x5097df(0x1d8),'keywords':['journey',a74_0x5097df(0x234),a74_0x5097df(0x25b),a74_0x5097df(0x1fb)],'examples':[a74_0x5097df(0x214)]},{'name':a74_0x5097df(0x230),'description':'Pull\x20journey\x20definition\x20to\x20YAML','category':a74_0x5097df(0x1d8),'keywords':[a74_0x5097df(0x18a),'pull',a74_0x5097df(0x182),a74_0x5097df(0x193)],'examples':[a74_0x5097df(0x176)]},{'name':a74_0x5097df(0x1e3),'description':a74_0x5097df(0x228),'category':a74_0x5097df(0x1d8),'keywords':[a74_0x5097df(0x18a),a74_0x5097df(0x180),a74_0x5097df(0x233),a74_0x5097df(0x1d0)],'examples':[a74_0x5097df(0x1fa)]},{'name':a74_0x5097df(0x188),'description':a74_0x5097df(0x1ad),'category':'CDP','keywords':[a74_0x5097df(0x21e),a74_0x5097df(0x188),a74_0x5097df(0x193),'sync',a74_0x5097df(0x185)],'examples':['tdx\x20activations','tdx\x20activations\x20--segment\x20\x22My\x20Segment\x22']},{'name':a74_0x5097df(0x220),'description':a74_0x5097df(0x259),'category':a74_0x5097df(0x1d8),'keywords':[a74_0x5097df(0x1dd),a74_0x5097df(0x242),'destination',a74_0x5097df(0x1f8)],'examples':[a74_0x5097df(0x167)]},{'name':a74_0x5097df(0x17f),'description':'Show\x20connection\x20schema\x20for\x20activations','category':'CDP','keywords':[a74_0x5097df(0x1dd),'schema',a74_0x5097df(0x203),a74_0x5097df(0x183)],'examples':['tdx\x20connection\x20schema\x20salesforce',a74_0x5097df(0x231)]},{'name':'agent\x20list','description':a74_0x5097df(0x172),'category':'AI','keywords':['agent',a74_0x5097df(0x1b2),a74_0x5097df(0x205),'ai',a74_0x5097df(0x1f8)],'examples':[a74_0x5097df(0x1c3),'tdx\x20agents']},{'name':a74_0x5097df(0x165),'description':'Show\x20agent\x20details','category':'AI','keywords':['agent',a74_0x5097df(0x25b),a74_0x5097df(0x1fb),a74_0x5097df(0x23a)],'examples':[a74_0x5097df(0x25d)]},{'name':a74_0x5097df(0x177),'description':a74_0x5097df(0x250),'category':'AI','keywords':[a74_0x5097df(0x19e),a74_0x5097df(0x238),'download',a74_0x5097df(0x193)],'examples':[a74_0x5097df(0x23f)]},{'name':a74_0x5097df(0x19d),'description':a74_0x5097df(0x17c),'category':'AI','keywords':[a74_0x5097df(0x19e),a74_0x5097df(0x180),a74_0x5097df(0x233),a74_0x5097df(0x1d0),a74_0x5097df(0x16d)],'examples':[a74_0x5097df(0x20f)]},{'name':'chat','description':a74_0x5097df(0x21a),'category':'AI','keywords':[a74_0x5097df(0x216),'llm','ai',a74_0x5097df(0x1c7),'ask',a74_0x5097df(0x1c9)],'examples':[a74_0x5097df(0x1a8),a74_0x5097df(0x206)]},{'name':'chats','description':'List\x20chat\x20sessions','category':'AI','keywords':[a74_0x5097df(0x216),a74_0x5097df(0x21c),a74_0x5097df(0x1fc),a74_0x5097df(0x16a),a74_0x5097df(0x15f)],'examples':[a74_0x5097df(0x246),a74_0x5097df(0x1f3)]},{'name':a74_0x5097df(0x1a7),'description':a74_0x5097df(0x191),'category':'AI','keywords':[a74_0x5097df(0x205),a74_0x5097df(0x16e),'ai','list'],'examples':[a74_0x5097df(0x194)]},{'name':a74_0x5097df(0x19a),'description':a74_0x5097df(0x240),'category':'AI','keywords':['llm',a74_0x5097df(0x1d7),'ai',a74_0x5097df(0x1f8)],'examples':[a74_0x5097df(0x1cc)]},{'name':a74_0x5097df(0x17e),'description':a74_0x5097df(0x1ea),'category':a74_0x5097df(0x1fe),'keywords':[a74_0x5097df(0x17e),a74_0x5097df(0x166),a74_0x5097df(0x1d3),a74_0x5097df(0x1c0),'select'],'examples':['tdx\x20use\x20mydb',a74_0x5097df(0x258),a74_0x5097df(0x20d)]},{'name':a74_0x5097df(0x16f),'description':'Clear\x20session\x20context','category':a74_0x5097df(0x1fe),'keywords':['unset',a74_0x5097df(0x247),a74_0x5097df(0x223),a74_0x5097df(0x1d3)],'examples':[a74_0x5097df(0x253),a74_0x5097df(0x1d6)]},{'name':a74_0x5097df(0x1e2),'description':a74_0x5097df(0x1de),'category':a74_0x5097df(0x1fe),'keywords':[a74_0x5097df(0x1e4),'profiles',a74_0x5097df(0x1f8),'config'],'examples':[a74_0x5097df(0x17a),'tdx\x20profiles']},{'name':a74_0x5097df(0x1f4),'description':a74_0x5097df(0x22a),'category':a74_0x5097df(0x1fe),'keywords':[a74_0x5097df(0x1e4),a74_0x5097df(0x25b),a74_0x5097df(0x1fb),a74_0x5097df(0x203)],'examples':['tdx\x20profile\x20show\x20myprofile']},{'name':a74_0x5097df(0x1cb),'description':'Show\x20authentication\x20status','category':a74_0x5097df(0x1fe),'keywords':[a74_0x5097df(0x1cb),'authentication','status',a74_0x5097df(0x17b)],'examples':[a74_0x5097df(0x24b),a74_0x5097df(0x1ae)]},{'name':a74_0x5097df(0x178),'description':a74_0x5097df(0x1ee),'category':a74_0x5097df(0x1fe),'keywords':[a74_0x5097df(0x178),'me',a74_0x5097df(0x1c4),a74_0x5097df(0x1fd)],'examples':['tdx\x20user']},{'name':a74_0x5097df(0x21b),'description':a74_0x5097df(0x1ec),'category':'Context','keywords':['users',a74_0x5097df(0x1f8),a74_0x5097df(0x1a4),'members'],'examples':[a74_0x5097df(0x1eb),'tdx\x20user\x20list']},{'name':a74_0x5097df(0x1ac),'description':a74_0x5097df(0x256),'category':'Utilities','keywords':[a74_0x5097df(0x1ac),'http',a74_0x5097df(0x1b6),a74_0x5097df(0x1ab),'curl'],'examples':[a74_0x5097df(0x1ce),a74_0x5097df(0x18c),a74_0x5097df(0x21d)]}];function a74_0x366d(){const _0x124b64=['tdx\x20tables\x20--database\x20mydb','deploy','models','unset','journey\x20list','data','List\x20LLM\x20agents','jobs','List\x20tables\x20in\x20a\x20database','List\x20workflow\x20sessions','tdx\x20journey\x20pull\x20\x22My\x20Journey\x22\x20-o\x20journey.yaml','agent\x20pull','user','debug','tdx\x20profile\x20list','login','Push\x20agent\x20definition\x20from\x20YAML','segment\x20list','use','connection\x20schema','push','tdx\x20show\x20mydb.users\x20--limit\x20100','download','settings','orchestration','destination','tdx\x20segment\x20fields','table','activations','tdx\x20query\x20\x22SELECT\x20count(*)\x20FROM\x20mydb.events\x22','journey','queries','tdx\x20api\x20/v1/audiences\x20--type\x20cdp','tdx\x20parent-segment\x20pull\x20\x22My\x20Parent\x22\x20-o\x20parent.yaml','describe','name','customer','List\x20available\x20LLM\x20models','yaml','export','tdx\x20llm\x20models','segment','start','tdx\x20databases\x20mydb*','Show\x20table\x20contents\x20(SELECT\x20*\x20with\x20limit)','Generate\x20SQL\x20for\x20a\x20segment','llm\x20projects','trino','length','agent\x20push','agent','List\x20customer\x20journeys','163JPayuT','tdx\x20wf\x20sessions\x20--limit\x2010','optional','job\x20list','team','job\x20kill','3542IBohYU','llm\x20models','tdx\x20chat\x20\x22Hello\x22','segment\x20show','structure','request','api','List\x20segment\x20activations\x20(exports)','tdx\x20auth\x20--profile\x20myprofile','category','5806nAgGPd','abort','agents','tdx\x20database\x20list','Kill\x20a\x20running\x20job','presto','raw','types','contents','segment\x20push','validate','rows','tdx\x20describe\x20mydb.users','Optional\x20filter\x20by\x20category','parent','tdx\x20describe\x20mydb.events','switch','filter','tdx\x20parent-segment\x20push\x20parent.yaml','tdx\x20agent\x20list','whoami','tables','run','conversation','tdx\x20jobs','message','description','auth','tdx\x20llm\x20projects','runs','tdx\x20api\x20/v3/database/list','2139410FKOXMi','create','segment\x20sql','Preview\x20parent\x20segment\x20data','context','logs','stop','tdx\x20unset\x20--all','projects','CDP','Push\x20parent\x20segment\x20definition\x20from\x20YAML','tdx\x20table\x20list','database','28imZGYB','connection','List\x20configured\x20profiles','tdx\x20tables\x20mydb.*','select','databases','profile\x20list','journey\x20push','profile','Data','table\x20list','tdx\x20job\x20result\x2012345','2904TObpwH','score','Set\x20session\x20context\x20(database,\x20parent\x20segment,\x20etc.)','tdx\x20users','List\x20users\x20in\x20account','cancel','Show\x20current\x20user\x20info','trigger','execute','digdag','parent-segment\x20push','tdx\x20chats\x20--limit\x2010','profile\x20show','List\x20all\x20databases','segment\x20fields','27YBBuNH','list','tdx\x20journey\x20list','tdx\x20journey\x20push\x20journey.yaml','details','sessions','account','Context','tdx\x20segment\x20push\x20segment.yaml','job','keywords','toLowerCase','config','query','llm','tdx\x20chat\x20--agent\x20myproject/myagent\x20\x22What\x20is\x20TD?\x22','includes','cdp','columns','Show\x20job\x20details','tdx\x20segment\x20sql\x20\x22My\x20Segment\x22','5132182vQNNPs','tdx\x20use\x20--parent-segment\x20\x22My\x20PS\x22','database\x20list','tdx\x20agent\x20push\x20agent.yaml','preview','slice','tdx\x20show\x20mydb.users','segment\x20pull','tdx\x20journey\x20view\x20\x22My\x20Journey\x22','tdx\x20workflow\x20projects','chat','job\x20result','Validate\x20parent\x20segment\x20configuration','tdx\x20ps\x20pull','Chat\x20with\x20an\x20LLM\x20agent','users','chats','tdx\x20api\x20-X\x20POST\x20--data\x20\x27{\x22query\x22:\x22SELECT\x201\x22}\x27\x20/v3/job/issue/hive/mydb','activation','tdx\x20segments\x20--recursive','connection\x20list','status','job\x20show','reset','parent-segment\x20pull','1496730mlrvUj','tdx\x20job\x20kill\x2012345','tdx\x20job\x20show\x2012345','Push\x20journey\x20definition\x20from\x20YAML','output','Show\x20profile\x20details','Run\x20a\x20workflow','map','enum','workflow\x20logs','View\x20journey\x20details','journey\x20pull','tdx\x20connection\x20schema\x20google_ads','View\x20workflow\x20logs','upload','view','update','definition','import','pull','workflow\x20projects','info','attributes','tdx\x20ps\x20validate','tdx\x20segments','workflow\x20run','tdx\x20agent\x20pull\x20myproject/myagent\x20-o\x20agent.yaml','List\x20LLM\x20projects','kill','connections','master','Describe\x20table\x20schema\x20(columns,\x20types)','workflow\x20sessions','tdx\x20chats','clear','Show\x20segment\x20details','List\x20available\x20segment\x20fields','tdx\x20ps\x20push\x20--dry-run','tdx\x20auth','workflow','schema','tdx\x20jobs\x20--limit\x2020','tdx\x20parent-segment\x20list','Pull\x20agent\x20definition\x20to\x20YAML','segments','List\x20workflow\x20projects','tdx\x20unset\x20--database','sort','result','Make\x20raw\x20HTTP\x20requests\x20to\x20TD\x20APIs','generate','tdx\x20use\x20--database\x20mydb','List\x20data\x20connections','List\x20parent\x20segments\x20(customer\x20masters)','show','sql','tdx\x20agent\x20show\x20myproject/myagent','258824oHCVAo','List\x20query\x20jobs','tdx\x20workflow\x20sessions\x20myproject','conversations','166161amlBxK','List\x20audience\x20segments','examples','audience','verify','agent\x20show','set','tdx\x20connection\x20list','tdx\x20query\x20\x22SELECT\x20*\x20FROM\x20mydb.users\x20LIMIT\x2010\x22','fields','history','journey\x20view'];a74_0x366d=function(){return _0x124b64;};return a74_0x366d();}export const TdxSearchInputSchema=z['object']({'query':z['string']()['describe']('Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)'),'category':z[a74_0x5097df(0x22d)]([a74_0x5097df(0x1e5),a74_0x5097df(0x1d8),'AI',a74_0x5097df(0x1fe),'Utilities'])[a74_0x5097df(0x1a2)]()[a74_0x5097df(0x18e)](a74_0x5097df(0x1bd))});export function searchCommands(_0x33613c){const _0x2eddaa=a74_0x5097df,{query:_0x447034,category:_0x3b23e6}=_0x33613c,_0x22e944=_0x447034[_0x2eddaa(0x202)](),_0xb96c30=_0x22e944['split'](/\s+/)[_0x2eddaa(0x1c1)](_0x51854c=>_0x51854c[_0x2eddaa(0x19c)]>0x0);let _0x32792b=COMMANDS;_0x3b23e6&&(_0x32792b=_0x32792b[_0x2eddaa(0x1c1)](_0x5be1aa=>_0x5be1aa[_0x2eddaa(0x1af)]===_0x3b23e6));const _0x3f435f=_0x32792b[_0x2eddaa(0x22c)](_0x1034e=>{const _0x3e9ea9=_0x2eddaa;let _0x20b3f3=0x0;_0x1034e[_0x3e9ea9(0x18f)][_0x3e9ea9(0x202)]()===_0x22e944&&(_0x20b3f3+=0x64);_0x1034e[_0x3e9ea9(0x18f)][_0x3e9ea9(0x202)]()['includes'](_0x22e944)&&(_0x20b3f3+=0x32);_0x1034e[_0x3e9ea9(0x1ca)]['toLowerCase']()[_0x3e9ea9(0x207)](_0x22e944)&&(_0x20b3f3+=0x1e);for(const _0x20ed5f of _0xb96c30){for(const _0x4641c8 of _0x1034e[_0x3e9ea9(0x201)]){if(_0x4641c8===_0x20ed5f)_0x20b3f3+=0x14;else(_0x4641c8[_0x3e9ea9(0x207)](_0x20ed5f)||_0x20ed5f['includes'](_0x4641c8))&&(_0x20b3f3+=0xa);}_0x1034e['name'][_0x3e9ea9(0x202)]()[_0x3e9ea9(0x207)](_0x20ed5f)&&(_0x20b3f3+=0xf),_0x1034e['description'][_0x3e9ea9(0x202)]()[_0x3e9ea9(0x207)](_0x20ed5f)&&(_0x20b3f3+=0x5);}return{'name':_0x1034e[_0x3e9ea9(0x18f)],'description':_0x1034e[_0x3e9ea9(0x1ca)],'category':_0x1034e[_0x3e9ea9(0x1af)],'examples':_0x1034e[_0x3e9ea9(0x162)],'score':_0x20b3f3};});return _0x3f435f['filter'](_0x5ab375=>_0x5ab375[_0x2eddaa(0x1e9)]>0x0)[_0x2eddaa(0x254)]((_0x3b8133,_0x2ea41f)=>_0x2ea41f[_0x2eddaa(0x1e9)]-_0x3b8133[_0x2eddaa(0x1e9)])[_0x2eddaa(0x211)](0x0,0xa);}
@@ -1 +1 @@
1
- const a75_0xaa969f=a75_0x4083;function a75_0x4083(_0x5919ae,_0x1dbde3){_0x5919ae=_0x5919ae-0x19c;const _0x2b3355=a75_0x2b33();let _0x4083bc=_0x2b3355[_0x5919ae];return _0x4083bc;}(function(_0x51a914,_0x54a69f){const _0x5a1419=a75_0x4083,_0x598d18=_0x51a914();while(!![]){try{const _0x885a20=-parseInt(_0x5a1419(0x1c3))/0x1+parseInt(_0x5a1419(0x1cc))/0x2+-parseInt(_0x5a1419(0x19f))/0x3*(-parseInt(_0x5a1419(0x1ae))/0x4)+parseInt(_0x5a1419(0x1ca))/0x5*(parseInt(_0x5a1419(0x1c6))/0x6)+parseInt(_0x5a1419(0x1c1))/0x7*(parseInt(_0x5a1419(0x1b7))/0x8)+parseInt(_0x5a1419(0x1aa))/0x9*(-parseInt(_0x5a1419(0x1c9))/0xa)+parseInt(_0x5a1419(0x1a0))/0xb;if(_0x885a20===_0x54a69f)break;else _0x598d18['push'](_0x598d18['shift']());}catch(_0x53e902){_0x598d18['push'](_0x598d18['shift']());}}}(a75_0x2b33,0x98f23));import{z}from'zod';function a75_0x2b33(){const _0x18bda3=['tags','replace','Tags\x20for\x20the\x20item','superseded','Priority\x20level','1387407RdrjdY','array','824205ZMZkAE','medium','low','122652qcrOJu','done','planning','2290YtOseF','20jAOOkD','critical','1205198oggaHf','filePath','reference','accepted','status','jira','object','33HVHMyw','5495886sRxzqs','template','guide','JIRA\x20ticket\x20reference\x20(org/TICKET-ID)','optional','github','Initial\x20status\x20(default:\x20\x22todo\x22\x20for\x20items,\x20\x22proposed\x22\x20for\x20guides)','design_review','GitHub\x20PR/issue\x20reference\x20(owner/repo#number)','priority','40167RsFzXj','title','Markdown\x20body\x20content','describe','180328jQTIcX','string','review','void','Template\x20name\x20from\x20templates/\x20folder','createDocument','enum','Document\x20kind\x20(default:\x20\x22item\x22)','backlog','32xoqhRv','note','kind','proposed','Item\x20title\x20(required)'];a75_0x2b33=function(){return _0x18bda3;};return a75_0x2b33();}import{WorkspaceSDK,resolveWorkspacePath}from'../../sdk/workspace/index.js';const TASK_STATUSES=[a75_0xaa969f(0x1b6),'todo',a75_0xaa969f(0x1c8),a75_0xaa969f(0x1a7),'in_progress',a75_0xaa969f(0x1b0),a75_0xaa969f(0x1c7),a75_0xaa969f(0x1b1)],GUIDE_STATUSES=[a75_0xaa969f(0x1ba),a75_0xaa969f(0x1cf),'deprecated',a75_0xaa969f(0x1bf)];export const WorkCreateItemInputSchema=z[a75_0xaa969f(0x19e)]({'title':z[a75_0xaa969f(0x1af)]()[a75_0xaa969f(0x1ad)](a75_0xaa969f(0x1bb)),'kind':z[a75_0xaa969f(0x1b4)](['item',a75_0xaa969f(0x1b8),a75_0xaa969f(0x1a2),a75_0xaa969f(0x1ce)])[a75_0xaa969f(0x1a4)]()[a75_0xaa969f(0x1ad)](a75_0xaa969f(0x1b5)),'status':z[a75_0xaa969f(0x1b4)]([...TASK_STATUSES,...GUIDE_STATUSES])[a75_0xaa969f(0x1a4)]()[a75_0xaa969f(0x1ad)](a75_0xaa969f(0x1a6)),'tags':z[a75_0xaa969f(0x1c2)](z[a75_0xaa969f(0x1af)]())[a75_0xaa969f(0x1a4)]()[a75_0xaa969f(0x1ad)](a75_0xaa969f(0x1be)),'priority':z[a75_0xaa969f(0x1b4)]([a75_0xaa969f(0x1cb),'high',a75_0xaa969f(0x1c4),a75_0xaa969f(0x1c5)])[a75_0xaa969f(0x1a4)]()['describe'](a75_0xaa969f(0x1c0)),'body':z[a75_0xaa969f(0x1af)]()['optional']()[a75_0xaa969f(0x1ad)](a75_0xaa969f(0x1ac)),'template':z[a75_0xaa969f(0x1af)]()[a75_0xaa969f(0x1a4)]()[a75_0xaa969f(0x1ad)](a75_0xaa969f(0x1b2)),'github':z[a75_0xaa969f(0x1af)]()[a75_0xaa969f(0x1a4)]()['describe'](a75_0xaa969f(0x1a8)),'jira':z[a75_0xaa969f(0x1af)]()[a75_0xaa969f(0x1a4)]()['describe'](a75_0xaa969f(0x1a3))});export function executeWorkCreateItem(_0x4edf7f){const _0x3e638f=a75_0xaa969f,_0x373568=resolveWorkspacePath();if(!_0x373568)return{'success':![],'error':'No\x20workspace\x20found.\x20Run\x20`tdx\x20work\x20init`\x20to\x20create\x20one.'};const _0x15cea1=new WorkspaceSDK(_0x373568),_0x1061bd={'title':_0x4edf7f[_0x3e638f(0x1ab)],'kind':_0x4edf7f[_0x3e638f(0x1b9)]||'item','status':_0x4edf7f[_0x3e638f(0x19c)],'tags':_0x4edf7f[_0x3e638f(0x1bc)],'priority':_0x4edf7f[_0x3e638f(0x1a9)],'body':_0x4edf7f['body'],'template':_0x4edf7f[_0x3e638f(0x1a1)],'github':_0x4edf7f[_0x3e638f(0x1a5)],'jira':_0x4edf7f[_0x3e638f(0x19d)]},_0x2134f9=_0x15cea1[_0x3e638f(0x1b3)](_0x1061bd);return{'success':!![],'path':_0x2134f9[_0x3e638f(0x1cd)],'slug':_0x2134f9['fileName'][_0x3e638f(0x1bd)](/\.md$/,'')};}
1
+ const a75_0x35784c=a75_0x1390;function a75_0x33c6(){const _0x491b75=['priority','2790utcpNF','5698623LBUnjG','github','string','done','No\x20workspace\x20found.\x20Run\x20`tdx\x20work\x20init`\x20to\x20create\x20one.','GitHub\x20PR/issue\x20reference\x20(owner/repo#number)','backlog','describe','in_progress','JIRA\x20ticket\x20reference\x20(org/TICKET-ID)','58280WsxypQ','5712360cQGrUq','todo','deprecated','high','title','review','template','kind','8vxTPdX','enum','reference','object','15mPBHRb','Item\x20title\x20(required)','accepted','976742aWKkTF','planning','body','item','low','Priority\x20level','superseded','Document\x20kind\x20(default:\x20\x22item\x22)','optional','447856KHbfmu','design_review','void','3418280jeBUdO','Initial\x20status\x20(default:\x20\x22todo\x22\x20for\x20items,\x20\x22proposed\x22\x20for\x20guides)','1898245SkWzdQ','fileName','tags','critical','guide','Tags\x20for\x20the\x20item'];a75_0x33c6=function(){return _0x491b75;};return a75_0x33c6();}(function(_0xbd3090,_0xdd811b){const _0x33f271=a75_0x1390,_0x5f0ce6=_0xbd3090();while(!![]){try{const _0x4bcf50=parseInt(_0x33f271(0x139))/0x1+parseInt(_0x33f271(0x142))/0x2*(-parseInt(_0x33f271(0x136))/0x3)+parseInt(_0x33f271(0x132))/0x4*(-parseInt(_0x33f271(0x147))/0x5)+parseInt(_0x33f271(0x12a))/0x6+-parseInt(_0x33f271(0x11f))/0x7+-parseInt(_0x33f271(0x145))/0x8+parseInt(_0x33f271(0x11e))/0x9*(parseInt(_0x33f271(0x129))/0xa);if(_0x4bcf50===_0xdd811b)break;else _0x5f0ce6['push'](_0x5f0ce6['shift']());}catch(_0x1baba8){_0x5f0ce6['push'](_0x5f0ce6['shift']());}}}(a75_0x33c6,0x96302));import{z}from'zod';import{WorkspaceSDK,resolveWorkspacePath}from'../../sdk/workspace/index.js';const TASK_STATUSES=[a75_0x35784c(0x125),a75_0x35784c(0x12b),a75_0x35784c(0x13a),a75_0x35784c(0x143),a75_0x35784c(0x127),a75_0x35784c(0x12f),a75_0x35784c(0x122),a75_0x35784c(0x144)],GUIDE_STATUSES=['proposed',a75_0x35784c(0x138),a75_0x35784c(0x12c),a75_0x35784c(0x13f)];function a75_0x1390(_0x3c153a,_0x3fac91){_0x3c153a=_0x3c153a-0x11a;const _0x33c6f3=a75_0x33c6();let _0x1390f0=_0x33c6f3[_0x3c153a];return _0x1390f0;}export const WorkCreateItemInputSchema=z[a75_0x35784c(0x135)]({'title':z[a75_0x35784c(0x121)]()[a75_0x35784c(0x126)](a75_0x35784c(0x137)),'kind':z[a75_0x35784c(0x133)]([a75_0x35784c(0x13c),'note',a75_0x35784c(0x11b),a75_0x35784c(0x134)])[a75_0x35784c(0x141)]()[a75_0x35784c(0x126)](a75_0x35784c(0x140)),'status':z[a75_0x35784c(0x133)]([...TASK_STATUSES,...GUIDE_STATUSES])[a75_0x35784c(0x141)]()[a75_0x35784c(0x126)](a75_0x35784c(0x146)),'tags':z['array'](z[a75_0x35784c(0x121)]())[a75_0x35784c(0x141)]()[a75_0x35784c(0x126)](a75_0x35784c(0x11c)),'priority':z[a75_0x35784c(0x133)]([a75_0x35784c(0x11a),a75_0x35784c(0x12d),'medium',a75_0x35784c(0x13d)])[a75_0x35784c(0x141)]()[a75_0x35784c(0x126)](a75_0x35784c(0x13e)),'body':z[a75_0x35784c(0x121)]()[a75_0x35784c(0x141)]()['describe']('Markdown\x20body\x20content'),'template':z[a75_0x35784c(0x121)]()[a75_0x35784c(0x141)]()[a75_0x35784c(0x126)]('Template\x20name\x20from\x20templates/\x20folder'),'github':z[a75_0x35784c(0x121)]()[a75_0x35784c(0x141)]()[a75_0x35784c(0x126)](a75_0x35784c(0x124)),'jira':z[a75_0x35784c(0x121)]()['optional']()[a75_0x35784c(0x126)](a75_0x35784c(0x128))});export function executeWorkCreateItem(_0x1bb17b){const _0x4ee8f7=a75_0x35784c,_0x4e8fb3=resolveWorkspacePath();if(!_0x4e8fb3)return{'success':![],'error':_0x4ee8f7(0x123)};const _0x466187=new WorkspaceSDK(_0x4e8fb3),_0xc4cc2e={'title':_0x1bb17b[_0x4ee8f7(0x12e)],'kind':_0x1bb17b[_0x4ee8f7(0x131)]||_0x4ee8f7(0x13c),'status':_0x1bb17b['status'],'tags':_0x1bb17b[_0x4ee8f7(0x149)],'priority':_0x1bb17b[_0x4ee8f7(0x11d)],'body':_0x1bb17b[_0x4ee8f7(0x13b)],'template':_0x1bb17b[_0x4ee8f7(0x130)],'github':_0x1bb17b[_0x4ee8f7(0x120)],'jira':_0x1bb17b['jira']},_0x492ade=_0x466187['createDocument'](_0xc4cc2e);return{'success':!![],'path':_0x492ade['filePath'],'slug':_0x492ade[_0x4ee8f7(0x148)]['replace'](/\.md$/,'')};}
package/dist/mcp/utils.js CHANGED
@@ -1 +1 @@
1
- const a76_0x40a06a=a76_0xf912;function a76_0xf912(_0x301460,_0x44143e){_0x301460=_0x301460-0x109;const _0x2c0a35=a76_0x2c0a();let _0xf91242=_0x2c0a35[_0x301460];return _0xf91242;}(function(_0x124e82,_0x3c2406){const _0x3726d3=a76_0xf912,_0x3ccda9=_0x124e82();while(!![]){try{const _0x1508da=parseInt(_0x3726d3(0x10e))/0x1*(-parseInt(_0x3726d3(0x11a))/0x2)+-parseInt(_0x3726d3(0x118))/0x3*(parseInt(_0x3726d3(0x11e))/0x4)+-parseInt(_0x3726d3(0x11f))/0x5*(parseInt(_0x3726d3(0x110))/0x6)+-parseInt(_0x3726d3(0x122))/0x7+-parseInt(_0x3726d3(0x116))/0x8+parseInt(_0x3726d3(0x113))/0x9*(-parseInt(_0x3726d3(0x121))/0xa)+parseInt(_0x3726d3(0x11b))/0xb*(parseInt(_0x3726d3(0x117))/0xc);if(_0x1508da===_0x3c2406)break;else _0x3ccda9['push'](_0x3ccda9['shift']());}catch(_0xe4972f){_0x3ccda9['push'](_0x3ccda9['shift']());}}}(a76_0x2c0a,0x43133));const BLOCKED_COMMANDS=[a76_0x40a06a(0x123),a76_0x40a06a(0x10b),'auth\x20clear',a76_0x40a06a(0x10d),a76_0x40a06a(0x120),'profile\x20remove',a76_0x40a06a(0x10a)],BLOCKED_FLAGS=[a76_0x40a06a(0x10f),'-p'];export function hasBlockedFlag(_0x2bba54){const _0x4872fe=a76_0x40a06a;for(const _0x18b648 of _0x2bba54){const _0x51ec6e=_0x18b648[_0x4872fe(0x115)]();for(const _0x2ea69d of BLOCKED_FLAGS){if(_0x51ec6e===_0x2ea69d||_0x51ec6e['startsWith'](_0x2ea69d+'='))return!![];}}return![];}export function isBlockedCommand(_0x379541){const _0x1f7c42=a76_0x40a06a;if(_0x379541['length']===0x0)return![];if(hasBlockedFlag(_0x379541))return!![];const _0x5cf4c6=_0x379541[_0x1f7c42(0x114)](0x0,0x2)['join']('\x20')['toLowerCase']();for(const _0x54cb27 of BLOCKED_COMMANDS){if(_0x5cf4c6[_0x1f7c42(0x11c)](_0x54cb27))return!![];}const _0x6d8f75=_0x379541[0x0][_0x1f7c42(0x115)]();for(const _0x4c033e of BLOCKED_COMMANDS){if(!_0x4c033e[_0x1f7c42(0x111)]('\x20')&&_0x6d8f75===_0x4c033e)return!![];}return![];}export function getBlockedReason(_0xb8a98a){const _0x12594d=a76_0x40a06a;if(!isBlockedCommand(_0xb8a98a))return undefined;if(hasBlockedFlag(_0xb8a98a))return _0x12594d(0x10c);const _0x13a0ad=_0xb8a98a[_0x12594d(0x114)](0x0,0x2)[_0x12594d(0x119)]('\x20')[_0x12594d(0x115)](),_0x24b7b2=_0xb8a98a[0x0]['toLowerCase']();if(_0x13a0ad[_0x12594d(0x11c)]('auth\x20setup')||_0x13a0ad[_0x12594d(0x11c)](_0x12594d(0x10b))||_0x13a0ad[_0x12594d(0x11c)]('auth\x20clear'))return'Credential\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP';if(_0x13a0ad['startsWith'](_0x12594d(0x10d))||_0x13a0ad[_0x12594d(0x11c)](_0x12594d(0x120))||_0x13a0ad[_0x12594d(0x11c)]('profile\x20remove'))return'Profile\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP';if(_0x24b7b2===_0x12594d(0x10a))return _0x12594d(0x112);return'This\x20command\x20is\x20not\x20allowed\x20via\x20MCP';}export function formatOutput(_0x234b08){const _0x1dd675=a76_0x40a06a,_0x617522=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;let _0x31f546=_0x234b08[_0x1dd675(0x11d)](_0x617522,'');return _0x31f546=_0x31f546[_0x1dd675(0x11d)](/\r\n/g,'\x0a')[_0x1dd675(0x11d)](/\r/g,'\x0a'),_0x31f546=_0x31f546[_0x1dd675(0x109)](),_0x31f546;}function a76_0x2c0a(){const _0x58db26=['join','4RMYHEP','6088489hKpCUX','startsWith','replace','7028khjpYA','320rEPgJv','profile\x20delete','50HoKLgT','2380826TbXOZv','auth\x20setup','trimEnd','mcp','auth\x20login','Profile\x20switching\x20via\x20--profile\x20flag\x20is\x20not\x20allowed\x20via\x20MCP','profile\x20create','96916VGqWuq','--profile','42336tRCMOS','includes','Cannot\x20run\x20MCP\x20server\x20recursively','99531KFNDFG','slice','toLowerCase','4249720NImFzq','48doEuna','627AJMpHu'];a76_0x2c0a=function(){return _0x58db26;};return a76_0x2c0a();}
1
+ const a76_0x23470d=a76_0x16e4;(function(_0x3297cd,_0x1396b5){const _0x42c9c4=a76_0x16e4,_0x8280c4=_0x3297cd();while(!![]){try{const _0x3f18c2=parseInt(_0x42c9c4(0x19e))/0x1*(-parseInt(_0x42c9c4(0x18d))/0x2)+parseInt(_0x42c9c4(0x1a0))/0x3+-parseInt(_0x42c9c4(0x1a2))/0x4*(-parseInt(_0x42c9c4(0x197))/0x5)+-parseInt(_0x42c9c4(0x1a1))/0x6+parseInt(_0x42c9c4(0x18f))/0x7*(parseInt(_0x42c9c4(0x19d))/0x8)+parseInt(_0x42c9c4(0x193))/0x9+-parseInt(_0x42c9c4(0x198))/0xa*(parseInt(_0x42c9c4(0x19f))/0xb);if(_0x3f18c2===_0x1396b5)break;else _0x8280c4['push'](_0x8280c4['shift']());}catch(_0x1f0759){_0x8280c4['push'](_0x8280c4['shift']());}}}(a76_0x4885,0x68575));const BLOCKED_COMMANDS=[a76_0x23470d(0x1a6),a76_0x23470d(0x1a3),a76_0x23470d(0x1a8),a76_0x23470d(0x1a7),a76_0x23470d(0x199),'profile\x20remove','mcp'],BLOCKED_FLAGS=[a76_0x23470d(0x18e),'-p'];export function hasBlockedFlag(_0xf31e1a){const _0x5e3c94=a76_0x23470d;for(const _0x2b8c16 of _0xf31e1a){const _0x4a6572=_0x2b8c16[_0x5e3c94(0x1a5)]();for(const _0x4f529c of BLOCKED_FLAGS){if(_0x4a6572===_0x4f529c||_0x4a6572[_0x5e3c94(0x194)](_0x4f529c+'='))return!![];}}return![];}export function isBlockedCommand(_0x1451e1){const _0x51d292=a76_0x23470d;if(_0x1451e1['length']===0x0)return![];if(hasBlockedFlag(_0x1451e1))return!![];const _0xb22456=_0x1451e1[_0x51d292(0x190)](0x0,0x2)[_0x51d292(0x19a)]('\x20')[_0x51d292(0x1a5)]();for(const _0x10cf89 of BLOCKED_COMMANDS){if(_0xb22456[_0x51d292(0x194)](_0x10cf89))return!![];}const _0x4c4843=_0x1451e1[0x0]['toLowerCase']();for(const _0x35ea00 of BLOCKED_COMMANDS){if(!_0x35ea00[_0x51d292(0x196)]('\x20')&&_0x4c4843===_0x35ea00)return!![];}return![];}function a76_0x16e4(_0x1ac45e,_0x3182f8){_0x1ac45e=_0x1ac45e-0x18d;const _0x4885a7=a76_0x4885();let _0x16e47a=_0x4885a7[_0x1ac45e];return _0x16e47a;}export function getBlockedReason(_0xacdcd2){const _0x3656f7=a76_0x23470d;if(!isBlockedCommand(_0xacdcd2))return undefined;if(hasBlockedFlag(_0xacdcd2))return _0x3656f7(0x191);const _0xa108f7=_0xacdcd2[_0x3656f7(0x190)](0x0,0x2)[_0x3656f7(0x19a)]('\x20')[_0x3656f7(0x1a5)](),_0x5b4e15=_0xacdcd2[0x0][_0x3656f7(0x1a5)]();if(_0xa108f7[_0x3656f7(0x194)](_0x3656f7(0x1a6))||_0xa108f7['startsWith']('auth\x20login')||_0xa108f7[_0x3656f7(0x194)](_0x3656f7(0x1a8)))return'Credential\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP';if(_0xa108f7[_0x3656f7(0x194)]('profile\x20create')||_0xa108f7[_0x3656f7(0x194)](_0x3656f7(0x199))||_0xa108f7[_0x3656f7(0x194)]('profile\x20remove'))return _0x3656f7(0x19b);if(_0x5b4e15===_0x3656f7(0x1a4))return _0x3656f7(0x19c);return'This\x20command\x20is\x20not\x20allowed\x20via\x20MCP';}function a76_0x4885(){const _0x14f43a=['join','Profile\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','Cannot\x20run\x20MCP\x20server\x20recursively','8dtYZAq','5oMrekq','708917qJxzSd','839883COeWln','2616312IysPPb','292qxnMyL','auth\x20login','mcp','toLowerCase','auth\x20setup','profile\x20create','auth\x20clear','175306RtxMgE','--profile','4339237aEstte','slice','Profile\x20switching\x20via\x20--profile\x20flag\x20is\x20not\x20allowed\x20via\x20MCP','trimEnd','1334754RdiIuh','startsWith','replace','includes','48265dQEaUA','70mRohqr','profile\x20delete'];a76_0x4885=function(){return _0x14f43a;};return a76_0x4885();}export function formatOutput(_0x12612a){const _0x53d132=a76_0x23470d,_0x5a00ac=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;let _0x1c766f=_0x12612a['replace'](_0x5a00ac,'');return _0x1c766f=_0x1c766f[_0x53d132(0x195)](/\r\n/g,'\x0a')[_0x53d132(0x195)](/\r/g,'\x0a'),_0x1c766f=_0x1c766f[_0x53d132(0x192)](),_0x1c766f;}
@@ -1 +1 @@
1
- function a77_0x531d(){const _0x2d5f32=['warn','4393704zewJNG','546755ezomRu','latestContextTokensBySignature','monthly','credits','entryCount','32038056yLUIDo','1294960cPrdRA','cacheCreationInputTokens','startsWith','270714VjMBsY','init','todayDate','1089sconLS','lastUsedAt','lastUpdatedAt','parse','message','.jsonl','keys','entries','profiles','stats-cache.json','replace','stringify','Invalid\x20session\x20ID:\x20path\x20traversal\x20detected','mtime','sessions','inputTokens','timestamp','length','profile','9388XWJPEI','Failed\x20to\x20process\x20session\x20','month','daily','map','sources','245FmrWcl','trim','.jsonl:','todayCredits','endsWith','filter','toISOString','default','max','object','values','slice','sort','getMonth','totalCredits','cacheReadInputTokens','getTime','contextSignature','utf-8','2326376osQfbL','totalChatUnits','monthCredits','reduce'];a77_0x531d=function(){return _0x2d5f32;};return a77_0x531d();}(function(_0x11fddb,_0x5b32ec){const _0x21f4db=a77_0x2dd9,_0x5aa53a=_0x11fddb();while(!![]){try{const _0x5e1954=parseInt(_0x21f4db(0xe7))/0x1+parseInt(_0x21f4db(0x100))/0x2*(-parseInt(_0x21f4db(0xed))/0x3)+-parseInt(_0x21f4db(0x11e))/0x4+parseInt(_0x21f4db(0x11f))/0x5+-parseInt(_0x21f4db(0xea))/0x6*(parseInt(_0x21f4db(0x106))/0x7)+parseInt(_0x21f4db(0x119))/0x8+parseInt(_0x21f4db(0xe6))/0x9;if(_0x5e1954===_0x5b32ec)break;else _0x5aa53a['push'](_0x5aa53a['shift']());}catch(_0x302b1f){_0x5aa53a['push'](_0x5aa53a['shift']());}}}(a77_0x531d,0xd53a3));import{readFile,writeFile,appendFile,mkdir,readdir,stat}from'node:fs/promises';import{existsSync}from'node:fs';import{join,resolve}from'node:path';import{getModelPricing,calculateTokenCost,usdToAiCredits}from'../sdk/llm/model-factors.js';import{TDXLogger,LogLevel}from'../utils/tdx-logger.js';import{getGlobalCacheDir}from'../utils/global-cache.js';let usageLogger=null;async function getLogger(){const _0x3fec91=a77_0x2dd9;return!usageLogger&&(usageLogger=new TDXLogger(LogLevel['WARN'],!![]),await usageLogger[_0x3fec91(0xeb)]()),usageLogger;}function getUsageDir(){return join(getGlobalCacheDir(),'claude-usage');}function sanitizeSessionId(_0x56cedc){return _0x56cedc['replace'](/[^a-zA-Z0-9_-]/g,'_');}function getSafeJsonlPath(_0x420e3c){const _0x4ec830=a77_0x2dd9,_0x352d02=getUsageDir(),_0x15f859=sanitizeSessionId(_0x420e3c),_0x22fbed=resolve(_0x352d02,_0x15f859+_0x4ec830(0xf2));if(!_0x22fbed[_0x4ec830(0xe9)](_0x352d02))throw new Error(_0x4ec830(0xf9));return _0x22fbed;}function getStatsCachePath(){const _0xd2bdb7=a77_0x2dd9;return join(getUsageDir(),_0xd2bdb7(0xf6));}async function ensureUsageDir(){const _0x129e18=getUsageDir();!existsSync(_0x129e18)&&await mkdir(_0x129e18,{'recursive':!![]});}export async function appendUsageEntry(_0x556977,_0x260e5b){const _0xdf555b=a77_0x2dd9,_0x482a29=sanitizeSessionId(_0x556977);await ensureUsageDir();const _0x556a31=getSafeJsonlPath(_0x482a29),_0x1d0010=JSON[_0xdf555b(0xf8)](_0x260e5b)+'\x0a';await appendFile(_0x556a31,_0x1d0010,_0xdf555b(0x118));}async function readSessionJsonl(_0x928098){const _0x53f0ec=a77_0x2dd9,_0x4c756a=getSafeJsonlPath(_0x928098);if(!existsSync(_0x4c756a))return[];try{const _0xaca646=await readFile(_0x4c756a,'utf-8'),_0x2d8c5b=_0xaca646[_0x53f0ec(0x107)]()['split']('\x0a')['filter'](Boolean);return _0x2d8c5b[_0x53f0ec(0x104)](_0x14db39=>{const _0x4a8c1b=_0x53f0ec;try{return JSON[_0x4a8c1b(0xf0)](_0x14db39);}catch{return null;}})[_0x53f0ec(0x10b)](_0xe62288=>_0xe62288!==null);}catch(_0x2d7b31){const _0x5aca9d=await getLogger();return _0x5aca9d['warn']('Failed\x20to\x20read\x20usage\x20file\x20'+_0x928098+_0x53f0ec(0x108),_0x2d7b31 instanceof Error?_0x2d7b31[_0x53f0ec(0xf1)]:String(_0x2d7b31)),[];}}async function getAllSessionFiles(){const _0x2aeda5=a77_0x2dd9,_0x4f90ae=getUsageDir();if(!existsSync(_0x4f90ae))return[];try{const _0x233aab=await readdir(_0x4f90ae);return _0x233aab['filter'](_0x237203=>_0x237203[_0x2aeda5(0x10a)](_0x2aeda5(0xf2)))[_0x2aeda5(0x104)](_0x27aa26=>_0x27aa26[_0x2aeda5(0xf7)](_0x2aeda5(0xf2),''));}catch(_0x5a37b8){const _0x448c2f=await getLogger();return _0x448c2f[_0x2aeda5(0x11d)]('Failed\x20to\x20read\x20usage\x20directory:',_0x5a37b8 instanceof Error?_0x5a37b8[_0x2aeda5(0xf1)]:String(_0x5a37b8)),[];}}async function readStatsCache(){const _0x4c80b0=a77_0x2dd9,_0x31a431=getStatsCachePath();if(!existsSync(_0x31a431))return null;try{const _0xf58968=await readFile(_0x31a431,_0x4c80b0(0x118)),_0x1475de=JSON[_0x4c80b0(0xf0)](_0xf58968),_0x43da59=Object[_0x4c80b0(0x110)](_0x1475de[_0x4c80b0(0xfb)]||{})[0x0];if(_0x43da59&&_0x4c80b0(0x11a)in _0x43da59)return null;return _0x1475de;}catch{return null;}}async function writeStatsCache(_0x4210e6){const _0x5573de=a77_0x2dd9;await ensureUsageDir();const _0x59ac98=getStatsCachePath();await writeFile(_0x59ac98,JSON[_0x5573de(0xf8)](_0x4210e6,null,0x2),_0x5573de(0x118));}async function isCacheUpToDate(_0x468061,_0xc86dbb){const _0x16a5c5=a77_0x2dd9,_0x1840cc=_0x468061[_0x16a5c5(0xfb)][_0xc86dbb];if(!_0x1840cc)return![];const _0x2c350d=getSafeJsonlPath(_0xc86dbb);if(!existsSync(_0x2c350d))return!![];try{const _0xda9ead=await stat(_0x2c350d),_0x1dafec=new Date(_0x1840cc[_0x16a5c5(0xef)])['getTime'](),_0x382473=_0xda9ead[_0x16a5c5(0xfa)]['getTime']();return _0x1dafec>_0x382473;}catch{return![];}}export async function rebuildCache(){const _0x228d9f=a77_0x2dd9,_0x48f094=new Date(),_0x1a98e4=_0x48f094[_0x228d9f(0x10c)]()['slice'](0x0,0xa),_0x57fd93=_0x48f094['toISOString']()[_0x228d9f(0x111)](0x0,0x7),_0x4cb8a8={'daily':{},'monthly':{},'sessions':{},'profiles':{},'sources':{},'lastRebuiltAt':_0x48f094[_0x228d9f(0x10c)]()},_0x5bc085=await getAllSessionFiles();for(const _0x515bcf of _0x5bc085){try{const _0x14b788=await readSessionJsonl(_0x515bcf);if(_0x14b788[_0x228d9f(0xfe)]===0x0)continue;let _0x44c4b4=0x0;const _0x1293a4={};let _0x561ac8='';for(const _0x106b17 of _0x14b788){const _0x18fc9b=getModelPricing(_0x106b17['model']),_0xfc354c=calculateTokenCost(_0x106b17[_0x228d9f(0xfc)],_0x106b17['outputTokens'],_0x106b17[_0x228d9f(0xe8)]??0x0,_0x106b17[_0x228d9f(0x115)]??0x0,_0x18fc9b),_0x41d542=usdToAiCredits(_0xfc354c);_0x44c4b4+=_0x41d542;const _0x303e9a=_0x106b17[_0x228d9f(0x117)]||'default';_0x1293a4[_0x303e9a]=_0x106b17[_0x228d9f(0xfc)]+(_0x106b17[_0x228d9f(0xe8)]??0x0)+(_0x106b17[_0x228d9f(0x115)]??0x0);_0x106b17[_0x228d9f(0xfd)]>_0x561ac8&&(_0x561ac8=_0x106b17['timestamp']);const _0x39292f=_0x106b17[_0x228d9f(0xfd)][_0x228d9f(0x111)](0x0,0xa);!_0x4cb8a8[_0x228d9f(0x103)][_0x39292f]&&(_0x4cb8a8[_0x228d9f(0x103)][_0x39292f]={'totalCredits':0x0,'entryCount':0x0});_0x4cb8a8[_0x228d9f(0x103)][_0x39292f][_0x228d9f(0x114)]+=_0x41d542,_0x4cb8a8[_0x228d9f(0x103)][_0x39292f][_0x228d9f(0x123)]+=0x1;const _0x17c43f=_0x106b17[_0x228d9f(0xfd)][_0x228d9f(0x111)](0x0,0x7);!_0x4cb8a8[_0x228d9f(0x121)][_0x17c43f]&&(_0x4cb8a8['monthly'][_0x17c43f]={'totalCredits':0x0,'entryCount':0x0});_0x4cb8a8[_0x228d9f(0x121)][_0x17c43f][_0x228d9f(0x114)]+=_0x41d542,_0x4cb8a8[_0x228d9f(0x121)][_0x17c43f][_0x228d9f(0x123)]+=0x1;const _0xdd1279=_0x106b17[_0x228d9f(0xff)]||_0x228d9f(0x10d);!_0x4cb8a8[_0x228d9f(0xf5)][_0xdd1279]&&(_0x4cb8a8[_0x228d9f(0xf5)][_0xdd1279]={'totalCredits':0x0,'entryCount':0x0,'lastUsedAt':'','todayCredits':0x0,'todayDate':_0x1a98e4,'monthCredits':0x0,'month':_0x57fd93});_0x4cb8a8[_0x228d9f(0xf5)][_0xdd1279][_0x228d9f(0x114)]+=_0x41d542,_0x4cb8a8[_0x228d9f(0xf5)][_0xdd1279][_0x228d9f(0x123)]+=0x1;_0x106b17[_0x228d9f(0xfd)]>_0x4cb8a8['profiles'][_0xdd1279][_0x228d9f(0xee)]&&(_0x4cb8a8[_0x228d9f(0xf5)][_0xdd1279][_0x228d9f(0xee)]=_0x106b17[_0x228d9f(0xfd)]);_0x39292f===_0x1a98e4&&(_0x4cb8a8[_0x228d9f(0xf5)][_0xdd1279][_0x228d9f(0x109)]+=_0x41d542);_0x17c43f===_0x57fd93&&(_0x4cb8a8['profiles'][_0xdd1279][_0x228d9f(0x11b)]+=_0x41d542);const _0x4c2a31=_0x106b17['source']||'tdx-claude';!_0x4cb8a8[_0x228d9f(0x105)][_0x4c2a31]&&(_0x4cb8a8['sources'][_0x4c2a31]={'totalCredits':0x0,'entryCount':0x0,'todayCredits':0x0,'todayDate':_0x1a98e4,'monthCredits':0x0,'month':_0x57fd93}),_0x4cb8a8[_0x228d9f(0x105)][_0x4c2a31][_0x228d9f(0x114)]+=_0x41d542,_0x4cb8a8[_0x228d9f(0x105)][_0x4c2a31]['entryCount']+=0x1,_0x39292f===_0x1a98e4&&(_0x4cb8a8['sources'][_0x4c2a31][_0x228d9f(0x109)]+=_0x41d542),_0x17c43f===_0x57fd93&&(_0x4cb8a8['sources'][_0x4c2a31][_0x228d9f(0x11b)]+=_0x41d542);}_0x4cb8a8['sessions'][_0x515bcf]={'totalCredits':_0x44c4b4,'latestContextTokensBySignature':_0x1293a4,'createdAt':_0x14b788[0x0][_0x228d9f(0xfd)],'lastUpdatedAt':_0x561ac8};}catch(_0x232200){const _0x41b544=await getLogger();_0x41b544[_0x228d9f(0x11d)](_0x228d9f(0x101)+_0x515bcf+':',_0x232200 instanceof Error?_0x232200[_0x228d9f(0xf1)]:String(_0x232200));continue;}}return cleanupOldEntries(_0x4cb8a8),await writeStatsCache(_0x4cb8a8),_0x4cb8a8;}function a77_0x2dd9(_0x1c63ab,_0x22e4fa){_0x1c63ab=_0x1c63ab-0xe6;const _0x531d4a=a77_0x531d();let _0x2dd932=_0x531d4a[_0x1c63ab];return _0x2dd932;}function cleanupOldEntries(_0x3a59dd){const _0x4f4aa7=a77_0x2dd9,_0x2e8762=new Date(),_0xe72fa5=new Date(_0x2e8762[_0x4f4aa7(0x116)]()-0x7*0x18*0x3c*0x3c*0x3e8);for(const _0x17a987 of Object[_0x4f4aa7(0xf3)](_0x3a59dd[_0x4f4aa7(0x103)])){new Date(_0x17a987)<_0xe72fa5&&delete _0x3a59dd['daily'][_0x17a987];}const _0x3e43a8=new Date(_0x2e8762['getFullYear']()-0x1,_0x2e8762[_0x4f4aa7(0x113)](),0x1);for(const _0x1da6a1 of Object[_0x4f4aa7(0xf3)](_0x3a59dd[_0x4f4aa7(0x121)])){const [_0x401a87,_0x3c0d8e]=_0x1da6a1['split']('-')[_0x4f4aa7(0x104)](Number),_0x592990=new Date(_0x401a87,_0x3c0d8e-0x1,0x1);_0x592990<_0x3e43a8&&delete _0x3a59dd[_0x4f4aa7(0x121)][_0x1da6a1];}const _0x53c40c=new Date(_0x2e8762[_0x4f4aa7(0x116)]()-0x1e*0x18*0x3c*0x3c*0x3e8);for(const [_0x60d6b9,_0x2d94be]of Object[_0x4f4aa7(0xf4)](_0x3a59dd['sessions'])){new Date(_0x2d94be[_0x4f4aa7(0xef)])<_0x53c40c&&delete _0x3a59dd[_0x4f4aa7(0xfb)][_0x60d6b9];}}export async function getOrUpdateCache(_0x44651e){const _0x33edeb=_0x44651e?sanitizeSessionId(_0x44651e):undefined,_0x378fec=await readStatsCache();if(!_0x378fec)return rebuildCache();if(_0x33edeb){const _0x40808b=await isCacheUpToDate(_0x378fec,_0x33edeb);if(!_0x40808b)return rebuildCache();}return _0x378fec;}export async function getSessionCredits(_0x124807){const _0x2dd86c=a77_0x2dd9,_0x259f9d=sanitizeSessionId(_0x124807),_0x3fac0c=await getOrUpdateCache(_0x259f9d),_0x55910f=_0x3fac0c[_0x2dd86c(0xfb)][_0x259f9d];if(!_0x55910f)return 0x0;return _0x55910f[_0x2dd86c(0x114)];}export async function getTodayCredits(){const _0x11e304=a77_0x2dd9,_0x1d2cd8=await getOrUpdateCache(),_0x554b48=new Date()['toISOString']()['slice'](0x0,0xa),_0x23b7b4=_0x1d2cd8[_0x11e304(0x103)][_0x554b48];if(!_0x23b7b4)return 0x0;return _0x23b7b4[_0x11e304(0x114)];}export async function getMonthCredits(){const _0x571272=a77_0x2dd9,_0x177015=await getOrUpdateCache(),_0x43273e=new Date()['toISOString']()['slice'](0x0,0x7),_0x59a0de=_0x177015[_0x571272(0x121)][_0x43273e];if(!_0x59a0de)return 0x0;return _0x59a0de[_0x571272(0x114)];}export async function getSessionStats(_0x4a0bd1){const _0x844711=a77_0x2dd9,_0x51dfc0=sanitizeSessionId(_0x4a0bd1),_0x5dbd0d=await getOrUpdateCache(_0x51dfc0);return _0x5dbd0d[_0x844711(0xfb)][_0x51dfc0]||null;}function getMaxLatestContextTokens(_0x2bbc5c){const _0x3ba6d2=a77_0x2dd9,_0x25ac67=Object[_0x3ba6d2(0x110)](_0x2bbc5c);if(_0x25ac67['length']===0x0)return 0x0;return Math[_0x3ba6d2(0x10e)](..._0x25ac67);}export async function getUsageStats(_0x337baf,_0x1a4694){const _0x394489=a77_0x2dd9,_0x3e055b=sanitizeSessionId(_0x337baf),_0x508e20=await getOrUpdateCache(_0x3e055b),_0x86da9e=_0x508e20['sessions'][_0x3e055b],_0x56ca3b=new Date()[_0x394489(0x10c)]()[_0x394489(0x111)](0x0,0xa),_0x4c69f2=new Date()[_0x394489(0x10c)]()[_0x394489(0x111)](0x0,0x7);if(_0x1a4694){const _0x2dd09e=_0x508e20[_0x394489(0xf5)]?.[_0x1a4694],_0x2f4eed=_0x2dd09e?.[_0x394489(0xec)]===_0x56ca3b?_0x2dd09e[_0x394489(0x109)]:0x0,_0x8ef6e7=_0x2dd09e?.[_0x394489(0x102)]===_0x4c69f2?_0x2dd09e[_0x394489(0x11b)]:0x0;return{'sessionCredits':_0x86da9e?_0x86da9e[_0x394489(0x114)]:0x0,'todayCredits':_0x2f4eed,'monthCredits':_0x8ef6e7,'latestContextTokens':_0x86da9e?getMaxLatestContextTokens(_0x86da9e['latestContextTokensBySignature']):0x0};}return{'sessionCredits':_0x86da9e?_0x86da9e['totalCredits']:0x0,'todayCredits':_0x508e20[_0x394489(0x103)][_0x56ca3b]?_0x508e20[_0x394489(0x103)][_0x56ca3b][_0x394489(0x114)]:0x0,'monthCredits':_0x508e20['monthly'][_0x4c69f2]?_0x508e20[_0x394489(0x121)][_0x4c69f2]['totalCredits']:0x0,'latestContextTokens':_0x86da9e?getMaxLatestContextTokens(_0x86da9e[_0x394489(0x120)]):0x0};}export async function getAllProfileStats(){const _0x137fd8=a77_0x2dd9,_0x10fc7a=await getOrUpdateCache(),_0x2deba6=_0x10fc7a[_0x137fd8(0xf5)]||{};return Object[_0x137fd8(0xf4)](_0x2deba6)[_0x137fd8(0x10b)](([,_0x56af25])=>_0x56af25&&typeof _0x56af25==='object')[_0x137fd8(0x104)](([_0x13bcea,_0x384c63])=>({'profile':_0x13bcea,'credits':_0x384c63[_0x137fd8(0x114)]||0x0,'entryCount':_0x384c63[_0x137fd8(0x123)]||0x0,'lastUsedAt':_0x384c63['lastUsedAt']||''}))[_0x137fd8(0x112)]((_0x4a15b8,_0x13595c)=>_0x13595c[_0x137fd8(0x122)]-_0x4a15b8[_0x137fd8(0x122)]);}export async function getAllSourceStats(){const _0x4d98e5=a77_0x2dd9,_0x21f163=await getOrUpdateCache(),_0x2d5b3b=_0x21f163[_0x4d98e5(0x105)]||{},_0x57b7cf=new Date()[_0x4d98e5(0x10c)]()[_0x4d98e5(0x111)](0x0,0xa),_0x335fd7=new Date()[_0x4d98e5(0x10c)]()[_0x4d98e5(0x111)](0x0,0x7);return Object[_0x4d98e5(0xf4)](_0x2d5b3b)['filter'](([,_0x2ac0f8])=>_0x2ac0f8&&typeof _0x2ac0f8==='object')[_0x4d98e5(0x104)](([_0x3a90bf,_0x2e129b])=>({'source':_0x3a90bf,'credits':_0x2e129b[_0x4d98e5(0x114)]||0x0,'todayCredits':_0x2e129b[_0x4d98e5(0xec)]===_0x57b7cf?_0x2e129b['todayCredits']||0x0:0x0,'monthCredits':_0x2e129b[_0x4d98e5(0x102)]===_0x335fd7?_0x2e129b[_0x4d98e5(0x11b)]||0x0:0x0,'entryCount':_0x2e129b[_0x4d98e5(0x123)]||0x0}))[_0x4d98e5(0x112)]((_0x418d4f,_0x40406b)=>_0x40406b[_0x4d98e5(0x122)]-_0x418d4f['credits']);}export async function getUsageSummary(){const _0x3ccdea=a77_0x2dd9,_0xa37e1=await getOrUpdateCache(),_0x202c7e=_0xa37e1[_0x3ccdea(0xf5)]||{},_0x2a8251=new Date()['toISOString']()['slice'](0x0,0xa),_0x2f047e=new Date()[_0x3ccdea(0x10c)]()[_0x3ccdea(0x111)](0x0,0x7),_0x1e5ee7=Object[_0x3ccdea(0x110)](_0x202c7e)[_0x3ccdea(0x10b)](_0x5ec529=>_0x5ec529&&typeof _0x5ec529===_0x3ccdea(0x10f)),_0x3f02a4=_0x1e5ee7[_0x3ccdea(0x11c)]((_0x393dca,_0x4ea976)=>_0x393dca+(_0x4ea976[_0x3ccdea(0x114)]||0x0),0x0);return{'todayCredits':_0xa37e1['daily'][_0x2a8251]?_0xa37e1[_0x3ccdea(0x103)][_0x2a8251][_0x3ccdea(0x114)]||0x0:0x0,'monthCredits':_0xa37e1[_0x3ccdea(0x121)][_0x2f047e]?_0xa37e1[_0x3ccdea(0x121)][_0x2f047e][_0x3ccdea(0x114)]||0x0:0x0,'totalCredits':_0x3f02a4,'profileCount':_0x1e5ee7[_0x3ccdea(0xfe)]};}
1
+ (function(_0xd9afb6,_0x2092df){const _0x5388dc=a77_0x5a70,_0x5e76cc=_0xd9afb6();while(!![]){try{const _0x5d80ed=parseInt(_0x5388dc(0xcc))/0x1+parseInt(_0x5388dc(0xae))/0x2+parseInt(_0x5388dc(0xb4))/0x3+-parseInt(_0x5388dc(0xbe))/0x4*(-parseInt(_0x5388dc(0xa9))/0x5)+-parseInt(_0x5388dc(0xc0))/0x6*(parseInt(_0x5388dc(0xab))/0x7)+parseInt(_0x5388dc(0x97))/0x8+-parseInt(_0x5388dc(0xcd))/0x9*(parseInt(_0x5388dc(0xb6))/0xa);if(_0x5d80ed===_0x2092df)break;else _0x5e76cc['push'](_0x5e76cc['shift']());}catch(_0x507dd5){_0x5e76cc['push'](_0x5e76cc['shift']());}}}(a77_0x1d27,0xe6f23));import{readFile,writeFile,appendFile,mkdir,readdir,stat}from'node:fs/promises';import{existsSync}from'node:fs';import{join,resolve}from'node:path';function a77_0x1d27(){const _0x535d5f=['profiles','length','.jsonl','getMonth','endsWith','Failed\x20to\x20read\x20usage\x20file\x20','startsWith','init','default','todayDate','filter','791640XuqcgI','monthly','entries','utf-8','entryCount','cacheReadInputTokens','max','inputTokens','values','mtime','Invalid\x20session\x20ID:\x20path\x20traversal\x20detected','outputTokens','split','timestamp','model','Failed\x20to\x20read\x20usage\x20directory:','warn','daily','45TOnTCV','todayCredits','356587uiMpUR','message','contextSignature','127900TFoUEq','keys','stats-cache.json','lastUpdatedAt','sort','trim','4119036NWxSDv','slice','4395100toQGuZ','source','toISOString','parse','map','totalCredits','getFullYear','sources','307388AFORja','sessions','186vyfLHf','monthCredits','credits','stringify','reduce','month','tdx-claude','.jsonl:','object','cacheCreationInputTokens','getTime','replace','1616116ztoRlX','27xxCmXW','lastUsedAt','WARN'];a77_0x1d27=function(){return _0x535d5f;};return a77_0x1d27();}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 _0x4a444c=a77_0x5a70;return!usageLogger&&(usageLogger=new TDXLogger(LogLevel[_0x4a444c(0xcf)],!![]),await usageLogger[_0x4a444c(0x93)]()),usageLogger;}function getUsageDir(){return join(getGlobalCacheDir(),'claude-usage');}function sanitizeSessionId(_0x7e41d5){const _0x5e326d=a77_0x5a70;return _0x7e41d5[_0x5e326d(0xcb)](/[^a-zA-Z0-9_-]/g,'_');}function getSafeJsonlPath(_0x205df9){const _0x6e6679=a77_0x5a70,_0x342e48=getUsageDir(),_0x38dee0=sanitizeSessionId(_0x205df9),_0x2588e2=resolve(_0x342e48,_0x38dee0+_0x6e6679(0xd2));if(!_0x2588e2[_0x6e6679(0xd6)](_0x342e48))throw new Error(_0x6e6679(0xa1));return _0x2588e2;}function getStatsCachePath(){const _0x49193f=a77_0x5a70;return join(getUsageDir(),_0x49193f(0xb0));}async function ensureUsageDir(){const _0x32479e=getUsageDir();!existsSync(_0x32479e)&&await mkdir(_0x32479e,{'recursive':!![]});}export async function appendUsageEntry(_0x4e4010,_0x4a094f){const _0x395ff4=a77_0x5a70,_0x52c676=sanitizeSessionId(_0x4e4010);await ensureUsageDir();const _0x3f2658=getSafeJsonlPath(_0x52c676),_0x4c635a=JSON[_0x395ff4(0xc3)](_0x4a094f)+'\x0a';await appendFile(_0x3f2658,_0x4c635a,_0x395ff4(0x9a));}async function readSessionJsonl(_0x36253e){const _0x5cc5da=a77_0x5a70,_0x187ca6=getSafeJsonlPath(_0x36253e);if(!existsSync(_0x187ca6))return[];try{const _0xbbff65=await readFile(_0x187ca6,_0x5cc5da(0x9a)),_0x1bbcf6=_0xbbff65[_0x5cc5da(0xb3)]()['split']('\x0a')['filter'](Boolean);return _0x1bbcf6[_0x5cc5da(0xba)](_0x1185bf=>{const _0xeb8c93=_0x5cc5da;try{return JSON[_0xeb8c93(0xb9)](_0x1185bf);}catch{return null;}})[_0x5cc5da(0x96)](_0x98ce9=>_0x98ce9!==null);}catch(_0x17d3f1){const _0x1d4677=await getLogger();return _0x1d4677[_0x5cc5da(0xa7)](_0x5cc5da(0xd5)+_0x36253e+_0x5cc5da(0xc7),_0x17d3f1 instanceof Error?_0x17d3f1[_0x5cc5da(0xac)]:String(_0x17d3f1)),[];}}async function getAllSessionFiles(){const _0xf50c40=a77_0x5a70,_0x3ed598=getUsageDir();if(!existsSync(_0x3ed598))return[];try{const _0x45826e=await readdir(_0x3ed598);return _0x45826e['filter'](_0x206128=>_0x206128[_0xf50c40(0xd4)](_0xf50c40(0xd2)))[_0xf50c40(0xba)](_0x31a5a3=>_0x31a5a3[_0xf50c40(0xcb)]('.jsonl',''));}catch(_0x240493){const _0x51ed33=await getLogger();return _0x51ed33[_0xf50c40(0xa7)](_0xf50c40(0xa6),_0x240493 instanceof Error?_0x240493[_0xf50c40(0xac)]:String(_0x240493)),[];}}async function readStatsCache(){const _0x4844b2=a77_0x5a70,_0x45181b=getStatsCachePath();if(!existsSync(_0x45181b))return null;try{const _0x4e9e03=await readFile(_0x45181b,_0x4844b2(0x9a)),_0xee4506=JSON[_0x4844b2(0xb9)](_0x4e9e03),_0x51fdd0=Object[_0x4844b2(0x9f)](_0xee4506[_0x4844b2(0xbf)]||{})[0x0];if(_0x51fdd0&&'totalChatUnits'in _0x51fdd0)return null;return _0xee4506;}catch{return null;}}async function writeStatsCache(_0x4636e3){const _0x37c5d3=a77_0x5a70;await ensureUsageDir();const _0x498cc4=getStatsCachePath();await writeFile(_0x498cc4,JSON['stringify'](_0x4636e3,null,0x2),_0x37c5d3(0x9a));}async function isCacheUpToDate(_0x27a823,_0x661356){const _0x205f4e=a77_0x5a70,_0x5bf134=_0x27a823[_0x205f4e(0xbf)][_0x661356];if(!_0x5bf134)return![];const _0x521689=getSafeJsonlPath(_0x661356);if(!existsSync(_0x521689))return!![];try{const _0x4f7f37=await stat(_0x521689),_0x348880=new Date(_0x5bf134[_0x205f4e(0xb1)])[_0x205f4e(0xca)](),_0x2cb5a5=_0x4f7f37[_0x205f4e(0xa0)][_0x205f4e(0xca)]();return _0x348880>_0x2cb5a5;}catch{return![];}}export async function rebuildCache(){const _0x5bbfbf=a77_0x5a70,_0x58cfb1=new Date(),_0x55b813=_0x58cfb1['toISOString']()['slice'](0x0,0xa),_0x10691a=_0x58cfb1[_0x5bbfbf(0xb8)]()['slice'](0x0,0x7),_0x6f1531={'daily':{},'monthly':{},'sessions':{},'profiles':{},'sources':{},'lastRebuiltAt':_0x58cfb1[_0x5bbfbf(0xb8)]()},_0x858989=await getAllSessionFiles();for(const _0x3c9fd8 of _0x858989){try{const _0x39e623=await readSessionJsonl(_0x3c9fd8);if(_0x39e623[_0x5bbfbf(0xd1)]===0x0)continue;let _0x432315=0x0;const _0x52dc15={};let _0xd50ebd='';for(const _0x15eb8a of _0x39e623){const _0x3ad3d8=getModelPricing(_0x15eb8a[_0x5bbfbf(0xa5)]),_0x53db9c=calculateTokenCost(_0x15eb8a['inputTokens'],_0x15eb8a[_0x5bbfbf(0xa2)],_0x15eb8a[_0x5bbfbf(0xc9)]??0x0,_0x15eb8a[_0x5bbfbf(0x9c)]??0x0,_0x3ad3d8),_0x388e90=usdToAiCredits(_0x53db9c);_0x432315+=_0x388e90;const _0x8eccc9=_0x15eb8a[_0x5bbfbf(0xad)]||_0x5bbfbf(0x94);_0x52dc15[_0x8eccc9]=_0x15eb8a[_0x5bbfbf(0x9e)]+(_0x15eb8a['cacheCreationInputTokens']??0x0)+(_0x15eb8a[_0x5bbfbf(0x9c)]??0x0);_0x15eb8a[_0x5bbfbf(0xa4)]>_0xd50ebd&&(_0xd50ebd=_0x15eb8a[_0x5bbfbf(0xa4)]);const _0x142cef=_0x15eb8a[_0x5bbfbf(0xa4)]['slice'](0x0,0xa);!_0x6f1531[_0x5bbfbf(0xa8)][_0x142cef]&&(_0x6f1531[_0x5bbfbf(0xa8)][_0x142cef]={'totalCredits':0x0,'entryCount':0x0});_0x6f1531[_0x5bbfbf(0xa8)][_0x142cef]['totalCredits']+=_0x388e90,_0x6f1531['daily'][_0x142cef][_0x5bbfbf(0x9b)]+=0x1;const _0x45442c=_0x15eb8a[_0x5bbfbf(0xa4)][_0x5bbfbf(0xb5)](0x0,0x7);!_0x6f1531[_0x5bbfbf(0x98)][_0x45442c]&&(_0x6f1531[_0x5bbfbf(0x98)][_0x45442c]={'totalCredits':0x0,'entryCount':0x0});_0x6f1531[_0x5bbfbf(0x98)][_0x45442c][_0x5bbfbf(0xbb)]+=_0x388e90,_0x6f1531[_0x5bbfbf(0x98)][_0x45442c][_0x5bbfbf(0x9b)]+=0x1;const _0x41d69e=_0x15eb8a['profile']||_0x5bbfbf(0x94);!_0x6f1531[_0x5bbfbf(0xd0)][_0x41d69e]&&(_0x6f1531[_0x5bbfbf(0xd0)][_0x41d69e]={'totalCredits':0x0,'entryCount':0x0,'lastUsedAt':'','todayCredits':0x0,'todayDate':_0x55b813,'monthCredits':0x0,'month':_0x10691a});_0x6f1531[_0x5bbfbf(0xd0)][_0x41d69e][_0x5bbfbf(0xbb)]+=_0x388e90,_0x6f1531[_0x5bbfbf(0xd0)][_0x41d69e]['entryCount']+=0x1;_0x15eb8a[_0x5bbfbf(0xa4)]>_0x6f1531[_0x5bbfbf(0xd0)][_0x41d69e][_0x5bbfbf(0xce)]&&(_0x6f1531[_0x5bbfbf(0xd0)][_0x41d69e][_0x5bbfbf(0xce)]=_0x15eb8a[_0x5bbfbf(0xa4)]);_0x142cef===_0x55b813&&(_0x6f1531[_0x5bbfbf(0xd0)][_0x41d69e][_0x5bbfbf(0xaa)]+=_0x388e90);_0x45442c===_0x10691a&&(_0x6f1531['profiles'][_0x41d69e][_0x5bbfbf(0xc1)]+=_0x388e90);const _0x2d6f2a=_0x15eb8a[_0x5bbfbf(0xb7)]||_0x5bbfbf(0xc6);!_0x6f1531[_0x5bbfbf(0xbd)][_0x2d6f2a]&&(_0x6f1531['sources'][_0x2d6f2a]={'totalCredits':0x0,'entryCount':0x0,'todayCredits':0x0,'todayDate':_0x55b813,'monthCredits':0x0,'month':_0x10691a}),_0x6f1531[_0x5bbfbf(0xbd)][_0x2d6f2a][_0x5bbfbf(0xbb)]+=_0x388e90,_0x6f1531[_0x5bbfbf(0xbd)][_0x2d6f2a][_0x5bbfbf(0x9b)]+=0x1,_0x142cef===_0x55b813&&(_0x6f1531[_0x5bbfbf(0xbd)][_0x2d6f2a][_0x5bbfbf(0xaa)]+=_0x388e90),_0x45442c===_0x10691a&&(_0x6f1531['sources'][_0x2d6f2a]['monthCredits']+=_0x388e90);}_0x6f1531[_0x5bbfbf(0xbf)][_0x3c9fd8]={'totalCredits':_0x432315,'latestContextTokensBySignature':_0x52dc15,'createdAt':_0x39e623[0x0]['timestamp'],'lastUpdatedAt':_0xd50ebd};}catch(_0x1c63b0){const _0x4c2fe8=await getLogger();_0x4c2fe8[_0x5bbfbf(0xa7)]('Failed\x20to\x20process\x20session\x20'+_0x3c9fd8+':',_0x1c63b0 instanceof Error?_0x1c63b0[_0x5bbfbf(0xac)]:String(_0x1c63b0));continue;}}return cleanupOldEntries(_0x6f1531),await writeStatsCache(_0x6f1531),_0x6f1531;}function a77_0x5a70(_0x5da516,_0x49d210){_0x5da516=_0x5da516-0x93;const _0x1d27ed=a77_0x1d27();let _0x5a702d=_0x1d27ed[_0x5da516];return _0x5a702d;}function cleanupOldEntries(_0x574ce4){const _0x5546b5=a77_0x5a70,_0x2d2501=new Date(),_0x28168d=new Date(_0x2d2501[_0x5546b5(0xca)]()-0x7*0x18*0x3c*0x3c*0x3e8);for(const _0x125964 of Object['keys'](_0x574ce4['daily'])){new Date(_0x125964)<_0x28168d&&delete _0x574ce4[_0x5546b5(0xa8)][_0x125964];}const _0xc98ca1=new Date(_0x2d2501[_0x5546b5(0xbc)]()-0x1,_0x2d2501[_0x5546b5(0xd3)](),0x1);for(const _0x21f24f of Object[_0x5546b5(0xaf)](_0x574ce4['monthly'])){const [_0x4af188,_0x4dc531]=_0x21f24f[_0x5546b5(0xa3)]('-')[_0x5546b5(0xba)](Number),_0x178360=new Date(_0x4af188,_0x4dc531-0x1,0x1);_0x178360<_0xc98ca1&&delete _0x574ce4[_0x5546b5(0x98)][_0x21f24f];}const _0x1166f8=new Date(_0x2d2501[_0x5546b5(0xca)]()-0x1e*0x18*0x3c*0x3c*0x3e8);for(const [_0x1a3289,_0x2f5bd9]of Object[_0x5546b5(0x99)](_0x574ce4['sessions'])){new Date(_0x2f5bd9[_0x5546b5(0xb1)])<_0x1166f8&&delete _0x574ce4['sessions'][_0x1a3289];}}export async function getOrUpdateCache(_0x49c726){const _0x58528e=_0x49c726?sanitizeSessionId(_0x49c726):undefined,_0x11583c=await readStatsCache();if(!_0x11583c)return rebuildCache();if(_0x58528e){const _0x24b722=await isCacheUpToDate(_0x11583c,_0x58528e);if(!_0x24b722)return rebuildCache();}return _0x11583c;}export async function getSessionCredits(_0x24c52a){const _0x369969=a77_0x5a70,_0x5af2e0=sanitizeSessionId(_0x24c52a),_0x37b2eb=await getOrUpdateCache(_0x5af2e0),_0x5718b8=_0x37b2eb['sessions'][_0x5af2e0];if(!_0x5718b8)return 0x0;return _0x5718b8[_0x369969(0xbb)];}export async function getTodayCredits(){const _0x285ccb=a77_0x5a70,_0x1c1c17=await getOrUpdateCache(),_0x3d2de3=new Date()[_0x285ccb(0xb8)]()[_0x285ccb(0xb5)](0x0,0xa),_0x336ac8=_0x1c1c17[_0x285ccb(0xa8)][_0x3d2de3];if(!_0x336ac8)return 0x0;return _0x336ac8[_0x285ccb(0xbb)];}export async function getMonthCredits(){const _0x311c41=a77_0x5a70,_0x59a3dd=await getOrUpdateCache(),_0x6dca64=new Date()[_0x311c41(0xb8)]()[_0x311c41(0xb5)](0x0,0x7),_0x93c041=_0x59a3dd[_0x311c41(0x98)][_0x6dca64];if(!_0x93c041)return 0x0;return _0x93c041[_0x311c41(0xbb)];}export async function getSessionStats(_0x1dd337){const _0x2fea60=a77_0x5a70,_0x36008c=sanitizeSessionId(_0x1dd337),_0x119b85=await getOrUpdateCache(_0x36008c);return _0x119b85[_0x2fea60(0xbf)][_0x36008c]||null;}function getMaxLatestContextTokens(_0x1e94cf){const _0x22ae60=a77_0x5a70,_0x580db3=Object[_0x22ae60(0x9f)](_0x1e94cf);if(_0x580db3['length']===0x0)return 0x0;return Math[_0x22ae60(0x9d)](..._0x580db3);}export async function getUsageStats(_0x2634e9,_0x1d232d){const _0x57e4cf=a77_0x5a70,_0x29a0f3=sanitizeSessionId(_0x2634e9),_0x1c29ec=await getOrUpdateCache(_0x29a0f3),_0xc0a74c=_0x1c29ec[_0x57e4cf(0xbf)][_0x29a0f3],_0x397e54=new Date()[_0x57e4cf(0xb8)]()['slice'](0x0,0xa),_0x28f690=new Date()[_0x57e4cf(0xb8)]()['slice'](0x0,0x7);if(_0x1d232d){const _0x180158=_0x1c29ec[_0x57e4cf(0xd0)]?.[_0x1d232d],_0x4c8c14=_0x180158?.[_0x57e4cf(0x95)]===_0x397e54?_0x180158[_0x57e4cf(0xaa)]:0x0,_0x1eef3a=_0x180158?.[_0x57e4cf(0xc5)]===_0x28f690?_0x180158[_0x57e4cf(0xc1)]:0x0;return{'sessionCredits':_0xc0a74c?_0xc0a74c[_0x57e4cf(0xbb)]:0x0,'todayCredits':_0x4c8c14,'monthCredits':_0x1eef3a,'latestContextTokens':_0xc0a74c?getMaxLatestContextTokens(_0xc0a74c['latestContextTokensBySignature']):0x0};}return{'sessionCredits':_0xc0a74c?_0xc0a74c[_0x57e4cf(0xbb)]:0x0,'todayCredits':_0x1c29ec[_0x57e4cf(0xa8)][_0x397e54]?_0x1c29ec[_0x57e4cf(0xa8)][_0x397e54]['totalCredits']:0x0,'monthCredits':_0x1c29ec[_0x57e4cf(0x98)][_0x28f690]?_0x1c29ec[_0x57e4cf(0x98)][_0x28f690][_0x57e4cf(0xbb)]:0x0,'latestContextTokens':_0xc0a74c?getMaxLatestContextTokens(_0xc0a74c['latestContextTokensBySignature']):0x0};}export async function getAllProfileStats(){const _0x2748fa=a77_0x5a70,_0x5c9668=await getOrUpdateCache(),_0x28ff11=_0x5c9668[_0x2748fa(0xd0)]||{};return Object[_0x2748fa(0x99)](_0x28ff11)[_0x2748fa(0x96)](([,_0x3dd999])=>_0x3dd999&&typeof _0x3dd999===_0x2748fa(0xc8))[_0x2748fa(0xba)](([_0x340420,_0x59b2c5])=>({'profile':_0x340420,'credits':_0x59b2c5[_0x2748fa(0xbb)]||0x0,'entryCount':_0x59b2c5[_0x2748fa(0x9b)]||0x0,'lastUsedAt':_0x59b2c5['lastUsedAt']||''}))[_0x2748fa(0xb2)]((_0x2276b1,_0x1a4021)=>_0x1a4021['credits']-_0x2276b1['credits']);}export async function getAllSourceStats(){const _0x49b176=a77_0x5a70,_0x57850e=await getOrUpdateCache(),_0xe8d523=_0x57850e[_0x49b176(0xbd)]||{},_0x4f9f3e=new Date()[_0x49b176(0xb8)]()[_0x49b176(0xb5)](0x0,0xa),_0x35cab9=new Date()[_0x49b176(0xb8)]()['slice'](0x0,0x7);return Object[_0x49b176(0x99)](_0xe8d523)['filter'](([,_0x2c6785])=>_0x2c6785&&typeof _0x2c6785==='object')[_0x49b176(0xba)](([_0x19c2d2,_0x3df942])=>({'source':_0x19c2d2,'credits':_0x3df942[_0x49b176(0xbb)]||0x0,'todayCredits':_0x3df942[_0x49b176(0x95)]===_0x4f9f3e?_0x3df942['todayCredits']||0x0:0x0,'monthCredits':_0x3df942[_0x49b176(0xc5)]===_0x35cab9?_0x3df942[_0x49b176(0xc1)]||0x0:0x0,'entryCount':_0x3df942['entryCount']||0x0}))[_0x49b176(0xb2)]((_0x1af275,_0x1e68db)=>_0x1e68db[_0x49b176(0xc2)]-_0x1af275[_0x49b176(0xc2)]);}export async function getUsageSummary(){const _0x24732b=a77_0x5a70,_0x28ea0c=await getOrUpdateCache(),_0x5b138d=_0x28ea0c[_0x24732b(0xd0)]||{},_0x2b54ed=new Date()['toISOString']()[_0x24732b(0xb5)](0x0,0xa),_0x476e67=new Date()[_0x24732b(0xb8)]()[_0x24732b(0xb5)](0x0,0x7),_0xcf37c3=Object[_0x24732b(0x9f)](_0x5b138d)['filter'](_0x28afde=>_0x28afde&&typeof _0x28afde==='object'),_0x561808=_0xcf37c3[_0x24732b(0xc4)]((_0x1724c5,_0x2fc93c)=>_0x1724c5+(_0x2fc93c['totalCredits']||0x0),0x0);return{'todayCredits':_0x28ea0c[_0x24732b(0xa8)][_0x2b54ed]?_0x28ea0c['daily'][_0x2b54ed][_0x24732b(0xbb)]||0x0:0x0,'monthCredits':_0x28ea0c['monthly'][_0x476e67]?_0x28ea0c[_0x24732b(0x98)][_0x476e67][_0x24732b(0xbb)]||0x0:0x0,'totalCredits':_0x561808,'profileCount':_0xcf37c3[_0x24732b(0xd1)]};}
@@ -1 +1 @@
1
- const a78_0x76c134=a78_0x6c48;(function(_0xf66842,_0x412601){const _0x5fb1a6=a78_0x6c48,_0x5cc5c1=_0xf66842();while(!![]){try{const _0x182e10=parseInt(_0x5fb1a6(0xbf))/0x1*(-parseInt(_0x5fb1a6(0xbc))/0x2)+parseInt(_0x5fb1a6(0xc1))/0x3+-parseInt(_0x5fb1a6(0x11c))/0x4*(parseInt(_0x5fb1a6(0xba))/0x5)+parseInt(_0x5fb1a6(0xab))/0x6*(-parseInt(_0x5fb1a6(0xb4))/0x7)+parseInt(_0x5fb1a6(0xc2))/0x8+parseInt(_0x5fb1a6(0x8b))/0x9*(parseInt(_0x5fb1a6(0xe3))/0xa)+-parseInt(_0x5fb1a6(0x102))/0xb*(-parseInt(_0x5fb1a6(0xf1))/0xc);if(_0x182e10===_0x412601)break;else _0x5cc5c1['push'](_0x5cc5c1['shift']());}catch(_0x270349){_0x5cc5c1['push'](_0x5cc5c1['shift']());}}}(a78_0x52df,0x4c953));import a78_0x5c7512 from'fastify';import a78_0x102436 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';function a78_0x52df(){const _0x1a436a=['method','[PASSTHROUGH]\x20','server','EADDRINUSE','parse','code',',\x20output=','post','user-agent','11xxLmNz','Content-Type',',\x20model=','entries','read','writeHead','headers','TD\x20LLM\x20Pass-through\x20Proxy\x20Server','Stream\x20interrupted','haiku','/v1/messages','refreshTimer','[PASSTHROUGH]\x20Usage:\x20input=','OPTIONS',',\x20cache_read=','expiresAt','content-length','toISOString','isArray','stop','error','expires_at','setupMiddleware','Authorization','has','tdx','92SLAkJq','User-Agent','text/event-stream','handleCountTokens','apiKey','output_tokens','handleMessages',',\x20cache_create=','cacheCreationInputTokens','application/json','host','processChunk','message','buildForwardHeaders','/v1/messages/count_tokens','url','101295ToKVEx','|\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|','cache_creation_input_tokens','refreshTokenIfNeeded','anthropic-version','refreshToken','Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20','\x20in\x20use,\x20trying\x20next...','/health','header','logger','metadata','api_error','SKIP_HEADERS','[PASSTHROUGH\x20PROXY\x20ERROR]:','Pass-through\x20proxy\x20server\x20started\x20on\x20port\x20','text',',\x20stream=','startPort',':\x20messages=','statusText','access_token','decode','logUsage','setupJsonParser','port','getUsage','X-TD-Client','_boundPort','Error\x20body:\x20','string','start','5502GhFpFx','handleStreamingResponse','timeout','event:\x20error\x0adata:\x20','authorization','unknown','unref','startsWith','body','1022ZCVXbG','X-TD-Client-Version','[PASSTHROUGH]\x20Stream\x20error:','127.0.0.1','setErrorHandler','messages','80365vHGDTq','startTokenRefreshTimer','830XUmYiQ','model','http://127.0.0.1:','1468EYmXAT','auth','63048dJPEhX','4708416LrqHjM','register','match','raw','indexOf','usage','inputTokens','flush','stringify','Forwarding\x20to:\x20','info','input_tokens','status','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20request:','listen','config','Unknown\x20error','Server\x20has\x20not\x20been\x20started\x20yet','\x20and\x20','transfer-encoding','get','includes','oauth','now','timeoutMs','slice','Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20','|\x20Debug\x20agent\x20issues\x20|\x20tdx-skills:agent-debug\x20|\x0a','Bearer\x20','accessToken','write','setupRoutes','timeout_error','430wDTjLS','POST','cache_read_input_tokens','type','llmProxyUrl','send','name','[PASSTHROUGH]\x20OAuth\x20token\x20refreshed\x20successfully','addContentTypeParser','outputTokens','default','[PASSTHROUGH]\x20Upstream\x20error:\x20','keep-alive','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','3995172DcvlRc','refresh_token','profile','toLowerCase','debug','Port\x20','end','createServer'];a78_0x52df=function(){return _0x1a436a;};return a78_0x52df();}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_0x76c134(0xf0)+(isExperimentalAvailable()?a78_0x76c134(0xdd):'')+a78_0x76c134(0x8c);function extractSessionUUID(_0x4dcab3){const _0x282f89=a78_0x76c134,_0x2adec4=_0x4dcab3[_0x282f89(0xc4)](/_session_([a-f0-9-]+)$/i);if(_0x2adec4)return _0x2adec4[0x1];return _0x4dcab3;}export function injectSystemPrompt(_0x923e18,_0x133908){const _0x246e11=a78_0x76c134,_0x1934b4=_0x923e18['system'];if(!_0x1934b4)return{..._0x923e18,'system':_0x133908};if(typeof _0x1934b4==='string')return{..._0x923e18,'system':_0x1934b4+'\x0a\x0a'+_0x133908};if(Array[_0x246e11(0x114)](_0x1934b4)){const _0x5c4132={'type':_0x246e11(0x9b),'text':_0x133908};return{..._0x923e18,'system':[..._0x1934b4,_0x5c4132]};}return _0x923e18;}export function shouldInjectSystemPrompt(_0x4a31fa){const _0x128056=a78_0x76c134;return!_0x4a31fa[_0x128056(0xf4)]()['includes'](_0x128056(0x10b));}const TOKEN_REFRESH_INTERVAL_MS=0x5*0x3c*0x3e8,TOKEN_EXPIRY_BUFFER_MS=0x5*0x3c*0x3e8;function a78_0x6c48(_0x37c403,_0x33e1b8){_0x37c403=_0x37c403-0x83;const _0x52dfc9=a78_0x52df();let _0x6c4837=_0x52dfc9[_0x37c403];return _0x6c4837;}export class PassThroughProxyServer{['server'];[a78_0x76c134(0xd1)];[a78_0x76c134(0x95)];['_boundPort'];[a78_0x76c134(0x10d)];constructor(_0x1e7fbf){const _0xeace50=a78_0x76c134;this[_0xeace50(0xd1)]=_0x1e7fbf,this[_0xeace50(0x95)]=_0x1e7fbf['logger'],this['server']=this[_0xeace50(0xf8)]();}get[a78_0x76c134(0xa4)](){const _0x207b48=a78_0x76c134;if(this[_0x207b48(0xa7)]===undefined)throw new Error(_0x207b48(0xd3));return this[_0x207b48(0xa7)];}[a78_0x76c134(0xf8)](){const _0x7faa8b=a78_0x76c134,_0x449aa9=a78_0x5c7512({'logger':![],'bodyLimit':0x40*0x400*0x400});return this['server']=_0x449aa9,this['setupJsonParser'](),this['setupMiddleware'](),this[_0x7faa8b(0xe1)](),_0x449aa9;}[a78_0x76c134(0xa3)](){const _0x444159=a78_0x76c134;this[_0x444159(0xfb)][_0x444159(0xeb)](_0x444159(0x84),{'parseAs':_0x444159(0xa9)},(_0x2dadfd,_0x183540,_0x4a6f03)=>{try{const _0x22ff1c=JSON['parse'](_0x183540);_0x4a6f03(null,_0x22ff1c);}catch(_0xe0c239){_0x4a6f03(_0xe0c239,undefined);}});}[a78_0x76c134(0x118)](){const _0x1c2c54=a78_0x76c134;this[_0x1c2c54(0xfb)][_0x1c2c54(0xc3)](a78_0x102436,{'origin':!![],'methods':['GET',_0x1c2c54(0xe4),_0x1c2c54(0x10f)],'allowedHeaders':[_0x1c2c54(0x103),_0x1c2c54(0x119),_0x1c2c54(0x8f),'x-api-key']}),this[_0x1c2c54(0xfb)][_0x1c2c54(0xb8)]((_0x385c74,_0x1cb6d6,_0x5e4b2b)=>{const _0x425739=_0x1c2c54,_0x50cda5=_0x385c74 instanceof Error?_0x385c74['message']:_0x425739(0xd2);this[_0x425739(0x95)][_0x425739(0x116)](_0x425739(0x99),_0x385c74),_0x5e4b2b[_0x425739(0xfe)](0x1f4)[_0x425739(0xe8)]({'type':_0x425739(0x116),'error':{'type':_0x425739(0x97),'message':_0x50cda5}});});}[a78_0x76c134(0xe1)](){const _0x22ff02=a78_0x76c134;this[_0x22ff02(0xfb)][_0x22ff02(0xd6)](_0x22ff02(0x93),async()=>{const _0x4e4acc=_0x22ff02;return{'status':'ok','message':_0x4e4acc(0x109)};}),this[_0x22ff02(0xfb)][_0x22ff02(0x100)](_0x22ff02(0x10c),async(_0x2035ec,_0x5c67fd)=>{const _0x2ab92d=_0x22ff02;return this[_0x2ab92d(0x122)](_0x2035ec,_0x5c67fd);}),this[_0x22ff02(0xfb)][_0x22ff02(0x100)](_0x22ff02(0x89),async(_0x495d8f,_0x31faa6)=>{return this['handleCountTokens'](_0x495d8f,_0x31faa6);});}static [a78_0x76c134(0x98)]=new Set([a78_0x76c134(0x85),'connection',a78_0x76c134(0x112),a78_0x76c134(0xd5),a78_0x76c134(0xaf),'x-api-key',a78_0x76c134(0x101)]);[a78_0x76c134(0x88)](_0x4fafe8){const _0x414950=a78_0x76c134,_0x1f193f={};for(const [_0x4d779c,_0x5dd41c]of Object[_0x414950(0x105)](_0x4fafe8[_0x414950(0x108)])){const _0x1cc219=_0x4d779c[_0x414950(0xf4)]();if(PassThroughProxyServer[_0x414950(0x98)][_0x414950(0x11a)](_0x1cc219))continue;if(_0x1cc219[_0x414950(0xb2)]('x-td-'))continue;if(typeof _0x5dd41c===_0x414950(0xa9))_0x1f193f[_0x4d779c]=_0x5dd41c;else Array[_0x414950(0x114)](_0x5dd41c)&&(_0x1f193f[_0x4d779c]=_0x5dd41c['join'](',\x20'));}const _0xa100c9=getVersion(),{auth:_0x34cfe1}=this[_0x414950(0xd1)];return _0x1f193f[_0x414950(0x119)]=_0x34cfe1[_0x414950(0xe6)]==='oauth'?_0x414950(0xde)+_0x34cfe1[_0x414950(0xdf)]:'TD1\x20'+_0x34cfe1[_0x414950(0x120)],_0x1f193f[_0x414950(0x11d)]='tdx/'+_0xa100c9,_0x1f193f[_0x414950(0xa6)]=_0x414950(0x11b),_0x1f193f[_0x414950(0xb5)]=_0xa100c9,_0x1f193f;}async['handleMessages'](_0x3555f0,_0x128c4b){const _0x469323=a78_0x76c134,_0x2fdbb1=_0x3555f0[_0x469323(0xb3)],_0x205b5a=_0x2fdbb1['stream']!==![],_0x2941bd=_0x2fdbb1[_0x469323(0x96)],_0x4e1683=_0x2941bd?.['user_id']||_0x469323(0xed),_0x5193d3=extractSessionUUID(_0x4e1683),_0xe6019a=_0x2fdbb1['model']||_0x469323(0xb0),_0x2f3816=shouldInjectSystemPrompt(_0xe6019a)?injectSystemPrompt(_0x2fdbb1,TDX_SYSTEM_PROMPT):_0x2fdbb1,_0xe1cc91=JSON[_0x469323(0xca)](_0x2f3816),_0x20077d=Array[_0x469323(0x114)](_0x2fdbb1[_0x469323(0xb9)])?_0x2fdbb1[_0x469323(0xb9)]['length']:0x0;this[_0x469323(0x95)][_0x469323(0xcc)](_0x469323(0xfa)+_0x3555f0[_0x469323(0xf9)]+'\x20'+_0x3555f0[_0x469323(0x8a)]+_0x469323(0x9e)+_0x20077d+',\x20model='+_0xe6019a+_0x469323(0x9c)+_0x205b5a);const _0x31c25d=_0x3555f0[_0x469323(0x8a)]['includes']('?')?_0x3555f0[_0x469323(0x8a)]['slice'](_0x3555f0[_0x469323(0x8a)]['indexOf']('?')):'',_0x773da4=this[_0x469323(0xd1)][_0x469323(0xe7)]+_0x469323(0x10c)+_0x31c25d,_0x59f633=this[_0x469323(0x88)](_0x3555f0);this[_0x469323(0x95)][_0x469323(0xf5)]('Forwarding\x20to:\x20'+_0x773da4);const _0x59c4b1=this[_0x469323(0xd1)][_0x469323(0xda)]||DEFAULT_TIMEOUT_MS;try{const _0x1da5b7=await fetch(_0x773da4,{'method':_0x469323(0xe4),'headers':_0x59f633,'body':_0xe1cc91,'signal':AbortSignal[_0x469323(0xad)](_0x59c4b1)});if(!_0x1da5b7['ok']){const _0x5f4b5f=await _0x1da5b7[_0x469323(0x9b)]();return this['logger']['error'](_0x469323(0xee)+_0x1da5b7[_0x469323(0xce)]+'\x20'+_0x1da5b7[_0x469323(0x9f)]),this[_0x469323(0x95)]['debug'](_0x469323(0xa8)+_0x5f4b5f),_0x128c4b[_0x469323(0xfe)](_0x1da5b7[_0x469323(0xce)]),_0x128c4b[_0x469323(0x94)](_0x469323(0x103),_0x1da5b7[_0x469323(0x108)][_0x469323(0xd6)](_0x469323(0x103))||'application/json'),_0x128c4b[_0x469323(0xe8)](_0x5f4b5f);}if(_0x205b5a&&_0x1da5b7[_0x469323(0xb3)])await this['handleStreamingResponse'](_0x1da5b7['body'],_0x128c4b,_0x5193d3,_0xe6019a);else{const _0xfae7e0=await _0x1da5b7[_0x469323(0x9b)]();_0x128c4b[_0x469323(0x94)](_0x469323(0x103),_0x1da5b7[_0x469323(0x108)][_0x469323(0xd6)](_0x469323(0x103))||_0x469323(0x84));try{const _0x9f888c=JSON[_0x469323(0xfd)](_0xfae7e0);_0x9f888c[_0x469323(0xc7)]&&await this[_0x469323(0xa2)](_0x5193d3,_0xe6019a,_0x9f888c[_0x469323(0xc7)][_0x469323(0xcd)]||0x0,_0x9f888c[_0x469323(0xc7)][_0x469323(0x121)]||0x0,_0x9f888c[_0x469323(0xc7)][_0x469323(0x8d)],_0x9f888c[_0x469323(0xc7)][_0x469323(0xe5)]);}catch{}return _0x128c4b[_0x469323(0xe8)](_0xfae7e0);}}catch(_0x419329){const _0x31390f=_0x419329 instanceof Error?_0x419329['message']:_0x469323(0xd2),_0x4355a2=_0x419329 instanceof Error&&_0x419329['name']==='TimeoutError';this[_0x469323(0x95)][_0x469323(0x116)](_0x469323(0xcf),_0x419329),_0x128c4b[_0x469323(0xfe)](_0x4355a2?0x1f8:0x1f7)['send']({'type':_0x469323(0x116),'error':{'type':_0x4355a2?'timeout_error':'api_error','message':_0x4355a2?_0x469323(0xdc)+_0x59c4b1+'ms':'Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20'+_0x31390f}});}}async[a78_0x76c134(0xac)](_0x159dc5,_0x3cc264,_0x31d529,_0x4a7e79){const _0x56fb17=a78_0x76c134;_0x3cc264[_0x56fb17(0xc5)][_0x56fb17(0x107)](0xc8,{'Content-Type':_0x56fb17(0x11e),'Cache-Control':'no-cache','Connection':_0x56fb17(0xef)});const _0x2e2d38=new SSEUsageTracker(),_0x405db1=_0x159dc5['getReader'](),_0x31bfe4=new TextDecoder();try{while(!![]){const {done:_0x549af8,value:_0x498331}=await _0x405db1[_0x56fb17(0x106)]();if(_0x549af8)break;const _0x4c12ab=_0x31bfe4[_0x56fb17(0xa1)](_0x498331,{'stream':!![]});_0x2e2d38[_0x56fb17(0x86)](_0x4c12ab),_0x3cc264[_0x56fb17(0xc5)][_0x56fb17(0xe0)](_0x4c12ab);}_0x2e2d38[_0x56fb17(0xc9)]();const _0x125e73=_0x2e2d38[_0x56fb17(0xa5)]();(_0x125e73['inputTokens']>0x0||_0x125e73['outputTokens']>0x0)&&await this[_0x56fb17(0xa2)](_0x31d529,_0x4a7e79,_0x125e73[_0x56fb17(0xc8)],_0x125e73[_0x56fb17(0xec)],_0x125e73[_0x56fb17(0x83)],_0x125e73['cacheReadInputTokens']);}catch(_0x210267){this[_0x56fb17(0x95)]['error'](_0x56fb17(0xb6),_0x210267);const _0x5994a7=_0x56fb17(0xae)+JSON[_0x56fb17(0xca)]({'type':_0x56fb17(0x116),'error':{'type':'stream_error','message':_0x56fb17(0x10a)}})+'\x0a\x0a';_0x3cc264[_0x56fb17(0xc5)][_0x56fb17(0xe0)](_0x5994a7);}finally{_0x3cc264['raw'][_0x56fb17(0xf7)]();}}async[a78_0x76c134(0x11f)](_0x106585,_0x126909){const _0x32da2f=a78_0x76c134,_0x27042c=_0x106585[_0x32da2f(0xb3)],_0x4fc0ba=_0x106585[_0x32da2f(0x8a)][_0x32da2f(0xd7)]('?')?_0x106585['url'][_0x32da2f(0xdb)](_0x106585[_0x32da2f(0x8a)][_0x32da2f(0xc6)]('?')):'',_0x31131a=this[_0x32da2f(0xd1)]['llmProxyUrl']+_0x32da2f(0x89)+_0x4fc0ba,_0x593c55=this[_0x32da2f(0x88)](_0x106585),_0x44ea2f=_0x27042c[_0x32da2f(0xbd)]||_0x32da2f(0xb0),_0xe34be6=shouldInjectSystemPrompt(_0x44ea2f)?injectSystemPrompt(_0x27042c,TDX_SYSTEM_PROMPT):_0x27042c,_0x476a34=JSON['stringify'](_0xe34be6);this['logger']['debug']('[PASSTHROUGH]\x20Forwarding\x20count_tokens\x20to:\x20'+_0x31131a);const _0x5392dc=this['config'][_0x32da2f(0xda)]||DEFAULT_TIMEOUT_MS;try{const _0x1b3eca=await fetch(_0x31131a,{'method':_0x32da2f(0xe4),'headers':_0x593c55,'body':_0x476a34,'signal':AbortSignal[_0x32da2f(0xad)](_0x5392dc)}),_0x1c9e4d=await _0x1b3eca[_0x32da2f(0x9b)]();return _0x126909[_0x32da2f(0xfe)](_0x1b3eca['status']),_0x126909[_0x32da2f(0x94)]('Content-Type',_0x1b3eca[_0x32da2f(0x108)][_0x32da2f(0xd6)]('Content-Type')||_0x32da2f(0x84)),_0x126909[_0x32da2f(0xe8)](_0x1c9e4d);}catch(_0x249bf2){const _0x3a48a9=_0x249bf2 instanceof Error?_0x249bf2[_0x32da2f(0x87)]:_0x32da2f(0xd2),_0x5b9b39=_0x249bf2 instanceof Error&&_0x249bf2[_0x32da2f(0xe9)]==='TimeoutError';this[_0x32da2f(0x95)][_0x32da2f(0x116)]('[PASSTHROUGH]\x20Failed\x20to\x20forward\x20count_tokens\x20request:',_0x249bf2),_0x126909[_0x32da2f(0xfe)](_0x5b9b39?0x1f8:0x1f7)['send']({'type':_0x32da2f(0x116),'error':{'type':_0x5b9b39?_0x32da2f(0xe2):_0x32da2f(0x97),'message':_0x5b9b39?_0x32da2f(0xdc)+_0x5392dc+'ms':_0x32da2f(0x91)+_0x3a48a9}});}}async[a78_0x76c134(0xa2)](_0x49e17b,_0x558fa7,_0x2e36fb,_0x1ea917,_0x4ac514,_0x5ccec8){const _0x2ef372=a78_0x76c134,_0x334070={'timestamp':new Date()[_0x2ef372(0x113)](),'model':_0x558fa7,'inputTokens':_0x2e36fb,'outputTokens':_0x1ea917,'cacheCreationInputTokens':_0x4ac514,'cacheReadInputTokens':_0x5ccec8,'profile':this[_0x2ef372(0xd1)][_0x2ef372(0xf3)],'source':'tdx-claude'},_0x5d7ad1=_0x4ac514||_0x5ccec8?_0x2ef372(0x123)+(_0x4ac514||0x0)+_0x2ef372(0x110)+(_0x5ccec8||0x0):'';this[_0x2ef372(0x95)][_0x2ef372(0xf5)](_0x2ef372(0x10e)+_0x2e36fb+_0x2ef372(0xff)+_0x1ea917+_0x5d7ad1+_0x2ef372(0x104)+_0x558fa7);try{await appendUsageEntry(_0x49e17b,_0x334070);}catch(_0x2d41b9){this[_0x2ef372(0x95)]['error']('[PASSTHROUGH]\x20Failed\x20to\x20log\x20usage:',_0x2d41b9);}}[a78_0x76c134(0xbb)](){const _0x96fb0f=a78_0x76c134;if(this[_0x96fb0f(0xd1)][_0x96fb0f(0xc0)][_0x96fb0f(0xe6)]!==_0x96fb0f(0xd8))return;this['refreshTimer']=setInterval(()=>{const _0x5aca09=_0x96fb0f;void this[_0x5aca09(0x8e)]();},TOKEN_REFRESH_INTERVAL_MS),this[_0x96fb0f(0x10d)][_0x96fb0f(0xb1)]();}async[a78_0x76c134(0x8e)](){const _0x27b6e1=a78_0x76c134,{auth:_0x2aeafd}=this[_0x27b6e1(0xd1)];if(_0x2aeafd[_0x27b6e1(0xe6)]!==_0x27b6e1(0xd8))return;const _0x2858a=!_0x2aeafd['expiresAt']||_0x2aeafd[_0x27b6e1(0x111)]<Date[_0x27b6e1(0xd9)]()+TOKEN_EXPIRY_BUFFER_MS;if(!_0x2858a)return;try{const _0x1b966f=await refreshAccessToken(_0x2aeafd['consoleUrl'],_0x2aeafd[_0x27b6e1(0x90)]);_0x2aeafd['accessToken']=_0x1b966f[_0x27b6e1(0xa0)],_0x2aeafd[_0x27b6e1(0x90)]=_0x1b966f[_0x27b6e1(0xf2)],_0x2aeafd[_0x27b6e1(0x111)]=_0x1b966f[_0x27b6e1(0x117)],await saveOAuthTokens(_0x1b966f,this['config'][_0x27b6e1(0xf3)]),this['logger'][_0x27b6e1(0xcc)](_0x27b6e1(0xea));}catch(_0x187172){this[_0x27b6e1(0x95)]['error']('[PASSTHROUGH]\x20OAuth\x20token\x20refresh\x20failed:',_0x187172);}}async[a78_0x76c134(0xaa)](){const _0xe504cc=a78_0x76c134,_0x5f4546=this[_0xe504cc(0xd1)]['maxPortAttempts']??0x64;for(let _0x4f77ff=0x0;_0x4f77ff<_0x5f4546;_0x4f77ff++){const _0x52024e=this['config'][_0xe504cc(0x9d)]+_0x4f77ff;try{await this['server'][_0xe504cc(0xd0)]({'port':_0x52024e,'host':_0xe504cc(0xb7)}),this['_boundPort']=_0x52024e,this['logger'][_0xe504cc(0xcc)](_0xe504cc(0x9a)+_0x52024e),this['logger'][_0xe504cc(0xcc)](_0xe504cc(0xcb)+this['config'][_0xe504cc(0xe7)]),this[_0xe504cc(0xbb)]();return;}catch(_0x2a0bac){const _0x15bfa4=_0x2a0bac instanceof Error&&_0xe504cc(0xfe)in _0x2a0bac&&_0x2a0bac[_0xe504cc(0xfe)]===_0xe504cc(0xfc);if(!_0x15bfa4)throw _0x2a0bac;this['logger'][_0xe504cc(0xf5)](_0xe504cc(0xf6)+_0x52024e+_0xe504cc(0x92)),this[_0xe504cc(0xf8)]();}}const _0x572620=this['config'][_0xe504cc(0x9d)]+_0x5f4546-0x1;throw new Error('No\x20available\x20port\x20found\x20between\x20'+this[_0xe504cc(0xd1)][_0xe504cc(0x9d)]+_0xe504cc(0xd4)+_0x572620);}async[a78_0x76c134(0x115)](){const _0x55c6f2=a78_0x76c134;this[_0x55c6f2(0x10d)]&&(clearInterval(this[_0x55c6f2(0x10d)]),this[_0x55c6f2(0x10d)]=undefined),await this[_0x55c6f2(0xfb)]['close'](),this[_0x55c6f2(0x95)]['info']('Pass-through\x20proxy\x20server\x20stopped');}['getAddress'](){const _0x139bbd=a78_0x76c134;return _0x139bbd(0xbe)+this[_0x139bbd(0xa4)];}}
1
+ const a78_0x114f7f=a78_0x193a;(function(_0xde5223,_0x589fa6){const _0x2dc9c2=a78_0x193a,_0x14c90d=_0xde5223();while(!![]){try{const _0x5db66a=parseInt(_0x2dc9c2(0x146))/0x1*(-parseInt(_0x2dc9c2(0x1a3))/0x2)+-parseInt(_0x2dc9c2(0x1d9))/0x3+-parseInt(_0x2dc9c2(0x19d))/0x4+-parseInt(_0x2dc9c2(0x14d))/0x5+-parseInt(_0x2dc9c2(0x191))/0x6+-parseInt(_0x2dc9c2(0x1df))/0x7*(-parseInt(_0x2dc9c2(0x1ce))/0x8)+-parseInt(_0x2dc9c2(0x163))/0x9*(-parseInt(_0x2dc9c2(0x159))/0xa);if(_0x5db66a===_0x589fa6)break;else _0x14c90d['push'](_0x14c90d['shift']());}catch(_0x2b3329){_0x14c90d['push'](_0x14c90d['shift']());}}}(a78_0x3fc9,0xe6d7c));import a78_0x13dfec from'fastify';import a78_0xcb8197 from'@fastify/cors';function a78_0x3fc9(){const _0x52af4e=['statusText','no-cache','output_tokens','url','body','send','No\x20available\x20port\x20found\x20between\x20','unref','post','input_tokens','/health',',\x20cache_create=','handleMessages','timeout_error','llmProxyUrl','stringify','handleCountTokens','Bearer\x20','headers','parse','TD\x20LLM\x20Pass-through\x20Proxy\x20Server','tdx/','175722RmbTRp','usage','match','method','logger','stream','message','Error\x20body:\x20','access_token','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20count_tokens\x20request:','getAddress','setupRoutes','5989936vGppMf','_boundPort','tdx','keep-alive','Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20','stream_error','639238qnNjEH','/v1/messages/count_tokens',',\x20model=','processChunk','Content-Type','TimeoutError','error','X-TD-Client-Version','setErrorHandler','Stream\x20interrupted','haiku','[PASSTHROUGH]\x20OAuth\x20token\x20refreshed\x20successfully','default','event:\x20error\x0adata:\x20','[PASSTHROUGH]\x20Failed\x20to\x20log\x20usage:','/v1/messages','system','refreshTokenIfNeeded','Authorization','getReader','application/json','handleStreamingResponse','startPort','register','join','text','x-td-','refreshTimer','GET','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','read','messages','Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20','raw','debug','expires_at','addContentTypeParser','string','User-Agent','x-api-key','Pass-through\x20proxy\x20server\x20stopped','name','|\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|','8561496dDhOdr','end','model','start','server','EADDRINUSE','status','slice','[PASSTHROUGH]\x20Forwarding\x20count_tokens\x20to:\x20','SKIP_HEADERS','setupMiddleware','3931752AmLJHA','toLowerCase','unknown','timeoutMs','auth','port','7ZmPaQW','code','createServer','[PASSTHROUGH]\x20Upstream\x20error:\x20','includes','2TqWrIa','logUsage','write','api_error','127.0.0.1','cacheCreationInputTokens','cache_read_input_tokens','5335675yQvpLk','oauth','buildForwardHeaders',',\x20output=','user_id','type','isArray','startsWith','[PASSTHROUGH]\x20Usage:\x20input=','Unknown\x20error','getUsage','[PASSTHROUGH]\x20','10TrHhuV','info','refresh_token','startTokenRefreshTimer','POST','close','|\x20Debug\x20agent\x20issues\x20|\x20tdx-skills:agent-debug\x20|\x0a','setupJsonParser','config','cache_creation_input_tokens','39771657zJOpdw','get','tdx-claude',',\x20stream=','length','outputTokens','toISOString','listen','apiKey','indexOf','[PASSTHROUGH\x20PROXY\x20ERROR]:','inputTokens','flush','connection','OPTIONS','Forwarding\x20to:\x20','TD1\x20','timeout','anthropic-version','Port\x20','decode','stop','expiresAt','refreshToken'];a78_0x3fc9=function(){return _0x52af4e;};return a78_0x3fc9();}import{SSEUsageTracker}from'./sse-usage-parser.js';import{appendUsageEntry}from'./claude-usage-tracker.js';import{getVersion}from'../core/version.js';function a78_0x193a(_0x5c3f87,_0x7b23e4){_0x5c3f87=_0x5c3f87-0x142;const _0x3fc9b3=a78_0x3fc9();let _0x193ac1=_0x3fc9b3[_0x5c3f87];return _0x193ac1;}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_0x114f7f(0x1c0)+(isExperimentalAvailable()?a78_0x114f7f(0x15f):'')+a78_0x114f7f(0x1cd);function extractSessionUUID(_0x30bab7){const _0xb01f50=a78_0x114f7f,_0x13a08b=_0x30bab7[_0xb01f50(0x193)](/_session_([a-f0-9-]+)$/i);if(_0x13a08b)return _0x13a08b[0x1];return _0x30bab7;}export function injectSystemPrompt(_0x5a1617,_0x235ab1){const _0x32d07e=a78_0x114f7f,_0x4be93c=_0x5a1617[_0x32d07e(0x1b3)];if(!_0x4be93c)return{..._0x5a1617,'system':_0x235ab1};if(typeof _0x4be93c===_0x32d07e(0x1c8))return{..._0x5a1617,'system':_0x4be93c+'\x0a\x0a'+_0x235ab1};if(Array[_0x32d07e(0x153)](_0x4be93c)){const _0x333540={'type':_0x32d07e(0x1bc),'text':_0x235ab1};return{..._0x5a1617,'system':[..._0x4be93c,_0x333540]};}return _0x5a1617;}export function shouldInjectSystemPrompt(_0x30168a){const _0x22dd22=a78_0x114f7f;return!_0x30168a[_0x22dd22(0x1da)]()[_0x22dd22(0x145)](_0x22dd22(0x1ad));}const TOKEN_REFRESH_INTERVAL_MS=0x5*0x3c*0x3e8,TOKEN_EXPIRY_BUFFER_MS=0x5*0x3c*0x3e8;export class PassThroughProxyServer{[a78_0x114f7f(0x1d2)];[a78_0x114f7f(0x161)];[a78_0x114f7f(0x195)];['_boundPort'];['refreshTimer'];constructor(_0x39655f){const _0x2661dc=a78_0x114f7f;this[_0x2661dc(0x161)]=_0x39655f,this['logger']=_0x39655f[_0x2661dc(0x195)],this[_0x2661dc(0x1d2)]=this['createServer']();}get[a78_0x114f7f(0x1de)](){const _0x2f5a45=a78_0x114f7f;if(this[_0x2f5a45(0x19e)]===undefined)throw new Error('Server\x20has\x20not\x20been\x20started\x20yet');return this['_boundPort'];}[a78_0x114f7f(0x143)](){const _0x5d77db=a78_0x114f7f,_0xfb71c9=a78_0x13dfec({'logger':![],'bodyLimit':0x40*0x400*0x400});return this[_0x5d77db(0x1d2)]=_0xfb71c9,this[_0x5d77db(0x160)](),this[_0x5d77db(0x1d8)](),this[_0x5d77db(0x19c)](),_0xfb71c9;}[a78_0x114f7f(0x160)](){const _0x20e9f4=a78_0x114f7f;this[_0x20e9f4(0x1d2)][_0x20e9f4(0x1c7)](_0x20e9f4(0x1b7),{'parseAs':_0x20e9f4(0x1c8)},(_0x3a8e9a,_0x5b3c38,_0xffd953)=>{const _0x33e462=_0x20e9f4;try{const _0x17a20c=JSON[_0x33e462(0x18e)](_0x5b3c38);_0xffd953(null,_0x17a20c);}catch(_0x4bf4c3){_0xffd953(_0x4bf4c3,undefined);}});}[a78_0x114f7f(0x1d8)](){const _0x51d2a0=a78_0x114f7f;this[_0x51d2a0(0x1d2)][_0x51d2a0(0x1ba)](a78_0xcb8197,{'origin':!![],'methods':[_0x51d2a0(0x1bf),_0x51d2a0(0x15d),_0x51d2a0(0x171)],'allowedHeaders':[_0x51d2a0(0x1a7),_0x51d2a0(0x1b5),_0x51d2a0(0x175),_0x51d2a0(0x1ca)]}),this['server'][_0x51d2a0(0x1ab)]((_0x1649b7,_0x341354,_0x2c75b7)=>{const _0x171398=_0x51d2a0,_0x22e8cf=_0x1649b7 instanceof Error?_0x1649b7[_0x171398(0x197)]:_0x171398(0x156);this['logger'][_0x171398(0x1a9)](_0x171398(0x16d),_0x1649b7),_0x2c75b7[_0x171398(0x142)](0x1f4)[_0x171398(0x180)]({'type':_0x171398(0x1a9),'error':{'type':_0x171398(0x149),'message':_0x22e8cf}});});}[a78_0x114f7f(0x19c)](){const _0x2a8acd=a78_0x114f7f;this[_0x2a8acd(0x1d2)][_0x2a8acd(0x164)](_0x2a8acd(0x185),async()=>{const _0x3535a4=_0x2a8acd;return{'status':'ok','message':_0x3535a4(0x18f)};}),this[_0x2a8acd(0x1d2)][_0x2a8acd(0x183)](_0x2a8acd(0x1b2),async(_0x49a389,_0x10f838)=>{const _0x2409b6=_0x2a8acd;return this[_0x2409b6(0x187)](_0x49a389,_0x10f838);}),this['server'][_0x2a8acd(0x183)]('/v1/messages/count_tokens',async(_0x178137,_0x391825)=>{const _0x94f1d8=_0x2a8acd;return this[_0x94f1d8(0x18b)](_0x178137,_0x391825);});}static [a78_0x114f7f(0x1d7)]=new Set(['host',a78_0x114f7f(0x170),'content-length','transfer-encoding','authorization',a78_0x114f7f(0x1ca),'user-agent']);[a78_0x114f7f(0x14f)](_0x35043e){const _0x553b7e=a78_0x114f7f,_0x176d1d={};for(const [_0x266558,_0x4c5380]of Object['entries'](_0x35043e[_0x553b7e(0x18d)])){const _0x26f6ef=_0x266558[_0x553b7e(0x1da)]();if(PassThroughProxyServer[_0x553b7e(0x1d7)]['has'](_0x26f6ef))continue;if(_0x26f6ef[_0x553b7e(0x154)](_0x553b7e(0x1bd)))continue;if(typeof _0x4c5380===_0x553b7e(0x1c8))_0x176d1d[_0x266558]=_0x4c5380;else Array[_0x553b7e(0x153)](_0x4c5380)&&(_0x176d1d[_0x266558]=_0x4c5380[_0x553b7e(0x1bb)](',\x20'));}const _0x2ed483=getVersion(),{auth:_0x1f8255}=this[_0x553b7e(0x161)];return _0x176d1d['Authorization']=_0x1f8255[_0x553b7e(0x152)]==='oauth'?_0x553b7e(0x18c)+_0x1f8255['accessToken']:_0x553b7e(0x173)+_0x1f8255[_0x553b7e(0x16b)],_0x176d1d[_0x553b7e(0x1c9)]=_0x553b7e(0x190)+_0x2ed483,_0x176d1d['X-TD-Client']=_0x553b7e(0x19f),_0x176d1d[_0x553b7e(0x1aa)]=_0x2ed483,_0x176d1d;}async['handleMessages'](_0x2cee8c,_0x55f253){const _0x220cd3=a78_0x114f7f,_0x47a561=_0x2cee8c[_0x220cd3(0x17f)],_0xdb7c51=_0x47a561[_0x220cd3(0x196)]!==![],_0x568cfe=_0x47a561['metadata'],_0x3b8346=_0x568cfe?.[_0x220cd3(0x151)]||_0x220cd3(0x1af),_0x3f2854=extractSessionUUID(_0x3b8346),_0x4c6b27=_0x47a561[_0x220cd3(0x1d0)]||'unknown',_0x3138f1=shouldInjectSystemPrompt(_0x4c6b27)?injectSystemPrompt(_0x47a561,TDX_SYSTEM_PROMPT):_0x47a561,_0x4745a8=JSON[_0x220cd3(0x18a)](_0x3138f1),_0x1019ad=Array[_0x220cd3(0x153)](_0x47a561[_0x220cd3(0x1c2)])?_0x47a561['messages'][_0x220cd3(0x167)]:0x0;this[_0x220cd3(0x195)][_0x220cd3(0x15a)](_0x220cd3(0x158)+_0x2cee8c[_0x220cd3(0x194)]+'\x20'+_0x2cee8c[_0x220cd3(0x17e)]+':\x20messages='+_0x1019ad+_0x220cd3(0x1a5)+_0x4c6b27+_0x220cd3(0x166)+_0xdb7c51);const _0x10ff08=_0x2cee8c['url'][_0x220cd3(0x145)]('?')?_0x2cee8c[_0x220cd3(0x17e)][_0x220cd3(0x1d5)](_0x2cee8c[_0x220cd3(0x17e)][_0x220cd3(0x16c)]('?')):'',_0x16ddd2=this['config'][_0x220cd3(0x189)]+_0x220cd3(0x1b2)+_0x10ff08,_0x43ec33=this[_0x220cd3(0x14f)](_0x2cee8c);this[_0x220cd3(0x195)]['debug']('Forwarding\x20to:\x20'+_0x16ddd2);const _0x4b9f7c=this[_0x220cd3(0x161)][_0x220cd3(0x1dc)]||DEFAULT_TIMEOUT_MS;try{const _0x5d2fd0=await fetch(_0x16ddd2,{'method':_0x220cd3(0x15d),'headers':_0x43ec33,'body':_0x4745a8,'signal':AbortSignal['timeout'](_0x4b9f7c)});if(!_0x5d2fd0['ok']){const _0xd319a2=await _0x5d2fd0[_0x220cd3(0x1bc)]();return this[_0x220cd3(0x195)]['error'](_0x220cd3(0x144)+_0x5d2fd0[_0x220cd3(0x1d4)]+'\x20'+_0x5d2fd0[_0x220cd3(0x17b)]),this[_0x220cd3(0x195)]['debug'](_0x220cd3(0x198)+_0xd319a2),_0x55f253['code'](_0x5d2fd0['status']),_0x55f253['header'](_0x220cd3(0x1a7),_0x5d2fd0[_0x220cd3(0x18d)][_0x220cd3(0x164)](_0x220cd3(0x1a7))||_0x220cd3(0x1b7)),_0x55f253[_0x220cd3(0x180)](_0xd319a2);}if(_0xdb7c51&&_0x5d2fd0[_0x220cd3(0x17f)])await this[_0x220cd3(0x1b8)](_0x5d2fd0['body'],_0x55f253,_0x3f2854,_0x4c6b27);else{const _0x2df8f5=await _0x5d2fd0[_0x220cd3(0x1bc)]();_0x55f253['header']('Content-Type',_0x5d2fd0[_0x220cd3(0x18d)]['get'](_0x220cd3(0x1a7))||'application/json');try{const _0x598cb9=JSON[_0x220cd3(0x18e)](_0x2df8f5);_0x598cb9['usage']&&await this[_0x220cd3(0x147)](_0x3f2854,_0x4c6b27,_0x598cb9['usage'][_0x220cd3(0x184)]||0x0,_0x598cb9[_0x220cd3(0x192)][_0x220cd3(0x17d)]||0x0,_0x598cb9[_0x220cd3(0x192)][_0x220cd3(0x162)],_0x598cb9[_0x220cd3(0x192)][_0x220cd3(0x14c)]);}catch{}return _0x55f253['send'](_0x2df8f5);}}catch(_0x5059d2){const _0x360d45=_0x5059d2 instanceof Error?_0x5059d2[_0x220cd3(0x197)]:_0x220cd3(0x156),_0x577b84=_0x5059d2 instanceof Error&&_0x5059d2[_0x220cd3(0x1cc)]===_0x220cd3(0x1a8);this[_0x220cd3(0x195)]['error']('[PASSTHROUGH]\x20Failed\x20to\x20forward\x20request:',_0x5059d2),_0x55f253[_0x220cd3(0x142)](_0x577b84?0x1f8:0x1f7)[_0x220cd3(0x180)]({'type':'error','error':{'type':_0x577b84?'timeout_error':_0x220cd3(0x149),'message':_0x577b84?_0x220cd3(0x1a1)+_0x4b9f7c+'ms':_0x220cd3(0x1c3)+_0x360d45}});}}async[a78_0x114f7f(0x1b8)](_0x591478,_0x42f1a7,_0x3c340e,_0x397c6b){const _0x36c311=a78_0x114f7f;_0x42f1a7['raw']['writeHead'](0xc8,{'Content-Type':'text/event-stream','Cache-Control':_0x36c311(0x17c),'Connection':_0x36c311(0x1a0)});const _0x5e6bac=new SSEUsageTracker(),_0x49b531=_0x591478[_0x36c311(0x1b6)](),_0x39bafa=new TextDecoder();try{while(!![]){const {done:_0x2565df,value:_0x27c110}=await _0x49b531[_0x36c311(0x1c1)]();if(_0x2565df)break;const _0x50e765=_0x39bafa[_0x36c311(0x177)](_0x27c110,{'stream':!![]});_0x5e6bac[_0x36c311(0x1a6)](_0x50e765),_0x42f1a7['raw'][_0x36c311(0x148)](_0x50e765);}_0x5e6bac[_0x36c311(0x16f)]();const _0x1a554b=_0x5e6bac[_0x36c311(0x157)]();(_0x1a554b[_0x36c311(0x16e)]>0x0||_0x1a554b[_0x36c311(0x168)]>0x0)&&await this['logUsage'](_0x3c340e,_0x397c6b,_0x1a554b['inputTokens'],_0x1a554b[_0x36c311(0x168)],_0x1a554b[_0x36c311(0x14b)],_0x1a554b['cacheReadInputTokens']);}catch(_0x373b83){this[_0x36c311(0x195)][_0x36c311(0x1a9)]('[PASSTHROUGH]\x20Stream\x20error:',_0x373b83);const _0x2b8a98=_0x36c311(0x1b0)+JSON[_0x36c311(0x18a)]({'type':_0x36c311(0x1a9),'error':{'type':_0x36c311(0x1a2),'message':_0x36c311(0x1ac)}})+'\x0a\x0a';_0x42f1a7[_0x36c311(0x1c4)][_0x36c311(0x148)](_0x2b8a98);}finally{_0x42f1a7[_0x36c311(0x1c4)][_0x36c311(0x1cf)]();}}async[a78_0x114f7f(0x18b)](_0x452d5d,_0x298ae7){const _0x32b416=a78_0x114f7f,_0x586e08=_0x452d5d['body'],_0x5e1f3b=_0x452d5d[_0x32b416(0x17e)]['includes']('?')?_0x452d5d['url'][_0x32b416(0x1d5)](_0x452d5d['url'][_0x32b416(0x16c)]('?')):'',_0x3b7ebe=this['config'][_0x32b416(0x189)]+_0x32b416(0x1a4)+_0x5e1f3b,_0x46dfa0=this[_0x32b416(0x14f)](_0x452d5d),_0x5c0b63=_0x586e08['model']||_0x32b416(0x1db),_0x320879=shouldInjectSystemPrompt(_0x5c0b63)?injectSystemPrompt(_0x586e08,TDX_SYSTEM_PROMPT):_0x586e08,_0x7f1ad1=JSON['stringify'](_0x320879);this['logger'][_0x32b416(0x1c5)](_0x32b416(0x1d6)+_0x3b7ebe);const _0x2265d2=this['config'][_0x32b416(0x1dc)]||DEFAULT_TIMEOUT_MS;try{const _0x58181c=await fetch(_0x3b7ebe,{'method':_0x32b416(0x15d),'headers':_0x46dfa0,'body':_0x7f1ad1,'signal':AbortSignal[_0x32b416(0x174)](_0x2265d2)}),_0xe04327=await _0x58181c[_0x32b416(0x1bc)]();return _0x298ae7['code'](_0x58181c[_0x32b416(0x1d4)]),_0x298ae7['header'](_0x32b416(0x1a7),_0x58181c['headers'][_0x32b416(0x164)](_0x32b416(0x1a7))||_0x32b416(0x1b7)),_0x298ae7['send'](_0xe04327);}catch(_0x23c9ca){const _0xb5e527=_0x23c9ca instanceof Error?_0x23c9ca[_0x32b416(0x197)]:'Unknown\x20error',_0x200c69=_0x23c9ca instanceof Error&&_0x23c9ca[_0x32b416(0x1cc)]==='TimeoutError';this[_0x32b416(0x195)][_0x32b416(0x1a9)](_0x32b416(0x19a),_0x23c9ca),_0x298ae7[_0x32b416(0x142)](_0x200c69?0x1f8:0x1f7)[_0x32b416(0x180)]({'type':_0x32b416(0x1a9),'error':{'type':_0x200c69?_0x32b416(0x188):_0x32b416(0x149),'message':_0x200c69?'Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20'+_0x2265d2+'ms':_0x32b416(0x1c3)+_0xb5e527}});}}async[a78_0x114f7f(0x147)](_0x4662fe,_0x27e6b7,_0x19be92,_0x442b83,_0x2ef5b9,_0x111254){const _0x35deb5=a78_0x114f7f,_0x5bed0c={'timestamp':new Date()[_0x35deb5(0x169)](),'model':_0x27e6b7,'inputTokens':_0x19be92,'outputTokens':_0x442b83,'cacheCreationInputTokens':_0x2ef5b9,'cacheReadInputTokens':_0x111254,'profile':this[_0x35deb5(0x161)]['profile'],'source':_0x35deb5(0x165)},_0x3ced1a=_0x2ef5b9||_0x111254?_0x35deb5(0x186)+(_0x2ef5b9||0x0)+',\x20cache_read='+(_0x111254||0x0):'';this[_0x35deb5(0x195)]['debug'](_0x35deb5(0x155)+_0x19be92+_0x35deb5(0x150)+_0x442b83+_0x3ced1a+_0x35deb5(0x1a5)+_0x27e6b7);try{await appendUsageEntry(_0x4662fe,_0x5bed0c);}catch(_0x3e3d18){this[_0x35deb5(0x195)][_0x35deb5(0x1a9)](_0x35deb5(0x1b1),_0x3e3d18);}}[a78_0x114f7f(0x15c)](){const _0x58bc1a=a78_0x114f7f;if(this[_0x58bc1a(0x161)][_0x58bc1a(0x1dd)]['type']!==_0x58bc1a(0x14e))return;this[_0x58bc1a(0x1be)]=setInterval(()=>{const _0x4d5162=_0x58bc1a;void this[_0x4d5162(0x1b4)]();},TOKEN_REFRESH_INTERVAL_MS),this[_0x58bc1a(0x1be)][_0x58bc1a(0x182)]();}async[a78_0x114f7f(0x1b4)](){const _0x13c49f=a78_0x114f7f,{auth:_0x472eac}=this['config'];if(_0x472eac['type']!==_0x13c49f(0x14e))return;const _0x30b1f1=!_0x472eac[_0x13c49f(0x179)]||_0x472eac[_0x13c49f(0x179)]<Date['now']()+TOKEN_EXPIRY_BUFFER_MS;if(!_0x30b1f1)return;try{const _0x5b2611=await refreshAccessToken(_0x472eac['consoleUrl'],_0x472eac[_0x13c49f(0x17a)]);_0x472eac['accessToken']=_0x5b2611[_0x13c49f(0x199)],_0x472eac[_0x13c49f(0x17a)]=_0x5b2611[_0x13c49f(0x15b)],_0x472eac[_0x13c49f(0x179)]=_0x5b2611[_0x13c49f(0x1c6)],await saveOAuthTokens(_0x5b2611,this[_0x13c49f(0x161)]['profile']),this['logger'][_0x13c49f(0x15a)](_0x13c49f(0x1ae));}catch(_0x1023ec){this[_0x13c49f(0x195)]['error']('[PASSTHROUGH]\x20OAuth\x20token\x20refresh\x20failed:',_0x1023ec);}}async[a78_0x114f7f(0x1d1)](){const _0x395404=a78_0x114f7f,_0x352ab4=this['config']['maxPortAttempts']??0x64;for(let _0x497f3e=0x0;_0x497f3e<_0x352ab4;_0x497f3e++){const _0x23ea08=this[_0x395404(0x161)][_0x395404(0x1b9)]+_0x497f3e;try{await this[_0x395404(0x1d2)][_0x395404(0x16a)]({'port':_0x23ea08,'host':_0x395404(0x14a)}),this[_0x395404(0x19e)]=_0x23ea08,this[_0x395404(0x195)]['info']('Pass-through\x20proxy\x20server\x20started\x20on\x20port\x20'+_0x23ea08),this['logger'][_0x395404(0x15a)](_0x395404(0x172)+this[_0x395404(0x161)]['llmProxyUrl']),this[_0x395404(0x15c)]();return;}catch(_0x36434c){const _0x2c281a=_0x36434c instanceof Error&&'code'in _0x36434c&&_0x36434c[_0x395404(0x142)]===_0x395404(0x1d3);if(!_0x2c281a)throw _0x36434c;this['logger'][_0x395404(0x1c5)](_0x395404(0x176)+_0x23ea08+'\x20in\x20use,\x20trying\x20next...'),this[_0x395404(0x143)]();}}const _0x118baf=this['config'][_0x395404(0x1b9)]+_0x352ab4-0x1;throw new Error(_0x395404(0x181)+this[_0x395404(0x161)][_0x395404(0x1b9)]+'\x20and\x20'+_0x118baf);}async[a78_0x114f7f(0x178)](){const _0x51111a=a78_0x114f7f;this['refreshTimer']&&(clearInterval(this['refreshTimer']),this['refreshTimer']=undefined),await this[_0x51111a(0x1d2)][_0x51111a(0x15e)](),this['logger']['info'](_0x51111a(0x1cb));}[a78_0x114f7f(0x19b)](){return'http://127.0.0.1:'+this['port'];}}
@@ -1 +1 @@
1
- const a79_0x17c691=a79_0x28d5;(function(_0x4ffc82,_0x815774){const _0x65d473=a79_0x28d5,_0xca58e1=_0x4ffc82();while(!![]){try{const _0x35e421=parseInt(_0x65d473(0x7f))/0x1*(-parseInt(_0x65d473(0x8e))/0x2)+-parseInt(_0x65d473(0x82))/0x3+-parseInt(_0x65d473(0x8f))/0x4*(-parseInt(_0x65d473(0x8c))/0x5)+-parseInt(_0x65d473(0x96))/0x6*(parseInt(_0x65d473(0x9b))/0x7)+-parseInt(_0x65d473(0x90))/0x8*(-parseInt(_0x65d473(0x7c))/0x9)+-parseInt(_0x65d473(0x9e))/0xa+parseInt(_0x65d473(0x9c))/0xb*(parseInt(_0x65d473(0x88))/0xc);if(_0x35e421===_0x815774)break;else _0xca58e1['push'](_0xca58e1['shift']());}catch(_0x2ad02a){_0xca58e1['push'](_0xca58e1['shift']());}}}(a79_0xbd77,0xe21b6));function a79_0x28d5(_0x1a7416,_0x1943f9){_0x1a7416=_0x1a7416-0x7c;const _0xbd775e=a79_0xbd77();let _0x28d54e=_0xbd775e[_0x1a7416];return _0x28d54e;}function a79_0xbd77(){const _0x5b85f6=['reset','message_delta','input_tokens','12pepNWh','split','trim','cache_read_input_tokens','startsWith','3979031ATgFfP','253lLlaNN','buffer','8545960rBXOfH','type','outputTokens','event','cache_creation_input_tokens','max','parse','90sKeIOM','unknown','output_tokens','17iIfEcF','cacheCreationInputTokens','usage','2370504PmhWQD','cacheReadInputTokens','message','inputTokens','event:\x20','flush','1680396HexDoJ','message_start','onRawUsage','pop','345HNMDyE','processChunk','62482LVRMJL','49312JoPkKr','133976OrCNGe','updateFromUsage','data'];a79_0xbd77=function(){return _0x5b85f6;};return a79_0xbd77();}export function parseSSEChunk(_0xecdf83){const _0x5026c1=a79_0x28d5,_0x18275b=[],_0x17d7bc=_0xecdf83[_0x5026c1(0x97)]('\x0a\x0a'),_0x4ac18f=_0x17d7bc[_0x5026c1(0x8b)]()||'';for(const _0x4a1646 of _0x17d7bc){if(!_0x4a1646[_0x5026c1(0x98)]())continue;const _0x487281={},_0x1def36=_0x4a1646[_0x5026c1(0x97)]('\x0a');for(const _0x17760b of _0x1def36){if(_0x17760b[_0x5026c1(0x9a)](_0x5026c1(0x86)))_0x487281[_0x5026c1(0xa1)]=_0x17760b['slice'](0x7);else _0x17760b[_0x5026c1(0x9a)]('data:\x20')&&(_0x487281[_0x5026c1(0x92)]=_0x17760b['slice'](0x6));}(_0x487281[_0x5026c1(0xa1)]||_0x487281[_0x5026c1(0x92)])&&_0x18275b['push'](_0x487281);}return{'events':_0x18275b,'remaining':_0x4ac18f};}export function extractMessageStartUsage(_0x29603a){const _0x2ca366=a79_0x28d5;try{const _0x623fdf=JSON[_0x2ca366(0xa4)](_0x29603a);if(_0x623fdf[_0x2ca366(0x9f)]===_0x2ca366(0x89)&&_0x623fdf[_0x2ca366(0x84)]?.[_0x2ca366(0x81)]){const _0x303618=_0x623fdf[_0x2ca366(0x84)]['usage'];return{'inputTokens':_0x303618[_0x2ca366(0x95)]||0x0,'outputTokens':_0x303618[_0x2ca366(0x7e)]||0x0,'cacheCreationInputTokens':_0x303618[_0x2ca366(0xa2)],'cacheReadInputTokens':_0x303618[_0x2ca366(0x99)]};}}catch{}return null;}export function extractMessageDeltaUsage(_0x22754b){const _0x28ef3f=a79_0x28d5;try{const _0x38529b=JSON[_0x28ef3f(0xa4)](_0x22754b);if(_0x38529b['type']===_0x28ef3f(0x94)&&_0x38529b[_0x28ef3f(0x81)]){const _0x53850f=_0x38529b[_0x28ef3f(0x81)];return{'inputTokens':_0x53850f[_0x28ef3f(0x95)]||0x0,'outputTokens':_0x53850f['output_tokens']||0x0,'cacheCreationInputTokens':_0x53850f['cache_creation_input_tokens'],'cacheReadInputTokens':_0x53850f[_0x28ef3f(0x99)]};}}catch{}return null;}export function extractUsageFromEvent(_0x367a94){const _0x550678=a79_0x28d5;if(!_0x367a94[_0x550678(0x92)])return null;if(_0x367a94['event']===_0x550678(0x89))return extractMessageStartUsage(_0x367a94['data']);if(_0x367a94[_0x550678(0xa1)]===_0x550678(0x94))return extractMessageDeltaUsage(_0x367a94[_0x550678(0x92)]);return null;}export class SSEUsageTracker{[a79_0x17c691(0x85)]=0x0;[a79_0x17c691(0xa0)]=0x0;['cacheCreationInputTokens'];[a79_0x17c691(0x83)];[a79_0x17c691(0x9d)]='';[a79_0x17c691(0x91)](_0x3ca4d2){const _0xf99e97=a79_0x17c691;this[_0xf99e97(0x85)]=Math[_0xf99e97(0xa3)](this[_0xf99e97(0x85)],_0x3ca4d2['inputTokens']),this['outputTokens']=Math[_0xf99e97(0xa3)](this[_0xf99e97(0xa0)],_0x3ca4d2[_0xf99e97(0xa0)]),_0x3ca4d2[_0xf99e97(0x80)]!==undefined&&(this[_0xf99e97(0x80)]=Math[_0xf99e97(0xa3)](this['cacheCreationInputTokens']??0x0,_0x3ca4d2['cacheCreationInputTokens'])),_0x3ca4d2[_0xf99e97(0x83)]!==undefined&&(this[_0xf99e97(0x83)]=Math[_0xf99e97(0xa3)](this[_0xf99e97(0x83)]??0x0,_0x3ca4d2[_0xf99e97(0x83)]));}['onRawUsage'];[a79_0x17c691(0x8d)](_0x24f20b){const _0x3b1230=a79_0x17c691;this[_0x3b1230(0x9d)]+=_0x24f20b;const {events:_0x3f2f5c,remaining:_0x52bc95}=parseSSEChunk(this[_0x3b1230(0x9d)]);this['buffer']=_0x52bc95;for(const _0x2ea1ab of _0x3f2f5c){const _0x2b60c5=extractUsageFromEvent(_0x2ea1ab);_0x2b60c5&&(this[_0x3b1230(0x8a)]?.(_0x2ea1ab['event']||_0x3b1230(0x7d),_0x2ea1ab['data']||'',_0x2b60c5),this['updateFromUsage'](_0x2b60c5));}return _0x24f20b;}[a79_0x17c691(0x87)](){const _0x10bb9e=a79_0x17c691;if(this[_0x10bb9e(0x9d)][_0x10bb9e(0x98)]()){const {events:_0x40ef3c}=parseSSEChunk(this['buffer']+'\x0a\x0a');for(const _0x2971eb of _0x40ef3c){const _0x26df30=extractUsageFromEvent(_0x2971eb);_0x26df30&&this[_0x10bb9e(0x91)](_0x26df30);}this[_0x10bb9e(0x9d)]='';}}['getUsage'](){const _0x43589c=a79_0x17c691;return{'inputTokens':this[_0x43589c(0x85)],'outputTokens':this[_0x43589c(0xa0)],'cacheCreationInputTokens':this[_0x43589c(0x80)],'cacheReadInputTokens':this[_0x43589c(0x83)]};}[a79_0x17c691(0x93)](){const _0x5aa42d=a79_0x17c691;this['inputTokens']=0x0,this[_0x5aa42d(0xa0)]=0x0,this[_0x5aa42d(0x80)]=undefined,this['cacheReadInputTokens']=undefined,this[_0x5aa42d(0x9d)]='';}}
1
+ const a79_0xb9e670=a79_0x2dc7;function a79_0xae16(){const _0x5b788c=['usage','split','push','pop','data','7036010RoVKFp','18630852MknQHT','trim','onRawUsage','flush','4lDAiDK','9674816HgNgVc','updateFromUsage','cacheReadInputTokens','event:\x20','output_tokens','slice','1296846atZeMS','224ZoqLoa','1260061bFXPXd','cache_read_input_tokens','event','outputTokens','cacheCreationInputTokens','type','inputTokens','148578ukLjRE','10WpQGfk','reset','message_start','buffer','9yoZBQw','processChunk','262832EsMZoR','data:\x20','30usWEBE','max','getUsage','parse','message','unknown'];a79_0xae16=function(){return _0x5b788c;};return a79_0xae16();}(function(_0x2f44b2,_0xdb6c56){const _0x5a0b88=a79_0x2dc7,_0x245cd7=_0x2f44b2();while(!![]){try{const _0x10dbe2=parseInt(_0x5a0b88(0x180))/0x1*(-parseInt(_0x5a0b88(0x186))/0x2)+-parseInt(_0x5a0b88(0x19f))/0x3*(parseInt(_0x5a0b88(0x198))/0x4)+-parseInt(_0x5a0b88(0x193))/0x5+-parseInt(_0x5a0b88(0x17f))/0x6*(-parseInt(_0x5a0b88(0x1a0))/0x7)+-parseInt(_0x5a0b88(0x199))/0x8*(-parseInt(_0x5a0b88(0x184))/0x9)+-parseInt(_0x5a0b88(0x188))/0xa*(-parseInt(_0x5a0b88(0x178))/0xb)+parseInt(_0x5a0b88(0x194))/0xc;if(_0x10dbe2===_0xdb6c56)break;else _0x245cd7['push'](_0x245cd7['shift']());}catch(_0x1a4b34){_0x245cd7['push'](_0x245cd7['shift']());}}}(a79_0xae16,0xb5b9c));export function parseSSEChunk(_0x3d8bd0){const _0x30bdb=a79_0x2dc7,_0x1cc7e8=[],_0x488f4a=_0x3d8bd0[_0x30bdb(0x18f)]('\x0a\x0a'),_0x4e5fea=_0x488f4a[_0x30bdb(0x191)]()||'';for(const _0xe91024 of _0x488f4a){if(!_0xe91024[_0x30bdb(0x195)]())continue;const _0x53e9d6={},_0x382d7b=_0xe91024[_0x30bdb(0x18f)]('\x0a');for(const _0x3b381e of _0x382d7b){if(_0x3b381e['startsWith'](_0x30bdb(0x19c)))_0x53e9d6[_0x30bdb(0x17a)]=_0x3b381e[_0x30bdb(0x19e)](0x7);else _0x3b381e['startsWith'](_0x30bdb(0x187))&&(_0x53e9d6['data']=_0x3b381e[_0x30bdb(0x19e)](0x6));}(_0x53e9d6[_0x30bdb(0x17a)]||_0x53e9d6[_0x30bdb(0x192)])&&_0x1cc7e8[_0x30bdb(0x190)](_0x53e9d6);}return{'events':_0x1cc7e8,'remaining':_0x4e5fea};}function a79_0x2dc7(_0x5496d6,_0x122a12){_0x5496d6=_0x5496d6-0x178;const _0xae16bd=a79_0xae16();let _0x2dc76f=_0xae16bd[_0x5496d6];return _0x2dc76f;}export function extractMessageStartUsage(_0x11b4e6){const _0x4de0e9=a79_0x2dc7;try{const _0x3e4cc5=JSON[_0x4de0e9(0x18b)](_0x11b4e6);if(_0x3e4cc5[_0x4de0e9(0x17d)]===_0x4de0e9(0x182)&&_0x3e4cc5[_0x4de0e9(0x18c)]?.['usage']){const _0x3427a3=_0x3e4cc5['message'][_0x4de0e9(0x18e)];return{'inputTokens':_0x3427a3['input_tokens']||0x0,'outputTokens':_0x3427a3[_0x4de0e9(0x19d)]||0x0,'cacheCreationInputTokens':_0x3427a3['cache_creation_input_tokens'],'cacheReadInputTokens':_0x3427a3[_0x4de0e9(0x179)]};}}catch{}return null;}export function extractMessageDeltaUsage(_0x919c64){const _0x938846=a79_0x2dc7;try{const _0x16afba=JSON['parse'](_0x919c64);if(_0x16afba[_0x938846(0x17d)]==='message_delta'&&_0x16afba[_0x938846(0x18e)]){const _0x5dcfe8=_0x16afba[_0x938846(0x18e)];return{'inputTokens':_0x5dcfe8['input_tokens']||0x0,'outputTokens':_0x5dcfe8['output_tokens']||0x0,'cacheCreationInputTokens':_0x5dcfe8['cache_creation_input_tokens'],'cacheReadInputTokens':_0x5dcfe8[_0x938846(0x179)]};}}catch{}return null;}export function extractUsageFromEvent(_0x458675){const _0x5116d0=a79_0x2dc7;if(!_0x458675[_0x5116d0(0x192)])return null;if(_0x458675[_0x5116d0(0x17a)]==='message_start')return extractMessageStartUsage(_0x458675[_0x5116d0(0x192)]);if(_0x458675['event']==='message_delta')return extractMessageDeltaUsage(_0x458675[_0x5116d0(0x192)]);return null;}export class SSEUsageTracker{[a79_0xb9e670(0x17e)]=0x0;[a79_0xb9e670(0x17b)]=0x0;['cacheCreationInputTokens'];[a79_0xb9e670(0x19b)];[a79_0xb9e670(0x183)]='';[a79_0xb9e670(0x19a)](_0x354e0d){const _0x2f54f8=a79_0xb9e670;this[_0x2f54f8(0x17e)]=Math['max'](this[_0x2f54f8(0x17e)],_0x354e0d[_0x2f54f8(0x17e)]),this['outputTokens']=Math[_0x2f54f8(0x189)](this[_0x2f54f8(0x17b)],_0x354e0d['outputTokens']),_0x354e0d['cacheCreationInputTokens']!==undefined&&(this[_0x2f54f8(0x17c)]=Math[_0x2f54f8(0x189)](this[_0x2f54f8(0x17c)]??0x0,_0x354e0d[_0x2f54f8(0x17c)])),_0x354e0d['cacheReadInputTokens']!==undefined&&(this[_0x2f54f8(0x19b)]=Math[_0x2f54f8(0x189)](this['cacheReadInputTokens']??0x0,_0x354e0d[_0x2f54f8(0x19b)]));}[a79_0xb9e670(0x196)];[a79_0xb9e670(0x185)](_0x22083b){const _0x3b6fb8=a79_0xb9e670;this[_0x3b6fb8(0x183)]+=_0x22083b;const {events:_0x37b98e,remaining:_0x112450}=parseSSEChunk(this[_0x3b6fb8(0x183)]);this[_0x3b6fb8(0x183)]=_0x112450;for(const _0x555175 of _0x37b98e){const _0x4f79f4=extractUsageFromEvent(_0x555175);_0x4f79f4&&(this[_0x3b6fb8(0x196)]?.(_0x555175[_0x3b6fb8(0x17a)]||_0x3b6fb8(0x18d),_0x555175['data']||'',_0x4f79f4),this['updateFromUsage'](_0x4f79f4));}return _0x22083b;}[a79_0xb9e670(0x197)](){const _0x3fcda3=a79_0xb9e670;if(this[_0x3fcda3(0x183)][_0x3fcda3(0x195)]()){const {events:_0x47f604}=parseSSEChunk(this['buffer']+'\x0a\x0a');for(const _0x5de115 of _0x47f604){const _0x49a93c=extractUsageFromEvent(_0x5de115);_0x49a93c&&this[_0x3fcda3(0x19a)](_0x49a93c);}this[_0x3fcda3(0x183)]='';}}[a79_0xb9e670(0x18a)](){const _0x1f93a5=a79_0xb9e670;return{'inputTokens':this[_0x1f93a5(0x17e)],'outputTokens':this[_0x1f93a5(0x17b)],'cacheCreationInputTokens':this[_0x1f93a5(0x17c)],'cacheReadInputTokens':this['cacheReadInputTokens']};}[a79_0xb9e670(0x181)](){this['inputTokens']=0x0,this['outputTokens']=0x0,this['cacheCreationInputTokens']=undefined,this['cacheReadInputTokens']=undefined,this['buffer']='';}}