@treasuredata/tdx 2026.3.55 → 2026.4.1

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 (226) 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.d.ts.map +1 -1
  143. package/dist/sdk/segment/file-discovery.js +1 -1
  144. package/dist/sdk/segment/file-discovery.js.map +1 -1
  145. package/dist/sdk/segment/journey-utils.js +1 -1
  146. package/dist/sdk/segment/journey-validator.js +1 -1
  147. package/dist/sdk/segment/journey-yaml.js +1 -1
  148. package/dist/sdk/segment/parent-segment-preview.js +1 -1
  149. package/dist/sdk/segment/parent-segment-yaml.js +1 -1
  150. package/dist/sdk/segment/pull-workflow.js +1 -1
  151. package/dist/sdk/segment/push-recovery.js +1 -1
  152. package/dist/sdk/segment/push-workflow.d.ts.map +1 -1
  153. package/dist/sdk/segment/push-workflow.js +1 -1
  154. package/dist/sdk/segment/push-workflow.js.map +1 -1
  155. package/dist/sdk/segment/resolution-context.js +1 -1
  156. package/dist/sdk/segment/segment-path-parser.js +1 -1
  157. package/dist/sdk/segment/segment-ref-parser.js +1 -1
  158. package/dist/sdk/segment/segment-validator.js +1 -1
  159. package/dist/sdk/segment/target-resolution.js +1 -1
  160. package/dist/sdk/segment/tdx-config.js +1 -1
  161. package/dist/sdk/segment/types/activation-schema.js +1 -1
  162. package/dist/sdk/segment/types/journey-def.js +1 -1
  163. package/dist/sdk/segment/types/journey-schema.js +1 -1
  164. package/dist/sdk/segment/types/segment-def.js +1 -1
  165. package/dist/sdk/segment/types/segment-schema.js +1 -1
  166. package/dist/sdk/segment/validate-files.js +1 -1
  167. package/dist/sdk/segment/yaml-validator.js +1 -1
  168. package/dist/sdk/segment.js +1 -1
  169. package/dist/sdk/types/index.js +1 -1
  170. package/dist/sdk/types/progress.js +1 -1
  171. package/dist/sdk/types/workspace.js +1 -1
  172. package/dist/sdk/user.js +1 -1
  173. package/dist/sdk/util/format-detector.js +1 -1
  174. package/dist/sdk/util/formatters.js +1 -1
  175. package/dist/sdk/util/index.js +1 -1
  176. package/dist/sdk/util/paginate.js +1 -1
  177. package/dist/sdk/util/tree-formatter.js +1 -1
  178. package/dist/sdk/workflow/archive-validation.js +1 -1
  179. package/dist/sdk/workflow/clone-workflow.js +1 -1
  180. package/dist/sdk/workflow/index.js +1 -1
  181. package/dist/sdk/workflow/pull-workflow.js +1 -1
  182. package/dist/sdk/workflow/push-workflow.js +1 -1
  183. package/dist/sdk/workflow/tdx-config.js +1 -1
  184. package/dist/sdk/workflow/workflow-utils.js +1 -1
  185. package/dist/sdk/workspace/frontmatter.js +1 -1
  186. package/dist/sdk/workspace/git.js +1 -1
  187. package/dist/sdk/workspace/index.d.ts.map +1 -1
  188. package/dist/sdk/workspace/index.js +1 -1
  189. package/dist/sdk/workspace/index.js.map +1 -1
  190. package/dist/sdk/workspace/templates.js +1 -1
  191. package/dist/sdk/workspace/weekly.js +1 -1
  192. package/dist/sdk/workspace/wikilinks.js +1 -1
  193. package/dist/test-utils/command-runner.js +1 -1
  194. package/dist/test-utils/factories.js +1 -1
  195. package/dist/test-utils/fixtures.js +1 -1
  196. package/dist/test-utils/http-mock.js +1 -1
  197. package/dist/test-utils/index.js +1 -1
  198. package/dist/utils/async.js +1 -1
  199. package/dist/utils/colors.js +1 -1
  200. package/dist/utils/diff.js +1 -1
  201. package/dist/utils/file-permissions.js +1 -1
  202. package/dist/utils/file-reader.js +1 -1
  203. package/dist/utils/github-releases.js +1 -1
  204. package/dist/utils/global-cache.js +1 -1
  205. package/dist/utils/json-loader.js +1 -1
  206. package/dist/utils/local-cache.js +1 -1
  207. package/dist/utils/logger/formatters/default-formatter.js +1 -1
  208. package/dist/utils/logger/formatters/index.js +1 -1
  209. package/dist/utils/logger/handlers/console-handler.js +1 -1
  210. package/dist/utils/logger/handlers/file-handler.js +1 -1
  211. package/dist/utils/logger/handlers/index.js +1 -1
  212. package/dist/utils/logger/handlers/null-handler.js +1 -1
  213. package/dist/utils/logger/index.js +1 -1
  214. package/dist/utils/logger/logger.js +1 -1
  215. package/dist/utils/logger/types.js +1 -1
  216. package/dist/utils/option-validation.js +1 -1
  217. package/dist/utils/process.js +1 -1
  218. package/dist/utils/process.js.map +1 -1
  219. package/dist/utils/prompt.js +1 -1
  220. package/dist/utils/spinner.js +1 -1
  221. package/dist/utils/sse-parser.js +1 -1
  222. package/dist/utils/string-utils.js +1 -1
  223. package/dist/utils/table-ref-parser.js +1 -1
  224. package/dist/utils/tdx-logger.js +1 -1
  225. package/dist/utils/version-check.js +1 -1
  226. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- (function(_0x2f13a8,_0x199001){var _0x589ef4=a70_0x32cb,_0x3252c0=_0x2f13a8();while(!![]){try{var _0x1cbadc=-parseInt(_0x589ef4(0x149))/0x1+-parseInt(_0x589ef4(0x148))/0x2*(parseInt(_0x589ef4(0x14c))/0x3)+-parseInt(_0x589ef4(0x147))/0x4*(-parseInt(_0x589ef4(0x14a))/0x5)+parseInt(_0x589ef4(0x14e))/0x6+-parseInt(_0x589ef4(0x14d))/0x7+parseInt(_0x589ef4(0x14f))/0x8+parseInt(_0x589ef4(0x14b))/0x9;if(_0x1cbadc===_0x199001)break;else _0x3252c0['push'](_0x3252c0['shift']());}catch(_0x4a4f8a){_0x3252c0['push'](_0x3252c0['shift']());}}}(a70_0x31e1,0x37b98));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';function a70_0x31e1(){var _0x292f71=['5593572gHpWRZ','76899ycsloN','2221121BAJklT','160314rRCrOt','874832zVOEBe','1148gvsVjb','26ywBtIL','145998twtGsj','4655uYCtwU'];a70_0x31e1=function(){return _0x292f71;};return a70_0x31e1();}export*from'./sdk/types/trino.js';export*from'./commands/command.js';export*from'./commands/query-command.js';function a70_0x32cb(_0x25909d,_0x296142){_0x25909d=_0x25909d-0x147;var _0x31e1a3=a70_0x31e1();var _0x32cbf0=_0x31e1a3[_0x25909d];return _0x32cbf0;}export*from'./commands/databases.js';export*from'./commands/tables.js';export*from'./commands/segments.js';export*from'./commands/activations.js';export*from'./commands/show.js';export*from'./commands/describe.js';export*from'./sdk/index.js';
