@treasuredata/tdx 2026.4.16 → 2026.4.18
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 +17 -2
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x10a173,_0x238497){var _0x2fdde2=a70_0x5a3a,_0x9b1221=_0x10a173();while(!![]){try{var _0x26e464=parseInt(_0x2fdde2(0x1ea))/0x1*(parseInt(_0x2fdde2(0x1eb))/0x2)+-parseInt(_0x2fdde2(0x1e9))/0x3*(parseInt(_0x2fdde2(0x1ed))/0x4)+parseInt(_0x2fdde2(0x1e8))/0x5*(-parseInt(_0x2fdde2(0x1e3))/0x6)+parseInt(_0x2fdde2(0x1e2))/0x7+parseInt(_0x2fdde2(0x1e5))/0x8*(parseInt(_0x2fdde2(0x1e4))/0x9)+parseInt(_0x2fdde2(0x1e7))/0xa+-parseInt(_0x2fdde2(0x1e6))/0xb*(parseInt(_0x2fdde2(0x1ec))/0xc);if(_0x26e464===_0x238497)break;else _0x9b1221['push'](_0x9b1221['shift']());}catch(_0x5b221d){_0x9b1221['push'](_0x9b1221['shift']());}}}(a70_0x390f,0x34790));export*from'./sdk/types/index.js';export*from'./core/config.js';export*from'./core/auth.js';export*from'./sdk/client/http-client.js';export*from'./sdk/client/td-api-client.js';export{TrinoApiClient}from'./sdk/client/trino-api-client.js';export*from'./sdk/client/rate-limiter.js';export*from'./sdk/types/trino.js';export*from'./commands/command.js';export*from'./commands/query-command.js';export*from'./commands/databases.js';function a70_0x5a3a(_0x23cbf6,_0xe000b8){_0x23cbf6=_0x23cbf6-0x1e2;var _0x390f94=a70_0x390f();var _0x5a3abf=_0x390f94[_0x23cbf6];return _0x5a3abf;}export*from'./commands/tables.js';export*from'./commands/segments.js';function a70_0x390f(){var _0x3cee5f=['196tzNJtX','1608792mvWADj','44yPrSXN','2155097GtZcZh','450384xIhtCy','9pzQEhT','1576112wTXuAW','44qoAFsZ','4042600CtnFaz','10SeouWs','81327iKwMkG','2963XyFFbv'];a70_0x390f=function(){return _0x3cee5f;};return a70_0x390f();}export*from'./commands/activations.js';export*from'./commands/show.js';export*from'./commands/describe.js';export*from'./sdk/index.js';
|
package/dist/mcp/server.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x20b479,_0x140858){const _0x2c35b4=a71_0x540c,_0x23d979=_0x20b479();while(!![]){try{const _0x3e5368=parseInt(_0x2c35b4(0x212))/0x1*(-parseInt(_0x2c35b4(0x1f4))/0x2)+-parseInt(_0x2c35b4(0x218))/0x3*(parseInt(_0x2c35b4(0x1ee))/0x4)+parseInt(_0x2c35b4(0x1ff))/0x5*(-parseInt(_0x2c35b4(0x1fa))/0x6)+parseInt(_0x2c35b4(0x1f3))/0x7*(-parseInt(_0x2c35b4(0x1f8))/0x8)+-parseInt(_0x2c35b4(0x1f5))/0x9+parseInt(_0x2c35b4(0x1e5))/0xa+-parseInt(_0x2c35b4(0x210))/0xb*(-parseInt(_0x2c35b4(0x205))/0xc);if(_0x3e5368===_0x140858)break;else _0x23d979['push'](_0x23d979['shift']());}catch(_0x2b32e6){_0x23d979['push'](_0x23d979['shift']());}}}(a71_0x225a,0xc0471));function a71_0x225a(){const _0x26f441=['length','join','examples','1.0.0','Failed\x20to\x20create\x20item','description','registerTool','describe','env','6281thTpyk','category','1003097TwOyAa','Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)','once','tdx','**\x20(','shape','524301GKCGaX','Optional\x20filter\x20by\x20category','string','184300gmEPxN','optional','tdx_search','output','connect','SIGINT','path','Command\x20failed','tdx_run','20wPhxxz','\x0a\x0a---\x0a\x0a','Data','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.','text','21GBBgAw','2eMmmkh','7329690NIiPZe','error','success','964088xFynbd','No\x20commands\x20found\x20matching\x20\x22','6534942yrZqgY','map','enum','Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])','Context','5mrzOrk','SIGTERM','stdin','work_create_item','name','close','103212IBYKPI','slug'];a71_0x225a=function(){return _0x26f441;};return a71_0x225a();}import{McpServer}from'@modelcontextprotocol/sdk/server/mcp.js';import{StdioServerTransport}from'@modelcontextprotocol/sdk/server/stdio.js';function a71_0x540c(_0x389204,_0x4b8317){_0x389204=_0x389204-0x1e5;const _0x225a92=a71_0x225a();let _0x540c13=_0x225a92[_0x389204];return _0x540c13;}import{z}from'zod';import{executeTdxRun,searchCommands,executeWorkCreateItem,WorkCreateItemInputSchema}from'./tools/index.js';export function createMCPServer(_0xe4a445={}){const _0x29d720=a71_0x540c,_0x2e934e=new McpServer({'name':_0x29d720(0x215),'version':_0x29d720(0x20a)});return _0x2e934e[_0x29d720(0x20d)](_0x29d720(0x1ed),{'description':_0x29d720(0x1f1),'inputSchema':{'args':z['array'](z[_0x29d720(0x21a)]())['describe'](_0x29d720(0x1fd))}},async({args:_0x3c5e20})=>{const _0x822610=_0x29d720,_0x957932=await executeTdxRun({'args':_0x3c5e20},_0xe4a445[_0x822610(0x20f)]||{});return _0x957932[_0x822610(0x1f7)]?{'content':[{'type':'text','text':_0x957932[_0x822610(0x1e8)]||'Command\x20completed\x20successfully'}]}:{'content':[{'type':_0x822610(0x1f2),'text':_0x957932['error']||_0x957932[_0x822610(0x1e8)]||_0x822610(0x1ec)}],'isError':!![]};}),_0x2e934e[_0x29d720(0x20d)](_0x29d720(0x1e7),{'description':'Search\x20for\x20relevant\x20tdx\x20commands\x20based\x20on\x20what\x20you\x20want\x20to\x20do.\x0a\x0aExamples:\x0a-\x20{\x22query\x22:\x20\x22how\x20to\x20run\x20SQL\x20queries\x22}\x0a-\x20{\x22query\x22:\x20\x22list\x20databases\x20and\x20tables\x22}\x0a-\x20{\x22query\x22:\x20\x22manage\x20customer\x20segments\x22,\x20\x22category\x22:\x20\x22CDP\x22}\x0a-\x20{\x22query\x22:\x20\x22workflow\x20logs\x22}\x0a\x0aCategories:\x20Data,\x20CDP,\x20AI,\x20Context,\x20Utilities\x0a\x0aReturns\x20matching\x20commands\x20with\x20descriptions\x20and\x20example\x20usage.','inputSchema':{'query':z[_0x29d720(0x21a)]()['describe'](_0x29d720(0x213)),'category':z[_0x29d720(0x1fc)]([_0x29d720(0x1f0),'CDP','AI',_0x29d720(0x1fe),'Utilities'])[_0x29d720(0x1e6)]()[_0x29d720(0x20e)](_0x29d720(0x219))}},async({query:_0xed1386,category:_0x404969})=>{const _0x1bcd70=_0x29d720,_0x4609cf=searchCommands({'query':_0xed1386,'category':_0x404969});if(_0x4609cf[_0x1bcd70(0x207)]===0x0)return{'content':[{'type':_0x1bcd70(0x1f2),'text':_0x1bcd70(0x1f9)+_0xed1386+'\x22'}]};const _0x21d60a=_0x4609cf[_0x1bcd70(0x1fb)](_0x58406b=>{const _0x433820=_0x1bcd70,_0x35830c=_0x58406b[_0x433820(0x209)][_0x433820(0x1fb)](_0x1f77ac=>'\x20\x20'+_0x1f77ac)[_0x433820(0x208)]('\x0a');return'**'+_0x58406b[_0x433820(0x203)]+_0x433820(0x216)+_0x58406b[_0x433820(0x211)]+')\x0a'+_0x58406b[_0x433820(0x20c)]+'\x0a\x0aExamples:\x0a'+_0x35830c;})['join'](_0x1bcd70(0x1ef));return{'content':[{'type':_0x1bcd70(0x1f2),'text':_0x21d60a}]};}),_0x2e934e[_0x29d720(0x20d)](_0x29d720(0x202),{'description':'Create\x20a\x20work\x20item\x20in\x20the\x20workspace\x20with\x20auto-generated\x20slug,\x20correct\x20folder\x20placement,\x20and\x20auto-commit.\x0a\x0aExamples:\x0a-\x20Create\x20a\x20task:\x20{\x22title\x22:\x20\x22Fix\x20login\x20bug\x22,\x20\x22tags\x22:\x20[\x22bugfix\x22]}\x0a-\x20Create\x20a\x20note:\x20{\x22title\x22:\x20\x22Meeting\x20notes\x22,\x20\x22kind\x22:\x20\x22note\x22}\x0a-\x20Create\x20with\x20PR\x20link:\x20{\x22title\x22:\x20\x22Add\x20auth\x22,\x20\x22github\x22:\x20\x22treasure-data/tdx#123\x22}\x0a-\x20Create\x20from\x20template:\x20{\x22title\x22:\x20\x22New\x20feature\x22,\x20\x22template\x22:\x20\x22feature\x22}\x0a\x0aReturns\x20the\x20file\x20path\x20and\x20slug\x20of\x20the\x20created\x20document.','inputSchema':WorkCreateItemInputSchema[_0x29d720(0x217)]},async({title:_0x37c539,kind:_0x4f73ec,status:_0x1e928b,tags:_0x5d2824,priority:_0x477b76,body:_0x3b777b,template:_0x156f1e,github:_0x3653d,jira:_0x5e092e})=>{const _0x4db41b=_0x29d720,_0x1aed0c=executeWorkCreateItem({'title':_0x37c539,'kind':_0x4f73ec,'status':_0x1e928b,'tags':_0x5d2824,'priority':_0x477b76,'body':_0x3b777b,'template':_0x156f1e,'github':_0x3653d,'jira':_0x5e092e});return _0x1aed0c[_0x4db41b(0x1f7)]?{'content':[{'type':_0x4db41b(0x1f2),'text':JSON['stringify']({'path':_0x1aed0c[_0x4db41b(0x1eb)],'slug':_0x1aed0c[_0x4db41b(0x206)]})}]}:{'content':[{'type':_0x4db41b(0x1f2),'text':_0x1aed0c[_0x4db41b(0x1f6)]||_0x4db41b(0x20b)}],'isError':!![]};}),_0x2e934e;}export async function startMCPServer(_0x3bc3ee={}){const _0xba44fb=a71_0x540c,_0x26429f=createMCPServer(_0x3bc3ee),_0x584961=new StdioServerTransport();return await _0x26429f[_0xba44fb(0x1e9)](_0x584961),new Promise(_0x62545b=>{const _0x52b37c=_0xba44fb;let _0x42d3d1=![];const _0x265171=async()=>{const _0x28ac60=a71_0x540c;if(_0x42d3d1)return;_0x42d3d1=!![],await _0x26429f[_0x28ac60(0x204)](),_0x62545b();};process[_0x52b37c(0x214)](_0x52b37c(0x1ea),_0x265171),process['once'](_0x52b37c(0x200),_0x265171),process[_0x52b37c(0x201)]['once'](_0x52b37c(0x204),_0x265171);});}
|
package/dist/mcp/tools/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a72_0x5724(){var _0x793a45=['34054BYEbPQ','75KiYnyC','24JZmdLD','314184OGdoyx','311670EfxOjs','275EadrpO','55416QqwJnp','3977567KEhUjt','98FVfoZC','690060CbyRuY','315801KLmdbK'];a72_0x5724=function(){return _0x793a45;};return a72_0x5724();}(function(_0xa3dfd9,_0x3b8762){var _0x20c243=a72_0x5a0c,_0x2f8989=_0xa3dfd9();while(!![]){try{var _0x2d02bc=-parseInt(_0x20c243(0x105))/0x1+-parseInt(_0x20c243(0x102))/0x2*(-parseInt(_0x20c243(0x103))/0x3)+-parseInt(_0x20c243(0x108))/0x4*(parseInt(_0x20c243(0x107))/0x5)+-parseInt(_0x20c243(0x106))/0x6*(-parseInt(_0x20c243(0x10a))/0x7)+-parseInt(_0x20c243(0x104))/0x8*(parseInt(_0x20c243(0x10c))/0x9)+parseInt(_0x20c243(0x10b))/0xa+parseInt(_0x20c243(0x109))/0xb;if(_0x2d02bc===_0x3b8762)break;else _0x2f8989['push'](_0x2f8989['shift']());}catch(_0x53efe0){_0x2f8989['push'](_0x2f8989['shift']());}}}(a72_0x5724,0x622a7));function a72_0x5a0c(_0x2872fe,_0x52c197){_0x2872fe=_0x2872fe-0x102;var _0x572448=a72_0x5724();var _0x5a0cd3=_0x572448[_0x2872fe];return _0x5a0cd3;}export{executeTdxRun,TdxRunInputSchema}from'./tdx-run.js';export{searchCommands,TdxSearchInputSchema}from'./tdx-search.js';export{executeWorkCreateItem,WorkCreateItemInputSchema}from'./work-create-item.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a73_0x6ddbc1=a73_0x4bb4;(function(_0x114254,_0x3aad63){const _0x2d5f8c=a73_0x4bb4,_0x574b6f=_0x114254();while(!![]){try{const _0x1b9524=parseInt(_0x2d5f8c(0x14b))/0x1*(-parseInt(_0x2d5f8c(0x142))/0x2)+-parseInt(_0x2d5f8c(0x137))/0x3*(parseInt(_0x2d5f8c(0x153))/0x4)+parseInt(_0x2d5f8c(0x147))/0x5*(parseInt(_0x2d5f8c(0x149))/0x6)+parseInt(_0x2d5f8c(0x150))/0x7+-parseInt(_0x2d5f8c(0x141))/0x8*(parseInt(_0x2d5f8c(0x143))/0x9)+-parseInt(_0x2d5f8c(0x14c))/0xa*(parseInt(_0x2d5f8c(0x144))/0xb)+-parseInt(_0x2d5f8c(0x14d))/0xc*(-parseInt(_0x2d5f8c(0x13a))/0xd);if(_0x1b9524===_0x3aad63)break;else _0x574b6f['push'](_0x574b6f['shift']());}catch(_0x3bdb89){_0x574b6f['push'](_0x574b6f['shift']());}}}(a73_0x109d,0xdb72c));import{spawn}from'child_process';import{dirname,join}from'path';import{existsSync}from'fs';import{z}from'zod';import{isBlockedCommand,getBlockedReason,formatOutput}from'../utils.js';export const TdxRunInputSchema=z['object']({'args':z['array'](z['string']())[a73_0x6ddbc1(0x13e)](a73_0x6ddbc1(0x148))});function a73_0x109d(){const _0x2916b5=['platform','20463235ptzVJP','close','data','--no-color','describe','Failed\x20to\x20spawn\x20tdx:\x20','win32','776zRnvmK','2740516eDUzQh','81720bZwDbO','1122PUlPRx','pipe','resourcesPath','38215yAZBDe','Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])','498CXKnyg','PATH','1cfoKOL','119660zkAJRa','24ULIzdn','Command\x20timed\x20out\x20after\x2015\x20minutes.\x20For\x20long-running\x20queries,\x20use\x20job\x20submit\x20instead.','node.exe','7051457jGHepA','tdx','stdout','1000SKHRSZ','ignore','SIGTERM','toString','error','kill','5034hkHPkx','This\x20command\x20is\x20not\x20allowed\x20via\x20MCP'];a73_0x109d=function(){return _0x2916b5;};return a73_0x109d();}function a73_0x4bb4(_0x27bf1c,_0x1f1bbe){_0x27bf1c=_0x27bf1c-0x133;const _0x109dcf=a73_0x109d();let _0x4bb47f=_0x109dcf[_0x27bf1c];return _0x4bb47f;}const DEFAULT_TIMEOUT_MS=0xf*0x3c*0x3e8;function getNodeBinDir(){const _0x3fffd1=a73_0x6ddbc1,_0xca6648=process[_0x3fffd1(0x146)];if(_0xca6648){const _0x4d6c87=join(_0xca6648,'node'),_0xcdae53=process['platform']===_0x3fffd1(0x140)?_0x3fffd1(0x14f):'node';if(existsSync(join(_0x4d6c87,_0xcdae53)))return _0x4d6c87;}return dirname(process['execPath']);}export async function executeTdxRun(_0x129454,_0x2a44de){const _0x4f693c=a73_0x6ddbc1,{args:_0x46b04c}=_0x129454;if(isBlockedCommand(_0x46b04c)){const _0x1a3269=getBlockedReason(_0x46b04c);return{'success':![],'output':'','error':_0x1a3269||_0x4f693c(0x138),'exitCode':0x1};}const _0x3bc7ea=['--json',_0x4f693c(0x13d),..._0x46b04c],_0x58530e=getNodeBinDir(),_0x23b34e=process[_0x4f693c(0x139)]===_0x4f693c(0x140)?';':':',_0x3d72e7=_0x2a44de[_0x4f693c(0x14a)]??process.env.PATH??'',_0x3a67e0=''+_0x58530e+_0x23b34e+_0x3d72e7;return new Promise(_0x3bfa3e=>{const _0x261e56=_0x4f693c,_0x541e6c=spawn(_0x261e56(0x151),_0x3bc7ea,{'env':{...process.env,..._0x2a44de,'PATH':_0x3a67e0,'CI':'true'},'stdio':[_0x261e56(0x154),_0x261e56(0x145),_0x261e56(0x145)]});let _0x516973='',_0x4b955f='',_0x5c0dac=![];const _0x19ab14=setTimeout(()=>{const _0x7ed590=_0x261e56;_0x5c0dac=!![],_0x541e6c[_0x7ed590(0x136)](_0x7ed590(0x133));},DEFAULT_TIMEOUT_MS);_0x541e6c[_0x261e56(0x152)]['on']('data',_0x4a68b7=>{const _0x2024ec=_0x261e56;_0x516973+=_0x4a68b7[_0x2024ec(0x134)]();}),_0x541e6c['stderr']['on'](_0x261e56(0x13c),_0x48561f=>{const _0x2a7b21=_0x261e56;_0x4b955f+=_0x48561f[_0x2a7b21(0x134)]();}),_0x541e6c['on'](_0x261e56(0x135),_0x53f2b3=>{const _0x261a2e=_0x261e56;clearTimeout(_0x19ab14),_0x3bfa3e({'success':![],'output':'','error':_0x261a2e(0x13f)+_0x53f2b3['message'],'exitCode':0x1});}),_0x541e6c['on'](_0x261e56(0x13b),_0x2f9708=>{const _0xfad3c8=_0x261e56;clearTimeout(_0x19ab14);if(_0x5c0dac){_0x3bfa3e({'success':![],'output':formatOutput(_0x516973),'error':_0xfad3c8(0x14e),'exitCode':0x7c});return;}const _0x2e3993=_0x2f9708??0x1,_0x5de6e0=_0x2e3993===0x0,_0x31eb04=formatOutput(_0x516973||_0x4b955f),_0x2a7d52=!_0x5de6e0&&_0x4b955f?formatOutput(_0x4b955f):undefined;_0x3bfa3e({'success':_0x5de6e0,'output':_0x31eb04,'error':_0x2a7d52,'exitCode':_0x2e3993});});});}
|
|
@@ -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_0x1abc(_0x4987d8,_0x474983){_0x4987d8=_0x4987d8-0x16b;const _0x5f1f3a=a74_0x5f1f();let _0x1abc35=_0x5f1f3a[_0x4987d8];return _0x1abc35;}const a74_0x2713a8=a74_0x1abc;(function(_0x576ad1,_0x475b4f){const _0x1c7652=a74_0x1abc,_0x24b042=_0x576ad1();while(!![]){try{const _0x278682=-parseInt(_0x1c7652(0x24c))/0x1+parseInt(_0x1c7652(0x191))/0x2*(-parseInt(_0x1c7652(0x23c))/0x3)+-parseInt(_0x1c7652(0x16f))/0x4+parseInt(_0x1c7652(0x237))/0x5+parseInt(_0x1c7652(0x190))/0x6*(-parseInt(_0x1c7652(0x1b4))/0x7)+-parseInt(_0x1c7652(0x22b))/0x8*(parseInt(_0x1c7652(0x198))/0x9)+parseInt(_0x1c7652(0x1ee))/0xa;if(_0x278682===_0x475b4f)break;else _0x24b042['push'](_0x24b042['shift']());}catch(_0x2a2949){_0x24b042['push'](_0x24b042['shift']());}}}(a74_0x5f1f,0xb2ff3));import{z}from'zod';const COMMANDS=[{'name':a74_0x2713a8(0x1bc),'description':a74_0x2713a8(0x1bf),'category':'Data','keywords':[a74_0x2713a8(0x197),a74_0x2713a8(0x1b0),'db',a74_0x2713a8(0x227),a74_0x2713a8(0x241),a74_0x2713a8(0x25a)],'examples':['tdx\x20database\x20list','tdx\x20databases',a74_0x2713a8(0x252)]},{'name':a74_0x2713a8(0x1cb),'description':a74_0x2713a8(0x22c),'category':a74_0x2713a8(0x206),'keywords':[a74_0x2713a8(0x251),a74_0x2713a8(0x1f1),'list',a74_0x2713a8(0x241),a74_0x2713a8(0x178)],'examples':[a74_0x2713a8(0x1a8),a74_0x2713a8(0x1f9),a74_0x2713a8(0x25b)]},{'name':a74_0x2713a8(0x241),'description':a74_0x2713a8(0x1eb),'category':a74_0x2713a8(0x206),'keywords':[a74_0x2713a8(0x241),'view',a74_0x2713a8(0x23e),a74_0x2713a8(0x1c7),a74_0x2713a8(0x201),a74_0x2713a8(0x226),'records'],'examples':[a74_0x2713a8(0x19c),a74_0x2713a8(0x21e)]},{'name':a74_0x2713a8(0x246),'description':a74_0x2713a8(0x1aa),'category':a74_0x2713a8(0x206),'keywords':[a74_0x2713a8(0x246),a74_0x2713a8(0x178),a74_0x2713a8(0x247),'types','structure','definition'],'examples':[a74_0x2713a8(0x1f4),a74_0x2713a8(0x243)]},{'name':a74_0x2713a8(0x1ad),'description':a74_0x2713a8(0x1d3),'category':a74_0x2713a8(0x206),'keywords':[a74_0x2713a8(0x1ad),'sql',a74_0x2713a8(0x1fb),a74_0x2713a8(0x1a4),a74_0x2713a8(0x1b5),a74_0x2713a8(0x224),a74_0x2713a8(0x1a1)],'examples':[a74_0x2713a8(0x23a),a74_0x2713a8(0x215)]},{'name':'job\x20list','description':a74_0x2713a8(0x18d),'category':'Data','keywords':[a74_0x2713a8(0x18e),a74_0x2713a8(0x1b1),a74_0x2713a8(0x227),a74_0x2713a8(0x21b),'queries'],'examples':[a74_0x2713a8(0x174),a74_0x2713a8(0x1cc),'tdx\x20jobs\x20--limit\x2020']},{'name':a74_0x2713a8(0x1c6),'description':a74_0x2713a8(0x17f),'category':a74_0x2713a8(0x206),'keywords':[a74_0x2713a8(0x18e),a74_0x2713a8(0x241),a74_0x2713a8(0x209),a74_0x2713a8(0x254),'info'],'examples':[a74_0x2713a8(0x240)]},{'name':'job\x20result','description':a74_0x2713a8(0x236),'category':a74_0x2713a8(0x206),'keywords':[a74_0x2713a8(0x18e),a74_0x2713a8(0x20c),a74_0x2713a8(0x1ab),a74_0x2713a8(0x1bb)],'examples':[a74_0x2713a8(0x235)]},{'name':a74_0x2713a8(0x230),'description':'Kill\x20a\x20running\x20job','category':a74_0x2713a8(0x206),'keywords':[a74_0x2713a8(0x18e),a74_0x2713a8(0x1af),'cancel',a74_0x2713a8(0x1b8),a74_0x2713a8(0x1c3)],'examples':['tdx\x20job\x20kill\x2012345']},{'name':a74_0x2713a8(0x196),'description':a74_0x2713a8(0x257),'category':'Data','keywords':[a74_0x2713a8(0x1a9),'projects',a74_0x2713a8(0x24d),a74_0x2713a8(0x227)],'examples':[a74_0x2713a8(0x1d6),a74_0x2713a8(0x1d9)]},{'name':'workflow\x20sessions','description':a74_0x2713a8(0x1d0),'category':a74_0x2713a8(0x206),'keywords':[a74_0x2713a8(0x1a9),a74_0x2713a8(0x177),a74_0x2713a8(0x1fe),a74_0x2713a8(0x1bd)],'examples':[a74_0x2713a8(0x1f2),a74_0x2713a8(0x1c0)]},{'name':a74_0x2713a8(0x1ca),'description':a74_0x2713a8(0x18b),'category':a74_0x2713a8(0x206),'keywords':[a74_0x2713a8(0x1a9),a74_0x2713a8(0x248),'output',a74_0x2713a8(0x23f)],'examples':['tdx\x20workflow\x20logs\x20<attempt_id>']},{'name':a74_0x2713a8(0x1b3),'description':a74_0x2713a8(0x20e),'category':'Data','keywords':[a74_0x2713a8(0x1a9),a74_0x2713a8(0x224),a74_0x2713a8(0x1b5),a74_0x2713a8(0x223),'trigger'],'examples':[a74_0x2713a8(0x255)]},{'name':a74_0x2713a8(0x1e9),'description':a74_0x2713a8(0x1f6),'category':a74_0x2713a8(0x188),'keywords':[a74_0x2713a8(0x21c),'segments',a74_0x2713a8(0x258),'list',a74_0x2713a8(0x17c)],'examples':[a74_0x2713a8(0x222),'tdx\x20segments',a74_0x2713a8(0x18c)]},{'name':a74_0x2713a8(0x1f3),'description':a74_0x2713a8(0x1ec),'category':a74_0x2713a8(0x188),'keywords':[a74_0x2713a8(0x21c),a74_0x2713a8(0x241),a74_0x2713a8(0x209),a74_0x2713a8(0x1fd),a74_0x2713a8(0x239)],'examples':['tdx\x20segment\x20show\x20\x22My\x20Segment\x22']},{'name':'segment\x20sql','description':a74_0x2713a8(0x1dd),'category':a74_0x2713a8(0x188),'keywords':[a74_0x2713a8(0x21c),'sql','query',a74_0x2713a8(0x210)],'examples':[a74_0x2713a8(0x1c9)]},{'name':a74_0x2713a8(0x24a),'description':a74_0x2713a8(0x17d),'category':'CDP','keywords':[a74_0x2713a8(0x21c),a74_0x2713a8(0x249),a74_0x2713a8(0x1bb),a74_0x2713a8(0x231),'yaml'],'examples':[a74_0x2713a8(0x1e8)]},{'name':a74_0x2713a8(0x1ba),'description':a74_0x2713a8(0x20f),'category':a74_0x2713a8(0x188),'keywords':[a74_0x2713a8(0x21c),a74_0x2713a8(0x1f7),'upload',a74_0x2713a8(0x194),a74_0x2713a8(0x16d),a74_0x2713a8(0x228)],'examples':[a74_0x2713a8(0x175),'tdx\x20sg\x20push\x20segment.yaml\x20--dry-run']},{'name':a74_0x2713a8(0x1a0),'description':a74_0x2713a8(0x218),'category':a74_0x2713a8(0x188),'keywords':[a74_0x2713a8(0x21c),'fields','attributes',a74_0x2713a8(0x247),a74_0x2713a8(0x178)],'examples':[a74_0x2713a8(0x232),a74_0x2713a8(0x181)]},{'name':a74_0x2713a8(0x179),'description':'List\x20parent\x20segments\x20(customer\x20masters)','category':a74_0x2713a8(0x188),'keywords':[a74_0x2713a8(0x19d),a74_0x2713a8(0x21c),a74_0x2713a8(0x195),a74_0x2713a8(0x227),a74_0x2713a8(0x21f)],'examples':[a74_0x2713a8(0x242),a74_0x2713a8(0x189)]},{'name':a74_0x2713a8(0x1b9),'description':'Pull\x20parent\x20segment\x20definition\x20to\x20YAML','category':a74_0x2713a8(0x188),'keywords':[a74_0x2713a8(0x19d),a74_0x2713a8(0x21c),a74_0x2713a8(0x249),a74_0x2713a8(0x1bb),a74_0x2713a8(0x231)],'examples':[a74_0x2713a8(0x1a6),a74_0x2713a8(0x212)]},{'name':a74_0x2713a8(0x1e7),'description':a74_0x2713a8(0x170),'category':a74_0x2713a8(0x188),'keywords':[a74_0x2713a8(0x19d),a74_0x2713a8(0x21c),a74_0x2713a8(0x1f7),a74_0x2713a8(0x238),a74_0x2713a8(0x16d)],'examples':[a74_0x2713a8(0x192),a74_0x2713a8(0x221)]},{'name':a74_0x2713a8(0x16b),'description':a74_0x2713a8(0x1e5),'category':a74_0x2713a8(0x188),'keywords':[a74_0x2713a8(0x19d),a74_0x2713a8(0x21c),a74_0x2713a8(0x1ea),a74_0x2713a8(0x1fa),a74_0x2713a8(0x186)],'examples':['tdx\x20parent-segment\x20validate\x20parent.yaml','tdx\x20ps\x20validate']},{'name':a74_0x2713a8(0x187),'description':a74_0x2713a8(0x233),'category':a74_0x2713a8(0x188),'keywords':['parent',a74_0x2713a8(0x21c),a74_0x2713a8(0x23e),'sample','data'],'examples':[a74_0x2713a8(0x173),a74_0x2713a8(0x234)]},{'name':a74_0x2713a8(0x1dc),'description':a74_0x2713a8(0x20a),'category':a74_0x2713a8(0x188),'keywords':[a74_0x2713a8(0x220),'journeys',a74_0x2713a8(0x227),'orchestration'],'examples':['tdx\x20journey\x20list',a74_0x2713a8(0x1ff)]},{'name':'journey\x20view','description':a74_0x2713a8(0x19f),'category':a74_0x2713a8(0x188),'keywords':[a74_0x2713a8(0x220),a74_0x2713a8(0x239),a74_0x2713a8(0x241),a74_0x2713a8(0x209)],'examples':[a74_0x2713a8(0x203)]},{'name':a74_0x2713a8(0x1d4),'description':a74_0x2713a8(0x1c5),'category':a74_0x2713a8(0x188),'keywords':[a74_0x2713a8(0x220),a74_0x2713a8(0x249),a74_0x2713a8(0x1bb),a74_0x2713a8(0x231)],'examples':[a74_0x2713a8(0x217)]},{'name':'journey\x20push','description':a74_0x2713a8(0x219),'category':'CDP','keywords':['journey',a74_0x2713a8(0x1f7),a74_0x2713a8(0x238),'create'],'examples':['tdx\x20journey\x20push\x20journey.yaml']},{'name':a74_0x2713a8(0x185),'description':a74_0x2713a8(0x24b),'category':a74_0x2713a8(0x188),'keywords':[a74_0x2713a8(0x1c2),a74_0x2713a8(0x185),a74_0x2713a8(0x231),a74_0x2713a8(0x1d7),a74_0x2713a8(0x24e)],'examples':[a74_0x2713a8(0x244),a74_0x2713a8(0x214)]},{'name':a74_0x2713a8(0x1df),'description':a74_0x2713a8(0x22a),'category':a74_0x2713a8(0x188),'keywords':[a74_0x2713a8(0x25c),a74_0x2713a8(0x216),a74_0x2713a8(0x24e),a74_0x2713a8(0x227)],'examples':['tdx\x20connection\x20list']},{'name':'connection\x20schema','description':'Show\x20connection\x20schema\x20for\x20activations','category':a74_0x2713a8(0x188),'keywords':['connection',a74_0x2713a8(0x178),'config','settings'],'examples':[a74_0x2713a8(0x208),'tdx\x20connection\x20schema\x20google_ads']},{'name':a74_0x2713a8(0x1ef),'description':a74_0x2713a8(0x199),'category':'AI','keywords':[a74_0x2713a8(0x1de),'agents',a74_0x2713a8(0x19e),'ai',a74_0x2713a8(0x227)],'examples':[a74_0x2713a8(0x1a5),a74_0x2713a8(0x22e)]},{'name':a74_0x2713a8(0x20d),'description':'Show\x20agent\x20details','category':'AI','keywords':[a74_0x2713a8(0x1de),a74_0x2713a8(0x241),a74_0x2713a8(0x209),a74_0x2713a8(0x1fd)],'examples':[a74_0x2713a8(0x213)]},{'name':'agent\x20pull','description':a74_0x2713a8(0x17e),'category':'AI','keywords':['agent',a74_0x2713a8(0x249),a74_0x2713a8(0x1bb),a74_0x2713a8(0x231)],'examples':[a74_0x2713a8(0x1a7)]},{'name':a74_0x2713a8(0x1b7),'description':a74_0x2713a8(0x1c8),'category':'AI','keywords':[a74_0x2713a8(0x1de),'push',a74_0x2713a8(0x238),a74_0x2713a8(0x16d),'deploy'],'examples':[a74_0x2713a8(0x253)]},{'name':a74_0x2713a8(0x1fc),'description':'Chat\x20with\x20an\x20LLM\x20agent','category':'AI','keywords':['chat',a74_0x2713a8(0x19e),'ai',a74_0x2713a8(0x1f5),a74_0x2713a8(0x18f),a74_0x2713a8(0x1c4)],'examples':['tdx\x20chat\x20\x22Hello\x22',a74_0x2713a8(0x1d1)]},{'name':a74_0x2713a8(0x23d),'description':'List\x20chat\x20sessions','category':'AI','keywords':['chat',a74_0x2713a8(0x23d),a74_0x2713a8(0x177),a74_0x2713a8(0x21b),a74_0x2713a8(0x184)],'examples':[a74_0x2713a8(0x19b),a74_0x2713a8(0x211)]},{'name':'llm\x20models','description':a74_0x2713a8(0x172),'category':'AI','keywords':[a74_0x2713a8(0x19e),'models','ai',a74_0x2713a8(0x227)],'examples':['tdx\x20llm\x20models']},{'name':a74_0x2713a8(0x1f0),'description':a74_0x2713a8(0x19a),'category':'AI','keywords':['llm',a74_0x2713a8(0x23b),'ai',a74_0x2713a8(0x227)],'examples':[a74_0x2713a8(0x1ed)]},{'name':a74_0x2713a8(0x17b),'description':a74_0x2713a8(0x1f8),'category':a74_0x2713a8(0x259),'keywords':[a74_0x2713a8(0x17b),'set','context',a74_0x2713a8(0x182),a74_0x2713a8(0x1fb)],'examples':[a74_0x2713a8(0x1db),a74_0x2713a8(0x18a),'tdx\x20use\x20--parent-segment\x20\x22My\x20PS\x22']},{'name':a74_0x2713a8(0x1b6),'description':'Clear\x20session\x20context','category':a74_0x2713a8(0x259),'keywords':[a74_0x2713a8(0x1b6),a74_0x2713a8(0x1e3),a74_0x2713a8(0x1be),a74_0x2713a8(0x1ae)],'examples':['tdx\x20unset\x20--database','tdx\x20unset\x20--all']},{'name':a74_0x2713a8(0x1e2),'description':a74_0x2713a8(0x1a3),'category':a74_0x2713a8(0x259),'keywords':[a74_0x2713a8(0x16e),'profiles',a74_0x2713a8(0x227),a74_0x2713a8(0x22f)],'examples':[a74_0x2713a8(0x1d2),a74_0x2713a8(0x207)]},{'name':'profile\x20show','description':'Show\x20profile\x20details','category':'Context','keywords':[a74_0x2713a8(0x16e),a74_0x2713a8(0x241),a74_0x2713a8(0x209),'config'],'examples':['tdx\x20profile\x20show\x20myprofile']},{'name':a74_0x2713a8(0x20b),'description':a74_0x2713a8(0x21a),'category':a74_0x2713a8(0x259),'keywords':[a74_0x2713a8(0x20b),'authentication',a74_0x2713a8(0x254),a74_0x2713a8(0x1ce)],'examples':['tdx\x20auth','tdx\x20auth\x20--profile\x20myprofile']},{'name':a74_0x2713a8(0x21d),'description':a74_0x2713a8(0x1e4),'category':'Context','keywords':[a74_0x2713a8(0x21d),'me',a74_0x2713a8(0x193),a74_0x2713a8(0x1d8)],'examples':[a74_0x2713a8(0x1a2)]},{'name':'users','description':'List\x20users\x20in\x20account','category':'Context','keywords':[a74_0x2713a8(0x1b2),'list',a74_0x2713a8(0x204),'members'],'examples':[a74_0x2713a8(0x1e1),a74_0x2713a8(0x171)]},{'name':a74_0x2713a8(0x1e0),'description':'Make\x20raw\x20HTTP\x20requests\x20to\x20TD\x20APIs','category':a74_0x2713a8(0x1cd),'keywords':[a74_0x2713a8(0x1e0),a74_0x2713a8(0x1e6),a74_0x2713a8(0x16c),a74_0x2713a8(0x202),a74_0x2713a8(0x1cf)],'examples':[a74_0x2713a8(0x24f),'tdx\x20api\x20/v1/audiences\x20--type\x20cdp',a74_0x2713a8(0x225)]}];export const TdxSearchInputSchema=z[a74_0x2713a8(0x183)]({'query':z[a74_0x2713a8(0x180)]()[a74_0x2713a8(0x246)]('Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)'),'category':z[a74_0x2713a8(0x17a)](['Data','CDP','AI','Context',a74_0x2713a8(0x1cd)])[a74_0x2713a8(0x205)]()[a74_0x2713a8(0x246)](a74_0x2713a8(0x22d))});export function searchCommands(_0x5f4173){const _0x4f02b8=a74_0x2713a8,{query:_0x33b2e1,category:_0x5d0973}=_0x5f4173,_0x453a65=_0x33b2e1['toLowerCase'](),_0x1599e7=_0x453a65[_0x4f02b8(0x1da)](/\s+/)[_0x4f02b8(0x245)](_0x4b4564=>_0x4b4564['length']>0x0);let _0x500ee7=COMMANDS;_0x5d0973&&(_0x500ee7=_0x500ee7[_0x4f02b8(0x245)](_0xff946d=>_0xff946d[_0x4f02b8(0x1d5)]===_0x5d0973));const _0x152f68=_0x500ee7[_0x4f02b8(0x1c1)](_0x42d3b1=>{const _0x321e7e=_0x4f02b8;let _0x313d9d=0x0;_0x42d3b1[_0x321e7e(0x229)][_0x321e7e(0x250)]()===_0x453a65&&(_0x313d9d+=0x64);_0x42d3b1[_0x321e7e(0x229)]['toLowerCase']()[_0x321e7e(0x176)](_0x453a65)&&(_0x313d9d+=0x32);_0x42d3b1[_0x321e7e(0x1ac)][_0x321e7e(0x250)]()[_0x321e7e(0x176)](_0x453a65)&&(_0x313d9d+=0x1e);for(const _0x3e47fe of _0x1599e7){for(const _0x26a846 of _0x42d3b1[_0x321e7e(0x256)]){if(_0x26a846===_0x3e47fe)_0x313d9d+=0x14;else(_0x26a846['includes'](_0x3e47fe)||_0x3e47fe['includes'](_0x26a846))&&(_0x313d9d+=0xa);}_0x42d3b1[_0x321e7e(0x229)][_0x321e7e(0x250)]()['includes'](_0x3e47fe)&&(_0x313d9d+=0xf),_0x42d3b1[_0x321e7e(0x1ac)]['toLowerCase']()[_0x321e7e(0x176)](_0x3e47fe)&&(_0x313d9d+=0x5);}return{'name':_0x42d3b1[_0x321e7e(0x229)],'description':_0x42d3b1['description'],'category':_0x42d3b1[_0x321e7e(0x1d5)],'examples':_0x42d3b1['examples'],'score':_0x313d9d};});return _0x152f68[_0x4f02b8(0x245)](_0x3d8a90=>_0x3d8a90['score']>0x0)['sort']((_0x1c02f8,_0x561982)=>_0x561982[_0x4f02b8(0x200)]-_0x1c02f8[_0x4f02b8(0x200)])['slice'](0x0,0xa);}function a74_0x5f1f(){const _0x36dbeb=['tdx\x20segment\x20fields','Preview\x20parent\x20segment\x20data','tdx\x20ps\x20preview\x20--limit\x2010','tdx\x20job\x20result\x2012345','Get\x20job\x20results','1378250jREkqL','upload','view','tdx\x20query\x20\x22SELECT\x20*\x20FROM\x20mydb.users\x20LIMIT\x2010\x22','projects','3WULuyw','chats','preview','debug','tdx\x20job\x20show\x2012345','show','tdx\x20parent-segment\x20list','tdx\x20describe\x20mydb.events','tdx\x20activations','filter','describe','columns','logs','pull','segment\x20pull','List\x20segment\x20activations\x20(exports)','510205zdyWpx','digdag','destination','tdx\x20api\x20/v3/database/list','toLowerCase','table','tdx\x20databases\x20mydb*','tdx\x20agent\x20push\x20agent.yaml','status','tdx\x20workflow\x20run\x20myproject/myworkflow','keywords','List\x20workflow\x20projects','audience','Context','all','tdx\x20tables\x20--database\x20mydb','connection','parent-segment\x20validate','raw','create','profile','2417156znfKUo','Push\x20parent\x20segment\x20definition\x20from\x20YAML','tdx\x20user\x20list','List\x20available\x20LLM\x20models','tdx\x20parent-segment\x20preview','tdx\x20job\x20list','tdx\x20segment\x20push\x20segment.yaml','includes','sessions','schema','parent-segment\x20list','enum','use','cdp','Pull\x20segment\x20definition\x20to\x20YAML','Pull\x20agent\x20definition\x20to\x20YAML','Show\x20job\x20details','string','tdx\x20sg\x20fields','switch','object','conversations','activations','verify','parent-segment\x20preview','CDP','tdx\x20ps\x20list','tdx\x20use\x20--database\x20mydb','View\x20workflow\x20logs','tdx\x20segments\x20--recursive','List\x20query\x20jobs','job','ask','23022CnrxBP','2919014eqDXAL','tdx\x20parent-segment\x20push\x20parent.yaml','whoami','import','master','workflow\x20projects','database','540lgHEXZ','List\x20LLM\x20agents','List\x20LLM\x20projects','tdx\x20chats','tdx\x20show\x20mydb.users','parent','llm','View\x20journey\x20details','segment\x20fields','presto','tdx\x20user','List\x20configured\x20profiles','trino','tdx\x20agent\x20list','tdx\x20parent-segment\x20pull\x20\x22My\x20Parent\x22\x20-o\x20parent.yaml','tdx\x20agent\x20pull\x20myproject/myagent\x20-o\x20agent.yaml','tdx\x20table\x20list','workflow','Describe\x20table\x20schema\x20(columns,\x20types)','output','description','query','context','kill','databases','jobs','users','workflow\x20run','637qeDzlK','execute','unset','agent\x20push','stop','parent-segment\x20pull','segment\x20push','download','database\x20list','executions','reset','List\x20all\x20databases','tdx\x20wf\x20sessions\x20--limit\x2010','map','activation','abort','message','Pull\x20journey\x20definition\x20to\x20YAML','job\x20show','data','Push\x20agent\x20definition\x20from\x20YAML','tdx\x20segment\x20sql\x20\x22My\x20Segment\x22','workflow\x20logs','table\x20list','tdx\x20jobs','Utilities','login','curl','List\x20workflow\x20sessions','tdx\x20chat\x20--agent\x20myproject/myagent\x20\x22What\x20is\x20TD?\x22','tdx\x20profile\x20list','Execute\x20SQL\x20query\x20using\x20Trino','journey\x20pull','category','tdx\x20workflow\x20projects','sync','account','tdx\x20wf\x20projects','split','tdx\x20use\x20mydb','journey\x20list','Generate\x20SQL\x20for\x20a\x20segment','agent','connection\x20list','api','tdx\x20users','profile\x20list','clear','Show\x20current\x20user\x20info','Validate\x20parent\x20segment\x20configuration','http','parent-segment\x20push','tdx\x20segment\x20pull\x20\x22My\x20Segment\x22\x20-o\x20segment.yaml','segment\x20list','validate','Show\x20table\x20contents\x20(SELECT\x20*\x20with\x20limit)','Show\x20segment\x20details','tdx\x20llm\x20projects','41872690DHOLzI','agent\x20list','llm\x20projects','tables','tdx\x20workflow\x20sessions\x20myproject','segment\x20show','tdx\x20describe\x20mydb.users','conversation','List\x20audience\x20segments','push','Set\x20session\x20context\x20(database,\x20parent\x20segment,\x20etc.)','tdx\x20tables\x20mydb.*','check','select','chat','info','runs','tdx\x20journeys','score','contents','request','tdx\x20journey\x20view\x20\x22My\x20Journey\x22','team','optional','Data','tdx\x20profiles','tdx\x20connection\x20schema\x20salesforce','details','List\x20customer\x20journeys','auth','result','agent\x20show','Run\x20a\x20workflow','Push\x20segment\x20definition\x20from\x20YAML','generate','tdx\x20chats\x20--limit\x2010','tdx\x20ps\x20pull','tdx\x20agent\x20show\x20myproject/myagent','tdx\x20activations\x20--segment\x20\x22My\x20Segment\x22','tdx\x20query\x20\x22SELECT\x20count(*)\x20FROM\x20mydb.events\x22','connections','tdx\x20journey\x20pull\x20\x22My\x20Journey\x22\x20-o\x20journey.yaml','List\x20available\x20segment\x20fields','Push\x20journey\x20definition\x20from\x20YAML','Show\x20authentication\x20status','history','segment','user','tdx\x20show\x20mydb.users\x20--limit\x20100','customer','journey','tdx\x20ps\x20push\x20--dry-run','tdx\x20segment\x20list','start','run','tdx\x20api\x20-X\x20POST\x20--data\x20\x27{\x22query\x22:\x22SELECT\x201\x22}\x27\x20/v3/job/issue/hive/mydb','rows','list','update','name','List\x20data\x20connections','107544WGEPNH','List\x20tables\x20in\x20a\x20database','Optional\x20filter\x20by\x20category','tdx\x20agents','config','job\x20kill','export'];a74_0x5f1f=function(){return _0x36dbeb;};return a74_0x5f1f();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a75_0x566b04=a75_0x3866;(function(_0x1fd99e,_0x5be14a){const _0x374c4b=a75_0x3866,_0x20f560=_0x1fd99e();while(!![]){try{const _0x102d3b=parseInt(_0x374c4b(0x1c5))/0x1+parseInt(_0x374c4b(0x1d6))/0x2*(-parseInt(_0x374c4b(0x1db))/0x3)+-parseInt(_0x374c4b(0x1cd))/0x4*(parseInt(_0x374c4b(0x1f1))/0x5)+parseInt(_0x374c4b(0x1d7))/0x6*(-parseInt(_0x374c4b(0x1ef))/0x7)+-parseInt(_0x374c4b(0x1da))/0x8*(-parseInt(_0x374c4b(0x1e2))/0x9)+parseInt(_0x374c4b(0x1ed))/0xa*(-parseInt(_0x374c4b(0x1e8))/0xb)+parseInt(_0x374c4b(0x1eb))/0xc;if(_0x102d3b===_0x5be14a)break;else _0x20f560['push'](_0x20f560['shift']());}catch(_0xfd5d17){_0x20f560['push'](_0x20f560['shift']());}}}(a75_0x2b3d,0x6534a));function a75_0x2b3d(){const _0x4162b7=['describe','11KBYQTe','replace','string','18906372nQZJyI','JIRA\x20ticket\x20reference\x20(org/TICKET-ID)','6460340miHuof','No\x20workspace\x20found.\x20Run\x20`tdx\x20work\x20init`\x20to\x20create\x20one.','2163gwcRPI','deprecated','1201680UyuxYd','Priority\x20level','item','createDocument','planning','656416BnLsLg','kind','priority','in_progress','array','body','reference','enum','8jfsQjs','superseded','status','note','github','void','done','optional','todo','447694YauiVI','11766qICHjr','GitHub\x20PR/issue\x20reference\x20(owner/repo#number)','proposed','1112744gzAoMY','3LhdWmG','review','Template\x20name\x20from\x20templates/\x20folder','low','fileName','guide','filePath','9PsHTQm','Tags\x20for\x20the\x20item','Initial\x20status\x20(default:\x20\x22todo\x22\x20for\x20items,\x20\x22proposed\x22\x20for\x20guides)','high','object'];a75_0x2b3d=function(){return _0x4162b7;};return a75_0x2b3d();}import{z}from'zod';import{WorkspaceSDK,resolveWorkspacePath}from'../../sdk/workspace/index.js';const TASK_STATUSES=['backlog',a75_0x566b04(0x1d5),a75_0x566b04(0x1c4),'design_review',a75_0x566b04(0x1c8),a75_0x566b04(0x1dc),a75_0x566b04(0x1d3),a75_0x566b04(0x1d2)],GUIDE_STATUSES=[a75_0x566b04(0x1d9),'accepted',a75_0x566b04(0x1f0),a75_0x566b04(0x1ce)];function a75_0x3866(_0x2f989d,_0x39b52c){_0x2f989d=_0x2f989d-0x1c1;const _0x2b3d0e=a75_0x2b3d();let _0x38660e=_0x2b3d0e[_0x2f989d];return _0x38660e;}export const WorkCreateItemInputSchema=z[a75_0x566b04(0x1e6)]({'title':z[a75_0x566b04(0x1ea)]()[a75_0x566b04(0x1e7)]('Item\x20title\x20(required)'),'kind':z[a75_0x566b04(0x1cc)]([a75_0x566b04(0x1c2),a75_0x566b04(0x1d0),a75_0x566b04(0x1e0),a75_0x566b04(0x1cb)])[a75_0x566b04(0x1d4)]()[a75_0x566b04(0x1e7)]('Document\x20kind\x20(default:\x20\x22item\x22)'),'status':z[a75_0x566b04(0x1cc)]([...TASK_STATUSES,...GUIDE_STATUSES])['optional']()[a75_0x566b04(0x1e7)](a75_0x566b04(0x1e4)),'tags':z[a75_0x566b04(0x1c9)](z[a75_0x566b04(0x1ea)]())['optional']()[a75_0x566b04(0x1e7)](a75_0x566b04(0x1e3)),'priority':z[a75_0x566b04(0x1cc)](['critical',a75_0x566b04(0x1e5),'medium',a75_0x566b04(0x1de)])[a75_0x566b04(0x1d4)]()[a75_0x566b04(0x1e7)](a75_0x566b04(0x1c1)),'body':z['string']()['optional']()[a75_0x566b04(0x1e7)]('Markdown\x20body\x20content'),'template':z[a75_0x566b04(0x1ea)]()[a75_0x566b04(0x1d4)]()[a75_0x566b04(0x1e7)](a75_0x566b04(0x1dd)),'github':z[a75_0x566b04(0x1ea)]()[a75_0x566b04(0x1d4)]()['describe'](a75_0x566b04(0x1d8)),'jira':z[a75_0x566b04(0x1ea)]()[a75_0x566b04(0x1d4)]()[a75_0x566b04(0x1e7)](a75_0x566b04(0x1ec))});export function executeWorkCreateItem(_0x58e8fa){const _0x32756b=a75_0x566b04,_0x1ef014=resolveWorkspacePath();if(!_0x1ef014)return{'success':![],'error':_0x32756b(0x1ee)};const _0x22fb91=new WorkspaceSDK(_0x1ef014),_0x1171c2={'title':_0x58e8fa['title'],'kind':_0x58e8fa[_0x32756b(0x1c6)]||_0x32756b(0x1c2),'status':_0x58e8fa[_0x32756b(0x1cf)],'tags':_0x58e8fa['tags'],'priority':_0x58e8fa[_0x32756b(0x1c7)],'body':_0x58e8fa[_0x32756b(0x1ca)],'template':_0x58e8fa['template'],'github':_0x58e8fa[_0x32756b(0x1d1)],'jira':_0x58e8fa['jira']},_0x18ecfd=_0x22fb91[_0x32756b(0x1c3)](_0x1171c2);return{'success':!![],'path':_0x18ecfd[_0x32756b(0x1e1)],'slug':_0x18ecfd[_0x32756b(0x1df)][_0x32756b(0x1e9)](/\.md$/,'')};}
|
package/dist/mcp/utils.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a76_0x5d25f5=a76_0x28c9;(function(_0x449303,_0x58aadc){const _0x5bd5c7=a76_0x28c9,_0x40971f=_0x449303();while(!![]){try{const _0x4b2db4=-parseInt(_0x5bd5c7(0xf0))/0x1*(parseInt(_0x5bd5c7(0x101))/0x2)+-parseInt(_0x5bd5c7(0xfe))/0x3+parseInt(_0x5bd5c7(0x103))/0x4+parseInt(_0x5bd5c7(0xf2))/0x5+-parseInt(_0x5bd5c7(0x107))/0x6+parseInt(_0x5bd5c7(0xf4))/0x7+-parseInt(_0x5bd5c7(0xf5))/0x8*(parseInt(_0x5bd5c7(0xfd))/0x9);if(_0x4b2db4===_0x58aadc)break;else _0x40971f['push'](_0x40971f['shift']());}catch(_0x18ef12){_0x40971f['push'](_0x40971f['shift']());}}}(a76_0x2551,0xa4778));function a76_0x2551(){const _0xde417a=['This\x20command\x20is\x20not\x20allowed\x20via\x20MCP','auth\x20clear','profile\x20remove','1791gCthQI','2326755rmwaYV','profile\x20create','profile\x20delete','1724054SblwSw','replace','4870300vDrzfT','slice','mcp','Credential\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','655464fThdmY','auth\x20login','Cannot\x20run\x20MCP\x20server\x20recursively','Profile\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','length','1SwmAZR','--profile','5322175FCwSQq','startsWith','8027845BMYjIe','40536EGpOSq','trimEnd','includes','toLowerCase','join'];a76_0x2551=function(){return _0xde417a;};return a76_0x2551();}const BLOCKED_COMMANDS=['auth\x20setup',a76_0x5d25f5(0x108),'auth\x20clear',a76_0x5d25f5(0xff),a76_0x5d25f5(0x100),'profile\x20remove',a76_0x5d25f5(0x105)],BLOCKED_FLAGS=[a76_0x5d25f5(0xf1),'-p'];function a76_0x28c9(_0x36692a,_0x31cf63){_0x36692a=_0x36692a-0xee;const _0x2551c2=a76_0x2551();let _0x28c98e=_0x2551c2[_0x36692a];return _0x28c98e;}export function hasBlockedFlag(_0x2855e5){const _0x5a5fe7=a76_0x5d25f5;for(const _0x59db9b of _0x2855e5){const _0x103079=_0x59db9b[_0x5a5fe7(0xf8)]();for(const _0x4260da of BLOCKED_FLAGS){if(_0x103079===_0x4260da||_0x103079[_0x5a5fe7(0xf3)](_0x4260da+'='))return!![];}}return![];}export function isBlockedCommand(_0x1f79db){const _0x281dd0=a76_0x5d25f5;if(_0x1f79db[_0x281dd0(0xef)]===0x0)return![];if(hasBlockedFlag(_0x1f79db))return!![];const _0x530ba9=_0x1f79db['slice'](0x0,0x2)[_0x281dd0(0xf9)]('\x20')['toLowerCase']();for(const _0xc5010 of BLOCKED_COMMANDS){if(_0x530ba9[_0x281dd0(0xf3)](_0xc5010))return!![];}const _0x43cc5f=_0x1f79db[0x0]['toLowerCase']();for(const _0x1f26fb of BLOCKED_COMMANDS){if(!_0x1f26fb[_0x281dd0(0xf7)]('\x20')&&_0x43cc5f===_0x1f26fb)return!![];}return![];}export function getBlockedReason(_0x51500c){const _0x4fd308=a76_0x5d25f5;if(!isBlockedCommand(_0x51500c))return undefined;if(hasBlockedFlag(_0x51500c))return'Profile\x20switching\x20via\x20--profile\x20flag\x20is\x20not\x20allowed\x20via\x20MCP';const _0x157b9f=_0x51500c[_0x4fd308(0x104)](0x0,0x2)[_0x4fd308(0xf9)]('\x20')[_0x4fd308(0xf8)](),_0x9ae9f9=_0x51500c[0x0][_0x4fd308(0xf8)]();if(_0x157b9f[_0x4fd308(0xf3)]('auth\x20setup')||_0x157b9f[_0x4fd308(0xf3)](_0x4fd308(0x108))||_0x157b9f[_0x4fd308(0xf3)](_0x4fd308(0xfb)))return _0x4fd308(0x106);if(_0x157b9f['startsWith'](_0x4fd308(0xff))||_0x157b9f[_0x4fd308(0xf3)](_0x4fd308(0x100))||_0x157b9f[_0x4fd308(0xf3)](_0x4fd308(0xfc)))return _0x4fd308(0xee);if(_0x9ae9f9===_0x4fd308(0x105))return _0x4fd308(0x109);return _0x4fd308(0xfa);}export function formatOutput(_0x32f4d6){const _0xbc91cd=a76_0x5d25f5,_0x404c19=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;let _0x10d8a4=_0x32f4d6[_0xbc91cd(0x102)](_0x404c19,'');return _0x10d8a4=_0x10d8a4['replace'](/\r\n/g,'\x0a')['replace'](/\r/g,'\x0a'),_0x10d8a4=_0x10d8a4[_0xbc91cd(0xf6)](),_0x10d8a4;}
|
|
@@ -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(_0x1899eb,_0x35e568){const _0x23caad=a77_0x2c40,_0x1f4ae6=_0x1899eb();while(!![]){try{const _0x5efaf8=parseInt(_0x23caad(0xe9))/0x1*(-parseInt(_0x23caad(0xfc))/0x2)+parseInt(_0x23caad(0xfe))/0x3+-parseInt(_0x23caad(0xf4))/0x4*(parseInt(_0x23caad(0x106))/0x5)+parseInt(_0x23caad(0x10d))/0x6+-parseInt(_0x23caad(0xf9))/0x7*(-parseInt(_0x23caad(0x11d))/0x8)+parseInt(_0x23caad(0x107))/0x9+-parseInt(_0x23caad(0x120))/0xa;if(_0x5efaf8===_0x35e568)break;else _0x1f4ae6['push'](_0x1f4ae6['shift']());}catch(_0x2d18ca){_0x1f4ae6['push'](_0x1f4ae6['shift']());}}}(a77_0x33bc,0x6b629));import{readFile,writeFile,appendFile,mkdir,readdir,stat}from'node:fs/promises';import{existsSync}from'node:fs';function a77_0x2c40(_0x45b66e,_0x1c778a){_0x45b66e=_0x45b66e-0xe8;const _0x33bc09=a77_0x33bc();let _0x2c4017=_0x33bc09[_0x45b66e];return _0x2c4017;}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 _0x544b51=a77_0x2c40;return!usageLogger&&(usageLogger=new TDXLogger(LogLevel[_0x544b51(0x114)],!![]),await usageLogger['init']()),usageLogger;}function getUsageDir(){const _0x298d3e=a77_0x2c40;return join(getGlobalCacheDir(),_0x298d3e(0xea));}function sanitizeSessionId(_0xeb8695){const _0x24fa41=a77_0x2c40;return _0xeb8695[_0x24fa41(0x111)](/[^a-zA-Z0-9_-]/g,'_');}function getSafeJsonlPath(_0x46eccf){const _0x3769ca=a77_0x2c40,_0x4efcad=getUsageDir(),_0x12f12f=sanitizeSessionId(_0x46eccf),_0x564620=resolve(_0x4efcad,_0x12f12f+_0x3769ca(0x117));if(!_0x564620['startsWith'](_0x4efcad))throw new Error('Invalid\x20session\x20ID:\x20path\x20traversal\x20detected');return _0x564620;}function getStatsCachePath(){return join(getUsageDir(),'stats-cache.json');}async function ensureUsageDir(){const _0x3b8420=getUsageDir();!existsSync(_0x3b8420)&&await mkdir(_0x3b8420,{'recursive':!![]});}export async function appendUsageEntry(_0x331d83,_0x279c6e){const _0x396173=a77_0x2c40,_0x161d1f=sanitizeSessionId(_0x331d83);await ensureUsageDir();const _0x2ff2e4=getSafeJsonlPath(_0x161d1f),_0x381d30=JSON[_0x396173(0x105)](_0x279c6e)+'\x0a';await appendFile(_0x2ff2e4,_0x381d30,_0x396173(0x125));}async function readSessionJsonl(_0x3f0bb6){const _0x27ea5b=a77_0x2c40,_0x4b0a52=getSafeJsonlPath(_0x3f0bb6);if(!existsSync(_0x4b0a52))return[];try{const _0x2c7185=await readFile(_0x4b0a52,'utf-8'),_0x16f10b=_0x2c7185[_0x27ea5b(0xeb)]()[_0x27ea5b(0xf6)]('\x0a')[_0x27ea5b(0x10c)](Boolean);return _0x16f10b[_0x27ea5b(0x101)](_0x433963=>{try{return JSON['parse'](_0x433963);}catch{return null;}})['filter'](_0x2df280=>_0x2df280!==null);}catch(_0x569312){const _0x5f53d8=await getLogger();return _0x5f53d8[_0x27ea5b(0x110)](_0x27ea5b(0xf7)+_0x3f0bb6+_0x27ea5b(0xec),_0x569312 instanceof Error?_0x569312[_0x27ea5b(0x116)]:String(_0x569312)),[];}}async function getAllSessionFiles(){const _0x2de707=a77_0x2c40,_0x32014e=getUsageDir();if(!existsSync(_0x32014e))return[];try{const _0xbeac52=await readdir(_0x32014e);return _0xbeac52[_0x2de707(0x10c)](_0x19b2b7=>_0x19b2b7[_0x2de707(0x123)](_0x2de707(0x117)))[_0x2de707(0x101)](_0x4f2fdf=>_0x4f2fdf[_0x2de707(0x111)]('.jsonl',''));}catch(_0x407380){const _0x1e1c41=await getLogger();return _0x1e1c41[_0x2de707(0x110)]('Failed\x20to\x20read\x20usage\x20directory:',_0x407380 instanceof Error?_0x407380[_0x2de707(0x116)]:String(_0x407380)),[];}}async function readStatsCache(){const _0x480598=a77_0x2c40,_0x41acb2=getStatsCachePath();if(!existsSync(_0x41acb2))return null;try{const _0x4e43a5=await readFile(_0x41acb2,_0x480598(0x125)),_0x47719d=JSON['parse'](_0x4e43a5),_0x31658b=Object['values'](_0x47719d['sessions']||{})[0x0];if(_0x31658b&&_0x480598(0x127)in _0x31658b)return null;return _0x47719d;}catch{return null;}}function a77_0x33bc(){const _0x5060a2=['7718679rKOBnF','max','contextSignature','getMonth','entries','filter','2055810eaQgJc','cacheCreationInputTokens','sort','warn','replace','model','source','WARN','entryCount','message','.jsonl','timestamp','lastUpdatedAt','latestContextTokensBySignature','credits','profiles','368nDoTgl','inputTokens','month','9361150FLIYAX','getTime','sessions','endsWith','Failed\x20to\x20process\x20session\x20','utf-8','length','totalChatUnits','monthly','23NPVtLg','claude-usage','trim','.jsonl:','mtime','lastUsedAt','todayCredits','totalCredits','slice','daily','getFullYear','532WSeRFd','todayDate','split','Failed\x20to\x20read\x20usage\x20file\x20','monthCredits','96117trimDx','outputTokens','values','51978KRcvLC','toISOString','2338662ARKsdD','keys','object','map','sources','reduce','profile','stringify','23975yCmMKW'];a77_0x33bc=function(){return _0x5060a2;};return a77_0x33bc();}async function writeStatsCache(_0xbef604){const _0x579189=a77_0x2c40;await ensureUsageDir();const _0x341c33=getStatsCachePath();await writeFile(_0x341c33,JSON[_0x579189(0x105)](_0xbef604,null,0x2),_0x579189(0x125));}async function isCacheUpToDate(_0x1ff79a,_0x80092a){const _0x7f0cb3=a77_0x2c40,_0x8f719a=_0x1ff79a['sessions'][_0x80092a];if(!_0x8f719a)return![];const _0x208e07=getSafeJsonlPath(_0x80092a);if(!existsSync(_0x208e07))return!![];try{const _0x1fb4e3=await stat(_0x208e07),_0x20ca0a=new Date(_0x8f719a[_0x7f0cb3(0x119)])[_0x7f0cb3(0x121)](),_0x4f7905=_0x1fb4e3[_0x7f0cb3(0xed)]['getTime']();return _0x20ca0a>_0x4f7905;}catch{return![];}}export async function rebuildCache(){const _0xbd0cdc=a77_0x2c40,_0xb31e79=new Date(),_0x5c8fdd=_0xb31e79['toISOString']()[_0xbd0cdc(0xf1)](0x0,0xa),_0x158db3=_0xb31e79[_0xbd0cdc(0xfd)]()[_0xbd0cdc(0xf1)](0x0,0x7),_0x4e94a4={'daily':{},'monthly':{},'sessions':{},'profiles':{},'sources':{},'lastRebuiltAt':_0xb31e79[_0xbd0cdc(0xfd)]()},_0x388d52=await getAllSessionFiles();for(const _0x51fd2a of _0x388d52){try{const _0x11cb0b=await readSessionJsonl(_0x51fd2a);if(_0x11cb0b[_0xbd0cdc(0x126)]===0x0)continue;let _0x5f1752=0x0;const _0x9a9a80={};let _0x2c9a17='';for(const _0x403623 of _0x11cb0b){const _0x33e7af=getModelPricing(_0x403623[_0xbd0cdc(0x112)]),_0x25cff2=calculateTokenCost(_0x403623[_0xbd0cdc(0x11e)],_0x403623[_0xbd0cdc(0xfa)],_0x403623[_0xbd0cdc(0x10e)]??0x0,_0x403623['cacheReadInputTokens']??0x0,_0x33e7af),_0x1ab2d7=usdToAiCredits(_0x25cff2);_0x5f1752+=_0x1ab2d7;const _0x13b10a=_0x403623[_0xbd0cdc(0x109)]||'default';_0x9a9a80[_0x13b10a]=_0x403623['inputTokens']+(_0x403623[_0xbd0cdc(0x10e)]??0x0)+(_0x403623['cacheReadInputTokens']??0x0);_0x403623[_0xbd0cdc(0x118)]>_0x2c9a17&&(_0x2c9a17=_0x403623['timestamp']);const _0x53be08=_0x403623[_0xbd0cdc(0x118)][_0xbd0cdc(0xf1)](0x0,0xa);!_0x4e94a4['daily'][_0x53be08]&&(_0x4e94a4['daily'][_0x53be08]={'totalCredits':0x0,'entryCount':0x0});_0x4e94a4[_0xbd0cdc(0xf2)][_0x53be08][_0xbd0cdc(0xf0)]+=_0x1ab2d7,_0x4e94a4[_0xbd0cdc(0xf2)][_0x53be08]['entryCount']+=0x1;const _0x255c18=_0x403623[_0xbd0cdc(0x118)][_0xbd0cdc(0xf1)](0x0,0x7);!_0x4e94a4[_0xbd0cdc(0xe8)][_0x255c18]&&(_0x4e94a4[_0xbd0cdc(0xe8)][_0x255c18]={'totalCredits':0x0,'entryCount':0x0});_0x4e94a4[_0xbd0cdc(0xe8)][_0x255c18][_0xbd0cdc(0xf0)]+=_0x1ab2d7,_0x4e94a4[_0xbd0cdc(0xe8)][_0x255c18][_0xbd0cdc(0x115)]+=0x1;const _0x752dfb=_0x403623[_0xbd0cdc(0x104)]||'default';!_0x4e94a4[_0xbd0cdc(0x11c)][_0x752dfb]&&(_0x4e94a4[_0xbd0cdc(0x11c)][_0x752dfb]={'totalCredits':0x0,'entryCount':0x0,'lastUsedAt':'','todayCredits':0x0,'todayDate':_0x5c8fdd,'monthCredits':0x0,'month':_0x158db3});_0x4e94a4[_0xbd0cdc(0x11c)][_0x752dfb]['totalCredits']+=_0x1ab2d7,_0x4e94a4[_0xbd0cdc(0x11c)][_0x752dfb]['entryCount']+=0x1;_0x403623[_0xbd0cdc(0x118)]>_0x4e94a4['profiles'][_0x752dfb]['lastUsedAt']&&(_0x4e94a4[_0xbd0cdc(0x11c)][_0x752dfb][_0xbd0cdc(0xee)]=_0x403623[_0xbd0cdc(0x118)]);_0x53be08===_0x5c8fdd&&(_0x4e94a4[_0xbd0cdc(0x11c)][_0x752dfb][_0xbd0cdc(0xef)]+=_0x1ab2d7);_0x255c18===_0x158db3&&(_0x4e94a4['profiles'][_0x752dfb][_0xbd0cdc(0xf8)]+=_0x1ab2d7);const _0x564037=_0x403623[_0xbd0cdc(0x113)]||'tdx-claude';!_0x4e94a4[_0xbd0cdc(0x102)][_0x564037]&&(_0x4e94a4[_0xbd0cdc(0x102)][_0x564037]={'totalCredits':0x0,'entryCount':0x0,'todayCredits':0x0,'todayDate':_0x5c8fdd,'monthCredits':0x0,'month':_0x158db3}),_0x4e94a4[_0xbd0cdc(0x102)][_0x564037][_0xbd0cdc(0xf0)]+=_0x1ab2d7,_0x4e94a4[_0xbd0cdc(0x102)][_0x564037]['entryCount']+=0x1,_0x53be08===_0x5c8fdd&&(_0x4e94a4[_0xbd0cdc(0x102)][_0x564037]['todayCredits']+=_0x1ab2d7),_0x255c18===_0x158db3&&(_0x4e94a4[_0xbd0cdc(0x102)][_0x564037][_0xbd0cdc(0xf8)]+=_0x1ab2d7);}_0x4e94a4[_0xbd0cdc(0x122)][_0x51fd2a]={'totalCredits':_0x5f1752,'latestContextTokensBySignature':_0x9a9a80,'createdAt':_0x11cb0b[0x0]['timestamp'],'lastUpdatedAt':_0x2c9a17};}catch(_0x5a5b33){const _0x5521fa=await getLogger();_0x5521fa[_0xbd0cdc(0x110)](_0xbd0cdc(0x124)+_0x51fd2a+':',_0x5a5b33 instanceof Error?_0x5a5b33[_0xbd0cdc(0x116)]:String(_0x5a5b33));continue;}}return cleanupOldEntries(_0x4e94a4),await writeStatsCache(_0x4e94a4),_0x4e94a4;}function cleanupOldEntries(_0x4bebed){const _0x5d8844=a77_0x2c40,_0x1b6fa1=new Date(),_0x46d3c8=new Date(_0x1b6fa1[_0x5d8844(0x121)]()-0x7*0x18*0x3c*0x3c*0x3e8);for(const _0xeccfbe of Object[_0x5d8844(0xff)](_0x4bebed[_0x5d8844(0xf2)])){new Date(_0xeccfbe)<_0x46d3c8&&delete _0x4bebed[_0x5d8844(0xf2)][_0xeccfbe];}const _0x446273=new Date(_0x1b6fa1[_0x5d8844(0xf3)]()-0x1,_0x1b6fa1[_0x5d8844(0x10a)](),0x1);for(const _0x15649f of Object[_0x5d8844(0xff)](_0x4bebed[_0x5d8844(0xe8)])){const [_0x49a3a8,_0x43cc5a]=_0x15649f[_0x5d8844(0xf6)]('-')['map'](Number),_0xd929c6=new Date(_0x49a3a8,_0x43cc5a-0x1,0x1);_0xd929c6<_0x446273&&delete _0x4bebed[_0x5d8844(0xe8)][_0x15649f];}const _0x43ab34=new Date(_0x1b6fa1[_0x5d8844(0x121)]()-0x1e*0x18*0x3c*0x3c*0x3e8);for(const [_0x580f45,_0x33944a]of Object['entries'](_0x4bebed[_0x5d8844(0x122)])){new Date(_0x33944a[_0x5d8844(0x119)])<_0x43ab34&&delete _0x4bebed[_0x5d8844(0x122)][_0x580f45];}}export async function getOrUpdateCache(_0x23eadc){const _0x3d8e86=_0x23eadc?sanitizeSessionId(_0x23eadc):undefined,_0x4f812f=await readStatsCache();if(!_0x4f812f)return rebuildCache();if(_0x3d8e86){const _0x48fc0d=await isCacheUpToDate(_0x4f812f,_0x3d8e86);if(!_0x48fc0d)return rebuildCache();}return _0x4f812f;}export async function getSessionCredits(_0x1bdf81){const _0xfd20a4=a77_0x2c40,_0x55980e=sanitizeSessionId(_0x1bdf81),_0x207a22=await getOrUpdateCache(_0x55980e),_0x469afa=_0x207a22[_0xfd20a4(0x122)][_0x55980e];if(!_0x469afa)return 0x0;return _0x469afa[_0xfd20a4(0xf0)];}export async function getTodayCredits(){const _0x45529c=a77_0x2c40,_0x237cb5=await getOrUpdateCache(),_0xa45dfd=new Date()[_0x45529c(0xfd)]()[_0x45529c(0xf1)](0x0,0xa),_0x5516a8=_0x237cb5[_0x45529c(0xf2)][_0xa45dfd];if(!_0x5516a8)return 0x0;return _0x5516a8[_0x45529c(0xf0)];}export async function getMonthCredits(){const _0x48df0d=a77_0x2c40,_0x5d1913=await getOrUpdateCache(),_0x3a359a=new Date()[_0x48df0d(0xfd)]()[_0x48df0d(0xf1)](0x0,0x7),_0x1b0cef=_0x5d1913[_0x48df0d(0xe8)][_0x3a359a];if(!_0x1b0cef)return 0x0;return _0x1b0cef[_0x48df0d(0xf0)];}export async function getSessionStats(_0x4230c2){const _0x43e65b=a77_0x2c40,_0xf681b9=sanitizeSessionId(_0x4230c2),_0x5a3de7=await getOrUpdateCache(_0xf681b9);return _0x5a3de7[_0x43e65b(0x122)][_0xf681b9]||null;}function getMaxLatestContextTokens(_0x54aa12){const _0x450946=a77_0x2c40,_0x292078=Object[_0x450946(0xfb)](_0x54aa12);if(_0x292078[_0x450946(0x126)]===0x0)return 0x0;return Math[_0x450946(0x108)](..._0x292078);}export async function getUsageStats(_0x2f7e0b,_0x58e9ec){const _0xd55d9c=a77_0x2c40,_0x627c7f=sanitizeSessionId(_0x2f7e0b),_0x2d3254=await getOrUpdateCache(_0x627c7f),_0x1cd3b8=_0x2d3254[_0xd55d9c(0x122)][_0x627c7f],_0xa01b42=new Date()[_0xd55d9c(0xfd)]()['slice'](0x0,0xa),_0x59b440=new Date()[_0xd55d9c(0xfd)]()['slice'](0x0,0x7);if(_0x58e9ec){const _0xc53a62=_0x2d3254['profiles']?.[_0x58e9ec],_0x1ec490=_0xc53a62?.[_0xd55d9c(0xf5)]===_0xa01b42?_0xc53a62[_0xd55d9c(0xef)]:0x0,_0x18398e=_0xc53a62?.[_0xd55d9c(0x11f)]===_0x59b440?_0xc53a62[_0xd55d9c(0xf8)]:0x0;return{'sessionCredits':_0x1cd3b8?_0x1cd3b8[_0xd55d9c(0xf0)]:0x0,'todayCredits':_0x1ec490,'monthCredits':_0x18398e,'latestContextTokens':_0x1cd3b8?getMaxLatestContextTokens(_0x1cd3b8[_0xd55d9c(0x11a)]):0x0};}return{'sessionCredits':_0x1cd3b8?_0x1cd3b8[_0xd55d9c(0xf0)]:0x0,'todayCredits':_0x2d3254['daily'][_0xa01b42]?_0x2d3254[_0xd55d9c(0xf2)][_0xa01b42][_0xd55d9c(0xf0)]:0x0,'monthCredits':_0x2d3254[_0xd55d9c(0xe8)][_0x59b440]?_0x2d3254['monthly'][_0x59b440][_0xd55d9c(0xf0)]:0x0,'latestContextTokens':_0x1cd3b8?getMaxLatestContextTokens(_0x1cd3b8['latestContextTokensBySignature']):0x0};}export async function getAllProfileStats(){const _0x5ea290=a77_0x2c40,_0x557d74=await getOrUpdateCache(),_0x508fc0=_0x557d74[_0x5ea290(0x11c)]||{};return Object[_0x5ea290(0x10b)](_0x508fc0)[_0x5ea290(0x10c)](([,_0x20d11a])=>_0x20d11a&&typeof _0x20d11a==='object')[_0x5ea290(0x101)](([_0x2b77d0,_0x56e0cb])=>({'profile':_0x2b77d0,'credits':_0x56e0cb['totalCredits']||0x0,'entryCount':_0x56e0cb[_0x5ea290(0x115)]||0x0,'lastUsedAt':_0x56e0cb[_0x5ea290(0xee)]||''}))[_0x5ea290(0x10f)]((_0x23f08d,_0x20c538)=>_0x20c538[_0x5ea290(0x11b)]-_0x23f08d[_0x5ea290(0x11b)]);}export async function getAllSourceStats(){const _0x4dd5c2=a77_0x2c40,_0x5e5482=await getOrUpdateCache(),_0x341fdf=_0x5e5482[_0x4dd5c2(0x102)]||{},_0x222d04=new Date()['toISOString']()[_0x4dd5c2(0xf1)](0x0,0xa),_0x3c85a2=new Date()['toISOString']()[_0x4dd5c2(0xf1)](0x0,0x7);return Object['entries'](_0x341fdf)['filter'](([,_0xdbb711])=>_0xdbb711&&typeof _0xdbb711==='object')[_0x4dd5c2(0x101)](([_0x1d37bc,_0x355b9e])=>({'source':_0x1d37bc,'credits':_0x355b9e[_0x4dd5c2(0xf0)]||0x0,'todayCredits':_0x355b9e[_0x4dd5c2(0xf5)]===_0x222d04?_0x355b9e[_0x4dd5c2(0xef)]||0x0:0x0,'monthCredits':_0x355b9e[_0x4dd5c2(0x11f)]===_0x3c85a2?_0x355b9e['monthCredits']||0x0:0x0,'entryCount':_0x355b9e[_0x4dd5c2(0x115)]||0x0}))[_0x4dd5c2(0x10f)]((_0x481f87,_0x2c10ab)=>_0x2c10ab['credits']-_0x481f87[_0x4dd5c2(0x11b)]);}export async function getUsageSummary(){const _0x1a87ca=a77_0x2c40,_0x3f1d8e=await getOrUpdateCache(),_0x39bd69=_0x3f1d8e[_0x1a87ca(0x11c)]||{},_0xe92f24=new Date()[_0x1a87ca(0xfd)]()[_0x1a87ca(0xf1)](0x0,0xa),_0x29cf98=new Date()[_0x1a87ca(0xfd)]()[_0x1a87ca(0xf1)](0x0,0x7),_0x3b8b5f=Object[_0x1a87ca(0xfb)](_0x39bd69)['filter'](_0x162800=>_0x162800&&typeof _0x162800===_0x1a87ca(0x100)),_0x2f7148=_0x3b8b5f[_0x1a87ca(0x103)]((_0x57e2c9,_0x3c56d)=>_0x57e2c9+(_0x3c56d['totalCredits']||0x0),0x0);return{'todayCredits':_0x3f1d8e['daily'][_0xe92f24]?_0x3f1d8e[_0x1a87ca(0xf2)][_0xe92f24][_0x1a87ca(0xf0)]||0x0:0x0,'monthCredits':_0x3f1d8e[_0x1a87ca(0xe8)][_0x29cf98]?_0x3f1d8e['monthly'][_0x29cf98][_0x1a87ca(0xf0)]||0x0:0x0,'totalCredits':_0x2f7148,'profileCount':_0x3b8b5f[_0x1a87ca(0x126)]};}
|
|
@@ -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_0x2ff2bf=a78_0xbae0;(function(_0xadeb4b,_0x96975e){const _0x151064=a78_0xbae0,_0x3f6a00=_0xadeb4b();while(!![]){try{const _0x20f0b0=-parseInt(_0x151064(0x166))/0x1*(-parseInt(_0x151064(0x1bb))/0x2)+-parseInt(_0x151064(0x159))/0x3+parseInt(_0x151064(0x1cb))/0x4*(parseInt(_0x151064(0x17d))/0x5)+-parseInt(_0x151064(0x161))/0x6+parseInt(_0x151064(0x1e0))/0x7+parseInt(_0x151064(0x169))/0x8*(-parseInt(_0x151064(0x18b))/0x9)+parseInt(_0x151064(0x15f))/0xa*(parseInt(_0x151064(0x1bf))/0xb);if(_0x20f0b0===_0x96975e)break;else _0x3f6a00['push'](_0x3f6a00['shift']());}catch(_0xd45596){_0x3f6a00['push'](_0x3f6a00['shift']());}}}(a78_0x4e2c,0x4c537));function a78_0x4e2c(){const _0x31b749=['usage','keep-alive','register','unref','timeout','debug','tdx','/health','2594592HCQnbc','host','GET','expires_at','TimeoutError','write','slice',',\x20stream=','setupJsonParser','auth','get','setErrorHandler','writeHead','llmProxyUrl','content-length',',\x20model=','_boundPort','expiresAt','tdx/','toLowerCase','input_tokens','979650qYDghE','system','accessToken','entries','api_error','messages','10ZRAZca','refreshToken','3153162zFPImI','Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20','handleStreamingResponse','buildForwardHeaders','anthropic-version','111467tkUnYn','config','Unknown\x20error','2445544ZoxsnF','127.0.0.1','[PASSTHROUGH]\x20Failed\x20to\x20log\x20usage:','authorization','TD1\x20','text','timeoutMs','processChunk','url','user-agent','default','cacheReadInputTokens','raw','body','access_token','post',':\x20messages=','haiku','unknown','Bearer\x20','440GVBAQs','user_id','connection','/v1/messages/count_tokens','length','\x20in\x20use,\x20trying\x20next...','setupRoutes','toISOString','headers','end','startPort','error','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20count_tokens\x20request:','startTokenRefreshTimer','18xUkrTk','profile','transfer-encoding','status','statusText','parse',',\x20cache_read=','getAddress','startsWith','handleCountTokens','port','Authorization','/v1/messages','message','text/event-stream','Server\x20has\x20not\x20been\x20started\x20yet','refreshTimer','logUsage','Forwarding\x20to:\x20','TD\x20LLM\x20Pass-through\x20Proxy\x20Server','apiKey','[PASSTHROUGH]\x20Upstream\x20error:\x20','close','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20request:','getReader','[PASSTHROUGH]\x20Stream\x20error:','X-TD-Client','maxPortAttempts','Content-Type','http://127.0.0.1:','stringify','No\x20available\x20port\x20found\x20between\x20','stop','createServer','[PASSTHROUGH]\x20Forwarding\x20count_tokens\x20to:\x20','event:\x20error\x0adata:\x20','application/json','server','User-Agent','oauth','stream_error','flush','header','addContentTypeParser','X-TD-Client-Version','info','name','Stream\x20interrupted','10OqufBb','|\x20Debug\x20agent\x20issues\x20|\x20tdx-skills:agent-debug\x20|\x0a','string','includes','9025181lgdbrf','now','cache_creation_input_tokens','POST','indexOf','type','setupMiddleware','\x20and\x20','SKIP_HEADERS','Pass-through\x20proxy\x20server\x20stopped','outputTokens','send','1256jLElld','x-api-key','tdx-claude','code','Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20','decode','logger','refreshTokenIfNeeded','consoleUrl','inputTokens','handleMessages','EADDRINUSE','listen'];a78_0x4e2c=function(){return _0x31b749;};return a78_0x4e2c();}import a78_0x3dac01 from'fastify';import a78_0x34b594 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_0xbae0(_0x42071a,_0x38aef7){_0x42071a=_0x42071a-0x154;const _0x4e2c12=a78_0x4e2c();let _0xbae004=_0x4e2c12[_0x42071a];return _0xbae004;}import{isExperimentalAvailable}from'../core/config.js';import{refreshAccessToken}from'../sdk/client/oauth-refresh.js';import{saveOAuthTokens}from'../core/oauth-keychain.js';const DEFAULT_TIMEOUT_MS=0x5*0x3c*0x3e8,TDX_SYSTEM_PROMPT='You\x20are\x20`tdx\x20claude`,\x20an\x20extension\x20of\x20Claude\x20Code\x20with\x20tdx\x20CLI\x20tools\x20(https://tdx.treasuredata.com/)\x20and\x20skills\x20for\x20Treasure\x20Data\x20and\x20CDP.\x0a\x0aFor\x20Treasure\x20Data\x20tasks,\x20use\x20these\x20skills:\x0a\x0a|\x20Task\x20|\x20Skill\x20|\x0a|------|-------|\x0a|\x20tdx\x20CLI\x20operations\x20(databases,\x20tables,\x20queries)\x20|\x20tdx-skills:tdx-basic\x20|\x0a|\x20CDP\x20parent\x20segments\x20(YAML\x20config)\x20|\x20tdx-skills:parent-segment\x20|\x0a|\x20CDP\x20child\x20segments\x20(rules,\x20activations)\x20|\x20tdx-skills:segment\x20|\x0a|\x20Validate\x20segment\x20YAML\x20|\x20tdx-skills:validate-segment\x20|\x0a|\x20CDP\x20journeys\x20(stages,\x20steps)\x20|\x20tdx-skills:journey\x20|\x0a|\x20Validate\x20journey\x20YAML\x20|\x20tdx-skills:validate-journey\x20|\x0a|\x20Configure\x20activations\x20|\x20tdx-skills:connector-config\x20|\x0a|\x20Build\x20LLM\x20agents\x20|\x20tdx-skills:agent\x20|\x0a'+(isExperimentalAvailable()?a78_0x2ff2bf(0x1bc):'')+'|\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(_0x4c5a83){const _0x12e271=_0x4c5a83['match'](/_session_([a-f0-9-]+)$/i);if(_0x12e271)return _0x12e271[0x1];return _0x4c5a83;}export function injectSystemPrompt(_0x14e118,_0x2ca162){const _0xb9abc3=a78_0x2ff2bf,_0x3cdf47=_0x14e118[_0xb9abc3(0x15a)];if(!_0x3cdf47)return{..._0x14e118,'system':_0x2ca162};if(typeof _0x3cdf47===_0xb9abc3(0x1bd))return{..._0x14e118,'system':_0x3cdf47+'\x0a\x0a'+_0x2ca162};if(Array['isArray'](_0x3cdf47)){const _0xa4d8ab={'type':_0xb9abc3(0x16e),'text':_0x2ca162};return{..._0x14e118,'system':[..._0x3cdf47,_0xa4d8ab]};}return _0x14e118;}export function shouldInjectSystemPrompt(_0x3c2505){const _0x15ec47=a78_0x2ff2bf;return!_0x3c2505[_0x15ec47(0x157)]()['includes'](_0x15ec47(0x17a));}const TOKEN_REFRESH_INTERVAL_MS=0x5*0x3c*0x3e8,TOKEN_EXPIRY_BUFFER_MS=0x5*0x3c*0x3e8;export class PassThroughProxyServer{['server'];[a78_0x2ff2bf(0x167)];['logger'];['_boundPort'];[a78_0x2ff2bf(0x19b)];constructor(_0x2ece94){const _0x29c1cd=a78_0x2ff2bf;this[_0x29c1cd(0x167)]=_0x2ece94,this[_0x29c1cd(0x1d1)]=_0x2ece94[_0x29c1cd(0x1d1)],this[_0x29c1cd(0x1b0)]=this['createServer']();}get[a78_0x2ff2bf(0x195)](){const _0x122275=a78_0x2ff2bf;if(this[_0x122275(0x154)]===undefined)throw new Error(_0x122275(0x19a));return this['_boundPort'];}['createServer'](){const _0x12084f=a78_0x2ff2bf,_0x5a6daf=a78_0x3dac01({'logger':![],'bodyLimit':0x40*0x400*0x400});return this[_0x12084f(0x1b0)]=_0x5a6daf,this['setupJsonParser'](),this[_0x12084f(0x1c5)](),this[_0x12084f(0x183)](),_0x5a6daf;}[a78_0x2ff2bf(0x1e8)](){const _0x32c9ce=a78_0x2ff2bf;this[_0x32c9ce(0x1b0)][_0x32c9ce(0x1b6)]('application/json',{'parseAs':_0x32c9ce(0x1bd)},(_0x1a0f4c,_0x3f4fd8,_0x401ce1)=>{const _0x14c30a=_0x32c9ce;try{const _0x54bdea=JSON[_0x14c30a(0x190)](_0x3f4fd8);_0x401ce1(null,_0x54bdea);}catch(_0x3f04e8){_0x401ce1(_0x3f04e8,undefined);}});}[a78_0x2ff2bf(0x1c5)](){const _0x3c3f8e=a78_0x2ff2bf;this[_0x3c3f8e(0x1b0)][_0x3c3f8e(0x1da)](a78_0x34b594,{'origin':!![],'methods':[_0x3c3f8e(0x1e2),'POST','OPTIONS'],'allowedHeaders':[_0x3c3f8e(0x1a7),'Authorization',_0x3c3f8e(0x165),'x-api-key']}),this[_0x3c3f8e(0x1b0)][_0x3c3f8e(0x1eb)]((_0x1f9dc8,_0x105969,_0x4e6817)=>{const _0x1ea74a=_0x3c3f8e,_0x9123df=_0x1f9dc8 instanceof Error?_0x1f9dc8[_0x1ea74a(0x198)]:'Unknown\x20error';this['logger'][_0x1ea74a(0x188)]('[PASSTHROUGH\x20PROXY\x20ERROR]:',_0x1f9dc8),_0x4e6817[_0x1ea74a(0x1ce)](0x1f4)[_0x1ea74a(0x1ca)]({'type':_0x1ea74a(0x188),'error':{'type':'api_error','message':_0x9123df}});});}['setupRoutes'](){const _0x2a78bf=a78_0x2ff2bf;this['server'][_0x2a78bf(0x1ea)](_0x2a78bf(0x1df),async()=>{const _0x3fb338=_0x2a78bf;return{'status':'ok','message':_0x3fb338(0x19e)};}),this[_0x2a78bf(0x1b0)]['post'](_0x2a78bf(0x197),async(_0x1d4a2b,_0x3cf731)=>{const _0x5797bd=_0x2a78bf;return this[_0x5797bd(0x1d5)](_0x1d4a2b,_0x3cf731);}),this['server'][_0x2a78bf(0x178)]('/v1/messages/count_tokens',async(_0x1e2cd8,_0x9dd78d)=>{const _0x2578f3=_0x2a78bf;return this[_0x2578f3(0x194)](_0x1e2cd8,_0x9dd78d);});}static [a78_0x2ff2bf(0x1c7)]=new Set([a78_0x2ff2bf(0x1e1),a78_0x2ff2bf(0x17f),a78_0x2ff2bf(0x1ee),a78_0x2ff2bf(0x18d),a78_0x2ff2bf(0x16c),a78_0x2ff2bf(0x1cc),a78_0x2ff2bf(0x172)]);[a78_0x2ff2bf(0x164)](_0x101417){const _0x53912d=a78_0x2ff2bf,_0x18fcb4={};for(const [_0x2b695a,_0x14db5b]of Object[_0x53912d(0x15c)](_0x101417[_0x53912d(0x185)])){const _0x2e6540=_0x2b695a['toLowerCase']();if(PassThroughProxyServer[_0x53912d(0x1c7)]['has'](_0x2e6540))continue;if(_0x2e6540[_0x53912d(0x193)]('x-td-'))continue;if(typeof _0x14db5b==='string')_0x18fcb4[_0x2b695a]=_0x14db5b;else Array['isArray'](_0x14db5b)&&(_0x18fcb4[_0x2b695a]=_0x14db5b['join'](',\x20'));}const _0x4a08b4=getVersion(),{auth:_0x118196}=this['config'];return _0x18fcb4[_0x53912d(0x196)]=_0x118196['type']==='oauth'?_0x53912d(0x17c)+_0x118196[_0x53912d(0x15b)]:_0x53912d(0x16d)+_0x118196[_0x53912d(0x19f)],_0x18fcb4[_0x53912d(0x1b1)]=_0x53912d(0x156)+_0x4a08b4,_0x18fcb4[_0x53912d(0x1a5)]=_0x53912d(0x1de),_0x18fcb4[_0x53912d(0x1b7)]=_0x4a08b4,_0x18fcb4;}async[a78_0x2ff2bf(0x1d5)](_0xe16395,_0x41fe17){const _0x4c850c=a78_0x2ff2bf,_0x25a0a2=_0xe16395[_0x4c850c(0x176)],_0x460f08=_0x25a0a2['stream']!==![],_0x3994e1=_0x25a0a2['metadata'],_0x2db043=_0x3994e1?.[_0x4c850c(0x17e)]||_0x4c850c(0x173),_0x33323c=extractSessionUUID(_0x2db043),_0x201863=_0x25a0a2['model']||'unknown',_0x372eed=shouldInjectSystemPrompt(_0x201863)?injectSystemPrompt(_0x25a0a2,TDX_SYSTEM_PROMPT):_0x25a0a2,_0x158ccd=JSON[_0x4c850c(0x1a9)](_0x372eed),_0x48033a=Array['isArray'](_0x25a0a2[_0x4c850c(0x15e)])?_0x25a0a2[_0x4c850c(0x15e)][_0x4c850c(0x181)]:0x0;this['logger'][_0x4c850c(0x1b8)]('[PASSTHROUGH]\x20'+_0xe16395['method']+'\x20'+_0xe16395['url']+_0x4c850c(0x179)+_0x48033a+_0x4c850c(0x1ef)+_0x201863+_0x4c850c(0x1e7)+_0x460f08);const _0x5a4fcd=_0xe16395[_0x4c850c(0x171)]['includes']('?')?_0xe16395['url'][_0x4c850c(0x1e6)](_0xe16395[_0x4c850c(0x171)][_0x4c850c(0x1c3)]('?')):'',_0x1db4af=this[_0x4c850c(0x167)]['llmProxyUrl']+_0x4c850c(0x197)+_0x5a4fcd,_0x39cd2d=this['buildForwardHeaders'](_0xe16395);this['logger'][_0x4c850c(0x1dd)](_0x4c850c(0x19d)+_0x1db4af);const _0x58fbb9=this[_0x4c850c(0x167)][_0x4c850c(0x16f)]||DEFAULT_TIMEOUT_MS;try{const _0x7dc7b8=await fetch(_0x1db4af,{'method':'POST','headers':_0x39cd2d,'body':_0x158ccd,'signal':AbortSignal['timeout'](_0x58fbb9)});if(!_0x7dc7b8['ok']){const _0x28143d=await _0x7dc7b8[_0x4c850c(0x16e)]();return this[_0x4c850c(0x1d1)][_0x4c850c(0x188)](_0x4c850c(0x1a0)+_0x7dc7b8[_0x4c850c(0x18e)]+'\x20'+_0x7dc7b8[_0x4c850c(0x18f)]),this['logger'][_0x4c850c(0x1dd)]('Error\x20body:\x20'+_0x28143d),_0x41fe17[_0x4c850c(0x1ce)](_0x7dc7b8[_0x4c850c(0x18e)]),_0x41fe17['header'](_0x4c850c(0x1a7),_0x7dc7b8[_0x4c850c(0x185)][_0x4c850c(0x1ea)](_0x4c850c(0x1a7))||_0x4c850c(0x1af)),_0x41fe17['send'](_0x28143d);}if(_0x460f08&&_0x7dc7b8['body'])await this[_0x4c850c(0x163)](_0x7dc7b8[_0x4c850c(0x176)],_0x41fe17,_0x33323c,_0x201863);else{const _0x44171e=await _0x7dc7b8[_0x4c850c(0x16e)]();_0x41fe17[_0x4c850c(0x1b5)](_0x4c850c(0x1a7),_0x7dc7b8[_0x4c850c(0x185)][_0x4c850c(0x1ea)](_0x4c850c(0x1a7))||_0x4c850c(0x1af));try{const _0x4b82f3=JSON[_0x4c850c(0x190)](_0x44171e);_0x4b82f3[_0x4c850c(0x1d8)]&&await this[_0x4c850c(0x19c)](_0x33323c,_0x201863,_0x4b82f3['usage'][_0x4c850c(0x158)]||0x0,_0x4b82f3[_0x4c850c(0x1d8)]['output_tokens']||0x0,_0x4b82f3[_0x4c850c(0x1d8)][_0x4c850c(0x1c1)],_0x4b82f3[_0x4c850c(0x1d8)]['cache_read_input_tokens']);}catch{}return _0x41fe17[_0x4c850c(0x1ca)](_0x44171e);}}catch(_0x2b89fb){const _0x44a8f4=_0x2b89fb instanceof Error?_0x2b89fb[_0x4c850c(0x198)]:_0x4c850c(0x168),_0x1e1e47=_0x2b89fb instanceof Error&&_0x2b89fb['name']===_0x4c850c(0x1e4);this['logger'][_0x4c850c(0x188)](_0x4c850c(0x1a2),_0x2b89fb),_0x41fe17[_0x4c850c(0x1ce)](_0x1e1e47?0x1f8:0x1f7)['send']({'type':_0x4c850c(0x188),'error':{'type':_0x1e1e47?'timeout_error':_0x4c850c(0x15d),'message':_0x1e1e47?_0x4c850c(0x162)+_0x58fbb9+'ms':'Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20'+_0x44a8f4}});}}async[a78_0x2ff2bf(0x163)](_0x325f81,_0x27440a,_0xc331e4,_0x249e14){const _0x1ac0ba=a78_0x2ff2bf;_0x27440a['raw'][_0x1ac0ba(0x1ec)](0xc8,{'Content-Type':_0x1ac0ba(0x199),'Cache-Control':'no-cache','Connection':_0x1ac0ba(0x1d9)});const _0x12be86=new SSEUsageTracker(),_0xdc7670=_0x325f81[_0x1ac0ba(0x1a3)](),_0x4c4dbd=new TextDecoder();try{while(!![]){const {done:_0x29805f,value:_0x4f7f48}=await _0xdc7670['read']();if(_0x29805f)break;const _0x3426b9=_0x4c4dbd[_0x1ac0ba(0x1d0)](_0x4f7f48,{'stream':!![]});_0x12be86[_0x1ac0ba(0x170)](_0x3426b9),_0x27440a[_0x1ac0ba(0x175)][_0x1ac0ba(0x1e5)](_0x3426b9);}_0x12be86[_0x1ac0ba(0x1b4)]();const _0x4dce25=_0x12be86['getUsage']();(_0x4dce25[_0x1ac0ba(0x1d4)]>0x0||_0x4dce25[_0x1ac0ba(0x1c9)]>0x0)&&await this[_0x1ac0ba(0x19c)](_0xc331e4,_0x249e14,_0x4dce25[_0x1ac0ba(0x1d4)],_0x4dce25[_0x1ac0ba(0x1c9)],_0x4dce25['cacheCreationInputTokens'],_0x4dce25[_0x1ac0ba(0x174)]);}catch(_0x22c932){this[_0x1ac0ba(0x1d1)][_0x1ac0ba(0x188)](_0x1ac0ba(0x1a4),_0x22c932);const _0x1f9f29=_0x1ac0ba(0x1ae)+JSON[_0x1ac0ba(0x1a9)]({'type':_0x1ac0ba(0x188),'error':{'type':_0x1ac0ba(0x1b3),'message':_0x1ac0ba(0x1ba)}})+'\x0a\x0a';_0x27440a[_0x1ac0ba(0x175)]['write'](_0x1f9f29);}finally{_0x27440a[_0x1ac0ba(0x175)][_0x1ac0ba(0x186)]();}}async[a78_0x2ff2bf(0x194)](_0x35392f,_0x38cd16){const _0x24ddd4=a78_0x2ff2bf,_0x5a4d78=_0x35392f['body'],_0x1b5092=_0x35392f[_0x24ddd4(0x171)][_0x24ddd4(0x1be)]('?')?_0x35392f[_0x24ddd4(0x171)]['slice'](_0x35392f[_0x24ddd4(0x171)][_0x24ddd4(0x1c3)]('?')):'',_0xe90bd3=this[_0x24ddd4(0x167)][_0x24ddd4(0x1ed)]+_0x24ddd4(0x180)+_0x1b5092,_0x1bc8b4=this[_0x24ddd4(0x164)](_0x35392f),_0x248817=_0x5a4d78['model']||_0x24ddd4(0x17b),_0x42597d=shouldInjectSystemPrompt(_0x248817)?injectSystemPrompt(_0x5a4d78,TDX_SYSTEM_PROMPT):_0x5a4d78,_0x111803=JSON[_0x24ddd4(0x1a9)](_0x42597d);this['logger'][_0x24ddd4(0x1dd)](_0x24ddd4(0x1ad)+_0xe90bd3);const _0x5f2220=this['config'][_0x24ddd4(0x16f)]||DEFAULT_TIMEOUT_MS;try{const _0xaba62e=await fetch(_0xe90bd3,{'method':_0x24ddd4(0x1c2),'headers':_0x1bc8b4,'body':_0x111803,'signal':AbortSignal[_0x24ddd4(0x1dc)](_0x5f2220)}),_0x585c96=await _0xaba62e[_0x24ddd4(0x16e)]();return _0x38cd16[_0x24ddd4(0x1ce)](_0xaba62e[_0x24ddd4(0x18e)]),_0x38cd16[_0x24ddd4(0x1b5)](_0x24ddd4(0x1a7),_0xaba62e[_0x24ddd4(0x185)]['get'](_0x24ddd4(0x1a7))||_0x24ddd4(0x1af)),_0x38cd16['send'](_0x585c96);}catch(_0xf60452){const _0x56f280=_0xf60452 instanceof Error?_0xf60452['message']:_0x24ddd4(0x168),_0x38c374=_0xf60452 instanceof Error&&_0xf60452[_0x24ddd4(0x1b9)]===_0x24ddd4(0x1e4);this[_0x24ddd4(0x1d1)][_0x24ddd4(0x188)](_0x24ddd4(0x189),_0xf60452),_0x38cd16[_0x24ddd4(0x1ce)](_0x38c374?0x1f8:0x1f7)[_0x24ddd4(0x1ca)]({'type':_0x24ddd4(0x188),'error':{'type':_0x38c374?'timeout_error':_0x24ddd4(0x15d),'message':_0x38c374?_0x24ddd4(0x162)+_0x5f2220+'ms':_0x24ddd4(0x1cf)+_0x56f280}});}}async[a78_0x2ff2bf(0x19c)](_0x45ec0c,_0x81d62b,_0x54510a,_0x512633,_0x230c68,_0x5d8c94){const _0x963416=a78_0x2ff2bf,_0x3a46db={'timestamp':new Date()[_0x963416(0x184)](),'model':_0x81d62b,'inputTokens':_0x54510a,'outputTokens':_0x512633,'cacheCreationInputTokens':_0x230c68,'cacheReadInputTokens':_0x5d8c94,'profile':this[_0x963416(0x167)]['profile'],'source':_0x963416(0x1cd)},_0x3804f1=_0x230c68||_0x5d8c94?',\x20cache_create='+(_0x230c68||0x0)+_0x963416(0x191)+(_0x5d8c94||0x0):'';this[_0x963416(0x1d1)]['debug']('[PASSTHROUGH]\x20Usage:\x20input='+_0x54510a+',\x20output='+_0x512633+_0x3804f1+_0x963416(0x1ef)+_0x81d62b);try{await appendUsageEntry(_0x45ec0c,_0x3a46db);}catch(_0xaf9675){this['logger']['error'](_0x963416(0x16b),_0xaf9675);}}[a78_0x2ff2bf(0x18a)](){const _0x36ef15=a78_0x2ff2bf;if(this['config'][_0x36ef15(0x1e9)][_0x36ef15(0x1c4)]!=='oauth')return;this[_0x36ef15(0x19b)]=setInterval(()=>{const _0x3a5661=_0x36ef15;void this[_0x3a5661(0x1d2)]();},TOKEN_REFRESH_INTERVAL_MS),this[_0x36ef15(0x19b)][_0x36ef15(0x1db)]();}async[a78_0x2ff2bf(0x1d2)](){const _0xd32e80=a78_0x2ff2bf,{auth:_0x192e8d}=this[_0xd32e80(0x167)];if(_0x192e8d[_0xd32e80(0x1c4)]!==_0xd32e80(0x1b2))return;const _0x58372e=!_0x192e8d[_0xd32e80(0x155)]||_0x192e8d[_0xd32e80(0x155)]<Date[_0xd32e80(0x1c0)]()+TOKEN_EXPIRY_BUFFER_MS;if(!_0x58372e)return;try{const _0x7bd446=await refreshAccessToken(_0x192e8d[_0xd32e80(0x1d3)],_0x192e8d[_0xd32e80(0x160)]);_0x192e8d[_0xd32e80(0x15b)]=_0x7bd446[_0xd32e80(0x177)],_0x192e8d[_0xd32e80(0x160)]=_0x7bd446['refresh_token'],_0x192e8d['expiresAt']=_0x7bd446[_0xd32e80(0x1e3)],await saveOAuthTokens(_0x7bd446,this[_0xd32e80(0x167)][_0xd32e80(0x18c)]),this[_0xd32e80(0x1d1)][_0xd32e80(0x1b8)]('[PASSTHROUGH]\x20OAuth\x20token\x20refreshed\x20successfully');}catch(_0x2b1dfa){this[_0xd32e80(0x1d1)][_0xd32e80(0x188)]('[PASSTHROUGH]\x20OAuth\x20token\x20refresh\x20failed:',_0x2b1dfa);}}async['start'](){const _0x28bc56=a78_0x2ff2bf,_0x48ade6=this[_0x28bc56(0x167)][_0x28bc56(0x1a6)]??0x64;for(let _0x1881b1=0x0;_0x1881b1<_0x48ade6;_0x1881b1++){const _0x54a87c=this[_0x28bc56(0x167)][_0x28bc56(0x187)]+_0x1881b1;try{await this[_0x28bc56(0x1b0)][_0x28bc56(0x1d7)]({'port':_0x54a87c,'host':_0x28bc56(0x16a)}),this[_0x28bc56(0x154)]=_0x54a87c,this[_0x28bc56(0x1d1)]['info']('Pass-through\x20proxy\x20server\x20started\x20on\x20port\x20'+_0x54a87c),this[_0x28bc56(0x1d1)]['info'](_0x28bc56(0x19d)+this[_0x28bc56(0x167)][_0x28bc56(0x1ed)]),this[_0x28bc56(0x18a)]();return;}catch(_0xdf109e){const _0x1b305f=_0xdf109e instanceof Error&&'code'in _0xdf109e&&_0xdf109e[_0x28bc56(0x1ce)]===_0x28bc56(0x1d6);if(!_0x1b305f)throw _0xdf109e;this['logger'][_0x28bc56(0x1dd)]('Port\x20'+_0x54a87c+_0x28bc56(0x182)),this[_0x28bc56(0x1ac)]();}}const _0x275b18=this[_0x28bc56(0x167)][_0x28bc56(0x187)]+_0x48ade6-0x1;throw new Error(_0x28bc56(0x1aa)+this[_0x28bc56(0x167)][_0x28bc56(0x187)]+_0x28bc56(0x1c6)+_0x275b18);}async[a78_0x2ff2bf(0x1ab)](){const _0x1bc252=a78_0x2ff2bf;this['refreshTimer']&&(clearInterval(this[_0x1bc252(0x19b)]),this[_0x1bc252(0x19b)]=undefined),await this[_0x1bc252(0x1b0)][_0x1bc252(0x1a1)](),this['logger'][_0x1bc252(0x1b8)](_0x1bc252(0x1c8));}[a78_0x2ff2bf(0x192)](){const _0x35aae3=a78_0x2ff2bf;return _0x35aae3(0x1a8)+this[_0x35aae3(0x195)];}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a79_0x3efb67=a79_0x1b4e;(function(_0x225c7f,_0x90aac4){const _0x949002=a79_0x1b4e,_0x3eaf2f=_0x225c7f();while(!![]){try{const _0x3a1b28=-parseInt(_0x949002(0xae))/0x1+-parseInt(_0x949002(0xbf))/0x2*(parseInt(_0x949002(0xab))/0x3)+-parseInt(_0x949002(0xac))/0x4*(-parseInt(_0x949002(0x9c))/0x5)+-parseInt(_0x949002(0xa0))/0x6+-parseInt(_0x949002(0xb3))/0x7+-parseInt(_0x949002(0xc0))/0x8+parseInt(_0x949002(0xa7))/0x9;if(_0x3a1b28===_0x90aac4)break;else _0x3eaf2f['push'](_0x3eaf2f['shift']());}catch(_0x52969d){_0x3eaf2f['push'](_0x3eaf2f['shift']());}}}(a79_0x4192,0x656ff));export function parseSSEChunk(_0x3efa15){const _0x549ec3=a79_0x1b4e,_0xda103b=[],_0x4bb933=_0x3efa15[_0x549ec3(0xbb)]('\x0a\x0a'),_0x113bf4=_0x4bb933[_0x549ec3(0xb7)]()||'';for(const _0x2d5e15 of _0x4bb933){if(!_0x2d5e15[_0x549ec3(0xb4)]())continue;const _0x258a2b={},_0x321c18=_0x2d5e15['split']('\x0a');for(const _0x4b5efb of _0x321c18){if(_0x4b5efb[_0x549ec3(0xa4)](_0x549ec3(0xa6)))_0x258a2b['event']=_0x4b5efb[_0x549ec3(0xaa)](0x7);else _0x4b5efb[_0x549ec3(0xa4)](_0x549ec3(0xad))&&(_0x258a2b[_0x549ec3(0xb2)]=_0x4b5efb[_0x549ec3(0xaa)](0x6));}(_0x258a2b['event']||_0x258a2b[_0x549ec3(0xb2)])&&_0xda103b[_0x549ec3(0x9e)](_0x258a2b);}return{'events':_0xda103b,'remaining':_0x113bf4};}export function extractMessageStartUsage(_0x1169b5){const _0x478681=a79_0x1b4e;try{const _0xc648d2=JSON[_0x478681(0xa3)](_0x1169b5);if(_0xc648d2[_0x478681(0xb1)]==='message_start'&&_0xc648d2[_0x478681(0xb0)]?.[_0x478681(0xbe)]){const _0x1cb5b5=_0xc648d2[_0x478681(0xb0)][_0x478681(0xbe)];return{'inputTokens':_0x1cb5b5['input_tokens']||0x0,'outputTokens':_0x1cb5b5[_0x478681(0xba)]||0x0,'cacheCreationInputTokens':_0x1cb5b5['cache_creation_input_tokens'],'cacheReadInputTokens':_0x1cb5b5[_0x478681(0xaf)]};}}catch{}return null;}export function extractMessageDeltaUsage(_0xf0afe9){const _0x3af68e=a79_0x1b4e;try{const _0x5c5a31=JSON[_0x3af68e(0xa3)](_0xf0afe9);if(_0x5c5a31[_0x3af68e(0xb1)]===_0x3af68e(0xa9)&&_0x5c5a31['usage']){const _0x3396ec=_0x5c5a31[_0x3af68e(0xbe)];return{'inputTokens':_0x3396ec[_0x3af68e(0xb6)]||0x0,'outputTokens':_0x3396ec[_0x3af68e(0xba)]||0x0,'cacheCreationInputTokens':_0x3396ec[_0x3af68e(0xa2)],'cacheReadInputTokens':_0x3396ec['cache_read_input_tokens']};}}catch{}return null;}export function extractUsageFromEvent(_0xd367af){const _0x1a8b92=a79_0x1b4e;if(!_0xd367af[_0x1a8b92(0xb2)])return null;if(_0xd367af[_0x1a8b92(0xa1)]===_0x1a8b92(0x9a))return extractMessageStartUsage(_0xd367af['data']);if(_0xd367af['event']==='message_delta')return extractMessageDeltaUsage(_0xd367af['data']);return null;}export class SSEUsageTracker{[a79_0x3efb67(0xb9)]=0x0;['outputTokens']=0x0;[a79_0x3efb67(0xbd)];[a79_0x3efb67(0xbc)];[a79_0x3efb67(0x9d)]='';[a79_0x3efb67(0xb8)](_0x14efde){const _0x20c952=a79_0x3efb67;this[_0x20c952(0xb9)]=Math['max'](this['inputTokens'],_0x14efde[_0x20c952(0xb9)]),this[_0x20c952(0x9b)]=Math[_0x20c952(0xb5)](this[_0x20c952(0x9b)],_0x14efde[_0x20c952(0x9b)]),_0x14efde[_0x20c952(0xbd)]!==undefined&&(this[_0x20c952(0xbd)]=Math[_0x20c952(0xb5)](this[_0x20c952(0xbd)]??0x0,_0x14efde['cacheCreationInputTokens'])),_0x14efde[_0x20c952(0xbc)]!==undefined&&(this['cacheReadInputTokens']=Math[_0x20c952(0xb5)](this['cacheReadInputTokens']??0x0,_0x14efde[_0x20c952(0xbc)]));}[a79_0x3efb67(0xa5)];[a79_0x3efb67(0x9f)](_0x8f24ec){const _0x5a849d=a79_0x3efb67;this[_0x5a849d(0x9d)]+=_0x8f24ec;const {events:_0x240d76,remaining:_0x5ce1b9}=parseSSEChunk(this['buffer']);this[_0x5a849d(0x9d)]=_0x5ce1b9;for(const _0xe58f4 of _0x240d76){const _0x22ee73=extractUsageFromEvent(_0xe58f4);_0x22ee73&&(this[_0x5a849d(0xa5)]?.(_0xe58f4[_0x5a849d(0xa1)]||_0x5a849d(0xa8),_0xe58f4[_0x5a849d(0xb2)]||'',_0x22ee73),this[_0x5a849d(0xb8)](_0x22ee73));}return _0x8f24ec;}['flush'](){const _0x371e4d=a79_0x3efb67;if(this[_0x371e4d(0x9d)][_0x371e4d(0xb4)]()){const {events:_0x5417a2}=parseSSEChunk(this[_0x371e4d(0x9d)]+'\x0a\x0a');for(const _0x5ece2a of _0x5417a2){const _0x1aee0d=extractUsageFromEvent(_0x5ece2a);_0x1aee0d&&this[_0x371e4d(0xb8)](_0x1aee0d);}this[_0x371e4d(0x9d)]='';}}['getUsage'](){const _0x309f6f=a79_0x3efb67;return{'inputTokens':this['inputTokens'],'outputTokens':this['outputTokens'],'cacheCreationInputTokens':this[_0x309f6f(0xbd)],'cacheReadInputTokens':this[_0x309f6f(0xbc)]};}['reset'](){const _0x1164b3=a79_0x3efb67;this[_0x1164b3(0xb9)]=0x0,this['outputTokens']=0x0,this['cacheCreationInputTokens']=undefined,this[_0x1164b3(0xbc)]=undefined,this['buffer']='';}}function a79_0x1b4e(_0x3023a4,_0x3441a5){_0x3023a4=_0x3023a4-0x9a;const _0x419242=a79_0x4192();let _0x1b4e58=_0x419242[_0x3023a4];return _0x1b4e58;}function a79_0x4192(){const _0x100ab8=['pop','updateFromUsage','inputTokens','output_tokens','split','cacheReadInputTokens','cacheCreationInputTokens','usage','1258004qGwIKS','4504792qnSaBU','message_start','outputTokens','154735AyFeez','buffer','push','processChunk','2539032BgLlkK','event','cache_creation_input_tokens','parse','startsWith','onRawUsage','event:\x20','18209106aoRlRN','unknown','message_delta','slice','3nWxXea','56mHyFCI','data:\x20','96212nUkeCT','cache_read_input_tokens','message','type','data','2306640iDAYAG','trim','max','input_tokens'];a79_0x4192=function(){return _0x100ab8;};return a79_0x4192();}
|