@treasuredata/tdx 2026.4.16 → 2026.4.17
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.
- package/dist/bin.js +1 -1
- package/dist/build-info.json +3 -3
- package/dist/cli-categories.js +1 -1
- package/dist/cli.js +1 -1
- package/dist/commands/activations.js +1 -1
- package/dist/commands/agent-command.js +1 -1
- package/dist/commands/agent-test-command.js +1 -1
- package/dist/commands/api-command.js +1 -1
- package/dist/commands/auth-command.js +1 -1
- package/dist/commands/cas-command.js +1 -1
- package/dist/commands/cas-segment-command.js +1 -1
- package/dist/commands/chat-command.js +1 -1
- package/dist/commands/claude-command.js +1 -1
- package/dist/commands/claude-statusline-command.js +1 -1
- package/dist/commands/claude-usage-command.js +1 -1
- package/dist/commands/command.js +1 -1
- package/dist/commands/connection-command.js +1 -1
- package/dist/commands/databases.js +1 -1
- package/dist/commands/delivery-command.js +1 -1
- package/dist/commands/describe.js +1 -1
- package/dist/commands/engage-campaign-pull-command.js +1 -1
- package/dist/commands/engage-campaign-push-command.js +1 -1
- package/dist/commands/engage-campaign-validate-command.js +1 -1
- package/dist/commands/engage-command.js +1 -1
- package/dist/commands/engage-template-pull-command.js +1 -1
- package/dist/commands/engage-template-push-command.js +1 -1
- package/dist/commands/engage-template-validate-command.js +1 -1
- package/dist/commands/job-command.js +1 -1
- package/dist/commands/journey-command.js +1 -1
- package/dist/commands/journey-validate-command.js +1 -1
- package/dist/commands/llm-command.js +1 -1
- package/dist/commands/mcp-command.js +1 -1
- package/dist/commands/parent-segment-command.js +1 -1
- package/dist/commands/policy-command.js +1 -1
- package/dist/commands/profile-command.js +1 -1
- package/dist/commands/profiles-command.js +1 -1
- package/dist/commands/query-command.js +1 -1
- package/dist/commands/schedule-command.js +1 -1
- package/dist/commands/segment-command.js +1 -1
- package/dist/commands/segment-create-command.js +1 -1
- package/dist/commands/segment-fields-command.js +1 -1
- package/dist/commands/segment-pull-command.js +1 -1
- package/dist/commands/segment-push-command.js +1 -1
- package/dist/commands/segment-update-command.js +1 -1
- package/dist/commands/segment-use-command.js +1 -1
- package/dist/commands/segment-validate-command.js +1 -1
- package/dist/commands/segments.js +1 -1
- package/dist/commands/show.js +1 -1
- package/dist/commands/status-command.js +1 -1
- package/dist/commands/tables.js +1 -1
- package/dist/commands/unset-command.js +1 -1
- package/dist/commands/upgrade-command.js +1 -1
- package/dist/commands/use-command.js +1 -1
- package/dist/commands/user-command.js +1 -1
- package/dist/commands/work-command.js +1 -1
- package/dist/commands/workflow-command.js +1 -1
- package/dist/core/auth.js +1 -1
- package/dist/core/command-output.js +1 -1
- package/dist/core/config.js +1 -1
- package/dist/core/connection-cache.js +1 -1
- package/dist/core/constants.js +1 -1
- package/dist/core/credential-cache.js +1 -1
- package/dist/core/global-context.js +1 -1
- package/dist/core/keychain.js +1 -1
- package/dist/core/oauth-keychain.js +1 -1
- package/dist/core/oauth.js +1 -1
- package/dist/core/profile.js +1 -1
- package/dist/core/project-config.js +1 -1
- package/dist/core/session.js +1 -1
- package/dist/core/user-cache.js +1 -1
- package/dist/core/version.js +1 -1
- package/dist/index.js +1 -1
- package/dist/mcp/server.js +1 -1
- package/dist/mcp/tools/index.js +1 -1
- package/dist/mcp/tools/tdx-run.js +1 -1
- package/dist/mcp/tools/tdx-search.js +1 -1
- package/dist/mcp/tools/work-create-item.js +1 -1
- package/dist/mcp/utils.js +1 -1
- package/dist/proxy/claude-usage-tracker.js +1 -1
- package/dist/proxy/passthrough-server.js +1 -1
- package/dist/proxy/sse-usage-parser.js +1 -1
- package/dist/sdk/agent/agent-config.js +1 -1
- package/dist/sdk/agent/agent-ref-parser.js +1 -1
- package/dist/sdk/agent/agent-yaml.js +1 -1
- package/dist/sdk/agent/test/evaluator.js +1 -1
- package/dist/sdk/agent/test/executor.js +1 -1
- package/dist/sdk/agent/test/index.js +1 -1
- package/dist/sdk/agent/test/output.js +1 -1
- package/dist/sdk/agent/test/parser.js +1 -1
- package/dist/sdk/agent/tool-target-registry.js +1 -1
- package/dist/sdk/api.js +1 -1
- package/dist/sdk/cas/cas-api-client.js +1 -1
- package/dist/sdk/cas/cas-audience-yaml.js +1 -1
- package/dist/sdk/cas/cas-segment-yaml.js +1 -1
- package/dist/sdk/cas/index.js +1 -1
- package/dist/sdk/cas/pull-workflow.js +1 -1
- package/dist/sdk/cas/push-workflow.js +1 -1
- package/dist/sdk/client/cdp-api-client.js +1 -1
- package/dist/sdk/client/delivery-api-client.js +1 -1
- package/dist/sdk/client/endpoints.js +1 -1
- package/dist/sdk/client/engage-api-client.js +1 -1
- package/dist/sdk/client/http-client.js +1 -1
- package/dist/sdk/client/llm-api-client.js +1 -1
- package/dist/sdk/client/oauth-refresh.js +1 -1
- package/dist/sdk/client/rate-limiter.js +1 -1
- package/dist/sdk/client/td-api-client.js +1 -1
- package/dist/sdk/client/trino-api-client.js +1 -1
- package/dist/sdk/client/workflow-client.js +1 -1
- package/dist/sdk/connection-validator.js +1 -1
- package/dist/sdk/connection.js +1 -1
- package/dist/sdk/delivery.js +1 -1
- package/dist/sdk/engage/campaign-pull.js +1 -1
- package/dist/sdk/engage/campaign-push.js +1 -1
- package/dist/sdk/engage/campaign-validator.js +1 -1
- package/dist/sdk/engage/campaign-yaml.js +1 -1
- package/dist/sdk/engage/template-pull.js +1 -1
- package/dist/sdk/engage/template-push.js +1 -1
- package/dist/sdk/engage/template-validator.js +1 -1
- package/dist/sdk/engage/template-yaml.js +1 -1
- package/dist/sdk/engage/types/campaign-def.js +1 -1
- package/dist/sdk/engage/types/campaign-schema.js +1 -1
- package/dist/sdk/engage/types/template-schema.js +1 -1
- package/dist/sdk/engage.js +1 -1
- package/dist/sdk/errors.js +1 -1
- package/dist/sdk/index.js +1 -1
- package/dist/sdk/io/index.js +1 -1
- package/dist/sdk/io/node-filesystem.js +1 -1
- package/dist/sdk/job.js +1 -1
- package/dist/sdk/journey.js +1 -1
- package/dist/sdk/llm/chat-cache.js +1 -1
- package/dist/sdk/llm/index.js +1 -1
- package/dist/sdk/llm/llm-backup-utils.js +1 -1
- package/dist/sdk/llm/model-factors.js +1 -1
- package/dist/sdk/personalization.js +1 -1
- package/dist/sdk/policy.js +1 -1
- package/dist/sdk/query/index.js +1 -1
- package/dist/sdk/query/sql-parser.js +1 -1
- package/dist/sdk/realtime.js +1 -1
- package/dist/sdk/schedule.js +1 -1
- package/dist/sdk/segment/child-segment-yaml.js +1 -1
- package/dist/sdk/segment/fields-display.js +1 -1
- package/dist/sdk/segment/file-discovery.js +1 -1
- package/dist/sdk/segment/journey-utils.js +1 -1
- package/dist/sdk/segment/journey-validator.js +1 -1
- package/dist/sdk/segment/journey-yaml.js +1 -1
- package/dist/sdk/segment/parent-segment-preview.js +1 -1
- package/dist/sdk/segment/parent-segment-yaml.js +1 -1
- package/dist/sdk/segment/pull-workflow.js +1 -1
- package/dist/sdk/segment/push-recovery.js +1 -1
- package/dist/sdk/segment/push-workflow.js +1 -1
- package/dist/sdk/segment/resolution-context.js +1 -1
- package/dist/sdk/segment/segment-path-parser.js +1 -1
- package/dist/sdk/segment/segment-ref-parser.js +1 -1
- package/dist/sdk/segment/segment-validator.js +1 -1
- package/dist/sdk/segment/target-resolution.js +1 -1
- package/dist/sdk/segment/tdx-config.js +1 -1
- package/dist/sdk/segment/types/activation-schema.js +1 -1
- package/dist/sdk/segment/types/journey-def.js +1 -1
- package/dist/sdk/segment/types/journey-schema.js +1 -1
- package/dist/sdk/segment/types/segment-def.js +1 -1
- package/dist/sdk/segment/types/segment-schema.js +1 -1
- package/dist/sdk/segment/validate-files.js +1 -1
- package/dist/sdk/segment/yaml-validator.js +1 -1
- package/dist/sdk/segment.js +1 -1
- package/dist/sdk/types/index.js +1 -1
- package/dist/sdk/types/progress.js +1 -1
- package/dist/sdk/types/workspace.js +1 -1
- package/dist/sdk/user.js +1 -1
- package/dist/sdk/util/format-detector.js +1 -1
- package/dist/sdk/util/formatters.js +1 -1
- package/dist/sdk/util/index.js +1 -1
- package/dist/sdk/util/paginate.js +1 -1
- package/dist/sdk/util/tree-formatter.js +1 -1
- package/dist/sdk/workflow/archive-validation.js +1 -1
- package/dist/sdk/workflow/clone-workflow.js +1 -1
- package/dist/sdk/workflow/index.js +1 -1
- package/dist/sdk/workflow/pull-workflow.js +1 -1
- package/dist/sdk/workflow/push-workflow.js +1 -1
- package/dist/sdk/workflow/tdx-config.js +1 -1
- package/dist/sdk/workflow/workflow-utils.js +1 -1
- package/dist/sdk/workspace/access-tracker.js +1 -1
- package/dist/sdk/workspace/frontmatter.js +1 -1
- package/dist/sdk/workspace/git.js +1 -1
- package/dist/sdk/workspace/index.js +1 -1
- package/dist/sdk/workspace/templates.js +1 -1
- package/dist/sdk/workspace/weekly.js +1 -1
- package/dist/sdk/workspace/wikilinks.js +1 -1
- package/dist/test-utils/command-runner.js +1 -1
- package/dist/test-utils/factories.js +1 -1
- package/dist/test-utils/fixtures.js +1 -1
- package/dist/test-utils/http-mock.js +1 -1
- package/dist/test-utils/index.js +1 -1
- package/dist/utils/async.js +1 -1
- package/dist/utils/colors.js +1 -1
- package/dist/utils/diff.js +1 -1
- package/dist/utils/file-permissions.js +1 -1
- package/dist/utils/file-reader.js +1 -1
- package/dist/utils/github-releases.js +1 -1
- package/dist/utils/global-cache.js +1 -1
- package/dist/utils/json-loader.js +1 -1
- package/dist/utils/local-cache.js +1 -1
- package/dist/utils/logger/formatters/default-formatter.js +1 -1
- package/dist/utils/logger/formatters/index.js +1 -1
- package/dist/utils/logger/handlers/console-handler.js +1 -1
- package/dist/utils/logger/handlers/file-handler.js +1 -1
- package/dist/utils/logger/handlers/index.js +1 -1
- package/dist/utils/logger/handlers/null-handler.js +1 -1
- package/dist/utils/logger/index.js +1 -1
- package/dist/utils/logger/logger.js +1 -1
- package/dist/utils/logger/types.js +1 -1
- package/dist/utils/option-validation.js +1 -1
- package/dist/utils/process.js +1 -1
- package/dist/utils/prompt.js +1 -1
- package/dist/utils/spinner.js +1 -1
- package/dist/utils/sse-parser.js +1 -1
- package/dist/utils/string-utils.js +1 -1
- package/dist/utils/table-ref-parser.js +1 -1
- package/dist/utils/tdx-logger.js +1 -1
- package/dist/utils/version-check.js +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x478c0b,_0xd46e06){var _0x51084a=a70_0x5d9d,_0x559e79=_0x478c0b();while(!![]){try{var _0x3633ed=parseInt(_0x51084a(0xcb))/0x1+-parseInt(_0x51084a(0xc8))/0x2*(parseInt(_0x51084a(0xc5))/0x3)+-parseInt(_0x51084a(0xca))/0x4*(parseInt(_0x51084a(0xc2))/0x5)+parseInt(_0x51084a(0xc7))/0x6*(parseInt(_0x51084a(0xc9))/0x7)+parseInt(_0x51084a(0xcd))/0x8*(parseInt(_0x51084a(0xc3))/0x9)+parseInt(_0x51084a(0xc6))/0xa*(parseInt(_0x51084a(0xcc))/0xb)+-parseInt(_0x51084a(0xc4))/0xc*(parseInt(_0x51084a(0xce))/0xd);if(_0x3633ed===_0xd46e06)break;else _0x559e79['push'](_0x559e79['shift']());}catch(_0x3853b7){_0x559e79['push'](_0x559e79['shift']());}}}(a70_0x40b4,0xcadc1));function a70_0x40b4(){var _0x300f58=['3883297kKwmvD','64NbAmvF','19002061fDObXX','15MgyWuO','320895DDfigc','12MPRDmj','549jSWywk','10XTyHJu','22710Clrzob','3728FZShcT','2926nPnuUg','7052AqmvVO','418614HpvXUN'];a70_0x40b4=function(){return _0x300f58;};return a70_0x40b4();}export*from'./sdk/types/index.js';export*from'./core/config.js';export*from'./core/auth.js';export*from'./sdk/client/http-client.js';export*from'./sdk/client/td-api-client.js';export{TrinoApiClient}from'./sdk/client/trino-api-client.js';export*from'./sdk/client/rate-limiter.js';export*from'./sdk/types/trino.js';export*from'./commands/command.js';export*from'./commands/query-command.js';export*from'./commands/databases.js';export*from'./commands/tables.js';export*from'./commands/segments.js';export*from'./commands/activations.js';export*from'./commands/show.js';export*from'./commands/describe.js';function a70_0x5d9d(_0x5d8683,_0x5b4831){_0x5d8683=_0x5d8683-0xc2;var _0x40b47c=a70_0x40b4();var _0x5d9d34=_0x40b47c[_0x5d8683];return _0x5d9d34;}export*from'./sdk/index.js';
|
package/dist/mcp/server.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x28875c,_0xa63ba7){const _0x223f78=a71_0x5337,_0xb76924=_0x28875c();while(!![]){try{const _0x2e6156=-parseInt(_0x223f78(0x1f5))/0x1*(-parseInt(_0x223f78(0x1dc))/0x2)+parseInt(_0x223f78(0x1eb))/0x3*(-parseInt(_0x223f78(0x202))/0x4)+parseInt(_0x223f78(0x1ed))/0x5*(parseInt(_0x223f78(0x1dd))/0x6)+parseInt(_0x223f78(0x1e8))/0x7+-parseInt(_0x223f78(0x1fa))/0x8+parseInt(_0x223f78(0x1f3))/0x9*(parseInt(_0x223f78(0x1f9))/0xa)+-parseInt(_0x223f78(0x207))/0xb;if(_0x2e6156===_0xa63ba7)break;else _0xb76924['push'](_0xb76924['shift']());}catch(_0xb57935){_0xb76924['push'](_0xb76924['shift']());}}}(a71_0x9a05,0xe4dcb));import{McpServer}from'@modelcontextprotocol/sdk/server/mcp.js';function a71_0x9a05(){const _0x2f03c8=['success','3839122QRwzLf','once','Utilities','363QzpqZl','path','70iffron','describe','stdin','slug','CDP','map','360YAWDYF','connect','1MbpEsU','examples','Command\x20failed','length','424680PPUsNG','2711104UwtoHh','output','registerTool','Search\x20for\x20relevant\x20tdx\x20commands\x20based\x20on\x20what\x20you\x20want\x20to\x20do.\x0a\x0aExamples:\x0a-\x20{\x22query\x22:\x20\x22how\x20to\x20run\x20SQL\x20queries\x22}\x0a-\x20{\x22query\x22:\x20\x22list\x20databases\x20and\x20tables\x22}\x0a-\x20{\x22query\x22:\x20\x22manage\x20customer\x20segments\x22,\x20\x22category\x22:\x20\x22CDP\x22}\x0a-\x20{\x22query\x22:\x20\x22workflow\x20logs\x22}\x0a\x0aCategories:\x20Data,\x20CDP,\x20AI,\x20Context,\x20Utilities\x0a\x0aReturns\x20matching\x20commands\x20with\x20descriptions\x20and\x20example\x20usage.','Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])','text','\x0a\x0aExamples:\x0a','name','34540sQVqrH','shape','SIGTERM','Data','array','30690319ChMMkt','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.','string','error','No\x20commands\x20found\x20matching\x20\x22','stringify','Command\x20completed\x20successfully','3278878JJgTvZ','524814iWIzyy','Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)','description','work_create_item','Optional\x20filter\x20by\x20category','close','category','join','enum','SIGINT'];a71_0x9a05=function(){return _0x2f03c8;};return a71_0x9a05();}function a71_0x5337(_0x14d346,_0xc8b544){_0x14d346=_0x14d346-0x1da;const _0x9a05f4=a71_0x9a05();let _0x533740=_0x9a05f4[_0x14d346];return _0x533740;}import{StdioServerTransport}from'@modelcontextprotocol/sdk/server/stdio.js';import{z}from'zod';import{executeTdxRun,searchCommands,executeWorkCreateItem,WorkCreateItemInputSchema}from'./tools/index.js';export function createMCPServer(_0x2ef522={}){const _0x2276b1=a71_0x5337,_0x243b11=new McpServer({'name':'tdx','version':'1.0.0'});return _0x243b11[_0x2276b1(0x1fc)]('tdx_run',{'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[_0x2276b1(0x206)](z[_0x2276b1(0x209)]())[_0x2276b1(0x1ee)](_0x2276b1(0x1fe))}},async({args:_0x2c45d5})=>{const _0x59b175=_0x2276b1,_0x4cfef6=await executeTdxRun({'args':_0x2c45d5},_0x2ef522['env']||{});return _0x4cfef6[_0x59b175(0x1e7)]?{'content':[{'type':_0x59b175(0x1ff),'text':_0x4cfef6[_0x59b175(0x1fb)]||_0x59b175(0x1db)}]}:{'content':[{'type':_0x59b175(0x1ff),'text':_0x4cfef6[_0x59b175(0x20a)]||_0x4cfef6[_0x59b175(0x1fb)]||_0x59b175(0x1f7)}],'isError':!![]};}),_0x243b11[_0x2276b1(0x1fc)]('tdx_search',{'description':_0x2276b1(0x1fd),'inputSchema':{'query':z[_0x2276b1(0x209)]()[_0x2276b1(0x1ee)](_0x2276b1(0x1de)),'category':z[_0x2276b1(0x1e5)]([_0x2276b1(0x205),_0x2276b1(0x1f1),'AI','Context',_0x2276b1(0x1ea)])['optional']()[_0x2276b1(0x1ee)](_0x2276b1(0x1e1))}},async({query:_0x385479,category:_0x328c6c})=>{const _0x2c937f=_0x2276b1,_0x193103=searchCommands({'query':_0x385479,'category':_0x328c6c});if(_0x193103[_0x2c937f(0x1f8)]===0x0)return{'content':[{'type':_0x2c937f(0x1ff),'text':_0x2c937f(0x20b)+_0x385479+'\x22'}]};const _0x280501=_0x193103[_0x2c937f(0x1f2)](_0x566588=>{const _0x594b03=_0x2c937f,_0x189470=_0x566588[_0x594b03(0x1f6)]['map'](_0x1fb1d3=>'\x20\x20'+_0x1fb1d3)['join']('\x0a');return'**'+_0x566588[_0x594b03(0x201)]+'**\x20('+_0x566588[_0x594b03(0x1e3)]+')\x0a'+_0x566588[_0x594b03(0x1df)]+_0x594b03(0x200)+_0x189470;})[_0x2c937f(0x1e4)]('\x0a\x0a---\x0a\x0a');return{'content':[{'type':_0x2c937f(0x1ff),'text':_0x280501}]};}),_0x243b11['registerTool'](_0x2276b1(0x1e0),{'description':_0x2276b1(0x208),'inputSchema':WorkCreateItemInputSchema[_0x2276b1(0x203)]},async({title:_0x8ed336,kind:_0x29afdd,status:_0x50158a,tags:_0xe7627e,priority:_0x5a45a1,body:_0x376c8a,template:_0x516108,github:_0x36b13f,jira:_0x3c113b})=>{const _0x1e52d5=_0x2276b1,_0x15649d=executeWorkCreateItem({'title':_0x8ed336,'kind':_0x29afdd,'status':_0x50158a,'tags':_0xe7627e,'priority':_0x5a45a1,'body':_0x376c8a,'template':_0x516108,'github':_0x36b13f,'jira':_0x3c113b});return _0x15649d['success']?{'content':[{'type':'text','text':JSON[_0x1e52d5(0x1da)]({'path':_0x15649d[_0x1e52d5(0x1ec)],'slug':_0x15649d[_0x1e52d5(0x1f0)]})}]}:{'content':[{'type':'text','text':_0x15649d[_0x1e52d5(0x20a)]||'Failed\x20to\x20create\x20item'}],'isError':!![]};}),_0x243b11;}export async function startMCPServer(_0x391167={}){const _0x345933=a71_0x5337,_0x404b8c=createMCPServer(_0x391167),_0x1015e1=new StdioServerTransport();return await _0x404b8c[_0x345933(0x1f4)](_0x1015e1),new Promise(_0x3048e9=>{const _0x3a6856=_0x345933;let _0x413b11=![];const _0x26855c=async()=>{const _0x2c6c2a=a71_0x5337;if(_0x413b11)return;_0x413b11=!![],await _0x404b8c[_0x2c6c2a(0x1e2)](),_0x3048e9();};process[_0x3a6856(0x1e9)](_0x3a6856(0x1e6),_0x26855c),process[_0x3a6856(0x1e9)](_0x3a6856(0x204),_0x26855c),process[_0x3a6856(0x1ef)][_0x3a6856(0x1e9)](_0x3a6856(0x1e2),_0x26855c);});}
|
package/dist/mcp/tools/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x54e949,_0x38de8f){var _0x413993=a72_0x4520,_0xa62461=_0x54e949();while(!![]){try{var _0x14a082=-parseInt(_0x413993(0x19c))/0x1*(-parseInt(_0x413993(0x19d))/0x2)+parseInt(_0x413993(0x1a2))/0x3*(-parseInt(_0x413993(0x1a5))/0x4)+-parseInt(_0x413993(0x1a0))/0x5+-parseInt(_0x413993(0x1a4))/0x6+parseInt(_0x413993(0x19f))/0x7*(parseInt(_0x413993(0x1a1))/0x8)+parseInt(_0x413993(0x19e))/0x9+parseInt(_0x413993(0x1a3))/0xa;if(_0x14a082===_0x38de8f)break;else _0xa62461['push'](_0xa62461['shift']());}catch(_0x443335){_0xa62461['push'](_0xa62461['shift']());}}}(a72_0x177a,0x6de21));export{executeTdxRun,TdxRunInputSchema}from'./tdx-run.js';function a72_0x4520(_0x269b8c,_0x53e12e){_0x269b8c=_0x269b8c-0x19c;var _0x177af1=a72_0x177a();var _0x4520f0=_0x177af1[_0x269b8c];return _0x4520f0;}function a72_0x177a(){var _0x57636a=['15tSqpfZ','50260jumKxI','2481876emjrBq','9667DkSneG','3135775EAtUvu','2504kEHynz','42lxIvNi','8120080wVskOM','311790BjvRPD','219364pGsDVE'];a72_0x177a=function(){return _0x57636a;};return a72_0x177a();}export{searchCommands,TdxSearchInputSchema}from'./tdx-search.js';export{executeWorkCreateItem,WorkCreateItemInputSchema}from'./work-create-item.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a73_0x40c87c=a73_0x308a;(function(_0x3265fd,_0x3c05fe){const _0x26a83a=a73_0x308a,_0x3060c8=_0x3265fd();while(!![]){try{const _0x3645e8=parseInt(_0x26a83a(0x15c))/0x1+parseInt(_0x26a83a(0x155))/0x2+parseInt(_0x26a83a(0x15b))/0x3+parseInt(_0x26a83a(0x14b))/0x4*(parseInt(_0x26a83a(0x143))/0x5)+parseInt(_0x26a83a(0x146))/0x6+parseInt(_0x26a83a(0x15d))/0x7*(parseInt(_0x26a83a(0x157))/0x8)+-parseInt(_0x26a83a(0x14f))/0x9*(parseInt(_0x26a83a(0x148))/0xa);if(_0x3645e8===_0x3c05fe)break;else _0x3060c8['push'](_0x3060c8['shift']());}catch(_0x1b1478){_0x3060c8['push'](_0x3060c8['shift']());}}}(a73_0x3ab8,0xeafed));import{spawn}from'child_process';import{dirname,join}from'path';function a73_0x308a(_0x189ed6,_0x5bba5d){_0x189ed6=_0x189ed6-0x141;const _0x3ab883=a73_0x3ab8();let _0x308ac6=_0x3ab883[_0x189ed6];return _0x308ac6;}import{existsSync}from'fs';import{z}from'zod';import{isBlockedCommand,getBlockedReason,formatOutput}from'../utils.js';function a73_0x3ab8(){const _0x5920eb=['true','9364836qZoMOm','kill','83210UhduUn','stderr','node','168644FfOkCy','pipe','error','close','5643hZoUzr','execPath','Failed\x20to\x20spawn\x20tdx:\x20','data','describe','platform','1680900XCpTji','ignore','14268440FlTFGT','--no-color','node.exe','This\x20command\x20is\x20not\x20allowed\x20via\x20MCP','3998748xJOPbc','282632LVrRxh','7oQaYMa','--json','object','PATH','SIGTERM','string','Command\x20timed\x20out\x20after\x2015\x20minutes.\x20For\x20long-running\x20queries,\x20use\x20job\x20submit\x20instead.','message','toString','array','resourcesPath','win32','45ltFZmc','tdx'];a73_0x3ab8=function(){return _0x5920eb;};return a73_0x3ab8();}export const TdxRunInputSchema=z[a73_0x40c87c(0x15f)]({'args':z[a73_0x40c87c(0x166)](z[a73_0x40c87c(0x162)]())[a73_0x40c87c(0x153)]('Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])')});const DEFAULT_TIMEOUT_MS=0xf*0x3c*0x3e8;function getNodeBinDir(){const _0x3faac7=a73_0x40c87c,_0x196040=process[_0x3faac7(0x141)];if(_0x196040){const _0x402aea=join(_0x196040,_0x3faac7(0x14a)),_0x12d100=process[_0x3faac7(0x154)]===_0x3faac7(0x142)?_0x3faac7(0x159):_0x3faac7(0x14a);if(existsSync(join(_0x402aea,_0x12d100)))return _0x402aea;}return dirname(process[_0x3faac7(0x150)]);}export async function executeTdxRun(_0xf65c12,_0x512283){const _0x5f38f2=a73_0x40c87c,{args:_0x1d0100}=_0xf65c12;if(isBlockedCommand(_0x1d0100)){const _0x327bd6=getBlockedReason(_0x1d0100);return{'success':![],'output':'','error':_0x327bd6||_0x5f38f2(0x15a),'exitCode':0x1};}const _0x17d95f=[_0x5f38f2(0x15e),_0x5f38f2(0x158),..._0x1d0100],_0x3aed91=getNodeBinDir(),_0x3d465d=process['platform']===_0x5f38f2(0x142)?';':':',_0x26dee0=_0x512283[_0x5f38f2(0x160)]??process.env.PATH??'',_0x4e6964=''+_0x3aed91+_0x3d465d+_0x26dee0;return new Promise(_0x421157=>{const _0x59b866=_0x5f38f2,_0x15f199=spawn(_0x59b866(0x144),_0x17d95f,{'env':{...process.env,..._0x512283,'PATH':_0x4e6964,'CI':_0x59b866(0x145)},'stdio':[_0x59b866(0x156),_0x59b866(0x14c),_0x59b866(0x14c)]});let _0x4e5bab='',_0xacecc6='',_0x1fdd5b=![];const _0x3b66cd=setTimeout(()=>{const _0x328967=_0x59b866;_0x1fdd5b=!![],_0x15f199[_0x328967(0x147)](_0x328967(0x161));},DEFAULT_TIMEOUT_MS);_0x15f199['stdout']['on'](_0x59b866(0x152),_0x3090b6=>{_0x4e5bab+=_0x3090b6['toString']();}),_0x15f199[_0x59b866(0x149)]['on'](_0x59b866(0x152),_0x1d058f=>{const _0x4d3962=_0x59b866;_0xacecc6+=_0x1d058f[_0x4d3962(0x165)]();}),_0x15f199['on'](_0x59b866(0x14d),_0x48d440=>{const _0x1bb2a0=_0x59b866;clearTimeout(_0x3b66cd),_0x421157({'success':![],'output':'','error':_0x1bb2a0(0x151)+_0x48d440[_0x1bb2a0(0x164)],'exitCode':0x1});}),_0x15f199['on'](_0x59b866(0x14e),_0x506326=>{const _0x2c9a51=_0x59b866;clearTimeout(_0x3b66cd);if(_0x1fdd5b){_0x421157({'success':![],'output':formatOutput(_0x4e5bab),'error':_0x2c9a51(0x163),'exitCode':0x7c});return;}const _0x5b1e62=_0x506326??0x1,_0x5e5a2f=_0x5b1e62===0x0,_0x349440=formatOutput(_0x4e5bab||_0xacecc6),_0x1700f5=!_0x5e5a2f&&_0xacecc6?formatOutput(_0xacecc6):undefined;_0x421157({'success':_0x5e5a2f,'output':_0x349440,'error':_0x1700f5,'exitCode':_0x5b1e62});});});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a74_0x12693f=a74_0x5e7e;(function(_0x1ec027,_0x44f78e){const _0x5b7ef1=a74_0x5e7e,_0x3cc326=_0x1ec027();while(!![]){try{const _0x2886b9=-parseInt(_0x5b7ef1(0x25d))/0x1*(-parseInt(_0x5b7ef1(0x200))/0x2)+parseInt(_0x5b7ef1(0x25f))/0x3+parseInt(_0x5b7ef1(0x25a))/0x4*(parseInt(_0x5b7ef1(0x27c))/0x5)+parseInt(_0x5b7ef1(0x213))/0x6+parseInt(_0x5b7ef1(0x255))/0x7*(parseInt(_0x5b7ef1(0x2b7))/0x8)+parseInt(_0x5b7ef1(0x1f8))/0x9+parseInt(_0x5b7ef1(0x2c4))/0xa*(-parseInt(_0x5b7ef1(0x29c))/0xb);if(_0x2886b9===_0x44f78e)break;else _0x3cc326['push'](_0x3cc326['shift']());}catch(_0x43b76a){_0x3cc326['push'](_0x3cc326['shift']());}}}(a74_0x1c3d,0x2c74d));function a74_0x1c3d(){const _0x266921=['tdx\x20job\x20list','List\x20workflow\x20projects','yaml','definition','segment\x20list','tdx\x20jobs\x20--limit\x2020','cdp','tdx\x20segment\x20fields','jobs','audience','use','digdag','description','run','40856PYETlR','tdx\x20describe\x20mydb.events','tdx\x20llm\x20projects','tdx\x20api\x20/v3/database/list','List\x20customer\x20journeys','show','Generate\x20SQL\x20for\x20a\x20segment','parent-segment\x20list','auth','describe','tdx\x20llm\x20models','chats','segments','520CeWqza','workflow\x20sessions','conversation','Push\x20journey\x20definition\x20from\x20YAML','tdx\x20parent-segment\x20preview','info','history','tdx\x20tables\x20--database\x20mydb','chat','List\x20query\x20jobs','config','agent\x20list','tdx\x20jobs','push','tdx\x20unset\x20--database','tdx\x20parent-segment\x20list','tdx\x20wf\x20sessions\x20--limit\x2010','tdx\x20profile\x20show\x20myprofile','tdx\x20segment\x20show\x20\x22My\x20Segment\x22','journey\x20pull','parent-segment\x20preview','Optional\x20filter\x20by\x20category','Show\x20connection\x20schema\x20for\x20activations','members','projects','Show\x20segment\x20details','tdx\x20parent-segment\x20push\x20parent.yaml','orchestration','activation','tdx\x20job\x20kill\x2012345','conversations','Show\x20agent\x20details','generate','Context','trigger','sync','segment\x20show','tdx\x20ps\x20preview\x20--limit\x2010','List\x20audience\x20segments','keywords','List\x20parent\x20segments\x20(customer\x20masters)','tdx\x20segments','journey','Pull\x20journey\x20definition\x20to\x20YAML','runs','tdx\x20journey\x20push\x20journey.yaml','preview','tdx\x20user','Set\x20session\x20context\x20(database,\x20parent\x20segment,\x20etc.)','team','tdx\x20use\x20--parent-segment\x20\x22My\x20PS\x22','destination','deploy','Get\x20job\x20results','clear','abort','Utilities','2700126gPMfOL','database\x20list','workflow\x20logs','profile','Push\x20agent\x20definition\x20from\x20YAML','attributes','job\x20result','tdx\x20activations','134LyPBvD','tdx\x20segment\x20sql\x20\x22My\x20Segment\x22','http','List\x20LLM\x20agents','debug','tdx\x20auth\x20--profile\x20myprofile','tdx\x20parent-segment\x20pull\x20\x22My\x20Parent\x22\x20-o\x20parent.yaml','tdx\x20agent\x20pull\x20myproject/myagent\x20-o\x20agent.yaml','List\x20users\x20in\x20account','journey\x20view','trino','master','create','select','filter','llm','download','logs','tdx\x20users','874662zJRwAS','tdx\x20workflow\x20run\x20myproject/myworkflow','segment\x20pull','check','tdx\x20parent-segment\x20validate\x20parent.yaml','columns','segment','job\x20show','curl','query','update','details','contents','tdx\x20job\x20show\x2012345','tdx\x20journey\x20pull\x20\x22My\x20Journey\x22\x20-o\x20journey.yaml','Make\x20raw\x20HTTP\x20requests\x20to\x20TD\x20APIs','List\x20all\x20databases','View\x20workflow\x20logs','tdx\x20agent\x20list','score','verify','segment\x20push','tdx\x20chat\x20\x22Hello\x22','tdx\x20ps\x20push\x20--dry-run','Push\x20parent\x20segment\x20definition\x20from\x20YAML','kill','tdx\x20agents','Show\x20current\x20user\x20info','users','tdx\x20use\x20--database\x20mydb','parent','string','profiles','List\x20workflow\x20sessions','split','parent-segment\x20validate','database','authentication','tdx\x20workflow\x20projects','agent\x20show','List\x20tables\x20in\x20a\x20database','Push\x20segment\x20definition\x20from\x20YAML','optional','tdx\x20show\x20mydb.users\x20--limit\x20100','job\x20list','length','workflow','tdx\x20segment\x20list','tdx\x20wf\x20projects','tdx\x20profiles','tdx\x20connection\x20schema\x20salesforce','connection\x20list','connection','sample','agents','List\x20LLM\x20projects','agent\x20push','enum','examples','tdx\x20api\x20/v1/audiences\x20--type\x20cdp','data','customer','connection\x20schema','segment\x20sql','list','llm\x20models','301JKfQSi','rows','tdx\x20agent\x20push\x20agent.yaml','Pull\x20segment\x20definition\x20to\x20YAML','Chat\x20with\x20an\x20LLM\x20agent','3356leelax','validate','cancel','1202MMkNcc','context','937839HRKulb','tdx\x20show\x20mydb.users','schema','Show\x20table\x20contents\x20(SELECT\x20*\x20with\x20limit)','tdx\x20chats','login','Run\x20a\x20workflow','request','tdx\x20unset\x20--all','tdx\x20ps\x20validate','tdx\x20api\x20-X\x20POST\x20--data\x20\x27{\x22query\x22:\x22SELECT\x201\x22}\x27\x20/v3/job/issue/hive/mydb','tdx\x20segment\x20push\x20segment.yaml','tdx\x20job\x20result\x2012345','all','job','tdx\x20sg\x20push\x20segment.yaml\x20--dry-run','workflow\x20run','Show\x20authentication\x20status','journey\x20list','tdx\x20user\x20list','object','Clear\x20session\x20context','models','includes','segment\x20fields','export','tdx\x20journeys','tdx\x20query\x20\x22SELECT\x20count(*)\x20FROM\x20mydb.events\x22','List\x20configured\x20profiles','10jDgSxX','api','slice','user','Data','View\x20journey\x20details','upload','execute','tdx\x20tables\x20mydb.*','category','workflow\x20projects','CDP','agent\x20pull','view','toLowerCase','import','sql','journey\x20push','account','start','stop','Show\x20profile\x20details','whoami','types','job\x20kill','tdx\x20segment\x20pull\x20\x22My\x20Segment\x22\x20-o\x20segment.yaml','message','sessions','status','pull','connections','tdx\x20use\x20mydb','185757iudfIt','reset','profile\x20show','output','parent-segment\x20pull','name','Pull\x20parent\x20segment\x20definition\x20to\x20YAML','agent','fields','settings','profile\x20list','records','tdx\x20activations\x20--segment\x20\x22My\x20Segment\x22'];a74_0x1c3d=function(){return _0x266921;};return a74_0x1c3d();}import{z}from'zod';const COMMANDS=[{'name':a74_0x12693f(0x1f9),'description':a74_0x12693f(0x223),'category':'Data','keywords':[a74_0x12693f(0x237),'databases','db',a74_0x12693f(0x253),a74_0x12693f(0x2bc),a74_0x12693f(0x26c)],'examples':['tdx\x20database\x20list','tdx\x20databases','tdx\x20databases\x20mydb*']},{'name':'table\x20list','description':a74_0x12693f(0x23b),'category':'Data','keywords':['table','tables','list',a74_0x12693f(0x2bc),a74_0x12693f(0x261)],'examples':['tdx\x20table\x20list',a74_0x12693f(0x284),a74_0x12693f(0x2cb)]},{'name':'show','description':a74_0x12693f(0x262),'category':a74_0x12693f(0x280),'keywords':[a74_0x12693f(0x2bc),a74_0x12693f(0x289),a74_0x12693f(0x1ed),a74_0x12693f(0x24f),a74_0x12693f(0x21f),a74_0x12693f(0x256),a74_0x12693f(0x2a7)],'examples':[a74_0x12693f(0x260),a74_0x12693f(0x23e)]},{'name':a74_0x12693f(0x2c0),'description':'Describe\x20table\x20schema\x20(columns,\x20types)','category':'Data','keywords':[a74_0x12693f(0x2c0),a74_0x12693f(0x261),'columns',a74_0x12693f(0x293),'structure',a74_0x12693f(0x2ac)],'examples':['tdx\x20describe\x20mydb.users',a74_0x12693f(0x2b8)]},{'name':a74_0x12693f(0x21c),'description':'Execute\x20SQL\x20query\x20using\x20Trino','category':a74_0x12693f(0x280),'keywords':['query',a74_0x12693f(0x28c),a74_0x12693f(0x20d),a74_0x12693f(0x20a),a74_0x12693f(0x283),a74_0x12693f(0x2b6),'presto'],'examples':['tdx\x20query\x20\x22SELECT\x20*\x20FROM\x20mydb.users\x20LIMIT\x2010\x22',a74_0x12693f(0x27a)]},{'name':a74_0x12693f(0x23f),'description':a74_0x12693f(0x2cd),'category':'Data','keywords':[a74_0x12693f(0x26d),a74_0x12693f(0x2b1),a74_0x12693f(0x253),a74_0x12693f(0x2ca),'queries'],'examples':[a74_0x12693f(0x2a9),a74_0x12693f(0x1cb),a74_0x12693f(0x2ae)]},{'name':a74_0x12693f(0x21a),'description':'Show\x20job\x20details','category':'Data','keywords':[a74_0x12693f(0x26d),a74_0x12693f(0x2bc),a74_0x12693f(0x21e),a74_0x12693f(0x298),a74_0x12693f(0x2c9)],'examples':[a74_0x12693f(0x220)]},{'name':a74_0x12693f(0x1fe),'description':a74_0x12693f(0x1f4),'category':'Data','keywords':[a74_0x12693f(0x26d),'result',a74_0x12693f(0x29f),a74_0x12693f(0x210)],'examples':[a74_0x12693f(0x26b)]},{'name':a74_0x12693f(0x294),'description':'Kill\x20a\x20running\x20job','category':'Data','keywords':['job',a74_0x12693f(0x22c),a74_0x12693f(0x25c),a74_0x12693f(0x290),a74_0x12693f(0x1f6)],'examples':[a74_0x12693f(0x1dc)]},{'name':a74_0x12693f(0x286),'description':a74_0x12693f(0x2aa),'category':a74_0x12693f(0x280),'keywords':[a74_0x12693f(0x241),a74_0x12693f(0x1d7),a74_0x12693f(0x2b4),'list'],'examples':[a74_0x12693f(0x239),a74_0x12693f(0x243)]},{'name':a74_0x12693f(0x2c5),'description':a74_0x12693f(0x234),'category':a74_0x12693f(0x280),'keywords':[a74_0x12693f(0x241),a74_0x12693f(0x297),a74_0x12693f(0x1eb),'executions'],'examples':['tdx\x20workflow\x20sessions\x20myproject',a74_0x12693f(0x1cf)]},{'name':a74_0x12693f(0x1fa),'description':a74_0x12693f(0x224),'category':a74_0x12693f(0x280),'keywords':['workflow',a74_0x12693f(0x211),'output',a74_0x12693f(0x204)],'examples':['tdx\x20workflow\x20logs\x20<attempt_id>']},{'name':a74_0x12693f(0x26f),'description':a74_0x12693f(0x265),'category':a74_0x12693f(0x280),'keywords':['workflow',a74_0x12693f(0x2b6),a74_0x12693f(0x283),a74_0x12693f(0x28f),a74_0x12693f(0x1e1)],'examples':[a74_0x12693f(0x214)]},{'name':a74_0x12693f(0x2ad),'description':a74_0x12693f(0x1e5),'category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x219),a74_0x12693f(0x2c3),a74_0x12693f(0x2b2),a74_0x12693f(0x253),a74_0x12693f(0x2af)],'examples':[a74_0x12693f(0x242),a74_0x12693f(0x1e8),'tdx\x20segments\x20--recursive']},{'name':a74_0x12693f(0x1e3),'description':a74_0x12693f(0x1d8),'category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x219),a74_0x12693f(0x2bc),'details',a74_0x12693f(0x2c9),'view'],'examples':[a74_0x12693f(0x1d1)]},{'name':a74_0x12693f(0x252),'description':a74_0x12693f(0x2bd),'category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x219),'sql',a74_0x12693f(0x21c),a74_0x12693f(0x1df)],'examples':[a74_0x12693f(0x201)]},{'name':a74_0x12693f(0x215),'description':a74_0x12693f(0x258),'category':a74_0x12693f(0x287),'keywords':['segment',a74_0x12693f(0x299),a74_0x12693f(0x210),a74_0x12693f(0x278),a74_0x12693f(0x2ab)],'examples':[a74_0x12693f(0x295)]},{'name':a74_0x12693f(0x228),'description':a74_0x12693f(0x23c),'category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x219),a74_0x12693f(0x1cc),a74_0x12693f(0x282),a74_0x12693f(0x28b),a74_0x12693f(0x20c),a74_0x12693f(0x21d)],'examples':[a74_0x12693f(0x26a),a74_0x12693f(0x26e)]},{'name':a74_0x12693f(0x277),'description':'List\x20available\x20segment\x20fields','category':a74_0x12693f(0x287),'keywords':['segment',a74_0x12693f(0x2a4),a74_0x12693f(0x1fd),a74_0x12693f(0x218),a74_0x12693f(0x261)],'examples':[a74_0x12693f(0x2b0),'tdx\x20sg\x20fields']},{'name':a74_0x12693f(0x2be),'description':a74_0x12693f(0x1e7),'category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x231),a74_0x12693f(0x219),a74_0x12693f(0x20b),a74_0x12693f(0x253),a74_0x12693f(0x250)],'examples':[a74_0x12693f(0x1ce),'tdx\x20ps\x20list']},{'name':a74_0x12693f(0x2a0),'description':a74_0x12693f(0x2a2),'category':'CDP','keywords':['parent',a74_0x12693f(0x219),a74_0x12693f(0x299),'download',a74_0x12693f(0x278)],'examples':[a74_0x12693f(0x206),'tdx\x20ps\x20pull']},{'name':'parent-segment\x20push','description':a74_0x12693f(0x22b),'category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x231),'segment',a74_0x12693f(0x1cc),a74_0x12693f(0x282),a74_0x12693f(0x20c)],'examples':[a74_0x12693f(0x1d9),a74_0x12693f(0x22a)]},{'name':a74_0x12693f(0x236),'description':'Validate\x20parent\x20segment\x20configuration','category':'CDP','keywords':[a74_0x12693f(0x231),a74_0x12693f(0x219),a74_0x12693f(0x25b),a74_0x12693f(0x216),a74_0x12693f(0x227)],'examples':[a74_0x12693f(0x217),a74_0x12693f(0x268)]},{'name':a74_0x12693f(0x1d3),'description':'Preview\x20parent\x20segment\x20data','category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x231),a74_0x12693f(0x219),'preview',a74_0x12693f(0x248),a74_0x12693f(0x24f)],'examples':[a74_0x12693f(0x2c8),a74_0x12693f(0x1e4)]},{'name':a74_0x12693f(0x271),'description':a74_0x12693f(0x2bb),'category':a74_0x12693f(0x287),'keywords':['journey','journeys','list',a74_0x12693f(0x1da)],'examples':['tdx\x20journey\x20list',a74_0x12693f(0x279)]},{'name':a74_0x12693f(0x209),'description':a74_0x12693f(0x281),'category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x1e9),a74_0x12693f(0x289),'show','details'],'examples':['tdx\x20journey\x20view\x20\x22My\x20Journey\x22']},{'name':a74_0x12693f(0x1d2),'description':a74_0x12693f(0x1ea),'category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x1e9),a74_0x12693f(0x299),a74_0x12693f(0x210),'export'],'examples':[a74_0x12693f(0x221)]},{'name':a74_0x12693f(0x28d),'description':a74_0x12693f(0x2c7),'category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x1e9),a74_0x12693f(0x1cc),a74_0x12693f(0x282),a74_0x12693f(0x20c)],'examples':[a74_0x12693f(0x1ec)]},{'name':'activations','description':'List\x20segment\x20activations\x20(exports)','category':'CDP','keywords':[a74_0x12693f(0x1db),'activations',a74_0x12693f(0x278),a74_0x12693f(0x1e2),a74_0x12693f(0x1f2)],'examples':[a74_0x12693f(0x1ff),a74_0x12693f(0x2a8)]},{'name':a74_0x12693f(0x246),'description':'List\x20data\x20connections','category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x247),a74_0x12693f(0x29a),'destination','list'],'examples':['tdx\x20connection\x20list']},{'name':a74_0x12693f(0x251),'description':a74_0x12693f(0x1d5),'category':a74_0x12693f(0x287),'keywords':[a74_0x12693f(0x247),a74_0x12693f(0x261),a74_0x12693f(0x1c9),a74_0x12693f(0x2a5)],'examples':[a74_0x12693f(0x245),'tdx\x20connection\x20schema\x20google_ads']},{'name':a74_0x12693f(0x1ca),'description':a74_0x12693f(0x203),'category':'AI','keywords':[a74_0x12693f(0x2a3),a74_0x12693f(0x249),a74_0x12693f(0x20f),'ai',a74_0x12693f(0x253)],'examples':[a74_0x12693f(0x225),a74_0x12693f(0x22d)]},{'name':a74_0x12693f(0x23a),'description':a74_0x12693f(0x1de),'category':'AI','keywords':[a74_0x12693f(0x2a3),a74_0x12693f(0x2bc),a74_0x12693f(0x21e),a74_0x12693f(0x2c9)],'examples':['tdx\x20agent\x20show\x20myproject/myagent']},{'name':a74_0x12693f(0x288),'description':'Pull\x20agent\x20definition\x20to\x20YAML','category':'AI','keywords':[a74_0x12693f(0x2a3),a74_0x12693f(0x299),a74_0x12693f(0x210),a74_0x12693f(0x278)],'examples':[a74_0x12693f(0x207)]},{'name':a74_0x12693f(0x24b),'description':a74_0x12693f(0x1fc),'category':'AI','keywords':[a74_0x12693f(0x2a3),'push','upload',a74_0x12693f(0x20c),a74_0x12693f(0x1f3)],'examples':[a74_0x12693f(0x257)]},{'name':a74_0x12693f(0x2cc),'description':a74_0x12693f(0x259),'category':'AI','keywords':[a74_0x12693f(0x2cc),a74_0x12693f(0x20f),'ai',a74_0x12693f(0x2c6),'ask',a74_0x12693f(0x296)],'examples':[a74_0x12693f(0x229),'tdx\x20chat\x20--agent\x20myproject/myagent\x20\x22What\x20is\x20TD?\x22']},{'name':'chats','description':'List\x20chat\x20sessions','category':'AI','keywords':['chat',a74_0x12693f(0x2c2),a74_0x12693f(0x297),a74_0x12693f(0x2ca),a74_0x12693f(0x1dd)],'examples':[a74_0x12693f(0x263),'tdx\x20chats\x20--limit\x2010']},{'name':a74_0x12693f(0x254),'description':'List\x20available\x20LLM\x20models','category':'AI','keywords':['llm',a74_0x12693f(0x275),'ai',a74_0x12693f(0x253)],'examples':[a74_0x12693f(0x2c1)]},{'name':'llm\x20projects','description':a74_0x12693f(0x24a),'category':'AI','keywords':[a74_0x12693f(0x20f),'projects','ai',a74_0x12693f(0x253)],'examples':[a74_0x12693f(0x2b9)]},{'name':'use','description':a74_0x12693f(0x1ef),'category':a74_0x12693f(0x1e0),'keywords':[a74_0x12693f(0x2b3),'set',a74_0x12693f(0x25e),'switch',a74_0x12693f(0x20d)],'examples':[a74_0x12693f(0x29b),a74_0x12693f(0x230),a74_0x12693f(0x1f1)]},{'name':'unset','description':a74_0x12693f(0x274),'category':a74_0x12693f(0x1e0),'keywords':['unset',a74_0x12693f(0x1f5),a74_0x12693f(0x29d),a74_0x12693f(0x25e)],'examples':[a74_0x12693f(0x1cd),a74_0x12693f(0x267)]},{'name':a74_0x12693f(0x2a6),'description':a74_0x12693f(0x27b),'category':a74_0x12693f(0x1e0),'keywords':[a74_0x12693f(0x1fb),a74_0x12693f(0x233),a74_0x12693f(0x253),a74_0x12693f(0x1c9)],'examples':['tdx\x20profile\x20list',a74_0x12693f(0x244)]},{'name':a74_0x12693f(0x29e),'description':a74_0x12693f(0x291),'category':a74_0x12693f(0x1e0),'keywords':[a74_0x12693f(0x1fb),a74_0x12693f(0x2bc),a74_0x12693f(0x21e),'config'],'examples':[a74_0x12693f(0x1d0)]},{'name':a74_0x12693f(0x2bf),'description':a74_0x12693f(0x270),'category':'Context','keywords':[a74_0x12693f(0x2bf),a74_0x12693f(0x238),a74_0x12693f(0x298),a74_0x12693f(0x264)],'examples':['tdx\x20auth',a74_0x12693f(0x205)]},{'name':a74_0x12693f(0x27f),'description':a74_0x12693f(0x22e),'category':a74_0x12693f(0x1e0),'keywords':[a74_0x12693f(0x27f),'me',a74_0x12693f(0x292),a74_0x12693f(0x28e)],'examples':[a74_0x12693f(0x1ee)]},{'name':'users','description':a74_0x12693f(0x208),'category':a74_0x12693f(0x1e0),'keywords':[a74_0x12693f(0x22f),a74_0x12693f(0x253),a74_0x12693f(0x1f0),a74_0x12693f(0x1d6)],'examples':[a74_0x12693f(0x212),a74_0x12693f(0x272)]},{'name':a74_0x12693f(0x27d),'description':a74_0x12693f(0x222),'category':'Utilities','keywords':[a74_0x12693f(0x27d),a74_0x12693f(0x202),'raw',a74_0x12693f(0x266),a74_0x12693f(0x21b)],'examples':[a74_0x12693f(0x2ba),a74_0x12693f(0x24e),a74_0x12693f(0x269)]}];export const TdxSearchInputSchema=z[a74_0x12693f(0x273)]({'query':z[a74_0x12693f(0x232)]()[a74_0x12693f(0x2c0)]('Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)'),'category':z[a74_0x12693f(0x24c)]([a74_0x12693f(0x280),a74_0x12693f(0x287),'AI','Context',a74_0x12693f(0x1f7)])[a74_0x12693f(0x23d)]()['describe'](a74_0x12693f(0x1d4))});function a74_0x5e7e(_0x402ec3,_0x316df4){_0x402ec3=_0x402ec3-0x1c9;const _0x1c3db0=a74_0x1c3d();let _0x5e7efb=_0x1c3db0[_0x402ec3];return _0x5e7efb;}export function searchCommands(_0x599470){const _0x3145fa=a74_0x12693f,{query:_0x12cccd,category:_0x290f7b}=_0x599470,_0xd2d963=_0x12cccd['toLowerCase'](),_0x2dab98=_0xd2d963[_0x3145fa(0x235)](/\s+/)[_0x3145fa(0x20e)](_0x6200f4=>_0x6200f4[_0x3145fa(0x240)]>0x0);let _0x2ea5d8=COMMANDS;_0x290f7b&&(_0x2ea5d8=_0x2ea5d8[_0x3145fa(0x20e)](_0x5459d3=>_0x5459d3['category']===_0x290f7b));const _0x209714=_0x2ea5d8['map'](_0x1b2115=>{const _0x544ffc=_0x3145fa;let _0x3fcad9=0x0;_0x1b2115[_0x544ffc(0x2a1)][_0x544ffc(0x28a)]()===_0xd2d963&&(_0x3fcad9+=0x64);_0x1b2115[_0x544ffc(0x2a1)][_0x544ffc(0x28a)]()[_0x544ffc(0x276)](_0xd2d963)&&(_0x3fcad9+=0x32);_0x1b2115[_0x544ffc(0x2b5)][_0x544ffc(0x28a)]()[_0x544ffc(0x276)](_0xd2d963)&&(_0x3fcad9+=0x1e);for(const _0xa03469 of _0x2dab98){for(const _0xf9e516 of _0x1b2115[_0x544ffc(0x1e6)]){if(_0xf9e516===_0xa03469)_0x3fcad9+=0x14;else(_0xf9e516[_0x544ffc(0x276)](_0xa03469)||_0xa03469[_0x544ffc(0x276)](_0xf9e516))&&(_0x3fcad9+=0xa);}_0x1b2115[_0x544ffc(0x2a1)][_0x544ffc(0x28a)]()[_0x544ffc(0x276)](_0xa03469)&&(_0x3fcad9+=0xf),_0x1b2115[_0x544ffc(0x2b5)][_0x544ffc(0x28a)]()['includes'](_0xa03469)&&(_0x3fcad9+=0x5);}return{'name':_0x1b2115[_0x544ffc(0x2a1)],'description':_0x1b2115[_0x544ffc(0x2b5)],'category':_0x1b2115[_0x544ffc(0x285)],'examples':_0x1b2115[_0x544ffc(0x24d)],'score':_0x3fcad9};});return _0x209714[_0x3145fa(0x20e)](_0x3c5c14=>_0x3c5c14[_0x3145fa(0x226)]>0x0)['sort']((_0x4a370b,_0x52b893)=>_0x52b893['score']-_0x4a370b['score'])[_0x3145fa(0x27e)](0x0,0xa);}
|
|
1
|
+
function a74_0x2745(_0x28ea1e,_0x1e7f75){_0x28ea1e=_0x28ea1e-0xa4;const _0x5b5acc=a74_0x5b5a();let _0x274510=_0x5b5acc[_0x28ea1e];return _0x274510;}const a74_0xe8903d=a74_0x2745;(function(_0x2eb809,_0x343d34){const _0x5ddbfd=a74_0x2745,_0x401fb0=_0x2eb809();while(!![]){try{const _0x42ebbf=parseInt(_0x5ddbfd(0x12e))/0x1*(-parseInt(_0x5ddbfd(0x15d))/0x2)+-parseInt(_0x5ddbfd(0x153))/0x3+parseInt(_0x5ddbfd(0xcc))/0x4*(parseInt(_0x5ddbfd(0x10c))/0x5)+parseInt(_0x5ddbfd(0x146))/0x6*(-parseInt(_0x5ddbfd(0x12b))/0x7)+parseInt(_0x5ddbfd(0xbb))/0x8+-parseInt(_0x5ddbfd(0xd2))/0x9*(-parseInt(_0x5ddbfd(0xc5))/0xa)+-parseInt(_0x5ddbfd(0x15e))/0xb*(parseInt(_0x5ddbfd(0x11e))/0xc);if(_0x42ebbf===_0x343d34)break;else _0x401fb0['push'](_0x401fb0['shift']());}catch(_0x22f1ba){_0x401fb0['push'](_0x401fb0['shift']());}}}(a74_0x5b5a,0xe5cd2));import{z}from'zod';const COMMANDS=[{'name':a74_0xe8903d(0xcd),'description':a74_0xe8903d(0x163),'category':a74_0xe8903d(0x117),'keywords':[a74_0xe8903d(0x165),a74_0xe8903d(0x193),'db',a74_0xe8903d(0x19f),'show',a74_0xe8903d(0x135)],'examples':[a74_0xe8903d(0x143),'tdx\x20databases',a74_0xe8903d(0x166)]},{'name':a74_0xe8903d(0xfe),'description':a74_0xe8903d(0x124),'category':'Data','keywords':[a74_0xe8903d(0x183),a74_0xe8903d(0x132),'list',a74_0xe8903d(0xb3),a74_0xe8903d(0x116)],'examples':[a74_0xe8903d(0x11f),a74_0xe8903d(0x14a),a74_0xe8903d(0x182)]},{'name':a74_0xe8903d(0xb3),'description':a74_0xe8903d(0xeb),'category':a74_0xe8903d(0x117),'keywords':[a74_0xe8903d(0xb3),a74_0xe8903d(0xe7),a74_0xe8903d(0xfc),a74_0xe8903d(0xc2),a74_0xe8903d(0x168),'rows','records'],'examples':[a74_0xe8903d(0x100),a74_0xe8903d(0x1a2)]},{'name':a74_0xe8903d(0x145),'description':'Describe\x20table\x20schema\x20(columns,\x20types)','category':a74_0xe8903d(0x117),'keywords':['describe','schema',a74_0xe8903d(0xc1),a74_0xe8903d(0x114),a74_0xe8903d(0x176),'definition'],'examples':['tdx\x20describe\x20mydb.users','tdx\x20describe\x20mydb.events']},{'name':a74_0xe8903d(0x14f),'description':a74_0xe8903d(0xd5),'category':a74_0xe8903d(0x117),'keywords':[a74_0xe8903d(0x14f),a74_0xe8903d(0xa6),'select',a74_0xe8903d(0xe6),a74_0xe8903d(0x181),'run','presto'],'examples':[a74_0xe8903d(0x103),'tdx\x20query\x20\x22SELECT\x20count(*)\x20FROM\x20mydb.events\x22']},{'name':a74_0xe8903d(0xfb),'description':a74_0xe8903d(0x186),'category':'Data','keywords':[a74_0xe8903d(0x1a1),a74_0xe8903d(0x102),a74_0xe8903d(0x19f),a74_0xe8903d(0x178),a74_0xe8903d(0x199)],'examples':[a74_0xe8903d(0x185),a74_0xe8903d(0xa9),'tdx\x20jobs\x20--limit\x2020']},{'name':a74_0xe8903d(0xee),'description':'Show\x20job\x20details','category':a74_0xe8903d(0x117),'keywords':[a74_0xe8903d(0x1a1),a74_0xe8903d(0xb3),'details',a74_0xe8903d(0x192),'info'],'examples':['tdx\x20job\x20show\x2012345']},{'name':'job\x20result','description':a74_0xe8903d(0x18c),'category':a74_0xe8903d(0x117),'keywords':[a74_0xe8903d(0x1a1),a74_0xe8903d(0x172),a74_0xe8903d(0xcb),a74_0xe8903d(0x16a)],'examples':[a74_0xe8903d(0x109)]},{'name':'job\x20kill','description':a74_0xe8903d(0xc8),'category':a74_0xe8903d(0x117),'keywords':['job',a74_0xe8903d(0x10a),a74_0xe8903d(0xb7),a74_0xe8903d(0x148),'abort'],'examples':['tdx\x20job\x20kill\x2012345']},{'name':'workflow\x20projects','description':a74_0xe8903d(0x144),'category':a74_0xe8903d(0x117),'keywords':[a74_0xe8903d(0xa8),a74_0xe8903d(0x10d),a74_0xe8903d(0xe9),a74_0xe8903d(0x19f)],'examples':[a74_0xe8903d(0x12a),a74_0xe8903d(0xe0)]},{'name':a74_0xe8903d(0x18a),'description':a74_0xe8903d(0x188),'category':a74_0xe8903d(0x117),'keywords':[a74_0xe8903d(0xa8),a74_0xe8903d(0x152),a74_0xe8903d(0x105),a74_0xe8903d(0x179)],'examples':[a74_0xe8903d(0x141),a74_0xe8903d(0xf1)]},{'name':'workflow\x20logs','description':a74_0xe8903d(0x12c),'category':'Data','keywords':[a74_0xe8903d(0xa8),'logs',a74_0xe8903d(0xcb),'debug'],'examples':[a74_0xe8903d(0xb5)]},{'name':a74_0xe8903d(0xba),'description':a74_0xe8903d(0x11a),'category':'Data','keywords':[a74_0xe8903d(0xa8),'run',a74_0xe8903d(0x181),a74_0xe8903d(0xcf),'trigger'],'examples':[a74_0xe8903d(0x15b)]},{'name':a74_0xe8903d(0x113),'description':a74_0xe8903d(0x158),'category':a74_0xe8903d(0xa5),'keywords':['segment',a74_0xe8903d(0x190),a74_0xe8903d(0x1a4),a74_0xe8903d(0x19f),a74_0xe8903d(0xef)],'examples':[a74_0xe8903d(0x198),a74_0xe8903d(0x136),a74_0xe8903d(0x10e)]},{'name':'segment\x20show','description':a74_0xe8903d(0x130),'category':a74_0xe8903d(0xa5),'keywords':[a74_0xe8903d(0x110),a74_0xe8903d(0xb3),a74_0xe8903d(0x189),'info',a74_0xe8903d(0xe7)],'examples':[a74_0xe8903d(0x170)]},{'name':a74_0xe8903d(0xdf),'description':a74_0xe8903d(0x16b),'category':a74_0xe8903d(0xa5),'keywords':[a74_0xe8903d(0x110),a74_0xe8903d(0xa6),a74_0xe8903d(0x14f),'generate'],'examples':[a74_0xe8903d(0x17a)]},{'name':a74_0xe8903d(0xdd),'description':a74_0xe8903d(0x156),'category':a74_0xe8903d(0xa5),'keywords':['segment',a74_0xe8903d(0x138),a74_0xe8903d(0x16a),a74_0xe8903d(0xb6),'yaml'],'examples':[a74_0xe8903d(0x16f)]},{'name':a74_0xe8903d(0x140),'description':a74_0xe8903d(0x14c),'category':a74_0xe8903d(0xa5),'keywords':[a74_0xe8903d(0x110),a74_0xe8903d(0xd6),a74_0xe8903d(0xf6),a74_0xe8903d(0x18b),a74_0xe8903d(0xd0),a74_0xe8903d(0xb4)],'examples':[a74_0xe8903d(0x104),a74_0xe8903d(0x18e)]},{'name':a74_0xe8903d(0x19c),'description':a74_0xe8903d(0x1a3),'category':a74_0xe8903d(0xa5),'keywords':[a74_0xe8903d(0x110),a74_0xe8903d(0xf7),a74_0xe8903d(0x13e),a74_0xe8903d(0xc1),a74_0xe8903d(0x116)],'examples':[a74_0xe8903d(0xc0),a74_0xe8903d(0xd8)]},{'name':a74_0xe8903d(0xdb),'description':a74_0xe8903d(0x162),'category':a74_0xe8903d(0xa5),'keywords':[a74_0xe8903d(0x139),a74_0xe8903d(0x110),a74_0xe8903d(0xf9),a74_0xe8903d(0x19f),a74_0xe8903d(0xe8)],'examples':[a74_0xe8903d(0x197),'tdx\x20ps\x20list']},{'name':a74_0xe8903d(0xbd),'description':a74_0xe8903d(0xad),'category':a74_0xe8903d(0xa5),'keywords':[a74_0xe8903d(0x139),a74_0xe8903d(0x110),'pull',a74_0xe8903d(0x16a),'export'],'examples':[a74_0xe8903d(0x123),a74_0xe8903d(0xd4)]},{'name':a74_0xe8903d(0x154),'description':a74_0xe8903d(0x157),'category':a74_0xe8903d(0xa5),'keywords':[a74_0xe8903d(0x139),a74_0xe8903d(0x110),a74_0xe8903d(0xd6),a74_0xe8903d(0xf6),a74_0xe8903d(0xd0)],'examples':[a74_0xe8903d(0xb0),'tdx\x20ps\x20push\x20--dry-run']},{'name':a74_0xe8903d(0xb2),'description':a74_0xe8903d(0x11d),'category':'CDP','keywords':[a74_0xe8903d(0x139),a74_0xe8903d(0x110),a74_0xe8903d(0xb8),'check','verify'],'examples':[a74_0xe8903d(0xc9),a74_0xe8903d(0x112)]},{'name':a74_0xe8903d(0x147),'description':'Preview\x20parent\x20segment\x20data','category':a74_0xe8903d(0xa5),'keywords':[a74_0xe8903d(0x139),a74_0xe8903d(0x110),'preview',a74_0xe8903d(0xb1),'data'],'examples':[a74_0xe8903d(0x13f),a74_0xe8903d(0x133)]},{'name':a74_0xe8903d(0xf8),'description':a74_0xe8903d(0x137),'category':a74_0xe8903d(0xa5),'keywords':['journey',a74_0xe8903d(0x119),a74_0xe8903d(0x19f),'orchestration'],'examples':['tdx\x20journey\x20list',a74_0xe8903d(0x120)]},{'name':'journey\x20view','description':'View\x20journey\x20details','category':a74_0xe8903d(0xa5),'keywords':[a74_0xe8903d(0x13a),a74_0xe8903d(0xe7),'show',a74_0xe8903d(0x189)],'examples':[a74_0xe8903d(0x101)]},{'name':a74_0xe8903d(0x151),'description':a74_0xe8903d(0x12f),'category':'CDP','keywords':[a74_0xe8903d(0x13a),'pull',a74_0xe8903d(0x16a),a74_0xe8903d(0xb6)],'examples':['tdx\x20journey\x20pull\x20\x22My\x20Journey\x22\x20-o\x20journey.yaml']},{'name':a74_0xe8903d(0x15c),'description':'Push\x20journey\x20definition\x20from\x20YAML','category':a74_0xe8903d(0xa5),'keywords':[a74_0xe8903d(0x13a),a74_0xe8903d(0xd6),'upload',a74_0xe8903d(0xd0)],'examples':[a74_0xe8903d(0x1a0)]},{'name':a74_0xe8903d(0x17c),'description':a74_0xe8903d(0xd9),'category':a74_0xe8903d(0xa5),'keywords':[a74_0xe8903d(0x17f),a74_0xe8903d(0x17c),a74_0xe8903d(0xb6),a74_0xe8903d(0xfd),a74_0xe8903d(0x18d)],'examples':['tdx\x20activations','tdx\x20activations\x20--segment\x20\x22My\x20Segment\x22']},{'name':a74_0xe8903d(0x17d),'description':a74_0xe8903d(0x155),'category':a74_0xe8903d(0xa5),'keywords':[a74_0xe8903d(0x126),a74_0xe8903d(0x194),a74_0xe8903d(0x18d),a74_0xe8903d(0x19f)],'examples':['tdx\x20connection\x20list']},{'name':a74_0xe8903d(0x187),'description':'Show\x20connection\x20schema\x20for\x20activations','category':a74_0xe8903d(0xa5),'keywords':[a74_0xe8903d(0x126),a74_0xe8903d(0x116),'config',a74_0xe8903d(0x122)],'examples':[a74_0xe8903d(0xd1),a74_0xe8903d(0x175)]},{'name':a74_0xe8903d(0xe3),'description':a74_0xe8903d(0x191),'category':'AI','keywords':['agent',a74_0xe8903d(0x160),a74_0xe8903d(0x149),'ai',a74_0xe8903d(0x19f)],'examples':[a74_0xe8903d(0x184),a74_0xe8903d(0x161)]},{'name':a74_0xe8903d(0xda),'description':'Show\x20agent\x20details','category':'AI','keywords':[a74_0xe8903d(0x150),'show',a74_0xe8903d(0x189),a74_0xe8903d(0x159)],'examples':[a74_0xe8903d(0xec)]},{'name':'agent\x20pull','description':a74_0xe8903d(0xc3),'category':'AI','keywords':[a74_0xe8903d(0x150),a74_0xe8903d(0x138),a74_0xe8903d(0x16a),a74_0xe8903d(0xb6)],'examples':[a74_0xe8903d(0x111)]},{'name':a74_0xe8903d(0xd3),'description':a74_0xe8903d(0x19b),'category':'AI','keywords':[a74_0xe8903d(0x150),a74_0xe8903d(0xd6),'upload',a74_0xe8903d(0xd0),a74_0xe8903d(0x127)],'examples':[a74_0xe8903d(0x19e)]},{'name':a74_0xe8903d(0xf5),'description':a74_0xe8903d(0x13d),'category':'AI','keywords':[a74_0xe8903d(0xf5),a74_0xe8903d(0x149),'ai',a74_0xe8903d(0xe2),a74_0xe8903d(0xed),a74_0xe8903d(0x11c)],'examples':['tdx\x20chat\x20\x22Hello\x22',a74_0xe8903d(0x12d)]},{'name':a74_0xe8903d(0xe4),'description':'List\x20chat\x20sessions','category':'AI','keywords':['chat',a74_0xe8903d(0xe4),a74_0xe8903d(0x152),a74_0xe8903d(0x178),a74_0xe8903d(0x134)],'examples':[a74_0xe8903d(0x15a),a74_0xe8903d(0xc6)]},{'name':a74_0xe8903d(0x14d),'description':a74_0xe8903d(0xde),'category':'AI','keywords':[a74_0xe8903d(0x149),a74_0xe8903d(0x15f),'ai','list'],'examples':[a74_0xe8903d(0x10b)]},{'name':a74_0xe8903d(0x106),'description':'List\x20LLM\x20projects','category':'AI','keywords':[a74_0xe8903d(0x149),a74_0xe8903d(0x10d),'ai',a74_0xe8903d(0x19f)],'examples':[a74_0xe8903d(0x14e)]},{'name':a74_0xe8903d(0x19d),'description':a74_0xe8903d(0x18f),'category':'Context','keywords':[a74_0xe8903d(0x19d),'set',a74_0xe8903d(0x164),a74_0xe8903d(0x115),a74_0xe8903d(0x16d)],'examples':['tdx\x20use\x20mydb',a74_0xe8903d(0x129),a74_0xe8903d(0xca)]},{'name':a74_0xe8903d(0xf0),'description':'Clear\x20session\x20context','category':'Context','keywords':[a74_0xe8903d(0xf0),a74_0xe8903d(0xf2),a74_0xe8903d(0xaf),a74_0xe8903d(0x164)],'examples':[a74_0xe8903d(0xdc),a74_0xe8903d(0x14b)]},{'name':a74_0xe8903d(0x195),'description':a74_0xe8903d(0x121),'category':'Context','keywords':[a74_0xe8903d(0xfa),a74_0xe8903d(0x171),a74_0xe8903d(0x19f),'config'],'examples':[a74_0xe8903d(0x13b),a74_0xe8903d(0xce)]},{'name':a74_0xe8903d(0x142),'description':a74_0xe8903d(0x125),'category':a74_0xe8903d(0x11b),'keywords':[a74_0xe8903d(0xfa),a74_0xe8903d(0xb3),a74_0xe8903d(0x189),'config'],'examples':['tdx\x20profile\x20show\x20myprofile']},{'name':a74_0xe8903d(0x13c),'description':'Show\x20authentication\x20status','category':a74_0xe8903d(0x11b),'keywords':['auth',a74_0xe8903d(0x167),'status',a74_0xe8903d(0xe5)],'examples':[a74_0xe8903d(0x173),'tdx\x20auth\x20--profile\x20myprofile']},{'name':a74_0xe8903d(0xa4),'description':a74_0xe8903d(0x16c),'category':'Context','keywords':[a74_0xe8903d(0xa4),'me',a74_0xe8903d(0xbf),a74_0xe8903d(0xbe)],'examples':['tdx\x20user']},{'name':a74_0xe8903d(0x19a),'description':a74_0xe8903d(0x196),'category':a74_0xe8903d(0x11b),'keywords':[a74_0xe8903d(0x19a),'list','team',a74_0xe8903d(0xbc)],'examples':[a74_0xe8903d(0xff),a74_0xe8903d(0xa7)]},{'name':'api','description':a74_0xe8903d(0x10f),'category':'Utilities','keywords':[a74_0xe8903d(0xb9),a74_0xe8903d(0xc4),'raw',a74_0xe8903d(0xae),a74_0xe8903d(0xea)],'examples':[a74_0xe8903d(0xc7),a74_0xe8903d(0xe1),'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_0xe8903d(0x107)]({'query':z[a74_0xe8903d(0x180)]()[a74_0xe8903d(0x145)](a74_0xe8903d(0xac)),'category':z[a74_0xe8903d(0xf3)]([a74_0xe8903d(0x117),a74_0xe8903d(0xa5),'AI','Context',a74_0xe8903d(0xf4)])['optional']()['describe']('Optional\x20filter\x20by\x20category')});function a74_0x5b5a(){const _0x4eceaf=['journey\x20pull','sessions','264492RMvZDb','parent-segment\x20push','List\x20data\x20connections','Pull\x20segment\x20definition\x20to\x20YAML','Push\x20parent\x20segment\x20definition\x20from\x20YAML','List\x20audience\x20segments','info','tdx\x20chats','tdx\x20workflow\x20run\x20myproject/myworkflow','journey\x20push','16iMNuVZ','14597ffJSyP','models','agents','tdx\x20agents','List\x20parent\x20segments\x20(customer\x20masters)','List\x20all\x20databases','context','database','tdx\x20databases\x20mydb*','authentication','contents','category','download','Generate\x20SQL\x20for\x20a\x20segment','Show\x20current\x20user\x20info','select','toLowerCase','tdx\x20segment\x20pull\x20\x22My\x20Segment\x22\x20-o\x20segment.yaml','tdx\x20segment\x20show\x20\x22My\x20Segment\x22','profiles','result','tdx\x20auth','examples','tdx\x20connection\x20schema\x20google_ads','structure','description','history','executions','tdx\x20segment\x20sql\x20\x22My\x20Segment\x22','split','activations','connection\x20list','slice','activation','string','execute','tdx\x20tables\x20--database\x20mydb','table','tdx\x20agent\x20list','tdx\x20job\x20list','List\x20query\x20jobs','connection\x20schema','List\x20workflow\x20sessions','details','workflow\x20sessions','import','Get\x20job\x20results','destination','tdx\x20sg\x20push\x20segment.yaml\x20--dry-run','Set\x20session\x20context\x20(database,\x20parent\x20segment,\x20etc.)','segments','List\x20LLM\x20agents','status','databases','connections','profile\x20list','List\x20users\x20in\x20account','tdx\x20parent-segment\x20list','tdx\x20segment\x20list','queries','users','Push\x20agent\x20definition\x20from\x20YAML','segment\x20fields','use','tdx\x20agent\x20push\x20agent.yaml','list','tdx\x20journey\x20push\x20journey.yaml','job','tdx\x20show\x20mydb.users\x20--limit\x20100','List\x20available\x20segment\x20fields','audience','user','CDP','sql','tdx\x20user\x20list','workflow','tdx\x20jobs','keywords','map','Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)','Pull\x20parent\x20segment\x20definition\x20to\x20YAML','request','reset','tdx\x20parent-segment\x20push\x20parent.yaml','sample','parent-segment\x20validate','show','update','tdx\x20workflow\x20logs\x20<attempt_id>','export','cancel','validate','api','workflow\x20run','10831296saOdvy','members','parent-segment\x20pull','account','whoami','tdx\x20segment\x20fields','columns','data','Pull\x20agent\x20definition\x20to\x20YAML','http','10qPjioS','tdx\x20chats\x20--limit\x2010','tdx\x20api\x20/v3/database/list','Kill\x20a\x20running\x20job','tdx\x20parent-segment\x20validate\x20parent.yaml','tdx\x20use\x20--parent-segment\x20\x22My\x20PS\x22','output','52HeGNrc','database\x20list','tdx\x20profiles','start','create','tdx\x20connection\x20schema\x20salesforce','14245155yRLSjA','agent\x20push','tdx\x20ps\x20pull','Execute\x20SQL\x20query\x20using\x20Trino','push','name','tdx\x20sg\x20fields','List\x20segment\x20activations\x20(exports)','agent\x20show','parent-segment\x20list','tdx\x20unset\x20--database','segment\x20pull','List\x20available\x20LLM\x20models','segment\x20sql','tdx\x20wf\x20projects','tdx\x20api\x20/v1/audiences\x20--type\x20cdp','conversation','agent\x20list','chats','login','trino','view','customer','digdag','curl','Show\x20table\x20contents\x20(SELECT\x20*\x20with\x20limit)','tdx\x20agent\x20show\x20myproject/myagent','ask','job\x20show','cdp','unset','tdx\x20wf\x20sessions\x20--limit\x2010','clear','enum','Utilities','chat','upload','fields','journey\x20list','master','profile','job\x20list','preview','sync','table\x20list','tdx\x20users','tdx\x20show\x20mydb.users','tdx\x20journey\x20view\x20\x22My\x20Journey\x22','jobs','tdx\x20query\x20\x22SELECT\x20*\x20FROM\x20mydb.users\x20LIMIT\x2010\x22','tdx\x20segment\x20push\x20segment.yaml','runs','llm\x20projects','object','score','tdx\x20job\x20result\x2012345','kill','tdx\x20llm\x20models','398285pinICX','projects','tdx\x20segments\x20--recursive','Make\x20raw\x20HTTP\x20requests\x20to\x20TD\x20APIs','segment','tdx\x20agent\x20pull\x20myproject/myagent\x20-o\x20agent.yaml','tdx\x20ps\x20validate','segment\x20list','types','switch','schema','Data','includes','journeys','Run\x20a\x20workflow','Context','message','Validate\x20parent\x20segment\x20configuration','4824ddQkat','tdx\x20table\x20list','tdx\x20journeys','List\x20configured\x20profiles','settings','tdx\x20parent-segment\x20pull\x20\x22My\x20Parent\x22\x20-o\x20parent.yaml','List\x20tables\x20in\x20a\x20database','Show\x20profile\x20details','connection','deploy','filter','tdx\x20use\x20--database\x20mydb','tdx\x20workflow\x20projects','3277463WisTDj','View\x20workflow\x20logs','tdx\x20chat\x20--agent\x20myproject/myagent\x20\x22What\x20is\x20TD?\x22','67066xKEnRV','Pull\x20journey\x20definition\x20to\x20YAML','Show\x20segment\x20details','length','tables','tdx\x20ps\x20preview\x20--limit\x2010','conversations','all','tdx\x20segments','List\x20customer\x20journeys','pull','parent','journey','tdx\x20profile\x20list','auth','Chat\x20with\x20an\x20LLM\x20agent','attributes','tdx\x20parent-segment\x20preview','segment\x20push','tdx\x20workflow\x20sessions\x20myproject','profile\x20show','tdx\x20database\x20list','List\x20workflow\x20projects','describe','24NFpDlo','parent-segment\x20preview','stop','llm','tdx\x20tables\x20mydb.*','tdx\x20unset\x20--all','Push\x20segment\x20definition\x20from\x20YAML','llm\x20models','tdx\x20llm\x20projects','query','agent'];a74_0x5b5a=function(){return _0x4eceaf;};return a74_0x5b5a();}export function searchCommands(_0x41bc0e){const _0x261693=a74_0xe8903d,{query:_0x104542,category:_0x26654f}=_0x41bc0e,_0x3f0103=_0x104542[_0x261693(0x16e)](),_0x4a9dd6=_0x3f0103[_0x261693(0x17b)](/\s+/)['filter'](_0x31f768=>_0x31f768[_0x261693(0x131)]>0x0);let _0x192e85=COMMANDS;_0x26654f&&(_0x192e85=_0x192e85[_0x261693(0x128)](_0x302e81=>_0x302e81[_0x261693(0x169)]===_0x26654f));const _0x1d2c08=_0x192e85[_0x261693(0xab)](_0x30be54=>{const _0x4c0165=_0x261693;let _0x3525c8=0x0;_0x30be54[_0x4c0165(0xd7)][_0x4c0165(0x16e)]()===_0x3f0103&&(_0x3525c8+=0x64);_0x30be54[_0x4c0165(0xd7)][_0x4c0165(0x16e)]()['includes'](_0x3f0103)&&(_0x3525c8+=0x32);_0x30be54[_0x4c0165(0x177)][_0x4c0165(0x16e)]()[_0x4c0165(0x118)](_0x3f0103)&&(_0x3525c8+=0x1e);for(const _0x5296e7 of _0x4a9dd6){for(const _0x4a9523 of _0x30be54[_0x4c0165(0xaa)]){if(_0x4a9523===_0x5296e7)_0x3525c8+=0x14;else(_0x4a9523[_0x4c0165(0x118)](_0x5296e7)||_0x5296e7[_0x4c0165(0x118)](_0x4a9523))&&(_0x3525c8+=0xa);}_0x30be54[_0x4c0165(0xd7)][_0x4c0165(0x16e)]()[_0x4c0165(0x118)](_0x5296e7)&&(_0x3525c8+=0xf),_0x30be54[_0x4c0165(0x177)][_0x4c0165(0x16e)]()[_0x4c0165(0x118)](_0x5296e7)&&(_0x3525c8+=0x5);}return{'name':_0x30be54[_0x4c0165(0xd7)],'description':_0x30be54[_0x4c0165(0x177)],'category':_0x30be54['category'],'examples':_0x30be54[_0x4c0165(0x174)],'score':_0x3525c8};});return _0x1d2c08[_0x261693(0x128)](_0x26d970=>_0x26d970[_0x261693(0x108)]>0x0)['sort']((_0xc85ae7,_0x4ae04d)=>_0x4ae04d[_0x261693(0x108)]-_0xc85ae7[_0x261693(0x108)])[_0x261693(0x17e)](0x0,0xa);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a75_0x32172a=a75_0x1bd4;(function(_0x40feb6,_0x56a7c0){const _0x35c6b1=a75_0x1bd4,_0x294d21=_0x40feb6();while(!![]){try{const _0x502947=-parseInt(_0x35c6b1(0x149))/0x1+-parseInt(_0x35c6b1(0x148))/0x2*(-parseInt(_0x35c6b1(0x158))/0x3)+-parseInt(_0x35c6b1(0x162))/0x4*(-parseInt(_0x35c6b1(0x13d))/0x5)+-parseInt(_0x35c6b1(0x135))/0x6*(-parseInt(_0x35c6b1(0x152))/0x7)+parseInt(_0x35c6b1(0x15b))/0x8+parseInt(_0x35c6b1(0x143))/0x9*(parseInt(_0x35c6b1(0x14c))/0xa)+parseInt(_0x35c6b1(0x13a))/0xb*(-parseInt(_0x35c6b1(0x14d))/0xc);if(_0x502947===_0x56a7c0)break;else _0x294d21['push'](_0x294d21['shift']());}catch(_0x355be6){_0x294d21['push'](_0x294d21['shift']());}}}(a75_0x36eb,0xc807f));import{z}from'zod';import{WorkspaceSDK,resolveWorkspacePath}from'../../sdk/workspace/index.js';function a75_0x1bd4(_0x19f899,_0x5be2ff){_0x19f899=_0x19f899-0x133;const _0x36eb57=a75_0x36eb();let _0x1bd47b=_0x36eb57[_0x19f899];return _0x1bd47b;}const TASK_STATUSES=['backlog','todo',a75_0x32172a(0x15a),'design_review',a75_0x32172a(0x133),a75_0x32172a(0x150),a75_0x32172a(0x134),a75_0x32172a(0x156)],GUIDE_STATUSES=[a75_0x32172a(0x14b),'accepted',a75_0x32172a(0x146),a75_0x32172a(0x147)];export const WorkCreateItemInputSchema=z[a75_0x32172a(0x15c)]({'title':z[a75_0x32172a(0x151)]()['describe'](a75_0x32172a(0x153)),'kind':z[a75_0x32172a(0x15f)]([a75_0x32172a(0x139),a75_0x32172a(0x142),a75_0x32172a(0x136),a75_0x32172a(0x144)])[a75_0x32172a(0x14f)]()[a75_0x32172a(0x141)]('Document\x20kind\x20(default:\x20\x22item\x22)'),'status':z[a75_0x32172a(0x15f)]([...TASK_STATUSES,...GUIDE_STATUSES])[a75_0x32172a(0x14f)]()['describe'](a75_0x32172a(0x161)),'tags':z[a75_0x32172a(0x138)](z[a75_0x32172a(0x151)]())[a75_0x32172a(0x14f)]()[a75_0x32172a(0x141)](a75_0x32172a(0x14a)),'priority':z[a75_0x32172a(0x15f)](['critical',a75_0x32172a(0x13e),a75_0x32172a(0x155),a75_0x32172a(0x14e)])['optional']()[a75_0x32172a(0x141)]('Priority\x20level'),'body':z[a75_0x32172a(0x151)]()[a75_0x32172a(0x14f)]()['describe'](a75_0x32172a(0x157)),'template':z['string']()[a75_0x32172a(0x14f)]()[a75_0x32172a(0x141)](a75_0x32172a(0x13f)),'github':z['string']()[a75_0x32172a(0x14f)]()[a75_0x32172a(0x141)](a75_0x32172a(0x159)),'jira':z[a75_0x32172a(0x151)]()['optional']()[a75_0x32172a(0x141)](a75_0x32172a(0x15e))});function a75_0x36eb(){const _0x4dcc98=['3208PelNpg','1086216ARtlMZ','Tags\x20for\x20the\x20item','proposed','2619700HgnUbF','12XwJHxU','low','optional','review','string','455ghVzTz','Item\x20title\x20(required)','kind','medium','void','Markdown\x20body\x20content','804lvuMET','GitHub\x20PR/issue\x20reference\x20(owner/repo#number)','planning','5922488aULQfF','object','No\x20workspace\x20found.\x20Run\x20`tdx\x20work\x20init`\x20to\x20create\x20one.','JIRA\x20ticket\x20reference\x20(org/TICKET-ID)','enum','jira','Initial\x20status\x20(default:\x20\x22todo\x22\x20for\x20items,\x20\x22proposed\x22\x20for\x20guides)','1022012WAXqrD','in_progress','done','5622nmeQdx','guide','template','array','item','15349807AHxDlQ','github','tags','20sbfGjc','high','Template\x20name\x20from\x20templates/\x20folder','createDocument','describe','note','36skTNAS','reference','status','deprecated','superseded'];a75_0x36eb=function(){return _0x4dcc98;};return a75_0x36eb();}export function executeWorkCreateItem(_0x3c3a28){const _0x13f2c1=a75_0x32172a,_0x2e5b56=resolveWorkspacePath();if(!_0x2e5b56)return{'success':![],'error':_0x13f2c1(0x15d)};const _0x25328f=new WorkspaceSDK(_0x2e5b56),_0x51552a={'title':_0x3c3a28['title'],'kind':_0x3c3a28[_0x13f2c1(0x154)]||'item','status':_0x3c3a28[_0x13f2c1(0x145)],'tags':_0x3c3a28[_0x13f2c1(0x13c)],'priority':_0x3c3a28['priority'],'body':_0x3c3a28['body'],'template':_0x3c3a28[_0x13f2c1(0x137)],'github':_0x3c3a28[_0x13f2c1(0x13b)],'jira':_0x3c3a28[_0x13f2c1(0x160)]},_0x22afe8=_0x25328f[_0x13f2c1(0x140)](_0x51552a);return{'success':!![],'path':_0x22afe8['filePath'],'slug':_0x22afe8['fileName']['replace'](/\.md$/,'')};}
|
package/dist/mcp/utils.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a76_0x10a3f8=a76_0x1f91;(function(_0x2d1009,_0x271c8a){const _0x33b806=a76_0x1f91,_0x1c1e54=_0x2d1009();while(!![]){try{const _0xe42ee8=parseInt(_0x33b806(0x1dd))/0x1+parseInt(_0x33b806(0x1ee))/0x2*(parseInt(_0x33b806(0x1e9))/0x3)+parseInt(_0x33b806(0x1d6))/0x4*(parseInt(_0x33b806(0x1e7))/0x5)+parseInt(_0x33b806(0x1d9))/0x6*(-parseInt(_0x33b806(0x1eb))/0x7)+-parseInt(_0x33b806(0x1ec))/0x8*(parseInt(_0x33b806(0x1e8))/0x9)+-parseInt(_0x33b806(0x1d5))/0xa*(-parseInt(_0x33b806(0x1e1))/0xb)+parseInt(_0x33b806(0x1e0))/0xc;if(_0xe42ee8===_0x271c8a)break;else _0x1c1e54['push'](_0x1c1e54['shift']());}catch(_0x439517){_0x1c1e54['push'](_0x1c1e54['shift']());}}}(a76_0x3d77,0xd8b4c));const BLOCKED_COMMANDS=[a76_0x10a3f8(0x1d3),a76_0x10a3f8(0x1d2),a76_0x10a3f8(0x1e5),a76_0x10a3f8(0x1e2),a76_0x10a3f8(0x1e3),a76_0x10a3f8(0x1d7),a76_0x10a3f8(0x1dc)],BLOCKED_FLAGS=[a76_0x10a3f8(0x1ef),'-p'];export function hasBlockedFlag(_0x196dd5){const _0xd5abe3=a76_0x10a3f8;for(const _0x4aea99 of _0x196dd5){const _0x5ebeaa=_0x4aea99[_0xd5abe3(0x1db)]();for(const _0x1fa327 of BLOCKED_FLAGS){if(_0x5ebeaa===_0x1fa327||_0x5ebeaa[_0xd5abe3(0x1e4)](_0x1fa327+'='))return!![];}}return![];}export function isBlockedCommand(_0x464532){const _0x5135f8=a76_0x10a3f8;if(_0x464532[_0x5135f8(0x1d1)]===0x0)return![];if(hasBlockedFlag(_0x464532))return!![];const _0x49652c=_0x464532[_0x5135f8(0x1d8)](0x0,0x2)['join']('\x20')['toLowerCase']();for(const _0x2d848a of BLOCKED_COMMANDS){if(_0x49652c[_0x5135f8(0x1e4)](_0x2d848a))return!![];}const _0x55fa5e=_0x464532[0x0][_0x5135f8(0x1db)]();for(const _0x16fb38 of BLOCKED_COMMANDS){if(!_0x16fb38[_0x5135f8(0x1df)]('\x20')&&_0x55fa5e===_0x16fb38)return!![];}return![];}function a76_0x3d77(){const _0x21a827=['replace','2bqwaXQ','--profile','Profile\x20switching\x20via\x20--profile\x20flag\x20is\x20not\x20allowed\x20via\x20MCP','length','auth\x20login','auth\x20setup','Profile\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','30LuHHIo','188504LfMmub','profile\x20remove','slice','648636IqFUzy','Credential\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','toLowerCase','mcp','295924poEFFr','trimEnd','includes','8103372zDVysu','4412771GNoRrs','profile\x20create','profile\x20delete','startsWith','auth\x20clear','This\x20command\x20is\x20not\x20allowed\x20via\x20MCP','30ghAYlg','6129FJAhXz','2173839OCGkWK','join','77TYuBPH','12984waevEm'];a76_0x3d77=function(){return _0x21a827;};return a76_0x3d77();}export function getBlockedReason(_0x18a8dc){const _0xfec6f0=a76_0x10a3f8;if(!isBlockedCommand(_0x18a8dc))return undefined;if(hasBlockedFlag(_0x18a8dc))return _0xfec6f0(0x1d0);const _0xbd497e=_0x18a8dc[_0xfec6f0(0x1d8)](0x0,0x2)[_0xfec6f0(0x1ea)]('\x20')[_0xfec6f0(0x1db)](),_0xc0cca3=_0x18a8dc[0x0][_0xfec6f0(0x1db)]();if(_0xbd497e[_0xfec6f0(0x1e4)](_0xfec6f0(0x1d3))||_0xbd497e[_0xfec6f0(0x1e4)](_0xfec6f0(0x1d2))||_0xbd497e[_0xfec6f0(0x1e4)](_0xfec6f0(0x1e5)))return _0xfec6f0(0x1da);if(_0xbd497e[_0xfec6f0(0x1e4)](_0xfec6f0(0x1e2))||_0xbd497e['startsWith'](_0xfec6f0(0x1e3))||_0xbd497e[_0xfec6f0(0x1e4)](_0xfec6f0(0x1d7)))return _0xfec6f0(0x1d4);if(_0xc0cca3==='mcp')return'Cannot\x20run\x20MCP\x20server\x20recursively';return _0xfec6f0(0x1e6);}function a76_0x1f91(_0x204f7e,_0x175926){_0x204f7e=_0x204f7e-0x1d0;const _0x3d7768=a76_0x3d77();let _0x1f9127=_0x3d7768[_0x204f7e];return _0x1f9127;}export function formatOutput(_0xfc7145){const _0x4c490f=a76_0x10a3f8,_0x1dbf95=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;let _0x36ce82=_0xfc7145[_0x4c490f(0x1ed)](_0x1dbf95,'');return _0x36ce82=_0x36ce82[_0x4c490f(0x1ed)](/\r\n/g,'\x0a')[_0x4c490f(0x1ed)](/\r/g,'\x0a'),_0x36ce82=_0x36ce82[_0x4c490f(0x1de)](),_0x36ce82;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x27cd49,_0xf61160){const _0x4c8dbb=a77_0xa1e2,_0x1a4f75=_0x27cd49();while(!![]){try{const _0x3da9d0=parseInt(_0x4c8dbb(0x14f))/0x1+-parseInt(_0x4c8dbb(0x153))/0x2+-parseInt(_0x4c8dbb(0x151))/0x3+parseInt(_0x4c8dbb(0x15f))/0x4+parseInt(_0x4c8dbb(0x17f))/0x5*(-parseInt(_0x4c8dbb(0x150))/0x6)+-parseInt(_0x4c8dbb(0x15c))/0x7*(parseInt(_0x4c8dbb(0x157))/0x8)+parseInt(_0x4c8dbb(0x148))/0x9;if(_0x3da9d0===_0xf61160)break;else _0x1a4f75['push'](_0x1a4f75['shift']());}catch(_0x133603){_0x1a4f75['push'](_0x1a4f75['shift']());}}}(a77_0x91ea,0xe65df));import{readFile,writeFile,appendFile,mkdir,readdir,stat}from'node:fs/promises';import{existsSync}from'node:fs';import{join,resolve}from'node:path';import{getModelPricing,calculateTokenCost,usdToAiCredits}from'../sdk/llm/model-factors.js';import{TDXLogger,LogLevel}from'../utils/tdx-logger.js';function a77_0xa1e2(_0x452918,_0x56af7e){_0x452918=_0x452918-0x148;const _0x91ead1=a77_0x91ea();let _0xa1e218=_0x91ead1[_0x452918];return _0xa1e218;}import{getGlobalCacheDir}from'../utils/global-cache.js';function a77_0x91ea(){const _0x34c365=['stats-cache.json','stringify','credits','todayDate','sessions','profiles','map','.jsonl','filter','Failed\x20to\x20read\x20usage\x20directory:','Failed\x20to\x20read\x20usage\x20file\x20','utf-8','timestamp','split','cacheCreationInputTokens','values','totalCredits','warn','trim','85QSOCow','init','getFullYear','mtime','max','getMonth','endsWith','daily','message','latestContextTokensBySignature','25267113xUvaNv','default','lastUpdatedAt','entries','cacheReadInputTokens','todayCredits','entryCount','1260025rcGPwW','616164Gkevch','89769tOvelu','Invalid\x20session\x20ID:\x20path\x20traversal\x20detected','1645698JDojNA','reduce','toISOString','replace','8BJWOEB','getTime','monthly','keys','outputTokens','8416702NfsveK','model','monthCredits','2708228ZJHqUD','startsWith','sort','inputTokens','lastUsedAt','WARN','totalChatUnits','claude-usage','object','length','sources','slice','.jsonl:'];a77_0x91ea=function(){return _0x34c365;};return a77_0x91ea();}let usageLogger=null;async function getLogger(){const _0x175578=a77_0xa1e2;return!usageLogger&&(usageLogger=new TDXLogger(LogLevel[_0x175578(0x164)],!![]),await usageLogger[_0x175578(0x180)]()),usageLogger;}function getUsageDir(){const _0x33a123=a77_0xa1e2;return join(getGlobalCacheDir(),_0x33a123(0x166));}function sanitizeSessionId(_0x5c27f2){const _0x3bf94d=a77_0xa1e2;return _0x5c27f2[_0x3bf94d(0x156)](/[^a-zA-Z0-9_-]/g,'_');}function getSafeJsonlPath(_0x68f0d8){const _0x144d9a=a77_0xa1e2,_0x21d8c1=getUsageDir(),_0x4d0ea8=sanitizeSessionId(_0x68f0d8),_0x34c5e3=resolve(_0x21d8c1,_0x4d0ea8+_0x144d9a(0x173));if(!_0x34c5e3[_0x144d9a(0x160)](_0x21d8c1))throw new Error(_0x144d9a(0x152));return _0x34c5e3;}function getStatsCachePath(){const _0x50a1cb=a77_0xa1e2;return join(getUsageDir(),_0x50a1cb(0x16c));}async function ensureUsageDir(){const _0x30aa9a=getUsageDir();!existsSync(_0x30aa9a)&&await mkdir(_0x30aa9a,{'recursive':!![]});}export async function appendUsageEntry(_0x49c01f,_0x4ad70e){const _0x3eb406=a77_0xa1e2,_0x47985d=sanitizeSessionId(_0x49c01f);await ensureUsageDir();const _0xda5c47=getSafeJsonlPath(_0x47985d),_0x175dde=JSON[_0x3eb406(0x16d)](_0x4ad70e)+'\x0a';await appendFile(_0xda5c47,_0x175dde,_0x3eb406(0x177));}async function readSessionJsonl(_0x45e786){const _0x42ade2=a77_0xa1e2,_0x4e7e67=getSafeJsonlPath(_0x45e786);if(!existsSync(_0x4e7e67))return[];try{const _0x2b54b3=await readFile(_0x4e7e67,_0x42ade2(0x177)),_0x52eccf=_0x2b54b3[_0x42ade2(0x17e)]()[_0x42ade2(0x179)]('\x0a')[_0x42ade2(0x174)](Boolean);return _0x52eccf[_0x42ade2(0x172)](_0x494366=>{try{return JSON['parse'](_0x494366);}catch{return null;}})[_0x42ade2(0x174)](_0x271558=>_0x271558!==null);}catch(_0x3bc8ac){const _0x6dd60c=await getLogger();return _0x6dd60c[_0x42ade2(0x17d)](_0x42ade2(0x176)+_0x45e786+_0x42ade2(0x16b),_0x3bc8ac instanceof Error?_0x3bc8ac[_0x42ade2(0x187)]:String(_0x3bc8ac)),[];}}async function getAllSessionFiles(){const _0x4fcd06=a77_0xa1e2,_0x3553a5=getUsageDir();if(!existsSync(_0x3553a5))return[];try{const _0x333ba1=await readdir(_0x3553a5);return _0x333ba1['filter'](_0x280d05=>_0x280d05[_0x4fcd06(0x185)](_0x4fcd06(0x173)))[_0x4fcd06(0x172)](_0x49f6a0=>_0x49f6a0[_0x4fcd06(0x156)]('.jsonl',''));}catch(_0x6e94d){const _0x1b3e23=await getLogger();return _0x1b3e23[_0x4fcd06(0x17d)](_0x4fcd06(0x175),_0x6e94d instanceof Error?_0x6e94d[_0x4fcd06(0x187)]:String(_0x6e94d)),[];}}async function readStatsCache(){const _0x1afc6e=a77_0xa1e2,_0x56c01e=getStatsCachePath();if(!existsSync(_0x56c01e))return null;try{const _0x4dce25=await readFile(_0x56c01e,_0x1afc6e(0x177)),_0x5dae5f=JSON['parse'](_0x4dce25),_0x482f9f=Object[_0x1afc6e(0x17b)](_0x5dae5f['sessions']||{})[0x0];if(_0x482f9f&&_0x1afc6e(0x165)in _0x482f9f)return null;return _0x5dae5f;}catch{return null;}}async function writeStatsCache(_0xb31040){const _0x4008e8=a77_0xa1e2;await ensureUsageDir();const _0x5af457=getStatsCachePath();await writeFile(_0x5af457,JSON[_0x4008e8(0x16d)](_0xb31040,null,0x2),_0x4008e8(0x177));}async function isCacheUpToDate(_0x53e454,_0x304a45){const _0x3906fa=a77_0xa1e2,_0x4cd27a=_0x53e454[_0x3906fa(0x170)][_0x304a45];if(!_0x4cd27a)return![];const _0x1f5367=getSafeJsonlPath(_0x304a45);if(!existsSync(_0x1f5367))return!![];try{const _0x452073=await stat(_0x1f5367),_0xf0d685=new Date(_0x4cd27a[_0x3906fa(0x14a)])['getTime'](),_0xedb028=_0x452073[_0x3906fa(0x182)][_0x3906fa(0x158)]();return _0xf0d685>_0xedb028;}catch{return![];}}export async function rebuildCache(){const _0x3a10c0=a77_0xa1e2,_0x4b4c98=new Date(),_0xbe1f5a=_0x4b4c98[_0x3a10c0(0x155)]()[_0x3a10c0(0x16a)](0x0,0xa),_0x298e8e=_0x4b4c98[_0x3a10c0(0x155)]()['slice'](0x0,0x7),_0x47461f={'daily':{},'monthly':{},'sessions':{},'profiles':{},'sources':{},'lastRebuiltAt':_0x4b4c98[_0x3a10c0(0x155)]()},_0x512bfd=await getAllSessionFiles();for(const _0x6f26f6 of _0x512bfd){try{const _0x59b1d6=await readSessionJsonl(_0x6f26f6);if(_0x59b1d6[_0x3a10c0(0x168)]===0x0)continue;let _0x4c6251=0x0;const _0x9262dd={};let _0x374cf3='';for(const _0x48d301 of _0x59b1d6){const _0x37119c=getModelPricing(_0x48d301[_0x3a10c0(0x15d)]),_0x30d108=calculateTokenCost(_0x48d301['inputTokens'],_0x48d301[_0x3a10c0(0x15b)],_0x48d301[_0x3a10c0(0x17a)]??0x0,_0x48d301[_0x3a10c0(0x14c)]??0x0,_0x37119c),_0x68a62b=usdToAiCredits(_0x30d108);_0x4c6251+=_0x68a62b;const _0x416ac6=_0x48d301['contextSignature']||_0x3a10c0(0x149);_0x9262dd[_0x416ac6]=_0x48d301[_0x3a10c0(0x162)]+(_0x48d301[_0x3a10c0(0x17a)]??0x0)+(_0x48d301[_0x3a10c0(0x14c)]??0x0);_0x48d301['timestamp']>_0x374cf3&&(_0x374cf3=_0x48d301['timestamp']);const _0x328adc=_0x48d301[_0x3a10c0(0x178)][_0x3a10c0(0x16a)](0x0,0xa);!_0x47461f[_0x3a10c0(0x186)][_0x328adc]&&(_0x47461f[_0x3a10c0(0x186)][_0x328adc]={'totalCredits':0x0,'entryCount':0x0});_0x47461f[_0x3a10c0(0x186)][_0x328adc][_0x3a10c0(0x17c)]+=_0x68a62b,_0x47461f[_0x3a10c0(0x186)][_0x328adc]['entryCount']+=0x1;const _0x2306f8=_0x48d301[_0x3a10c0(0x178)][_0x3a10c0(0x16a)](0x0,0x7);!_0x47461f['monthly'][_0x2306f8]&&(_0x47461f[_0x3a10c0(0x159)][_0x2306f8]={'totalCredits':0x0,'entryCount':0x0});_0x47461f[_0x3a10c0(0x159)][_0x2306f8][_0x3a10c0(0x17c)]+=_0x68a62b,_0x47461f[_0x3a10c0(0x159)][_0x2306f8][_0x3a10c0(0x14e)]+=0x1;const _0x295a56=_0x48d301['profile']||_0x3a10c0(0x149);!_0x47461f[_0x3a10c0(0x171)][_0x295a56]&&(_0x47461f['profiles'][_0x295a56]={'totalCredits':0x0,'entryCount':0x0,'lastUsedAt':'','todayCredits':0x0,'todayDate':_0xbe1f5a,'monthCredits':0x0,'month':_0x298e8e});_0x47461f['profiles'][_0x295a56][_0x3a10c0(0x17c)]+=_0x68a62b,_0x47461f['profiles'][_0x295a56][_0x3a10c0(0x14e)]+=0x1;_0x48d301[_0x3a10c0(0x178)]>_0x47461f[_0x3a10c0(0x171)][_0x295a56][_0x3a10c0(0x163)]&&(_0x47461f[_0x3a10c0(0x171)][_0x295a56][_0x3a10c0(0x163)]=_0x48d301[_0x3a10c0(0x178)]);_0x328adc===_0xbe1f5a&&(_0x47461f['profiles'][_0x295a56]['todayCredits']+=_0x68a62b);_0x2306f8===_0x298e8e&&(_0x47461f[_0x3a10c0(0x171)][_0x295a56]['monthCredits']+=_0x68a62b);const _0x5227d2=_0x48d301['source']||'tdx-claude';!_0x47461f[_0x3a10c0(0x169)][_0x5227d2]&&(_0x47461f[_0x3a10c0(0x169)][_0x5227d2]={'totalCredits':0x0,'entryCount':0x0,'todayCredits':0x0,'todayDate':_0xbe1f5a,'monthCredits':0x0,'month':_0x298e8e}),_0x47461f[_0x3a10c0(0x169)][_0x5227d2][_0x3a10c0(0x17c)]+=_0x68a62b,_0x47461f[_0x3a10c0(0x169)][_0x5227d2]['entryCount']+=0x1,_0x328adc===_0xbe1f5a&&(_0x47461f[_0x3a10c0(0x169)][_0x5227d2][_0x3a10c0(0x14d)]+=_0x68a62b),_0x2306f8===_0x298e8e&&(_0x47461f[_0x3a10c0(0x169)][_0x5227d2][_0x3a10c0(0x15e)]+=_0x68a62b);}_0x47461f[_0x3a10c0(0x170)][_0x6f26f6]={'totalCredits':_0x4c6251,'latestContextTokensBySignature':_0x9262dd,'createdAt':_0x59b1d6[0x0][_0x3a10c0(0x178)],'lastUpdatedAt':_0x374cf3};}catch(_0x223c21){const _0x1ec51a=await getLogger();_0x1ec51a[_0x3a10c0(0x17d)]('Failed\x20to\x20process\x20session\x20'+_0x6f26f6+':',_0x223c21 instanceof Error?_0x223c21['message']:String(_0x223c21));continue;}}return cleanupOldEntries(_0x47461f),await writeStatsCache(_0x47461f),_0x47461f;}function cleanupOldEntries(_0x1128b1){const _0x4319c2=a77_0xa1e2,_0x31b53f=new Date(),_0xc3accc=new Date(_0x31b53f[_0x4319c2(0x158)]()-0x7*0x18*0x3c*0x3c*0x3e8);for(const _0x5dae93 of Object[_0x4319c2(0x15a)](_0x1128b1[_0x4319c2(0x186)])){new Date(_0x5dae93)<_0xc3accc&&delete _0x1128b1['daily'][_0x5dae93];}const _0x1b1a23=new Date(_0x31b53f[_0x4319c2(0x181)]()-0x1,_0x31b53f[_0x4319c2(0x184)](),0x1);for(const _0x34249b of Object[_0x4319c2(0x15a)](_0x1128b1[_0x4319c2(0x159)])){const [_0x7f682f,_0x29acc0]=_0x34249b['split']('-')[_0x4319c2(0x172)](Number),_0x3e0b2e=new Date(_0x7f682f,_0x29acc0-0x1,0x1);_0x3e0b2e<_0x1b1a23&&delete _0x1128b1[_0x4319c2(0x159)][_0x34249b];}const _0x5252ee=new Date(_0x31b53f['getTime']()-0x1e*0x18*0x3c*0x3c*0x3e8);for(const [_0x38ae5d,_0x3d22f6]of Object[_0x4319c2(0x14b)](_0x1128b1[_0x4319c2(0x170)])){new Date(_0x3d22f6['lastUpdatedAt'])<_0x5252ee&&delete _0x1128b1[_0x4319c2(0x170)][_0x38ae5d];}}export async function getOrUpdateCache(_0x47c2d1){const _0x5bba5f=_0x47c2d1?sanitizeSessionId(_0x47c2d1):undefined,_0x20aee6=await readStatsCache();if(!_0x20aee6)return rebuildCache();if(_0x5bba5f){const _0x1c1eb1=await isCacheUpToDate(_0x20aee6,_0x5bba5f);if(!_0x1c1eb1)return rebuildCache();}return _0x20aee6;}export async function getSessionCredits(_0x508910){const _0x2580ce=a77_0xa1e2,_0x3d12b1=sanitizeSessionId(_0x508910),_0x1b9438=await getOrUpdateCache(_0x3d12b1),_0x1235b9=_0x1b9438[_0x2580ce(0x170)][_0x3d12b1];if(!_0x1235b9)return 0x0;return _0x1235b9[_0x2580ce(0x17c)];}export async function getTodayCredits(){const _0x35ef2b=a77_0xa1e2,_0x27009f=await getOrUpdateCache(),_0x38ae27=new Date()[_0x35ef2b(0x155)]()[_0x35ef2b(0x16a)](0x0,0xa),_0x180f30=_0x27009f[_0x35ef2b(0x186)][_0x38ae27];if(!_0x180f30)return 0x0;return _0x180f30['totalCredits'];}export async function getMonthCredits(){const _0x2ef81e=a77_0xa1e2,_0x4aa784=await getOrUpdateCache(),_0x32a2f5=new Date()['toISOString']()[_0x2ef81e(0x16a)](0x0,0x7),_0x54e7e1=_0x4aa784[_0x2ef81e(0x159)][_0x32a2f5];if(!_0x54e7e1)return 0x0;return _0x54e7e1['totalCredits'];}export async function getSessionStats(_0x17cee6){const _0x425dd7=a77_0xa1e2,_0x37a173=sanitizeSessionId(_0x17cee6),_0x5dac3c=await getOrUpdateCache(_0x37a173);return _0x5dac3c[_0x425dd7(0x170)][_0x37a173]||null;}function getMaxLatestContextTokens(_0xe9a347){const _0x305f58=a77_0xa1e2,_0x22950e=Object[_0x305f58(0x17b)](_0xe9a347);if(_0x22950e[_0x305f58(0x168)]===0x0)return 0x0;return Math[_0x305f58(0x183)](..._0x22950e);}export async function getUsageStats(_0x5e61f7,_0x21705b){const _0x15ac7d=a77_0xa1e2,_0x54b5c5=sanitizeSessionId(_0x5e61f7),_0x252097=await getOrUpdateCache(_0x54b5c5),_0x472175=_0x252097[_0x15ac7d(0x170)][_0x54b5c5],_0x29de75=new Date()[_0x15ac7d(0x155)]()[_0x15ac7d(0x16a)](0x0,0xa),_0x396f7a=new Date()[_0x15ac7d(0x155)]()[_0x15ac7d(0x16a)](0x0,0x7);if(_0x21705b){const _0x501d14=_0x252097[_0x15ac7d(0x171)]?.[_0x21705b],_0x3ea537=_0x501d14?.[_0x15ac7d(0x16f)]===_0x29de75?_0x501d14[_0x15ac7d(0x14d)]:0x0,_0x3fc530=_0x501d14?.['month']===_0x396f7a?_0x501d14[_0x15ac7d(0x15e)]:0x0;return{'sessionCredits':_0x472175?_0x472175[_0x15ac7d(0x17c)]:0x0,'todayCredits':_0x3ea537,'monthCredits':_0x3fc530,'latestContextTokens':_0x472175?getMaxLatestContextTokens(_0x472175[_0x15ac7d(0x188)]):0x0};}return{'sessionCredits':_0x472175?_0x472175['totalCredits']:0x0,'todayCredits':_0x252097[_0x15ac7d(0x186)][_0x29de75]?_0x252097[_0x15ac7d(0x186)][_0x29de75][_0x15ac7d(0x17c)]:0x0,'monthCredits':_0x252097['monthly'][_0x396f7a]?_0x252097[_0x15ac7d(0x159)][_0x396f7a][_0x15ac7d(0x17c)]:0x0,'latestContextTokens':_0x472175?getMaxLatestContextTokens(_0x472175[_0x15ac7d(0x188)]):0x0};}export async function getAllProfileStats(){const _0x563c9d=a77_0xa1e2,_0x2ec31b=await getOrUpdateCache(),_0x3ab38b=_0x2ec31b[_0x563c9d(0x171)]||{};return Object['entries'](_0x3ab38b)[_0x563c9d(0x174)](([,_0x45f1d0])=>_0x45f1d0&&typeof _0x45f1d0===_0x563c9d(0x167))[_0x563c9d(0x172)](([_0x11531f,_0x3a51f7])=>({'profile':_0x11531f,'credits':_0x3a51f7[_0x563c9d(0x17c)]||0x0,'entryCount':_0x3a51f7[_0x563c9d(0x14e)]||0x0,'lastUsedAt':_0x3a51f7[_0x563c9d(0x163)]||''}))[_0x563c9d(0x161)]((_0x5a167f,_0x187059)=>_0x187059[_0x563c9d(0x16e)]-_0x5a167f[_0x563c9d(0x16e)]);}export async function getAllSourceStats(){const _0x46fbf8=a77_0xa1e2,_0x2bb073=await getOrUpdateCache(),_0x12e2f0=_0x2bb073[_0x46fbf8(0x169)]||{},_0x2240ff=new Date()[_0x46fbf8(0x155)]()[_0x46fbf8(0x16a)](0x0,0xa),_0x117ae3=new Date()[_0x46fbf8(0x155)]()[_0x46fbf8(0x16a)](0x0,0x7);return Object[_0x46fbf8(0x14b)](_0x12e2f0)['filter'](([,_0x561f64])=>_0x561f64&&typeof _0x561f64===_0x46fbf8(0x167))[_0x46fbf8(0x172)](([_0x3ede97,_0x4c7d0e])=>({'source':_0x3ede97,'credits':_0x4c7d0e[_0x46fbf8(0x17c)]||0x0,'todayCredits':_0x4c7d0e[_0x46fbf8(0x16f)]===_0x2240ff?_0x4c7d0e[_0x46fbf8(0x14d)]||0x0:0x0,'monthCredits':_0x4c7d0e['month']===_0x117ae3?_0x4c7d0e[_0x46fbf8(0x15e)]||0x0:0x0,'entryCount':_0x4c7d0e[_0x46fbf8(0x14e)]||0x0}))[_0x46fbf8(0x161)]((_0x222597,_0x3fcb75)=>_0x3fcb75[_0x46fbf8(0x16e)]-_0x222597[_0x46fbf8(0x16e)]);}export async function getUsageSummary(){const _0x146b23=a77_0xa1e2,_0x19e003=await getOrUpdateCache(),_0x46134b=_0x19e003[_0x146b23(0x171)]||{},_0x2596af=new Date()['toISOString']()['slice'](0x0,0xa),_0x115c71=new Date()[_0x146b23(0x155)]()['slice'](0x0,0x7),_0x289504=Object[_0x146b23(0x17b)](_0x46134b)[_0x146b23(0x174)](_0x50889e=>_0x50889e&&typeof _0x50889e===_0x146b23(0x167)),_0x278dc5=_0x289504[_0x146b23(0x154)]((_0x551fe5,_0xb1383c)=>_0x551fe5+(_0xb1383c[_0x146b23(0x17c)]||0x0),0x0);return{'todayCredits':_0x19e003['daily'][_0x2596af]?_0x19e003[_0x146b23(0x186)][_0x2596af][_0x146b23(0x17c)]||0x0:0x0,'monthCredits':_0x19e003[_0x146b23(0x159)][_0x115c71]?_0x19e003['monthly'][_0x115c71][_0x146b23(0x17c)]||0x0:0x0,'totalCredits':_0x278dc5,'profileCount':_0x289504[_0x146b23(0x168)]};}
|
|
1
|
+
(function(_0x117dab,_0xa4e04e){const _0x4dbe54=a77_0x4e89,_0x243eba=_0x117dab();while(!![]){try{const _0x365706=-parseInt(_0x4dbe54(0x1f0))/0x1+parseInt(_0x4dbe54(0x1f5))/0x2*(parseInt(_0x4dbe54(0x1f2))/0x3)+parseInt(_0x4dbe54(0x1e2))/0x4*(parseInt(_0x4dbe54(0x1cd))/0x5)+parseInt(_0x4dbe54(0x1e9))/0x6*(parseInt(_0x4dbe54(0x1f1))/0x7)+-parseInt(_0x4dbe54(0x1d7))/0x8*(-parseInt(_0x4dbe54(0x1e6))/0x9)+parseInt(_0x4dbe54(0x1e5))/0xa*(parseInt(_0x4dbe54(0x1ed))/0xb)+-parseInt(_0x4dbe54(0x1c3))/0xc;if(_0x365706===_0xa4e04e)break;else _0x243eba['push'](_0x243eba['shift']());}catch(_0x2562e){_0x243eba['push'](_0x243eba['shift']());}}}(a77_0x1468,0x4ceb8));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 _0xe5d2fd=a77_0x4e89;return!usageLogger&&(usageLogger=new TDXLogger(LogLevel[_0xe5d2fd(0x1c2)],!![]),await usageLogger[_0xe5d2fd(0x1f9)]()),usageLogger;}function getUsageDir(){const _0x1e01b0=a77_0x4e89;return join(getGlobalCacheDir(),_0x1e01b0(0x1c7));}function sanitizeSessionId(_0x58cdf8){const _0x5c3cb3=a77_0x4e89;return _0x58cdf8[_0x5c3cb3(0x1cb)](/[^a-zA-Z0-9_-]/g,'_');}function getSafeJsonlPath(_0x1b5f68){const _0x1d8f56=a77_0x4e89,_0x1509c4=getUsageDir(),_0x4ae4ae=sanitizeSessionId(_0x1b5f68),_0x3c36d7=resolve(_0x1509c4,_0x4ae4ae+_0x1d8f56(0x1cc));if(!_0x3c36d7[_0x1d8f56(0x1eb)](_0x1509c4))throw new Error(_0x1d8f56(0x1d6));return _0x3c36d7;}function a77_0x1468(){const _0x30b536=['sessions','272589zUegCr','1113jiKBjp','72iTBSan','message','toISOString','45450mpMtlB','trim','utf-8','monthly','init','warn','cacheCreationInputTokens','latestContextTokensBySignature','monthCredits','cacheReadInputTokens','credits','length','getTime','slice','stringify','Failed\x20to\x20read\x20usage\x20directory:','totalCredits','WARN','21876108VjSsUn','default','month','map','claude-usage','entryCount','todayDate','profile','replace','.jsonl','5DVbZjv','sources','todayCredits','getMonth','model','stats-cache.json','values','lastUpdatedAt','daily','Invalid\x20session\x20ID:\x20path\x20traversal\x20detected','8fejmAr','endsWith','filter','getFullYear','Failed\x20to\x20read\x20usage\x20file\x20','lastUsedAt','reduce','inputTokens','split','keys','profiles','2172524uENXJQ','mtime','timestamp','70gSwIsD','4708629nIRarg','sort','Failed\x20to\x20process\x20session\x20','22434IMigtR','object','startsWith','entries','321277Yhwtpd','max'];a77_0x1468=function(){return _0x30b536;};return a77_0x1468();}function getStatsCachePath(){const _0x42c088=a77_0x4e89;return join(getUsageDir(),_0x42c088(0x1d2));}async function ensureUsageDir(){const _0x457914=getUsageDir();!existsSync(_0x457914)&&await mkdir(_0x457914,{'recursive':!![]});}export async function appendUsageEntry(_0x344d27,_0x15896e){const _0x1854cb=a77_0x4e89,_0x4cd235=sanitizeSessionId(_0x344d27);await ensureUsageDir();const _0x108dee=getSafeJsonlPath(_0x4cd235),_0x473fdb=JSON[_0x1854cb(0x1bf)](_0x15896e)+'\x0a';await appendFile(_0x108dee,_0x473fdb,_0x1854cb(0x1f7));}async function readSessionJsonl(_0x40a10d){const _0x14fbf5=a77_0x4e89,_0x130ace=getSafeJsonlPath(_0x40a10d);if(!existsSync(_0x130ace))return[];try{const _0x3713f0=await readFile(_0x130ace,_0x14fbf5(0x1f7)),_0x6d6e80=_0x3713f0[_0x14fbf5(0x1f6)]()[_0x14fbf5(0x1df)]('\x0a')[_0x14fbf5(0x1d9)](Boolean);return _0x6d6e80[_0x14fbf5(0x1c6)](_0x51ca1e=>{try{return JSON['parse'](_0x51ca1e);}catch{return null;}})['filter'](_0x1ba313=>_0x1ba313!==null);}catch(_0x2e5cb1){const _0x14f424=await getLogger();return _0x14f424['warn'](_0x14fbf5(0x1db)+_0x40a10d+'.jsonl:',_0x2e5cb1 instanceof Error?_0x2e5cb1['message']:String(_0x2e5cb1)),[];}}async function getAllSessionFiles(){const _0x5dc5b1=a77_0x4e89,_0x4913ea=getUsageDir();if(!existsSync(_0x4913ea))return[];try{const _0x4bbcb7=await readdir(_0x4913ea);return _0x4bbcb7[_0x5dc5b1(0x1d9)](_0x34e2b7=>_0x34e2b7[_0x5dc5b1(0x1d8)](_0x5dc5b1(0x1cc)))[_0x5dc5b1(0x1c6)](_0x4c6316=>_0x4c6316[_0x5dc5b1(0x1cb)]('.jsonl',''));}catch(_0x25654d){const _0x1a3ca5=await getLogger();return _0x1a3ca5['warn'](_0x5dc5b1(0x1c0),_0x25654d instanceof Error?_0x25654d[_0x5dc5b1(0x1f3)]:String(_0x25654d)),[];}}async function readStatsCache(){const _0x61686=a77_0x4e89,_0x2b4a7a=getStatsCachePath();if(!existsSync(_0x2b4a7a))return null;try{const _0x19250f=await readFile(_0x2b4a7a,_0x61686(0x1f7)),_0x5acc08=JSON['parse'](_0x19250f),_0x436660=Object[_0x61686(0x1d3)](_0x5acc08[_0x61686(0x1ef)]||{})[0x0];if(_0x436660&&'totalChatUnits'in _0x436660)return null;return _0x5acc08;}catch{return null;}}async function writeStatsCache(_0x29ada4){const _0x376526=a77_0x4e89;await ensureUsageDir();const _0x469267=getStatsCachePath();await writeFile(_0x469267,JSON[_0x376526(0x1bf)](_0x29ada4,null,0x2),'utf-8');}async function isCacheUpToDate(_0x57518c,_0x28e090){const _0x2e76dc=a77_0x4e89,_0x48d3f8=_0x57518c['sessions'][_0x28e090];if(!_0x48d3f8)return![];const _0x31d2ed=getSafeJsonlPath(_0x28e090);if(!existsSync(_0x31d2ed))return!![];try{const _0x4ff9d7=await stat(_0x31d2ed),_0x1ad287=new Date(_0x48d3f8[_0x2e76dc(0x1d4)])[_0x2e76dc(0x1bd)](),_0xebe510=_0x4ff9d7[_0x2e76dc(0x1e3)][_0x2e76dc(0x1bd)]();return _0x1ad287>_0xebe510;}catch{return![];}}export async function rebuildCache(){const _0x26e981=a77_0x4e89,_0x5a406a=new Date(),_0x4bd7af=_0x5a406a['toISOString']()['slice'](0x0,0xa),_0x7302d0=_0x5a406a['toISOString']()[_0x26e981(0x1be)](0x0,0x7),_0x43e58d={'daily':{},'monthly':{},'sessions':{},'profiles':{},'sources':{},'lastRebuiltAt':_0x5a406a['toISOString']()},_0x5601d4=await getAllSessionFiles();for(const _0x54c3a4 of _0x5601d4){try{const _0x5b7fa5=await readSessionJsonl(_0x54c3a4);if(_0x5b7fa5[_0x26e981(0x1bc)]===0x0)continue;let _0x58a829=0x0;const _0x449b7c={};let _0x53c2cb='';for(const _0x12bd2a of _0x5b7fa5){const _0x408830=getModelPricing(_0x12bd2a[_0x26e981(0x1d1)]),_0x369be8=calculateTokenCost(_0x12bd2a[_0x26e981(0x1de)],_0x12bd2a['outputTokens'],_0x12bd2a[_0x26e981(0x1b7)]??0x0,_0x12bd2a[_0x26e981(0x1ba)]??0x0,_0x408830),_0x4386fc=usdToAiCredits(_0x369be8);_0x58a829+=_0x4386fc;const _0x37c7e9=_0x12bd2a['contextSignature']||_0x26e981(0x1c4);_0x449b7c[_0x37c7e9]=_0x12bd2a['inputTokens']+(_0x12bd2a[_0x26e981(0x1b7)]??0x0)+(_0x12bd2a[_0x26e981(0x1ba)]??0x0);_0x12bd2a[_0x26e981(0x1e4)]>_0x53c2cb&&(_0x53c2cb=_0x12bd2a[_0x26e981(0x1e4)]);const _0x2da6bc=_0x12bd2a['timestamp']['slice'](0x0,0xa);!_0x43e58d[_0x26e981(0x1d5)][_0x2da6bc]&&(_0x43e58d[_0x26e981(0x1d5)][_0x2da6bc]={'totalCredits':0x0,'entryCount':0x0});_0x43e58d['daily'][_0x2da6bc][_0x26e981(0x1c1)]+=_0x4386fc,_0x43e58d[_0x26e981(0x1d5)][_0x2da6bc]['entryCount']+=0x1;const _0x453e99=_0x12bd2a['timestamp'][_0x26e981(0x1be)](0x0,0x7);!_0x43e58d[_0x26e981(0x1f8)][_0x453e99]&&(_0x43e58d[_0x26e981(0x1f8)][_0x453e99]={'totalCredits':0x0,'entryCount':0x0});_0x43e58d[_0x26e981(0x1f8)][_0x453e99][_0x26e981(0x1c1)]+=_0x4386fc,_0x43e58d['monthly'][_0x453e99][_0x26e981(0x1c8)]+=0x1;const _0x2ff5ae=_0x12bd2a[_0x26e981(0x1ca)]||_0x26e981(0x1c4);!_0x43e58d[_0x26e981(0x1e1)][_0x2ff5ae]&&(_0x43e58d[_0x26e981(0x1e1)][_0x2ff5ae]={'totalCredits':0x0,'entryCount':0x0,'lastUsedAt':'','todayCredits':0x0,'todayDate':_0x4bd7af,'monthCredits':0x0,'month':_0x7302d0});_0x43e58d[_0x26e981(0x1e1)][_0x2ff5ae]['totalCredits']+=_0x4386fc,_0x43e58d['profiles'][_0x2ff5ae][_0x26e981(0x1c8)]+=0x1;_0x12bd2a[_0x26e981(0x1e4)]>_0x43e58d[_0x26e981(0x1e1)][_0x2ff5ae]['lastUsedAt']&&(_0x43e58d[_0x26e981(0x1e1)][_0x2ff5ae]['lastUsedAt']=_0x12bd2a[_0x26e981(0x1e4)]);_0x2da6bc===_0x4bd7af&&(_0x43e58d[_0x26e981(0x1e1)][_0x2ff5ae][_0x26e981(0x1cf)]+=_0x4386fc);_0x453e99===_0x7302d0&&(_0x43e58d['profiles'][_0x2ff5ae][_0x26e981(0x1b9)]+=_0x4386fc);const _0x51ae5c=_0x12bd2a['source']||'tdx-claude';!_0x43e58d[_0x26e981(0x1ce)][_0x51ae5c]&&(_0x43e58d[_0x26e981(0x1ce)][_0x51ae5c]={'totalCredits':0x0,'entryCount':0x0,'todayCredits':0x0,'todayDate':_0x4bd7af,'monthCredits':0x0,'month':_0x7302d0}),_0x43e58d[_0x26e981(0x1ce)][_0x51ae5c][_0x26e981(0x1c1)]+=_0x4386fc,_0x43e58d[_0x26e981(0x1ce)][_0x51ae5c][_0x26e981(0x1c8)]+=0x1,_0x2da6bc===_0x4bd7af&&(_0x43e58d['sources'][_0x51ae5c][_0x26e981(0x1cf)]+=_0x4386fc),_0x453e99===_0x7302d0&&(_0x43e58d['sources'][_0x51ae5c]['monthCredits']+=_0x4386fc);}_0x43e58d['sessions'][_0x54c3a4]={'totalCredits':_0x58a829,'latestContextTokensBySignature':_0x449b7c,'createdAt':_0x5b7fa5[0x0][_0x26e981(0x1e4)],'lastUpdatedAt':_0x53c2cb};}catch(_0x51d0f7){const _0x34afd4=await getLogger();_0x34afd4[_0x26e981(0x1fa)](_0x26e981(0x1e8)+_0x54c3a4+':',_0x51d0f7 instanceof Error?_0x51d0f7['message']:String(_0x51d0f7));continue;}}return cleanupOldEntries(_0x43e58d),await writeStatsCache(_0x43e58d),_0x43e58d;}function cleanupOldEntries(_0x38f8db){const _0xac85b1=a77_0x4e89,_0x9b2288=new Date(),_0x12e818=new Date(_0x9b2288['getTime']()-0x7*0x18*0x3c*0x3c*0x3e8);for(const _0x4cef79 of Object[_0xac85b1(0x1e0)](_0x38f8db[_0xac85b1(0x1d5)])){new Date(_0x4cef79)<_0x12e818&&delete _0x38f8db[_0xac85b1(0x1d5)][_0x4cef79];}const _0x329760=new Date(_0x9b2288[_0xac85b1(0x1da)]()-0x1,_0x9b2288[_0xac85b1(0x1d0)](),0x1);for(const _0x4c32f2 of Object[_0xac85b1(0x1e0)](_0x38f8db[_0xac85b1(0x1f8)])){const [_0x526be6,_0x30c4db]=_0x4c32f2[_0xac85b1(0x1df)]('-')['map'](Number),_0x47b160=new Date(_0x526be6,_0x30c4db-0x1,0x1);_0x47b160<_0x329760&&delete _0x38f8db['monthly'][_0x4c32f2];}const _0x53b468=new Date(_0x9b2288[_0xac85b1(0x1bd)]()-0x1e*0x18*0x3c*0x3c*0x3e8);for(const [_0x24806e,_0x238c94]of Object[_0xac85b1(0x1ec)](_0x38f8db['sessions'])){new Date(_0x238c94['lastUpdatedAt'])<_0x53b468&&delete _0x38f8db[_0xac85b1(0x1ef)][_0x24806e];}}export async function getOrUpdateCache(_0x39af75){const _0x4fb2d9=_0x39af75?sanitizeSessionId(_0x39af75):undefined,_0x32c232=await readStatsCache();if(!_0x32c232)return rebuildCache();if(_0x4fb2d9){const _0x508e2e=await isCacheUpToDate(_0x32c232,_0x4fb2d9);if(!_0x508e2e)return rebuildCache();}return _0x32c232;}export async function getSessionCredits(_0x217b60){const _0x1c40ea=a77_0x4e89,_0xc85d84=sanitizeSessionId(_0x217b60),_0x21f578=await getOrUpdateCache(_0xc85d84),_0x288151=_0x21f578[_0x1c40ea(0x1ef)][_0xc85d84];if(!_0x288151)return 0x0;return _0x288151[_0x1c40ea(0x1c1)];}export async function getTodayCredits(){const _0x141dad=a77_0x4e89,_0x151719=await getOrUpdateCache(),_0x13065f=new Date()[_0x141dad(0x1f4)]()[_0x141dad(0x1be)](0x0,0xa),_0xc98bd6=_0x151719[_0x141dad(0x1d5)][_0x13065f];if(!_0xc98bd6)return 0x0;return _0xc98bd6[_0x141dad(0x1c1)];}export async function getMonthCredits(){const _0x510660=a77_0x4e89,_0x274d72=await getOrUpdateCache(),_0x446c9b=new Date()['toISOString']()[_0x510660(0x1be)](0x0,0x7),_0x1a55b3=_0x274d72[_0x510660(0x1f8)][_0x446c9b];if(!_0x1a55b3)return 0x0;return _0x1a55b3[_0x510660(0x1c1)];}export async function getSessionStats(_0xfc2b92){const _0x472989=a77_0x4e89,_0x55d660=sanitizeSessionId(_0xfc2b92),_0x40ae6e=await getOrUpdateCache(_0x55d660);return _0x40ae6e[_0x472989(0x1ef)][_0x55d660]||null;}function getMaxLatestContextTokens(_0x526eba){const _0x4b249f=a77_0x4e89,_0x553a92=Object['values'](_0x526eba);if(_0x553a92[_0x4b249f(0x1bc)]===0x0)return 0x0;return Math[_0x4b249f(0x1ee)](..._0x553a92);}export async function getUsageStats(_0x2ba962,_0x40339d){const _0xa882a0=a77_0x4e89,_0x5eab2b=sanitizeSessionId(_0x2ba962),_0x3f6c16=await getOrUpdateCache(_0x5eab2b),_0x533adb=_0x3f6c16[_0xa882a0(0x1ef)][_0x5eab2b],_0x1ffba7=new Date()['toISOString']()[_0xa882a0(0x1be)](0x0,0xa),_0x56cf9f=new Date()['toISOString']()['slice'](0x0,0x7);if(_0x40339d){const _0x28fa8e=_0x3f6c16[_0xa882a0(0x1e1)]?.[_0x40339d],_0x7915da=_0x28fa8e?.[_0xa882a0(0x1c9)]===_0x1ffba7?_0x28fa8e['todayCredits']:0x0,_0xc21eda=_0x28fa8e?.[_0xa882a0(0x1c5)]===_0x56cf9f?_0x28fa8e[_0xa882a0(0x1b9)]:0x0;return{'sessionCredits':_0x533adb?_0x533adb['totalCredits']:0x0,'todayCredits':_0x7915da,'monthCredits':_0xc21eda,'latestContextTokens':_0x533adb?getMaxLatestContextTokens(_0x533adb['latestContextTokensBySignature']):0x0};}return{'sessionCredits':_0x533adb?_0x533adb[_0xa882a0(0x1c1)]:0x0,'todayCredits':_0x3f6c16[_0xa882a0(0x1d5)][_0x1ffba7]?_0x3f6c16[_0xa882a0(0x1d5)][_0x1ffba7][_0xa882a0(0x1c1)]:0x0,'monthCredits':_0x3f6c16['monthly'][_0x56cf9f]?_0x3f6c16[_0xa882a0(0x1f8)][_0x56cf9f][_0xa882a0(0x1c1)]:0x0,'latestContextTokens':_0x533adb?getMaxLatestContextTokens(_0x533adb[_0xa882a0(0x1b8)]):0x0};}function a77_0x4e89(_0x47d99a,_0x4ce4ae){_0x47d99a=_0x47d99a-0x1b7;const _0x1468ae=a77_0x1468();let _0x4e8982=_0x1468ae[_0x47d99a];return _0x4e8982;}export async function getAllProfileStats(){const _0x30f652=a77_0x4e89,_0x121996=await getOrUpdateCache(),_0x58fc40=_0x121996[_0x30f652(0x1e1)]||{};return Object[_0x30f652(0x1ec)](_0x58fc40)[_0x30f652(0x1d9)](([,_0x3b5a12])=>_0x3b5a12&&typeof _0x3b5a12===_0x30f652(0x1ea))[_0x30f652(0x1c6)](([_0x1cf846,_0x42f5af])=>({'profile':_0x1cf846,'credits':_0x42f5af[_0x30f652(0x1c1)]||0x0,'entryCount':_0x42f5af[_0x30f652(0x1c8)]||0x0,'lastUsedAt':_0x42f5af[_0x30f652(0x1dc)]||''}))['sort']((_0x1db43a,_0x3f730d)=>_0x3f730d[_0x30f652(0x1bb)]-_0x1db43a[_0x30f652(0x1bb)]);}export async function getAllSourceStats(){const _0x23530b=a77_0x4e89,_0x156d9d=await getOrUpdateCache(),_0x11e776=_0x156d9d[_0x23530b(0x1ce)]||{},_0x224022=new Date()['toISOString']()['slice'](0x0,0xa),_0x911907=new Date()[_0x23530b(0x1f4)]()[_0x23530b(0x1be)](0x0,0x7);return Object[_0x23530b(0x1ec)](_0x11e776)['filter'](([,_0x463398])=>_0x463398&&typeof _0x463398==='object')['map'](([_0x4d701c,_0x586019])=>({'source':_0x4d701c,'credits':_0x586019[_0x23530b(0x1c1)]||0x0,'todayCredits':_0x586019[_0x23530b(0x1c9)]===_0x224022?_0x586019[_0x23530b(0x1cf)]||0x0:0x0,'monthCredits':_0x586019['month']===_0x911907?_0x586019[_0x23530b(0x1b9)]||0x0:0x0,'entryCount':_0x586019[_0x23530b(0x1c8)]||0x0}))[_0x23530b(0x1e7)]((_0x47f010,_0x22cc1e)=>_0x22cc1e[_0x23530b(0x1bb)]-_0x47f010[_0x23530b(0x1bb)]);}export async function getUsageSummary(){const _0x57bb84=a77_0x4e89,_0x33059c=await getOrUpdateCache(),_0x74d50f=_0x33059c[_0x57bb84(0x1e1)]||{},_0x9a60b8=new Date()[_0x57bb84(0x1f4)]()['slice'](0x0,0xa),_0x314733=new Date()['toISOString']()['slice'](0x0,0x7),_0x82223f=Object[_0x57bb84(0x1d3)](_0x74d50f)[_0x57bb84(0x1d9)](_0x36cd28=>_0x36cd28&&typeof _0x36cd28===_0x57bb84(0x1ea)),_0x3063d1=_0x82223f[_0x57bb84(0x1dd)]((_0x1d6807,_0x2ec020)=>_0x1d6807+(_0x2ec020['totalCredits']||0x0),0x0);return{'todayCredits':_0x33059c[_0x57bb84(0x1d5)][_0x9a60b8]?_0x33059c['daily'][_0x9a60b8]['totalCredits']||0x0:0x0,'monthCredits':_0x33059c[_0x57bb84(0x1f8)][_0x314733]?_0x33059c['monthly'][_0x314733][_0x57bb84(0x1c1)]||0x0:0x0,'totalCredits':_0x3063d1,'profileCount':_0x82223f[_0x57bb84(0x1bc)]};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a78_0xa6bebb=a78_0x2083;(function(_0x30a404,_0x1329dc){const _0x3956d6=a78_0x2083,_0x3c8189=_0x30a404();while(!![]){try{const _0x5db17b=-parseInt(_0x3956d6(0x16b))/0x1+-parseInt(_0x3956d6(0x19a))/0x2*(-parseInt(_0x3956d6(0x1a2))/0x3)+parseInt(_0x3956d6(0x1e4))/0x4*(-parseInt(_0x3956d6(0x1a0))/0x5)+parseInt(_0x3956d6(0x1e1))/0x6+-parseInt(_0x3956d6(0x205))/0x7+-parseInt(_0x3956d6(0x171))/0x8*(-parseInt(_0x3956d6(0x1be))/0x9)+-parseInt(_0x3956d6(0x189))/0xa;if(_0x5db17b===_0x1329dc)break;else _0x3c8189['push'](_0x3c8189['shift']());}catch(_0x27e03e){_0x3c8189['push'](_0x3c8189['shift']());}}}(a78_0x4c94,0xd712d));import a78_0x40e889 from'fastify';import a78_0x4c0431 from'@fastify/cors';import{SSEUsageTracker}from'./sse-usage-parser.js';import{appendUsageEntry}from'./claude-usage-tracker.js';import{getVersion}from'../core/version.js';function a78_0x4c94(){const _0x42c10e=['X-TD-Client-Version','TD1\x20','GET','usage','setupMiddleware','Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20','expiresAt',':\x20messages=','buildForwardHeaders','length','setupJsonParser','Port\x20','slice','tdx/','logUsage','post','Error\x20body:\x20','consoleUrl','cacheReadInputTokens','raw','\x20and\x20','10849200aqqawH','SKIP_HEADERS','authorization','host','debug','x-api-key','write','stream_error','messages','Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20','timeout','url','stream','info',',\x20model=','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20count_tokens\x20request:','logger','293538MEiItP','input_tokens','Authorization','method','read','port','30AHGdSG','entries','33vdhUju','\x20in\x20use,\x20trying\x20next...','status','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20request:','EADDRINUSE','timeoutMs','name','refreshTokenIfNeeded','TimeoutError',',\x20cache_create=','handleMessages','refresh_token','parse','tdx',',\x20stream=','x-td-','Server\x20has\x20not\x20been\x20started\x20yet','getAddress','addContentTypeParser','TD\x20LLM\x20Pass-through\x20Proxy\x20Server','get','setErrorHandler','POST','transfer-encoding','unknown','refreshToken','writeHead','/v1/messages','9YgzFbf','send','anthropic-version','headers','body','[PASSTHROUGH]\x20Upstream\x20error:\x20','getReader','tdx-claude','Forwarding\x20to:\x20','startsWith','apiKey','cache_read_input_tokens','[PASSTHROUGH]\x20OAuth\x20token\x20refreshed\x20successfully',',\x20output=','setupRoutes','|\x20Write\x20agent\x20system\x20prompts\x20|\x20tdx-skills:agent-prompt\x20|\x0a|\x20TD\x20Trino\x20SQL\x20queries\x20|\x20sql-skills:trino\x20|\x0a|\x20TD\x20Hive\x20SQL\x20queries\x20|\x20sql-skills:hive\x20|\x0a|\x20Time\x20filtering\x20(td_interval,\x20partition\x20pruning)\x20|\x20sql-skills:time-filtering\x20|\x0a|\x20Optimize\x20slow\x20Trino\x20queries\x20|\x20sql-skills:trino-optimizer\x20|\x0a|\x20Convert\x20Trino\x20to\x20Hive\x20(memory\x20errors)\x20|\x20sql-skills:trino-to-hive-migration\x20|\x0a|\x20Treasure\x20Workflow\x20(.dig\x20files)\x20|\x20workflow-skills:digdag\x20|\x0a|\x20Debug/manage\x20workflows\x20|\x20workflow-skills:workflow-management\x20|\x0a|\x20dbt\x20with\x20TD\x20Trino\x20|\x20workflow-skills:dbt\x20|\x0a|\x20JavaScript\x20SDK\x20(browser\x20tracking)\x20|\x20sdk-skills:javascript\x20|\x0a|\x20Python\x20SDK\x20(pytd,\x20pandas)\x20|\x20sdk-skills:python\x20|','model','maxPortAttempts','/v1/messages/count_tokens','text','cacheCreationInputTokens','indexOf','startTokenRefreshTimer','accessToken','user-agent','127.0.0.1','No\x20available\x20port\x20found\x20between\x20','output_tokens','type','message','string','timeout_error','isArray','listen','getUsage','344370cpUtsT','/health','oauth','570220Uvnhft','content-length','[PASSTHROUGH]\x20Forwarding\x20count_tokens\x20to:\x20','default','inputTokens','error','outputTokens','api_error','keep-alive','refreshTimer',',\x20cache_read=','createServer','Unknown\x20error','handleCountTokens','http://127.0.0.1:','[PASSTHROUGH]\x20Usage:\x20input=','unref','processChunk','system','stringify','application/json','toLowerCase','statusText','profile','includes','_boundPort','server','end','expires_at','startPort','[PASSTHROUGH]\x20OAuth\x20token\x20refresh\x20failed:','|\x20Debug\x20agent\x20issues\x20|\x20tdx-skills:agent-debug\x20|\x0a','header','1084160aMdMFZ','Content-Type','start','267088MwYVxS','You\x20are\x20`tdx\x20claude`,\x20an\x20extension\x20of\x20Claude\x20Code\x20with\x20tdx\x20CLI\x20tools\x20(https://tdx.treasuredata.com/)\x20and\x20skills\x20for\x20Treasure\x20Data\x20and\x20CDP.\x0a\x0aFor\x20Treasure\x20Data\x20tasks,\x20use\x20these\x20skills:\x0a\x0a|\x20Task\x20|\x20Skill\x20|\x0a|------|-------|\x0a|\x20tdx\x20CLI\x20operations\x20(databases,\x20tables,\x20queries)\x20|\x20tdx-skills:tdx-basic\x20|\x0a|\x20CDP\x20parent\x20segments\x20(YAML\x20config)\x20|\x20tdx-skills:parent-segment\x20|\x0a|\x20CDP\x20child\x20segments\x20(rules,\x20activations)\x20|\x20tdx-skills:segment\x20|\x0a|\x20Validate\x20segment\x20YAML\x20|\x20tdx-skills:validate-segment\x20|\x0a|\x20CDP\x20journeys\x20(stages,\x20steps)\x20|\x20tdx-skills:journey\x20|\x0a|\x20Validate\x20journey\x20YAML\x20|\x20tdx-skills:validate-journey\x20|\x0a|\x20Configure\x20activations\x20|\x20tdx-skills:connector-config\x20|\x0a|\x20Build\x20LLM\x20agents\x20|\x20tdx-skills:agent\x20|\x0a','code','Bearer\x20','config','event:\x20error\x0adata:\x20','12570440ddEDLd','join','llmProxyUrl'];a78_0x4c94=function(){return _0x42c10e;};return a78_0x4c94();}import{isExperimentalAvailable}from'../core/config.js';import{refreshAccessToken}from'../sdk/client/oauth-refresh.js';import{saveOAuthTokens}from'../core/oauth-keychain.js';const DEFAULT_TIMEOUT_MS=0x5*0x3c*0x3e8,TDX_SYSTEM_PROMPT=a78_0xa6bebb(0x16c)+(isExperimentalAvailable()?a78_0xa6bebb(0x203):'')+a78_0xa6bebb(0x1cd);function extractSessionUUID(_0x469766){const _0x5769ac=_0x469766['match'](/_session_([a-f0-9-]+)$/i);if(_0x5769ac)return _0x5769ac[0x1];return _0x469766;}export function injectSystemPrompt(_0xf43b21,_0x3d47be){const _0x202c5a=a78_0xa6bebb,_0x294845=_0xf43b21[_0x202c5a(0x1f6)];if(!_0x294845)return{..._0xf43b21,'system':_0x3d47be};if(typeof _0x294845===_0x202c5a(0x1dc))return{..._0xf43b21,'system':_0x294845+'\x0a\x0a'+_0x3d47be};if(Array[_0x202c5a(0x1de)](_0x294845)){const _0x9a736d={'type':'text','text':_0x3d47be};return{..._0xf43b21,'system':[..._0x294845,_0x9a736d]};}return _0xf43b21;}function a78_0x2083(_0xde9807,_0x247d73){_0xde9807=_0xde9807-0x169;const _0x4c945f=a78_0x4c94();let _0x20839b=_0x4c945f[_0xde9807];return _0x20839b;}export function shouldInjectSystemPrompt(_0x4d6776){const _0x368bd1=a78_0xa6bebb;return!_0x4d6776[_0x368bd1(0x1f9)]()['includes']('haiku');}const TOKEN_REFRESH_INTERVAL_MS=0x5*0x3c*0x3e8,TOKEN_EXPIRY_BUFFER_MS=0x5*0x3c*0x3e8;export class PassThroughProxyServer{[a78_0xa6bebb(0x1fe)];[a78_0xa6bebb(0x16f)];[a78_0xa6bebb(0x199)];['_boundPort'];['refreshTimer'];constructor(_0x9c7479){const _0x82e5a8=a78_0xa6bebb;this[_0x82e5a8(0x16f)]=_0x9c7479,this[_0x82e5a8(0x199)]=_0x9c7479[_0x82e5a8(0x199)],this[_0x82e5a8(0x1fe)]=this[_0x82e5a8(0x1ef)]();}get['port'](){const _0x480072=a78_0xa6bebb;if(this['_boundPort']===undefined)throw new Error(_0x480072(0x1b2));return this[_0x480072(0x1fd)];}[a78_0xa6bebb(0x1ef)](){const _0x826161=a78_0xa6bebb,_0x59d3d1=a78_0x40e889({'logger':![],'bodyLimit':0x40*0x400*0x400});return this[_0x826161(0x1fe)]=_0x59d3d1,this[_0x826161(0x17e)](),this['setupMiddleware'](),this[_0x826161(0x1cc)](),_0x59d3d1;}[a78_0xa6bebb(0x17e)](){const _0x10d6d6=a78_0xa6bebb;this['server'][_0x10d6d6(0x1b4)](_0x10d6d6(0x1f8),{'parseAs':_0x10d6d6(0x1dc)},(_0x4344df,_0x586992,_0x1dca9b)=>{const _0x5b1596=_0x10d6d6;try{const _0x456677=JSON[_0x5b1596(0x1ae)](_0x586992);_0x1dca9b(null,_0x456677);}catch(_0x4d90ab){_0x1dca9b(_0x4d90ab,undefined);}});}[a78_0xa6bebb(0x178)](){const _0x16e957=a78_0xa6bebb;this['server']['register'](a78_0x4c0431,{'origin':!![],'methods':[_0x16e957(0x176),_0x16e957(0x1b8),'OPTIONS'],'allowedHeaders':[_0x16e957(0x169),_0x16e957(0x19c),_0x16e957(0x1c0),'x-api-key']}),this[_0x16e957(0x1fe)][_0x16e957(0x1b7)]((_0x5acdb7,_0x4a2272,_0x54df11)=>{const _0x13b22b=_0x16e957,_0x177732=_0x5acdb7 instanceof Error?_0x5acdb7[_0x13b22b(0x1db)]:_0x13b22b(0x1f0);this[_0x13b22b(0x199)][_0x13b22b(0x1e9)]('[PASSTHROUGH\x20PROXY\x20ERROR]:',_0x5acdb7),_0x54df11[_0x13b22b(0x16d)](0x1f4)[_0x13b22b(0x1bf)]({'type':'error','error':{'type':_0x13b22b(0x1eb),'message':_0x177732}});});}[a78_0xa6bebb(0x1cc)](){const _0x51147d=a78_0xa6bebb;this[_0x51147d(0x1fe)]['get'](_0x51147d(0x1e2),async()=>{const _0x580d72=_0x51147d;return{'status':'ok','message':_0x580d72(0x1b5)};}),this['server'][_0x51147d(0x183)]('/v1/messages',async(_0x2318e9,_0x15242a)=>{const _0x3b1832=_0x51147d;return this[_0x3b1832(0x1ac)](_0x2318e9,_0x15242a);}),this[_0x51147d(0x1fe)][_0x51147d(0x183)]('/v1/messages/count_tokens',async(_0x2d9aa3,_0x2820f9)=>{const _0x3cf9fb=_0x51147d;return this[_0x3cf9fb(0x1f1)](_0x2d9aa3,_0x2820f9);});}static [a78_0xa6bebb(0x18a)]=new Set([a78_0xa6bebb(0x18c),'connection',a78_0xa6bebb(0x1e5),a78_0xa6bebb(0x1b9),a78_0xa6bebb(0x18b),a78_0xa6bebb(0x18e),a78_0xa6bebb(0x1d6)]);[a78_0xa6bebb(0x17c)](_0x2b9926){const _0x1d2434=a78_0xa6bebb,_0x380c81={};for(const [_0x3d2429,_0x229e96]of Object[_0x1d2434(0x1a1)](_0x2b9926[_0x1d2434(0x1c1)])){const _0x44baf1=_0x3d2429[_0x1d2434(0x1f9)]();if(PassThroughProxyServer[_0x1d2434(0x18a)]['has'](_0x44baf1))continue;if(_0x44baf1[_0x1d2434(0x1c7)](_0x1d2434(0x1b1)))continue;if(typeof _0x229e96===_0x1d2434(0x1dc))_0x380c81[_0x3d2429]=_0x229e96;else Array[_0x1d2434(0x1de)](_0x229e96)&&(_0x380c81[_0x3d2429]=_0x229e96[_0x1d2434(0x172)](',\x20'));}const _0x24b66a=getVersion(),{auth:_0x3127f4}=this[_0x1d2434(0x16f)];return _0x380c81[_0x1d2434(0x19c)]=_0x3127f4['type']===_0x1d2434(0x1e3)?_0x1d2434(0x16e)+_0x3127f4[_0x1d2434(0x1d5)]:_0x1d2434(0x175)+_0x3127f4[_0x1d2434(0x1c8)],_0x380c81['User-Agent']=_0x1d2434(0x181)+_0x24b66a,_0x380c81['X-TD-Client']=_0x1d2434(0x1af),_0x380c81[_0x1d2434(0x174)]=_0x24b66a,_0x380c81;}async[a78_0xa6bebb(0x1ac)](_0xd26b59,_0x555554){const _0x553041=a78_0xa6bebb,_0x369aa8=_0xd26b59[_0x553041(0x1c2)],_0x262658=_0x369aa8[_0x553041(0x195)]!==![],_0x464d98=_0x369aa8['metadata'],_0x2a97f7=_0x464d98?.['user_id']||_0x553041(0x1e7),_0x430865=extractSessionUUID(_0x2a97f7),_0x45ef10=_0x369aa8[_0x553041(0x1ce)]||_0x553041(0x1ba),_0x210a7a=shouldInjectSystemPrompt(_0x45ef10)?injectSystemPrompt(_0x369aa8,TDX_SYSTEM_PROMPT):_0x369aa8,_0xb16c7=JSON[_0x553041(0x1f7)](_0x210a7a),_0x4c71eb=Array[_0x553041(0x1de)](_0x369aa8[_0x553041(0x191)])?_0x369aa8[_0x553041(0x191)][_0x553041(0x17d)]:0x0;this[_0x553041(0x199)][_0x553041(0x196)]('[PASSTHROUGH]\x20'+_0xd26b59[_0x553041(0x19d)]+'\x20'+_0xd26b59['url']+_0x553041(0x17b)+_0x4c71eb+_0x553041(0x197)+_0x45ef10+_0x553041(0x1b0)+_0x262658);const _0x25017c=_0xd26b59['url'][_0x553041(0x1fc)]('?')?_0xd26b59[_0x553041(0x194)][_0x553041(0x180)](_0xd26b59[_0x553041(0x194)][_0x553041(0x1d3)]('?')):'',_0xdb0ea9=this[_0x553041(0x16f)]['llmProxyUrl']+_0x553041(0x1bd)+_0x25017c,_0x3ea8c7=this[_0x553041(0x17c)](_0xd26b59);this[_0x553041(0x199)][_0x553041(0x18d)](_0x553041(0x1c6)+_0xdb0ea9);const _0xe7730d=this['config'][_0x553041(0x1a7)]||DEFAULT_TIMEOUT_MS;try{const _0x153bc1=await fetch(_0xdb0ea9,{'method':'POST','headers':_0x3ea8c7,'body':_0xb16c7,'signal':AbortSignal[_0x553041(0x193)](_0xe7730d)});if(!_0x153bc1['ok']){const _0x3e82fd=await _0x153bc1[_0x553041(0x1d1)]();return this[_0x553041(0x199)][_0x553041(0x1e9)](_0x553041(0x1c3)+_0x153bc1[_0x553041(0x1a4)]+'\x20'+_0x153bc1[_0x553041(0x1fa)]),this[_0x553041(0x199)]['debug'](_0x553041(0x184)+_0x3e82fd),_0x555554[_0x553041(0x16d)](_0x153bc1[_0x553041(0x1a4)]),_0x555554[_0x553041(0x204)](_0x553041(0x169),_0x153bc1[_0x553041(0x1c1)]['get'](_0x553041(0x169))||_0x553041(0x1f8)),_0x555554['send'](_0x3e82fd);}if(_0x262658&&_0x153bc1['body'])await this['handleStreamingResponse'](_0x153bc1[_0x553041(0x1c2)],_0x555554,_0x430865,_0x45ef10);else{const _0x135b5b=await _0x153bc1['text']();_0x555554[_0x553041(0x204)]('Content-Type',_0x153bc1['headers']['get'](_0x553041(0x169))||_0x553041(0x1f8));try{const _0x585061=JSON[_0x553041(0x1ae)](_0x135b5b);_0x585061['usage']&&await this['logUsage'](_0x430865,_0x45ef10,_0x585061[_0x553041(0x177)][_0x553041(0x19b)]||0x0,_0x585061[_0x553041(0x177)][_0x553041(0x1d9)]||0x0,_0x585061['usage']['cache_creation_input_tokens'],_0x585061['usage'][_0x553041(0x1c9)]);}catch{}return _0x555554[_0x553041(0x1bf)](_0x135b5b);}}catch(_0x24dfd9){const _0x109fe1=_0x24dfd9 instanceof Error?_0x24dfd9['message']:_0x553041(0x1f0),_0x246228=_0x24dfd9 instanceof Error&&_0x24dfd9[_0x553041(0x1a8)]===_0x553041(0x1aa);this['logger'][_0x553041(0x1e9)](_0x553041(0x1a5),_0x24dfd9),_0x555554['code'](_0x246228?0x1f8:0x1f7)[_0x553041(0x1bf)]({'type':'error','error':{'type':_0x246228?_0x553041(0x1dd):_0x553041(0x1eb),'message':_0x246228?_0x553041(0x179)+_0xe7730d+'ms':_0x553041(0x192)+_0x109fe1}});}}async['handleStreamingResponse'](_0x570337,_0x10febd,_0x4ea137,_0xb5c0d7){const _0xa5e597=a78_0xa6bebb;_0x10febd['raw'][_0xa5e597(0x1bc)](0xc8,{'Content-Type':'text/event-stream','Cache-Control':'no-cache','Connection':_0xa5e597(0x1ec)});const _0x58acd8=new SSEUsageTracker(),_0x25661f=_0x570337[_0xa5e597(0x1c4)](),_0x53d998=new TextDecoder();try{while(!![]){const {done:_0x1e166a,value:_0x2fcf5e}=await _0x25661f[_0xa5e597(0x19e)]();if(_0x1e166a)break;const _0x19fd7e=_0x53d998['decode'](_0x2fcf5e,{'stream':!![]});_0x58acd8[_0xa5e597(0x1f5)](_0x19fd7e),_0x10febd[_0xa5e597(0x187)]['write'](_0x19fd7e);}_0x58acd8['flush']();const _0x3c97ef=_0x58acd8[_0xa5e597(0x1e0)]();(_0x3c97ef[_0xa5e597(0x1e8)]>0x0||_0x3c97ef[_0xa5e597(0x1ea)]>0x0)&&await this['logUsage'](_0x4ea137,_0xb5c0d7,_0x3c97ef[_0xa5e597(0x1e8)],_0x3c97ef['outputTokens'],_0x3c97ef[_0xa5e597(0x1d2)],_0x3c97ef[_0xa5e597(0x186)]);}catch(_0x6d194d){this['logger']['error']('[PASSTHROUGH]\x20Stream\x20error:',_0x6d194d);const _0x49db04=_0xa5e597(0x170)+JSON['stringify']({'type':_0xa5e597(0x1e9),'error':{'type':_0xa5e597(0x190),'message':'Stream\x20interrupted'}})+'\x0a\x0a';_0x10febd[_0xa5e597(0x187)][_0xa5e597(0x18f)](_0x49db04);}finally{_0x10febd['raw'][_0xa5e597(0x1ff)]();}}async[a78_0xa6bebb(0x1f1)](_0x1fbec0,_0x26abe4){const _0x36b58e=a78_0xa6bebb,_0x1e8968=_0x1fbec0[_0x36b58e(0x1c2)],_0x31bec3=_0x1fbec0['url'][_0x36b58e(0x1fc)]('?')?_0x1fbec0[_0x36b58e(0x194)][_0x36b58e(0x180)](_0x1fbec0['url'][_0x36b58e(0x1d3)]('?')):'',_0x368562=this[_0x36b58e(0x16f)][_0x36b58e(0x173)]+_0x36b58e(0x1d0)+_0x31bec3,_0x5be049=this[_0x36b58e(0x17c)](_0x1fbec0),_0x423990=_0x1e8968[_0x36b58e(0x1ce)]||_0x36b58e(0x1ba),_0x3a77b9=shouldInjectSystemPrompt(_0x423990)?injectSystemPrompt(_0x1e8968,TDX_SYSTEM_PROMPT):_0x1e8968,_0x2f515b=JSON[_0x36b58e(0x1f7)](_0x3a77b9);this[_0x36b58e(0x199)][_0x36b58e(0x18d)](_0x36b58e(0x1e6)+_0x368562);const _0x520188=this[_0x36b58e(0x16f)][_0x36b58e(0x1a7)]||DEFAULT_TIMEOUT_MS;try{const _0x146a3a=await fetch(_0x368562,{'method':_0x36b58e(0x1b8),'headers':_0x5be049,'body':_0x2f515b,'signal':AbortSignal[_0x36b58e(0x193)](_0x520188)}),_0x6b1739=await _0x146a3a[_0x36b58e(0x1d1)]();return _0x26abe4[_0x36b58e(0x16d)](_0x146a3a[_0x36b58e(0x1a4)]),_0x26abe4['header'](_0x36b58e(0x169),_0x146a3a[_0x36b58e(0x1c1)][_0x36b58e(0x1b6)](_0x36b58e(0x169))||_0x36b58e(0x1f8)),_0x26abe4[_0x36b58e(0x1bf)](_0x6b1739);}catch(_0x251b71){const _0x3c991c=_0x251b71 instanceof Error?_0x251b71[_0x36b58e(0x1db)]:_0x36b58e(0x1f0),_0x359a70=_0x251b71 instanceof Error&&_0x251b71[_0x36b58e(0x1a8)]==='TimeoutError';this[_0x36b58e(0x199)]['error'](_0x36b58e(0x198),_0x251b71),_0x26abe4[_0x36b58e(0x16d)](_0x359a70?0x1f8:0x1f7)['send']({'type':_0x36b58e(0x1e9),'error':{'type':_0x359a70?_0x36b58e(0x1dd):_0x36b58e(0x1eb),'message':_0x359a70?_0x36b58e(0x179)+_0x520188+'ms':_0x36b58e(0x192)+_0x3c991c}});}}async[a78_0xa6bebb(0x182)](_0x7de84c,_0x290675,_0x53b2cf,_0x4d5688,_0x67046c,_0x5ed3e6){const _0x390d35=a78_0xa6bebb,_0x55ecfd={'timestamp':new Date()['toISOString'](),'model':_0x290675,'inputTokens':_0x53b2cf,'outputTokens':_0x4d5688,'cacheCreationInputTokens':_0x67046c,'cacheReadInputTokens':_0x5ed3e6,'profile':this[_0x390d35(0x16f)]['profile'],'source':_0x390d35(0x1c5)},_0x49a332=_0x67046c||_0x5ed3e6?_0x390d35(0x1ab)+(_0x67046c||0x0)+_0x390d35(0x1ee)+(_0x5ed3e6||0x0):'';this[_0x390d35(0x199)][_0x390d35(0x18d)](_0x390d35(0x1f3)+_0x53b2cf+_0x390d35(0x1cb)+_0x4d5688+_0x49a332+_0x390d35(0x197)+_0x290675);try{await appendUsageEntry(_0x7de84c,_0x55ecfd);}catch(_0x2885e8){this['logger']['error']('[PASSTHROUGH]\x20Failed\x20to\x20log\x20usage:',_0x2885e8);}}[a78_0xa6bebb(0x1d4)](){const _0x3a4d1c=a78_0xa6bebb;if(this[_0x3a4d1c(0x16f)]['auth'][_0x3a4d1c(0x1da)]!==_0x3a4d1c(0x1e3))return;this[_0x3a4d1c(0x1ed)]=setInterval(()=>{const _0x2eee8d=_0x3a4d1c;void this[_0x2eee8d(0x1a9)]();},TOKEN_REFRESH_INTERVAL_MS),this['refreshTimer'][_0x3a4d1c(0x1f4)]();}async['refreshTokenIfNeeded'](){const _0x2cfd9e=a78_0xa6bebb,{auth:_0x487b11}=this['config'];if(_0x487b11[_0x2cfd9e(0x1da)]!==_0x2cfd9e(0x1e3))return;const _0x46636c=!_0x487b11[_0x2cfd9e(0x17a)]||_0x487b11['expiresAt']<Date['now']()+TOKEN_EXPIRY_BUFFER_MS;if(!_0x46636c)return;try{const _0x38f40b=await refreshAccessToken(_0x487b11[_0x2cfd9e(0x185)],_0x487b11['refreshToken']);_0x487b11['accessToken']=_0x38f40b['access_token'],_0x487b11[_0x2cfd9e(0x1bb)]=_0x38f40b[_0x2cfd9e(0x1ad)],_0x487b11[_0x2cfd9e(0x17a)]=_0x38f40b[_0x2cfd9e(0x200)],await saveOAuthTokens(_0x38f40b,this['config'][_0x2cfd9e(0x1fb)]),this[_0x2cfd9e(0x199)][_0x2cfd9e(0x196)](_0x2cfd9e(0x1ca));}catch(_0x73a763){this[_0x2cfd9e(0x199)][_0x2cfd9e(0x1e9)](_0x2cfd9e(0x202),_0x73a763);}}async[a78_0xa6bebb(0x16a)](){const _0x2d7e3f=a78_0xa6bebb,_0x32d4de=this[_0x2d7e3f(0x16f)][_0x2d7e3f(0x1cf)]??0x64;for(let _0x4cc93b=0x0;_0x4cc93b<_0x32d4de;_0x4cc93b++){const _0x2d1372=this[_0x2d7e3f(0x16f)][_0x2d7e3f(0x201)]+_0x4cc93b;try{await this[_0x2d7e3f(0x1fe)][_0x2d7e3f(0x1df)]({'port':_0x2d1372,'host':_0x2d7e3f(0x1d7)}),this[_0x2d7e3f(0x1fd)]=_0x2d1372,this[_0x2d7e3f(0x199)][_0x2d7e3f(0x196)]('Pass-through\x20proxy\x20server\x20started\x20on\x20port\x20'+_0x2d1372),this[_0x2d7e3f(0x199)][_0x2d7e3f(0x196)](_0x2d7e3f(0x1c6)+this[_0x2d7e3f(0x16f)][_0x2d7e3f(0x173)]),this[_0x2d7e3f(0x1d4)]();return;}catch(_0x3d65b6){const _0x2c0aae=_0x3d65b6 instanceof Error&&_0x2d7e3f(0x16d)in _0x3d65b6&&_0x3d65b6[_0x2d7e3f(0x16d)]===_0x2d7e3f(0x1a6);if(!_0x2c0aae)throw _0x3d65b6;this['logger'][_0x2d7e3f(0x18d)](_0x2d7e3f(0x17f)+_0x2d1372+_0x2d7e3f(0x1a3)),this[_0x2d7e3f(0x1ef)]();}}const _0x58e849=this[_0x2d7e3f(0x16f)]['startPort']+_0x32d4de-0x1;throw new Error(_0x2d7e3f(0x1d8)+this[_0x2d7e3f(0x16f)][_0x2d7e3f(0x201)]+_0x2d7e3f(0x188)+_0x58e849);}async['stop'](){const _0x3cdf4c=a78_0xa6bebb;this[_0x3cdf4c(0x1ed)]&&(clearInterval(this[_0x3cdf4c(0x1ed)]),this['refreshTimer']=undefined),await this['server']['close'](),this[_0x3cdf4c(0x199)][_0x3cdf4c(0x196)]('Pass-through\x20proxy\x20server\x20stopped');}[a78_0xa6bebb(0x1b3)](){const _0x54252f=a78_0xa6bebb;return _0x54252f(0x1f2)+this[_0x54252f(0x19f)];}}
|
|
1
|
+
const a78_0x1493e9=a78_0x2552;(function(_0x827c96,_0x421589){const _0x3bf890=a78_0x2552,_0x4e6c2c=_0x827c96();while(!![]){try{const _0x1e5798=-parseInt(_0x3bf890(0x12f))/0x1+parseInt(_0x3bf890(0x183))/0x2+parseInt(_0x3bf890(0x134))/0x3+-parseInt(_0x3bf890(0x167))/0x4+-parseInt(_0x3bf890(0x18c))/0x5+-parseInt(_0x3bf890(0x140))/0x6*(parseInt(_0x3bf890(0x15b))/0x7)+parseInt(_0x3bf890(0x164))/0x8*(parseInt(_0x3bf890(0x13e))/0x9);if(_0x1e5798===_0x421589)break;else _0x4e6c2c['push'](_0x4e6c2c['shift']());}catch(_0x3d8f72){_0x4e6c2c['push'](_0x4e6c2c['shift']());}}}(a78_0x4832,0xa6c24));function a78_0x2552(_0x5d292f,_0x3c4a0b){_0x5d292f=_0x5d292f-0xf0;const _0x4832b8=a78_0x4832();let _0x2552a4=_0x4832b8[_0x5d292f];return _0x2552a4;}import a78_0x15207a from'fastify';import a78_0x27931c from'@fastify/cors';function a78_0x4832(){const _0x1f724b=['oauth','includes','unref','close','[PASSTHROUGH]\x20Upstream\x20error:\x20','outputTokens','profile','_boundPort','now','GET','config','244321ZEPmzv','api_error','error','text','read','header','statusText','transfer-encoding','buildForwardHeaders','16098000DXTXeE',':\x20messages=','isArray','3665712rFFsDb','handleMessages',',\x20output=','auth','Forwarding\x20to:\x20',',\x20cache_create=','toISOString','consoleUrl','listen','maxPortAttempts','Content-Type','timeoutMs','User-Agent','processChunk','cache_creation_input_tokens','\x20in\x20use,\x20trying\x20next...','model','text/event-stream','addContentTypeParser','keep-alive','TimeoutError','message','send','getReader','string','match','X-TD-Client','logger','1861362TwLxie','startsWith','inputTokens','server','Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20','tdx','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20request:','setErrorHandler','headers','5215020uFTfMl','flush','host','metadata','writeHead','refresh_token','refreshTokenIfNeeded','[PASSTHROUGH]\x20Failed\x20to\x20log\x20usage:','stream_error','post','cacheCreationInputTokens','Pass-through\x20proxy\x20server\x20started\x20on\x20port\x20','status','No\x20available\x20port\x20found\x20between\x20','Port\x20','parse','handleCountTokens','logUsage','timeout_error','name','info',',\x20cache_read=','register','[PASSTHROUGH]\x20','toLowerCase','has','getAddress','unknown','event:\x20error\x0adata:\x20','content-length','body','port','decode','setupRoutes','length','get','anthropic-version','stringify','Stream\x20interrupted','Unknown\x20error','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','Authorization','\x20and\x20','application/json','user_id','TD\x20LLM\x20Pass-through\x20Proxy\x20Server','setupMiddleware','end','raw','Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20','authorization','POST','access_token','apiKey','SKIP_HEADERS','cache_read_input_tokens','[PASSTHROUGH]\x20Usage:\x20input=','stream','url','code','debug',',\x20model=','createServer','/health','refreshTimer','564260VYsxrA','startTokenRefreshTimer','handleStreamingResponse','timeout','llmProxyUrl','3199722mhZqtP','127.0.0.1','startPort','[PASSTHROUGH]\x20OAuth\x20token\x20refreshed\x20successfully','accessToken','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20count_tokens\x20request:','http://127.0.0.1:','connection','default','usage','9wJefBr','[PASSTHROUGH\x20PROXY\x20ERROR]:','138IbWckI','refreshToken','EADDRINUSE','cacheReadInputTokens','input_tokens','|\x20Debug\x20agent\x20issues\x20|\x20tdx-skills:agent-debug\x20|\x0a','x-api-key','type','entries','expiresAt','join','X-TD-Client-Version','/v1/messages','slice','indexOf','start'];a78_0x4832=function(){return _0x1f724b;};return a78_0x4832();}import{SSEUsageTracker}from'./sse-usage-parser.js';import{appendUsageEntry}from'./claude-usage-tracker.js';import{getVersion}from'../core/version.js';import{isExperimentalAvailable}from'../core/config.js';import{refreshAccessToken}from'../sdk/client/oauth-refresh.js';import{saveOAuthTokens}from'../core/oauth-keychain.js';const DEFAULT_TIMEOUT_MS=0x5*0x3c*0x3e8,TDX_SYSTEM_PROMPT=a78_0x1493e9(0x116)+(isExperimentalAvailable()?a78_0x1493e9(0x145):'')+'|\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(_0x1692d6){const _0x119a51=a78_0x1493e9,_0x5aff0c=_0x1692d6[_0x119a51(0x180)](/_session_([a-f0-9-]+)$/i);if(_0x5aff0c)return _0x5aff0c[0x1];return _0x1692d6;}export function injectSystemPrompt(_0x35bf51,_0x278c37){const _0x1695f4=a78_0x1493e9,_0x265b17=_0x35bf51['system'];if(!_0x265b17)return{..._0x35bf51,'system':_0x278c37};if(typeof _0x265b17==='string')return{..._0x35bf51,'system':_0x265b17+'\x0a\x0a'+_0x278c37};if(Array[_0x1695f4(0x166)](_0x265b17)){const _0x1dcf8c={'type':_0x1695f4(0x15e),'text':_0x278c37};return{..._0x35bf51,'system':[..._0x265b17,_0x1dcf8c]};}return _0x35bf51;}export function shouldInjectSystemPrompt(_0xbb634c){const _0x3cbeb3=a78_0x1493e9;return!_0xbb634c[_0x3cbeb3(0x106)]()[_0x3cbeb3(0x151)]('haiku');}const TOKEN_REFRESH_INTERVAL_MS=0x5*0x3c*0x3e8,TOKEN_EXPIRY_BUFFER_MS=0x5*0x3c*0x3e8;export class PassThroughProxyServer{['server'];[a78_0x1493e9(0x15a)];['logger'];[a78_0x1493e9(0x157)];['refreshTimer'];constructor(_0x3425a8){const _0xdef5ec=a78_0x1493e9;this['config']=_0x3425a8,this[_0xdef5ec(0x182)]=_0x3425a8[_0xdef5ec(0x182)],this['server']=this[_0xdef5ec(0x12c)]();}get['port'](){const _0x13de0c=a78_0x1493e9;if(this['_boundPort']===undefined)throw new Error('Server\x20has\x20not\x20been\x20started\x20yet');return this[_0x13de0c(0x157)];}[a78_0x1493e9(0x12c)](){const _0xd4d05f=a78_0x1493e9,_0x39914f=a78_0x15207a({'logger':![],'bodyLimit':0x40*0x400*0x400});return this[_0xd4d05f(0x186)]=_0x39914f,this['setupJsonParser'](),this[_0xd4d05f(0x11c)](),this[_0xd4d05f(0x10f)](),_0x39914f;}['setupJsonParser'](){const _0x39b6b6=a78_0x1493e9;this[_0x39b6b6(0x186)][_0x39b6b6(0x179)](_0x39b6b6(0x119),{'parseAs':_0x39b6b6(0x17f)},(_0x1410af,_0x53a26f,_0x4af51e)=>{const _0x327614=_0x39b6b6;try{const _0x4ab0dd=JSON[_0x327614(0xfd)](_0x53a26f);_0x4af51e(null,_0x4ab0dd);}catch(_0x2e89fe){_0x4af51e(_0x2e89fe,undefined);}});}['setupMiddleware'](){const _0x24b89d=a78_0x1493e9;this[_0x24b89d(0x186)][_0x24b89d(0x104)](a78_0x27931c,{'origin':!![],'methods':[_0x24b89d(0x159),_0x24b89d(0x121),'OPTIONS'],'allowedHeaders':[_0x24b89d(0x171),'Authorization',_0x24b89d(0x112),'x-api-key']}),this[_0x24b89d(0x186)][_0x24b89d(0x18a)]((_0xe59364,_0x2810af,_0x4e66f2)=>{const _0x2a18b2=_0x24b89d,_0x46e6fb=_0xe59364 instanceof Error?_0xe59364[_0x2a18b2(0x17c)]:'Unknown\x20error';this['logger']['error'](_0x2a18b2(0x13f),_0xe59364),_0x4e66f2[_0x2a18b2(0x129)](0x1f4)[_0x2a18b2(0x17d)]({'type':_0x2a18b2(0x15d),'error':{'type':_0x2a18b2(0x15c),'message':_0x46e6fb}});});}[a78_0x1493e9(0x10f)](){const _0x320fbc=a78_0x1493e9;this[_0x320fbc(0x186)][_0x320fbc(0x111)](_0x320fbc(0x12d),async()=>{const _0x5bddb1=_0x320fbc;return{'status':'ok','message':_0x5bddb1(0x11b)};}),this[_0x320fbc(0x186)][_0x320fbc(0xf7)](_0x320fbc(0x14c),async(_0x4936be,_0x38e226)=>{return this['handleMessages'](_0x4936be,_0x38e226);}),this[_0x320fbc(0x186)]['post']('/v1/messages/count_tokens',async(_0x205d1f,_0x4f85a4)=>{const _0x50b5a8=_0x320fbc;return this[_0x50b5a8(0xfe)](_0x205d1f,_0x4f85a4);});}static [a78_0x1493e9(0x124)]=new Set([a78_0x1493e9(0xf0),a78_0x1493e9(0x13b),a78_0x1493e9(0x10b),a78_0x1493e9(0x162),a78_0x1493e9(0x120),a78_0x1493e9(0x146),'user-agent']);[a78_0x1493e9(0x163)](_0x22400e){const _0x359e4c=a78_0x1493e9,_0x11fea9={};for(const [_0x556d25,_0x286ae7]of Object[_0x359e4c(0x148)](_0x22400e[_0x359e4c(0x18b)])){const _0x34cd0d=_0x556d25[_0x359e4c(0x106)]();if(PassThroughProxyServer[_0x359e4c(0x124)][_0x359e4c(0x107)](_0x34cd0d))continue;if(_0x34cd0d[_0x359e4c(0x184)]('x-td-'))continue;if(typeof _0x286ae7===_0x359e4c(0x17f))_0x11fea9[_0x556d25]=_0x286ae7;else Array[_0x359e4c(0x166)](_0x286ae7)&&(_0x11fea9[_0x556d25]=_0x286ae7[_0x359e4c(0x14a)](',\x20'));}const _0x9b4fa1=getVersion(),{auth:_0x5d60bf}=this[_0x359e4c(0x15a)];return _0x11fea9[_0x359e4c(0x117)]=_0x5d60bf[_0x359e4c(0x147)]==='oauth'?'Bearer\x20'+_0x5d60bf['accessToken']:'TD1\x20'+_0x5d60bf[_0x359e4c(0x123)],_0x11fea9[_0x359e4c(0x173)]='tdx/'+_0x9b4fa1,_0x11fea9[_0x359e4c(0x181)]=_0x359e4c(0x188),_0x11fea9[_0x359e4c(0x14b)]=_0x9b4fa1,_0x11fea9;}async[a78_0x1493e9(0x168)](_0x3e6acd,_0x3e59d9){const _0x105704=a78_0x1493e9,_0x5935ed=_0x3e6acd[_0x105704(0x10c)],_0x4f11e6=_0x5935ed[_0x105704(0x127)]!==![],_0x36520e=_0x5935ed[_0x105704(0xf1)],_0xb21750=_0x36520e?.[_0x105704(0x11a)]||_0x105704(0x13c),_0x4adf56=extractSessionUUID(_0xb21750),_0x571995=_0x5935ed[_0x105704(0x177)]||_0x105704(0x109),_0x164434=shouldInjectSystemPrompt(_0x571995)?injectSystemPrompt(_0x5935ed,TDX_SYSTEM_PROMPT):_0x5935ed,_0x5c0a49=JSON[_0x105704(0x113)](_0x164434),_0x238a9b=Array[_0x105704(0x166)](_0x5935ed['messages'])?_0x5935ed['messages'][_0x105704(0x110)]:0x0;this[_0x105704(0x182)][_0x105704(0x102)](_0x105704(0x105)+_0x3e6acd['method']+'\x20'+_0x3e6acd[_0x105704(0x128)]+_0x105704(0x165)+_0x238a9b+_0x105704(0x12b)+_0x571995+',\x20stream='+_0x4f11e6);const _0x569b48=_0x3e6acd[_0x105704(0x128)]['includes']('?')?_0x3e6acd['url'][_0x105704(0x14d)](_0x3e6acd[_0x105704(0x128)][_0x105704(0x14e)]('?')):'',_0x1793f0=this[_0x105704(0x15a)][_0x105704(0x133)]+_0x105704(0x14c)+_0x569b48,_0x1cad36=this[_0x105704(0x163)](_0x3e6acd);this[_0x105704(0x182)][_0x105704(0x12a)](_0x105704(0x16b)+_0x1793f0);const _0x40b185=this[_0x105704(0x15a)][_0x105704(0x172)]||DEFAULT_TIMEOUT_MS;try{const _0x567845=await fetch(_0x1793f0,{'method':_0x105704(0x121),'headers':_0x1cad36,'body':_0x5c0a49,'signal':AbortSignal[_0x105704(0x132)](_0x40b185)});if(!_0x567845['ok']){const _0x4d2c8c=await _0x567845[_0x105704(0x15e)]();return this[_0x105704(0x182)]['error'](_0x105704(0x154)+_0x567845['status']+'\x20'+_0x567845[_0x105704(0x161)]),this[_0x105704(0x182)][_0x105704(0x12a)]('Error\x20body:\x20'+_0x4d2c8c),_0x3e59d9[_0x105704(0x129)](_0x567845['status']),_0x3e59d9[_0x105704(0x160)](_0x105704(0x171),_0x567845['headers'][_0x105704(0x111)](_0x105704(0x171))||_0x105704(0x119)),_0x3e59d9['send'](_0x4d2c8c);}if(_0x4f11e6&&_0x567845[_0x105704(0x10c)])await this[_0x105704(0x131)](_0x567845[_0x105704(0x10c)],_0x3e59d9,_0x4adf56,_0x571995);else{const _0x409734=await _0x567845[_0x105704(0x15e)]();_0x3e59d9[_0x105704(0x160)](_0x105704(0x171),_0x567845[_0x105704(0x18b)][_0x105704(0x111)](_0x105704(0x171))||'application/json');try{const _0x4f7616=JSON[_0x105704(0xfd)](_0x409734);_0x4f7616['usage']&&await this[_0x105704(0xff)](_0x4adf56,_0x571995,_0x4f7616[_0x105704(0x13d)][_0x105704(0x144)]||0x0,_0x4f7616[_0x105704(0x13d)]['output_tokens']||0x0,_0x4f7616[_0x105704(0x13d)][_0x105704(0x175)],_0x4f7616['usage'][_0x105704(0x125)]);}catch{}return _0x3e59d9[_0x105704(0x17d)](_0x409734);}}catch(_0x3c920b){const _0x25bd78=_0x3c920b instanceof Error?_0x3c920b['message']:'Unknown\x20error',_0x5624bd=_0x3c920b instanceof Error&&_0x3c920b[_0x105704(0x101)]===_0x105704(0x17b);this[_0x105704(0x182)]['error'](_0x105704(0x189),_0x3c920b),_0x3e59d9['code'](_0x5624bd?0x1f8:0x1f7)['send']({'type':_0x105704(0x15d),'error':{'type':_0x5624bd?_0x105704(0x100):_0x105704(0x15c),'message':_0x5624bd?_0x105704(0x11f)+_0x40b185+'ms':_0x105704(0x187)+_0x25bd78}});}}async['handleStreamingResponse'](_0x36ebbe,_0x38da05,_0x22587,_0x2ef8a7){const _0x2bc91c=a78_0x1493e9;_0x38da05[_0x2bc91c(0x11e)][_0x2bc91c(0xf2)](0xc8,{'Content-Type':_0x2bc91c(0x178),'Cache-Control':'no-cache','Connection':_0x2bc91c(0x17a)});const _0xafa0e7=new SSEUsageTracker(),_0x4abb65=_0x36ebbe[_0x2bc91c(0x17e)](),_0x22d22e=new TextDecoder();try{while(!![]){const {done:_0x1c344d,value:_0x1dbcac}=await _0x4abb65[_0x2bc91c(0x15f)]();if(_0x1c344d)break;const _0x44a492=_0x22d22e[_0x2bc91c(0x10e)](_0x1dbcac,{'stream':!![]});_0xafa0e7[_0x2bc91c(0x174)](_0x44a492),_0x38da05[_0x2bc91c(0x11e)]['write'](_0x44a492);}_0xafa0e7[_0x2bc91c(0x18d)]();const _0x19243c=_0xafa0e7['getUsage']();(_0x19243c['inputTokens']>0x0||_0x19243c[_0x2bc91c(0x155)]>0x0)&&await this['logUsage'](_0x22587,_0x2ef8a7,_0x19243c[_0x2bc91c(0x185)],_0x19243c[_0x2bc91c(0x155)],_0x19243c[_0x2bc91c(0xf8)],_0x19243c[_0x2bc91c(0x143)]);}catch(_0x162be0){this[_0x2bc91c(0x182)]['error']('[PASSTHROUGH]\x20Stream\x20error:',_0x162be0);const _0x5e9156=_0x2bc91c(0x10a)+JSON[_0x2bc91c(0x113)]({'type':_0x2bc91c(0x15d),'error':{'type':_0x2bc91c(0xf6),'message':_0x2bc91c(0x114)}})+'\x0a\x0a';_0x38da05['raw']['write'](_0x5e9156);}finally{_0x38da05['raw'][_0x2bc91c(0x11d)]();}}async['handleCountTokens'](_0x4480d8,_0x3dd725){const _0xd7edae=a78_0x1493e9,_0x58c9d5=_0x4480d8[_0xd7edae(0x10c)],_0x224e4b=_0x4480d8[_0xd7edae(0x128)][_0xd7edae(0x151)]('?')?_0x4480d8[_0xd7edae(0x128)][_0xd7edae(0x14d)](_0x4480d8[_0xd7edae(0x128)][_0xd7edae(0x14e)]('?')):'',_0x16f6c6=this[_0xd7edae(0x15a)][_0xd7edae(0x133)]+'/v1/messages/count_tokens'+_0x224e4b,_0x2744c8=this[_0xd7edae(0x163)](_0x4480d8),_0x451b12=_0x58c9d5[_0xd7edae(0x177)]||_0xd7edae(0x109),_0x26ece8=shouldInjectSystemPrompt(_0x451b12)?injectSystemPrompt(_0x58c9d5,TDX_SYSTEM_PROMPT):_0x58c9d5,_0x1f1a7f=JSON[_0xd7edae(0x113)](_0x26ece8);this['logger']['debug']('[PASSTHROUGH]\x20Forwarding\x20count_tokens\x20to:\x20'+_0x16f6c6);const _0x3862ba=this['config'][_0xd7edae(0x172)]||DEFAULT_TIMEOUT_MS;try{const _0x57bbe2=await fetch(_0x16f6c6,{'method':_0xd7edae(0x121),'headers':_0x2744c8,'body':_0x1f1a7f,'signal':AbortSignal[_0xd7edae(0x132)](_0x3862ba)}),_0x49afb4=await _0x57bbe2[_0xd7edae(0x15e)]();return _0x3dd725[_0xd7edae(0x129)](_0x57bbe2[_0xd7edae(0xfa)]),_0x3dd725['header'](_0xd7edae(0x171),_0x57bbe2[_0xd7edae(0x18b)]['get'](_0xd7edae(0x171))||_0xd7edae(0x119)),_0x3dd725[_0xd7edae(0x17d)](_0x49afb4);}catch(_0x52bf82){const _0x33a6dd=_0x52bf82 instanceof Error?_0x52bf82[_0xd7edae(0x17c)]:_0xd7edae(0x115),_0x3456b1=_0x52bf82 instanceof Error&&_0x52bf82[_0xd7edae(0x101)]==='TimeoutError';this[_0xd7edae(0x182)]['error'](_0xd7edae(0x139),_0x52bf82),_0x3dd725[_0xd7edae(0x129)](_0x3456b1?0x1f8:0x1f7)[_0xd7edae(0x17d)]({'type':_0xd7edae(0x15d),'error':{'type':_0x3456b1?_0xd7edae(0x100):'api_error','message':_0x3456b1?_0xd7edae(0x11f)+_0x3862ba+'ms':_0xd7edae(0x187)+_0x33a6dd}});}}async['logUsage'](_0x114d99,_0xd932cf,_0x1bcb1c,_0x48b7af,_0x16bb44,_0x17f8f0){const _0xec1c6=a78_0x1493e9,_0x14fa45={'timestamp':new Date()[_0xec1c6(0x16d)](),'model':_0xd932cf,'inputTokens':_0x1bcb1c,'outputTokens':_0x48b7af,'cacheCreationInputTokens':_0x16bb44,'cacheReadInputTokens':_0x17f8f0,'profile':this[_0xec1c6(0x15a)]['profile'],'source':'tdx-claude'},_0x568b73=_0x16bb44||_0x17f8f0?_0xec1c6(0x16c)+(_0x16bb44||0x0)+_0xec1c6(0x103)+(_0x17f8f0||0x0):'';this[_0xec1c6(0x182)]['debug'](_0xec1c6(0x126)+_0x1bcb1c+_0xec1c6(0x169)+_0x48b7af+_0x568b73+_0xec1c6(0x12b)+_0xd932cf);try{await appendUsageEntry(_0x114d99,_0x14fa45);}catch(_0x6dd0d0){this['logger']['error'](_0xec1c6(0xf5),_0x6dd0d0);}}[a78_0x1493e9(0x130)](){const _0x4aeb3d=a78_0x1493e9;if(this['config'][_0x4aeb3d(0x16a)][_0x4aeb3d(0x147)]!==_0x4aeb3d(0x150))return;this['refreshTimer']=setInterval(()=>{const _0x3e2bd4=_0x4aeb3d;void this[_0x3e2bd4(0xf4)]();},TOKEN_REFRESH_INTERVAL_MS),this['refreshTimer'][_0x4aeb3d(0x152)]();}async[a78_0x1493e9(0xf4)](){const _0x2738bc=a78_0x1493e9,{auth:_0x499f48}=this[_0x2738bc(0x15a)];if(_0x499f48[_0x2738bc(0x147)]!==_0x2738bc(0x150))return;const _0x1ddc2c=!_0x499f48[_0x2738bc(0x149)]||_0x499f48[_0x2738bc(0x149)]<Date[_0x2738bc(0x158)]()+TOKEN_EXPIRY_BUFFER_MS;if(!_0x1ddc2c)return;try{const _0x4bef50=await refreshAccessToken(_0x499f48[_0x2738bc(0x16e)],_0x499f48[_0x2738bc(0x141)]);_0x499f48[_0x2738bc(0x138)]=_0x4bef50[_0x2738bc(0x122)],_0x499f48[_0x2738bc(0x141)]=_0x4bef50[_0x2738bc(0xf3)],_0x499f48['expiresAt']=_0x4bef50['expires_at'],await saveOAuthTokens(_0x4bef50,this[_0x2738bc(0x15a)][_0x2738bc(0x156)]),this['logger'][_0x2738bc(0x102)](_0x2738bc(0x137));}catch(_0x2d94a5){this[_0x2738bc(0x182)]['error']('[PASSTHROUGH]\x20OAuth\x20token\x20refresh\x20failed:',_0x2d94a5);}}async[a78_0x1493e9(0x14f)](){const _0x275c51=a78_0x1493e9,_0xff6169=this[_0x275c51(0x15a)][_0x275c51(0x170)]??0x64;for(let _0x1c67c0=0x0;_0x1c67c0<_0xff6169;_0x1c67c0++){const _0x14c6c5=this[_0x275c51(0x15a)][_0x275c51(0x136)]+_0x1c67c0;try{await this[_0x275c51(0x186)][_0x275c51(0x16f)]({'port':_0x14c6c5,'host':_0x275c51(0x135)}),this[_0x275c51(0x157)]=_0x14c6c5,this['logger'][_0x275c51(0x102)](_0x275c51(0xf9)+_0x14c6c5),this[_0x275c51(0x182)][_0x275c51(0x102)]('Forwarding\x20to:\x20'+this[_0x275c51(0x15a)][_0x275c51(0x133)]),this[_0x275c51(0x130)]();return;}catch(_0x309a23){const _0x406cb9=_0x309a23 instanceof Error&&_0x275c51(0x129)in _0x309a23&&_0x309a23['code']===_0x275c51(0x142);if(!_0x406cb9)throw _0x309a23;this[_0x275c51(0x182)][_0x275c51(0x12a)](_0x275c51(0xfc)+_0x14c6c5+_0x275c51(0x176)),this[_0x275c51(0x12c)]();}}const _0x3a3e02=this[_0x275c51(0x15a)][_0x275c51(0x136)]+_0xff6169-0x1;throw new Error(_0x275c51(0xfb)+this[_0x275c51(0x15a)][_0x275c51(0x136)]+_0x275c51(0x118)+_0x3a3e02);}async['stop'](){const _0x67b726=a78_0x1493e9;this[_0x67b726(0x12e)]&&(clearInterval(this[_0x67b726(0x12e)]),this['refreshTimer']=undefined),await this[_0x67b726(0x186)][_0x67b726(0x153)](),this[_0x67b726(0x182)][_0x67b726(0x102)]('Pass-through\x20proxy\x20server\x20stopped');}[a78_0x1493e9(0x108)](){const _0x55fae6=a78_0x1493e9;return _0x55fae6(0x13a)+this[_0x55fae6(0x10d)];}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a79_0x16d307=a79_0x34ee;(function(_0x2b2663,_0x58550a){const _0x547edd=a79_0x34ee,_0x83a353=_0x2b2663();while(!![]){try{const _0x271aee=parseInt(_0x547edd(0x11a))/0x1+parseInt(_0x547edd(0x129))/0x2+-parseInt(_0x547edd(0x122))/0x3*(parseInt(_0x547edd(0x10f))/0x4)+-parseInt(_0x547edd(0x10b))/0x5*(-parseInt(_0x547edd(0x12d))/0x6)+-parseInt(_0x547edd(0x11d))/0x7*(-parseInt(_0x547edd(0x114))/0x8)+-parseInt(_0x547edd(0x12a))/0x9*(-parseInt(_0x547edd(0x121))/0xa)+-parseInt(_0x547edd(0x110))/0xb;if(_0x271aee===_0x58550a)break;else _0x83a353['push'](_0x83a353['shift']());}catch(_0x2ad708){_0x83a353['push'](_0x83a353['shift']());}}}(a79_0x3b99,0x7e3e3));export function parseSSEChunk(_0x120824){const _0x3f3c0f=a79_0x34ee,_0x15dc29=[],_0x11b347=_0x120824[_0x3f3c0f(0x11f)]('\x0a\x0a'),_0x3d620e=_0x11b347[_0x3f3c0f(0x124)]()||'';for(const _0x319e72 of _0x11b347){if(!_0x319e72[_0x3f3c0f(0x11e)]())continue;const _0x2fc9c7={},_0x1cbcef=_0x319e72[_0x3f3c0f(0x11f)]('\x0a');for(const _0x529c71 of _0x1cbcef){if(_0x529c71[_0x3f3c0f(0x12e)](_0x3f3c0f(0x125)))_0x2fc9c7[_0x3f3c0f(0x123)]=_0x529c71[_0x3f3c0f(0x10d)](0x7);else _0x529c71[_0x3f3c0f(0x12e)]('data:\x20')&&(_0x2fc9c7[_0x3f3c0f(0x112)]=_0x529c71['slice'](0x6));}(_0x2fc9c7[_0x3f3c0f(0x123)]||_0x2fc9c7['data'])&&_0x15dc29[_0x3f3c0f(0x10a)](_0x2fc9c7);}return{'events':_0x15dc29,'remaining':_0x3d620e};}export function extractMessageStartUsage(_0x541e07){const _0x50bbe3=a79_0x34ee;try{const _0x468d76=JSON[_0x50bbe3(0x11b)](_0x541e07);if(_0x468d76[_0x50bbe3(0x115)]===_0x50bbe3(0x10c)&&_0x468d76[_0x50bbe3(0x120)]?.[_0x50bbe3(0x12b)]){const _0x126aa3=_0x468d76[_0x50bbe3(0x120)]['usage'];return{'inputTokens':_0x126aa3[_0x50bbe3(0x127)]||0x0,'outputTokens':_0x126aa3[_0x50bbe3(0x12c)]||0x0,'cacheCreationInputTokens':_0x126aa3[_0x50bbe3(0x118)],'cacheReadInputTokens':_0x126aa3['cache_read_input_tokens']};}}catch{}return null;}function a79_0x3b99(){const _0x316ea3=['11945wbjNYE','message_start','slice','inputTokens','304MsLAlx','18457274yeYSYo','onRawUsage','data','max','464KDrXlO','type','flush','cacheReadInputTokens','cache_creation_input_tokens','buffer','895598HCgHGI','parse','getUsage','34433aiucri','trim','split','message','4460XJvawG','18345eCOIPa','event','pop','event:\x20','cacheCreationInputTokens','input_tokens','processChunk','1869374wqNXsv','10017aMgEUV','usage','output_tokens','120SiFEKH','startsWith','message_delta','updateFromUsage','outputTokens','push'];a79_0x3b99=function(){return _0x316ea3;};return a79_0x3b99();}function a79_0x34ee(_0x4eadd9,_0x2835ba){_0x4eadd9=_0x4eadd9-0x108;const _0x3b9960=a79_0x3b99();let _0x34ee01=_0x3b9960[_0x4eadd9];return _0x34ee01;}export function extractMessageDeltaUsage(_0x928173){const _0x1539db=a79_0x34ee;try{const _0x4798bb=JSON['parse'](_0x928173);if(_0x4798bb['type']===_0x1539db(0x12f)&&_0x4798bb[_0x1539db(0x12b)]){const _0x579931=_0x4798bb[_0x1539db(0x12b)];return{'inputTokens':_0x579931[_0x1539db(0x127)]||0x0,'outputTokens':_0x579931[_0x1539db(0x12c)]||0x0,'cacheCreationInputTokens':_0x579931[_0x1539db(0x118)],'cacheReadInputTokens':_0x579931['cache_read_input_tokens']};}}catch{}return null;}export function extractUsageFromEvent(_0x36412f){const _0x2a0eb3=a79_0x34ee;if(!_0x36412f[_0x2a0eb3(0x112)])return null;if(_0x36412f[_0x2a0eb3(0x123)]===_0x2a0eb3(0x10c))return extractMessageStartUsage(_0x36412f['data']);if(_0x36412f['event']===_0x2a0eb3(0x12f))return extractMessageDeltaUsage(_0x36412f['data']);return null;}export class SSEUsageTracker{[a79_0x16d307(0x10e)]=0x0;[a79_0x16d307(0x109)]=0x0;['cacheCreationInputTokens'];[a79_0x16d307(0x117)];[a79_0x16d307(0x119)]='';[a79_0x16d307(0x108)](_0x334e5b){const _0x3dfd6a=a79_0x16d307;this['inputTokens']=Math[_0x3dfd6a(0x113)](this[_0x3dfd6a(0x10e)],_0x334e5b['inputTokens']),this[_0x3dfd6a(0x109)]=Math[_0x3dfd6a(0x113)](this[_0x3dfd6a(0x109)],_0x334e5b['outputTokens']),_0x334e5b[_0x3dfd6a(0x126)]!==undefined&&(this['cacheCreationInputTokens']=Math['max'](this[_0x3dfd6a(0x126)]??0x0,_0x334e5b[_0x3dfd6a(0x126)])),_0x334e5b[_0x3dfd6a(0x117)]!==undefined&&(this['cacheReadInputTokens']=Math[_0x3dfd6a(0x113)](this[_0x3dfd6a(0x117)]??0x0,_0x334e5b[_0x3dfd6a(0x117)]));}[a79_0x16d307(0x111)];[a79_0x16d307(0x128)](_0x542b02){const _0x197901=a79_0x16d307;this[_0x197901(0x119)]+=_0x542b02;const {events:_0x2f5ded,remaining:_0x37021a}=parseSSEChunk(this[_0x197901(0x119)]);this[_0x197901(0x119)]=_0x37021a;for(const _0x41cb25 of _0x2f5ded){const _0xc36f78=extractUsageFromEvent(_0x41cb25);_0xc36f78&&(this[_0x197901(0x111)]?.(_0x41cb25[_0x197901(0x123)]||'unknown',_0x41cb25['data']||'',_0xc36f78),this['updateFromUsage'](_0xc36f78));}return _0x542b02;}[a79_0x16d307(0x116)](){const _0x2edae7=a79_0x16d307;if(this['buffer'][_0x2edae7(0x11e)]()){const {events:_0x5a29e8}=parseSSEChunk(this[_0x2edae7(0x119)]+'\x0a\x0a');for(const _0x2e6552 of _0x5a29e8){const _0x445e59=extractUsageFromEvent(_0x2e6552);_0x445e59&&this[_0x2edae7(0x108)](_0x445e59);}this[_0x2edae7(0x119)]='';}}[a79_0x16d307(0x11c)](){const _0x521bde=a79_0x16d307;return{'inputTokens':this[_0x521bde(0x10e)],'outputTokens':this[_0x521bde(0x109)],'cacheCreationInputTokens':this[_0x521bde(0x126)],'cacheReadInputTokens':this[_0x521bde(0x117)]};}['reset'](){const _0x1f38fc=a79_0x16d307;this[_0x1f38fc(0x10e)]=0x0,this[_0x1f38fc(0x109)]=0x0,this[_0x1f38fc(0x126)]=undefined,this[_0x1f38fc(0x117)]=undefined,this[_0x1f38fc(0x119)]='';}}
|