@treasuredata/tdx 2026.4.15 → 2026.4.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (220) hide show
  1. package/dist/bin.js +1 -1
  2. package/dist/build-info.json +3 -3
  3. package/dist/cli-categories.js +1 -1
  4. package/dist/cli.js +1 -1
  5. package/dist/commands/activations.js +1 -1
  6. package/dist/commands/agent-command.js +1 -1
  7. package/dist/commands/agent-test-command.js +1 -1
  8. package/dist/commands/api-command.js +1 -1
  9. package/dist/commands/auth-command.js +1 -1
  10. package/dist/commands/cas-command.js +1 -1
  11. package/dist/commands/cas-segment-command.js +1 -1
  12. package/dist/commands/chat-command.js +1 -1
  13. package/dist/commands/claude-command.js +1 -1
  14. package/dist/commands/claude-statusline-command.js +1 -1
  15. package/dist/commands/claude-usage-command.js +1 -1
  16. package/dist/commands/command.js +1 -1
  17. package/dist/commands/connection-command.js +1 -1
  18. package/dist/commands/databases.js +1 -1
  19. package/dist/commands/delivery-command.js +1 -1
  20. package/dist/commands/describe.js +1 -1
  21. package/dist/commands/engage-campaign-pull-command.js +1 -1
  22. package/dist/commands/engage-campaign-push-command.js +1 -1
  23. package/dist/commands/engage-campaign-validate-command.js +1 -1
  24. package/dist/commands/engage-command.js +1 -1
  25. package/dist/commands/engage-template-pull-command.js +1 -1
  26. package/dist/commands/engage-template-push-command.js +1 -1
  27. package/dist/commands/engage-template-validate-command.js +1 -1
  28. package/dist/commands/job-command.js +1 -1
  29. package/dist/commands/journey-command.js +1 -1
  30. package/dist/commands/journey-validate-command.js +1 -1
  31. package/dist/commands/llm-command.js +1 -1
  32. package/dist/commands/mcp-command.js +1 -1
  33. package/dist/commands/parent-segment-command.js +1 -1
  34. package/dist/commands/policy-command.js +1 -1
  35. package/dist/commands/profile-command.js +1 -1
  36. package/dist/commands/profiles-command.js +1 -1
  37. package/dist/commands/query-command.js +1 -1
  38. package/dist/commands/schedule-command.js +1 -1
  39. package/dist/commands/segment-command.js +1 -1
  40. package/dist/commands/segment-create-command.js +1 -1
  41. package/dist/commands/segment-fields-command.js +1 -1
  42. package/dist/commands/segment-pull-command.js +1 -1
  43. package/dist/commands/segment-push-command.js +1 -1
  44. package/dist/commands/segment-update-command.js +1 -1
  45. package/dist/commands/segment-use-command.js +1 -1
  46. package/dist/commands/segment-validate-command.js +1 -1
  47. package/dist/commands/segments.js +1 -1
  48. package/dist/commands/show.js +1 -1
  49. package/dist/commands/status-command.js +1 -1
  50. package/dist/commands/tables.js +1 -1
  51. package/dist/commands/unset-command.js +1 -1
  52. package/dist/commands/upgrade-command.js +1 -1
  53. package/dist/commands/use-command.js +1 -1
  54. package/dist/commands/user-command.js +1 -1
  55. package/dist/commands/work-command.js +1 -1
  56. package/dist/commands/workflow-command.js +1 -1
  57. package/dist/core/auth.js +1 -1
  58. package/dist/core/command-output.js +1 -1
  59. package/dist/core/config.js +1 -1
  60. package/dist/core/connection-cache.js +1 -1
  61. package/dist/core/constants.js +1 -1
  62. package/dist/core/credential-cache.js +1 -1
  63. package/dist/core/global-context.js +1 -1
  64. package/dist/core/keychain.js +1 -1
  65. package/dist/core/oauth-keychain.js +1 -1
  66. package/dist/core/oauth.js +1 -1
  67. package/dist/core/profile.js +1 -1
  68. package/dist/core/project-config.js +1 -1
  69. package/dist/core/session.js +1 -1
  70. package/dist/core/user-cache.js +1 -1
  71. package/dist/core/version.js +1 -1
  72. package/dist/index.js +1 -1
  73. package/dist/mcp/server.js +1 -1
  74. package/dist/mcp/tools/index.js +1 -1
  75. package/dist/mcp/tools/tdx-run.js +1 -1
  76. package/dist/mcp/tools/tdx-search.js +1 -1
  77. package/dist/mcp/tools/work-create-item.js +1 -1
  78. package/dist/mcp/utils.js +1 -1
  79. package/dist/proxy/claude-usage-tracker.js +1 -1
  80. package/dist/proxy/passthrough-server.js +1 -1
  81. package/dist/proxy/sse-usage-parser.js +1 -1
  82. package/dist/sdk/agent/agent-config.js +1 -1
  83. package/dist/sdk/agent/agent-ref-parser.js +1 -1
  84. package/dist/sdk/agent/agent-yaml.js +1 -1
  85. package/dist/sdk/agent/test/evaluator.js +1 -1
  86. package/dist/sdk/agent/test/executor.js +1 -1
  87. package/dist/sdk/agent/test/index.js +1 -1
  88. package/dist/sdk/agent/test/output.js +1 -1
  89. package/dist/sdk/agent/test/parser.js +1 -1
  90. package/dist/sdk/agent/tool-target-registry.js +1 -1
  91. package/dist/sdk/api.js +1 -1
  92. package/dist/sdk/cas/cas-api-client.js +1 -1
  93. package/dist/sdk/cas/cas-audience-yaml.js +1 -1
  94. package/dist/sdk/cas/cas-segment-yaml.js +1 -1
  95. package/dist/sdk/cas/index.js +1 -1
  96. package/dist/sdk/cas/pull-workflow.js +1 -1
  97. package/dist/sdk/cas/push-workflow.js +1 -1
  98. package/dist/sdk/client/cdp-api-client.js +1 -1
  99. package/dist/sdk/client/delivery-api-client.js +1 -1
  100. package/dist/sdk/client/endpoints.js +1 -1
  101. package/dist/sdk/client/engage-api-client.js +1 -1
  102. package/dist/sdk/client/http-client.js +1 -1
  103. package/dist/sdk/client/llm-api-client.js +1 -1
  104. package/dist/sdk/client/oauth-refresh.js +1 -1
  105. package/dist/sdk/client/rate-limiter.js +1 -1
  106. package/dist/sdk/client/td-api-client.js +1 -1
  107. package/dist/sdk/client/trino-api-client.js +1 -1
  108. package/dist/sdk/client/workflow-client.js +1 -1
  109. package/dist/sdk/connection-validator.js +1 -1
  110. package/dist/sdk/connection.js +1 -1
  111. package/dist/sdk/delivery.js +1 -1
  112. package/dist/sdk/engage/campaign-pull.js +1 -1
  113. package/dist/sdk/engage/campaign-push.js +1 -1
  114. package/dist/sdk/engage/campaign-validator.js +1 -1
  115. package/dist/sdk/engage/campaign-yaml.js +1 -1
  116. package/dist/sdk/engage/template-pull.js +1 -1
  117. package/dist/sdk/engage/template-push.js +1 -1
  118. package/dist/sdk/engage/template-validator.js +1 -1
  119. package/dist/sdk/engage/template-yaml.js +1 -1
  120. package/dist/sdk/engage/types/campaign-def.js +1 -1
  121. package/dist/sdk/engage/types/campaign-schema.js +1 -1
  122. package/dist/sdk/engage/types/template-schema.js +1 -1
  123. package/dist/sdk/engage.js +1 -1
  124. package/dist/sdk/errors.js +1 -1
  125. package/dist/sdk/index.js +1 -1
  126. package/dist/sdk/io/index.js +1 -1
  127. package/dist/sdk/io/node-filesystem.js +1 -1
  128. package/dist/sdk/job.js +1 -1
  129. package/dist/sdk/journey.js +1 -1
  130. package/dist/sdk/llm/chat-cache.js +1 -1
  131. package/dist/sdk/llm/index.js +1 -1
  132. package/dist/sdk/llm/llm-backup-utils.js +1 -1
  133. package/dist/sdk/llm/model-factors.js +1 -1
  134. package/dist/sdk/personalization.js +1 -1
  135. package/dist/sdk/policy.js +1 -1
  136. package/dist/sdk/query/index.js +1 -1
  137. package/dist/sdk/query/sql-parser.js +1 -1
  138. package/dist/sdk/realtime.js +1 -1
  139. package/dist/sdk/schedule.js +1 -1
  140. package/dist/sdk/segment/child-segment-yaml.js +1 -1
  141. package/dist/sdk/segment/fields-display.js +1 -1
  142. package/dist/sdk/segment/file-discovery.js +1 -1
  143. package/dist/sdk/segment/journey-utils.js +1 -1
  144. package/dist/sdk/segment/journey-validator.js +1 -1
  145. package/dist/sdk/segment/journey-yaml.js +1 -1
  146. package/dist/sdk/segment/parent-segment-preview.js +1 -1
  147. package/dist/sdk/segment/parent-segment-yaml.js +1 -1
  148. package/dist/sdk/segment/pull-workflow.js +1 -1
  149. package/dist/sdk/segment/push-recovery.js +1 -1
  150. package/dist/sdk/segment/push-workflow.js +1 -1
  151. package/dist/sdk/segment/resolution-context.js +1 -1
  152. package/dist/sdk/segment/segment-path-parser.js +1 -1
  153. package/dist/sdk/segment/segment-ref-parser.js +1 -1
  154. package/dist/sdk/segment/segment-validator.js +1 -1
  155. package/dist/sdk/segment/target-resolution.js +1 -1
  156. package/dist/sdk/segment/tdx-config.js +1 -1
  157. package/dist/sdk/segment/types/activation-schema.js +1 -1
  158. package/dist/sdk/segment/types/journey-def.js +1 -1
  159. package/dist/sdk/segment/types/journey-schema.js +1 -1
  160. package/dist/sdk/segment/types/segment-def.js +1 -1
  161. package/dist/sdk/segment/types/segment-schema.js +1 -1
  162. package/dist/sdk/segment/validate-files.js +1 -1
  163. package/dist/sdk/segment/yaml-validator.js +1 -1
  164. package/dist/sdk/segment.js +1 -1
  165. package/dist/sdk/types/index.js +1 -1
  166. package/dist/sdk/types/progress.js +1 -1
  167. package/dist/sdk/types/workspace.js +1 -1
  168. package/dist/sdk/user.js +1 -1
  169. package/dist/sdk/util/format-detector.js +1 -1
  170. package/dist/sdk/util/formatters.js +1 -1
  171. package/dist/sdk/util/index.js +1 -1
  172. package/dist/sdk/util/paginate.js +1 -1
  173. package/dist/sdk/util/tree-formatter.js +1 -1
  174. package/dist/sdk/workflow/archive-validation.js +1 -1
  175. package/dist/sdk/workflow/clone-workflow.js +1 -1
  176. package/dist/sdk/workflow/index.js +1 -1
  177. package/dist/sdk/workflow/pull-workflow.js +1 -1
  178. package/dist/sdk/workflow/push-workflow.js +1 -1
  179. package/dist/sdk/workflow/tdx-config.js +1 -1
  180. package/dist/sdk/workflow/workflow-utils.js +1 -1
  181. package/dist/sdk/workspace/access-tracker.js +1 -1
  182. package/dist/sdk/workspace/frontmatter.js +1 -1
  183. package/dist/sdk/workspace/git.js +1 -1
  184. package/dist/sdk/workspace/index.js +1 -1
  185. package/dist/sdk/workspace/templates.js +1 -1
  186. package/dist/sdk/workspace/weekly.js +1 -1
  187. package/dist/sdk/workspace/wikilinks.js +1 -1
  188. package/dist/test-utils/command-runner.js +1 -1
  189. package/dist/test-utils/factories.js +1 -1
  190. package/dist/test-utils/fixtures.js +1 -1
  191. package/dist/test-utils/http-mock.js +1 -1
  192. package/dist/test-utils/index.js +1 -1
  193. package/dist/utils/async.js +1 -1
  194. package/dist/utils/colors.js +1 -1
  195. package/dist/utils/diff.js +1 -1
  196. package/dist/utils/file-permissions.js +1 -1
  197. package/dist/utils/file-reader.js +1 -1
  198. package/dist/utils/github-releases.js +1 -1
  199. package/dist/utils/global-cache.js +1 -1
  200. package/dist/utils/json-loader.js +1 -1
  201. package/dist/utils/local-cache.js +1 -1
  202. package/dist/utils/logger/formatters/default-formatter.js +1 -1
  203. package/dist/utils/logger/formatters/index.js +1 -1
  204. package/dist/utils/logger/handlers/console-handler.js +1 -1
  205. package/dist/utils/logger/handlers/file-handler.js +1 -1
  206. package/dist/utils/logger/handlers/index.js +1 -1
  207. package/dist/utils/logger/handlers/null-handler.js +1 -1
  208. package/dist/utils/logger/index.js +1 -1
  209. package/dist/utils/logger/logger.js +1 -1
  210. package/dist/utils/logger/types.js +1 -1
  211. package/dist/utils/option-validation.js +1 -1
  212. package/dist/utils/process.js +1 -1
  213. package/dist/utils/prompt.js +1 -1
  214. package/dist/utils/spinner.js +1 -1
  215. package/dist/utils/sse-parser.js +1 -1
  216. package/dist/utils/string-utils.js +1 -1
  217. package/dist/utils/table-ref-parser.js +1 -1
  218. package/dist/utils/tdx-logger.js +1 -1
  219. package/dist/utils/version-check.js +1 -1
  220. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- (function(_0x41cf62,_0x565d1d){var _0x1d2b4f=a70_0x4578,_0x4b48af=_0x41cf62();while(!![]){try{var _0xd707e9=parseInt(_0x1d2b4f(0x148))/0x1+parseInt(_0x1d2b4f(0x147))/0x2+-parseInt(_0x1d2b4f(0x141))/0x3+-parseInt(_0x1d2b4f(0x142))/0x4+-parseInt(_0x1d2b4f(0x144))/0x5*(-parseInt(_0x1d2b4f(0x140))/0x6)+parseInt(_0x1d2b4f(0x146))/0x7*(parseInt(_0x1d2b4f(0x13f))/0x8)+-parseInt(_0x1d2b4f(0x145))/0x9*(parseInt(_0x1d2b4f(0x143))/0xa);if(_0xd707e9===_0x565d1d)break;else _0x4b48af['push'](_0x4b48af['shift']());}catch(_0x2bcbe6){_0x4b48af['push'](_0x4b48af['shift']());}}}(a70_0x474c,0x82345));export*from'./sdk/types/index.js';export*from'./core/config.js';export*from'./core/auth.js';export*from'./sdk/client/http-client.js';export*from'./sdk/client/td-api-client.js';export{TrinoApiClient}from'./sdk/client/trino-api-client.js';export*from'./sdk/client/rate-limiter.js';export*from'./sdk/types/trino.js';export*from'./commands/command.js';export*from'./commands/query-command.js';export*from'./commands/databases.js';export*from'./commands/tables.js';export*from'./commands/segments.js';function a70_0x4578(_0x429ec3,_0x45d1bb){_0x429ec3=_0x429ec3-0x13f;var _0x474c48=a70_0x474c();var _0x45783f=_0x474c48[_0x429ec3];return _0x45783f;}export*from'./commands/activations.js';export*from'./commands/show.js';function a70_0x474c(){var _0x48dcde=['1102064FIRJXH','1520226bgukiy','3153663NeJxBs','2467740ofiwli','87090rTFBtf','5bibVje','45wKIIIP','7wjeVlm','1640330KOPikS','1033724KWPWpU'];a70_0x474c=function(){return _0x48dcde;};return a70_0x474c();}export*from'./commands/describe.js';export*from'./sdk/index.js';
