@treasuredata/tdx 2026.6.2 → 2026.6.4
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.d.ts.map +1 -1
- package/dist/cli.js +1 -1
- package/dist/cli.js.map +1 -1
- package/dist/commands/activations.js +1 -1
- package/dist/commands/agent-command.js +1 -1
- package/dist/commands/agent-test-command.js +1 -1
- package/dist/commands/api-command.js +1 -1
- package/dist/commands/auth-command.js +1 -1
- package/dist/commands/cas-command.js +1 -1
- package/dist/commands/cas-segment-command.js +1 -1
- package/dist/commands/chat-command.js +1 -1
- package/dist/commands/claude-command.js +1 -1
- package/dist/commands/claude-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/table-deleted.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.d.ts +14 -0
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +1 -1
- package/dist/core/config.js.map +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.d.ts +1 -0
- package/dist/core/project-config.d.ts.map +1 -1
- package/dist/core/project-config.js +1 -1
- package/dist/core/project-config.js.map +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.d.ts.map +1 -1
- package/dist/mcp/tools/tdx-search.js +1 -1
- package/dist/mcp/tools/tdx-search.js.map +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/llm/user-settings.js +1 -1
- package/dist/sdk/personalization.js +1 -1
- package/dist/sdk/policy.js +1 -1
- package/dist/sdk/query/deleted-table-validation.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/task-graph.js +1 -1
- package/dist/sdk/workflow/tdx-config.js +1 -1
- package/dist/sdk/workflow/workflow-utils.js +1 -1
- package/dist/sdk/workspace/access-tracker.js +1 -1
- package/dist/sdk/workspace/frontmatter.js +1 -1
- package/dist/sdk/workspace/git.js +1 -1
- package/dist/sdk/workspace/index.js +1 -1
- package/dist/sdk/workspace/templates.js +1 -1
- package/dist/sdk/workspace/weekly.js +1 -1
- package/dist/sdk/workspace/wikilinks.js +1 -1
- package/dist/test-utils/command-runner.js +1 -1
- package/dist/test-utils/factories.js +1 -1
- package/dist/test-utils/fixtures.js +1 -1
- package/dist/test-utils/http-mock.js +1 -1
- package/dist/test-utils/index.js +1 -1
- package/dist/utils/async.js +1 -1
- package/dist/utils/colors.js +1 -1
- package/dist/utils/diff.js +1 -1
- package/dist/utils/file-permissions.js +1 -1
- package/dist/utils/file-reader.js +1 -1
- package/dist/utils/github-releases.js +1 -1
- package/dist/utils/global-cache.js +1 -1
- package/dist/utils/json-loader.js +1 -1
- package/dist/utils/local-cache.js +1 -1
- package/dist/utils/logger/formatters/default-formatter.js +1 -1
- package/dist/utils/logger/formatters/index.js +1 -1
- package/dist/utils/logger/handlers/console-handler.js +1 -1
- package/dist/utils/logger/handlers/file-handler.js +1 -1
- package/dist/utils/logger/handlers/index.js +1 -1
- package/dist/utils/logger/handlers/null-handler.js +1 -1
- package/dist/utils/logger/index.js +1 -1
- package/dist/utils/logger/logger.js +1 -1
- package/dist/utils/logger/types.js +1 -1
- package/dist/utils/option-validation.js +1 -1
- package/dist/utils/process.js +1 -1
- package/dist/utils/prompt.js +1 -1
- package/dist/utils/spinner.js +1 -1
- package/dist/utils/sse-parser.js +1 -1
- package/dist/utils/string-utils.js +1 -1
- package/dist/utils/table-ref-parser.js +1 -1
- package/dist/utils/tdx-logger.js +1 -1
- package/dist/utils/version-check.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a76_0x306c98=a76_0x6a91;function a76_0x1f70(){const _0xf334fa=['void','3378105wSGGfo','filePath','done','backlog','No\x20workspace\x20found.\x20Run\x20`tdx\x20work\x20init`\x20to\x20create\x20one.','fileName','2409010bVBmSv','kind','129ROCgwX','describe','2933679JcaSth','planning','body','JIRA\x20ticket\x20reference\x20(org/TICKET-ID)','36364GAKRWL','design_review','Document\x20kind\x20(default:\x20\x22item\x22)','2QQZTlN','array','medium','superseded','optional','Template\x20name\x20from\x20templates/\x20folder','string','github','title','object','enum','213314mvDYpc','Initial\x20status\x20(default:\x20\x22todo\x22\x20for\x20items,\x20\x22proposed\x22\x20for\x20guides)','deprecated','note','low','review','status','tags','jira','item','createDocument','priority','241408qmRcyr','replace','1794816weEieJ','template','Priority\x20level'];a76_0x1f70=function(){return _0xf334fa;};return a76_0x1f70();}(function(_0x20f0d8,_0x6bac82){const _0x1476cc=a76_0x6a91,_0x3a4225=_0x20f0d8();while(!![]){try{const _0x29d2ee=parseInt(_0x1476cc(0xd9))/0x1*(-parseInt(_0x1476cc(0xce))/0x2)+parseInt(_0x1476cc(0xc5))/0x3*(-parseInt(_0x1476cc(0xcb))/0x4)+parseInt(_0x1476cc(0xc3))/0x5+parseInt(_0x1476cc(0xb9))/0x6+parseInt(_0x1476cc(0xc7))/0x7+parseInt(_0x1476cc(0xb7))/0x8+-parseInt(_0x1476cc(0xbd))/0x9;if(_0x29d2ee===_0x6bac82)break;else _0x3a4225['push'](_0x3a4225['shift']());}catch(_0x4f08e6){_0x3a4225['push'](_0x3a4225['shift']());}}}(a76_0x1f70,0x3d30f));function a76_0x6a91(_0x20477c,_0x39cd07){_0x20477c=_0x20477c-0xb0;const _0x1f7016=a76_0x1f70();let _0x6a9146=_0x1f7016[_0x20477c];return _0x6a9146;}import{z}from'zod';import{WorkspaceSDK,resolveWorkspacePath}from'../../sdk/workspace/index.js';const TASK_STATUSES=[a76_0x306c98(0xc0),'todo',a76_0x306c98(0xc8),a76_0x306c98(0xcc),'in_progress',a76_0x306c98(0xb0),a76_0x306c98(0xbf),a76_0x306c98(0xbc)],GUIDE_STATUSES=['proposed','accepted',a76_0x306c98(0xdb),a76_0x306c98(0xd1)];export const WorkCreateItemInputSchema=z[a76_0x306c98(0xd7)]({'title':z[a76_0x306c98(0xd4)]()[a76_0x306c98(0xc6)]('Item\x20title\x20(required)'),'kind':z[a76_0x306c98(0xd8)]([a76_0x306c98(0xb4),a76_0x306c98(0xdc),'guide','reference'])[a76_0x306c98(0xd2)]()[a76_0x306c98(0xc6)](a76_0x306c98(0xcd)),'status':z['enum']([...TASK_STATUSES,...GUIDE_STATUSES])[a76_0x306c98(0xd2)]()[a76_0x306c98(0xc6)](a76_0x306c98(0xda)),'tags':z[a76_0x306c98(0xcf)](z[a76_0x306c98(0xd4)]())[a76_0x306c98(0xd2)]()[a76_0x306c98(0xc6)]('Tags\x20for\x20the\x20item'),'priority':z[a76_0x306c98(0xd8)](['critical','high',a76_0x306c98(0xd0),a76_0x306c98(0xdd)])['optional']()[a76_0x306c98(0xc6)](a76_0x306c98(0xbb)),'body':z[a76_0x306c98(0xd4)]()['optional']()['describe']('Markdown\x20body\x20content'),'template':z['string']()['optional']()[a76_0x306c98(0xc6)](a76_0x306c98(0xd3)),'github':z[a76_0x306c98(0xd4)]()[a76_0x306c98(0xd2)]()[a76_0x306c98(0xc6)]('GitHub\x20PR/issue\x20reference\x20(owner/repo#number)'),'jira':z[a76_0x306c98(0xd4)]()['optional']()[a76_0x306c98(0xc6)](a76_0x306c98(0xca))});export function executeWorkCreateItem(_0x5adaaa){const _0x542059=a76_0x306c98,_0x1ec47f=resolveWorkspacePath();if(!_0x1ec47f)return{'success':![],'error':_0x542059(0xc1)};const _0x52dbe0=new WorkspaceSDK(_0x1ec47f),_0xbc9d06={'title':_0x5adaaa[_0x542059(0xd6)],'kind':_0x5adaaa[_0x542059(0xc4)]||_0x542059(0xb4),'status':_0x5adaaa[_0x542059(0xb1)],'tags':_0x5adaaa[_0x542059(0xb2)],'priority':_0x5adaaa[_0x542059(0xb6)],'body':_0x5adaaa[_0x542059(0xc9)],'template':_0x5adaaa[_0x542059(0xba)],'github':_0x5adaaa[_0x542059(0xd5)],'jira':_0x5adaaa[_0x542059(0xb3)]},_0x564ebe=_0x52dbe0[_0x542059(0xb5)](_0xbc9d06);return{'success':!![],'path':_0x564ebe[_0x542059(0xbe)],'slug':_0x564ebe[_0x542059(0xc2)][_0x542059(0xb8)](/\.md$/,'')};}
|
package/dist/mcp/utils.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a77_0x47cb7f=a77_0x507a;(function(_0x463586,_0x22293d){const _0x24e7f0=a77_0x507a,_0xab4ed2=_0x463586();while(!![]){try{const _0x50c11b=-parseInt(_0x24e7f0(0x7e))/0x1+parseInt(_0x24e7f0(0x7c))/0x2+parseInt(_0x24e7f0(0x80))/0x3*(parseInt(_0x24e7f0(0x6b))/0x4)+-parseInt(_0x24e7f0(0x6c))/0x5*(parseInt(_0x24e7f0(0x7d))/0x6)+-parseInt(_0x24e7f0(0x82))/0x7*(-parseInt(_0x24e7f0(0x70))/0x8)+-parseInt(_0x24e7f0(0x75))/0x9+parseInt(_0x24e7f0(0x74))/0xa*(parseInt(_0x24e7f0(0x78))/0xb);if(_0x50c11b===_0x22293d)break;else _0xab4ed2['push'](_0xab4ed2['shift']());}catch(_0x3e7876){_0xab4ed2['push'](_0xab4ed2['shift']());}}}(a77_0x4d51,0xf2fdd));const BLOCKED_COMMANDS=['auth\x20setup',a77_0x47cb7f(0x83),a77_0x47cb7f(0x6d),'profile\x20create',a77_0x47cb7f(0x6a),a77_0x47cb7f(0x69),a77_0x47cb7f(0x6f)],BLOCKED_FLAGS=[a77_0x47cb7f(0x73),'-p'];function a77_0x507a(_0x261c9e,_0x26c92d){_0x261c9e=_0x261c9e-0x68;const _0x4d5160=a77_0x4d51();let _0x507a54=_0x4d5160[_0x261c9e];return _0x507a54;}function a77_0x4d51(){const _0x285561=['profile\x20create','3pqrdou','replace','5743577kUZUIh','auth\x20login','startsWith','profile\x20remove','profile\x20delete','1236084BfITuY','5eGPURc','auth\x20clear','Cannot\x20run\x20MCP\x20server\x20recursively','mcp','8hpMXcf','includes','slice','--profile','88720Vrohdc','8612559GdLuTR','toLowerCase','join','3245qNhUDo','auth\x20setup','This\x20command\x20is\x20not\x20allowed\x20via\x20MCP','Credential\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','2010942HAAbpH','7550052oGgWWH','1541657YtFAfi'];a77_0x4d51=function(){return _0x285561;};return a77_0x4d51();}export function hasBlockedFlag(_0xc7aef7){const _0x1cea4e=a77_0x47cb7f;for(const _0x1e9f75 of _0xc7aef7){const _0x554209=_0x1e9f75[_0x1cea4e(0x76)]();for(const _0xb5904b of BLOCKED_FLAGS){if(_0x554209===_0xb5904b||_0x554209[_0x1cea4e(0x68)](_0xb5904b+'='))return!![];}}return![];}export function isBlockedCommand(_0x577f3e){const _0x430be3=a77_0x47cb7f;if(_0x577f3e['length']===0x0)return![];if(hasBlockedFlag(_0x577f3e))return!![];const _0x34b86b=_0x577f3e[_0x430be3(0x72)](0x0,0x2)[_0x430be3(0x77)]('\x20')[_0x430be3(0x76)]();for(const _0x3251dc of BLOCKED_COMMANDS){if(_0x34b86b[_0x430be3(0x68)](_0x3251dc))return!![];}const _0x1ff0cb=_0x577f3e[0x0][_0x430be3(0x76)]();for(const _0x2bc56b of BLOCKED_COMMANDS){if(!_0x2bc56b[_0x430be3(0x71)]('\x20')&&_0x1ff0cb===_0x2bc56b)return!![];}return![];}export function getBlockedReason(_0x13a9ad){const _0x26225b=a77_0x47cb7f;if(!isBlockedCommand(_0x13a9ad))return undefined;if(hasBlockedFlag(_0x13a9ad))return'Profile\x20switching\x20via\x20--profile\x20flag\x20is\x20not\x20allowed\x20via\x20MCP';const _0x3f1cae=_0x13a9ad['slice'](0x0,0x2)[_0x26225b(0x77)]('\x20')[_0x26225b(0x76)](),_0x518054=_0x13a9ad[0x0][_0x26225b(0x76)]();if(_0x3f1cae['startsWith'](_0x26225b(0x79))||_0x3f1cae[_0x26225b(0x68)](_0x26225b(0x83))||_0x3f1cae[_0x26225b(0x68)](_0x26225b(0x6d)))return _0x26225b(0x7b);if(_0x3f1cae[_0x26225b(0x68)](_0x26225b(0x7f))||_0x3f1cae['startsWith'](_0x26225b(0x6a))||_0x3f1cae[_0x26225b(0x68)](_0x26225b(0x69)))return'Profile\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP';if(_0x518054===_0x26225b(0x6f))return _0x26225b(0x6e);return _0x26225b(0x7a);}export function formatOutput(_0xaa6cc6){const _0x2b1420=a77_0x47cb7f,_0x1dc2f5=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;let _0x1c8eb3=_0xaa6cc6['replace'](_0x1dc2f5,'');return _0x1c8eb3=_0x1c8eb3[_0x2b1420(0x81)](/\r\n/g,'\x0a')[_0x2b1420(0x81)](/\r/g,'\x0a'),_0x1c8eb3=_0x1c8eb3['trimEnd'](),_0x1c8eb3;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x2943b6,_0x4ba314){const _0x24133b=a78_0x5200,_0x18b4eb=_0x2943b6();while(!![]){try{const _0x449abf=parseInt(_0x24133b(0x155))/0x1*(parseInt(_0x24133b(0x16b))/0x2)+parseInt(_0x24133b(0x171))/0x3+-parseInt(_0x24133b(0x144))/0x4+-parseInt(_0x24133b(0x152))/0x5*(parseInt(_0x24133b(0x15c))/0x6)+-parseInt(_0x24133b(0x150))/0x7+parseInt(_0x24133b(0x16e))/0x8*(-parseInt(_0x24133b(0x164))/0x9)+parseInt(_0x24133b(0x163))/0xa;if(_0x449abf===_0x4ba314)break;else _0x18b4eb['push'](_0x18b4eb['shift']());}catch(_0x4dc37c){_0x18b4eb['push'](_0x18b4eb['shift']());}}}(a78_0x3f88,0xe2596));import{readFile,writeFile,appendFile,mkdir,readdir,stat}from'node:fs/promises';import{existsSync}from'node:fs';function a78_0x5200(_0x5cafe1,_0x124e3c){_0x5cafe1=_0x5cafe1-0x13e;const _0x3f889c=a78_0x3f88();let _0x5200bf=_0x3f889c[_0x5cafe1];return _0x5200bf;}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 _0x514adb=a78_0x5200;return!usageLogger&&(usageLogger=new TDXLogger(LogLevel[_0x514adb(0x17a)],!![]),await usageLogger[_0x514adb(0x177)]()),usageLogger;}function getUsageDir(){return join(getGlobalCacheDir(),'claude-usage');}function sanitizeSessionId(_0x503a13){return _0x503a13['replace'](/[^a-zA-Z0-9_-]/g,'_');}function getSafeJsonlPath(_0x4d1899){const _0x372cf9=getUsageDir(),_0x10c73c=sanitizeSessionId(_0x4d1899),_0x3ab859=resolve(_0x372cf9,_0x10c73c+'.jsonl');if(!_0x3ab859['startsWith'](_0x372cf9))throw new Error('Invalid\x20session\x20ID:\x20path\x20traversal\x20detected');return _0x3ab859;}function getStatsCachePath(){const _0x21d443=a78_0x5200;return join(getUsageDir(),_0x21d443(0x14e));}async function ensureUsageDir(){const _0x2ee288=getUsageDir();!existsSync(_0x2ee288)&&await mkdir(_0x2ee288,{'recursive':!![]});}export async function appendUsageEntry(_0x3762d1,_0x5d2ae1){const _0x498203=a78_0x5200,_0x1b1b7e=sanitizeSessionId(_0x3762d1);await ensureUsageDir();const _0x5e94d8=getSafeJsonlPath(_0x1b1b7e),_0x1b1b73=JSON[_0x498203(0x179)](_0x5d2ae1)+'\x0a';await appendFile(_0x5e94d8,_0x1b1b73,_0x498203(0x148));}async function readSessionJsonl(_0x3edbaa){const _0x30e898=a78_0x5200,_0x1d917a=getSafeJsonlPath(_0x3edbaa);if(!existsSync(_0x1d917a))return[];try{const _0x22e349=await readFile(_0x1d917a,_0x30e898(0x148)),_0x451db1=_0x22e349[_0x30e898(0x14c)]()[_0x30e898(0x173)]('\x0a')[_0x30e898(0x13e)](Boolean);return _0x451db1['map'](_0x5a38eb=>{try{return JSON['parse'](_0x5a38eb);}catch{return null;}})[_0x30e898(0x13e)](_0x2caf41=>_0x2caf41!==null);}catch(_0x2f38b0){const _0x1e8703=await getLogger();return _0x1e8703[_0x30e898(0x159)](_0x30e898(0x14d)+_0x3edbaa+_0x30e898(0x167),_0x2f38b0 instanceof Error?_0x2f38b0['message']:String(_0x2f38b0)),[];}}async function getAllSessionFiles(){const _0x2050c9=a78_0x5200,_0x48e597=getUsageDir();if(!existsSync(_0x48e597))return[];try{const _0x5a7090=await readdir(_0x48e597);return _0x5a7090[_0x2050c9(0x13e)](_0x344705=>_0x344705[_0x2050c9(0x151)](_0x2050c9(0x17c)))[_0x2050c9(0x15f)](_0xab46dd=>_0xab46dd[_0x2050c9(0x156)](_0x2050c9(0x17c),''));}catch(_0x583d93){const _0x10d401=await getLogger();return _0x10d401[_0x2050c9(0x159)]('Failed\x20to\x20read\x20usage\x20directory:',_0x583d93 instanceof Error?_0x583d93[_0x2050c9(0x172)]:String(_0x583d93)),[];}}async function readStatsCache(){const _0x290483=a78_0x5200,_0x5706d3=getStatsCachePath();if(!existsSync(_0x5706d3))return null;try{const _0x518be1=await readFile(_0x5706d3,_0x290483(0x148)),_0x294da7=JSON[_0x290483(0x15a)](_0x518be1),_0x524f15=Object[_0x290483(0x149)](_0x294da7[_0x290483(0x153)]||{})[0x0];if(_0x524f15&&_0x290483(0x143)in _0x524f15)return null;return _0x294da7;}catch{return null;}}async function writeStatsCache(_0x452a20){const _0x4273ef=a78_0x5200;await ensureUsageDir();const _0x41c4f2=getStatsCachePath();await writeFile(_0x41c4f2,JSON[_0x4273ef(0x179)](_0x452a20,null,0x2),_0x4273ef(0x148));}async function isCacheUpToDate(_0x28b3e7,_0x360d05){const _0x245bb0=a78_0x5200,_0x432d6c=_0x28b3e7['sessions'][_0x360d05];if(!_0x432d6c)return![];const _0x4538ec=getSafeJsonlPath(_0x360d05);if(!existsSync(_0x4538ec))return!![];try{const _0x3b1bb0=await stat(_0x4538ec),_0x7b2f70=new Date(_0x432d6c[_0x245bb0(0x14a)])[_0x245bb0(0x175)](),_0x210ce3=_0x3b1bb0['mtime'][_0x245bb0(0x175)]();return _0x7b2f70>_0x210ce3;}catch{return![];}}export async function rebuildCache(){const _0x539ed7=a78_0x5200,_0x3955c9=new Date(),_0xfa3f05=_0x3955c9['toISOString']()['slice'](0x0,0xa),_0x30b05e=_0x3955c9[_0x539ed7(0x15d)]()[_0x539ed7(0x147)](0x0,0x7),_0x31e211={'daily':{},'monthly':{},'sessions':{},'profiles':{},'sources':{},'lastRebuiltAt':_0x3955c9[_0x539ed7(0x15d)]()},_0x36bbf3=await getAllSessionFiles();for(const _0x1fbbe0 of _0x36bbf3){try{const _0x363c0b=await readSessionJsonl(_0x1fbbe0);if(_0x363c0b[_0x539ed7(0x145)]===0x0)continue;let _0x83aeb6=0x0;const _0x4c9ada={};let _0x280eba='';for(const _0x527df9 of _0x363c0b){const _0x184207=_0x527df9['cacheCreationInputTokens']??0x0,_0x314569=_0x527df9[_0x539ed7(0x154)]??0x0,_0x8891db=_0x527df9[_0x539ed7(0x157)]+_0x184207+_0x314569,_0x34767c=getModelPricing(_0x527df9[_0x539ed7(0x13f)],_0x8891db),_0x17be83=calculateTokenCost(_0x527df9[_0x539ed7(0x157)],_0x527df9['outputTokens'],_0x184207,_0x314569,_0x34767c),_0x25e25c=usdToAiCredits(_0x17be83);_0x83aeb6+=_0x25e25c;const _0x577d71=_0x527df9[_0x539ed7(0x162)]||'default';_0x4c9ada[_0x577d71]=_0x8891db;_0x527df9[_0x539ed7(0x140)]>_0x280eba&&(_0x280eba=_0x527df9[_0x539ed7(0x140)]);const _0x53085a=_0x527df9[_0x539ed7(0x140)][_0x539ed7(0x147)](0x0,0xa);!_0x31e211[_0x539ed7(0x166)][_0x53085a]&&(_0x31e211['daily'][_0x53085a]={'totalCredits':0x0,'entryCount':0x0});_0x31e211[_0x539ed7(0x166)][_0x53085a][_0x539ed7(0x178)]+=_0x25e25c,_0x31e211['daily'][_0x53085a][_0x539ed7(0x15b)]+=0x1;const _0x4c0282=_0x527df9[_0x539ed7(0x140)][_0x539ed7(0x147)](0x0,0x7);!_0x31e211[_0x539ed7(0x165)][_0x4c0282]&&(_0x31e211[_0x539ed7(0x165)][_0x4c0282]={'totalCredits':0x0,'entryCount':0x0});_0x31e211[_0x539ed7(0x165)][_0x4c0282]['totalCredits']+=_0x25e25c,_0x31e211[_0x539ed7(0x165)][_0x4c0282]['entryCount']+=0x1;const _0x4f2745=_0x527df9[_0x539ed7(0x141)]||_0x539ed7(0x15e);!_0x31e211[_0x539ed7(0x176)][_0x4f2745]&&(_0x31e211['profiles'][_0x4f2745]={'totalCredits':0x0,'entryCount':0x0,'lastUsedAt':'','todayCredits':0x0,'todayDate':_0xfa3f05,'monthCredits':0x0,'month':_0x30b05e});_0x31e211[_0x539ed7(0x176)][_0x4f2745][_0x539ed7(0x178)]+=_0x25e25c,_0x31e211['profiles'][_0x4f2745]['entryCount']+=0x1;_0x527df9[_0x539ed7(0x140)]>_0x31e211[_0x539ed7(0x176)][_0x4f2745]['lastUsedAt']&&(_0x31e211[_0x539ed7(0x176)][_0x4f2745][_0x539ed7(0x161)]=_0x527df9['timestamp']);_0x53085a===_0xfa3f05&&(_0x31e211[_0x539ed7(0x176)][_0x4f2745][_0x539ed7(0x14f)]+=_0x25e25c);_0x4c0282===_0x30b05e&&(_0x31e211['profiles'][_0x4f2745][_0x539ed7(0x174)]+=_0x25e25c);const _0x1bce90=_0x527df9[_0x539ed7(0x158)]||_0x539ed7(0x168);!_0x31e211[_0x539ed7(0x17b)][_0x1bce90]&&(_0x31e211['sources'][_0x1bce90]={'totalCredits':0x0,'entryCount':0x0,'todayCredits':0x0,'todayDate':_0xfa3f05,'monthCredits':0x0,'month':_0x30b05e}),_0x31e211['sources'][_0x1bce90]['totalCredits']+=_0x25e25c,_0x31e211[_0x539ed7(0x17b)][_0x1bce90]['entryCount']+=0x1,_0x53085a===_0xfa3f05&&(_0x31e211[_0x539ed7(0x17b)][_0x1bce90]['todayCredits']+=_0x25e25c),_0x4c0282===_0x30b05e&&(_0x31e211[_0x539ed7(0x17b)][_0x1bce90]['monthCredits']+=_0x25e25c);}_0x31e211[_0x539ed7(0x153)][_0x1fbbe0]={'totalCredits':_0x83aeb6,'latestContextTokensBySignature':_0x4c9ada,'createdAt':_0x363c0b[0x0][_0x539ed7(0x140)],'lastUpdatedAt':_0x280eba};}catch(_0x310ec4){const _0x181c66=await getLogger();_0x181c66[_0x539ed7(0x159)](_0x539ed7(0x14b)+_0x1fbbe0+':',_0x310ec4 instanceof Error?_0x310ec4['message']:String(_0x310ec4));continue;}}return cleanupOldEntries(_0x31e211),await writeStatsCache(_0x31e211),_0x31e211;}function cleanupOldEntries(_0x222abe){const _0x33aad9=a78_0x5200,_0x3a4e99=new Date(),_0x40ec66=new Date(_0x3a4e99['getTime']()-0x7*0x18*0x3c*0x3c*0x3e8);for(const _0x38713b of Object[_0x33aad9(0x160)](_0x222abe[_0x33aad9(0x166)])){new Date(_0x38713b)<_0x40ec66&&delete _0x222abe[_0x33aad9(0x166)][_0x38713b];}const _0xc930bd=new Date(_0x3a4e99['getFullYear']()-0x1,_0x3a4e99['getMonth'](),0x1);for(const _0x588548 of Object[_0x33aad9(0x160)](_0x222abe[_0x33aad9(0x165)])){const [_0x11d573,_0x3a9333]=_0x588548['split']('-')[_0x33aad9(0x15f)](Number),_0x46bb16=new Date(_0x11d573,_0x3a9333-0x1,0x1);_0x46bb16<_0xc930bd&&delete _0x222abe[_0x33aad9(0x165)][_0x588548];}const _0x259172=new Date(_0x3a4e99[_0x33aad9(0x175)]()-0x1e*0x18*0x3c*0x3c*0x3e8);for(const [_0x2d8a3f,_0x3d4c26]of Object[_0x33aad9(0x16f)](_0x222abe['sessions'])){new Date(_0x3d4c26[_0x33aad9(0x14a)])<_0x259172&&delete _0x222abe[_0x33aad9(0x153)][_0x2d8a3f];}}export async function getOrUpdateCache(_0x5b754a){const _0x341744=_0x5b754a?sanitizeSessionId(_0x5b754a):undefined,_0x2e964f=await readStatsCache();if(!_0x2e964f)return rebuildCache();if(_0x341744){const _0x14548f=await isCacheUpToDate(_0x2e964f,_0x341744);if(!_0x14548f)return rebuildCache();}return _0x2e964f;}export async function getSessionCredits(_0x4c3502){const _0x4187e6=a78_0x5200,_0x20df27=sanitizeSessionId(_0x4c3502),_0x4386ee=await getOrUpdateCache(_0x20df27),_0x4b7523=_0x4386ee[_0x4187e6(0x153)][_0x20df27];if(!_0x4b7523)return 0x0;return _0x4b7523['totalCredits'];}export async function getTodayCredits(){const _0x93839e=a78_0x5200,_0x345339=await getOrUpdateCache(),_0x4cc948=new Date()[_0x93839e(0x15d)]()[_0x93839e(0x147)](0x0,0xa),_0x554df3=_0x345339['daily'][_0x4cc948];if(!_0x554df3)return 0x0;return _0x554df3['totalCredits'];}export async function getMonthCredits(){const _0xffe82a=a78_0x5200,_0x423afc=await getOrUpdateCache(),_0x51ca87=new Date()[_0xffe82a(0x15d)]()[_0xffe82a(0x147)](0x0,0x7),_0x19a933=_0x423afc['monthly'][_0x51ca87];if(!_0x19a933)return 0x0;return _0x19a933[_0xffe82a(0x178)];}export async function getSessionStats(_0x2fcdbf){const _0x4b50a2=a78_0x5200,_0x6585c1=sanitizeSessionId(_0x2fcdbf),_0x1c6d96=await getOrUpdateCache(_0x6585c1);return _0x1c6d96[_0x4b50a2(0x153)][_0x6585c1]||null;}function getMaxLatestContextTokens(_0x1bbf50){const _0x21f220=a78_0x5200,_0x2d0286=Object[_0x21f220(0x149)](_0x1bbf50);if(_0x2d0286[_0x21f220(0x145)]===0x0)return 0x0;return Math[_0x21f220(0x16a)](..._0x2d0286);}export async function getUsageStats(_0x35f839,_0x3339eb){const _0xa64d30=a78_0x5200,_0x2b28a0=sanitizeSessionId(_0x35f839),_0x49f1e1=await getOrUpdateCache(_0x2b28a0),_0x1d3053=_0x49f1e1[_0xa64d30(0x153)][_0x2b28a0],_0x1ab88c=new Date()['toISOString']()['slice'](0x0,0xa),_0x438a88=new Date()[_0xa64d30(0x15d)]()['slice'](0x0,0x7);if(_0x3339eb){const _0x1b9cf4=_0x49f1e1[_0xa64d30(0x176)]?.[_0x3339eb],_0x105b75=_0x1b9cf4?.[_0xa64d30(0x170)]===_0x1ab88c?_0x1b9cf4[_0xa64d30(0x14f)]:0x0,_0x36b6b3=_0x1b9cf4?.['month']===_0x438a88?_0x1b9cf4[_0xa64d30(0x174)]:0x0;return{'sessionCredits':_0x1d3053?_0x1d3053[_0xa64d30(0x178)]:0x0,'todayCredits':_0x105b75,'monthCredits':_0x36b6b3,'latestContextTokens':_0x1d3053?getMaxLatestContextTokens(_0x1d3053[_0xa64d30(0x142)]):0x0};}return{'sessionCredits':_0x1d3053?_0x1d3053[_0xa64d30(0x178)]:0x0,'todayCredits':_0x49f1e1[_0xa64d30(0x166)][_0x1ab88c]?_0x49f1e1[_0xa64d30(0x166)][_0x1ab88c][_0xa64d30(0x178)]:0x0,'monthCredits':_0x49f1e1['monthly'][_0x438a88]?_0x49f1e1[_0xa64d30(0x165)][_0x438a88][_0xa64d30(0x178)]:0x0,'latestContextTokens':_0x1d3053?getMaxLatestContextTokens(_0x1d3053[_0xa64d30(0x142)]):0x0};}export async function getAllProfileStats(){const _0x47f3bd=a78_0x5200,_0x5badc7=await getOrUpdateCache(),_0x16ff07=_0x5badc7['profiles']||{};return Object[_0x47f3bd(0x16f)](_0x16ff07)['filter'](([,_0x365211])=>_0x365211&&typeof _0x365211===_0x47f3bd(0x16c))[_0x47f3bd(0x15f)](([_0x55c9f3,_0x56a4db])=>({'profile':_0x55c9f3,'credits':_0x56a4db[_0x47f3bd(0x178)]||0x0,'entryCount':_0x56a4db[_0x47f3bd(0x15b)]||0x0,'lastUsedAt':_0x56a4db[_0x47f3bd(0x161)]||''}))['sort']((_0x2026a2,_0x4b94e5)=>_0x4b94e5[_0x47f3bd(0x16d)]-_0x2026a2['credits']);}export async function getAllSourceStats(){const _0x3d20c2=a78_0x5200,_0x204fe7=await getOrUpdateCache(),_0x896d91=_0x204fe7['sources']||{},_0x350b7f=new Date()[_0x3d20c2(0x15d)]()[_0x3d20c2(0x147)](0x0,0xa),_0x49f1ce=new Date()[_0x3d20c2(0x15d)]()[_0x3d20c2(0x147)](0x0,0x7);return Object[_0x3d20c2(0x16f)](_0x896d91)['filter'](([,_0xebf28c])=>_0xebf28c&&typeof _0xebf28c===_0x3d20c2(0x16c))[_0x3d20c2(0x15f)](([_0x21ab65,_0x20ba99])=>({'source':_0x21ab65,'credits':_0x20ba99[_0x3d20c2(0x178)]||0x0,'todayCredits':_0x20ba99[_0x3d20c2(0x170)]===_0x350b7f?_0x20ba99['todayCredits']||0x0:0x0,'monthCredits':_0x20ba99['month']===_0x49f1ce?_0x20ba99['monthCredits']||0x0:0x0,'entryCount':_0x20ba99['entryCount']||0x0}))[_0x3d20c2(0x169)]((_0x44489a,_0x594b33)=>_0x594b33[_0x3d20c2(0x16d)]-_0x44489a[_0x3d20c2(0x16d)]);}function a78_0x3f88(){const _0x824da9=['toISOString','default','map','keys','lastUsedAt','contextSignature','24820720LEBElV','108IwEbrO','monthly','daily','.jsonl:','tdx-claude','sort','max','2864252PxWRak','object','credits','623680QKoOUd','entries','todayDate','5175639ErFWep','message','split','monthCredits','getTime','profiles','init','totalCredits','stringify','WARN','sources','.jsonl','filter','model','timestamp','profile','latestContextTokensBySignature','totalChatUnits','7294684eSjpMf','length','reduce','slice','utf-8','values','lastUpdatedAt','Failed\x20to\x20process\x20session\x20','trim','Failed\x20to\x20read\x20usage\x20file\x20','stats-cache.json','todayCredits','3570980IUEwPo','endsWith','410dRuUnc','sessions','cacheReadInputTokens','1FQdZFM','replace','inputTokens','source','warn','parse','entryCount','105582CLZtDH'];a78_0x3f88=function(){return _0x824da9;};return a78_0x3f88();}export async function getUsageSummary(){const _0x2b70c4=a78_0x5200,_0x13aa7b=await getOrUpdateCache(),_0x5cd319=_0x13aa7b[_0x2b70c4(0x176)]||{},_0x421a9c=new Date()['toISOString']()['slice'](0x0,0xa),_0x2860aa=new Date()['toISOString']()[_0x2b70c4(0x147)](0x0,0x7),_0x5dae64=Object[_0x2b70c4(0x149)](_0x5cd319)[_0x2b70c4(0x13e)](_0x1190d7=>_0x1190d7&&typeof _0x1190d7===_0x2b70c4(0x16c)),_0x54a282=_0x5dae64[_0x2b70c4(0x146)]((_0x2eb1a6,_0x3c1e74)=>_0x2eb1a6+(_0x3c1e74[_0x2b70c4(0x178)]||0x0),0x0);return{'todayCredits':_0x13aa7b[_0x2b70c4(0x166)][_0x421a9c]?_0x13aa7b[_0x2b70c4(0x166)][_0x421a9c][_0x2b70c4(0x178)]||0x0:0x0,'monthCredits':_0x13aa7b['monthly'][_0x2860aa]?_0x13aa7b['monthly'][_0x2860aa]['totalCredits']||0x0:0x0,'totalCredits':_0x54a282,'profileCount':_0x5dae64[_0x2b70c4(0x145)]};}
|
|
1
|
+
(function(_0x5ad260,_0x43f7af){const _0x321bdb=a78_0x234e,_0x12acf1=_0x5ad260();while(!![]){try{const _0x25d557=parseInt(_0x321bdb(0xba))/0x1+-parseInt(_0x321bdb(0xb5))/0x2*(-parseInt(_0x321bdb(0xc4))/0x3)+parseInt(_0x321bdb(0xb4))/0x4+parseInt(_0x321bdb(0xec))/0x5+parseInt(_0x321bdb(0xcd))/0x6+parseInt(_0x321bdb(0xd9))/0x7+-parseInt(_0x321bdb(0xe8))/0x8;if(_0x25d557===_0x43f7af)break;else _0x12acf1['push'](_0x12acf1['shift']());}catch(_0x4b61d9){_0x12acf1['push'](_0x12acf1['shift']());}}}(a78_0x548d,0x443ad));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 _0x26dc21=a78_0x234e;return!usageLogger&&(usageLogger=new TDXLogger(LogLevel['WARN'],!![]),await usageLogger[_0x26dc21(0xd1)]()),usageLogger;}function getUsageDir(){return join(getGlobalCacheDir(),'claude-usage');}function sanitizeSessionId(_0x1d285b){const _0x129da3=a78_0x234e;return _0x1d285b[_0x129da3(0xd5)](/[^a-zA-Z0-9_-]/g,'_');}function getSafeJsonlPath(_0x27f4fd){const _0x1a4ae7=a78_0x234e,_0x365a40=getUsageDir(),_0x58e32c=sanitizeSessionId(_0x27f4fd),_0x43e127=resolve(_0x365a40,_0x58e32c+_0x1a4ae7(0xc7));if(!_0x43e127[_0x1a4ae7(0xc1)](_0x365a40))throw new Error(_0x1a4ae7(0xb6));return _0x43e127;}function getStatsCachePath(){const _0x551b08=a78_0x234e;return join(getUsageDir(),_0x551b08(0xb8));}async function ensureUsageDir(){const _0xecc8d5=getUsageDir();!existsSync(_0xecc8d5)&&await mkdir(_0xecc8d5,{'recursive':!![]});}export async function appendUsageEntry(_0x109621,_0x3d3b06){const _0x3dfa1b=a78_0x234e,_0x95bc4d=sanitizeSessionId(_0x109621);await ensureUsageDir();const _0x159727=getSafeJsonlPath(_0x95bc4d),_0x4580b0=JSON[_0x3dfa1b(0xbc)](_0x3d3b06)+'\x0a';await appendFile(_0x159727,_0x4580b0,_0x3dfa1b(0xcf));}async function readSessionJsonl(_0x5e8090){const _0x478664=a78_0x234e,_0x55c85d=getSafeJsonlPath(_0x5e8090);if(!existsSync(_0x55c85d))return[];try{const _0xbf9edc=await readFile(_0x55c85d,'utf-8'),_0x8f42d8=_0xbf9edc[_0x478664(0xae)]()[_0x478664(0xb3)]('\x0a')['filter'](Boolean);return _0x8f42d8['map'](_0x5c7598=>{const _0x115709=_0x478664;try{return JSON[_0x115709(0xaf)](_0x5c7598);}catch{return null;}})[_0x478664(0xe5)](_0x4168b7=>_0x4168b7!==null);}catch(_0x4b8f03){const _0x1b2174=await getLogger();return _0x1b2174['warn']('Failed\x20to\x20read\x20usage\x20file\x20'+_0x5e8090+_0x478664(0xad),_0x4b8f03 instanceof Error?_0x4b8f03['message']:String(_0x4b8f03)),[];}}function a78_0x234e(_0x3477f8,_0x105e8a){_0x3477f8=_0x3477f8-0xad;const _0x548dd7=a78_0x548d();let _0x234e5b=_0x548dd7[_0x3477f8];return _0x234e5b;}async function getAllSessionFiles(){const _0x491d23=a78_0x234e,_0x5ea921=getUsageDir();if(!existsSync(_0x5ea921))return[];try{const _0x33ad4e=await readdir(_0x5ea921);return _0x33ad4e[_0x491d23(0xe5)](_0x374a4f=>_0x374a4f['endsWith'](_0x491d23(0xc7)))[_0x491d23(0xe6)](_0x7114f7=>_0x7114f7[_0x491d23(0xd5)](_0x491d23(0xc7),''));}catch(_0xf9eb2a){const _0xef7d5b=await getLogger();return _0xef7d5b['warn'](_0x491d23(0xd6),_0xf9eb2a instanceof Error?_0xf9eb2a[_0x491d23(0xc9)]:String(_0xf9eb2a)),[];}}async function readStatsCache(){const _0x307852=a78_0x234e,_0x1b5b7c=getStatsCachePath();if(!existsSync(_0x1b5b7c))return null;try{const _0x2dd733=await readFile(_0x1b5b7c,'utf-8'),_0x4a8649=JSON[_0x307852(0xaf)](_0x2dd733),_0x594777=Object['values'](_0x4a8649[_0x307852(0xb2)]||{})[0x0];if(_0x594777&&_0x307852(0xe4)in _0x594777)return null;return _0x4a8649;}catch{return null;}}async function writeStatsCache(_0x34fd77){const _0x3ba045=a78_0x234e;await ensureUsageDir();const _0x5099eb=getStatsCachePath();await writeFile(_0x5099eb,JSON[_0x3ba045(0xbc)](_0x34fd77,null,0x2),_0x3ba045(0xcf));}async function isCacheUpToDate(_0x2133c2,_0x38f45a){const _0x548c23=a78_0x234e,_0x46eb6c=_0x2133c2[_0x548c23(0xb2)][_0x38f45a];if(!_0x46eb6c)return![];const _0x410b71=getSafeJsonlPath(_0x38f45a);if(!existsSync(_0x410b71))return!![];try{const _0x172416=await stat(_0x410b71),_0x1d3a97=new Date(_0x46eb6c['lastUpdatedAt'])[_0x548c23(0xb7)](),_0xdce587=_0x172416[_0x548c23(0xdb)][_0x548c23(0xb7)]();return _0x1d3a97>_0xdce587;}catch{return![];}}export async function rebuildCache(){const _0x3e4e64=a78_0x234e,_0x55e7eb=new Date(),_0x31f400=_0x55e7eb[_0x3e4e64(0xd8)]()[_0x3e4e64(0xce)](0x0,0xa),_0x241345=_0x55e7eb[_0x3e4e64(0xd8)]()[_0x3e4e64(0xce)](0x0,0x7),_0x15aac0={'daily':{},'monthly':{},'sessions':{},'profiles':{},'sources':{},'lastRebuiltAt':_0x55e7eb[_0x3e4e64(0xd8)]()},_0x174256=await getAllSessionFiles();for(const _0x4602c4 of _0x174256){try{const _0x5706db=await readSessionJsonl(_0x4602c4);if(_0x5706db[_0x3e4e64(0xc6)]===0x0)continue;let _0x2c814c=0x0;const _0x3bfea0={};let _0xc5e89e='';for(const _0x1a2894 of _0x5706db){const _0x415f49=_0x1a2894[_0x3e4e64(0xdc)]??0x0,_0x3b9d2d=_0x1a2894[_0x3e4e64(0xb9)]??0x0,_0x2bc7ef=_0x1a2894[_0x3e4e64(0xb0)]+_0x415f49+_0x3b9d2d,_0xb6cbe2=getModelPricing(_0x1a2894[_0x3e4e64(0xc2)],_0x2bc7ef),_0x3d1a3e=calculateTokenCost(_0x1a2894[_0x3e4e64(0xb0)],_0x1a2894[_0x3e4e64(0xde)],_0x415f49,_0x3b9d2d,_0xb6cbe2),_0x5579b0=usdToAiCredits(_0x3d1a3e);_0x2c814c+=_0x5579b0;const _0xe693db=_0x1a2894[_0x3e4e64(0xbd)]||_0x3e4e64(0xca);_0x3bfea0[_0xe693db]=_0x2bc7ef;_0x1a2894[_0x3e4e64(0xcb)]>_0xc5e89e&&(_0xc5e89e=_0x1a2894[_0x3e4e64(0xcb)]);const _0x6ed981=_0x1a2894['timestamp'][_0x3e4e64(0xce)](0x0,0xa);!_0x15aac0['daily'][_0x6ed981]&&(_0x15aac0[_0x3e4e64(0xc5)][_0x6ed981]={'totalCredits':0x0,'entryCount':0x0});_0x15aac0['daily'][_0x6ed981]['totalCredits']+=_0x5579b0,_0x15aac0[_0x3e4e64(0xc5)][_0x6ed981]['entryCount']+=0x1;const _0xdf985f=_0x1a2894['timestamp'][_0x3e4e64(0xce)](0x0,0x7);!_0x15aac0[_0x3e4e64(0xdd)][_0xdf985f]&&(_0x15aac0[_0x3e4e64(0xdd)][_0xdf985f]={'totalCredits':0x0,'entryCount':0x0});_0x15aac0['monthly'][_0xdf985f][_0x3e4e64(0xd0)]+=_0x5579b0,_0x15aac0[_0x3e4e64(0xdd)][_0xdf985f]['entryCount']+=0x1;const _0x49a426=_0x1a2894[_0x3e4e64(0xb1)]||_0x3e4e64(0xca);!_0x15aac0[_0x3e4e64(0xbe)][_0x49a426]&&(_0x15aac0['profiles'][_0x49a426]={'totalCredits':0x0,'entryCount':0x0,'lastUsedAt':'','todayCredits':0x0,'todayDate':_0x31f400,'monthCredits':0x0,'month':_0x241345});_0x15aac0[_0x3e4e64(0xbe)][_0x49a426]['totalCredits']+=_0x5579b0,_0x15aac0[_0x3e4e64(0xbe)][_0x49a426]['entryCount']+=0x1;_0x1a2894[_0x3e4e64(0xcb)]>_0x15aac0['profiles'][_0x49a426][_0x3e4e64(0xeb)]&&(_0x15aac0['profiles'][_0x49a426][_0x3e4e64(0xeb)]=_0x1a2894[_0x3e4e64(0xcb)]);_0x6ed981===_0x31f400&&(_0x15aac0[_0x3e4e64(0xbe)][_0x49a426][_0x3e4e64(0xe7)]+=_0x5579b0);_0xdf985f===_0x241345&&(_0x15aac0[_0x3e4e64(0xbe)][_0x49a426][_0x3e4e64(0xdf)]+=_0x5579b0);const _0x504a0a=_0x1a2894[_0x3e4e64(0xcc)]||_0x3e4e64(0xd4);!_0x15aac0[_0x3e4e64(0xd3)][_0x504a0a]&&(_0x15aac0[_0x3e4e64(0xd3)][_0x504a0a]={'totalCredits':0x0,'entryCount':0x0,'todayCredits':0x0,'todayDate':_0x31f400,'monthCredits':0x0,'month':_0x241345}),_0x15aac0[_0x3e4e64(0xd3)][_0x504a0a]['totalCredits']+=_0x5579b0,_0x15aac0[_0x3e4e64(0xd3)][_0x504a0a][_0x3e4e64(0xe2)]+=0x1,_0x6ed981===_0x31f400&&(_0x15aac0['sources'][_0x504a0a]['todayCredits']+=_0x5579b0),_0xdf985f===_0x241345&&(_0x15aac0['sources'][_0x504a0a]['monthCredits']+=_0x5579b0);}_0x15aac0[_0x3e4e64(0xb2)][_0x4602c4]={'totalCredits':_0x2c814c,'latestContextTokensBySignature':_0x3bfea0,'createdAt':_0x5706db[0x0]['timestamp'],'lastUpdatedAt':_0xc5e89e};}catch(_0x5508ed){const _0x1df2c6=await getLogger();_0x1df2c6[_0x3e4e64(0xbf)](_0x3e4e64(0xe1)+_0x4602c4+':',_0x5508ed instanceof Error?_0x5508ed[_0x3e4e64(0xc9)]:String(_0x5508ed));continue;}}return cleanupOldEntries(_0x15aac0),await writeStatsCache(_0x15aac0),_0x15aac0;}function cleanupOldEntries(_0x197b52){const _0x374085=a78_0x234e,_0x47a8de=new Date(),_0x1c3330=new Date(_0x47a8de[_0x374085(0xb7)]()-0x7*0x18*0x3c*0x3c*0x3e8);for(const _0x2ebc0e of Object[_0x374085(0xbb)](_0x197b52['daily'])){new Date(_0x2ebc0e)<_0x1c3330&&delete _0x197b52[_0x374085(0xc5)][_0x2ebc0e];}const _0x384304=new Date(_0x47a8de['getFullYear']()-0x1,_0x47a8de[_0x374085(0xc3)](),0x1);for(const _0x29a48b of Object[_0x374085(0xbb)](_0x197b52[_0x374085(0xdd)])){const [_0x4eac53,_0x2ac4fd]=_0x29a48b[_0x374085(0xb3)]('-')['map'](Number),_0x1ab6c3=new Date(_0x4eac53,_0x2ac4fd-0x1,0x1);_0x1ab6c3<_0x384304&&delete _0x197b52[_0x374085(0xdd)][_0x29a48b];}const _0xa5a9d4=new Date(_0x47a8de['getTime']()-0x1e*0x18*0x3c*0x3c*0x3e8);for(const [_0x4a4b41,_0x5dc4d4]of Object[_0x374085(0xea)](_0x197b52[_0x374085(0xb2)])){new Date(_0x5dc4d4[_0x374085(0xe0)])<_0xa5a9d4&&delete _0x197b52[_0x374085(0xb2)][_0x4a4b41];}}export async function getOrUpdateCache(_0x164e9a){const _0x3b7ea1=_0x164e9a?sanitizeSessionId(_0x164e9a):undefined,_0x59f55d=await readStatsCache();if(!_0x59f55d)return rebuildCache();if(_0x3b7ea1){const _0x3a9802=await isCacheUpToDate(_0x59f55d,_0x3b7ea1);if(!_0x3a9802)return rebuildCache();}return _0x59f55d;}export async function getSessionCredits(_0x3a14dc){const _0x56b413=a78_0x234e,_0x2d2414=sanitizeSessionId(_0x3a14dc),_0x13e5c3=await getOrUpdateCache(_0x2d2414),_0x491cff=_0x13e5c3['sessions'][_0x2d2414];if(!_0x491cff)return 0x0;return _0x491cff[_0x56b413(0xd0)];}export async function getTodayCredits(){const _0x23572f=a78_0x234e,_0x157f77=await getOrUpdateCache(),_0x451151=new Date()[_0x23572f(0xd8)]()[_0x23572f(0xce)](0x0,0xa),_0x1f8891=_0x157f77[_0x23572f(0xc5)][_0x451151];if(!_0x1f8891)return 0x0;return _0x1f8891[_0x23572f(0xd0)];}export async function getMonthCredits(){const _0x29b290=a78_0x234e,_0x5658bf=await getOrUpdateCache(),_0x5e5b88=new Date()[_0x29b290(0xd8)]()[_0x29b290(0xce)](0x0,0x7),_0x297863=_0x5658bf[_0x29b290(0xdd)][_0x5e5b88];if(!_0x297863)return 0x0;return _0x297863[_0x29b290(0xd0)];}export async function getSessionStats(_0x389865){const _0x4e6a5e=a78_0x234e,_0x295b27=sanitizeSessionId(_0x389865),_0xc31c9d=await getOrUpdateCache(_0x295b27);return _0xc31c9d[_0x4e6a5e(0xb2)][_0x295b27]||null;}function a78_0x548d(){const _0x5a5c89=['entryCount','values','totalChatUnits','filter','map','todayCredits','12317360YFboJJ','reduce','entries','lastUsedAt','409100tttOZS','.jsonl:','trim','parse','inputTokens','profile','sessions','split','1677560nTxHug','746144JFBkge','Invalid\x20session\x20ID:\x20path\x20traversal\x20detected','getTime','stats-cache.json','cacheReadInputTokens','17266xcERZu','keys','stringify','contextSignature','profiles','warn','sort','startsWith','model','getMonth','3Dfsaea','daily','length','.jsonl','todayDate','message','default','timestamp','source','2219652ecaKbC','slice','utf-8','totalCredits','init','object','sources','tdx-claude','replace','Failed\x20to\x20read\x20usage\x20directory:','credits','toISOString','3903543DWALXx','latestContextTokensBySignature','mtime','cacheCreationInputTokens','monthly','outputTokens','monthCredits','lastUpdatedAt','Failed\x20to\x20process\x20session\x20'];a78_0x548d=function(){return _0x5a5c89;};return a78_0x548d();}function getMaxLatestContextTokens(_0x10098c){const _0xb6b3fd=a78_0x234e,_0x1eadce=Object[_0xb6b3fd(0xe3)](_0x10098c);if(_0x1eadce[_0xb6b3fd(0xc6)]===0x0)return 0x0;return Math['max'](..._0x1eadce);}export async function getUsageStats(_0xfae638,_0x28f290){const _0x684caf=a78_0x234e,_0x3be45e=sanitizeSessionId(_0xfae638),_0xb6bac=await getOrUpdateCache(_0x3be45e),_0x358fe7=_0xb6bac[_0x684caf(0xb2)][_0x3be45e],_0x1c7ee7=new Date()['toISOString']()[_0x684caf(0xce)](0x0,0xa),_0x3beb2d=new Date()[_0x684caf(0xd8)]()['slice'](0x0,0x7);if(_0x28f290){const _0x33cbdd=_0xb6bac[_0x684caf(0xbe)]?.[_0x28f290],_0x39cb5a=_0x33cbdd?.[_0x684caf(0xc8)]===_0x1c7ee7?_0x33cbdd[_0x684caf(0xe7)]:0x0,_0x5f5721=_0x33cbdd?.['month']===_0x3beb2d?_0x33cbdd[_0x684caf(0xdf)]:0x0;return{'sessionCredits':_0x358fe7?_0x358fe7['totalCredits']:0x0,'todayCredits':_0x39cb5a,'monthCredits':_0x5f5721,'latestContextTokens':_0x358fe7?getMaxLatestContextTokens(_0x358fe7[_0x684caf(0xda)]):0x0};}return{'sessionCredits':_0x358fe7?_0x358fe7[_0x684caf(0xd0)]:0x0,'todayCredits':_0xb6bac['daily'][_0x1c7ee7]?_0xb6bac[_0x684caf(0xc5)][_0x1c7ee7][_0x684caf(0xd0)]:0x0,'monthCredits':_0xb6bac['monthly'][_0x3beb2d]?_0xb6bac[_0x684caf(0xdd)][_0x3beb2d][_0x684caf(0xd0)]:0x0,'latestContextTokens':_0x358fe7?getMaxLatestContextTokens(_0x358fe7[_0x684caf(0xda)]):0x0};}export async function getAllProfileStats(){const _0x2a834c=a78_0x234e,_0x25d3c3=await getOrUpdateCache(),_0x593313=_0x25d3c3['profiles']||{};return Object[_0x2a834c(0xea)](_0x593313)['filter'](([,_0x2a1b6b])=>_0x2a1b6b&&typeof _0x2a1b6b===_0x2a834c(0xd2))[_0x2a834c(0xe6)](([_0x3de9d5,_0x394032])=>({'profile':_0x3de9d5,'credits':_0x394032[_0x2a834c(0xd0)]||0x0,'entryCount':_0x394032[_0x2a834c(0xe2)]||0x0,'lastUsedAt':_0x394032[_0x2a834c(0xeb)]||''}))[_0x2a834c(0xc0)]((_0x8288fe,_0x45d098)=>_0x45d098['credits']-_0x8288fe[_0x2a834c(0xd7)]);}export async function getAllSourceStats(){const _0x5d4910=a78_0x234e,_0x494886=await getOrUpdateCache(),_0x36e4d8=_0x494886[_0x5d4910(0xd3)]||{},_0x11d549=new Date()['toISOString']()['slice'](0x0,0xa),_0x335f8a=new Date()[_0x5d4910(0xd8)]()[_0x5d4910(0xce)](0x0,0x7);return Object[_0x5d4910(0xea)](_0x36e4d8)[_0x5d4910(0xe5)](([,_0x5c6083])=>_0x5c6083&&typeof _0x5c6083==='object')['map'](([_0x26cec4,_0x3c9c62])=>({'source':_0x26cec4,'credits':_0x3c9c62['totalCredits']||0x0,'todayCredits':_0x3c9c62[_0x5d4910(0xc8)]===_0x11d549?_0x3c9c62[_0x5d4910(0xe7)]||0x0:0x0,'monthCredits':_0x3c9c62['month']===_0x335f8a?_0x3c9c62[_0x5d4910(0xdf)]||0x0:0x0,'entryCount':_0x3c9c62[_0x5d4910(0xe2)]||0x0}))[_0x5d4910(0xc0)]((_0x185f9f,_0x2b558d)=>_0x2b558d[_0x5d4910(0xd7)]-_0x185f9f[_0x5d4910(0xd7)]);}export async function getUsageSummary(){const _0x150b2a=a78_0x234e,_0x550d09=await getOrUpdateCache(),_0x3c51d3=_0x550d09[_0x150b2a(0xbe)]||{},_0x3a626b=new Date()[_0x150b2a(0xd8)]()[_0x150b2a(0xce)](0x0,0xa),_0x14ecc6=new Date()['toISOString']()['slice'](0x0,0x7),_0x5e8953=Object[_0x150b2a(0xe3)](_0x3c51d3)[_0x150b2a(0xe5)](_0x1f6145=>_0x1f6145&&typeof _0x1f6145==='object'),_0x552ec5=_0x5e8953[_0x150b2a(0xe9)]((_0x14ec8a,_0x7a0df3)=>_0x14ec8a+(_0x7a0df3[_0x150b2a(0xd0)]||0x0),0x0);return{'todayCredits':_0x550d09[_0x150b2a(0xc5)][_0x3a626b]?_0x550d09[_0x150b2a(0xc5)][_0x3a626b][_0x150b2a(0xd0)]||0x0:0x0,'monthCredits':_0x550d09[_0x150b2a(0xdd)][_0x14ecc6]?_0x550d09[_0x150b2a(0xdd)][_0x14ecc6][_0x150b2a(0xd0)]||0x0:0x0,'totalCredits':_0x552ec5,'profileCount':_0x5e8953[_0x150b2a(0xc6)]};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a79_0x5735f1=a79_0x3ec9;(function(_0x579cd1,_0x2e845d){const _0x2280af=a79_0x3ec9,_0x33d88d=_0x579cd1();while(!![]){try{const _0x1ff4a9=-parseInt(_0x2280af(0x176))/0x1+-parseInt(_0x2280af(0x185))/0x2*(-parseInt(_0x2280af(0x1ab))/0x3)+-parseInt(_0x2280af(0x1c6))/0x4*(parseInt(_0x2280af(0x1bb))/0x5)+-parseInt(_0x2280af(0x188))/0x6*(parseInt(_0x2280af(0x189))/0x7)+parseInt(_0x2280af(0x1f0))/0x8+parseInt(_0x2280af(0x1e6))/0x9+-parseInt(_0x2280af(0x1f8))/0xa*(-parseInt(_0x2280af(0x1e1))/0xb);if(_0x1ff4a9===_0x2e845d)break;else _0x33d88d['push'](_0x33d88d['shift']());}catch(_0x170c5e){_0x33d88d['push'](_0x33d88d['shift']());}}}(a79_0x2203,0x284d2));function a79_0x2203(){const _0xbb0336=['Port\x20','now','x-api-key','127.0.0.1','method','processChunk','info','cacheCreationInputTokens','buildForwardHeaders','unknown','logUsage','TimeoutError','max_tokens','createServer','addContentTypeParser','stream_error','toLowerCase','Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20','setErrorHandler','body','entries','header','api_error','user-agent','unref','setupRoutes','handleMessages','Server\x20has\x20not\x20been\x20started\x20yet','[PASSTHROUGH]\x20Forwarding\x20count_tokens\x20to:\x20','model','You\x20are\x20`tdx\x20claude`,\x20an\x20extension\x20of\x20Claude\x20Code\x20with\x20tdx\x20CLI\x20tools\x20(https://tdx.treasuredata.com/)\x20and\x20skills\x20for\x20Treasure\x20AI\x20and\x20CDP.\x0a\x0aFor\x20Treasure\x20AI\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','setupMiddleware','message','Content-Type','254568RBoGlf','Forwarding\x20to:\x20','POST','GET',':\x20messages=','read','transfer-encoding','text','tdx-claude','register','output_tokens','messages','[PASSTHROUGH]\x20','user_id','listen','110zeGjRV','refresh_token','number','18YEBPVY','659309dYsEQI','application/json','Unknown\x20error','decode','cache_read_input_tokens','end','Pass-through\x20proxy\x20server\x20started\x20on\x20port\x20','no-cache','Error\x20body:\x20','indexOf','X-TD-Client-Version','default','\x20in\x20use,\x20trying\x20next...','has','authorization','TD\x20LLM\x20Pass-through\x20Proxy\x20Server','tdx','error','inputTokens','logger','maxPortAttempts','parse','refreshTimer','/v1/messages','stringify','access_token','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20request:','host','metadata',',\x20cache_create=','haiku','tdx/','usage','/health','5877ASSgoj','expiresAt','raw','stream','Bearer\x20','EADDRINUSE','Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20','getUsage','[PASSTHROUGH\x20PROXY\x20ERROR]:','startTokenRefreshTimer','name','content-length','test','[PASSTHROUGH]\x20Usage:\x20input=','timeout','join','5nXyEgJ','server','status','getReader','post','[PASSTHROUGH]\x20OAuth\x20token\x20refresh\x20failed:','timeoutMs','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20count_tokens\x20request:','start','\x20and\x20','event:\x20error\x0adata:\x20','273764aWQxJG','match','includes',',\x20cache_read=','|\x20Debug\x20agent\x20issues\x20|\x20tdx-skills:agent-debug\x20|\x0a','port','Stream\x20interrupted','send','flush','/v1/messages/count_tokens',',\x20output=','startPort',',\x20stream=','write','statusText','oauth','stop','TD1\x20','Authorization','http://127.0.0.1:','SKIP_HEADERS','consoleUrl','refreshTokenIfNeeded','config','type','string','accessToken','176253wHjRXD','auth','llmProxyUrl','code','x-td-','1349109bnpiRb','handleCountTokens','handleStreamingResponse','timeout_error',',\x20model=','setupJsonParser','profile','[PASSTHROUGH]\x20Stream\x20error:','debug','expires_at','899384nNIWok','get','isArray','url','|\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|','text/event-stream','writeHead','_boundPort','250GWihBc','headers'];a79_0x2203=function(){return _0xbb0336;};return a79_0x2203();}import a79_0x32a8a3 from'fastify';import a79_0x508c92 from'@fastify/cors';import{SSEUsageTracker}from'./sse-usage-parser.js';import{appendUsageEntry}from'./claude-usage-tracker.js';function a79_0x3ec9(_0x16d1c5,_0x592d16){_0x16d1c5=_0x16d1c5-0x16d;const _0x2203a1=a79_0x2203();let _0x3ec9cc=_0x2203a1[_0x16d1c5];return _0x3ec9cc;}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=a79_0x5735f1(0x172)+(isExperimentalAvailable()?a79_0x5735f1(0x1ca):'')+a79_0x5735f1(0x1f4);function extractSessionUUID(_0x54f9c6){const _0x326612=a79_0x5735f1,_0x10306b=_0x54f9c6[_0x326612(0x1c7)](/_session_([a-f0-9-]+)$/i);if(_0x10306b)return _0x10306b[0x1];return _0x54f9c6;}export function injectSystemPrompt(_0x1690d8,_0x1c37c8){const _0x229943=_0x1690d8['system'];if(!_0x229943)return{..._0x1690d8,'system':_0x1c37c8};if(typeof _0x229943==='string')return{..._0x1690d8,'system':_0x229943+'\x0a\x0a'+_0x1c37c8};if(Array['isArray'](_0x229943)){const _0x236cd6={'type':'text','text':_0x1c37c8};return{..._0x1690d8,'system':[..._0x229943,_0x236cd6]};}return _0x1690d8;}export function shouldInjectSystemPrompt(_0x2788cd){const _0x229517=a79_0x5735f1;return!_0x2788cd[_0x229517(0x20a)]()[_0x229517(0x1c8)](_0x229517(0x1a7));}const MIN_REASONING_MAX_TOKENS=0x7d00;export function isOpenAIReasoningModel(_0x233797){const _0x14c6f1=a79_0x5735f1,_0x1f9d34=_0x233797[_0x14c6f1(0x20a)]();return/^gpt-5(\.\d+)?(-(mini|nano|pro))?(-\d{4}-\d{2}-\d{2})?$/[_0x14c6f1(0x1b7)](_0x1f9d34);}export function padMaxTokensForReasoningModel(_0x5f29ce,_0x136001){const _0x5458b8=a79_0x5735f1;if(!isOpenAIReasoningModel(_0x136001))return _0x5f29ce;const _0x5aa101=typeof _0x5f29ce[_0x5458b8(0x206)]===_0x5458b8(0x187)?_0x5f29ce[_0x5458b8(0x206)]:0x0;if(_0x5aa101>=MIN_REASONING_MAX_TOKENS)return _0x5f29ce;return{..._0x5f29ce,'max_tokens':MIN_REASONING_MAX_TOKENS};}export function requestsStream(_0x513843){const _0x5f4c96=a79_0x5735f1;return _0x513843[_0x5f4c96(0x1ae)]===!![];}const TOKEN_REFRESH_INTERVAL_MS=0x5*0x3c*0x3e8,TOKEN_EXPIRY_BUFFER_MS=0x5*0x3c*0x3e8;export class PassThroughProxyServer{[a79_0x5735f1(0x1bc)];[a79_0x5735f1(0x1dd)];['logger'];['_boundPort'];[a79_0x5735f1(0x19f)];constructor(_0x50e169){const _0x1c74e0=a79_0x5735f1;this['config']=_0x50e169,this[_0x1c74e0(0x19c)]=_0x50e169[_0x1c74e0(0x19c)],this['server']=this[_0x1c74e0(0x207)]();}get[a79_0x5735f1(0x1cb)](){const _0x494385=a79_0x5735f1;if(this[_0x494385(0x1f7)]===undefined)throw new Error(_0x494385(0x16f));return this['_boundPort'];}[a79_0x5735f1(0x207)](){const _0x7983f0=a79_0x5735f1,_0x49f523=a79_0x32a8a3({'logger':![],'bodyLimit':0x40*0x400*0x400});return this[_0x7983f0(0x1bc)]=_0x49f523,this['setupJsonParser'](),this[_0x7983f0(0x173)](),this[_0x7983f0(0x16d)](),_0x49f523;}[a79_0x5735f1(0x1eb)](){const _0x3d692a=a79_0x5735f1;this['server'][_0x3d692a(0x208)](_0x3d692a(0x18a),{'parseAs':_0x3d692a(0x1df)},(_0x3c4d71,_0x20f7e1,_0x1155aa)=>{const _0x47fd71=_0x3d692a;try{const _0x263233=JSON[_0x47fd71(0x19e)](_0x20f7e1);_0x1155aa(null,_0x263233);}catch(_0x39bf7a){_0x1155aa(_0x39bf7a,undefined);}});}[a79_0x5735f1(0x173)](){const _0x14034d=a79_0x5735f1;this[_0x14034d(0x1bc)][_0x14034d(0x17f)](a79_0x508c92,{'origin':!![],'methods':[_0x14034d(0x179),_0x14034d(0x178),'OPTIONS'],'allowedHeaders':['Content-Type',_0x14034d(0x1d8),'anthropic-version',_0x14034d(0x1fc)]}),this['server'][_0x14034d(0x20c)]((_0x1e2fc6,_0x15308b,_0x2d6fc6)=>{const _0x8c29a=_0x14034d,_0x401439=_0x1e2fc6 instanceof Error?_0x1e2fc6['message']:_0x8c29a(0x18b);this[_0x8c29a(0x19c)]['error'](_0x8c29a(0x1b3),_0x1e2fc6),_0x2d6fc6[_0x8c29a(0x1e4)](0x1f4)[_0x8c29a(0x1cd)]({'type':_0x8c29a(0x19a),'error':{'type':_0x8c29a(0x210),'message':_0x401439}});});}[a79_0x5735f1(0x16d)](){const _0x1a2774=a79_0x5735f1;this['server']['get'](_0x1a2774(0x1aa),async()=>{const _0x37fbc1=_0x1a2774;return{'status':'ok','message':_0x37fbc1(0x198)};}),this[_0x1a2774(0x1bc)][_0x1a2774(0x1bf)](_0x1a2774(0x1a0),async(_0x3540e3,_0x34e760)=>{const _0x19e344=_0x1a2774;return this[_0x19e344(0x16e)](_0x3540e3,_0x34e760);}),this[_0x1a2774(0x1bc)][_0x1a2774(0x1bf)](_0x1a2774(0x1cf),async(_0x1b8505,_0x39fe70)=>{return this['handleCountTokens'](_0x1b8505,_0x39fe70);});}static [a79_0x5735f1(0x1da)]=new Set([a79_0x5735f1(0x1a4),'connection',a79_0x5735f1(0x1b6),a79_0x5735f1(0x17c),a79_0x5735f1(0x197),a79_0x5735f1(0x1fc),a79_0x5735f1(0x211)]);['buildForwardHeaders'](_0x1664e1){const _0x3b2d76=a79_0x5735f1,_0x13a81a={};for(const [_0x2dbbfe,_0x5e12e8]of Object[_0x3b2d76(0x20e)](_0x1664e1[_0x3b2d76(0x1f9)])){const _0x4278fa=_0x2dbbfe[_0x3b2d76(0x20a)]();if(PassThroughProxyServer['SKIP_HEADERS'][_0x3b2d76(0x196)](_0x4278fa))continue;if(_0x4278fa['startsWith'](_0x3b2d76(0x1e5)))continue;if(typeof _0x5e12e8===_0x3b2d76(0x1df))_0x13a81a[_0x2dbbfe]=_0x5e12e8;else Array[_0x3b2d76(0x1f2)](_0x5e12e8)&&(_0x13a81a[_0x2dbbfe]=_0x5e12e8[_0x3b2d76(0x1ba)](',\x20'));}const _0x2dd1ae=getVersion(),{auth:_0x1985dc}=this['config'];return _0x13a81a[_0x3b2d76(0x1d8)]=_0x1985dc[_0x3b2d76(0x1de)]===_0x3b2d76(0x1d5)?_0x3b2d76(0x1af)+_0x1985dc[_0x3b2d76(0x1e0)]:_0x3b2d76(0x1d7)+_0x1985dc['apiKey'],_0x13a81a['User-Agent']=_0x3b2d76(0x1a8)+_0x2dd1ae,_0x13a81a['X-TD-Client']=_0x3b2d76(0x199),_0x13a81a[_0x3b2d76(0x193)]=_0x2dd1ae,_0x13a81a;}async[a79_0x5735f1(0x16e)](_0x6cb9a7,_0x15d6b3){const _0x1562f4=a79_0x5735f1,_0x35e92c=_0x6cb9a7[_0x1562f4(0x20d)],_0x4849d2=requestsStream(_0x35e92c),_0x17cfa6=_0x35e92c[_0x1562f4(0x1a5)],_0x1456a5=_0x17cfa6?.[_0x1562f4(0x183)]||_0x1562f4(0x194),_0x1bee80=extractSessionUUID(_0x1456a5),_0x4be8f7=_0x35e92c['model']||_0x1562f4(0x203),_0x55c954=shouldInjectSystemPrompt(_0x4be8f7)?injectSystemPrompt(_0x35e92c,TDX_SYSTEM_PROMPT):_0x35e92c,_0x16f990=padMaxTokensForReasoningModel(_0x55c954,_0x4be8f7),_0x41f534=JSON[_0x1562f4(0x1a1)](_0x16f990),_0x351064=Array[_0x1562f4(0x1f2)](_0x35e92c[_0x1562f4(0x181)])?_0x35e92c['messages']['length']:0x0;this[_0x1562f4(0x19c)][_0x1562f4(0x200)](_0x1562f4(0x182)+_0x6cb9a7[_0x1562f4(0x1fe)]+'\x20'+_0x6cb9a7[_0x1562f4(0x1f3)]+_0x1562f4(0x17a)+_0x351064+_0x1562f4(0x1ea)+_0x4be8f7+_0x1562f4(0x1d2)+_0x4849d2);const _0x51cb26=_0x6cb9a7[_0x1562f4(0x1f3)]['includes']('?')?_0x6cb9a7['url']['slice'](_0x6cb9a7[_0x1562f4(0x1f3)][_0x1562f4(0x192)]('?')):'',_0x422cf7=this[_0x1562f4(0x1dd)][_0x1562f4(0x1e3)]+_0x1562f4(0x1a0)+_0x51cb26,_0x328d98=this['buildForwardHeaders'](_0x6cb9a7);this['logger']['debug'](_0x1562f4(0x177)+_0x422cf7);const _0x205e11=this[_0x1562f4(0x1dd)][_0x1562f4(0x1c1)]||DEFAULT_TIMEOUT_MS;try{const _0x389864=await fetch(_0x422cf7,{'method':_0x1562f4(0x178),'headers':_0x328d98,'body':_0x41f534,'signal':AbortSignal[_0x1562f4(0x1b9)](_0x205e11)});if(!_0x389864['ok']){const _0x4825b0=await _0x389864[_0x1562f4(0x17d)]();return this[_0x1562f4(0x19c)][_0x1562f4(0x19a)]('[PASSTHROUGH]\x20Upstream\x20error:\x20'+_0x389864['status']+'\x20'+_0x389864[_0x1562f4(0x1d4)]),this[_0x1562f4(0x19c)]['debug'](_0x1562f4(0x191)+_0x4825b0),_0x15d6b3[_0x1562f4(0x1e4)](_0x389864['status']),_0x15d6b3[_0x1562f4(0x20f)](_0x1562f4(0x175),_0x389864[_0x1562f4(0x1f9)]['get'](_0x1562f4(0x175))||_0x1562f4(0x18a)),_0x15d6b3[_0x1562f4(0x1cd)](_0x4825b0);}if(_0x4849d2&&_0x389864[_0x1562f4(0x20d)])await this['handleStreamingResponse'](_0x389864[_0x1562f4(0x20d)],_0x15d6b3,_0x1bee80,_0x4be8f7);else{const _0x4e2a06=await _0x389864[_0x1562f4(0x17d)]();_0x15d6b3[_0x1562f4(0x20f)](_0x1562f4(0x175),_0x389864[_0x1562f4(0x1f9)][_0x1562f4(0x1f1)](_0x1562f4(0x175))||_0x1562f4(0x18a));try{const _0x2d5548=JSON['parse'](_0x4e2a06);_0x2d5548['usage']&&await this[_0x1562f4(0x204)](_0x1bee80,_0x4be8f7,_0x2d5548[_0x1562f4(0x1a9)]['input_tokens']||0x0,_0x2d5548[_0x1562f4(0x1a9)][_0x1562f4(0x180)]||0x0,_0x2d5548['usage']['cache_creation_input_tokens'],_0x2d5548[_0x1562f4(0x1a9)][_0x1562f4(0x18d)]);}catch{}return _0x15d6b3[_0x1562f4(0x1cd)](_0x4e2a06);}}catch(_0x3cc2a5){const _0x1b6a3e=_0x3cc2a5 instanceof Error?_0x3cc2a5[_0x1562f4(0x174)]:_0x1562f4(0x18b),_0x4749b3=_0x3cc2a5 instanceof Error&&_0x3cc2a5[_0x1562f4(0x1b5)]===_0x1562f4(0x205);this['logger'][_0x1562f4(0x19a)](_0x1562f4(0x1a3),_0x3cc2a5),_0x15d6b3['code'](_0x4749b3?0x1f8:0x1f7)[_0x1562f4(0x1cd)]({'type':_0x1562f4(0x19a),'error':{'type':_0x4749b3?_0x1562f4(0x1e9):_0x1562f4(0x210),'message':_0x4749b3?_0x1562f4(0x1b1)+_0x205e11+'ms':_0x1562f4(0x20b)+_0x1b6a3e}});}}async[a79_0x5735f1(0x1e8)](_0x24caec,_0x1acfb3,_0x2ae5d6,_0xe7a3e0){const _0x575344=a79_0x5735f1;_0x1acfb3['raw'][_0x575344(0x1f6)](0xc8,{'Content-Type':_0x575344(0x1f5),'Cache-Control':_0x575344(0x190),'Connection':'keep-alive'});const _0x3e2e73=new SSEUsageTracker(),_0x1e214e=_0x24caec[_0x575344(0x1be)](),_0xb96001=new TextDecoder();try{while(!![]){const {done:_0x519f34,value:_0x12b080}=await _0x1e214e[_0x575344(0x17b)]();if(_0x519f34)break;const _0x3514cf=_0xb96001[_0x575344(0x18c)](_0x12b080,{'stream':!![]});_0x3e2e73[_0x575344(0x1ff)](_0x3514cf),_0x1acfb3[_0x575344(0x1ad)][_0x575344(0x1d3)](_0x3514cf);}_0x3e2e73[_0x575344(0x1ce)]();const _0x2aa90b=_0x3e2e73[_0x575344(0x1b2)]();(_0x2aa90b[_0x575344(0x19b)]>0x0||_0x2aa90b['outputTokens']>0x0)&&await this['logUsage'](_0x2ae5d6,_0xe7a3e0,_0x2aa90b['inputTokens'],_0x2aa90b['outputTokens'],_0x2aa90b[_0x575344(0x201)],_0x2aa90b['cacheReadInputTokens']);}catch(_0x5d6a13){this['logger'][_0x575344(0x19a)](_0x575344(0x1ed),_0x5d6a13);const _0x51e51e=_0x575344(0x1c5)+JSON['stringify']({'type':_0x575344(0x19a),'error':{'type':_0x575344(0x209),'message':_0x575344(0x1cc)}})+'\x0a\x0a';_0x1acfb3[_0x575344(0x1ad)]['write'](_0x51e51e);}finally{_0x1acfb3['raw'][_0x575344(0x18e)]();}}async[a79_0x5735f1(0x1e7)](_0x3bac4d,_0x1bb1f4){const _0x388ddb=a79_0x5735f1,_0x2455b3=_0x3bac4d[_0x388ddb(0x20d)],_0xa769af=_0x3bac4d[_0x388ddb(0x1f3)][_0x388ddb(0x1c8)]('?')?_0x3bac4d[_0x388ddb(0x1f3)]['slice'](_0x3bac4d[_0x388ddb(0x1f3)][_0x388ddb(0x192)]('?')):'',_0x3e1342=this[_0x388ddb(0x1dd)][_0x388ddb(0x1e3)]+_0x388ddb(0x1cf)+_0xa769af,_0x26bb8b=this[_0x388ddb(0x202)](_0x3bac4d),_0x17f59d=_0x2455b3[_0x388ddb(0x171)]||'unknown',_0x2de8a2=shouldInjectSystemPrompt(_0x17f59d)?injectSystemPrompt(_0x2455b3,TDX_SYSTEM_PROMPT):_0x2455b3,_0x191362=JSON[_0x388ddb(0x1a1)](_0x2de8a2);this[_0x388ddb(0x19c)][_0x388ddb(0x1ee)](_0x388ddb(0x170)+_0x3e1342);const _0x43c136=this['config']['timeoutMs']||DEFAULT_TIMEOUT_MS;try{const _0x445495=await fetch(_0x3e1342,{'method':_0x388ddb(0x178),'headers':_0x26bb8b,'body':_0x191362,'signal':AbortSignal[_0x388ddb(0x1b9)](_0x43c136)}),_0x360d06=await _0x445495[_0x388ddb(0x17d)]();return _0x1bb1f4[_0x388ddb(0x1e4)](_0x445495[_0x388ddb(0x1bd)]),_0x1bb1f4[_0x388ddb(0x20f)]('Content-Type',_0x445495[_0x388ddb(0x1f9)]['get'](_0x388ddb(0x175))||_0x388ddb(0x18a)),_0x1bb1f4['send'](_0x360d06);}catch(_0x18b94b){const _0x50dac8=_0x18b94b instanceof Error?_0x18b94b[_0x388ddb(0x174)]:_0x388ddb(0x18b),_0x12c167=_0x18b94b instanceof Error&&_0x18b94b[_0x388ddb(0x1b5)]===_0x388ddb(0x205);this[_0x388ddb(0x19c)][_0x388ddb(0x19a)](_0x388ddb(0x1c2),_0x18b94b),_0x1bb1f4['code'](_0x12c167?0x1f8:0x1f7)[_0x388ddb(0x1cd)]({'type':_0x388ddb(0x19a),'error':{'type':_0x12c167?_0x388ddb(0x1e9):_0x388ddb(0x210),'message':_0x12c167?'Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20'+_0x43c136+'ms':'Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20'+_0x50dac8}});}}async['logUsage'](_0x1ef545,_0x10600a,_0x2ebb51,_0x2d8dcf,_0x5d92e0,_0x5abff1){const _0x343c91=a79_0x5735f1,_0x433edc={'timestamp':new Date()['toISOString'](),'model':_0x10600a,'inputTokens':_0x2ebb51,'outputTokens':_0x2d8dcf,'cacheCreationInputTokens':_0x5d92e0,'cacheReadInputTokens':_0x5abff1,'profile':this['config'][_0x343c91(0x1ec)],'source':_0x343c91(0x17e)},_0x488a6d=_0x5d92e0||_0x5abff1?_0x343c91(0x1a6)+(_0x5d92e0||0x0)+_0x343c91(0x1c9)+(_0x5abff1||0x0):'';this[_0x343c91(0x19c)]['debug'](_0x343c91(0x1b8)+_0x2ebb51+_0x343c91(0x1d0)+_0x2d8dcf+_0x488a6d+_0x343c91(0x1ea)+_0x10600a);try{await appendUsageEntry(_0x1ef545,_0x433edc);}catch(_0x1ab59c){this[_0x343c91(0x19c)][_0x343c91(0x19a)]('[PASSTHROUGH]\x20Failed\x20to\x20log\x20usage:',_0x1ab59c);}}['startTokenRefreshTimer'](){const _0x3104e1=a79_0x5735f1;if(this[_0x3104e1(0x1dd)][_0x3104e1(0x1e2)][_0x3104e1(0x1de)]!=='oauth')return;this['refreshTimer']=setInterval(()=>{const _0x273668=_0x3104e1;void this[_0x273668(0x1dc)]();},TOKEN_REFRESH_INTERVAL_MS),this[_0x3104e1(0x19f)][_0x3104e1(0x212)]();}async[a79_0x5735f1(0x1dc)](){const _0x1909e4=a79_0x5735f1,{auth:_0x5ed525}=this['config'];if(_0x5ed525[_0x1909e4(0x1de)]!==_0x1909e4(0x1d5))return;const _0x2bb442=!_0x5ed525[_0x1909e4(0x1ac)]||_0x5ed525[_0x1909e4(0x1ac)]<Date[_0x1909e4(0x1fb)]()+TOKEN_EXPIRY_BUFFER_MS;if(!_0x2bb442)return;try{const _0x24ecd4=await refreshAccessToken(_0x5ed525[_0x1909e4(0x1db)],_0x5ed525['refreshToken']);_0x5ed525[_0x1909e4(0x1e0)]=_0x24ecd4[_0x1909e4(0x1a2)],_0x5ed525['refreshToken']=_0x24ecd4[_0x1909e4(0x186)],_0x5ed525[_0x1909e4(0x1ac)]=_0x24ecd4[_0x1909e4(0x1ef)],await saveOAuthTokens(_0x24ecd4,this[_0x1909e4(0x1dd)][_0x1909e4(0x1ec)]),this[_0x1909e4(0x19c)][_0x1909e4(0x200)]('[PASSTHROUGH]\x20OAuth\x20token\x20refreshed\x20successfully');}catch(_0x145e7e){this[_0x1909e4(0x19c)][_0x1909e4(0x19a)](_0x1909e4(0x1c0),_0x145e7e);}}async[a79_0x5735f1(0x1c3)](){const _0x2114ca=a79_0x5735f1,_0x227019=this['config'][_0x2114ca(0x19d)]??0x64;for(let _0x5203a7=0x0;_0x5203a7<_0x227019;_0x5203a7++){const _0x26e5e0=this[_0x2114ca(0x1dd)][_0x2114ca(0x1d1)]+_0x5203a7;try{await this[_0x2114ca(0x1bc)][_0x2114ca(0x184)]({'port':_0x26e5e0,'host':_0x2114ca(0x1fd)}),this[_0x2114ca(0x1f7)]=_0x26e5e0,this[_0x2114ca(0x19c)][_0x2114ca(0x200)](_0x2114ca(0x18f)+_0x26e5e0),this[_0x2114ca(0x19c)]['info'](_0x2114ca(0x177)+this[_0x2114ca(0x1dd)]['llmProxyUrl']),this[_0x2114ca(0x1b4)]();return;}catch(_0x4fa0e4){const _0x2acb89=_0x4fa0e4 instanceof Error&&_0x2114ca(0x1e4)in _0x4fa0e4&&_0x4fa0e4['code']===_0x2114ca(0x1b0);if(!_0x2acb89)throw _0x4fa0e4;this[_0x2114ca(0x19c)][_0x2114ca(0x1ee)](_0x2114ca(0x1fa)+_0x26e5e0+_0x2114ca(0x195)),this['createServer']();}}const _0x41ef33=this['config'][_0x2114ca(0x1d1)]+_0x227019-0x1;throw new Error('No\x20available\x20port\x20found\x20between\x20'+this[_0x2114ca(0x1dd)][_0x2114ca(0x1d1)]+_0x2114ca(0x1c4)+_0x41ef33);}async[a79_0x5735f1(0x1d6)](){const _0x214c1b=a79_0x5735f1;this[_0x214c1b(0x19f)]&&(clearInterval(this[_0x214c1b(0x19f)]),this[_0x214c1b(0x19f)]=undefined),await this[_0x214c1b(0x1bc)]['close'](),this[_0x214c1b(0x19c)][_0x214c1b(0x200)]('Pass-through\x20proxy\x20server\x20stopped');}['getAddress'](){const _0x1563fe=a79_0x5735f1;return _0x1563fe(0x1d9)+this[_0x1563fe(0x1cb)];}}
|
|
1
|
+
const a79_0x36d60c=a79_0x5cce;(function(_0x39c1ce,_0x45582e){const _0x5fc6f5=a79_0x5cce,_0x1913b1=_0x39c1ce();while(!![]){try{const _0x4cd81d=-parseInt(_0x5fc6f5(0x100))/0x1*(-parseInt(_0x5fc6f5(0x115))/0x2)+-parseInt(_0x5fc6f5(0x10a))/0x3+-parseInt(_0x5fc6f5(0xca))/0x4*(parseInt(_0x5fc6f5(0xc4))/0x5)+-parseInt(_0x5fc6f5(0xd1))/0x6*(parseInt(_0x5fc6f5(0x131))/0x7)+parseInt(_0x5fc6f5(0xfb))/0x8*(-parseInt(_0x5fc6f5(0xef))/0x9)+-parseInt(_0x5fc6f5(0xe0))/0xa*(parseInt(_0x5fc6f5(0x145))/0xb)+parseInt(_0x5fc6f5(0x101))/0xc;if(_0x4cd81d===_0x45582e)break;else _0x1913b1['push'](_0x1913b1['shift']());}catch(_0x4a9295){_0x1913b1['push'](_0x1913b1['shift']());}}}(a79_0x4caf,0xc0c87));import a79_0x3c6022 from'fastify';import a79_0x48c91b from'@fastify/cors';import{SSEUsageTracker}from'./sse-usage-parser.js';function a79_0x4caf(){const _0x3c25ac=['[PASSTHROUGH]\x20','TD\x20LLM\x20Pass-through\x20Proxy\x20Server','error','POST','GET','addContentTypeParser','Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20','56AWnOni','input_tokens','[PASSTHROUGH]\x20Usage:\x20input=','Unknown\x20error','You\x20are\x20`tdx\x20claude`,\x20an\x20extension\x20of\x20Claude\x20Code\x20with\x20tdx\x20CLI\x20tools\x20(https://tdx.treasuredata.com/)\x20and\x20skills\x20for\x20Treasure\x20AI\x20and\x20CDP.\x0a\x0aFor\x20Treasure\x20AI\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','86497eTxibl','47975736iAPUIg','handleCountTokens','expires_at','toLowerCase','timeout','Error\x20body:\x20','Stream\x20interrupted','oauth','decode','1063095DGECuS','cacheReadInputTokens','metadata','refreshToken','[PASSTHROUGH]\x20Upstream\x20error:\x20','slice','tdx','TimeoutError','unknown','buildForwardHeaders','Port\x20','14XJsbDo','getUsage','User-Agent','event:\x20error\x0adata:\x20','[PASSTHROUGH]\x20OAuth\x20token\x20refreshed\x20successfully','access_token','includes','Forwarding\x20to:\x20','_boundPort','close','unref','[PASSTHROUGH]\x20Forwarding\x20count_tokens\x20to:\x20','stop','post','setupMiddleware','text','start','processChunk','\x20in\x20use,\x20trying\x20next...','timeout_error','usage','string','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20count_tokens\x20request:','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20request:','test','Content-Type','code','write','394387NJZwMD','isArray',':\x20messages=','connection','handleMessages','authorization','get',',\x20stream=','writeHead','Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20','debug','getAddress','system','message',',\x20cache_create=','type','max_tokens','anthropic-version','[PASSTHROUGH]\x20OAuth\x20token\x20refresh\x20failed:','no-cache','33dyXbRh','[PASSTHROUGH]\x20Failed\x20to\x20log\x20usage:','Authorization',',\x20output=','tdx-claude','refreshTokenIfNeeded','Bearer\x20','logger','logUsage','indexOf','default',',\x20cache_read=','application/json','config','Pass-through\x20proxy\x20server\x20started\x20on\x20port\x20','user-agent','maxPortAttempts','Pass-through\x20proxy\x20server\x20stopped','parse','handleStreamingResponse','port','[PASSTHROUGH]\x20Stream\x20error:','api_error','x-api-key',',\x20model=','profile','send','header','setupRoutes','text/event-stream','20aNwjNg','body','refresh_token','has','refreshTimer','stringify','1502428HLbivp','accessToken','|\x20Debug\x20agent\x20issues\x20|\x20tdx-skills:agent-debug\x20|\x0a','stream','/v1/messages/count_tokens','tdx/','x-td-','54FSKfSL','server','auth','raw','getReader','url','timeoutMs','name','SKIP_HEADERS','info','method','setErrorHandler','inputTokens','entries','createServer','99390fXniZn','messages','/v1/messages','user_id','llmProxyUrl','EADDRINUSE','No\x20available\x20port\x20found\x20between\x20','Server\x20has\x20not\x20been\x20started\x20yet','number','register','expiresAt','status','length','read','/health','1825893ZXhLsp','startPort','cache_read_input_tokens','cacheCreationInputTokens','cache_creation_input_tokens'];a79_0x4caf=function(){return _0x3c25ac;};return a79_0x4caf();}function a79_0x5cce(_0x418c31,_0x3579b1){_0x418c31=_0x418c31-0xb7;const _0x4caf9d=a79_0x4caf();let _0x5cce22=_0x4caf9d[_0x418c31];return _0x5cce22;}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=a79_0x36d60c(0xff)+(isExperimentalAvailable()?a79_0x36d60c(0xcc):'')+'|\x20Write\x20agent\x20system\x20prompts\x20|\x20tdx-skills:agent-prompt\x20|\x0a|\x20TD\x20Trino\x20SQL\x20queries\x20|\x20sql-skills:trino\x20|\x0a|\x20TD\x20Hive\x20SQL\x20queries\x20|\x20sql-skills:hive\x20|\x0a|\x20Time\x20filtering\x20(td_interval,\x20partition\x20pruning)\x20|\x20sql-skills:time-filtering\x20|\x0a|\x20Optimize\x20slow\x20Trino\x20queries\x20|\x20sql-skills:trino-optimizer\x20|\x0a|\x20Convert\x20Trino\x20to\x20Hive\x20(memory\x20errors)\x20|\x20sql-skills:trino-to-hive-migration\x20|\x0a|\x20Treasure\x20Workflow\x20(.dig\x20files)\x20|\x20workflow-skills:digdag\x20|\x0a|\x20Debug/manage\x20workflows\x20|\x20workflow-skills:workflow-management\x20|\x0a|\x20dbt\x20with\x20TD\x20Trino\x20|\x20workflow-skills:dbt\x20|\x0a|\x20JavaScript\x20SDK\x20(browser\x20tracking)\x20|\x20sdk-skills:javascript\x20|\x0a|\x20Python\x20SDK\x20(pytd,\x20pandas)\x20|\x20sdk-skills:python\x20|';function extractSessionUUID(_0x3b9842){const _0x30a037=_0x3b9842['match'](/_session_([a-f0-9-]+)$/i);if(_0x30a037)return _0x30a037[0x1];return _0x3b9842;}export function injectSystemPrompt(_0x14527e,_0x41c2ab){const _0x43e49e=a79_0x36d60c,_0x2e7d9b=_0x14527e[_0x43e49e(0x13d)];if(!_0x2e7d9b)return{..._0x14527e,'system':_0x41c2ab};if(typeof _0x2e7d9b===_0x43e49e(0x12a))return{..._0x14527e,'system':_0x2e7d9b+'\x0a\x0a'+_0x41c2ab};if(Array[_0x43e49e(0x132)](_0x2e7d9b)){const _0x3b8eeb={'type':_0x43e49e(0x124),'text':_0x41c2ab};return{..._0x14527e,'system':[..._0x2e7d9b,_0x3b8eeb]};}return _0x14527e;}export function shouldInjectSystemPrompt(_0x4cab21){const _0x3ce976=a79_0x36d60c;return!_0x4cab21[_0x3ce976(0x104)]()['includes']('haiku');}const MIN_REASONING_MAX_TOKENS=0x7d00;export function isOpenAIReasoningModel(_0x26386){const _0x2f99e1=a79_0x36d60c,_0x450b88=_0x26386[_0x2f99e1(0x104)]();return/^gpt-5(\.\d+)?(-(mini|nano|pro))?(-\d{4}-\d{2}-\d{2})?$/[_0x2f99e1(0x12d)](_0x450b88);}export function padMaxTokensForReasoningModel(_0x567432,_0x3afd88){const _0x4fa50c=a79_0x36d60c;if(!isOpenAIReasoningModel(_0x3afd88))return _0x567432;const _0x3dbe27=typeof _0x567432['max_tokens']===_0x4fa50c(0xe8)?_0x567432[_0x4fa50c(0x141)]:0x0;if(_0x3dbe27>=MIN_REASONING_MAX_TOKENS)return _0x567432;return{..._0x567432,'max_tokens':MIN_REASONING_MAX_TOKENS};}export function requestsStream(_0xdd7251){const _0x5766ae=a79_0x36d60c;return _0xdd7251[_0x5766ae(0xcd)]===!![];}const TOKEN_REFRESH_INTERVAL_MS=0x5*0x3c*0x3e8,TOKEN_EXPIRY_BUFFER_MS=0x5*0x3c*0x3e8;export class PassThroughProxyServer{[a79_0x36d60c(0xd2)];[a79_0x36d60c(0x152)];[a79_0x36d60c(0x14c)];[a79_0x36d60c(0x11d)];['refreshTimer'];constructor(_0x539cfe){const _0x215d25=a79_0x36d60c;this[_0x215d25(0x152)]=_0x539cfe,this[_0x215d25(0x14c)]=_0x539cfe['logger'],this[_0x215d25(0xd2)]=this[_0x215d25(0xdf)]();}get[a79_0x36d60c(0xba)](){const _0x51b00b=a79_0x36d60c;if(this[_0x51b00b(0x11d)]===undefined)throw new Error(_0x51b00b(0xe7));return this[_0x51b00b(0x11d)];}[a79_0x36d60c(0xdf)](){const _0x2c7a56=a79_0x36d60c,_0x55e9df=a79_0x3c6022({'logger':![],'bodyLimit':0x40*0x400*0x400});return this['server']=_0x55e9df,this['setupJsonParser'](),this[_0x2c7a56(0x123)](),this[_0x2c7a56(0xc2)](),_0x55e9df;}['setupJsonParser'](){const _0x45e539=a79_0x36d60c;this[_0x45e539(0xd2)][_0x45e539(0xf9)](_0x45e539(0x151),{'parseAs':_0x45e539(0x12a)},(_0x9e5bd8,_0x1f451f,_0x475466)=>{const _0x371d18=_0x45e539;try{const _0x4442c2=JSON[_0x371d18(0xb8)](_0x1f451f);_0x475466(null,_0x4442c2);}catch(_0x5f20bf){_0x475466(_0x5f20bf,undefined);}});}[a79_0x36d60c(0x123)](){const _0x575e41=a79_0x36d60c;this[_0x575e41(0xd2)][_0x575e41(0xe9)](a79_0x48c91b,{'origin':!![],'methods':[_0x575e41(0xf8),_0x575e41(0xf7),'OPTIONS'],'allowedHeaders':[_0x575e41(0x12e),_0x575e41(0x147),_0x575e41(0x142),_0x575e41(0xbd)]}),this[_0x575e41(0xd2)][_0x575e41(0xdc)]((_0x3321a6,_0x45d664,_0x31aedb)=>{const _0x440201=_0x575e41,_0x4c0e50=_0x3321a6 instanceof Error?_0x3321a6[_0x440201(0x13e)]:_0x440201(0xfe);this[_0x440201(0x14c)][_0x440201(0xf6)]('[PASSTHROUGH\x20PROXY\x20ERROR]:',_0x3321a6),_0x31aedb[_0x440201(0x12f)](0x1f4)[_0x440201(0xc0)]({'type':_0x440201(0xf6),'error':{'type':_0x440201(0xbc),'message':_0x4c0e50}});});}[a79_0x36d60c(0xc2)](){const _0x4ea2e0=a79_0x36d60c;this[_0x4ea2e0(0xd2)][_0x4ea2e0(0x137)](_0x4ea2e0(0xee),async()=>{const _0x4ae6b2=_0x4ea2e0;return{'status':'ok','message':_0x4ae6b2(0xf5)};}),this[_0x4ea2e0(0xd2)][_0x4ea2e0(0x122)](_0x4ea2e0(0xe2),async(_0x37db7c,_0x2cef2c)=>{const _0x3a27ed=_0x4ea2e0;return this[_0x3a27ed(0x135)](_0x37db7c,_0x2cef2c);}),this[_0x4ea2e0(0xd2)]['post']('/v1/messages/count_tokens',async(_0x1ce65c,_0x2e4283)=>{const _0x2f0aee=_0x4ea2e0;return this[_0x2f0aee(0x102)](_0x1ce65c,_0x2e4283);});}static [a79_0x36d60c(0xd9)]=new Set(['host',a79_0x36d60c(0x134),'content-length','transfer-encoding',a79_0x36d60c(0x136),'x-api-key',a79_0x36d60c(0x154)]);['buildForwardHeaders'](_0x5c398){const _0x3db64b=a79_0x36d60c,_0x391f98={};for(const [_0x3f5b07,_0x404fb0]of Object[_0x3db64b(0xde)](_0x5c398['headers'])){const _0x11d62e=_0x3f5b07[_0x3db64b(0x104)]();if(PassThroughProxyServer[_0x3db64b(0xd9)][_0x3db64b(0xc7)](_0x11d62e))continue;if(_0x11d62e['startsWith'](_0x3db64b(0xd0)))continue;if(typeof _0x404fb0===_0x3db64b(0x12a))_0x391f98[_0x3f5b07]=_0x404fb0;else Array['isArray'](_0x404fb0)&&(_0x391f98[_0x3f5b07]=_0x404fb0['join'](',\x20'));}const _0x2e7a7b=getVersion(),{auth:_0xff3a84}=this['config'];return _0x391f98[_0x3db64b(0x147)]=_0xff3a84[_0x3db64b(0x140)]===_0x3db64b(0x108)?_0x3db64b(0x14b)+_0xff3a84[_0x3db64b(0xcb)]:'TD1\x20'+_0xff3a84['apiKey'],_0x391f98[_0x3db64b(0x117)]=_0x3db64b(0xcf)+_0x2e7a7b,_0x391f98['X-TD-Client']=_0x3db64b(0x110),_0x391f98['X-TD-Client-Version']=_0x2e7a7b,_0x391f98;}async[a79_0x36d60c(0x135)](_0x13d8b9,_0x183c52){const _0x1d4061=a79_0x36d60c,_0x177d8c=_0x13d8b9[_0x1d4061(0xc5)],_0x228298=requestsStream(_0x177d8c),_0x3767ad=_0x177d8c[_0x1d4061(0x10c)],_0xcf7e65=_0x3767ad?.[_0x1d4061(0xe3)]||_0x1d4061(0x14f),_0x4e05b5=extractSessionUUID(_0xcf7e65),_0x3abed9=_0x177d8c['model']||_0x1d4061(0x112),_0x243289=shouldInjectSystemPrompt(_0x3abed9)?injectSystemPrompt(_0x177d8c,TDX_SYSTEM_PROMPT):_0x177d8c,_0x2a6833=padMaxTokensForReasoningModel(_0x243289,_0x3abed9),_0x175068=JSON[_0x1d4061(0xc9)](_0x2a6833),_0x5b7f8a=Array[_0x1d4061(0x132)](_0x177d8c[_0x1d4061(0xe1)])?_0x177d8c[_0x1d4061(0xe1)][_0x1d4061(0xec)]:0x0;this['logger'][_0x1d4061(0xda)](_0x1d4061(0xf4)+_0x13d8b9[_0x1d4061(0xdb)]+'\x20'+_0x13d8b9[_0x1d4061(0xd6)]+_0x1d4061(0x133)+_0x5b7f8a+_0x1d4061(0xbe)+_0x3abed9+_0x1d4061(0x138)+_0x228298);const _0x571cfb=_0x13d8b9[_0x1d4061(0xd6)][_0x1d4061(0x11b)]('?')?_0x13d8b9[_0x1d4061(0xd6)][_0x1d4061(0x10f)](_0x13d8b9[_0x1d4061(0xd6)]['indexOf']('?')):'',_0xf94d6c=this[_0x1d4061(0x152)][_0x1d4061(0xe4)]+_0x1d4061(0xe2)+_0x571cfb,_0x29534e=this[_0x1d4061(0x113)](_0x13d8b9);this[_0x1d4061(0x14c)][_0x1d4061(0x13b)](_0x1d4061(0x11c)+_0xf94d6c);const _0x335eb8=this['config'][_0x1d4061(0xd7)]||DEFAULT_TIMEOUT_MS;try{const _0x4c346f=await fetch(_0xf94d6c,{'method':'POST','headers':_0x29534e,'body':_0x175068,'signal':AbortSignal['timeout'](_0x335eb8)});if(!_0x4c346f['ok']){const _0x1df8b9=await _0x4c346f[_0x1d4061(0x124)]();return this[_0x1d4061(0x14c)][_0x1d4061(0xf6)](_0x1d4061(0x10e)+_0x4c346f[_0x1d4061(0xeb)]+'\x20'+_0x4c346f['statusText']),this[_0x1d4061(0x14c)]['debug'](_0x1d4061(0x106)+_0x1df8b9),_0x183c52[_0x1d4061(0x12f)](_0x4c346f[_0x1d4061(0xeb)]),_0x183c52[_0x1d4061(0xc1)](_0x1d4061(0x12e),_0x4c346f['headers'][_0x1d4061(0x137)](_0x1d4061(0x12e))||'application/json'),_0x183c52[_0x1d4061(0xc0)](_0x1df8b9);}if(_0x228298&&_0x4c346f['body'])await this[_0x1d4061(0xb9)](_0x4c346f[_0x1d4061(0xc5)],_0x183c52,_0x4e05b5,_0x3abed9);else{const _0x761837=await _0x4c346f['text']();_0x183c52[_0x1d4061(0xc1)](_0x1d4061(0x12e),_0x4c346f['headers']['get']('Content-Type')||'application/json');try{const _0x339da2=JSON[_0x1d4061(0xb8)](_0x761837);_0x339da2[_0x1d4061(0x129)]&&await this['logUsage'](_0x4e05b5,_0x3abed9,_0x339da2['usage'][_0x1d4061(0xfc)]||0x0,_0x339da2['usage']['output_tokens']||0x0,_0x339da2[_0x1d4061(0x129)][_0x1d4061(0xf3)],_0x339da2[_0x1d4061(0x129)][_0x1d4061(0xf1)]);}catch{}return _0x183c52[_0x1d4061(0xc0)](_0x761837);}}catch(_0x21d15c){const _0x52431b=_0x21d15c instanceof Error?_0x21d15c['message']:_0x1d4061(0xfe),_0x3b3b34=_0x21d15c instanceof Error&&_0x21d15c[_0x1d4061(0xd8)]===_0x1d4061(0x111);this[_0x1d4061(0x14c)]['error'](_0x1d4061(0x12c),_0x21d15c),_0x183c52[_0x1d4061(0x12f)](_0x3b3b34?0x1f8:0x1f7)['send']({'type':_0x1d4061(0xf6),'error':{'type':_0x3b3b34?_0x1d4061(0x128):'api_error','message':_0x3b3b34?_0x1d4061(0x13a)+_0x335eb8+'ms':_0x1d4061(0xfa)+_0x52431b}});}}async[a79_0x36d60c(0xb9)](_0x5255fd,_0x5bcc62,_0x4ebb6e,_0x364d9b){const _0x5daa22=a79_0x36d60c;_0x5bcc62[_0x5daa22(0xd4)][_0x5daa22(0x139)](0xc8,{'Content-Type':_0x5daa22(0xc3),'Cache-Control':_0x5daa22(0x144),'Connection':'keep-alive'});const _0x20b157=new SSEUsageTracker(),_0x337a29=_0x5255fd[_0x5daa22(0xd5)](),_0x457d95=new TextDecoder();try{while(!![]){const {done:_0x3131bf,value:_0x2264f9}=await _0x337a29[_0x5daa22(0xed)]();if(_0x3131bf)break;const _0x165722=_0x457d95[_0x5daa22(0x109)](_0x2264f9,{'stream':!![]});_0x20b157[_0x5daa22(0x126)](_0x165722),_0x5bcc62[_0x5daa22(0xd4)]['write'](_0x165722);}_0x20b157['flush']();const _0x2b0101=_0x20b157[_0x5daa22(0x116)]();(_0x2b0101[_0x5daa22(0xdd)]>0x0||_0x2b0101['outputTokens']>0x0)&&await this[_0x5daa22(0x14d)](_0x4ebb6e,_0x364d9b,_0x2b0101['inputTokens'],_0x2b0101['outputTokens'],_0x2b0101[_0x5daa22(0xf2)],_0x2b0101[_0x5daa22(0x10b)]);}catch(_0x478ea4){this['logger'][_0x5daa22(0xf6)](_0x5daa22(0xbb),_0x478ea4);const _0x220fe2=_0x5daa22(0x118)+JSON['stringify']({'type':_0x5daa22(0xf6),'error':{'type':'stream_error','message':_0x5daa22(0x107)}})+'\x0a\x0a';_0x5bcc62['raw'][_0x5daa22(0x130)](_0x220fe2);}finally{_0x5bcc62['raw']['end']();}}async[a79_0x36d60c(0x102)](_0x4a69b2,_0x3e42eb){const _0x4b9960=a79_0x36d60c,_0x13079d=_0x4a69b2[_0x4b9960(0xc5)],_0x48f6b4=_0x4a69b2[_0x4b9960(0xd6)][_0x4b9960(0x11b)]('?')?_0x4a69b2[_0x4b9960(0xd6)][_0x4b9960(0x10f)](_0x4a69b2['url'][_0x4b9960(0x14e)]('?')):'',_0x2faef3=this[_0x4b9960(0x152)][_0x4b9960(0xe4)]+_0x4b9960(0xce)+_0x48f6b4,_0x53b590=this['buildForwardHeaders'](_0x4a69b2),_0x4e175a=_0x13079d['model']||_0x4b9960(0x112),_0x5e04e7=shouldInjectSystemPrompt(_0x4e175a)?injectSystemPrompt(_0x13079d,TDX_SYSTEM_PROMPT):_0x13079d,_0x4362f9=JSON[_0x4b9960(0xc9)](_0x5e04e7);this[_0x4b9960(0x14c)]['debug'](_0x4b9960(0x120)+_0x2faef3);const _0x56f2ff=this[_0x4b9960(0x152)]['timeoutMs']||DEFAULT_TIMEOUT_MS;try{const _0x39d643=await fetch(_0x2faef3,{'method':_0x4b9960(0xf7),'headers':_0x53b590,'body':_0x4362f9,'signal':AbortSignal[_0x4b9960(0x105)](_0x56f2ff)}),_0x4a4034=await _0x39d643[_0x4b9960(0x124)]();return _0x3e42eb[_0x4b9960(0x12f)](_0x39d643[_0x4b9960(0xeb)]),_0x3e42eb[_0x4b9960(0xc1)](_0x4b9960(0x12e),_0x39d643['headers'][_0x4b9960(0x137)](_0x4b9960(0x12e))||_0x4b9960(0x151)),_0x3e42eb[_0x4b9960(0xc0)](_0x4a4034);}catch(_0x38484d){const _0x34522a=_0x38484d instanceof Error?_0x38484d[_0x4b9960(0x13e)]:'Unknown\x20error',_0x3926e3=_0x38484d instanceof Error&&_0x38484d['name']===_0x4b9960(0x111);this[_0x4b9960(0x14c)][_0x4b9960(0xf6)](_0x4b9960(0x12b),_0x38484d),_0x3e42eb[_0x4b9960(0x12f)](_0x3926e3?0x1f8:0x1f7)['send']({'type':'error','error':{'type':_0x3926e3?_0x4b9960(0x128):'api_error','message':_0x3926e3?_0x4b9960(0x13a)+_0x56f2ff+'ms':_0x4b9960(0xfa)+_0x34522a}});}}async[a79_0x36d60c(0x14d)](_0x47f295,_0x470a8c,_0x4d7a35,_0x494c76,_0x30540b,_0x588528){const _0x53ba9f=a79_0x36d60c,_0x39dcf9={'timestamp':new Date()['toISOString'](),'model':_0x470a8c,'inputTokens':_0x4d7a35,'outputTokens':_0x494c76,'cacheCreationInputTokens':_0x30540b,'cacheReadInputTokens':_0x588528,'profile':this[_0x53ba9f(0x152)][_0x53ba9f(0xbf)],'source':_0x53ba9f(0x149)},_0x215c3a=_0x30540b||_0x588528?_0x53ba9f(0x13f)+(_0x30540b||0x0)+_0x53ba9f(0x150)+(_0x588528||0x0):'';this[_0x53ba9f(0x14c)]['debug'](_0x53ba9f(0xfd)+_0x4d7a35+_0x53ba9f(0x148)+_0x494c76+_0x215c3a+_0x53ba9f(0xbe)+_0x470a8c);try{await appendUsageEntry(_0x47f295,_0x39dcf9);}catch(_0x3eb470){this[_0x53ba9f(0x14c)]['error'](_0x53ba9f(0x146),_0x3eb470);}}['startTokenRefreshTimer'](){const _0x548119=a79_0x36d60c;if(this['config'][_0x548119(0xd3)]['type']!=='oauth')return;this[_0x548119(0xc8)]=setInterval(()=>{const _0xc51aef=_0x548119;void this[_0xc51aef(0x14a)]();},TOKEN_REFRESH_INTERVAL_MS),this[_0x548119(0xc8)][_0x548119(0x11f)]();}async[a79_0x36d60c(0x14a)](){const _0x35cfa4=a79_0x36d60c,{auth:_0x413bae}=this['config'];if(_0x413bae[_0x35cfa4(0x140)]!==_0x35cfa4(0x108))return;const _0x301e7e=!_0x413bae['expiresAt']||_0x413bae[_0x35cfa4(0xea)]<Date['now']()+TOKEN_EXPIRY_BUFFER_MS;if(!_0x301e7e)return;try{const _0x5a447a=await refreshAccessToken(_0x413bae['consoleUrl'],_0x413bae[_0x35cfa4(0x10d)]);_0x413bae['accessToken']=_0x5a447a[_0x35cfa4(0x11a)],_0x413bae['refreshToken']=_0x5a447a[_0x35cfa4(0xc6)],_0x413bae[_0x35cfa4(0xea)]=_0x5a447a[_0x35cfa4(0x103)],await saveOAuthTokens(_0x5a447a,this[_0x35cfa4(0x152)][_0x35cfa4(0xbf)]),this[_0x35cfa4(0x14c)][_0x35cfa4(0xda)](_0x35cfa4(0x119));}catch(_0x24b207){this[_0x35cfa4(0x14c)][_0x35cfa4(0xf6)](_0x35cfa4(0x143),_0x24b207);}}async[a79_0x36d60c(0x125)](){const _0x5ca995=a79_0x36d60c,_0x31859a=this['config'][_0x5ca995(0x155)]??0x64;for(let _0x4545f7=0x0;_0x4545f7<_0x31859a;_0x4545f7++){const _0x280b8a=this[_0x5ca995(0x152)][_0x5ca995(0xf0)]+_0x4545f7;try{await this[_0x5ca995(0xd2)]['listen']({'port':_0x280b8a,'host':'127.0.0.1'}),this[_0x5ca995(0x11d)]=_0x280b8a,this[_0x5ca995(0x14c)][_0x5ca995(0xda)](_0x5ca995(0x153)+_0x280b8a),this[_0x5ca995(0x14c)][_0x5ca995(0xda)](_0x5ca995(0x11c)+this[_0x5ca995(0x152)]['llmProxyUrl']),this['startTokenRefreshTimer']();return;}catch(_0x41b2c6){const _0x4d8f09=_0x41b2c6 instanceof Error&&_0x5ca995(0x12f)in _0x41b2c6&&_0x41b2c6['code']===_0x5ca995(0xe5);if(!_0x4d8f09)throw _0x41b2c6;this['logger'][_0x5ca995(0x13b)](_0x5ca995(0x114)+_0x280b8a+_0x5ca995(0x127)),this[_0x5ca995(0xdf)]();}}const _0x2b7ba8=this[_0x5ca995(0x152)]['startPort']+_0x31859a-0x1;throw new Error(_0x5ca995(0xe6)+this[_0x5ca995(0x152)][_0x5ca995(0xf0)]+'\x20and\x20'+_0x2b7ba8);}async[a79_0x36d60c(0x121)](){const _0x1c1368=a79_0x36d60c;this[_0x1c1368(0xc8)]&&(clearInterval(this['refreshTimer']),this[_0x1c1368(0xc8)]=undefined),await this[_0x1c1368(0xd2)][_0x1c1368(0x11e)](),this[_0x1c1368(0x14c)][_0x1c1368(0xda)](_0x1c1368(0xb7));}[a79_0x36d60c(0x13c)](){const _0x66ff34=a79_0x36d60c;return'http://127.0.0.1:'+this[_0x66ff34(0xba)];}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a80_0x5ad476=a80_0x91a8;(function(_0x561df8,_0x6f7568){const _0x398d89=a80_0x91a8,_0x5c91d8=_0x561df8();while(!![]){try{const _0x589201=-parseInt(_0x398d89(0x1a6))/0x1*(parseInt(_0x398d89(0x1a0))/0x2)+-parseInt(_0x398d89(0x1b6))/0x3*(parseInt(_0x398d89(0x1aa))/0x4)+parseInt(_0x398d89(0x1a7))/0x5+-parseInt(_0x398d89(0x19f))/0x6+parseInt(_0x398d89(0x1b4))/0x7*(parseInt(_0x398d89(0x1b7))/0x8)+parseInt(_0x398d89(0x19c))/0x9*(-parseInt(_0x398d89(0x199))/0xa)+parseInt(_0x398d89(0x1bb))/0xb;if(_0x589201===_0x6f7568)break;else _0x5c91d8['push'](_0x5c91d8['shift']());}catch(_0x53e5c0){_0x5c91d8['push'](_0x5c91d8['shift']());}}}(a80_0x5630,0xa35db));function a80_0x91a8(_0x92474d,_0x3f20f7){_0x92474d=_0x92474d-0x196;const _0x56308e=a80_0x5630();let _0x91a899=_0x56308e[_0x92474d];return _0x91a899;}export function parseSSEChunk(_0xb598f2){const _0x25ae58=a80_0x91a8,_0xb6542e=[],_0x5dfdfc=_0xb598f2[_0x25ae58(0x19a)]('\x0a\x0a'),_0x14b86c=_0x5dfdfc[_0x25ae58(0x1ba)]()||'';for(const _0x38094b of _0x5dfdfc){if(!_0x38094b[_0x25ae58(0x1bc)]())continue;const _0x1c4627={},_0x42d813=_0x38094b['split']('\x0a');for(const _0x2ad914 of _0x42d813){if(_0x2ad914[_0x25ae58(0x1b5)]('event:\x20'))_0x1c4627[_0x25ae58(0x1a1)]=_0x2ad914['slice'](0x7);else _0x2ad914[_0x25ae58(0x1b5)]('data:\x20')&&(_0x1c4627[_0x25ae58(0x1b3)]=_0x2ad914[_0x25ae58(0x1ac)](0x6));}(_0x1c4627['event']||_0x1c4627['data'])&&_0xb6542e[_0x25ae58(0x1b0)](_0x1c4627);}return{'events':_0xb6542e,'remaining':_0x14b86c};}function a80_0x5630(){const _0x8f4ee1=['8HuGjap','getUsage','output_tokens','pop','3884408cTcLCU','trim','cacheCreationInputTokens','outputTokens','inputTokens','max','7334020QEuPRC','split','onRawUsage','9HtAvGu','updateFromUsage','type','1216890UzoIjN','14qayIeT','event','parse','cacheReadInputTokens','usage','cache_creation_input_tokens','29812qGAuCq','6547615eJdkfb','flush','message_delta','143304KjRNbc','input_tokens','slice','message_start','cache_read_input_tokens','processChunk','push','message','buffer','data','5824637MLgFoL','startsWith','57xFJgMf'];a80_0x5630=function(){return _0x8f4ee1;};return a80_0x5630();}export function extractMessageStartUsage(_0x979d02){const _0xc23e21=a80_0x91a8;try{const _0x255c91=JSON['parse'](_0x979d02);if(_0x255c91[_0xc23e21(0x19e)]===_0xc23e21(0x1ad)&&_0x255c91[_0xc23e21(0x1b1)]?.['usage']){const _0x2d047b=_0x255c91[_0xc23e21(0x1b1)][_0xc23e21(0x1a4)];return{'inputTokens':_0x2d047b[_0xc23e21(0x1ab)]||0x0,'outputTokens':_0x2d047b['output_tokens']||0x0,'cacheCreationInputTokens':_0x2d047b[_0xc23e21(0x1a5)],'cacheReadInputTokens':_0x2d047b[_0xc23e21(0x1ae)]};}}catch{}return null;}export function extractMessageDeltaUsage(_0x417cfc){const _0x56f187=a80_0x91a8;try{const _0x2bf883=JSON[_0x56f187(0x1a2)](_0x417cfc);if(_0x2bf883['type']===_0x56f187(0x1a9)&&_0x2bf883[_0x56f187(0x1a4)]){const _0x1cdea6=_0x2bf883[_0x56f187(0x1a4)];return{'inputTokens':_0x1cdea6[_0x56f187(0x1ab)]||0x0,'outputTokens':_0x1cdea6[_0x56f187(0x1b9)]||0x0,'cacheCreationInputTokens':_0x1cdea6[_0x56f187(0x1a5)],'cacheReadInputTokens':_0x1cdea6[_0x56f187(0x1ae)]};}}catch{}return null;}export function extractUsageFromEvent(_0x899092){const _0x39b091=a80_0x91a8;if(!_0x899092[_0x39b091(0x1b3)])return null;if(_0x899092[_0x39b091(0x1a1)]===_0x39b091(0x1ad))return extractMessageStartUsage(_0x899092[_0x39b091(0x1b3)]);if(_0x899092[_0x39b091(0x1a1)]===_0x39b091(0x1a9))return extractMessageDeltaUsage(_0x899092['data']);return null;}export class SSEUsageTracker{[a80_0x5ad476(0x197)]=0x0;[a80_0x5ad476(0x196)]=0x0;['cacheCreationInputTokens'];[a80_0x5ad476(0x1a3)];[a80_0x5ad476(0x1b2)]='';['updateFromUsage'](_0x2260d8){const _0x4d5463=a80_0x5ad476;this['inputTokens']=Math['max'](this[_0x4d5463(0x197)],_0x2260d8[_0x4d5463(0x197)]),this[_0x4d5463(0x196)]=Math[_0x4d5463(0x198)](this['outputTokens'],_0x2260d8[_0x4d5463(0x196)]),_0x2260d8[_0x4d5463(0x1bd)]!==undefined&&(this[_0x4d5463(0x1bd)]=Math['max'](this[_0x4d5463(0x1bd)]??0x0,_0x2260d8[_0x4d5463(0x1bd)])),_0x2260d8[_0x4d5463(0x1a3)]!==undefined&&(this[_0x4d5463(0x1a3)]=Math[_0x4d5463(0x198)](this[_0x4d5463(0x1a3)]??0x0,_0x2260d8['cacheReadInputTokens']));}['onRawUsage'];[a80_0x5ad476(0x1af)](_0x1e8fd3){const _0x10625a=a80_0x5ad476;this[_0x10625a(0x1b2)]+=_0x1e8fd3;const {events:_0x5be3ad,remaining:_0x240fdd}=parseSSEChunk(this[_0x10625a(0x1b2)]);this[_0x10625a(0x1b2)]=_0x240fdd;for(const _0x4a7458 of _0x5be3ad){const _0x4e9133=extractUsageFromEvent(_0x4a7458);_0x4e9133&&(this[_0x10625a(0x19b)]?.(_0x4a7458['event']||'unknown',_0x4a7458[_0x10625a(0x1b3)]||'',_0x4e9133),this[_0x10625a(0x19d)](_0x4e9133));}return _0x1e8fd3;}[a80_0x5ad476(0x1a8)](){const _0x1450e2=a80_0x5ad476;if(this['buffer']['trim']()){const {events:_0x110b8a}=parseSSEChunk(this['buffer']+'\x0a\x0a');for(const _0x5b032b of _0x110b8a){const _0x35312f=extractUsageFromEvent(_0x5b032b);_0x35312f&&this[_0x1450e2(0x19d)](_0x35312f);}this[_0x1450e2(0x1b2)]='';}}[a80_0x5ad476(0x1b8)](){const _0xd07a50=a80_0x5ad476;return{'inputTokens':this['inputTokens'],'outputTokens':this['outputTokens'],'cacheCreationInputTokens':this[_0xd07a50(0x1bd)],'cacheReadInputTokens':this['cacheReadInputTokens']};}['reset'](){const _0x2b7fb6=a80_0x5ad476;this[_0x2b7fb6(0x197)]=0x0,this[_0x2b7fb6(0x196)]=0x0,this['cacheCreationInputTokens']=undefined,this['cacheReadInputTokens']=undefined,this[_0x2b7fb6(0x1b2)]='';}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a81_0x10ecae=a81_0x5cde;(function(_0x17e500,_0x588328){const _0x55a2f5=a81_0x5cde,_0x19ac75=_0x17e500();while(!![]){try{const _0x568bff=-parseInt(_0x55a2f5(0xb8))/0x1*(-parseInt(_0x55a2f5(0xd0))/0x2)+parseInt(_0x55a2f5(0xa9))/0x3+-parseInt(_0x55a2f5(0xcd))/0x4+parseInt(_0x55a2f5(0xd5))/0x5*(parseInt(_0x55a2f5(0xc3))/0x6)+-parseInt(_0x55a2f5(0xbf))/0x7+parseInt(_0x55a2f5(0xb3))/0x8+-parseInt(_0x55a2f5(0xd6))/0x9*(parseInt(_0x55a2f5(0xa3))/0xa);if(_0x568bff===_0x588328)break;else _0x19ac75['push'](_0x19ac75['shift']());}catch(_0x2135ee){_0x19ac75['push'](_0x19ac75['shift']());}}}(a81_0x26f2,0x82350));import{existsSync,readFileSync,readdirSync}from'fs';import a81_0x180b25 from'path';import{sanitizeForFilesystem,normalizeName}from'./agent-yaml.js';const TDX_CONFIG_FILE=a81_0x10ecae(0xb0),AGENTS_DIR=a81_0x10ecae(0xa4);export function findAgentConfigPath(_0x42bd4d=process[a81_0x10ecae(0xc7)]()){const _0x3d1a1a=a81_0x10ecae;let _0x141eba=a81_0x180b25[_0x3d1a1a(0xaa)](_0x42bd4d);const _0x68e91=a81_0x180b25['parse'](_0x141eba)[_0x3d1a1a(0xd7)];while(_0x141eba!==_0x68e91){const _0x2901a=a81_0x180b25['join'](_0x141eba,TDX_CONFIG_FILE);if(existsSync(_0x2901a))try{const _0x36b0a9=readFileSync(_0x2901a,_0x3d1a1a(0xbb)),_0x2fa405=JSON[_0x3d1a1a(0xb1)](_0x36b0a9);if(_0x2fa405[_0x3d1a1a(0xc4)])return _0x2901a;}catch{}_0x141eba=a81_0x180b25[_0x3d1a1a(0xcc)](_0x141eba);}return null;}export function loadAgentConfig(_0x1e0b51){const _0x882738=a81_0x10ecae,_0x1effaf=readFileSync(_0x1e0b51,'utf-8');let _0x24554a;try{_0x24554a=JSON['parse'](_0x1effaf);}catch{throw new Error(_0x882738(0xba)+_0x1e0b51);}if(!_0x24554a||typeof _0x24554a!==_0x882738(0xd3))throw new Error(_0x882738(0xa5));const _0x6299cb=_0x24554a;if(!_0x6299cb[_0x882738(0xc4)]||typeof _0x6299cb['llm_project']!=='string')throw new Error(_0x882738(0xc8));return{'llm_project':_0x6299cb[_0x882738(0xc4)]};}export function findAgentConfig(_0x4175af=process[a81_0x10ecae(0xc7)]()){const _0x1a72c1=a81_0x10ecae,_0x2a1921=findAgentConfigPath(_0x4175af);if(!_0x2a1921)throw new Error(_0x1a72c1(0xae));const _0x5d5ab8=loadAgentConfig(_0x2a1921),_0x1680a7=a81_0x180b25[_0x1a72c1(0xcc)](_0x2a1921);return{'config':_0x5d5ab8,'configPath':_0x2a1921,'configDir':_0x1680a7};}function a81_0x5cde(_0x3f80bb,_0x467827){_0x3f80bb=_0x3f80bb-0xa2;const _0x26f212=a81_0x26f2();let _0x5cde97=_0x26f212[_0x3f80bb];return _0x5cde97;}export function getAgentProjectDir(_0x29d03e,_0x5b25a7=process['cwd']()){const _0x809bb3=a81_0x10ecae;return a81_0x180b25[_0x809bb3(0xcb)](_0x5b25a7,AGENTS_DIR,_0x29d03e);}export function getAgentConfigPath(_0x40c764,_0x21e0ca=process['cwd']()){const _0x55755f=a81_0x10ecae;return a81_0x180b25[_0x55755f(0xcb)](getAgentProjectDir(_0x40c764,_0x21e0ca),TDX_CONFIG_FILE);}export function createAgentConfigContent(_0xd7f76c){const _0xc004c3=a81_0x10ecae,_0x3bafe={'llm_project':_0xd7f76c};return JSON[_0xc004c3(0xb4)](_0x3bafe,null,0x2)+'\x0a';}export function isAgentDir(_0x3bbbf3){const _0x3410f0=a81_0x10ecae;return existsSync(a81_0x180b25['join'](_0x3bbbf3,_0x3410f0(0xd2)));}export function isAgentYamlPath(_0x1c1365){const _0xe1afd9=a81_0x10ecae;return a81_0x180b25[_0xe1afd9(0xd4)](_0x1c1365)==='agent.yml';}export function getAgentDirFromYamlPath(_0x716558){const _0x4b8723=a81_0x10ecae;return a81_0x180b25[_0x4b8723(0xcc)](_0x716558);}export const PROJECT_SUBDIRS={'KNOWLEDGE_BASES':'knowledge_bases','PROMPTS':a81_0x10ecae(0xac),'INTEGRATIONS':a81_0x10ecae(0xab),'EXPERIMENTAL_KNOWLEDGE_BASES':a81_0x10ecae(0xaf),'EXPERIMENTAL_ARTIFACTS':a81_0x10ecae(0xd1),'FORM_INTERFACES':a81_0x10ecae(0xce),'CHAT_INTERFACES':a81_0x10ecae(0xb7)};function a81_0x26f2(){const _0x8fedf3=['filter','9780710GdaLBf','agents','Invalid\x20tdx.json:\x20expected\x20object','EXPERIMENTAL_KNOWLEDGE_BASES','PROMPTS','isDirectory','2068635KOjfeI','resolve','integrations','prompts','map','No\x20agent\x20tdx.json\x20found.\x20Please\x20run\x20\x27tdx\x20agent\x20pull\x20<project>\x27\x20first\x20to\x20create\x20the\x20folder\x20structure.','experimental_knowledge_bases','tdx.json','parse','Current\x20context\x20has\x20llm_project=\x22','7165008AOhFop','stringify','local','multiple_agents','chat_interfaces','124426kKAuBv','KNOWLEDGE_BASES','Invalid\x20JSON\x20in\x20','utf-8','FORM_INTERFACES','arg','cwd-config','4049885wbdPCd','\x22\x20but\x20no\x20local\x20folder\x20found.','no_local_folder','length','30QSoCwb','llm_project','requireFile','EXPERIMENTAL_ARTIFACTS','cwd','Invalid\x20tdx.json:\x20missing\x20or\x20invalid\x20\x27llm_project\x27\x20field','No\x20tdx.json\x20found\x20and\x20llm_project\x20is\x20not\x20set.','INTEGRATIONS','join','dirname','1959056kdnbex','form_interfaces','context','4Ltwwcy','experimental_artifacts','agent.yml','object','basename','745695LnZzlc','9fbynHn','root'];a81_0x26f2=function(){return _0x8fedf3;};return a81_0x26f2();}export function getKnowledgeBasesDir(_0x5cd176){const _0x48191a=a81_0x10ecae;return a81_0x180b25['join'](_0x5cd176,PROJECT_SUBDIRS[_0x48191a(0xb9)]);}export function getPromptsDir(_0x501d41){const _0x2206a6=a81_0x10ecae;return a81_0x180b25[_0x2206a6(0xcb)](_0x501d41,PROJECT_SUBDIRS[_0x2206a6(0xa7)]);}export function getIntegrationsDir(_0x48d963){const _0x583561=a81_0x10ecae;return a81_0x180b25[_0x583561(0xcb)](_0x48d963,PROJECT_SUBDIRS[_0x583561(0xca)]);}export function getExperimentalKnowledgeBasesDir(_0x2da30f){const _0x8e760e=a81_0x10ecae;return a81_0x180b25[_0x8e760e(0xcb)](_0x2da30f,PROJECT_SUBDIRS[_0x8e760e(0xa6)]);}export function getExperimentalArtifactsDir(_0x580f70){const _0x5092c5=a81_0x10ecae;return a81_0x180b25[_0x5092c5(0xcb)](_0x580f70,PROJECT_SUBDIRS[_0x5092c5(0xc6)]);}export function getFormInterfacesDir(_0x1a8792){const _0x5985dd=a81_0x10ecae;return a81_0x180b25['join'](_0x1a8792,PROJECT_SUBDIRS[_0x5985dd(0xbc)]);}export function getChatInterfacesDir(_0x3badc0){return a81_0x180b25['join'](_0x3badc0,PROJECT_SUBDIRS['CHAT_INTERFACES']);}export function resolveAgentPullArgs(_0x64ed38){const _0x22d199=a81_0x10ecae,{arg:_0x58a02d,agentNameArg:_0x3a6876,agentFlag:_0x7c6410,contextProject:_0x11f4f0,argDirConfig:_0x9ee47b,cwdConfigPath:_0x311b66,cwdConfig:_0x12e81f}=_0x64ed38,_0x4f20a6=_0x3a6876||_0x7c6410;if(_0x58a02d){if(_0x9ee47b)return{'projectNameOrId':_0x9ee47b['llm_project'],'targetAgentName':_0x4f20a6,'existingOutputDir':_0x58a02d,'source':'arg-dir'};return{'projectNameOrId':_0x58a02d,'targetAgentName':_0x4f20a6,'source':_0x22d199(0xbd)};}if(_0x7c6410&&_0x11f4f0)return{'projectNameOrId':_0x11f4f0,'targetAgentName':_0x7c6410,'source':_0x22d199(0xcf)};if(_0x311b66&&_0x12e81f)return{'projectNameOrId':_0x12e81f['llm_project'],'targetAgentName':_0x4f20a6,'existingOutputDir':a81_0x180b25[_0x22d199(0xcc)](_0x311b66),'source':_0x22d199(0xbe)};return{'projectNameOrId':_0x11f4f0,'targetAgentName':_0x4f20a6,'source':_0x11f4f0?_0x22d199(0xcf):undefined};}export function resolveProjectFromContext(_0x2a4b29,_0x5835c0,_0x2a42b6){const _0x2c2191=a81_0x10ecae,_0x5405c8=_0x2a42b6?.[_0x2c2191(0xc5)],_0x5b94ed=findAgentConfigPath(a81_0x180b25[_0x2c2191(0xaa)](_0x2a4b29));if(_0x5b94ed)return{'found':!![],'projectDir':a81_0x180b25[_0x2c2191(0xcc)](_0x5b94ed),'configPath':_0x5b94ed,'source':_0x2c2191(0xb5)};if(!_0x5835c0)return{'found':![],'reason':'no_context','message':_0x2c2191(0xc9)};const _0x3add59=sanitizeForFilesystem(_0x5835c0),_0x56274e=a81_0x180b25[_0x2c2191(0xcb)](process['cwd'](),AGENTS_DIR);let _0x855142=a81_0x180b25[_0x2c2191(0xcb)](_0x56274e,_0x3add59),_0x4c3f9b=a81_0x180b25[_0x2c2191(0xcb)](_0x855142,TDX_CONFIG_FILE);if(!existsSync(_0x855142)){const _0x1c7ee2=normalizeName(_0x5835c0),_0x527800=a81_0x180b25[_0x2c2191(0xcb)](_0x56274e,_0x1c7ee2);existsSync(_0x527800)&&(_0x855142=_0x527800,_0x4c3f9b=a81_0x180b25['join'](_0x855142,TDX_CONFIG_FILE));}if(!existsSync(_0x855142))return{'found':![],'reason':_0x2c2191(0xc1),'llmProject':_0x5835c0,'message':_0x2c2191(0xb2)+_0x5835c0+_0x2c2191(0xc0)};if(_0x5405c8){const _0x3eb334=readdirSync(_0x855142,{'withFileTypes':!![]}),_0x1dbbfe=_0x3eb334['filter'](_0x1ec9b4=>_0x1ec9b4[_0x2c2191(0xa8)]())[_0x2c2191(0xad)](_0x235d0c=>_0x235d0c['name'])[_0x2c2191(0xa2)](_0x3538c1=>{const _0x5b414e=_0x2c2191,_0x3647ed=a81_0x180b25[_0x5b414e(0xcb)](_0x855142,_0x3538c1,_0x5405c8);return existsSync(_0x3647ed);});if(_0x1dbbfe[_0x2c2191(0xc2)]===0x0)return{'found':![],'reason':'no_tests','llmProject':_0x5835c0,'projectDir':_0x855142};if(_0x1dbbfe[_0x2c2191(0xc2)]>0x1)return{'found':![],'reason':_0x2c2191(0xb6),'llmProject':_0x5835c0,'agentDirs':_0x1dbbfe,'projectDir':_0x855142};return{'found':!![],'projectDir':a81_0x180b25[_0x2c2191(0xcb)](_0x855142,_0x1dbbfe[0x0]),'configPath':_0x4c3f9b,'source':'context'};}return{'found':!![],'projectDir':_0x855142,'configPath':_0x4c3f9b,'source':_0x2c2191(0xcf)};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a82_0x26f2(_0x465fae,_0x2e4617){_0x465fae=_0x465fae-0x1d0;const _0x512fe5=a82_0x512f();let _0x26f213=_0x512fe5[_0x465fae];return _0x26f213;}function a82_0x512f(){const _0x422812=['split','.\x20Expected\x20\x22project_name\x22\x20or\x20\x22project_name/agent_name\x22','trim','length','14089518AEXcsD','2925390ijwCHu','394RrqIim','1561903rzYcUY','3053300MlJyZC','6ocnmCI','Agent\x20name\x20cannot\x20be\x20empty','5749gFkhFG','Project\x20name\x20cannot\x20be\x20empty','3261510xsisSi','8401040IZxMVJ'];a82_0x512f=function(){return _0x422812;};return a82_0x512f();}(function(_0x11be67,_0x380ce3){const _0x4a8f37=a82_0x26f2,_0x51367d=_0x11be67();while(!![]){try{const _0x29f4a6=parseInt(_0x4a8f37(0x1da))/0x1*(parseInt(_0x4a8f37(0x1d5))/0x2)+parseInt(_0x4a8f37(0x1dc))/0x3+-parseInt(_0x4a8f37(0x1d7))/0x4+-parseInt(_0x4a8f37(0x1d4))/0x5+parseInt(_0x4a8f37(0x1d8))/0x6*(parseInt(_0x4a8f37(0x1d6))/0x7)+parseInt(_0x4a8f37(0x1dd))/0x8+-parseInt(_0x4a8f37(0x1d3))/0x9;if(_0x29f4a6===_0x380ce3)break;else _0x51367d['push'](_0x51367d['shift']());}catch(_0x52fcc6){_0x51367d['push'](_0x51367d['shift']());}}}(a82_0x512f,0x8d605));export function parseAgentRef(_0x29f0c9){const _0x59e144=a82_0x26f2;if(!_0x29f0c9||_0x29f0c9[_0x59e144(0x1d1)]()==='')throw new Error('Agent\x20reference\x20cannot\x20be\x20empty');const _0x385b1b=_0x29f0c9[_0x59e144(0x1d1)](),_0x509488=_0x385b1b[_0x59e144(0x1de)]('/');if(_0x509488[_0x59e144(0x1d2)]===0x1)return{'projectName':_0x509488[0x0],'agentName':undefined};else{if(_0x509488['length']===0x2){const [_0x2c64dc,_0x34009b]=_0x509488;if(!_0x2c64dc||_0x2c64dc[_0x59e144(0x1d1)]()==='')throw new Error(_0x59e144(0x1db));if(!_0x34009b||_0x34009b['trim']()==='')throw new Error(_0x59e144(0x1d9));return{'projectName':_0x2c64dc[_0x59e144(0x1d1)](),'agentName':_0x34009b['trim']()};}else throw new Error('Invalid\x20agent\x20reference\x20format:\x20'+_0x29f0c9+_0x59e144(0x1d0));}}
|