1
+ function a70_0x3d37(){var _0x420a74=['492289XQuzAq','177584pFUiwt','413965sHzlyq','91898jyZwjD','10cXxksN','1450677XsBKbA','2689587irdUwk','42VIWFJr','336618vqYfWH','24MYSQpE'];a70_0x3d37=function(){return _0x420a74;};return a70_0x3d37();}(function(_0xf9796,_0x40ef36){var _0x2e1cf2=a70_0x491a,_0x5c3c07=_0xf9796();while(!![]){try{var _0x252da7=parseInt(_0x2e1cf2(0x1d0))/0x1+-parseInt(_0x2e1cf2(0x1cb))/0x2+parseInt(_0x2e1cf2(0x1cd))/0x3+parseInt(_0x2e1cf2(0x1c9))/0x4+parseInt(_0x2e1cf2(0x1ca))/0x5*(-parseInt(_0x2e1cf2(0x1cf))/0x6)+-parseInt(_0x2e1cf2(0x1d2))/0x7*(parseInt(_0x2e1cf2(0x1d1))/0x8)+-parseInt(_0x2e1cf2(0x1ce))/0x9*(-parseInt(_0x2e1cf2(0x1cc))/0xa);if(_0x252da7===_0x40ef36)break;else _0x5c3c07['push'](_0x5c3c07['shift']());}catch(_0x40b370){_0x5c3c07['push'](_0x5c3c07['shift']());}}}(a70_0x3d37,0x4fd17));export*from'./sdk/types/index.js';export*from'./core/config.js';function a70_0x491a(_0x2a3d0c,_0x222210){_0x2a3d0c=_0x2a3d0c-0x1c9;var _0x3d376d=a70_0x3d37();var _0x491a19=_0x3d376d[_0x2a3d0c];return _0x491a19;}export*from'./core/auth.js';export*from'./sdk/client/http-client.js';export*from'./sdk/client/td-api-client.js';export{TrinoApiClient}from'./sdk/client/trino-api-client.js';export*from'./sdk/client/rate-limiter.js';export*from'./sdk/types/trino.js';export*from'./commands/command.js';export*from'./commands/query-command.js';export*from'./commands/databases.js';export*from'./commands/tables.js';export*from'./commands/segments.js';export*from'./commands/activations.js';export*from'./commands/show.js';export*from'./commands/describe.js';export*from'./sdk/index.js';
@@ -1 +1 @@
1
- (function(_0x3f021b,_0x4ab138){const _0x3ada44=a71_0x50f0,_0xcff0c=_0x3f021b();while(!![]){try{const _0xe9fde2=-parseInt(_0x3ada44(0x10b))/0x1+parseInt(_0x3ada44(0xf5))/0x2*(-parseInt(_0x3ada44(0xfd))/0x3)+parseInt(_0x3ada44(0x124))/0x4+parseInt(_0x3ada44(0x11f))/0x5*(-parseInt(_0x3ada44(0x10e))/0x6)+parseInt(_0x3ada44(0x117))/0x7+parseInt(_0x3ada44(0x115))/0x8+parseInt(_0x3ada44(0xfe))/0x9*(parseInt(_0x3ada44(0x119))/0xa);if(_0xe9fde2===_0x4ab138)break;else _0xcff0c['push'](_0xcff0c['shift']());}catch(_0x17f3e1){_0xcff0c['push'](_0xcff0c['shift']());}}}(a71_0x160a,0x9beaf));import{McpServer}from'@modelcontextprotocol/sdk/server/mcp.js';import{StdioServerTransport}from'@modelcontextprotocol/sdk/server/stdio.js';function a71_0x160a(){const _0x2aa0c1=['tdx_run','288802kPDhoG','registerTool','string','success','Utilities','map','Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])','\x0a\x0aExamples:\x0a','24oqNNwR','12862467ULxTEc','path','describe','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.','CDP','env','close','enum','shape','Failed\x20to\x20create\x20item','slug','\x0a\x0a---\x0a\x0a','connect','838329yzwTCy','Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)','optional','672198rKJgzF','output','SIGINT','1.0.0','examples','error','text','4699112iTPMXy','array','2010246lDuiZg','Data','10xQgTZg','Command\x20failed','once','work_create_item','length','stringify','10JUYkgq','category','join','Optional\x20filter\x20by\x20category','name','2210048SDZpIx','No\x20commands\x20found\x20matching\x20\x22','Execute\x20any\x20tdx\x20CLI\x20command.\x20Returns\x20JSON\x20output.\x0a\x0aExamples:\x0a-\x20List\x20databases:\x20{\x22args\x22:\x20[\x22databases\x22]}\x0a-\x20Run\x20SQL\x20query:\x20{\x22args\x22:\x20[\x22query\x22,\x20\x22SELECT\x20*\x20FROM\x20mydb.users\x20LIMIT\x2010\x22]}\x0a-\x20List\x20segments:\x20{\x22args\x22:\x20[\x22segments\x22,\x20\x22--recursive\x22]}\x0a-\x20Show\x20job\x20details:\x20{\x22args\x22:\x20[\x22job\x22,\x20\x22show\x22,\x20\x2212345\x22]}\x0a-\x20List\x20tables:\x20{\x22args\x22:\x20[\x22tables\x22,\x20\x22mydb.*\x22]}\x0a\x0aNote:\x20Some\x20commands\x20(auth,\x20profile\x20management,\x20mcp)\x20are\x20blocked\x20for\x20security.','description','stdin'];a71_0x160a=function(){return _0x2aa0c1;};return a71_0x160a();}import{z}from'zod';import{executeTdxRun,searchCommands,executeWorkCreateItem,WorkCreateItemInputSchema}from'./tools/index.js';export function createMCPServer(_0x113172={}){const _0x1ba6a9=a71_0x50f0,_0x133b89=new McpServer({'name':'tdx','version':_0x1ba6a9(0x111)});return _0x133b89['registerTool'](_0x1ba6a9(0xf4),{'description':_0x1ba6a9(0x126),'inputSchema':{'args':z[_0x1ba6a9(0x116)](z[_0x1ba6a9(0xf7)]())[_0x1ba6a9(0x100)](_0x1ba6a9(0xfb))}},async({args:_0x4243f0})=>{const _0xebf021=_0x1ba6a9,_0x2645ae=await executeTdxRun({'args':_0x4243f0},_0x113172[_0xebf021(0x103)]||{});return _0x2645ae['success']?{'content':[{'type':_0xebf021(0x114),'text':_0x2645ae['output']||'Command\x20completed\x20successfully'}]}:{'content':[{'type':_0xebf021(0x114),'text':_0x2645ae[_0xebf021(0x113)]||_0x2645ae[_0xebf021(0x10f)]||_0xebf021(0x11a)}],'isError':!![]};}),_0x133b89[_0x1ba6a9(0xf6)]('tdx_search',{'description':_0x1ba6a9(0x101),'inputSchema':{'query':z[_0x1ba6a9(0xf7)]()[_0x1ba6a9(0x100)](_0x1ba6a9(0x10c)),'category':z[_0x1ba6a9(0x105)]([_0x1ba6a9(0x118),_0x1ba6a9(0x102),'AI','Context',_0x1ba6a9(0xf9)])[_0x1ba6a9(0x10d)]()[_0x1ba6a9(0x100)](_0x1ba6a9(0x122))}},async({query:_0x5a210d,category:_0x197cac})=>{const _0x314207=_0x1ba6a9,_0x27e3a2=searchCommands({'query':_0x5a210d,'category':_0x197cac});if(_0x27e3a2[_0x314207(0x11d)]===0x0)return{'content':[{'type':'text','text':_0x314207(0x125)+_0x5a210d+'\x22'}]};const _0x5b7c17=_0x27e3a2[_0x314207(0xfa)](_0x525aaf=>{const _0x334434=_0x314207,_0x2c6297=_0x525aaf[_0x334434(0x112)][_0x334434(0xfa)](_0x38d7e1=>'\x20\x20'+_0x38d7e1)[_0x334434(0x121)]('\x0a');return'**'+_0x525aaf[_0x334434(0x123)]+'**\x20('+_0x525aaf[_0x334434(0x120)]+')\x0a'+_0x525aaf[_0x334434(0xf2)]+_0x334434(0xfc)+_0x2c6297;})['join'](_0x314207(0x109));return{'content':[{'type':_0x314207(0x114),'text':_0x5b7c17}]};}),_0x133b89[_0x1ba6a9(0xf6)](_0x1ba6a9(0x11c),{'description':'Create\x20a\x20work\x20item\x20in\x20the\x20workspace\x20with\x20auto-generated\x20slug,\x20correct\x20folder\x20placement,\x20and\x20auto-commit.\x0a\x0aExamples:\x0a-\x20Create\x20a\x20task:\x20{\x22title\x22:\x20\x22Fix\x20login\x20bug\x22,\x20\x22tags\x22:\x20[\x22bugfix\x22]}\x0a-\x20Create\x20a\x20note:\x20{\x22title\x22:\x20\x22Meeting\x20notes\x22,\x20\x22kind\x22:\x20\x22note\x22}\x0a-\x20Create\x20with\x20PR\x20link:\x20{\x22title\x22:\x20\x22Add\x20auth\x22,\x20\x22github\x22:\x20\x22treasure-data/tdx#123\x22}\x0a-\x20Create\x20from\x20template:\x20{\x22title\x22:\x20\x22New\x20feature\x22,\x20\x22template\x22:\x20\x22feature\x22}\x0a\x0aReturns\x20the\x20file\x20path\x20and\x20slug\x20of\x20the\x20created\x20document.','inputSchema':WorkCreateItemInputSchema[_0x1ba6a9(0x106)]},async({title:_0x10d50c,kind:_0x172820,status:_0x20a68f,tags:_0x358e48,priority:_0x58a6e2,body:_0x1bfaab,template:_0x25018b,github:_0x210b27,jira:_0x1e099a})=>{const _0xf9655c=_0x1ba6a9,_0x5e1241=executeWorkCreateItem({'title':_0x10d50c,'kind':_0x172820,'status':_0x20a68f,'tags':_0x358e48,'priority':_0x58a6e2,'body':_0x1bfaab,'template':_0x25018b,'github':_0x210b27,'jira':_0x1e099a});return _0x5e1241[_0xf9655c(0xf8)]?{'content':[{'type':_0xf9655c(0x114),'text':JSON[_0xf9655c(0x11e)]({'path':_0x5e1241[_0xf9655c(0xff)],'slug':_0x5e1241[_0xf9655c(0x108)]})}]}:{'content':[{'type':_0xf9655c(0x114),'text':_0x5e1241['error']||_0xf9655c(0x107)}],'isError':!![]};}),_0x133b89;}function a71_0x50f0(_0x4e0ad7,_0x20275c){_0x4e0ad7=_0x4e0ad7-0xf2;const _0x160a39=a71_0x160a();let _0x50f025=_0x160a39[_0x4e0ad7];return _0x50f025;}export async function startMCPServer(_0x3a277b={}){const _0x13ff5d=a71_0x50f0,_0x4b67be=createMCPServer(_0x3a277b),_0x4af45c=new StdioServerTransport();return await _0x4b67be[_0x13ff5d(0x10a)](_0x4af45c),new Promise(_0xc621b8=>{const _0x384383=_0x13ff5d;let _0x51c85e=![];const _0x372d2c=async()=>{const _0x17902a=a71_0x50f0;if(_0x51c85e)return;_0x51c85e=!![],await _0x4b67be[_0x17902a(0x104)](),_0xc621b8();};process[_0x384383(0x11b)](_0x384383(0x110),_0x372d2c),process[_0x384383(0x11b)]('SIGTERM',_0x372d2c),process[_0x384383(0xf3)][_0x384383(0x11b)](_0x384383(0x104),_0x372d2c);});}
1
+ (function(_0x49fcd7,_0x48163d){const _0x55acca=a71_0x154c,_0xb3331b=_0x49fcd7();while(!![]){try{const _0x5ddd27=-parseInt(_0x55acca(0x179))/0x1*(parseInt(_0x55acca(0x189))/0x2)+-parseInt(_0x55acca(0x190))/0x3*(-parseInt(_0x55acca(0x181))/0x4)+parseInt(_0x55acca(0x18f))/0x5+-parseInt(_0x55acca(0x16b))/0x6+-parseInt(_0x55acca(0x176))/0x7+parseInt(_0x55acca(0x183))/0x8*(-parseInt(_0x55acca(0x16f))/0x9)+parseInt(_0x55acca(0x191))/0xa;if(_0x5ddd27===_0x48163d)break;else _0xb3331b['push'](_0xb3331b['shift']());}catch(_0xa96f44){_0xb3331b['push'](_0xb3331b['shift']());}}}(a71_0x17cf,0x634cb));import{McpServer}from'@modelcontextprotocol/sdk/server/mcp.js';function a71_0x154c(_0x343792,_0x59d9b8){_0x343792=_0x343792-0x163;const _0x17cf8b=a71_0x17cf();let _0x154c14=_0x17cf8b[_0x343792];return _0x154c14;}import{StdioServerTransport}from'@modelcontextprotocol/sdk/server/stdio.js';function a71_0x17cf(){const _0x37ff95=['once','connect','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.','text','Utilities','1.0.0','string','918708FAGMsg','shape','output','name','9RZlmYC','stringify','env','tdx_run','category','registerTool','Context','365316cLTqVU','No\x20commands\x20found\x20matching\x20\x22','enum','1yUMoIw','length','Failed\x20to\x20create\x20item','\x0a\x0aExamples:\x0a','tdx_search','Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])','path','optional','36vToLYW','description','2550392SjOHTe','describe','work_create_item','error','SIGTERM','success','374230AXZlqY','array','map','join','SIGINT','Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)','2062550ScgvAX','128139ySQXXs','3210240JCHBDR','close','**\x20(','Create\x20a\x20work\x20item\x20in\x20the\x20workspace\x20with\x20auto-generated\x20slug,\x20correct\x20folder\x20placement,\x20and\x20auto-commit.\x0a\x0aExamples:\x0a-\x20Create\x20a\x20task:\x20{\x22title\x22:\x20\x22Fix\x20login\x20bug\x22,\x20\x22tags\x22:\x20[\x22bugfix\x22]}\x0a-\x20Create\x20a\x20note:\x20{\x22title\x22:\x20\x22Meeting\x20notes\x22,\x20\x22kind\x22:\x20\x22note\x22}\x0a-\x20Create\x20with\x20PR\x20link:\x20{\x22title\x22:\x20\x22Add\x20auth\x22,\x20\x22github\x22:\x20\x22treasure-data/tdx#123\x22}\x0a-\x20Create\x20from\x20template:\x20{\x22title\x22:\x20\x22New\x20feature\x22,\x20\x22template\x22:\x20\x22feature\x22}\x0a\x0aReturns\x20the\x20file\x20path\x20and\x20slug\x20of\x20the\x20created\x20document.'];a71_0x17cf=function(){return _0x37ff95;};return a71_0x17cf();}import{z}from'zod';import{executeTdxRun,searchCommands,executeWorkCreateItem,WorkCreateItemInputSchema}from'./tools/index.js';export function createMCPServer(_0x362181={}){const _0x12d403=a71_0x154c,_0x691de0=new McpServer({'name':'tdx','version':_0x12d403(0x169)});return _0x691de0[_0x12d403(0x174)](_0x12d403(0x172),{'description':'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.','inputSchema':{'args':z[_0x12d403(0x18a)](z[_0x12d403(0x16a)]())[_0x12d403(0x184)](_0x12d403(0x17e))}},async({args:_0x3eacfc})=>{const _0x4cfb99=_0x12d403,_0x44fe2b=await executeTdxRun({'args':_0x3eacfc},_0x362181[_0x4cfb99(0x171)]||{});return _0x44fe2b['success']?{'content':[{'type':_0x4cfb99(0x167),'text':_0x44fe2b['output']||'Command\x20completed\x20successfully'}]}:{'content':[{'type':_0x4cfb99(0x167),'text':_0x44fe2b[_0x4cfb99(0x186)]||_0x44fe2b[_0x4cfb99(0x16d)]||'Command\x20failed'}],'isError':!![]};}),_0x691de0[_0x12d403(0x174)](_0x12d403(0x17d),{'description':_0x12d403(0x166),'inputSchema':{'query':z[_0x12d403(0x16a)]()[_0x12d403(0x184)](_0x12d403(0x18e)),'category':z[_0x12d403(0x178)](['Data','CDP','AI',_0x12d403(0x175),_0x12d403(0x168)])[_0x12d403(0x180)]()[_0x12d403(0x184)]('Optional\x20filter\x20by\x20category')}},async({query:_0x5bab6d,category:_0x1b279})=>{const _0x5927c8=_0x12d403,_0x26c632=searchCommands({'query':_0x5bab6d,'category':_0x1b279});if(_0x26c632[_0x5927c8(0x17a)]===0x0)return{'content':[{'type':'text','text':_0x5927c8(0x177)+_0x5bab6d+'\x22'}]};const _0x1ea7c8=_0x26c632[_0x5927c8(0x18b)](_0x57fb40=>{const _0x1479a7=_0x5927c8,_0x23108d=_0x57fb40['examples']['map'](_0x3a3d11=>'\x20\x20'+_0x3a3d11)[_0x1479a7(0x18c)]('\x0a');return'**'+_0x57fb40[_0x1479a7(0x16e)]+_0x1479a7(0x193)+_0x57fb40[_0x1479a7(0x173)]+')\x0a'+_0x57fb40[_0x1479a7(0x182)]+_0x1479a7(0x17c)+_0x23108d;})[_0x5927c8(0x18c)]('\x0a\x0a---\x0a\x0a');return{'content':[{'type':_0x5927c8(0x167),'text':_0x1ea7c8}]};}),_0x691de0[_0x12d403(0x174)](_0x12d403(0x185),{'description':_0x12d403(0x163),'inputSchema':WorkCreateItemInputSchema[_0x12d403(0x16c)]},async({title:_0x555413,kind:_0x2dc37b,status:_0x142944,tags:_0x1d87dc,priority:_0x1ae04c,body:_0x57d881,template:_0x1dee95,github:_0x3bfcdb,jira:_0x2f7a69})=>{const _0x40c7eb=_0x12d403,_0x4bd6d7=executeWorkCreateItem({'title':_0x555413,'kind':_0x2dc37b,'status':_0x142944,'tags':_0x1d87dc,'priority':_0x1ae04c,'body':_0x57d881,'template':_0x1dee95,'github':_0x3bfcdb,'jira':_0x2f7a69});return _0x4bd6d7[_0x40c7eb(0x188)]?{'content':[{'type':'text','text':JSON[_0x40c7eb(0x170)]({'path':_0x4bd6d7[_0x40c7eb(0x17f)],'slug':_0x4bd6d7['slug']})}]}:{'content':[{'type':_0x40c7eb(0x167),'text':_0x4bd6d7[_0x40c7eb(0x186)]||_0x40c7eb(0x17b)}],'isError':!![]};}),_0x691de0;}export async function startMCPServer(_0x4c9cef={}){const _0x257f6a=a71_0x154c,_0xd7c848=createMCPServer(_0x4c9cef),_0x2b151a=new StdioServerTransport();return await _0xd7c848[_0x257f6a(0x165)](_0x2b151a),new Promise(_0xec3ad9=>{const _0x46ffa6=_0x257f6a;let _0x4647f1=![];const _0x209944=async()=>{const _0x3b21d4=a71_0x154c;if(_0x4647f1)return;_0x4647f1=!![],await _0xd7c848[_0x3b21d4(0x192)](),_0xec3ad9();};process[_0x46ffa6(0x164)](_0x46ffa6(0x18d),_0x209944),process[_0x46ffa6(0x164)](_0x46ffa6(0x187),_0x209944),process['stdin'][_0x46ffa6(0x164)](_0x46ffa6(0x192),_0x209944);});}
@@ -1 +1 @@
1
- (function(_0x3d7eb0,_0x501d8){var _0x216e23=a72_0x459c,_0x2ba788=_0x3d7eb0();while(!![]){try{var _0x42c502=-parseInt(_0x216e23(0xad))/0x1*(parseInt(_0x216e23(0xa8))/0x2)+parseInt(_0x216e23(0xab))/0x3*(-parseInt(_0x216e23(0xa7))/0x4)+parseInt(_0x216e23(0xaa))/0x5+-parseInt(_0x216e23(0xb0))/0x6*(-parseInt(_0x216e23(0xb1))/0x7)+parseInt(_0x216e23(0xac))/0x8*(-parseInt(_0x216e23(0xaf))/0x9)+-parseInt(_0x216e23(0xa9))/0xa+parseInt(_0x216e23(0xae))/0xb;if(_0x42c502===_0x501d8)break;else _0x2ba788['push'](_0x2ba788['shift']());}catch(_0x12493e){_0x2ba788['push'](_0x2ba788['shift']());}}}(a72_0x4dc9,0x72159));export{executeTdxRun,TdxRunInputSchema}from'./tdx-run.js';function a72_0x459c(_0x3eb0b5,_0x17d563){_0x3eb0b5=_0x3eb0b5-0xa7;var _0x4dc9de=a72_0x4dc9();var _0x459c5d=_0x4dc9de[_0x3eb0b5];return _0x459c5d;}export{searchCommands,TdxSearchInputSchema}from'./tdx-search.js';function a72_0x4dc9(){var _0x74b80d=['3781830giLtnD','7CvVNew','12kHoLAs','371678baHgMR','2581820tUCkHN','3128880yADXbt','649173ryJgdm','1866608JPQMDc','2jegqYy','15658995ckZRSd','36XClrxA'];a72_0x4dc9=function(){return _0x74b80d;};return a72_0x4dc9();}export{executeWorkCreateItem,WorkCreateItemInputSchema}from'./work-create-item.js';
1
+ (function(_0x53c4d5,_0x4eddb3){var _0x530a10=a72_0x440f,_0x28c51a=_0x53c4d5();while(!![]){try{var _0x53cd0f=parseInt(_0x530a10(0x14a))/0x1+parseInt(_0x530a10(0x146))/0x2*(-parseInt(_0x530a10(0x144))/0x3)+-parseInt(_0x530a10(0x14b))/0x4*(-parseInt(_0x530a10(0x141))/0x5)+parseInt(_0x530a10(0x145))/0x6*(-parseInt(_0x530a10(0x143))/0x7)+parseInt(_0x530a10(0x149))/0x8+parseInt(_0x530a10(0x148))/0x9*(parseInt(_0x530a10(0x147))/0xa)+parseInt(_0x530a10(0x14c))/0xb*(-parseInt(_0x530a10(0x142))/0xc);if(_0x53cd0f===_0x4eddb3)break;else _0x28c51a['push'](_0x28c51a['shift']());}catch(_0x1c0fc5){_0x28c51a['push'](_0x28c51a['shift']());}}}(a72_0xfd4d,0xa033b));function a72_0x440f(_0x5e11f1,_0x2d3fae){_0x5e11f1=_0x5e11f1-0x141;var _0xfd4da9=a72_0xfd4d();var _0x440f56=_0xfd4da9[_0x5e11f1];return _0x440f56;}export{executeTdxRun,TdxRunInputSchema}from'./tdx-run.js';export{searchCommands,TdxSearchInputSchema}from'./tdx-search.js';export{executeWorkCreateItem,WorkCreateItemInputSchema}from'./work-create-item.js';function a72_0xfd4d(){var _0x25afa0=['50qdRtFz','1450yjKzXS','52047WTjyIq','5954488jGmtLN','259822eDcYeO','11212QKciEp','2765983hngUgZ','1465TUSqJp','36wubZbY','10199pApFDZ','94809jdbNHT','1908zMuxiM'];a72_0xfd4d=function(){return _0x25afa0;};return a72_0xfd4d();}
@@ -1 +1 @@
1
- const a73_0x52128b=a73_0x5860;(function(_0x4c983d,_0xea278){const _0x110b6d=a73_0x5860,_0x69ee2c=_0x4c983d();while(!![]){try{const _0x5290b8=-parseInt(_0x110b6d(0x10b))/0x1*(parseInt(_0x110b6d(0xfb))/0x2)+-parseInt(_0x110b6d(0xfe))/0x3*(-parseInt(_0x110b6d(0x110))/0x4)+parseInt(_0x110b6d(0xf4))/0x5+parseInt(_0x110b6d(0xf1))/0x6*(parseInt(_0x110b6d(0x10a))/0x7)+-parseInt(_0x110b6d(0xf8))/0x8*(parseInt(_0x110b6d(0x10e))/0x9)+parseInt(_0x110b6d(0x10f))/0xa+parseInt(_0x110b6d(0xfd))/0xb*(-parseInt(_0x110b6d(0xee))/0xc);if(_0x5290b8===_0xea278)break;else _0x69ee2c['push'](_0x69ee2c['shift']());}catch(_0x294f8b){_0x69ee2c['push'](_0x69ee2c['shift']());}}}(a73_0xf89e,0x453f3));import{spawn}from'child_process';import{dirname,join}from'path';import{existsSync}from'fs';function a73_0x5860(_0xd60ee8,_0xd36c35){_0xd60ee8=_0xd60ee8-0xee;const _0xf89e92=a73_0xf89e();let _0x5860a9=_0xf89e92[_0xd60ee8];return _0x5860a9;}import{z}from'zod';import{isBlockedCommand,getBlockedReason,formatOutput}from'../utils.js';export const TdxRunInputSchema=z['object']({'args':z['array'](z[a73_0x52128b(0xff)]())[a73_0x52128b(0x107)](a73_0x52128b(0x106))});const DEFAULT_TIMEOUT_MS=0xf*0x3c*0x3e8;function a73_0xf89e(){const _0x41cabe=['kill','close','184014lZCIuP','SIGTERM','473ycDUWp','128889LqDDvp','string','toString','ignore','platform','data','tdx','stderr','Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])','describe','win32','execPath','21xeYMTc','3FKJuEw','--no-color','stdout','9QBWmjj','1244730XKogVa','24hlJBpe','108828hTXHfp','node','error','439308wfIQin','PATH','message','2778445KRUtjW','pipe','--json','true','1663768zoGBQX'];a73_0xf89e=function(){return _0x41cabe;};return a73_0xf89e();}function getNodeBinDir(){const _0x408abf=a73_0x52128b,_0x3884fb=process['resourcesPath'];if(_0x3884fb){const _0x4484b4=join(_0x3884fb,_0x408abf(0xef)),_0x4dfebe=process['platform']===_0x408abf(0x108)?'node.exe':_0x408abf(0xef);if(existsSync(join(_0x4484b4,_0x4dfebe)))return _0x4484b4;}return dirname(process[_0x408abf(0x109)]);}export async function executeTdxRun(_0x153153,_0x2b7826){const _0x1f441b=a73_0x52128b,{args:_0x28ecd4}=_0x153153;if(isBlockedCommand(_0x28ecd4)){const _0x3afe1d=getBlockedReason(_0x28ecd4);return{'success':![],'output':'','error':_0x3afe1d||'This\x20command\x20is\x20not\x20allowed\x20via\x20MCP','exitCode':0x1};}const _0x34a6e9=[_0x1f441b(0xf6),_0x1f441b(0x10c),..._0x28ecd4],_0x2978b9=getNodeBinDir(),_0x4a65ff=process[_0x1f441b(0x102)]==='win32'?';':':',_0x3b8833=_0x2b7826[_0x1f441b(0xf2)]??process.env.PATH??'',_0x36114e=''+_0x2978b9+_0x4a65ff+_0x3b8833;return new Promise(_0x2c0ae1=>{const _0x13b91e=_0x1f441b,_0x39cba8=spawn(_0x13b91e(0x104),_0x34a6e9,{'env':{...process.env,..._0x2b7826,'PATH':_0x36114e,'CI':_0x13b91e(0xf7)},'stdio':[_0x13b91e(0x101),_0x13b91e(0xf5),_0x13b91e(0xf5)]});let _0x5b9536='',_0x1e7670='',_0x5e3db8=![];const _0x5567e2=setTimeout(()=>{const _0x14b6ad=_0x13b91e;_0x5e3db8=!![],_0x39cba8[_0x14b6ad(0xf9)](_0x14b6ad(0xfc));},DEFAULT_TIMEOUT_MS);_0x39cba8[_0x13b91e(0x10d)]['on'](_0x13b91e(0x103),_0x565db=>{_0x5b9536+=_0x565db['toString']();}),_0x39cba8[_0x13b91e(0x105)]['on'](_0x13b91e(0x103),_0xdf78ae=>{const _0x1c96da=_0x13b91e;_0x1e7670+=_0xdf78ae[_0x1c96da(0x100)]();}),_0x39cba8['on'](_0x13b91e(0xf0),_0x5c5677=>{const _0x2d93d3=_0x13b91e;clearTimeout(_0x5567e2),_0x2c0ae1({'success':![],'output':'','error':'Failed\x20to\x20spawn\x20tdx:\x20'+_0x5c5677[_0x2d93d3(0xf3)],'exitCode':0x1});}),_0x39cba8['on'](_0x13b91e(0xfa),_0xdd964f=>{clearTimeout(_0x5567e2);if(_0x5e3db8){_0x2c0ae1({'success':![],'output':formatOutput(_0x5b9536),'error':'Command\x20timed\x20out\x20after\x2015\x20minutes.\x20For\x20long-running\x20queries,\x20use\x20job\x20submit\x20instead.','exitCode':0x7c});return;}const _0x83f419=_0xdd964f??0x1,_0x561edd=_0x83f419===0x0,_0x440886=formatOutput(_0x5b9536||_0x1e7670),_0x55b55d=!_0x561edd&&_0x1e7670?formatOutput(_0x1e7670):undefined;_0x2c0ae1({'success':_0x561edd,'output':_0x440886,'error':_0x55b55d,'exitCode':_0x83f419});});});}
1
+ const a73_0x1f5be2=a73_0x4740;(function(_0x15e600,_0x24c0ef){const _0x38f676=a73_0x4740,_0x2f13a8=_0x15e600();while(!![]){try{const _0x4c408d=-parseInt(_0x38f676(0x1be))/0x1+parseInt(_0x38f676(0x1ba))/0x2*(parseInt(_0x38f676(0x1ca))/0x3)+parseInt(_0x38f676(0x1c9))/0x4+-parseInt(_0x38f676(0x1bd))/0x5*(-parseInt(_0x38f676(0x1d0))/0x6)+-parseInt(_0x38f676(0x1cd))/0x7*(parseInt(_0x38f676(0x1c2))/0x8)+-parseInt(_0x38f676(0x1b4))/0x9*(-parseInt(_0x38f676(0x1c8))/0xa)+-parseInt(_0x38f676(0x1c1))/0xb;if(_0x4c408d===_0x24c0ef)break;else _0x2f13a8['push'](_0x2f13a8['shift']());}catch(_0xee7b27){_0x2f13a8['push'](_0x2f13a8['shift']());}}}(a73_0x1c07,0x3b0e9));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_0x1f5be2(0x1b0)](z[a73_0x1f5be2(0x1c0)]())[a73_0x1f5be2(0x1bb)]('Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])')});function a73_0x4740(_0x500fb0,_0x59fcd5){_0x500fb0=_0x500fb0-0x1b0;const _0x1c071f=a73_0x1c07();let _0x47409e=_0x1c071f[_0x500fb0];return _0x47409e;}function a73_0x1c07(){const _0x171d50=['describe','error','35qavfPT','97586TwqEFB','data','string','6049945MUxIKr','3484776mCrdpH','node','stderr','--no-color','Failed\x20to\x20spawn\x20tdx:\x20','PATH','67490hGsliV','1790016kNylOq','388767qkpiUR','win32','execPath','7XfetVw','kill','resourcesPath','292872PGlLzm','array','This\x20command\x20is\x20not\x20allowed\x20via\x20MCP','node.exe','platform','369aIMfmc','close','toString','stdout','true','tdx','4sxaIWX'];a73_0x1c07=function(){return _0x171d50;};return a73_0x1c07();}const DEFAULT_TIMEOUT_MS=0xf*0x3c*0x3e8;function getNodeBinDir(){const _0xd93f7c=a73_0x1f5be2,_0x5e1526=process[_0xd93f7c(0x1cf)];if(_0x5e1526){const _0x10ee23=join(_0x5e1526,_0xd93f7c(0x1c3)),_0x5207c7=process['platform']===_0xd93f7c(0x1cb)?_0xd93f7c(0x1b2):_0xd93f7c(0x1c3);if(existsSync(join(_0x10ee23,_0x5207c7)))return _0x10ee23;}return dirname(process[_0xd93f7c(0x1cc)]);}export async function executeTdxRun(_0x49ae41,_0x472dae){const _0x2e0f6a=a73_0x1f5be2,{args:_0x575532}=_0x49ae41;if(isBlockedCommand(_0x575532)){const _0x579865=getBlockedReason(_0x575532);return{'success':![],'output':'','error':_0x579865||_0x2e0f6a(0x1b1),'exitCode':0x1};}const _0x4d1e9f=['--json',_0x2e0f6a(0x1c5),..._0x575532],_0x3ddcd5=getNodeBinDir(),_0x55e24c=process[_0x2e0f6a(0x1b3)]==='win32'?';':':',_0x25d088=_0x472dae[_0x2e0f6a(0x1c7)]??process.env.PATH??'',_0x2008ca=''+_0x3ddcd5+_0x55e24c+_0x25d088;return new Promise(_0x237082=>{const _0x29d959=_0x2e0f6a,_0x2aee82=spawn(_0x29d959(0x1b9),_0x4d1e9f,{'env':{...process.env,..._0x472dae,'PATH':_0x2008ca,'CI':_0x29d959(0x1b8)},'stdio':['ignore','pipe','pipe']});let _0x59f6ba='',_0xf56b53='',_0x23d714=![];const _0x472910=setTimeout(()=>{const _0x44313d=_0x29d959;_0x23d714=!![],_0x2aee82[_0x44313d(0x1ce)]('SIGTERM');},DEFAULT_TIMEOUT_MS);_0x2aee82[_0x29d959(0x1b7)]['on'](_0x29d959(0x1bf),_0x95b9a2=>{const _0x5b4a04=_0x29d959;_0x59f6ba+=_0x95b9a2[_0x5b4a04(0x1b6)]();}),_0x2aee82[_0x29d959(0x1c4)]['on'](_0x29d959(0x1bf),_0x4765be=>{const _0x4c5eb5=_0x29d959;_0xf56b53+=_0x4765be[_0x4c5eb5(0x1b6)]();}),_0x2aee82['on'](_0x29d959(0x1bc),_0x5401b8=>{const _0x29e919=_0x29d959;clearTimeout(_0x472910),_0x237082({'success':![],'output':'','error':_0x29e919(0x1c6)+_0x5401b8['message'],'exitCode':0x1});}),_0x2aee82['on'](_0x29d959(0x1b5),_0x3a56e7=>{clearTimeout(_0x472910);if(_0x23d714){_0x237082({'success':![],'output':formatOutput(_0x59f6ba),'error':'Command\x20timed\x20out\x20after\x2015\x20minutes.\x20For\x20long-running\x20queries,\x20use\x20job\x20submit\x20instead.','exitCode':0x7c});return;}const _0x5d17d6=_0x3a56e7??0x1,_0x2d0361=_0x5d17d6===0x0,_0x5a2221=formatOutput(_0x59f6ba||_0xf56b53),_0x232362=!_0x2d0361&&_0xf56b53?formatOutput(_0xf56b53):undefined;_0x237082({'success':_0x2d0361,'output':_0x5a2221,'error':_0x232362,'exitCode':_0x5d17d6});});});}
@@ -1 +1 @@
1
- function a74_0x297e(_0x40c308,_0x13534d){_0x40c308=_0x40c308-0x13d;const _0x4c2dfe=a74_0x4c2d();let _0x297e6b=_0x4c2dfe[_0x40c308];return _0x297e6b;}const a74_0xbdd2e8=a74_0x297e;(function(_0x5a36f0,_0x39d20c){const _0x36119d=a74_0x297e,_0x5b8831=_0x5a36f0();while(!![]){try{const _0x4186d4=parseInt(_0x36119d(0x1f7))/0x1+-parseInt(_0x36119d(0x1f9))/0x2+-parseInt(_0x36119d(0x21f))/0x3+-parseInt(_0x36119d(0x221))/0x4+parseInt(_0x36119d(0x1b3))/0x5*(-parseInt(_0x36119d(0x16b))/0x6)+parseInt(_0x36119d(0x157))/0x7+parseInt(_0x36119d(0x1cb))/0x8*(parseInt(_0x36119d(0x1d9))/0x9);if(_0x4186d4===_0x39d20c)break;else _0x5b8831['push'](_0x5b8831['shift']());}catch(_0x24bdd6){_0x5b8831['push'](_0x5b8831['shift']());}}}(a74_0x4c2d,0x4a1a9));import{z}from'zod';function a74_0x4c2d(){const _0x2f0bd2=['cdp','length','tdx\x20use\x20--parent-segment\x20\x22My\x20PS\x22','records','2388ziKEiU','agent\x20pull','parent-segment\x20push','Chat\x20with\x20an\x20LLM\x20agent','Pull\x20segment\x20definition\x20to\x20YAML','Show\x20job\x20details','List\x20tables\x20in\x20a\x20database','List\x20all\x20databases','whoami','show','members','activations','tdx\x20parent-segment\x20pull\x20\x22My\x20Parent\x22\x20-o\x20parent.yaml','tdx\x20users','tdx\x20user\x20list','check','runs','includes','optional','keywords','switch','tdx\x20activations','api','tdx\x20segment\x20show\x20\x22My\x20Segment\x22','tables','orchestration','curl','stop','authentication','fields','conversation','tdx\x20chat\x20\x22Hello\x22','tdx\x20job\x20list','connection\x20list','Push\x20agent\x20definition\x20from\x20YAML','job','tdx\x20segment\x20push\x20segment.yaml','connection\x20schema','conversations','types','database\x20list','sessions','tdx\x20journey\x20push\x20journey.yaml','segment','View\x20workflow\x20logs','agent','info','clear','tdx\x20wf\x20sessions\x20--limit\x2010','Make\x20raw\x20HTTP\x20requests\x20to\x20TD\x20APIs','user','sync','customer','List\x20workflow\x20sessions','List\x20workflow\x20projects','job\x20list','contents','llm\x20projects','tdx\x20segment\x20fields','tdx\x20segment\x20sql\x20\x22My\x20Segment\x22','Utilities','tdx\x20sg\x20fields','tdx\x20databases','generate','List\x20data\x20connections','query','deploy','tdx\x20ps\x20pull','queries','journey\x20pull','workflow','string','1090YKVdcM','tdx\x20connection\x20schema\x20salesforce','Optional\x20filter\x20by\x20category','job\x20kill','List\x20segment\x20activations\x20(exports)','Data','output','segments','view','users','list','tdx\x20workflow\x20logs\x20<attempt_id>','tdx\x20segment\x20pull\x20\x22My\x20Segment\x22\x20-o\x20segment.yaml','tdx\x20segments\x20--recursive','toLowerCase','tdx\x20parent-segment\x20list','List\x20users\x20in\x20account','tdx\x20ps\x20preview\x20--limit\x2010','Clear\x20session\x20context','CDP','tdx\x20segments','tdx\x20auth\x20--profile\x20myprofile','destination','preview','8298712oqJmgB','use','tdx\x20connection\x20schema\x20google_ads','Push\x20segment\x20definition\x20from\x20YAML','Show\x20agent\x20details','run','workflow\x20logs','tdx\x20workflow\x20run\x20myproject/myworkflow','List\x20query\x20jobs','tdx\x20user','structure','tdx\x20jobs','http','category','9zlDgRN','sample','sort','tdx\x20api\x20-X\x20POST\x20--data\x20\x27{\x22query\x22:\x22SELECT\x201\x22}\x27\x20/v3/job/issue/hive/mydb','config','tdx\x20chats','journey\x20push','select','filter','debug','tdx\x20agents','tdx\x20show\x20mydb.users','List\x20configured\x20profiles','chats','tdx\x20tables\x20mydb.*','result','segment\x20show','schema','tdx\x20table\x20list','tdx\x20jobs\x20--limit\x2020','job\x20result','master','tdx\x20describe\x20mydb.events','enum','abort','object','tdx\x20databases\x20mydb*','digdag','connections','Pull\x20journey\x20definition\x20to\x20YAML','33617pYhHuR','segment\x20sql','339540dcRFBI','export','tdx\x20describe\x20mydb.users','context','tdx\x20chats\x20--limit\x2010','Show\x20connection\x20schema\x20for\x20activations','chat','trigger','connection','account','auth','projects','login','List\x20audience\x20segments','data','presto','workflow\x20sessions','segment\x20list','tdx\x20llm\x20models','validate','parent-segment\x20preview','Pull\x20parent\x20segment\x20definition\x20to\x20YAML','tdx\x20unset\x20--all','name','split','describe','ask','tdx\x20query\x20\x22SELECT\x20count(*)\x20FROM\x20mydb.events\x22','details','update','journeys','models','request','tdx\x20ps\x20validate','audience','tdx\x20profile\x20show\x20myprofile','tdx\x20show\x20mydb.users\x20--limit\x20100','tdx\x20parent-segment\x20push\x20parent.yaml','1557720YnOCqy','Execute\x20SQL\x20query\x20using\x20Trino','2296812aEOGXv','tdx\x20job\x20show\x2012345','Preview\x20parent\x20segment\x20data','upload','List\x20LLM\x20projects','sql','parent','Validate\x20parent\x20segment\x20configuration','execute','description','columns','tdx\x20parent-segment\x20validate\x20parent.yaml','List\x20customer\x20journeys','View\x20journey\x20details','tdx\x20workflow\x20sessions\x20myproject','llm\x20models','activation','Show\x20authentication\x20status','all','tdx\x20journey\x20list','raw','tdx\x20segment\x20list','status','tdx\x20api\x20/v3/database/list','llm','cancel','parent-segment\x20pull','workflow\x20run','pull','push','download','List\x20LLM\x20agents','tdx\x20query\x20\x22SELECT\x20*\x20FROM\x20mydb.users\x20LIMIT\x2010\x22','Set\x20session\x20context\x20(database,\x20parent\x20segment,\x20etc.)','Show\x20profile\x20details','database','set','reset','segment\x20push','tdx\x20unset\x20--database','score','Run\x20a\x20workflow','kill','tdx\x20job\x20result\x2012345','4077850rZBIvE','Context','create','tdx\x20journeys','map','profile','attributes','tdx\x20sg\x20push\x20segment.yaml\x20--dry-run','tdx\x20use\x20mydb','tdx\x20agent\x20show\x20myproject/myagent','tdx\x20api\x20/v1/audiences\x20--type\x20cdp','verify','tdx\x20journey\x20pull\x20\x22My\x20Journey\x22\x20-o\x20journey.yaml','examples','tdx\x20ps\x20push\x20--dry-run','import'];a74_0x4c2d=function(){return _0x2f0bd2;};return a74_0x4c2d();}const COMMANDS=[{'name':a74_0xbdd2e8(0x193),'description':a74_0xbdd2e8(0x172),'category':a74_0xbdd2e8(0x1b8),'keywords':[a74_0xbdd2e8(0x14e),'databases','db',a74_0xbdd2e8(0x1bd),a74_0xbdd2e8(0x174),a74_0xbdd2e8(0x13d)],'examples':['tdx\x20database\x20list',a74_0xbdd2e8(0x1a9),a74_0xbdd2e8(0x1f3)]},{'name':'table\x20list','description':a74_0xbdd2e8(0x171),'category':a74_0xbdd2e8(0x1b8),'keywords':['table',a74_0xbdd2e8(0x183),'list',a74_0xbdd2e8(0x174),a74_0xbdd2e8(0x1ea)],'examples':[a74_0xbdd2e8(0x1eb),a74_0xbdd2e8(0x1e7),'tdx\x20tables\x20--database\x20mydb']},{'name':a74_0xbdd2e8(0x174),'description':'Show\x20table\x20contents\x20(SELECT\x20*\x20with\x20limit)','category':a74_0xbdd2e8(0x1b8),'keywords':[a74_0xbdd2e8(0x174),a74_0xbdd2e8(0x1bb),'preview',a74_0xbdd2e8(0x207),a74_0xbdd2e8(0x1a3),'rows',a74_0xbdd2e8(0x16a)],'examples':[a74_0xbdd2e8(0x1e4),a74_0xbdd2e8(0x21d)]},{'name':a74_0xbdd2e8(0x212),'description':'Describe\x20table\x20schema\x20(columns,\x20types)','category':a74_0xbdd2e8(0x1b8),'keywords':['describe',a74_0xbdd2e8(0x1ea),'columns',a74_0xbdd2e8(0x192),a74_0xbdd2e8(0x1d5),'definition'],'examples':[a74_0xbdd2e8(0x1fb),a74_0xbdd2e8(0x1ef)]},{'name':a74_0xbdd2e8(0x1ac),'description':a74_0xbdd2e8(0x220),'category':a74_0xbdd2e8(0x1b8),'keywords':[a74_0xbdd2e8(0x1ac),a74_0xbdd2e8(0x226),a74_0xbdd2e8(0x1e0),'trino',a74_0xbdd2e8(0x229),a74_0xbdd2e8(0x1d0),a74_0xbdd2e8(0x208)],'examples':[a74_0xbdd2e8(0x14b),a74_0xbdd2e8(0x214)]},{'name':a74_0xbdd2e8(0x1a2),'description':a74_0xbdd2e8(0x1d3),'category':a74_0xbdd2e8(0x1b8),'keywords':['job','jobs','list','history',a74_0xbdd2e8(0x1af)],'examples':[a74_0xbdd2e8(0x18b),a74_0xbdd2e8(0x1d6),a74_0xbdd2e8(0x1ec)]},{'name':'job\x20show','description':a74_0xbdd2e8(0x170),'category':'Data','keywords':['job',a74_0xbdd2e8(0x174),a74_0xbdd2e8(0x215),a74_0xbdd2e8(0x141),a74_0xbdd2e8(0x199)],'examples':[a74_0xbdd2e8(0x222)]},{'name':a74_0xbdd2e8(0x1ed),'description':'Get\x20job\x20results','category':a74_0xbdd2e8(0x1b8),'keywords':[a74_0xbdd2e8(0x18e),a74_0xbdd2e8(0x1e8),'output',a74_0xbdd2e8(0x149)],'examples':[a74_0xbdd2e8(0x156)]},{'name':a74_0xbdd2e8(0x1b6),'description':'Kill\x20a\x20running\x20job','category':a74_0xbdd2e8(0x1b8),'keywords':[a74_0xbdd2e8(0x18e),a74_0xbdd2e8(0x155),a74_0xbdd2e8(0x144),a74_0xbdd2e8(0x186),a74_0xbdd2e8(0x1f1)],'examples':['tdx\x20job\x20kill\x2012345']},{'name':'workflow\x20projects','description':a74_0xbdd2e8(0x1a1),'category':a74_0xbdd2e8(0x1b8),'keywords':[a74_0xbdd2e8(0x1b1),a74_0xbdd2e8(0x204),a74_0xbdd2e8(0x1f4),'list'],'examples':['tdx\x20workflow\x20projects','tdx\x20wf\x20projects']},{'name':a74_0xbdd2e8(0x209),'description':a74_0xbdd2e8(0x1a0),'category':a74_0xbdd2e8(0x1b8),'keywords':[a74_0xbdd2e8(0x1b1),a74_0xbdd2e8(0x194),a74_0xbdd2e8(0x17b),'executions'],'examples':[a74_0xbdd2e8(0x22f),a74_0xbdd2e8(0x19b)]},{'name':a74_0xbdd2e8(0x1d1),'description':a74_0xbdd2e8(0x197),'category':a74_0xbdd2e8(0x1b8),'keywords':[a74_0xbdd2e8(0x1b1),'logs',a74_0xbdd2e8(0x1b9),a74_0xbdd2e8(0x1e2)],'examples':[a74_0xbdd2e8(0x1be)]},{'name':a74_0xbdd2e8(0x146),'description':a74_0xbdd2e8(0x154),'category':a74_0xbdd2e8(0x1b8),'keywords':['workflow','run',a74_0xbdd2e8(0x229),'start',a74_0xbdd2e8(0x200)],'examples':[a74_0xbdd2e8(0x1d2)]},{'name':a74_0xbdd2e8(0x20a),'description':a74_0xbdd2e8(0x206),'category':a74_0xbdd2e8(0x1c6),'keywords':[a74_0xbdd2e8(0x196),a74_0xbdd2e8(0x1ba),a74_0xbdd2e8(0x21b),'list',a74_0xbdd2e8(0x167)],'examples':[a74_0xbdd2e8(0x140),a74_0xbdd2e8(0x1c7),a74_0xbdd2e8(0x1c0)]},{'name':a74_0xbdd2e8(0x1e9),'description':'Show\x20segment\x20details','category':a74_0xbdd2e8(0x1c6),'keywords':[a74_0xbdd2e8(0x196),a74_0xbdd2e8(0x174),a74_0xbdd2e8(0x215),a74_0xbdd2e8(0x199),a74_0xbdd2e8(0x1bb)],'examples':[a74_0xbdd2e8(0x182)]},{'name':a74_0xbdd2e8(0x1f8),'description':'Generate\x20SQL\x20for\x20a\x20segment','category':a74_0xbdd2e8(0x1c6),'keywords':[a74_0xbdd2e8(0x196),a74_0xbdd2e8(0x226),'query',a74_0xbdd2e8(0x1aa)],'examples':[a74_0xbdd2e8(0x1a6)]},{'name':'segment\x20pull','description':a74_0xbdd2e8(0x16f),'category':a74_0xbdd2e8(0x1c6),'keywords':[a74_0xbdd2e8(0x196),'pull','download',a74_0xbdd2e8(0x1fa),'yaml'],'examples':[a74_0xbdd2e8(0x1bf)]},{'name':a74_0xbdd2e8(0x151),'description':a74_0xbdd2e8(0x1ce),'category':a74_0xbdd2e8(0x1c6),'keywords':[a74_0xbdd2e8(0x196),a74_0xbdd2e8(0x148),a74_0xbdd2e8(0x224),a74_0xbdd2e8(0x166),a74_0xbdd2e8(0x159),a74_0xbdd2e8(0x216)],'examples':[a74_0xbdd2e8(0x18f),a74_0xbdd2e8(0x15e)]},{'name':'segment\x20fields','description':'List\x20available\x20segment\x20fields','category':'CDP','keywords':[a74_0xbdd2e8(0x196),a74_0xbdd2e8(0x188),a74_0xbdd2e8(0x15d),a74_0xbdd2e8(0x22b),a74_0xbdd2e8(0x1ea)],'examples':[a74_0xbdd2e8(0x1a5),a74_0xbdd2e8(0x1a8)]},{'name':'parent-segment\x20list','description':'List\x20parent\x20segments\x20(customer\x20masters)','category':a74_0xbdd2e8(0x1c6),'keywords':[a74_0xbdd2e8(0x227),a74_0xbdd2e8(0x196),a74_0xbdd2e8(0x1ee),'list',a74_0xbdd2e8(0x19f)],'examples':[a74_0xbdd2e8(0x1c2),'tdx\x20ps\x20list']},{'name':a74_0xbdd2e8(0x145),'description':a74_0xbdd2e8(0x20e),'category':a74_0xbdd2e8(0x1c6),'keywords':[a74_0xbdd2e8(0x227),a74_0xbdd2e8(0x196),a74_0xbdd2e8(0x147),a74_0xbdd2e8(0x149),a74_0xbdd2e8(0x1fa)],'examples':[a74_0xbdd2e8(0x177),a74_0xbdd2e8(0x1ae)]},{'name':a74_0xbdd2e8(0x16d),'description':'Push\x20parent\x20segment\x20definition\x20from\x20YAML','category':a74_0xbdd2e8(0x1c6),'keywords':[a74_0xbdd2e8(0x227),a74_0xbdd2e8(0x196),a74_0xbdd2e8(0x148),a74_0xbdd2e8(0x224),a74_0xbdd2e8(0x159)],'examples':[a74_0xbdd2e8(0x21e),a74_0xbdd2e8(0x165)]},{'name':'parent-segment\x20validate','description':a74_0xbdd2e8(0x228),'category':a74_0xbdd2e8(0x1c6),'keywords':['parent',a74_0xbdd2e8(0x196),a74_0xbdd2e8(0x20c),a74_0xbdd2e8(0x17a),a74_0xbdd2e8(0x162)],'examples':[a74_0xbdd2e8(0x22c),a74_0xbdd2e8(0x21a)]},{'name':a74_0xbdd2e8(0x20d),'description':a74_0xbdd2e8(0x223),'category':'CDP','keywords':[a74_0xbdd2e8(0x227),'segment',a74_0xbdd2e8(0x1ca),a74_0xbdd2e8(0x1da),a74_0xbdd2e8(0x207)],'examples':['tdx\x20parent-segment\x20preview',a74_0xbdd2e8(0x1c4)]},{'name':'journey\x20list','description':a74_0xbdd2e8(0x22d),'category':a74_0xbdd2e8(0x1c6),'keywords':['journey',a74_0xbdd2e8(0x217),a74_0xbdd2e8(0x1bd),a74_0xbdd2e8(0x184)],'examples':[a74_0xbdd2e8(0x13e),a74_0xbdd2e8(0x15a)]},{'name':'journey\x20view','description':a74_0xbdd2e8(0x22e),'category':'CDP','keywords':['journey',a74_0xbdd2e8(0x1bb),a74_0xbdd2e8(0x174),a74_0xbdd2e8(0x215)],'examples':['tdx\x20journey\x20view\x20\x22My\x20Journey\x22']},{'name':a74_0xbdd2e8(0x1b0),'description':a74_0xbdd2e8(0x1f6),'category':'CDP','keywords':['journey',a74_0xbdd2e8(0x147),a74_0xbdd2e8(0x149),a74_0xbdd2e8(0x1fa)],'examples':[a74_0xbdd2e8(0x163)]},{'name':a74_0xbdd2e8(0x1df),'description':'Push\x20journey\x20definition\x20from\x20YAML','category':'CDP','keywords':['journey','push',a74_0xbdd2e8(0x224),'create'],'examples':[a74_0xbdd2e8(0x195)]},{'name':a74_0xbdd2e8(0x176),'description':a74_0xbdd2e8(0x1b7),'category':a74_0xbdd2e8(0x1c6),'keywords':[a74_0xbdd2e8(0x231),'activations',a74_0xbdd2e8(0x1fa),a74_0xbdd2e8(0x19e),a74_0xbdd2e8(0x1c9)],'examples':[a74_0xbdd2e8(0x180),'tdx\x20activations\x20--segment\x20\x22My\x20Segment\x22']},{'name':a74_0xbdd2e8(0x18c),'description':a74_0xbdd2e8(0x1ab),'category':a74_0xbdd2e8(0x1c6),'keywords':[a74_0xbdd2e8(0x201),a74_0xbdd2e8(0x1f5),a74_0xbdd2e8(0x1c9),a74_0xbdd2e8(0x1bd)],'examples':['tdx\x20connection\x20list']},{'name':a74_0xbdd2e8(0x190),'description':a74_0xbdd2e8(0x1fe),'category':a74_0xbdd2e8(0x1c6),'keywords':[a74_0xbdd2e8(0x201),a74_0xbdd2e8(0x1ea),a74_0xbdd2e8(0x1dd),'settings'],'examples':[a74_0xbdd2e8(0x1b4),a74_0xbdd2e8(0x1cd)]},{'name':'agent\x20list','description':a74_0xbdd2e8(0x14a),'category':'AI','keywords':['agent','agents',a74_0xbdd2e8(0x143),'ai',a74_0xbdd2e8(0x1bd)],'examples':['tdx\x20agent\x20list',a74_0xbdd2e8(0x1e3)]},{'name':'agent\x20show','description':a74_0xbdd2e8(0x1cf),'category':'AI','keywords':[a74_0xbdd2e8(0x198),a74_0xbdd2e8(0x174),a74_0xbdd2e8(0x215),a74_0xbdd2e8(0x199)],'examples':[a74_0xbdd2e8(0x160)]},{'name':a74_0xbdd2e8(0x16c),'description':'Pull\x20agent\x20definition\x20to\x20YAML','category':'AI','keywords':[a74_0xbdd2e8(0x198),'pull','download',a74_0xbdd2e8(0x1fa)],'examples':['tdx\x20agent\x20pull\x20myproject/myagent\x20-o\x20agent.yaml']},{'name':'agent\x20push','description':a74_0xbdd2e8(0x18d),'category':'AI','keywords':['agent','push',a74_0xbdd2e8(0x224),a74_0xbdd2e8(0x159),a74_0xbdd2e8(0x1ad)],'examples':['tdx\x20agent\x20push\x20agent.yaml']},{'name':a74_0xbdd2e8(0x1ff),'description':a74_0xbdd2e8(0x16e),'category':'AI','keywords':[a74_0xbdd2e8(0x1ff),a74_0xbdd2e8(0x143),'ai',a74_0xbdd2e8(0x189),a74_0xbdd2e8(0x213),'message'],'examples':[a74_0xbdd2e8(0x18a),'tdx\x20chat\x20--agent\x20myproject/myagent\x20\x22What\x20is\x20TD?\x22']},{'name':a74_0xbdd2e8(0x1e6),'description':'List\x20chat\x20sessions','category':'AI','keywords':[a74_0xbdd2e8(0x1ff),a74_0xbdd2e8(0x1e6),a74_0xbdd2e8(0x194),'history',a74_0xbdd2e8(0x191)],'examples':[a74_0xbdd2e8(0x1de),a74_0xbdd2e8(0x1fd)]},{'name':a74_0xbdd2e8(0x230),'description':'List\x20available\x20LLM\x20models','category':'AI','keywords':[a74_0xbdd2e8(0x143),a74_0xbdd2e8(0x218),'ai',a74_0xbdd2e8(0x1bd)],'examples':[a74_0xbdd2e8(0x20b)]},{'name':a74_0xbdd2e8(0x1a4),'description':a74_0xbdd2e8(0x225),'category':'AI','keywords':[a74_0xbdd2e8(0x143),a74_0xbdd2e8(0x204),'ai','list'],'examples':['tdx\x20llm\x20projects']},{'name':a74_0xbdd2e8(0x1cc),'description':a74_0xbdd2e8(0x14c),'category':a74_0xbdd2e8(0x158),'keywords':[a74_0xbdd2e8(0x1cc),a74_0xbdd2e8(0x14f),a74_0xbdd2e8(0x1fc),a74_0xbdd2e8(0x17f),a74_0xbdd2e8(0x1e0)],'examples':[a74_0xbdd2e8(0x15f),'tdx\x20use\x20--database\x20mydb',a74_0xbdd2e8(0x169)]},{'name':'unset','description':a74_0xbdd2e8(0x1c5),'category':a74_0xbdd2e8(0x158),'keywords':['unset',a74_0xbdd2e8(0x19a),a74_0xbdd2e8(0x150),a74_0xbdd2e8(0x1fc)],'examples':[a74_0xbdd2e8(0x152),a74_0xbdd2e8(0x20f)]},{'name':'profile\x20list','description':a74_0xbdd2e8(0x1e5),'category':a74_0xbdd2e8(0x158),'keywords':[a74_0xbdd2e8(0x15c),'profiles','list',a74_0xbdd2e8(0x1dd)],'examples':['tdx\x20profile\x20list','tdx\x20profiles']},{'name':'profile\x20show','description':a74_0xbdd2e8(0x14d),'category':a74_0xbdd2e8(0x158),'keywords':['profile',a74_0xbdd2e8(0x174),'details',a74_0xbdd2e8(0x1dd)],'examples':[a74_0xbdd2e8(0x21c)]},{'name':'auth','description':a74_0xbdd2e8(0x232),'category':'Context','keywords':[a74_0xbdd2e8(0x203),a74_0xbdd2e8(0x187),a74_0xbdd2e8(0x141),a74_0xbdd2e8(0x205)],'examples':['tdx\x20auth',a74_0xbdd2e8(0x1c8)]},{'name':a74_0xbdd2e8(0x19d),'description':'Show\x20current\x20user\x20info','category':'Context','keywords':['user','me',a74_0xbdd2e8(0x173),a74_0xbdd2e8(0x202)],'examples':[a74_0xbdd2e8(0x1d4)]},{'name':a74_0xbdd2e8(0x1bc),'description':a74_0xbdd2e8(0x1c3),'category':a74_0xbdd2e8(0x158),'keywords':[a74_0xbdd2e8(0x1bc),'list','team',a74_0xbdd2e8(0x175)],'examples':[a74_0xbdd2e8(0x178),a74_0xbdd2e8(0x179)]},{'name':a74_0xbdd2e8(0x181),'description':a74_0xbdd2e8(0x19c),'category':a74_0xbdd2e8(0x1a7),'keywords':[a74_0xbdd2e8(0x181),a74_0xbdd2e8(0x1d7),a74_0xbdd2e8(0x13f),a74_0xbdd2e8(0x219),a74_0xbdd2e8(0x185)],'examples':[a74_0xbdd2e8(0x142),a74_0xbdd2e8(0x161),a74_0xbdd2e8(0x1dc)]}];export const TdxSearchInputSchema=z[a74_0xbdd2e8(0x1f2)]({'query':z[a74_0xbdd2e8(0x1b2)]()[a74_0xbdd2e8(0x212)]('Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)'),'category':z[a74_0xbdd2e8(0x1f0)]([a74_0xbdd2e8(0x1b8),'CDP','AI',a74_0xbdd2e8(0x158),a74_0xbdd2e8(0x1a7)])[a74_0xbdd2e8(0x17d)]()[a74_0xbdd2e8(0x212)](a74_0xbdd2e8(0x1b5))});export function searchCommands(_0x1e05ac){const _0x2851ec=a74_0xbdd2e8,{query:_0x44e9c8,category:_0x1c9667}=_0x1e05ac,_0x5381f3=_0x44e9c8[_0x2851ec(0x1c1)](),_0x33982b=_0x5381f3[_0x2851ec(0x211)](/\s+/)[_0x2851ec(0x1e1)](_0x71ee20=>_0x71ee20[_0x2851ec(0x168)]>0x0);let _0x26a413=COMMANDS;_0x1c9667&&(_0x26a413=_0x26a413[_0x2851ec(0x1e1)](_0x145de7=>_0x145de7[_0x2851ec(0x1d8)]===_0x1c9667));const _0x4a3e9b=_0x26a413[_0x2851ec(0x15b)](_0x1839d1=>{const _0x3ed277=_0x2851ec;let _0x43f00f=0x0;_0x1839d1[_0x3ed277(0x210)][_0x3ed277(0x1c1)]()===_0x5381f3&&(_0x43f00f+=0x64);_0x1839d1[_0x3ed277(0x210)][_0x3ed277(0x1c1)]()[_0x3ed277(0x17c)](_0x5381f3)&&(_0x43f00f+=0x32);_0x1839d1[_0x3ed277(0x22a)]['toLowerCase']()['includes'](_0x5381f3)&&(_0x43f00f+=0x1e);for(const _0x4692ff of _0x33982b){for(const _0x53a103 of _0x1839d1[_0x3ed277(0x17e)]){if(_0x53a103===_0x4692ff)_0x43f00f+=0x14;else(_0x53a103['includes'](_0x4692ff)||_0x4692ff[_0x3ed277(0x17c)](_0x53a103))&&(_0x43f00f+=0xa);}_0x1839d1[_0x3ed277(0x210)]['toLowerCase']()[_0x3ed277(0x17c)](_0x4692ff)&&(_0x43f00f+=0xf),_0x1839d1[_0x3ed277(0x22a)]['toLowerCase']()[_0x3ed277(0x17c)](_0x4692ff)&&(_0x43f00f+=0x5);}return{'name':_0x1839d1[_0x3ed277(0x210)],'description':_0x1839d1[_0x3ed277(0x22a)],'category':_0x1839d1[_0x3ed277(0x1d8)],'examples':_0x1839d1[_0x3ed277(0x164)],'score':_0x43f00f};});return _0x4a3e9b[_0x2851ec(0x1e1)](_0x499d4f=>_0x499d4f[_0x2851ec(0x153)]>0x0)[_0x2851ec(0x1db)]((_0x42a714,_0xcff6b1)=>_0xcff6b1['score']-_0x42a714[_0x2851ec(0x153)])['slice'](0x0,0xa);}
1
+ const a74_0x44c9e6=a74_0x2e35;(function(_0x542bfd,_0x4e5b28){const _0x9192fd=a74_0x2e35,_0x356a62=_0x542bfd();while(!![]){try{const _0x212ba7=parseInt(_0x9192fd(0x16e))/0x1+parseInt(_0x9192fd(0x169))/0x2+parseInt(_0x9192fd(0x155))/0x3*(parseInt(_0x9192fd(0x10d))/0x4)+-parseInt(_0x9192fd(0x1e5))/0x5+parseInt(_0x9192fd(0x11e))/0x6+parseInt(_0x9192fd(0x137))/0x7+-parseInt(_0x9192fd(0x17a))/0x8;if(_0x212ba7===_0x4e5b28)break;else _0x356a62['push'](_0x356a62['shift']());}catch(_0x4ad4e1){_0x356a62['push'](_0x356a62['shift']());}}}(a74_0x2a27,0x554cf));import{z}from'zod';const COMMANDS=[{'name':a74_0x44c9e6(0x172),'description':a74_0x44c9e6(0x128),'category':a74_0x44c9e6(0x166),'keywords':[a74_0x44c9e6(0x195),a74_0x44c9e6(0x170),'db',a74_0x44c9e6(0x1ec),a74_0x44c9e6(0x143),a74_0x44c9e6(0x186)],'examples':[a74_0x44c9e6(0x15b),a74_0x44c9e6(0xfa),a74_0x44c9e6(0x161)]},{'name':a74_0x44c9e6(0x1db),'description':a74_0x44c9e6(0x17f),'category':'Data','keywords':[a74_0x44c9e6(0x1d0),a74_0x44c9e6(0x10e),a74_0x44c9e6(0x1ec),a74_0x44c9e6(0x143),a74_0x44c9e6(0x16c)],'examples':[a74_0x44c9e6(0x14c),a74_0x44c9e6(0x107),a74_0x44c9e6(0x1c4)]},{'name':'show','description':a74_0x44c9e6(0x1e8),'category':'Data','keywords':[a74_0x44c9e6(0x143),a74_0x44c9e6(0x19c),'preview',a74_0x44c9e6(0x147),a74_0x44c9e6(0x175),a74_0x44c9e6(0x150),a74_0x44c9e6(0x11a)],'examples':['tdx\x20show\x20mydb.users',a74_0x44c9e6(0x149)]},{'name':a74_0x44c9e6(0x18f),'description':'Describe\x20table\x20schema\x20(columns,\x20types)','category':'Data','keywords':[a74_0x44c9e6(0x18f),a74_0x44c9e6(0x16c),a74_0x44c9e6(0x1f1),a74_0x44c9e6(0x177),a74_0x44c9e6(0x1c9),a74_0x44c9e6(0x1d7)],'examples':['tdx\x20describe\x20mydb.users',a74_0x44c9e6(0x190)]},{'name':a74_0x44c9e6(0x1b9),'description':a74_0x44c9e6(0x11d),'category':a74_0x44c9e6(0x166),'keywords':[a74_0x44c9e6(0x1b9),a74_0x44c9e6(0x1d3),a74_0x44c9e6(0x1d8),a74_0x44c9e6(0x171),a74_0x44c9e6(0x1c8),a74_0x44c9e6(0x1b5),a74_0x44c9e6(0x168)],'examples':[a74_0x44c9e6(0x19d),'tdx\x20query\x20\x22SELECT\x20count(*)\x20FROM\x20mydb.events\x22']},{'name':a74_0x44c9e6(0x1dd),'description':'List\x20query\x20jobs','category':'Data','keywords':[a74_0x44c9e6(0x196),'jobs','list',a74_0x44c9e6(0x12a),a74_0x44c9e6(0x1c7)],'examples':[a74_0x44c9e6(0x1ca),a74_0x44c9e6(0x18b),a74_0x44c9e6(0x17c)]},{'name':'job\x20show','description':a74_0x44c9e6(0x1b3),'category':a74_0x44c9e6(0x166),'keywords':[a74_0x44c9e6(0x196),a74_0x44c9e6(0x143),a74_0x44c9e6(0x1d9),'status','info'],'examples':[a74_0x44c9e6(0x1cd)]},{'name':a74_0x44c9e6(0x1b0),'description':a74_0x44c9e6(0x10a),'category':a74_0x44c9e6(0x166),'keywords':['job',a74_0x44c9e6(0x188),a74_0x44c9e6(0x126),a74_0x44c9e6(0x18e)],'examples':['tdx\x20job\x20result\x2012345']},{'name':a74_0x44c9e6(0x19b),'description':a74_0x44c9e6(0x1c5),'category':'Data','keywords':[a74_0x44c9e6(0x196),'kill',a74_0x44c9e6(0x131),'stop','abort'],'examples':[a74_0x44c9e6(0x134)]},{'name':'workflow\x20projects','description':a74_0x44c9e6(0x1a7),'category':a74_0x44c9e6(0x166),'keywords':[a74_0x44c9e6(0x176),a74_0x44c9e6(0x103),a74_0x44c9e6(0x1ce),a74_0x44c9e6(0x1ec)],'examples':[a74_0x44c9e6(0x10f),a74_0x44c9e6(0x179)]},{'name':a74_0x44c9e6(0x1e0),'description':'List\x20workflow\x20sessions','category':a74_0x44c9e6(0x166),'keywords':[a74_0x44c9e6(0x176),a74_0x44c9e6(0x160),a74_0x44c9e6(0x112),a74_0x44c9e6(0x154)],'examples':[a74_0x44c9e6(0x14e),a74_0x44c9e6(0x192)]},{'name':a74_0x44c9e6(0x18c),'description':a74_0x44c9e6(0x1b1),'category':a74_0x44c9e6(0x166),'keywords':[a74_0x44c9e6(0x176),a74_0x44c9e6(0x157),a74_0x44c9e6(0x126),a74_0x44c9e6(0x1a0)],'examples':[a74_0x44c9e6(0x16d)]},{'name':a74_0x44c9e6(0x167),'description':a74_0x44c9e6(0x1de),'category':a74_0x44c9e6(0x166),'keywords':[a74_0x44c9e6(0x176),a74_0x44c9e6(0x1b5),a74_0x44c9e6(0x1c8),a74_0x44c9e6(0x159),a74_0x44c9e6(0x194)],'examples':[a74_0x44c9e6(0x1e2)]},{'name':'segment\x20list','description':'List\x20audience\x20segments','category':a74_0x44c9e6(0x165),'keywords':[a74_0x44c9e6(0xfb),a74_0x44c9e6(0x11f),a74_0x44c9e6(0x191),a74_0x44c9e6(0x1ec),a74_0x44c9e6(0x1a3)],'examples':['tdx\x20segment\x20list','tdx\x20segments',a74_0x44c9e6(0x1eb)]},{'name':a74_0x44c9e6(0x111),'description':a74_0x44c9e6(0x180),'category':a74_0x44c9e6(0x165),'keywords':['segment',a74_0x44c9e6(0x143),a74_0x44c9e6(0x1d9),a74_0x44c9e6(0x10b),'view'],'examples':[a74_0x44c9e6(0x12f)]},{'name':'segment\x20sql','description':a74_0x44c9e6(0x1d5),'category':a74_0x44c9e6(0x165),'keywords':[a74_0x44c9e6(0xfb),a74_0x44c9e6(0x1d3),'query',a74_0x44c9e6(0x13a)],'examples':['tdx\x20segment\x20sql\x20\x22My\x20Segment\x22']},{'name':'segment\x20pull','description':'Pull\x20segment\x20definition\x20to\x20YAML','category':'CDP','keywords':['segment',a74_0x44c9e6(0x1c6),a74_0x44c9e6(0x18e),a74_0x44c9e6(0x18a),'yaml'],'examples':[a74_0x44c9e6(0x1ae)]},{'name':a74_0x44c9e6(0x199),'description':a74_0x44c9e6(0x1d4),'category':a74_0x44c9e6(0x165),'keywords':[a74_0x44c9e6(0xfb),'push',a74_0x44c9e6(0x1ea),a74_0x44c9e6(0xfc),a74_0x44c9e6(0x1a9),a74_0x44c9e6(0x1cf)],'examples':[a74_0x44c9e6(0x141),a74_0x44c9e6(0x109)]},{'name':'segment\x20fields','description':a74_0x44c9e6(0x185),'category':a74_0x44c9e6(0x165),'keywords':[a74_0x44c9e6(0xfb),'fields',a74_0x44c9e6(0x1da),a74_0x44c9e6(0x1f1),a74_0x44c9e6(0x16c)],'examples':[a74_0x44c9e6(0x1ef),a74_0x44c9e6(0x19f)]},{'name':'parent-segment\x20list','description':'List\x20parent\x20segments\x20(customer\x20masters)','category':a74_0x44c9e6(0x165),'keywords':[a74_0x44c9e6(0x1a4),a74_0x44c9e6(0xfb),a74_0x44c9e6(0x15d),'list','customer'],'examples':[a74_0x44c9e6(0x152),a74_0x44c9e6(0x162)]},{'name':a74_0x44c9e6(0x12c),'description':a74_0x44c9e6(0x1aa),'category':a74_0x44c9e6(0x165),'keywords':[a74_0x44c9e6(0x1a4),'segment',a74_0x44c9e6(0x1c6),'download',a74_0x44c9e6(0x18a)],'examples':[a74_0x44c9e6(0x1c3),'tdx\x20ps\x20pull']},{'name':'parent-segment\x20push','description':a74_0x44c9e6(0x132),'category':a74_0x44c9e6(0x165),'keywords':[a74_0x44c9e6(0x1a4),a74_0x44c9e6(0xfb),'push',a74_0x44c9e6(0x1ea),'create'],'examples':[a74_0x44c9e6(0x104),'tdx\x20ps\x20push\x20--dry-run']},{'name':a74_0x44c9e6(0x108),'description':'Validate\x20parent\x20segment\x20configuration','category':'CDP','keywords':[a74_0x44c9e6(0x1a4),a74_0x44c9e6(0xfb),a74_0x44c9e6(0x15e),a74_0x44c9e6(0x1a2),a74_0x44c9e6(0x118)],'examples':[a74_0x44c9e6(0x1a5),a74_0x44c9e6(0x1a6)]},{'name':a74_0x44c9e6(0x1d1),'description':a74_0x44c9e6(0x125),'category':a74_0x44c9e6(0x165),'keywords':[a74_0x44c9e6(0x1a4),'segment',a74_0x44c9e6(0x136),a74_0x44c9e6(0x158),a74_0x44c9e6(0x147)],'examples':['tdx\x20parent-segment\x20preview',a74_0x44c9e6(0x151)]},{'name':'journey\x20list','description':'List\x20customer\x20journeys','category':a74_0x44c9e6(0x165),'keywords':[a74_0x44c9e6(0x173),a74_0x44c9e6(0x116),a74_0x44c9e6(0x1ec),a74_0x44c9e6(0x12b)],'examples':[a74_0x44c9e6(0x130),'tdx\x20journeys']},{'name':'journey\x20view','description':a74_0x44c9e6(0xfe),'category':'CDP','keywords':[a74_0x44c9e6(0x173),a74_0x44c9e6(0x19c),'show','details'],'examples':[a74_0x44c9e6(0x1b8)]},{'name':a74_0x44c9e6(0x1a8),'description':a74_0x44c9e6(0x1e7),'category':a74_0x44c9e6(0x165),'keywords':['journey',a74_0x44c9e6(0x1c6),a74_0x44c9e6(0x18e),a74_0x44c9e6(0x18a)],'examples':['tdx\x20journey\x20pull\x20\x22My\x20Journey\x22\x20-o\x20journey.yaml']},{'name':'journey\x20push','description':a74_0x44c9e6(0x102),'category':a74_0x44c9e6(0x165),'keywords':[a74_0x44c9e6(0x173),a74_0x44c9e6(0x1ab),'upload','create'],'examples':[a74_0x44c9e6(0x14b)]},{'name':a74_0x44c9e6(0x164),'description':a74_0x44c9e6(0x1e4),'category':a74_0x44c9e6(0x165),'keywords':[a74_0x44c9e6(0x16b),a74_0x44c9e6(0x164),a74_0x44c9e6(0x18a),a74_0x44c9e6(0x148),a74_0x44c9e6(0x135)],'examples':[a74_0x44c9e6(0x1ee),'tdx\x20activations\x20--segment\x20\x22My\x20Segment\x22']},{'name':a74_0x44c9e6(0x15c),'description':'List\x20data\x20connections','category':'CDP','keywords':[a74_0x44c9e6(0x100),a74_0x44c9e6(0x153),a74_0x44c9e6(0x135),a74_0x44c9e6(0x1ec)],'examples':['tdx\x20connection\x20list']},{'name':'connection\x20schema','description':a74_0x44c9e6(0x138),'category':'CDP','keywords':[a74_0x44c9e6(0x100),a74_0x44c9e6(0x16c),a74_0x44c9e6(0x105),a74_0x44c9e6(0x144)],'examples':[a74_0x44c9e6(0x11b),a74_0x44c9e6(0x14d)]},{'name':a74_0x44c9e6(0x142),'description':'List\x20LLM\x20agents','category':'AI','keywords':['agent',a74_0x44c9e6(0x1ac),'llm','ai',a74_0x44c9e6(0x1ec)],'examples':[a74_0x44c9e6(0x1c1),a74_0x44c9e6(0x1af)]},{'name':a74_0x44c9e6(0x114),'description':a74_0x44c9e6(0x15f),'category':'AI','keywords':[a74_0x44c9e6(0x1e1),a74_0x44c9e6(0x143),a74_0x44c9e6(0x1d9),'info'],'examples':[a74_0x44c9e6(0x17e)]},{'name':a74_0x44c9e6(0x1a1),'description':'Pull\x20agent\x20definition\x20to\x20YAML','category':'AI','keywords':[a74_0x44c9e6(0x1e1),a74_0x44c9e6(0x1c6),a74_0x44c9e6(0x18e),a74_0x44c9e6(0x18a)],'examples':['tdx\x20agent\x20pull\x20myproject/myagent\x20-o\x20agent.yaml']},{'name':a74_0x44c9e6(0x156),'description':'Push\x20agent\x20definition\x20from\x20YAML','category':'AI','keywords':[a74_0x44c9e6(0x1e1),'push',a74_0x44c9e6(0x1ea),a74_0x44c9e6(0x1a9),'deploy'],'examples':[a74_0x44c9e6(0x140)]},{'name':a74_0x44c9e6(0x113),'description':a74_0x44c9e6(0x122),'category':'AI','keywords':['chat',a74_0x44c9e6(0x13c),'ai','conversation',a74_0x44c9e6(0x133),'message'],'examples':[a74_0x44c9e6(0x13f),a74_0x44c9e6(0x178)]},{'name':a74_0x44c9e6(0x187),'description':a74_0x44c9e6(0x1e9),'category':'AI','keywords':['chat',a74_0x44c9e6(0x187),a74_0x44c9e6(0x160),a74_0x44c9e6(0x12a),a74_0x44c9e6(0x16f)],'examples':[a74_0x44c9e6(0x1cb),'tdx\x20chats\x20--limit\x2010']},{'name':a74_0x44c9e6(0x184),'description':a74_0x44c9e6(0x145),'category':'AI','keywords':['llm',a74_0x44c9e6(0x1d6),'ai',a74_0x44c9e6(0x1ec)],'examples':[a74_0x44c9e6(0x120)]},{'name':a74_0x44c9e6(0x123),'description':a74_0x44c9e6(0xfd),'category':'AI','keywords':[a74_0x44c9e6(0x13c),a74_0x44c9e6(0x103),'ai','list'],'examples':['tdx\x20llm\x20projects']},{'name':a74_0x44c9e6(0x1b4),'description':a74_0x44c9e6(0x12d),'category':a74_0x44c9e6(0x19e),'keywords':[a74_0x44c9e6(0x1b4),a74_0x44c9e6(0x183),a74_0x44c9e6(0x1b2),a74_0x44c9e6(0x12e),'select'],'examples':['tdx\x20use\x20mydb',a74_0x44c9e6(0x115),a74_0x44c9e6(0x119)]},{'name':a74_0x44c9e6(0x106),'description':a74_0x44c9e6(0x127),'category':a74_0x44c9e6(0x19e),'keywords':['unset',a74_0x44c9e6(0x14f),a74_0x44c9e6(0x139),a74_0x44c9e6(0x1b2)],'examples':[a74_0x44c9e6(0x110),'tdx\x20unset\x20--all']},{'name':a74_0x44c9e6(0x1ed),'description':a74_0x44c9e6(0x197),'category':'Context','keywords':[a74_0x44c9e6(0x1b6),a74_0x44c9e6(0x1df),'list','config'],'examples':[a74_0x44c9e6(0x1bf),a74_0x44c9e6(0x1e6)]},{'name':a74_0x44c9e6(0x14a),'description':a74_0x44c9e6(0x19a),'category':a74_0x44c9e6(0x19e),'keywords':[a74_0x44c9e6(0x1b6),a74_0x44c9e6(0x143),a74_0x44c9e6(0x1d9),a74_0x44c9e6(0x105)],'examples':[a74_0x44c9e6(0x17b)]},{'name':'auth','description':a74_0x44c9e6(0x10c),'category':a74_0x44c9e6(0x19e),'keywords':[a74_0x44c9e6(0x18d),'authentication',a74_0x44c9e6(0x11c),'login'],'examples':[a74_0x44c9e6(0x198),'tdx\x20auth\x20--profile\x20myprofile']},{'name':a74_0x44c9e6(0x1bb),'description':a74_0x44c9e6(0x1ad),'category':a74_0x44c9e6(0x19e),'keywords':[a74_0x44c9e6(0x1bb),'me',a74_0x44c9e6(0x1cc),a74_0x44c9e6(0x163)],'examples':[a74_0x44c9e6(0x1dc)]},{'name':a74_0x44c9e6(0x189),'description':a74_0x44c9e6(0x1c2),'category':a74_0x44c9e6(0x19e),'keywords':[a74_0x44c9e6(0x189),a74_0x44c9e6(0x1ec),a74_0x44c9e6(0x182),a74_0x44c9e6(0x1f0)],'examples':[a74_0x44c9e6(0x101),a74_0x44c9e6(0x181)]},{'name':a74_0x44c9e6(0x174),'description':a74_0x44c9e6(0x1e3),'category':'Utilities','keywords':[a74_0x44c9e6(0x174),'http',a74_0x44c9e6(0x17d),'request','curl'],'examples':[a74_0x44c9e6(0x117),'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_0x44c9e6(0x1d2)]({'query':z[a74_0x44c9e6(0x13d)]()[a74_0x44c9e6(0x18f)](a74_0x44c9e6(0x15a)),'category':z[a74_0x44c9e6(0x146)]([a74_0x44c9e6(0x166),a74_0x44c9e6(0x165),'AI',a74_0x44c9e6(0x19e),a74_0x44c9e6(0x1bd)])[a74_0x44c9e6(0x13b)]()[a74_0x44c9e6(0x18f)](a74_0x44c9e6(0x193))});function a74_0x2e35(_0x2ce803,_0x147776){_0x2ce803=_0x2ce803-0xfa;const _0x2a27ac=a74_0x2a27();let _0x2e357a=_0x2a27ac[_0x2ce803];return _0x2e357a;}function a74_0x2a27(){const _0x4782a1=['profile','keywords','tdx\x20journey\x20view\x20\x22My\x20Journey\x22','query','slice','user','description','Utilities','name','tdx\x20profile\x20list','toLowerCase','tdx\x20agent\x20list','List\x20users\x20in\x20account','tdx\x20parent-segment\x20pull\x20\x22My\x20Parent\x22\x20-o\x20parent.yaml','tdx\x20tables\x20--database\x20mydb','Kill\x20a\x20running\x20job','pull','queries','execute','structure','tdx\x20job\x20list','tdx\x20chats','whoami','tdx\x20job\x20show\x2012345','digdag','update','table','parent-segment\x20preview','object','sql','Push\x20segment\x20definition\x20from\x20YAML','Generate\x20SQL\x20for\x20a\x20segment','models','definition','select','details','attributes','table\x20list','tdx\x20user','job\x20list','Run\x20a\x20workflow','profiles','workflow\x20sessions','agent','tdx\x20workflow\x20run\x20myproject/myworkflow','Make\x20raw\x20HTTP\x20requests\x20to\x20TD\x20APIs','List\x20segment\x20activations\x20(exports)','997750ngcPiI','tdx\x20profiles','Pull\x20journey\x20definition\x20to\x20YAML','Show\x20table\x20contents\x20(SELECT\x20*\x20with\x20limit)','List\x20chat\x20sessions','upload','tdx\x20segments\x20--recursive','list','profile\x20list','tdx\x20activations','tdx\x20segment\x20fields','members','columns','tdx\x20databases','segment','import','List\x20LLM\x20projects','View\x20journey\x20details','map','connection','tdx\x20users','Push\x20journey\x20definition\x20from\x20YAML','projects','tdx\x20parent-segment\x20push\x20parent.yaml','config','unset','tdx\x20tables\x20mydb.*','parent-segment\x20validate','tdx\x20sg\x20push\x20segment.yaml\x20--dry-run','Get\x20job\x20results','info','Show\x20authentication\x20status','59772eYLBnO','tables','tdx\x20workflow\x20projects','tdx\x20unset\x20--database','segment\x20show','runs','chat','agent\x20show','tdx\x20use\x20--database\x20mydb','journeys','tdx\x20api\x20/v3/database/list','verify','tdx\x20use\x20--parent-segment\x20\x22My\x20PS\x22','records','tdx\x20connection\x20schema\x20salesforce','status','Execute\x20SQL\x20query\x20using\x20Trino','1313436nOfaIa','segments','tdx\x20llm\x20models','sort','Chat\x20with\x20an\x20LLM\x20agent','llm\x20projects','includes','Preview\x20parent\x20segment\x20data','output','Clear\x20session\x20context','List\x20all\x20databases','split','history','orchestration','parent-segment\x20pull','Set\x20session\x20context\x20(database,\x20parent\x20segment,\x20etc.)','switch','tdx\x20segment\x20show\x20\x22My\x20Segment\x22','tdx\x20journey\x20list','cancel','Push\x20parent\x20segment\x20definition\x20from\x20YAML','ask','tdx\x20job\x20kill\x2012345','destination','preview','1134070kRpdEf','Show\x20connection\x20schema\x20for\x20activations','reset','generate','optional','llm','string','category','tdx\x20chat\x20\x22Hello\x22','tdx\x20agent\x20push\x20agent.yaml','tdx\x20segment\x20push\x20segment.yaml','agent\x20list','show','settings','List\x20available\x20LLM\x20models','enum','data','sync','tdx\x20show\x20mydb.users\x20--limit\x20100','profile\x20show','tdx\x20journey\x20push\x20journey.yaml','tdx\x20table\x20list','tdx\x20connection\x20schema\x20google_ads','tdx\x20workflow\x20sessions\x20myproject','clear','rows','tdx\x20ps\x20preview\x20--limit\x2010','tdx\x20parent-segment\x20list','connections','executions','129MysFNq','agent\x20push','logs','sample','start','Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)','tdx\x20database\x20list','connection\x20list','master','validate','Show\x20agent\x20details','sessions','tdx\x20databases\x20mydb*','tdx\x20ps\x20list','account','activations','CDP','Data','workflow\x20run','presto','243430hkSGus','filter','activation','schema','tdx\x20workflow\x20logs\x20<attempt_id>','16957WTVKdN','conversations','databases','trino','database\x20list','journey','api','contents','workflow','types','tdx\x20chat\x20--agent\x20myproject/myagent\x20\x22What\x20is\x20TD?\x22','tdx\x20wf\x20projects','4905568bepvIS','tdx\x20profile\x20show\x20myprofile','tdx\x20jobs\x20--limit\x2020','raw','tdx\x20agent\x20show\x20myproject/myagent','List\x20tables\x20in\x20a\x20database','Show\x20segment\x20details','tdx\x20user\x20list','team','set','llm\x20models','List\x20available\x20segment\x20fields','all','chats','result','users','export','tdx\x20jobs','workflow\x20logs','auth','download','describe','tdx\x20describe\x20mydb.events','audience','tdx\x20wf\x20sessions\x20--limit\x2010','Optional\x20filter\x20by\x20category','trigger','database','job','List\x20configured\x20profiles','tdx\x20auth','segment\x20push','Show\x20profile\x20details','job\x20kill','view','tdx\x20query\x20\x22SELECT\x20*\x20FROM\x20mydb.users\x20LIMIT\x2010\x22','Context','tdx\x20sg\x20fields','debug','agent\x20pull','check','cdp','parent','tdx\x20parent-segment\x20validate\x20parent.yaml','tdx\x20ps\x20validate','List\x20workflow\x20projects','journey\x20pull','create','Pull\x20parent\x20segment\x20definition\x20to\x20YAML','push','agents','Show\x20current\x20user\x20info','tdx\x20segment\x20pull\x20\x22My\x20Segment\x22\x20-o\x20segment.yaml','tdx\x20agents','job\x20result','View\x20workflow\x20logs','context','Show\x20job\x20details','use','run'];a74_0x2a27=function(){return _0x4782a1;};return a74_0x2a27();}export function searchCommands(_0x50a3b4){const _0x29b309=a74_0x44c9e6,{query:_0x51c2f2,category:_0x496e04}=_0x50a3b4,_0x212d7b=_0x51c2f2[_0x29b309(0x1c0)](),_0x18d25e=_0x212d7b[_0x29b309(0x129)](/\s+/)[_0x29b309(0x16a)](_0x1b6607=>_0x1b6607['length']>0x0);let _0x44246f=COMMANDS;_0x496e04&&(_0x44246f=_0x44246f[_0x29b309(0x16a)](_0xeae1f5=>_0xeae1f5[_0x29b309(0x13e)]===_0x496e04));const _0x874491=_0x44246f[_0x29b309(0xff)](_0x89a457=>{const _0x3b2037=_0x29b309;let _0x406c72=0x0;_0x89a457[_0x3b2037(0x1be)][_0x3b2037(0x1c0)]()===_0x212d7b&&(_0x406c72+=0x64);_0x89a457[_0x3b2037(0x1be)][_0x3b2037(0x1c0)]()[_0x3b2037(0x124)](_0x212d7b)&&(_0x406c72+=0x32);_0x89a457[_0x3b2037(0x1bc)][_0x3b2037(0x1c0)]()['includes'](_0x212d7b)&&(_0x406c72+=0x1e);for(const _0x5a65aa of _0x18d25e){for(const _0xdd8c7c of _0x89a457[_0x3b2037(0x1b7)]){if(_0xdd8c7c===_0x5a65aa)_0x406c72+=0x14;else(_0xdd8c7c[_0x3b2037(0x124)](_0x5a65aa)||_0x5a65aa[_0x3b2037(0x124)](_0xdd8c7c))&&(_0x406c72+=0xa);}_0x89a457['name']['toLowerCase']()[_0x3b2037(0x124)](_0x5a65aa)&&(_0x406c72+=0xf),_0x89a457[_0x3b2037(0x1bc)][_0x3b2037(0x1c0)]()[_0x3b2037(0x124)](_0x5a65aa)&&(_0x406c72+=0x5);}return{'name':_0x89a457[_0x3b2037(0x1be)],'description':_0x89a457[_0x3b2037(0x1bc)],'category':_0x89a457[_0x3b2037(0x13e)],'examples':_0x89a457['examples'],'score':_0x406c72};});return _0x874491['filter'](_0x276d5d=>_0x276d5d['score']>0x0)[_0x29b309(0x121)]((_0x31a917,_0x338cfc)=>_0x338cfc['score']-_0x31a917['score'])[_0x29b309(0x1ba)](0x0,0xa);}
@@ -1 +1 @@
1
- function a75_0x1e5f(_0x22137e,_0x41a14d){_0x22137e=_0x22137e-0x1de;const _0x35fc46=a75_0x35fc();let _0x1e5ff8=_0x35fc46[_0x22137e];return _0x1e5ff8;}const a75_0x371c1d=a75_0x1e5f;(function(_0x2ab606,_0x5792da){const _0x167f71=a75_0x1e5f,_0x4de1cf=_0x2ab606();while(!![]){try{const _0x3f30e0=-parseInt(_0x167f71(0x1f1))/0x1+-parseInt(_0x167f71(0x208))/0x2+parseInt(_0x167f71(0x1f9))/0x3*(-parseInt(_0x167f71(0x209))/0x4)+-parseInt(_0x167f71(0x1df))/0x5*(-parseInt(_0x167f71(0x1e4))/0x6)+parseInt(_0x167f71(0x1e8))/0x7+-parseInt(_0x167f71(0x1fd))/0x8+parseInt(_0x167f71(0x1e0))/0x9;if(_0x3f30e0===_0x5792da)break;else _0x4de1cf['push'](_0x4de1cf['shift']());}catch(_0x898c2e){_0x4de1cf['push'](_0x4de1cf['shift']());}}}(a75_0x35fc,0x3a7bd));function a75_0x35fc(){const _0x4b3fad=['enum','object','createDocument','133674huhbgE','item','high','guide','952518iQpXPO','replace','Markdown\x20body\x20content','proposed','low','done','Document\x20kind\x20(default:\x20\x22item\x22)','todo','tags','166786fpAEGR','void','status','accepted','superseded','GitHub\x20PR/issue\x20reference\x20(owner/repo#number)','design_review','note','2274UTRbsA','describe','Item\x20title\x20(required)','Priority\x20level','1748600WGiZok','critical','JIRA\x20ticket\x20reference\x20(org/TICKET-ID)','deprecated','planning','kind','body','github','array','fileName','priority','736994MCpTHO','1724tAexgr','title','string','Initial\x20status\x20(default:\x20\x22todo\x22\x20for\x20items,\x20\x22proposed\x22\x20for\x20guides)','Template\x20name\x20from\x20templates/\x20folder','review','backlog','optional','filePath','85EhdQuN','7247592VLwVCV'];a75_0x35fc=function(){return _0x4b3fad;};return a75_0x35fc();}import{z}from'zod';import{WorkspaceSDK,resolveWorkspacePath}from'../../sdk/workspace/index.js';const TASK_STATUSES=[a75_0x371c1d(0x20f),a75_0x371c1d(0x1ef),a75_0x371c1d(0x201),a75_0x371c1d(0x1f7),'in_progress',a75_0x371c1d(0x20e),a75_0x371c1d(0x1ed),a75_0x371c1d(0x1f2)],GUIDE_STATUSES=[a75_0x371c1d(0x1eb),a75_0x371c1d(0x1f4),a75_0x371c1d(0x200),a75_0x371c1d(0x1f5)];export const WorkCreateItemInputSchema=z[a75_0x371c1d(0x1e2)]({'title':z[a75_0x371c1d(0x20b)]()[a75_0x371c1d(0x1fa)](a75_0x371c1d(0x1fb)),'kind':z[a75_0x371c1d(0x1e1)]([a75_0x371c1d(0x1e5),a75_0x371c1d(0x1f8),a75_0x371c1d(0x1e7),'reference'])['optional']()[a75_0x371c1d(0x1fa)](a75_0x371c1d(0x1ee)),'status':z[a75_0x371c1d(0x1e1)]([...TASK_STATUSES,...GUIDE_STATUSES])[a75_0x371c1d(0x210)]()['describe'](a75_0x371c1d(0x20c)),'tags':z[a75_0x371c1d(0x205)](z['string']())[a75_0x371c1d(0x210)]()[a75_0x371c1d(0x1fa)]('Tags\x20for\x20the\x20item'),'priority':z[a75_0x371c1d(0x1e1)]([a75_0x371c1d(0x1fe),a75_0x371c1d(0x1e6),'medium',a75_0x371c1d(0x1ec)])['optional']()[a75_0x371c1d(0x1fa)](a75_0x371c1d(0x1fc)),'body':z[a75_0x371c1d(0x20b)]()['optional']()[a75_0x371c1d(0x1fa)](a75_0x371c1d(0x1ea)),'template':z['string']()[a75_0x371c1d(0x210)]()['describe'](a75_0x371c1d(0x20d)),'github':z[a75_0x371c1d(0x20b)]()[a75_0x371c1d(0x210)]()['describe'](a75_0x371c1d(0x1f6)),'jira':z['string']()[a75_0x371c1d(0x210)]()[a75_0x371c1d(0x1fa)](a75_0x371c1d(0x1ff))});export function executeWorkCreateItem(_0x23e55c){const _0x5b9709=a75_0x371c1d,_0x10e7b9=resolveWorkspacePath();if(!_0x10e7b9)return{'success':![],'error':'No\x20workspace\x20found.\x20Run\x20`tdx\x20work\x20init`\x20to\x20create\x20one.'};const _0x10c9ed=new WorkspaceSDK(_0x10e7b9),_0x32734f={'title':_0x23e55c[_0x5b9709(0x20a)],'kind':_0x23e55c[_0x5b9709(0x202)]||'item','status':_0x23e55c[_0x5b9709(0x1f3)],'tags':_0x23e55c[_0x5b9709(0x1f0)],'priority':_0x23e55c[_0x5b9709(0x207)],'body':_0x23e55c[_0x5b9709(0x203)],'template':_0x23e55c['template'],'github':_0x23e55c[_0x5b9709(0x204)],'jira':_0x23e55c['jira']},_0x44f146=_0x10c9ed[_0x5b9709(0x1e3)](_0x32734f);return{'success':!![],'path':_0x44f146[_0x5b9709(0x1de)],'slug':_0x44f146[_0x5b9709(0x206)][_0x5b9709(0x1e9)](/\.md$/,'')};}
1
+ const a75_0x149064=a75_0x17cc;(function(_0xf7d6e3,_0x407e38){const _0x52b0e7=a75_0x17cc,_0x5955ce=_0xf7d6e3();while(!![]){try{const _0x2c9cb6=parseInt(_0x52b0e7(0x14f))/0x1*(-parseInt(_0x52b0e7(0x14e))/0x2)+parseInt(_0x52b0e7(0x13b))/0x3*(-parseInt(_0x52b0e7(0x136))/0x4)+parseInt(_0x52b0e7(0x157))/0x5+-parseInt(_0x52b0e7(0x12b))/0x6+-parseInt(_0x52b0e7(0x14c))/0x7*(-parseInt(_0x52b0e7(0x150))/0x8)+parseInt(_0x52b0e7(0x147))/0x9*(-parseInt(_0x52b0e7(0x143))/0xa)+parseInt(_0x52b0e7(0x146))/0xb*(parseInt(_0x52b0e7(0x152))/0xc);if(_0x2c9cb6===_0x407e38)break;else _0x5955ce['push'](_0x5955ce['shift']());}catch(_0x52bf2d){_0x5955ce['push'](_0x5955ce['shift']());}}}(a75_0x5ab5,0x9df12));function a75_0x5ab5(){const _0x1cfa85=['review','priority','replace','1098430sGEoXQ','createDocument','JIRA\x20ticket\x20reference\x20(org/TICKET-ID)','optional','Item\x20title\x20(required)','deprecated','superseded','GitHub\x20PR/issue\x20reference\x20(owner/repo#number)','status','Markdown\x20body\x20content','2714310gmAMvI','describe','template','item','done','body','medium','high','github','reference','Priority\x20level','4530056nKuCHf','note','design_review','Document\x20kind\x20(default:\x20\x22item\x22)','array','3Tdiqvu','in_progress','enum','No\x20workspace\x20found.\x20Run\x20`tdx\x20work\x20init`\x20to\x20create\x20one.','guide','critical','string','void','80unoPOm','low','accepted','1397jOSNQu','1233774xDMxqU','backlog','planning','fileName','Initial\x20status\x20(default:\x20\x22todo\x22\x20for\x20items,\x20\x22proposed\x22\x20for\x20guides)','7xWSIrn','jira','44BfDiOH','21871zFBvsX','283120PbjDLn','title','335868mnjGGc','Template\x20name\x20from\x20templates/\x20folder'];a75_0x5ab5=function(){return _0x1cfa85;};return a75_0x5ab5();}function a75_0x17cc(_0x1c0c74,_0xcb464b){_0x1c0c74=_0x1c0c74-0x124;const _0x5ab522=a75_0x5ab5();let _0x17cc3a=_0x5ab522[_0x1c0c74];return _0x17cc3a;}import{z}from'zod';import{WorkspaceSDK,resolveWorkspacePath}from'../../sdk/workspace/index.js';const TASK_STATUSES=[a75_0x149064(0x148),'todo',a75_0x149064(0x149),a75_0x149064(0x138),a75_0x149064(0x13c),a75_0x149064(0x154),a75_0x149064(0x12f),a75_0x149064(0x142)],GUIDE_STATUSES=['proposed',a75_0x149064(0x145),a75_0x149064(0x126),a75_0x149064(0x127)];export const WorkCreateItemInputSchema=z['object']({'title':z[a75_0x149064(0x141)]()[a75_0x149064(0x12c)](a75_0x149064(0x125)),'kind':z[a75_0x149064(0x13d)]([a75_0x149064(0x12e),a75_0x149064(0x137),a75_0x149064(0x13f),a75_0x149064(0x134)])[a75_0x149064(0x124)]()[a75_0x149064(0x12c)](a75_0x149064(0x139)),'status':z[a75_0x149064(0x13d)]([...TASK_STATUSES,...GUIDE_STATUSES])[a75_0x149064(0x124)]()['describe'](a75_0x149064(0x14b)),'tags':z[a75_0x149064(0x13a)](z[a75_0x149064(0x141)]())[a75_0x149064(0x124)]()[a75_0x149064(0x12c)]('Tags\x20for\x20the\x20item'),'priority':z['enum']([a75_0x149064(0x140),a75_0x149064(0x132),a75_0x149064(0x131),a75_0x149064(0x144)])[a75_0x149064(0x124)]()[a75_0x149064(0x12c)](a75_0x149064(0x135)),'body':z['string']()[a75_0x149064(0x124)]()['describe'](a75_0x149064(0x12a)),'template':z['string']()[a75_0x149064(0x124)]()['describe'](a75_0x149064(0x153)),'github':z['string']()['optional']()[a75_0x149064(0x12c)](a75_0x149064(0x128)),'jira':z['string']()[a75_0x149064(0x124)]()[a75_0x149064(0x12c)](a75_0x149064(0x159))});export function executeWorkCreateItem(_0x3824cd){const _0x485f65=a75_0x149064,_0x4d3595=resolveWorkspacePath();if(!_0x4d3595)return{'success':![],'error':_0x485f65(0x13e)};const _0x6a152d=new WorkspaceSDK(_0x4d3595),_0x44d9b1={'title':_0x3824cd[_0x485f65(0x151)],'kind':_0x3824cd['kind']||_0x485f65(0x12e),'status':_0x3824cd[_0x485f65(0x129)],'tags':_0x3824cd['tags'],'priority':_0x3824cd[_0x485f65(0x155)],'body':_0x3824cd[_0x485f65(0x130)],'template':_0x3824cd[_0x485f65(0x12d)],'github':_0x3824cd[_0x485f65(0x133)],'jira':_0x3824cd[_0x485f65(0x14d)]},_0x4f1917=_0x6a152d[_0x485f65(0x158)](_0x44d9b1);return{'success':!![],'path':_0x4f1917['filePath'],'slug':_0x4f1917[_0x485f65(0x14a)][_0x485f65(0x156)](/\.md$/,'')};}
package/dist/mcp/utils.js CHANGED
@@ -1 +1 @@
1
- function a76_0x5f31(_0x1d0ef1,_0x260aed){_0x1d0ef1=_0x1d0ef1-0x197;const _0x457d90=a76_0x457d();let _0x5f31ab=_0x457d90[_0x1d0ef1];return _0x5f31ab;}const a76_0x4a53db=a76_0x5f31;(function(_0x5a712d,_0x5cb5cc){const _0x2caede=a76_0x5f31,_0x3cb567=_0x5a712d();while(!![]){try{const _0xdc9abe=parseInt(_0x2caede(0x19c))/0x1+-parseInt(_0x2caede(0x1af))/0x2*(-parseInt(_0x2caede(0x1b1))/0x3)+parseInt(_0x2caede(0x1a1))/0x4*(parseInt(_0x2caede(0x19d))/0x5)+parseInt(_0x2caede(0x1a8))/0x6*(parseInt(_0x2caede(0x1a0))/0x7)+-parseInt(_0x2caede(0x199))/0x8+-parseInt(_0x2caede(0x1ad))/0x9+-parseInt(_0x2caede(0x1ab))/0xa;if(_0xdc9abe===_0x5cb5cc)break;else _0x3cb567['push'](_0x3cb567['shift']());}catch(_0x3308f5){_0x3cb567['push'](_0x3cb567['shift']());}}}(a76_0x457d,0xe456b));function a76_0x457d(){const _0x539168=['mcp','Profile\x20switching\x20via\x20--profile\x20flag\x20is\x20not\x20allowed\x20via\x20MCP','length','auth\x20login','488910TDFTXi','auth\x20clear','profile\x20create','3431850LrGXaA','replace','5537034CIQCZx','toLowerCase','6qfGcvC','auth\x20setup','1276710Qnkywq','startsWith','slice','join','6187304yfRStO','trimEnd','profile\x20delete','610626DfMgxu','498770xbOPkQ','Cannot\x20run\x20MCP\x20server\x20recursively','profile\x20remove','7dAhtks','28kHXUuZ','--profile','includes'];a76_0x457d=function(){return _0x539168;};return a76_0x457d();}const BLOCKED_COMMANDS=[a76_0x4a53db(0x1b0),a76_0x4a53db(0x1a7),a76_0x4a53db(0x1a9),a76_0x4a53db(0x1aa),a76_0x4a53db(0x19b),'profile\x20remove',a76_0x4a53db(0x1a4)],BLOCKED_FLAGS=[a76_0x4a53db(0x1a2),'-p'];export function hasBlockedFlag(_0x29f9d9){const _0x34db3d=a76_0x4a53db;for(const _0x48214c of _0x29f9d9){const _0xb9a537=_0x48214c[_0x34db3d(0x1ae)]();for(const _0x542cec of BLOCKED_FLAGS){if(_0xb9a537===_0x542cec||_0xb9a537[_0x34db3d(0x1b2)](_0x542cec+'='))return!![];}}return![];}export function isBlockedCommand(_0xa3f6b1){const _0x415d74=a76_0x4a53db;if(_0xa3f6b1[_0x415d74(0x1a6)]===0x0)return![];if(hasBlockedFlag(_0xa3f6b1))return!![];const _0x3285cb=_0xa3f6b1[_0x415d74(0x197)](0x0,0x2)[_0x415d74(0x198)]('\x20')[_0x415d74(0x1ae)]();for(const _0x302cfc of BLOCKED_COMMANDS){if(_0x3285cb['startsWith'](_0x302cfc))return!![];}const _0x1c87f8=_0xa3f6b1[0x0][_0x415d74(0x1ae)]();for(const _0x2020d9 of BLOCKED_COMMANDS){if(!_0x2020d9[_0x415d74(0x1a3)]('\x20')&&_0x1c87f8===_0x2020d9)return!![];}return![];}export function getBlockedReason(_0x5897ef){const _0x345faf=a76_0x4a53db;if(!isBlockedCommand(_0x5897ef))return undefined;if(hasBlockedFlag(_0x5897ef))return _0x345faf(0x1a5);const _0x3ac722=_0x5897ef[_0x345faf(0x197)](0x0,0x2)[_0x345faf(0x198)]('\x20')[_0x345faf(0x1ae)](),_0x5a3e71=_0x5897ef[0x0]['toLowerCase']();if(_0x3ac722['startsWith'](_0x345faf(0x1b0))||_0x3ac722[_0x345faf(0x1b2)](_0x345faf(0x1a7))||_0x3ac722[_0x345faf(0x1b2)](_0x345faf(0x1a9)))return'Credential\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP';if(_0x3ac722['startsWith'](_0x345faf(0x1aa))||_0x3ac722[_0x345faf(0x1b2)]('profile\x20delete')||_0x3ac722[_0x345faf(0x1b2)](_0x345faf(0x19f)))return'Profile\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP';if(_0x5a3e71===_0x345faf(0x1a4))return _0x345faf(0x19e);return'This\x20command\x20is\x20not\x20allowed\x20via\x20MCP';}export function formatOutput(_0x2d9fa3){const _0x3e29ac=a76_0x4a53db,_0x20893d=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;let _0x3373d9=_0x2d9fa3[_0x3e29ac(0x1ac)](_0x20893d,'');return _0x3373d9=_0x3373d9['replace'](/\r\n/g,'\x0a')[_0x3e29ac(0x1ac)](/\r/g,'\x0a'),_0x3373d9=_0x3373d9[_0x3e29ac(0x19a)](),_0x3373d9;}
1
+ const a76_0x55858c=a76_0x1188;(function(_0x537f46,_0x195028){const _0x2fc3b2=a76_0x1188,_0x2a6bc2=_0x537f46();while(!![]){try{const _0x19f5aa=-parseInt(_0x2fc3b2(0xa7))/0x1*(-parseInt(_0x2fc3b2(0xc1))/0x2)+parseInt(_0x2fc3b2(0xb9))/0x3+-parseInt(_0x2fc3b2(0xa9))/0x4+parseInt(_0x2fc3b2(0xb4))/0x5*(-parseInt(_0x2fc3b2(0xbb))/0x6)+-parseInt(_0x2fc3b2(0xb0))/0x7*(-parseInt(_0x2fc3b2(0xb2))/0x8)+-parseInt(_0x2fc3b2(0xad))/0x9+parseInt(_0x2fc3b2(0xb7))/0xa;if(_0x19f5aa===_0x195028)break;else _0x2a6bc2['push'](_0x2a6bc2['shift']());}catch(_0x4863fb){_0x2a6bc2['push'](_0x2a6bc2['shift']());}}}(a76_0x2019,0xb183c));const BLOCKED_COMMANDS=[a76_0x55858c(0xbf),a76_0x55858c(0xaa),a76_0x55858c(0xba),'profile\x20create',a76_0x55858c(0xb6),'profile\x20remove',a76_0x55858c(0xb5)],BLOCKED_FLAGS=['--profile','-p'];function a76_0x2019(){const _0x3cc1c4=['39722OWyofs','11UidPCP','profile\x20remove','330640mRCOZQ','auth\x20login','startsWith','Profile\x20switching\x20via\x20--profile\x20flag\x20is\x20not\x20allowed\x20via\x20MCP','4442337qbRibv','replace','profile\x20create','7xXxdqH','This\x20command\x20is\x20not\x20allowed\x20via\x20MCP','6240944APpmWo','slice','5805050QDLrYh','mcp','profile\x20delete','5188150WYRuIS','join','2840877GZtQWY','auth\x20clear','6tELzqA','Profile\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','trimEnd','Credential\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','auth\x20setup','toLowerCase'];a76_0x2019=function(){return _0x3cc1c4;};return a76_0x2019();}export function hasBlockedFlag(_0x53a7c3){const _0x23ce19=a76_0x55858c;for(const _0x246885 of _0x53a7c3){const _0x1b0bf8=_0x246885[_0x23ce19(0xc0)]();for(const _0x4d86fa of BLOCKED_FLAGS){if(_0x1b0bf8===_0x4d86fa||_0x1b0bf8[_0x23ce19(0xab)](_0x4d86fa+'='))return!![];}}return![];}export function isBlockedCommand(_0x1048eb){const _0x50ef70=a76_0x55858c;if(_0x1048eb['length']===0x0)return![];if(hasBlockedFlag(_0x1048eb))return!![];const _0x5add02=_0x1048eb[_0x50ef70(0xb3)](0x0,0x2)[_0x50ef70(0xb8)]('\x20')['toLowerCase']();for(const _0x3283e3 of BLOCKED_COMMANDS){if(_0x5add02[_0x50ef70(0xab)](_0x3283e3))return!![];}const _0x3c7f5d=_0x1048eb[0x0][_0x50ef70(0xc0)]();for(const _0x46936f of BLOCKED_COMMANDS){if(!_0x46936f['includes']('\x20')&&_0x3c7f5d===_0x46936f)return!![];}return![];}function a76_0x1188(_0x4427a9,_0x2affde){_0x4427a9=_0x4427a9-0xa7;const _0x2019d3=a76_0x2019();let _0x11885b=_0x2019d3[_0x4427a9];return _0x11885b;}export function getBlockedReason(_0x564a9c){const _0x233892=a76_0x55858c;if(!isBlockedCommand(_0x564a9c))return undefined;if(hasBlockedFlag(_0x564a9c))return _0x233892(0xac);const _0x209e9a=_0x564a9c[_0x233892(0xb3)](0x0,0x2)[_0x233892(0xb8)]('\x20')['toLowerCase'](),_0xd6865c=_0x564a9c[0x0][_0x233892(0xc0)]();if(_0x209e9a[_0x233892(0xab)](_0x233892(0xbf))||_0x209e9a['startsWith'](_0x233892(0xaa))||_0x209e9a[_0x233892(0xab)](_0x233892(0xba)))return _0x233892(0xbe);if(_0x209e9a[_0x233892(0xab)](_0x233892(0xaf))||_0x209e9a[_0x233892(0xab)](_0x233892(0xb6))||_0x209e9a[_0x233892(0xab)](_0x233892(0xa8)))return _0x233892(0xbc);if(_0xd6865c===_0x233892(0xb5))return'Cannot\x20run\x20MCP\x20server\x20recursively';return _0x233892(0xb1);}export function formatOutput(_0x95667){const _0x4378cc=a76_0x55858c,_0xa05485=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;let _0xbe4a4=_0x95667['replace'](_0xa05485,'');return _0xbe4a4=_0xbe4a4[_0x4378cc(0xae)](/\r\n/g,'\x0a')[_0x4378cc(0xae)](/\r/g,'\x0a'),_0xbe4a4=_0xbe4a4[_0x4378cc(0xbd)](),_0xbe4a4;}
@@ -1 +1 @@
1
- (function(_0x54894e,_0x51fc85){const _0x511003=a77_0x57c8,_0x5e3be4=_0x54894e();while(!![]){try{const _0xfd001=parseInt(_0x511003(0x17c))/0x1*(-parseInt(_0x511003(0x189))/0x2)+-parseInt(_0x511003(0x195))/0x3*(-parseInt(_0x511003(0x18d))/0x4)+-parseInt(_0x511003(0x1a7))/0x5*(parseInt(_0x511003(0x19e))/0x6)+-parseInt(_0x511003(0x1a6))/0x7*(-parseInt(_0x511003(0x1a1))/0x8)+-parseInt(_0x511003(0x1af))/0x9*(-parseInt(_0x511003(0x1ae))/0xa)+-parseInt(_0x511003(0x1b4))/0xb*(parseInt(_0x511003(0x196))/0xc)+-parseInt(_0x511003(0x1a4))/0xd*(-parseInt(_0x511003(0x1a2))/0xe);if(_0xfd001===_0x51fc85)break;else _0x5e3be4['push'](_0x5e3be4['shift']());}catch(_0x3b60b6){_0x5e3be4['push'](_0x5e3be4['shift']());}}}(a77_0x5a70,0x5080d));import{readFile,writeFile,appendFile,mkdir,readdir,stat}from'node:fs/promises';import{existsSync}from'node:fs';import{join,resolve}from'node:path';import{getModelPricing,calculateTokenCost,usdToAiCredits}from'../sdk/llm/model-factors.js';import{TDXLogger,LogLevel}from'../utils/tdx-logger.js';import{getGlobalCacheDir}from'../utils/global-cache.js';let usageLogger=null;async function getLogger(){const _0x5842cc=a77_0x57c8;return!usageLogger&&(usageLogger=new TDXLogger(LogLevel[_0x5842cc(0x1a5)],!![]),await usageLogger[_0x5842cc(0x1c1)]()),usageLogger;}function getUsageDir(){const _0xd3e716=a77_0x57c8;return join(getGlobalCacheDir(),_0xd3e716(0x18c));}function sanitizeSessionId(_0x1b2c8d){const _0x28ac5d=a77_0x57c8;return _0x1b2c8d[_0x28ac5d(0x1a8)](/[^a-zA-Z0-9_-]/g,'_');}function getSafeJsonlPath(_0x535885){const _0x41f688=a77_0x57c8,_0x32cf28=getUsageDir(),_0x18f2e5=sanitizeSessionId(_0x535885),_0x48ed75=resolve(_0x32cf28,_0x18f2e5+'.jsonl');if(!_0x48ed75[_0x41f688(0x1c3)](_0x32cf28))throw new Error(_0x41f688(0x199));return _0x48ed75;}function getStatsCachePath(){return join(getUsageDir(),'stats-cache.json');}function a77_0x57c8(_0x4f1070,_0x356e90){_0x4f1070=_0x4f1070-0x17c;const _0x5a70ce=a77_0x5a70();let _0x57c86b=_0x5a70ce[_0x4f1070];return _0x57c86b;}async function ensureUsageDir(){const _0x455c05=getUsageDir();!existsSync(_0x455c05)&&await mkdir(_0x455c05,{'recursive':!![]});}export async function appendUsageEntry(_0x2bc2c8,_0x5955fa){const _0x2905f8=a77_0x57c8,_0x471e0d=sanitizeSessionId(_0x2bc2c8);await ensureUsageDir();const _0xc3dfe7=getSafeJsonlPath(_0x471e0d),_0xed2c2a=JSON[_0x2905f8(0x1b7)](_0x5955fa)+'\x0a';await appendFile(_0xc3dfe7,_0xed2c2a,_0x2905f8(0x187));}async function readSessionJsonl(_0x7d79eb){const _0x5c4e06=a77_0x57c8,_0x44a8f4=getSafeJsonlPath(_0x7d79eb);if(!existsSync(_0x44a8f4))return[];try{const _0x238a54=await readFile(_0x44a8f4,_0x5c4e06(0x187)),_0x125f21=_0x238a54[_0x5c4e06(0x1b8)]()[_0x5c4e06(0x1c2)]('\x0a')[_0x5c4e06(0x1b3)](Boolean);return _0x125f21[_0x5c4e06(0x181)](_0x1ece4f=>{try{return JSON['parse'](_0x1ece4f);}catch{return null;}})[_0x5c4e06(0x1b3)](_0x51579d=>_0x51579d!==null);}catch(_0x1b6a10){const _0x3b1465=await getLogger();return _0x3b1465[_0x5c4e06(0x1b2)](_0x5c4e06(0x193)+_0x7d79eb+_0x5c4e06(0x18e),_0x1b6a10 instanceof Error?_0x1b6a10[_0x5c4e06(0x1a0)]:String(_0x1b6a10)),[];}}async function getAllSessionFiles(){const _0x57bf92=a77_0x57c8,_0x2f549=getUsageDir();if(!existsSync(_0x2f549))return[];try{const _0x29c6cd=await readdir(_0x2f549);return _0x29c6cd[_0x57bf92(0x1b3)](_0x44a699=>_0x44a699[_0x57bf92(0x1c0)]('.jsonl'))['map'](_0x4074aa=>_0x4074aa[_0x57bf92(0x1a8)](_0x57bf92(0x1ac),''));}catch(_0x56ae92){const _0xb2c209=await getLogger();return _0xb2c209[_0x57bf92(0x1b2)]('Failed\x20to\x20read\x20usage\x20directory:',_0x56ae92 instanceof Error?_0x56ae92['message']:String(_0x56ae92)),[];}}async function readStatsCache(){const _0x2837c8=a77_0x57c8,_0xbf77c5=getStatsCachePath();if(!existsSync(_0xbf77c5))return null;try{const _0x34e449=await readFile(_0xbf77c5,'utf-8'),_0x22729f=JSON[_0x2837c8(0x1ad)](_0x34e449),_0x5cb371=Object[_0x2837c8(0x186)](_0x22729f[_0x2837c8(0x184)]||{})[0x0];if(_0x5cb371&&'totalChatUnits'in _0x5cb371)return null;return _0x22729f;}catch{return null;}}async function writeStatsCache(_0xaa5c86){const _0x3b8f21=a77_0x57c8;await ensureUsageDir();const _0x46aa5d=getStatsCachePath();await writeFile(_0x46aa5d,JSON[_0x3b8f21(0x1b7)](_0xaa5c86,null,0x2),_0x3b8f21(0x187));}async function isCacheUpToDate(_0xd0f67,_0x54946e){const _0x374478=a77_0x57c8,_0x159a90=_0xd0f67[_0x374478(0x184)][_0x54946e];if(!_0x159a90)return![];const _0x35594f=getSafeJsonlPath(_0x54946e);if(!existsSync(_0x35594f))return!![];try{const _0x2ac61c=await stat(_0x35594f),_0x35c9c1=new Date(_0x159a90[_0x374478(0x1ba)])[_0x374478(0x1be)](),_0x53f286=_0x2ac61c[_0x374478(0x1bd)][_0x374478(0x1be)]();return _0x35c9c1>_0x53f286;}catch{return![];}}export async function rebuildCache(){const _0x518166=a77_0x57c8,_0x43e817=new Date(),_0x286f19=_0x43e817[_0x518166(0x17e)]()['slice'](0x0,0xa),_0x2b65c0=_0x43e817[_0x518166(0x17e)]()[_0x518166(0x18f)](0x0,0x7),_0x1f7d72={'daily':{},'monthly':{},'sessions':{},'profiles':{},'sources':{},'lastRebuiltAt':_0x43e817['toISOString']()},_0x129742=await getAllSessionFiles();for(const _0x3433b2 of _0x129742){try{const _0x394fc8=await readSessionJsonl(_0x3433b2);if(_0x394fc8[_0x518166(0x17f)]===0x0)continue;let _0x3aaf18=0x0;const _0x37ff32={};let _0x16948d='';for(const _0x396cee of _0x394fc8){const _0xdaba4c=getModelPricing(_0x396cee[_0x518166(0x1a9)]),_0x4dcfb2=calculateTokenCost(_0x396cee[_0x518166(0x1b5)],_0x396cee['outputTokens'],_0x396cee['cacheCreationInputTokens']??0x0,_0x396cee[_0x518166(0x19c)]??0x0,_0xdaba4c),_0x2f3817=usdToAiCredits(_0x4dcfb2);_0x3aaf18+=_0x2f3817;const _0x398bdf=_0x396cee[_0x518166(0x1bf)]||_0x518166(0x194);_0x37ff32[_0x398bdf]=_0x396cee[_0x518166(0x1b5)]+(_0x396cee[_0x518166(0x180)]??0x0)+(_0x396cee[_0x518166(0x19c)]??0x0);_0x396cee[_0x518166(0x188)]>_0x16948d&&(_0x16948d=_0x396cee['timestamp']);const _0x539bb4=_0x396cee[_0x518166(0x188)][_0x518166(0x18f)](0x0,0xa);!_0x1f7d72[_0x518166(0x190)][_0x539bb4]&&(_0x1f7d72[_0x518166(0x190)][_0x539bb4]={'totalCredits':0x0,'entryCount':0x0});_0x1f7d72[_0x518166(0x190)][_0x539bb4]['totalCredits']+=_0x2f3817,_0x1f7d72[_0x518166(0x190)][_0x539bb4][_0x518166(0x1ab)]+=0x1;const _0x3153c2=_0x396cee['timestamp'][_0x518166(0x18f)](0x0,0x7);!_0x1f7d72['monthly'][_0x3153c2]&&(_0x1f7d72['monthly'][_0x3153c2]={'totalCredits':0x0,'entryCount':0x0});_0x1f7d72[_0x518166(0x1b9)][_0x3153c2]['totalCredits']+=_0x2f3817,_0x1f7d72['monthly'][_0x3153c2][_0x518166(0x1ab)]+=0x1;const _0x5ef961=_0x396cee[_0x518166(0x19f)]||_0x518166(0x194);!_0x1f7d72['profiles'][_0x5ef961]&&(_0x1f7d72['profiles'][_0x5ef961]={'totalCredits':0x0,'entryCount':0x0,'lastUsedAt':'','todayCredits':0x0,'todayDate':_0x286f19,'monthCredits':0x0,'month':_0x2b65c0});_0x1f7d72[_0x518166(0x19a)][_0x5ef961][_0x518166(0x19b)]+=_0x2f3817,_0x1f7d72[_0x518166(0x19a)][_0x5ef961][_0x518166(0x1ab)]+=0x1;_0x396cee['timestamp']>_0x1f7d72[_0x518166(0x19a)][_0x5ef961][_0x518166(0x197)]&&(_0x1f7d72[_0x518166(0x19a)][_0x5ef961]['lastUsedAt']=_0x396cee['timestamp']);_0x539bb4===_0x286f19&&(_0x1f7d72[_0x518166(0x19a)][_0x5ef961][_0x518166(0x19d)]+=_0x2f3817);_0x3153c2===_0x2b65c0&&(_0x1f7d72[_0x518166(0x19a)][_0x5ef961]['monthCredits']+=_0x2f3817);const _0x380284=_0x396cee[_0x518166(0x185)]||_0x518166(0x18a);!_0x1f7d72['sources'][_0x380284]&&(_0x1f7d72[_0x518166(0x1b6)][_0x380284]={'totalCredits':0x0,'entryCount':0x0,'todayCredits':0x0,'todayDate':_0x286f19,'monthCredits':0x0,'month':_0x2b65c0}),_0x1f7d72[_0x518166(0x1b6)][_0x380284][_0x518166(0x19b)]+=_0x2f3817,_0x1f7d72['sources'][_0x380284][_0x518166(0x1ab)]+=0x1,_0x539bb4===_0x286f19&&(_0x1f7d72[_0x518166(0x1b6)][_0x380284]['todayCredits']+=_0x2f3817),_0x3153c2===_0x2b65c0&&(_0x1f7d72[_0x518166(0x1b6)][_0x380284][_0x518166(0x1aa)]+=_0x2f3817);}_0x1f7d72[_0x518166(0x184)][_0x3433b2]={'totalCredits':_0x3aaf18,'latestContextTokensBySignature':_0x37ff32,'createdAt':_0x394fc8[0x0]['timestamp'],'lastUpdatedAt':_0x16948d};}catch(_0x2c9f2b){const _0x13501d=await getLogger();_0x13501d['warn'](_0x518166(0x192)+_0x3433b2+':',_0x2c9f2b instanceof Error?_0x2c9f2b[_0x518166(0x1a0)]:String(_0x2c9f2b));continue;}}return cleanupOldEntries(_0x1f7d72),await writeStatsCache(_0x1f7d72),_0x1f7d72;}function cleanupOldEntries(_0x29189e){const _0x13dc54=a77_0x57c8,_0x38c59b=new Date(),_0x51406b=new Date(_0x38c59b[_0x13dc54(0x1be)]()-0x7*0x18*0x3c*0x3c*0x3e8);for(const _0x2e8d6d of Object['keys'](_0x29189e[_0x13dc54(0x190)])){new Date(_0x2e8d6d)<_0x51406b&&delete _0x29189e[_0x13dc54(0x190)][_0x2e8d6d];}const _0x4e4f45=new Date(_0x38c59b[_0x13dc54(0x1b0)]()-0x1,_0x38c59b['getMonth'](),0x1);for(const _0xde941d of Object[_0x13dc54(0x191)](_0x29189e['monthly'])){const [_0x336372,_0x2a28db]=_0xde941d[_0x13dc54(0x1c2)]('-')[_0x13dc54(0x181)](Number),_0x4499c8=new Date(_0x336372,_0x2a28db-0x1,0x1);_0x4499c8<_0x4e4f45&&delete _0x29189e[_0x13dc54(0x1b9)][_0xde941d];}const _0xb61fd4=new Date(_0x38c59b[_0x13dc54(0x1be)]()-0x1e*0x18*0x3c*0x3c*0x3e8);for(const [_0x2bc71b,_0x582f3b]of Object[_0x13dc54(0x1bc)](_0x29189e['sessions'])){new Date(_0x582f3b[_0x13dc54(0x1ba)])<_0xb61fd4&&delete _0x29189e[_0x13dc54(0x184)][_0x2bc71b];}}export async function getOrUpdateCache(_0x4c585d){const _0x5b06d4=_0x4c585d?sanitizeSessionId(_0x4c585d):undefined,_0x5747bf=await readStatsCache();if(!_0x5747bf)return rebuildCache();if(_0x5b06d4){const _0x11953e=await isCacheUpToDate(_0x5747bf,_0x5b06d4);if(!_0x11953e)return rebuildCache();}return _0x5747bf;}export async function getSessionCredits(_0x5dfae1){const _0x57c37d=a77_0x57c8,_0xc728be=sanitizeSessionId(_0x5dfae1),_0x74693c=await getOrUpdateCache(_0xc728be),_0x407116=_0x74693c['sessions'][_0xc728be];if(!_0x407116)return 0x0;return _0x407116[_0x57c37d(0x19b)];}export async function getTodayCredits(){const _0x3400d7=a77_0x57c8,_0x5e2388=await getOrUpdateCache(),_0x31c243=new Date()[_0x3400d7(0x17e)]()[_0x3400d7(0x18f)](0x0,0xa),_0x431fc5=_0x5e2388[_0x3400d7(0x190)][_0x31c243];if(!_0x431fc5)return 0x0;return _0x431fc5['totalCredits'];}export async function getMonthCredits(){const _0x9be674=a77_0x57c8,_0x40ccf3=await getOrUpdateCache(),_0xd9c2b9=new Date()['toISOString']()[_0x9be674(0x18f)](0x0,0x7),_0x3142c2=_0x40ccf3[_0x9be674(0x1b9)][_0xd9c2b9];if(!_0x3142c2)return 0x0;return _0x3142c2[_0x9be674(0x19b)];}export async function getSessionStats(_0x324ad6){const _0x59c9f4=a77_0x57c8,_0x2e0a76=sanitizeSessionId(_0x324ad6),_0x2df3a4=await getOrUpdateCache(_0x2e0a76);return _0x2df3a4[_0x59c9f4(0x184)][_0x2e0a76]||null;}function getMaxLatestContextTokens(_0x4c0d3c){const _0xb36ee2=a77_0x57c8,_0x39dcbf=Object['values'](_0x4c0d3c);if(_0x39dcbf[_0xb36ee2(0x17f)]===0x0)return 0x0;return Math[_0xb36ee2(0x182)](..._0x39dcbf);}function a77_0x5a70(){const _0x437f83=['WARN','1267SRXXAX','670075TgUoLg','replace','model','monthCredits','entryCount','.jsonl','parse','1171000xDpyDe','9jOOjUw','getFullYear','reduce','warn','filter','354596lGMmsD','inputTokens','sources','stringify','trim','monthly','lastUpdatedAt','sort','entries','mtime','getTime','contextSignature','endsWith','init','split','startsWith','4trUvEi','credits','toISOString','length','cacheCreationInputTokens','map','max','latestContextTokensBySignature','sessions','source','values','utf-8','timestamp','177554UrVcna','tdx-claude','month','claude-usage','423604JdUkXY','.jsonl:','slice','daily','keys','Failed\x20to\x20process\x20session\x20','Failed\x20to\x20read\x20usage\x20file\x20','default','9glMMnV','132kfxPzh','lastUsedAt','object','Invalid\x20session\x20ID:\x20path\x20traversal\x20detected','profiles','totalCredits','cacheReadInputTokens','todayCredits','18FlrFTM','profile','message','21968BdNMnm','42sNQpCi','todayDate','2208531VvsAcJ'];a77_0x5a70=function(){return _0x437f83;};return a77_0x5a70();}export async function getUsageStats(_0x2bbb0e,_0x5ae900){const _0x395e39=a77_0x57c8,_0x12cf2e=sanitizeSessionId(_0x2bbb0e),_0x43ff52=await getOrUpdateCache(_0x12cf2e),_0x2fd5e6=_0x43ff52[_0x395e39(0x184)][_0x12cf2e],_0x92db6=new Date()[_0x395e39(0x17e)]()[_0x395e39(0x18f)](0x0,0xa),_0x43459a=new Date()[_0x395e39(0x17e)]()[_0x395e39(0x18f)](0x0,0x7);if(_0x5ae900){const _0x11145e=_0x43ff52[_0x395e39(0x19a)]?.[_0x5ae900],_0x615fc5=_0x11145e?.[_0x395e39(0x1a3)]===_0x92db6?_0x11145e['todayCredits']:0x0,_0xce324e=_0x11145e?.['month']===_0x43459a?_0x11145e[_0x395e39(0x1aa)]:0x0;return{'sessionCredits':_0x2fd5e6?_0x2fd5e6[_0x395e39(0x19b)]:0x0,'todayCredits':_0x615fc5,'monthCredits':_0xce324e,'latestContextTokens':_0x2fd5e6?getMaxLatestContextTokens(_0x2fd5e6[_0x395e39(0x183)]):0x0};}return{'sessionCredits':_0x2fd5e6?_0x2fd5e6['totalCredits']:0x0,'todayCredits':_0x43ff52[_0x395e39(0x190)][_0x92db6]?_0x43ff52[_0x395e39(0x190)][_0x92db6][_0x395e39(0x19b)]:0x0,'monthCredits':_0x43ff52[_0x395e39(0x1b9)][_0x43459a]?_0x43ff52[_0x395e39(0x1b9)][_0x43459a]['totalCredits']:0x0,'latestContextTokens':_0x2fd5e6?getMaxLatestContextTokens(_0x2fd5e6[_0x395e39(0x183)]):0x0};}export async function getAllProfileStats(){const _0x41fa4a=a77_0x57c8,_0x28eed0=await getOrUpdateCache(),_0x20ee23=_0x28eed0[_0x41fa4a(0x19a)]||{};return Object[_0x41fa4a(0x1bc)](_0x20ee23)[_0x41fa4a(0x1b3)](([,_0x224443])=>_0x224443&&typeof _0x224443===_0x41fa4a(0x198))[_0x41fa4a(0x181)](([_0x21e8d4,_0x20fd29])=>({'profile':_0x21e8d4,'credits':_0x20fd29[_0x41fa4a(0x19b)]||0x0,'entryCount':_0x20fd29[_0x41fa4a(0x1ab)]||0x0,'lastUsedAt':_0x20fd29['lastUsedAt']||''}))['sort']((_0x10cd1f,_0x1298f0)=>_0x1298f0[_0x41fa4a(0x17d)]-_0x10cd1f['credits']);}export async function getAllSourceStats(){const _0xdc4cf6=a77_0x57c8,_0x3cd65e=await getOrUpdateCache(),_0x2cab70=_0x3cd65e[_0xdc4cf6(0x1b6)]||{},_0x4c8d97=new Date()[_0xdc4cf6(0x17e)]()[_0xdc4cf6(0x18f)](0x0,0xa),_0x4b8988=new Date()[_0xdc4cf6(0x17e)]()[_0xdc4cf6(0x18f)](0x0,0x7);return Object['entries'](_0x2cab70)[_0xdc4cf6(0x1b3)](([,_0xc3ef98])=>_0xc3ef98&&typeof _0xc3ef98==='object')[_0xdc4cf6(0x181)](([_0x597eca,_0x19405a])=>({'source':_0x597eca,'credits':_0x19405a['totalCredits']||0x0,'todayCredits':_0x19405a[_0xdc4cf6(0x1a3)]===_0x4c8d97?_0x19405a[_0xdc4cf6(0x19d)]||0x0:0x0,'monthCredits':_0x19405a[_0xdc4cf6(0x18b)]===_0x4b8988?_0x19405a[_0xdc4cf6(0x1aa)]||0x0:0x0,'entryCount':_0x19405a[_0xdc4cf6(0x1ab)]||0x0}))[_0xdc4cf6(0x1bb)]((_0x59f5da,_0x3329e6)=>_0x3329e6[_0xdc4cf6(0x17d)]-_0x59f5da[_0xdc4cf6(0x17d)]);}export async function getUsageSummary(){const _0x2f1858=a77_0x57c8,_0x4bd401=await getOrUpdateCache(),_0x9335cd=_0x4bd401['profiles']||{},_0x438f62=new Date()[_0x2f1858(0x17e)]()[_0x2f1858(0x18f)](0x0,0xa),_0x440eb7=new Date()[_0x2f1858(0x17e)]()[_0x2f1858(0x18f)](0x0,0x7),_0x118367=Object['values'](_0x9335cd)[_0x2f1858(0x1b3)](_0x3a78ce=>_0x3a78ce&&typeof _0x3a78ce===_0x2f1858(0x198)),_0x31e453=_0x118367[_0x2f1858(0x1b1)]((_0x388ca5,_0x2a5a91)=>_0x388ca5+(_0x2a5a91['totalCredits']||0x0),0x0);return{'todayCredits':_0x4bd401['daily'][_0x438f62]?_0x4bd401[_0x2f1858(0x190)][_0x438f62]['totalCredits']||0x0:0x0,'monthCredits':_0x4bd401[_0x2f1858(0x1b9)][_0x440eb7]?_0x4bd401[_0x2f1858(0x1b9)][_0x440eb7][_0x2f1858(0x19b)]||0x0:0x0,'totalCredits':_0x31e453,'profileCount':_0x118367[_0x2f1858(0x17f)]};}
1
+ (function(_0x4bba5a,_0xf6a5d5){const _0x461f0e=a77_0x2be9,_0x901eb1=_0x4bba5a();while(!![]){try{const _0x2dcbc5=-parseInt(_0x461f0e(0x145))/0x1*(-parseInt(_0x461f0e(0x141))/0x2)+parseInt(_0x461f0e(0x12c))/0x3+-parseInt(_0x461f0e(0x149))/0x4+-parseInt(_0x461f0e(0x14a))/0x5+-parseInt(_0x461f0e(0x14e))/0x6+-parseInt(_0x461f0e(0x13d))/0x7*(parseInt(_0x461f0e(0x169))/0x8)+-parseInt(_0x461f0e(0x15e))/0x9*(-parseInt(_0x461f0e(0x15b))/0xa);if(_0x2dcbc5===_0xf6a5d5)break;else _0x901eb1['push'](_0x901eb1['shift']());}catch(_0x598064){_0x901eb1['push'](_0x901eb1['shift']());}}}(a77_0x3b14,0xcf31d));import{readFile,writeFile,appendFile,mkdir,readdir,stat}from'node:fs/promises';import{existsSync}from'node:fs';import{join,resolve}from'node:path';import{getModelPricing,calculateTokenCost,usdToAiCredits}from'../sdk/llm/model-factors.js';import{TDXLogger,LogLevel}from'../utils/tdx-logger.js';import{getGlobalCacheDir}from'../utils/global-cache.js';let usageLogger=null;async function getLogger(){const _0x4d28a8=a77_0x2be9;return!usageLogger&&(usageLogger=new TDXLogger(LogLevel[_0x4d28a8(0x142)],!![]),await usageLogger['init']()),usageLogger;}function getUsageDir(){const _0x5801d5=a77_0x2be9;return join(getGlobalCacheDir(),_0x5801d5(0x13b));}function sanitizeSessionId(_0x288f48){const _0x5d3b80=a77_0x2be9;return _0x288f48[_0x5d3b80(0x164)](/[^a-zA-Z0-9_-]/g,'_');}function getSafeJsonlPath(_0x48e18a){const _0x31f395=a77_0x2be9,_0x29f376=getUsageDir(),_0x4fd41b=sanitizeSessionId(_0x48e18a),_0x26abda=resolve(_0x29f376,_0x4fd41b+_0x31f395(0x15f));if(!_0x26abda[_0x31f395(0x162)](_0x29f376))throw new Error(_0x31f395(0x14d));return _0x26abda;}function getStatsCachePath(){const _0x494302=a77_0x2be9;return join(getUsageDir(),_0x494302(0x138));}async function ensureUsageDir(){const _0x55e859=getUsageDir();!existsSync(_0x55e859)&&await mkdir(_0x55e859,{'recursive':!![]});}function a77_0x2be9(_0xcf32a5,_0x3a5abb){_0xcf32a5=_0xcf32a5-0x129;const _0x3b140e=a77_0x3b14();let _0x2be968=_0x3b140e[_0xcf32a5];return _0x2be968;}export async function appendUsageEntry(_0x166b27,_0x2bbb2c){const _0x35865a=a77_0x2be9,_0x4ae945=sanitizeSessionId(_0x166b27);await ensureUsageDir();const _0xc3559e=getSafeJsonlPath(_0x4ae945),_0x51d208=JSON[_0x35865a(0x163)](_0x2bbb2c)+'\x0a';await appendFile(_0xc3559e,_0x51d208,_0x35865a(0x12b));}async function readSessionJsonl(_0x5ae302){const _0xa1f81b=a77_0x2be9,_0x583d9f=getSafeJsonlPath(_0x5ae302);if(!existsSync(_0x583d9f))return[];try{const _0x3ebe1b=await readFile(_0x583d9f,_0xa1f81b(0x12b)),_0x52bd56=_0x3ebe1b['trim']()[_0xa1f81b(0x15d)]('\x0a')[_0xa1f81b(0x15c)](Boolean);return _0x52bd56[_0xa1f81b(0x155)](_0x53a1fe=>{const _0x4f6573=_0xa1f81b;try{return JSON[_0x4f6573(0x13c)](_0x53a1fe);}catch{return null;}})[_0xa1f81b(0x15c)](_0x47e7f2=>_0x47e7f2!==null);}catch(_0x3ced9f){const _0x250af0=await getLogger();return _0x250af0[_0xa1f81b(0x135)](_0xa1f81b(0x139)+_0x5ae302+_0xa1f81b(0x16b),_0x3ced9f instanceof Error?_0x3ced9f[_0xa1f81b(0x12f)]:String(_0x3ced9f)),[];}}function a77_0x3b14(){const _0x51eb04=['Failed\x20to\x20process\x20session\x20','monthly','message','toISOString','getTime','Failed\x20to\x20read\x20usage\x20directory:','profile','month','warn','cacheReadInputTokens','latestContextTokensBySignature','stats-cache.json','Failed\x20to\x20read\x20usage\x20file\x20','credits','claude-usage','parse','49pWtigx','source','object','sort','2EyEwqH','WARN','tdx-claude','monthCredits','1142921popoRn','timestamp','todayCredits','daily','6336792SZNJIM','1963070ufJngq','slice','entryCount','Invalid\x20session\x20ID:\x20path\x20traversal\x20detected','1777254fJYbEd','getFullYear','reduce','entries','values','max','sources','map','contextSignature','outputTokens','lastUsedAt','todayDate','length','3270WTFNSE','filter','split','70911LjYlUE','.jsonl','cacheCreationInputTokens','default','startsWith','stringify','replace','totalCredits','keys','getMonth','inputTokens','849512dnWEgT','sessions','.jsonl:','lastUpdatedAt','profiles','utf-8','436977MplsKR'];a77_0x3b14=function(){return _0x51eb04;};return a77_0x3b14();}async function getAllSessionFiles(){const _0x5ee6f6=a77_0x2be9,_0x56d830=getUsageDir();if(!existsSync(_0x56d830))return[];try{const _0x2763f2=await readdir(_0x56d830);return _0x2763f2[_0x5ee6f6(0x15c)](_0x178b55=>_0x178b55['endsWith'](_0x5ee6f6(0x15f)))['map'](_0x3887ae=>_0x3887ae[_0x5ee6f6(0x164)]('.jsonl',''));}catch(_0x42d705){const _0x2e6998=await getLogger();return _0x2e6998[_0x5ee6f6(0x135)](_0x5ee6f6(0x132),_0x42d705 instanceof Error?_0x42d705[_0x5ee6f6(0x12f)]:String(_0x42d705)),[];}}async function readStatsCache(){const _0x4b8d86=a77_0x2be9,_0x583b59=getStatsCachePath();if(!existsSync(_0x583b59))return null;try{const _0x5ebbdc=await readFile(_0x583b59,_0x4b8d86(0x12b)),_0x212f0e=JSON['parse'](_0x5ebbdc),_0x3f8c65=Object[_0x4b8d86(0x152)](_0x212f0e['sessions']||{})[0x0];if(_0x3f8c65&&'totalChatUnits'in _0x3f8c65)return null;return _0x212f0e;}catch{return null;}}async function writeStatsCache(_0x5cb397){const _0x3e398f=a77_0x2be9;await ensureUsageDir();const _0x29db1e=getStatsCachePath();await writeFile(_0x29db1e,JSON['stringify'](_0x5cb397,null,0x2),_0x3e398f(0x12b));}async function isCacheUpToDate(_0x1cdd2a,_0x4de7ea){const _0x55f387=a77_0x2be9,_0x49e426=_0x1cdd2a[_0x55f387(0x16a)][_0x4de7ea];if(!_0x49e426)return![];const _0x453529=getSafeJsonlPath(_0x4de7ea);if(!existsSync(_0x453529))return!![];try{const _0x3d9093=await stat(_0x453529),_0x6d8d65=new Date(_0x49e426[_0x55f387(0x129)])[_0x55f387(0x131)](),_0x5e366a=_0x3d9093['mtime'][_0x55f387(0x131)]();return _0x6d8d65>_0x5e366a;}catch{return![];}}export async function rebuildCache(){const _0x4d40c2=a77_0x2be9,_0x4be729=new Date(),_0x48333e=_0x4be729[_0x4d40c2(0x130)]()[_0x4d40c2(0x14b)](0x0,0xa),_0x3c039e=_0x4be729[_0x4d40c2(0x130)]()[_0x4d40c2(0x14b)](0x0,0x7),_0x1dfc2c={'daily':{},'monthly':{},'sessions':{},'profiles':{},'sources':{},'lastRebuiltAt':_0x4be729[_0x4d40c2(0x130)]()},_0x4c7735=await getAllSessionFiles();for(const _0x277ba5 of _0x4c7735){try{const _0x312cd4=await readSessionJsonl(_0x277ba5);if(_0x312cd4[_0x4d40c2(0x15a)]===0x0)continue;let _0x13256c=0x0;const _0x37d005={};let _0x433f00='';for(const _0xef3113 of _0x312cd4){const _0x26c214=getModelPricing(_0xef3113['model']),_0x74d9bf=calculateTokenCost(_0xef3113['inputTokens'],_0xef3113[_0x4d40c2(0x157)],_0xef3113['cacheCreationInputTokens']??0x0,_0xef3113[_0x4d40c2(0x136)]??0x0,_0x26c214),_0x38784b=usdToAiCredits(_0x74d9bf);_0x13256c+=_0x38784b;const _0x4717fa=_0xef3113[_0x4d40c2(0x156)]||_0x4d40c2(0x161);_0x37d005[_0x4717fa]=_0xef3113[_0x4d40c2(0x168)]+(_0xef3113[_0x4d40c2(0x160)]??0x0)+(_0xef3113['cacheReadInputTokens']??0x0);_0xef3113[_0x4d40c2(0x146)]>_0x433f00&&(_0x433f00=_0xef3113[_0x4d40c2(0x146)]);const _0x203bb3=_0xef3113[_0x4d40c2(0x146)][_0x4d40c2(0x14b)](0x0,0xa);!_0x1dfc2c[_0x4d40c2(0x148)][_0x203bb3]&&(_0x1dfc2c[_0x4d40c2(0x148)][_0x203bb3]={'totalCredits':0x0,'entryCount':0x0});_0x1dfc2c[_0x4d40c2(0x148)][_0x203bb3]['totalCredits']+=_0x38784b,_0x1dfc2c['daily'][_0x203bb3][_0x4d40c2(0x14c)]+=0x1;const _0x1aa350=_0xef3113[_0x4d40c2(0x146)][_0x4d40c2(0x14b)](0x0,0x7);!_0x1dfc2c['monthly'][_0x1aa350]&&(_0x1dfc2c['monthly'][_0x1aa350]={'totalCredits':0x0,'entryCount':0x0});_0x1dfc2c['monthly'][_0x1aa350][_0x4d40c2(0x165)]+=_0x38784b,_0x1dfc2c[_0x4d40c2(0x12e)][_0x1aa350][_0x4d40c2(0x14c)]+=0x1;const _0x4701da=_0xef3113[_0x4d40c2(0x133)]||_0x4d40c2(0x161);!_0x1dfc2c[_0x4d40c2(0x12a)][_0x4701da]&&(_0x1dfc2c[_0x4d40c2(0x12a)][_0x4701da]={'totalCredits':0x0,'entryCount':0x0,'lastUsedAt':'','todayCredits':0x0,'todayDate':_0x48333e,'monthCredits':0x0,'month':_0x3c039e});_0x1dfc2c['profiles'][_0x4701da][_0x4d40c2(0x165)]+=_0x38784b,_0x1dfc2c['profiles'][_0x4701da][_0x4d40c2(0x14c)]+=0x1;_0xef3113[_0x4d40c2(0x146)]>_0x1dfc2c[_0x4d40c2(0x12a)][_0x4701da]['lastUsedAt']&&(_0x1dfc2c[_0x4d40c2(0x12a)][_0x4701da][_0x4d40c2(0x158)]=_0xef3113[_0x4d40c2(0x146)]);_0x203bb3===_0x48333e&&(_0x1dfc2c[_0x4d40c2(0x12a)][_0x4701da][_0x4d40c2(0x147)]+=_0x38784b);_0x1aa350===_0x3c039e&&(_0x1dfc2c[_0x4d40c2(0x12a)][_0x4701da]['monthCredits']+=_0x38784b);const _0x5df89f=_0xef3113[_0x4d40c2(0x13e)]||_0x4d40c2(0x143);!_0x1dfc2c['sources'][_0x5df89f]&&(_0x1dfc2c[_0x4d40c2(0x154)][_0x5df89f]={'totalCredits':0x0,'entryCount':0x0,'todayCredits':0x0,'todayDate':_0x48333e,'monthCredits':0x0,'month':_0x3c039e}),_0x1dfc2c[_0x4d40c2(0x154)][_0x5df89f]['totalCredits']+=_0x38784b,_0x1dfc2c['sources'][_0x5df89f][_0x4d40c2(0x14c)]+=0x1,_0x203bb3===_0x48333e&&(_0x1dfc2c['sources'][_0x5df89f][_0x4d40c2(0x147)]+=_0x38784b),_0x1aa350===_0x3c039e&&(_0x1dfc2c[_0x4d40c2(0x154)][_0x5df89f][_0x4d40c2(0x144)]+=_0x38784b);}_0x1dfc2c['sessions'][_0x277ba5]={'totalCredits':_0x13256c,'latestContextTokensBySignature':_0x37d005,'createdAt':_0x312cd4[0x0][_0x4d40c2(0x146)],'lastUpdatedAt':_0x433f00};}catch(_0x35f157){const _0x21c66b=await getLogger();_0x21c66b[_0x4d40c2(0x135)](_0x4d40c2(0x12d)+_0x277ba5+':',_0x35f157 instanceof Error?_0x35f157['message']:String(_0x35f157));continue;}}return cleanupOldEntries(_0x1dfc2c),await writeStatsCache(_0x1dfc2c),_0x1dfc2c;}function cleanupOldEntries(_0x1c22c){const _0x5b4fc2=a77_0x2be9,_0x6a4b8a=new Date(),_0x36045d=new Date(_0x6a4b8a[_0x5b4fc2(0x131)]()-0x7*0x18*0x3c*0x3c*0x3e8);for(const _0x452ec0 of Object[_0x5b4fc2(0x166)](_0x1c22c['daily'])){new Date(_0x452ec0)<_0x36045d&&delete _0x1c22c['daily'][_0x452ec0];}const _0x2442c5=new Date(_0x6a4b8a[_0x5b4fc2(0x14f)]()-0x1,_0x6a4b8a[_0x5b4fc2(0x167)](),0x1);for(const _0x1d0633 of Object[_0x5b4fc2(0x166)](_0x1c22c[_0x5b4fc2(0x12e)])){const [_0x11e9dd,_0x59707a]=_0x1d0633[_0x5b4fc2(0x15d)]('-')['map'](Number),_0x2efd17=new Date(_0x11e9dd,_0x59707a-0x1,0x1);_0x2efd17<_0x2442c5&&delete _0x1c22c['monthly'][_0x1d0633];}const _0x3542ca=new Date(_0x6a4b8a[_0x5b4fc2(0x131)]()-0x1e*0x18*0x3c*0x3c*0x3e8);for(const [_0x2965b4,_0x5b52da]of Object['entries'](_0x1c22c[_0x5b4fc2(0x16a)])){new Date(_0x5b52da[_0x5b4fc2(0x129)])<_0x3542ca&&delete _0x1c22c[_0x5b4fc2(0x16a)][_0x2965b4];}}export async function getOrUpdateCache(_0x52daae){const _0x523fd5=_0x52daae?sanitizeSessionId(_0x52daae):undefined,_0x4f54bb=await readStatsCache();if(!_0x4f54bb)return rebuildCache();if(_0x523fd5){const _0x1de709=await isCacheUpToDate(_0x4f54bb,_0x523fd5);if(!_0x1de709)return rebuildCache();}return _0x4f54bb;}export async function getSessionCredits(_0x54b4d7){const _0x63e3a6=a77_0x2be9,_0x294639=sanitizeSessionId(_0x54b4d7),_0x26400a=await getOrUpdateCache(_0x294639),_0x246cc3=_0x26400a['sessions'][_0x294639];if(!_0x246cc3)return 0x0;return _0x246cc3[_0x63e3a6(0x165)];}export async function getTodayCredits(){const _0x3169e7=a77_0x2be9,_0x1190d4=await getOrUpdateCache(),_0x31a39b=new Date()[_0x3169e7(0x130)]()[_0x3169e7(0x14b)](0x0,0xa),_0x559d8f=_0x1190d4[_0x3169e7(0x148)][_0x31a39b];if(!_0x559d8f)return 0x0;return _0x559d8f[_0x3169e7(0x165)];}export async function getMonthCredits(){const _0x47e1ce=a77_0x2be9,_0x22ec5d=await getOrUpdateCache(),_0x342f96=new Date()[_0x47e1ce(0x130)]()[_0x47e1ce(0x14b)](0x0,0x7),_0x2a033b=_0x22ec5d['monthly'][_0x342f96];if(!_0x2a033b)return 0x0;return _0x2a033b[_0x47e1ce(0x165)];}export async function getSessionStats(_0x66addd){const _0x861092=a77_0x2be9,_0x3cdd0c=sanitizeSessionId(_0x66addd),_0xdd241a=await getOrUpdateCache(_0x3cdd0c);return _0xdd241a[_0x861092(0x16a)][_0x3cdd0c]||null;}function getMaxLatestContextTokens(_0x3b58c2){const _0x572d13=a77_0x2be9,_0x51556b=Object[_0x572d13(0x152)](_0x3b58c2);if(_0x51556b['length']===0x0)return 0x0;return Math[_0x572d13(0x153)](..._0x51556b);}export async function getUsageStats(_0x14c65c,_0x26605a){const _0x26a62f=a77_0x2be9,_0xd64962=sanitizeSessionId(_0x14c65c),_0x5d80d3=await getOrUpdateCache(_0xd64962),_0xc8270e=_0x5d80d3[_0x26a62f(0x16a)][_0xd64962],_0x1d2117=new Date()[_0x26a62f(0x130)]()[_0x26a62f(0x14b)](0x0,0xa),_0x2f981c=new Date()[_0x26a62f(0x130)]()['slice'](0x0,0x7);if(_0x26605a){const _0x5de476=_0x5d80d3[_0x26a62f(0x12a)]?.[_0x26605a],_0x3c7a82=_0x5de476?.[_0x26a62f(0x159)]===_0x1d2117?_0x5de476[_0x26a62f(0x147)]:0x0,_0x2457b2=_0x5de476?.[_0x26a62f(0x134)]===_0x2f981c?_0x5de476[_0x26a62f(0x144)]:0x0;return{'sessionCredits':_0xc8270e?_0xc8270e['totalCredits']:0x0,'todayCredits':_0x3c7a82,'monthCredits':_0x2457b2,'latestContextTokens':_0xc8270e?getMaxLatestContextTokens(_0xc8270e[_0x26a62f(0x137)]):0x0};}return{'sessionCredits':_0xc8270e?_0xc8270e[_0x26a62f(0x165)]:0x0,'todayCredits':_0x5d80d3[_0x26a62f(0x148)][_0x1d2117]?_0x5d80d3[_0x26a62f(0x148)][_0x1d2117][_0x26a62f(0x165)]:0x0,'monthCredits':_0x5d80d3[_0x26a62f(0x12e)][_0x2f981c]?_0x5d80d3['monthly'][_0x2f981c][_0x26a62f(0x165)]:0x0,'latestContextTokens':_0xc8270e?getMaxLatestContextTokens(_0xc8270e[_0x26a62f(0x137)]):0x0};}export async function getAllProfileStats(){const _0x1b56e4=a77_0x2be9,_0x5142b4=await getOrUpdateCache(),_0x5e7583=_0x5142b4[_0x1b56e4(0x12a)]||{};return Object[_0x1b56e4(0x151)](_0x5e7583)[_0x1b56e4(0x15c)](([,_0x1b521f])=>_0x1b521f&&typeof _0x1b521f==='object')[_0x1b56e4(0x155)](([_0x16dc33,_0x283896])=>({'profile':_0x16dc33,'credits':_0x283896[_0x1b56e4(0x165)]||0x0,'entryCount':_0x283896['entryCount']||0x0,'lastUsedAt':_0x283896[_0x1b56e4(0x158)]||''}))[_0x1b56e4(0x140)]((_0x537ded,_0x2e07ff)=>_0x2e07ff[_0x1b56e4(0x13a)]-_0x537ded[_0x1b56e4(0x13a)]);}export async function getAllSourceStats(){const _0x488534=a77_0x2be9,_0x59cdb4=await getOrUpdateCache(),_0x4e30fc=_0x59cdb4[_0x488534(0x154)]||{},_0xd0b0d3=new Date()[_0x488534(0x130)]()[_0x488534(0x14b)](0x0,0xa),_0x3e1935=new Date()[_0x488534(0x130)]()['slice'](0x0,0x7);return Object['entries'](_0x4e30fc)[_0x488534(0x15c)](([,_0x363901])=>_0x363901&&typeof _0x363901===_0x488534(0x13f))['map'](([_0x566abb,_0x22456c])=>({'source':_0x566abb,'credits':_0x22456c['totalCredits']||0x0,'todayCredits':_0x22456c['todayDate']===_0xd0b0d3?_0x22456c['todayCredits']||0x0:0x0,'monthCredits':_0x22456c[_0x488534(0x134)]===_0x3e1935?_0x22456c['monthCredits']||0x0:0x0,'entryCount':_0x22456c[_0x488534(0x14c)]||0x0}))[_0x488534(0x140)]((_0xf67375,_0x5e0d7f)=>_0x5e0d7f[_0x488534(0x13a)]-_0xf67375['credits']);}export async function getUsageSummary(){const _0x1cac35=a77_0x2be9,_0x575c45=await getOrUpdateCache(),_0x4924b2=_0x575c45['profiles']||{},_0x3fe356=new Date()['toISOString']()['slice'](0x0,0xa),_0x722dbb=new Date()[_0x1cac35(0x130)]()[_0x1cac35(0x14b)](0x0,0x7),_0x34628a=Object['values'](_0x4924b2)[_0x1cac35(0x15c)](_0x1fa4b2=>_0x1fa4b2&&typeof _0x1fa4b2===_0x1cac35(0x13f)),_0x466073=_0x34628a[_0x1cac35(0x150)]((_0xdfa85f,_0x984a84)=>_0xdfa85f+(_0x984a84[_0x1cac35(0x165)]||0x0),0x0);return{'todayCredits':_0x575c45['daily'][_0x3fe356]?_0x575c45[_0x1cac35(0x148)][_0x3fe356][_0x1cac35(0x165)]||0x0:0x0,'monthCredits':_0x575c45[_0x1cac35(0x12e)][_0x722dbb]?_0x575c45[_0x1cac35(0x12e)][_0x722dbb]['totalCredits']||0x0:0x0,'totalCredits':_0x466073,'profileCount':_0x34628a[_0x1cac35(0x15a)]};}
@@ -1 +1 @@
1
- const a78_0x4158db=a78_0x40bf;(function(_0x2d1a7b,_0x660c60){const _0x4e0072=a78_0x40bf,_0x578d9b=_0x2d1a7b();while(!![]){try{const _0x3823d0=parseInt(_0x4e0072(0x1c8))/0x1*(-parseInt(_0x4e0072(0x1ae))/0x2)+parseInt(_0x4e0072(0x20b))/0x3+-parseInt(_0x4e0072(0x198))/0x4+-parseInt(_0x4e0072(0x1db))/0x5+parseInt(_0x4e0072(0x1e1))/0x6+parseInt(_0x4e0072(0x19e))/0x7+parseInt(_0x4e0072(0x1d3))/0x8;if(_0x3823d0===_0x660c60)break;else _0x578d9b['push'](_0x578d9b['shift']());}catch(_0x3a671a){_0x578d9b['push'](_0x578d9b['shift']());}}}(a78_0x978b,0xda0ca));import a78_0x24540b from'fastify';import a78_0x3d4b03 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_0x4158db(0x196):'')+a78_0x4158db(0x1ff);function extractSessionUUID(_0x45bea2){const _0x363949=a78_0x4158db,_0x310220=_0x45bea2[_0x363949(0x1cc)](/_session_([a-f0-9-]+)$/i);if(_0x310220)return _0x310220[0x1];return _0x45bea2;}export function injectSystemPrompt(_0x3444fb,_0xbdac94){const _0x5d9b3b=a78_0x4158db,_0x11c9c9=_0x3444fb['system'];if(!_0x11c9c9)return{..._0x3444fb,'system':_0xbdac94};if(typeof _0x11c9c9===_0x5d9b3b(0x190))return{..._0x3444fb,'system':_0x11c9c9+'\x0a\x0a'+_0xbdac94};if(Array[_0x5d9b3b(0x1b4)](_0x11c9c9)){const _0x26276f={'type':_0x5d9b3b(0x1f4),'text':_0xbdac94};return{..._0x3444fb,'system':[..._0x11c9c9,_0x26276f]};}return _0x3444fb;}function a78_0x40bf(_0x448b69,_0x4e461b){_0x448b69=_0x448b69-0x175;const _0x978b4e=a78_0x978b();let _0x40bfb9=_0x978b4e[_0x448b69];return _0x40bfb9;}export function shouldInjectSystemPrompt(_0x3ce53d){const _0x3f6fe3=a78_0x4158db;return!_0x3ce53d[_0x3f6fe3(0x1c9)]()[_0x3f6fe3(0x1a6)](_0x3f6fe3(0x17b));}function a78_0x978b(){const _0xd69834=['[PASSTHROUGH]\x20Forwarding\x20count_tokens\x20to:\x20','connection','SKIP_HEADERS','Stream\x20interrupted','_boundPort','string','maxPortAttempts',',\x20cache_create=','host','http://127.0.0.1:','setupMiddleware','|\x20Debug\x20agent\x20issues\x20|\x20tdx-skills:agent-debug\x20|\x0a','auth','3736708dJHrsm','tdx-claude','[PASSTHROUGH]\x20OAuth\x20token\x20refresh\x20failed:','application/json','post','writeHead','8883686UApiWI','timeout','text/event-stream','createServer','user-agent','tdx','accessToken','startTokenRefreshTimer','includes','name','entries','indexOf','handleCountTokens','Authorization','logUsage','Forwarding\x20to:\x20','20kDOAih','addContentTypeParser','join','logger','Pass-through\x20proxy\x20server\x20started\x20on\x20port\x20','stream_error','isArray','url','flush','timeout_error','method','write','api_error','now','x-td-','setupJsonParser','Server\x20has\x20not\x20been\x20started\x20yet','event:\x20error\x0adata:\x20','cacheCreationInputTokens','register','[PASSTHROUGH\x20PROXY\x20ERROR]:','Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20','EADDRINUSE',',\x20stream=','refreshToken','header','65936QNxmMx','toLowerCase','error','Content-Type','match','timeoutMs','access_token','anthropic-version','getReader','127.0.0.1','type','7115424USnCab','usage','stringify','length','POST','getUsage','info','Error\x20body:\x20','6127740BfhkfK','no-cache','[PASSTHROUGH]\x20Stream\x20error:','[PASSTHROUGH]\x20Failed\x20to\x20log\x20usage:','startsWith','config','9123654QTbaGn','x-api-key','buildForwardHeaders','handleStreamingResponse','default','TD1\x20','profile',':\x20messages=','statusText','has','keep-alive','cacheReadInputTokens','Unknown\x20error','model','headers',',\x20output=','apiKey','[PASSTHROUGH]\x20Upstream\x20error:\x20','outputTokens','text','TimeoutError','messages','expiresAt','output_tokens','message','cache_read_input_tokens','port','cache_creation_input_tokens','authorization','unref','|\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|','code',',\x20model=','handleMessages',',\x20cache_read=','status','Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20','send','setupRoutes','No\x20available\x20port\x20found\x20between\x20','oauth','server','99240obrsVB','listen','body','stream','GET','refreshTimer','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20count_tokens\x20request:','debug','raw','/v1/messages/count_tokens','haiku','X-TD-Client','get','Pass-through\x20proxy\x20server\x20stopped','llmProxyUrl','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20request:','[PASSTHROUGH]\x20','/v1/messages','unknown','[PASSTHROUGH]\x20Usage:\x20input=','X-TD-Client-Version','read','refresh_token','/health','refreshTokenIfNeeded','decode'];a78_0x978b=function(){return _0xd69834;};return a78_0x978b();}const TOKEN_REFRESH_INTERVAL_MS=0x5*0x3c*0x3e8,TOKEN_EXPIRY_BUFFER_MS=0x5*0x3c*0x3e8;export class PassThroughProxyServer{[a78_0x4158db(0x20a)];[a78_0x4158db(0x1e0)];[a78_0x4158db(0x1b1)];[a78_0x4158db(0x18f)];[a78_0x4158db(0x176)];constructor(_0x1c8c87){const _0x4a6b57=a78_0x4158db;this['config']=_0x1c8c87,this[_0x4a6b57(0x1b1)]=_0x1c8c87[_0x4a6b57(0x1b1)],this[_0x4a6b57(0x20a)]=this[_0x4a6b57(0x1a1)]();}get[a78_0x4158db(0x1fb)](){const _0x1a5651=a78_0x4158db;if(this[_0x1a5651(0x18f)]===undefined)throw new Error(_0x1a5651(0x1be));return this['_boundPort'];}[a78_0x4158db(0x1a1)](){const _0x5b03c3=a78_0x4158db,_0x2e5557=a78_0x24540b({'logger':![],'bodyLimit':0x40*0x400*0x400});return this[_0x5b03c3(0x20a)]=_0x2e5557,this[_0x5b03c3(0x1bd)](),this[_0x5b03c3(0x195)](),this[_0x5b03c3(0x207)](),_0x2e5557;}[a78_0x4158db(0x1bd)](){const _0x1d80f5=a78_0x4158db;this[_0x1d80f5(0x20a)][_0x1d80f5(0x1af)](_0x1d80f5(0x19b),{'parseAs':_0x1d80f5(0x190)},(_0x4d5b67,_0x471989,_0x2e669b)=>{try{const _0x382f7f=JSON['parse'](_0x471989);_0x2e669b(null,_0x382f7f);}catch(_0x11c384){_0x2e669b(_0x11c384,undefined);}});}[a78_0x4158db(0x195)](){const _0x2c9707=a78_0x4158db;this[_0x2c9707(0x20a)][_0x2c9707(0x1c1)](a78_0x3d4b03,{'origin':!![],'methods':[_0x2c9707(0x175),'POST','OPTIONS'],'allowedHeaders':['Content-Type','Authorization',_0x2c9707(0x1cf),_0x2c9707(0x1e2)]}),this[_0x2c9707(0x20a)]['setErrorHandler']((_0x558820,_0x8574,_0x279505)=>{const _0x3cd791=_0x2c9707,_0x512364=_0x558820 instanceof Error?_0x558820[_0x3cd791(0x1f9)]:_0x3cd791(0x1ed);this['logger'][_0x3cd791(0x1ca)](_0x3cd791(0x1c2),_0x558820),_0x279505['code'](0x1f4)[_0x3cd791(0x206)]({'type':_0x3cd791(0x1ca),'error':{'type':'api_error','message':_0x512364}});});}[a78_0x4158db(0x207)](){const _0x361fb9=a78_0x4158db;this[_0x361fb9(0x20a)][_0x361fb9(0x17d)](_0x361fb9(0x188),async()=>{return{'status':'ok','message':'TD\x20LLM\x20Pass-through\x20Proxy\x20Server'};}),this[_0x361fb9(0x20a)][_0x361fb9(0x19c)](_0x361fb9(0x182),async(_0x23bf06,_0x5c622f)=>{const _0x1f4f27=_0x361fb9;return this[_0x1f4f27(0x202)](_0x23bf06,_0x5c622f);}),this[_0x361fb9(0x20a)][_0x361fb9(0x19c)](_0x361fb9(0x17a),async(_0x1f2572,_0x4f3ffb)=>{const _0x567cec=_0x361fb9;return this[_0x567cec(0x1aa)](_0x1f2572,_0x4f3ffb);});}static [a78_0x4158db(0x18d)]=new Set([a78_0x4158db(0x193),a78_0x4158db(0x18c),'content-length','transfer-encoding',a78_0x4158db(0x1fd),'x-api-key',a78_0x4158db(0x1a2)]);[a78_0x4158db(0x1e3)](_0x25922a){const _0x4c9691=a78_0x4158db,_0x16b6e1={};for(const [_0x252230,_0x5938b8]of Object[_0x4c9691(0x1a8)](_0x25922a[_0x4c9691(0x1ef)])){const _0x8a0f00=_0x252230['toLowerCase']();if(PassThroughProxyServer['SKIP_HEADERS'][_0x4c9691(0x1ea)](_0x8a0f00))continue;if(_0x8a0f00[_0x4c9691(0x1df)](_0x4c9691(0x1bc)))continue;if(typeof _0x5938b8===_0x4c9691(0x190))_0x16b6e1[_0x252230]=_0x5938b8;else Array[_0x4c9691(0x1b4)](_0x5938b8)&&(_0x16b6e1[_0x252230]=_0x5938b8[_0x4c9691(0x1b0)](',\x20'));}const _0x35c2cd=getVersion(),{auth:_0x4ff773}=this['config'];return _0x16b6e1[_0x4c9691(0x1ab)]=_0x4ff773[_0x4c9691(0x1d2)]===_0x4c9691(0x209)?'Bearer\x20'+_0x4ff773[_0x4c9691(0x1a4)]:_0x4c9691(0x1e6)+_0x4ff773[_0x4c9691(0x1f1)],_0x16b6e1['User-Agent']='tdx/'+_0x35c2cd,_0x16b6e1[_0x4c9691(0x17c)]=_0x4c9691(0x1a3),_0x16b6e1[_0x4c9691(0x185)]=_0x35c2cd,_0x16b6e1;}async[a78_0x4158db(0x202)](_0x5ab716,_0x4e1193){const _0x58c44e=a78_0x4158db,_0x52ae68=_0x5ab716['body'],_0x35f076=_0x52ae68[_0x58c44e(0x20e)]!==![],_0x54583c=_0x52ae68['metadata'],_0x521a8b=_0x54583c?.['user_id']||_0x58c44e(0x1e5),_0x2609fe=extractSessionUUID(_0x521a8b),_0x3bfa6c=_0x52ae68['model']||_0x58c44e(0x183),_0x5752aa=shouldInjectSystemPrompt(_0x3bfa6c)?injectSystemPrompt(_0x52ae68,TDX_SYSTEM_PROMPT):_0x52ae68,_0x3a451f=JSON[_0x58c44e(0x1d5)](_0x5752aa),_0xcc35c4=Array['isArray'](_0x52ae68[_0x58c44e(0x1f6)])?_0x52ae68[_0x58c44e(0x1f6)][_0x58c44e(0x1d6)]:0x0;this[_0x58c44e(0x1b1)][_0x58c44e(0x1d9)](_0x58c44e(0x181)+_0x5ab716[_0x58c44e(0x1b8)]+'\x20'+_0x5ab716['url']+_0x58c44e(0x1e8)+_0xcc35c4+_0x58c44e(0x201)+_0x3bfa6c+_0x58c44e(0x1c5)+_0x35f076);const _0x1bebdb=_0x5ab716[_0x58c44e(0x1b5)][_0x58c44e(0x1a6)]('?')?_0x5ab716[_0x58c44e(0x1b5)]['slice'](_0x5ab716[_0x58c44e(0x1b5)][_0x58c44e(0x1a9)]('?')):'',_0x1ea5a6=this['config'][_0x58c44e(0x17f)]+_0x58c44e(0x182)+_0x1bebdb,_0x365e2b=this['buildForwardHeaders'](_0x5ab716);this[_0x58c44e(0x1b1)][_0x58c44e(0x178)](_0x58c44e(0x1ad)+_0x1ea5a6);const _0x30f767=this[_0x58c44e(0x1e0)][_0x58c44e(0x1cd)]||DEFAULT_TIMEOUT_MS;try{const _0x53b5b4=await fetch(_0x1ea5a6,{'method':_0x58c44e(0x1d7),'headers':_0x365e2b,'body':_0x3a451f,'signal':AbortSignal[_0x58c44e(0x19f)](_0x30f767)});if(!_0x53b5b4['ok']){const _0x41c8b9=await _0x53b5b4[_0x58c44e(0x1f4)]();return this[_0x58c44e(0x1b1)][_0x58c44e(0x1ca)](_0x58c44e(0x1f2)+_0x53b5b4['status']+'\x20'+_0x53b5b4[_0x58c44e(0x1e9)]),this['logger']['debug'](_0x58c44e(0x1da)+_0x41c8b9),_0x4e1193[_0x58c44e(0x200)](_0x53b5b4[_0x58c44e(0x204)]),_0x4e1193[_0x58c44e(0x1c7)](_0x58c44e(0x1cb),_0x53b5b4[_0x58c44e(0x1ef)][_0x58c44e(0x17d)](_0x58c44e(0x1cb))||'application/json'),_0x4e1193[_0x58c44e(0x206)](_0x41c8b9);}if(_0x35f076&&_0x53b5b4[_0x58c44e(0x20d)])await this['handleStreamingResponse'](_0x53b5b4[_0x58c44e(0x20d)],_0x4e1193,_0x2609fe,_0x3bfa6c);else{const _0x3c373e=await _0x53b5b4[_0x58c44e(0x1f4)]();_0x4e1193[_0x58c44e(0x1c7)](_0x58c44e(0x1cb),_0x53b5b4[_0x58c44e(0x1ef)][_0x58c44e(0x17d)]('Content-Type')||'application/json');try{const _0x558289=JSON['parse'](_0x3c373e);_0x558289[_0x58c44e(0x1d4)]&&await this[_0x58c44e(0x1ac)](_0x2609fe,_0x3bfa6c,_0x558289[_0x58c44e(0x1d4)]['input_tokens']||0x0,_0x558289[_0x58c44e(0x1d4)][_0x58c44e(0x1f8)]||0x0,_0x558289[_0x58c44e(0x1d4)][_0x58c44e(0x1fc)],_0x558289[_0x58c44e(0x1d4)][_0x58c44e(0x1fa)]);}catch{}return _0x4e1193[_0x58c44e(0x206)](_0x3c373e);}}catch(_0x5a8896){const _0x2afbc3=_0x5a8896 instanceof Error?_0x5a8896[_0x58c44e(0x1f9)]:'Unknown\x20error',_0x35da95=_0x5a8896 instanceof Error&&_0x5a8896[_0x58c44e(0x1a7)]===_0x58c44e(0x1f5);this[_0x58c44e(0x1b1)][_0x58c44e(0x1ca)](_0x58c44e(0x180),_0x5a8896),_0x4e1193[_0x58c44e(0x200)](_0x35da95?0x1f8:0x1f7)['send']({'type':_0x58c44e(0x1ca),'error':{'type':_0x35da95?_0x58c44e(0x1b7):_0x58c44e(0x1ba),'message':_0x35da95?_0x58c44e(0x1c3)+_0x30f767+'ms':_0x58c44e(0x205)+_0x2afbc3}});}}async[a78_0x4158db(0x1e4)](_0x37490a,_0x3039b3,_0x15ccaa,_0x17dd62){const _0x61878b=a78_0x4158db;_0x3039b3[_0x61878b(0x179)][_0x61878b(0x19d)](0xc8,{'Content-Type':_0x61878b(0x1a0),'Cache-Control':_0x61878b(0x1dc),'Connection':_0x61878b(0x1eb)});const _0x3a72dc=new SSEUsageTracker(),_0x46e23a=_0x37490a[_0x61878b(0x1d0)](),_0x5d0531=new TextDecoder();try{while(!![]){const {done:_0x30682f,value:_0x5e9ab8}=await _0x46e23a[_0x61878b(0x186)]();if(_0x30682f)break;const _0x225ddc=_0x5d0531[_0x61878b(0x18a)](_0x5e9ab8,{'stream':!![]});_0x3a72dc['processChunk'](_0x225ddc),_0x3039b3[_0x61878b(0x179)][_0x61878b(0x1b9)](_0x225ddc);}_0x3a72dc[_0x61878b(0x1b6)]();const _0x11e939=_0x3a72dc[_0x61878b(0x1d8)]();(_0x11e939['inputTokens']>0x0||_0x11e939['outputTokens']>0x0)&&await this[_0x61878b(0x1ac)](_0x15ccaa,_0x17dd62,_0x11e939['inputTokens'],_0x11e939[_0x61878b(0x1f3)],_0x11e939[_0x61878b(0x1c0)],_0x11e939[_0x61878b(0x1ec)]);}catch(_0x42f9de){this[_0x61878b(0x1b1)]['error'](_0x61878b(0x1dd),_0x42f9de);const _0x3f9b9f=_0x61878b(0x1bf)+JSON[_0x61878b(0x1d5)]({'type':_0x61878b(0x1ca),'error':{'type':_0x61878b(0x1b3),'message':_0x61878b(0x18e)}})+'\x0a\x0a';_0x3039b3[_0x61878b(0x179)]['write'](_0x3f9b9f);}finally{_0x3039b3[_0x61878b(0x179)]['end']();}}async[a78_0x4158db(0x1aa)](_0x41a862,_0x5ac0a8){const _0x19b3f2=a78_0x4158db,_0x150423=_0x41a862[_0x19b3f2(0x20d)],_0x20bbc8=_0x41a862[_0x19b3f2(0x1b5)][_0x19b3f2(0x1a6)]('?')?_0x41a862[_0x19b3f2(0x1b5)]['slice'](_0x41a862['url'][_0x19b3f2(0x1a9)]('?')):'',_0x31bc75=this['config'][_0x19b3f2(0x17f)]+_0x19b3f2(0x17a)+_0x20bbc8,_0x24d2f8=this[_0x19b3f2(0x1e3)](_0x41a862),_0x4fd583=_0x150423[_0x19b3f2(0x1ee)]||'unknown',_0x18543b=shouldInjectSystemPrompt(_0x4fd583)?injectSystemPrompt(_0x150423,TDX_SYSTEM_PROMPT):_0x150423,_0x538ffd=JSON[_0x19b3f2(0x1d5)](_0x18543b);this[_0x19b3f2(0x1b1)][_0x19b3f2(0x178)](_0x19b3f2(0x18b)+_0x31bc75);const _0x23129a=this[_0x19b3f2(0x1e0)]['timeoutMs']||DEFAULT_TIMEOUT_MS;try{const _0x1ffbbb=await fetch(_0x31bc75,{'method':_0x19b3f2(0x1d7),'headers':_0x24d2f8,'body':_0x538ffd,'signal':AbortSignal[_0x19b3f2(0x19f)](_0x23129a)}),_0x3df765=await _0x1ffbbb[_0x19b3f2(0x1f4)]();return _0x5ac0a8['code'](_0x1ffbbb['status']),_0x5ac0a8[_0x19b3f2(0x1c7)](_0x19b3f2(0x1cb),_0x1ffbbb[_0x19b3f2(0x1ef)][_0x19b3f2(0x17d)]('Content-Type')||_0x19b3f2(0x19b)),_0x5ac0a8[_0x19b3f2(0x206)](_0x3df765);}catch(_0x21c012){const _0x2653ab=_0x21c012 instanceof Error?_0x21c012[_0x19b3f2(0x1f9)]:_0x19b3f2(0x1ed),_0x38232f=_0x21c012 instanceof Error&&_0x21c012[_0x19b3f2(0x1a7)]===_0x19b3f2(0x1f5);this[_0x19b3f2(0x1b1)][_0x19b3f2(0x1ca)](_0x19b3f2(0x177),_0x21c012),_0x5ac0a8[_0x19b3f2(0x200)](_0x38232f?0x1f8:0x1f7)[_0x19b3f2(0x206)]({'type':_0x19b3f2(0x1ca),'error':{'type':_0x38232f?'timeout_error':_0x19b3f2(0x1ba),'message':_0x38232f?_0x19b3f2(0x1c3)+_0x23129a+'ms':_0x19b3f2(0x205)+_0x2653ab}});}}async[a78_0x4158db(0x1ac)](_0x41dce8,_0x5773e0,_0x3bd8ff,_0x4b37d9,_0x3c0558,_0x17a6db){const _0xb32d69=a78_0x4158db,_0x440d54={'timestamp':new Date()['toISOString'](),'model':_0x5773e0,'inputTokens':_0x3bd8ff,'outputTokens':_0x4b37d9,'cacheCreationInputTokens':_0x3c0558,'cacheReadInputTokens':_0x17a6db,'profile':this[_0xb32d69(0x1e0)][_0xb32d69(0x1e7)],'source':_0xb32d69(0x199)},_0x28a749=_0x3c0558||_0x17a6db?_0xb32d69(0x192)+(_0x3c0558||0x0)+_0xb32d69(0x203)+(_0x17a6db||0x0):'';this[_0xb32d69(0x1b1)][_0xb32d69(0x178)](_0xb32d69(0x184)+_0x3bd8ff+_0xb32d69(0x1f0)+_0x4b37d9+_0x28a749+',\x20model='+_0x5773e0);try{await appendUsageEntry(_0x41dce8,_0x440d54);}catch(_0x9d4c5b){this['logger'][_0xb32d69(0x1ca)](_0xb32d69(0x1de),_0x9d4c5b);}}[a78_0x4158db(0x1a5)](){const _0x568d56=a78_0x4158db;if(this[_0x568d56(0x1e0)][_0x568d56(0x197)][_0x568d56(0x1d2)]!==_0x568d56(0x209))return;this[_0x568d56(0x176)]=setInterval(()=>{const _0x4c302f=_0x568d56;void this[_0x4c302f(0x189)]();},TOKEN_REFRESH_INTERVAL_MS),this[_0x568d56(0x176)][_0x568d56(0x1fe)]();}async[a78_0x4158db(0x189)](){const _0x2f22be=a78_0x4158db,{auth:_0x3ceef5}=this['config'];if(_0x3ceef5['type']!==_0x2f22be(0x209))return;const _0x710451=!_0x3ceef5['expiresAt']||_0x3ceef5[_0x2f22be(0x1f7)]<Date[_0x2f22be(0x1bb)]()+TOKEN_EXPIRY_BUFFER_MS;if(!_0x710451)return;try{const _0xa3ea8c=await refreshAccessToken(_0x3ceef5['consoleUrl'],_0x3ceef5[_0x2f22be(0x1c6)]);_0x3ceef5['accessToken']=_0xa3ea8c[_0x2f22be(0x1ce)],_0x3ceef5['refreshToken']=_0xa3ea8c[_0x2f22be(0x187)],_0x3ceef5[_0x2f22be(0x1f7)]=_0xa3ea8c['expires_at'],await saveOAuthTokens(_0xa3ea8c,this[_0x2f22be(0x1e0)][_0x2f22be(0x1e7)]),this[_0x2f22be(0x1b1)][_0x2f22be(0x1d9)]('[PASSTHROUGH]\x20OAuth\x20token\x20refreshed\x20successfully');}catch(_0x3ff6fd){this[_0x2f22be(0x1b1)][_0x2f22be(0x1ca)](_0x2f22be(0x19a),_0x3ff6fd);}}async['start'](){const _0x182867=a78_0x4158db,_0x214236=this[_0x182867(0x1e0)][_0x182867(0x191)]??0x64;for(let _0x57c747=0x0;_0x57c747<_0x214236;_0x57c747++){const _0x190d8f=this[_0x182867(0x1e0)]['startPort']+_0x57c747;try{await this['server'][_0x182867(0x20c)]({'port':_0x190d8f,'host':_0x182867(0x1d1)}),this['_boundPort']=_0x190d8f,this[_0x182867(0x1b1)][_0x182867(0x1d9)](_0x182867(0x1b2)+_0x190d8f),this['logger'][_0x182867(0x1d9)](_0x182867(0x1ad)+this[_0x182867(0x1e0)]['llmProxyUrl']),this['startTokenRefreshTimer']();return;}catch(_0x66f9f5){const _0x413623=_0x66f9f5 instanceof Error&&_0x182867(0x200)in _0x66f9f5&&_0x66f9f5[_0x182867(0x200)]===_0x182867(0x1c4);if(!_0x413623)throw _0x66f9f5;this['logger'][_0x182867(0x178)]('Port\x20'+_0x190d8f+'\x20in\x20use,\x20trying\x20next...'),this[_0x182867(0x1a1)]();}}const _0x5b0dd5=this[_0x182867(0x1e0)]['startPort']+_0x214236-0x1;throw new Error(_0x182867(0x208)+this[_0x182867(0x1e0)]['startPort']+'\x20and\x20'+_0x5b0dd5);}async['stop'](){const _0x324d0c=a78_0x4158db;this[_0x324d0c(0x176)]&&(clearInterval(this[_0x324d0c(0x176)]),this[_0x324d0c(0x176)]=undefined),await this[_0x324d0c(0x20a)]['close'](),this[_0x324d0c(0x1b1)][_0x324d0c(0x1d9)](_0x324d0c(0x17e));}['getAddress'](){const _0x2be8a7=a78_0x4158db;return _0x2be8a7(0x194)+this[_0x2be8a7(0x1fb)];}}
1
+ const a78_0x22e0af=a78_0x1d02;(function(_0x9d36f4,_0x38f1f5){const _0x593197=a78_0x1d02,_0x287c63=_0x9d36f4();while(!![]){try{const _0x2ef7a8=parseInt(_0x593197(0x1c5))/0x1*(parseInt(_0x593197(0x17b))/0x2)+parseInt(_0x593197(0x139))/0x3*(parseInt(_0x593197(0x1a1))/0x4)+parseInt(_0x593197(0x1c9))/0x5*(parseInt(_0x593197(0x155))/0x6)+-parseInt(_0x593197(0x1b5))/0x7+-parseInt(_0x593197(0x1ba))/0x8+parseInt(_0x593197(0x1c3))/0x9*(-parseInt(_0x593197(0x17d))/0xa)+-parseInt(_0x593197(0x1c8))/0xb;if(_0x2ef7a8===_0x38f1f5)break;else _0x287c63['push'](_0x287c63['shift']());}catch(_0x59e5a0){_0x287c63['push'](_0x287c63['shift']());}}}(a78_0x5135,0xd71a8));import a78_0x3e2b0e from'fastify';import a78_0xcceceb from'@fastify/cors';import{SSEUsageTracker}from'./sse-usage-parser.js';import{appendUsageEntry}from'./claude-usage-tracker.js';import{getVersion}from'../core/version.js';import{isExperimentalAvailable}from'../core/config.js';function a78_0x1d02(_0x8871e2,_0x559e4c){_0x8871e2=_0x8871e2-0x136;const _0x513565=a78_0x5135();let _0x1d02b3=_0x513565[_0x8871e2];return _0x1d02b3;}import{refreshAccessToken}from'../sdk/client/oauth-refresh.js';import{saveOAuthTokens}from'../core/oauth-keychain.js';function a78_0x5135(){const _0x1ea6f6=['haiku','headers','application/json','Port\x20','metadata','Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20','Stream\x20interrupted','send','TD\x20LLM\x20Pass-through\x20Proxy\x20Server','setupMiddleware','anthropic-version',',\x20model=','Forwarding\x20to:\x20','cache_read_input_tokens','Bearer\x20','writeHead','listen','user_id',',\x20cache_read=','match','9043404eaFWIW','raw','type','toISOString','/v1/messages','stringify','refresh_token','string','[PASSTHROUGH]\x20Forwarding\x20count_tokens\x20to:\x20','refreshTokenIfNeeded','Error\x20body:\x20','statusText','cacheCreationInputTokens',',\x20output=','now','[PASSTHROUGH]\x20Upstream\x20error:\x20','No\x20available\x20port\x20found\x20between\x20','expires_at','body','tdx-claude','debug','apiKey','tdx','api_error','content-length','get','flush','|\x20Debug\x20agent\x20issues\x20|\x20tdx-skills:agent-debug\x20|\x0a','processChunk','Content-Type','unref','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20request:','join','startPort','Authorization','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','handleCountTokens','addContentTypeParser','2394398YiKSMp','post','544980CGewES','TimeoutError','usage','x-api-key','config','messages','handleStreamingResponse','timeoutMs','[PASSTHROUGH]\x20OAuth\x20token\x20refreshed\x20successfully','user-agent','handleMessages','unknown','start','llmProxyUrl','has','end','TD1\x20','logUsage','accessToken','logger','stream','cacheReadInputTokens','server','write','getUsage','error','host','model','User-Agent','expiresAt','createServer','register','EADDRINUSE','_boundPort','Pass-through\x20proxy\x20server\x20started\x20on\x20port\x20','info','124708GfTmRb','startTokenRefreshTimer','outputTokens',',\x20cache_create=','buildForwardHeaders','system','refreshTimer','read','entries','url','event:\x20error\x0adata:\x20','header','timeout','code','oauth','text/event-stream','getReader','message','maxPortAttempts','tdx/','3677996VNSgJL','profile','Pass-through\x20proxy\x20server\x20stopped','indexOf','parse','1915360lPtJRe','auth','isArray','toLowerCase','Unknown\x20error','method','SKIP_HEADERS','/health','Server\x20has\x20not\x20been\x20started\x20yet','171OJeyCb','POST','1ckeYaz','X-TD-Client-Version','/v1/messages/count_tokens','17400999rzkKuh','5XTTuPU','setErrorHandler','http://127.0.0.1:','Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20','startsWith','150SNAKwr','X-TD-Client','name','text','setupJsonParser','inputTokens','no-cache','port'];a78_0x5135=function(){return _0x1ea6f6;};return a78_0x5135();}const DEFAULT_TIMEOUT_MS=0x5*0x3c*0x3e8,TDX_SYSTEM_PROMPT=a78_0x22e0af(0x178)+(isExperimentalAvailable()?a78_0x22e0af(0x170):'')+'|\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|';function extractSessionUUID(_0x435748){const _0x71ec2=a78_0x22e0af,_0x555bf1=_0x435748[_0x71ec2(0x154)](/_session_([a-f0-9-]+)$/i);if(_0x555bf1)return _0x555bf1[0x1];return _0x435748;}export function injectSystemPrompt(_0x45de0c,_0x137d76){const _0x5b7b9a=a78_0x22e0af,_0x16347c=_0x45de0c[_0x5b7b9a(0x1a6)];if(!_0x16347c)return{..._0x45de0c,'system':_0x137d76};if(typeof _0x16347c===_0x5b7b9a(0x15c))return{..._0x45de0c,'system':_0x16347c+'\x0a\x0a'+_0x137d76};if(Array[_0x5b7b9a(0x1bc)](_0x16347c)){const _0x60134e={'type':_0x5b7b9a(0x13c),'text':_0x137d76};return{..._0x45de0c,'system':[..._0x16347c,_0x60134e]};}return _0x45de0c;}export function shouldInjectSystemPrompt(_0x6b6a72){const _0x2e7729=a78_0x22e0af;return!_0x6b6a72[_0x2e7729(0x1bd)]()['includes'](_0x2e7729(0x141));}const TOKEN_REFRESH_INTERVAL_MS=0x5*0x3c*0x3e8,TOKEN_EXPIRY_BUFFER_MS=0x5*0x3c*0x3e8;export class PassThroughProxyServer{[a78_0x22e0af(0x193)];[a78_0x22e0af(0x181)];[a78_0x22e0af(0x190)];[a78_0x22e0af(0x19e)];[a78_0x22e0af(0x1a7)];constructor(_0x9c95d3){const _0x391177=a78_0x22e0af;this['config']=_0x9c95d3,this['logger']=_0x9c95d3[_0x391177(0x190)],this[_0x391177(0x193)]=this[_0x391177(0x19b)]();}get['port'](){const _0x51032c=a78_0x22e0af;if(this[_0x51032c(0x19e)]===undefined)throw new Error(_0x51032c(0x1c2));return this[_0x51032c(0x19e)];}[a78_0x22e0af(0x19b)](){const _0x4044ee=a78_0x22e0af,_0x2b2f57=a78_0x3e2b0e({'logger':![],'bodyLimit':0x40*0x400*0x400});return this[_0x4044ee(0x193)]=_0x2b2f57,this[_0x4044ee(0x13d)](),this[_0x4044ee(0x14a)](),this['setupRoutes'](),_0x2b2f57;}['setupJsonParser'](){const _0x446c1f=a78_0x22e0af;this[_0x446c1f(0x193)][_0x446c1f(0x17a)](_0x446c1f(0x143),{'parseAs':_0x446c1f(0x15c)},(_0x5b54be,_0x38bd57,_0xbb6f0e)=>{const _0x10c2da=_0x446c1f;try{const _0x4bac24=JSON[_0x10c2da(0x1b9)](_0x38bd57);_0xbb6f0e(null,_0x4bac24);}catch(_0x4e704d){_0xbb6f0e(_0x4e704d,undefined);}});}[a78_0x22e0af(0x14a)](){const _0x57a63d=a78_0x22e0af;this[_0x57a63d(0x193)][_0x57a63d(0x19c)](a78_0xcceceb,{'origin':!![],'methods':['GET','POST','OPTIONS'],'allowedHeaders':[_0x57a63d(0x172),_0x57a63d(0x177),_0x57a63d(0x14b),'x-api-key']}),this[_0x57a63d(0x193)][_0x57a63d(0x1ca)]((_0x1c64b5,_0x51483b,_0x5a4894)=>{const _0x4cd2e4=_0x57a63d,_0xb82b16=_0x1c64b5 instanceof Error?_0x1c64b5[_0x4cd2e4(0x1b2)]:'Unknown\x20error';this['logger']['error']('[PASSTHROUGH\x20PROXY\x20ERROR]:',_0x1c64b5),_0x5a4894[_0x4cd2e4(0x1ae)](0x1f4)['send']({'type':_0x4cd2e4(0x196),'error':{'type':_0x4cd2e4(0x16c),'message':_0xb82b16}});});}['setupRoutes'](){const _0x2e0da3=a78_0x22e0af;this[_0x2e0da3(0x193)][_0x2e0da3(0x16e)](_0x2e0da3(0x1c1),async()=>{const _0x59ba9d=_0x2e0da3;return{'status':'ok','message':_0x59ba9d(0x149)};}),this[_0x2e0da3(0x193)][_0x2e0da3(0x17c)](_0x2e0da3(0x159),async(_0x46defa,_0x4aa67e)=>{return this['handleMessages'](_0x46defa,_0x4aa67e);}),this[_0x2e0da3(0x193)][_0x2e0da3(0x17c)](_0x2e0da3(0x1c7),async(_0x469c63,_0x5a3d41)=>{const _0x28363d=_0x2e0da3;return this[_0x28363d(0x179)](_0x469c63,_0x5a3d41);});}static ['SKIP_HEADERS']=new Set([a78_0x22e0af(0x197),'connection',a78_0x22e0af(0x16d),'transfer-encoding','authorization',a78_0x22e0af(0x180),a78_0x22e0af(0x186)]);[a78_0x22e0af(0x1a5)](_0x13e309){const _0xfe05fe=a78_0x22e0af,_0x4e5ed9={};for(const [_0xdfbe1e,_0x541794]of Object[_0xfe05fe(0x1a9)](_0x13e309[_0xfe05fe(0x142)])){const _0x33dee2=_0xdfbe1e['toLowerCase']();if(PassThroughProxyServer[_0xfe05fe(0x1c0)][_0xfe05fe(0x18b)](_0x33dee2))continue;if(_0x33dee2[_0xfe05fe(0x138)]('x-td-'))continue;if(typeof _0x541794==='string')_0x4e5ed9[_0xdfbe1e]=_0x541794;else Array['isArray'](_0x541794)&&(_0x4e5ed9[_0xdfbe1e]=_0x541794[_0xfe05fe(0x175)](',\x20'));}const _0xa928e7=getVersion(),{auth:_0x2a4d93}=this[_0xfe05fe(0x181)];return _0x4e5ed9[_0xfe05fe(0x177)]=_0x2a4d93[_0xfe05fe(0x157)]==='oauth'?_0xfe05fe(0x14f)+_0x2a4d93[_0xfe05fe(0x18f)]:_0xfe05fe(0x18d)+_0x2a4d93[_0xfe05fe(0x16a)],_0x4e5ed9[_0xfe05fe(0x199)]=_0xfe05fe(0x1b4)+_0xa928e7,_0x4e5ed9[_0xfe05fe(0x13a)]=_0xfe05fe(0x16b),_0x4e5ed9[_0xfe05fe(0x1c6)]=_0xa928e7,_0x4e5ed9;}async[a78_0x22e0af(0x187)](_0x302436,_0x546d4c){const _0x144e9c=a78_0x22e0af,_0x3c5466=_0x302436[_0x144e9c(0x167)],_0x181b8b=_0x3c5466[_0x144e9c(0x191)]!==![],_0x59d770=_0x3c5466[_0x144e9c(0x145)],_0x8dc05b=_0x59d770?.[_0x144e9c(0x152)]||'default',_0x4f7f59=extractSessionUUID(_0x8dc05b),_0x5c111e=_0x3c5466[_0x144e9c(0x198)]||_0x144e9c(0x188),_0x296606=shouldInjectSystemPrompt(_0x5c111e)?injectSystemPrompt(_0x3c5466,TDX_SYSTEM_PROMPT):_0x3c5466,_0x4b6377=JSON[_0x144e9c(0x15a)](_0x296606),_0x352b9d=Array['isArray'](_0x3c5466['messages'])?_0x3c5466[_0x144e9c(0x182)]['length']:0x0;this[_0x144e9c(0x190)][_0x144e9c(0x1a0)]('[PASSTHROUGH]\x20'+_0x302436[_0x144e9c(0x1bf)]+'\x20'+_0x302436[_0x144e9c(0x1aa)]+':\x20messages='+_0x352b9d+_0x144e9c(0x14c)+_0x5c111e+',\x20stream='+_0x181b8b);const _0x5c2f3e=_0x302436[_0x144e9c(0x1aa)]['includes']('?')?_0x302436['url']['slice'](_0x302436[_0x144e9c(0x1aa)][_0x144e9c(0x1b8)]('?')):'',_0x379d00=this['config'][_0x144e9c(0x18a)]+_0x144e9c(0x159)+_0x5c2f3e,_0x3c3b6f=this['buildForwardHeaders'](_0x302436);this[_0x144e9c(0x190)][_0x144e9c(0x169)](_0x144e9c(0x14d)+_0x379d00);const _0x2f95db=this[_0x144e9c(0x181)][_0x144e9c(0x184)]||DEFAULT_TIMEOUT_MS;try{const _0x26010f=await fetch(_0x379d00,{'method':_0x144e9c(0x1c4),'headers':_0x3c3b6f,'body':_0x4b6377,'signal':AbortSignal[_0x144e9c(0x1ad)](_0x2f95db)});if(!_0x26010f['ok']){const _0x23c4b8=await _0x26010f[_0x144e9c(0x13c)]();return this[_0x144e9c(0x190)]['error'](_0x144e9c(0x164)+_0x26010f['status']+'\x20'+_0x26010f[_0x144e9c(0x160)]),this['logger'][_0x144e9c(0x169)](_0x144e9c(0x15f)+_0x23c4b8),_0x546d4c[_0x144e9c(0x1ae)](_0x26010f['status']),_0x546d4c['header'](_0x144e9c(0x172),_0x26010f[_0x144e9c(0x142)][_0x144e9c(0x16e)](_0x144e9c(0x172))||_0x144e9c(0x143)),_0x546d4c['send'](_0x23c4b8);}if(_0x181b8b&&_0x26010f[_0x144e9c(0x167)])await this[_0x144e9c(0x183)](_0x26010f['body'],_0x546d4c,_0x4f7f59,_0x5c111e);else{const _0x2ff9c3=await _0x26010f[_0x144e9c(0x13c)]();_0x546d4c['header'](_0x144e9c(0x172),_0x26010f[_0x144e9c(0x142)][_0x144e9c(0x16e)](_0x144e9c(0x172))||'application/json');try{const _0xca1a1e=JSON[_0x144e9c(0x1b9)](_0x2ff9c3);_0xca1a1e[_0x144e9c(0x17f)]&&await this[_0x144e9c(0x18e)](_0x4f7f59,_0x5c111e,_0xca1a1e['usage']['input_tokens']||0x0,_0xca1a1e['usage']['output_tokens']||0x0,_0xca1a1e[_0x144e9c(0x17f)]['cache_creation_input_tokens'],_0xca1a1e['usage'][_0x144e9c(0x14e)]);}catch{}return _0x546d4c[_0x144e9c(0x148)](_0x2ff9c3);}}catch(_0x48dc14){const _0x1bc413=_0x48dc14 instanceof Error?_0x48dc14[_0x144e9c(0x1b2)]:_0x144e9c(0x1be),_0x4096ba=_0x48dc14 instanceof Error&&_0x48dc14['name']===_0x144e9c(0x17e);this[_0x144e9c(0x190)][_0x144e9c(0x196)](_0x144e9c(0x174),_0x48dc14),_0x546d4c[_0x144e9c(0x1ae)](_0x4096ba?0x1f8:0x1f7)['send']({'type':_0x144e9c(0x196),'error':{'type':_0x4096ba?'timeout_error':_0x144e9c(0x16c),'message':_0x4096ba?_0x144e9c(0x137)+_0x2f95db+'ms':_0x144e9c(0x146)+_0x1bc413}});}}async['handleStreamingResponse'](_0xb3e7a,_0x213045,_0x171c84,_0x354211){const _0x1d6a7d=a78_0x22e0af;_0x213045[_0x1d6a7d(0x156)][_0x1d6a7d(0x150)](0xc8,{'Content-Type':_0x1d6a7d(0x1b0),'Cache-Control':_0x1d6a7d(0x13f),'Connection':'keep-alive'});const _0x3cb029=new SSEUsageTracker(),_0x4f4eb9=_0xb3e7a[_0x1d6a7d(0x1b1)](),_0x5bb247=new TextDecoder();try{while(!![]){const {done:_0x5c33ba,value:_0x5df287}=await _0x4f4eb9[_0x1d6a7d(0x1a8)]();if(_0x5c33ba)break;const _0x2794de=_0x5bb247['decode'](_0x5df287,{'stream':!![]});_0x3cb029[_0x1d6a7d(0x171)](_0x2794de),_0x213045['raw'][_0x1d6a7d(0x194)](_0x2794de);}_0x3cb029[_0x1d6a7d(0x16f)]();const _0x775189=_0x3cb029[_0x1d6a7d(0x195)]();(_0x775189[_0x1d6a7d(0x13e)]>0x0||_0x775189[_0x1d6a7d(0x1a3)]>0x0)&&await this['logUsage'](_0x171c84,_0x354211,_0x775189[_0x1d6a7d(0x13e)],_0x775189[_0x1d6a7d(0x1a3)],_0x775189[_0x1d6a7d(0x161)],_0x775189[_0x1d6a7d(0x192)]);}catch(_0x376588){this['logger']['error']('[PASSTHROUGH]\x20Stream\x20error:',_0x376588);const _0x35bb2d=_0x1d6a7d(0x1ab)+JSON['stringify']({'type':'error','error':{'type':'stream_error','message':_0x1d6a7d(0x147)}})+'\x0a\x0a';_0x213045[_0x1d6a7d(0x156)][_0x1d6a7d(0x194)](_0x35bb2d);}finally{_0x213045[_0x1d6a7d(0x156)][_0x1d6a7d(0x18c)]();}}async[a78_0x22e0af(0x179)](_0x530b07,_0x1ef077){const _0x5b3739=a78_0x22e0af,_0x1a3fd6=_0x530b07['body'],_0x44ead5=_0x530b07[_0x5b3739(0x1aa)]['includes']('?')?_0x530b07[_0x5b3739(0x1aa)]['slice'](_0x530b07[_0x5b3739(0x1aa)][_0x5b3739(0x1b8)]('?')):'',_0x14c65b=this[_0x5b3739(0x181)]['llmProxyUrl']+'/v1/messages/count_tokens'+_0x44ead5,_0x358ffe=this[_0x5b3739(0x1a5)](_0x530b07),_0x28b26e=_0x1a3fd6[_0x5b3739(0x198)]||'unknown',_0x27aaa3=shouldInjectSystemPrompt(_0x28b26e)?injectSystemPrompt(_0x1a3fd6,TDX_SYSTEM_PROMPT):_0x1a3fd6,_0x494bf8=JSON['stringify'](_0x27aaa3);this[_0x5b3739(0x190)]['debug'](_0x5b3739(0x15d)+_0x14c65b);const _0x27ae97=this[_0x5b3739(0x181)][_0x5b3739(0x184)]||DEFAULT_TIMEOUT_MS;try{const _0x2c01b8=await fetch(_0x14c65b,{'method':_0x5b3739(0x1c4),'headers':_0x358ffe,'body':_0x494bf8,'signal':AbortSignal[_0x5b3739(0x1ad)](_0x27ae97)}),_0x1f5e54=await _0x2c01b8[_0x5b3739(0x13c)]();return _0x1ef077[_0x5b3739(0x1ae)](_0x2c01b8['status']),_0x1ef077[_0x5b3739(0x1ac)](_0x5b3739(0x172),_0x2c01b8['headers']['get']('Content-Type')||_0x5b3739(0x143)),_0x1ef077[_0x5b3739(0x148)](_0x1f5e54);}catch(_0x8dc721){const _0x38b628=_0x8dc721 instanceof Error?_0x8dc721[_0x5b3739(0x1b2)]:'Unknown\x20error',_0x167188=_0x8dc721 instanceof Error&&_0x8dc721[_0x5b3739(0x13b)]===_0x5b3739(0x17e);this['logger'][_0x5b3739(0x196)]('[PASSTHROUGH]\x20Failed\x20to\x20forward\x20count_tokens\x20request:',_0x8dc721),_0x1ef077[_0x5b3739(0x1ae)](_0x167188?0x1f8:0x1f7)[_0x5b3739(0x148)]({'type':'error','error':{'type':_0x167188?'timeout_error':_0x5b3739(0x16c),'message':_0x167188?_0x5b3739(0x137)+_0x27ae97+'ms':_0x5b3739(0x146)+_0x38b628}});}}async[a78_0x22e0af(0x18e)](_0x2e3e23,_0x31dc82,_0x41bf4c,_0x3091fc,_0x10aefc,_0x6ceb0){const _0x263563=a78_0x22e0af,_0xd0913={'timestamp':new Date()[_0x263563(0x158)](),'model':_0x31dc82,'inputTokens':_0x41bf4c,'outputTokens':_0x3091fc,'cacheCreationInputTokens':_0x10aefc,'cacheReadInputTokens':_0x6ceb0,'profile':this[_0x263563(0x181)][_0x263563(0x1b6)],'source':_0x263563(0x168)},_0x5c114a=_0x10aefc||_0x6ceb0?_0x263563(0x1a4)+(_0x10aefc||0x0)+_0x263563(0x153)+(_0x6ceb0||0x0):'';this['logger']['debug']('[PASSTHROUGH]\x20Usage:\x20input='+_0x41bf4c+_0x263563(0x162)+_0x3091fc+_0x5c114a+_0x263563(0x14c)+_0x31dc82);try{await appendUsageEntry(_0x2e3e23,_0xd0913);}catch(_0x39ff64){this[_0x263563(0x190)][_0x263563(0x196)]('[PASSTHROUGH]\x20Failed\x20to\x20log\x20usage:',_0x39ff64);}}[a78_0x22e0af(0x1a2)](){const _0x3f5221=a78_0x22e0af;if(this[_0x3f5221(0x181)][_0x3f5221(0x1bb)][_0x3f5221(0x157)]!==_0x3f5221(0x1af))return;this['refreshTimer']=setInterval(()=>{void this['refreshTokenIfNeeded']();},TOKEN_REFRESH_INTERVAL_MS),this[_0x3f5221(0x1a7)][_0x3f5221(0x173)]();}async[a78_0x22e0af(0x15e)](){const _0x56335f=a78_0x22e0af,{auth:_0x343d4d}=this[_0x56335f(0x181)];if(_0x343d4d['type']!=='oauth')return;const _0x3fed71=!_0x343d4d[_0x56335f(0x19a)]||_0x343d4d[_0x56335f(0x19a)]<Date[_0x56335f(0x163)]()+TOKEN_EXPIRY_BUFFER_MS;if(!_0x3fed71)return;try{const _0x5ea28e=await refreshAccessToken(_0x343d4d['consoleUrl'],_0x343d4d['refreshToken']);_0x343d4d[_0x56335f(0x18f)]=_0x5ea28e['access_token'],_0x343d4d['refreshToken']=_0x5ea28e[_0x56335f(0x15b)],_0x343d4d[_0x56335f(0x19a)]=_0x5ea28e[_0x56335f(0x166)],await saveOAuthTokens(_0x5ea28e,this['config'][_0x56335f(0x1b6)]),this[_0x56335f(0x190)][_0x56335f(0x1a0)](_0x56335f(0x185));}catch(_0x33a145){this[_0x56335f(0x190)][_0x56335f(0x196)]('[PASSTHROUGH]\x20OAuth\x20token\x20refresh\x20failed:',_0x33a145);}}async[a78_0x22e0af(0x189)](){const _0xaab957=a78_0x22e0af,_0x4bba48=this[_0xaab957(0x181)][_0xaab957(0x1b3)]??0x64;for(let _0x4e674c=0x0;_0x4e674c<_0x4bba48;_0x4e674c++){const _0x37bd0d=this['config'][_0xaab957(0x176)]+_0x4e674c;try{await this['server'][_0xaab957(0x151)]({'port':_0x37bd0d,'host':'127.0.0.1'}),this['_boundPort']=_0x37bd0d,this[_0xaab957(0x190)][_0xaab957(0x1a0)](_0xaab957(0x19f)+_0x37bd0d),this[_0xaab957(0x190)][_0xaab957(0x1a0)](_0xaab957(0x14d)+this[_0xaab957(0x181)]['llmProxyUrl']),this['startTokenRefreshTimer']();return;}catch(_0x15132d){const _0x424760=_0x15132d instanceof Error&&_0xaab957(0x1ae)in _0x15132d&&_0x15132d[_0xaab957(0x1ae)]===_0xaab957(0x19d);if(!_0x424760)throw _0x15132d;this[_0xaab957(0x190)]['debug'](_0xaab957(0x144)+_0x37bd0d+'\x20in\x20use,\x20trying\x20next...'),this[_0xaab957(0x19b)]();}}const _0x530126=this[_0xaab957(0x181)]['startPort']+_0x4bba48-0x1;throw new Error(_0xaab957(0x165)+this['config'][_0xaab957(0x176)]+'\x20and\x20'+_0x530126);}async['stop'](){const _0x253b25=a78_0x22e0af;this[_0x253b25(0x1a7)]&&(clearInterval(this[_0x253b25(0x1a7)]),this['refreshTimer']=undefined),await this[_0x253b25(0x193)]['close'](),this[_0x253b25(0x190)][_0x253b25(0x1a0)](_0x253b25(0x1b7));}['getAddress'](){const _0x2a31f7=a78_0x22e0af;return _0x2a31f7(0x136)+this[_0x2a31f7(0x140)];}}
@@ -1 +1 @@
1
- const a79_0x359e31=a79_0x2835;(function(_0x353d17,_0x56780d){const _0x52e1c3=a79_0x2835,_0x13ec35=_0x353d17();while(!![]){try{const _0x3a7384=-parseInt(_0x52e1c3(0x123))/0x1+parseInt(_0x52e1c3(0x12b))/0x2+parseInt(_0x52e1c3(0x118))/0x3+parseInt(_0x52e1c3(0x12f))/0x4+parseInt(_0x52e1c3(0x11f))/0x5+parseInt(_0x52e1c3(0x110))/0x6+parseInt(_0x52e1c3(0x117))/0x7*(-parseInt(_0x52e1c3(0x121))/0x8);if(_0x3a7384===_0x56780d)break;else _0x13ec35['push'](_0x13ec35['shift']());}catch(_0x37da35){_0x13ec35['push'](_0x13ec35['shift']());}}}(a79_0x32f9,0xd9807));export function parseSSEChunk(_0x2fe1d5){const _0x32d4ae=a79_0x2835,_0x4dd64e=[],_0x239437=_0x2fe1d5[_0x32d4ae(0x112)]('\x0a\x0a'),_0x13b6f0=_0x239437[_0x32d4ae(0x113)]()||'';for(const _0x179eb2 of _0x239437){if(!_0x179eb2[_0x32d4ae(0x120)]())continue;const _0x53d3da={},_0x6cab94=_0x179eb2[_0x32d4ae(0x112)]('\x0a');for(const _0x1d5ed5 of _0x6cab94){if(_0x1d5ed5[_0x32d4ae(0x119)](_0x32d4ae(0x10b)))_0x53d3da[_0x32d4ae(0x12c)]=_0x1d5ed5['slice'](0x7);else _0x1d5ed5[_0x32d4ae(0x119)]('data:\x20')&&(_0x53d3da[_0x32d4ae(0x11b)]=_0x1d5ed5[_0x32d4ae(0x10d)](0x6));}(_0x53d3da[_0x32d4ae(0x12c)]||_0x53d3da[_0x32d4ae(0x11b)])&&_0x4dd64e[_0x32d4ae(0x11e)](_0x53d3da);}return{'events':_0x4dd64e,'remaining':_0x13b6f0};}export function extractMessageStartUsage(_0x150819){const _0x58e846=a79_0x2835;try{const _0x5f44c4=JSON[_0x58e846(0x126)](_0x150819);if(_0x5f44c4[_0x58e846(0x116)]==='message_start'&&_0x5f44c4[_0x58e846(0x12d)]?.[_0x58e846(0x114)]){const _0x39d23f=_0x5f44c4[_0x58e846(0x12d)][_0x58e846(0x114)];return{'inputTokens':_0x39d23f[_0x58e846(0x124)]||0x0,'outputTokens':_0x39d23f[_0x58e846(0x129)]||0x0,'cacheCreationInputTokens':_0x39d23f[_0x58e846(0x122)],'cacheReadInputTokens':_0x39d23f[_0x58e846(0x10e)]};}}catch{}return null;}export function extractMessageDeltaUsage(_0xb2eff5){const _0x305e63=a79_0x2835;try{const _0x367266=JSON[_0x305e63(0x126)](_0xb2eff5);if(_0x367266[_0x305e63(0x116)]===_0x305e63(0x11d)&&_0x367266['usage']){const _0x35b5b6=_0x367266[_0x305e63(0x114)];return{'inputTokens':_0x35b5b6[_0x305e63(0x124)]||0x0,'outputTokens':_0x35b5b6[_0x305e63(0x129)]||0x0,'cacheCreationInputTokens':_0x35b5b6['cache_creation_input_tokens'],'cacheReadInputTokens':_0x35b5b6[_0x305e63(0x10e)]};}}catch{}return null;}export function extractUsageFromEvent(_0x45c7c0){const _0x40f874=a79_0x2835;if(!_0x45c7c0[_0x40f874(0x11b)])return null;if(_0x45c7c0[_0x40f874(0x12c)]===_0x40f874(0x10c))return extractMessageStartUsage(_0x45c7c0[_0x40f874(0x11b)]);if(_0x45c7c0[_0x40f874(0x12c)]===_0x40f874(0x11d))return extractMessageDeltaUsage(_0x45c7c0[_0x40f874(0x11b)]);return null;}function a79_0x32f9(){const _0x300634=['message_start','slice','cache_read_input_tokens','max','8612790mqDVKP','reset','split','pop','usage','buffer','type','14oTuXIh','3912048iaIZvF','startsWith','flush','data','cacheCreationInputTokens','message_delta','push','3424190ASfaMR','trim','17062392ANAQuU','cache_creation_input_tokens','962977nOQfty','input_tokens','unknown','parse','processChunk','onRawUsage','output_tokens','inputTokens','2202478xGTRKU','event','message','outputTokens','6375616sskfqN','getUsage','cacheReadInputTokens','event:\x20'];a79_0x32f9=function(){return _0x300634;};return a79_0x32f9();}function a79_0x2835(_0x499571,_0x3a9d5b){_0x499571=_0x499571-0x109;const _0x32f9ba=a79_0x32f9();let _0x2835f8=_0x32f9ba[_0x499571];return _0x2835f8;}export class SSEUsageTracker{[a79_0x359e31(0x12a)]=0x0;[a79_0x359e31(0x12e)]=0x0;[a79_0x359e31(0x11c)];['cacheReadInputTokens'];[a79_0x359e31(0x115)]='';['updateFromUsage'](_0x22016b){const _0x39bef8=a79_0x359e31;this['inputTokens']=Math[_0x39bef8(0x10f)](this['inputTokens'],_0x22016b['inputTokens']),this['outputTokens']=Math[_0x39bef8(0x10f)](this['outputTokens'],_0x22016b[_0x39bef8(0x12e)]),_0x22016b[_0x39bef8(0x11c)]!==undefined&&(this[_0x39bef8(0x11c)]=Math[_0x39bef8(0x10f)](this['cacheCreationInputTokens']??0x0,_0x22016b['cacheCreationInputTokens'])),_0x22016b['cacheReadInputTokens']!==undefined&&(this['cacheReadInputTokens']=Math[_0x39bef8(0x10f)](this['cacheReadInputTokens']??0x0,_0x22016b[_0x39bef8(0x10a)]));}[a79_0x359e31(0x128)];[a79_0x359e31(0x127)](_0x1564fc){const _0x59f5c2=a79_0x359e31;this[_0x59f5c2(0x115)]+=_0x1564fc;const {events:_0x5e31b6,remaining:_0x4d40a0}=parseSSEChunk(this[_0x59f5c2(0x115)]);this[_0x59f5c2(0x115)]=_0x4d40a0;for(const _0x161ef5 of _0x5e31b6){const _0x5b09b9=extractUsageFromEvent(_0x161ef5);_0x5b09b9&&(this[_0x59f5c2(0x128)]?.(_0x161ef5[_0x59f5c2(0x12c)]||_0x59f5c2(0x125),_0x161ef5[_0x59f5c2(0x11b)]||'',_0x5b09b9),this['updateFromUsage'](_0x5b09b9));}return _0x1564fc;}[a79_0x359e31(0x11a)](){const _0x581658=a79_0x359e31;if(this['buffer'][_0x581658(0x120)]()){const {events:_0x37b38a}=parseSSEChunk(this[_0x581658(0x115)]+'\x0a\x0a');for(const _0x278709 of _0x37b38a){const _0x59156a=extractUsageFromEvent(_0x278709);_0x59156a&&this['updateFromUsage'](_0x59156a);}this[_0x581658(0x115)]='';}}[a79_0x359e31(0x109)](){const _0x306e34=a79_0x359e31;return{'inputTokens':this['inputTokens'],'outputTokens':this[_0x306e34(0x12e)],'cacheCreationInputTokens':this['cacheCreationInputTokens'],'cacheReadInputTokens':this[_0x306e34(0x10a)]};}[a79_0x359e31(0x111)](){const _0x1b5c27=a79_0x359e31;this[_0x1b5c27(0x12a)]=0x0,this[_0x1b5c27(0x12e)]=0x0,this[_0x1b5c27(0x11c)]=undefined,this[_0x1b5c27(0x10a)]=undefined,this[_0x1b5c27(0x115)]='';}}
1
+ const a79_0x4a021a=a79_0x4da1;(function(_0x30f0c7,_0x421f71){const _0x511f79=a79_0x4da1,_0x246af5=_0x30f0c7();while(!![]){try{const _0x319ed7=-parseInt(_0x511f79(0x1b5))/0x1*(parseInt(_0x511f79(0x1d8))/0x2)+parseInt(_0x511f79(0x1c9))/0x3*(-parseInt(_0x511f79(0x1be))/0x4)+parseInt(_0x511f79(0x1c5))/0x5+-parseInt(_0x511f79(0x1cc))/0x6+parseInt(_0x511f79(0x1bb))/0x7*(-parseInt(_0x511f79(0x1c1))/0x8)+-parseInt(_0x511f79(0x1d7))/0x9*(parseInt(_0x511f79(0x1ba))/0xa)+parseInt(_0x511f79(0x1d3))/0xb*(parseInt(_0x511f79(0x1cd))/0xc);if(_0x319ed7===_0x421f71)break;else _0x246af5['push'](_0x246af5['shift']());}catch(_0x34aabd){_0x246af5['push'](_0x246af5['shift']());}}}(a79_0x43c1,0x5ba11));export function parseSSEChunk(_0x1203ec){const _0x53bcca=a79_0x4da1,_0x2e5296=[],_0x890935=_0x1203ec[_0x53bcca(0x1cb)]('\x0a\x0a'),_0x1a429c=_0x890935[_0x53bcca(0x1d5)]()||'';for(const _0xc0e023 of _0x890935){if(!_0xc0e023['trim']())continue;const _0xd60c30={},_0x12841e=_0xc0e023[_0x53bcca(0x1cb)]('\x0a');for(const _0x5d5ccc of _0x12841e){if(_0x5d5ccc['startsWith']('event:\x20'))_0xd60c30['event']=_0x5d5ccc['slice'](0x7);else _0x5d5ccc['startsWith']('data:\x20')&&(_0xd60c30[_0x53bcca(0x1b6)]=_0x5d5ccc[_0x53bcca(0x1d6)](0x6));}(_0xd60c30[_0x53bcca(0x1d1)]||_0xd60c30['data'])&&_0x2e5296[_0x53bcca(0x1d0)](_0xd60c30);}return{'events':_0x2e5296,'remaining':_0x1a429c};}export function extractMessageStartUsage(_0x39252a){const _0x469d0a=a79_0x4da1;try{const _0x181e88=JSON['parse'](_0x39252a);if(_0x181e88['type']==='message_start'&&_0x181e88[_0x469d0a(0x1c8)]?.[_0x469d0a(0x1d4)]){const _0x3303b9=_0x181e88['message'][_0x469d0a(0x1d4)];return{'inputTokens':_0x3303b9[_0x469d0a(0x1c2)]||0x0,'outputTokens':_0x3303b9['output_tokens']||0x0,'cacheCreationInputTokens':_0x3303b9[_0x469d0a(0x1ca)],'cacheReadInputTokens':_0x3303b9['cache_read_input_tokens']};}}catch{}return null;}export function extractMessageDeltaUsage(_0x4528bd){const _0x237d71=a79_0x4da1;try{const _0x2d1dd6=JSON['parse'](_0x4528bd);if(_0x2d1dd6['type']===_0x237d71(0x1b8)&&_0x2d1dd6[_0x237d71(0x1d4)]){const _0x5909df=_0x2d1dd6[_0x237d71(0x1d4)];return{'inputTokens':_0x5909df['input_tokens']||0x0,'outputTokens':_0x5909df['output_tokens']||0x0,'cacheCreationInputTokens':_0x5909df[_0x237d71(0x1ca)],'cacheReadInputTokens':_0x5909df[_0x237d71(0x1b9)]};}}catch{}return null;}export function extractUsageFromEvent(_0x221c01){const _0x163ef2=a79_0x4da1;if(!_0x221c01['data'])return null;if(_0x221c01[_0x163ef2(0x1d1)]===_0x163ef2(0x1bd))return extractMessageStartUsage(_0x221c01[_0x163ef2(0x1b6)]);if(_0x221c01[_0x163ef2(0x1d1)]===_0x163ef2(0x1b8))return extractMessageDeltaUsage(_0x221c01[_0x163ef2(0x1b6)]);return null;}function a79_0x4da1(_0x290950,_0x13545b){_0x290950=_0x290950-0x1b5;const _0x43c1c5=a79_0x43c1();let _0x4da143=_0x43c1c5[_0x290950];return _0x4da143;}export class SSEUsageTracker{[a79_0x4a021a(0x1ce)]=0x0;[a79_0x4a021a(0x1b7)]=0x0;['cacheCreationInputTokens'];[a79_0x4a021a(0x1bc)];[a79_0x4a021a(0x1c3)]='';[a79_0x4a021a(0x1c0)](_0x53b747){const _0x391760=a79_0x4a021a;this['inputTokens']=Math['max'](this['inputTokens'],_0x53b747['inputTokens']),this['outputTokens']=Math['max'](this[_0x391760(0x1b7)],_0x53b747['outputTokens']),_0x53b747[_0x391760(0x1cf)]!==undefined&&(this['cacheCreationInputTokens']=Math[_0x391760(0x1c6)](this[_0x391760(0x1cf)]??0x0,_0x53b747[_0x391760(0x1cf)])),_0x53b747[_0x391760(0x1bc)]!==undefined&&(this[_0x391760(0x1bc)]=Math[_0x391760(0x1c6)](this[_0x391760(0x1bc)]??0x0,_0x53b747['cacheReadInputTokens']));}[a79_0x4a021a(0x1bf)];['processChunk'](_0x414e08){const _0x2f659e=a79_0x4a021a;this['buffer']+=_0x414e08;const {events:_0x302fc3,remaining:_0x3e73a1}=parseSSEChunk(this['buffer']);this[_0x2f659e(0x1c3)]=_0x3e73a1;for(const _0x51b7ba of _0x302fc3){const _0x1b6ef2=extractUsageFromEvent(_0x51b7ba);_0x1b6ef2&&(this[_0x2f659e(0x1bf)]?.(_0x51b7ba[_0x2f659e(0x1d1)]||_0x2f659e(0x1c4),_0x51b7ba['data']||'',_0x1b6ef2),this[_0x2f659e(0x1c0)](_0x1b6ef2));}return _0x414e08;}[a79_0x4a021a(0x1c7)](){const _0x17e71b=a79_0x4a021a;if(this[_0x17e71b(0x1c3)][_0x17e71b(0x1d2)]()){const {events:_0x32187d}=parseSSEChunk(this[_0x17e71b(0x1c3)]+'\x0a\x0a');for(const _0x3a8aac of _0x32187d){const _0x4d82ae=extractUsageFromEvent(_0x3a8aac);_0x4d82ae&&this[_0x17e71b(0x1c0)](_0x4d82ae);}this[_0x17e71b(0x1c3)]='';}}['getUsage'](){const _0x1b65f5=a79_0x4a021a;return{'inputTokens':this['inputTokens'],'outputTokens':this[_0x1b65f5(0x1b7)],'cacheCreationInputTokens':this['cacheCreationInputTokens'],'cacheReadInputTokens':this[_0x1b65f5(0x1bc)]};}[a79_0x4a021a(0x1d9)](){const _0x2a005e=a79_0x4a021a;this['inputTokens']=0x0,this[_0x2a005e(0x1b7)]=0x0,this[_0x2a005e(0x1cf)]=undefined,this['cacheReadInputTokens']=undefined,this[_0x2a005e(0x1c3)]='';}}function a79_0x43c1(){const _0x5e9e66=['push','event','trim','506eqFdEE','usage','pop','slice','273843gyAAut','4vBykXw','reset','362251bpSHxQ','data','outputTokens','message_delta','cache_read_input_tokens','110onFCts','21pSFEPq','cacheReadInputTokens','message_start','12364cQinKA','onRawUsage','updateFromUsage','621976PqDkaN','input_tokens','buffer','unknown','202030Bsepcj','max','flush','message','87TNnKUn','cache_creation_input_tokens','split','2796768aVCReM','569508TVQaSM','inputTokens','cacheCreationInputTokens'];a79_0x43c1=function(){return _0x5e9e66;};return a79_0x43c1();}