1
+ (function(_0x58dad1,_0x173ef9){var _0xc00369=a70_0x2020,_0x2d0679=_0x58dad1();while(!![]){try{var _0x25a582=parseInt(_0xc00369(0x124))/0x1+parseInt(_0xc00369(0x122))/0x2*(-parseInt(_0xc00369(0x123))/0x3)+-parseInt(_0xc00369(0x126))/0x4*(parseInt(_0xc00369(0x121))/0x5)+parseInt(_0xc00369(0x129))/0x6*(-parseInt(_0xc00369(0x120))/0x7)+-parseInt(_0xc00369(0x127))/0x8+parseInt(_0xc00369(0x12a))/0x9*(parseInt(_0xc00369(0x125))/0xa)+parseInt(_0xc00369(0x128))/0xb;if(_0x25a582===_0x173ef9)break;else _0x2d0679['push'](_0x2d0679['shift']());}catch(_0x52050d){_0x2d0679['push'](_0x2d0679['shift']());}}}(a70_0x18fd,0xc7aee));function a70_0x18fd(){var _0x5f5d3f=['3Dpnryw','606999dSUaot','1871630TIeDdC','5362780DxgiKp','3928760bByaFw','29440400fYqlWF','678bpswwr','45dQwNlT','66535KebIsF','5ysskof','990914KMRXfK'];a70_0x18fd=function(){return _0x5f5d3f;};return a70_0x18fd();}export*from'./sdk/types/index.js';export*from'./core/config.js';export*from'./core/auth.js';export*from'./sdk/client/http-client.js';export*from'./sdk/client/td-api-client.js';export{TrinoApiClient}from'./sdk/client/trino-api-client.js';export*from'./sdk/client/rate-limiter.js';export*from'./sdk/types/trino.js';export*from'./commands/command.js';export*from'./commands/query-command.js';export*from'./commands/databases.js';export*from'./commands/tables.js';export*from'./commands/segments.js';export*from'./commands/activations.js';export*from'./commands/show.js';export*from'./commands/describe.js';function a70_0x2020(_0x209708,_0x3f0de6){_0x209708=_0x209708-0x120;var _0x18fdbc=a70_0x18fd();var _0x2020f6=_0x18fdbc[_0x209708];return _0x2020f6;}export*from'./sdk/index.js';
@@ -1 +1 @@
1
- (function(_0x1e201b,_0x15a236){const _0x33f608=a71_0x4d9e,_0x549818=_0x1e201b();while(!![]){try{const _0x63799=parseInt(_0x33f608(0x68))/0x1*(parseInt(_0x33f608(0x74))/0x2)+-parseInt(_0x33f608(0x94))/0x3+-parseInt(_0x33f608(0x79))/0x4*(-parseInt(_0x33f608(0x99))/0x5)+-parseInt(_0x33f608(0x76))/0x6+-parseInt(_0x33f608(0x70))/0x7+-parseInt(_0x33f608(0x7d))/0x8*(parseInt(_0x33f608(0x91))/0x9)+parseInt(_0x33f608(0x69))/0xa;if(_0x63799===_0x15a236)break;else _0x549818['push'](_0x549818['shift']());}catch(_0x502bc6){_0x549818['push'](_0x549818['shift']());}}}(a71_0xf4f5,0x54601));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_0x4d9e(_0x347b5b,_0x1b7850){_0x347b5b=_0x347b5b-0x68;const _0xf4f516=a71_0xf4f5();let _0x4d9e73=_0xf4f516[_0x347b5b];return _0x4d9e73;}export function createMCPServer(_0x59e636={}){const _0x2fa592=a71_0x4d9e,_0x221d2f=new McpServer({'name':'tdx','version':_0x2fa592(0x80)});return _0x221d2f[_0x2fa592(0x95)](_0x2fa592(0x98),{'description':_0x2fa592(0x6d),'inputSchema':{'args':z[_0x2fa592(0x77)](z['string']())[_0x2fa592(0x90)](_0x2fa592(0x8e))}},async({args:_0x511390})=>{const _0x57fac9=_0x2fa592,_0x158c9b=await executeTdxRun({'args':_0x511390},_0x59e636[_0x57fac9(0x82)]||{});return _0x158c9b['success']?{'content':[{'type':_0x57fac9(0x8c),'text':_0x158c9b[_0x57fac9(0x7c)]||_0x57fac9(0x75)}]}:{'content':[{'type':_0x57fac9(0x8c),'text':_0x158c9b['error']||_0x158c9b[_0x57fac9(0x7c)]||_0x57fac9(0x89)}],'isError':!![]};}),_0x221d2f[_0x2fa592(0x95)](_0x2fa592(0x97),{'description':_0x2fa592(0x8d),'inputSchema':{'query':z[_0x2fa592(0x6e)]()[_0x2fa592(0x90)](_0x2fa592(0x92)),'category':z[_0x2fa592(0x6b)]([_0x2fa592(0x96),_0x2fa592(0x6a),'AI','Context','Utilities'])[_0x2fa592(0x8f)]()['describe'](_0x2fa592(0x86))}},async({query:_0x108199,category:_0x20061b})=>{const _0x2fdad6=_0x2fa592,_0x3e16e5=searchCommands({'query':_0x108199,'category':_0x20061b});if(_0x3e16e5[_0x2fdad6(0x71)]===0x0)return{'content':[{'type':_0x2fdad6(0x8c),'text':'No\x20commands\x20found\x20matching\x20\x22'+_0x108199+'\x22'}]};const _0x4b02f9=_0x3e16e5['map'](_0x21737e=>{const _0x309754=_0x2fdad6,_0xb3fe46=_0x21737e[_0x309754(0x7f)][_0x309754(0x7a)](_0x1d8f05=>'\x20\x20'+_0x1d8f05)[_0x309754(0x7b)]('\x0a');return'**'+_0x21737e[_0x309754(0x83)]+_0x309754(0x8b)+_0x21737e[_0x309754(0x81)]+')\x0a'+_0x21737e[_0x309754(0x9b)]+_0x309754(0x78)+_0xb3fe46;})['join']('\x0a\x0a---\x0a\x0a');return{'content':[{'type':_0x2fdad6(0x8c),'text':_0x4b02f9}]};}),_0x221d2f[_0x2fa592(0x95)](_0x2fa592(0x88),{'description':_0x2fa592(0x6f),'inputSchema':WorkCreateItemInputSchema[_0x2fa592(0x85)]},async({title:_0x3ec743,kind:_0x575bf3,status:_0x4c9473,tags:_0x3290b4,priority:_0x52f0b4,body:_0x1174d4,template:_0x4aee13,github:_0x13fbf6,jira:_0x483666})=>{const _0x3639ad=_0x2fa592,_0x4b3b00=executeWorkCreateItem({'title':_0x3ec743,'kind':_0x575bf3,'status':_0x4c9473,'tags':_0x3290b4,'priority':_0x52f0b4,'body':_0x1174d4,'template':_0x4aee13,'github':_0x13fbf6,'jira':_0x483666});return _0x4b3b00[_0x3639ad(0x6c)]?{'content':[{'type':'text','text':JSON['stringify']({'path':_0x4b3b00[_0x3639ad(0x72)],'slug':_0x4b3b00[_0x3639ad(0x8a)]})}]}:{'content':[{'type':'text','text':_0x4b3b00[_0x3639ad(0x73)]||'Failed\x20to\x20create\x20item'}],'isError':!![]};}),_0x221d2f;}function a71_0xf4f5(){const _0x8abd25=['category','env','name','close','shape','Optional\x20filter\x20by\x20category','stdin','work_create_item','Command\x20failed','slug','**\x20(','text','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.','Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])','optional','describe','4820301qdFhBd','Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)','connect','867138ABXZuI','registerTool','Data','tdx_search','tdx_run','2080zNBlEg','once','description','6YPYhxe','13809940mIxbED','CDP','enum','success','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','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.','3270603ncUQqc','length','path','error','170580ryVRZS','Command\x20completed\x20successfully','3802974QOXRVF','array','\x0a\x0aExamples:\x0a','3640dBlYbE','map','join','output','8SfdqcB','SIGINT','examples','1.0.0'];a71_0xf4f5=function(){return _0x8abd25;};return a71_0xf4f5();}export async function startMCPServer(_0xff4a9b={}){const _0x3bf22d=a71_0x4d9e,_0x553013=createMCPServer(_0xff4a9b),_0x579e6b=new StdioServerTransport();return await _0x553013[_0x3bf22d(0x93)](_0x579e6b),new Promise(_0x302a82=>{const _0x55ff03=_0x3bf22d;let _0x546a92=![];const _0x5e62c1=async()=>{const _0x93fc1e=a71_0x4d9e;if(_0x546a92)return;_0x546a92=!![],await _0x553013[_0x93fc1e(0x84)](),_0x302a82();};process[_0x55ff03(0x9a)](_0x55ff03(0x7e),_0x5e62c1),process[_0x55ff03(0x9a)]('SIGTERM',_0x5e62c1),process[_0x55ff03(0x87)][_0x55ff03(0x9a)]('close',_0x5e62c1);});}
1
+ (function(_0x15374c,_0x79d33a){const _0x315c2a=a71_0x2921,_0xcd8539=_0x15374c();while(!![]){try{const _0x4e2f7d=parseInt(_0x315c2a(0x70))/0x1*(parseInt(_0x315c2a(0x82))/0x2)+parseInt(_0x315c2a(0x74))/0x3*(parseInt(_0x315c2a(0x78))/0x4)+-parseInt(_0x315c2a(0x88))/0x5*(-parseInt(_0x315c2a(0x95))/0x6)+-parseInt(_0x315c2a(0x8c))/0x7*(-parseInt(_0x315c2a(0x7e))/0x8)+-parseInt(_0x315c2a(0x6b))/0x9*(-parseInt(_0x315c2a(0x7c))/0xa)+-parseInt(_0x315c2a(0x97))/0xb+-parseInt(_0x315c2a(0x98))/0xc*(parseInt(_0x315c2a(0x8e))/0xd);if(_0x4e2f7d===_0x79d33a)break;else _0xcd8539['push'](_0xcd8539['shift']());}catch(_0x4cfa86){_0xcd8539['push'](_0xcd8539['shift']());}}}(a71_0x385d,0x8a3ce));import{McpServer}from'@modelcontextprotocol/sdk/server/mcp.js';function a71_0x385d(){const _0x5ec213=['945096TpiLAD','tdx','SIGTERM','Failed\x20to\x20create\x20item','8ZQBqSj','\x0a\x0a---\x0a\x0a','success','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.','480CascRo','CDP','368eqwcfJ','name','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.','category','538YekVOx','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.','describe','string','registerTool','array','10xKLJLh','examples','once','Data','117677qXUvoJ','SIGINT','30030JWLjpO','tdx_search','Command\x20failed','output','description','**\x20(','join','1539336nACJEw','Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)','11553047ACeQVV','3996thnLgE','stringify','map','1.0.0','close','47079QzBvRv','No\x20commands\x20found\x20matching\x20\x22','work_create_item','Context','shape','811jeOnYW','text','Command\x20completed\x20successfully','enum'];a71_0x385d=function(){return _0x5ec213;};return a71_0x385d();}import{StdioServerTransport}from'@modelcontextprotocol/sdk/server/stdio.js';import{z}from'zod';import{executeTdxRun,searchCommands,executeWorkCreateItem,WorkCreateItemInputSchema}from'./tools/index.js';function a71_0x2921(_0x5dfdd8,_0x5229da){_0x5dfdd8=_0x5dfdd8-0x6b;const _0x385d5f=a71_0x385d();let _0x2921d8=_0x385d5f[_0x5dfdd8];return _0x2921d8;}export function createMCPServer(_0x4cd877={}){const _0x1a8b00=a71_0x2921,_0x2de7f6=new McpServer({'name':_0x1a8b00(0x75),'version':_0x1a8b00(0x9b)});return _0x2de7f6[_0x1a8b00(0x86)]('tdx_run',{'description':_0x1a8b00(0x83),'inputSchema':{'args':z[_0x1a8b00(0x87)](z['string']())[_0x1a8b00(0x84)]('Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])')}},async({args:_0x303eb5})=>{const _0x4e359d=_0x1a8b00,_0x3781ce=await executeTdxRun({'args':_0x303eb5},_0x4cd877['env']||{});return _0x3781ce['success']?{'content':[{'type':_0x4e359d(0x71),'text':_0x3781ce[_0x4e359d(0x91)]||_0x4e359d(0x72)}]}:{'content':[{'type':'text','text':_0x3781ce['error']||_0x3781ce[_0x4e359d(0x91)]||_0x4e359d(0x90)}],'isError':!![]};}),_0x2de7f6[_0x1a8b00(0x86)](_0x1a8b00(0x8f),{'description':_0x1a8b00(0x7b),'inputSchema':{'query':z[_0x1a8b00(0x85)]()[_0x1a8b00(0x84)](_0x1a8b00(0x96)),'category':z[_0x1a8b00(0x73)]([_0x1a8b00(0x8b),_0x1a8b00(0x7d),'AI',_0x1a8b00(0x6e),'Utilities'])['optional']()[_0x1a8b00(0x84)]('Optional\x20filter\x20by\x20category')}},async({query:_0x473e04,category:_0x198fca})=>{const _0x140be5=_0x1a8b00,_0x40017b=searchCommands({'query':_0x473e04,'category':_0x198fca});if(_0x40017b['length']===0x0)return{'content':[{'type':_0x140be5(0x71),'text':_0x140be5(0x6c)+_0x473e04+'\x22'}]};const _0x52ce37=_0x40017b['map'](_0x4a097f=>{const _0x394b61=_0x140be5,_0x22ec48=_0x4a097f[_0x394b61(0x89)][_0x394b61(0x9a)](_0x30d1c5=>'\x20\x20'+_0x30d1c5)[_0x394b61(0x94)]('\x0a');return'**'+_0x4a097f[_0x394b61(0x7f)]+_0x394b61(0x93)+_0x4a097f[_0x394b61(0x81)]+')\x0a'+_0x4a097f[_0x394b61(0x92)]+'\x0a\x0aExamples:\x0a'+_0x22ec48;})[_0x140be5(0x94)](_0x140be5(0x79));return{'content':[{'type':'text','text':_0x52ce37}]};}),_0x2de7f6[_0x1a8b00(0x86)](_0x1a8b00(0x6d),{'description':_0x1a8b00(0x80),'inputSchema':WorkCreateItemInputSchema[_0x1a8b00(0x6f)]},async({title:_0x3beda8,kind:_0x4a0cf9,status:_0x5e8750,tags:_0x4b00c4,priority:_0x166c5a,body:_0x6e9188,template:_0x5b2453,github:_0x5f0710,jira:_0x3f4f9a})=>{const _0x3d16d7=_0x1a8b00,_0x55f2a5=executeWorkCreateItem({'title':_0x3beda8,'kind':_0x4a0cf9,'status':_0x5e8750,'tags':_0x4b00c4,'priority':_0x166c5a,'body':_0x6e9188,'template':_0x5b2453,'github':_0x5f0710,'jira':_0x3f4f9a});return _0x55f2a5[_0x3d16d7(0x7a)]?{'content':[{'type':_0x3d16d7(0x71),'text':JSON[_0x3d16d7(0x99)]({'path':_0x55f2a5['path'],'slug':_0x55f2a5['slug']})}]}:{'content':[{'type':_0x3d16d7(0x71),'text':_0x55f2a5['error']||_0x3d16d7(0x77)}],'isError':!![]};}),_0x2de7f6;}export async function startMCPServer(_0x3c23ec={}){const _0x5c86da=createMCPServer(_0x3c23ec),_0xef65e7=new StdioServerTransport();return await _0x5c86da['connect'](_0xef65e7),new Promise(_0x5a46c7=>{const _0x517598=a71_0x2921;let _0x1bc6ad=![];const _0x33d1e6=async()=>{const _0x11384c=a71_0x2921;if(_0x1bc6ad)return;_0x1bc6ad=!![],await _0x5c86da[_0x11384c(0x9c)](),_0x5a46c7();};process[_0x517598(0x8a)](_0x517598(0x8d),_0x33d1e6),process[_0x517598(0x8a)](_0x517598(0x76),_0x33d1e6),process['stdin'][_0x517598(0x8a)]('close',_0x33d1e6);});}
@@ -1 +1 @@
1
- (function(_0x11c107,_0x45c449){var _0xebdeb=a72_0x40a6,_0x39813d=_0x11c107();while(!![]){try{var _0x1f53be=-parseInt(_0xebdeb(0x18a))/0x1*(-parseInt(_0xebdeb(0x184))/0x2)+parseInt(_0xebdeb(0x18c))/0x3*(-parseInt(_0xebdeb(0x186))/0x4)+-parseInt(_0xebdeb(0x182))/0x5*(parseInt(_0xebdeb(0x188))/0x6)+-parseInt(_0xebdeb(0x181))/0x7+-parseInt(_0xebdeb(0x185))/0x8*(-parseInt(_0xebdeb(0x18b))/0x9)+-parseInt(_0xebdeb(0x187))/0xa+-parseInt(_0xebdeb(0x189))/0xb*(-parseInt(_0xebdeb(0x183))/0xc);if(_0x1f53be===_0x45c449)break;else _0x39813d['push'](_0x39813d['shift']());}catch(_0x130b7f){_0x39813d['push'](_0x39813d['shift']());}}}(a72_0x2cfc,0x30a8a));export{executeTdxRun,TdxRunInputSchema}from'./tdx-run.js';export{searchCommands,TdxSearchInputSchema}from'./tdx-search.js';function a72_0x40a6(_0x279736,_0x1d0de8){_0x279736=_0x279736-0x181;var _0x2cfc03=a72_0x2cfc();var _0x40a6cd=_0x2cfc03[_0x279736];return _0x40a6cd;}function a72_0x2cfc(){var _0x5ad036=['1447RhPtlr','8649DnxPpX','314673NZUTQT','1677529BXyXoP','5PtKsJw','8345388Nnkfcg','118GhXIVi','3176jZeSBj','4ZDXjjG','2774300KVNHmf','2046390wmoglm','11EvHxFW'];a72_0x2cfc=function(){return _0x5ad036;};return a72_0x2cfc();}export{executeWorkCreateItem,WorkCreateItemInputSchema}from'./work-create-item.js';
1
+ function a72_0x3fa2(_0x2053b3,_0x486b09){_0x2053b3=_0x2053b3-0xe5;var _0x1f44db=a72_0x1f44();var _0x3fa2fc=_0x1f44db[_0x2053b3];return _0x3fa2fc;}(function(_0x59e26a,_0x4502a1){var _0x1c8b72=a72_0x3fa2,_0x4d3685=_0x59e26a();while(!![]){try{var _0x11dc8a=-parseInt(_0x1c8b72(0xe9))/0x1+-parseInt(_0x1c8b72(0xe7))/0x2+-parseInt(_0x1c8b72(0xe8))/0x3*(parseInt(_0x1c8b72(0xe5))/0x4)+-parseInt(_0x1c8b72(0xed))/0x5*(parseInt(_0x1c8b72(0xec))/0x6)+-parseInt(_0x1c8b72(0xee))/0x7*(-parseInt(_0x1c8b72(0xea))/0x8)+-parseInt(_0x1c8b72(0xeb))/0x9+parseInt(_0x1c8b72(0xe6))/0xa;if(_0x11dc8a===_0x4502a1)break;else _0x4d3685['push'](_0x4d3685['shift']());}catch(_0x4ed0d2){_0x4d3685['push'](_0x4d3685['shift']());}}}(a72_0x1f44,0x6aa1a));export{executeTdxRun,TdxRunInputSchema}from'./tdx-run.js';export{searchCommands,TdxSearchInputSchema}from'./tdx-search.js';function a72_0x1f44(){var _0x4d6d35=['114064wYMHgv','8rYwLGQ','2263617TIXAlo','19650IhvaBX','585dANwGm','1605247gARyxg','2388FAXOkn','17554440iCdbQP','523902aFAIwm','2700WrHsBZ'];a72_0x1f44=function(){return _0x4d6d35;};return a72_0x1f44();}export{executeWorkCreateItem,WorkCreateItemInputSchema}from'./work-create-item.js';
@@ -1 +1 @@
1
- const a73_0x5ce1ad=a73_0x1240;(function(_0x3f3e54,_0x161137){const _0x57a028=a73_0x1240,_0x411d3e=_0x3f3e54();while(!![]){try{const _0xbe29b0=-parseInt(_0x57a028(0x131))/0x1+-parseInt(_0x57a028(0x12a))/0x2*(-parseInt(_0x57a028(0x129))/0x3)+-parseInt(_0x57a028(0x136))/0x4*(parseInt(_0x57a028(0x126))/0x5)+parseInt(_0x57a028(0x133))/0x6+-parseInt(_0x57a028(0x12f))/0x7+-parseInt(_0x57a028(0x135))/0x8*(-parseInt(_0x57a028(0x120))/0x9)+parseInt(_0x57a028(0x122))/0xa;if(_0xbe29b0===_0x161137)break;else _0x411d3e['push'](_0x411d3e['shift']());}catch(_0x5b8f4c){_0x411d3e['push'](_0x411d3e['shift']());}}}(a73_0x3073,0x45eff));function a73_0x1240(_0x2931ad,_0x4f79d6){_0x2931ad=_0x2931ad-0x117;const _0x3073c1=a73_0x3073();let _0x124039=_0x3073c1[_0x2931ad];return _0x124039;}function a73_0x3073(){const _0xd349df=['Failed\x20to\x20spawn\x20tdx:\x20','array','error','3406122xUyxnS','ignore','5168420ItUSqA','string','close','message','485UYtetg','PATH','data','1389nJmiCE','820OFDmCE','--no-color','This\x20command\x20is\x20not\x20allowed\x20via\x20MCP','true','resourcesPath','3295985TxnJmy','Command\x20timed\x20out\x20after\x2015\x20minutes.\x20For\x20long-running\x20queries,\x20use\x20job\x20submit\x20instead.','211132ICNfvR','--json','111228AkZgQp','Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])','8MhJgoK','5576eqkfDn','platform','pipe','SIGTERM','toString','win32','node'];a73_0x3073=function(){return _0xd349df;};return a73_0x3073();}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['object']({'args':z[a73_0x5ce1ad(0x11e)](z[a73_0x5ce1ad(0x123)]())['describe'](a73_0x5ce1ad(0x134))});const DEFAULT_TIMEOUT_MS=0xf*0x3c*0x3e8;function getNodeBinDir(){const _0x189d36=a73_0x5ce1ad,_0x29a4d8=process[_0x189d36(0x12e)];if(_0x29a4d8){const _0x2b3fc9=join(_0x29a4d8,_0x189d36(0x11c)),_0x5adc19=process['platform']==='win32'?'node.exe':_0x189d36(0x11c);if(existsSync(join(_0x2b3fc9,_0x5adc19)))return _0x2b3fc9;}return dirname(process['execPath']);}export async function executeTdxRun(_0xe5abcc,_0x4824dd){const _0x3c3213=a73_0x5ce1ad,{args:_0x20c4a3}=_0xe5abcc;if(isBlockedCommand(_0x20c4a3)){const _0x2ef78c=getBlockedReason(_0x20c4a3);return{'success':![],'output':'','error':_0x2ef78c||_0x3c3213(0x12c),'exitCode':0x1};}const _0x4f08c6=[_0x3c3213(0x132),_0x3c3213(0x12b),..._0x20c4a3],_0xa07a1e=getNodeBinDir(),_0x4fb5a7=process[_0x3c3213(0x117)]===_0x3c3213(0x11b)?';':':',_0x57a499=_0x4824dd[_0x3c3213(0x127)]??process.env.PATH??'',_0x459d99=''+_0xa07a1e+_0x4fb5a7+_0x57a499;return new Promise(_0x58953a=>{const _0x4a328b=_0x3c3213,_0x25bc06=spawn('tdx',_0x4f08c6,{'env':{...process.env,..._0x4824dd,'PATH':_0x459d99,'CI':_0x4a328b(0x12d)},'stdio':[_0x4a328b(0x121),_0x4a328b(0x118),_0x4a328b(0x118)]});let _0x5cff80='',_0x399323='',_0x3aac44=![];const _0x5bfd47=setTimeout(()=>{const _0x3001f2=_0x4a328b;_0x3aac44=!![],_0x25bc06['kill'](_0x3001f2(0x119));},DEFAULT_TIMEOUT_MS);_0x25bc06['stdout']['on'](_0x4a328b(0x128),_0x1f4b90=>{_0x5cff80+=_0x1f4b90['toString']();}),_0x25bc06['stderr']['on'](_0x4a328b(0x128),_0x53dd80=>{const _0xa47a1a=_0x4a328b;_0x399323+=_0x53dd80[_0xa47a1a(0x11a)]();}),_0x25bc06['on'](_0x4a328b(0x11f),_0x5833a7=>{const _0x2f0556=_0x4a328b;clearTimeout(_0x5bfd47),_0x58953a({'success':![],'output':'','error':_0x2f0556(0x11d)+_0x5833a7[_0x2f0556(0x125)],'exitCode':0x1});}),_0x25bc06['on'](_0x4a328b(0x124),_0x37369a=>{const _0x318707=_0x4a328b;clearTimeout(_0x5bfd47);if(_0x3aac44){_0x58953a({'success':![],'output':formatOutput(_0x5cff80),'error':_0x318707(0x130),'exitCode':0x7c});return;}const _0x210238=_0x37369a??0x1,_0x56705a=_0x210238===0x0,_0x5d8694=formatOutput(_0x5cff80||_0x399323),_0x24909f=!_0x56705a&&_0x399323?formatOutput(_0x399323):undefined;_0x58953a({'success':_0x56705a,'output':_0x5d8694,'error':_0x24909f,'exitCode':_0x210238});});});}
1
+ const a73_0x4f4f5f=a73_0x3de7;(function(_0x340a76,_0x18a7f0){const _0x26546d=a73_0x3de7,_0x509b4b=_0x340a76();while(!![]){try{const _0x107d0d=-parseInt(_0x26546d(0x8a))/0x1+parseInt(_0x26546d(0x7c))/0x2*(parseInt(_0x26546d(0x97))/0x3)+-parseInt(_0x26546d(0x84))/0x4*(parseInt(_0x26546d(0x89))/0x5)+parseInt(_0x26546d(0x90))/0x6+-parseInt(_0x26546d(0x92))/0x7*(-parseInt(_0x26546d(0x81))/0x8)+parseInt(_0x26546d(0x7f))/0x9+-parseInt(_0x26546d(0x93))/0xa;if(_0x107d0d===_0x18a7f0)break;else _0x509b4b['push'](_0x509b4b['shift']());}catch(_0x25bab2){_0x509b4b['push'](_0x509b4b['shift']());}}}(a73_0x59b1,0x90589));import{spawn}from'child_process';import{dirname,join}from'path';function a73_0x3de7(_0x3242ae,_0x3dcd32){_0x3242ae=_0x3242ae-0x7c;const _0x59b1ba=a73_0x59b1();let _0x3de7e3=_0x59b1ba[_0x3242ae];return _0x3de7e3;}import{existsSync}from'fs';import{z}from'zod';import{isBlockedCommand,getBlockedReason,formatOutput}from'../utils.js';export const TdxRunInputSchema=z[a73_0x4f4f5f(0x9c)]({'args':z[a73_0x4f4f5f(0x8f)](z['string']())[a73_0x4f4f5f(0x94)](a73_0x4f4f5f(0x80))});const DEFAULT_TIMEOUT_MS=0xf*0x3c*0x3e8;function getNodeBinDir(){const _0x1fdf31=a73_0x4f4f5f,_0x509ade=process[_0x1fdf31(0x8d)];if(_0x509ade){const _0x34ab32=join(_0x509ade,_0x1fdf31(0x82)),_0x520147=process['platform']===_0x1fdf31(0x9a)?_0x1fdf31(0x8e):_0x1fdf31(0x82);if(existsSync(join(_0x34ab32,_0x520147)))return _0x34ab32;}return dirname(process[_0x1fdf31(0x85)]);}export async function executeTdxRun(_0x31a682,_0x705291){const _0x32f193=a73_0x4f4f5f,{args:_0x23559e}=_0x31a682;if(isBlockedCommand(_0x23559e)){const _0x1d7892=getBlockedReason(_0x23559e);return{'success':![],'output':'','error':_0x1d7892||'This\x20command\x20is\x20not\x20allowed\x20via\x20MCP','exitCode':0x1};}const _0x21ab88=[_0x32f193(0x86),_0x32f193(0x7d),..._0x23559e],_0x1ef0c1=getNodeBinDir(),_0x5c079b=process[_0x32f193(0x99)]===_0x32f193(0x9a)?';':':',_0x2ba1d8=_0x705291[_0x32f193(0x9b)]??process.env.PATH??'',_0x3ab270=''+_0x1ef0c1+_0x5c079b+_0x2ba1d8;return new Promise(_0x4ab611=>{const _0x1ef12d=_0x32f193,_0x2a6a14=spawn('tdx',_0x21ab88,{'env':{...process.env,..._0x705291,'PATH':_0x3ab270,'CI':_0x1ef12d(0x7e)},'stdio':['ignore',_0x1ef12d(0x87),_0x1ef12d(0x87)]});let _0xa10612='',_0x30abae='',_0x4342bb=![];const _0x28bb5c=setTimeout(()=>{const _0x356f1b=_0x1ef12d;_0x4342bb=!![],_0x2a6a14[_0x356f1b(0x98)](_0x356f1b(0x88));},DEFAULT_TIMEOUT_MS);_0x2a6a14['stdout']['on']('data',_0x1c3c71=>{const _0xbb3b70=_0x1ef12d;_0xa10612+=_0x1c3c71[_0xbb3b70(0x8c)]();}),_0x2a6a14[_0x1ef12d(0x96)]['on'](_0x1ef12d(0x91),_0x5efdce=>{const _0x55e4ac=_0x1ef12d;_0x30abae+=_0x5efdce[_0x55e4ac(0x8c)]();}),_0x2a6a14['on'](_0x1ef12d(0x8b),_0xf0a211=>{const _0x358154=_0x1ef12d;clearTimeout(_0x28bb5c),_0x4ab611({'success':![],'output':'','error':'Failed\x20to\x20spawn\x20tdx:\x20'+_0xf0a211[_0x358154(0x83)],'exitCode':0x1});}),_0x2a6a14['on'](_0x1ef12d(0x95),_0x53451b=>{clearTimeout(_0x28bb5c);if(_0x4342bb){_0x4ab611({'success':![],'output':formatOutput(_0xa10612),'error':'Command\x20timed\x20out\x20after\x2015\x20minutes.\x20For\x20long-running\x20queries,\x20use\x20job\x20submit\x20instead.','exitCode':0x7c});return;}const _0x44815e=_0x53451b??0x1,_0xa78ccd=_0x44815e===0x0,_0x381280=formatOutput(_0xa10612||_0x30abae),_0x90badf=!_0xa78ccd&&_0x30abae?formatOutput(_0x30abae):undefined;_0x4ab611({'success':_0xa78ccd,'output':_0x381280,'error':_0x90badf,'exitCode':_0x44815e});});});}function a73_0x59b1(){const _0x5f0c3e=['PATH','object','129026ddclHL','--no-color','true','1266084wQpcTY','Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])','227176GYCPpS','node','message','31064vNxTtC','execPath','--json','pipe','SIGTERM','280WWjYRy','167781cfPTCP','error','toString','resourcesPath','node.exe','array','3958680IvMZzV','data','245PfZnQj','6649460NfOprb','describe','close','stderr','3pSgGWa','kill','platform','win32'];a73_0x59b1=function(){return _0x5f0c3e;};return a73_0x59b1();}
@@ -1 +1 @@
1
- const a74_0x4120f8=a74_0x5903;(function(_0x3c7958,_0x506d12){const _0x1149f0=a74_0x5903,_0x40323b=_0x3c7958();while(!![]){try{const _0x2c5f2f=-parseInt(_0x1149f0(0x147))/0x1*(-parseInt(_0x1149f0(0xe6))/0x2)+parseInt(_0x1149f0(0x165))/0x3*(parseInt(_0x1149f0(0x16b))/0x4)+parseInt(_0x1149f0(0x10f))/0x5*(parseInt(_0x1149f0(0x1bb))/0x6)+-parseInt(_0x1149f0(0x10d))/0x7+-parseInt(_0x1149f0(0xe0))/0x8+-parseInt(_0x1149f0(0x107))/0x9+-parseInt(_0x1149f0(0x1d2))/0xa*(-parseInt(_0x1149f0(0x164))/0xb);if(_0x2c5f2f===_0x506d12)break;else _0x40323b['push'](_0x40323b['shift']());}catch(_0x11a584){_0x40323b['push'](_0x40323b['shift']());}}}(a74_0x2cf8,0x8a834));function a74_0x2cf8(){const _0x29eba6=['upload','table\x20list','tdx\x20databases','journey\x20pull','logs','4MeAbeJ','show','description','Push\x20segment\x20definition\x20from\x20YAML','view','Pull\x20agent\x20definition\x20to\x20YAML','fields','parent-segment\x20push','agents','tdx\x20parent-segment\x20pull\x20\x22My\x20Parent\x22\x20-o\x20parent.yaml','segment\x20pull','tdx\x20ps\x20push\x20--dry-run','tdx\x20parent-segment\x20preview','export','tdx\x20use\x20mydb','users','tdx\x20journey\x20push\x20journey.yaml','tdx\x20llm\x20projects','score','tdx\x20workflow\x20sessions\x20myproject','workflow\x20logs','List\x20workflow\x20projects','tdx\x20query\x20\x22SELECT\x20count(*)\x20FROM\x20mydb.events\x22','attributes','List\x20parent\x20segments\x20(customer\x20masters)','table','tdx\x20ps\x20list','tdx\x20auth\x20--profile\x20myprofile','tdx\x20connection\x20schema\x20salesforce','tdx\x20workflow\x20run\x20myproject/myworkflow','workflow\x20projects','tdx\x20unset\x20--database','segment\x20push','tdx\x20journey\x20pull\x20\x22My\x20Journey\x22\x20-o\x20journey.yaml','connection','tdx\x20show\x20mydb.users\x20--limit\x20100','connections','tdx\x20segment\x20push\x20segment.yaml','tdx\x20auth','tdx\x20agent\x20pull\x20myproject/myagent\x20-o\x20agent.yaml','tdx\x20ps\x20pull','message','database','job','tdx\x20sg\x20fields','job\x20result','query','List\x20query\x20jobs','login','List\x20configured\x20profiles','preview','abort','profile','auth','parent','activation','tdx\x20describe\x20mydb.events','tdx\x20user','status','models','rows','account','Clear\x20session\x20context','activations','segment\x20fields','records','workflow\x20sessions','List\x20customer\x20journeys','segment\x20list','List\x20audience\x20segments','workflow\x20run','switch','details','segment','cdp','info','Show\x20job\x20details','chat','request','Kill\x20a\x20running\x20job','111498weWoXZ','tdx\x20segment\x20show\x20\x22My\x20Segment\x22','tdx\x20segment\x20sql\x20\x22My\x20Segment\x22','length','push','split','tdx\x20journey\x20list','tdx\x20agents','enum','tdx\x20profiles','Utilities','List\x20data\x20connections','List\x20workflow\x20sessions','structure','conversations','sort','job\x20show','orchestration','CDP','tdx\x20describe\x20mydb.users','tdx\x20ps\x20validate','projects','debug','30pWxiJz','tdx\x20parent-segment\x20list','tdx\x20use\x20--parent-segment\x20\x22My\x20PS\x22','tdx\x20activations','output','tdx\x20parent-segment\x20push\x20parent.yaml','Set\x20session\x20context\x20(database,\x20parent\x20segment,\x20etc.)','agent','definition','databases','tdx\x20database\x20list','2359712irTCid','ask','members','agent\x20pull','reset','tdx\x20wf\x20sessions\x20--limit\x2010','54872FwATzl','tdx\x20segments\x20--recursive','tdx\x20job\x20list','segment\x20show','tdx\x20connection\x20list','Data','update','tdx\x20chat\x20\x22Hello\x22','Run\x20a\x20workflow','llm\x20projects','Push\x20parent\x20segment\x20definition\x20from\x20YAML','start','database\x20list','journey\x20view','journey\x20list','Generate\x20SQL\x20for\x20a\x20segment','tdx\x20parent-segment\x20validate\x20parent.yaml','execute','object','Context','api','connection\x20schema','run','tdx\x20segment\x20list','yaml','parent-segment\x20preview','List\x20all\x20databases','slice','tdx\x20agent\x20show\x20myproject/myagent','whoami','tdx\x20job\x20result\x2012345','tdx\x20jobs','tdx\x20profile\x20show\x20myprofile','7332363dDBllM','tdx\x20show\x20mydb.users','team','tdx\x20workflow\x20projects','result','journey','81872ncwZoT','List\x20LLM\x20projects','25fmvdNJ','Show\x20authentication\x20status','http','parent-segment\x20validate','List\x20segment\x20activations\x20(exports)','Show\x20connection\x20schema\x20for\x20activations','View\x20journey\x20details','sample','tdx\x20tables\x20mydb.*','tdx\x20query\x20\x22SELECT\x20*\x20FROM\x20mydb.users\x20LIMIT\x2010\x22','llm','list','use','sql','schema','View\x20workflow\x20logs','trigger','raw','data','agent\x20push','tdx\x20chat\x20--agent\x20myproject/myagent\x20\x22What\x20is\x20TD?\x22','tdx\x20ps\x20preview\x20--limit\x2010','List\x20LLM\x20agents','Show\x20table\x20contents\x20(SELECT\x20*\x20with\x20limit)','agent\x20list','sessions','includes','all','config','tdx\x20chats','tdx\x20sg\x20push\x20segment.yaml\x20--dry-run','filter','runs','authentication','Show\x20agent\x20details','select','journeys','parent-segment\x20pull','Describe\x20table\x20schema\x20(columns,\x20types)','digdag','destination','executions','create','kill','Validate\x20parent\x20segment\x20configuration','name','workflow','customer','describe','llm\x20models','curl','profile\x20show','string','tdx\x20api\x20/v3/database/list','tdx\x20user\x20list','profile\x20list','4SxIlZw','columns','tdx\x20segment\x20fields','user','toLowerCase','Push\x20agent\x20definition\x20from\x20YAML','tdx\x20activations\x20--segment\x20\x22My\x20Segment\x22','optional','tdx\x20jobs\x20--limit\x2020','verify','tdx\x20use\x20--database\x20mydb','agent\x20show','stop','history','clear','tdx\x20segment\x20pull\x20\x22My\x20Segment\x22\x20-o\x20segment.yaml','download','pull','List\x20users\x20in\x20account','profiles','Execute\x20SQL\x20query\x20using\x20Trino','tdx\x20connection\x20schema\x20google_ads','validate','tdx\x20llm\x20models','category','Get\x20job\x20results','connection\x20list','tdx\x20wf\x20projects','queries','2765598woiIFL','2195406KMtjZo'];a74_0x2cf8=function(){return _0x29eba6;};return a74_0x2cf8();}import{z}from'zod';function a74_0x5903(_0x402d66,_0x1142d2){_0x402d66=_0x402d66-0xda;const _0x2cf825=a74_0x2cf8();let _0x590362=_0x2cf825[_0x402d66];return _0x590362;}const COMMANDS=[{'name':a74_0x4120f8(0xf2),'description':a74_0x4120f8(0x100),'category':'Data','keywords':[a74_0x4120f8(0x195),a74_0x4120f8(0xde),'db','list',a74_0x4120f8(0x16c),a74_0x4120f8(0x12a)],'examples':[a74_0x4120f8(0xdf),a74_0x4120f8(0x168),'tdx\x20databases\x20mydb*']},{'name':a74_0x4120f8(0x167),'description':'List\x20tables\x20in\x20a\x20database','category':a74_0x4120f8(0xeb),'keywords':[a74_0x4120f8(0x184),'tables',a74_0x4120f8(0x11a),a74_0x4120f8(0x16c),a74_0x4120f8(0x11d)],'examples':['tdx\x20table\x20list',a74_0x4120f8(0x117),'tdx\x20tables\x20--database\x20mydb']},{'name':a74_0x4120f8(0x16c),'description':a74_0x4120f8(0x126),'category':a74_0x4120f8(0xeb),'keywords':['show',a74_0x4120f8(0x16f),a74_0x4120f8(0x19d),'data','contents',a74_0x4120f8(0x1a7),a74_0x4120f8(0x1ac)],'examples':[a74_0x4120f8(0x108),a74_0x4120f8(0x18e)]},{'name':a74_0x4120f8(0x13f),'description':a74_0x4120f8(0x135),'category':a74_0x4120f8(0xeb),'keywords':['describe',a74_0x4120f8(0x11d),a74_0x4120f8(0x148),'types',a74_0x4120f8(0x1c8),a74_0x4120f8(0xdd)],'examples':[a74_0x4120f8(0x1ce),a74_0x4120f8(0x1a3)]},{'name':a74_0x4120f8(0x199),'description':a74_0x4120f8(0x15b),'category':a74_0x4120f8(0xeb),'keywords':[a74_0x4120f8(0x199),a74_0x4120f8(0x11c),'select','trino',a74_0x4120f8(0xf7),'run','presto'],'examples':[a74_0x4120f8(0x118),a74_0x4120f8(0x181)]},{'name':'job\x20list','description':a74_0x4120f8(0x19a),'category':a74_0x4120f8(0xeb),'keywords':[a74_0x4120f8(0x196),'jobs',a74_0x4120f8(0x11a),a74_0x4120f8(0x154),a74_0x4120f8(0x163)],'examples':[a74_0x4120f8(0xe8),a74_0x4120f8(0x105),a74_0x4120f8(0x14f)]},{'name':a74_0x4120f8(0x1cb),'description':a74_0x4120f8(0x1b7),'category':'Data','keywords':[a74_0x4120f8(0x196),a74_0x4120f8(0x16c),a74_0x4120f8(0x1b3),a74_0x4120f8(0x1a5),a74_0x4120f8(0x1b6)],'examples':['tdx\x20job\x20show\x2012345']},{'name':a74_0x4120f8(0x198),'description':a74_0x4120f8(0x160),'category':a74_0x4120f8(0xeb),'keywords':[a74_0x4120f8(0x196),a74_0x4120f8(0x10b),a74_0x4120f8(0x1d6),'download'],'examples':[a74_0x4120f8(0x104)]},{'name':'job\x20kill','description':a74_0x4120f8(0x1ba),'category':a74_0x4120f8(0xeb),'keywords':[a74_0x4120f8(0x196),a74_0x4120f8(0x13a),'cancel',a74_0x4120f8(0x153),a74_0x4120f8(0x19e)],'examples':['tdx\x20job\x20kill\x2012345']},{'name':a74_0x4120f8(0x189),'description':a74_0x4120f8(0x180),'category':a74_0x4120f8(0xeb),'keywords':[a74_0x4120f8(0x13d),a74_0x4120f8(0x1d0),a74_0x4120f8(0x136),a74_0x4120f8(0x11a)],'examples':[a74_0x4120f8(0x10a),a74_0x4120f8(0x162)]},{'name':a74_0x4120f8(0x1ad),'description':a74_0x4120f8(0x1c7),'category':a74_0x4120f8(0xeb),'keywords':[a74_0x4120f8(0x13d),a74_0x4120f8(0x128),a74_0x4120f8(0x12f),a74_0x4120f8(0x138)],'examples':[a74_0x4120f8(0x17e),a74_0x4120f8(0xe5)]},{'name':a74_0x4120f8(0x17f),'description':a74_0x4120f8(0x11e),'category':a74_0x4120f8(0xeb),'keywords':[a74_0x4120f8(0x13d),a74_0x4120f8(0x16a),'output',a74_0x4120f8(0x1d1)],'examples':['tdx\x20workflow\x20logs\x20<attempt_id>']},{'name':a74_0x4120f8(0x1b1),'description':a74_0x4120f8(0xee),'category':a74_0x4120f8(0xeb),'keywords':[a74_0x4120f8(0x13d),a74_0x4120f8(0xfc),a74_0x4120f8(0xf7),a74_0x4120f8(0xf1),a74_0x4120f8(0x11f)],'examples':[a74_0x4120f8(0x188)]},{'name':a74_0x4120f8(0x1af),'description':a74_0x4120f8(0x1b0),'category':a74_0x4120f8(0x1cd),'keywords':[a74_0x4120f8(0x1b4),'segments','audience',a74_0x4120f8(0x11a),a74_0x4120f8(0x1b5)],'examples':[a74_0x4120f8(0xfd),'tdx\x20segments',a74_0x4120f8(0xe7)]},{'name':a74_0x4120f8(0xe9),'description':'Show\x20segment\x20details','category':a74_0x4120f8(0x1cd),'keywords':[a74_0x4120f8(0x1b4),a74_0x4120f8(0x16c),a74_0x4120f8(0x1b3),a74_0x4120f8(0x1b6),'view'],'examples':[a74_0x4120f8(0x1bc)]},{'name':'segment\x20sql','description':a74_0x4120f8(0xf5),'category':a74_0x4120f8(0x1cd),'keywords':['segment',a74_0x4120f8(0x11c),a74_0x4120f8(0x199),'generate'],'examples':[a74_0x4120f8(0x1bd)]},{'name':a74_0x4120f8(0x175),'description':'Pull\x20segment\x20definition\x20to\x20YAML','category':'CDP','keywords':[a74_0x4120f8(0x1b4),a74_0x4120f8(0x158),a74_0x4120f8(0x157),a74_0x4120f8(0x178),a74_0x4120f8(0xfe)],'examples':[a74_0x4120f8(0x156)]},{'name':a74_0x4120f8(0x18b),'description':a74_0x4120f8(0x16e),'category':a74_0x4120f8(0x1cd),'keywords':[a74_0x4120f8(0x1b4),a74_0x4120f8(0x1bf),'upload','import','create',a74_0x4120f8(0xec)],'examples':[a74_0x4120f8(0x190),a74_0x4120f8(0x12d)]},{'name':a74_0x4120f8(0x1ab),'description':'List\x20available\x20segment\x20fields','category':'CDP','keywords':[a74_0x4120f8(0x1b4),a74_0x4120f8(0x171),a74_0x4120f8(0x182),'columns','schema'],'examples':[a74_0x4120f8(0x149),a74_0x4120f8(0x197)]},{'name':'parent-segment\x20list','description':a74_0x4120f8(0x183),'category':a74_0x4120f8(0x1cd),'keywords':[a74_0x4120f8(0x1a1),a74_0x4120f8(0x1b4),'master',a74_0x4120f8(0x11a),a74_0x4120f8(0x13e)],'examples':[a74_0x4120f8(0x1d3),a74_0x4120f8(0x185)]},{'name':a74_0x4120f8(0x134),'description':'Pull\x20parent\x20segment\x20definition\x20to\x20YAML','category':a74_0x4120f8(0x1cd),'keywords':[a74_0x4120f8(0x1a1),a74_0x4120f8(0x1b4),a74_0x4120f8(0x158),a74_0x4120f8(0x157),a74_0x4120f8(0x178)],'examples':[a74_0x4120f8(0x174),a74_0x4120f8(0x193)]},{'name':a74_0x4120f8(0x172),'description':a74_0x4120f8(0xf0),'category':'CDP','keywords':['parent','segment',a74_0x4120f8(0x1bf),a74_0x4120f8(0x166),a74_0x4120f8(0x139)],'examples':[a74_0x4120f8(0xda),a74_0x4120f8(0x176)]},{'name':a74_0x4120f8(0x112),'description':a74_0x4120f8(0x13b),'category':'CDP','keywords':[a74_0x4120f8(0x1a1),'segment',a74_0x4120f8(0x15d),'check',a74_0x4120f8(0x150)],'examples':[a74_0x4120f8(0xf6),a74_0x4120f8(0x1cf)]},{'name':a74_0x4120f8(0xff),'description':'Preview\x20parent\x20segment\x20data','category':a74_0x4120f8(0x1cd),'keywords':[a74_0x4120f8(0x1a1),'segment',a74_0x4120f8(0x19d),a74_0x4120f8(0x116),a74_0x4120f8(0x121)],'examples':[a74_0x4120f8(0x177),a74_0x4120f8(0x124)]},{'name':a74_0x4120f8(0xf4),'description':a74_0x4120f8(0x1ae),'category':a74_0x4120f8(0x1cd),'keywords':['journey',a74_0x4120f8(0x133),a74_0x4120f8(0x11a),a74_0x4120f8(0x1cc)],'examples':[a74_0x4120f8(0x1c1),'tdx\x20journeys']},{'name':a74_0x4120f8(0xf3),'description':a74_0x4120f8(0x115),'category':'CDP','keywords':[a74_0x4120f8(0x10c),a74_0x4120f8(0x16f),a74_0x4120f8(0x16c),a74_0x4120f8(0x1b3)],'examples':['tdx\x20journey\x20view\x20\x22My\x20Journey\x22']},{'name':a74_0x4120f8(0x169),'description':'Pull\x20journey\x20definition\x20to\x20YAML','category':a74_0x4120f8(0x1cd),'keywords':[a74_0x4120f8(0x10c),'pull',a74_0x4120f8(0x157),'export'],'examples':[a74_0x4120f8(0x18c)]},{'name':'journey\x20push','description':'Push\x20journey\x20definition\x20from\x20YAML','category':'CDP','keywords':[a74_0x4120f8(0x10c),a74_0x4120f8(0x1bf),a74_0x4120f8(0x166),a74_0x4120f8(0x139)],'examples':[a74_0x4120f8(0x17b)]},{'name':'activations','description':a74_0x4120f8(0x113),'category':a74_0x4120f8(0x1cd),'keywords':[a74_0x4120f8(0x1a2),a74_0x4120f8(0x1aa),a74_0x4120f8(0x178),'sync',a74_0x4120f8(0x137)],'examples':[a74_0x4120f8(0x1d5),a74_0x4120f8(0x14d)]},{'name':a74_0x4120f8(0x161),'description':a74_0x4120f8(0x1c6),'category':'CDP','keywords':[a74_0x4120f8(0x18d),a74_0x4120f8(0x18f),a74_0x4120f8(0x137),'list'],'examples':[a74_0x4120f8(0xea)]},{'name':a74_0x4120f8(0xfb),'description':a74_0x4120f8(0x114),'category':a74_0x4120f8(0x1cd),'keywords':[a74_0x4120f8(0x18d),'schema',a74_0x4120f8(0x12b),'settings'],'examples':[a74_0x4120f8(0x187),a74_0x4120f8(0x15c)]},{'name':a74_0x4120f8(0x127),'description':a74_0x4120f8(0x125),'category':'AI','keywords':['agent',a74_0x4120f8(0x173),a74_0x4120f8(0x119),'ai',a74_0x4120f8(0x11a)],'examples':['tdx\x20agent\x20list',a74_0x4120f8(0x1c2)]},{'name':a74_0x4120f8(0x152),'description':a74_0x4120f8(0x131),'category':'AI','keywords':[a74_0x4120f8(0xdc),a74_0x4120f8(0x16c),a74_0x4120f8(0x1b3),a74_0x4120f8(0x1b6)],'examples':[a74_0x4120f8(0x102)]},{'name':a74_0x4120f8(0xe3),'description':a74_0x4120f8(0x170),'category':'AI','keywords':[a74_0x4120f8(0xdc),'pull',a74_0x4120f8(0x157),'export'],'examples':[a74_0x4120f8(0x192)]},{'name':a74_0x4120f8(0x122),'description':a74_0x4120f8(0x14c),'category':'AI','keywords':['agent',a74_0x4120f8(0x1bf),a74_0x4120f8(0x166),a74_0x4120f8(0x139),'deploy'],'examples':['tdx\x20agent\x20push\x20agent.yaml']},{'name':a74_0x4120f8(0x1b8),'description':'Chat\x20with\x20an\x20LLM\x20agent','category':'AI','keywords':[a74_0x4120f8(0x1b8),'llm','ai','conversation',a74_0x4120f8(0xe1),a74_0x4120f8(0x194)],'examples':[a74_0x4120f8(0xed),a74_0x4120f8(0x123)]},{'name':'chats','description':'List\x20chat\x20sessions','category':'AI','keywords':[a74_0x4120f8(0x1b8),'chats',a74_0x4120f8(0x128),a74_0x4120f8(0x154),a74_0x4120f8(0x1c9)],'examples':[a74_0x4120f8(0x12c),'tdx\x20chats\x20--limit\x2010']},{'name':a74_0x4120f8(0x140),'description':'List\x20available\x20LLM\x20models','category':'AI','keywords':[a74_0x4120f8(0x119),a74_0x4120f8(0x1a6),'ai',a74_0x4120f8(0x11a)],'examples':[a74_0x4120f8(0x15e)]},{'name':a74_0x4120f8(0xef),'description':a74_0x4120f8(0x10e),'category':'AI','keywords':['llm',a74_0x4120f8(0x1d0),'ai',a74_0x4120f8(0x11a)],'examples':[a74_0x4120f8(0x17c)]},{'name':'use','description':a74_0x4120f8(0xdb),'category':'Context','keywords':[a74_0x4120f8(0x11b),'set','context',a74_0x4120f8(0x1b2),a74_0x4120f8(0x132)],'examples':[a74_0x4120f8(0x179),a74_0x4120f8(0x151),a74_0x4120f8(0x1d4)]},{'name':'unset','description':a74_0x4120f8(0x1a9),'category':a74_0x4120f8(0xf9),'keywords':['unset',a74_0x4120f8(0x155),a74_0x4120f8(0xe4),'context'],'examples':[a74_0x4120f8(0x18a),'tdx\x20unset\x20--all']},{'name':a74_0x4120f8(0x146),'description':a74_0x4120f8(0x19c),'category':a74_0x4120f8(0xf9),'keywords':[a74_0x4120f8(0x19f),a74_0x4120f8(0x15a),a74_0x4120f8(0x11a),a74_0x4120f8(0x12b)],'examples':['tdx\x20profile\x20list',a74_0x4120f8(0x1c4)]},{'name':a74_0x4120f8(0x142),'description':'Show\x20profile\x20details','category':a74_0x4120f8(0xf9),'keywords':[a74_0x4120f8(0x19f),a74_0x4120f8(0x16c),a74_0x4120f8(0x1b3),a74_0x4120f8(0x12b)],'examples':[a74_0x4120f8(0x106)]},{'name':a74_0x4120f8(0x1a0),'description':a74_0x4120f8(0x110),'category':a74_0x4120f8(0xf9),'keywords':['auth',a74_0x4120f8(0x130),'status',a74_0x4120f8(0x19b)],'examples':[a74_0x4120f8(0x191),a74_0x4120f8(0x186)]},{'name':a74_0x4120f8(0x14a),'description':'Show\x20current\x20user\x20info','category':'Context','keywords':[a74_0x4120f8(0x14a),'me',a74_0x4120f8(0x103),a74_0x4120f8(0x1a8)],'examples':[a74_0x4120f8(0x1a4)]},{'name':a74_0x4120f8(0x17a),'description':a74_0x4120f8(0x159),'category':a74_0x4120f8(0xf9),'keywords':[a74_0x4120f8(0x17a),'list',a74_0x4120f8(0x109),a74_0x4120f8(0xe2)],'examples':['tdx\x20users',a74_0x4120f8(0x145)]},{'name':a74_0x4120f8(0xfa),'description':'Make\x20raw\x20HTTP\x20requests\x20to\x20TD\x20APIs','category':a74_0x4120f8(0x1c5),'keywords':[a74_0x4120f8(0xfa),a74_0x4120f8(0x111),a74_0x4120f8(0x120),a74_0x4120f8(0x1b9),a74_0x4120f8(0x141)],'examples':[a74_0x4120f8(0x144),'tdx\x20api\x20/v1/audiences\x20--type\x20cdp','tdx\x20api\x20-X\x20POST\x20--data\x20\x27{\x22query\x22:\x22SELECT\x201\x22}\x27\x20/v3/job/issue/hive/mydb']}];export const TdxSearchInputSchema=z[a74_0x4120f8(0xf8)]({'query':z[a74_0x4120f8(0x143)]()['describe']('Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)'),'category':z[a74_0x4120f8(0x1c3)]([a74_0x4120f8(0xeb),'CDP','AI',a74_0x4120f8(0xf9),a74_0x4120f8(0x1c5)])[a74_0x4120f8(0x14e)]()['describe']('Optional\x20filter\x20by\x20category')});export function searchCommands(_0x4da56e){const _0x36b4f7=a74_0x4120f8,{query:_0x41a8ea,category:_0x811e10}=_0x4da56e,_0x3b7609=_0x41a8ea[_0x36b4f7(0x14b)](),_0x447f67=_0x3b7609[_0x36b4f7(0x1c0)](/\s+/)[_0x36b4f7(0x12e)](_0x5ec6e=>_0x5ec6e[_0x36b4f7(0x1be)]>0x0);let _0x5a14cd=COMMANDS;_0x811e10&&(_0x5a14cd=_0x5a14cd[_0x36b4f7(0x12e)](_0x37788c=>_0x37788c[_0x36b4f7(0x15f)]===_0x811e10));const _0x335656=_0x5a14cd['map'](_0x1f2fdf=>{const _0x586fc3=_0x36b4f7;let _0x1d34c4=0x0;_0x1f2fdf[_0x586fc3(0x13c)][_0x586fc3(0x14b)]()===_0x3b7609&&(_0x1d34c4+=0x64);_0x1f2fdf['name'][_0x586fc3(0x14b)]()[_0x586fc3(0x129)](_0x3b7609)&&(_0x1d34c4+=0x32);_0x1f2fdf[_0x586fc3(0x16d)][_0x586fc3(0x14b)]()[_0x586fc3(0x129)](_0x3b7609)&&(_0x1d34c4+=0x1e);for(const _0x260e6b of _0x447f67){for(const _0x466b20 of _0x1f2fdf['keywords']){if(_0x466b20===_0x260e6b)_0x1d34c4+=0x14;else(_0x466b20[_0x586fc3(0x129)](_0x260e6b)||_0x260e6b[_0x586fc3(0x129)](_0x466b20))&&(_0x1d34c4+=0xa);}_0x1f2fdf[_0x586fc3(0x13c)][_0x586fc3(0x14b)]()[_0x586fc3(0x129)](_0x260e6b)&&(_0x1d34c4+=0xf),_0x1f2fdf['description']['toLowerCase']()[_0x586fc3(0x129)](_0x260e6b)&&(_0x1d34c4+=0x5);}return{'name':_0x1f2fdf['name'],'description':_0x1f2fdf[_0x586fc3(0x16d)],'category':_0x1f2fdf[_0x586fc3(0x15f)],'examples':_0x1f2fdf['examples'],'score':_0x1d34c4};});return _0x335656[_0x36b4f7(0x12e)](_0x43d581=>_0x43d581[_0x36b4f7(0x17d)]>0x0)[_0x36b4f7(0x1ca)]((_0x191bdf,_0x23e6cc)=>_0x23e6cc[_0x36b4f7(0x17d)]-_0x191bdf['score'])[_0x36b4f7(0x101)](0x0,0xa);}
1
+ const a74_0x12693f=a74_0x5e7e;(function(_0x1ec027,_0x44f78e){const _0x5b7ef1=a74_0x5e7e,_0x3cc326=_0x1ec027();while(!![]){try{const _0x2886b9=-parseInt(_0x5b7ef1(0x25d))/0x1*(-parseInt(_0x5b7ef1(0x200))/0x2)+parseInt(_0x5b7ef1(0x25f))/0x3+parseInt(_0x5b7ef1(0x25a))/0x4*(parseInt(_0x5b7ef1(0x27c))/0x5)+parseInt(_0x5b7ef1(0x213))/0x6+parseInt(_0x5b7ef1(0x255))/0x7*(parseInt(_0x5b7ef1(0x2b7))/0x8)+parseInt(_0x5b7ef1(0x1f8))/0x9+parseInt(_0x5b7ef1(0x2c4))/0xa*(-parseInt(_0x5b7ef1(0x29c))/0xb);if(_0x2886b9===_0x44f78e)break;else _0x3cc326['push'](_0x3cc326['shift']());}catch(_0x43b76a){_0x3cc326['push'](_0x3cc326['shift']());}}}(a74_0x1c3d,0x2c74d));function a74_0x1c3d(){const _0x266921=['tdx\x20job\x20list','List\x20workflow\x20projects','yaml','definition','segment\x20list','tdx\x20jobs\x20--limit\x2020','cdp','tdx\x20segment\x20fields','jobs','audience','use','digdag','description','run','40856PYETlR','tdx\x20describe\x20mydb.events','tdx\x20llm\x20projects','tdx\x20api\x20/v3/database/list','List\x20customer\x20journeys','show','Generate\x20SQL\x20for\x20a\x20segment','parent-segment\x20list','auth','describe','tdx\x20llm\x20models','chats','segments','520CeWqza','workflow\x20sessions','conversation','Push\x20journey\x20definition\x20from\x20YAML','tdx\x20parent-segment\x20preview','info','history','tdx\x20tables\x20--database\x20mydb','chat','List\x20query\x20jobs','config','agent\x20list','tdx\x20jobs','push','tdx\x20unset\x20--database','tdx\x20parent-segment\x20list','tdx\x20wf\x20sessions\x20--limit\x2010','tdx\x20profile\x20show\x20myprofile','tdx\x20segment\x20show\x20\x22My\x20Segment\x22','journey\x20pull','parent-segment\x20preview','Optional\x20filter\x20by\x20category','Show\x20connection\x20schema\x20for\x20activations','members','projects','Show\x20segment\x20details','tdx\x20parent-segment\x20push\x20parent.yaml','orchestration','activation','tdx\x20job\x20kill\x2012345','conversations','Show\x20agent\x20details','generate','Context','trigger','sync','segment\x20show','tdx\x20ps\x20preview\x20--limit\x2010','List\x20audience\x20segments','keywords','List\x20parent\x20segments\x20(customer\x20masters)','tdx\x20segments','journey','Pull\x20journey\x20definition\x20to\x20YAML','runs','tdx\x20journey\x20push\x20journey.yaml','preview','tdx\x20user','Set\x20session\x20context\x20(database,\x20parent\x20segment,\x20etc.)','team','tdx\x20use\x20--parent-segment\x20\x22My\x20PS\x22','destination','deploy','Get\x20job\x20results','clear','abort','Utilities','2700126gPMfOL','database\x20list','workflow\x20logs','profile','Push\x20agent\x20definition\x20from\x20YAML','attributes','job\x20result','tdx\x20activations','134LyPBvD','tdx\x20segment\x20sql\x20\x22My\x20Segment\x22','http','List\x20LLM\x20agents','debug','tdx\x20auth\x20--profile\x20myprofile','tdx\x20parent-segment\x20pull\x20\x22My\x20Parent\x22\x20-o\x20parent.yaml','tdx\x20agent\x20pull\x20myproject/myagent\x20-o\x20agent.yaml','List\x20users\x20in\x20account','journey\x20view','trino','master','create','select','filter','llm','download','logs','tdx\x20users','874662zJRwAS','tdx\x20workflow\x20run\x20myproject/myworkflow','segment\x20pull','check','tdx\x20parent-segment\x20validate\x20parent.yaml','columns','segment','job\x20show','curl','query','update','details','contents','tdx\x20job\x20show\x2012345','tdx\x20journey\x20pull\x20\x22My\x20Journey\x22\x20-o\x20journey.yaml','Make\x20raw\x20HTTP\x20requests\x20to\x20TD\x20APIs','List\x20all\x20databases','View\x20workflow\x20logs','tdx\x20agent\x20list','score','verify','segment\x20push','tdx\x20chat\x20\x22Hello\x22','tdx\x20ps\x20push\x20--dry-run','Push\x20parent\x20segment\x20definition\x20from\x20YAML','kill','tdx\x20agents','Show\x20current\x20user\x20info','users','tdx\x20use\x20--database\x20mydb','parent','string','profiles','List\x20workflow\x20sessions','split','parent-segment\x20validate','database','authentication','tdx\x20workflow\x20projects','agent\x20show','List\x20tables\x20in\x20a\x20database','Push\x20segment\x20definition\x20from\x20YAML','optional','tdx\x20show\x20mydb.users\x20--limit\x20100','job\x20list','length','workflow','tdx\x20segment\x20list','tdx\x20wf\x20projects','tdx\x20profiles','tdx\x20connection\x20schema\x20salesforce','connection\x20list','connection','sample','agents','List\x20LLM\x20projects','agent\x20push','enum','examples','tdx\x20api\x20/v1/audiences\x20--type\x20cdp','data','customer','connection\x20schema','segment\x20sql','list','llm\x20models','301JKfQSi','rows','tdx\x20agent\x20push\x20agent.yaml','Pull\x20segment\x20definition\x20to\x20YAML','Chat\x20with\x20an\x20LLM\x20agent','3356leelax','validate','cancel','1202MMkNcc','context','937839HRKulb','tdx\x20show\x20mydb.users','schema','Show\x20table\x20contents\x20(SELECT\x20*\x20with\x20limit)','tdx\x20chats','login','Run\x20a\x20workflow','request','tdx\x20unset\x20--all','tdx\x20ps\x20validate','tdx\x20api\x20-X\x20POST\x20--data\x20\x27{\x22query\x22:\x22SELECT\x201\x22}\x27\x20/v3/job/issue/hive/mydb','tdx\x20segment\x20push\x20segment.yaml','tdx\x20job\x20result\x2012345','all','job','tdx\x20sg\x20push\x20segment.yaml\x20--dry-run','workflow\x20run','Show\x20authentication\x20status','journey\x20list','tdx\x20user\x20list','object','Clear\x20session\x20context','models','includes','segment\x20fields','export','tdx\x20journeys','tdx\x20query\x20\x22SELECT\x20count(*)\x20FROM\x20mydb.events\x22','List\x20configured\x20profiles','10jDgSxX','api','slice','user','Data','View\x20journey\x20details','upload','execute','tdx\x20tables\x20mydb.*','category','workflow\x20projects','CDP','agent\x20pull','view','toLowerCase','import','sql','journey\x20push','account','start','stop','Show\x20profile\x20details','whoami','types','job\x20kill','tdx\x20segment\x20pull\x20\x22My\x20Segment\x22\x20-o\x20segment.yaml','message','sessions','status','pull','connections','tdx\x20use\x20mydb','185757iudfIt','reset','profile\x20show','output','parent-segment\x20pull','name','Pull\x20parent\x20segment\x20definition\x20to\x20YAML','agent','fields','settings','profile\x20list','records','tdx\x20activations\x20--segment\x20\x22My\x20Segment\x22'];a74_0x1c3d=function(){return _0x266921;};return a74_0x1c3d();}import{z}from'zod';const COMMANDS=[{'name':a74_0x12693f(0x1f9),'description':a74_0x12693f(0x223),'category':'Data','keywords':[a74_0x12693f(0x237),'databases','db',a74_0x12693f(0x253),a74_0x12693f(0x2bc),a74_0x12693f(0x26c)],'examples':['tdx\x20database\x20list','tdx\x20databases','tdx\x20databases\x20mydb*']},{'name':'table\x20list','description':a74_0x12693f(0x23b),'category':'Data','keywords':['table','tables','list',a74_0x12693f(0x2bc),a74_0x12693f(0x261)],'examples':['tdx\x20table\x20list',a74_0x12693f(0x284),a74_0x12693f(0x2cb)]},{'name':'show','description':a74_0x12693f(0x262),'category':a74_0x12693f(0x280),'keywords':[a74_0x12693f(0x2bc),a74_0x12693f(0x289),a74_0x12693f(0x1ed),a74_0x12693f(0x24f),a74_0x12693f(0x21f),a74_0x12693f(0x256),a74_0x12693f(0x2a7)],'examples':[a74_0x12693f(0x260),a74_0x12693f(0x23e)]},{'name':a74_0x12693f(0x2c0),'description':'Describe\x20table\x20schema\x20(columns,\x20types)','category':'Data','keywords':[a74_0x12693f(0x2c0),a74_0x12693f(0x261),'columns',a74_0x12693f(0x293),'structure',a74_0x12693f(0x2ac)],'examples':['tdx\x20describe\x20mydb.users',a74_0x12693f(0x2b8)]},{'name':a74_0x12693f(0x21c),'description':'Execute\x20SQL\x20query\x20using\x20Trino','category':a74_0x12693f(0x280),'keywords':['query',a74_0x12693f(0x28c),a74_0x12693f(0x20d),a74_0x12693f(0x20a),a74_0x12693f(0x283),a74_0x12693f(0x2b6),'presto'],'examples':['tdx\x20query\x20\x22SELECT\x20*\x20FROM\x20mydb.users\x20LIMIT\x2010\x22',a74_0x12693f(0x27a)]},{'name':a74_0x12693f(0x23f),'description':a74_0x12693f(0x2cd),'category':'Data','keywords':[a74_0x12693f(0x26d),a74_0x12693f(0x2b1),a74_0x12693f(0x253),a74_0x12693f(0x2ca),'queries'],'examples':[a74_0x12693f(0x2a9),a74_0x12693f(0x1cb),a74_0x12693f(0x2ae)]},{'name':a74_0x12693f(0x21a),'description':'Show\x20job\x20details','category':'Data','keywords':[a74_0x12693f(0x26d),a74_0x12693f(0x2bc),a74_0x12693f(0x21e),a74_0x12693f(0x298),a74_0x12693f(0x2c9)],'examples':[a74_0x12693f(0x220)]},{'name':a74_0x12693f(0x1fe),'description':a74_0x12693f(0x1f4),'category':'Data','keywords':[a74_0x12693f(0x26d),'result',a74_0x12693f(0x29f),a74_0x12693f(0x210)],'examples':[a74_0x12693f(0x26b)]},{'name':a74_0x12693f(0x294),'description':'Kill\x20a\x20running\x20job','category':'Data','keywords':['job',a74_0x12693f(0x22c),a74_0x12693f(0x25c),a74_0x12693f(0x290),a74_0x12693f(0x1f6)],'examples':[a74_0x12693f(0x1dc)]},{'name':a74_0x12693f(0x286),'description':a74_0x12693f(0x2aa),'category':a74_0x12693f(0x280),'keywords':[a74_0x12693f(0x241),a74_0x12693f(0x1d7),a74_0x12693f(0x2b4),'list'],'examples':[a74_0x12693f(0x239),a74_0x12693f(0x243)]},{'name':a74_0x12693f(0x2c5),'description':a74_0x12693f(0x234),'category':a74_0x12693f(0x280),'keywords':[a74_0x12693f(0x241),a74_0x12693f(0x297),a74_0x12693f(0x1eb),'executions'],'examples':['tdx\x20workflow\x20sessions\x20myproject',a74_0x12693f(0x1cf)]},{'name':a74_0x12693f(0x1fa),'description':a74_0x12693f(0x224),'category':a74_0x12693f(0x280),'keywords':['workflow',a74_0x12693f(0x211),'output',a74_0x12693f(0x204)],'examples':['tdx\x20workflow\x20logs\x20<attempt_id>']},{'name':a74_0x12693f(0x26f),'description':a74_0x12693f(0x265),'category':a74_0x12693f(0x280),'keywords':['workflow',a74_0x12693f(0x2b6),a74_0x12693f(0x283),a74_0x12693f(0x28f),a74_0x12693f(0x1e1)],'examples':[a74_0x12693f(0x214)]},{'name':a74_0x12693f(0x2ad),'description':a74_0x12693f(0x1e5),'category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x219),a74_0x12693f(0x2c3),a74_0x12693f(0x2b2),a74_0x12693f(0x253),a74_0x12693f(0x2af)],'examples':[a74_0x12693f(0x242),a74_0x12693f(0x1e8),'tdx\x20segments\x20--recursive']},{'name':a74_0x12693f(0x1e3),'description':a74_0x12693f(0x1d8),'category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x219),a74_0x12693f(0x2bc),'details',a74_0x12693f(0x2c9),'view'],'examples':[a74_0x12693f(0x1d1)]},{'name':a74_0x12693f(0x252),'description':a74_0x12693f(0x2bd),'category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x219),'sql',a74_0x12693f(0x21c),a74_0x12693f(0x1df)],'examples':[a74_0x12693f(0x201)]},{'name':a74_0x12693f(0x215),'description':a74_0x12693f(0x258),'category':a74_0x12693f(0x287),'keywords':['segment',a74_0x12693f(0x299),a74_0x12693f(0x210),a74_0x12693f(0x278),a74_0x12693f(0x2ab)],'examples':[a74_0x12693f(0x295)]},{'name':a74_0x12693f(0x228),'description':a74_0x12693f(0x23c),'category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x219),a74_0x12693f(0x1cc),a74_0x12693f(0x282),a74_0x12693f(0x28b),a74_0x12693f(0x20c),a74_0x12693f(0x21d)],'examples':[a74_0x12693f(0x26a),a74_0x12693f(0x26e)]},{'name':a74_0x12693f(0x277),'description':'List\x20available\x20segment\x20fields','category':a74_0x12693f(0x287),'keywords':['segment',a74_0x12693f(0x2a4),a74_0x12693f(0x1fd),a74_0x12693f(0x218),a74_0x12693f(0x261)],'examples':[a74_0x12693f(0x2b0),'tdx\x20sg\x20fields']},{'name':a74_0x12693f(0x2be),'description':a74_0x12693f(0x1e7),'category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x231),a74_0x12693f(0x219),a74_0x12693f(0x20b),a74_0x12693f(0x253),a74_0x12693f(0x250)],'examples':[a74_0x12693f(0x1ce),'tdx\x20ps\x20list']},{'name':a74_0x12693f(0x2a0),'description':a74_0x12693f(0x2a2),'category':'CDP','keywords':['parent',a74_0x12693f(0x219),a74_0x12693f(0x299),'download',a74_0x12693f(0x278)],'examples':[a74_0x12693f(0x206),'tdx\x20ps\x20pull']},{'name':'parent-segment\x20push','description':a74_0x12693f(0x22b),'category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x231),'segment',a74_0x12693f(0x1cc),a74_0x12693f(0x282),a74_0x12693f(0x20c)],'examples':[a74_0x12693f(0x1d9),a74_0x12693f(0x22a)]},{'name':a74_0x12693f(0x236),'description':'Validate\x20parent\x20segment\x20configuration','category':'CDP','keywords':[a74_0x12693f(0x231),a74_0x12693f(0x219),a74_0x12693f(0x25b),a74_0x12693f(0x216),a74_0x12693f(0x227)],'examples':[a74_0x12693f(0x217),a74_0x12693f(0x268)]},{'name':a74_0x12693f(0x1d3),'description':'Preview\x20parent\x20segment\x20data','category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x231),a74_0x12693f(0x219),'preview',a74_0x12693f(0x248),a74_0x12693f(0x24f)],'examples':[a74_0x12693f(0x2c8),a74_0x12693f(0x1e4)]},{'name':a74_0x12693f(0x271),'description':a74_0x12693f(0x2bb),'category':a74_0x12693f(0x287),'keywords':['journey','journeys','list',a74_0x12693f(0x1da)],'examples':['tdx\x20journey\x20list',a74_0x12693f(0x279)]},{'name':a74_0x12693f(0x209),'description':a74_0x12693f(0x281),'category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x1e9),a74_0x12693f(0x289),'show','details'],'examples':['tdx\x20journey\x20view\x20\x22My\x20Journey\x22']},{'name':a74_0x12693f(0x1d2),'description':a74_0x12693f(0x1ea),'category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x1e9),a74_0x12693f(0x299),a74_0x12693f(0x210),'export'],'examples':[a74_0x12693f(0x221)]},{'name':a74_0x12693f(0x28d),'description':a74_0x12693f(0x2c7),'category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x1e9),a74_0x12693f(0x1cc),a74_0x12693f(0x282),a74_0x12693f(0x20c)],'examples':[a74_0x12693f(0x1ec)]},{'name':'activations','description':'List\x20segment\x20activations\x20(exports)','category':'CDP','keywords':[a74_0x12693f(0x1db),'activations',a74_0x12693f(0x278),a74_0x12693f(0x1e2),a74_0x12693f(0x1f2)],'examples':[a74_0x12693f(0x1ff),a74_0x12693f(0x2a8)]},{'name':a74_0x12693f(0x246),'description':'List\x20data\x20connections','category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x247),a74_0x12693f(0x29a),'destination','list'],'examples':['tdx\x20connection\x20list']},{'name':a74_0x12693f(0x251),'description':a74_0x12693f(0x1d5),'category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x247),a74_0x12693f(0x261),a74_0x12693f(0x1c9),a74_0x12693f(0x2a5)],'examples':[a74_0x12693f(0x245),'tdx\x20connection\x20schema\x20google_ads']},{'name':a74_0x12693f(0x1ca),'description':a74_0x12693f(0x203),'category':'AI','keywords':[a74_0x12693f(0x2a3),a74_0x12693f(0x249),a74_0x12693f(0x20f),'ai',a74_0x12693f(0x253)],'examples':[a74_0x12693f(0x225),a74_0x12693f(0x22d)]},{'name':a74_0x12693f(0x23a),'description':a74_0x12693f(0x1de),'category':'AI','keywords':[a74_0x12693f(0x2a3),a74_0x12693f(0x2bc),a74_0x12693f(0x21e),a74_0x12693f(0x2c9)],'examples':['tdx\x20agent\x20show\x20myproject/myagent']},{'name':a74_0x12693f(0x288),'description':'Pull\x20agent\x20definition\x20to\x20YAML','category':'AI','keywords':[a74_0x12693f(0x2a3),a74_0x12693f(0x299),a74_0x12693f(0x210),a74_0x12693f(0x278)],'examples':[a74_0x12693f(0x207)]},{'name':a74_0x12693f(0x24b),'description':a74_0x12693f(0x1fc),'category':'AI','keywords':[a74_0x12693f(0x2a3),'push','upload',a74_0x12693f(0x20c),a74_0x12693f(0x1f3)],'examples':[a74_0x12693f(0x257)]},{'name':a74_0x12693f(0x2cc),'description':a74_0x12693f(0x259),'category':'AI','keywords':[a74_0x12693f(0x2cc),a74_0x12693f(0x20f),'ai',a74_0x12693f(0x2c6),'ask',a74_0x12693f(0x296)],'examples':[a74_0x12693f(0x229),'tdx\x20chat\x20--agent\x20myproject/myagent\x20\x22What\x20is\x20TD?\x22']},{'name':'chats','description':'List\x20chat\x20sessions','category':'AI','keywords':['chat',a74_0x12693f(0x2c2),a74_0x12693f(0x297),a74_0x12693f(0x2ca),a74_0x12693f(0x1dd)],'examples':[a74_0x12693f(0x263),'tdx\x20chats\x20--limit\x2010']},{'name':a74_0x12693f(0x254),'description':'List\x20available\x20LLM\x20models','category':'AI','keywords':['llm',a74_0x12693f(0x275),'ai',a74_0x12693f(0x253)],'examples':[a74_0x12693f(0x2c1)]},{'name':'llm\x20projects','description':a74_0x12693f(0x24a),'category':'AI','keywords':[a74_0x12693f(0x20f),'projects','ai',a74_0x12693f(0x253)],'examples':[a74_0x12693f(0x2b9)]},{'name':'use','description':a74_0x12693f(0x1ef),'category':a74_0x12693f(0x1e0),'keywords':[a74_0x12693f(0x2b3),'set',a74_0x12693f(0x25e),'switch',a74_0x12693f(0x20d)],'examples':[a74_0x12693f(0x29b),a74_0x12693f(0x230),a74_0x12693f(0x1f1)]},{'name':'unset','description':a74_0x12693f(0x274),'category':a74_0x12693f(0x1e0),'keywords':['unset',a74_0x12693f(0x1f5),a74_0x12693f(0x29d),a74_0x12693f(0x25e)],'examples':[a74_0x12693f(0x1cd),a74_0x12693f(0x267)]},{'name':a74_0x12693f(0x2a6),'description':a74_0x12693f(0x27b),'category':a74_0x12693f(0x1e0),'keywords':[a74_0x12693f(0x1fb),a74_0x12693f(0x233),a74_0x12693f(0x253),a74_0x12693f(0x1c9)],'examples':['tdx\x20profile\x20list',a74_0x12693f(0x244)]},{'name':a74_0x12693f(0x29e),'description':a74_0x12693f(0x291),'category':a74_0x12693f(0x1e0),'keywords':[a74_0x12693f(0x1fb),a74_0x12693f(0x2bc),a74_0x12693f(0x21e),'config'],'examples':[a74_0x12693f(0x1d0)]},{'name':a74_0x12693f(0x2bf),'description':a74_0x12693f(0x270),'category':'Context','keywords':[a74_0x12693f(0x2bf),a74_0x12693f(0x238),a74_0x12693f(0x298),a74_0x12693f(0x264)],'examples':['tdx\x20auth',a74_0x12693f(0x205)]},{'name':a74_0x12693f(0x27f),'description':a74_0x12693f(0x22e),'category':a74_0x12693f(0x1e0),'keywords':[a74_0x12693f(0x27f),'me',a74_0x12693f(0x292),a74_0x12693f(0x28e)],'examples':[a74_0x12693f(0x1ee)]},{'name':'users','description':a74_0x12693f(0x208),'category':a74_0x12693f(0x1e0),'keywords':[a74_0x12693f(0x22f),a74_0x12693f(0x253),a74_0x12693f(0x1f0),a74_0x12693f(0x1d6)],'examples':[a74_0x12693f(0x212),a74_0x12693f(0x272)]},{'name':a74_0x12693f(0x27d),'description':a74_0x12693f(0x222),'category':'Utilities','keywords':[a74_0x12693f(0x27d),a74_0x12693f(0x202),'raw',a74_0x12693f(0x266),a74_0x12693f(0x21b)],'examples':[a74_0x12693f(0x2ba),a74_0x12693f(0x24e),a74_0x12693f(0x269)]}];export const TdxSearchInputSchema=z[a74_0x12693f(0x273)]({'query':z[a74_0x12693f(0x232)]()[a74_0x12693f(0x2c0)]('Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)'),'category':z[a74_0x12693f(0x24c)]([a74_0x12693f(0x280),a74_0x12693f(0x287),'AI','Context',a74_0x12693f(0x1f7)])[a74_0x12693f(0x23d)]()['describe'](a74_0x12693f(0x1d4))});function a74_0x5e7e(_0x402ec3,_0x316df4){_0x402ec3=_0x402ec3-0x1c9;const _0x1c3db0=a74_0x1c3d();let _0x5e7efb=_0x1c3db0[_0x402ec3];return _0x5e7efb;}export function searchCommands(_0x599470){const _0x3145fa=a74_0x12693f,{query:_0x12cccd,category:_0x290f7b}=_0x599470,_0xd2d963=_0x12cccd['toLowerCase'](),_0x2dab98=_0xd2d963[_0x3145fa(0x235)](/\s+/)[_0x3145fa(0x20e)](_0x6200f4=>_0x6200f4[_0x3145fa(0x240)]>0x0);let _0x2ea5d8=COMMANDS;_0x290f7b&&(_0x2ea5d8=_0x2ea5d8[_0x3145fa(0x20e)](_0x5459d3=>_0x5459d3['category']===_0x290f7b));const _0x209714=_0x2ea5d8['map'](_0x1b2115=>{const _0x544ffc=_0x3145fa;let _0x3fcad9=0x0;_0x1b2115[_0x544ffc(0x2a1)][_0x544ffc(0x28a)]()===_0xd2d963&&(_0x3fcad9+=0x64);_0x1b2115[_0x544ffc(0x2a1)][_0x544ffc(0x28a)]()[_0x544ffc(0x276)](_0xd2d963)&&(_0x3fcad9+=0x32);_0x1b2115[_0x544ffc(0x2b5)][_0x544ffc(0x28a)]()[_0x544ffc(0x276)](_0xd2d963)&&(_0x3fcad9+=0x1e);for(const _0xa03469 of _0x2dab98){for(const _0xf9e516 of _0x1b2115[_0x544ffc(0x1e6)]){if(_0xf9e516===_0xa03469)_0x3fcad9+=0x14;else(_0xf9e516[_0x544ffc(0x276)](_0xa03469)||_0xa03469[_0x544ffc(0x276)](_0xf9e516))&&(_0x3fcad9+=0xa);}_0x1b2115[_0x544ffc(0x2a1)][_0x544ffc(0x28a)]()[_0x544ffc(0x276)](_0xa03469)&&(_0x3fcad9+=0xf),_0x1b2115[_0x544ffc(0x2b5)][_0x544ffc(0x28a)]()['includes'](_0xa03469)&&(_0x3fcad9+=0x5);}return{'name':_0x1b2115[_0x544ffc(0x2a1)],'description':_0x1b2115[_0x544ffc(0x2b5)],'category':_0x1b2115[_0x544ffc(0x285)],'examples':_0x1b2115[_0x544ffc(0x24d)],'score':_0x3fcad9};});return _0x209714[_0x3145fa(0x20e)](_0x3c5c14=>_0x3c5c14[_0x3145fa(0x226)]>0x0)['sort']((_0x4a370b,_0x52b893)=>_0x52b893['score']-_0x4a370b['score'])[_0x3145fa(0x27e)](0x0,0xa);}
@@ -1 +1 @@
1
- function a75_0x25f4(_0x380ecb,_0x48d587){_0x380ecb=_0x380ecb-0x174;const _0x303344=a75_0x3033();let _0x25f410=_0x303344[_0x380ecb];return _0x25f410;}const a75_0x7df733=a75_0x25f4;(function(_0x38d810,_0x1af2dd){const _0x59a185=a75_0x25f4,_0x1d9beb=_0x38d810();while(!![]){try{const _0x4396f9=-parseInt(_0x59a185(0x1a3))/0x1+-parseInt(_0x59a185(0x181))/0x2+parseInt(_0x59a185(0x190))/0x3*(parseInt(_0x59a185(0x1a0))/0x4)+parseInt(_0x59a185(0x191))/0x5*(-parseInt(_0x59a185(0x18d))/0x6)+parseInt(_0x59a185(0x194))/0x7*(parseInt(_0x59a185(0x19c))/0x8)+parseInt(_0x59a185(0x189))/0x9*(-parseInt(_0x59a185(0x18b))/0xa)+parseInt(_0x59a185(0x179))/0xb;if(_0x4396f9===_0x1af2dd)break;else _0x1d9beb['push'](_0x1d9beb['shift']());}catch(_0x3d7ee4){_0x1d9beb['push'](_0x1d9beb['shift']());}}}(a75_0x3033,0x5d21f));import{z}from'zod';function a75_0x3033(){const _0x29a650=['7944daAUeu','title','string','done','4UrGFNn','Initial\x20status\x20(default:\x20\x22todo\x22\x20for\x20items,\x20\x22proposed\x22\x20for\x20guides)','Priority\x20level','758395fYmFVv','Document\x20kind\x20(default:\x20\x22item\x22)','superseded','todo','medium','deprecated','template','13452428SrYBvS','createDocument','planning','jira','body','GitHub\x20PR/issue\x20reference\x20(owner/repo#number)','backlog','critical','169734tEAiJe','status','in_progress','low','note','guide','object','describe','5553LkUfPt','github','7950rNzwja','optional','744drtrsp','design_review','kind','381651XteCnV','1255PFuvtB','item','Tags\x20for\x20the\x20item','2793VodWMC','proposed','replace','Template\x20name\x20from\x20templates/\x20folder','No\x20workspace\x20found.\x20Run\x20`tdx\x20work\x20init`\x20to\x20create\x20one.','Markdown\x20body\x20content','accepted','enum'];a75_0x3033=function(){return _0x29a650;};return a75_0x3033();}import{WorkspaceSDK,resolveWorkspacePath}from'../../sdk/workspace/index.js';const TASK_STATUSES=[a75_0x7df733(0x17f),a75_0x7df733(0x175),a75_0x7df733(0x17b),a75_0x7df733(0x18e),a75_0x7df733(0x183),'review',a75_0x7df733(0x19f),'void'],GUIDE_STATUSES=[a75_0x7df733(0x195),a75_0x7df733(0x19a),a75_0x7df733(0x177),a75_0x7df733(0x174)];export const WorkCreateItemInputSchema=z[a75_0x7df733(0x187)]({'title':z[a75_0x7df733(0x19e)]()[a75_0x7df733(0x188)]('Item\x20title\x20(required)'),'kind':z['enum']([a75_0x7df733(0x192),a75_0x7df733(0x185),a75_0x7df733(0x186),'reference'])['optional']()['describe'](a75_0x7df733(0x1a4)),'status':z[a75_0x7df733(0x19b)]([...TASK_STATUSES,...GUIDE_STATUSES])[a75_0x7df733(0x18c)]()[a75_0x7df733(0x188)](a75_0x7df733(0x1a1)),'tags':z['array'](z[a75_0x7df733(0x19e)]())[a75_0x7df733(0x18c)]()['describe'](a75_0x7df733(0x193)),'priority':z['enum']([a75_0x7df733(0x180),'high',a75_0x7df733(0x176),a75_0x7df733(0x184)])[a75_0x7df733(0x18c)]()[a75_0x7df733(0x188)](a75_0x7df733(0x1a2)),'body':z['string']()[a75_0x7df733(0x18c)]()[a75_0x7df733(0x188)](a75_0x7df733(0x199)),'template':z[a75_0x7df733(0x19e)]()['optional']()[a75_0x7df733(0x188)](a75_0x7df733(0x197)),'github':z['string']()[a75_0x7df733(0x18c)]()['describe'](a75_0x7df733(0x17e)),'jira':z['string']()[a75_0x7df733(0x18c)]()[a75_0x7df733(0x188)]('JIRA\x20ticket\x20reference\x20(org/TICKET-ID)')});export function executeWorkCreateItem(_0x33bff4){const _0x52a6fa=a75_0x7df733,_0x58d83b=resolveWorkspacePath();if(!_0x58d83b)return{'success':![],'error':_0x52a6fa(0x198)};const _0x36cbb2=new WorkspaceSDK(_0x58d83b),_0xe4042e={'title':_0x33bff4[_0x52a6fa(0x19d)],'kind':_0x33bff4[_0x52a6fa(0x18f)]||'item','status':_0x33bff4[_0x52a6fa(0x182)],'tags':_0x33bff4['tags'],'priority':_0x33bff4['priority'],'body':_0x33bff4[_0x52a6fa(0x17d)],'template':_0x33bff4[_0x52a6fa(0x178)],'github':_0x33bff4[_0x52a6fa(0x18a)],'jira':_0x33bff4[_0x52a6fa(0x17c)]},_0x547dfa=_0x36cbb2[_0x52a6fa(0x17a)](_0xe4042e);return{'success':!![],'path':_0x547dfa['filePath'],'slug':_0x547dfa['fileName'][_0x52a6fa(0x196)](/\.md$/,'')};}
1
+ const a75_0x3481d7=a75_0x18af;(function(_0x2c43e3,_0x5a9a56){const _0x393feb=a75_0x18af,_0x1d5a3f=_0x2c43e3();while(!![]){try{const _0x356554=parseInt(_0x393feb(0x209))/0x1*(parseInt(_0x393feb(0x1de))/0x2)+-parseInt(_0x393feb(0x202))/0x3*(parseInt(_0x393feb(0x1e5))/0x4)+parseInt(_0x393feb(0x1fb))/0x5+parseInt(_0x393feb(0x1f6))/0x6*(parseInt(_0x393feb(0x204))/0x7)+-parseInt(_0x393feb(0x1dd))/0x8+parseInt(_0x393feb(0x1ea))/0x9+parseInt(_0x393feb(0x1f2))/0xa;if(_0x356554===_0x5a9a56)break;else _0x1d5a3f['push'](_0x1d5a3f['shift']());}catch(_0x1b3c5d){_0x1d5a3f['push'](_0x1d5a3f['shift']());}}}(a75_0x1893,0x2173b));import{z}from'zod';import{WorkspaceSDK,resolveWorkspacePath}from'../../sdk/workspace/index.js';function a75_0x1893(){const _0x231c47=['jira','446257EiMlky','status','proposed','fileName','reference','11iaikjU','deprecated','critical','1235880EhLslw','48674AKCHXi','optional','Tags\x20for\x20the\x20item','in_progress','priority','guide','No\x20workspace\x20found.\x20Run\x20`tdx\x20work\x20init`\x20to\x20create\x20one.','3756SxHlFI','describe','high','backlog','JIRA\x20ticket\x20reference\x20(org/TICKET-ID)','274212fgDUTd','item','Initial\x20status\x20(default:\x20\x22todo\x22\x20for\x20items,\x20\x22proposed\x22\x20for\x20guides)','Document\x20kind\x20(default:\x20\x22item\x22)','design_review','kind','planning','string','667670PgXTjU','GitHub\x20PR/issue\x20reference\x20(owner/repo#number)','enum','filePath','12mWYjnM','github','todo','Item\x20title\x20(required)','low','140880rGevqB','Priority\x20level','template','review','accepted','array','Markdown\x20body\x20content','732NjPIJR'];a75_0x1893=function(){return _0x231c47;};return a75_0x1893();}const TASK_STATUSES=[a75_0x3481d7(0x1e8),a75_0x3481d7(0x1f8),a75_0x3481d7(0x1f0),a75_0x3481d7(0x1ee),a75_0x3481d7(0x1e1),a75_0x3481d7(0x1fe),'done','void'],GUIDE_STATUSES=[a75_0x3481d7(0x206),a75_0x3481d7(0x1ff),a75_0x3481d7(0x20a),'superseded'];export const WorkCreateItemInputSchema=z['object']({'title':z[a75_0x3481d7(0x1f1)]()[a75_0x3481d7(0x1e6)](a75_0x3481d7(0x1f9)),'kind':z['enum']([a75_0x3481d7(0x1eb),'note',a75_0x3481d7(0x1e3),a75_0x3481d7(0x208)])[a75_0x3481d7(0x1df)]()[a75_0x3481d7(0x1e6)](a75_0x3481d7(0x1ed)),'status':z[a75_0x3481d7(0x1f4)]([...TASK_STATUSES,...GUIDE_STATUSES])[a75_0x3481d7(0x1df)]()[a75_0x3481d7(0x1e6)](a75_0x3481d7(0x1ec)),'tags':z[a75_0x3481d7(0x200)](z[a75_0x3481d7(0x1f1)]())[a75_0x3481d7(0x1df)]()[a75_0x3481d7(0x1e6)](a75_0x3481d7(0x1e0)),'priority':z[a75_0x3481d7(0x1f4)]([a75_0x3481d7(0x20b),a75_0x3481d7(0x1e7),'medium',a75_0x3481d7(0x1fa)])[a75_0x3481d7(0x1df)]()['describe'](a75_0x3481d7(0x1fc)),'body':z[a75_0x3481d7(0x1f1)]()['optional']()['describe'](a75_0x3481d7(0x201)),'template':z[a75_0x3481d7(0x1f1)]()[a75_0x3481d7(0x1df)]()[a75_0x3481d7(0x1e6)]('Template\x20name\x20from\x20templates/\x20folder'),'github':z[a75_0x3481d7(0x1f1)]()[a75_0x3481d7(0x1df)]()[a75_0x3481d7(0x1e6)](a75_0x3481d7(0x1f3)),'jira':z[a75_0x3481d7(0x1f1)]()[a75_0x3481d7(0x1df)]()['describe'](a75_0x3481d7(0x1e9))});function a75_0x18af(_0x1df4a4,_0x2d8dcc){_0x1df4a4=_0x1df4a4-0x1dd;const _0x189342=a75_0x1893();let _0x18afef=_0x189342[_0x1df4a4];return _0x18afef;}export function executeWorkCreateItem(_0x35e321){const _0x3ecdbd=a75_0x3481d7,_0x19b263=resolveWorkspacePath();if(!_0x19b263)return{'success':![],'error':_0x3ecdbd(0x1e4)};const _0x9b7022=new WorkspaceSDK(_0x19b263),_0x53ccdf={'title':_0x35e321['title'],'kind':_0x35e321[_0x3ecdbd(0x1ef)]||_0x3ecdbd(0x1eb),'status':_0x35e321[_0x3ecdbd(0x205)],'tags':_0x35e321['tags'],'priority':_0x35e321[_0x3ecdbd(0x1e2)],'body':_0x35e321['body'],'template':_0x35e321[_0x3ecdbd(0x1fd)],'github':_0x35e321[_0x3ecdbd(0x1f7)],'jira':_0x35e321[_0x3ecdbd(0x203)]},_0x5a24ff=_0x9b7022['createDocument'](_0x53ccdf);return{'success':!![],'path':_0x5a24ff[_0x3ecdbd(0x1f5)],'slug':_0x5a24ff[_0x3ecdbd(0x207)]['replace'](/\.md$/,'')};}
package/dist/mcp/utils.js CHANGED
@@ -1 +1 @@
1
- const a76_0x39c7d4=a76_0x4598;(function(_0x398b15,_0x1e6dbf){const _0x2db57c=a76_0x4598,_0x160e95=_0x398b15();while(!![]){try{const _0x3b2436=-parseInt(_0x2db57c(0x165))/0x1+-parseInt(_0x2db57c(0x171))/0x2+-parseInt(_0x2db57c(0x164))/0x3*(parseInt(_0x2db57c(0x169))/0x4)+-parseInt(_0x2db57c(0x15c))/0x5*(-parseInt(_0x2db57c(0x16f))/0x6)+parseInt(_0x2db57c(0x16d))/0x7*(parseInt(_0x2db57c(0x157))/0x8)+parseInt(_0x2db57c(0x15a))/0x9+parseInt(_0x2db57c(0x16c))/0xa;if(_0x3b2436===_0x1e6dbf)break;else _0x160e95['push'](_0x160e95['shift']());}catch(_0x2e875b){_0x160e95['push'](_0x160e95['shift']());}}}(a76_0x542b,0x5909e));const BLOCKED_COMMANDS=[a76_0x39c7d4(0x16e),a76_0x39c7d4(0x16a),'auth\x20clear',a76_0x39c7d4(0x162),a76_0x39c7d4(0x15b),a76_0x39c7d4(0x16b),a76_0x39c7d4(0x154)],BLOCKED_FLAGS=[a76_0x39c7d4(0x159),'-p'];function a76_0x4598(_0x4a458a,_0x5182cd){_0x4a458a=_0x4a458a-0x153;const _0x542b2a=a76_0x542b();let _0x459812=_0x542b2a[_0x4a458a];return _0x459812;}export function hasBlockedFlag(_0x59ac1c){const _0x40c25e=a76_0x39c7d4;for(const _0x5a3e4b of _0x59ac1c){const _0x1515ae=_0x5a3e4b['toLowerCase']();for(const _0xf4fed6 of BLOCKED_FLAGS){if(_0x1515ae===_0xf4fed6||_0x1515ae[_0x40c25e(0x161)](_0xf4fed6+'='))return!![];}}return![];}export function isBlockedCommand(_0x2bfe87){const _0x405bee=a76_0x39c7d4;if(_0x2bfe87[_0x405bee(0x15e)]===0x0)return![];if(hasBlockedFlag(_0x2bfe87))return!![];const _0x395b17=_0x2bfe87[_0x405bee(0x166)](0x0,0x2)[_0x405bee(0x158)]('\x20')[_0x405bee(0x170)]();for(const _0x58653c of BLOCKED_COMMANDS){if(_0x395b17[_0x405bee(0x161)](_0x58653c))return!![];}const _0x39c4a8=_0x2bfe87[0x0][_0x405bee(0x170)]();for(const _0x91ae0b of BLOCKED_COMMANDS){if(!_0x91ae0b[_0x405bee(0x153)]('\x20')&&_0x39c4a8===_0x91ae0b)return!![];}return![];}export function getBlockedReason(_0x37ec68){const _0x258e71=a76_0x39c7d4;if(!isBlockedCommand(_0x37ec68))return undefined;if(hasBlockedFlag(_0x37ec68))return _0x258e71(0x167);const _0x1763fc=_0x37ec68['slice'](0x0,0x2)[_0x258e71(0x158)]('\x20')['toLowerCase'](),_0x7c98b8=_0x37ec68[0x0]['toLowerCase']();if(_0x1763fc[_0x258e71(0x161)](_0x258e71(0x16e))||_0x1763fc['startsWith']('auth\x20login')||_0x1763fc[_0x258e71(0x161)](_0x258e71(0x15f)))return _0x258e71(0x160);if(_0x1763fc[_0x258e71(0x161)](_0x258e71(0x162))||_0x1763fc[_0x258e71(0x161)]('profile\x20delete')||_0x1763fc[_0x258e71(0x161)](_0x258e71(0x16b)))return _0x258e71(0x163);if(_0x7c98b8===_0x258e71(0x154))return _0x258e71(0x168);return _0x258e71(0x15d);}function a76_0x542b(){const _0x5679be=['311570LuJskS','slice','Profile\x20switching\x20via\x20--profile\x20flag\x20is\x20not\x20allowed\x20via\x20MCP','Cannot\x20run\x20MCP\x20server\x20recursively','7904CTQxwC','auth\x20login','profile\x20remove','4007440IDgIpF','63sFMdZx','auth\x20setup','36dmtikv','toLowerCase','1092826AhZcPq','includes','mcp','replace','trimEnd','111312SKWRNl','join','--profile','4747563sAwQcq','profile\x20delete','312260ssDKSz','This\x20command\x20is\x20not\x20allowed\x20via\x20MCP','length','auth\x20clear','Credential\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','startsWith','profile\x20create','Profile\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','312keakis'];a76_0x542b=function(){return _0x5679be;};return a76_0x542b();}export function formatOutput(_0x1fa9c3){const _0x4476e2=a76_0x39c7d4,_0x179417=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;let _0x59296a=_0x1fa9c3[_0x4476e2(0x155)](_0x179417,'');return _0x59296a=_0x59296a[_0x4476e2(0x155)](/\r\n/g,'\x0a')['replace'](/\r/g,'\x0a'),_0x59296a=_0x59296a[_0x4476e2(0x156)](),_0x59296a;}
1
+ const a76_0x5a8bca=a76_0x1c20;(function(_0x129adf,_0x26ba67){const _0x5bf835=a76_0x1c20,_0x159296=_0x129adf();while(!![]){try{const _0x187813=parseInt(_0x5bf835(0x114))/0x1+parseInt(_0x5bf835(0x123))/0x2+-parseInt(_0x5bf835(0x119))/0x3+-parseInt(_0x5bf835(0x124))/0x4*(parseInt(_0x5bf835(0x10c))/0x5)+parseInt(_0x5bf835(0x126))/0x6*(parseInt(_0x5bf835(0x121))/0x7)+parseInt(_0x5bf835(0x11d))/0x8*(-parseInt(_0x5bf835(0x10f))/0x9)+-parseInt(_0x5bf835(0x111))/0xa*(-parseInt(_0x5bf835(0x10b))/0xb);if(_0x187813===_0x26ba67)break;else _0x159296['push'](_0x159296['shift']());}catch(_0x361834){_0x159296['push'](_0x159296['shift']());}}}(a76_0x2fd7,0x5131a));function a76_0x1c20(_0x3bd971,_0x364437){_0x3bd971=_0x3bd971-0x10b;const _0x2fd7e2=a76_0x2fd7();let _0x1c2059=_0x2fd7e2[_0x3bd971];return _0x1c2059;}const BLOCKED_COMMANDS=[a76_0x5a8bca(0x10e),a76_0x5a8bca(0x10d),a76_0x5a8bca(0x110),'profile\x20create',a76_0x5a8bca(0x120),a76_0x5a8bca(0x116),a76_0x5a8bca(0x117)],BLOCKED_FLAGS=[a76_0x5a8bca(0x11c),'-p'];export function hasBlockedFlag(_0x314281){const _0xdaccea=a76_0x5a8bca;for(const _0x43fb3b of _0x314281){const _0x37967a=_0x43fb3b[_0xdaccea(0x118)]();for(const _0x4c385e of BLOCKED_FLAGS){if(_0x37967a===_0x4c385e||_0x37967a[_0xdaccea(0x129)](_0x4c385e+'='))return!![];}}return![];}export function isBlockedCommand(_0x50970c){const _0x5de210=a76_0x5a8bca;if(_0x50970c[_0x5de210(0x11e)]===0x0)return![];if(hasBlockedFlag(_0x50970c))return!![];const _0x1a3d7e=_0x50970c['slice'](0x0,0x2)[_0x5de210(0x11b)]('\x20')[_0x5de210(0x118)]();for(const _0x2a60e7 of BLOCKED_COMMANDS){if(_0x1a3d7e[_0x5de210(0x129)](_0x2a60e7))return!![];}const _0x58a393=_0x50970c[0x0][_0x5de210(0x118)]();for(const _0x44470d of BLOCKED_COMMANDS){if(!_0x44470d[_0x5de210(0x125)]('\x20')&&_0x58a393===_0x44470d)return!![];}return![];}function a76_0x2fd7(){const _0x2d4470=['352nySwyL','length','Credential\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','profile\x20delete','195314VmSNVM','Profile\x20switching\x20via\x20--profile\x20flag\x20is\x20not\x20allowed\x20via\x20MCP','1088626GrzoxF','8FOPUVO','includes','108YFxzFo','trimEnd','Profile\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','startsWith','1204654njGgwg','1648805wiVHOC','auth\x20login','auth\x20setup','84636msmtzE','auth\x20clear','50URBAZC','This\x20command\x20is\x20not\x20allowed\x20via\x20MCP','Cannot\x20run\x20MCP\x20server\x20recursively','81572qmykUW','slice','profile\x20remove','mcp','toLowerCase','809469jlhaQX','replace','join','--profile'];a76_0x2fd7=function(){return _0x2d4470;};return a76_0x2fd7();}export function getBlockedReason(_0x30fb08){const _0x269acb=a76_0x5a8bca;if(!isBlockedCommand(_0x30fb08))return undefined;if(hasBlockedFlag(_0x30fb08))return _0x269acb(0x122);const _0x5ea343=_0x30fb08[_0x269acb(0x115)](0x0,0x2)[_0x269acb(0x11b)]('\x20')[_0x269acb(0x118)](),_0x1b2553=_0x30fb08[0x0][_0x269acb(0x118)]();if(_0x5ea343[_0x269acb(0x129)](_0x269acb(0x10e))||_0x5ea343[_0x269acb(0x129)]('auth\x20login')||_0x5ea343[_0x269acb(0x129)](_0x269acb(0x110)))return _0x269acb(0x11f);if(_0x5ea343[_0x269acb(0x129)]('profile\x20create')||_0x5ea343['startsWith'](_0x269acb(0x120))||_0x5ea343[_0x269acb(0x129)]('profile\x20remove'))return _0x269acb(0x128);if(_0x1b2553==='mcp')return _0x269acb(0x113);return _0x269acb(0x112);}export function formatOutput(_0x4f388a){const _0x2bf469=a76_0x5a8bca,_0x5f146b=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;let _0x15cc30=_0x4f388a[_0x2bf469(0x11a)](_0x5f146b,'');return _0x15cc30=_0x15cc30[_0x2bf469(0x11a)](/\r\n/g,'\x0a')[_0x2bf469(0x11a)](/\r/g,'\x0a'),_0x15cc30=_0x15cc30[_0x2bf469(0x127)](),_0x15cc30;}
@@ -1 +1 @@
1
- (function(_0x54c7ca,_0x2dd82a){const _0x2b296d=a77_0xb506,_0x291c1e=_0x54c7ca();while(!![]){try{const _0x195a98=-parseInt(_0x2b296d(0xf3))/0x1*(parseInt(_0x2b296d(0x11f))/0x2)+parseInt(_0x2b296d(0x110))/0x3*(-parseInt(_0x2b296d(0xf8))/0x4)+-parseInt(_0x2b296d(0xf9))/0x5*(-parseInt(_0x2b296d(0x112))/0x6)+-parseInt(_0x2b296d(0xea))/0x7+-parseInt(_0x2b296d(0xe4))/0x8*(parseInt(_0x2b296d(0x11e))/0x9)+-parseInt(_0x2b296d(0xe5))/0xa*(parseInt(_0x2b296d(0x103))/0xb)+parseInt(_0x2b296d(0x114))/0xc;if(_0x195a98===_0x2dd82a)break;else _0x291c1e['push'](_0x291c1e['shift']());}catch(_0x3c5906){_0x291c1e['push'](_0x291c1e['shift']());}}}(a77_0x3fec,0x55226));import{readFile,writeFile,appendFile,mkdir,readdir,stat}from'node:fs/promises';import{existsSync}from'node:fs';import{join,resolve}from'node:path';import{getModelPricing,calculateTokenCost,usdToAiCredits}from'../sdk/llm/model-factors.js';import{TDXLogger,LogLevel}from'../utils/tdx-logger.js';import{getGlobalCacheDir}from'../utils/global-cache.js';let usageLogger=null;function a77_0x3fec(){const _0x3ef77e=['replace','lastUpdatedAt','toISOString','25832enbRgB','10RNWzfe','filter','Failed\x20to\x20read\x20usage\x20directory:','parse','sessions','4529063OXqvIh','outputTokens','cacheReadInputTokens','object','claude-usage','lastUsedAt','reduce','sources','monthCredits','155007iatwLo','startsWith','source','daily','profiles','129452DANIJb','5dkNjEN','keys','endsWith','split','credits','warn','totalChatUnits','monthly','length','getTime','6205298Ebskhn','timestamp','default','message','entries','.jsonl:','slice','todayCredits','profile','entryCount','stats-cache.json','contextSignature','stringify','21WEYShM','trim','1373112BZJZnZ','Invalid\x20session\x20ID:\x20path\x20traversal\x20detected','28377492hsJeLB','inputTokens','cacheCreationInputTokens','values','Failed\x20to\x20process\x20session\x20','utf-8','max','WARN','sort','map','1818yVfxVt','2hxlarX','mtime','tdx-claude','month','.jsonl','totalCredits','todayDate'];a77_0x3fec=function(){return _0x3ef77e;};return a77_0x3fec();}async function getLogger(){const _0x27b9e3=a77_0xb506;return!usageLogger&&(usageLogger=new TDXLogger(LogLevel[_0x27b9e3(0x11b)],!![]),await usageLogger['init']()),usageLogger;}function getUsageDir(){const _0x2474cf=a77_0xb506;return join(getGlobalCacheDir(),_0x2474cf(0xee));}function sanitizeSessionId(_0x1f473c){return _0x1f473c['replace'](/[^a-zA-Z0-9_-]/g,'_');}function getSafeJsonlPath(_0x50835a){const _0x2bb657=a77_0xb506,_0x2a4e94=getUsageDir(),_0x10b215=sanitizeSessionId(_0x50835a),_0x17aceb=resolve(_0x2a4e94,_0x10b215+_0x2bb657(0x123));if(!_0x17aceb[_0x2bb657(0xf4)](_0x2a4e94))throw new Error(_0x2bb657(0x113));return _0x17aceb;}function getStatsCachePath(){const _0xb950b0=a77_0xb506;return join(getUsageDir(),_0xb950b0(0x10d));}async function ensureUsageDir(){const _0x2e90ca=getUsageDir();!existsSync(_0x2e90ca)&&await mkdir(_0x2e90ca,{'recursive':!![]});}export async function appendUsageEntry(_0x4f91ae,_0x2e18d7){const _0x38e42f=a77_0xb506,_0x283c29=sanitizeSessionId(_0x4f91ae);await ensureUsageDir();const _0x413a58=getSafeJsonlPath(_0x283c29),_0x380d77=JSON['stringify'](_0x2e18d7)+'\x0a';await appendFile(_0x413a58,_0x380d77,_0x38e42f(0x119));}async function readSessionJsonl(_0x377b2f){const _0x1fa28a=a77_0xb506,_0x535705=getSafeJsonlPath(_0x377b2f);if(!existsSync(_0x535705))return[];try{const _0xf8248f=await readFile(_0x535705,_0x1fa28a(0x119)),_0x195bbd=_0xf8248f[_0x1fa28a(0x111)]()[_0x1fa28a(0xfc)]('\x0a')['filter'](Boolean);return _0x195bbd[_0x1fa28a(0x11d)](_0x45b32e=>{const _0x23f5e3=_0x1fa28a;try{return JSON[_0x23f5e3(0xe8)](_0x45b32e);}catch{return null;}})[_0x1fa28a(0xe6)](_0x2c2d71=>_0x2c2d71!==null);}catch(_0x1d9048){const _0x4b9e6f=await getLogger();return _0x4b9e6f[_0x1fa28a(0xfe)]('Failed\x20to\x20read\x20usage\x20file\x20'+_0x377b2f+_0x1fa28a(0x108),_0x1d9048 instanceof Error?_0x1d9048[_0x1fa28a(0x106)]:String(_0x1d9048)),[];}}async function getAllSessionFiles(){const _0x3d2726=a77_0xb506,_0x5c103f=getUsageDir();if(!existsSync(_0x5c103f))return[];try{const _0x97ea9b=await readdir(_0x5c103f);return _0x97ea9b[_0x3d2726(0xe6)](_0x188c60=>_0x188c60[_0x3d2726(0xfb)](_0x3d2726(0x123)))['map'](_0xb0ebd9=>_0xb0ebd9[_0x3d2726(0x126)](_0x3d2726(0x123),''));}catch(_0x1710c3){const _0x710b3f=await getLogger();return _0x710b3f[_0x3d2726(0xfe)](_0x3d2726(0xe7),_0x1710c3 instanceof Error?_0x1710c3[_0x3d2726(0x106)]:String(_0x1710c3)),[];}}async function readStatsCache(){const _0x508125=a77_0xb506,_0x2ec62e=getStatsCachePath();if(!existsSync(_0x2ec62e))return null;try{const _0x4ec93b=await readFile(_0x2ec62e,_0x508125(0x119)),_0x4d0cd8=JSON[_0x508125(0xe8)](_0x4ec93b),_0x389570=Object[_0x508125(0x117)](_0x4d0cd8[_0x508125(0xe9)]||{})[0x0];if(_0x389570&&_0x508125(0xff)in _0x389570)return null;return _0x4d0cd8;}catch{return null;}}async function writeStatsCache(_0x1fb4df){const _0x87b620=a77_0xb506;await ensureUsageDir();const _0x79fa2b=getStatsCachePath();await writeFile(_0x79fa2b,JSON[_0x87b620(0x10f)](_0x1fb4df,null,0x2),_0x87b620(0x119));}async function isCacheUpToDate(_0x38a71c,_0x3e2087){const _0xf49ea9=a77_0xb506,_0x370470=_0x38a71c[_0xf49ea9(0xe9)][_0x3e2087];if(!_0x370470)return![];const _0x4cd9b9=getSafeJsonlPath(_0x3e2087);if(!existsSync(_0x4cd9b9))return!![];try{const _0x2be13e=await stat(_0x4cd9b9),_0x4b1e6f=new Date(_0x370470[_0xf49ea9(0x127)])['getTime'](),_0x5e1db1=_0x2be13e[_0xf49ea9(0x120)]['getTime']();return _0x4b1e6f>_0x5e1db1;}catch{return![];}}export async function rebuildCache(){const _0x4bd654=a77_0xb506,_0x5f0f0a=new Date(),_0x28c5d1=_0x5f0f0a[_0x4bd654(0x128)]()[_0x4bd654(0x109)](0x0,0xa),_0x3087a7=_0x5f0f0a[_0x4bd654(0x128)]()[_0x4bd654(0x109)](0x0,0x7),_0x460d76={'daily':{},'monthly':{},'sessions':{},'profiles':{},'sources':{},'lastRebuiltAt':_0x5f0f0a[_0x4bd654(0x128)]()},_0x404345=await getAllSessionFiles();for(const _0x10df34 of _0x404345){try{const _0x364c54=await readSessionJsonl(_0x10df34);if(_0x364c54[_0x4bd654(0x101)]===0x0)continue;let _0x39c604=0x0;const _0x52e43b={};let _0x14a867='';for(const _0x199cc4 of _0x364c54){const _0x46966b=getModelPricing(_0x199cc4['model']),_0x59f5ca=calculateTokenCost(_0x199cc4[_0x4bd654(0x115)],_0x199cc4[_0x4bd654(0xeb)],_0x199cc4['cacheCreationInputTokens']??0x0,_0x199cc4['cacheReadInputTokens']??0x0,_0x46966b),_0x5c543c=usdToAiCredits(_0x59f5ca);_0x39c604+=_0x5c543c;const _0x3bc07c=_0x199cc4[_0x4bd654(0x10e)]||_0x4bd654(0x105);_0x52e43b[_0x3bc07c]=_0x199cc4[_0x4bd654(0x115)]+(_0x199cc4[_0x4bd654(0x116)]??0x0)+(_0x199cc4[_0x4bd654(0xec)]??0x0);_0x199cc4[_0x4bd654(0x104)]>_0x14a867&&(_0x14a867=_0x199cc4[_0x4bd654(0x104)]);const _0x584e2d=_0x199cc4[_0x4bd654(0x104)][_0x4bd654(0x109)](0x0,0xa);!_0x460d76[_0x4bd654(0xf6)][_0x584e2d]&&(_0x460d76['daily'][_0x584e2d]={'totalCredits':0x0,'entryCount':0x0});_0x460d76[_0x4bd654(0xf6)][_0x584e2d]['totalCredits']+=_0x5c543c,_0x460d76[_0x4bd654(0xf6)][_0x584e2d][_0x4bd654(0x10c)]+=0x1;const _0x293c16=_0x199cc4[_0x4bd654(0x104)][_0x4bd654(0x109)](0x0,0x7);!_0x460d76[_0x4bd654(0x100)][_0x293c16]&&(_0x460d76['monthly'][_0x293c16]={'totalCredits':0x0,'entryCount':0x0});_0x460d76[_0x4bd654(0x100)][_0x293c16][_0x4bd654(0x124)]+=_0x5c543c,_0x460d76[_0x4bd654(0x100)][_0x293c16][_0x4bd654(0x10c)]+=0x1;const _0x56e1b8=_0x199cc4[_0x4bd654(0x10b)]||_0x4bd654(0x105);!_0x460d76['profiles'][_0x56e1b8]&&(_0x460d76[_0x4bd654(0xf7)][_0x56e1b8]={'totalCredits':0x0,'entryCount':0x0,'lastUsedAt':'','todayCredits':0x0,'todayDate':_0x28c5d1,'monthCredits':0x0,'month':_0x3087a7});_0x460d76[_0x4bd654(0xf7)][_0x56e1b8][_0x4bd654(0x124)]+=_0x5c543c,_0x460d76['profiles'][_0x56e1b8][_0x4bd654(0x10c)]+=0x1;_0x199cc4[_0x4bd654(0x104)]>_0x460d76[_0x4bd654(0xf7)][_0x56e1b8][_0x4bd654(0xef)]&&(_0x460d76[_0x4bd654(0xf7)][_0x56e1b8]['lastUsedAt']=_0x199cc4[_0x4bd654(0x104)]);_0x584e2d===_0x28c5d1&&(_0x460d76[_0x4bd654(0xf7)][_0x56e1b8][_0x4bd654(0x10a)]+=_0x5c543c);_0x293c16===_0x3087a7&&(_0x460d76[_0x4bd654(0xf7)][_0x56e1b8]['monthCredits']+=_0x5c543c);const _0xc234f2=_0x199cc4[_0x4bd654(0xf5)]||_0x4bd654(0x121);!_0x460d76[_0x4bd654(0xf1)][_0xc234f2]&&(_0x460d76[_0x4bd654(0xf1)][_0xc234f2]={'totalCredits':0x0,'entryCount':0x0,'todayCredits':0x0,'todayDate':_0x28c5d1,'monthCredits':0x0,'month':_0x3087a7}),_0x460d76['sources'][_0xc234f2]['totalCredits']+=_0x5c543c,_0x460d76[_0x4bd654(0xf1)][_0xc234f2][_0x4bd654(0x10c)]+=0x1,_0x584e2d===_0x28c5d1&&(_0x460d76[_0x4bd654(0xf1)][_0xc234f2]['todayCredits']+=_0x5c543c),_0x293c16===_0x3087a7&&(_0x460d76[_0x4bd654(0xf1)][_0xc234f2][_0x4bd654(0xf2)]+=_0x5c543c);}_0x460d76[_0x4bd654(0xe9)][_0x10df34]={'totalCredits':_0x39c604,'latestContextTokensBySignature':_0x52e43b,'createdAt':_0x364c54[0x0][_0x4bd654(0x104)],'lastUpdatedAt':_0x14a867};}catch(_0x3d6a8a){const _0x2d15eb=await getLogger();_0x2d15eb[_0x4bd654(0xfe)](_0x4bd654(0x118)+_0x10df34+':',_0x3d6a8a instanceof Error?_0x3d6a8a['message']:String(_0x3d6a8a));continue;}}return cleanupOldEntries(_0x460d76),await writeStatsCache(_0x460d76),_0x460d76;}function cleanupOldEntries(_0x24daf0){const _0x30369d=a77_0xb506,_0x1f5662=new Date(),_0x30183e=new Date(_0x1f5662[_0x30369d(0x102)]()-0x7*0x18*0x3c*0x3c*0x3e8);for(const _0x12b36a of Object[_0x30369d(0xfa)](_0x24daf0[_0x30369d(0xf6)])){new Date(_0x12b36a)<_0x30183e&&delete _0x24daf0[_0x30369d(0xf6)][_0x12b36a];}const _0x16f810=new Date(_0x1f5662['getFullYear']()-0x1,_0x1f5662['getMonth'](),0x1);for(const _0x2e4730 of Object['keys'](_0x24daf0[_0x30369d(0x100)])){const [_0x26f48a,_0x4b995d]=_0x2e4730[_0x30369d(0xfc)]('-')[_0x30369d(0x11d)](Number),_0x46a850=new Date(_0x26f48a,_0x4b995d-0x1,0x1);_0x46a850<_0x16f810&&delete _0x24daf0['monthly'][_0x2e4730];}const _0x9f785=new Date(_0x1f5662[_0x30369d(0x102)]()-0x1e*0x18*0x3c*0x3c*0x3e8);for(const [_0x5da2d6,_0x4fe33a]of Object['entries'](_0x24daf0[_0x30369d(0xe9)])){new Date(_0x4fe33a[_0x30369d(0x127)])<_0x9f785&&delete _0x24daf0['sessions'][_0x5da2d6];}}export async function getOrUpdateCache(_0x440ee4){const _0x3f6c62=_0x440ee4?sanitizeSessionId(_0x440ee4):undefined,_0x11fd81=await readStatsCache();if(!_0x11fd81)return rebuildCache();if(_0x3f6c62){const _0x3d0519=await isCacheUpToDate(_0x11fd81,_0x3f6c62);if(!_0x3d0519)return rebuildCache();}return _0x11fd81;}export async function getSessionCredits(_0x523391){const _0x59abe5=a77_0xb506,_0x4897f8=sanitizeSessionId(_0x523391),_0x20d482=await getOrUpdateCache(_0x4897f8),_0x169f11=_0x20d482[_0x59abe5(0xe9)][_0x4897f8];if(!_0x169f11)return 0x0;return _0x169f11[_0x59abe5(0x124)];}export async function getTodayCredits(){const _0x3f4a79=a77_0xb506,_0xc3ad8e=await getOrUpdateCache(),_0x49d73e=new Date()[_0x3f4a79(0x128)]()['slice'](0x0,0xa),_0x5854f3=_0xc3ad8e['daily'][_0x49d73e];if(!_0x5854f3)return 0x0;return _0x5854f3[_0x3f4a79(0x124)];}export async function getMonthCredits(){const _0x40fcf4=await getOrUpdateCache(),_0x37a66e=new Date()['toISOString']()['slice'](0x0,0x7),_0x543fcb=_0x40fcf4['monthly'][_0x37a66e];if(!_0x543fcb)return 0x0;return _0x543fcb['totalCredits'];}export async function getSessionStats(_0x1dcb85){const _0x40356a=sanitizeSessionId(_0x1dcb85),_0x165970=await getOrUpdateCache(_0x40356a);return _0x165970['sessions'][_0x40356a]||null;}function getMaxLatestContextTokens(_0x1e584e){const _0x401c65=a77_0xb506,_0x391dde=Object[_0x401c65(0x117)](_0x1e584e);if(_0x391dde[_0x401c65(0x101)]===0x0)return 0x0;return Math[_0x401c65(0x11a)](..._0x391dde);}function a77_0xb506(_0x2d359e,_0x511e83){_0x2d359e=_0x2d359e-0xe4;const _0x3fec17=a77_0x3fec();let _0xb506=_0x3fec17[_0x2d359e];return _0xb506;}export async function getUsageStats(_0x930fbe,_0xaa3f5b){const _0x1ffafa=a77_0xb506,_0x1ad420=sanitizeSessionId(_0x930fbe),_0x52a7c8=await getOrUpdateCache(_0x1ad420),_0x9fd500=_0x52a7c8[_0x1ffafa(0xe9)][_0x1ad420],_0x187070=new Date()[_0x1ffafa(0x128)]()[_0x1ffafa(0x109)](0x0,0xa),_0x3d1826=new Date()[_0x1ffafa(0x128)]()[_0x1ffafa(0x109)](0x0,0x7);if(_0xaa3f5b){const _0x28dbe0=_0x52a7c8['profiles']?.[_0xaa3f5b],_0x23ae22=_0x28dbe0?.[_0x1ffafa(0x125)]===_0x187070?_0x28dbe0[_0x1ffafa(0x10a)]:0x0,_0x140331=_0x28dbe0?.[_0x1ffafa(0x122)]===_0x3d1826?_0x28dbe0[_0x1ffafa(0xf2)]:0x0;return{'sessionCredits':_0x9fd500?_0x9fd500[_0x1ffafa(0x124)]:0x0,'todayCredits':_0x23ae22,'monthCredits':_0x140331,'latestContextTokens':_0x9fd500?getMaxLatestContextTokens(_0x9fd500['latestContextTokensBySignature']):0x0};}return{'sessionCredits':_0x9fd500?_0x9fd500['totalCredits']:0x0,'todayCredits':_0x52a7c8['daily'][_0x187070]?_0x52a7c8[_0x1ffafa(0xf6)][_0x187070][_0x1ffafa(0x124)]:0x0,'monthCredits':_0x52a7c8['monthly'][_0x3d1826]?_0x52a7c8[_0x1ffafa(0x100)][_0x3d1826]['totalCredits']:0x0,'latestContextTokens':_0x9fd500?getMaxLatestContextTokens(_0x9fd500['latestContextTokensBySignature']):0x0};}export async function getAllProfileStats(){const _0x20f634=a77_0xb506,_0x5c6b1c=await getOrUpdateCache(),_0x4eaf4e=_0x5c6b1c[_0x20f634(0xf7)]||{};return Object['entries'](_0x4eaf4e)[_0x20f634(0xe6)](([,_0x74a4a5])=>_0x74a4a5&&typeof _0x74a4a5===_0x20f634(0xed))[_0x20f634(0x11d)](([_0x11a0a2,_0x13a55b])=>({'profile':_0x11a0a2,'credits':_0x13a55b['totalCredits']||0x0,'entryCount':_0x13a55b['entryCount']||0x0,'lastUsedAt':_0x13a55b[_0x20f634(0xef)]||''}))[_0x20f634(0x11c)]((_0x23cd2f,_0x2d9fb2)=>_0x2d9fb2[_0x20f634(0xfd)]-_0x23cd2f[_0x20f634(0xfd)]);}export async function getAllSourceStats(){const _0x3ee582=a77_0xb506,_0xe642cc=await getOrUpdateCache(),_0x5123c9=_0xe642cc['sources']||{},_0x143f98=new Date()['toISOString']()[_0x3ee582(0x109)](0x0,0xa),_0x4809db=new Date()[_0x3ee582(0x128)]()[_0x3ee582(0x109)](0x0,0x7);return Object[_0x3ee582(0x107)](_0x5123c9)['filter'](([,_0x4c0432])=>_0x4c0432&&typeof _0x4c0432===_0x3ee582(0xed))[_0x3ee582(0x11d)](([_0x1a581e,_0x5583a8])=>({'source':_0x1a581e,'credits':_0x5583a8['totalCredits']||0x0,'todayCredits':_0x5583a8[_0x3ee582(0x125)]===_0x143f98?_0x5583a8[_0x3ee582(0x10a)]||0x0:0x0,'monthCredits':_0x5583a8['month']===_0x4809db?_0x5583a8[_0x3ee582(0xf2)]||0x0:0x0,'entryCount':_0x5583a8['entryCount']||0x0}))[_0x3ee582(0x11c)]((_0x114dd5,_0x312581)=>_0x312581[_0x3ee582(0xfd)]-_0x114dd5['credits']);}export async function getUsageSummary(){const _0x178a1a=a77_0xb506,_0x10b29b=await getOrUpdateCache(),_0x3e738f=_0x10b29b['profiles']||{},_0x41993d=new Date()[_0x178a1a(0x128)]()['slice'](0x0,0xa),_0x3f3f17=new Date()[_0x178a1a(0x128)]()[_0x178a1a(0x109)](0x0,0x7),_0x2ce669=Object['values'](_0x3e738f)['filter'](_0x4d3b76=>_0x4d3b76&&typeof _0x4d3b76===_0x178a1a(0xed)),_0x390da8=_0x2ce669[_0x178a1a(0xf0)]((_0xb3c839,_0x59e97)=>_0xb3c839+(_0x59e97['totalCredits']||0x0),0x0);return{'todayCredits':_0x10b29b[_0x178a1a(0xf6)][_0x41993d]?_0x10b29b[_0x178a1a(0xf6)][_0x41993d][_0x178a1a(0x124)]||0x0:0x0,'monthCredits':_0x10b29b['monthly'][_0x3f3f17]?_0x10b29b[_0x178a1a(0x100)][_0x3f3f17][_0x178a1a(0x124)]||0x0:0x0,'totalCredits':_0x390da8,'profileCount':_0x2ce669[_0x178a1a(0x101)]};}
1
+ (function(_0x27cd49,_0xf61160){const _0x4c8dbb=a77_0xa1e2,_0x1a4f75=_0x27cd49();while(!![]){try{const _0x3da9d0=parseInt(_0x4c8dbb(0x14f))/0x1+-parseInt(_0x4c8dbb(0x153))/0x2+-parseInt(_0x4c8dbb(0x151))/0x3+parseInt(_0x4c8dbb(0x15f))/0x4+parseInt(_0x4c8dbb(0x17f))/0x5*(-parseInt(_0x4c8dbb(0x150))/0x6)+-parseInt(_0x4c8dbb(0x15c))/0x7*(parseInt(_0x4c8dbb(0x157))/0x8)+parseInt(_0x4c8dbb(0x148))/0x9;if(_0x3da9d0===_0xf61160)break;else _0x1a4f75['push'](_0x1a4f75['shift']());}catch(_0x133603){_0x1a4f75['push'](_0x1a4f75['shift']());}}}(a77_0x91ea,0xe65df));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';function a77_0xa1e2(_0x452918,_0x56af7e){_0x452918=_0x452918-0x148;const _0x91ead1=a77_0x91ea();let _0xa1e218=_0x91ead1[_0x452918];return _0xa1e218;}import{getGlobalCacheDir}from'../utils/global-cache.js';function a77_0x91ea(){const _0x34c365=['stats-cache.json','stringify','credits','todayDate','sessions','profiles','map','.jsonl','filter','Failed\x20to\x20read\x20usage\x20directory:','Failed\x20to\x20read\x20usage\x20file\x20','utf-8','timestamp','split','cacheCreationInputTokens','values','totalCredits','warn','trim','85QSOCow','init','getFullYear','mtime','max','getMonth','endsWith','daily','message','latestContextTokensBySignature','25267113xUvaNv','default','lastUpdatedAt','entries','cacheReadInputTokens','todayCredits','entryCount','1260025rcGPwW','616164Gkevch','89769tOvelu','Invalid\x20session\x20ID:\x20path\x20traversal\x20detected','1645698JDojNA','reduce','toISOString','replace','8BJWOEB','getTime','monthly','keys','outputTokens','8416702NfsveK','model','monthCredits','2708228ZJHqUD','startsWith','sort','inputTokens','lastUsedAt','WARN','totalChatUnits','claude-usage','object','length','sources','slice','.jsonl:'];a77_0x91ea=function(){return _0x34c365;};return a77_0x91ea();}let usageLogger=null;async function getLogger(){const _0x175578=a77_0xa1e2;return!usageLogger&&(usageLogger=new TDXLogger(LogLevel[_0x175578(0x164)],!![]),await usageLogger[_0x175578(0x180)]()),usageLogger;}function getUsageDir(){const _0x33a123=a77_0xa1e2;return join(getGlobalCacheDir(),_0x33a123(0x166));}function sanitizeSessionId(_0x5c27f2){const _0x3bf94d=a77_0xa1e2;return _0x5c27f2[_0x3bf94d(0x156)](/[^a-zA-Z0-9_-]/g,'_');}function getSafeJsonlPath(_0x68f0d8){const _0x144d9a=a77_0xa1e2,_0x21d8c1=getUsageDir(),_0x4d0ea8=sanitizeSessionId(_0x68f0d8),_0x34c5e3=resolve(_0x21d8c1,_0x4d0ea8+_0x144d9a(0x173));if(!_0x34c5e3[_0x144d9a(0x160)](_0x21d8c1))throw new Error(_0x144d9a(0x152));return _0x34c5e3;}function getStatsCachePath(){const _0x50a1cb=a77_0xa1e2;return join(getUsageDir(),_0x50a1cb(0x16c));}async function ensureUsageDir(){const _0x30aa9a=getUsageDir();!existsSync(_0x30aa9a)&&await mkdir(_0x30aa9a,{'recursive':!![]});}export async function appendUsageEntry(_0x49c01f,_0x4ad70e){const _0x3eb406=a77_0xa1e2,_0x47985d=sanitizeSessionId(_0x49c01f);await ensureUsageDir();const _0xda5c47=getSafeJsonlPath(_0x47985d),_0x175dde=JSON[_0x3eb406(0x16d)](_0x4ad70e)+'\x0a';await appendFile(_0xda5c47,_0x175dde,_0x3eb406(0x177));}async function readSessionJsonl(_0x45e786){const _0x42ade2=a77_0xa1e2,_0x4e7e67=getSafeJsonlPath(_0x45e786);if(!existsSync(_0x4e7e67))return[];try{const _0x2b54b3=await readFile(_0x4e7e67,_0x42ade2(0x177)),_0x52eccf=_0x2b54b3[_0x42ade2(0x17e)]()[_0x42ade2(0x179)]('\x0a')[_0x42ade2(0x174)](Boolean);return _0x52eccf[_0x42ade2(0x172)](_0x494366=>{try{return JSON['parse'](_0x494366);}catch{return null;}})[_0x42ade2(0x174)](_0x271558=>_0x271558!==null);}catch(_0x3bc8ac){const _0x6dd60c=await getLogger();return _0x6dd60c[_0x42ade2(0x17d)](_0x42ade2(0x176)+_0x45e786+_0x42ade2(0x16b),_0x3bc8ac instanceof Error?_0x3bc8ac[_0x42ade2(0x187)]:String(_0x3bc8ac)),[];}}async function getAllSessionFiles(){const _0x4fcd06=a77_0xa1e2,_0x3553a5=getUsageDir();if(!existsSync(_0x3553a5))return[];try{const _0x333ba1=await readdir(_0x3553a5);return _0x333ba1['filter'](_0x280d05=>_0x280d05[_0x4fcd06(0x185)](_0x4fcd06(0x173)))[_0x4fcd06(0x172)](_0x49f6a0=>_0x49f6a0[_0x4fcd06(0x156)]('.jsonl',''));}catch(_0x6e94d){const _0x1b3e23=await getLogger();return _0x1b3e23[_0x4fcd06(0x17d)](_0x4fcd06(0x175),_0x6e94d instanceof Error?_0x6e94d[_0x4fcd06(0x187)]:String(_0x6e94d)),[];}}async function readStatsCache(){const _0x1afc6e=a77_0xa1e2,_0x56c01e=getStatsCachePath();if(!existsSync(_0x56c01e))return null;try{const _0x4dce25=await readFile(_0x56c01e,_0x1afc6e(0x177)),_0x5dae5f=JSON['parse'](_0x4dce25),_0x482f9f=Object[_0x1afc6e(0x17b)](_0x5dae5f['sessions']||{})[0x0];if(_0x482f9f&&_0x1afc6e(0x165)in _0x482f9f)return null;return _0x5dae5f;}catch{return null;}}async function writeStatsCache(_0xb31040){const _0x4008e8=a77_0xa1e2;await ensureUsageDir();const _0x5af457=getStatsCachePath();await writeFile(_0x5af457,JSON[_0x4008e8(0x16d)](_0xb31040,null,0x2),_0x4008e8(0x177));}async function isCacheUpToDate(_0x53e454,_0x304a45){const _0x3906fa=a77_0xa1e2,_0x4cd27a=_0x53e454[_0x3906fa(0x170)][_0x304a45];if(!_0x4cd27a)return![];const _0x1f5367=getSafeJsonlPath(_0x304a45);if(!existsSync(_0x1f5367))return!![];try{const _0x452073=await stat(_0x1f5367),_0xf0d685=new Date(_0x4cd27a[_0x3906fa(0x14a)])['getTime'](),_0xedb028=_0x452073[_0x3906fa(0x182)][_0x3906fa(0x158)]();return _0xf0d685>_0xedb028;}catch{return![];}}export async function rebuildCache(){const _0x3a10c0=a77_0xa1e2,_0x4b4c98=new Date(),_0xbe1f5a=_0x4b4c98[_0x3a10c0(0x155)]()[_0x3a10c0(0x16a)](0x0,0xa),_0x298e8e=_0x4b4c98[_0x3a10c0(0x155)]()['slice'](0x0,0x7),_0x47461f={'daily':{},'monthly':{},'sessions':{},'profiles':{},'sources':{},'lastRebuiltAt':_0x4b4c98[_0x3a10c0(0x155)]()},_0x512bfd=await getAllSessionFiles();for(const _0x6f26f6 of _0x512bfd){try{const _0x59b1d6=await readSessionJsonl(_0x6f26f6);if(_0x59b1d6[_0x3a10c0(0x168)]===0x0)continue;let _0x4c6251=0x0;const _0x9262dd={};let _0x374cf3='';for(const _0x48d301 of _0x59b1d6){const _0x37119c=getModelPricing(_0x48d301[_0x3a10c0(0x15d)]),_0x30d108=calculateTokenCost(_0x48d301['inputTokens'],_0x48d301[_0x3a10c0(0x15b)],_0x48d301[_0x3a10c0(0x17a)]??0x0,_0x48d301[_0x3a10c0(0x14c)]??0x0,_0x37119c),_0x68a62b=usdToAiCredits(_0x30d108);_0x4c6251+=_0x68a62b;const _0x416ac6=_0x48d301['contextSignature']||_0x3a10c0(0x149);_0x9262dd[_0x416ac6]=_0x48d301[_0x3a10c0(0x162)]+(_0x48d301[_0x3a10c0(0x17a)]??0x0)+(_0x48d301[_0x3a10c0(0x14c)]??0x0);_0x48d301['timestamp']>_0x374cf3&&(_0x374cf3=_0x48d301['timestamp']);const _0x328adc=_0x48d301[_0x3a10c0(0x178)][_0x3a10c0(0x16a)](0x0,0xa);!_0x47461f[_0x3a10c0(0x186)][_0x328adc]&&(_0x47461f[_0x3a10c0(0x186)][_0x328adc]={'totalCredits':0x0,'entryCount':0x0});_0x47461f[_0x3a10c0(0x186)][_0x328adc][_0x3a10c0(0x17c)]+=_0x68a62b,_0x47461f[_0x3a10c0(0x186)][_0x328adc]['entryCount']+=0x1;const _0x2306f8=_0x48d301[_0x3a10c0(0x178)][_0x3a10c0(0x16a)](0x0,0x7);!_0x47461f['monthly'][_0x2306f8]&&(_0x47461f[_0x3a10c0(0x159)][_0x2306f8]={'totalCredits':0x0,'entryCount':0x0});_0x47461f[_0x3a10c0(0x159)][_0x2306f8][_0x3a10c0(0x17c)]+=_0x68a62b,_0x47461f[_0x3a10c0(0x159)][_0x2306f8][_0x3a10c0(0x14e)]+=0x1;const _0x295a56=_0x48d301['profile']||_0x3a10c0(0x149);!_0x47461f[_0x3a10c0(0x171)][_0x295a56]&&(_0x47461f['profiles'][_0x295a56]={'totalCredits':0x0,'entryCount':0x0,'lastUsedAt':'','todayCredits':0x0,'todayDate':_0xbe1f5a,'monthCredits':0x0,'month':_0x298e8e});_0x47461f['profiles'][_0x295a56][_0x3a10c0(0x17c)]+=_0x68a62b,_0x47461f['profiles'][_0x295a56][_0x3a10c0(0x14e)]+=0x1;_0x48d301[_0x3a10c0(0x178)]>_0x47461f[_0x3a10c0(0x171)][_0x295a56][_0x3a10c0(0x163)]&&(_0x47461f[_0x3a10c0(0x171)][_0x295a56][_0x3a10c0(0x163)]=_0x48d301[_0x3a10c0(0x178)]);_0x328adc===_0xbe1f5a&&(_0x47461f['profiles'][_0x295a56]['todayCredits']+=_0x68a62b);_0x2306f8===_0x298e8e&&(_0x47461f[_0x3a10c0(0x171)][_0x295a56]['monthCredits']+=_0x68a62b);const _0x5227d2=_0x48d301['source']||'tdx-claude';!_0x47461f[_0x3a10c0(0x169)][_0x5227d2]&&(_0x47461f[_0x3a10c0(0x169)][_0x5227d2]={'totalCredits':0x0,'entryCount':0x0,'todayCredits':0x0,'todayDate':_0xbe1f5a,'monthCredits':0x0,'month':_0x298e8e}),_0x47461f[_0x3a10c0(0x169)][_0x5227d2][_0x3a10c0(0x17c)]+=_0x68a62b,_0x47461f[_0x3a10c0(0x169)][_0x5227d2]['entryCount']+=0x1,_0x328adc===_0xbe1f5a&&(_0x47461f[_0x3a10c0(0x169)][_0x5227d2][_0x3a10c0(0x14d)]+=_0x68a62b),_0x2306f8===_0x298e8e&&(_0x47461f[_0x3a10c0(0x169)][_0x5227d2][_0x3a10c0(0x15e)]+=_0x68a62b);}_0x47461f[_0x3a10c0(0x170)][_0x6f26f6]={'totalCredits':_0x4c6251,'latestContextTokensBySignature':_0x9262dd,'createdAt':_0x59b1d6[0x0][_0x3a10c0(0x178)],'lastUpdatedAt':_0x374cf3};}catch(_0x223c21){const _0x1ec51a=await getLogger();_0x1ec51a[_0x3a10c0(0x17d)]('Failed\x20to\x20process\x20session\x20'+_0x6f26f6+':',_0x223c21 instanceof Error?_0x223c21['message']:String(_0x223c21));continue;}}return cleanupOldEntries(_0x47461f),await writeStatsCache(_0x47461f),_0x47461f;}function cleanupOldEntries(_0x1128b1){const _0x4319c2=a77_0xa1e2,_0x31b53f=new Date(),_0xc3accc=new Date(_0x31b53f[_0x4319c2(0x158)]()-0x7*0x18*0x3c*0x3c*0x3e8);for(const _0x5dae93 of Object[_0x4319c2(0x15a)](_0x1128b1[_0x4319c2(0x186)])){new Date(_0x5dae93)<_0xc3accc&&delete _0x1128b1['daily'][_0x5dae93];}const _0x1b1a23=new Date(_0x31b53f[_0x4319c2(0x181)]()-0x1,_0x31b53f[_0x4319c2(0x184)](),0x1);for(const _0x34249b of Object[_0x4319c2(0x15a)](_0x1128b1[_0x4319c2(0x159)])){const [_0x7f682f,_0x29acc0]=_0x34249b['split']('-')[_0x4319c2(0x172)](Number),_0x3e0b2e=new Date(_0x7f682f,_0x29acc0-0x1,0x1);_0x3e0b2e<_0x1b1a23&&delete _0x1128b1[_0x4319c2(0x159)][_0x34249b];}const _0x5252ee=new Date(_0x31b53f['getTime']()-0x1e*0x18*0x3c*0x3c*0x3e8);for(const [_0x38ae5d,_0x3d22f6]of Object[_0x4319c2(0x14b)](_0x1128b1[_0x4319c2(0x170)])){new Date(_0x3d22f6['lastUpdatedAt'])<_0x5252ee&&delete _0x1128b1[_0x4319c2(0x170)][_0x38ae5d];}}export async function getOrUpdateCache(_0x47c2d1){const _0x5bba5f=_0x47c2d1?sanitizeSessionId(_0x47c2d1):undefined,_0x20aee6=await readStatsCache();if(!_0x20aee6)return rebuildCache();if(_0x5bba5f){const _0x1c1eb1=await isCacheUpToDate(_0x20aee6,_0x5bba5f);if(!_0x1c1eb1)return rebuildCache();}return _0x20aee6;}export async function getSessionCredits(_0x508910){const _0x2580ce=a77_0xa1e2,_0x3d12b1=sanitizeSessionId(_0x508910),_0x1b9438=await getOrUpdateCache(_0x3d12b1),_0x1235b9=_0x1b9438[_0x2580ce(0x170)][_0x3d12b1];if(!_0x1235b9)return 0x0;return _0x1235b9[_0x2580ce(0x17c)];}export async function getTodayCredits(){const _0x35ef2b=a77_0xa1e2,_0x27009f=await getOrUpdateCache(),_0x38ae27=new Date()[_0x35ef2b(0x155)]()[_0x35ef2b(0x16a)](0x0,0xa),_0x180f30=_0x27009f[_0x35ef2b(0x186)][_0x38ae27];if(!_0x180f30)return 0x0;return _0x180f30['totalCredits'];}export async function getMonthCredits(){const _0x2ef81e=a77_0xa1e2,_0x4aa784=await getOrUpdateCache(),_0x32a2f5=new Date()['toISOString']()[_0x2ef81e(0x16a)](0x0,0x7),_0x54e7e1=_0x4aa784[_0x2ef81e(0x159)][_0x32a2f5];if(!_0x54e7e1)return 0x0;return _0x54e7e1['totalCredits'];}export async function getSessionStats(_0x17cee6){const _0x425dd7=a77_0xa1e2,_0x37a173=sanitizeSessionId(_0x17cee6),_0x5dac3c=await getOrUpdateCache(_0x37a173);return _0x5dac3c[_0x425dd7(0x170)][_0x37a173]||null;}function getMaxLatestContextTokens(_0xe9a347){const _0x305f58=a77_0xa1e2,_0x22950e=Object[_0x305f58(0x17b)](_0xe9a347);if(_0x22950e[_0x305f58(0x168)]===0x0)return 0x0;return Math[_0x305f58(0x183)](..._0x22950e);}export async function getUsageStats(_0x5e61f7,_0x21705b){const _0x15ac7d=a77_0xa1e2,_0x54b5c5=sanitizeSessionId(_0x5e61f7),_0x252097=await getOrUpdateCache(_0x54b5c5),_0x472175=_0x252097[_0x15ac7d(0x170)][_0x54b5c5],_0x29de75=new Date()[_0x15ac7d(0x155)]()[_0x15ac7d(0x16a)](0x0,0xa),_0x396f7a=new Date()[_0x15ac7d(0x155)]()[_0x15ac7d(0x16a)](0x0,0x7);if(_0x21705b){const _0x501d14=_0x252097[_0x15ac7d(0x171)]?.[_0x21705b],_0x3ea537=_0x501d14?.[_0x15ac7d(0x16f)]===_0x29de75?_0x501d14[_0x15ac7d(0x14d)]:0x0,_0x3fc530=_0x501d14?.['month']===_0x396f7a?_0x501d14[_0x15ac7d(0x15e)]:0x0;return{'sessionCredits':_0x472175?_0x472175[_0x15ac7d(0x17c)]:0x0,'todayCredits':_0x3ea537,'monthCredits':_0x3fc530,'latestContextTokens':_0x472175?getMaxLatestContextTokens(_0x472175[_0x15ac7d(0x188)]):0x0};}return{'sessionCredits':_0x472175?_0x472175['totalCredits']:0x0,'todayCredits':_0x252097[_0x15ac7d(0x186)][_0x29de75]?_0x252097[_0x15ac7d(0x186)][_0x29de75][_0x15ac7d(0x17c)]:0x0,'monthCredits':_0x252097['monthly'][_0x396f7a]?_0x252097[_0x15ac7d(0x159)][_0x396f7a][_0x15ac7d(0x17c)]:0x0,'latestContextTokens':_0x472175?getMaxLatestContextTokens(_0x472175[_0x15ac7d(0x188)]):0x0};}export async function getAllProfileStats(){const _0x563c9d=a77_0xa1e2,_0x2ec31b=await getOrUpdateCache(),_0x3ab38b=_0x2ec31b[_0x563c9d(0x171)]||{};return Object['entries'](_0x3ab38b)[_0x563c9d(0x174)](([,_0x45f1d0])=>_0x45f1d0&&typeof _0x45f1d0===_0x563c9d(0x167))[_0x563c9d(0x172)](([_0x11531f,_0x3a51f7])=>({'profile':_0x11531f,'credits':_0x3a51f7[_0x563c9d(0x17c)]||0x0,'entryCount':_0x3a51f7[_0x563c9d(0x14e)]||0x0,'lastUsedAt':_0x3a51f7[_0x563c9d(0x163)]||''}))[_0x563c9d(0x161)]((_0x5a167f,_0x187059)=>_0x187059[_0x563c9d(0x16e)]-_0x5a167f[_0x563c9d(0x16e)]);}export async function getAllSourceStats(){const _0x46fbf8=a77_0xa1e2,_0x2bb073=await getOrUpdateCache(),_0x12e2f0=_0x2bb073[_0x46fbf8(0x169)]||{},_0x2240ff=new Date()[_0x46fbf8(0x155)]()[_0x46fbf8(0x16a)](0x0,0xa),_0x117ae3=new Date()[_0x46fbf8(0x155)]()[_0x46fbf8(0x16a)](0x0,0x7);return Object[_0x46fbf8(0x14b)](_0x12e2f0)['filter'](([,_0x561f64])=>_0x561f64&&typeof _0x561f64===_0x46fbf8(0x167))[_0x46fbf8(0x172)](([_0x3ede97,_0x4c7d0e])=>({'source':_0x3ede97,'credits':_0x4c7d0e[_0x46fbf8(0x17c)]||0x0,'todayCredits':_0x4c7d0e[_0x46fbf8(0x16f)]===_0x2240ff?_0x4c7d0e[_0x46fbf8(0x14d)]||0x0:0x0,'monthCredits':_0x4c7d0e['month']===_0x117ae3?_0x4c7d0e[_0x46fbf8(0x15e)]||0x0:0x0,'entryCount':_0x4c7d0e[_0x46fbf8(0x14e)]||0x0}))[_0x46fbf8(0x161)]((_0x222597,_0x3fcb75)=>_0x3fcb75[_0x46fbf8(0x16e)]-_0x222597[_0x46fbf8(0x16e)]);}export async function getUsageSummary(){const _0x146b23=a77_0xa1e2,_0x19e003=await getOrUpdateCache(),_0x46134b=_0x19e003[_0x146b23(0x171)]||{},_0x2596af=new Date()['toISOString']()['slice'](0x0,0xa),_0x115c71=new Date()[_0x146b23(0x155)]()['slice'](0x0,0x7),_0x289504=Object[_0x146b23(0x17b)](_0x46134b)[_0x146b23(0x174)](_0x50889e=>_0x50889e&&typeof _0x50889e===_0x146b23(0x167)),_0x278dc5=_0x289504[_0x146b23(0x154)]((_0x551fe5,_0xb1383c)=>_0x551fe5+(_0xb1383c[_0x146b23(0x17c)]||0x0),0x0);return{'todayCredits':_0x19e003['daily'][_0x2596af]?_0x19e003[_0x146b23(0x186)][_0x2596af][_0x146b23(0x17c)]||0x0:0x0,'monthCredits':_0x19e003[_0x146b23(0x159)][_0x115c71]?_0x19e003['monthly'][_0x115c71][_0x146b23(0x17c)]||0x0:0x0,'totalCredits':_0x278dc5,'profileCount':_0x289504[_0x146b23(0x168)]};}
@@ -1 +1 @@
1
- const a78_0x27b48b=a78_0x1cd6;(function(_0x346961,_0x403bfe){const _0x429abe=a78_0x1cd6,_0x19d1e4=_0x346961();while(!![]){try{const _0x2984e7=parseInt(_0x429abe(0x139))/0x1+parseInt(_0x429abe(0x12e))/0x2+-parseInt(_0x429abe(0x197))/0x3+-parseInt(_0x429abe(0x194))/0x4+-parseInt(_0x429abe(0x1ba))/0x5*(-parseInt(_0x429abe(0x14c))/0x6)+-parseInt(_0x429abe(0x169))/0x7+parseInt(_0x429abe(0x137))/0x8;if(_0x2984e7===_0x403bfe)break;else _0x19d1e4['push'](_0x19d1e4['shift']());}catch(_0x1a06ef){_0x19d1e4['push'](_0x19d1e4['shift']());}}}(a78_0x472e,0xd6111));function a78_0x472e(){const _0x25098e=['has','stream','|\x20Debug\x20agent\x20issues\x20|\x20tdx-skills:agent-debug\x20|\x0a','buildForwardHeaders','text/event-stream','Stream\x20interrupted','timeout',',\x20stream=','Unknown\x20error','SKIP_HEADERS','tdx-claude','[PASSTHROUGH]\x20Failed\x20to\x20log\x20usage:','text','error','decode','handleStreamingResponse','raw','haiku','access_token','code','usage','parse','apiKey','header','expiresAt','5095wmRJOJ','transfer-encoding','type','[PASSTHROUGH]\x20OAuth\x20token\x20refresh\x20failed:','entries','[PASSTHROUGH]\x20OAuth\x20token\x20refreshed\x20successfully','getReader','unref','toLowerCase','timeoutMs','metadata','[PASSTHROUGH]\x20Upstream\x20error:\x20','flush','addContentTypeParser','auth','user_id','outputTokens','refreshTokenIfNeeded','Error\x20body:\x20','x-api-key','1179990jJJBHQ','status','oauth','[PASSTHROUGH]\x20','includes','No\x20available\x20port\x20found\x20between\x20','port','127.0.0.1','Authorization','11416432kkUrar','read','1493186kLtHIo','server','authorization','logger','default','/v1/messages','setupRoutes','TD\x20LLM\x20Pass-through\x20Proxy\x20Server','debug','[PASSTHROUGH]\x20Usage:\x20input=','writeHead','EADDRINUSE','Server\x20has\x20not\x20been\x20started\x20yet','config','http://127.0.0.1:','cache_creation_input_tokens','startsWith','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20count_tokens\x20request:','Port\x20','318tYUNnI','Bearer\x20',',\x20output=','model','close',',\x20model=','register','input_tokens','write','Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20','content-length','application/json','/health','host','|\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|','info','refresh_token','get','length','post','listen','Forwarding\x20to:\x20','Content-Type','unknown','llmProxyUrl','handleMessages','profile','user-agent','anthropic-version','6465067oBaxZp','startPort','\x20and\x20','start','TimeoutError','send','Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20','tdx/','startTokenRefreshTimer','tdx','stop','statusText','User-Agent','string','output_tokens','body',':\x20messages=','headers','getUsage','logUsage','api_error','accessToken','inputTokens','toISOString','refreshToken','end','TD1\x20','/v1/messages/count_tokens','isArray','handleCountTokens','expires_at','message','POST','GET','setupJsonParser','timeout_error',',\x20cache_create=','refreshTimer','stringify','setupMiddleware','system','_boundPort','processChunk','4696100yHuASa','name','Pass-through\x20proxy\x20server\x20stopped','1769457pxgZOv','url','maxPortAttempts','cacheReadInputTokens','cache_read_input_tokens',',\x20cache_read=','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20request:','keep-alive','OPTIONS','setErrorHandler'];a78_0x472e=function(){return _0x25098e;};return a78_0x472e();}import a78_0x4f1151 from'fastify';import a78_0x36f740 from'@fastify/cors';import{SSEUsageTracker}from'./sse-usage-parser.js';import{appendUsageEntry}from'./claude-usage-tracker.js';import{getVersion}from'../core/version.js';import{isExperimentalAvailable}from'../core/config.js';import{refreshAccessToken}from'../sdk/client/oauth-refresh.js';import{saveOAuthTokens}from'../core/oauth-keychain.js';const DEFAULT_TIMEOUT_MS=0x5*0x3c*0x3e8,TDX_SYSTEM_PROMPT='You\x20are\x20`tdx\x20claude`,\x20an\x20extension\x20of\x20Claude\x20Code\x20with\x20tdx\x20CLI\x20tools\x20(https://tdx.treasuredata.com/)\x20and\x20skills\x20for\x20Treasure\x20Data\x20and\x20CDP.\x0a\x0aFor\x20Treasure\x20Data\x20tasks,\x20use\x20these\x20skills:\x0a\x0a|\x20Task\x20|\x20Skill\x20|\x0a|------|-------|\x0a|\x20tdx\x20CLI\x20operations\x20(databases,\x20tables,\x20queries)\x20|\x20tdx-skills:tdx-basic\x20|\x0a|\x20CDP\x20parent\x20segments\x20(YAML\x20config)\x20|\x20tdx-skills:parent-segment\x20|\x0a|\x20CDP\x20child\x20segments\x20(rules,\x20activations)\x20|\x20tdx-skills:segment\x20|\x0a|\x20Validate\x20segment\x20YAML\x20|\x20tdx-skills:validate-segment\x20|\x0a|\x20CDP\x20journeys\x20(stages,\x20steps)\x20|\x20tdx-skills:journey\x20|\x0a|\x20Validate\x20journey\x20YAML\x20|\x20tdx-skills:validate-journey\x20|\x0a|\x20Configure\x20activations\x20|\x20tdx-skills:connector-config\x20|\x0a|\x20Build\x20LLM\x20agents\x20|\x20tdx-skills:agent\x20|\x0a'+(isExperimentalAvailable()?a78_0x27b48b(0x1a3):'')+a78_0x27b48b(0x15a);function extractSessionUUID(_0x205800){const _0x454f5a=_0x205800['match'](/_session_([a-f0-9-]+)$/i);if(_0x454f5a)return _0x454f5a[0x1];return _0x205800;}export function injectSystemPrompt(_0x30d747,_0x37e431){const _0x4733ce=a78_0x27b48b,_0x5a018d=_0x30d747[_0x4733ce(0x191)];if(!_0x5a018d)return{..._0x30d747,'system':_0x37e431};if(typeof _0x5a018d===_0x4733ce(0x176))return{..._0x30d747,'system':_0x5a018d+'\x0a\x0a'+_0x37e431};if(Array['isArray'](_0x5a018d)){const _0x2f81c4={'type':'text','text':_0x37e431};return{..._0x30d747,'system':[..._0x5a018d,_0x2f81c4]};}return _0x30d747;}export function shouldInjectSystemPrompt(_0x317b03){const _0x25c1d4=a78_0x27b48b;return!_0x317b03[_0x25c1d4(0x1c2)]()[_0x25c1d4(0x132)](_0x25c1d4(0x1b2));}function a78_0x1cd6(_0x1a5306,_0x5dc661){_0x1a5306=_0x1a5306-0x129;const _0x472e8b=a78_0x472e();let _0x1cd683=_0x472e8b[_0x1a5306];return _0x1cd683;}const TOKEN_REFRESH_INTERVAL_MS=0x5*0x3c*0x3e8,TOKEN_EXPIRY_BUFFER_MS=0x5*0x3c*0x3e8;export class PassThroughProxyServer{[a78_0x27b48b(0x13a)];[a78_0x27b48b(0x146)];[a78_0x27b48b(0x13c)];[a78_0x27b48b(0x192)];[a78_0x27b48b(0x18e)];constructor(_0x4c4a27){const _0x441246=a78_0x27b48b;this[_0x441246(0x146)]=_0x4c4a27,this[_0x441246(0x13c)]=_0x4c4a27[_0x441246(0x13c)],this[_0x441246(0x13a)]=this['createServer']();}get[a78_0x27b48b(0x134)](){const _0x42b1a2=a78_0x27b48b;if(this[_0x42b1a2(0x192)]===undefined)throw new Error(_0x42b1a2(0x145));return this[_0x42b1a2(0x192)];}['createServer'](){const _0x3c61cb=a78_0x27b48b,_0x45dab1=a78_0x4f1151({'logger':![],'bodyLimit':0x40*0x400*0x400});return this[_0x3c61cb(0x13a)]=_0x45dab1,this[_0x3c61cb(0x18b)](),this[_0x3c61cb(0x190)](),this[_0x3c61cb(0x13f)](),_0x45dab1;}['setupJsonParser'](){const _0x3a1fdb=a78_0x27b48b;this[_0x3a1fdb(0x13a)][_0x3a1fdb(0x1c7)]('application/json',{'parseAs':_0x3a1fdb(0x176)},(_0x3c37c0,_0x342bb7,_0x59e707)=>{try{const _0x311ecd=JSON['parse'](_0x342bb7);_0x59e707(null,_0x311ecd);}catch(_0x19e9ad){_0x59e707(_0x19e9ad,undefined);}});}[a78_0x27b48b(0x190)](){const _0x1a24d2=a78_0x27b48b;this[_0x1a24d2(0x13a)][_0x1a24d2(0x152)](a78_0x36f740,{'origin':!![],'methods':[_0x1a24d2(0x18a),'POST',_0x1a24d2(0x19f)],'allowedHeaders':[_0x1a24d2(0x162),_0x1a24d2(0x136),_0x1a24d2(0x168),_0x1a24d2(0x12d)]}),this[_0x1a24d2(0x13a)][_0x1a24d2(0x1a0)]((_0x54c23e,_0x3a1127,_0x42f313)=>{const _0x10ed3b=_0x1a24d2,_0x52f758=_0x54c23e instanceof Error?_0x54c23e[_0x10ed3b(0x188)]:_0x10ed3b(0x1a9);this[_0x10ed3b(0x13c)][_0x10ed3b(0x1ae)]('[PASSTHROUGH\x20PROXY\x20ERROR]:',_0x54c23e),_0x42f313[_0x10ed3b(0x1b4)](0x1f4)[_0x10ed3b(0x16e)]({'type':_0x10ed3b(0x1ae),'error':{'type':_0x10ed3b(0x17d),'message':_0x52f758}});});}[a78_0x27b48b(0x13f)](){const _0x5f0e1d=a78_0x27b48b;this[_0x5f0e1d(0x13a)]['get'](_0x5f0e1d(0x158),async()=>{const _0x1f667a=_0x5f0e1d;return{'status':'ok','message':_0x1f667a(0x140)};}),this[_0x5f0e1d(0x13a)]['post'](_0x5f0e1d(0x13e),async(_0x968c94,_0x29e05e)=>{const _0x3d3291=_0x5f0e1d;return this[_0x3d3291(0x165)](_0x968c94,_0x29e05e);}),this[_0x5f0e1d(0x13a)][_0x5f0e1d(0x15f)](_0x5f0e1d(0x184),async(_0x6266aa,_0x53ad0d)=>{const _0x2a6192=_0x5f0e1d;return this[_0x2a6192(0x186)](_0x6266aa,_0x53ad0d);});}static ['SKIP_HEADERS']=new Set([a78_0x27b48b(0x159),'connection',a78_0x27b48b(0x156),a78_0x27b48b(0x1bb),a78_0x27b48b(0x13b),a78_0x27b48b(0x12d),a78_0x27b48b(0x167)]);['buildForwardHeaders'](_0x35c9ba){const _0x59f846=a78_0x27b48b,_0x805625={};for(const [_0xeb5636,_0x3bca4b]of Object[_0x59f846(0x1be)](_0x35c9ba['headers'])){const _0x27d97d=_0xeb5636[_0x59f846(0x1c2)]();if(PassThroughProxyServer[_0x59f846(0x1aa)][_0x59f846(0x1a1)](_0x27d97d))continue;if(_0x27d97d[_0x59f846(0x149)]('x-td-'))continue;if(typeof _0x3bca4b===_0x59f846(0x176))_0x805625[_0xeb5636]=_0x3bca4b;else Array[_0x59f846(0x185)](_0x3bca4b)&&(_0x805625[_0xeb5636]=_0x3bca4b['join'](',\x20'));}const _0x1b0d41=getVersion(),{auth:_0x4fba6f}=this[_0x59f846(0x146)];return _0x805625[_0x59f846(0x136)]=_0x4fba6f[_0x59f846(0x1bc)]===_0x59f846(0x130)?_0x59f846(0x14d)+_0x4fba6f[_0x59f846(0x17e)]:_0x59f846(0x183)+_0x4fba6f[_0x59f846(0x1b7)],_0x805625[_0x59f846(0x175)]=_0x59f846(0x170)+_0x1b0d41,_0x805625['X-TD-Client']=_0x59f846(0x172),_0x805625['X-TD-Client-Version']=_0x1b0d41,_0x805625;}async[a78_0x27b48b(0x165)](_0xe92ce9,_0x149bc7){const _0x11c9f7=a78_0x27b48b,_0x576c58=_0xe92ce9[_0x11c9f7(0x178)],_0x17c529=_0x576c58[_0x11c9f7(0x1a2)]!==![],_0x56659e=_0x576c58[_0x11c9f7(0x1c4)],_0x493f58=_0x56659e?.[_0x11c9f7(0x129)]||_0x11c9f7(0x13d),_0x5ea861=extractSessionUUID(_0x493f58),_0x30b0d1=_0x576c58[_0x11c9f7(0x14f)]||_0x11c9f7(0x163),_0x55bd1c=shouldInjectSystemPrompt(_0x30b0d1)?injectSystemPrompt(_0x576c58,TDX_SYSTEM_PROMPT):_0x576c58,_0x47d042=JSON[_0x11c9f7(0x18f)](_0x55bd1c),_0x2f4d4c=Array['isArray'](_0x576c58['messages'])?_0x576c58['messages'][_0x11c9f7(0x15e)]:0x0;this['logger'][_0x11c9f7(0x15b)](_0x11c9f7(0x131)+_0xe92ce9['method']+'\x20'+_0xe92ce9[_0x11c9f7(0x198)]+_0x11c9f7(0x179)+_0x2f4d4c+_0x11c9f7(0x151)+_0x30b0d1+_0x11c9f7(0x1a8)+_0x17c529);const _0x22fc07=_0xe92ce9[_0x11c9f7(0x198)]['includes']('?')?_0xe92ce9[_0x11c9f7(0x198)]['slice'](_0xe92ce9[_0x11c9f7(0x198)]['indexOf']('?')):'',_0x20cdd7=this[_0x11c9f7(0x146)][_0x11c9f7(0x164)]+'/v1/messages'+_0x22fc07,_0x4fc7da=this[_0x11c9f7(0x1a4)](_0xe92ce9);this[_0x11c9f7(0x13c)]['debug'](_0x11c9f7(0x161)+_0x20cdd7);const _0x156744=this[_0x11c9f7(0x146)][_0x11c9f7(0x1c3)]||DEFAULT_TIMEOUT_MS;try{const _0x29b788=await fetch(_0x20cdd7,{'method':_0x11c9f7(0x189),'headers':_0x4fc7da,'body':_0x47d042,'signal':AbortSignal[_0x11c9f7(0x1a7)](_0x156744)});if(!_0x29b788['ok']){const _0x2e6fc2=await _0x29b788['text']();return this['logger'][_0x11c9f7(0x1ae)](_0x11c9f7(0x1c5)+_0x29b788[_0x11c9f7(0x12f)]+'\x20'+_0x29b788[_0x11c9f7(0x174)]),this[_0x11c9f7(0x13c)][_0x11c9f7(0x141)](_0x11c9f7(0x12c)+_0x2e6fc2),_0x149bc7[_0x11c9f7(0x1b4)](_0x29b788[_0x11c9f7(0x12f)]),_0x149bc7[_0x11c9f7(0x1b8)](_0x11c9f7(0x162),_0x29b788['headers'][_0x11c9f7(0x15d)]('Content-Type')||_0x11c9f7(0x157)),_0x149bc7[_0x11c9f7(0x16e)](_0x2e6fc2);}if(_0x17c529&&_0x29b788[_0x11c9f7(0x178)])await this[_0x11c9f7(0x1b0)](_0x29b788['body'],_0x149bc7,_0x5ea861,_0x30b0d1);else{const _0x201185=await _0x29b788[_0x11c9f7(0x1ad)]();_0x149bc7[_0x11c9f7(0x1b8)](_0x11c9f7(0x162),_0x29b788[_0x11c9f7(0x17a)][_0x11c9f7(0x15d)](_0x11c9f7(0x162))||_0x11c9f7(0x157));try{const _0x9cdd89=JSON[_0x11c9f7(0x1b6)](_0x201185);_0x9cdd89[_0x11c9f7(0x1b5)]&&await this['logUsage'](_0x5ea861,_0x30b0d1,_0x9cdd89[_0x11c9f7(0x1b5)][_0x11c9f7(0x153)]||0x0,_0x9cdd89[_0x11c9f7(0x1b5)][_0x11c9f7(0x177)]||0x0,_0x9cdd89[_0x11c9f7(0x1b5)][_0x11c9f7(0x148)],_0x9cdd89[_0x11c9f7(0x1b5)][_0x11c9f7(0x19b)]);}catch{}return _0x149bc7[_0x11c9f7(0x16e)](_0x201185);}}catch(_0x222fe4){const _0x1261e=_0x222fe4 instanceof Error?_0x222fe4[_0x11c9f7(0x188)]:_0x11c9f7(0x1a9),_0x59c8a4=_0x222fe4 instanceof Error&&_0x222fe4[_0x11c9f7(0x195)]===_0x11c9f7(0x16d);this[_0x11c9f7(0x13c)][_0x11c9f7(0x1ae)](_0x11c9f7(0x19d),_0x222fe4),_0x149bc7[_0x11c9f7(0x1b4)](_0x59c8a4?0x1f8:0x1f7)[_0x11c9f7(0x16e)]({'type':_0x11c9f7(0x1ae),'error':{'type':_0x59c8a4?_0x11c9f7(0x18c):'api_error','message':_0x59c8a4?_0x11c9f7(0x155)+_0x156744+'ms':_0x11c9f7(0x16f)+_0x1261e}});}}async[a78_0x27b48b(0x1b0)](_0x14409f,_0x470502,_0x4d4ec1,_0x5f5140){const _0xd1f26b=a78_0x27b48b;_0x470502['raw'][_0xd1f26b(0x143)](0xc8,{'Content-Type':_0xd1f26b(0x1a5),'Cache-Control':'no-cache','Connection':_0xd1f26b(0x19e)});const _0x120a3e=new SSEUsageTracker(),_0x59fbcc=_0x14409f[_0xd1f26b(0x1c0)](),_0x26fe64=new TextDecoder();try{while(!![]){const {done:_0x1bfd59,value:_0x5d232e}=await _0x59fbcc[_0xd1f26b(0x138)]();if(_0x1bfd59)break;const _0x2e30c9=_0x26fe64[_0xd1f26b(0x1af)](_0x5d232e,{'stream':!![]});_0x120a3e[_0xd1f26b(0x193)](_0x2e30c9),_0x470502[_0xd1f26b(0x1b1)][_0xd1f26b(0x154)](_0x2e30c9);}_0x120a3e[_0xd1f26b(0x1c6)]();const _0x5d9216=_0x120a3e[_0xd1f26b(0x17b)]();(_0x5d9216[_0xd1f26b(0x17f)]>0x0||_0x5d9216[_0xd1f26b(0x12a)]>0x0)&&await this['logUsage'](_0x4d4ec1,_0x5f5140,_0x5d9216[_0xd1f26b(0x17f)],_0x5d9216['outputTokens'],_0x5d9216['cacheCreationInputTokens'],_0x5d9216[_0xd1f26b(0x19a)]);}catch(_0x1f8ebb){this[_0xd1f26b(0x13c)][_0xd1f26b(0x1ae)]('[PASSTHROUGH]\x20Stream\x20error:',_0x1f8ebb);const _0x20cc47='event:\x20error\x0adata:\x20'+JSON[_0xd1f26b(0x18f)]({'type':'error','error':{'type':'stream_error','message':_0xd1f26b(0x1a6)}})+'\x0a\x0a';_0x470502['raw'][_0xd1f26b(0x154)](_0x20cc47);}finally{_0x470502[_0xd1f26b(0x1b1)][_0xd1f26b(0x182)]();}}async['handleCountTokens'](_0x1d3b85,_0x25a9b6){const _0x35c4b7=a78_0x27b48b,_0x3c495d=_0x1d3b85[_0x35c4b7(0x178)],_0x52de66=_0x1d3b85['url']['includes']('?')?_0x1d3b85['url']['slice'](_0x1d3b85['url']['indexOf']('?')):'',_0x54437f=this[_0x35c4b7(0x146)][_0x35c4b7(0x164)]+_0x35c4b7(0x184)+_0x52de66,_0x36df02=this[_0x35c4b7(0x1a4)](_0x1d3b85),_0x93d6c9=_0x3c495d[_0x35c4b7(0x14f)]||_0x35c4b7(0x163),_0x3860d0=shouldInjectSystemPrompt(_0x93d6c9)?injectSystemPrompt(_0x3c495d,TDX_SYSTEM_PROMPT):_0x3c495d,_0x39f9ad=JSON['stringify'](_0x3860d0);this['logger']['debug']('[PASSTHROUGH]\x20Forwarding\x20count_tokens\x20to:\x20'+_0x54437f);const _0x226f1b=this['config'][_0x35c4b7(0x1c3)]||DEFAULT_TIMEOUT_MS;try{const _0x34d9f9=await fetch(_0x54437f,{'method':_0x35c4b7(0x189),'headers':_0x36df02,'body':_0x39f9ad,'signal':AbortSignal[_0x35c4b7(0x1a7)](_0x226f1b)}),_0x5e5f73=await _0x34d9f9[_0x35c4b7(0x1ad)]();return _0x25a9b6[_0x35c4b7(0x1b4)](_0x34d9f9[_0x35c4b7(0x12f)]),_0x25a9b6[_0x35c4b7(0x1b8)](_0x35c4b7(0x162),_0x34d9f9[_0x35c4b7(0x17a)][_0x35c4b7(0x15d)]('Content-Type')||_0x35c4b7(0x157)),_0x25a9b6[_0x35c4b7(0x16e)](_0x5e5f73);}catch(_0x2493ae){const _0x2a5d96=_0x2493ae instanceof Error?_0x2493ae['message']:'Unknown\x20error',_0x40831c=_0x2493ae instanceof Error&&_0x2493ae[_0x35c4b7(0x195)]==='TimeoutError';this[_0x35c4b7(0x13c)][_0x35c4b7(0x1ae)](_0x35c4b7(0x14a),_0x2493ae),_0x25a9b6['code'](_0x40831c?0x1f8:0x1f7)[_0x35c4b7(0x16e)]({'type':_0x35c4b7(0x1ae),'error':{'type':_0x40831c?_0x35c4b7(0x18c):_0x35c4b7(0x17d),'message':_0x40831c?_0x35c4b7(0x155)+_0x226f1b+'ms':_0x35c4b7(0x16f)+_0x2a5d96}});}}async[a78_0x27b48b(0x17c)](_0x3ceb11,_0x5de339,_0x514a54,_0x25f470,_0x11ae47,_0x2999e){const _0x2b3b7e=a78_0x27b48b,_0x10e595={'timestamp':new Date()[_0x2b3b7e(0x180)](),'model':_0x5de339,'inputTokens':_0x514a54,'outputTokens':_0x25f470,'cacheCreationInputTokens':_0x11ae47,'cacheReadInputTokens':_0x2999e,'profile':this[_0x2b3b7e(0x146)][_0x2b3b7e(0x166)],'source':_0x2b3b7e(0x1ab)},_0x5b6064=_0x11ae47||_0x2999e?_0x2b3b7e(0x18d)+(_0x11ae47||0x0)+_0x2b3b7e(0x19c)+(_0x2999e||0x0):'';this[_0x2b3b7e(0x13c)][_0x2b3b7e(0x141)](_0x2b3b7e(0x142)+_0x514a54+_0x2b3b7e(0x14e)+_0x25f470+_0x5b6064+',\x20model='+_0x5de339);try{await appendUsageEntry(_0x3ceb11,_0x10e595);}catch(_0x196c81){this['logger'][_0x2b3b7e(0x1ae)](_0x2b3b7e(0x1ac),_0x196c81);}}[a78_0x27b48b(0x171)](){const _0xa62345=a78_0x27b48b;if(this[_0xa62345(0x146)][_0xa62345(0x1c8)][_0xa62345(0x1bc)]!=='oauth')return;this[_0xa62345(0x18e)]=setInterval(()=>{const _0x46bcdd=_0xa62345;void this[_0x46bcdd(0x12b)]();},TOKEN_REFRESH_INTERVAL_MS),this[_0xa62345(0x18e)][_0xa62345(0x1c1)]();}async[a78_0x27b48b(0x12b)](){const _0x55d55b=a78_0x27b48b,{auth:_0x21e919}=this[_0x55d55b(0x146)];if(_0x21e919[_0x55d55b(0x1bc)]!==_0x55d55b(0x130))return;const _0x18bd0e=!_0x21e919['expiresAt']||_0x21e919[_0x55d55b(0x1b9)]<Date['now']()+TOKEN_EXPIRY_BUFFER_MS;if(!_0x18bd0e)return;try{const _0x35bc48=await refreshAccessToken(_0x21e919['consoleUrl'],_0x21e919['refreshToken']);_0x21e919[_0x55d55b(0x17e)]=_0x35bc48[_0x55d55b(0x1b3)],_0x21e919[_0x55d55b(0x181)]=_0x35bc48[_0x55d55b(0x15c)],_0x21e919[_0x55d55b(0x1b9)]=_0x35bc48[_0x55d55b(0x187)],await saveOAuthTokens(_0x35bc48,this[_0x55d55b(0x146)]['profile']),this[_0x55d55b(0x13c)]['info'](_0x55d55b(0x1bf));}catch(_0x323bf8){this['logger'][_0x55d55b(0x1ae)](_0x55d55b(0x1bd),_0x323bf8);}}async[a78_0x27b48b(0x16c)](){const _0x4a3374=a78_0x27b48b,_0x946c3c=this['config'][_0x4a3374(0x199)]??0x64;for(let _0x29a544=0x0;_0x29a544<_0x946c3c;_0x29a544++){const _0x5c7d8f=this['config'][_0x4a3374(0x16a)]+_0x29a544;try{await this[_0x4a3374(0x13a)][_0x4a3374(0x160)]({'port':_0x5c7d8f,'host':_0x4a3374(0x135)}),this[_0x4a3374(0x192)]=_0x5c7d8f,this['logger']['info']('Pass-through\x20proxy\x20server\x20started\x20on\x20port\x20'+_0x5c7d8f),this[_0x4a3374(0x13c)][_0x4a3374(0x15b)](_0x4a3374(0x161)+this[_0x4a3374(0x146)][_0x4a3374(0x164)]),this['startTokenRefreshTimer']();return;}catch(_0x1c73b2){const _0x3546af=_0x1c73b2 instanceof Error&&_0x4a3374(0x1b4)in _0x1c73b2&&_0x1c73b2[_0x4a3374(0x1b4)]===_0x4a3374(0x144);if(!_0x3546af)throw _0x1c73b2;this[_0x4a3374(0x13c)][_0x4a3374(0x141)](_0x4a3374(0x14b)+_0x5c7d8f+'\x20in\x20use,\x20trying\x20next...'),this['createServer']();}}const _0x4a250a=this[_0x4a3374(0x146)][_0x4a3374(0x16a)]+_0x946c3c-0x1;throw new Error(_0x4a3374(0x133)+this[_0x4a3374(0x146)][_0x4a3374(0x16a)]+_0x4a3374(0x16b)+_0x4a250a);}async[a78_0x27b48b(0x173)](){const _0x3ec4e3=a78_0x27b48b;this['refreshTimer']&&(clearInterval(this[_0x3ec4e3(0x18e)]),this[_0x3ec4e3(0x18e)]=undefined),await this[_0x3ec4e3(0x13a)][_0x3ec4e3(0x150)](),this[_0x3ec4e3(0x13c)][_0x3ec4e3(0x15b)](_0x3ec4e3(0x196));}['getAddress'](){const _0x542e3e=a78_0x27b48b;return _0x542e3e(0x147)+this[_0x542e3e(0x134)];}}
1
+ const a78_0xa6bebb=a78_0x2083;(function(_0x30a404,_0x1329dc){const _0x3956d6=a78_0x2083,_0x3c8189=_0x30a404();while(!![]){try{const _0x5db17b=-parseInt(_0x3956d6(0x16b))/0x1+-parseInt(_0x3956d6(0x19a))/0x2*(-parseInt(_0x3956d6(0x1a2))/0x3)+parseInt(_0x3956d6(0x1e4))/0x4*(-parseInt(_0x3956d6(0x1a0))/0x5)+parseInt(_0x3956d6(0x1e1))/0x6+-parseInt(_0x3956d6(0x205))/0x7+-parseInt(_0x3956d6(0x171))/0x8*(-parseInt(_0x3956d6(0x1be))/0x9)+-parseInt(_0x3956d6(0x189))/0xa;if(_0x5db17b===_0x1329dc)break;else _0x3c8189['push'](_0x3c8189['shift']());}catch(_0x27e03e){_0x3c8189['push'](_0x3c8189['shift']());}}}(a78_0x4c94,0xd712d));import a78_0x40e889 from'fastify';import a78_0x4c0431 from'@fastify/cors';import{SSEUsageTracker}from'./sse-usage-parser.js';import{appendUsageEntry}from'./claude-usage-tracker.js';import{getVersion}from'../core/version.js';function a78_0x4c94(){const _0x42c10e=['X-TD-Client-Version','TD1\x20','GET','usage','setupMiddleware','Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20','expiresAt',':\x20messages=','buildForwardHeaders','length','setupJsonParser','Port\x20','slice','tdx/','logUsage','post','Error\x20body:\x20','consoleUrl','cacheReadInputTokens','raw','\x20and\x20','10849200aqqawH','SKIP_HEADERS','authorization','host','debug','x-api-key','write','stream_error','messages','Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20','timeout','url','stream','info',',\x20model=','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20count_tokens\x20request:','logger','293538MEiItP','input_tokens','Authorization','method','read','port','30AHGdSG','entries','33vdhUju','\x20in\x20use,\x20trying\x20next...','status','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20request:','EADDRINUSE','timeoutMs','name','refreshTokenIfNeeded','TimeoutError',',\x20cache_create=','handleMessages','refresh_token','parse','tdx',',\x20stream=','x-td-','Server\x20has\x20not\x20been\x20started\x20yet','getAddress','addContentTypeParser','TD\x20LLM\x20Pass-through\x20Proxy\x20Server','get','setErrorHandler','POST','transfer-encoding','unknown','refreshToken','writeHead','/v1/messages','9YgzFbf','send','anthropic-version','headers','body','[PASSTHROUGH]\x20Upstream\x20error:\x20','getReader','tdx-claude','Forwarding\x20to:\x20','startsWith','apiKey','cache_read_input_tokens','[PASSTHROUGH]\x20OAuth\x20token\x20refreshed\x20successfully',',\x20output=','setupRoutes','|\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|','model','maxPortAttempts','/v1/messages/count_tokens','text','cacheCreationInputTokens','indexOf','startTokenRefreshTimer','accessToken','user-agent','127.0.0.1','No\x20available\x20port\x20found\x20between\x20','output_tokens','type','message','string','timeout_error','isArray','listen','getUsage','344370cpUtsT','/health','oauth','570220Uvnhft','content-length','[PASSTHROUGH]\x20Forwarding\x20count_tokens\x20to:\x20','default','inputTokens','error','outputTokens','api_error','keep-alive','refreshTimer',',\x20cache_read=','createServer','Unknown\x20error','handleCountTokens','http://127.0.0.1:','[PASSTHROUGH]\x20Usage:\x20input=','unref','processChunk','system','stringify','application/json','toLowerCase','statusText','profile','includes','_boundPort','server','end','expires_at','startPort','[PASSTHROUGH]\x20OAuth\x20token\x20refresh\x20failed:','|\x20Debug\x20agent\x20issues\x20|\x20tdx-skills:agent-debug\x20|\x0a','header','1084160aMdMFZ','Content-Type','start','267088MwYVxS','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','code','Bearer\x20','config','event:\x20error\x0adata:\x20','12570440ddEDLd','join','llmProxyUrl'];a78_0x4c94=function(){return _0x42c10e;};return a78_0x4c94();}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_0xa6bebb(0x16c)+(isExperimentalAvailable()?a78_0xa6bebb(0x203):'')+a78_0xa6bebb(0x1cd);function extractSessionUUID(_0x469766){const _0x5769ac=_0x469766['match'](/_session_([a-f0-9-]+)$/i);if(_0x5769ac)return _0x5769ac[0x1];return _0x469766;}export function injectSystemPrompt(_0xf43b21,_0x3d47be){const _0x202c5a=a78_0xa6bebb,_0x294845=_0xf43b21[_0x202c5a(0x1f6)];if(!_0x294845)return{..._0xf43b21,'system':_0x3d47be};if(typeof _0x294845===_0x202c5a(0x1dc))return{..._0xf43b21,'system':_0x294845+'\x0a\x0a'+_0x3d47be};if(Array[_0x202c5a(0x1de)](_0x294845)){const _0x9a736d={'type':'text','text':_0x3d47be};return{..._0xf43b21,'system':[..._0x294845,_0x9a736d]};}return _0xf43b21;}function a78_0x2083(_0xde9807,_0x247d73){_0xde9807=_0xde9807-0x169;const _0x4c945f=a78_0x4c94();let _0x20839b=_0x4c945f[_0xde9807];return _0x20839b;}export function shouldInjectSystemPrompt(_0x4d6776){const _0x368bd1=a78_0xa6bebb;return!_0x4d6776[_0x368bd1(0x1f9)]()['includes']('haiku');}const TOKEN_REFRESH_INTERVAL_MS=0x5*0x3c*0x3e8,TOKEN_EXPIRY_BUFFER_MS=0x5*0x3c*0x3e8;export class PassThroughProxyServer{[a78_0xa6bebb(0x1fe)];[a78_0xa6bebb(0x16f)];[a78_0xa6bebb(0x199)];['_boundPort'];['refreshTimer'];constructor(_0x9c7479){const _0x82e5a8=a78_0xa6bebb;this[_0x82e5a8(0x16f)]=_0x9c7479,this[_0x82e5a8(0x199)]=_0x9c7479[_0x82e5a8(0x199)],this[_0x82e5a8(0x1fe)]=this[_0x82e5a8(0x1ef)]();}get['port'](){const _0x480072=a78_0xa6bebb;if(this['_boundPort']===undefined)throw new Error(_0x480072(0x1b2));return this[_0x480072(0x1fd)];}[a78_0xa6bebb(0x1ef)](){const _0x826161=a78_0xa6bebb,_0x59d3d1=a78_0x40e889({'logger':![],'bodyLimit':0x40*0x400*0x400});return this[_0x826161(0x1fe)]=_0x59d3d1,this[_0x826161(0x17e)](),this['setupMiddleware'](),this[_0x826161(0x1cc)](),_0x59d3d1;}[a78_0xa6bebb(0x17e)](){const _0x10d6d6=a78_0xa6bebb;this['server'][_0x10d6d6(0x1b4)](_0x10d6d6(0x1f8),{'parseAs':_0x10d6d6(0x1dc)},(_0x4344df,_0x586992,_0x1dca9b)=>{const _0x5b1596=_0x10d6d6;try{const _0x456677=JSON[_0x5b1596(0x1ae)](_0x586992);_0x1dca9b(null,_0x456677);}catch(_0x4d90ab){_0x1dca9b(_0x4d90ab,undefined);}});}[a78_0xa6bebb(0x178)](){const _0x16e957=a78_0xa6bebb;this['server']['register'](a78_0x4c0431,{'origin':!![],'methods':[_0x16e957(0x176),_0x16e957(0x1b8),'OPTIONS'],'allowedHeaders':[_0x16e957(0x169),_0x16e957(0x19c),_0x16e957(0x1c0),'x-api-key']}),this[_0x16e957(0x1fe)][_0x16e957(0x1b7)]((_0x5acdb7,_0x4a2272,_0x54df11)=>{const _0x13b22b=_0x16e957,_0x177732=_0x5acdb7 instanceof Error?_0x5acdb7[_0x13b22b(0x1db)]:_0x13b22b(0x1f0);this[_0x13b22b(0x199)][_0x13b22b(0x1e9)]('[PASSTHROUGH\x20PROXY\x20ERROR]:',_0x5acdb7),_0x54df11[_0x13b22b(0x16d)](0x1f4)[_0x13b22b(0x1bf)]({'type':'error','error':{'type':_0x13b22b(0x1eb),'message':_0x177732}});});}[a78_0xa6bebb(0x1cc)](){const _0x51147d=a78_0xa6bebb;this[_0x51147d(0x1fe)]['get'](_0x51147d(0x1e2),async()=>{const _0x580d72=_0x51147d;return{'status':'ok','message':_0x580d72(0x1b5)};}),this['server'][_0x51147d(0x183)]('/v1/messages',async(_0x2318e9,_0x15242a)=>{const _0x3b1832=_0x51147d;return this[_0x3b1832(0x1ac)](_0x2318e9,_0x15242a);}),this[_0x51147d(0x1fe)][_0x51147d(0x183)]('/v1/messages/count_tokens',async(_0x2d9aa3,_0x2820f9)=>{const _0x3cf9fb=_0x51147d;return this[_0x3cf9fb(0x1f1)](_0x2d9aa3,_0x2820f9);});}static [a78_0xa6bebb(0x18a)]=new Set([a78_0xa6bebb(0x18c),'connection',a78_0xa6bebb(0x1e5),a78_0xa6bebb(0x1b9),a78_0xa6bebb(0x18b),a78_0xa6bebb(0x18e),a78_0xa6bebb(0x1d6)]);[a78_0xa6bebb(0x17c)](_0x2b9926){const _0x1d2434=a78_0xa6bebb,_0x380c81={};for(const [_0x3d2429,_0x229e96]of Object[_0x1d2434(0x1a1)](_0x2b9926[_0x1d2434(0x1c1)])){const _0x44baf1=_0x3d2429[_0x1d2434(0x1f9)]();if(PassThroughProxyServer[_0x1d2434(0x18a)]['has'](_0x44baf1))continue;if(_0x44baf1[_0x1d2434(0x1c7)](_0x1d2434(0x1b1)))continue;if(typeof _0x229e96===_0x1d2434(0x1dc))_0x380c81[_0x3d2429]=_0x229e96;else Array[_0x1d2434(0x1de)](_0x229e96)&&(_0x380c81[_0x3d2429]=_0x229e96[_0x1d2434(0x172)](',\x20'));}const _0x24b66a=getVersion(),{auth:_0x3127f4}=this[_0x1d2434(0x16f)];return _0x380c81[_0x1d2434(0x19c)]=_0x3127f4['type']===_0x1d2434(0x1e3)?_0x1d2434(0x16e)+_0x3127f4[_0x1d2434(0x1d5)]:_0x1d2434(0x175)+_0x3127f4[_0x1d2434(0x1c8)],_0x380c81['User-Agent']=_0x1d2434(0x181)+_0x24b66a,_0x380c81['X-TD-Client']=_0x1d2434(0x1af),_0x380c81[_0x1d2434(0x174)]=_0x24b66a,_0x380c81;}async[a78_0xa6bebb(0x1ac)](_0xd26b59,_0x555554){const _0x553041=a78_0xa6bebb,_0x369aa8=_0xd26b59[_0x553041(0x1c2)],_0x262658=_0x369aa8[_0x553041(0x195)]!==![],_0x464d98=_0x369aa8['metadata'],_0x2a97f7=_0x464d98?.['user_id']||_0x553041(0x1e7),_0x430865=extractSessionUUID(_0x2a97f7),_0x45ef10=_0x369aa8[_0x553041(0x1ce)]||_0x553041(0x1ba),_0x210a7a=shouldInjectSystemPrompt(_0x45ef10)?injectSystemPrompt(_0x369aa8,TDX_SYSTEM_PROMPT):_0x369aa8,_0xb16c7=JSON[_0x553041(0x1f7)](_0x210a7a),_0x4c71eb=Array[_0x553041(0x1de)](_0x369aa8[_0x553041(0x191)])?_0x369aa8[_0x553041(0x191)][_0x553041(0x17d)]:0x0;this[_0x553041(0x199)][_0x553041(0x196)]('[PASSTHROUGH]\x20'+_0xd26b59[_0x553041(0x19d)]+'\x20'+_0xd26b59['url']+_0x553041(0x17b)+_0x4c71eb+_0x553041(0x197)+_0x45ef10+_0x553041(0x1b0)+_0x262658);const _0x25017c=_0xd26b59['url'][_0x553041(0x1fc)]('?')?_0xd26b59[_0x553041(0x194)][_0x553041(0x180)](_0xd26b59[_0x553041(0x194)][_0x553041(0x1d3)]('?')):'',_0xdb0ea9=this[_0x553041(0x16f)]['llmProxyUrl']+_0x553041(0x1bd)+_0x25017c,_0x3ea8c7=this[_0x553041(0x17c)](_0xd26b59);this[_0x553041(0x199)][_0x553041(0x18d)](_0x553041(0x1c6)+_0xdb0ea9);const _0xe7730d=this['config'][_0x553041(0x1a7)]||DEFAULT_TIMEOUT_MS;try{const _0x153bc1=await fetch(_0xdb0ea9,{'method':'POST','headers':_0x3ea8c7,'body':_0xb16c7,'signal':AbortSignal[_0x553041(0x193)](_0xe7730d)});if(!_0x153bc1['ok']){const _0x3e82fd=await _0x153bc1[_0x553041(0x1d1)]();return this[_0x553041(0x199)][_0x553041(0x1e9)](_0x553041(0x1c3)+_0x153bc1[_0x553041(0x1a4)]+'\x20'+_0x153bc1[_0x553041(0x1fa)]),this[_0x553041(0x199)]['debug'](_0x553041(0x184)+_0x3e82fd),_0x555554[_0x553041(0x16d)](_0x153bc1[_0x553041(0x1a4)]),_0x555554[_0x553041(0x204)](_0x553041(0x169),_0x153bc1[_0x553041(0x1c1)]['get'](_0x553041(0x169))||_0x553041(0x1f8)),_0x555554['send'](_0x3e82fd);}if(_0x262658&&_0x153bc1['body'])await this['handleStreamingResponse'](_0x153bc1[_0x553041(0x1c2)],_0x555554,_0x430865,_0x45ef10);else{const _0x135b5b=await _0x153bc1['text']();_0x555554[_0x553041(0x204)]('Content-Type',_0x153bc1['headers']['get'](_0x553041(0x169))||_0x553041(0x1f8));try{const _0x585061=JSON[_0x553041(0x1ae)](_0x135b5b);_0x585061['usage']&&await this['logUsage'](_0x430865,_0x45ef10,_0x585061[_0x553041(0x177)][_0x553041(0x19b)]||0x0,_0x585061[_0x553041(0x177)][_0x553041(0x1d9)]||0x0,_0x585061['usage']['cache_creation_input_tokens'],_0x585061['usage'][_0x553041(0x1c9)]);}catch{}return _0x555554[_0x553041(0x1bf)](_0x135b5b);}}catch(_0x24dfd9){const _0x109fe1=_0x24dfd9 instanceof Error?_0x24dfd9['message']:_0x553041(0x1f0),_0x246228=_0x24dfd9 instanceof Error&&_0x24dfd9[_0x553041(0x1a8)]===_0x553041(0x1aa);this['logger'][_0x553041(0x1e9)](_0x553041(0x1a5),_0x24dfd9),_0x555554['code'](_0x246228?0x1f8:0x1f7)[_0x553041(0x1bf)]({'type':'error','error':{'type':_0x246228?_0x553041(0x1dd):_0x553041(0x1eb),'message':_0x246228?_0x553041(0x179)+_0xe7730d+'ms':_0x553041(0x192)+_0x109fe1}});}}async['handleStreamingResponse'](_0x570337,_0x10febd,_0x4ea137,_0xb5c0d7){const _0xa5e597=a78_0xa6bebb;_0x10febd['raw'][_0xa5e597(0x1bc)](0xc8,{'Content-Type':'text/event-stream','Cache-Control':'no-cache','Connection':_0xa5e597(0x1ec)});const _0x58acd8=new SSEUsageTracker(),_0x25661f=_0x570337[_0xa5e597(0x1c4)](),_0x53d998=new TextDecoder();try{while(!![]){const {done:_0x1e166a,value:_0x2fcf5e}=await _0x25661f[_0xa5e597(0x19e)]();if(_0x1e166a)break;const _0x19fd7e=_0x53d998['decode'](_0x2fcf5e,{'stream':!![]});_0x58acd8[_0xa5e597(0x1f5)](_0x19fd7e),_0x10febd[_0xa5e597(0x187)]['write'](_0x19fd7e);}_0x58acd8['flush']();const _0x3c97ef=_0x58acd8[_0xa5e597(0x1e0)]();(_0x3c97ef[_0xa5e597(0x1e8)]>0x0||_0x3c97ef[_0xa5e597(0x1ea)]>0x0)&&await this['logUsage'](_0x4ea137,_0xb5c0d7,_0x3c97ef[_0xa5e597(0x1e8)],_0x3c97ef['outputTokens'],_0x3c97ef[_0xa5e597(0x1d2)],_0x3c97ef[_0xa5e597(0x186)]);}catch(_0x6d194d){this['logger']['error']('[PASSTHROUGH]\x20Stream\x20error:',_0x6d194d);const _0x49db04=_0xa5e597(0x170)+JSON['stringify']({'type':_0xa5e597(0x1e9),'error':{'type':_0xa5e597(0x190),'message':'Stream\x20interrupted'}})+'\x0a\x0a';_0x10febd[_0xa5e597(0x187)][_0xa5e597(0x18f)](_0x49db04);}finally{_0x10febd['raw'][_0xa5e597(0x1ff)]();}}async[a78_0xa6bebb(0x1f1)](_0x1fbec0,_0x26abe4){const _0x36b58e=a78_0xa6bebb,_0x1e8968=_0x1fbec0[_0x36b58e(0x1c2)],_0x31bec3=_0x1fbec0['url'][_0x36b58e(0x1fc)]('?')?_0x1fbec0[_0x36b58e(0x194)][_0x36b58e(0x180)](_0x1fbec0['url'][_0x36b58e(0x1d3)]('?')):'',_0x368562=this[_0x36b58e(0x16f)][_0x36b58e(0x173)]+_0x36b58e(0x1d0)+_0x31bec3,_0x5be049=this[_0x36b58e(0x17c)](_0x1fbec0),_0x423990=_0x1e8968[_0x36b58e(0x1ce)]||_0x36b58e(0x1ba),_0x3a77b9=shouldInjectSystemPrompt(_0x423990)?injectSystemPrompt(_0x1e8968,TDX_SYSTEM_PROMPT):_0x1e8968,_0x2f515b=JSON[_0x36b58e(0x1f7)](_0x3a77b9);this[_0x36b58e(0x199)][_0x36b58e(0x18d)](_0x36b58e(0x1e6)+_0x368562);const _0x520188=this[_0x36b58e(0x16f)][_0x36b58e(0x1a7)]||DEFAULT_TIMEOUT_MS;try{const _0x146a3a=await fetch(_0x368562,{'method':_0x36b58e(0x1b8),'headers':_0x5be049,'body':_0x2f515b,'signal':AbortSignal[_0x36b58e(0x193)](_0x520188)}),_0x6b1739=await _0x146a3a[_0x36b58e(0x1d1)]();return _0x26abe4[_0x36b58e(0x16d)](_0x146a3a[_0x36b58e(0x1a4)]),_0x26abe4['header'](_0x36b58e(0x169),_0x146a3a[_0x36b58e(0x1c1)][_0x36b58e(0x1b6)](_0x36b58e(0x169))||_0x36b58e(0x1f8)),_0x26abe4[_0x36b58e(0x1bf)](_0x6b1739);}catch(_0x251b71){const _0x3c991c=_0x251b71 instanceof Error?_0x251b71[_0x36b58e(0x1db)]:_0x36b58e(0x1f0),_0x359a70=_0x251b71 instanceof Error&&_0x251b71[_0x36b58e(0x1a8)]==='TimeoutError';this[_0x36b58e(0x199)]['error'](_0x36b58e(0x198),_0x251b71),_0x26abe4[_0x36b58e(0x16d)](_0x359a70?0x1f8:0x1f7)['send']({'type':_0x36b58e(0x1e9),'error':{'type':_0x359a70?_0x36b58e(0x1dd):_0x36b58e(0x1eb),'message':_0x359a70?_0x36b58e(0x179)+_0x520188+'ms':_0x36b58e(0x192)+_0x3c991c}});}}async[a78_0xa6bebb(0x182)](_0x7de84c,_0x290675,_0x53b2cf,_0x4d5688,_0x67046c,_0x5ed3e6){const _0x390d35=a78_0xa6bebb,_0x55ecfd={'timestamp':new Date()['toISOString'](),'model':_0x290675,'inputTokens':_0x53b2cf,'outputTokens':_0x4d5688,'cacheCreationInputTokens':_0x67046c,'cacheReadInputTokens':_0x5ed3e6,'profile':this[_0x390d35(0x16f)]['profile'],'source':_0x390d35(0x1c5)},_0x49a332=_0x67046c||_0x5ed3e6?_0x390d35(0x1ab)+(_0x67046c||0x0)+_0x390d35(0x1ee)+(_0x5ed3e6||0x0):'';this[_0x390d35(0x199)][_0x390d35(0x18d)](_0x390d35(0x1f3)+_0x53b2cf+_0x390d35(0x1cb)+_0x4d5688+_0x49a332+_0x390d35(0x197)+_0x290675);try{await appendUsageEntry(_0x7de84c,_0x55ecfd);}catch(_0x2885e8){this['logger']['error']('[PASSTHROUGH]\x20Failed\x20to\x20log\x20usage:',_0x2885e8);}}[a78_0xa6bebb(0x1d4)](){const _0x3a4d1c=a78_0xa6bebb;if(this[_0x3a4d1c(0x16f)]['auth'][_0x3a4d1c(0x1da)]!==_0x3a4d1c(0x1e3))return;this[_0x3a4d1c(0x1ed)]=setInterval(()=>{const _0x2eee8d=_0x3a4d1c;void this[_0x2eee8d(0x1a9)]();},TOKEN_REFRESH_INTERVAL_MS),this['refreshTimer'][_0x3a4d1c(0x1f4)]();}async['refreshTokenIfNeeded'](){const _0x2cfd9e=a78_0xa6bebb,{auth:_0x487b11}=this['config'];if(_0x487b11[_0x2cfd9e(0x1da)]!==_0x2cfd9e(0x1e3))return;const _0x46636c=!_0x487b11[_0x2cfd9e(0x17a)]||_0x487b11['expiresAt']<Date['now']()+TOKEN_EXPIRY_BUFFER_MS;if(!_0x46636c)return;try{const _0x38f40b=await refreshAccessToken(_0x487b11[_0x2cfd9e(0x185)],_0x487b11['refreshToken']);_0x487b11['accessToken']=_0x38f40b['access_token'],_0x487b11[_0x2cfd9e(0x1bb)]=_0x38f40b[_0x2cfd9e(0x1ad)],_0x487b11[_0x2cfd9e(0x17a)]=_0x38f40b[_0x2cfd9e(0x200)],await saveOAuthTokens(_0x38f40b,this['config'][_0x2cfd9e(0x1fb)]),this[_0x2cfd9e(0x199)][_0x2cfd9e(0x196)](_0x2cfd9e(0x1ca));}catch(_0x73a763){this[_0x2cfd9e(0x199)][_0x2cfd9e(0x1e9)](_0x2cfd9e(0x202),_0x73a763);}}async[a78_0xa6bebb(0x16a)](){const _0x2d7e3f=a78_0xa6bebb,_0x32d4de=this[_0x2d7e3f(0x16f)][_0x2d7e3f(0x1cf)]??0x64;for(let _0x4cc93b=0x0;_0x4cc93b<_0x32d4de;_0x4cc93b++){const _0x2d1372=this[_0x2d7e3f(0x16f)][_0x2d7e3f(0x201)]+_0x4cc93b;try{await this[_0x2d7e3f(0x1fe)][_0x2d7e3f(0x1df)]({'port':_0x2d1372,'host':_0x2d7e3f(0x1d7)}),this[_0x2d7e3f(0x1fd)]=_0x2d1372,this[_0x2d7e3f(0x199)][_0x2d7e3f(0x196)]('Pass-through\x20proxy\x20server\x20started\x20on\x20port\x20'+_0x2d1372),this[_0x2d7e3f(0x199)][_0x2d7e3f(0x196)](_0x2d7e3f(0x1c6)+this[_0x2d7e3f(0x16f)][_0x2d7e3f(0x173)]),this[_0x2d7e3f(0x1d4)]();return;}catch(_0x3d65b6){const _0x2c0aae=_0x3d65b6 instanceof Error&&_0x2d7e3f(0x16d)in _0x3d65b6&&_0x3d65b6[_0x2d7e3f(0x16d)]===_0x2d7e3f(0x1a6);if(!_0x2c0aae)throw _0x3d65b6;this['logger'][_0x2d7e3f(0x18d)](_0x2d7e3f(0x17f)+_0x2d1372+_0x2d7e3f(0x1a3)),this[_0x2d7e3f(0x1ef)]();}}const _0x58e849=this[_0x2d7e3f(0x16f)]['startPort']+_0x32d4de-0x1;throw new Error(_0x2d7e3f(0x1d8)+this[_0x2d7e3f(0x16f)][_0x2d7e3f(0x201)]+_0x2d7e3f(0x188)+_0x58e849);}async['stop'](){const _0x3cdf4c=a78_0xa6bebb;this[_0x3cdf4c(0x1ed)]&&(clearInterval(this[_0x3cdf4c(0x1ed)]),this['refreshTimer']=undefined),await this['server']['close'](),this[_0x3cdf4c(0x199)][_0x3cdf4c(0x196)]('Pass-through\x20proxy\x20server\x20stopped');}[a78_0xa6bebb(0x1b3)](){const _0x54252f=a78_0xa6bebb;return _0x54252f(0x1f2)+this[_0x54252f(0x19f)];}}
@@ -1 +1 @@
1
- const a79_0x47dece=a79_0x4b82;function a79_0x4b82(_0x353cff,_0x4f4102){_0x353cff=_0x353cff-0x1c0;const _0x44b8be=a79_0x44b8();let _0x4b82e0=_0x44b8be[_0x353cff];return _0x4b82e0;}(function(_0x467695,_0x5a35a1){const _0x1a9367=a79_0x4b82,_0x3d1628=_0x467695();while(!![]){try{const _0x11af2e=-parseInt(_0x1a9367(0x1d5))/0x1*(-parseInt(_0x1a9367(0x1e1))/0x2)+parseInt(_0x1a9367(0x1de))/0x3+parseInt(_0x1a9367(0x1cf))/0x4*(parseInt(_0x1a9367(0x1d9))/0x5)+-parseInt(_0x1a9367(0x1d6))/0x6*(parseInt(_0x1a9367(0x1d2))/0x7)+parseInt(_0x1a9367(0x1df))/0x8+parseInt(_0x1a9367(0x1cc))/0x9+-parseInt(_0x1a9367(0x1e4))/0xa;if(_0x11af2e===_0x5a35a1)break;else _0x3d1628['push'](_0x3d1628['shift']());}catch(_0x2f13bb){_0x3d1628['push'](_0x3d1628['shift']());}}}(a79_0x44b8,0x45d4f));export function parseSSEChunk(_0x3d1313){const _0x3e7b63=a79_0x4b82,_0x38902d=[],_0x31a450=_0x3d1313['split']('\x0a\x0a'),_0x1ccec7=_0x31a450[_0x3e7b63(0x1dc)]()||'';for(const _0x26defb of _0x31a450){if(!_0x26defb[_0x3e7b63(0x1d8)]())continue;const _0x3e9b1f={},_0x2e4c3e=_0x26defb[_0x3e7b63(0x1d4)]('\x0a');for(const _0x1deee9 of _0x2e4c3e){if(_0x1deee9['startsWith'](_0x3e7b63(0x1e3)))_0x3e9b1f[_0x3e7b63(0x1e7)]=_0x1deee9[_0x3e7b63(0x1d1)](0x7);else _0x1deee9[_0x3e7b63(0x1d3)](_0x3e7b63(0x1d0))&&(_0x3e9b1f[_0x3e7b63(0x1db)]=_0x1deee9['slice'](0x6));}(_0x3e9b1f[_0x3e7b63(0x1e7)]||_0x3e9b1f[_0x3e7b63(0x1db)])&&_0x38902d[_0x3e7b63(0x1d7)](_0x3e9b1f);}return{'events':_0x38902d,'remaining':_0x1ccec7};}export function extractMessageStartUsage(_0x5a6f86){const _0x580d38=a79_0x4b82;try{const _0x3b505d=JSON['parse'](_0x5a6f86);if(_0x3b505d[_0x580d38(0x1c9)]==='message_start'&&_0x3b505d['message']?.[_0x580d38(0x1c0)]){const _0x4f2098=_0x3b505d[_0x580d38(0x1c3)][_0x580d38(0x1c0)];return{'inputTokens':_0x4f2098['input_tokens']||0x0,'outputTokens':_0x4f2098[_0x580d38(0x1e6)]||0x0,'cacheCreationInputTokens':_0x4f2098[_0x580d38(0x1dd)],'cacheReadInputTokens':_0x4f2098[_0x580d38(0x1ce)]};}}catch{}return null;}export function extractMessageDeltaUsage(_0x575d67){const _0x8876af=a79_0x4b82;try{const _0x46c4=JSON[_0x8876af(0x1cb)](_0x575d67);if(_0x46c4['type']===_0x8876af(0x1c6)&&_0x46c4[_0x8876af(0x1c0)]){const _0x26b11b=_0x46c4['usage'];return{'inputTokens':_0x26b11b[_0x8876af(0x1da)]||0x0,'outputTokens':_0x26b11b[_0x8876af(0x1e6)]||0x0,'cacheCreationInputTokens':_0x26b11b[_0x8876af(0x1dd)],'cacheReadInputTokens':_0x26b11b['cache_read_input_tokens']};}}catch{}return null;}export function extractUsageFromEvent(_0x3ba54a){const _0xee54b1=a79_0x4b82;if(!_0x3ba54a['data'])return null;if(_0x3ba54a[_0xee54b1(0x1e7)]==='message_start')return extractMessageStartUsage(_0x3ba54a['data']);if(_0x3ba54a[_0xee54b1(0x1e7)]==='message_delta')return extractMessageDeltaUsage(_0x3ba54a['data']);return null;}export class SSEUsageTracker{[a79_0x47dece(0x1c2)]=0x0;['outputTokens']=0x0;[a79_0x47dece(0x1c7)];[a79_0x47dece(0x1c1)];[a79_0x47dece(0x1e5)]='';[a79_0x47dece(0x1ca)](_0x49105f){const _0x3887fa=a79_0x47dece;this[_0x3887fa(0x1c2)]=Math[_0x3887fa(0x1c8)](this[_0x3887fa(0x1c2)],_0x49105f[_0x3887fa(0x1c2)]),this['outputTokens']=Math[_0x3887fa(0x1c8)](this[_0x3887fa(0x1c5)],_0x49105f[_0x3887fa(0x1c5)]),_0x49105f[_0x3887fa(0x1c7)]!==undefined&&(this['cacheCreationInputTokens']=Math[_0x3887fa(0x1c8)](this[_0x3887fa(0x1c7)]??0x0,_0x49105f[_0x3887fa(0x1c7)])),_0x49105f[_0x3887fa(0x1c1)]!==undefined&&(this['cacheReadInputTokens']=Math[_0x3887fa(0x1c8)](this[_0x3887fa(0x1c1)]??0x0,_0x49105f[_0x3887fa(0x1c1)]));}[a79_0x47dece(0x1c4)];['processChunk'](_0x5c00ec){const _0x113900=a79_0x47dece;this[_0x113900(0x1e5)]+=_0x5c00ec;const {events:_0x20fc8b,remaining:_0x50bc2f}=parseSSEChunk(this[_0x113900(0x1e5)]);this[_0x113900(0x1e5)]=_0x50bc2f;for(const _0x45c3f1 of _0x20fc8b){const _0x2f11fd=extractUsageFromEvent(_0x45c3f1);_0x2f11fd&&(this[_0x113900(0x1c4)]?.(_0x45c3f1['event']||_0x113900(0x1e0),_0x45c3f1[_0x113900(0x1db)]||'',_0x2f11fd),this[_0x113900(0x1ca)](_0x2f11fd));}return _0x5c00ec;}[a79_0x47dece(0x1cd)](){const _0xed9ad3=a79_0x47dece;if(this[_0xed9ad3(0x1e5)][_0xed9ad3(0x1d8)]()){const {events:_0x293af1}=parseSSEChunk(this[_0xed9ad3(0x1e5)]+'\x0a\x0a');for(const _0x30c117 of _0x293af1){const _0x1328e1=extractUsageFromEvent(_0x30c117);_0x1328e1&&this['updateFromUsage'](_0x1328e1);}this[_0xed9ad3(0x1e5)]='';}}['getUsage'](){const _0x2b5ac8=a79_0x47dece;return{'inputTokens':this[_0x2b5ac8(0x1c2)],'outputTokens':this['outputTokens'],'cacheCreationInputTokens':this[_0x2b5ac8(0x1c7)],'cacheReadInputTokens':this[_0x2b5ac8(0x1c1)]};}[a79_0x47dece(0x1e2)](){const _0x3c1053=a79_0x47dece;this[_0x3c1053(0x1c2)]=0x0,this[_0x3c1053(0x1c5)]=0x0,this['cacheCreationInputTokens']=undefined,this[_0x3c1053(0x1c1)]=undefined,this['buffer']='';}}function a79_0x44b8(){const _0x27744a=['push','trim','5qIZqQL','input_tokens','data','pop','cache_creation_input_tokens','1264215jPBRzs','2492896hTAtnI','unknown','64edwISS','reset','event:\x20','10916700EvJukm','buffer','output_tokens','event','usage','cacheReadInputTokens','inputTokens','message','onRawUsage','outputTokens','message_delta','cacheCreationInputTokens','max','type','updateFromUsage','parse','3217095AFohQx','flush','cache_read_input_tokens','1570124OZoILm','data:\x20','slice','49XiQARq','startsWith','split','11072qtGrkp','393948rSwQYm'];a79_0x44b8=function(){return _0x27744a;};return a79_0x44b8();}
1
+ const a79_0x5c0904=a79_0x575d;function a79_0x575d(_0x4657bd,_0x341a32){_0x4657bd=_0x4657bd-0x108;const _0x23bce0=a79_0x23bc();let _0x575d1a=_0x23bce0[_0x4657bd];return _0x575d1a;}(function(_0x459ac6,_0x3643fc){const _0x39b3b1=a79_0x575d,_0x512385=_0x459ac6();while(!![]){try{const _0x142d33=parseInt(_0x39b3b1(0x11c))/0x1+parseInt(_0x39b3b1(0x123))/0x2*(parseInt(_0x39b3b1(0x12f))/0x3)+parseInt(_0x39b3b1(0x122))/0x4*(-parseInt(_0x39b3b1(0x126))/0x5)+-parseInt(_0x39b3b1(0x121))/0x6*(-parseInt(_0x39b3b1(0x10f))/0x7)+parseInt(_0x39b3b1(0x129))/0x8*(parseInt(_0x39b3b1(0x108))/0x9)+parseInt(_0x39b3b1(0x124))/0xa+parseInt(_0x39b3b1(0x11d))/0xb*(-parseInt(_0x39b3b1(0x127))/0xc);if(_0x142d33===_0x3643fc)break;else _0x512385['push'](_0x512385['shift']());}catch(_0x9496b8){_0x512385['push'](_0x512385['shift']());}}}(a79_0x23bc,0x418ec));export function parseSSEChunk(_0x203119){const _0x379af7=a79_0x575d,_0x1caca2=[],_0x98b983=_0x203119['split']('\x0a\x0a'),_0x1af98b=_0x98b983[_0x379af7(0x12e)]()||'';for(const _0x42dcd9 of _0x98b983){if(!_0x42dcd9['trim']())continue;const _0x164475={},_0x374111=_0x42dcd9['split']('\x0a');for(const _0x5a779c of _0x374111){if(_0x5a779c[_0x379af7(0x11f)](_0x379af7(0x120)))_0x164475['event']=_0x5a779c[_0x379af7(0x114)](0x7);else _0x5a779c[_0x379af7(0x11f)](_0x379af7(0x10b))&&(_0x164475[_0x379af7(0x119)]=_0x5a779c['slice'](0x6));}(_0x164475['event']||_0x164475['data'])&&_0x1caca2[_0x379af7(0x130)](_0x164475);}return{'events':_0x1caca2,'remaining':_0x1af98b};}export function extractMessageStartUsage(_0x123477){const _0x3bf5e7=a79_0x575d;try{const _0x4c3142=JSON['parse'](_0x123477);if(_0x4c3142[_0x3bf5e7(0x12b)]===_0x3bf5e7(0x12a)&&_0x4c3142['message']?.['usage']){const _0x27c5a4=_0x4c3142[_0x3bf5e7(0x125)][_0x3bf5e7(0x113)];return{'inputTokens':_0x27c5a4['input_tokens']||0x0,'outputTokens':_0x27c5a4[_0x3bf5e7(0x10d)]||0x0,'cacheCreationInputTokens':_0x27c5a4[_0x3bf5e7(0x112)],'cacheReadInputTokens':_0x27c5a4[_0x3bf5e7(0x116)]};}}catch{}return null;}export function extractMessageDeltaUsage(_0x4b0ba0){const _0x55ec25=a79_0x575d;try{const _0x4c245b=JSON[_0x55ec25(0x117)](_0x4b0ba0);if(_0x4c245b[_0x55ec25(0x12b)]===_0x55ec25(0x12d)&&_0x4c245b[_0x55ec25(0x113)]){const _0x17d6ad=_0x4c245b[_0x55ec25(0x113)];return{'inputTokens':_0x17d6ad[_0x55ec25(0x10e)]||0x0,'outputTokens':_0x17d6ad[_0x55ec25(0x10d)]||0x0,'cacheCreationInputTokens':_0x17d6ad[_0x55ec25(0x112)],'cacheReadInputTokens':_0x17d6ad[_0x55ec25(0x116)]};}}catch{}return null;}export function extractUsageFromEvent(_0x22fa9f){const _0xeecbde=a79_0x575d;if(!_0x22fa9f[_0xeecbde(0x119)])return null;if(_0x22fa9f[_0xeecbde(0x128)]===_0xeecbde(0x12a))return extractMessageStartUsage(_0x22fa9f[_0xeecbde(0x119)]);if(_0x22fa9f[_0xeecbde(0x128)]===_0xeecbde(0x12d))return extractMessageDeltaUsage(_0x22fa9f[_0xeecbde(0x119)]);return null;}export class SSEUsageTracker{[a79_0x5c0904(0x111)]=0x0;[a79_0x5c0904(0x110)]=0x0;[a79_0x5c0904(0x11a)];['cacheReadInputTokens'];[a79_0x5c0904(0x118)]='';[a79_0x5c0904(0x12c)](_0x5bd171){const _0x1482b1=a79_0x5c0904;this[_0x1482b1(0x111)]=Math[_0x1482b1(0x11e)](this[_0x1482b1(0x111)],_0x5bd171[_0x1482b1(0x111)]),this[_0x1482b1(0x110)]=Math['max'](this[_0x1482b1(0x110)],_0x5bd171[_0x1482b1(0x110)]),_0x5bd171[_0x1482b1(0x11a)]!==undefined&&(this[_0x1482b1(0x11a)]=Math[_0x1482b1(0x11e)](this[_0x1482b1(0x11a)]??0x0,_0x5bd171[_0x1482b1(0x11a)])),_0x5bd171[_0x1482b1(0x109)]!==undefined&&(this['cacheReadInputTokens']=Math[_0x1482b1(0x11e)](this['cacheReadInputTokens']??0x0,_0x5bd171['cacheReadInputTokens']));}['onRawUsage'];['processChunk'](_0x2635b8){const _0x316e11=a79_0x5c0904;this[_0x316e11(0x118)]+=_0x2635b8;const {events:_0x246fb7,remaining:_0x13fd8c}=parseSSEChunk(this['buffer']);this[_0x316e11(0x118)]=_0x13fd8c;for(const _0x5e685f of _0x246fb7){const _0x49bd02=extractUsageFromEvent(_0x5e685f);_0x49bd02&&(this[_0x316e11(0x115)]?.(_0x5e685f[_0x316e11(0x128)]||_0x316e11(0x10a),_0x5e685f[_0x316e11(0x119)]||'',_0x49bd02),this['updateFromUsage'](_0x49bd02));}return _0x2635b8;}[a79_0x5c0904(0x10c)](){const _0x1b6142=a79_0x5c0904;if(this['buffer']['trim']()){const {events:_0x25d018}=parseSSEChunk(this[_0x1b6142(0x118)]+'\x0a\x0a');for(const _0x388a33 of _0x25d018){const _0x4107e8=extractUsageFromEvent(_0x388a33);_0x4107e8&&this[_0x1b6142(0x12c)](_0x4107e8);}this[_0x1b6142(0x118)]='';}}[a79_0x5c0904(0x11b)](){const _0x43cdfc=a79_0x5c0904;return{'inputTokens':this[_0x43cdfc(0x111)],'outputTokens':this[_0x43cdfc(0x110)],'cacheCreationInputTokens':this[_0x43cdfc(0x11a)],'cacheReadInputTokens':this['cacheReadInputTokens']};}['reset'](){const _0x1019e9=a79_0x5c0904;this[_0x1019e9(0x111)]=0x0,this[_0x1019e9(0x110)]=0x0,this[_0x1019e9(0x11a)]=undefined,this[_0x1019e9(0x109)]=undefined,this[_0x1019e9(0x118)]='';}}function a79_0x23bc(){const _0x2b4c82=['push','9spKtka','cacheReadInputTokens','unknown','data:\x20','flush','output_tokens','input_tokens','42847vaumhi','outputTokens','inputTokens','cache_creation_input_tokens','usage','slice','onRawUsage','cache_read_input_tokens','parse','buffer','data','cacheCreationInputTokens','getUsage','187058utobEX','55WBnEYT','max','startsWith','event:\x20','258AdWpOC','383556sIdgZq','203716bddrgC','4369920mATGvA','message','10FZyfoR','2077368NQPAUR','event','2694088GmLcno','message_start','type','updateFromUsage','message_delta','pop','3OKEeCX'];a79_0x23bc=function(){return _0x2b4c82;};return a79_0x23bc();}