@treasuredata/tdx 2026.4.9 → 2026.4.11
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.d.ts.map +1 -1
- package/dist/commands/claude-command.js +1 -1
- package/dist/commands/claude-command.js.map +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.d.ts +52 -0
- package/dist/sdk/workspace/git.d.ts.map +1 -1
- package/dist/sdk/workspace/git.js +1 -1
- package/dist/sdk/workspace/git.js.map +1 -1
- package/dist/sdk/workspace/index.d.ts +14 -0
- package/dist/sdk/workspace/index.d.ts.map +1 -1
- package/dist/sdk/workspace/index.js +1 -1
- package/dist/sdk/workspace/index.js.map +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 +2 -1
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x4fd386,_0xc8bdf0){var _0x36eb26=a70_0x53a6,_0x2a6f0e=_0x4fd386();while(!![]){try{var _0x3bd457=parseInt(_0x36eb26(0x17b))/0x1*(-parseInt(_0x36eb26(0x179))/0x2)+parseInt(_0x36eb26(0x175))/0x3*(-parseInt(_0x36eb26(0x17c))/0x4)+parseInt(_0x36eb26(0x176))/0x5*(parseInt(_0x36eb26(0x174))/0x6)+parseInt(_0x36eb26(0x17f))/0x7*(-parseInt(_0x36eb26(0x177))/0x8)+parseInt(_0x36eb26(0x178))/0x9+-parseInt(_0x36eb26(0x17e))/0xa*(-parseInt(_0x36eb26(0x17a))/0xb)+parseInt(_0x36eb26(0x17d))/0xc*(-parseInt(_0x36eb26(0x180))/0xd);if(_0x3bd457===_0xc8bdf0)break;else _0x2a6f0e['push'](_0x2a6f0e['shift']());}catch(_0x19e436){_0x2a6f0e['push'](_0x2a6f0e['shift']());}}}(a70_0x5697,0xc1527));export*from'./sdk/types/index.js';export*from'./core/config.js';export*from'./core/auth.js';export*from'./sdk/client/http-client.js';export*from'./sdk/client/td-api-client.js';export{TrinoApiClient}from'./sdk/client/trino-api-client.js';export*from'./sdk/client/rate-limiter.js';export*from'./sdk/types/trino.js';export*from'./commands/command.js';export*from'./commands/query-command.js';export*from'./commands/databases.js';export*from'./commands/tables.js';export*from'./commands/segments.js';function a70_0x5697(){var _0x2d2bc7=['1414560qZAvXI','10dThYTw','481201tbOSYL','65sSwhpH','7090050NczsPB','323682GmbnbK','5NZDVJU','72PMFkCy','4684536OQpRwW','83288fqKjvI','13519649MppAps','12lRUOGK','16tBYZqE'];a70_0x5697=function(){return _0x2d2bc7;};return a70_0x5697();}export*from'./commands/activations.js';export*from'./commands/show.js';function a70_0x53a6(_0x2a7b82,_0x20bd89){_0x2a7b82=_0x2a7b82-0x174;var _0x56975d=a70_0x5697();var _0x53a684=_0x56975d[_0x2a7b82];return _0x53a684;}export*from'./commands/describe.js';export*from'./sdk/index.js';
|
package/dist/mcp/server.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x3bdd9a,_0x1efca2){const _0x2db40a=a71_0x586c,_0x17fca9=_0x3bdd9a();while(!![]){try{const _0x1604f9=parseInt(_0x2db40a(0x1b3))/0x1+parseInt(_0x2db40a(0x1af))/0x2*(-parseInt(_0x2db40a(0x18f))/0x3)+parseInt(_0x2db40a(0x190))/0x4+parseInt(_0x2db40a(0x18e))/0x5*(parseInt(_0x2db40a(0x19d))/0x6)+parseInt(_0x2db40a(0x1a6))/0x7+parseInt(_0x2db40a(0x19c))/0x8*(-parseInt(_0x2db40a(0x194))/0x9)+-parseInt(_0x2db40a(0x1b1))/0xa*(-parseInt(_0x2db40a(0x197))/0xb);if(_0x1604f9===_0x1efca2)break;else _0x17fca9['push'](_0x17fca9['shift']());}catch(_0x5d032c){_0x17fca9['push'](_0x17fca9['shift']());}}}(a71_0x1023,0xd2366));function a71_0x1023(){const _0x28e911=['success','path','env','147984KiwdNP','12Uzlonl','join','description','optional','**\x20(','describe','output','once','\x0a\x0aExamples:\x0a','1659441xJSGwy','SIGINT','map','Context','Data','Failed\x20to\x20create\x20item','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.','stdin','SIGTERM','26326XxVPUv','tdx_run','60ENEodl','No\x20commands\x20found\x20matching\x20\x22','1342434ngdjJz','\x0a\x0a---\x0a\x0a','registerTool','Utilities','work_create_item','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.','close','CDP','text','name','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.','shape','array','length','connect','category','1756415niAemA','177CcEFLu','1620368jwMwyB','string','enum','tdx','612VSEdeZ','Command\x20completed\x20successfully','error','381986koEZFF','1.0.0'];a71_0x1023=function(){return _0x28e911;};return a71_0x1023();}function a71_0x586c(_0x27e324,_0x55769e){_0x27e324=_0x27e324-0x18d;const _0x1023f3=a71_0x1023();let _0x586c42=_0x1023f3[_0x27e324];return _0x586c42;}import{McpServer}from'@modelcontextprotocol/sdk/server/mcp.js';import{StdioServerTransport}from'@modelcontextprotocol/sdk/server/stdio.js';import{z}from'zod';import{executeTdxRun,searchCommands,executeWorkCreateItem,WorkCreateItemInputSchema}from'./tools/index.js';export function createMCPServer(_0x53e1a2={}){const _0x5ef25f=a71_0x586c,_0x54da86=new McpServer({'name':_0x5ef25f(0x193),'version':_0x5ef25f(0x198)});return _0x54da86[_0x5ef25f(0x1b5)](_0x5ef25f(0x1b0),{'description':_0x5ef25f(0x1bd),'inputSchema':{'args':z[_0x5ef25f(0x1bf)](z[_0x5ef25f(0x191)]())['describe']('Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])')}},async({args:_0x4fcf54})=>{const _0x4b5819=_0x5ef25f,_0x28efc1=await executeTdxRun({'args':_0x4fcf54},_0x53e1a2[_0x4b5819(0x19b)]||{});return _0x28efc1[_0x4b5819(0x199)]?{'content':[{'type':_0x4b5819(0x1bb),'text':_0x28efc1[_0x4b5819(0x1a3)]||_0x4b5819(0x195)}]}:{'content':[{'type':'text','text':_0x28efc1[_0x4b5819(0x196)]||_0x28efc1['output']||'Command\x20failed'}],'isError':!![]};}),_0x54da86[_0x5ef25f(0x1b5)]('tdx_search',{'description':_0x5ef25f(0x1ac),'inputSchema':{'query':z['string']()[_0x5ef25f(0x1a2)]('Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)'),'category':z[_0x5ef25f(0x192)]([_0x5ef25f(0x1aa),_0x5ef25f(0x1ba),'AI',_0x5ef25f(0x1a9),_0x5ef25f(0x1b6)])[_0x5ef25f(0x1a0)]()[_0x5ef25f(0x1a2)]('Optional\x20filter\x20by\x20category')}},async({query:_0x3e18b2,category:_0xc1fd53})=>{const _0x12f555=_0x5ef25f,_0x39a06a=searchCommands({'query':_0x3e18b2,'category':_0xc1fd53});if(_0x39a06a[_0x12f555(0x1c0)]===0x0)return{'content':[{'type':'text','text':_0x12f555(0x1b2)+_0x3e18b2+'\x22'}]};const _0x2efed5=_0x39a06a[_0x12f555(0x1a8)](_0x568922=>{const _0x28e171=_0x12f555,_0x19b50e=_0x568922['examples']['map'](_0x123f4e=>'\x20\x20'+_0x123f4e)[_0x28e171(0x19e)]('\x0a');return'**'+_0x568922[_0x28e171(0x1bc)]+_0x28e171(0x1a1)+_0x568922[_0x28e171(0x18d)]+')\x0a'+_0x568922[_0x28e171(0x19f)]+_0x28e171(0x1a5)+_0x19b50e;})[_0x12f555(0x19e)](_0x12f555(0x1b4));return{'content':[{'type':_0x12f555(0x1bb),'text':_0x2efed5}]};}),_0x54da86[_0x5ef25f(0x1b5)](_0x5ef25f(0x1b7),{'description':_0x5ef25f(0x1b8),'inputSchema':WorkCreateItemInputSchema[_0x5ef25f(0x1be)]},async({title:_0x30ae3f,kind:_0x5c9e27,status:_0x4bc5a2,tags:_0x569b81,priority:_0x197fe3,body:_0x5ec0a8,template:_0x3151ba,github:_0x25e24c,jira:_0x11a0b7})=>{const _0x2e2e4a=_0x5ef25f,_0xe0c921=executeWorkCreateItem({'title':_0x30ae3f,'kind':_0x5c9e27,'status':_0x4bc5a2,'tags':_0x569b81,'priority':_0x197fe3,'body':_0x5ec0a8,'template':_0x3151ba,'github':_0x25e24c,'jira':_0x11a0b7});return _0xe0c921[_0x2e2e4a(0x199)]?{'content':[{'type':_0x2e2e4a(0x1bb),'text':JSON['stringify']({'path':_0xe0c921[_0x2e2e4a(0x19a)],'slug':_0xe0c921['slug']})}]}:{'content':[{'type':'text','text':_0xe0c921[_0x2e2e4a(0x196)]||_0x2e2e4a(0x1ab)}],'isError':!![]};}),_0x54da86;}export async function startMCPServer(_0x275a8e={}){const _0x3483dc=a71_0x586c,_0x1a44d5=createMCPServer(_0x275a8e),_0x4bd5a5=new StdioServerTransport();return await _0x1a44d5[_0x3483dc(0x1c1)](_0x4bd5a5),new Promise(_0x422caf=>{const _0x3be921=_0x3483dc;let _0x4be4ae=![];const _0xa4fcd7=async()=>{if(_0x4be4ae)return;_0x4be4ae=!![],await _0x1a44d5['close'](),_0x422caf();};process[_0x3be921(0x1a4)](_0x3be921(0x1a7),_0xa4fcd7),process[_0x3be921(0x1a4)](_0x3be921(0x1ae),_0xa4fcd7),process[_0x3be921(0x1ad)][_0x3be921(0x1a4)](_0x3be921(0x1b9),_0xa4fcd7);});}
|
package/dist/mcp/tools/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x5d2e0a,_0x1e8c56){var _0x3497ff=a72_0x1aa9,_0x5ba934=_0x5d2e0a();while(!![]){try{var _0x4e319f=-parseInt(_0x3497ff(0x13b))/0x1+-parseInt(_0x3497ff(0x132))/0x2+-parseInt(_0x3497ff(0x137))/0x3*(-parseInt(_0x3497ff(0x136))/0x4)+-parseInt(_0x3497ff(0x134))/0x5+parseInt(_0x3497ff(0x135))/0x6+-parseInt(_0x3497ff(0x139))/0x7*(-parseInt(_0x3497ff(0x133))/0x8)+parseInt(_0x3497ff(0x13a))/0x9*(parseInt(_0x3497ff(0x138))/0xa);if(_0x4e319f===_0x1e8c56)break;else _0x5ba934['push'](_0x5ba934['shift']());}catch(_0x34ae7f){_0x5ba934['push'](_0x5ba934['shift']());}}}(a72_0x3380,0xd654a));function a72_0x3380(){var _0x10b2ae=['1448Fnsunr','6963875pKarxr','7460436MmZaBb','4JcuiqB','3549843epBEHx','891690BjiKwv','8834CgQyvC','117lEVsLc','1344592ssSiqp','398082ddJOmD'];a72_0x3380=function(){return _0x10b2ae;};return a72_0x3380();}export{executeTdxRun,TdxRunInputSchema}from'./tdx-run.js';export{searchCommands,TdxSearchInputSchema}from'./tdx-search.js';function a72_0x1aa9(_0x641968,_0x187ae0){_0x641968=_0x641968-0x132;var _0x3380c1=a72_0x3380();var _0x1aa987=_0x3380c1[_0x641968];return _0x1aa987;}export{executeWorkCreateItem,WorkCreateItemInputSchema}from'./work-create-item.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a73_0x12d6(_0x211a72,_0xf4ecae){_0x211a72=_0x211a72-0x1eb;const _0x2b8933=a73_0x2b89();let _0x12d607=_0x2b8933[_0x211a72];return _0x12d607;}const a73_0x14361a=a73_0x12d6;(function(_0x558e9f,_0x55a0a3){const _0x3f06fd=a73_0x12d6,_0xca79e5=_0x558e9f();while(!![]){try{const _0x1d4dba=parseInt(_0x3f06fd(0x1f0))/0x1+parseInt(_0x3f06fd(0x204))/0x2+-parseInt(_0x3f06fd(0x1f3))/0x3*(parseInt(_0x3f06fd(0x20b))/0x4)+-parseInt(_0x3f06fd(0x1fe))/0x5+parseInt(_0x3f06fd(0x1f8))/0x6*(-parseInt(_0x3f06fd(0x203))/0x7)+parseInt(_0x3f06fd(0x1ee))/0x8*(-parseInt(_0x3f06fd(0x210))/0x9)+parseInt(_0x3f06fd(0x1f2))/0xa*(parseInt(_0x3f06fd(0x202))/0xb);if(_0x1d4dba===_0x55a0a3)break;else _0xca79e5['push'](_0xca79e5['shift']());}catch(_0x432927){_0xca79e5['push'](_0xca79e5['shift']());}}}(a73_0x2b89,0x3c909));import{spawn}from'child_process';import{dirname,join}from'path';import{existsSync}from'fs';import{z}from'zod';import{isBlockedCommand,getBlockedReason,formatOutput}from'../utils.js';export const TdxRunInputSchema=z[a73_0x14361a(0x20c)]({'args':z[a73_0x14361a(0x208)](z[a73_0x14361a(0x1f7)]())[a73_0x14361a(0x1fc)](a73_0x14361a(0x20d))});const DEFAULT_TIMEOUT_MS=0xf*0x3c*0x3e8;function a73_0x2b89(){const _0x74d56e=['PATH','7898090STqeXx','81gwkKRv','stdout','message','platform','string','2628354pUMChi','--json','true','Command\x20timed\x20out\x20after\x2015\x20minutes.\x20For\x20long-running\x20queries,\x20use\x20job\x20submit\x20instead.','describe','Failed\x20to\x20spawn\x20tdx:\x20','1637620UzAIKw','SIGTERM','error','resourcesPath','11Vmukuh','7HsWbna','843192WwbGdP','node','pipe','--no-color','array','win32','close','67460UezCdM','object','Command\x20and\x20arguments\x20as\x20array\x20(e.g.,\x20[\x22query\x22,\x20\x22SELECT\x20...\x22])','This\x20command\x20is\x20not\x20allowed\x20via\x20MCP','execPath','9tJRLKb','kill','stderr','toString','1063088IWWLfH','data','390492EhCeRz'];a73_0x2b89=function(){return _0x74d56e;};return a73_0x2b89();}function getNodeBinDir(){const _0x396e1a=a73_0x14361a,_0x891c44=process[_0x396e1a(0x201)];if(_0x891c44){const _0x4ca74c=join(_0x891c44,_0x396e1a(0x205)),_0x2babaf=process[_0x396e1a(0x1f6)]==='win32'?'node.exe':_0x396e1a(0x205);if(existsSync(join(_0x4ca74c,_0x2babaf)))return _0x4ca74c;}return dirname(process[_0x396e1a(0x20f)]);}export async function executeTdxRun(_0x20a4e9,_0x2f92bb){const _0x2d3585=a73_0x14361a,{args:_0x4da7f8}=_0x20a4e9;if(isBlockedCommand(_0x4da7f8)){const _0x39c8c6=getBlockedReason(_0x4da7f8);return{'success':![],'output':'','error':_0x39c8c6||_0x2d3585(0x20e),'exitCode':0x1};}const _0x23ac79=[_0x2d3585(0x1f9),_0x2d3585(0x207),..._0x4da7f8],_0x4534f2=getNodeBinDir(),_0x30136f=process[_0x2d3585(0x1f6)]===_0x2d3585(0x209)?';':':',_0x8b28dc=_0x2f92bb[_0x2d3585(0x1f1)]??process.env.PATH??'',_0x3753a2=''+_0x4534f2+_0x30136f+_0x8b28dc;return new Promise(_0x20bed6=>{const _0x128856=_0x2d3585,_0x12e6e3=spawn('tdx',_0x23ac79,{'env':{...process.env,..._0x2f92bb,'PATH':_0x3753a2,'CI':_0x128856(0x1fa)},'stdio':['ignore',_0x128856(0x206),_0x128856(0x206)]});let _0x1ae6f1='',_0x1ac771='',_0x2913c2=![];const _0x2e8e1f=setTimeout(()=>{const _0x478629=_0x128856;_0x2913c2=!![],_0x12e6e3[_0x478629(0x1eb)](_0x478629(0x1ff));},DEFAULT_TIMEOUT_MS);_0x12e6e3[_0x128856(0x1f4)]['on'](_0x128856(0x1ef),_0x37a02b=>{const _0xb5dd3f=_0x128856;_0x1ae6f1+=_0x37a02b[_0xb5dd3f(0x1ed)]();}),_0x12e6e3[_0x128856(0x1ec)]['on']('data',_0x389cfe=>{const _0x1a271d=_0x128856;_0x1ac771+=_0x389cfe[_0x1a271d(0x1ed)]();}),_0x12e6e3['on'](_0x128856(0x200),_0x156b4e=>{const _0x48623c=_0x128856;clearTimeout(_0x2e8e1f),_0x20bed6({'success':![],'output':'','error':_0x48623c(0x1fd)+_0x156b4e[_0x48623c(0x1f5)],'exitCode':0x1});}),_0x12e6e3['on'](_0x128856(0x20a),_0x11fe36=>{const _0x1e4ee9=_0x128856;clearTimeout(_0x2e8e1f);if(_0x2913c2){_0x20bed6({'success':![],'output':formatOutput(_0x1ae6f1),'error':_0x1e4ee9(0x1fb),'exitCode':0x7c});return;}const _0x205a8f=_0x11fe36??0x1,_0x423c02=_0x205a8f===0x0,_0x21ecf2=formatOutput(_0x1ae6f1||_0x1ac771),_0x28b898=!_0x423c02&&_0x1ac771?formatOutput(_0x1ac771):undefined;_0x20bed6({'success':_0x423c02,'output':_0x21ecf2,'error':_0x28b898,'exitCode':_0x205a8f});});});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a74_0x455454=a74_0x413e;(function(_0x16ac5c,_0x261589){const _0x370bce=a74_0x413e,_0x24026b=_0x16ac5c();while(!![]){try{const _0x4668db=-parseInt(_0x370bce(0x10f))/0x1+parseInt(_0x370bce(0x14f))/0x2+parseInt(_0x370bce(0xfa))/0x3+-parseInt(_0x370bce(0x135))/0x4+parseInt(_0x370bce(0x98))/0x5+parseInt(_0x370bce(0xa9))/0x6+-parseInt(_0x370bce(0x8f))/0x7;if(_0x4668db===_0x261589)break;else _0x24026b['push'](_0x24026b['shift']());}catch(_0x159eb4){_0x24026b['push'](_0x24026b['shift']());}}}(a74_0x52fd,0xc86ee));import{z}from'zod';const COMMANDS=[{'name':a74_0x455454(0x14c),'description':'List\x20all\x20databases','category':'Data','keywords':[a74_0x455454(0x162),a74_0x455454(0xd9),'db',a74_0x455454(0x7b),'show',a74_0x455454(0x88)],'examples':[a74_0x455454(0x7c),a74_0x455454(0xc0),a74_0x455454(0x83)]},{'name':a74_0x455454(0x156),'description':a74_0x455454(0x152),'category':a74_0x455454(0xe4),'keywords':[a74_0x455454(0xf8),'tables',a74_0x455454(0x7b),'show','schema'],'examples':[a74_0x455454(0x109),'tdx\x20tables\x20mydb.*',a74_0x455454(0x72)]},{'name':'show','description':a74_0x455454(0x100),'category':a74_0x455454(0xe4),'keywords':['show',a74_0x455454(0xf4),a74_0x455454(0xca),a74_0x455454(0x13a),a74_0x455454(0x103),a74_0x455454(0x121),a74_0x455454(0xdb)],'examples':['tdx\x20show\x20mydb.users',a74_0x455454(0x115)]},{'name':'describe','description':a74_0x455454(0xe7),'category':a74_0x455454(0xe4),'keywords':[a74_0x455454(0x11b),a74_0x455454(0x75),a74_0x455454(0x13e),'types',a74_0x455454(0x124),a74_0x455454(0xe2)],'examples':[a74_0x455454(0x80),a74_0x455454(0xfe)]},{'name':a74_0x455454(0xd8),'description':a74_0x455454(0xbb),'category':a74_0x455454(0xe4),'keywords':[a74_0x455454(0xd8),a74_0x455454(0x126),a74_0x455454(0x73),a74_0x455454(0xda),'execute',a74_0x455454(0x9c),a74_0x455454(0xce)],'examples':[a74_0x455454(0x8c),a74_0x455454(0xbc)]},{'name':'job\x20list','description':a74_0x455454(0x12a),'category':a74_0x455454(0xe4),'keywords':['job',a74_0x455454(0xdf),a74_0x455454(0x7b),'history','queries'],'examples':[a74_0x455454(0xcc),a74_0x455454(0xff),a74_0x455454(0xcf)]},{'name':a74_0x455454(0x94),'description':a74_0x455454(0x148),'category':a74_0x455454(0xe4),'keywords':['job',a74_0x455454(0x12b),'details',a74_0x455454(0xb2),'info'],'examples':[a74_0x455454(0xaa)]},{'name':a74_0x455454(0x11d),'description':a74_0x455454(0xb3),'category':a74_0x455454(0xe4),'keywords':['job',a74_0x455454(0xcd),a74_0x455454(0xd6),'download'],'examples':[a74_0x455454(0x71)]},{'name':'job\x20kill','description':a74_0x455454(0x8d),'category':a74_0x455454(0xe4),'keywords':[a74_0x455454(0x112),a74_0x455454(0x132),'cancel','stop','abort'],'examples':['tdx\x20job\x20kill\x2012345']},{'name':'workflow\x20projects','description':a74_0x455454(0x85),'category':a74_0x455454(0xe4),'keywords':[a74_0x455454(0x9f),a74_0x455454(0xc7),'digdag','list'],'examples':[a74_0x455454(0xc3),a74_0x455454(0x122)]},{'name':a74_0x455454(0xea),'description':a74_0x455454(0xdc),'category':a74_0x455454(0xe4),'keywords':['workflow',a74_0x455454(0x155),'runs',a74_0x455454(0x108)],'examples':[a74_0x455454(0x141),a74_0x455454(0xc6)]},{'name':'workflow\x20logs','description':a74_0x455454(0xbd),'category':a74_0x455454(0xe4),'keywords':[a74_0x455454(0x9f),a74_0x455454(0x82),a74_0x455454(0xd6),'debug'],'examples':['tdx\x20workflow\x20logs\x20<attempt_id>']},{'name':'workflow\x20run','description':'Run\x20a\x20workflow','category':a74_0x455454(0xe4),'keywords':[a74_0x455454(0x9f),a74_0x455454(0x9c),a74_0x455454(0x101),a74_0x455454(0x119),a74_0x455454(0x146)],'examples':[a74_0x455454(0xe9)]},{'name':'segment\x20list','description':a74_0x455454(0x114),'category':a74_0x455454(0xd1),'keywords':[a74_0x455454(0x7a),a74_0x455454(0x12c),a74_0x455454(0x84),'list',a74_0x455454(0x150)],'examples':['tdx\x20segment\x20list','tdx\x20segments',a74_0x455454(0x8b)]},{'name':a74_0x455454(0xd0),'description':a74_0x455454(0x96),'category':a74_0x455454(0xd1),'keywords':['segment','show',a74_0x455454(0x14d),a74_0x455454(0x91),'view'],'examples':[a74_0x455454(0x143)]},{'name':a74_0x455454(0xb8),'description':a74_0x455454(0x10c),'category':a74_0x455454(0xd1),'keywords':['segment',a74_0x455454(0x126),a74_0x455454(0xd8),a74_0x455454(0x14b)],'examples':['tdx\x20segment\x20sql\x20\x22My\x20Segment\x22']},{'name':a74_0x455454(0xc9),'description':a74_0x455454(0x10e),'category':a74_0x455454(0xd1),'keywords':[a74_0x455454(0x7a),a74_0x455454(0xef),a74_0x455454(0x117),'export',a74_0x455454(0xde)],'examples':[a74_0x455454(0xe1)]},{'name':'segment\x20push','description':a74_0x455454(0x159),'category':a74_0x455454(0xd1),'keywords':[a74_0x455454(0x7a),a74_0x455454(0x12d),a74_0x455454(0x118),a74_0x455454(0xb7),a74_0x455454(0xad),a74_0x455454(0x13f)],'examples':[a74_0x455454(0xa3),a74_0x455454(0x160)]},{'name':a74_0x455454(0x142),'description':a74_0x455454(0xa4),'category':a74_0x455454(0xd1),'keywords':[a74_0x455454(0x7a),a74_0x455454(0x13c),a74_0x455454(0xf1),'columns',a74_0x455454(0x75)],'examples':[a74_0x455454(0xab),a74_0x455454(0xbf)]},{'name':'parent-segment\x20list','description':a74_0x455454(0xd7),'category':a74_0x455454(0xd1),'keywords':[a74_0x455454(0xb5),a74_0x455454(0x7a),a74_0x455454(0x153),'list',a74_0x455454(0xf7)],'examples':['tdx\x20parent-segment\x20list',a74_0x455454(0xed)]},{'name':'parent-segment\x20pull','description':a74_0x455454(0x12e),'category':'CDP','keywords':[a74_0x455454(0xb5),a74_0x455454(0x7a),'pull',a74_0x455454(0x117),a74_0x455454(0x129)],'examples':[a74_0x455454(0x116),a74_0x455454(0xe3)]},{'name':'parent-segment\x20push','description':'Push\x20parent\x20segment\x20definition\x20from\x20YAML','category':'CDP','keywords':[a74_0x455454(0xb5),'segment',a74_0x455454(0x12d),a74_0x455454(0x118),a74_0x455454(0xad)],'examples':[a74_0x455454(0xf9),a74_0x455454(0x86)]},{'name':a74_0x455454(0xe5),'description':a74_0x455454(0x161),'category':a74_0x455454(0xd1),'keywords':['parent',a74_0x455454(0x7a),a74_0x455454(0x139),'check',a74_0x455454(0x89)],'examples':['tdx\x20parent-segment\x20validate\x20parent.yaml',a74_0x455454(0xba)]},{'name':a74_0x455454(0x15f),'description':'Preview\x20parent\x20segment\x20data','category':a74_0x455454(0xd1),'keywords':[a74_0x455454(0xb5),a74_0x455454(0x7a),a74_0x455454(0xca),a74_0x455454(0x138),'data'],'examples':[a74_0x455454(0x8e),a74_0x455454(0x11a)]},{'name':a74_0x455454(0x113),'description':'List\x20customer\x20journeys','category':'CDP','keywords':[a74_0x455454(0xc8),a74_0x455454(0x128),a74_0x455454(0x7b),a74_0x455454(0x77)],'examples':[a74_0x455454(0x127),a74_0x455454(0xc4)]},{'name':a74_0x455454(0x9a),'description':a74_0x455454(0xcb),'category':a74_0x455454(0xd1),'keywords':[a74_0x455454(0xc8),a74_0x455454(0xf4),a74_0x455454(0x12b),a74_0x455454(0x14d)],'examples':[a74_0x455454(0xc5)]},{'name':a74_0x455454(0x15c),'description':'Pull\x20journey\x20definition\x20to\x20YAML','category':a74_0x455454(0xd1),'keywords':['journey',a74_0x455454(0xef),a74_0x455454(0x117),a74_0x455454(0x129)],'examples':[a74_0x455454(0x13b)]},{'name':a74_0x455454(0x144),'description':a74_0x455454(0xa8),'category':a74_0x455454(0xd1),'keywords':[a74_0x455454(0xc8),a74_0x455454(0x12d),a74_0x455454(0x118),a74_0x455454(0xad)],'examples':['tdx\x20journey\x20push\x20journey.yaml']},{'name':a74_0x455454(0x93),'description':a74_0x455454(0x7d),'category':'CDP','keywords':['activation','activations',a74_0x455454(0x129),a74_0x455454(0x7f),a74_0x455454(0x110)],'examples':[a74_0x455454(0x147),a74_0x455454(0x11e)]},{'name':'connection\x20list','description':a74_0x455454(0x10b),'category':a74_0x455454(0xd1),'keywords':[a74_0x455454(0xf3),'connections',a74_0x455454(0x110),'list'],'examples':[a74_0x455454(0xe0)]},{'name':a74_0x455454(0x13d),'description':'Show\x20connection\x20schema\x20for\x20activations','category':a74_0x455454(0xd1),'keywords':['connection',a74_0x455454(0x75),'config',a74_0x455454(0xe8)],'examples':[a74_0x455454(0x157),'tdx\x20connection\x20schema\x20google_ads']},{'name':a74_0x455454(0xfc),'description':a74_0x455454(0xa0),'category':'AI','keywords':[a74_0x455454(0x81),'agents',a74_0x455454(0xa6),'ai',a74_0x455454(0x7b)],'examples':[a74_0x455454(0x154),a74_0x455454(0xf0)]},{'name':a74_0x455454(0x145),'description':a74_0x455454(0x78),'category':'AI','keywords':[a74_0x455454(0x81),a74_0x455454(0x12b),a74_0x455454(0x14d),'info'],'examples':['tdx\x20agent\x20show\x20myproject/myagent']},{'name':a74_0x455454(0xa2),'description':a74_0x455454(0x14e),'category':'AI','keywords':['agent',a74_0x455454(0xef),a74_0x455454(0x117),a74_0x455454(0x129)],'examples':['tdx\x20agent\x20pull\x20myproject/myagent\x20-o\x20agent.yaml']},{'name':a74_0x455454(0xa5),'description':'Push\x20agent\x20definition\x20from\x20YAML','category':'AI','keywords':[a74_0x455454(0x81),a74_0x455454(0x12d),'upload',a74_0x455454(0xad),a74_0x455454(0xae)],'examples':['tdx\x20agent\x20push\x20agent.yaml']},{'name':a74_0x455454(0x140),'description':a74_0x455454(0xfb),'category':'AI','keywords':[a74_0x455454(0x140),a74_0x455454(0xa6),'ai',a74_0x455454(0x102),a74_0x455454(0x15b),'message'],'examples':[a74_0x455454(0x133),a74_0x455454(0xf2)]},{'name':a74_0x455454(0x136),'description':a74_0x455454(0xa7),'category':'AI','keywords':['chat',a74_0x455454(0x136),'sessions',a74_0x455454(0x149),'conversations'],'examples':[a74_0x455454(0xb6),a74_0x455454(0xeb)]},{'name':a74_0x455454(0x15d),'description':a74_0x455454(0x9b),'category':'AI','keywords':[a74_0x455454(0xa6),a74_0x455454(0x90),'ai',a74_0x455454(0x7b)],'examples':[a74_0x455454(0x11c)]},{'name':a74_0x455454(0xfd),'description':a74_0x455454(0x11f),'category':'AI','keywords':[a74_0x455454(0xa6),'projects','ai',a74_0x455454(0x7b)],'examples':[a74_0x455454(0x97)]},{'name':a74_0x455454(0xec),'description':a74_0x455454(0xb0),'category':a74_0x455454(0x92),'keywords':['use',a74_0x455454(0x137),a74_0x455454(0x12f),'switch',a74_0x455454(0x73)],'examples':[a74_0x455454(0x106),'tdx\x20use\x20--database\x20mydb',a74_0x455454(0x70)]},{'name':a74_0x455454(0x74),'description':a74_0x455454(0x130),'category':a74_0x455454(0x92),'keywords':['unset','clear',a74_0x455454(0xa1),a74_0x455454(0x12f)],'examples':['tdx\x20unset\x20--database',a74_0x455454(0x123)]},{'name':a74_0x455454(0x79),'description':a74_0x455454(0x8a),'category':a74_0x455454(0x92),'keywords':[a74_0x455454(0xee),a74_0x455454(0x158),a74_0x455454(0x7b),a74_0x455454(0x10d)],'examples':[a74_0x455454(0x99),'tdx\x20profiles']},{'name':'profile\x20show','description':a74_0x455454(0x10a),'category':a74_0x455454(0x92),'keywords':[a74_0x455454(0xee),a74_0x455454(0x12b),a74_0x455454(0x14d),a74_0x455454(0x10d)],'examples':[a74_0x455454(0x87)]},{'name':a74_0x455454(0xd2),'description':a74_0x455454(0x151),'category':a74_0x455454(0x92),'keywords':[a74_0x455454(0xd2),'authentication',a74_0x455454(0xb2),a74_0x455454(0x9d)],'examples':['tdx\x20auth',a74_0x455454(0xc2)]},{'name':a74_0x455454(0x15a),'description':'Show\x20current\x20user\x20info','category':'Context','keywords':[a74_0x455454(0x15a),'me','whoami','account'],'examples':[a74_0x455454(0x7e)]},{'name':'users','description':a74_0x455454(0xb4),'category':'Context','keywords':[a74_0x455454(0x104),'list',a74_0x455454(0x105),a74_0x455454(0xb9)],'examples':['tdx\x20users','tdx\x20user\x20list']},{'name':a74_0x455454(0x120),'description':'Make\x20raw\x20HTTP\x20requests\x20to\x20TD\x20APIs','category':a74_0x455454(0x14a),'keywords':[a74_0x455454(0x120),a74_0x455454(0xd4),'raw','request',a74_0x455454(0xb1)],'examples':[a74_0x455454(0xac),a74_0x455454(0xaf),a74_0x455454(0x125)]}];function a74_0x413e(_0x59475b,_0x5186c5){_0x59475b=_0x59475b-0x70;const _0x52fd50=a74_0x52fd();let _0x413ed9=_0x52fd50[_0x59475b];return _0x413ed9;}export const TdxSearchInputSchema=z[a74_0x455454(0x76)]({'query':z[a74_0x455454(0x9e)]()['describe'](a74_0x455454(0xf6)),'category':z['enum']([a74_0x455454(0xe4),a74_0x455454(0xd1),'AI','Context',a74_0x455454(0x14a)])['optional']()[a74_0x455454(0x11b)](a74_0x455454(0x134))});function a74_0x52fd(){const _0x120ef4=['databases','trino','records','List\x20workflow\x20sessions','toLowerCase','yaml','jobs','tdx\x20connection\x20list','tdx\x20segment\x20pull\x20\x22My\x20Segment\x22\x20-o\x20segment.yaml','definition','tdx\x20ps\x20pull','Data','parent-segment\x20validate','includes','Describe\x20table\x20schema\x20(columns,\x20types)','settings','tdx\x20workflow\x20run\x20myproject/myworkflow','workflow\x20sessions','tdx\x20chats\x20--limit\x2010','use','tdx\x20ps\x20list','profile','pull','tdx\x20agents','attributes','tdx\x20chat\x20--agent\x20myproject/myagent\x20\x22What\x20is\x20TD?\x22','connection','view','sort','Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)','customer','table','tdx\x20parent-segment\x20push\x20parent.yaml','3877482vxWLHV','Chat\x20with\x20an\x20LLM\x20agent','agent\x20list','llm\x20projects','tdx\x20describe\x20mydb.events','tdx\x20jobs','Show\x20table\x20contents\x20(SELECT\x20*\x20with\x20limit)','execute','conversation','contents','users','team','tdx\x20use\x20mydb','description','executions','tdx\x20table\x20list','Show\x20profile\x20details','List\x20data\x20connections','Generate\x20SQL\x20for\x20a\x20segment','config','Pull\x20segment\x20definition\x20to\x20YAML','1090513gAiEOp','destination','examples','job','journey\x20list','List\x20audience\x20segments','tdx\x20show\x20mydb.users\x20--limit\x20100','tdx\x20parent-segment\x20pull\x20\x22My\x20Parent\x22\x20-o\x20parent.yaml','download','upload','start','tdx\x20ps\x20preview\x20--limit\x2010','describe','tdx\x20llm\x20models','job\x20result','tdx\x20activations\x20--segment\x20\x22My\x20Segment\x22','List\x20LLM\x20projects','api','rows','tdx\x20wf\x20projects','tdx\x20unset\x20--all','structure','tdx\x20api\x20-X\x20POST\x20--data\x20\x27{\x22query\x22:\x22SELECT\x201\x22}\x27\x20/v3/job/issue/hive/mydb','sql','tdx\x20journey\x20list','journeys','export','List\x20query\x20jobs','show','segments','push','Pull\x20parent\x20segment\x20definition\x20to\x20YAML','context','Clear\x20session\x20context','length','kill','tdx\x20chat\x20\x22Hello\x22','Optional\x20filter\x20by\x20category','5425524JiGxKx','chats','set','sample','validate','data','tdx\x20journey\x20pull\x20\x22My\x20Journey\x22\x20-o\x20journey.yaml','fields','connection\x20schema','columns','update','chat','tdx\x20workflow\x20sessions\x20myproject','segment\x20fields','tdx\x20segment\x20show\x20\x22My\x20Segment\x22','journey\x20push','agent\x20show','trigger','tdx\x20activations','Show\x20job\x20details','history','Utilities','generate','database\x20list','details','Pull\x20agent\x20definition\x20to\x20YAML','461830uuLFmL','cdp','Show\x20authentication\x20status','List\x20tables\x20in\x20a\x20database','master','tdx\x20agent\x20list','sessions','table\x20list','tdx\x20connection\x20schema\x20salesforce','profiles','Push\x20segment\x20definition\x20from\x20YAML','user','ask','journey\x20pull','llm\x20models','score','parent-segment\x20preview','tdx\x20sg\x20push\x20segment.yaml\x20--dry-run','Validate\x20parent\x20segment\x20configuration','database','tdx\x20use\x20--parent-segment\x20\x22My\x20PS\x22','tdx\x20job\x20result\x2012345','tdx\x20tables\x20--database\x20mydb','select','unset','schema','object','orchestration','Show\x20agent\x20details','profile\x20list','segment','list','tdx\x20database\x20list','List\x20segment\x20activations\x20(exports)','tdx\x20user','sync','tdx\x20describe\x20mydb.users','agent','logs','tdx\x20databases\x20mydb*','audience','List\x20workflow\x20projects','tdx\x20ps\x20push\x20--dry-run','tdx\x20profile\x20show\x20myprofile','all','verify','List\x20configured\x20profiles','tdx\x20segments\x20--recursive','tdx\x20query\x20\x22SELECT\x20*\x20FROM\x20mydb.users\x20LIMIT\x2010\x22','Kill\x20a\x20running\x20job','tdx\x20parent-segment\x20preview','249319DFZAMd','models','info','Context','activations','job\x20show','filter','Show\x20segment\x20details','tdx\x20llm\x20projects','5261555slxklv','tdx\x20profile\x20list','journey\x20view','List\x20available\x20LLM\x20models','run','login','string','workflow','List\x20LLM\x20agents','reset','agent\x20pull','tdx\x20segment\x20push\x20segment.yaml','List\x20available\x20segment\x20fields','agent\x20push','llm','List\x20chat\x20sessions','Push\x20journey\x20definition\x20from\x20YAML','4366590gJhfdX','tdx\x20job\x20show\x2012345','tdx\x20segment\x20fields','tdx\x20api\x20/v3/database/list','create','deploy','tdx\x20api\x20/v1/audiences\x20--type\x20cdp','Set\x20session\x20context\x20(database,\x20parent\x20segment,\x20etc.)','curl','status','Get\x20job\x20results','List\x20users\x20in\x20account','parent','tdx\x20chats','import','segment\x20sql','members','tdx\x20ps\x20validate','Execute\x20SQL\x20query\x20using\x20Trino','tdx\x20query\x20\x22SELECT\x20count(*)\x20FROM\x20mydb.events\x22','View\x20workflow\x20logs','name','tdx\x20sg\x20fields','tdx\x20databases','keywords','tdx\x20auth\x20--profile\x20myprofile','tdx\x20workflow\x20projects','tdx\x20journeys','tdx\x20journey\x20view\x20\x22My\x20Journey\x22','tdx\x20wf\x20sessions\x20--limit\x2010','projects','journey','segment\x20pull','preview','View\x20journey\x20details','tdx\x20job\x20list','result','presto','tdx\x20jobs\x20--limit\x2020','segment\x20show','CDP','auth','category','http','split','output','List\x20parent\x20segments\x20(customer\x20masters)','query'];a74_0x52fd=function(){return _0x120ef4;};return a74_0x52fd();}export function searchCommands(_0x41e820){const _0x1e0723=a74_0x455454,{query:_0x44696f,category:_0x1909e0}=_0x41e820,_0x313806=_0x44696f['toLowerCase'](),_0x5e4366=_0x313806[_0x1e0723(0xd5)](/\s+/)[_0x1e0723(0x95)](_0x2bbc75=>_0x2bbc75[_0x1e0723(0x131)]>0x0);let _0x310a55=COMMANDS;_0x1909e0&&(_0x310a55=_0x310a55[_0x1e0723(0x95)](_0x3d9363=>_0x3d9363['category']===_0x1909e0));const _0x3ce5fe=_0x310a55['map'](_0x272f13=>{const _0x53e54d=_0x1e0723;let _0x16b632=0x0;_0x272f13[_0x53e54d(0xbe)][_0x53e54d(0xdd)]()===_0x313806&&(_0x16b632+=0x64);_0x272f13[_0x53e54d(0xbe)][_0x53e54d(0xdd)]()['includes'](_0x313806)&&(_0x16b632+=0x32);_0x272f13[_0x53e54d(0x107)]['toLowerCase']()[_0x53e54d(0xe6)](_0x313806)&&(_0x16b632+=0x1e);for(const _0x87402c of _0x5e4366){for(const _0x424e41 of _0x272f13[_0x53e54d(0xc1)]){if(_0x424e41===_0x87402c)_0x16b632+=0x14;else(_0x424e41[_0x53e54d(0xe6)](_0x87402c)||_0x87402c[_0x53e54d(0xe6)](_0x424e41))&&(_0x16b632+=0xa);}_0x272f13[_0x53e54d(0xbe)][_0x53e54d(0xdd)]()[_0x53e54d(0xe6)](_0x87402c)&&(_0x16b632+=0xf),_0x272f13['description']['toLowerCase']()[_0x53e54d(0xe6)](_0x87402c)&&(_0x16b632+=0x5);}return{'name':_0x272f13[_0x53e54d(0xbe)],'description':_0x272f13[_0x53e54d(0x107)],'category':_0x272f13[_0x53e54d(0xd3)],'examples':_0x272f13[_0x53e54d(0x111)],'score':_0x16b632};});return _0x3ce5fe['filter'](_0x50acdb=>_0x50acdb[_0x1e0723(0x15e)]>0x0)[_0x1e0723(0xf5)]((_0x32da05,_0xab11ec)=>_0xab11ec[_0x1e0723(0x15e)]-_0x32da05[_0x1e0723(0x15e)])['slice'](0x0,0xa);}
|
|
1
|
+
const a74_0x284ade=a74_0x1266;(function(_0x56c0a5,_0x26fba1){const _0x24b7b8=a74_0x1266,_0x581d98=_0x56c0a5();while(!![]){try{const _0x3270ff=parseInt(_0x24b7b8(0x1b2))/0x1+parseInt(_0x24b7b8(0x18b))/0x2+-parseInt(_0x24b7b8(0x16b))/0x3*(parseInt(_0x24b7b8(0x152))/0x4)+parseInt(_0x24b7b8(0x18c))/0x5*(-parseInt(_0x24b7b8(0x137))/0x6)+parseInt(_0x24b7b8(0x1a4))/0x7+-parseInt(_0x24b7b8(0x1b6))/0x8*(parseInt(_0x24b7b8(0x178))/0x9)+parseInt(_0x24b7b8(0x13d))/0xa*(-parseInt(_0x24b7b8(0x1c8))/0xb);if(_0x3270ff===_0x26fba1)break;else _0x581d98['push'](_0x581d98['shift']());}catch(_0x91a087){_0x581d98['push'](_0x581d98['shift']());}}}(a74_0x6344,0x2dba7));import{z}from'zod';const COMMANDS=[{'name':a74_0x284ade(0x1f7),'description':a74_0x284ade(0x12a),'category':'Data','keywords':[a74_0x284ade(0x1c6),a74_0x284ade(0x1c0),'db',a74_0x284ade(0x1e1),a74_0x284ade(0x1fc),a74_0x284ade(0x18a)],'examples':[a74_0x284ade(0x14a),a74_0x284ade(0x1b7),'tdx\x20databases\x20mydb*']},{'name':a74_0x284ade(0x1a0),'description':a74_0x284ade(0x163),'category':a74_0x284ade(0x1ed),'keywords':[a74_0x284ade(0x1bd),a74_0x284ade(0x194),a74_0x284ade(0x1e1),'show',a74_0x284ade(0x1a2)],'examples':[a74_0x284ade(0x1bb),a74_0x284ade(0x151),a74_0x284ade(0x1fb)]},{'name':a74_0x284ade(0x1fc),'description':a74_0x284ade(0x219),'category':'Data','keywords':[a74_0x284ade(0x1fc),a74_0x284ade(0x1ea),'preview','data',a74_0x284ade(0x179),a74_0x284ade(0x1c5),a74_0x284ade(0x167)],'examples':[a74_0x284ade(0x19a),a74_0x284ade(0x1dd)]},{'name':a74_0x284ade(0x22d),'description':a74_0x284ade(0x15a),'category':a74_0x284ade(0x1ed),'keywords':['describe',a74_0x284ade(0x1a2),a74_0x284ade(0x192),a74_0x284ade(0x143),'structure',a74_0x284ade(0x1fe)],'examples':['tdx\x20describe\x20mydb.users',a74_0x284ade(0x21b)]},{'name':a74_0x284ade(0x19c),'description':a74_0x284ade(0x1ca),'category':'Data','keywords':['query',a74_0x284ade(0x224),'select',a74_0x284ade(0x162),a74_0x284ade(0x1e3),a74_0x284ade(0x1a1),a74_0x284ade(0x201)],'examples':[a74_0x284ade(0x1f6),a74_0x284ade(0x1a5)]},{'name':a74_0x284ade(0x1dc),'description':a74_0x284ade(0x1e2),'category':a74_0x284ade(0x1ed),'keywords':[a74_0x284ade(0x13a),'jobs',a74_0x284ade(0x1e1),a74_0x284ade(0x13b),a74_0x284ade(0x221)],'examples':['tdx\x20job\x20list',a74_0x284ade(0x1de),a74_0x284ade(0x197)]},{'name':a74_0x284ade(0x216),'description':'Show\x20job\x20details','category':a74_0x284ade(0x1ed),'keywords':[a74_0x284ade(0x13a),a74_0x284ade(0x1fc),a74_0x284ade(0x1ce),a74_0x284ade(0x1cd),a74_0x284ade(0x214)],'examples':[a74_0x284ade(0x21e)]},{'name':a74_0x284ade(0x1b3),'description':a74_0x284ade(0x1b4),'category':'Data','keywords':[a74_0x284ade(0x13a),a74_0x284ade(0x149),a74_0x284ade(0x20a),a74_0x284ade(0x177)],'examples':['tdx\x20job\x20result\x2012345']},{'name':a74_0x284ade(0x1b8),'description':a74_0x284ade(0x142),'category':a74_0x284ade(0x1ed),'keywords':[a74_0x284ade(0x13a),a74_0x284ade(0x157),'cancel',a74_0x284ade(0x173),a74_0x284ade(0x200)],'examples':[a74_0x284ade(0x165)]},{'name':a74_0x284ade(0x1f0),'description':a74_0x284ade(0x1ee),'category':a74_0x284ade(0x1ed),'keywords':[a74_0x284ade(0x133),a74_0x284ade(0x20d),a74_0x284ade(0x15e),a74_0x284ade(0x1e1)],'examples':['tdx\x20workflow\x20projects',a74_0x284ade(0x1cb)]},{'name':'workflow\x20sessions','description':a74_0x284ade(0x1d9),'category':'Data','keywords':['workflow',a74_0x284ade(0x150),a74_0x284ade(0x206),a74_0x284ade(0x136)],'examples':[a74_0x284ade(0x158),a74_0x284ade(0x1e5)]},{'name':a74_0x284ade(0x1ef),'description':a74_0x284ade(0x1ec),'category':a74_0x284ade(0x1ed),'keywords':[a74_0x284ade(0x133),a74_0x284ade(0x17f),a74_0x284ade(0x20a),'debug'],'examples':[a74_0x284ade(0x131)]},{'name':a74_0x284ade(0x160),'description':a74_0x284ade(0x223),'category':'Data','keywords':[a74_0x284ade(0x133),'run','execute',a74_0x284ade(0x195),'trigger'],'examples':[a74_0x284ade(0x12d)]},{'name':a74_0x284ade(0x1da),'description':'List\x20audience\x20segments','category':a74_0x284ade(0x204),'keywords':[a74_0x284ade(0x1f3),a74_0x284ade(0x21d),a74_0x284ade(0x196),a74_0x284ade(0x1e1),a74_0x284ade(0x15b)],'examples':['tdx\x20segment\x20list',a74_0x284ade(0x183),a74_0x284ade(0x209)]},{'name':a74_0x284ade(0x205),'description':a74_0x284ade(0x1e6),'category':a74_0x284ade(0x204),'keywords':[a74_0x284ade(0x1f3),a74_0x284ade(0x1fc),'details','info',a74_0x284ade(0x1ea)],'examples':[a74_0x284ade(0x1cf)]},{'name':a74_0x284ade(0x1b9),'description':a74_0x284ade(0x169),'category':'CDP','keywords':[a74_0x284ade(0x1f3),a74_0x284ade(0x224),a74_0x284ade(0x19c),'generate'],'examples':[a74_0x284ade(0x17b)]},{'name':a74_0x284ade(0x176),'description':a74_0x284ade(0x170),'category':a74_0x284ade(0x204),'keywords':['segment',a74_0x284ade(0x22c),a74_0x284ade(0x177),a74_0x284ade(0x186),a74_0x284ade(0x139)],'examples':[a74_0x284ade(0x130)]},{'name':a74_0x284ade(0x153),'description':a74_0x284ade(0x19d),'category':a74_0x284ade(0x204),'keywords':[a74_0x284ade(0x1f3),a74_0x284ade(0x225),a74_0x284ade(0x202),a74_0x284ade(0x189),a74_0x284ade(0x1d0),a74_0x284ade(0x132)],'examples':[a74_0x284ade(0x190),a74_0x284ade(0x13c)]},{'name':a74_0x284ade(0x146),'description':a74_0x284ade(0x1b0),'category':a74_0x284ade(0x204),'keywords':[a74_0x284ade(0x1f3),'fields','attributes',a74_0x284ade(0x192),a74_0x284ade(0x1a2)],'examples':[a74_0x284ade(0x161),a74_0x284ade(0x138)]},{'name':a74_0x284ade(0x1d2),'description':a74_0x284ade(0x1ff),'category':a74_0x284ade(0x204),'keywords':[a74_0x284ade(0x1bf),'segment',a74_0x284ade(0x1ab),a74_0x284ade(0x1e1),a74_0x284ade(0x14c)],'examples':[a74_0x284ade(0x1f5),a74_0x284ade(0x1e8)]},{'name':a74_0x284ade(0x220),'description':'Pull\x20parent\x20segment\x20definition\x20to\x20YAML','category':a74_0x284ade(0x204),'keywords':[a74_0x284ade(0x1bf),a74_0x284ade(0x1f3),a74_0x284ade(0x22c),a74_0x284ade(0x177),a74_0x284ade(0x186)],'examples':[a74_0x284ade(0x215),'tdx\x20ps\x20pull']},{'name':'parent-segment\x20push','description':a74_0x284ade(0x1fa),'category':a74_0x284ade(0x204),'keywords':[a74_0x284ade(0x1bf),a74_0x284ade(0x1f3),a74_0x284ade(0x225),a74_0x284ade(0x202),'create'],'examples':[a74_0x284ade(0x1c1),a74_0x284ade(0x14e)]},{'name':a74_0x284ade(0x228),'description':a74_0x284ade(0x1d6),'category':'CDP','keywords':[a74_0x284ade(0x1bf),'segment','validate',a74_0x284ade(0x18f),'verify'],'examples':['tdx\x20parent-segment\x20validate\x20parent.yaml',a74_0x284ade(0x226)]},{'name':a74_0x284ade(0x1c9),'description':a74_0x284ade(0x144),'category':'CDP','keywords':[a74_0x284ade(0x1bf),a74_0x284ade(0x1f3),a74_0x284ade(0x156),'sample',a74_0x284ade(0x148)],'examples':[a74_0x284ade(0x22a),a74_0x284ade(0x16f)]},{'name':'journey\x20list','description':a74_0x284ade(0x166),'category':a74_0x284ade(0x204),'keywords':[a74_0x284ade(0x180),'journeys',a74_0x284ade(0x1e1),'orchestration'],'examples':['tdx\x20journey\x20list','tdx\x20journeys']},{'name':a74_0x284ade(0x1be),'description':a74_0x284ade(0x1d8),'category':'CDP','keywords':[a74_0x284ade(0x180),'view','show',a74_0x284ade(0x1ce)],'examples':[a74_0x284ade(0x154)]},{'name':a74_0x284ade(0x19f),'description':a74_0x284ade(0x187),'category':a74_0x284ade(0x204),'keywords':['journey','pull',a74_0x284ade(0x177),'export'],'examples':['tdx\x20journey\x20pull\x20\x22My\x20Journey\x22\x20-o\x20journey.yaml']},{'name':'journey\x20push','description':a74_0x284ade(0x20c),'category':a74_0x284ade(0x204),'keywords':[a74_0x284ade(0x180),a74_0x284ade(0x225),a74_0x284ade(0x202),a74_0x284ade(0x1d0)],'examples':[a74_0x284ade(0x12e)]},{'name':a74_0x284ade(0x159),'description':a74_0x284ade(0x145),'category':'CDP','keywords':[a74_0x284ade(0x1a3),a74_0x284ade(0x159),a74_0x284ade(0x186),'sync',a74_0x284ade(0x21f)],'examples':[a74_0x284ade(0x18d),'tdx\x20activations\x20--segment\x20\x22My\x20Segment\x22']},{'name':'connection\x20list','description':a74_0x284ade(0x182),'category':a74_0x284ade(0x204),'keywords':[a74_0x284ade(0x208),a74_0x284ade(0x1bc),'destination',a74_0x284ade(0x1e1)],'examples':[a74_0x284ade(0x19e)]},{'name':a74_0x284ade(0x135),'description':a74_0x284ade(0x1c7),'category':a74_0x284ade(0x204),'keywords':[a74_0x284ade(0x208),a74_0x284ade(0x1a2),a74_0x284ade(0x141),a74_0x284ade(0x14d)],'examples':[a74_0x284ade(0x175),a74_0x284ade(0x13e)]},{'name':a74_0x284ade(0x1d4),'description':a74_0x284ade(0x14b),'category':'AI','keywords':[a74_0x284ade(0x1c3),a74_0x284ade(0x164),'llm','ai',a74_0x284ade(0x1e1)],'examples':[a74_0x284ade(0x213),a74_0x284ade(0x18e)]},{'name':a74_0x284ade(0x1eb),'description':a74_0x284ade(0x1e7),'category':'AI','keywords':[a74_0x284ade(0x1c3),a74_0x284ade(0x1fc),a74_0x284ade(0x1ce),a74_0x284ade(0x214)],'examples':['tdx\x20agent\x20show\x20myproject/myagent']},{'name':a74_0x284ade(0x198),'description':a74_0x284ade(0x1db),'category':'AI','keywords':[a74_0x284ade(0x1c3),a74_0x284ade(0x22c),a74_0x284ade(0x177),'export'],'examples':['tdx\x20agent\x20pull\x20myproject/myagent\x20-o\x20agent.yaml']},{'name':a74_0x284ade(0x172),'description':a74_0x284ade(0x17e),'category':'AI','keywords':[a74_0x284ade(0x1c3),a74_0x284ade(0x225),a74_0x284ade(0x202),'create',a74_0x284ade(0x1f9)],'examples':[a74_0x284ade(0x1ae)]},{'name':a74_0x284ade(0x1f1),'description':a74_0x284ade(0x199),'category':'AI','keywords':[a74_0x284ade(0x1f1),a74_0x284ade(0x1d1),'ai','conversation',a74_0x284ade(0x1ad),'message'],'examples':[a74_0x284ade(0x203),a74_0x284ade(0x20e)]},{'name':a74_0x284ade(0x227),'description':a74_0x284ade(0x17c),'category':'AI','keywords':[a74_0x284ade(0x1f1),a74_0x284ade(0x227),a74_0x284ade(0x150),a74_0x284ade(0x13b),a74_0x284ade(0x17d)],'examples':[a74_0x284ade(0x17a),'tdx\x20chats\x20--limit\x2010']},{'name':a74_0x284ade(0x1c4),'description':'List\x20available\x20LLM\x20models','category':'AI','keywords':[a74_0x284ade(0x1d1),a74_0x284ade(0x12c),'ai',a74_0x284ade(0x1e1)],'examples':[a74_0x284ade(0x16c)]},{'name':a74_0x284ade(0x14f),'description':'List\x20LLM\x20projects','category':'AI','keywords':[a74_0x284ade(0x1d1),'projects','ai',a74_0x284ade(0x1e1)],'examples':['tdx\x20llm\x20projects']},{'name':a74_0x284ade(0x185),'description':a74_0x284ade(0x155),'category':a74_0x284ade(0x22e),'keywords':[a74_0x284ade(0x185),a74_0x284ade(0x21c),a74_0x284ade(0x188),'switch','select'],'examples':[a74_0x284ade(0x22b),a74_0x284ade(0x19b),a74_0x284ade(0x1f4)]},{'name':a74_0x284ade(0x140),'description':'Clear\x20session\x20context','category':a74_0x284ade(0x22e),'keywords':[a74_0x284ade(0x140),a74_0x284ade(0x1a8),a74_0x284ade(0x20f),a74_0x284ade(0x188)],'examples':[a74_0x284ade(0x1a9),'tdx\x20unset\x20--all']},{'name':a74_0x284ade(0x1d5),'description':a74_0x284ade(0x1e9),'category':'Context','keywords':['profile',a74_0x284ade(0x12b),a74_0x284ade(0x1e1),a74_0x284ade(0x141)],'examples':[a74_0x284ade(0x15c),'tdx\x20profiles']},{'name':a74_0x284ade(0x1d7),'description':'Show\x20profile\x20details','category':'Context','keywords':[a74_0x284ade(0x16d),a74_0x284ade(0x1fc),a74_0x284ade(0x1ce),a74_0x284ade(0x141)],'examples':[a74_0x284ade(0x1a7)]},{'name':'auth','description':a74_0x284ade(0x174),'category':'Context','keywords':[a74_0x284ade(0x184),a74_0x284ade(0x210),a74_0x284ade(0x1cd),'login'],'examples':[a74_0x284ade(0x207),a74_0x284ade(0x212)]},{'name':a74_0x284ade(0x1d3),'description':a74_0x284ade(0x211),'category':a74_0x284ade(0x22e),'keywords':['user','me',a74_0x284ade(0x229),'account'],'examples':[a74_0x284ade(0x168)]},{'name':a74_0x284ade(0x1aa),'description':'List\x20users\x20in\x20account','category':a74_0x284ade(0x22e),'keywords':[a74_0x284ade(0x1aa),'list',a74_0x284ade(0x15f),a74_0x284ade(0x1fd)],'examples':[a74_0x284ade(0x15d),a74_0x284ade(0x181)]},{'name':'api','description':a74_0x284ade(0x1cc),'category':'Utilities','keywords':[a74_0x284ade(0x1ba),a74_0x284ade(0x147),a74_0x284ade(0x193),a74_0x284ade(0x217),a74_0x284ade(0x134)],'examples':[a74_0x284ade(0x1b5),'tdx\x20api\x20/v1/audiences\x20--type\x20cdp',a74_0x284ade(0x1e0)]}];function a74_0x1266(_0x17b794,_0x12d0c1){_0x17b794=_0x17b794-0x12a;const _0x6344c7=a74_0x6344();let _0x1266c3=_0x6344c7[_0x17b794];return _0x1266c3;}export const TdxSearchInputSchema=z[a74_0x284ade(0x171)]({'query':z[a74_0x284ade(0x13f)]()[a74_0x284ade(0x22d)](a74_0x284ade(0x16a)),'category':z[a74_0x284ade(0x1c2)]([a74_0x284ade(0x1ed),a74_0x284ade(0x204),'AI',a74_0x284ade(0x22e),a74_0x284ade(0x20b)])[a74_0x284ade(0x1f2)]()[a74_0x284ade(0x22d)]('Optional\x20filter\x20by\x20category')});function a74_0x6344(){const _0x4046eb=['tdx\x20parent-segment\x20pull\x20\x22My\x20Parent\x22\x20-o\x20parent.yaml','job\x20show','request','slice','Show\x20table\x20contents\x20(SELECT\x20*\x20with\x20limit)','examples','tdx\x20describe\x20mydb.events','set','segments','tdx\x20job\x20show\x2012345','destination','parent-segment\x20pull','queries','score','Run\x20a\x20workflow','sql','push','tdx\x20ps\x20validate','chats','parent-segment\x20validate','whoami','tdx\x20parent-segment\x20preview','tdx\x20use\x20mydb','pull','describe','Context','List\x20all\x20databases','profiles','models','tdx\x20workflow\x20run\x20myproject/myworkflow','tdx\x20journey\x20push\x20journey.yaml','map','tdx\x20segment\x20pull\x20\x22My\x20Segment\x22\x20-o\x20segment.yaml','tdx\x20workflow\x20logs\x20<attempt_id>','update','workflow','curl','connection\x20schema','executions','6Kmczxu','tdx\x20sg\x20fields','yaml','job','history','tdx\x20sg\x20push\x20segment.yaml\x20--dry-run','11930WbnXqf','tdx\x20connection\x20schema\x20google_ads','string','unset','config','Kill\x20a\x20running\x20job','types','Preview\x20parent\x20segment\x20data','List\x20segment\x20activations\x20(exports)','segment\x20fields','http','data','result','tdx\x20database\x20list','List\x20LLM\x20agents','customer','settings','tdx\x20ps\x20push\x20--dry-run','llm\x20projects','sessions','tdx\x20tables\x20mydb.*','182432nTlzEg','segment\x20push','tdx\x20journey\x20view\x20\x22My\x20Journey\x22','Set\x20session\x20context\x20(database,\x20parent\x20segment,\x20etc.)','preview','kill','tdx\x20workflow\x20sessions\x20myproject','activations','Describe\x20table\x20schema\x20(columns,\x20types)','cdp','tdx\x20profile\x20list','tdx\x20users','digdag','team','workflow\x20run','tdx\x20segment\x20fields','trino','List\x20tables\x20in\x20a\x20database','agents','tdx\x20job\x20kill\x2012345','List\x20customer\x20journeys','records','tdx\x20user','Generate\x20SQL\x20for\x20a\x20segment','Natural\x20language\x20query\x20(e.g.,\x20\x22list\x20databases\x22,\x20\x22run\x20SQL\x22,\x20\x22manage\x20segments\x22)','6RWMLBg','tdx\x20llm\x20models','profile','filter','tdx\x20ps\x20preview\x20--limit\x2010','Pull\x20segment\x20definition\x20to\x20YAML','object','agent\x20push','stop','Show\x20authentication\x20status','tdx\x20connection\x20schema\x20salesforce','segment\x20pull','download','18abqmjs','contents','tdx\x20chats','tdx\x20segment\x20sql\x20\x22My\x20Segment\x22','List\x20chat\x20sessions','conversations','Push\x20agent\x20definition\x20from\x20YAML','logs','journey','tdx\x20user\x20list','List\x20data\x20connections','tdx\x20segments','auth','use','export','Pull\x20journey\x20definition\x20to\x20YAML','context','import','all','465502MROexA','136655kilWhI','tdx\x20activations','tdx\x20agents','check','tdx\x20segment\x20push\x20segment.yaml','split','columns','raw','tables','start','audience','tdx\x20jobs\x20--limit\x2020','agent\x20pull','Chat\x20with\x20an\x20LLM\x20agent','tdx\x20show\x20mydb.users','tdx\x20use\x20--database\x20mydb','query','Push\x20segment\x20definition\x20from\x20YAML','tdx\x20connection\x20list','journey\x20pull','table\x20list','run','schema','activation','1966132GYKNpf','tdx\x20query\x20\x22SELECT\x20count(*)\x20FROM\x20mydb.events\x22','includes','tdx\x20profile\x20show\x20myprofile','clear','tdx\x20unset\x20--database','users','master','length','ask','tdx\x20agent\x20push\x20agent.yaml','name','List\x20available\x20segment\x20fields','toLowerCase','43065GCmYKk','job\x20result','Get\x20job\x20results','tdx\x20api\x20/v3/database/list','325744gyHpqu','tdx\x20databases','job\x20kill','segment\x20sql','api','tdx\x20table\x20list','connections','table','journey\x20view','parent','databases','tdx\x20parent-segment\x20push\x20parent.yaml','enum','agent','llm\x20models','rows','database','Show\x20connection\x20schema\x20for\x20activations','1562oLFmHT','parent-segment\x20preview','Execute\x20SQL\x20query\x20using\x20Trino','tdx\x20wf\x20projects','Make\x20raw\x20HTTP\x20requests\x20to\x20TD\x20APIs','status','details','tdx\x20segment\x20show\x20\x22My\x20Segment\x22','create','llm','parent-segment\x20list','user','agent\x20list','profile\x20list','Validate\x20parent\x20segment\x20configuration','profile\x20show','View\x20journey\x20details','List\x20workflow\x20sessions','segment\x20list','Pull\x20agent\x20definition\x20to\x20YAML','job\x20list','tdx\x20show\x20mydb.users\x20--limit\x20100','tdx\x20jobs','keywords','tdx\x20api\x20-X\x20POST\x20--data\x20\x27{\x22query\x22:\x22SELECT\x201\x22}\x27\x20/v3/job/issue/hive/mydb','list','List\x20query\x20jobs','execute','description','tdx\x20wf\x20sessions\x20--limit\x2010','Show\x20segment\x20details','Show\x20agent\x20details','tdx\x20ps\x20list','List\x20configured\x20profiles','view','agent\x20show','View\x20workflow\x20logs','Data','List\x20workflow\x20projects','workflow\x20logs','workflow\x20projects','chat','optional','segment','tdx\x20use\x20--parent-segment\x20\x22My\x20PS\x22','tdx\x20parent-segment\x20list','tdx\x20query\x20\x22SELECT\x20*\x20FROM\x20mydb.users\x20LIMIT\x2010\x22','database\x20list','category','deploy','Push\x20parent\x20segment\x20definition\x20from\x20YAML','tdx\x20tables\x20--database\x20mydb','show','members','definition','List\x20parent\x20segments\x20(customer\x20masters)','abort','presto','upload','tdx\x20chat\x20\x22Hello\x22','CDP','segment\x20show','runs','tdx\x20auth','connection','tdx\x20segments\x20--recursive','output','Utilities','Push\x20journey\x20definition\x20from\x20YAML','projects','tdx\x20chat\x20--agent\x20myproject/myagent\x20\x22What\x20is\x20TD?\x22','reset','authentication','Show\x20current\x20user\x20info','tdx\x20auth\x20--profile\x20myprofile','tdx\x20agent\x20list','info'];a74_0x6344=function(){return _0x4046eb;};return a74_0x6344();}export function searchCommands(_0x428630){const _0x33c238=a74_0x284ade,{query:_0x303a99,category:_0x5b4d0c}=_0x428630,_0x1823ee=_0x303a99[_0x33c238(0x1b1)](),_0x2cf9df=_0x1823ee[_0x33c238(0x191)](/\s+/)['filter'](_0x23e2d3=>_0x23e2d3[_0x33c238(0x1ac)]>0x0);let _0x5a6749=COMMANDS;_0x5b4d0c&&(_0x5a6749=_0x5a6749[_0x33c238(0x16e)](_0x545c09=>_0x545c09[_0x33c238(0x1f8)]===_0x5b4d0c));const _0x955e34=_0x5a6749[_0x33c238(0x12f)](_0x3ccd31=>{const _0x3e9a49=_0x33c238;let _0x3ea5e1=0x0;_0x3ccd31['name'][_0x3e9a49(0x1b1)]()===_0x1823ee&&(_0x3ea5e1+=0x64);_0x3ccd31[_0x3e9a49(0x1af)][_0x3e9a49(0x1b1)]()[_0x3e9a49(0x1a6)](_0x1823ee)&&(_0x3ea5e1+=0x32);_0x3ccd31[_0x3e9a49(0x1e4)][_0x3e9a49(0x1b1)]()[_0x3e9a49(0x1a6)](_0x1823ee)&&(_0x3ea5e1+=0x1e);for(const _0x3db916 of _0x2cf9df){for(const _0x29ffe3 of _0x3ccd31[_0x3e9a49(0x1df)]){if(_0x29ffe3===_0x3db916)_0x3ea5e1+=0x14;else(_0x29ffe3['includes'](_0x3db916)||_0x3db916[_0x3e9a49(0x1a6)](_0x29ffe3))&&(_0x3ea5e1+=0xa);}_0x3ccd31[_0x3e9a49(0x1af)][_0x3e9a49(0x1b1)]()[_0x3e9a49(0x1a6)](_0x3db916)&&(_0x3ea5e1+=0xf),_0x3ccd31[_0x3e9a49(0x1e4)]['toLowerCase']()[_0x3e9a49(0x1a6)](_0x3db916)&&(_0x3ea5e1+=0x5);}return{'name':_0x3ccd31[_0x3e9a49(0x1af)],'description':_0x3ccd31[_0x3e9a49(0x1e4)],'category':_0x3ccd31['category'],'examples':_0x3ccd31[_0x3e9a49(0x21a)],'score':_0x3ea5e1};});return _0x955e34[_0x33c238(0x16e)](_0x569da6=>_0x569da6[_0x33c238(0x222)]>0x0)['sort']((_0x20148f,_0x219e9a)=>_0x219e9a[_0x33c238(0x222)]-_0x20148f[_0x33c238(0x222)])[_0x33c238(0x218)](0x0,0xa);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a75_0x1bfd79=a75_0x30a0;function a75_0x30a0(_0xa0f46e,_0x102b67){_0xa0f46e=_0xa0f46e-0x19c;const _0x9047ca=a75_0x9047();let _0x30a021=_0x9047ca[_0xa0f46e];return _0x30a021;}(function(_0x245db8,_0x3f4f86){const _0x5e09e4=a75_0x30a0,_0x1dcb3b=_0x245db8();while(!![]){try{const _0x29fc32=parseInt(_0x5e09e4(0x19e))/0x1*(parseInt(_0x5e09e4(0x1a4))/0x2)+parseInt(_0x5e09e4(0x1c8))/0x3*(parseInt(_0x5e09e4(0x1d0))/0x4)+parseInt(_0x5e09e4(0x19f))/0x5+parseInt(_0x5e09e4(0x1c3))/0x6*(-parseInt(_0x5e09e4(0x1af))/0x7)+-parseInt(_0x5e09e4(0x1c1))/0x8*(parseInt(_0x5e09e4(0x1a8))/0x9)+-parseInt(_0x5e09e4(0x1ae))/0xa+-parseInt(_0x5e09e4(0x1bb))/0xb*(-parseInt(_0x5e09e4(0x1ab))/0xc);if(_0x29fc32===_0x3f4f86)break;else _0x1dcb3b['push'](_0x1dcb3b['shift']());}catch(_0x46d741){_0x1dcb3b['push'](_0x1dcb3b['shift']());}}}(a75_0x9047,0xcc222));function a75_0x9047(){const _0x3b83bc=['describe','priority','4ogAIUJ','optional','proposed','enum','1HguPSD','2322805VzTpGx','planning','review','Tags\x20for\x20the\x20item','jira','3141926CTVVRu','low','void','status','35469EEGHSj','item','object','2283216xWEidi','superseded','Item\x20title\x20(required)','1995610vUUaXu','7DugnkW','todo','reference','medium','deprecated','GitHub\x20PR/issue\x20reference\x20(owner/repo#number)','Template\x20name\x20from\x20templates/\x20folder','design_review','high','title','Priority\x20level','in_progress','22wYfMKW','accepted','No\x20workspace\x20found.\x20Run\x20`tdx\x20work\x20init`\x20to\x20create\x20one.','github','replace','kind','424eLREmK','createDocument','7995282RROnIB','backlog','body','Initial\x20status\x20(default:\x20\x22todo\x22\x20for\x20items,\x20\x22proposed\x22\x20for\x20guides)','Markdown\x20body\x20content','483153JjBdMn','note','filePath','tags','string','fileName'];a75_0x9047=function(){return _0x3b83bc;};return a75_0x9047();}import{z}from'zod';import{WorkspaceSDK,resolveWorkspacePath}from'../../sdk/workspace/index.js';const TASK_STATUSES=[a75_0x1bfd79(0x1c4),a75_0x1bfd79(0x1b0),a75_0x1bfd79(0x1a0),a75_0x1bfd79(0x1b6),a75_0x1bfd79(0x1ba),a75_0x1bfd79(0x1a1),'done',a75_0x1bfd79(0x1a6)],GUIDE_STATUSES=[a75_0x1bfd79(0x19c),a75_0x1bfd79(0x1bc),a75_0x1bfd79(0x1b3),a75_0x1bfd79(0x1ac)];export const WorkCreateItemInputSchema=z[a75_0x1bfd79(0x1aa)]({'title':z[a75_0x1bfd79(0x1cc)]()[a75_0x1bfd79(0x1ce)](a75_0x1bfd79(0x1ad)),'kind':z[a75_0x1bfd79(0x19d)]([a75_0x1bfd79(0x1a9),a75_0x1bfd79(0x1c9),'guide',a75_0x1bfd79(0x1b1)])['optional']()[a75_0x1bfd79(0x1ce)]('Document\x20kind\x20(default:\x20\x22item\x22)'),'status':z[a75_0x1bfd79(0x19d)]([...TASK_STATUSES,...GUIDE_STATUSES])[a75_0x1bfd79(0x1d1)]()[a75_0x1bfd79(0x1ce)](a75_0x1bfd79(0x1c6)),'tags':z['array'](z[a75_0x1bfd79(0x1cc)]())[a75_0x1bfd79(0x1d1)]()['describe'](a75_0x1bfd79(0x1a2)),'priority':z[a75_0x1bfd79(0x19d)](['critical',a75_0x1bfd79(0x1b7),a75_0x1bfd79(0x1b2),a75_0x1bfd79(0x1a5)])['optional']()[a75_0x1bfd79(0x1ce)](a75_0x1bfd79(0x1b9)),'body':z['string']()[a75_0x1bfd79(0x1d1)]()[a75_0x1bfd79(0x1ce)](a75_0x1bfd79(0x1c7)),'template':z[a75_0x1bfd79(0x1cc)]()[a75_0x1bfd79(0x1d1)]()[a75_0x1bfd79(0x1ce)](a75_0x1bfd79(0x1b5)),'github':z[a75_0x1bfd79(0x1cc)]()[a75_0x1bfd79(0x1d1)]()['describe'](a75_0x1bfd79(0x1b4)),'jira':z['string']()[a75_0x1bfd79(0x1d1)]()[a75_0x1bfd79(0x1ce)]('JIRA\x20ticket\x20reference\x20(org/TICKET-ID)')});export function executeWorkCreateItem(_0x3254c4){const _0x23b026=a75_0x1bfd79,_0x36cb5a=resolveWorkspacePath();if(!_0x36cb5a)return{'success':![],'error':_0x23b026(0x1bd)};const _0x3d01bb=new WorkspaceSDK(_0x36cb5a),_0x28ff14={'title':_0x3254c4[_0x23b026(0x1b8)],'kind':_0x3254c4[_0x23b026(0x1c0)]||_0x23b026(0x1a9),'status':_0x3254c4[_0x23b026(0x1a7)],'tags':_0x3254c4[_0x23b026(0x1cb)],'priority':_0x3254c4[_0x23b026(0x1cf)],'body':_0x3254c4[_0x23b026(0x1c5)],'template':_0x3254c4['template'],'github':_0x3254c4[_0x23b026(0x1be)],'jira':_0x3254c4[_0x23b026(0x1a3)]},_0x4485f1=_0x3d01bb[_0x23b026(0x1c2)](_0x28ff14);return{'success':!![],'path':_0x4485f1[_0x23b026(0x1ca)],'slug':_0x4485f1[_0x23b026(0x1cd)][_0x23b026(0x1bf)](/\.md$/,'')};}
|
package/dist/mcp/utils.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a76_0x216f90=a76_0x4fe7;(function(_0x59abb9,_0x5a41b5){const _0x5020e5=a76_0x4fe7,_0x55a4e8=_0x59abb9();while(!![]){try{const _0x28c9f7=parseInt(_0x5020e5(0x1d1))/0x1+parseInt(_0x5020e5(0x1c3))/0x2+-parseInt(_0x5020e5(0x1d2))/0x3+parseInt(_0x5020e5(0x1c5))/0x4*(parseInt(_0x5020e5(0x1d8))/0x5)+parseInt(_0x5020e5(0x1d0))/0x6+-parseInt(_0x5020e5(0x1c8))/0x7+-parseInt(_0x5020e5(0x1cd))/0x8*(-parseInt(_0x5020e5(0x1cf))/0x9);if(_0x28c9f7===_0x5a41b5)break;else _0x55a4e8['push'](_0x55a4e8['shift']());}catch(_0x41a92e){_0x55a4e8['push'](_0x55a4e8['shift']());}}}(a76_0x4bab,0xd6122));const BLOCKED_COMMANDS=['auth\x20setup',a76_0x216f90(0x1c0),'auth\x20clear',a76_0x216f90(0x1cb),a76_0x216f90(0x1c1),a76_0x216f90(0x1ca),a76_0x216f90(0x1c2)],BLOCKED_FLAGS=[a76_0x216f90(0x1d6),'-p'];function a76_0x4bab(){const _0x557fbf=['This\x20command\x20is\x20not\x20allowed\x20via\x20MCP','70396JKqmHm','slice','toLowerCase','1652210bqBurw','Credential\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','profile\x20remove','profile\x20create','Cannot\x20run\x20MCP\x20server\x20recursively','400664aMwSIm','Profile\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','27RQMeSe','9791538NjhcSF','701623RNLtCk','4455849wSARWu','trimEnd','auth\x20clear','includes','--profile','join','5raLaIn','startsWith','Profile\x20switching\x20via\x20--profile\x20flag\x20is\x20not\x20allowed\x20via\x20MCP','length','auth\x20login','profile\x20delete','mcp','193506GDWrHQ'];a76_0x4bab=function(){return _0x557fbf;};return a76_0x4bab();}export function hasBlockedFlag(_0xc50527){const _0x4372f4=a76_0x216f90;for(const _0x27937f of _0xc50527){const _0x2da366=_0x27937f[_0x4372f4(0x1c7)]();for(const _0x2aa1dd of BLOCKED_FLAGS){if(_0x2da366===_0x2aa1dd||_0x2da366[_0x4372f4(0x1d9)](_0x2aa1dd+'='))return!![];}}return![];}function a76_0x4fe7(_0x49abbb,_0x31db98){_0x49abbb=_0x49abbb-0x1bf;const _0x4babef=a76_0x4bab();let _0x4fe7ce=_0x4babef[_0x49abbb];return _0x4fe7ce;}export function isBlockedCommand(_0x1ba452){const _0x23739a=a76_0x216f90;if(_0x1ba452[_0x23739a(0x1bf)]===0x0)return![];if(hasBlockedFlag(_0x1ba452))return!![];const _0x18e105=_0x1ba452[_0x23739a(0x1c6)](0x0,0x2)[_0x23739a(0x1d7)]('\x20')['toLowerCase']();for(const _0x2c5fee of BLOCKED_COMMANDS){if(_0x18e105['startsWith'](_0x2c5fee))return!![];}const _0xe14efe=_0x1ba452[0x0]['toLowerCase']();for(const _0x498a7c of BLOCKED_COMMANDS){if(!_0x498a7c[_0x23739a(0x1d5)]('\x20')&&_0xe14efe===_0x498a7c)return!![];}return![];}export function getBlockedReason(_0xa0e4b){const _0x3f7ef2=a76_0x216f90;if(!isBlockedCommand(_0xa0e4b))return undefined;if(hasBlockedFlag(_0xa0e4b))return _0x3f7ef2(0x1da);const _0x14d6fe=_0xa0e4b[_0x3f7ef2(0x1c6)](0x0,0x2)[_0x3f7ef2(0x1d7)]('\x20')[_0x3f7ef2(0x1c7)](),_0x450e66=_0xa0e4b[0x0][_0x3f7ef2(0x1c7)]();if(_0x14d6fe[_0x3f7ef2(0x1d9)]('auth\x20setup')||_0x14d6fe[_0x3f7ef2(0x1d9)](_0x3f7ef2(0x1c0))||_0x14d6fe[_0x3f7ef2(0x1d9)](_0x3f7ef2(0x1d4)))return _0x3f7ef2(0x1c9);if(_0x14d6fe[_0x3f7ef2(0x1d9)]('profile\x20create')||_0x14d6fe[_0x3f7ef2(0x1d9)](_0x3f7ef2(0x1c1))||_0x14d6fe['startsWith'](_0x3f7ef2(0x1ca)))return _0x3f7ef2(0x1ce);if(_0x450e66===_0x3f7ef2(0x1c2))return _0x3f7ef2(0x1cc);return _0x3f7ef2(0x1c4);}export function formatOutput(_0x38a25b){const _0x3bcf2f=a76_0x216f90,_0x5d60a6=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;let _0x3d3acb=_0x38a25b['replace'](_0x5d60a6,'');return _0x3d3acb=_0x3d3acb['replace'](/\r\n/g,'\x0a')['replace'](/\r/g,'\x0a'),_0x3d3acb=_0x3d3acb[_0x3bcf2f(0x1d3)](),_0x3d3acb;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a77_0x54ea(_0x333ac2,_0x11269f){_0x333ac2=_0x333ac2-0x1a4;const _0x695b3b=a77_0x695b();let _0x54eaae=_0x695b3b[_0x333ac2];return _0x54eaae;}(function(_0x399f6e,_0x2a4277){const _0x3fbab=a77_0x54ea,_0x35e78b=_0x399f6e();while(!![]){try{const _0xe0617=-parseInt(_0x3fbab(0x1d3))/0x1+-parseInt(_0x3fbab(0x1b6))/0x2*(parseInt(_0x3fbab(0x1b0))/0x3)+-parseInt(_0x3fbab(0x1c7))/0x4+-parseInt(_0x3fbab(0x1ab))/0x5*(parseInt(_0x3fbab(0x1b9))/0x6)+-parseInt(_0x3fbab(0x1c6))/0x7+parseInt(_0x3fbab(0x1b3))/0x8+parseInt(_0x3fbab(0x1a6))/0x9*(parseInt(_0x3fbab(0x1bf))/0xa);if(_0xe0617===_0x2a4277)break;else _0x35e78b['push'](_0x35e78b['shift']());}catch(_0x23f47c){_0x35e78b['push'](_0x35e78b['shift']());}}}(a77_0x695b,0x457b2));import{readFile,writeFile,appendFile,mkdir,readdir,stat}from'node:fs/promises';import{existsSync}from'node:fs';import{join,resolve}from'node:path';import{getModelPricing,calculateTokenCost,usdToAiCredits}from'../sdk/llm/model-factors.js';import{TDXLogger,LogLevel}from'../utils/tdx-logger.js';import{getGlobalCacheDir}from'../utils/global-cache.js';let usageLogger=null;async function getLogger(){const _0x3d3e09=a77_0x54ea;return!usageLogger&&(usageLogger=new TDXLogger(LogLevel[_0x3d3e09(0x1e4)],!![]),await usageLogger['init']()),usageLogger;}function getUsageDir(){const _0x113eaf=a77_0x54ea;return join(getGlobalCacheDir(),_0x113eaf(0x1d9));}function sanitizeSessionId(_0x345857){const _0x194261=a77_0x54ea;return _0x345857[_0x194261(0x1c9)](/[^a-zA-Z0-9_-]/g,'_');}function getSafeJsonlPath(_0x5027a1){const _0x10bbbe=a77_0x54ea,_0x114f57=getUsageDir(),_0x23535b=sanitizeSessionId(_0x5027a1),_0x28c4ac=resolve(_0x114f57,_0x23535b+'.jsonl');if(!_0x28c4ac[_0x10bbbe(0x1ce)](_0x114f57))throw new Error(_0x10bbbe(0x1d5));return _0x28c4ac;}function getStatsCachePath(){const _0x5f2153=a77_0x54ea;return join(getUsageDir(),_0x5f2153(0x1ac));}async function ensureUsageDir(){const _0x2daae2=getUsageDir();!existsSync(_0x2daae2)&&await mkdir(_0x2daae2,{'recursive':!![]});}export async function appendUsageEntry(_0x3529ed,_0x1cbce9){const _0x3284d8=a77_0x54ea,_0x4cff0c=sanitizeSessionId(_0x3529ed);await ensureUsageDir();const _0x50e775=getSafeJsonlPath(_0x4cff0c),_0xbe074f=JSON[_0x3284d8(0x1c8)](_0x1cbce9)+'\x0a';await appendFile(_0x50e775,_0xbe074f,_0x3284d8(0x1be));}async function readSessionJsonl(_0x189213){const _0x4944f3=a77_0x54ea,_0x283814=getSafeJsonlPath(_0x189213);if(!existsSync(_0x283814))return[];try{const _0x1b7106=await readFile(_0x283814,_0x4944f3(0x1be)),_0x3a0257=_0x1b7106[_0x4944f3(0x1af)]()['split']('\x0a')[_0x4944f3(0x1db)](Boolean);return _0x3a0257[_0x4944f3(0x1de)](_0x47f9fd=>{try{return JSON['parse'](_0x47f9fd);}catch{return null;}})[_0x4944f3(0x1db)](_0x5645ed=>_0x5645ed!==null);}catch(_0x208c79){const _0x3e4457=await getLogger();return _0x3e4457['warn'](_0x4944f3(0x1a7)+_0x189213+_0x4944f3(0x1a5),_0x208c79 instanceof Error?_0x208c79[_0x4944f3(0x1bd)]:String(_0x208c79)),[];}}async function getAllSessionFiles(){const _0x5e470d=a77_0x54ea,_0x55f92a=getUsageDir();if(!existsSync(_0x55f92a))return[];try{const _0x3c5d91=await readdir(_0x55f92a);return _0x3c5d91[_0x5e470d(0x1db)](_0x1e3dc9=>_0x1e3dc9[_0x5e470d(0x1e0)](_0x5e470d(0x1ad)))[_0x5e470d(0x1de)](_0x10907d=>_0x10907d[_0x5e470d(0x1c9)](_0x5e470d(0x1ad),''));}catch(_0x47f127){const _0x136b5f=await getLogger();return _0x136b5f['warn'](_0x5e470d(0x1d1),_0x47f127 instanceof Error?_0x47f127['message']:String(_0x47f127)),[];}}async function readStatsCache(){const _0x4556a8=a77_0x54ea,_0x17f180=getStatsCachePath();if(!existsSync(_0x17f180))return null;try{const _0x3b07f2=await readFile(_0x17f180,'utf-8'),_0x224289=JSON[_0x4556a8(0x1a8)](_0x3b07f2),_0x24f73b=Object['values'](_0x224289[_0x4556a8(0x1c2)]||{})[0x0];if(_0x24f73b&&_0x4556a8(0x1dc)in _0x24f73b)return null;return _0x224289;}catch{return null;}}async function writeStatsCache(_0x2443d2){const _0x13cd5a=a77_0x54ea;await ensureUsageDir();const _0xea8a08=getStatsCachePath();await writeFile(_0xea8a08,JSON[_0x13cd5a(0x1c8)](_0x2443d2,null,0x2),_0x13cd5a(0x1be));}async function isCacheUpToDate(_0xdd14,_0x604aa9){const _0x46230f=a77_0x54ea,_0x45b150=_0xdd14[_0x46230f(0x1c2)][_0x604aa9];if(!_0x45b150)return![];const _0x53ceb4=getSafeJsonlPath(_0x604aa9);if(!existsSync(_0x53ceb4))return!![];try{const _0x24d120=await stat(_0x53ceb4),_0x1dca07=new Date(_0x45b150['lastUpdatedAt'])[_0x46230f(0x1b2)](),_0x4041da=_0x24d120[_0x46230f(0x1c0)][_0x46230f(0x1b2)]();return _0x1dca07>_0x4041da;}catch{return![];}}export async function rebuildCache(){const _0x181862=a77_0x54ea,_0x3c6dfe=new Date(),_0x863195=_0x3c6dfe[_0x181862(0x1d8)]()['slice'](0x0,0xa),_0x205222=_0x3c6dfe[_0x181862(0x1d8)]()[_0x181862(0x1e3)](0x0,0x7),_0x5a0db7={'daily':{},'monthly':{},'sessions':{},'profiles':{},'sources':{},'lastRebuiltAt':_0x3c6dfe['toISOString']()},_0x352dc8=await getAllSessionFiles();for(const _0x5d748d of _0x352dc8){try{const _0x1e61a8=await readSessionJsonl(_0x5d748d);if(_0x1e61a8[_0x181862(0x1da)]===0x0)continue;let _0x38ef78=0x0;const _0x5714c1={};let _0x2d1554='';for(const _0x54a138 of _0x1e61a8){const _0x2fe7af=getModelPricing(_0x54a138['model']),_0x5bd8fa=calculateTokenCost(_0x54a138[_0x181862(0x1a9)],_0x54a138[_0x181862(0x1df)],_0x54a138[_0x181862(0x1bc)]??0x0,_0x54a138[_0x181862(0x1e6)]??0x0,_0x2fe7af),_0x398b8f=usdToAiCredits(_0x5bd8fa);_0x38ef78+=_0x398b8f;const _0x10b5bc=_0x54a138[_0x181862(0x1b5)]||_0x181862(0x1ca);_0x5714c1[_0x10b5bc]=_0x54a138[_0x181862(0x1a9)]+(_0x54a138['cacheCreationInputTokens']??0x0)+(_0x54a138[_0x181862(0x1e6)]??0x0);_0x54a138['timestamp']>_0x2d1554&&(_0x2d1554=_0x54a138[_0x181862(0x1ae)]);const _0x2e5b1c=_0x54a138['timestamp'][_0x181862(0x1e3)](0x0,0xa);!_0x5a0db7['daily'][_0x2e5b1c]&&(_0x5a0db7[_0x181862(0x1cc)][_0x2e5b1c]={'totalCredits':0x0,'entryCount':0x0});_0x5a0db7[_0x181862(0x1cc)][_0x2e5b1c][_0x181862(0x1a4)]+=_0x398b8f,_0x5a0db7[_0x181862(0x1cc)][_0x2e5b1c][_0x181862(0x1aa)]+=0x1;const _0x26a669=_0x54a138[_0x181862(0x1ae)][_0x181862(0x1e3)](0x0,0x7);!_0x5a0db7[_0x181862(0x1c3)][_0x26a669]&&(_0x5a0db7[_0x181862(0x1c3)][_0x26a669]={'totalCredits':0x0,'entryCount':0x0});_0x5a0db7[_0x181862(0x1c3)][_0x26a669][_0x181862(0x1a4)]+=_0x398b8f,_0x5a0db7[_0x181862(0x1c3)][_0x26a669][_0x181862(0x1aa)]+=0x1;const _0x1f0f2a=_0x54a138[_0x181862(0x1d2)]||'default';!_0x5a0db7[_0x181862(0x1e2)][_0x1f0f2a]&&(_0x5a0db7[_0x181862(0x1e2)][_0x1f0f2a]={'totalCredits':0x0,'entryCount':0x0,'lastUsedAt':'','todayCredits':0x0,'todayDate':_0x863195,'monthCredits':0x0,'month':_0x205222});_0x5a0db7[_0x181862(0x1e2)][_0x1f0f2a][_0x181862(0x1a4)]+=_0x398b8f,_0x5a0db7[_0x181862(0x1e2)][_0x1f0f2a]['entryCount']+=0x1;_0x54a138[_0x181862(0x1ae)]>_0x5a0db7[_0x181862(0x1e2)][_0x1f0f2a]['lastUsedAt']&&(_0x5a0db7[_0x181862(0x1e2)][_0x1f0f2a]['lastUsedAt']=_0x54a138[_0x181862(0x1ae)]);_0x2e5b1c===_0x863195&&(_0x5a0db7['profiles'][_0x1f0f2a][_0x181862(0x1c5)]+=_0x398b8f);_0x26a669===_0x205222&&(_0x5a0db7[_0x181862(0x1e2)][_0x1f0f2a][_0x181862(0x1bb)]+=_0x398b8f);const _0x10224c=_0x54a138[_0x181862(0x1d7)]||'tdx-claude';!_0x5a0db7[_0x181862(0x1d0)][_0x10224c]&&(_0x5a0db7[_0x181862(0x1d0)][_0x10224c]={'totalCredits':0x0,'entryCount':0x0,'todayCredits':0x0,'todayDate':_0x863195,'monthCredits':0x0,'month':_0x205222}),_0x5a0db7['sources'][_0x10224c][_0x181862(0x1a4)]+=_0x398b8f,_0x5a0db7[_0x181862(0x1d0)][_0x10224c][_0x181862(0x1aa)]+=0x1,_0x2e5b1c===_0x863195&&(_0x5a0db7[_0x181862(0x1d0)][_0x10224c][_0x181862(0x1c5)]+=_0x398b8f),_0x26a669===_0x205222&&(_0x5a0db7[_0x181862(0x1d0)][_0x10224c][_0x181862(0x1bb)]+=_0x398b8f);}_0x5a0db7[_0x181862(0x1c2)][_0x5d748d]={'totalCredits':_0x38ef78,'latestContextTokensBySignature':_0x5714c1,'createdAt':_0x1e61a8[0x0][_0x181862(0x1ae)],'lastUpdatedAt':_0x2d1554};}catch(_0x1afa44){const _0x2292f6=await getLogger();_0x2292f6[_0x181862(0x1e7)](_0x181862(0x1c1)+_0x5d748d+':',_0x1afa44 instanceof Error?_0x1afa44[_0x181862(0x1bd)]:String(_0x1afa44));continue;}}return cleanupOldEntries(_0x5a0db7),await writeStatsCache(_0x5a0db7),_0x5a0db7;}function a77_0x695b(){const _0x104c66=['reduce','18qQffFA','entries','monthCredits','cacheCreationInputTokens','message','utf-8','12894590XEJZQP','mtime','Failed\x20to\x20process\x20session\x20','sessions','monthly','month','todayCredits','3458273OzncdS','602876zVmeTz','stringify','replace','default','lastUsedAt','daily','todayDate','startsWith','getFullYear','sources','Failed\x20to\x20read\x20usage\x20directory:','profile','49347mgTCPb','getMonth','Invalid\x20session\x20ID:\x20path\x20traversal\x20detected','credits','source','toISOString','claude-usage','length','filter','totalChatUnits','object','map','outputTokens','endsWith','values','profiles','slice','WARN','sort','cacheReadInputTokens','warn','totalCredits','.jsonl:','9mKNFSo','Failed\x20to\x20read\x20usage\x20file\x20','parse','inputTokens','entryCount','348940zwXkmh','stats-cache.json','.jsonl','timestamp','trim','3VLABop','latestContextTokensBySignature','getTime','2267352yusxHU','max','contextSignature','769630JePczG','keys'];a77_0x695b=function(){return _0x104c66;};return a77_0x695b();}function cleanupOldEntries(_0x2575a6){const _0x18576a=a77_0x54ea,_0x413810=new Date(),_0x180814=new Date(_0x413810['getTime']()-0x7*0x18*0x3c*0x3c*0x3e8);for(const _0x333f3a of Object[_0x18576a(0x1b7)](_0x2575a6[_0x18576a(0x1cc)])){new Date(_0x333f3a)<_0x180814&&delete _0x2575a6[_0x18576a(0x1cc)][_0x333f3a];}const _0x103b2d=new Date(_0x413810[_0x18576a(0x1cf)]()-0x1,_0x413810[_0x18576a(0x1d4)](),0x1);for(const _0x291faf of Object['keys'](_0x2575a6['monthly'])){const [_0x3dee00,_0xc6f5eb]=_0x291faf['split']('-')['map'](Number),_0x1e2263=new Date(_0x3dee00,_0xc6f5eb-0x1,0x1);_0x1e2263<_0x103b2d&&delete _0x2575a6[_0x18576a(0x1c3)][_0x291faf];}const _0x42dd6e=new Date(_0x413810[_0x18576a(0x1b2)]()-0x1e*0x18*0x3c*0x3c*0x3e8);for(const [_0x43ff74,_0x58b07e]of Object[_0x18576a(0x1ba)](_0x2575a6[_0x18576a(0x1c2)])){new Date(_0x58b07e['lastUpdatedAt'])<_0x42dd6e&&delete _0x2575a6[_0x18576a(0x1c2)][_0x43ff74];}}export async function getOrUpdateCache(_0x1fae12){const _0x2349fe=_0x1fae12?sanitizeSessionId(_0x1fae12):undefined,_0x1d2d1f=await readStatsCache();if(!_0x1d2d1f)return rebuildCache();if(_0x2349fe){const _0x5f5218=await isCacheUpToDate(_0x1d2d1f,_0x2349fe);if(!_0x5f5218)return rebuildCache();}return _0x1d2d1f;}export async function getSessionCredits(_0x444546){const _0xafa92d=a77_0x54ea,_0x22da41=sanitizeSessionId(_0x444546),_0xdd5ef3=await getOrUpdateCache(_0x22da41),_0x31c0a1=_0xdd5ef3[_0xafa92d(0x1c2)][_0x22da41];if(!_0x31c0a1)return 0x0;return _0x31c0a1[_0xafa92d(0x1a4)];}export async function getTodayCredits(){const _0x3c772f=a77_0x54ea,_0x396bf0=await getOrUpdateCache(),_0xc8b602=new Date()[_0x3c772f(0x1d8)]()['slice'](0x0,0xa),_0x3c94f1=_0x396bf0[_0x3c772f(0x1cc)][_0xc8b602];if(!_0x3c94f1)return 0x0;return _0x3c94f1[_0x3c772f(0x1a4)];}export async function getMonthCredits(){const _0x3879a7=a77_0x54ea,_0xcb5b27=await getOrUpdateCache(),_0x5b9214=new Date()['toISOString']()[_0x3879a7(0x1e3)](0x0,0x7),_0xb2dacd=_0xcb5b27[_0x3879a7(0x1c3)][_0x5b9214];if(!_0xb2dacd)return 0x0;return _0xb2dacd[_0x3879a7(0x1a4)];}export async function getSessionStats(_0x56b3bc){const _0x2e19e7=a77_0x54ea,_0xfbefee=sanitizeSessionId(_0x56b3bc),_0xfdb4d1=await getOrUpdateCache(_0xfbefee);return _0xfdb4d1[_0x2e19e7(0x1c2)][_0xfbefee]||null;}function getMaxLatestContextTokens(_0x5a7e44){const _0x1129ac=a77_0x54ea,_0x57e260=Object[_0x1129ac(0x1e1)](_0x5a7e44);if(_0x57e260['length']===0x0)return 0x0;return Math[_0x1129ac(0x1b4)](..._0x57e260);}export async function getUsageStats(_0x183911,_0x59603b){const _0x336f49=a77_0x54ea,_0x26c611=sanitizeSessionId(_0x183911),_0x189d9a=await getOrUpdateCache(_0x26c611),_0x3a6cc2=_0x189d9a[_0x336f49(0x1c2)][_0x26c611],_0x23a303=new Date()[_0x336f49(0x1d8)]()[_0x336f49(0x1e3)](0x0,0xa),_0x20e9b8=new Date()[_0x336f49(0x1d8)]()['slice'](0x0,0x7);if(_0x59603b){const _0x368194=_0x189d9a[_0x336f49(0x1e2)]?.[_0x59603b],_0x5911f8=_0x368194?.[_0x336f49(0x1cd)]===_0x23a303?_0x368194[_0x336f49(0x1c5)]:0x0,_0x499587=_0x368194?.[_0x336f49(0x1c4)]===_0x20e9b8?_0x368194[_0x336f49(0x1bb)]:0x0;return{'sessionCredits':_0x3a6cc2?_0x3a6cc2['totalCredits']:0x0,'todayCredits':_0x5911f8,'monthCredits':_0x499587,'latestContextTokens':_0x3a6cc2?getMaxLatestContextTokens(_0x3a6cc2[_0x336f49(0x1b1)]):0x0};}return{'sessionCredits':_0x3a6cc2?_0x3a6cc2['totalCredits']:0x0,'todayCredits':_0x189d9a[_0x336f49(0x1cc)][_0x23a303]?_0x189d9a[_0x336f49(0x1cc)][_0x23a303][_0x336f49(0x1a4)]:0x0,'monthCredits':_0x189d9a['monthly'][_0x20e9b8]?_0x189d9a[_0x336f49(0x1c3)][_0x20e9b8]['totalCredits']:0x0,'latestContextTokens':_0x3a6cc2?getMaxLatestContextTokens(_0x3a6cc2[_0x336f49(0x1b1)]):0x0};}export async function getAllProfileStats(){const _0x29e6e1=a77_0x54ea,_0xcb4fd4=await getOrUpdateCache(),_0x127613=_0xcb4fd4[_0x29e6e1(0x1e2)]||{};return Object[_0x29e6e1(0x1ba)](_0x127613)[_0x29e6e1(0x1db)](([,_0x54d64b])=>_0x54d64b&&typeof _0x54d64b===_0x29e6e1(0x1dd))[_0x29e6e1(0x1de)](([_0x3a8aa0,_0x3b121b])=>({'profile':_0x3a8aa0,'credits':_0x3b121b[_0x29e6e1(0x1a4)]||0x0,'entryCount':_0x3b121b[_0x29e6e1(0x1aa)]||0x0,'lastUsedAt':_0x3b121b[_0x29e6e1(0x1cb)]||''}))[_0x29e6e1(0x1e5)]((_0x316170,_0x3ef988)=>_0x3ef988[_0x29e6e1(0x1d6)]-_0x316170[_0x29e6e1(0x1d6)]);}export async function getAllSourceStats(){const _0xc1ecd0=a77_0x54ea,_0x1b8e51=await getOrUpdateCache(),_0x2ee6c3=_0x1b8e51[_0xc1ecd0(0x1d0)]||{},_0xb02368=new Date()['toISOString']()['slice'](0x0,0xa),_0x231dbb=new Date()['toISOString']()['slice'](0x0,0x7);return Object['entries'](_0x2ee6c3)[_0xc1ecd0(0x1db)](([,_0x1af3d5])=>_0x1af3d5&&typeof _0x1af3d5===_0xc1ecd0(0x1dd))['map'](([_0x51df07,_0x1e8489])=>({'source':_0x51df07,'credits':_0x1e8489[_0xc1ecd0(0x1a4)]||0x0,'todayCredits':_0x1e8489[_0xc1ecd0(0x1cd)]===_0xb02368?_0x1e8489[_0xc1ecd0(0x1c5)]||0x0:0x0,'monthCredits':_0x1e8489[_0xc1ecd0(0x1c4)]===_0x231dbb?_0x1e8489[_0xc1ecd0(0x1bb)]||0x0:0x0,'entryCount':_0x1e8489[_0xc1ecd0(0x1aa)]||0x0}))[_0xc1ecd0(0x1e5)]((_0x42b9b0,_0x144064)=>_0x144064[_0xc1ecd0(0x1d6)]-_0x42b9b0['credits']);}export async function getUsageSummary(){const _0x2e8ba7=a77_0x54ea,_0x3e158d=await getOrUpdateCache(),_0x223f8c=_0x3e158d[_0x2e8ba7(0x1e2)]||{},_0xb653e9=new Date()[_0x2e8ba7(0x1d8)]()['slice'](0x0,0xa),_0x27acf9=new Date()['toISOString']()['slice'](0x0,0x7),_0x21994a=Object['values'](_0x223f8c)[_0x2e8ba7(0x1db)](_0x5b87a6=>_0x5b87a6&&typeof _0x5b87a6===_0x2e8ba7(0x1dd)),_0x21d93a=_0x21994a[_0x2e8ba7(0x1b8)]((_0x2b2652,_0x567f6e)=>_0x2b2652+(_0x567f6e[_0x2e8ba7(0x1a4)]||0x0),0x0);return{'todayCredits':_0x3e158d[_0x2e8ba7(0x1cc)][_0xb653e9]?_0x3e158d[_0x2e8ba7(0x1cc)][_0xb653e9][_0x2e8ba7(0x1a4)]||0x0:0x0,'monthCredits':_0x3e158d[_0x2e8ba7(0x1c3)][_0x27acf9]?_0x3e158d[_0x2e8ba7(0x1c3)][_0x27acf9][_0x2e8ba7(0x1a4)]||0x0:0x0,'totalCredits':_0x21d93a,'profileCount':_0x21994a[_0x2e8ba7(0x1da)]};}
|
|
1
|
+
(function(_0x4fe2db,_0x1372a9){const _0x390915=a77_0x400e,_0x412d41=_0x4fe2db();while(!![]){try{const _0x12f86e=parseInt(_0x390915(0x1c1))/0x1*(parseInt(_0x390915(0x198))/0x2)+-parseInt(_0x390915(0x191))/0x3+parseInt(_0x390915(0x1ac))/0x4+-parseInt(_0x390915(0x196))/0x5+parseInt(_0x390915(0x1aa))/0x6*(-parseInt(_0x390915(0x1a4))/0x7)+-parseInt(_0x390915(0x1bd))/0x8+-parseInt(_0x390915(0x1c0))/0x9*(-parseInt(_0x390915(0x1a9))/0xa);if(_0x12f86e===_0x1372a9)break;else _0x412d41['push'](_0x412d41['shift']());}catch(_0x523f12){_0x412d41['push'](_0x412d41['shift']());}}}(a77_0x5e66,0x321d0));import{readFile,writeFile,appendFile,mkdir,readdir,stat}from'node:fs/promises';import{existsSync}from'node:fs';import{join,resolve}from'node:path';import{getModelPricing,calculateTokenCost,usdToAiCredits}from'../sdk/llm/model-factors.js';import{TDXLogger,LogLevel}from'../utils/tdx-logger.js';import{getGlobalCacheDir}from'../utils/global-cache.js';let usageLogger=null;async function getLogger(){const _0x18729d=a77_0x400e;return!usageLogger&&(usageLogger=new TDXLogger(LogLevel[_0x18729d(0x1c2)],!![]),await usageLogger[_0x18729d(0x1b2)]()),usageLogger;}function getUsageDir(){const _0x131fa9=a77_0x400e;return join(getGlobalCacheDir(),_0x131fa9(0x1a6));}function sanitizeSessionId(_0x31c75e){const _0x1bea50=a77_0x400e;return _0x31c75e[_0x1bea50(0x1ba)](/[^a-zA-Z0-9_-]/g,'_');}function getSafeJsonlPath(_0x3cf4c2){const _0x2615de=a77_0x400e,_0x4b9404=getUsageDir(),_0x3ca132=sanitizeSessionId(_0x3cf4c2),_0x575d86=resolve(_0x4b9404,_0x3ca132+_0x2615de(0x19f));if(!_0x575d86[_0x2615de(0x1c6)](_0x4b9404))throw new Error(_0x2615de(0x1c5));return _0x575d86;}function a77_0x5e66(){const _0xcfae09=['getMonth','entries','message','replace','sources','credits','1820800QjEVtj','length','monthCredits','45QSbocb','89681gHcaHu','WARN','Failed\x20to\x20read\x20usage\x20directory:','mtime','Invalid\x20session\x20ID:\x20path\x20traversal\x20detected','startsWith','values','entryCount','daily','todayDate','latestContextTokensBySignature','tdx-claude','totalCredits','filter','lastUpdatedAt','reduce','lastUsedAt','profile','max','521637LbrmtO','split','totalChatUnits','todayCredits','monthly','1946560uIyCRX','timestamp','2jroERs','.jsonl:','month','model','sort','default','keys','.jsonl','cacheCreationInputTokens','profiles','utf-8','stringify','35QFjlmn','inputTokens','claude-usage','getFullYear','sessions','2177490DvzLxO','286188fyVwsK','trim','224476kQcsxt','object','cacheReadInputTokens','map','contextSignature','stats-cache.json','init','getTime','slice','toISOString','warn'];a77_0x5e66=function(){return _0xcfae09;};return a77_0x5e66();}function a77_0x400e(_0x2bff81,_0x5cea7b){_0x2bff81=_0x2bff81-0x18e;const _0x5e665a=a77_0x5e66();let _0x400e15=_0x5e665a[_0x2bff81];return _0x400e15;}function getStatsCachePath(){const _0x4ed178=a77_0x400e;return join(getUsageDir(),_0x4ed178(0x1b1));}async function ensureUsageDir(){const _0x4a64d1=getUsageDir();!existsSync(_0x4a64d1)&&await mkdir(_0x4a64d1,{'recursive':!![]});}export async function appendUsageEntry(_0x88b9f2,_0x3b11e4){const _0x12c90c=a77_0x400e,_0x11e86d=sanitizeSessionId(_0x88b9f2);await ensureUsageDir();const _0x4cb511=getSafeJsonlPath(_0x11e86d),_0x261747=JSON[_0x12c90c(0x1a3)](_0x3b11e4)+'\x0a';await appendFile(_0x4cb511,_0x261747,_0x12c90c(0x1a2));}async function readSessionJsonl(_0x25771e){const _0x5e6dbe=a77_0x400e,_0x51c774=getSafeJsonlPath(_0x25771e);if(!existsSync(_0x51c774))return[];try{const _0x17ded0=await readFile(_0x51c774,_0x5e6dbe(0x1a2)),_0x4e9e02=_0x17ded0[_0x5e6dbe(0x1ab)]()['split']('\x0a')[_0x5e6dbe(0x1ce)](Boolean);return _0x4e9e02[_0x5e6dbe(0x1af)](_0x18db9a=>{try{return JSON['parse'](_0x18db9a);}catch{return null;}})[_0x5e6dbe(0x1ce)](_0x45a517=>_0x45a517!==null);}catch(_0x13642d){const _0x11e509=await getLogger();return _0x11e509[_0x5e6dbe(0x1b6)]('Failed\x20to\x20read\x20usage\x20file\x20'+_0x25771e+_0x5e6dbe(0x199),_0x13642d instanceof Error?_0x13642d[_0x5e6dbe(0x1b9)]:String(_0x13642d)),[];}}async function getAllSessionFiles(){const _0x23972e=a77_0x400e,_0x4d5fe3=getUsageDir();if(!existsSync(_0x4d5fe3))return[];try{const _0x5664c8=await readdir(_0x4d5fe3);return _0x5664c8[_0x23972e(0x1ce)](_0x2c94db=>_0x2c94db['endsWith']('.jsonl'))[_0x23972e(0x1af)](_0x2171c9=>_0x2171c9['replace'](_0x23972e(0x19f),''));}catch(_0x94fda9){const _0x5c8fc2=await getLogger();return _0x5c8fc2[_0x23972e(0x1b6)](_0x23972e(0x1c3),_0x94fda9 instanceof Error?_0x94fda9[_0x23972e(0x1b9)]:String(_0x94fda9)),[];}}async function readStatsCache(){const _0x456188=a77_0x400e,_0x57e371=getStatsCachePath();if(!existsSync(_0x57e371))return null;try{const _0x4f8eed=await readFile(_0x57e371,_0x456188(0x1a2)),_0x39c584=JSON['parse'](_0x4f8eed),_0x50fb3c=Object[_0x456188(0x1c7)](_0x39c584[_0x456188(0x1a8)]||{})[0x0];if(_0x50fb3c&&_0x456188(0x193)in _0x50fb3c)return null;return _0x39c584;}catch{return null;}}async function writeStatsCache(_0x2413bd){const _0x179526=a77_0x400e;await ensureUsageDir();const _0x22df92=getStatsCachePath();await writeFile(_0x22df92,JSON[_0x179526(0x1a3)](_0x2413bd,null,0x2),_0x179526(0x1a2));}async function isCacheUpToDate(_0x522583,_0x3fcd68){const _0x2ad64b=a77_0x400e,_0x5d727f=_0x522583[_0x2ad64b(0x1a8)][_0x3fcd68];if(!_0x5d727f)return![];const _0x4c88a8=getSafeJsonlPath(_0x3fcd68);if(!existsSync(_0x4c88a8))return!![];try{const _0x4769f3=await stat(_0x4c88a8),_0x191523=new Date(_0x5d727f[_0x2ad64b(0x1cf)])[_0x2ad64b(0x1b3)](),_0x19be5a=_0x4769f3[_0x2ad64b(0x1c4)][_0x2ad64b(0x1b3)]();return _0x191523>_0x19be5a;}catch{return![];}}export async function rebuildCache(){const _0x5a6bcc=a77_0x400e,_0x2f363a=new Date(),_0x449059=_0x2f363a['toISOString']()[_0x5a6bcc(0x1b4)](0x0,0xa),_0x3a2a02=_0x2f363a[_0x5a6bcc(0x1b5)]()[_0x5a6bcc(0x1b4)](0x0,0x7),_0xf20f4={'daily':{},'monthly':{},'sessions':{},'profiles':{},'sources':{},'lastRebuiltAt':_0x2f363a['toISOString']()},_0x4b00c1=await getAllSessionFiles();for(const _0x272ee4 of _0x4b00c1){try{const _0x4a35f3=await readSessionJsonl(_0x272ee4);if(_0x4a35f3[_0x5a6bcc(0x1be)]===0x0)continue;let _0x1862be=0x0;const _0x454e80={};let _0xa1b356='';for(const _0x41e1b8 of _0x4a35f3){const _0x303a74=getModelPricing(_0x41e1b8[_0x5a6bcc(0x19b)]),_0x41c649=calculateTokenCost(_0x41e1b8[_0x5a6bcc(0x1a5)],_0x41e1b8['outputTokens'],_0x41e1b8[_0x5a6bcc(0x1a0)]??0x0,_0x41e1b8[_0x5a6bcc(0x1ae)]??0x0,_0x303a74),_0x54b223=usdToAiCredits(_0x41c649);_0x1862be+=_0x54b223;const _0x29f675=_0x41e1b8[_0x5a6bcc(0x1b0)]||_0x5a6bcc(0x19d);_0x454e80[_0x29f675]=_0x41e1b8[_0x5a6bcc(0x1a5)]+(_0x41e1b8[_0x5a6bcc(0x1a0)]??0x0)+(_0x41e1b8[_0x5a6bcc(0x1ae)]??0x0);_0x41e1b8[_0x5a6bcc(0x197)]>_0xa1b356&&(_0xa1b356=_0x41e1b8[_0x5a6bcc(0x197)]);const _0x5d4c4e=_0x41e1b8['timestamp'][_0x5a6bcc(0x1b4)](0x0,0xa);!_0xf20f4[_0x5a6bcc(0x1c9)][_0x5d4c4e]&&(_0xf20f4[_0x5a6bcc(0x1c9)][_0x5d4c4e]={'totalCredits':0x0,'entryCount':0x0});_0xf20f4[_0x5a6bcc(0x1c9)][_0x5d4c4e][_0x5a6bcc(0x1cd)]+=_0x54b223,_0xf20f4[_0x5a6bcc(0x1c9)][_0x5d4c4e][_0x5a6bcc(0x1c8)]+=0x1;const _0x403989=_0x41e1b8[_0x5a6bcc(0x197)]['slice'](0x0,0x7);!_0xf20f4[_0x5a6bcc(0x195)][_0x403989]&&(_0xf20f4[_0x5a6bcc(0x195)][_0x403989]={'totalCredits':0x0,'entryCount':0x0});_0xf20f4[_0x5a6bcc(0x195)][_0x403989][_0x5a6bcc(0x1cd)]+=_0x54b223,_0xf20f4[_0x5a6bcc(0x195)][_0x403989]['entryCount']+=0x1;const _0x462ab9=_0x41e1b8[_0x5a6bcc(0x18f)]||_0x5a6bcc(0x19d);!_0xf20f4['profiles'][_0x462ab9]&&(_0xf20f4[_0x5a6bcc(0x1a1)][_0x462ab9]={'totalCredits':0x0,'entryCount':0x0,'lastUsedAt':'','todayCredits':0x0,'todayDate':_0x449059,'monthCredits':0x0,'month':_0x3a2a02});_0xf20f4[_0x5a6bcc(0x1a1)][_0x462ab9][_0x5a6bcc(0x1cd)]+=_0x54b223,_0xf20f4[_0x5a6bcc(0x1a1)][_0x462ab9]['entryCount']+=0x1;_0x41e1b8['timestamp']>_0xf20f4['profiles'][_0x462ab9][_0x5a6bcc(0x18e)]&&(_0xf20f4[_0x5a6bcc(0x1a1)][_0x462ab9][_0x5a6bcc(0x18e)]=_0x41e1b8['timestamp']);_0x5d4c4e===_0x449059&&(_0xf20f4[_0x5a6bcc(0x1a1)][_0x462ab9][_0x5a6bcc(0x194)]+=_0x54b223);_0x403989===_0x3a2a02&&(_0xf20f4[_0x5a6bcc(0x1a1)][_0x462ab9][_0x5a6bcc(0x1bf)]+=_0x54b223);const _0xd226d2=_0x41e1b8['source']||_0x5a6bcc(0x1cc);!_0xf20f4[_0x5a6bcc(0x1bb)][_0xd226d2]&&(_0xf20f4[_0x5a6bcc(0x1bb)][_0xd226d2]={'totalCredits':0x0,'entryCount':0x0,'todayCredits':0x0,'todayDate':_0x449059,'monthCredits':0x0,'month':_0x3a2a02}),_0xf20f4[_0x5a6bcc(0x1bb)][_0xd226d2][_0x5a6bcc(0x1cd)]+=_0x54b223,_0xf20f4[_0x5a6bcc(0x1bb)][_0xd226d2][_0x5a6bcc(0x1c8)]+=0x1,_0x5d4c4e===_0x449059&&(_0xf20f4[_0x5a6bcc(0x1bb)][_0xd226d2][_0x5a6bcc(0x194)]+=_0x54b223),_0x403989===_0x3a2a02&&(_0xf20f4[_0x5a6bcc(0x1bb)][_0xd226d2][_0x5a6bcc(0x1bf)]+=_0x54b223);}_0xf20f4[_0x5a6bcc(0x1a8)][_0x272ee4]={'totalCredits':_0x1862be,'latestContextTokensBySignature':_0x454e80,'createdAt':_0x4a35f3[0x0][_0x5a6bcc(0x197)],'lastUpdatedAt':_0xa1b356};}catch(_0x1211d4){const _0x192301=await getLogger();_0x192301['warn']('Failed\x20to\x20process\x20session\x20'+_0x272ee4+':',_0x1211d4 instanceof Error?_0x1211d4[_0x5a6bcc(0x1b9)]:String(_0x1211d4));continue;}}return cleanupOldEntries(_0xf20f4),await writeStatsCache(_0xf20f4),_0xf20f4;}function cleanupOldEntries(_0x207834){const _0x2f4bfd=a77_0x400e,_0x402ace=new Date(),_0x3d5e86=new Date(_0x402ace[_0x2f4bfd(0x1b3)]()-0x7*0x18*0x3c*0x3c*0x3e8);for(const _0x250293 of Object[_0x2f4bfd(0x19e)](_0x207834[_0x2f4bfd(0x1c9)])){new Date(_0x250293)<_0x3d5e86&&delete _0x207834[_0x2f4bfd(0x1c9)][_0x250293];}const _0x2caa42=new Date(_0x402ace[_0x2f4bfd(0x1a7)]()-0x1,_0x402ace[_0x2f4bfd(0x1b7)](),0x1);for(const _0x238d6f of Object['keys'](_0x207834[_0x2f4bfd(0x195)])){const [_0x27d567,_0x34c79c]=_0x238d6f[_0x2f4bfd(0x192)]('-')['map'](Number),_0x35692f=new Date(_0x27d567,_0x34c79c-0x1,0x1);_0x35692f<_0x2caa42&&delete _0x207834[_0x2f4bfd(0x195)][_0x238d6f];}const _0x4741eb=new Date(_0x402ace[_0x2f4bfd(0x1b3)]()-0x1e*0x18*0x3c*0x3c*0x3e8);for(const [_0x28bf18,_0x5e2348]of Object[_0x2f4bfd(0x1b8)](_0x207834[_0x2f4bfd(0x1a8)])){new Date(_0x5e2348['lastUpdatedAt'])<_0x4741eb&&delete _0x207834[_0x2f4bfd(0x1a8)][_0x28bf18];}}export async function getOrUpdateCache(_0x460df5){const _0x586418=_0x460df5?sanitizeSessionId(_0x460df5):undefined,_0x2fdd19=await readStatsCache();if(!_0x2fdd19)return rebuildCache();if(_0x586418){const _0x40a9a0=await isCacheUpToDate(_0x2fdd19,_0x586418);if(!_0x40a9a0)return rebuildCache();}return _0x2fdd19;}export async function getSessionCredits(_0x474fe5){const _0xc07eab=a77_0x400e,_0x127eb9=sanitizeSessionId(_0x474fe5),_0x1b2f53=await getOrUpdateCache(_0x127eb9),_0x8d20ed=_0x1b2f53[_0xc07eab(0x1a8)][_0x127eb9];if(!_0x8d20ed)return 0x0;return _0x8d20ed[_0xc07eab(0x1cd)];}export async function getTodayCredits(){const _0x4b8262=a77_0x400e,_0x40a973=await getOrUpdateCache(),_0x52c952=new Date()[_0x4b8262(0x1b5)]()[_0x4b8262(0x1b4)](0x0,0xa),_0x5ca7c3=_0x40a973[_0x4b8262(0x1c9)][_0x52c952];if(!_0x5ca7c3)return 0x0;return _0x5ca7c3[_0x4b8262(0x1cd)];}export async function getMonthCredits(){const _0x459f35=a77_0x400e,_0x117f61=await getOrUpdateCache(),_0x120ccb=new Date()[_0x459f35(0x1b5)]()[_0x459f35(0x1b4)](0x0,0x7),_0x1f2d08=_0x117f61[_0x459f35(0x195)][_0x120ccb];if(!_0x1f2d08)return 0x0;return _0x1f2d08[_0x459f35(0x1cd)];}export async function getSessionStats(_0x1c3874){const _0x202f53=sanitizeSessionId(_0x1c3874),_0x692301=await getOrUpdateCache(_0x202f53);return _0x692301['sessions'][_0x202f53]||null;}function getMaxLatestContextTokens(_0x2c6626){const _0x385114=a77_0x400e,_0x419da0=Object[_0x385114(0x1c7)](_0x2c6626);if(_0x419da0['length']===0x0)return 0x0;return Math[_0x385114(0x190)](..._0x419da0);}export async function getUsageStats(_0x25b7f5,_0x54bf3b){const _0x1c0762=a77_0x400e,_0x9363aa=sanitizeSessionId(_0x25b7f5),_0x3af6ab=await getOrUpdateCache(_0x9363aa),_0x48ba82=_0x3af6ab[_0x1c0762(0x1a8)][_0x9363aa],_0x203235=new Date()['toISOString']()[_0x1c0762(0x1b4)](0x0,0xa),_0x3db339=new Date()[_0x1c0762(0x1b5)]()[_0x1c0762(0x1b4)](0x0,0x7);if(_0x54bf3b){const _0x6ef792=_0x3af6ab[_0x1c0762(0x1a1)]?.[_0x54bf3b],_0x269b9d=_0x6ef792?.[_0x1c0762(0x1ca)]===_0x203235?_0x6ef792['todayCredits']:0x0,_0xf9687a=_0x6ef792?.[_0x1c0762(0x19a)]===_0x3db339?_0x6ef792[_0x1c0762(0x1bf)]:0x0;return{'sessionCredits':_0x48ba82?_0x48ba82['totalCredits']:0x0,'todayCredits':_0x269b9d,'monthCredits':_0xf9687a,'latestContextTokens':_0x48ba82?getMaxLatestContextTokens(_0x48ba82[_0x1c0762(0x1cb)]):0x0};}return{'sessionCredits':_0x48ba82?_0x48ba82['totalCredits']:0x0,'todayCredits':_0x3af6ab[_0x1c0762(0x1c9)][_0x203235]?_0x3af6ab[_0x1c0762(0x1c9)][_0x203235]['totalCredits']:0x0,'monthCredits':_0x3af6ab[_0x1c0762(0x195)][_0x3db339]?_0x3af6ab[_0x1c0762(0x195)][_0x3db339]['totalCredits']:0x0,'latestContextTokens':_0x48ba82?getMaxLatestContextTokens(_0x48ba82[_0x1c0762(0x1cb)]):0x0};}export async function getAllProfileStats(){const _0x151b00=a77_0x400e,_0x3e3655=await getOrUpdateCache(),_0x6ab3bb=_0x3e3655['profiles']||{};return Object[_0x151b00(0x1b8)](_0x6ab3bb)[_0x151b00(0x1ce)](([,_0x138226])=>_0x138226&&typeof _0x138226===_0x151b00(0x1ad))[_0x151b00(0x1af)](([_0x412e47,_0x2696e6])=>({'profile':_0x412e47,'credits':_0x2696e6['totalCredits']||0x0,'entryCount':_0x2696e6[_0x151b00(0x1c8)]||0x0,'lastUsedAt':_0x2696e6[_0x151b00(0x18e)]||''}))[_0x151b00(0x19c)]((_0x3a8795,_0x4f6db0)=>_0x4f6db0[_0x151b00(0x1bc)]-_0x3a8795[_0x151b00(0x1bc)]);}export async function getAllSourceStats(){const _0x560152=a77_0x400e,_0x583344=await getOrUpdateCache(),_0x6d13c3=_0x583344[_0x560152(0x1bb)]||{},_0x150e3=new Date()[_0x560152(0x1b5)]()[_0x560152(0x1b4)](0x0,0xa),_0x10f2c2=new Date()[_0x560152(0x1b5)]()['slice'](0x0,0x7);return Object[_0x560152(0x1b8)](_0x6d13c3)['filter'](([,_0x2bd0ff])=>_0x2bd0ff&&typeof _0x2bd0ff===_0x560152(0x1ad))[_0x560152(0x1af)](([_0x205c7d,_0x3d6d42])=>({'source':_0x205c7d,'credits':_0x3d6d42[_0x560152(0x1cd)]||0x0,'todayCredits':_0x3d6d42[_0x560152(0x1ca)]===_0x150e3?_0x3d6d42[_0x560152(0x194)]||0x0:0x0,'monthCredits':_0x3d6d42[_0x560152(0x19a)]===_0x10f2c2?_0x3d6d42[_0x560152(0x1bf)]||0x0:0x0,'entryCount':_0x3d6d42[_0x560152(0x1c8)]||0x0}))[_0x560152(0x19c)]((_0x29029b,_0x322d90)=>_0x322d90[_0x560152(0x1bc)]-_0x29029b[_0x560152(0x1bc)]);}export async function getUsageSummary(){const _0x28ade5=a77_0x400e,_0x3b2acd=await getOrUpdateCache(),_0x209061=_0x3b2acd[_0x28ade5(0x1a1)]||{},_0x10a7a0=new Date()[_0x28ade5(0x1b5)]()[_0x28ade5(0x1b4)](0x0,0xa),_0xcd7e8b=new Date()[_0x28ade5(0x1b5)]()[_0x28ade5(0x1b4)](0x0,0x7),_0x74c073=Object[_0x28ade5(0x1c7)](_0x209061)['filter'](_0xc2a88e=>_0xc2a88e&&typeof _0xc2a88e==='object'),_0x4ea7dc=_0x74c073[_0x28ade5(0x1d0)]((_0x208b70,_0x25096c)=>_0x208b70+(_0x25096c[_0x28ade5(0x1cd)]||0x0),0x0);return{'todayCredits':_0x3b2acd[_0x28ade5(0x1c9)][_0x10a7a0]?_0x3b2acd[_0x28ade5(0x1c9)][_0x10a7a0]['totalCredits']||0x0:0x0,'monthCredits':_0x3b2acd['monthly'][_0xcd7e8b]?_0x3b2acd[_0x28ade5(0x195)][_0xcd7e8b][_0x28ade5(0x1cd)]||0x0:0x0,'totalCredits':_0x4ea7dc,'profileCount':_0x74c073[_0x28ade5(0x1be)]};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a78_0x3a4b21=a78_0x53a2;(function(_0x1c47fe,_0x231820){const _0x3acf57=a78_0x53a2,_0x84468e=_0x1c47fe();while(!![]){try{const _0x405fd3=-parseInt(_0x3acf57(0x19c))/0x1*(parseInt(_0x3acf57(0x189))/0x2)+parseInt(_0x3acf57(0x1d3))/0x3*(-parseInt(_0x3acf57(0x1ba))/0x4)+-parseInt(_0x3acf57(0x210))/0x5*(parseInt(_0x3acf57(0x1cd))/0x6)+-parseInt(_0x3acf57(0x190))/0x7*(-parseInt(_0x3acf57(0x1be))/0x8)+parseInt(_0x3acf57(0x187))/0x9+parseInt(_0x3acf57(0x1ce))/0xa+-parseInt(_0x3acf57(0x213))/0xb;if(_0x405fd3===_0x231820)break;else _0x84468e['push'](_0x84468e['shift']());}catch(_0x3960d1){_0x84468e['push'](_0x84468e['shift']());}}}(a78_0x43a5,0x78f9b));import a78_0x5eaf30 from'fastify';function a78_0x43a5(){const _0x94a4da=['TD\x20LLM\x20Pass-through\x20Proxy\x20Server','messages',',\x20stream=','[PASSTHROUGH\x20PROXY\x20ERROR]:','tdx','api_error','model','register','/v1/messages/count_tokens','start','auth','x-td-','Pass-through\x20proxy\x20server\x20stopped','|\x20Debug\x20agent\x20issues\x20|\x20tdx-skills:agent-debug\x20|\x0a','read','x-api-key','expires_at','decode','3534858AUpdfm','entries','4jZJwmX','Authorization','error','send','includes','TimeoutError','X-TD-Client','14AuTDSx','tdx-claude','_boundPort','refresh_token','Content-Type','setupJsonParser',',\x20model=','no-cache','statusText','authorization','maxPortAttempts','X-TD-Client-Version','58969gSdMqZ','apiKey','close','text/event-stream','host','timeoutMs','GET','[PASSTHROUGH]\x20Failed\x20to\x20log\x20usage:','debug','has','system','isArray','metadata','refreshTokenIfNeeded','stringify','setupRoutes','code','inputTokens','get','[PASSTHROUGH]\x20Stream\x20error:','writeHead','getAddress','SKIP_HEADERS','logUsage','transfer-encoding','application/json','Port\x20','toLowerCase','unknown','timeout_error','4aFYdjJ','Stream\x20interrupted','header','setupMiddleware','3545448nitAnY','content-length','info','handleStreamingResponse','handleMessages','end','127.0.0.1','anthropic-version','getReader','EADDRINUSE','now','Server\x20has\x20not\x20been\x20started\x20yet','method','Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20','outputTokens','1314VkwrxM','8337840voYaxK','parse','setErrorHandler','[PASSTHROUGH]\x20OAuth\x20token\x20refresh\x20failed:','refreshToken','1164426igvocL','Forwarding\x20to:\x20','http://127.0.0.1:',',\x20cache_create=','[PASSTHROUGH]\x20Usage:\x20input=','match','[PASSTHROUGH]\x20OAuth\x20token\x20refreshed\x20successfully','expiresAt','usage','input_tokens','write','[PASSTHROUGH]\x20Forwarding\x20count_tokens\x20to:\x20','output_tokens','slice','user-agent','[PASSTHROUGH]\x20Upstream\x20error:\x20','default','createServer','status','buildForwardHeaders','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','timeout','cacheReadInputTokens','oauth','refreshTimer','port',',\x20output=','indexOf','server','tdx/','|\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|','getUsage','config','headers','keep-alive','accessToken','llmProxyUrl','POST','body','/v1/messages','addContentTypeParser','handleCountTokens','type','name','url','\x20in\x20use,\x20trying\x20next...','profile','event:\x20error\x0adata:\x20','raw','processChunk','stream_error','No\x20available\x20port\x20found\x20between\x20','[PASSTHROUGH]\x20','OPTIONS','user_id','startTokenRefreshTimer','Unknown\x20error','text','string','message','startsWith','20455nWUbhG','haiku','consoleUrl','2369224jTyajx','logger','startPort','flush','join'];a78_0x43a5=function(){return _0x94a4da;};return a78_0x43a5();}import a78_0x3066fe from'@fastify/cors';import{SSEUsageTracker}from'./sse-usage-parser.js';import{appendUsageEntry}from'./claude-usage-tracker.js';import{getVersion}from'../core/version.js';import{isExperimentalAvailable}from'../core/config.js';import{refreshAccessToken}from'../sdk/client/oauth-refresh.js';import{saveOAuthTokens}from'../core/oauth-keychain.js';const DEFAULT_TIMEOUT_MS=0x5*0x3c*0x3e8,TDX_SYSTEM_PROMPT=a78_0x3a4b21(0x1e7)+(isExperimentalAvailable()?a78_0x3a4b21(0x225):'')+a78_0x3a4b21(0x1f1);function a78_0x53a2(_0x58f025,_0x43b066){_0x58f025=_0x58f025-0x187;const _0x43a5a7=a78_0x43a5();let _0x53a29f=_0x43a5a7[_0x58f025];return _0x53a29f;}function extractSessionUUID(_0x4952e6){const _0x5931d2=a78_0x3a4b21,_0x312671=_0x4952e6[_0x5931d2(0x1d8)](/_session_([a-f0-9-]+)$/i);if(_0x312671)return _0x312671[0x1];return _0x4952e6;}export function injectSystemPrompt(_0x18061a,_0x2e90ff){const _0x1c8ce6=a78_0x3a4b21,_0x12e7ed=_0x18061a[_0x1c8ce6(0x1a6)];if(!_0x12e7ed)return{..._0x18061a,'system':_0x2e90ff};if(typeof _0x12e7ed==='string')return{..._0x18061a,'system':_0x12e7ed+'\x0a\x0a'+_0x2e90ff};if(Array[_0x1c8ce6(0x1a7)](_0x12e7ed)){const _0x3e3c10={'type':_0x1c8ce6(0x20c),'text':_0x2e90ff};return{..._0x18061a,'system':[..._0x12e7ed,_0x3e3c10]};}return _0x18061a;}export function shouldInjectSystemPrompt(_0x2de057){const _0x51c3f0=a78_0x3a4b21;return!_0x2de057[_0x51c3f0(0x1b7)]()[_0x51c3f0(0x18d)](_0x51c3f0(0x211));}const TOKEN_REFRESH_INTERVAL_MS=0x5*0x3c*0x3e8,TOKEN_EXPIRY_BUFFER_MS=0x5*0x3c*0x3e8;export class PassThroughProxyServer{[a78_0x3a4b21(0x1ef)];[a78_0x3a4b21(0x1f3)];[a78_0x3a4b21(0x214)];['_boundPort'];[a78_0x3a4b21(0x1eb)];constructor(_0x3232a1){const _0x359124=a78_0x3a4b21;this['config']=_0x3232a1,this['logger']=_0x3232a1['logger'],this[_0x359124(0x1ef)]=this[_0x359124(0x1e4)]();}get[a78_0x3a4b21(0x1ec)](){const _0x3fcd01=a78_0x3a4b21;if(this[_0x3fcd01(0x192)]===undefined)throw new Error(_0x3fcd01(0x1c9));return this[_0x3fcd01(0x192)];}[a78_0x3a4b21(0x1e4)](){const _0x2394d5=a78_0x3a4b21,_0x51ac78=a78_0x5eaf30({'logger':![],'bodyLimit':0x40*0x400*0x400});return this['server']=_0x51ac78,this[_0x2394d5(0x195)](),this[_0x2394d5(0x1bd)](),this[_0x2394d5(0x1ab)](),_0x51ac78;}[a78_0x3a4b21(0x195)](){const _0x568a38=a78_0x3a4b21;this['server'][_0x568a38(0x1fb)](_0x568a38(0x1b5),{'parseAs':_0x568a38(0x20d)},(_0x4d937d,_0x47afff,_0x39673e)=>{const _0x273088=_0x568a38;try{const _0x7366b6=JSON[_0x273088(0x1cf)](_0x47afff);_0x39673e(null,_0x7366b6);}catch(_0x25adc9){_0x39673e(_0x25adc9,undefined);}});}[a78_0x3a4b21(0x1bd)](){const _0x25d377=a78_0x3a4b21;this['server'][_0x25d377(0x21f)](a78_0x3066fe,{'origin':!![],'methods':[_0x25d377(0x1a2),_0x25d377(0x1f8),_0x25d377(0x208)],'allowedHeaders':[_0x25d377(0x194),_0x25d377(0x18a),_0x25d377(0x1c5),'x-api-key']}),this[_0x25d377(0x1ef)][_0x25d377(0x1d0)]((_0x1ed84f,_0x16c44f,_0x533928)=>{const _0x2f056b=_0x25d377,_0x59ccf0=_0x1ed84f instanceof Error?_0x1ed84f['message']:_0x2f056b(0x20b);this['logger'][_0x2f056b(0x18b)](_0x2f056b(0x21b),_0x1ed84f),_0x533928['code'](0x1f4)['send']({'type':'error','error':{'type':_0x2f056b(0x21d),'message':_0x59ccf0}});});}[a78_0x3a4b21(0x1ab)](){const _0x101eed=a78_0x3a4b21;this[_0x101eed(0x1ef)]['get']('/health',async()=>{const _0x406bb3=_0x101eed;return{'status':'ok','message':_0x406bb3(0x218)};}),this[_0x101eed(0x1ef)]['post']('/v1/messages',async(_0x53bf6d,_0x5482e2)=>{const _0x9633f3=_0x101eed;return this[_0x9633f3(0x1c2)](_0x53bf6d,_0x5482e2);}),this[_0x101eed(0x1ef)]['post'](_0x101eed(0x220),async(_0x231da5,_0x33a732)=>{const _0x149dbf=_0x101eed;return this[_0x149dbf(0x1fc)](_0x231da5,_0x33a732);});}static [a78_0x3a4b21(0x1b2)]=new Set([a78_0x3a4b21(0x1a0),'connection',a78_0x3a4b21(0x1bf),a78_0x3a4b21(0x1b4),a78_0x3a4b21(0x199),a78_0x3a4b21(0x227),a78_0x3a4b21(0x1e1)]);[a78_0x3a4b21(0x1e6)](_0x1ee6ee){const _0x29e4b3=a78_0x3a4b21,_0xd0201d={};for(const [_0x2bbdad,_0x4bd026]of Object[_0x29e4b3(0x188)](_0x1ee6ee[_0x29e4b3(0x1f4)])){const _0x1d6b06=_0x2bbdad['toLowerCase']();if(PassThroughProxyServer[_0x29e4b3(0x1b2)][_0x29e4b3(0x1a5)](_0x1d6b06))continue;if(_0x1d6b06[_0x29e4b3(0x20f)](_0x29e4b3(0x223)))continue;if(typeof _0x4bd026===_0x29e4b3(0x20d))_0xd0201d[_0x2bbdad]=_0x4bd026;else Array['isArray'](_0x4bd026)&&(_0xd0201d[_0x2bbdad]=_0x4bd026[_0x29e4b3(0x217)](',\x20'));}const _0x5dd67=getVersion(),{auth:_0x19fd4d}=this[_0x29e4b3(0x1f3)];return _0xd0201d[_0x29e4b3(0x18a)]=_0x19fd4d['type']===_0x29e4b3(0x1ea)?'Bearer\x20'+_0x19fd4d[_0x29e4b3(0x1f6)]:'TD1\x20'+_0x19fd4d[_0x29e4b3(0x19d)],_0xd0201d['User-Agent']=_0x29e4b3(0x1f0)+_0x5dd67,_0xd0201d[_0x29e4b3(0x18f)]=_0x29e4b3(0x21c),_0xd0201d[_0x29e4b3(0x19b)]=_0x5dd67,_0xd0201d;}async[a78_0x3a4b21(0x1c2)](_0x344a86,_0x139153){const _0x4f2945=a78_0x3a4b21,_0x5f188c=_0x344a86['body'],_0x2af524=_0x5f188c['stream']!==![],_0x36723a=_0x5f188c[_0x4f2945(0x1a8)],_0x30f680=_0x36723a?.[_0x4f2945(0x209)]||_0x4f2945(0x1e3),_0x2b0ca8=extractSessionUUID(_0x30f680),_0x4dee6e=_0x5f188c[_0x4f2945(0x21e)]||_0x4f2945(0x1b8),_0x16825c=shouldInjectSystemPrompt(_0x4dee6e)?injectSystemPrompt(_0x5f188c,TDX_SYSTEM_PROMPT):_0x5f188c,_0x531452=JSON[_0x4f2945(0x1aa)](_0x16825c),_0xd9342a=Array[_0x4f2945(0x1a7)](_0x5f188c[_0x4f2945(0x219)])?_0x5f188c['messages']['length']:0x0;this[_0x4f2945(0x214)][_0x4f2945(0x1c0)](_0x4f2945(0x207)+_0x344a86[_0x4f2945(0x1ca)]+'\x20'+_0x344a86['url']+':\x20messages='+_0xd9342a+_0x4f2945(0x196)+_0x4dee6e+_0x4f2945(0x21a)+_0x2af524);const _0x2af1c5=_0x344a86[_0x4f2945(0x1ff)][_0x4f2945(0x18d)]('?')?_0x344a86[_0x4f2945(0x1ff)][_0x4f2945(0x1e0)](_0x344a86[_0x4f2945(0x1ff)]['indexOf']('?')):'',_0x4a0356=this[_0x4f2945(0x1f3)]['llmProxyUrl']+_0x4f2945(0x1fa)+_0x2af1c5,_0x495194=this[_0x4f2945(0x1e6)](_0x344a86);this[_0x4f2945(0x214)][_0x4f2945(0x1a4)](_0x4f2945(0x1d4)+_0x4a0356);const _0x1c209b=this[_0x4f2945(0x1f3)][_0x4f2945(0x1a1)]||DEFAULT_TIMEOUT_MS;try{const _0xf916b0=await fetch(_0x4a0356,{'method':_0x4f2945(0x1f8),'headers':_0x495194,'body':_0x531452,'signal':AbortSignal[_0x4f2945(0x1e8)](_0x1c209b)});if(!_0xf916b0['ok']){const _0x3ea3b8=await _0xf916b0[_0x4f2945(0x20c)]();return this[_0x4f2945(0x214)][_0x4f2945(0x18b)](_0x4f2945(0x1e2)+_0xf916b0[_0x4f2945(0x1e5)]+'\x20'+_0xf916b0[_0x4f2945(0x198)]),this[_0x4f2945(0x214)][_0x4f2945(0x1a4)]('Error\x20body:\x20'+_0x3ea3b8),_0x139153[_0x4f2945(0x1ac)](_0xf916b0[_0x4f2945(0x1e5)]),_0x139153[_0x4f2945(0x1bc)](_0x4f2945(0x194),_0xf916b0['headers'][_0x4f2945(0x1ae)](_0x4f2945(0x194))||'application/json'),_0x139153['send'](_0x3ea3b8);}if(_0x2af524&&_0xf916b0[_0x4f2945(0x1f9)])await this[_0x4f2945(0x1c1)](_0xf916b0[_0x4f2945(0x1f9)],_0x139153,_0x2b0ca8,_0x4dee6e);else{const _0x4670bd=await _0xf916b0[_0x4f2945(0x20c)]();_0x139153[_0x4f2945(0x1bc)](_0x4f2945(0x194),_0xf916b0[_0x4f2945(0x1f4)]['get']('Content-Type')||_0x4f2945(0x1b5));try{const _0x507557=JSON[_0x4f2945(0x1cf)](_0x4670bd);_0x507557['usage']&&await this['logUsage'](_0x2b0ca8,_0x4dee6e,_0x507557[_0x4f2945(0x1db)][_0x4f2945(0x1dc)]||0x0,_0x507557[_0x4f2945(0x1db)][_0x4f2945(0x1df)]||0x0,_0x507557[_0x4f2945(0x1db)]['cache_creation_input_tokens'],_0x507557[_0x4f2945(0x1db)]['cache_read_input_tokens']);}catch{}return _0x139153[_0x4f2945(0x18c)](_0x4670bd);}}catch(_0x16f630){const _0x45ae0e=_0x16f630 instanceof Error?_0x16f630['message']:_0x4f2945(0x20b),_0x7c8952=_0x16f630 instanceof Error&&_0x16f630[_0x4f2945(0x1fe)]==='TimeoutError';this[_0x4f2945(0x214)][_0x4f2945(0x18b)]('[PASSTHROUGH]\x20Failed\x20to\x20forward\x20request:',_0x16f630),_0x139153[_0x4f2945(0x1ac)](_0x7c8952?0x1f8:0x1f7)[_0x4f2945(0x18c)]({'type':'error','error':{'type':_0x7c8952?_0x4f2945(0x1b9):_0x4f2945(0x21d),'message':_0x7c8952?_0x4f2945(0x1cb)+_0x1c209b+'ms':'Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20'+_0x45ae0e}});}}async[a78_0x3a4b21(0x1c1)](_0x3532eb,_0x33c1c8,_0x1131e0,_0x21f6dc){const _0x35dec8=a78_0x3a4b21;_0x33c1c8[_0x35dec8(0x203)][_0x35dec8(0x1b0)](0xc8,{'Content-Type':_0x35dec8(0x19f),'Cache-Control':_0x35dec8(0x197),'Connection':_0x35dec8(0x1f5)});const _0x33552=new SSEUsageTracker(),_0x5e1645=_0x3532eb[_0x35dec8(0x1c6)](),_0x5ce5da=new TextDecoder();try{while(!![]){const {done:_0x278f7b,value:_0x447dfb}=await _0x5e1645[_0x35dec8(0x226)]();if(_0x278f7b)break;const _0x518442=_0x5ce5da[_0x35dec8(0x229)](_0x447dfb,{'stream':!![]});_0x33552[_0x35dec8(0x204)](_0x518442),_0x33c1c8['raw'][_0x35dec8(0x1dd)](_0x518442);}_0x33552[_0x35dec8(0x216)]();const _0x3fb612=_0x33552[_0x35dec8(0x1f2)]();(_0x3fb612[_0x35dec8(0x1ad)]>0x0||_0x3fb612[_0x35dec8(0x1cc)]>0x0)&&await this[_0x35dec8(0x1b3)](_0x1131e0,_0x21f6dc,_0x3fb612[_0x35dec8(0x1ad)],_0x3fb612[_0x35dec8(0x1cc)],_0x3fb612['cacheCreationInputTokens'],_0x3fb612[_0x35dec8(0x1e9)]);}catch(_0x5b3897){this[_0x35dec8(0x214)][_0x35dec8(0x18b)](_0x35dec8(0x1af),_0x5b3897);const _0x2cd5a4=_0x35dec8(0x202)+JSON[_0x35dec8(0x1aa)]({'type':_0x35dec8(0x18b),'error':{'type':_0x35dec8(0x205),'message':_0x35dec8(0x1bb)}})+'\x0a\x0a';_0x33c1c8['raw'][_0x35dec8(0x1dd)](_0x2cd5a4);}finally{_0x33c1c8[_0x35dec8(0x203)][_0x35dec8(0x1c3)]();}}async[a78_0x3a4b21(0x1fc)](_0x168d33,_0x53b8d7){const _0x1bf81a=a78_0x3a4b21,_0x55e74b=_0x168d33['body'],_0x32af48=_0x168d33[_0x1bf81a(0x1ff)]['includes']('?')?_0x168d33[_0x1bf81a(0x1ff)][_0x1bf81a(0x1e0)](_0x168d33[_0x1bf81a(0x1ff)][_0x1bf81a(0x1ee)]('?')):'',_0x2af3e9=this[_0x1bf81a(0x1f3)]['llmProxyUrl']+_0x1bf81a(0x220)+_0x32af48,_0x41f33f=this[_0x1bf81a(0x1e6)](_0x168d33),_0x526993=_0x55e74b['model']||'unknown',_0xfa6378=shouldInjectSystemPrompt(_0x526993)?injectSystemPrompt(_0x55e74b,TDX_SYSTEM_PROMPT):_0x55e74b,_0x4ed513=JSON[_0x1bf81a(0x1aa)](_0xfa6378);this[_0x1bf81a(0x214)]['debug'](_0x1bf81a(0x1de)+_0x2af3e9);const _0x155bff=this[_0x1bf81a(0x1f3)]['timeoutMs']||DEFAULT_TIMEOUT_MS;try{const _0x48316a=await fetch(_0x2af3e9,{'method':_0x1bf81a(0x1f8),'headers':_0x41f33f,'body':_0x4ed513,'signal':AbortSignal[_0x1bf81a(0x1e8)](_0x155bff)}),_0x1f5d5a=await _0x48316a[_0x1bf81a(0x20c)]();return _0x53b8d7[_0x1bf81a(0x1ac)](_0x48316a[_0x1bf81a(0x1e5)]),_0x53b8d7[_0x1bf81a(0x1bc)](_0x1bf81a(0x194),_0x48316a[_0x1bf81a(0x1f4)][_0x1bf81a(0x1ae)]('Content-Type')||_0x1bf81a(0x1b5)),_0x53b8d7[_0x1bf81a(0x18c)](_0x1f5d5a);}catch(_0xb6f069){const _0x419959=_0xb6f069 instanceof Error?_0xb6f069[_0x1bf81a(0x20e)]:_0x1bf81a(0x20b),_0x24c061=_0xb6f069 instanceof Error&&_0xb6f069[_0x1bf81a(0x1fe)]===_0x1bf81a(0x18e);this[_0x1bf81a(0x214)][_0x1bf81a(0x18b)]('[PASSTHROUGH]\x20Failed\x20to\x20forward\x20count_tokens\x20request:',_0xb6f069),_0x53b8d7[_0x1bf81a(0x1ac)](_0x24c061?0x1f8:0x1f7)[_0x1bf81a(0x18c)]({'type':_0x1bf81a(0x18b),'error':{'type':_0x24c061?_0x1bf81a(0x1b9):'api_error','message':_0x24c061?_0x1bf81a(0x1cb)+_0x155bff+'ms':'Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20'+_0x419959}});}}async[a78_0x3a4b21(0x1b3)](_0x189bf1,_0x562b5b,_0x381bad,_0x1d90bf,_0x53db18,_0x29d07b){const _0x2a3d71=a78_0x3a4b21,_0x3312fe={'timestamp':new Date()['toISOString'](),'model':_0x562b5b,'inputTokens':_0x381bad,'outputTokens':_0x1d90bf,'cacheCreationInputTokens':_0x53db18,'cacheReadInputTokens':_0x29d07b,'profile':this[_0x2a3d71(0x1f3)]['profile'],'source':_0x2a3d71(0x191)},_0x2f1587=_0x53db18||_0x29d07b?_0x2a3d71(0x1d6)+(_0x53db18||0x0)+',\x20cache_read='+(_0x29d07b||0x0):'';this[_0x2a3d71(0x214)][_0x2a3d71(0x1a4)](_0x2a3d71(0x1d7)+_0x381bad+_0x2a3d71(0x1ed)+_0x1d90bf+_0x2f1587+_0x2a3d71(0x196)+_0x562b5b);try{await appendUsageEntry(_0x189bf1,_0x3312fe);}catch(_0x2b6912){this[_0x2a3d71(0x214)][_0x2a3d71(0x18b)](_0x2a3d71(0x1a3),_0x2b6912);}}[a78_0x3a4b21(0x20a)](){const _0x543c69=a78_0x3a4b21;if(this[_0x543c69(0x1f3)][_0x543c69(0x222)][_0x543c69(0x1fd)]!==_0x543c69(0x1ea))return;this[_0x543c69(0x1eb)]=setInterval(()=>{const _0x3fe06b=_0x543c69;void this[_0x3fe06b(0x1a9)]();},TOKEN_REFRESH_INTERVAL_MS),this[_0x543c69(0x1eb)]['unref']();}async[a78_0x3a4b21(0x1a9)](){const _0x9af491=a78_0x3a4b21,{auth:_0x4cf982}=this[_0x9af491(0x1f3)];if(_0x4cf982[_0x9af491(0x1fd)]!==_0x9af491(0x1ea))return;const _0x3babb2=!_0x4cf982[_0x9af491(0x1da)]||_0x4cf982[_0x9af491(0x1da)]<Date[_0x9af491(0x1c8)]()+TOKEN_EXPIRY_BUFFER_MS;if(!_0x3babb2)return;try{const _0x2ffea1=await refreshAccessToken(_0x4cf982[_0x9af491(0x212)],_0x4cf982['refreshToken']);_0x4cf982[_0x9af491(0x1f6)]=_0x2ffea1['access_token'],_0x4cf982[_0x9af491(0x1d2)]=_0x2ffea1[_0x9af491(0x193)],_0x4cf982[_0x9af491(0x1da)]=_0x2ffea1[_0x9af491(0x228)],await saveOAuthTokens(_0x2ffea1,this[_0x9af491(0x1f3)][_0x9af491(0x201)]),this[_0x9af491(0x214)][_0x9af491(0x1c0)](_0x9af491(0x1d9));}catch(_0xd1f1e4){this[_0x9af491(0x214)][_0x9af491(0x18b)](_0x9af491(0x1d1),_0xd1f1e4);}}async[a78_0x3a4b21(0x221)](){const _0x5e1a9d=a78_0x3a4b21,_0x4cb4f2=this['config'][_0x5e1a9d(0x19a)]??0x64;for(let _0xf472b1=0x0;_0xf472b1<_0x4cb4f2;_0xf472b1++){const _0x4d3fc1=this[_0x5e1a9d(0x1f3)][_0x5e1a9d(0x215)]+_0xf472b1;try{await this[_0x5e1a9d(0x1ef)]['listen']({'port':_0x4d3fc1,'host':_0x5e1a9d(0x1c4)}),this[_0x5e1a9d(0x192)]=_0x4d3fc1,this[_0x5e1a9d(0x214)]['info']('Pass-through\x20proxy\x20server\x20started\x20on\x20port\x20'+_0x4d3fc1),this['logger'][_0x5e1a9d(0x1c0)](_0x5e1a9d(0x1d4)+this[_0x5e1a9d(0x1f3)][_0x5e1a9d(0x1f7)]),this[_0x5e1a9d(0x20a)]();return;}catch(_0x40e76a){const _0x130e00=_0x40e76a instanceof Error&&'code'in _0x40e76a&&_0x40e76a['code']===_0x5e1a9d(0x1c7);if(!_0x130e00)throw _0x40e76a;this[_0x5e1a9d(0x214)][_0x5e1a9d(0x1a4)](_0x5e1a9d(0x1b6)+_0x4d3fc1+_0x5e1a9d(0x200)),this[_0x5e1a9d(0x1e4)]();}}const _0x393d60=this[_0x5e1a9d(0x1f3)][_0x5e1a9d(0x215)]+_0x4cb4f2-0x1;throw new Error(_0x5e1a9d(0x206)+this[_0x5e1a9d(0x1f3)]['startPort']+'\x20and\x20'+_0x393d60);}async['stop'](){const _0x52aae3=a78_0x3a4b21;this['refreshTimer']&&(clearInterval(this['refreshTimer']),this[_0x52aae3(0x1eb)]=undefined),await this[_0x52aae3(0x1ef)][_0x52aae3(0x19e)](),this[_0x52aae3(0x214)][_0x52aae3(0x1c0)](_0x52aae3(0x224));}[a78_0x3a4b21(0x1b1)](){const _0x4b1623=a78_0x3a4b21;return _0x4b1623(0x1d5)+this[_0x4b1623(0x1ec)];}}
|
|
1
|
+
const a78_0x4ed696=a78_0x24a7;(function(_0x4533f3,_0x3c68da){const _0x4a31e7=a78_0x24a7,_0x315146=_0x4533f3();while(!![]){try{const _0xac7edf=parseInt(_0x4a31e7(0x1f3))/0x1+-parseInt(_0x4a31e7(0x1d2))/0x2*(parseInt(_0x4a31e7(0x1e3))/0x3)+-parseInt(_0x4a31e7(0x1fb))/0x4*(-parseInt(_0x4a31e7(0x1ac))/0x5)+-parseInt(_0x4a31e7(0x207))/0x6*(parseInt(_0x4a31e7(0x225))/0x7)+-parseInt(_0x4a31e7(0x223))/0x8+-parseInt(_0x4a31e7(0x232))/0x9+parseInt(_0x4a31e7(0x1b4))/0xa;if(_0xac7edf===_0x3c68da)break;else _0x315146['push'](_0x315146['shift']());}catch(_0x5c6aba){_0x315146['push'](_0x315146['shift']());}}}(a78_0x3a7c,0x73207));import a78_0x50b9e3 from'fastify';import a78_0x1e4b26 from'@fastify/cors';import{SSEUsageTracker}from'./sse-usage-parser.js';function a78_0x24a7(_0x3715de,_0x171d0b){_0x3715de=_0x3715de-0x194;const _0x3a7ce7=a78_0x3a7c();let _0x24a728=_0x3a7ce7[_0x3715de];return _0x24a728;}import{appendUsageEntry}from'./claude-usage-tracker.js';import{getVersion}from'../core/version.js';import{isExperimentalAvailable}from'../core/config.js';import{refreshAccessToken}from'../sdk/client/oauth-refresh.js';import{saveOAuthTokens}from'../core/oauth-keychain.js';const DEFAULT_TIMEOUT_MS=0x5*0x3c*0x3e8,TDX_SYSTEM_PROMPT=a78_0x4ed696(0x197)+(isExperimentalAvailable()?'|\x20Debug\x20agent\x20issues\x20|\x20tdx-skills:agent-debug\x20|\x0a':'')+a78_0x4ed696(0x1c2);function a78_0x3a7c(){const _0x20ef1d=['[PASSTHROUGH]\x20Failed\x20to\x20log\x20usage:','metadata','now',',\x20stream=','Server\x20has\x20not\x20been\x20started\x20yet','isArray','Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20','code','stop','writeHead','name','setErrorHandler','anthropic-version','message','unknown','event:\x20error\x0adata:\x20','connection','text/event-stream','434704kTXUGE','setupRoutes','7SqBnmj','maxPortAttempts','setupMiddleware','model','timeout_error','stringify',',\x20cache_read=','Authorization','handleCountTokens','tdx','x-td-','refreshTokenIfNeeded','authorization','5218056kmIPlw','handleStreamingResponse','refresh_token','No\x20available\x20port\x20found\x20between\x20','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','send','info','start','content-length','[PASSTHROUGH]\x20Usage:\x20input=','entries','refreshTimer','expires_at','parse',',\x20output=','text','cache_creation_input_tokens','register','inputTokens',',\x20cache_create=','buildForwardHeaders','config','consoleUrl','[PASSTHROUGH]\x20Upstream\x20error:\x20','profile','4515ERCpLL','cacheReadInputTokens','headers','oauth','startTokenRefreshTimer','no-cache','status','header','15144150MyWenF','includes','raw','Content-Type','/health','logUsage','setupJsonParser','_boundPort','GET','messages','keep-alive',',\x20model=','read','http://127.0.0.1:','|\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|','stream_error','X-TD-Client','indexOf','handleMessages','slice','Bearer\x20','EADDRINUSE','stream','end','body','method','statusText',':\x20messages=','createServer','TimeoutError','239446eIaMxW','toISOString','host','string','write','Forwarding\x20to:\x20','post','get','flush','transfer-encoding','server','auth','/v1/messages','refreshToken','llmProxyUrl','error','Unknown\x20error','15CBizpA','application/json','Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20','has','127.0.0.1','SKIP_HEADERS','outputTokens','system','POST','Stream\x20interrupted','user-agent','Pass-through\x20proxy\x20server\x20stopped','debug','timeoutMs','timeout','usage','860318sBfMKA','port','decode','x-api-key','url','expiresAt','close','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20count_tokens\x20request:','472OJXdiM','tdx-claude','api_error','addContentTypeParser','Error\x20body:\x20','accessToken','Port\x20','match','X-TD-Client-Version','length','startPort','\x20and\x20','4661946OCYqDK','\x20in\x20use,\x20trying\x20next...','access_token','/v1/messages/count_tokens','[PASSTHROUGH]\x20Forwarding\x20count_tokens\x20to:\x20','input_tokens','logger','type','haiku','[PASSTHROUGH\x20PROXY\x20ERROR]:'];a78_0x3a7c=function(){return _0x20ef1d;};return a78_0x3a7c();}function extractSessionUUID(_0x578a30){const _0x4c1f7f=a78_0x4ed696,_0x1c94cd=_0x578a30[_0x4c1f7f(0x202)](/_session_([a-f0-9-]+)$/i);if(_0x1c94cd)return _0x1c94cd[0x1];return _0x578a30;}export function injectSystemPrompt(_0x5b90f4,_0x487038){const _0x3becc5=a78_0x4ed696,_0x43ef0b=_0x5b90f4[_0x3becc5(0x1ea)];if(!_0x43ef0b)return{..._0x5b90f4,'system':_0x487038};if(typeof _0x43ef0b===_0x3becc5(0x1d5))return{..._0x5b90f4,'system':_0x43ef0b+'\x0a\x0a'+_0x487038};if(Array[_0x3becc5(0x216)](_0x43ef0b)){const _0x2f344e={'type':_0x3becc5(0x1a2),'text':_0x487038};return{..._0x5b90f4,'system':[..._0x43ef0b,_0x2f344e]};}return _0x5b90f4;}export function shouldInjectSystemPrompt(_0x59f318){const _0xa55f37=a78_0x4ed696;return!_0x59f318['toLowerCase']()[_0xa55f37(0x1b5)](_0xa55f37(0x20f));}const TOKEN_REFRESH_INTERVAL_MS=0x5*0x3c*0x3e8,TOKEN_EXPIRY_BUFFER_MS=0x5*0x3c*0x3e8;export class PassThroughProxyServer{[a78_0x4ed696(0x1dc)];[a78_0x4ed696(0x1a8)];[a78_0x4ed696(0x20d)];[a78_0x4ed696(0x1bb)];[a78_0x4ed696(0x19e)];constructor(_0x52f64b){const _0x3f225f=a78_0x4ed696;this[_0x3f225f(0x1a8)]=_0x52f64b,this[_0x3f225f(0x20d)]=_0x52f64b[_0x3f225f(0x20d)],this[_0x3f225f(0x1dc)]=this['createServer']();}get[a78_0x4ed696(0x1f4)](){const _0x14ea09=a78_0x4ed696;if(this[_0x14ea09(0x1bb)]===undefined)throw new Error(_0x14ea09(0x215));return this['_boundPort'];}[a78_0x4ed696(0x1d0)](){const _0x3b4b98=a78_0x4ed696,_0x4a6955=a78_0x50b9e3({'logger':![],'bodyLimit':0x40*0x400*0x400});return this[_0x3b4b98(0x1dc)]=_0x4a6955,this['setupJsonParser'](),this[_0x3b4b98(0x227)](),this[_0x3b4b98(0x224)](),_0x4a6955;}[a78_0x4ed696(0x1ba)](){const _0x3b1a07=a78_0x4ed696;this[_0x3b1a07(0x1dc)][_0x3b1a07(0x1fe)]('application/json',{'parseAs':_0x3b1a07(0x1d5)},(_0x51b49,_0x261c43,_0x748fc3)=>{const _0x4db146=_0x3b1a07;try{const _0x3e58b5=JSON[_0x4db146(0x1a0)](_0x261c43);_0x748fc3(null,_0x3e58b5);}catch(_0x195a19){_0x748fc3(_0x195a19,undefined);}});}['setupMiddleware'](){const _0x4bee31=a78_0x4ed696;this['server'][_0x4bee31(0x1a4)](a78_0x1e4b26,{'origin':!![],'methods':[_0x4bee31(0x1bc),_0x4bee31(0x1eb),'OPTIONS'],'allowedHeaders':[_0x4bee31(0x1b7),_0x4bee31(0x22c),_0x4bee31(0x21d),_0x4bee31(0x1f6)]}),this[_0x4bee31(0x1dc)][_0x4bee31(0x21c)]((_0x3d0f07,_0x5a7054,_0x25bbd2)=>{const _0x459d0f=_0x4bee31,_0x465832=_0x3d0f07 instanceof Error?_0x3d0f07[_0x459d0f(0x21e)]:_0x459d0f(0x1e2);this['logger'][_0x459d0f(0x1e1)](_0x459d0f(0x210),_0x3d0f07),_0x25bbd2[_0x459d0f(0x218)](0x1f4)[_0x459d0f(0x198)]({'type':_0x459d0f(0x1e1),'error':{'type':_0x459d0f(0x1fd),'message':_0x465832}});});}[a78_0x4ed696(0x224)](){const _0x30e05b=a78_0x4ed696;this['server'][_0x30e05b(0x1d9)](_0x30e05b(0x1b8),async()=>{return{'status':'ok','message':'TD\x20LLM\x20Pass-through\x20Proxy\x20Server'};}),this[_0x30e05b(0x1dc)][_0x30e05b(0x1d8)]('/v1/messages',async(_0x151356,_0x17d2ec)=>{const _0x4adf61=_0x30e05b;return this[_0x4adf61(0x1c6)](_0x151356,_0x17d2ec);}),this[_0x30e05b(0x1dc)][_0x30e05b(0x1d8)](_0x30e05b(0x20a),async(_0x30714d,_0x1e347f)=>{const _0x30a65f=_0x30e05b;return this[_0x30a65f(0x22d)](_0x30714d,_0x1e347f);});}static [a78_0x4ed696(0x1e8)]=new Set([a78_0x4ed696(0x1d4),a78_0x4ed696(0x221),a78_0x4ed696(0x19b),a78_0x4ed696(0x1db),a78_0x4ed696(0x231),'x-api-key',a78_0x4ed696(0x1ed)]);[a78_0x4ed696(0x1a7)](_0x5982a8){const _0x161b43=a78_0x4ed696,_0x5b7281={};for(const [_0x1a9e8c,_0x16200e]of Object[_0x161b43(0x19d)](_0x5982a8['headers'])){const _0x33e9c5=_0x1a9e8c['toLowerCase']();if(PassThroughProxyServer[_0x161b43(0x1e8)][_0x161b43(0x1e6)](_0x33e9c5))continue;if(_0x33e9c5['startsWith'](_0x161b43(0x22f)))continue;if(typeof _0x16200e===_0x161b43(0x1d5))_0x5b7281[_0x1a9e8c]=_0x16200e;else Array['isArray'](_0x16200e)&&(_0x5b7281[_0x1a9e8c]=_0x16200e['join'](',\x20'));}const _0x28a1c4=getVersion(),{auth:_0x36942c}=this['config'];return _0x5b7281['Authorization']=_0x36942c[_0x161b43(0x20e)]===_0x161b43(0x1af)?_0x161b43(0x1c8)+_0x36942c[_0x161b43(0x200)]:'TD1\x20'+_0x36942c['apiKey'],_0x5b7281['User-Agent']='tdx/'+_0x28a1c4,_0x5b7281[_0x161b43(0x1c4)]=_0x161b43(0x22e),_0x5b7281[_0x161b43(0x203)]=_0x28a1c4,_0x5b7281;}async[a78_0x4ed696(0x1c6)](_0x187598,_0x384f51){const _0x28adc7=a78_0x4ed696,_0x2c0f0e=_0x187598[_0x28adc7(0x1cc)],_0x161c8f=_0x2c0f0e[_0x28adc7(0x1ca)]!==![],_0x2eff23=_0x2c0f0e[_0x28adc7(0x212)],_0x3d2d9e=_0x2eff23?.['user_id']||'default',_0x16779e=extractSessionUUID(_0x3d2d9e),_0x14589c=_0x2c0f0e['model']||_0x28adc7(0x21f),_0x368d3e=shouldInjectSystemPrompt(_0x14589c)?injectSystemPrompt(_0x2c0f0e,TDX_SYSTEM_PROMPT):_0x2c0f0e,_0x5f171d=JSON[_0x28adc7(0x22a)](_0x368d3e),_0x5f0ba1=Array[_0x28adc7(0x216)](_0x2c0f0e[_0x28adc7(0x1bd)])?_0x2c0f0e['messages'][_0x28adc7(0x204)]:0x0;this[_0x28adc7(0x20d)][_0x28adc7(0x199)]('[PASSTHROUGH]\x20'+_0x187598[_0x28adc7(0x1cd)]+'\x20'+_0x187598['url']+_0x28adc7(0x1cf)+_0x5f0ba1+_0x28adc7(0x1bf)+_0x14589c+_0x28adc7(0x214)+_0x161c8f);const _0xcf00ec=_0x187598[_0x28adc7(0x1f7)][_0x28adc7(0x1b5)]('?')?_0x187598[_0x28adc7(0x1f7)]['slice'](_0x187598['url'][_0x28adc7(0x1c5)]('?')):'',_0x357f03=this[_0x28adc7(0x1a8)][_0x28adc7(0x1e0)]+_0x28adc7(0x1de)+_0xcf00ec,_0x1fce26=this[_0x28adc7(0x1a7)](_0x187598);this[_0x28adc7(0x20d)][_0x28adc7(0x1ef)]('Forwarding\x20to:\x20'+_0x357f03);const _0x29ea65=this['config'][_0x28adc7(0x1f0)]||DEFAULT_TIMEOUT_MS;try{const _0x358eb7=await fetch(_0x357f03,{'method':_0x28adc7(0x1eb),'headers':_0x1fce26,'body':_0x5f171d,'signal':AbortSignal['timeout'](_0x29ea65)});if(!_0x358eb7['ok']){const _0x44c317=await _0x358eb7[_0x28adc7(0x1a2)]();return this[_0x28adc7(0x20d)][_0x28adc7(0x1e1)](_0x28adc7(0x1aa)+_0x358eb7[_0x28adc7(0x1b2)]+'\x20'+_0x358eb7[_0x28adc7(0x1ce)]),this[_0x28adc7(0x20d)]['debug'](_0x28adc7(0x1ff)+_0x44c317),_0x384f51[_0x28adc7(0x218)](_0x358eb7['status']),_0x384f51[_0x28adc7(0x1b3)](_0x28adc7(0x1b7),_0x358eb7[_0x28adc7(0x1ae)][_0x28adc7(0x1d9)](_0x28adc7(0x1b7))||'application/json'),_0x384f51['send'](_0x44c317);}if(_0x161c8f&&_0x358eb7[_0x28adc7(0x1cc)])await this[_0x28adc7(0x194)](_0x358eb7['body'],_0x384f51,_0x16779e,_0x14589c);else{const _0x4d8857=await _0x358eb7[_0x28adc7(0x1a2)]();_0x384f51['header'](_0x28adc7(0x1b7),_0x358eb7['headers'][_0x28adc7(0x1d9)]('Content-Type')||_0x28adc7(0x1e4));try{const _0x46653a=JSON[_0x28adc7(0x1a0)](_0x4d8857);_0x46653a[_0x28adc7(0x1f2)]&&await this[_0x28adc7(0x1b9)](_0x16779e,_0x14589c,_0x46653a[_0x28adc7(0x1f2)][_0x28adc7(0x20c)]||0x0,_0x46653a['usage']['output_tokens']||0x0,_0x46653a[_0x28adc7(0x1f2)][_0x28adc7(0x1a3)],_0x46653a[_0x28adc7(0x1f2)]['cache_read_input_tokens']);}catch{}return _0x384f51['send'](_0x4d8857);}}catch(_0x1054f4){const _0x1d4fac=_0x1054f4 instanceof Error?_0x1054f4[_0x28adc7(0x21e)]:'Unknown\x20error',_0x4d4c9b=_0x1054f4 instanceof Error&&_0x1054f4['name']===_0x28adc7(0x1d1);this[_0x28adc7(0x20d)][_0x28adc7(0x1e1)]('[PASSTHROUGH]\x20Failed\x20to\x20forward\x20request:',_0x1054f4),_0x384f51[_0x28adc7(0x218)](_0x4d4c9b?0x1f8:0x1f7)[_0x28adc7(0x198)]({'type':'error','error':{'type':_0x4d4c9b?_0x28adc7(0x229):_0x28adc7(0x1fd),'message':_0x4d4c9b?_0x28adc7(0x217)+_0x29ea65+'ms':'Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20'+_0x1d4fac}});}}async[a78_0x4ed696(0x194)](_0x380526,_0xbbb68e,_0x8b7285,_0x3cb686){const _0x45c2d3=a78_0x4ed696;_0xbbb68e[_0x45c2d3(0x1b6)][_0x45c2d3(0x21a)](0xc8,{'Content-Type':_0x45c2d3(0x222),'Cache-Control':_0x45c2d3(0x1b1),'Connection':_0x45c2d3(0x1be)});const _0x2e6a4c=new SSEUsageTracker(),_0x169424=_0x380526['getReader'](),_0x29288d=new TextDecoder();try{while(!![]){const {done:_0x3266ed,value:_0x260484}=await _0x169424[_0x45c2d3(0x1c0)]();if(_0x3266ed)break;const _0x1c8c64=_0x29288d[_0x45c2d3(0x1f5)](_0x260484,{'stream':!![]});_0x2e6a4c['processChunk'](_0x1c8c64),_0xbbb68e[_0x45c2d3(0x1b6)][_0x45c2d3(0x1d6)](_0x1c8c64);}_0x2e6a4c[_0x45c2d3(0x1da)]();const _0x56d50d=_0x2e6a4c['getUsage']();(_0x56d50d[_0x45c2d3(0x1a5)]>0x0||_0x56d50d[_0x45c2d3(0x1e9)]>0x0)&&await this[_0x45c2d3(0x1b9)](_0x8b7285,_0x3cb686,_0x56d50d[_0x45c2d3(0x1a5)],_0x56d50d[_0x45c2d3(0x1e9)],_0x56d50d['cacheCreationInputTokens'],_0x56d50d[_0x45c2d3(0x1ad)]);}catch(_0x31bc55){this['logger'][_0x45c2d3(0x1e1)]('[PASSTHROUGH]\x20Stream\x20error:',_0x31bc55);const _0x2d9308=_0x45c2d3(0x220)+JSON[_0x45c2d3(0x22a)]({'type':_0x45c2d3(0x1e1),'error':{'type':_0x45c2d3(0x1c3),'message':_0x45c2d3(0x1ec)}})+'\x0a\x0a';_0xbbb68e['raw'][_0x45c2d3(0x1d6)](_0x2d9308);}finally{_0xbbb68e[_0x45c2d3(0x1b6)][_0x45c2d3(0x1cb)]();}}async[a78_0x4ed696(0x22d)](_0x5d79cb,_0x47a271){const _0x54eeca=a78_0x4ed696,_0x435439=_0x5d79cb[_0x54eeca(0x1cc)],_0x344296=_0x5d79cb[_0x54eeca(0x1f7)][_0x54eeca(0x1b5)]('?')?_0x5d79cb[_0x54eeca(0x1f7)][_0x54eeca(0x1c7)](_0x5d79cb[_0x54eeca(0x1f7)][_0x54eeca(0x1c5)]('?')):'',_0x4b47a8=this[_0x54eeca(0x1a8)]['llmProxyUrl']+_0x54eeca(0x20a)+_0x344296,_0x1bc8c1=this['buildForwardHeaders'](_0x5d79cb),_0x2bb1ec=_0x435439[_0x54eeca(0x228)]||'unknown',_0x52b195=shouldInjectSystemPrompt(_0x2bb1ec)?injectSystemPrompt(_0x435439,TDX_SYSTEM_PROMPT):_0x435439,_0x4da641=JSON[_0x54eeca(0x22a)](_0x52b195);this['logger'][_0x54eeca(0x1ef)](_0x54eeca(0x20b)+_0x4b47a8);const _0x40333f=this[_0x54eeca(0x1a8)][_0x54eeca(0x1f0)]||DEFAULT_TIMEOUT_MS;try{const _0x49c503=await fetch(_0x4b47a8,{'method':_0x54eeca(0x1eb),'headers':_0x1bc8c1,'body':_0x4da641,'signal':AbortSignal[_0x54eeca(0x1f1)](_0x40333f)}),_0x316fd1=await _0x49c503['text']();return _0x47a271[_0x54eeca(0x218)](_0x49c503[_0x54eeca(0x1b2)]),_0x47a271[_0x54eeca(0x1b3)](_0x54eeca(0x1b7),_0x49c503[_0x54eeca(0x1ae)]['get'](_0x54eeca(0x1b7))||'application/json'),_0x47a271[_0x54eeca(0x198)](_0x316fd1);}catch(_0x14015f){const _0x4fb676=_0x14015f instanceof Error?_0x14015f[_0x54eeca(0x21e)]:_0x54eeca(0x1e2),_0x5cef5b=_0x14015f instanceof Error&&_0x14015f[_0x54eeca(0x21b)]===_0x54eeca(0x1d1);this[_0x54eeca(0x20d)][_0x54eeca(0x1e1)](_0x54eeca(0x1fa),_0x14015f),_0x47a271[_0x54eeca(0x218)](_0x5cef5b?0x1f8:0x1f7)[_0x54eeca(0x198)]({'type':'error','error':{'type':_0x5cef5b?_0x54eeca(0x229):'api_error','message':_0x5cef5b?'Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20'+_0x40333f+'ms':_0x54eeca(0x1e5)+_0x4fb676}});}}async['logUsage'](_0x59cb9f,_0x17d3e6,_0x52db38,_0x1f18df,_0x5ef439,_0xd6b1e9){const _0x239daa=a78_0x4ed696,_0x3bb704={'timestamp':new Date()[_0x239daa(0x1d3)](),'model':_0x17d3e6,'inputTokens':_0x52db38,'outputTokens':_0x1f18df,'cacheCreationInputTokens':_0x5ef439,'cacheReadInputTokens':_0xd6b1e9,'profile':this[_0x239daa(0x1a8)][_0x239daa(0x1ab)],'source':_0x239daa(0x1fc)},_0x5122bd=_0x5ef439||_0xd6b1e9?_0x239daa(0x1a6)+(_0x5ef439||0x0)+_0x239daa(0x22b)+(_0xd6b1e9||0x0):'';this[_0x239daa(0x20d)][_0x239daa(0x1ef)](_0x239daa(0x19c)+_0x52db38+_0x239daa(0x1a1)+_0x1f18df+_0x5122bd+',\x20model='+_0x17d3e6);try{await appendUsageEntry(_0x59cb9f,_0x3bb704);}catch(_0xb8d30b){this[_0x239daa(0x20d)][_0x239daa(0x1e1)](_0x239daa(0x211),_0xb8d30b);}}['startTokenRefreshTimer'](){const _0x559d64=a78_0x4ed696;if(this['config'][_0x559d64(0x1dd)][_0x559d64(0x20e)]!==_0x559d64(0x1af))return;this[_0x559d64(0x19e)]=setInterval(()=>{const _0x4cac43=_0x559d64;void this[_0x4cac43(0x230)]();},TOKEN_REFRESH_INTERVAL_MS),this['refreshTimer']['unref']();}async[a78_0x4ed696(0x230)](){const _0x5d09dc=a78_0x4ed696,{auth:_0x185acf}=this['config'];if(_0x185acf[_0x5d09dc(0x20e)]!==_0x5d09dc(0x1af))return;const _0x1b0c44=!_0x185acf[_0x5d09dc(0x1f8)]||_0x185acf[_0x5d09dc(0x1f8)]<Date[_0x5d09dc(0x213)]()+TOKEN_EXPIRY_BUFFER_MS;if(!_0x1b0c44)return;try{const _0x5e7d58=await refreshAccessToken(_0x185acf[_0x5d09dc(0x1a9)],_0x185acf[_0x5d09dc(0x1df)]);_0x185acf[_0x5d09dc(0x200)]=_0x5e7d58[_0x5d09dc(0x209)],_0x185acf[_0x5d09dc(0x1df)]=_0x5e7d58[_0x5d09dc(0x195)],_0x185acf[_0x5d09dc(0x1f8)]=_0x5e7d58[_0x5d09dc(0x19f)],await saveOAuthTokens(_0x5e7d58,this[_0x5d09dc(0x1a8)][_0x5d09dc(0x1ab)]),this[_0x5d09dc(0x20d)][_0x5d09dc(0x199)]('[PASSTHROUGH]\x20OAuth\x20token\x20refreshed\x20successfully');}catch(_0x43140e){this[_0x5d09dc(0x20d)]['error']('[PASSTHROUGH]\x20OAuth\x20token\x20refresh\x20failed:',_0x43140e);}}async[a78_0x4ed696(0x19a)](){const _0x42e715=a78_0x4ed696,_0x35fd97=this['config'][_0x42e715(0x226)]??0x64;for(let _0x39e160=0x0;_0x39e160<_0x35fd97;_0x39e160++){const _0x38cbd3=this[_0x42e715(0x1a8)]['startPort']+_0x39e160;try{await this['server']['listen']({'port':_0x38cbd3,'host':_0x42e715(0x1e7)}),this[_0x42e715(0x1bb)]=_0x38cbd3,this[_0x42e715(0x20d)][_0x42e715(0x199)]('Pass-through\x20proxy\x20server\x20started\x20on\x20port\x20'+_0x38cbd3),this[_0x42e715(0x20d)][_0x42e715(0x199)](_0x42e715(0x1d7)+this[_0x42e715(0x1a8)]['llmProxyUrl']),this[_0x42e715(0x1b0)]();return;}catch(_0x52a968){const _0x49eda7=_0x52a968 instanceof Error&&_0x42e715(0x218)in _0x52a968&&_0x52a968[_0x42e715(0x218)]===_0x42e715(0x1c9);if(!_0x49eda7)throw _0x52a968;this['logger'][_0x42e715(0x1ef)](_0x42e715(0x201)+_0x38cbd3+_0x42e715(0x208)),this[_0x42e715(0x1d0)]();}}const _0x5e21d0=this['config'][_0x42e715(0x205)]+_0x35fd97-0x1;throw new Error(_0x42e715(0x196)+this[_0x42e715(0x1a8)]['startPort']+_0x42e715(0x206)+_0x5e21d0);}async[a78_0x4ed696(0x219)](){const _0x25d19c=a78_0x4ed696;this[_0x25d19c(0x19e)]&&(clearInterval(this['refreshTimer']),this['refreshTimer']=undefined),await this[_0x25d19c(0x1dc)][_0x25d19c(0x1f9)](),this[_0x25d19c(0x20d)][_0x25d19c(0x199)](_0x25d19c(0x1ee));}['getAddress'](){const _0x5b843d=a78_0x4ed696;return _0x5b843d(0x1c1)+this['port'];}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a79_0x39abb5=a79_0x4da1;(function(_0x1d5bb5,_0x2d5c6d){const _0x36cee5=a79_0x4da1,_0x39ce43=_0x1d5bb5();while(!![]){try{const _0x5a8c91=parseInt(_0x36cee5(0xb6))/0x1+parseInt(_0x36cee5(0xd2))/0x2*(parseInt(_0x36cee5(0xbe))/0x3)+parseInt(_0x36cee5(0xd8))/0x4*(parseInt(_0x36cee5(0xdc))/0x5)+-parseInt(_0x36cee5(0xc3))/0x6*(-parseInt(_0x36cee5(0xd4))/0x7)+parseInt(_0x36cee5(0xb7))/0x8+-parseInt(_0x36cee5(0xd0))/0x9*(parseInt(_0x36cee5(0xd7))/0xa)+parseInt(_0x36cee5(0xc4))/0xb*(-parseInt(_0x36cee5(0xc6))/0xc);if(_0x5a8c91===_0x2d5c6d)break;else _0x39ce43['push'](_0x39ce43['shift']());}catch(_0x2e490e){_0x39ce43['push'](_0x39ce43['shift']());}}}(a79_0x5695,0x4fcc8));export function parseSSEChunk(_0x443c94){const _0x3eb082=a79_0x4da1,_0x9854e4=[],_0x3598fc=_0x443c94[_0x3eb082(0xba)]('\x0a\x0a'),_0x18d632=_0x3598fc[_0x3eb082(0xc9)]()||'';for(const _0xaf87a4 of _0x3598fc){if(!_0xaf87a4[_0x3eb082(0xb3)]())continue;const _0x3ed421={},_0x2a3650=_0xaf87a4[_0x3eb082(0xba)]('\x0a');for(const _0x1e0e7e of _0x2a3650){if(_0x1e0e7e[_0x3eb082(0xce)](_0x3eb082(0xc5)))_0x3ed421[_0x3eb082(0xb8)]=_0x1e0e7e[_0x3eb082(0xd6)](0x7);else _0x1e0e7e[_0x3eb082(0xce)](_0x3eb082(0xd9))&&(_0x3ed421[_0x3eb082(0xdb)]=_0x1e0e7e['slice'](0x6));}(_0x3ed421[_0x3eb082(0xb8)]||_0x3ed421[_0x3eb082(0xdb)])&&_0x9854e4['push'](_0x3ed421);}return{'events':_0x9854e4,'remaining':_0x18d632};}function a79_0x4da1(_0x8e341c,_0x3b2361){_0x8e341c=_0x8e341c-0xb3;const _0x5695e6=a79_0x5695();let _0x4da17e=_0x5695e6[_0x8e341c];return _0x4da17e;}export function extractMessageStartUsage(_0x4ab952){const _0x302bd7=a79_0x4da1;try{const _0x3d265c=JSON['parse'](_0x4ab952);if(_0x3d265c[_0x302bd7(0xbc)]==='message_start'&&_0x3d265c['message']?.[_0x302bd7(0xb5)]){const _0x261556=_0x3d265c['message'][_0x302bd7(0xb5)];return{'inputTokens':_0x261556[_0x302bd7(0xda)]||0x0,'outputTokens':_0x261556[_0x302bd7(0xcc)]||0x0,'cacheCreationInputTokens':_0x261556[_0x302bd7(0xc8)],'cacheReadInputTokens':_0x261556[_0x302bd7(0xd3)]};}}catch{}return null;}export function extractMessageDeltaUsage(_0x29bb6c){const _0x16cfcc=a79_0x4da1;try{const _0x9f24ba=JSON[_0x16cfcc(0xc2)](_0x29bb6c);if(_0x9f24ba[_0x16cfcc(0xbc)]===_0x16cfcc(0xbd)&&_0x9f24ba['usage']){const _0x321d86=_0x9f24ba[_0x16cfcc(0xb5)];return{'inputTokens':_0x321d86[_0x16cfcc(0xda)]||0x0,'outputTokens':_0x321d86[_0x16cfcc(0xcc)]||0x0,'cacheCreationInputTokens':_0x321d86[_0x16cfcc(0xc8)],'cacheReadInputTokens':_0x321d86['cache_read_input_tokens']};}}catch{}return null;}export function extractUsageFromEvent(_0x362f27){const _0x47abad=a79_0x4da1;if(!_0x362f27[_0x47abad(0xdb)])return null;if(_0x362f27[_0x47abad(0xb8)]===_0x47abad(0xbf))return extractMessageStartUsage(_0x362f27[_0x47abad(0xdb)]);if(_0x362f27[_0x47abad(0xb8)]===_0x47abad(0xbd))return extractMessageDeltaUsage(_0x362f27['data']);return null;}function a79_0x5695(){const _0x511238=['parse','6eprezd','1599158vXiuTR','event:\x20','36hkVGiH','cacheReadInputTokens','cache_creation_input_tokens','pop','buffer','outputTokens','output_tokens','reset','startsWith','inputTokens','192123oSPCQa','processChunk','205586YjaXpk','cache_read_input_tokens','4045146wSRKog','cacheCreationInputTokens','slice','70uHkMFu','136DZLpIa','data:\x20','input_tokens','data','5500EulcNh','trim','getUsage','usage','67301xTbXXt','194032FEJCMP','event','updateFromUsage','split','unknown','type','message_delta','6tKzXYh','message_start','onRawUsage','max'];a79_0x5695=function(){return _0x511238;};return a79_0x5695();}export class SSEUsageTracker{[a79_0x39abb5(0xcf)]=0x0;[a79_0x39abb5(0xcb)]=0x0;['cacheCreationInputTokens'];[a79_0x39abb5(0xc7)];[a79_0x39abb5(0xca)]='';[a79_0x39abb5(0xb9)](_0x4db8dd){const _0x17f83f=a79_0x39abb5;this[_0x17f83f(0xcf)]=Math[_0x17f83f(0xc1)](this[_0x17f83f(0xcf)],_0x4db8dd[_0x17f83f(0xcf)]),this[_0x17f83f(0xcb)]=Math[_0x17f83f(0xc1)](this[_0x17f83f(0xcb)],_0x4db8dd[_0x17f83f(0xcb)]),_0x4db8dd['cacheCreationInputTokens']!==undefined&&(this['cacheCreationInputTokens']=Math[_0x17f83f(0xc1)](this[_0x17f83f(0xd5)]??0x0,_0x4db8dd[_0x17f83f(0xd5)])),_0x4db8dd[_0x17f83f(0xc7)]!==undefined&&(this[_0x17f83f(0xc7)]=Math[_0x17f83f(0xc1)](this[_0x17f83f(0xc7)]??0x0,_0x4db8dd[_0x17f83f(0xc7)]));}[a79_0x39abb5(0xc0)];[a79_0x39abb5(0xd1)](_0x4e53c2){const _0x4c8418=a79_0x39abb5;this[_0x4c8418(0xca)]+=_0x4e53c2;const {events:_0x549df8,remaining:_0x5989ab}=parseSSEChunk(this['buffer']);this[_0x4c8418(0xca)]=_0x5989ab;for(const _0x4f4920 of _0x549df8){const _0x45cbe9=extractUsageFromEvent(_0x4f4920);_0x45cbe9&&(this[_0x4c8418(0xc0)]?.(_0x4f4920[_0x4c8418(0xb8)]||_0x4c8418(0xbb),_0x4f4920[_0x4c8418(0xdb)]||'',_0x45cbe9),this[_0x4c8418(0xb9)](_0x45cbe9));}return _0x4e53c2;}['flush'](){const _0x541a78=a79_0x39abb5;if(this[_0x541a78(0xca)][_0x541a78(0xb3)]()){const {events:_0x42efd4}=parseSSEChunk(this[_0x541a78(0xca)]+'\x0a\x0a');for(const _0x57adf8 of _0x42efd4){const _0x3eb40e=extractUsageFromEvent(_0x57adf8);_0x3eb40e&&this[_0x541a78(0xb9)](_0x3eb40e);}this[_0x541a78(0xca)]='';}}[a79_0x39abb5(0xb4)](){const _0x4c8b38=a79_0x39abb5;return{'inputTokens':this[_0x4c8b38(0xcf)],'outputTokens':this[_0x4c8b38(0xcb)],'cacheCreationInputTokens':this[_0x4c8b38(0xd5)],'cacheReadInputTokens':this[_0x4c8b38(0xc7)]};}[a79_0x39abb5(0xcd)](){const _0x5b90e2=a79_0x39abb5;this[_0x5b90e2(0xcf)]=0x0,this['outputTokens']=0x0,this[_0x5b90e2(0xd5)]=undefined,this[_0x5b90e2(0xc7)]=undefined,this['buffer']='';}}
|