@treasuredata/tdx 2026.6.3 → 2026.6.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (249) hide show
  1. package/dist/bin.js +1 -1
  2. package/dist/build-info.json +3 -3
  3. package/dist/cli-categories.js +1 -1
  4. package/dist/cli.d.ts.map +1 -1
  5. package/dist/cli.js +1 -1
  6. package/dist/cli.js.map +1 -1
  7. package/dist/commands/activations.js +1 -1
  8. package/dist/commands/agent-command.js +1 -1
  9. package/dist/commands/agent-test-command.js +1 -1
  10. package/dist/commands/api-command.js +1 -1
  11. package/dist/commands/auth-command.js +1 -1
  12. package/dist/commands/cas-command.js +1 -1
  13. package/dist/commands/cas-segment-command.js +1 -1
  14. package/dist/commands/chat-command.js +1 -1
  15. package/dist/commands/claude-command.js +1 -1
  16. package/dist/commands/claude-statusline-command.js +1 -1
  17. package/dist/commands/claude-usage-command.js +1 -1
  18. package/dist/commands/command.js +1 -1
  19. package/dist/commands/connection-command.js +1 -1
  20. package/dist/commands/databases.js +1 -1
  21. package/dist/commands/delivery-command.js +1 -1
  22. package/dist/commands/describe.js +1 -1
  23. package/dist/commands/engage-campaign-pull-command.js +1 -1
  24. package/dist/commands/engage-campaign-push-command.js +1 -1
  25. package/dist/commands/engage-campaign-validate-command.js +1 -1
  26. package/dist/commands/engage-command.js +1 -1
  27. package/dist/commands/engage-template-pull-command.js +1 -1
  28. package/dist/commands/engage-template-push-command.js +1 -1
  29. package/dist/commands/engage-template-validate-command.js +1 -1
  30. package/dist/commands/job-command.js +1 -1
  31. package/dist/commands/journey-command.js +1 -1
  32. package/dist/commands/journey-validate-command.js +1 -1
  33. package/dist/commands/llm-command.js +1 -1
  34. package/dist/commands/mcp-command.js +1 -1
  35. package/dist/commands/parent-segment-command.js +1 -1
  36. package/dist/commands/policy-command.js +1 -1
  37. package/dist/commands/profile-command.js +1 -1
  38. package/dist/commands/profiles-command.js +1 -1
  39. package/dist/commands/query-command.js +1 -1
  40. package/dist/commands/schedule-command.js +1 -1
  41. package/dist/commands/segment-command.js +1 -1
  42. package/dist/commands/segment-create-command.js +1 -1
  43. package/dist/commands/segment-fields-command.js +1 -1
  44. package/dist/commands/segment-move-command.d.ts +19 -0
  45. package/dist/commands/segment-move-command.d.ts.map +1 -0
  46. package/dist/commands/segment-move-command.js +1 -0
  47. package/dist/commands/segment-move-command.js.map +1 -0
  48. package/dist/commands/segment-pull-command.js +1 -1
  49. package/dist/commands/segment-push-command.js +1 -1
  50. package/dist/commands/segment-update-command.js +1 -1
  51. package/dist/commands/segment-use-command.js +1 -1
  52. package/dist/commands/segment-validate-command.js +1 -1
  53. package/dist/commands/segments.js +1 -1
  54. package/dist/commands/show.js +1 -1
  55. package/dist/commands/status-command.js +1 -1
  56. package/dist/commands/table-deleted.js +1 -1
  57. package/dist/commands/tables.js +1 -1
  58. package/dist/commands/unset-command.js +1 -1
  59. package/dist/commands/upgrade-command.js +1 -1
  60. package/dist/commands/use-command.js +1 -1
  61. package/dist/commands/user-command.js +1 -1
  62. package/dist/commands/work-command.js +1 -1
  63. package/dist/commands/workflow-command.js +1 -1
  64. package/dist/core/auth.js +1 -1
  65. package/dist/core/command-output.js +1 -1
  66. package/dist/core/config.d.ts +14 -0
  67. package/dist/core/config.d.ts.map +1 -1
  68. package/dist/core/config.js +1 -1
  69. package/dist/core/config.js.map +1 -1
  70. package/dist/core/connection-cache.js +1 -1
  71. package/dist/core/constants.js +1 -1
  72. package/dist/core/credential-cache.js +1 -1
  73. package/dist/core/global-context.js +1 -1
  74. package/dist/core/keychain.js +1 -1
  75. package/dist/core/oauth-keychain.js +1 -1
  76. package/dist/core/oauth.js +1 -1
  77. package/dist/core/profile.js +1 -1
  78. package/dist/core/project-config.d.ts +1 -0
  79. package/dist/core/project-config.d.ts.map +1 -1
  80. package/dist/core/project-config.js +1 -1
  81. package/dist/core/project-config.js.map +1 -1
  82. package/dist/core/session.js +1 -1
  83. package/dist/core/user-cache.js +1 -1
  84. package/dist/core/version.js +1 -1
  85. package/dist/index.js +1 -1
  86. package/dist/mcp/server.js +1 -1
  87. package/dist/mcp/tools/index.js +1 -1
  88. package/dist/mcp/tools/tdx-run.js +1 -1
  89. package/dist/mcp/tools/tdx-search.d.ts.map +1 -1
  90. package/dist/mcp/tools/tdx-search.js +1 -1
  91. package/dist/mcp/tools/tdx-search.js.map +1 -1
  92. package/dist/mcp/tools/work-create-item.js +1 -1
  93. package/dist/mcp/utils.js +1 -1
  94. package/dist/proxy/claude-usage-tracker.js +1 -1
  95. package/dist/proxy/passthrough-server.js +1 -1
  96. package/dist/proxy/sse-usage-parser.js +1 -1
  97. package/dist/sdk/agent/agent-config.js +1 -1
  98. package/dist/sdk/agent/agent-ref-parser.js +1 -1
  99. package/dist/sdk/agent/agent-yaml.js +1 -1
  100. package/dist/sdk/agent/test/evaluator.js +1 -1
  101. package/dist/sdk/agent/test/executor.js +1 -1
  102. package/dist/sdk/agent/test/index.js +1 -1
  103. package/dist/sdk/agent/test/output.js +1 -1
  104. package/dist/sdk/agent/test/parser.js +1 -1
  105. package/dist/sdk/agent/tool-target-registry.js +1 -1
  106. package/dist/sdk/api.js +1 -1
  107. package/dist/sdk/cas/cas-api-client.js +1 -1
  108. package/dist/sdk/cas/cas-audience-yaml.js +1 -1
  109. package/dist/sdk/cas/cas-segment-yaml.js +1 -1
  110. package/dist/sdk/cas/index.js +1 -1
  111. package/dist/sdk/cas/pull-workflow.js +1 -1
  112. package/dist/sdk/cas/push-workflow.js +1 -1
  113. package/dist/sdk/client/cdp-api-client.d.ts +18 -0
  114. package/dist/sdk/client/cdp-api-client.d.ts.map +1 -1
  115. package/dist/sdk/client/cdp-api-client.js +1 -1
  116. package/dist/sdk/client/cdp-api-client.js.map +1 -1
  117. package/dist/sdk/client/delivery-api-client.js +1 -1
  118. package/dist/sdk/client/endpoints.js +1 -1
  119. package/dist/sdk/client/engage-api-client.js +1 -1
  120. package/dist/sdk/client/http-client.js +1 -1
  121. package/dist/sdk/client/llm-api-client.js +1 -1
  122. package/dist/sdk/client/oauth-refresh.js +1 -1
  123. package/dist/sdk/client/rate-limiter.js +1 -1
  124. package/dist/sdk/client/td-api-client.js +1 -1
  125. package/dist/sdk/client/trino-api-client.js +1 -1
  126. package/dist/sdk/client/workflow-client.js +1 -1
  127. package/dist/sdk/connection-validator.js +1 -1
  128. package/dist/sdk/connection.js +1 -1
  129. package/dist/sdk/delivery.js +1 -1
  130. package/dist/sdk/engage/campaign-pull.js +1 -1
  131. package/dist/sdk/engage/campaign-push.js +1 -1
  132. package/dist/sdk/engage/campaign-validator.js +1 -1
  133. package/dist/sdk/engage/campaign-yaml.js +1 -1
  134. package/dist/sdk/engage/template-pull.js +1 -1
  135. package/dist/sdk/engage/template-push.js +1 -1
  136. package/dist/sdk/engage/template-validator.js +1 -1
  137. package/dist/sdk/engage/template-yaml.js +1 -1
  138. package/dist/sdk/engage/types/campaign-def.js +1 -1
  139. package/dist/sdk/engage/types/campaign-schema.js +1 -1
  140. package/dist/sdk/engage/types/template-schema.js +1 -1
  141. package/dist/sdk/engage.js +1 -1
  142. package/dist/sdk/errors.js +1 -1
  143. package/dist/sdk/index.js +1 -1
  144. package/dist/sdk/io/index.js +1 -1
  145. package/dist/sdk/io/node-filesystem.js +1 -1
  146. package/dist/sdk/job.js +1 -1
  147. package/dist/sdk/journey.js +1 -1
  148. package/dist/sdk/llm/chat-cache.js +1 -1
  149. package/dist/sdk/llm/index.js +1 -1
  150. package/dist/sdk/llm/llm-backup-utils.js +1 -1
  151. package/dist/sdk/llm/model-factors.js +1 -1
  152. package/dist/sdk/llm/user-settings.js +1 -1
  153. package/dist/sdk/personalization.js +1 -1
  154. package/dist/sdk/policy.js +1 -1
  155. package/dist/sdk/query/deleted-table-validation.js +1 -1
  156. package/dist/sdk/query/index.js +1 -1
  157. package/dist/sdk/query/sql-parser.js +1 -1
  158. package/dist/sdk/realtime.js +1 -1
  159. package/dist/sdk/schedule.js +1 -1
  160. package/dist/sdk/segment/child-segment-yaml.js +1 -1
  161. package/dist/sdk/segment/fields-display.js +1 -1
  162. package/dist/sdk/segment/file-discovery.js +1 -1
  163. package/dist/sdk/segment/journey-utils.js +1 -1
  164. package/dist/sdk/segment/journey-validator.js +1 -1
  165. package/dist/sdk/segment/journey-yaml.js +1 -1
  166. package/dist/sdk/segment/parent-segment-preview.js +1 -1
  167. package/dist/sdk/segment/parent-segment-yaml.js +1 -1
  168. package/dist/sdk/segment/pull-workflow.js +1 -1
  169. package/dist/sdk/segment/push-recovery.js +1 -1
  170. package/dist/sdk/segment/push-workflow.js +1 -1
  171. package/dist/sdk/segment/resolution-context.js +1 -1
  172. package/dist/sdk/segment/segment-path-parser.js +1 -1
  173. package/dist/sdk/segment/segment-ref-parser.js +1 -1
  174. package/dist/sdk/segment/segment-validator.js +1 -1
  175. package/dist/sdk/segment/target-resolution.js +1 -1
  176. package/dist/sdk/segment/tdx-config.js +1 -1
  177. package/dist/sdk/segment/types/activation-schema.js +1 -1
  178. package/dist/sdk/segment/types/journey-def.js +1 -1
  179. package/dist/sdk/segment/types/journey-schema.js +1 -1
  180. package/dist/sdk/segment/types/segment-def.js +1 -1
  181. package/dist/sdk/segment/types/segment-schema.js +1 -1
  182. package/dist/sdk/segment/validate-files.js +1 -1
  183. package/dist/sdk/segment/yaml-validator.js +1 -1
  184. package/dist/sdk/segment.d.ts +28 -1
  185. package/dist/sdk/segment.d.ts.map +1 -1
  186. package/dist/sdk/segment.js +1 -1
  187. package/dist/sdk/segment.js.map +1 -1
  188. package/dist/sdk/types/cdp.d.ts +15 -0
  189. package/dist/sdk/types/cdp.d.ts.map +1 -1
  190. package/dist/sdk/types/index.d.ts +1 -1
  191. package/dist/sdk/types/index.d.ts.map +1 -1
  192. package/dist/sdk/types/index.js +1 -1
  193. package/dist/sdk/types/index.js.map +1 -1
  194. package/dist/sdk/types/progress.js +1 -1
  195. package/dist/sdk/types/workspace.js +1 -1
  196. package/dist/sdk/user.js +1 -1
  197. package/dist/sdk/util/format-detector.js +1 -1
  198. package/dist/sdk/util/formatters.js +1 -1
  199. package/dist/sdk/util/index.js +1 -1
  200. package/dist/sdk/util/paginate.js +1 -1
  201. package/dist/sdk/util/tree-formatter.js +1 -1
  202. package/dist/sdk/workflow/archive-validation.js +1 -1
  203. package/dist/sdk/workflow/clone-workflow.js +1 -1
  204. package/dist/sdk/workflow/index.js +1 -1
  205. package/dist/sdk/workflow/pull-workflow.js +1 -1
  206. package/dist/sdk/workflow/push-workflow.js +1 -1
  207. package/dist/sdk/workflow/task-graph.js +1 -1
  208. package/dist/sdk/workflow/tdx-config.js +1 -1
  209. package/dist/sdk/workflow/workflow-utils.js +1 -1
  210. package/dist/sdk/workspace/access-tracker.js +1 -1
  211. package/dist/sdk/workspace/frontmatter.js +1 -1
  212. package/dist/sdk/workspace/git.js +1 -1
  213. package/dist/sdk/workspace/index.js +1 -1
  214. package/dist/sdk/workspace/templates.js +1 -1
  215. package/dist/sdk/workspace/weekly.js +1 -1
  216. package/dist/sdk/workspace/wikilinks.js +1 -1
  217. package/dist/test-utils/command-runner.js +1 -1
  218. package/dist/test-utils/factories.js +1 -1
  219. package/dist/test-utils/fixtures.js +1 -1
  220. package/dist/test-utils/http-mock.js +1 -1
  221. package/dist/test-utils/index.js +1 -1
  222. package/dist/utils/async.js +1 -1
  223. package/dist/utils/colors.js +1 -1
  224. package/dist/utils/diff.js +1 -1
  225. package/dist/utils/file-permissions.js +1 -1
  226. package/dist/utils/file-reader.js +1 -1
  227. package/dist/utils/github-releases.js +1 -1
  228. package/dist/utils/global-cache.js +1 -1
  229. package/dist/utils/json-loader.js +1 -1
  230. package/dist/utils/local-cache.js +1 -1
  231. package/dist/utils/logger/formatters/default-formatter.js +1 -1
  232. package/dist/utils/logger/formatters/index.js +1 -1
  233. package/dist/utils/logger/handlers/console-handler.js +1 -1
  234. package/dist/utils/logger/handlers/file-handler.js +1 -1
  235. package/dist/utils/logger/handlers/index.js +1 -1
  236. package/dist/utils/logger/handlers/null-handler.js +1 -1
  237. package/dist/utils/logger/index.js +1 -1
  238. package/dist/utils/logger/logger.js +1 -1
  239. package/dist/utils/logger/types.js +1 -1
  240. package/dist/utils/option-validation.js +1 -1
  241. package/dist/utils/process.js +1 -1
  242. package/dist/utils/prompt.js +1 -1
  243. package/dist/utils/spinner.js +1 -1
  244. package/dist/utils/sse-parser.js +1 -1
  245. package/dist/utils/string-utils.js +1 -1
  246. package/dist/utils/table-ref-parser.js +1 -1
  247. package/dist/utils/tdx-logger.js +1 -1
  248. package/dist/utils/version-check.js +1 -1
  249. package/package.json +1 -1
@@ -1 +1 @@
1
- const a76_0x56c1a3=a76_0x10ad;(function(_0x3c89ed,_0x114d90){const _0x15a3e9=a76_0x10ad,_0x214fd7=_0x3c89ed();while(!![]){try{const _0x57228a=parseInt(_0x15a3e9(0x1e4))/0x1*(-parseInt(_0x15a3e9(0x1cb))/0x2)+parseInt(_0x15a3e9(0x1bd))/0x3+parseInt(_0x15a3e9(0x1e3))/0x4+-parseInt(_0x15a3e9(0x1e0))/0x5*(-parseInt(_0x15a3e9(0x1c2))/0x6)+parseInt(_0x15a3e9(0x1d7))/0x7*(parseInt(_0x15a3e9(0x1c4))/0x8)+parseInt(_0x15a3e9(0x1c0))/0x9+-parseInt(_0x15a3e9(0x1d4))/0xa;if(_0x57228a===_0x114d90)break;else _0x214fd7['push'](_0x214fd7['shift']());}catch(_0x459825){_0x214fd7['push'](_0x214fd7['shift']());}}}(a76_0x3f26,0x35e6b));import{z}from'zod';function a76_0x10ad(_0xb054e0,_0x297ed0){_0xb054e0=_0xb054e0-0x1b5;const _0x3f2682=a76_0x3f26();let _0x10ad04=_0x3f2682[_0xb054e0];return _0x10ad04;}import{WorkspaceSDK,resolveWorkspacePath}from'../../sdk/workspace/index.js';function a76_0x3f26(){const _0x315bf2=['338664UPHPPR','Template\x20name\x20from\x20templates/\x20folder','JIRA\x20ticket\x20reference\x20(org/TICKET-ID)','backlog','Document\x20kind\x20(default:\x20\x22item\x22)','priority','Markdown\x20body\x20content','2ANTtUb','reference','filePath','Initial\x20status\x20(default:\x20\x22todo\x22\x20for\x20items,\x20\x22proposed\x22\x20for\x20guides)','proposed','No\x20workspace\x20found.\x20Run\x20`tdx\x20work\x20init`\x20to\x20create\x20one.','superseded','array','jira','14152200BJLleF','template','status','70IrAGHE','medium','optional','high','review','object','void','GitHub\x20PR/issue\x20reference\x20(owner/repo#number)','done','651125bPaWxJ','in_progress','github','1398060kwgoMx','206079qvMoUg','critical','low','item','describe','string','body','title','guide','fileName','enum','1276227EGBUrJ','todo','Tags\x20for\x20the\x20item','3450366LRMGKG','replace','12WlmygP','design_review'];a76_0x3f26=function(){return _0x315bf2;};return a76_0x3f26();}const TASK_STATUSES=[a76_0x56c1a3(0x1c7),a76_0x56c1a3(0x1be),'planning',a76_0x56c1a3(0x1c3),a76_0x56c1a3(0x1e1),a76_0x56c1a3(0x1db),a76_0x56c1a3(0x1df),a76_0x56c1a3(0x1dd)],GUIDE_STATUSES=[a76_0x56c1a3(0x1cf),'accepted','deprecated',a76_0x56c1a3(0x1d1)];export const WorkCreateItemInputSchema=z[a76_0x56c1a3(0x1dc)]({'title':z[a76_0x56c1a3(0x1b7)]()[a76_0x56c1a3(0x1b6)]('Item\x20title\x20(required)'),'kind':z[a76_0x56c1a3(0x1bc)](['item','note',a76_0x56c1a3(0x1ba),a76_0x56c1a3(0x1cc)])[a76_0x56c1a3(0x1d9)]()[a76_0x56c1a3(0x1b6)](a76_0x56c1a3(0x1c8)),'status':z['enum']([...TASK_STATUSES,...GUIDE_STATUSES])[a76_0x56c1a3(0x1d9)]()['describe'](a76_0x56c1a3(0x1ce)),'tags':z[a76_0x56c1a3(0x1d2)](z[a76_0x56c1a3(0x1b7)]())[a76_0x56c1a3(0x1d9)]()[a76_0x56c1a3(0x1b6)](a76_0x56c1a3(0x1bf)),'priority':z['enum']([a76_0x56c1a3(0x1e5),a76_0x56c1a3(0x1da),a76_0x56c1a3(0x1d8),a76_0x56c1a3(0x1e6)])[a76_0x56c1a3(0x1d9)]()[a76_0x56c1a3(0x1b6)]('Priority\x20level'),'body':z[a76_0x56c1a3(0x1b7)]()[a76_0x56c1a3(0x1d9)]()[a76_0x56c1a3(0x1b6)](a76_0x56c1a3(0x1ca)),'template':z[a76_0x56c1a3(0x1b7)]()[a76_0x56c1a3(0x1d9)]()[a76_0x56c1a3(0x1b6)](a76_0x56c1a3(0x1c5)),'github':z['string']()[a76_0x56c1a3(0x1d9)]()[a76_0x56c1a3(0x1b6)](a76_0x56c1a3(0x1de)),'jira':z['string']()[a76_0x56c1a3(0x1d9)]()['describe'](a76_0x56c1a3(0x1c6))});export function executeWorkCreateItem(_0x4d6468){const _0x10ae86=a76_0x56c1a3,_0x12cbcc=resolveWorkspacePath();if(!_0x12cbcc)return{'success':![],'error':_0x10ae86(0x1d0)};const _0x570f1b=new WorkspaceSDK(_0x12cbcc),_0x53ea8c={'title':_0x4d6468[_0x10ae86(0x1b9)],'kind':_0x4d6468['kind']||_0x10ae86(0x1b5),'status':_0x4d6468[_0x10ae86(0x1d6)],'tags':_0x4d6468['tags'],'priority':_0x4d6468[_0x10ae86(0x1c9)],'body':_0x4d6468[_0x10ae86(0x1b8)],'template':_0x4d6468[_0x10ae86(0x1d5)],'github':_0x4d6468[_0x10ae86(0x1e2)],'jira':_0x4d6468[_0x10ae86(0x1d3)]},_0x301f58=_0x570f1b['createDocument'](_0x53ea8c);return{'success':!![],'path':_0x301f58[_0x10ae86(0x1cd)],'slug':_0x301f58[_0x10ae86(0x1bb)][_0x10ae86(0x1c1)](/\.md$/,'')};}
1
+ const a77_0x9491c9=a77_0x4b59;(function(_0x48f775,_0x59d9cf){const _0x5c1d23=a77_0x4b59,_0x344f8f=_0x48f775();while(!![]){try{const _0x595ba3=parseInt(_0x5c1d23(0xb9))/0x1*(-parseInt(_0x5c1d23(0xa7))/0x2)+parseInt(_0x5c1d23(0xa2))/0x3+-parseInt(_0x5c1d23(0xbe))/0x4+-parseInt(_0x5c1d23(0xc6))/0x5*(-parseInt(_0x5c1d23(0xab))/0x6)+-parseInt(_0x5c1d23(0xba))/0x7*(parseInt(_0x5c1d23(0x9c))/0x8)+-parseInt(_0x5c1d23(0x94))/0x9*(-parseInt(_0x5c1d23(0xad))/0xa)+parseInt(_0x5c1d23(0xb5))/0xb;if(_0x595ba3===_0x59d9cf)break;else _0x344f8f['push'](_0x344f8f['shift']());}catch(_0x5b99e1){_0x344f8f['push'](_0x344f8f['shift']());}}}(a77_0x4e08,0x71f60));import{z}from'zod';import{WorkspaceSDK,resolveWorkspacePath}from'../../sdk/workspace/index.js';function a77_0x4b59(_0x34b7fa,_0x321a26){_0x34b7fa=_0x34b7fa-0x94;const _0x4e0820=a77_0x4e08();let _0x4b5917=_0x4e0820[_0x34b7fa];return _0x4b5917;}const TASK_STATUSES=[a77_0x9491c9(0xa0),a77_0x9491c9(0x98),a77_0x9491c9(0xaa),'design_review',a77_0x9491c9(0xa9),a77_0x9491c9(0xbf),a77_0x9491c9(0x95),a77_0x9491c9(0xb0)],GUIDE_STATUSES=['proposed',a77_0x9491c9(0xc1),a77_0x9491c9(0xa4),a77_0x9491c9(0xb4)];export const WorkCreateItemInputSchema=z['object']({'title':z[a77_0x9491c9(0x97)]()[a77_0x9491c9(0x9e)]('Item\x20title\x20(required)'),'kind':z[a77_0x9491c9(0xb6)]([a77_0x9491c9(0xaf),a77_0x9491c9(0xbb),a77_0x9491c9(0xac),'reference'])['optional']()[a77_0x9491c9(0x9e)](a77_0x9491c9(0xae)),'status':z[a77_0x9491c9(0xb6)]([...TASK_STATUSES,...GUIDE_STATUSES])['optional']()[a77_0x9491c9(0x9e)](a77_0x9491c9(0xc7)),'tags':z[a77_0x9491c9(0xb8)](z[a77_0x9491c9(0x97)]())[a77_0x9491c9(0xb1)]()[a77_0x9491c9(0x9e)]('Tags\x20for\x20the\x20item'),'priority':z[a77_0x9491c9(0xb6)](['critical',a77_0x9491c9(0x96),a77_0x9491c9(0xc0),a77_0x9491c9(0xc2)])['optional']()['describe'](a77_0x9491c9(0xc3)),'body':z[a77_0x9491c9(0x97)]()[a77_0x9491c9(0xb1)]()[a77_0x9491c9(0x9e)](a77_0x9491c9(0xa6)),'template':z[a77_0x9491c9(0x97)]()[a77_0x9491c9(0xb1)]()[a77_0x9491c9(0x9e)](a77_0x9491c9(0xa8)),'github':z[a77_0x9491c9(0x97)]()[a77_0x9491c9(0xb1)]()[a77_0x9491c9(0x9e)](a77_0x9491c9(0x9a)),'jira':z['string']()[a77_0x9491c9(0xb1)]()[a77_0x9491c9(0x9e)](a77_0x9491c9(0xbc))});export function executeWorkCreateItem(_0x3a774f){const _0x365c66=a77_0x9491c9,_0x15b9d7=resolveWorkspacePath();if(!_0x15b9d7)return{'success':![],'error':_0x365c66(0xb3)};const _0x39eca1=new WorkspaceSDK(_0x15b9d7),_0xe1fefb={'title':_0x3a774f[_0x365c66(0xa1)],'kind':_0x3a774f['kind']||_0x365c66(0xaf),'status':_0x3a774f[_0x365c66(0xb2)],'tags':_0x3a774f[_0x365c66(0xb7)],'priority':_0x3a774f[_0x365c66(0xa5)],'body':_0x3a774f[_0x365c66(0x9f)],'template':_0x3a774f[_0x365c66(0xa3)],'github':_0x3a774f[_0x365c66(0x9d)],'jira':_0x3a774f[_0x365c66(0xbd)]},_0x577a8f=_0x39eca1[_0x365c66(0x9b)](_0xe1fefb);return{'success':!![],'path':_0x577a8f[_0x365c66(0xc5)],'slug':_0x577a8f[_0x365c66(0xc4)][_0x365c66(0x99)](/\.md$/,'')};}function a77_0x4e08(){const _0x1add80=['in_progress','planning','828XiDGef','guide','40LnwVQb','Document\x20kind\x20(default:\x20\x22item\x22)','item','void','optional','status','No\x20workspace\x20found.\x20Run\x20`tdx\x20work\x20init`\x20to\x20create\x20one.','superseded','10119945fcZmTH','enum','tags','array','1hlAEBU','7fkMMZC','note','JIRA\x20ticket\x20reference\x20(org/TICKET-ID)','jira','1969788Dkaflm','review','medium','accepted','low','Priority\x20level','fileName','filePath','23770tVWFRp','Initial\x20status\x20(default:\x20\x22todo\x22\x20for\x20items,\x20\x22proposed\x22\x20for\x20guides)','913806jqrixI','done','high','string','todo','replace','GitHub\x20PR/issue\x20reference\x20(owner/repo#number)','createDocument','5816056mbFTUa','github','describe','body','backlog','title','436062JtIdSY','template','deprecated','priority','Markdown\x20body\x20content','882598SWkUld','Template\x20name\x20from\x20templates/\x20folder'];a77_0x4e08=function(){return _0x1add80;};return a77_0x4e08();}
package/dist/mcp/utils.js CHANGED
@@ -1 +1 @@
1
- function a77_0xc7a5(){const _0x3f72d6=['10510312qNKgse','auth\x20setup','auth\x20clear','9MPAvXq','join','3827634djgPFi','toLowerCase','trimEnd','startsWith','8972dyOmxt','306045VfiHxH','13998310JqxJoU','profile\x20create','profile\x20remove','169FpTuBd','87072AujvDQ','profile\x20delete','--profile','slice','Profile\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','replace','length','2247780TRzWAE','auth\x20login','143ibvrhr','includes','7klPYBP','84IZZEnC','Cannot\x20run\x20MCP\x20server\x20recursively'];a77_0xc7a5=function(){return _0x3f72d6;};return a77_0xc7a5();}const a77_0xc1239e=a77_0x52f4;(function(_0x3f0419,_0xc5e5f){const _0x2fbc60=a77_0x52f4,_0x229af4=_0x3f0419();while(!![]){try{const _0x5b73cd=parseInt(_0x2fbc60(0x1ac))/0x1*(-parseInt(_0x2fbc60(0x1a7))/0x2)+-parseInt(_0x2fbc60(0x1ad))/0x3*(-parseInt(_0x2fbc60(0x1b9))/0x4)+parseInt(_0x2fbc60(0x1a8))/0x5+parseInt(_0x2fbc60(0x1a3))/0x6+-parseInt(_0x2fbc60(0x1b8))/0x7*(-parseInt(_0x2fbc60(0x1bb))/0x8)+-parseInt(_0x2fbc60(0x1be))/0x9*(-parseInt(_0x2fbc60(0x1a9))/0xa)+parseInt(_0x2fbc60(0x1b6))/0xb*(-parseInt(_0x2fbc60(0x1b4))/0xc);if(_0x5b73cd===_0xc5e5f)break;else _0x229af4['push'](_0x229af4['shift']());}catch(_0x39d541){_0x229af4['push'](_0x229af4['shift']());}}}(a77_0xc7a5,0xca673));const BLOCKED_COMMANDS=[a77_0xc1239e(0x1bc),a77_0xc1239e(0x1b5),a77_0xc1239e(0x1bd),a77_0xc1239e(0x1aa),a77_0xc1239e(0x1ae),a77_0xc1239e(0x1ab),'mcp'],BLOCKED_FLAGS=[a77_0xc1239e(0x1af),'-p'];export function hasBlockedFlag(_0x5cda6d){const _0x5aba09=a77_0xc1239e;for(const _0x169ff5 of _0x5cda6d){const _0x1d712d=_0x169ff5[_0x5aba09(0x1a4)]();for(const _0x1cf52b of BLOCKED_FLAGS){if(_0x1d712d===_0x1cf52b||_0x1d712d[_0x5aba09(0x1a6)](_0x1cf52b+'='))return!![];}}return![];}export function isBlockedCommand(_0x50220c){const _0x75d95a=a77_0xc1239e;if(_0x50220c[_0x75d95a(0x1b3)]===0x0)return![];if(hasBlockedFlag(_0x50220c))return!![];const _0x4c5dbd=_0x50220c[_0x75d95a(0x1b0)](0x0,0x2)[_0x75d95a(0x1a2)]('\x20')[_0x75d95a(0x1a4)]();for(const _0x395d10 of BLOCKED_COMMANDS){if(_0x4c5dbd[_0x75d95a(0x1a6)](_0x395d10))return!![];}const _0x383950=_0x50220c[0x0][_0x75d95a(0x1a4)]();for(const _0x27fe09 of BLOCKED_COMMANDS){if(!_0x27fe09[_0x75d95a(0x1b7)]('\x20')&&_0x383950===_0x27fe09)return!![];}return![];}export function getBlockedReason(_0x1e9809){const _0x17182b=a77_0xc1239e;if(!isBlockedCommand(_0x1e9809))return undefined;if(hasBlockedFlag(_0x1e9809))return'Profile\x20switching\x20via\x20--profile\x20flag\x20is\x20not\x20allowed\x20via\x20MCP';const _0x544ab0=_0x1e9809[_0x17182b(0x1b0)](0x0,0x2)[_0x17182b(0x1a2)]('\x20')[_0x17182b(0x1a4)](),_0x342f2a=_0x1e9809[0x0][_0x17182b(0x1a4)]();if(_0x544ab0[_0x17182b(0x1a6)]('auth\x20setup')||_0x544ab0[_0x17182b(0x1a6)](_0x17182b(0x1b5))||_0x544ab0[_0x17182b(0x1a6)]('auth\x20clear'))return'Credential\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP';if(_0x544ab0[_0x17182b(0x1a6)](_0x17182b(0x1aa))||_0x544ab0[_0x17182b(0x1a6)](_0x17182b(0x1ae))||_0x544ab0['startsWith'](_0x17182b(0x1ab)))return _0x17182b(0x1b1);if(_0x342f2a==='mcp')return _0x17182b(0x1ba);return'This\x20command\x20is\x20not\x20allowed\x20via\x20MCP';}function a77_0x52f4(_0x39df81,_0x7b55f2){_0x39df81=_0x39df81-0x1a2;const _0xc7a595=a77_0xc7a5();let _0x52f4e5=_0xc7a595[_0x39df81];return _0x52f4e5;}export function formatOutput(_0x16d320){const _0x577031=a77_0xc1239e,_0x5cdc41=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;let _0x16b8a1=_0x16d320[_0x577031(0x1b2)](_0x5cdc41,'');return _0x16b8a1=_0x16b8a1[_0x577031(0x1b2)](/\r\n/g,'\x0a')['replace'](/\r/g,'\x0a'),_0x16b8a1=_0x16b8a1[_0x577031(0x1a5)](),_0x16b8a1;}
1
+ const a78_0x3ccdff=a78_0xc881;function a78_0xc881(_0x49b724,_0x30c4ec){_0x49b724=_0x49b724-0x105;const _0x1a5356=a78_0x1a53();let _0xc881fb=_0x1a5356[_0x49b724];return _0xc881fb;}(function(_0x2840e3,_0x391361){const _0x4c3499=a78_0xc881,_0x2045f3=_0x2840e3();while(!![]){try{const _0x45f092=-parseInt(_0x4c3499(0x109))/0x1+-parseInt(_0x4c3499(0x10c))/0x2*(-parseInt(_0x4c3499(0x10b))/0x3)+parseInt(_0x4c3499(0x108))/0x4*(-parseInt(_0x4c3499(0x120))/0x5)+-parseInt(_0x4c3499(0x10d))/0x6+-parseInt(_0x4c3499(0x107))/0x7+-parseInt(_0x4c3499(0x10e))/0x8*(parseInt(_0x4c3499(0x114))/0x9)+parseInt(_0x4c3499(0x111))/0xa;if(_0x45f092===_0x391361)break;else _0x2045f3['push'](_0x2045f3['shift']());}catch(_0x2a2732){_0x2045f3['push'](_0x2045f3['shift']());}}}(a78_0x1a53,0xc4797));function a78_0x1a53(){const _0x4ac932=['4kDoHGn','1258471fwGuUa','includes','175629kBQcOP','10VtzAfZ','7375770tKuHdM','157264fNaTRx','Credential\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','Profile\x20switching\x20via\x20--profile\x20flag\x20is\x20not\x20allowed\x20via\x20MCP','60213490FsDdTh','mcp','startsWith','135djdbVP','Profile\x20management\x20commands\x20are\x20not\x20allowed\x20via\x20MCP','replace','This\x20command\x20is\x20not\x20allowed\x20via\x20MCP','toLowerCase','slice','join','auth\x20setup','length','profile\x20delete','profile\x20create','profile\x20remove','6963265KkfJHh','auth\x20login','auth\x20clear','trimEnd','9338112qEpoST'];a78_0x1a53=function(){return _0x4ac932;};return a78_0x1a53();}const BLOCKED_COMMANDS=['auth\x20setup',a78_0x3ccdff(0x121),a78_0x3ccdff(0x105),'profile\x20create',a78_0x3ccdff(0x11d),a78_0x3ccdff(0x11f),a78_0x3ccdff(0x112)],BLOCKED_FLAGS=['--profile','-p'];export function hasBlockedFlag(_0x243c53){const _0x210a6b=a78_0x3ccdff;for(const _0x41fd99 of _0x243c53){const _0x3896c4=_0x41fd99[_0x210a6b(0x118)]();for(const _0x4afa16 of BLOCKED_FLAGS){if(_0x3896c4===_0x4afa16||_0x3896c4['startsWith'](_0x4afa16+'='))return!![];}}return![];}export function isBlockedCommand(_0x347ef7){const _0x16b343=a78_0x3ccdff;if(_0x347ef7[_0x16b343(0x11c)]===0x0)return![];if(hasBlockedFlag(_0x347ef7))return!![];const _0xbffa49=_0x347ef7['slice'](0x0,0x2)[_0x16b343(0x11a)]('\x20')[_0x16b343(0x118)]();for(const _0x313cbf of BLOCKED_COMMANDS){if(_0xbffa49['startsWith'](_0x313cbf))return!![];}const _0x1ea4d0=_0x347ef7[0x0][_0x16b343(0x118)]();for(const _0x403bb5 of BLOCKED_COMMANDS){if(!_0x403bb5[_0x16b343(0x10a)]('\x20')&&_0x1ea4d0===_0x403bb5)return!![];}return![];}export function getBlockedReason(_0x13b5ee){const _0x5d3057=a78_0x3ccdff;if(!isBlockedCommand(_0x13b5ee))return undefined;if(hasBlockedFlag(_0x13b5ee))return _0x5d3057(0x110);const _0x4879b8=_0x13b5ee[_0x5d3057(0x119)](0x0,0x2)['join']('\x20')['toLowerCase'](),_0x4ad76c=_0x13b5ee[0x0][_0x5d3057(0x118)]();if(_0x4879b8[_0x5d3057(0x113)](_0x5d3057(0x11b))||_0x4879b8[_0x5d3057(0x113)](_0x5d3057(0x121))||_0x4879b8[_0x5d3057(0x113)](_0x5d3057(0x105)))return _0x5d3057(0x10f);if(_0x4879b8[_0x5d3057(0x113)](_0x5d3057(0x11e))||_0x4879b8[_0x5d3057(0x113)]('profile\x20delete')||_0x4879b8[_0x5d3057(0x113)](_0x5d3057(0x11f)))return _0x5d3057(0x115);if(_0x4ad76c==='mcp')return'Cannot\x20run\x20MCP\x20server\x20recursively';return _0x5d3057(0x117);}export function formatOutput(_0x4baf70){const _0x576811=a78_0x3ccdff,_0xf4f845=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;let _0x5f0382=_0x4baf70[_0x576811(0x116)](_0xf4f845,'');return _0x5f0382=_0x5f0382['replace'](/\r\n/g,'\x0a')[_0x576811(0x116)](/\r/g,'\x0a'),_0x5f0382=_0x5f0382[_0x576811(0x106)](),_0x5f0382;}
@@ -1 +1 @@
1
- (function(_0x3718e8,_0x3e4ef5){const _0x416dd9=a78_0x38ed,_0x27efb5=_0x3718e8();while(!![]){try{const _0x1b1080=-parseInt(_0x416dd9(0xed))/0x1*(parseInt(_0x416dd9(0xb1))/0x2)+-parseInt(_0x416dd9(0xe0))/0x3*(parseInt(_0x416dd9(0xcf))/0x4)+parseInt(_0x416dd9(0xce))/0x5+-parseInt(_0x416dd9(0xaa))/0x6*(parseInt(_0x416dd9(0xbb))/0x7)+parseInt(_0x416dd9(0xdf))/0x8+parseInt(_0x416dd9(0xd6))/0x9*(parseInt(_0x416dd9(0xdd))/0xa)+parseInt(_0x416dd9(0xeb))/0xb;if(_0x1b1080===_0x3e4ef5)break;else _0x27efb5['push'](_0x27efb5['shift']());}catch(_0x313f6d){_0x27efb5['push'](_0x27efb5['shift']());}}}(a78_0x448c,0x5206d));function a78_0x448c(){const _0x107d0b=['cacheReadInputTokens','slice','getFullYear','claude-usage','Invalid\x20session\x20ID:\x20path\x20traversal\x20detected','147497EwGhGf','.jsonl:','todayDate','getTime','default','reduce','sources','sort','month','Failed\x20to\x20read\x20usage\x20directory:','message','profile','stringify','cacheCreationInputTokens','totalCredits','sessions','todayCredits','Failed\x20to\x20read\x20usage\x20file\x20','.jsonl','1393900nFPXpT','907372FCkKSq','model','endsWith','utf-8','totalChatUnits','entryCount','entries','459GQIZvC','parse','getMonth','keys','filter','profiles','max','21540bsVYJb','timestamp','240528fqSYbv','3jiInps','replace','outputTokens','lastUsedAt','toISOString','latestContextTokensBySignature','lastUpdatedAt','inputTokens','warn','credits','stats-cache.json','7128957OAzvum','tdx-claude','5sYYcsS','map','138Bkvkpj','object','length','values','monthCredits','startsWith','daily','7732coXUZe','Failed\x20to\x20process\x20session\x20','monthly','WARN','split'];a78_0x448c=function(){return _0x107d0b;};return a78_0x448c();}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 _0x1d6a20=a78_0x38ed;return!usageLogger&&(usageLogger=new TDXLogger(LogLevel[_0x1d6a20(0xb4)],!![]),await usageLogger['init']()),usageLogger;}function getUsageDir(){const _0x3c2d79=a78_0x38ed;return join(getGlobalCacheDir(),_0x3c2d79(0xb9));}function sanitizeSessionId(_0x45a067){const _0x2b21e6=a78_0x38ed;return _0x45a067[_0x2b21e6(0xe1)](/[^a-zA-Z0-9_-]/g,'_');}function a78_0x38ed(_0x54c6cc,_0x1341b0){_0x54c6cc=_0x54c6cc-0xa9;const _0x448c78=a78_0x448c();let _0x38ed02=_0x448c78[_0x54c6cc];return _0x38ed02;}function getSafeJsonlPath(_0x54cff7){const _0x1bd291=a78_0x38ed,_0xda14b3=getUsageDir(),_0x116a80=sanitizeSessionId(_0x54cff7),_0x1afb68=resolve(_0xda14b3,_0x116a80+_0x1bd291(0xcd));if(!_0x1afb68[_0x1bd291(0xaf)](_0xda14b3))throw new Error(_0x1bd291(0xba));return _0x1afb68;}function getStatsCachePath(){const _0x8e1beb=a78_0x38ed;return join(getUsageDir(),_0x8e1beb(0xea));}async function ensureUsageDir(){const _0x2cca36=getUsageDir();!existsSync(_0x2cca36)&&await mkdir(_0x2cca36,{'recursive':!![]});}export async function appendUsageEntry(_0x511aec,_0x45bdbd){const _0x19fe25=a78_0x38ed,_0x54fea4=sanitizeSessionId(_0x511aec);await ensureUsageDir();const _0x4e2c52=getSafeJsonlPath(_0x54fea4),_0x22ad44=JSON[_0x19fe25(0xc7)](_0x45bdbd)+'\x0a';await appendFile(_0x4e2c52,_0x22ad44,_0x19fe25(0xd2));}async function readSessionJsonl(_0x128e6e){const _0x1ad174=a78_0x38ed,_0xfe1af0=getSafeJsonlPath(_0x128e6e);if(!existsSync(_0xfe1af0))return[];try{const _0x4b0a10=await readFile(_0xfe1af0,'utf-8'),_0x172495=_0x4b0a10['trim']()[_0x1ad174(0xb5)]('\x0a')['filter'](Boolean);return _0x172495[_0x1ad174(0xa9)](_0x25e1bc=>{const _0x1d7a7a=_0x1ad174;try{return JSON[_0x1d7a7a(0xd7)](_0x25e1bc);}catch{return null;}})[_0x1ad174(0xda)](_0x1a9c72=>_0x1a9c72!==null);}catch(_0x424489){const _0x3da0e1=await getLogger();return _0x3da0e1[_0x1ad174(0xe8)](_0x1ad174(0xcc)+_0x128e6e+_0x1ad174(0xbc),_0x424489 instanceof Error?_0x424489[_0x1ad174(0xc5)]:String(_0x424489)),[];}}async function getAllSessionFiles(){const _0x3b78ac=a78_0x38ed,_0x423993=getUsageDir();if(!existsSync(_0x423993))return[];try{const _0x3ad2b2=await readdir(_0x423993);return _0x3ad2b2[_0x3b78ac(0xda)](_0x37953a=>_0x37953a[_0x3b78ac(0xd1)]('.jsonl'))['map'](_0x1bb58a=>_0x1bb58a[_0x3b78ac(0xe1)](_0x3b78ac(0xcd),''));}catch(_0x1a4bce){const _0x1d6e38=await getLogger();return _0x1d6e38['warn'](_0x3b78ac(0xc4),_0x1a4bce instanceof Error?_0x1a4bce[_0x3b78ac(0xc5)]:String(_0x1a4bce)),[];}}async function readStatsCache(){const _0x3fb4b8=a78_0x38ed,_0x447bc7=getStatsCachePath();if(!existsSync(_0x447bc7))return null;try{const _0x1e80b3=await readFile(_0x447bc7,_0x3fb4b8(0xd2)),_0x40abe2=JSON[_0x3fb4b8(0xd7)](_0x1e80b3),_0x4931e0=Object['values'](_0x40abe2[_0x3fb4b8(0xca)]||{})[0x0];if(_0x4931e0&&_0x3fb4b8(0xd3)in _0x4931e0)return null;return _0x40abe2;}catch{return null;}}async function writeStatsCache(_0x81ac03){const _0xaa72b7=a78_0x38ed;await ensureUsageDir();const _0x2f593e=getStatsCachePath();await writeFile(_0x2f593e,JSON[_0xaa72b7(0xc7)](_0x81ac03,null,0x2),_0xaa72b7(0xd2));}async function isCacheUpToDate(_0x28296d,_0x295a35){const _0x327df7=a78_0x38ed,_0xbcd322=_0x28296d[_0x327df7(0xca)][_0x295a35];if(!_0xbcd322)return![];const _0xc39521=getSafeJsonlPath(_0x295a35);if(!existsSync(_0xc39521))return!![];try{const _0x27b2a9=await stat(_0xc39521),_0x13a290=new Date(_0xbcd322['lastUpdatedAt'])[_0x327df7(0xbe)](),_0x5ecf09=_0x27b2a9['mtime']['getTime']();return _0x13a290>_0x5ecf09;}catch{return![];}}export async function rebuildCache(){const _0x386153=a78_0x38ed,_0x2dad29=new Date(),_0x7d22da=_0x2dad29[_0x386153(0xe4)]()[_0x386153(0xb7)](0x0,0xa),_0x4b7b73=_0x2dad29[_0x386153(0xe4)]()['slice'](0x0,0x7),_0x188551={'daily':{},'monthly':{},'sessions':{},'profiles':{},'sources':{},'lastRebuiltAt':_0x2dad29[_0x386153(0xe4)]()},_0x221790=await getAllSessionFiles();for(const _0xcde4da of _0x221790){try{const _0x2bd510=await readSessionJsonl(_0xcde4da);if(_0x2bd510[_0x386153(0xac)]===0x0)continue;let _0x32e8dc=0x0;const _0x56cf80={};let _0x4502a2='';for(const _0x344e16 of _0x2bd510){const _0x4ec87d=_0x344e16[_0x386153(0xc8)]??0x0,_0x17daaa=_0x344e16[_0x386153(0xb6)]??0x0,_0x52153f=_0x344e16[_0x386153(0xe7)]+_0x4ec87d+_0x17daaa,_0xf3e1cf=getModelPricing(_0x344e16[_0x386153(0xd0)],_0x52153f),_0x1a2936=calculateTokenCost(_0x344e16[_0x386153(0xe7)],_0x344e16[_0x386153(0xe2)],_0x4ec87d,_0x17daaa,_0xf3e1cf),_0x3018b8=usdToAiCredits(_0x1a2936);_0x32e8dc+=_0x3018b8;const _0x542c40=_0x344e16['contextSignature']||'default';_0x56cf80[_0x542c40]=_0x52153f;_0x344e16[_0x386153(0xde)]>_0x4502a2&&(_0x4502a2=_0x344e16[_0x386153(0xde)]);const _0x7943ff=_0x344e16[_0x386153(0xde)]['slice'](0x0,0xa);!_0x188551[_0x386153(0xb0)][_0x7943ff]&&(_0x188551['daily'][_0x7943ff]={'totalCredits':0x0,'entryCount':0x0});_0x188551['daily'][_0x7943ff][_0x386153(0xc9)]+=_0x3018b8,_0x188551[_0x386153(0xb0)][_0x7943ff][_0x386153(0xd4)]+=0x1;const _0x2fc081=_0x344e16[_0x386153(0xde)]['slice'](0x0,0x7);!_0x188551[_0x386153(0xb3)][_0x2fc081]&&(_0x188551[_0x386153(0xb3)][_0x2fc081]={'totalCredits':0x0,'entryCount':0x0});_0x188551['monthly'][_0x2fc081][_0x386153(0xc9)]+=_0x3018b8,_0x188551[_0x386153(0xb3)][_0x2fc081][_0x386153(0xd4)]+=0x1;const _0x4ad497=_0x344e16[_0x386153(0xc6)]||_0x386153(0xbf);!_0x188551['profiles'][_0x4ad497]&&(_0x188551[_0x386153(0xdb)][_0x4ad497]={'totalCredits':0x0,'entryCount':0x0,'lastUsedAt':'','todayCredits':0x0,'todayDate':_0x7d22da,'monthCredits':0x0,'month':_0x4b7b73});_0x188551[_0x386153(0xdb)][_0x4ad497][_0x386153(0xc9)]+=_0x3018b8,_0x188551[_0x386153(0xdb)][_0x4ad497][_0x386153(0xd4)]+=0x1;_0x344e16[_0x386153(0xde)]>_0x188551['profiles'][_0x4ad497][_0x386153(0xe3)]&&(_0x188551['profiles'][_0x4ad497][_0x386153(0xe3)]=_0x344e16[_0x386153(0xde)]);_0x7943ff===_0x7d22da&&(_0x188551['profiles'][_0x4ad497][_0x386153(0xcb)]+=_0x3018b8);_0x2fc081===_0x4b7b73&&(_0x188551[_0x386153(0xdb)][_0x4ad497][_0x386153(0xae)]+=_0x3018b8);const _0x4ffbc8=_0x344e16['source']||_0x386153(0xec);!_0x188551[_0x386153(0xc1)][_0x4ffbc8]&&(_0x188551[_0x386153(0xc1)][_0x4ffbc8]={'totalCredits':0x0,'entryCount':0x0,'todayCredits':0x0,'todayDate':_0x7d22da,'monthCredits':0x0,'month':_0x4b7b73}),_0x188551[_0x386153(0xc1)][_0x4ffbc8][_0x386153(0xc9)]+=_0x3018b8,_0x188551['sources'][_0x4ffbc8][_0x386153(0xd4)]+=0x1,_0x7943ff===_0x7d22da&&(_0x188551['sources'][_0x4ffbc8][_0x386153(0xcb)]+=_0x3018b8),_0x2fc081===_0x4b7b73&&(_0x188551[_0x386153(0xc1)][_0x4ffbc8][_0x386153(0xae)]+=_0x3018b8);}_0x188551[_0x386153(0xca)][_0xcde4da]={'totalCredits':_0x32e8dc,'latestContextTokensBySignature':_0x56cf80,'createdAt':_0x2bd510[0x0][_0x386153(0xde)],'lastUpdatedAt':_0x4502a2};}catch(_0x42772b){const _0xa12de2=await getLogger();_0xa12de2[_0x386153(0xe8)](_0x386153(0xb2)+_0xcde4da+':',_0x42772b instanceof Error?_0x42772b[_0x386153(0xc5)]:String(_0x42772b));continue;}}return cleanupOldEntries(_0x188551),await writeStatsCache(_0x188551),_0x188551;}function cleanupOldEntries(_0x83dd){const _0x2a9f03=a78_0x38ed,_0x426e18=new Date(),_0x77eddd=new Date(_0x426e18[_0x2a9f03(0xbe)]()-0x7*0x18*0x3c*0x3c*0x3e8);for(const _0x12e80a of Object[_0x2a9f03(0xd9)](_0x83dd['daily'])){new Date(_0x12e80a)<_0x77eddd&&delete _0x83dd['daily'][_0x12e80a];}const _0x5f4808=new Date(_0x426e18[_0x2a9f03(0xb8)]()-0x1,_0x426e18[_0x2a9f03(0xd8)](),0x1);for(const _0x232ed1 of Object[_0x2a9f03(0xd9)](_0x83dd['monthly'])){const [_0x18c376,_0x23be32]=_0x232ed1[_0x2a9f03(0xb5)]('-')[_0x2a9f03(0xa9)](Number),_0x5064b2=new Date(_0x18c376,_0x23be32-0x1,0x1);_0x5064b2<_0x5f4808&&delete _0x83dd[_0x2a9f03(0xb3)][_0x232ed1];}const _0x245dc5=new Date(_0x426e18['getTime']()-0x1e*0x18*0x3c*0x3c*0x3e8);for(const [_0x33c4a5,_0x376b33]of Object[_0x2a9f03(0xd5)](_0x83dd[_0x2a9f03(0xca)])){new Date(_0x376b33[_0x2a9f03(0xe6)])<_0x245dc5&&delete _0x83dd[_0x2a9f03(0xca)][_0x33c4a5];}}export async function getOrUpdateCache(_0xe51c4b){const _0xf00ff0=_0xe51c4b?sanitizeSessionId(_0xe51c4b):undefined,_0x1e01c5=await readStatsCache();if(!_0x1e01c5)return rebuildCache();if(_0xf00ff0){const _0x18915d=await isCacheUpToDate(_0x1e01c5,_0xf00ff0);if(!_0x18915d)return rebuildCache();}return _0x1e01c5;}export async function getSessionCredits(_0x55765e){const _0x22c10f=a78_0x38ed,_0x3bf412=sanitizeSessionId(_0x55765e),_0x3d1a0b=await getOrUpdateCache(_0x3bf412),_0x7b1a6b=_0x3d1a0b[_0x22c10f(0xca)][_0x3bf412];if(!_0x7b1a6b)return 0x0;return _0x7b1a6b[_0x22c10f(0xc9)];}export async function getTodayCredits(){const _0x4075f3=a78_0x38ed,_0x35bc3a=await getOrUpdateCache(),_0x5afb5c=new Date()[_0x4075f3(0xe4)]()[_0x4075f3(0xb7)](0x0,0xa),_0x41b31c=_0x35bc3a[_0x4075f3(0xb0)][_0x5afb5c];if(!_0x41b31c)return 0x0;return _0x41b31c[_0x4075f3(0xc9)];}export async function getMonthCredits(){const _0x40b0b7=a78_0x38ed,_0x4f7c1a=await getOrUpdateCache(),_0x447cad=new Date()[_0x40b0b7(0xe4)]()[_0x40b0b7(0xb7)](0x0,0x7),_0x21c0b3=_0x4f7c1a[_0x40b0b7(0xb3)][_0x447cad];if(!_0x21c0b3)return 0x0;return _0x21c0b3[_0x40b0b7(0xc9)];}export async function getSessionStats(_0x2404a7){const _0x1ae430=a78_0x38ed,_0x4e3c6f=sanitizeSessionId(_0x2404a7),_0x58a767=await getOrUpdateCache(_0x4e3c6f);return _0x58a767[_0x1ae430(0xca)][_0x4e3c6f]||null;}function getMaxLatestContextTokens(_0x1f87a1){const _0x523613=a78_0x38ed,_0x1b4c6c=Object[_0x523613(0xad)](_0x1f87a1);if(_0x1b4c6c[_0x523613(0xac)]===0x0)return 0x0;return Math[_0x523613(0xdc)](..._0x1b4c6c);}export async function getUsageStats(_0x2c41ad,_0x4b5401){const _0x5aa7b=a78_0x38ed,_0xc56722=sanitizeSessionId(_0x2c41ad),_0xe3c4b9=await getOrUpdateCache(_0xc56722),_0x43e403=_0xe3c4b9[_0x5aa7b(0xca)][_0xc56722],_0x69bd61=new Date()['toISOString']()['slice'](0x0,0xa),_0xa550c6=new Date()[_0x5aa7b(0xe4)]()[_0x5aa7b(0xb7)](0x0,0x7);if(_0x4b5401){const _0x35e5ec=_0xe3c4b9[_0x5aa7b(0xdb)]?.[_0x4b5401],_0x39695e=_0x35e5ec?.[_0x5aa7b(0xbd)]===_0x69bd61?_0x35e5ec[_0x5aa7b(0xcb)]:0x0,_0x2c147a=_0x35e5ec?.[_0x5aa7b(0xc3)]===_0xa550c6?_0x35e5ec[_0x5aa7b(0xae)]:0x0;return{'sessionCredits':_0x43e403?_0x43e403['totalCredits']:0x0,'todayCredits':_0x39695e,'monthCredits':_0x2c147a,'latestContextTokens':_0x43e403?getMaxLatestContextTokens(_0x43e403[_0x5aa7b(0xe5)]):0x0};}return{'sessionCredits':_0x43e403?_0x43e403[_0x5aa7b(0xc9)]:0x0,'todayCredits':_0xe3c4b9[_0x5aa7b(0xb0)][_0x69bd61]?_0xe3c4b9[_0x5aa7b(0xb0)][_0x69bd61][_0x5aa7b(0xc9)]:0x0,'monthCredits':_0xe3c4b9[_0x5aa7b(0xb3)][_0xa550c6]?_0xe3c4b9['monthly'][_0xa550c6]['totalCredits']:0x0,'latestContextTokens':_0x43e403?getMaxLatestContextTokens(_0x43e403[_0x5aa7b(0xe5)]):0x0};}export async function getAllProfileStats(){const _0x31f3a9=a78_0x38ed,_0x4dd3ec=await getOrUpdateCache(),_0x4ed9c6=_0x4dd3ec['profiles']||{};return Object['entries'](_0x4ed9c6)['filter'](([,_0xdfcfb2])=>_0xdfcfb2&&typeof _0xdfcfb2===_0x31f3a9(0xab))['map'](([_0x31be2f,_0x4e67ce])=>({'profile':_0x31be2f,'credits':_0x4e67ce[_0x31f3a9(0xc9)]||0x0,'entryCount':_0x4e67ce[_0x31f3a9(0xd4)]||0x0,'lastUsedAt':_0x4e67ce[_0x31f3a9(0xe3)]||''}))[_0x31f3a9(0xc2)]((_0x594b29,_0x4df586)=>_0x4df586[_0x31f3a9(0xe9)]-_0x594b29['credits']);}export async function getAllSourceStats(){const _0x9d824d=a78_0x38ed,_0x2f3d5c=await getOrUpdateCache(),_0x3fb848=_0x2f3d5c[_0x9d824d(0xc1)]||{},_0x28a7c1=new Date()[_0x9d824d(0xe4)]()[_0x9d824d(0xb7)](0x0,0xa),_0x4d8d8f=new Date()['toISOString']()[_0x9d824d(0xb7)](0x0,0x7);return Object[_0x9d824d(0xd5)](_0x3fb848)[_0x9d824d(0xda)](([,_0x3a1557])=>_0x3a1557&&typeof _0x3a1557===_0x9d824d(0xab))['map'](([_0x1828cf,_0x7349a0])=>({'source':_0x1828cf,'credits':_0x7349a0[_0x9d824d(0xc9)]||0x0,'todayCredits':_0x7349a0[_0x9d824d(0xbd)]===_0x28a7c1?_0x7349a0[_0x9d824d(0xcb)]||0x0:0x0,'monthCredits':_0x7349a0[_0x9d824d(0xc3)]===_0x4d8d8f?_0x7349a0[_0x9d824d(0xae)]||0x0:0x0,'entryCount':_0x7349a0[_0x9d824d(0xd4)]||0x0}))[_0x9d824d(0xc2)]((_0x117abc,_0x5e86aa)=>_0x5e86aa['credits']-_0x117abc[_0x9d824d(0xe9)]);}export async function getUsageSummary(){const _0x3a8e01=a78_0x38ed,_0x35a5dd=await getOrUpdateCache(),_0x22d7ef=_0x35a5dd[_0x3a8e01(0xdb)]||{},_0xdf7c36=new Date()['toISOString']()[_0x3a8e01(0xb7)](0x0,0xa),_0x1b07e7=new Date()[_0x3a8e01(0xe4)]()[_0x3a8e01(0xb7)](0x0,0x7),_0x447bbf=Object[_0x3a8e01(0xad)](_0x22d7ef)[_0x3a8e01(0xda)](_0x54d991=>_0x54d991&&typeof _0x54d991==='object'),_0x33bf8b=_0x447bbf[_0x3a8e01(0xc0)]((_0x2e20cb,_0x5ec337)=>_0x2e20cb+(_0x5ec337[_0x3a8e01(0xc9)]||0x0),0x0);return{'todayCredits':_0x35a5dd[_0x3a8e01(0xb0)][_0xdf7c36]?_0x35a5dd[_0x3a8e01(0xb0)][_0xdf7c36]['totalCredits']||0x0:0x0,'monthCredits':_0x35a5dd[_0x3a8e01(0xb3)][_0x1b07e7]?_0x35a5dd[_0x3a8e01(0xb3)][_0x1b07e7][_0x3a8e01(0xc9)]||0x0:0x0,'totalCredits':_0x33bf8b,'profileCount':_0x447bbf[_0x3a8e01(0xac)]};}
1
+ (function(_0x27158e,_0x6d2ce5){const _0x213993=a79_0x4b74,_0x263272=_0x27158e();while(!![]){try{const _0xa2ac74=parseInt(_0x213993(0x216))/0x1*(-parseInt(_0x213993(0x1f9))/0x2)+parseInt(_0x213993(0x220))/0x3*(-parseInt(_0x213993(0x207))/0x4)+-parseInt(_0x213993(0x22c))/0x5+parseInt(_0x213993(0x221))/0x6*(-parseInt(_0x213993(0x20f))/0x7)+parseInt(_0x213993(0x224))/0x8+-parseInt(_0x213993(0x1f8))/0x9+parseInt(_0x213993(0x1fe))/0xa;if(_0xa2ac74===_0x6d2ce5)break;else _0x263272['push'](_0x263272['shift']());}catch(_0xe9c0d2){_0x263272['push'](_0x263272['shift']());}}}(a79_0x554b,0x3b96a));import{readFile,writeFile,appendFile,mkdir,readdir,stat}from'node:fs/promises';import{existsSync}from'node:fs';function a79_0x4b74(_0xbc24d2,_0x1529a8){_0xbc24d2=_0xbc24d2-0x1ee;const _0x554b05=a79_0x554b();let _0x4b7401=_0x554b05[_0xbc24d2];return _0x4b7401;}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 _0x1507bb=a79_0x4b74;return!usageLogger&&(usageLogger=new TDXLogger(LogLevel[_0x1507bb(0x1fc)],!![]),await usageLogger[_0x1507bb(0x1ee)]()),usageLogger;}function getUsageDir(){return join(getGlobalCacheDir(),'claude-usage');}function sanitizeSessionId(_0x1cc1f4){const _0x3cc4f7=a79_0x4b74;return _0x1cc1f4[_0x3cc4f7(0x204)](/[^a-zA-Z0-9_-]/g,'_');}function getSafeJsonlPath(_0x25aa9f){const _0x40627a=a79_0x4b74,_0x6a907f=getUsageDir(),_0x5198c3=sanitizeSessionId(_0x25aa9f),_0x25b2a3=resolve(_0x6a907f,_0x5198c3+_0x40627a(0x1f5));if(!_0x25b2a3['startsWith'](_0x6a907f))throw new Error(_0x40627a(0x22b));return _0x25b2a3;}function getStatsCachePath(){const _0xef7762=a79_0x4b74;return join(getUsageDir(),_0xef7762(0x22a));}async function ensureUsageDir(){const _0x4e5045=getUsageDir();!existsSync(_0x4e5045)&&await mkdir(_0x4e5045,{'recursive':!![]});}export async function appendUsageEntry(_0x1917d1,_0x1252c){const _0x25880c=a79_0x4b74,_0x1b9c41=sanitizeSessionId(_0x1917d1);await ensureUsageDir();const _0x510cb8=getSafeJsonlPath(_0x1b9c41),_0x5c5710=JSON[_0x25880c(0x228)](_0x1252c)+'\x0a';await appendFile(_0x510cb8,_0x5c5710,'utf-8');}async function readSessionJsonl(_0x4f14d9){const _0x10d8d8=a79_0x4b74,_0x1587b4=getSafeJsonlPath(_0x4f14d9);if(!existsSync(_0x1587b4))return[];try{const _0x744003=await readFile(_0x1587b4,_0x10d8d8(0x203)),_0x108a35=_0x744003['trim']()[_0x10d8d8(0x1f0)]('\x0a')[_0x10d8d8(0x1ef)](Boolean);return _0x108a35[_0x10d8d8(0x20b)](_0x383e73=>{try{return JSON['parse'](_0x383e73);}catch{return null;}})[_0x10d8d8(0x1ef)](_0x1b84b8=>_0x1b84b8!==null);}catch(_0x596241){const _0x455f7a=await getLogger();return _0x455f7a['warn'](_0x10d8d8(0x229)+_0x4f14d9+_0x10d8d8(0x1fb),_0x596241 instanceof Error?_0x596241['message']:String(_0x596241)),[];}}async function getAllSessionFiles(){const _0x45109a=a79_0x4b74,_0x4b908c=getUsageDir();if(!existsSync(_0x4b908c))return[];try{const _0x57642d=await readdir(_0x4b908c);return _0x57642d[_0x45109a(0x1ef)](_0x506e9d=>_0x506e9d[_0x45109a(0x201)]('.jsonl'))[_0x45109a(0x20b)](_0xa86c0a=>_0xa86c0a[_0x45109a(0x204)]('.jsonl',''));}catch(_0x5274f6){const _0x3c0e66=await getLogger();return _0x3c0e66[_0x45109a(0x1f6)](_0x45109a(0x200),_0x5274f6 instanceof Error?_0x5274f6[_0x45109a(0x225)]:String(_0x5274f6)),[];}}async function readStatsCache(){const _0x1e75b1=a79_0x4b74,_0x390625=getStatsCachePath();if(!existsSync(_0x390625))return null;try{const _0x14d6ce=await readFile(_0x390625,_0x1e75b1(0x203)),_0x2b5223=JSON['parse'](_0x14d6ce),_0x492564=Object[_0x1e75b1(0x208)](_0x2b5223[_0x1e75b1(0x1fa)]||{})[0x0];if(_0x492564&&'totalChatUnits'in _0x492564)return null;return _0x2b5223;}catch{return null;}}async function writeStatsCache(_0xa7546f){const _0x1df4a2=a79_0x4b74;await ensureUsageDir();const _0x5c8305=getStatsCachePath();await writeFile(_0x5c8305,JSON[_0x1df4a2(0x228)](_0xa7546f,null,0x2),_0x1df4a2(0x203));}async function isCacheUpToDate(_0x54ad10,_0x3e74c5){const _0x3ab8f2=a79_0x4b74,_0x16b443=_0x54ad10[_0x3ab8f2(0x1fa)][_0x3e74c5];if(!_0x16b443)return![];const _0x34b5fa=getSafeJsonlPath(_0x3e74c5);if(!existsSync(_0x34b5fa))return!![];try{const _0x4e4e5a=await stat(_0x34b5fa),_0x65050b=new Date(_0x16b443['lastUpdatedAt'])[_0x3ab8f2(0x21a)](),_0x2ba774=_0x4e4e5a[_0x3ab8f2(0x206)][_0x3ab8f2(0x21a)]();return _0x65050b>_0x2ba774;}catch{return![];}}export async function rebuildCache(){const _0x2c81af=a79_0x4b74,_0x1dee7a=new Date(),_0x65bf9a=_0x1dee7a[_0x2c81af(0x219)]()[_0x2c81af(0x217)](0x0,0xa),_0x44b15f=_0x1dee7a[_0x2c81af(0x219)]()[_0x2c81af(0x217)](0x0,0x7),_0x39a3e7={'daily':{},'monthly':{},'sessions':{},'profiles':{},'sources':{},'lastRebuiltAt':_0x1dee7a['toISOString']()},_0x28b262=await getAllSessionFiles();for(const _0xcb3e1d of _0x28b262){try{const _0x1387fe=await readSessionJsonl(_0xcb3e1d);if(_0x1387fe[_0x2c81af(0x223)]===0x0)continue;let _0x446aab=0x0;const _0x5d79b5={};let _0x18f74e='';for(const _0x425a3d of _0x1387fe){const _0x328f5c=_0x425a3d[_0x2c81af(0x22e)]??0x0,_0x40de42=_0x425a3d[_0x2c81af(0x20e)]??0x0,_0x45bfbf=_0x425a3d[_0x2c81af(0x209)]+_0x328f5c+_0x40de42,_0x20c23d=getModelPricing(_0x425a3d[_0x2c81af(0x21d)],_0x45bfbf),_0x39d978=calculateTokenCost(_0x425a3d['inputTokens'],_0x425a3d[_0x2c81af(0x22d)],_0x328f5c,_0x40de42,_0x20c23d),_0x4db83e=usdToAiCredits(_0x39d978);_0x446aab+=_0x4db83e;const _0x1d59f8=_0x425a3d[_0x2c81af(0x20a)]||_0x2c81af(0x20c);_0x5d79b5[_0x1d59f8]=_0x45bfbf;_0x425a3d[_0x2c81af(0x20d)]>_0x18f74e&&(_0x18f74e=_0x425a3d['timestamp']);const _0x5c4208=_0x425a3d[_0x2c81af(0x20d)]['slice'](0x0,0xa);!_0x39a3e7[_0x2c81af(0x1f1)][_0x5c4208]&&(_0x39a3e7[_0x2c81af(0x1f1)][_0x5c4208]={'totalCredits':0x0,'entryCount':0x0});_0x39a3e7[_0x2c81af(0x1f1)][_0x5c4208][_0x2c81af(0x227)]+=_0x4db83e,_0x39a3e7[_0x2c81af(0x1f1)][_0x5c4208][_0x2c81af(0x21b)]+=0x1;const _0x5818b8=_0x425a3d[_0x2c81af(0x20d)][_0x2c81af(0x217)](0x0,0x7);!_0x39a3e7[_0x2c81af(0x218)][_0x5818b8]&&(_0x39a3e7['monthly'][_0x5818b8]={'totalCredits':0x0,'entryCount':0x0});_0x39a3e7['monthly'][_0x5818b8][_0x2c81af(0x227)]+=_0x4db83e,_0x39a3e7[_0x2c81af(0x218)][_0x5818b8]['entryCount']+=0x1;const _0x5f3e9d=_0x425a3d[_0x2c81af(0x214)]||'default';!_0x39a3e7[_0x2c81af(0x212)][_0x5f3e9d]&&(_0x39a3e7['profiles'][_0x5f3e9d]={'totalCredits':0x0,'entryCount':0x0,'lastUsedAt':'','todayCredits':0x0,'todayDate':_0x65bf9a,'monthCredits':0x0,'month':_0x44b15f});_0x39a3e7['profiles'][_0x5f3e9d][_0x2c81af(0x227)]+=_0x4db83e,_0x39a3e7[_0x2c81af(0x212)][_0x5f3e9d]['entryCount']+=0x1;_0x425a3d[_0x2c81af(0x20d)]>_0x39a3e7[_0x2c81af(0x212)][_0x5f3e9d]['lastUsedAt']&&(_0x39a3e7['profiles'][_0x5f3e9d][_0x2c81af(0x21f)]=_0x425a3d[_0x2c81af(0x20d)]);_0x5c4208===_0x65bf9a&&(_0x39a3e7[_0x2c81af(0x212)][_0x5f3e9d][_0x2c81af(0x1f4)]+=_0x4db83e);_0x5818b8===_0x44b15f&&(_0x39a3e7[_0x2c81af(0x212)][_0x5f3e9d][_0x2c81af(0x215)]+=_0x4db83e);const _0x4c81bf=_0x425a3d[_0x2c81af(0x210)]||'tdx-claude';!_0x39a3e7[_0x2c81af(0x1f7)][_0x4c81bf]&&(_0x39a3e7[_0x2c81af(0x1f7)][_0x4c81bf]={'totalCredits':0x0,'entryCount':0x0,'todayCredits':0x0,'todayDate':_0x65bf9a,'monthCredits':0x0,'month':_0x44b15f}),_0x39a3e7['sources'][_0x4c81bf][_0x2c81af(0x227)]+=_0x4db83e,_0x39a3e7['sources'][_0x4c81bf][_0x2c81af(0x21b)]+=0x1,_0x5c4208===_0x65bf9a&&(_0x39a3e7[_0x2c81af(0x1f7)][_0x4c81bf]['todayCredits']+=_0x4db83e),_0x5818b8===_0x44b15f&&(_0x39a3e7[_0x2c81af(0x1f7)][_0x4c81bf][_0x2c81af(0x215)]+=_0x4db83e);}_0x39a3e7[_0x2c81af(0x1fa)][_0xcb3e1d]={'totalCredits':_0x446aab,'latestContextTokensBySignature':_0x5d79b5,'createdAt':_0x1387fe[0x0][_0x2c81af(0x20d)],'lastUpdatedAt':_0x18f74e};}catch(_0x4a9b8a){const _0x18492f=await getLogger();_0x18492f[_0x2c81af(0x1f6)]('Failed\x20to\x20process\x20session\x20'+_0xcb3e1d+':',_0x4a9b8a instanceof Error?_0x4a9b8a['message']:String(_0x4a9b8a));continue;}}return cleanupOldEntries(_0x39a3e7),await writeStatsCache(_0x39a3e7),_0x39a3e7;}function cleanupOldEntries(_0x540b12){const _0x209ff6=a79_0x4b74,_0x5e7880=new Date(),_0x406e6c=new Date(_0x5e7880[_0x209ff6(0x21a)]()-0x7*0x18*0x3c*0x3c*0x3e8);for(const _0x539550 of Object[_0x209ff6(0x21c)](_0x540b12[_0x209ff6(0x1f1)])){new Date(_0x539550)<_0x406e6c&&delete _0x540b12[_0x209ff6(0x1f1)][_0x539550];}const _0x1845d1=new Date(_0x5e7880[_0x209ff6(0x1f3)]()-0x1,_0x5e7880[_0x209ff6(0x1f2)](),0x1);for(const _0x473c09 of Object[_0x209ff6(0x21c)](_0x540b12[_0x209ff6(0x218)])){const [_0x5b3414,_0x649fb7]=_0x473c09[_0x209ff6(0x1f0)]('-')[_0x209ff6(0x20b)](Number),_0x9fc58e=new Date(_0x5b3414,_0x649fb7-0x1,0x1);_0x9fc58e<_0x1845d1&&delete _0x540b12[_0x209ff6(0x218)][_0x473c09];}const _0xc915cb=new Date(_0x5e7880['getTime']()-0x1e*0x18*0x3c*0x3c*0x3e8);for(const [_0x2e908d,_0x3c8e03]of Object[_0x209ff6(0x226)](_0x540b12['sessions'])){new Date(_0x3c8e03['lastUpdatedAt'])<_0xc915cb&&delete _0x540b12['sessions'][_0x2e908d];}}export async function getOrUpdateCache(_0x4074b7){const _0x5846c2=_0x4074b7?sanitizeSessionId(_0x4074b7):undefined,_0x477454=await readStatsCache();if(!_0x477454)return rebuildCache();if(_0x5846c2){const _0x336643=await isCacheUpToDate(_0x477454,_0x5846c2);if(!_0x336643)return rebuildCache();}return _0x477454;}export async function getSessionCredits(_0x4d5266){const _0x3095f2=sanitizeSessionId(_0x4d5266),_0x26b48a=await getOrUpdateCache(_0x3095f2),_0x5059fc=_0x26b48a['sessions'][_0x3095f2];if(!_0x5059fc)return 0x0;return _0x5059fc['totalCredits'];}function a79_0x554b(){const _0x2a1a4e=['22852FOLlPI','values','inputTokens','contextSignature','map','default','timestamp','cacheReadInputTokens','23345axyJvO','source','reduce','profiles','max','profile','monthCredits','1sJmpKm','slice','monthly','toISOString','getTime','entryCount','keys','model','month','lastUsedAt','225JrusBG','42bwBkPV','latestContextTokensBySignature','length','2903656RAFipC','message','entries','totalCredits','stringify','Failed\x20to\x20read\x20usage\x20file\x20','stats-cache.json','Invalid\x20session\x20ID:\x20path\x20traversal\x20detected','1067785YJRlVE','outputTokens','cacheCreationInputTokens','init','filter','split','daily','getMonth','getFullYear','todayCredits','.jsonl','warn','sources','4030830dTBmjh','378302czFwFL','sessions','.jsonl:','WARN','credits','11835150vYVNXs','todayDate','Failed\x20to\x20read\x20usage\x20directory:','endsWith','sort','utf-8','replace','object','mtime'];a79_0x554b=function(){return _0x2a1a4e;};return a79_0x554b();}export async function getTodayCredits(){const _0x4cbb1b=a79_0x4b74,_0x4f1b2e=await getOrUpdateCache(),_0x50caf7=new Date()[_0x4cbb1b(0x219)]()['slice'](0x0,0xa),_0x474d86=_0x4f1b2e['daily'][_0x50caf7];if(!_0x474d86)return 0x0;return _0x474d86[_0x4cbb1b(0x227)];}export async function getMonthCredits(){const _0xd02559=a79_0x4b74,_0x7239f6=await getOrUpdateCache(),_0x3a98d7=new Date()['toISOString']()[_0xd02559(0x217)](0x0,0x7),_0x73a2d6=_0x7239f6[_0xd02559(0x218)][_0x3a98d7];if(!_0x73a2d6)return 0x0;return _0x73a2d6[_0xd02559(0x227)];}export async function getSessionStats(_0x3132de){const _0x278507=a79_0x4b74,_0x2ab3f3=sanitizeSessionId(_0x3132de),_0x477e38=await getOrUpdateCache(_0x2ab3f3);return _0x477e38[_0x278507(0x1fa)][_0x2ab3f3]||null;}function getMaxLatestContextTokens(_0x3ac133){const _0x74762e=a79_0x4b74,_0x5e8f62=Object[_0x74762e(0x208)](_0x3ac133);if(_0x5e8f62[_0x74762e(0x223)]===0x0)return 0x0;return Math[_0x74762e(0x213)](..._0x5e8f62);}export async function getUsageStats(_0x18fadd,_0x1b9d8d){const _0x18b752=a79_0x4b74,_0x3bb839=sanitizeSessionId(_0x18fadd),_0x532cb2=await getOrUpdateCache(_0x3bb839),_0x17ce3d=_0x532cb2['sessions'][_0x3bb839],_0xd3423c=new Date()[_0x18b752(0x219)]()[_0x18b752(0x217)](0x0,0xa),_0x26fdf1=new Date()['toISOString']()[_0x18b752(0x217)](0x0,0x7);if(_0x1b9d8d){const _0x570e5d=_0x532cb2[_0x18b752(0x212)]?.[_0x1b9d8d],_0x11be69=_0x570e5d?.[_0x18b752(0x1ff)]===_0xd3423c?_0x570e5d[_0x18b752(0x1f4)]:0x0,_0x36fbf5=_0x570e5d?.[_0x18b752(0x21e)]===_0x26fdf1?_0x570e5d['monthCredits']:0x0;return{'sessionCredits':_0x17ce3d?_0x17ce3d[_0x18b752(0x227)]:0x0,'todayCredits':_0x11be69,'monthCredits':_0x36fbf5,'latestContextTokens':_0x17ce3d?getMaxLatestContextTokens(_0x17ce3d[_0x18b752(0x222)]):0x0};}return{'sessionCredits':_0x17ce3d?_0x17ce3d[_0x18b752(0x227)]:0x0,'todayCredits':_0x532cb2[_0x18b752(0x1f1)][_0xd3423c]?_0x532cb2[_0x18b752(0x1f1)][_0xd3423c][_0x18b752(0x227)]:0x0,'monthCredits':_0x532cb2[_0x18b752(0x218)][_0x26fdf1]?_0x532cb2[_0x18b752(0x218)][_0x26fdf1]['totalCredits']:0x0,'latestContextTokens':_0x17ce3d?getMaxLatestContextTokens(_0x17ce3d['latestContextTokensBySignature']):0x0};}export async function getAllProfileStats(){const _0x2bbca1=a79_0x4b74,_0x36de91=await getOrUpdateCache(),_0x2d0f8e=_0x36de91[_0x2bbca1(0x212)]||{};return Object['entries'](_0x2d0f8e)[_0x2bbca1(0x1ef)](([,_0x5b99ba])=>_0x5b99ba&&typeof _0x5b99ba===_0x2bbca1(0x205))[_0x2bbca1(0x20b)](([_0x2e599c,_0x2ce29a])=>({'profile':_0x2e599c,'credits':_0x2ce29a[_0x2bbca1(0x227)]||0x0,'entryCount':_0x2ce29a['entryCount']||0x0,'lastUsedAt':_0x2ce29a[_0x2bbca1(0x21f)]||''}))[_0x2bbca1(0x202)]((_0x533492,_0x4ca2d3)=>_0x4ca2d3[_0x2bbca1(0x1fd)]-_0x533492[_0x2bbca1(0x1fd)]);}export async function getAllSourceStats(){const _0x3be682=a79_0x4b74,_0x2fd237=await getOrUpdateCache(),_0x326d58=_0x2fd237[_0x3be682(0x1f7)]||{},_0x595fc8=new Date()[_0x3be682(0x219)]()[_0x3be682(0x217)](0x0,0xa),_0x123461=new Date()[_0x3be682(0x219)]()['slice'](0x0,0x7);return Object[_0x3be682(0x226)](_0x326d58)[_0x3be682(0x1ef)](([,_0xda55dc])=>_0xda55dc&&typeof _0xda55dc===_0x3be682(0x205))[_0x3be682(0x20b)](([_0x2cc007,_0x47fced])=>({'source':_0x2cc007,'credits':_0x47fced[_0x3be682(0x227)]||0x0,'todayCredits':_0x47fced['todayDate']===_0x595fc8?_0x47fced['todayCredits']||0x0:0x0,'monthCredits':_0x47fced[_0x3be682(0x21e)]===_0x123461?_0x47fced[_0x3be682(0x215)]||0x0:0x0,'entryCount':_0x47fced[_0x3be682(0x21b)]||0x0}))[_0x3be682(0x202)]((_0x59bd8f,_0x5ddae5)=>_0x5ddae5[_0x3be682(0x1fd)]-_0x59bd8f['credits']);}export async function getUsageSummary(){const _0x9a3651=a79_0x4b74,_0x5c00b8=await getOrUpdateCache(),_0x3b4c9b=_0x5c00b8[_0x9a3651(0x212)]||{},_0x5608b0=new Date()[_0x9a3651(0x219)]()['slice'](0x0,0xa),_0x456840=new Date()[_0x9a3651(0x219)]()['slice'](0x0,0x7),_0x3d7dc1=Object[_0x9a3651(0x208)](_0x3b4c9b)['filter'](_0x5c7a62=>_0x5c7a62&&typeof _0x5c7a62===_0x9a3651(0x205)),_0x58a669=_0x3d7dc1[_0x9a3651(0x211)]((_0xd625db,_0xe53bc7)=>_0xd625db+(_0xe53bc7['totalCredits']||0x0),0x0);return{'todayCredits':_0x5c00b8[_0x9a3651(0x1f1)][_0x5608b0]?_0x5c00b8[_0x9a3651(0x1f1)][_0x5608b0][_0x9a3651(0x227)]||0x0:0x0,'monthCredits':_0x5c00b8[_0x9a3651(0x218)][_0x456840]?_0x5c00b8[_0x9a3651(0x218)][_0x456840][_0x9a3651(0x227)]||0x0:0x0,'totalCredits':_0x58a669,'profileCount':_0x3d7dc1[_0x9a3651(0x223)]};}
@@ -1 +1 @@
1
- const a79_0x47f10f=a79_0x160e;(function(_0x1afe38,_0x1b07b8){const _0x4ad315=a79_0x160e,_0x11289d=_0x1afe38();while(!![]){try{const _0x2cb7fa=-parseInt(_0x4ad315(0x115))/0x1+parseInt(_0x4ad315(0xba))/0x2+parseInt(_0x4ad315(0xee))/0x3*(parseInt(_0x4ad315(0xb0))/0x4)+-parseInt(_0x4ad315(0x103))/0x5+-parseInt(_0x4ad315(0xc3))/0x6*(parseInt(_0x4ad315(0x10e))/0x7)+-parseInt(_0x4ad315(0xcf))/0x8+parseInt(_0x4ad315(0xad))/0x9;if(_0x2cb7fa===_0x1b07b8)break;else _0x11289d['push'](_0x11289d['shift']());}catch(_0x336d98){_0x11289d['push'](_0x11289d['shift']());}}}(a79_0x3d3a,0x5087f));import a79_0x474133 from'fastify';import a79_0x27f5d9 from'@fastify/cors';import{SSEUsageTracker}from'./sse-usage-parser.js';import{appendUsageEntry}from'./claude-usage-tracker.js';import{getVersion}from'../core/version.js';import{isExperimentalAvailable}from'../core/config.js';import{refreshAccessToken}from'../sdk/client/oauth-refresh.js';import{saveOAuthTokens}from'../core/oauth-keychain.js';const DEFAULT_TIMEOUT_MS=0x5*0x3c*0x3e8,TDX_SYSTEM_PROMPT='You\x20are\x20`tdx\x20claude`,\x20an\x20extension\x20of\x20Claude\x20Code\x20with\x20tdx\x20CLI\x20tools\x20(https://tdx.treasuredata.com/)\x20and\x20skills\x20for\x20Treasure\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'+(isExperimentalAvailable()?a79_0x47f10f(0x8c):'')+a79_0x47f10f(0xf6);function extractSessionUUID(_0x480f15){const _0x52693e=_0x480f15['match'](/_session_([a-f0-9-]+)$/i);if(_0x52693e)return _0x52693e[0x1];return _0x480f15;}export function injectSystemPrompt(_0x125fa3,_0x4ef61f){const _0x336bf0=a79_0x47f10f,_0x3efd57=_0x125fa3[_0x336bf0(0xe4)];if(!_0x3efd57)return{..._0x125fa3,'system':_0x4ef61f};if(typeof _0x3efd57===_0x336bf0(0xfb))return{..._0x125fa3,'system':_0x3efd57+'\x0a\x0a'+_0x4ef61f};if(Array[_0x336bf0(0xf7)](_0x3efd57)){const _0xc4a122={'type':_0x336bf0(0x96),'text':_0x4ef61f};return{..._0x125fa3,'system':[..._0x3efd57,_0xc4a122]};}return _0x125fa3;}function a79_0x160e(_0x56d4c0,_0x2c682e){_0x56d4c0=_0x56d4c0-0x7e;const _0x3d3af2=a79_0x3d3a();let _0x160eb2=_0x3d3af2[_0x56d4c0];return _0x160eb2;}function a79_0x3d3a(){const _0x19bfa6=['8598munwnO','[PASSTHROUGH]\x20Forwarding\x20count_tokens\x20to:\x20','[PASSTHROUGH]\x20Upstream\x20error:\x20',',\x20cache_create=','/v1/messages/count_tokens',',\x20output=','content-length','toLowerCase','Content-Type','host','tdx/','setupRoutes','3264656FHmyAf','startPort','127.0.0.1','TimeoutError','timeout','access_token','outputTokens','cache_creation_input_tokens','max_tokens','stop','Authorization','TD1\x20','application/json','messages','type','join','Unknown\x20error','message','name','setErrorHandler','user-agent','system','logger','read','includes','accessToken','EADDRINUSE','User-Agent','parse','authorization','handleMessages','3ZVWotG','slice','writeHead','config','tdx','getReader','X-TD-Client-Version','createServer','|\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|','isArray','now','write','getUsage','string','x-td-','[PASSTHROUGH]\x20Stream\x20error:','Server\x20has\x20not\x20been\x20started\x20yet','[PASSTHROUGH\x20PROXY\x20ERROR]:','Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20','setupJsonParser',',\x20stream=','2211370chXlms','handleCountTokens','timeoutMs','auth','refreshTimer','x-api-key','buildForwardHeaders','Stream\x20interrupted','profile','tdx-claude','code','1939eBTbZU','TD\x20LLM\x20Pass-through\x20Proxy\x20Server','SKIP_HEADERS','llmProxyUrl','/health','metadata','debug','338863TiKdcu','cacheCreationInputTokens','timeout_error','post','flush','method','close','[PASSTHROUGH]\x20Usage:\x20input=','connection','Port\x20','headers','[PASSTHROUGH]\x20Failed\x20to\x20log\x20usage:','info','text/event-stream','expires_at','|\x20Debug\x20agent\x20issues\x20|\x20tdx-skills:agent-debug\x20|\x0a','keep-alive','user_id','server','error','unknown','inputTokens','OPTIONS','logUsage','unref','text','startTokenRefreshTimer','oauth','entries','send',',\x20cache_read=','body','processChunk','indexOf','get','status','refreshTokenIfNeeded','POST','http://127.0.0.1:','raw','/v1/messages','statusText','port','[PASSTHROUGH]\x20OAuth\x20token\x20refreshed\x20successfully','setupMiddleware','model','getAddress','[PASSTHROUGH]\x20','13624758tivbOh','usage','Forwarding\x20to:\x20','592916viSMti','\x20and\x20','url','_boundPort','stringify','input_tokens','header','expiresAt','Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20','handleStreamingResponse','507848nPUkjN','refreshToken','number','event:\x20error\x0adata:\x20','start',':\x20messages=','api_error','register','Error\x20body:\x20'];a79_0x3d3a=function(){return _0x19bfa6;};return a79_0x3d3a();}export function shouldInjectSystemPrompt(_0x22d272){const _0x35d55d=a79_0x47f10f;return!_0x22d272['toLowerCase']()[_0x35d55d(0xe7)]('haiku');}const MIN_REASONING_MAX_TOKENS=0x7d00;export function isOpenAIReasoningModel(_0x30f2b9){const _0x5deb92=_0x30f2b9['toLowerCase']();return/^gpt-5(\.\d+)?(-(mini|nano|pro))?(-\d{4}-\d{2}-\d{2})?$/['test'](_0x5deb92);}export function padMaxTokensForReasoningModel(_0x461874,_0x507bd4){const _0x36d91c=a79_0x47f10f;if(!isOpenAIReasoningModel(_0x507bd4))return _0x461874;const _0x5f2a49=typeof _0x461874[_0x36d91c(0xd7)]===_0x36d91c(0xbc)?_0x461874[_0x36d91c(0xd7)]:0x0;if(_0x5f2a49>=MIN_REASONING_MAX_TOKENS)return _0x461874;return{..._0x461874,'max_tokens':MIN_REASONING_MAX_TOKENS};}export function requestsStream(_0x433f15){return _0x433f15['stream']===!![];}const TOKEN_REFRESH_INTERVAL_MS=0x5*0x3c*0x3e8,TOKEN_EXPIRY_BUFFER_MS=0x5*0x3c*0x3e8;export class PassThroughProxyServer{[a79_0x47f10f(0x8f)];[a79_0x47f10f(0xf1)];[a79_0x47f10f(0xe5)];['_boundPort'];[a79_0x47f10f(0x107)];constructor(_0x2c60ca){const _0x2fa7be=a79_0x47f10f;this[_0x2fa7be(0xf1)]=_0x2c60ca,this[_0x2fa7be(0xe5)]=_0x2c60ca['logger'],this[_0x2fa7be(0x8f)]=this[_0x2fa7be(0xf5)]();}get[a79_0x47f10f(0xa7)](){const _0x994bd5=a79_0x47f10f;if(this['_boundPort']===undefined)throw new Error(_0x994bd5(0xfe));return this[_0x994bd5(0xb3)];}[a79_0x47f10f(0xf5)](){const _0x37caef=a79_0x47f10f,_0x294455=a79_0x474133({'logger':![],'bodyLimit':0x40*0x400*0x400});return this[_0x37caef(0x8f)]=_0x294455,this[_0x37caef(0x101)](),this[_0x37caef(0xa9)](),this[_0x37caef(0xce)](),_0x294455;}[a79_0x47f10f(0x101)](){const _0x7c2cb5=a79_0x47f10f;this[_0x7c2cb5(0x8f)]['addContentTypeParser'](_0x7c2cb5(0xdb),{'parseAs':'string'},(_0xddc7f3,_0xc87f2c,_0x24b09a)=>{const _0x208626=_0x7c2cb5;try{const _0x31f572=JSON[_0x208626(0xeb)](_0xc87f2c);_0x24b09a(null,_0x31f572);}catch(_0x346b5b){_0x24b09a(_0x346b5b,undefined);}});}[a79_0x47f10f(0xa9)](){const _0x218fc2=a79_0x47f10f;this[_0x218fc2(0x8f)][_0x218fc2(0xc1)](a79_0x27f5d9,{'origin':!![],'methods':['GET',_0x218fc2(0xa2),_0x218fc2(0x93)],'allowedHeaders':['Content-Type',_0x218fc2(0xd9),'anthropic-version',_0x218fc2(0x108)]}),this[_0x218fc2(0x8f)][_0x218fc2(0xe2)]((_0x1dedd7,_0x4fff23,_0x51eb07)=>{const _0x3fbc23=_0x218fc2,_0x52e0c9=_0x1dedd7 instanceof Error?_0x1dedd7[_0x3fbc23(0xe0)]:'Unknown\x20error';this[_0x3fbc23(0xe5)][_0x3fbc23(0x90)](_0x3fbc23(0xff),_0x1dedd7),_0x51eb07[_0x3fbc23(0x10d)](0x1f4)[_0x3fbc23(0x9a)]({'type':'error','error':{'type':_0x3fbc23(0xc0),'message':_0x52e0c9}});});}[a79_0x47f10f(0xce)](){const _0x38c5c5=a79_0x47f10f;this[_0x38c5c5(0x8f)]['get'](_0x38c5c5(0x112),async()=>{const _0x481e81=_0x38c5c5;return{'status':'ok','message':_0x481e81(0x10f)};}),this[_0x38c5c5(0x8f)][_0x38c5c5(0x80)](_0x38c5c5(0xa5),async(_0x4ad8c4,_0x3ecb8b)=>{const _0x1933ae=_0x38c5c5;return this[_0x1933ae(0xed)](_0x4ad8c4,_0x3ecb8b);}),this[_0x38c5c5(0x8f)][_0x38c5c5(0x80)](_0x38c5c5(0xc7),async(_0x2d7081,_0x40c227)=>{const _0xe57027=_0x38c5c5;return this[_0xe57027(0x104)](_0x2d7081,_0x40c227);});}static [a79_0x47f10f(0x110)]=new Set([a79_0x47f10f(0xcc),a79_0x47f10f(0x85),a79_0x47f10f(0xc9),'transfer-encoding',a79_0x47f10f(0xec),a79_0x47f10f(0x108),a79_0x47f10f(0xe3)]);[a79_0x47f10f(0x109)](_0x24577a){const _0x1df222=a79_0x47f10f,_0x22ad11={};for(const [_0x35aed8,_0x277e0a]of Object[_0x1df222(0x99)](_0x24577a[_0x1df222(0x87)])){const _0x63e97e=_0x35aed8[_0x1df222(0xca)]();if(PassThroughProxyServer['SKIP_HEADERS']['has'](_0x63e97e))continue;if(_0x63e97e['startsWith'](_0x1df222(0xfc)))continue;if(typeof _0x277e0a==='string')_0x22ad11[_0x35aed8]=_0x277e0a;else Array[_0x1df222(0xf7)](_0x277e0a)&&(_0x22ad11[_0x35aed8]=_0x277e0a[_0x1df222(0xde)](',\x20'));}const _0x466b2=getVersion(),{auth:_0x137602}=this[_0x1df222(0xf1)];return _0x22ad11[_0x1df222(0xd9)]=_0x137602[_0x1df222(0xdd)]===_0x1df222(0x98)?'Bearer\x20'+_0x137602['accessToken']:_0x1df222(0xda)+_0x137602['apiKey'],_0x22ad11[_0x1df222(0xea)]=_0x1df222(0xcd)+_0x466b2,_0x22ad11['X-TD-Client']=_0x1df222(0xf2),_0x22ad11[_0x1df222(0xf4)]=_0x466b2,_0x22ad11;}async[a79_0x47f10f(0xed)](_0x3b2fcc,_0x1b2450){const _0x17af4d=a79_0x47f10f,_0xd7bc2f=_0x3b2fcc[_0x17af4d(0x9c)],_0x1f20e9=requestsStream(_0xd7bc2f),_0x37ef0a=_0xd7bc2f[_0x17af4d(0x113)],_0x3f80c4=_0x37ef0a?.[_0x17af4d(0x8e)]||'default',_0xcfca40=extractSessionUUID(_0x3f80c4),_0x590e79=_0xd7bc2f['model']||_0x17af4d(0x91),_0x4eb8df=shouldInjectSystemPrompt(_0x590e79)?injectSystemPrompt(_0xd7bc2f,TDX_SYSTEM_PROMPT):_0xd7bc2f,_0x2aa56a=padMaxTokensForReasoningModel(_0x4eb8df,_0x590e79),_0xbb6a87=JSON['stringify'](_0x2aa56a),_0x3a5f8d=Array[_0x17af4d(0xf7)](_0xd7bc2f[_0x17af4d(0xdc)])?_0xd7bc2f['messages']['length']:0x0;this[_0x17af4d(0xe5)]['info'](_0x17af4d(0xac)+_0x3b2fcc[_0x17af4d(0x82)]+'\x20'+_0x3b2fcc[_0x17af4d(0xb2)]+_0x17af4d(0xbf)+_0x3a5f8d+',\x20model='+_0x590e79+_0x17af4d(0x102)+_0x1f20e9);const _0x563424=_0x3b2fcc[_0x17af4d(0xb2)][_0x17af4d(0xe7)]('?')?_0x3b2fcc[_0x17af4d(0xb2)][_0x17af4d(0xef)](_0x3b2fcc[_0x17af4d(0xb2)][_0x17af4d(0x9e)]('?')):'',_0x40142e=this[_0x17af4d(0xf1)][_0x17af4d(0x111)]+_0x17af4d(0xa5)+_0x563424,_0x44c808=this['buildForwardHeaders'](_0x3b2fcc);this[_0x17af4d(0xe5)]['debug'](_0x17af4d(0xaf)+_0x40142e);const _0x39678c=this['config'][_0x17af4d(0x105)]||DEFAULT_TIMEOUT_MS;try{const _0x4ae14f=await fetch(_0x40142e,{'method':'POST','headers':_0x44c808,'body':_0xbb6a87,'signal':AbortSignal['timeout'](_0x39678c)});if(!_0x4ae14f['ok']){const _0x38eefa=await _0x4ae14f[_0x17af4d(0x96)]();return this['logger'][_0x17af4d(0x90)](_0x17af4d(0xc5)+_0x4ae14f[_0x17af4d(0xa0)]+'\x20'+_0x4ae14f[_0x17af4d(0xa6)]),this[_0x17af4d(0xe5)]['debug'](_0x17af4d(0xc2)+_0x38eefa),_0x1b2450[_0x17af4d(0x10d)](_0x4ae14f[_0x17af4d(0xa0)]),_0x1b2450['header'](_0x17af4d(0xcb),_0x4ae14f[_0x17af4d(0x87)][_0x17af4d(0x9f)](_0x17af4d(0xcb))||'application/json'),_0x1b2450[_0x17af4d(0x9a)](_0x38eefa);}if(_0x1f20e9&&_0x4ae14f[_0x17af4d(0x9c)])await this['handleStreamingResponse'](_0x4ae14f['body'],_0x1b2450,_0xcfca40,_0x590e79);else{const _0x2c03e3=await _0x4ae14f['text']();_0x1b2450[_0x17af4d(0xb6)](_0x17af4d(0xcb),_0x4ae14f[_0x17af4d(0x87)][_0x17af4d(0x9f)](_0x17af4d(0xcb))||_0x17af4d(0xdb));try{const _0x335353=JSON['parse'](_0x2c03e3);_0x335353[_0x17af4d(0xae)]&&await this[_0x17af4d(0x94)](_0xcfca40,_0x590e79,_0x335353['usage'][_0x17af4d(0xb5)]||0x0,_0x335353[_0x17af4d(0xae)]['output_tokens']||0x0,_0x335353[_0x17af4d(0xae)][_0x17af4d(0xd6)],_0x335353[_0x17af4d(0xae)]['cache_read_input_tokens']);}catch{}return _0x1b2450[_0x17af4d(0x9a)](_0x2c03e3);}}catch(_0x451906){const _0x5b7e7a=_0x451906 instanceof Error?_0x451906['message']:_0x17af4d(0xdf),_0x5e62c2=_0x451906 instanceof Error&&_0x451906[_0x17af4d(0xe1)]===_0x17af4d(0xd2);this[_0x17af4d(0xe5)][_0x17af4d(0x90)]('[PASSTHROUGH]\x20Failed\x20to\x20forward\x20request:',_0x451906),_0x1b2450[_0x17af4d(0x10d)](_0x5e62c2?0x1f8:0x1f7)['send']({'type':'error','error':{'type':_0x5e62c2?_0x17af4d(0x7f):_0x17af4d(0xc0),'message':_0x5e62c2?_0x17af4d(0xb8)+_0x39678c+'ms':_0x17af4d(0x100)+_0x5b7e7a}});}}async[a79_0x47f10f(0xb9)](_0x1e537e,_0x4473bb,_0x258ee8,_0x2c9a8a){const _0x18b55a=a79_0x47f10f;_0x4473bb[_0x18b55a(0xa4)][_0x18b55a(0xf0)](0xc8,{'Content-Type':_0x18b55a(0x8a),'Cache-Control':'no-cache','Connection':_0x18b55a(0x8d)});const _0x1571ef=new SSEUsageTracker(),_0x3a8fef=_0x1e537e[_0x18b55a(0xf3)](),_0x2e8180=new TextDecoder();try{while(!![]){const {done:_0x1c997b,value:_0x2b85c6}=await _0x3a8fef[_0x18b55a(0xe6)]();if(_0x1c997b)break;const _0x2bd73f=_0x2e8180['decode'](_0x2b85c6,{'stream':!![]});_0x1571ef[_0x18b55a(0x9d)](_0x2bd73f),_0x4473bb[_0x18b55a(0xa4)]['write'](_0x2bd73f);}_0x1571ef[_0x18b55a(0x81)]();const _0x3b66ba=_0x1571ef[_0x18b55a(0xfa)]();(_0x3b66ba[_0x18b55a(0x92)]>0x0||_0x3b66ba[_0x18b55a(0xd5)]>0x0)&&await this[_0x18b55a(0x94)](_0x258ee8,_0x2c9a8a,_0x3b66ba[_0x18b55a(0x92)],_0x3b66ba[_0x18b55a(0xd5)],_0x3b66ba[_0x18b55a(0x7e)],_0x3b66ba['cacheReadInputTokens']);}catch(_0x503bf0){this[_0x18b55a(0xe5)][_0x18b55a(0x90)](_0x18b55a(0xfd),_0x503bf0);const _0x5c29bc=_0x18b55a(0xbd)+JSON['stringify']({'type':_0x18b55a(0x90),'error':{'type':'stream_error','message':_0x18b55a(0x10a)}})+'\x0a\x0a';_0x4473bb[_0x18b55a(0xa4)][_0x18b55a(0xf9)](_0x5c29bc);}finally{_0x4473bb[_0x18b55a(0xa4)]['end']();}}async['handleCountTokens'](_0x32623d,_0x28dc8d){const _0x11bc37=a79_0x47f10f,_0x4e6d1d=_0x32623d[_0x11bc37(0x9c)],_0x1e3472=_0x32623d[_0x11bc37(0xb2)][_0x11bc37(0xe7)]('?')?_0x32623d[_0x11bc37(0xb2)][_0x11bc37(0xef)](_0x32623d[_0x11bc37(0xb2)][_0x11bc37(0x9e)]('?')):'',_0x1058ad=this[_0x11bc37(0xf1)][_0x11bc37(0x111)]+_0x11bc37(0xc7)+_0x1e3472,_0x3e7732=this['buildForwardHeaders'](_0x32623d),_0xf4e9e1=_0x4e6d1d[_0x11bc37(0xaa)]||_0x11bc37(0x91),_0x40bcb2=shouldInjectSystemPrompt(_0xf4e9e1)?injectSystemPrompt(_0x4e6d1d,TDX_SYSTEM_PROMPT):_0x4e6d1d,_0x5166ce=JSON[_0x11bc37(0xb4)](_0x40bcb2);this[_0x11bc37(0xe5)][_0x11bc37(0x114)](_0x11bc37(0xc4)+_0x1058ad);const _0x1db97d=this[_0x11bc37(0xf1)][_0x11bc37(0x105)]||DEFAULT_TIMEOUT_MS;try{const _0x3899a8=await fetch(_0x1058ad,{'method':_0x11bc37(0xa2),'headers':_0x3e7732,'body':_0x5166ce,'signal':AbortSignal[_0x11bc37(0xd3)](_0x1db97d)}),_0x46bb67=await _0x3899a8[_0x11bc37(0x96)]();return _0x28dc8d[_0x11bc37(0x10d)](_0x3899a8[_0x11bc37(0xa0)]),_0x28dc8d[_0x11bc37(0xb6)](_0x11bc37(0xcb),_0x3899a8['headers'][_0x11bc37(0x9f)](_0x11bc37(0xcb))||_0x11bc37(0xdb)),_0x28dc8d['send'](_0x46bb67);}catch(_0x126651){const _0x5c3901=_0x126651 instanceof Error?_0x126651[_0x11bc37(0xe0)]:_0x11bc37(0xdf),_0x2226b8=_0x126651 instanceof Error&&_0x126651['name']==='TimeoutError';this[_0x11bc37(0xe5)][_0x11bc37(0x90)]('[PASSTHROUGH]\x20Failed\x20to\x20forward\x20count_tokens\x20request:',_0x126651),_0x28dc8d[_0x11bc37(0x10d)](_0x2226b8?0x1f8:0x1f7)[_0x11bc37(0x9a)]({'type':_0x11bc37(0x90),'error':{'type':_0x2226b8?_0x11bc37(0x7f):_0x11bc37(0xc0),'message':_0x2226b8?_0x11bc37(0xb8)+_0x1db97d+'ms':_0x11bc37(0x100)+_0x5c3901}});}}async[a79_0x47f10f(0x94)](_0x3424c4,_0x56d6b6,_0x56c536,_0x488bde,_0x8f0499,_0x5450cd){const _0x15c428=a79_0x47f10f,_0x49f66f={'timestamp':new Date()['toISOString'](),'model':_0x56d6b6,'inputTokens':_0x56c536,'outputTokens':_0x488bde,'cacheCreationInputTokens':_0x8f0499,'cacheReadInputTokens':_0x5450cd,'profile':this[_0x15c428(0xf1)][_0x15c428(0x10b)],'source':_0x15c428(0x10c)},_0x459004=_0x8f0499||_0x5450cd?_0x15c428(0xc6)+(_0x8f0499||0x0)+_0x15c428(0x9b)+(_0x5450cd||0x0):'';this[_0x15c428(0xe5)][_0x15c428(0x114)](_0x15c428(0x84)+_0x56c536+_0x15c428(0xc8)+_0x488bde+_0x459004+',\x20model='+_0x56d6b6);try{await appendUsageEntry(_0x3424c4,_0x49f66f);}catch(_0x40f73f){this[_0x15c428(0xe5)]['error'](_0x15c428(0x88),_0x40f73f);}}[a79_0x47f10f(0x97)](){const _0x2aaa64=a79_0x47f10f;if(this['config'][_0x2aaa64(0x106)][_0x2aaa64(0xdd)]!=='oauth')return;this['refreshTimer']=setInterval(()=>{const _0x4d9bed=_0x2aaa64;void this[_0x4d9bed(0xa1)]();},TOKEN_REFRESH_INTERVAL_MS),this['refreshTimer'][_0x2aaa64(0x95)]();}async[a79_0x47f10f(0xa1)](){const _0x2f708f=a79_0x47f10f,{auth:_0x521c4a}=this[_0x2f708f(0xf1)];if(_0x521c4a[_0x2f708f(0xdd)]!==_0x2f708f(0x98))return;const _0x5aaa43=!_0x521c4a['expiresAt']||_0x521c4a[_0x2f708f(0xb7)]<Date[_0x2f708f(0xf8)]()+TOKEN_EXPIRY_BUFFER_MS;if(!_0x5aaa43)return;try{const _0x569751=await refreshAccessToken(_0x521c4a['consoleUrl'],_0x521c4a[_0x2f708f(0xbb)]);_0x521c4a[_0x2f708f(0xe8)]=_0x569751[_0x2f708f(0xd4)],_0x521c4a[_0x2f708f(0xbb)]=_0x569751['refresh_token'],_0x521c4a['expiresAt']=_0x569751[_0x2f708f(0x8b)],await saveOAuthTokens(_0x569751,this['config'][_0x2f708f(0x10b)]),this[_0x2f708f(0xe5)][_0x2f708f(0x89)](_0x2f708f(0xa8));}catch(_0x285e91){this[_0x2f708f(0xe5)][_0x2f708f(0x90)]('[PASSTHROUGH]\x20OAuth\x20token\x20refresh\x20failed:',_0x285e91);}}async[a79_0x47f10f(0xbe)](){const _0x2490eb=a79_0x47f10f,_0xb17a15=this[_0x2490eb(0xf1)]['maxPortAttempts']??0x64;for(let _0xc7aab3=0x0;_0xc7aab3<_0xb17a15;_0xc7aab3++){const _0x395e8e=this[_0x2490eb(0xf1)]['startPort']+_0xc7aab3;try{await this[_0x2490eb(0x8f)]['listen']({'port':_0x395e8e,'host':_0x2490eb(0xd1)}),this[_0x2490eb(0xb3)]=_0x395e8e,this[_0x2490eb(0xe5)][_0x2490eb(0x89)]('Pass-through\x20proxy\x20server\x20started\x20on\x20port\x20'+_0x395e8e),this[_0x2490eb(0xe5)][_0x2490eb(0x89)](_0x2490eb(0xaf)+this['config']['llmProxyUrl']),this[_0x2490eb(0x97)]();return;}catch(_0x2211d3){const _0x2b0b11=_0x2211d3 instanceof Error&&'code'in _0x2211d3&&_0x2211d3[_0x2490eb(0x10d)]===_0x2490eb(0xe9);if(!_0x2b0b11)throw _0x2211d3;this[_0x2490eb(0xe5)][_0x2490eb(0x114)](_0x2490eb(0x86)+_0x395e8e+'\x20in\x20use,\x20trying\x20next...'),this['createServer']();}}const _0x4638ff=this[_0x2490eb(0xf1)][_0x2490eb(0xd0)]+_0xb17a15-0x1;throw new Error('No\x20available\x20port\x20found\x20between\x20'+this[_0x2490eb(0xf1)]['startPort']+_0x2490eb(0xb1)+_0x4638ff);}async[a79_0x47f10f(0xd8)](){const _0x474d1e=a79_0x47f10f;this[_0x474d1e(0x107)]&&(clearInterval(this['refreshTimer']),this[_0x474d1e(0x107)]=undefined),await this[_0x474d1e(0x8f)][_0x474d1e(0x83)](),this[_0x474d1e(0xe5)][_0x474d1e(0x89)]('Pass-through\x20proxy\x20server\x20stopped');}[a79_0x47f10f(0xab)](){const _0x328f53=a79_0x47f10f;return _0x328f53(0xa3)+this[_0x328f53(0xa7)];}}
1
+ const a80_0x3a2fa5=a80_0x1958;(function(_0x2d7b69,_0x26c35d){const _0xfd372f=a80_0x1958,_0x3530e8=_0x2d7b69();while(!![]){try{const _0x4721d8=-parseInt(_0xfd372f(0x1fa))/0x1+parseInt(_0xfd372f(0x217))/0x2+parseInt(_0xfd372f(0x226))/0x3*(parseInt(_0xfd372f(0x1b1))/0x4)+-parseInt(_0xfd372f(0x1aa))/0x5*(parseInt(_0xfd372f(0x18f))/0x6)+-parseInt(_0xfd372f(0x1bf))/0x7*(-parseInt(_0xfd372f(0x1e7))/0x8)+parseInt(_0xfd372f(0x1f8))/0x9*(parseInt(_0xfd372f(0x21f))/0xa)+-parseInt(_0xfd372f(0x1a3))/0xb;if(_0x4721d8===_0x26c35d)break;else _0x3530e8['push'](_0x3530e8['shift']());}catch(_0x104252){_0x3530e8['push'](_0x3530e8['shift']());}}}(a80_0x571a,0x4a404));import a80_0x12ba84 from'fastify';function a80_0x1958(_0x4b4740,_0x27ad9b){_0x4b4740=_0x4b4740-0x185;const _0x571a00=a80_0x571a();let _0x1958f3=_0x571a00[_0x4b4740];return _0x1958f3;}import a80_0x232a32 from'@fastify/cors';import{SSEUsageTracker}from'./sse-usage-parser.js';import{appendUsageEntry}from'./claude-usage-tracker.js';import{getVersion}from'../core/version.js';import{isExperimentalAvailable}from'../core/config.js';import{refreshAccessToken}from'../sdk/client/oauth-refresh.js';import{saveOAuthTokens}from'../core/oauth-keychain.js';const DEFAULT_TIMEOUT_MS=0x5*0x3c*0x3e8,TDX_SYSTEM_PROMPT=a80_0x3a2fa5(0x1d5)+(isExperimentalAvailable()?a80_0x3a2fa5(0x1c8):'')+'|\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(_0x22d5b9){const _0x4b98e5=a80_0x3a2fa5,_0x41f1f0=_0x22d5b9[_0x4b98e5(0x1fe)](/_session_([a-f0-9-]+)$/i);if(_0x41f1f0)return _0x41f1f0[0x1];return _0x22d5b9;}export function injectSystemPrompt(_0x406165,_0x250af2){const _0x4f7955=a80_0x3a2fa5,_0xce4ba2=_0x406165['system'];if(!_0xce4ba2)return{..._0x406165,'system':_0x250af2};if(typeof _0xce4ba2===_0x4f7955(0x206))return{..._0x406165,'system':_0xce4ba2+'\x0a\x0a'+_0x250af2};if(Array['isArray'](_0xce4ba2)){const _0x5850eb={'type':_0x4f7955(0x1f0),'text':_0x250af2};return{..._0x406165,'system':[..._0xce4ba2,_0x5850eb]};}return _0x406165;}export function shouldInjectSystemPrompt(_0x325fe5){const _0x3fcfde=a80_0x3a2fa5;return!_0x325fe5[_0x3fcfde(0x1b8)]()[_0x3fcfde(0x1bb)]('haiku');}const MIN_REASONING_MAX_TOKENS=0x7d00;function a80_0x571a(){const _0x189f46=['text','refresh_token','toISOString','cacheReadInputTokens','X-TD-Client-Version','http://127.0.0.1:','refreshTokenIfNeeded','Request\x20to\x20TD\x20LLM\x20Proxy\x20timed\x20out\x20after\x20','3797487KGTgiX','writeHead','430476qPAvFD','application/json','Forwarding\x20to:\x20','createServer','match','info','[PASSTHROUGH]\x20','cache_creation_input_tokens','Pass-through\x20proxy\x20server\x20stopped','tdx/','Unknown\x20error','inputTokens','string','timeout','TD\x20LLM\x20Pass-through\x20Proxy\x20Server','consoleUrl','cache_read_input_tokens','unref','addContentTypeParser','get','post','stream_error','buildForwardHeaders','[PASSTHROUGH]\x20OAuth\x20token\x20refreshed\x20successfully','processChunk','anthropic-version','startPort','raw','startsWith','370420mwLNrW','messages','body','\x20in\x20use,\x20trying\x20next...','text/event-stream','length','[PASSTHROUGH\x20PROXY\x20ERROR]:','setupMiddleware','10EWSVnp','keep-alive','slice','Pass-through\x20proxy\x20server\x20started\x20on\x20port\x20','Server\x20has\x20not\x20been\x20started\x20yet','/health','_boundPort','429fETrTJ','indexOf','model','startTokenRefreshTimer','message','read','expiresAt','flush','isArray','user_id','OPTIONS','18OlqMEw','host','tdx-claude','no-cache','authorization','default','url','refreshTimer','x-api-key','Stream\x20interrupted','write','join','api_error','code',',\x20model=','llmProxyUrl','now','end','content-length','error','2044889wzHmys','Authorization','[PASSTHROUGH]\x20Upstream\x20error:\x20','expires_at','getReader','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20request:','status','550210BbIfUu','header','stringify','[PASSTHROUGH]\x20Forwarding\x20count_tokens\x20to:\x20','TD1\x20','stream','\x20and\x20','5668nqxWGa',':\x20messages=','timeoutMs','close','127.0.0.1','User-Agent','[PASSTHROUGH]\x20Failed\x20to\x20forward\x20count_tokens\x20request:','toLowerCase','handleCountTokens','unknown','includes','entries','EADDRINUSE','port','3085943zjKJnB','output_tokens','metadata','apiKey','config','refreshToken','profile','server','name','|\x20Debug\x20agent\x20issues\x20|\x20tdx-skills:agent-debug\x20|\x0a','outputTokens','transfer-encoding','debug','usage','[PASSTHROUGH]\x20Usage:\x20input=','Error\x20body:\x20','/v1/messages/count_tokens','POST','parse','logger','access_token','oauth','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','decode','x-td-','test','Bearer\x20','Content-Type','Failed\x20to\x20connect\x20to\x20TD\x20LLM\x20Proxy:\x20','SKIP_HEADERS','send','listen','max_tokens','No\x20available\x20port\x20found\x20between\x20','stop',',\x20cache_create=','setErrorHandler','TimeoutError','input_tokens','handleStreamingResponse','8DRxIce','auth','/v1/messages','timeout_error',',\x20stream=','handleMessages','accessToken','setupRoutes','headers'];a80_0x571a=function(){return _0x189f46;};return a80_0x571a();}export function isOpenAIReasoningModel(_0x523a9c){const _0x40bc09=a80_0x3a2fa5,_0x24cafc=_0x523a9c[_0x40bc09(0x1b8)]();return/^gpt-5(\.\d+)?(-(mini|nano|pro))?(-\d{4}-\d{2}-\d{2})?$/[_0x40bc09(0x1d8)](_0x24cafc);}export function padMaxTokensForReasoningModel(_0x5445aa,_0x2c17a7){const _0x2254ab=a80_0x3a2fa5;if(!isOpenAIReasoningModel(_0x2c17a7))return _0x5445aa;const _0x3da5c3=typeof _0x5445aa[_0x2254ab(0x1df)]==='number'?_0x5445aa[_0x2254ab(0x1df)]:0x0;if(_0x3da5c3>=MIN_REASONING_MAX_TOKENS)return _0x5445aa;return{..._0x5445aa,'max_tokens':MIN_REASONING_MAX_TOKENS};}export function requestsStream(_0x320ecd){const _0x531b63=a80_0x3a2fa5;return _0x320ecd[_0x531b63(0x1af)]===!![];}const TOKEN_REFRESH_INTERVAL_MS=0x5*0x3c*0x3e8,TOKEN_EXPIRY_BUFFER_MS=0x5*0x3c*0x3e8;export class PassThroughProxyServer{[a80_0x3a2fa5(0x1c6)];[a80_0x3a2fa5(0x1c3)];[a80_0x3a2fa5(0x1d2)];['_boundPort'];[a80_0x3a2fa5(0x196)];constructor(_0x4ee6c7){const _0x2af9a7=a80_0x3a2fa5;this[_0x2af9a7(0x1c3)]=_0x4ee6c7,this['logger']=_0x4ee6c7[_0x2af9a7(0x1d2)],this['server']=this[_0x2af9a7(0x1fd)]();}get[a80_0x3a2fa5(0x1be)](){const _0x36e1ef=a80_0x3a2fa5;if(this[_0x36e1ef(0x225)]===undefined)throw new Error(_0x36e1ef(0x223));return this[_0x36e1ef(0x225)];}[a80_0x3a2fa5(0x1fd)](){const _0xa29708=a80_0x3a2fa5,_0x4d518b=a80_0x12ba84({'logger':![],'bodyLimit':0x40*0x400*0x400});return this[_0xa29708(0x1c6)]=_0x4d518b,this['setupJsonParser'](),this[_0xa29708(0x21e)](),this['setupRoutes'](),_0x4d518b;}['setupJsonParser'](){const _0x5d30d3=a80_0x3a2fa5;this[_0x5d30d3(0x1c6)][_0x5d30d3(0x20c)](_0x5d30d3(0x1fb),{'parseAs':_0x5d30d3(0x206)},(_0x34f08d,_0x103704,_0x225ab9)=>{const _0x22bec5=_0x5d30d3;try{const _0x4b9edf=JSON[_0x22bec5(0x1d1)](_0x103704);_0x225ab9(null,_0x4b9edf);}catch(_0x5b2c62){_0x225ab9(_0x5b2c62,undefined);}});}[a80_0x3a2fa5(0x21e)](){const _0x325c93=a80_0x3a2fa5;this['server']['register'](a80_0x232a32,{'origin':!![],'methods':['GET','POST',_0x325c93(0x18e)],'allowedHeaders':[_0x325c93(0x1da),_0x325c93(0x1a4),_0x325c93(0x213),_0x325c93(0x197)]}),this[_0x325c93(0x1c6)][_0x325c93(0x1e3)]((_0x2980b1,_0x58e43b,_0xb73739)=>{const _0x2ec8c2=_0x325c93,_0x4c4bb0=_0x2980b1 instanceof Error?_0x2980b1[_0x2ec8c2(0x188)]:_0x2ec8c2(0x204);this[_0x2ec8c2(0x1d2)][_0x2ec8c2(0x1a2)](_0x2ec8c2(0x21d),_0x2980b1),_0xb73739['code'](0x1f4)[_0x2ec8c2(0x1dd)]({'type':_0x2ec8c2(0x1a2),'error':{'type':_0x2ec8c2(0x19b),'message':_0x4c4bb0}});});}[a80_0x3a2fa5(0x1ee)](){const _0x19c7cd=a80_0x3a2fa5;this[_0x19c7cd(0x1c6)][_0x19c7cd(0x20d)](_0x19c7cd(0x224),async()=>{const _0x4e27e4=_0x19c7cd;return{'status':'ok','message':_0x4e27e4(0x208)};}),this['server'][_0x19c7cd(0x20e)]('/v1/messages',async(_0x1c4456,_0x36387d)=>{return this['handleMessages'](_0x1c4456,_0x36387d);}),this[_0x19c7cd(0x1c6)]['post'](_0x19c7cd(0x1cf),async(_0x19070b,_0x53f64f)=>{const _0xf32bc5=_0x19c7cd;return this[_0xf32bc5(0x1b9)](_0x19070b,_0x53f64f);});}static ['SKIP_HEADERS']=new Set([a80_0x3a2fa5(0x190),'connection',a80_0x3a2fa5(0x1a1),a80_0x3a2fa5(0x1ca),a80_0x3a2fa5(0x193),a80_0x3a2fa5(0x197),'user-agent']);['buildForwardHeaders'](_0x1a14bf){const _0x22e101=a80_0x3a2fa5,_0x5613e0={};for(const [_0x2fd132,_0x149ce0]of Object[_0x22e101(0x1bc)](_0x1a14bf['headers'])){const _0x14b629=_0x2fd132['toLowerCase']();if(PassThroughProxyServer[_0x22e101(0x1dc)]['has'](_0x14b629))continue;if(_0x14b629[_0x22e101(0x216)](_0x22e101(0x1d7)))continue;if(typeof _0x149ce0===_0x22e101(0x206))_0x5613e0[_0x2fd132]=_0x149ce0;else Array[_0x22e101(0x18c)](_0x149ce0)&&(_0x5613e0[_0x2fd132]=_0x149ce0[_0x22e101(0x19a)](',\x20'));}const _0x487e0c=getVersion(),{auth:_0x4e209c}=this[_0x22e101(0x1c3)];return _0x5613e0[_0x22e101(0x1a4)]=_0x4e209c['type']===_0x22e101(0x1d4)?_0x22e101(0x1d9)+_0x4e209c[_0x22e101(0x1ed)]:_0x22e101(0x1ae)+_0x4e209c[_0x22e101(0x1c2)],_0x5613e0[_0x22e101(0x1b6)]=_0x22e101(0x203)+_0x487e0c,_0x5613e0['X-TD-Client']='tdx',_0x5613e0[_0x22e101(0x1f4)]=_0x487e0c,_0x5613e0;}async[a80_0x3a2fa5(0x1ec)](_0x1c5107,_0x14f9fe){const _0x516adc=a80_0x3a2fa5,_0x59dc0d=_0x1c5107[_0x516adc(0x219)],_0x83eefb=requestsStream(_0x59dc0d),_0x993efe=_0x59dc0d[_0x516adc(0x1c1)],_0x3a43b7=_0x993efe?.[_0x516adc(0x18d)]||_0x516adc(0x194),_0x207c6c=extractSessionUUID(_0x3a43b7),_0x1f2901=_0x59dc0d[_0x516adc(0x186)]||_0x516adc(0x1ba),_0x1404b8=shouldInjectSystemPrompt(_0x1f2901)?injectSystemPrompt(_0x59dc0d,TDX_SYSTEM_PROMPT):_0x59dc0d,_0x4ba5e1=padMaxTokensForReasoningModel(_0x1404b8,_0x1f2901),_0x71a9e9=JSON['stringify'](_0x4ba5e1),_0x12a3e1=Array[_0x516adc(0x18c)](_0x59dc0d['messages'])?_0x59dc0d[_0x516adc(0x218)][_0x516adc(0x21c)]:0x0;this[_0x516adc(0x1d2)][_0x516adc(0x1ff)](_0x516adc(0x200)+_0x1c5107['method']+'\x20'+_0x1c5107['url']+_0x516adc(0x1b2)+_0x12a3e1+',\x20model='+_0x1f2901+_0x516adc(0x1eb)+_0x83eefb);const _0x490b5c=_0x1c5107[_0x516adc(0x195)]['includes']('?')?_0x1c5107['url'][_0x516adc(0x221)](_0x1c5107[_0x516adc(0x195)][_0x516adc(0x185)]('?')):'',_0x1018ee=this[_0x516adc(0x1c3)][_0x516adc(0x19e)]+_0x516adc(0x1e9)+_0x490b5c,_0x47f7a5=this['buildForwardHeaders'](_0x1c5107);this[_0x516adc(0x1d2)][_0x516adc(0x1cb)](_0x516adc(0x1fc)+_0x1018ee);const _0xfa0804=this[_0x516adc(0x1c3)][_0x516adc(0x1b3)]||DEFAULT_TIMEOUT_MS;try{const _0x4aa893=await fetch(_0x1018ee,{'method':_0x516adc(0x1d0),'headers':_0x47f7a5,'body':_0x71a9e9,'signal':AbortSignal['timeout'](_0xfa0804)});if(!_0x4aa893['ok']){const _0x5e7ac8=await _0x4aa893['text']();return this[_0x516adc(0x1d2)]['error'](_0x516adc(0x1a5)+_0x4aa893[_0x516adc(0x1a9)]+'\x20'+_0x4aa893['statusText']),this['logger']['debug'](_0x516adc(0x1ce)+_0x5e7ac8),_0x14f9fe[_0x516adc(0x19c)](_0x4aa893[_0x516adc(0x1a9)]),_0x14f9fe['header'](_0x516adc(0x1da),_0x4aa893[_0x516adc(0x1ef)]['get'](_0x516adc(0x1da))||'application/json'),_0x14f9fe[_0x516adc(0x1dd)](_0x5e7ac8);}if(_0x83eefb&&_0x4aa893[_0x516adc(0x219)])await this['handleStreamingResponse'](_0x4aa893['body'],_0x14f9fe,_0x207c6c,_0x1f2901);else{const _0x392a45=await _0x4aa893['text']();_0x14f9fe[_0x516adc(0x1ab)](_0x516adc(0x1da),_0x4aa893[_0x516adc(0x1ef)][_0x516adc(0x20d)](_0x516adc(0x1da))||_0x516adc(0x1fb));try{const _0x48ec32=JSON[_0x516adc(0x1d1)](_0x392a45);_0x48ec32[_0x516adc(0x1cc)]&&await this['logUsage'](_0x207c6c,_0x1f2901,_0x48ec32[_0x516adc(0x1cc)][_0x516adc(0x1e5)]||0x0,_0x48ec32[_0x516adc(0x1cc)][_0x516adc(0x1c0)]||0x0,_0x48ec32[_0x516adc(0x1cc)][_0x516adc(0x201)],_0x48ec32['usage'][_0x516adc(0x20a)]);}catch{}return _0x14f9fe[_0x516adc(0x1dd)](_0x392a45);}}catch(_0x343997){const _0x116c68=_0x343997 instanceof Error?_0x343997[_0x516adc(0x188)]:_0x516adc(0x204),_0x424236=_0x343997 instanceof Error&&_0x343997[_0x516adc(0x1c7)]===_0x516adc(0x1e4);this['logger']['error'](_0x516adc(0x1a8),_0x343997),_0x14f9fe[_0x516adc(0x19c)](_0x424236?0x1f8:0x1f7)[_0x516adc(0x1dd)]({'type':_0x516adc(0x1a2),'error':{'type':_0x424236?'timeout_error':_0x516adc(0x19b),'message':_0x424236?_0x516adc(0x1f7)+_0xfa0804+'ms':_0x516adc(0x1db)+_0x116c68}});}}async[a80_0x3a2fa5(0x1e6)](_0x4e784d,_0x12101f,_0x365c08,_0x5a644e){const _0x5794bd=a80_0x3a2fa5;_0x12101f[_0x5794bd(0x215)][_0x5794bd(0x1f9)](0xc8,{'Content-Type':_0x5794bd(0x21b),'Cache-Control':_0x5794bd(0x192),'Connection':_0x5794bd(0x220)});const _0x4caecc=new SSEUsageTracker(),_0x4b4c9b=_0x4e784d[_0x5794bd(0x1a7)](),_0x389dd6=new TextDecoder();try{while(!![]){const {done:_0x2a97fe,value:_0x5850e7}=await _0x4b4c9b[_0x5794bd(0x189)]();if(_0x2a97fe)break;const _0x5e5687=_0x389dd6[_0x5794bd(0x1d6)](_0x5850e7,{'stream':!![]});_0x4caecc[_0x5794bd(0x212)](_0x5e5687),_0x12101f['raw'][_0x5794bd(0x199)](_0x5e5687);}_0x4caecc[_0x5794bd(0x18b)]();const _0x5c0214=_0x4caecc['getUsage']();(_0x5c0214[_0x5794bd(0x205)]>0x0||_0x5c0214['outputTokens']>0x0)&&await this['logUsage'](_0x365c08,_0x5a644e,_0x5c0214[_0x5794bd(0x205)],_0x5c0214[_0x5794bd(0x1c9)],_0x5c0214['cacheCreationInputTokens'],_0x5c0214[_0x5794bd(0x1f3)]);}catch(_0x5a292d){this['logger'][_0x5794bd(0x1a2)]('[PASSTHROUGH]\x20Stream\x20error:',_0x5a292d);const _0x4cef55='event:\x20error\x0adata:\x20'+JSON[_0x5794bd(0x1ac)]({'type':'error','error':{'type':_0x5794bd(0x20f),'message':_0x5794bd(0x198)}})+'\x0a\x0a';_0x12101f['raw']['write'](_0x4cef55);}finally{_0x12101f[_0x5794bd(0x215)][_0x5794bd(0x1a0)]();}}async['handleCountTokens'](_0x5d2096,_0x2369a8){const _0x2ad6ba=a80_0x3a2fa5,_0x2203cb=_0x5d2096[_0x2ad6ba(0x219)],_0x193747=_0x5d2096['url'][_0x2ad6ba(0x1bb)]('?')?_0x5d2096[_0x2ad6ba(0x195)][_0x2ad6ba(0x221)](_0x5d2096['url']['indexOf']('?')):'',_0x319ac1=this[_0x2ad6ba(0x1c3)]['llmProxyUrl']+_0x2ad6ba(0x1cf)+_0x193747,_0xfc9cd4=this[_0x2ad6ba(0x210)](_0x5d2096),_0xcda2bd=_0x2203cb[_0x2ad6ba(0x186)]||'unknown',_0x6114b4=shouldInjectSystemPrompt(_0xcda2bd)?injectSystemPrompt(_0x2203cb,TDX_SYSTEM_PROMPT):_0x2203cb,_0x192104=JSON[_0x2ad6ba(0x1ac)](_0x6114b4);this[_0x2ad6ba(0x1d2)]['debug'](_0x2ad6ba(0x1ad)+_0x319ac1);const _0xa0f845=this['config']['timeoutMs']||DEFAULT_TIMEOUT_MS;try{const _0x2110e5=await fetch(_0x319ac1,{'method':'POST','headers':_0xfc9cd4,'body':_0x192104,'signal':AbortSignal[_0x2ad6ba(0x207)](_0xa0f845)}),_0x455754=await _0x2110e5['text']();return _0x2369a8[_0x2ad6ba(0x19c)](_0x2110e5[_0x2ad6ba(0x1a9)]),_0x2369a8[_0x2ad6ba(0x1ab)](_0x2ad6ba(0x1da),_0x2110e5[_0x2ad6ba(0x1ef)][_0x2ad6ba(0x20d)]('Content-Type')||_0x2ad6ba(0x1fb)),_0x2369a8[_0x2ad6ba(0x1dd)](_0x455754);}catch(_0x223b2b){const _0x479357=_0x223b2b instanceof Error?_0x223b2b[_0x2ad6ba(0x188)]:_0x2ad6ba(0x204),_0x37c0fe=_0x223b2b instanceof Error&&_0x223b2b[_0x2ad6ba(0x1c7)]==='TimeoutError';this[_0x2ad6ba(0x1d2)][_0x2ad6ba(0x1a2)](_0x2ad6ba(0x1b7),_0x223b2b),_0x2369a8[_0x2ad6ba(0x19c)](_0x37c0fe?0x1f8:0x1f7)[_0x2ad6ba(0x1dd)]({'type':_0x2ad6ba(0x1a2),'error':{'type':_0x37c0fe?_0x2ad6ba(0x1ea):_0x2ad6ba(0x19b),'message':_0x37c0fe?_0x2ad6ba(0x1f7)+_0xa0f845+'ms':_0x2ad6ba(0x1db)+_0x479357}});}}async['logUsage'](_0x21250a,_0x11a7ec,_0x13a211,_0x586112,_0x2cd97b,_0x39addd){const _0x30988f=a80_0x3a2fa5,_0x3ad15d={'timestamp':new Date()[_0x30988f(0x1f2)](),'model':_0x11a7ec,'inputTokens':_0x13a211,'outputTokens':_0x586112,'cacheCreationInputTokens':_0x2cd97b,'cacheReadInputTokens':_0x39addd,'profile':this[_0x30988f(0x1c3)][_0x30988f(0x1c5)],'source':_0x30988f(0x191)},_0x519b28=_0x2cd97b||_0x39addd?_0x30988f(0x1e2)+(_0x2cd97b||0x0)+',\x20cache_read='+(_0x39addd||0x0):'';this['logger']['debug'](_0x30988f(0x1cd)+_0x13a211+',\x20output='+_0x586112+_0x519b28+_0x30988f(0x19d)+_0x11a7ec);try{await appendUsageEntry(_0x21250a,_0x3ad15d);}catch(_0x565fbf){this[_0x30988f(0x1d2)][_0x30988f(0x1a2)]('[PASSTHROUGH]\x20Failed\x20to\x20log\x20usage:',_0x565fbf);}}[a80_0x3a2fa5(0x187)](){const _0x598e11=a80_0x3a2fa5;if(this[_0x598e11(0x1c3)][_0x598e11(0x1e8)]['type']!==_0x598e11(0x1d4))return;this[_0x598e11(0x196)]=setInterval(()=>{const _0x8c7d83=_0x598e11;void this[_0x8c7d83(0x1f6)]();},TOKEN_REFRESH_INTERVAL_MS),this[_0x598e11(0x196)][_0x598e11(0x20b)]();}async[a80_0x3a2fa5(0x1f6)](){const _0xda6a87=a80_0x3a2fa5,{auth:_0x33da25}=this[_0xda6a87(0x1c3)];if(_0x33da25['type']!==_0xda6a87(0x1d4))return;const _0x51f2a1=!_0x33da25[_0xda6a87(0x18a)]||_0x33da25['expiresAt']<Date[_0xda6a87(0x19f)]()+TOKEN_EXPIRY_BUFFER_MS;if(!_0x51f2a1)return;try{const _0x75bed4=await refreshAccessToken(_0x33da25[_0xda6a87(0x209)],_0x33da25[_0xda6a87(0x1c4)]);_0x33da25[_0xda6a87(0x1ed)]=_0x75bed4[_0xda6a87(0x1d3)],_0x33da25['refreshToken']=_0x75bed4[_0xda6a87(0x1f1)],_0x33da25[_0xda6a87(0x18a)]=_0x75bed4[_0xda6a87(0x1a6)],await saveOAuthTokens(_0x75bed4,this[_0xda6a87(0x1c3)][_0xda6a87(0x1c5)]),this[_0xda6a87(0x1d2)]['info'](_0xda6a87(0x211));}catch(_0x386e43){this[_0xda6a87(0x1d2)][_0xda6a87(0x1a2)]('[PASSTHROUGH]\x20OAuth\x20token\x20refresh\x20failed:',_0x386e43);}}async['start'](){const _0xff2e61=a80_0x3a2fa5,_0x195057=this['config']['maxPortAttempts']??0x64;for(let _0x53acd0=0x0;_0x53acd0<_0x195057;_0x53acd0++){const _0x503244=this[_0xff2e61(0x1c3)][_0xff2e61(0x214)]+_0x53acd0;try{await this[_0xff2e61(0x1c6)][_0xff2e61(0x1de)]({'port':_0x503244,'host':_0xff2e61(0x1b5)}),this[_0xff2e61(0x225)]=_0x503244,this[_0xff2e61(0x1d2)]['info'](_0xff2e61(0x222)+_0x503244),this['logger'][_0xff2e61(0x1ff)](_0xff2e61(0x1fc)+this['config'][_0xff2e61(0x19e)]),this[_0xff2e61(0x187)]();return;}catch(_0x5acd85){const _0x23b4d3=_0x5acd85 instanceof Error&&'code'in _0x5acd85&&_0x5acd85['code']===_0xff2e61(0x1bd);if(!_0x23b4d3)throw _0x5acd85;this[_0xff2e61(0x1d2)][_0xff2e61(0x1cb)]('Port\x20'+_0x503244+_0xff2e61(0x21a)),this[_0xff2e61(0x1fd)]();}}const _0x4f033e=this[_0xff2e61(0x1c3)]['startPort']+_0x195057-0x1;throw new Error(_0xff2e61(0x1e0)+this[_0xff2e61(0x1c3)][_0xff2e61(0x214)]+_0xff2e61(0x1b0)+_0x4f033e);}async[a80_0x3a2fa5(0x1e1)](){const _0x5b3a1c=a80_0x3a2fa5;this[_0x5b3a1c(0x196)]&&(clearInterval(this[_0x5b3a1c(0x196)]),this[_0x5b3a1c(0x196)]=undefined),await this['server'][_0x5b3a1c(0x1b4)](),this['logger'][_0x5b3a1c(0x1ff)](_0x5b3a1c(0x202));}['getAddress'](){const _0x2bc883=a80_0x3a2fa5;return _0x2bc883(0x1f5)+this[_0x2bc883(0x1be)];}}
@@ -1 +1 @@
1
- const a80_0x135b1a=a80_0x2496;(function(_0x2e101f,_0x24cf38){const _0x1ef89b=a80_0x2496,_0x3c6337=_0x2e101f();while(!![]){try{const _0x1e1786=-parseInt(_0x1ef89b(0x132))/0x1*(parseInt(_0x1ef89b(0x140))/0x2)+parseInt(_0x1ef89b(0x145))/0x3+-parseInt(_0x1ef89b(0x138))/0x4+parseInt(_0x1ef89b(0x131))/0x5*(parseInt(_0x1ef89b(0x149))/0x6)+-parseInt(_0x1ef89b(0x141))/0x7*(parseInt(_0x1ef89b(0x14c))/0x8)+parseInt(_0x1ef89b(0x147))/0x9+-parseInt(_0x1ef89b(0x136))/0xa;if(_0x1e1786===_0x24cf38)break;else _0x3c6337['push'](_0x3c6337['shift']());}catch(_0x19faf6){_0x3c6337['push'](_0x3c6337['shift']());}}}(a80_0x8dfb,0x535cf));export function parseSSEChunk(_0x4aa61b){const _0x16cdc3=a80_0x2496,_0x15a74a=[],_0x596c95=_0x4aa61b[_0x16cdc3(0x14b)]('\x0a\x0a'),_0x346cc4=_0x596c95[_0x16cdc3(0x128)]()||'';for(const _0x41e3c1 of _0x596c95){if(!_0x41e3c1[_0x16cdc3(0x129)]())continue;const _0x2cd0f8={},_0x4c3388=_0x41e3c1[_0x16cdc3(0x14b)]('\x0a');for(const _0x36aaf4 of _0x4c3388){if(_0x36aaf4[_0x16cdc3(0x127)](_0x16cdc3(0x124)))_0x2cd0f8[_0x16cdc3(0x13d)]=_0x36aaf4[_0x16cdc3(0x143)](0x7);else _0x36aaf4[_0x16cdc3(0x127)]('data:\x20')&&(_0x2cd0f8['data']=_0x36aaf4[_0x16cdc3(0x143)](0x6));}(_0x2cd0f8['event']||_0x2cd0f8['data'])&&_0x15a74a[_0x16cdc3(0x13e)](_0x2cd0f8);}return{'events':_0x15a74a,'remaining':_0x346cc4};}function a80_0x8dfb(){const _0x29fd5b=['587392Ubknzx','cache_creation_input_tokens','buffer','output_tokens','parse','event','push','data','18SPleDD','721dHOiLH','processChunk','slice','onRawUsage','579117PDcBAf','type','5950998upwXuk','message_delta','60jeJHEP','outputTokens','split','11624JyqyQq','event:\x20','getUsage','cacheReadInputTokens','startsWith','pop','trim','usage','flush','inputTokens','cache_read_input_tokens','updateFromUsage','cacheCreationInputTokens','message_start','330615zePuUZ','2332cOxrlv','max','input_tokens','reset','8565410iKpSUT','unknown'];a80_0x8dfb=function(){return _0x29fd5b;};return a80_0x8dfb();}export function extractMessageStartUsage(_0x13d437){const _0x30c6b6=a80_0x2496;try{const _0x992aa0=JSON[_0x30c6b6(0x13c)](_0x13d437);if(_0x992aa0[_0x30c6b6(0x146)]===_0x30c6b6(0x130)&&_0x992aa0['message']?.[_0x30c6b6(0x12a)]){const _0x5b4659=_0x992aa0['message']['usage'];return{'inputTokens':_0x5b4659[_0x30c6b6(0x134)]||0x0,'outputTokens':_0x5b4659[_0x30c6b6(0x13b)]||0x0,'cacheCreationInputTokens':_0x5b4659[_0x30c6b6(0x139)],'cacheReadInputTokens':_0x5b4659[_0x30c6b6(0x12d)]};}}catch{}return null;}export function extractMessageDeltaUsage(_0x3f164f){const _0x397858=a80_0x2496;try{const _0xc04d3c=JSON[_0x397858(0x13c)](_0x3f164f);if(_0xc04d3c[_0x397858(0x146)]==='message_delta'&&_0xc04d3c[_0x397858(0x12a)]){const _0x4b9a03=_0xc04d3c['usage'];return{'inputTokens':_0x4b9a03[_0x397858(0x134)]||0x0,'outputTokens':_0x4b9a03[_0x397858(0x13b)]||0x0,'cacheCreationInputTokens':_0x4b9a03['cache_creation_input_tokens'],'cacheReadInputTokens':_0x4b9a03['cache_read_input_tokens']};}}catch{}return null;}export function extractUsageFromEvent(_0x2c06d6){const _0x5f5bf9=a80_0x2496;if(!_0x2c06d6[_0x5f5bf9(0x13f)])return null;if(_0x2c06d6[_0x5f5bf9(0x13d)]===_0x5f5bf9(0x130))return extractMessageStartUsage(_0x2c06d6[_0x5f5bf9(0x13f)]);if(_0x2c06d6[_0x5f5bf9(0x13d)]===_0x5f5bf9(0x148))return extractMessageDeltaUsage(_0x2c06d6['data']);return null;}function a80_0x2496(_0x308bcf,_0x479d70){_0x308bcf=_0x308bcf-0x124;const _0x8dfb42=a80_0x8dfb();let _0x24967b=_0x8dfb42[_0x308bcf];return _0x24967b;}export class SSEUsageTracker{[a80_0x135b1a(0x12c)]=0x0;[a80_0x135b1a(0x14a)]=0x0;[a80_0x135b1a(0x12f)];[a80_0x135b1a(0x126)];[a80_0x135b1a(0x13a)]='';[a80_0x135b1a(0x12e)](_0x53100f){const _0x3bd2cc=a80_0x135b1a;this['inputTokens']=Math[_0x3bd2cc(0x133)](this['inputTokens'],_0x53100f[_0x3bd2cc(0x12c)]),this[_0x3bd2cc(0x14a)]=Math['max'](this['outputTokens'],_0x53100f[_0x3bd2cc(0x14a)]),_0x53100f[_0x3bd2cc(0x12f)]!==undefined&&(this[_0x3bd2cc(0x12f)]=Math['max'](this[_0x3bd2cc(0x12f)]??0x0,_0x53100f[_0x3bd2cc(0x12f)])),_0x53100f[_0x3bd2cc(0x126)]!==undefined&&(this[_0x3bd2cc(0x126)]=Math[_0x3bd2cc(0x133)](this[_0x3bd2cc(0x126)]??0x0,_0x53100f[_0x3bd2cc(0x126)]));}['onRawUsage'];[a80_0x135b1a(0x142)](_0x410f63){const _0x52ebea=a80_0x135b1a;this[_0x52ebea(0x13a)]+=_0x410f63;const {events:_0x28c92d,remaining:_0x4d3388}=parseSSEChunk(this[_0x52ebea(0x13a)]);this[_0x52ebea(0x13a)]=_0x4d3388;for(const _0x5c0587 of _0x28c92d){const _0x219887=extractUsageFromEvent(_0x5c0587);_0x219887&&(this[_0x52ebea(0x144)]?.(_0x5c0587[_0x52ebea(0x13d)]||_0x52ebea(0x137),_0x5c0587[_0x52ebea(0x13f)]||'',_0x219887),this['updateFromUsage'](_0x219887));}return _0x410f63;}[a80_0x135b1a(0x12b)](){const _0x254b34=a80_0x135b1a;if(this[_0x254b34(0x13a)][_0x254b34(0x129)]()){const {events:_0x20bae1}=parseSSEChunk(this[_0x254b34(0x13a)]+'\x0a\x0a');for(const _0xbcf9aa of _0x20bae1){const _0x315e2d=extractUsageFromEvent(_0xbcf9aa);_0x315e2d&&this[_0x254b34(0x12e)](_0x315e2d);}this['buffer']='';}}[a80_0x135b1a(0x125)](){const _0x4208b1=a80_0x135b1a;return{'inputTokens':this[_0x4208b1(0x12c)],'outputTokens':this[_0x4208b1(0x14a)],'cacheCreationInputTokens':this[_0x4208b1(0x12f)],'cacheReadInputTokens':this['cacheReadInputTokens']};}[a80_0x135b1a(0x135)](){const _0x5cd8c4=a80_0x135b1a;this[_0x5cd8c4(0x12c)]=0x0,this[_0x5cd8c4(0x14a)]=0x0,this['cacheCreationInputTokens']=undefined,this[_0x5cd8c4(0x126)]=undefined,this[_0x5cd8c4(0x13a)]='';}}
1
+ const a81_0x497cb4=a81_0x5c3f;(function(_0x5d2182,_0x1b3eda){const _0x5b6710=a81_0x5c3f,_0x5ed0c1=_0x5d2182();while(!![]){try{const _0x148253=parseInt(_0x5b6710(0xb6))/0x1+-parseInt(_0x5b6710(0xd8))/0x2*(parseInt(_0x5b6710(0xca))/0x3)+-parseInt(_0x5b6710(0xc5))/0x4+parseInt(_0x5b6710(0xcc))/0x5+-parseInt(_0x5b6710(0xc4))/0x6*(parseInt(_0x5b6710(0xd0))/0x7)+-parseInt(_0x5b6710(0xc7))/0x8+parseInt(_0x5b6710(0xb5))/0x9;if(_0x148253===_0x1b3eda)break;else _0x5ed0c1['push'](_0x5ed0c1['shift']());}catch(_0x2eb51c){_0x5ed0c1['push'](_0x5ed0c1['shift']());}}}(a81_0x5539,0x6a951));export function parseSSEChunk(_0x27df83){const _0x559e7e=a81_0x5c3f,_0x3c58f0=[],_0x1cfb4f=_0x27df83['split']('\x0a\x0a'),_0x715f08=_0x1cfb4f[_0x559e7e(0xbe)]()||'';for(const _0x4ee1b3 of _0x1cfb4f){if(!_0x4ee1b3[_0x559e7e(0xb7)]())continue;const _0x548f37={},_0x36cbcc=_0x4ee1b3[_0x559e7e(0xd6)]('\x0a');for(const _0x51e22a of _0x36cbcc){if(_0x51e22a['startsWith'](_0x559e7e(0xc1)))_0x548f37[_0x559e7e(0xc3)]=_0x51e22a['slice'](0x7);else _0x51e22a['startsWith'](_0x559e7e(0xbf))&&(_0x548f37[_0x559e7e(0xba)]=_0x51e22a[_0x559e7e(0xce)](0x6));}(_0x548f37[_0x559e7e(0xc3)]||_0x548f37[_0x559e7e(0xba)])&&_0x3c58f0[_0x559e7e(0xc9)](_0x548f37);}return{'events':_0x3c58f0,'remaining':_0x715f08};}function a81_0x5c3f(_0x1b8fa1,_0x1df82f){_0x1b8fa1=_0x1b8fa1-0xb2;const _0x553988=a81_0x5539();let _0x5c3fee=_0x553988[_0x1b8fa1];return _0x5c3fee;}export function extractMessageStartUsage(_0x5dfe3c){const _0x25f9f9=a81_0x5c3f;try{const _0x1b00ad=JSON[_0x25f9f9(0xcd)](_0x5dfe3c);if(_0x1b00ad[_0x25f9f9(0xb9)]===_0x25f9f9(0xb8)&&_0x1b00ad[_0x25f9f9(0xd4)]?.[_0x25f9f9(0xd2)]){const _0x39c935=_0x1b00ad[_0x25f9f9(0xd4)][_0x25f9f9(0xd2)];return{'inputTokens':_0x39c935[_0x25f9f9(0xc8)]||0x0,'outputTokens':_0x39c935['output_tokens']||0x0,'cacheCreationInputTokens':_0x39c935[_0x25f9f9(0xcb)],'cacheReadInputTokens':_0x39c935[_0x25f9f9(0xcf)]};}}catch{}return null;}export function extractMessageDeltaUsage(_0x98c622){const _0x58437e=a81_0x5c3f;try{const _0x2d1823=JSON[_0x58437e(0xcd)](_0x98c622);if(_0x2d1823[_0x58437e(0xb9)]===_0x58437e(0xc6)&&_0x2d1823['usage']){const _0x3f7590=_0x2d1823[_0x58437e(0xd2)];return{'inputTokens':_0x3f7590[_0x58437e(0xc8)]||0x0,'outputTokens':_0x3f7590[_0x58437e(0xd3)]||0x0,'cacheCreationInputTokens':_0x3f7590[_0x58437e(0xcb)],'cacheReadInputTokens':_0x3f7590[_0x58437e(0xcf)]};}}catch{}return null;}function a81_0x5539(){const _0x13fc0b=['max','flush','processChunk','7768674OqjYFN','143356CAMnJO','trim','message_start','type','data','inputTokens','buffer','outputTokens','pop','data:\x20','getUsage','event:\x20','updateFromUsage','event','1314YPozJu','1115388IExupw','message_delta','3136360DrfVKi','input_tokens','push','3189rnbyFa','cache_creation_input_tokens','3417565LRvCKJ','parse','slice','cache_read_input_tokens','5201RGUrLm','cacheReadInputTokens','usage','output_tokens','message','cacheCreationInputTokens','split','reset','790ytJkZx'];a81_0x5539=function(){return _0x13fc0b;};return a81_0x5539();}export function extractUsageFromEvent(_0x460388){const _0x6bbdfa=a81_0x5c3f;if(!_0x460388['data'])return null;if(_0x460388[_0x6bbdfa(0xc3)]===_0x6bbdfa(0xb8))return extractMessageStartUsage(_0x460388[_0x6bbdfa(0xba)]);if(_0x460388['event']===_0x6bbdfa(0xc6))return extractMessageDeltaUsage(_0x460388['data']);return null;}export class SSEUsageTracker{[a81_0x497cb4(0xbb)]=0x0;[a81_0x497cb4(0xbd)]=0x0;[a81_0x497cb4(0xd5)];[a81_0x497cb4(0xd1)];[a81_0x497cb4(0xbc)]='';[a81_0x497cb4(0xc2)](_0x5bde9b){const _0x3ec561=a81_0x497cb4;this['inputTokens']=Math[_0x3ec561(0xb2)](this[_0x3ec561(0xbb)],_0x5bde9b['inputTokens']),this[_0x3ec561(0xbd)]=Math[_0x3ec561(0xb2)](this['outputTokens'],_0x5bde9b[_0x3ec561(0xbd)]),_0x5bde9b[_0x3ec561(0xd5)]!==undefined&&(this[_0x3ec561(0xd5)]=Math[_0x3ec561(0xb2)](this[_0x3ec561(0xd5)]??0x0,_0x5bde9b[_0x3ec561(0xd5)])),_0x5bde9b[_0x3ec561(0xd1)]!==undefined&&(this[_0x3ec561(0xd1)]=Math['max'](this[_0x3ec561(0xd1)]??0x0,_0x5bde9b[_0x3ec561(0xd1)]));}['onRawUsage'];[a81_0x497cb4(0xb4)](_0x5eb5f1){const _0x594b51=a81_0x497cb4;this[_0x594b51(0xbc)]+=_0x5eb5f1;const {events:_0x461610,remaining:_0x3f948e}=parseSSEChunk(this[_0x594b51(0xbc)]);this[_0x594b51(0xbc)]=_0x3f948e;for(const _0x4dfee9 of _0x461610){const _0x1692f2=extractUsageFromEvent(_0x4dfee9);_0x1692f2&&(this['onRawUsage']?.(_0x4dfee9['event']||'unknown',_0x4dfee9[_0x594b51(0xba)]||'',_0x1692f2),this[_0x594b51(0xc2)](_0x1692f2));}return _0x5eb5f1;}[a81_0x497cb4(0xb3)](){const _0x36837d=a81_0x497cb4;if(this[_0x36837d(0xbc)][_0x36837d(0xb7)]()){const {events:_0x440300}=parseSSEChunk(this[_0x36837d(0xbc)]+'\x0a\x0a');for(const _0x555d0a of _0x440300){const _0x5817e6=extractUsageFromEvent(_0x555d0a);_0x5817e6&&this[_0x36837d(0xc2)](_0x5817e6);}this[_0x36837d(0xbc)]='';}}[a81_0x497cb4(0xc0)](){const _0x2e491b=a81_0x497cb4;return{'inputTokens':this[_0x2e491b(0xbb)],'outputTokens':this['outputTokens'],'cacheCreationInputTokens':this['cacheCreationInputTokens'],'cacheReadInputTokens':this[_0x2e491b(0xd1)]};}[a81_0x497cb4(0xd7)](){const _0x12bba7=a81_0x497cb4;this[_0x12bba7(0xbb)]=0x0,this['outputTokens']=0x0,this[_0x12bba7(0xd5)]=undefined,this['cacheReadInputTokens']=undefined,this['buffer']='';}}
@@ -1 +1 @@
1
- const a81_0x6659df=a81_0x758e;(function(_0x167499,_0x8a8319){const _0x4a21a8=a81_0x758e,_0x5d3a3a=_0x167499();while(!![]){try{const _0xbb1d3c=-parseInt(_0x4a21a8(0x1ed))/0x1+parseInt(_0x4a21a8(0x1e0))/0x2*(-parseInt(_0x4a21a8(0x1f0))/0x3)+parseInt(_0x4a21a8(0x1f6))/0x4+parseInt(_0x4a21a8(0x201))/0x5*(-parseInt(_0x4a21a8(0x1e1))/0x6)+-parseInt(_0x4a21a8(0x1e5))/0x7+parseInt(_0x4a21a8(0x20c))/0x8+parseInt(_0x4a21a8(0x1e9))/0x9*(parseInt(_0x4a21a8(0x1ea))/0xa);if(_0xbb1d3c===_0x8a8319)break;else _0x5d3a3a['push'](_0x5d3a3a['shift']());}catch(_0xadbb8e){_0x5d3a3a['push'](_0x5d3a3a['shift']());}}}(a81_0x5b0a,0xca1d9));import{existsSync,readFileSync,readdirSync}from'fs';import a81_0x3f3544 from'path';import{sanitizeForFilesystem,normalizeName}from'./agent-yaml.js';function a81_0x5b0a(){const _0x3049bb=['dirname','parse','7738164owAEMu','Invalid\x20tdx.json:\x20expected\x20object','agent.yml','cwd','18297XkMZVo','13030BkPhOD','FORM_INTERFACES','name','844242JtyDEQ','join','Invalid\x20tdx.json:\x20missing\x20or\x20invalid\x20\x27llm_project\x27\x20field','1175037qRoemE','cwd-config','integrations','experimental_knowledge_bases','utf-8','Current\x20context\x20has\x20llm_project=\x22','2677008KvNkGJ','arg','requireFile','object','isDirectory','experimental_artifacts','context','stringify','form_interfaces','no_context','knowledge_bases','3370540UPXvBo','Invalid\x20JSON\x20in\x20','\x22\x20but\x20no\x20local\x20folder\x20found.','root','prompts','resolve','length','llm_project','local','basename','string','4200760hgYDrU','arg-dir','agents','EXPERIMENTAL_KNOWLEDGE_BASES','KNOWLEDGE_BASES','tdx.json','filter','INTEGRATIONS','2hEVIvo','6YjKFDX','chat_interfaces'];a81_0x5b0a=function(){return _0x3049bb;};return a81_0x5b0a();}const TDX_CONFIG_FILE=a81_0x6659df(0x1dd),AGENTS_DIR=a81_0x6659df(0x1da);export function findAgentConfigPath(_0x42b6a5=process['cwd']()){const _0x52f94b=a81_0x6659df;let _0x56c6a7=a81_0x3f3544[_0x52f94b(0x206)](_0x42b6a5);const _0x667cd1=a81_0x3f3544[_0x52f94b(0x1e4)](_0x56c6a7)[_0x52f94b(0x204)];while(_0x56c6a7!==_0x667cd1){const _0x4dc1eb=a81_0x3f3544[_0x52f94b(0x1ee)](_0x56c6a7,TDX_CONFIG_FILE);if(existsSync(_0x4dc1eb))try{const _0x32e34d=readFileSync(_0x4dc1eb,_0x52f94b(0x1f4)),_0x4dae3f=JSON[_0x52f94b(0x1e4)](_0x32e34d);if(_0x4dae3f['llm_project'])return _0x4dc1eb;}catch{}_0x56c6a7=a81_0x3f3544[_0x52f94b(0x1e3)](_0x56c6a7);}return null;}export function loadAgentConfig(_0x453f28){const _0x2b79e3=a81_0x6659df,_0x215e98=readFileSync(_0x453f28,_0x2b79e3(0x1f4));let _0x367255;try{_0x367255=JSON[_0x2b79e3(0x1e4)](_0x215e98);}catch{throw new Error(_0x2b79e3(0x202)+_0x453f28);}if(!_0x367255||typeof _0x367255!==_0x2b79e3(0x1f9))throw new Error(_0x2b79e3(0x1e6));const _0x487dc9=_0x367255;if(!_0x487dc9[_0x2b79e3(0x208)]||typeof _0x487dc9[_0x2b79e3(0x208)]!==_0x2b79e3(0x20b))throw new Error(_0x2b79e3(0x1ef));return{'llm_project':_0x487dc9['llm_project']};}export function findAgentConfig(_0x4a69c6=process[a81_0x6659df(0x1e8)]()){const _0x5007cb=findAgentConfigPath(_0x4a69c6);if(!_0x5007cb)throw new Error('No\x20agent\x20tdx.json\x20found.\x20Please\x20run\x20\x27tdx\x20agent\x20pull\x20<project>\x27\x20first\x20to\x20create\x20the\x20folder\x20structure.');const _0xc8039f=loadAgentConfig(_0x5007cb),_0x30a852=a81_0x3f3544['dirname'](_0x5007cb);return{'config':_0xc8039f,'configPath':_0x5007cb,'configDir':_0x30a852};}function a81_0x758e(_0x532c39,_0x3178d2){_0x532c39=_0x532c39-0x1d9;const _0x5b0aad=a81_0x5b0a();let _0x758e02=_0x5b0aad[_0x532c39];return _0x758e02;}export function getAgentProjectDir(_0x46e57c,_0x4897b8=process['cwd']()){const _0x345c55=a81_0x6659df;return a81_0x3f3544[_0x345c55(0x1ee)](_0x4897b8,AGENTS_DIR,_0x46e57c);}export function getAgentConfigPath(_0x2794d6,_0x4a9eb5=process[a81_0x6659df(0x1e8)]()){const _0x478b9e=a81_0x6659df;return a81_0x3f3544[_0x478b9e(0x1ee)](getAgentProjectDir(_0x2794d6,_0x4a9eb5),TDX_CONFIG_FILE);}export function createAgentConfigContent(_0x5a865a){const _0x2cb2d9=a81_0x6659df,_0x5b0414={'llm_project':_0x5a865a};return JSON[_0x2cb2d9(0x1fd)](_0x5b0414,null,0x2)+'\x0a';}export function isAgentDir(_0x91fe1a){return existsSync(a81_0x3f3544['join'](_0x91fe1a,'agent.yml'));}export function isAgentYamlPath(_0x34d5a2){const _0x579b21=a81_0x6659df;return a81_0x3f3544[_0x579b21(0x20a)](_0x34d5a2)===_0x579b21(0x1e7);}export function getAgentDirFromYamlPath(_0x47e0d3){const _0x5656ef=a81_0x6659df;return a81_0x3f3544[_0x5656ef(0x1e3)](_0x47e0d3);}export const PROJECT_SUBDIRS={'KNOWLEDGE_BASES':a81_0x6659df(0x200),'PROMPTS':a81_0x6659df(0x205),'INTEGRATIONS':a81_0x6659df(0x1f2),'EXPERIMENTAL_KNOWLEDGE_BASES':a81_0x6659df(0x1f3),'EXPERIMENTAL_ARTIFACTS':a81_0x6659df(0x1fb),'FORM_INTERFACES':a81_0x6659df(0x1fe),'CHAT_INTERFACES':a81_0x6659df(0x1e2)};export function getKnowledgeBasesDir(_0x37fdc2){const _0x9ffb73=a81_0x6659df;return a81_0x3f3544['join'](_0x37fdc2,PROJECT_SUBDIRS[_0x9ffb73(0x1dc)]);}export function getPromptsDir(_0x445cd8){const _0x50f918=a81_0x6659df;return a81_0x3f3544[_0x50f918(0x1ee)](_0x445cd8,PROJECT_SUBDIRS['PROMPTS']);}export function getIntegrationsDir(_0x69cb9a){const _0x1ee5b5=a81_0x6659df;return a81_0x3f3544[_0x1ee5b5(0x1ee)](_0x69cb9a,PROJECT_SUBDIRS[_0x1ee5b5(0x1df)]);}export function getExperimentalKnowledgeBasesDir(_0x20c11b){const _0x148d7f=a81_0x6659df;return a81_0x3f3544[_0x148d7f(0x1ee)](_0x20c11b,PROJECT_SUBDIRS[_0x148d7f(0x1db)]);}export function getExperimentalArtifactsDir(_0x201078){const _0x352aac=a81_0x6659df;return a81_0x3f3544[_0x352aac(0x1ee)](_0x201078,PROJECT_SUBDIRS['EXPERIMENTAL_ARTIFACTS']);}export function getFormInterfacesDir(_0x9cc954){const _0x417c09=a81_0x6659df;return a81_0x3f3544['join'](_0x9cc954,PROJECT_SUBDIRS[_0x417c09(0x1eb)]);}export function getChatInterfacesDir(_0x2a143e){const _0x12fc08=a81_0x6659df;return a81_0x3f3544[_0x12fc08(0x1ee)](_0x2a143e,PROJECT_SUBDIRS['CHAT_INTERFACES']);}export function resolveAgentPullArgs(_0x5d4772){const _0x5c5edb=a81_0x6659df,{arg:_0x2b66ec,agentNameArg:_0x5cb88e,agentFlag:_0x52d6ae,contextProject:_0x5b9ad5,argDirConfig:_0x4dc088,cwdConfigPath:_0x5b1a43,cwdConfig:_0x5813c7}=_0x5d4772,_0x46a473=_0x5cb88e||_0x52d6ae;if(_0x2b66ec){if(_0x4dc088)return{'projectNameOrId':_0x4dc088[_0x5c5edb(0x208)],'targetAgentName':_0x46a473,'existingOutputDir':_0x2b66ec,'source':_0x5c5edb(0x1d9)};return{'projectNameOrId':_0x2b66ec,'targetAgentName':_0x46a473,'source':_0x5c5edb(0x1f7)};}if(_0x52d6ae&&_0x5b9ad5)return{'projectNameOrId':_0x5b9ad5,'targetAgentName':_0x52d6ae,'source':'context'};if(_0x5b1a43&&_0x5813c7)return{'projectNameOrId':_0x5813c7['llm_project'],'targetAgentName':_0x46a473,'existingOutputDir':a81_0x3f3544[_0x5c5edb(0x1e3)](_0x5b1a43),'source':_0x5c5edb(0x1f1)};return{'projectNameOrId':_0x5b9ad5,'targetAgentName':_0x46a473,'source':_0x5b9ad5?_0x5c5edb(0x1fc):undefined};}export function resolveProjectFromContext(_0x2cf8de,_0x2eca89,_0x122fcd){const _0x37a788=a81_0x6659df,_0x23326b=_0x122fcd?.[_0x37a788(0x1f8)],_0x52e67d=findAgentConfigPath(a81_0x3f3544[_0x37a788(0x206)](_0x2cf8de));if(_0x52e67d)return{'found':!![],'projectDir':a81_0x3f3544['dirname'](_0x52e67d),'configPath':_0x52e67d,'source':_0x37a788(0x209)};if(!_0x2eca89)return{'found':![],'reason':_0x37a788(0x1ff),'message':'No\x20tdx.json\x20found\x20and\x20llm_project\x20is\x20not\x20set.'};const _0x45f75a=sanitizeForFilesystem(_0x2eca89),_0x3830fd=a81_0x3f3544[_0x37a788(0x1ee)](process[_0x37a788(0x1e8)](),AGENTS_DIR);let _0x3c8993=a81_0x3f3544[_0x37a788(0x1ee)](_0x3830fd,_0x45f75a),_0x39fd31=a81_0x3f3544[_0x37a788(0x1ee)](_0x3c8993,TDX_CONFIG_FILE);if(!existsSync(_0x3c8993)){const _0x1e5918=normalizeName(_0x2eca89),_0x2625bb=a81_0x3f3544['join'](_0x3830fd,_0x1e5918);existsSync(_0x2625bb)&&(_0x3c8993=_0x2625bb,_0x39fd31=a81_0x3f3544[_0x37a788(0x1ee)](_0x3c8993,TDX_CONFIG_FILE));}if(!existsSync(_0x3c8993))return{'found':![],'reason':'no_local_folder','llmProject':_0x2eca89,'message':_0x37a788(0x1f5)+_0x2eca89+_0x37a788(0x203)};if(_0x23326b){const _0x233184=readdirSync(_0x3c8993,{'withFileTypes':!![]}),_0x23bc13=_0x233184[_0x37a788(0x1de)](_0x30c8bb=>_0x30c8bb[_0x37a788(0x1fa)]())['map'](_0x16ff95=>_0x16ff95[_0x37a788(0x1ec)])[_0x37a788(0x1de)](_0x3a521a=>{const _0x5164d0=_0x37a788,_0x2a8d57=a81_0x3f3544[_0x5164d0(0x1ee)](_0x3c8993,_0x3a521a,_0x23326b);return existsSync(_0x2a8d57);});if(_0x23bc13[_0x37a788(0x207)]===0x0)return{'found':![],'reason':'no_tests','llmProject':_0x2eca89,'projectDir':_0x3c8993};if(_0x23bc13['length']>0x1)return{'found':![],'reason':'multiple_agents','llmProject':_0x2eca89,'agentDirs':_0x23bc13,'projectDir':_0x3c8993};return{'found':!![],'projectDir':a81_0x3f3544[_0x37a788(0x1ee)](_0x3c8993,_0x23bc13[0x0]),'configPath':_0x39fd31,'source':'context'};}return{'found':!![],'projectDir':_0x3c8993,'configPath':_0x39fd31,'source':_0x37a788(0x1fc)};}
1
+ const a82_0x4b0b7b=a82_0x4058;(function(_0x21c9bd,_0x22650a){const _0x2fc43b=a82_0x4058,_0x108832=_0x21c9bd();while(!![]){try{const _0x116b6b=-parseInt(_0x2fc43b(0xd9))/0x1*(-parseInt(_0x2fc43b(0xd7))/0x2)+parseInt(_0x2fc43b(0xde))/0x3*(parseInt(_0x2fc43b(0xd2))/0x4)+parseInt(_0x2fc43b(0xb5))/0x5+-parseInt(_0x2fc43b(0xb8))/0x6*(parseInt(_0x2fc43b(0xba))/0x7)+parseInt(_0x2fc43b(0xbc))/0x8*(parseInt(_0x2fc43b(0xb3))/0x9)+-parseInt(_0x2fc43b(0xcf))/0xa*(parseInt(_0x2fc43b(0xbd))/0xb)+-parseInt(_0x2fc43b(0xbf))/0xc;if(_0x116b6b===_0x22650a)break;else _0x108832['push'](_0x108832['shift']());}catch(_0x5ef0ef){_0x108832['push'](_0x108832['shift']());}}}(a82_0x20f2,0x37ec8));import{existsSync,readFileSync,readdirSync}from'fs';import a82_0x640dca from'path';function a82_0x4058(_0x376a93,_0x3cdf58){_0x376a93=_0x376a93-0xb2;const _0x20f24c=a82_0x20f2();let _0x4058f8=_0x20f24c[_0x376a93];return _0x4058f8;}import{sanitizeForFilesystem,normalizeName}from'./agent-yaml.js';const TDX_CONFIG_FILE=a82_0x4b0b7b(0xce),AGENTS_DIR=a82_0x4b0b7b(0xbe);export function findAgentConfigPath(_0x4ccaae=process['cwd']()){const _0x37175c=a82_0x4b0b7b;let _0x514824=a82_0x640dca[_0x37175c(0xc4)](_0x4ccaae);const _0x180bec=a82_0x640dca[_0x37175c(0xbb)](_0x514824)['root'];while(_0x514824!==_0x180bec){const _0x2c391b=a82_0x640dca[_0x37175c(0xc2)](_0x514824,TDX_CONFIG_FILE);if(existsSync(_0x2c391b))try{const _0x1aafa5=readFileSync(_0x2c391b,_0x37175c(0xe2)),_0x322eaa=JSON[_0x37175c(0xbb)](_0x1aafa5);if(_0x322eaa['llm_project'])return _0x2c391b;}catch{}_0x514824=a82_0x640dca[_0x37175c(0xc1)](_0x514824);}return null;}export function loadAgentConfig(_0x4b2e9f){const _0x29a6da=a82_0x4b0b7b,_0x108025=readFileSync(_0x4b2e9f,'utf-8');let _0x270e28;try{_0x270e28=JSON[_0x29a6da(0xbb)](_0x108025);}catch{throw new Error('Invalid\x20JSON\x20in\x20'+_0x4b2e9f);}if(!_0x270e28||typeof _0x270e28!=='object')throw new Error(_0x29a6da(0xd1));const _0x3a6a6f=_0x270e28;if(!_0x3a6a6f[_0x29a6da(0xb6)]||typeof _0x3a6a6f[_0x29a6da(0xb6)]!==_0x29a6da(0xc0))throw new Error(_0x29a6da(0xd5));return{'llm_project':_0x3a6a6f['llm_project']};}export function findAgentConfig(_0x20372d=process[a82_0x4b0b7b(0xb2)]()){const _0x17c4e2=a82_0x4b0b7b,_0x1131e5=findAgentConfigPath(_0x20372d);if(!_0x1131e5)throw new Error(_0x17c4e2(0xd4));const _0x287bfe=loadAgentConfig(_0x1131e5),_0x1bf917=a82_0x640dca[_0x17c4e2(0xc1)](_0x1131e5);return{'config':_0x287bfe,'configPath':_0x1131e5,'configDir':_0x1bf917};}export function getAgentProjectDir(_0x54123e,_0x1b01d2=process[a82_0x4b0b7b(0xb2)]()){const _0x429d4d=a82_0x4b0b7b;return a82_0x640dca[_0x429d4d(0xc2)](_0x1b01d2,AGENTS_DIR,_0x54123e);}export function getAgentConfigPath(_0x89dfb3,_0x28c4d4=process[a82_0x4b0b7b(0xb2)]()){const _0x386c99=a82_0x4b0b7b;return a82_0x640dca[_0x386c99(0xc2)](getAgentProjectDir(_0x89dfb3,_0x28c4d4),TDX_CONFIG_FILE);}export function createAgentConfigContent(_0x57d442){const _0x5ba544=a82_0x4b0b7b,_0x4d90b5={'llm_project':_0x57d442};return JSON[_0x5ba544(0xc9)](_0x4d90b5,null,0x2)+'\x0a';}export function isAgentDir(_0x5d2406){const _0x3c94bf=a82_0x4b0b7b;return existsSync(a82_0x640dca[_0x3c94bf(0xc2)](_0x5d2406,_0x3c94bf(0xcb)));}export function isAgentYamlPath(_0x26238c){const _0x437522=a82_0x4b0b7b;return a82_0x640dca[_0x437522(0xc6)](_0x26238c)==='agent.yml';}export function getAgentDirFromYamlPath(_0x28e43d){return a82_0x640dca['dirname'](_0x28e43d);}export const PROJECT_SUBDIRS={'KNOWLEDGE_BASES':a82_0x4b0b7b(0xc3),'PROMPTS':'prompts','INTEGRATIONS':a82_0x4b0b7b(0xe0),'EXPERIMENTAL_KNOWLEDGE_BASES':'experimental_knowledge_bases','EXPERIMENTAL_ARTIFACTS':'experimental_artifacts','FORM_INTERFACES':'form_interfaces','CHAT_INTERFACES':a82_0x4b0b7b(0xc8)};export function getKnowledgeBasesDir(_0x272720){const _0x1330c1=a82_0x4b0b7b;return a82_0x640dca[_0x1330c1(0xc2)](_0x272720,PROJECT_SUBDIRS[_0x1330c1(0xc7)]);}export function getPromptsDir(_0x1901f){const _0x40e8e1=a82_0x4b0b7b;return a82_0x640dca[_0x40e8e1(0xc2)](_0x1901f,PROJECT_SUBDIRS[_0x40e8e1(0xca)]);}export function getIntegrationsDir(_0x2f63d3){const _0x463ef2=a82_0x4b0b7b;return a82_0x640dca[_0x463ef2(0xc2)](_0x2f63d3,PROJECT_SUBDIRS[_0x463ef2(0xb7)]);}export function getExperimentalKnowledgeBasesDir(_0x3c9264){const _0x338d71=a82_0x4b0b7b;return a82_0x640dca[_0x338d71(0xc2)](_0x3c9264,PROJECT_SUBDIRS[_0x338d71(0xcd)]);}export function getExperimentalArtifactsDir(_0x429eea){const _0x1dc5dd=a82_0x4b0b7b;return a82_0x640dca[_0x1dc5dd(0xc2)](_0x429eea,PROJECT_SUBDIRS[_0x1dc5dd(0xd3)]);}export function getFormInterfacesDir(_0x5296e8){return a82_0x640dca['join'](_0x5296e8,PROJECT_SUBDIRS['FORM_INTERFACES']);}export function getChatInterfacesDir(_0x2aa82a){const _0x5daf1f=a82_0x4b0b7b;return a82_0x640dca[_0x5daf1f(0xc2)](_0x2aa82a,PROJECT_SUBDIRS[_0x5daf1f(0xdf)]);}export function resolveAgentPullArgs(_0x20b664){const _0x375676=a82_0x4b0b7b,{arg:_0x3a9972,agentNameArg:_0x3bb459,agentFlag:_0x50376a,contextProject:_0x41cefa,argDirConfig:_0x7d86df,cwdConfigPath:_0xc5b17c,cwdConfig:_0x36ac13}=_0x20b664,_0x55c18d=_0x3bb459||_0x50376a;if(_0x3a9972){if(_0x7d86df)return{'projectNameOrId':_0x7d86df[_0x375676(0xb6)],'targetAgentName':_0x55c18d,'existingOutputDir':_0x3a9972,'source':_0x375676(0xdd)};return{'projectNameOrId':_0x3a9972,'targetAgentName':_0x55c18d,'source':_0x375676(0xdc)};}if(_0x50376a&&_0x41cefa)return{'projectNameOrId':_0x41cefa,'targetAgentName':_0x50376a,'source':_0x375676(0xda)};if(_0xc5b17c&&_0x36ac13)return{'projectNameOrId':_0x36ac13[_0x375676(0xb6)],'targetAgentName':_0x55c18d,'existingOutputDir':a82_0x640dca[_0x375676(0xc1)](_0xc5b17c),'source':'cwd-config'};return{'projectNameOrId':_0x41cefa,'targetAgentName':_0x55c18d,'source':_0x41cefa?_0x375676(0xda):undefined};}function a82_0x20f2(){const _0x5f8d2=['tdx.json','10AHhCRc','multiple_agents','Invalid\x20tdx.json:\x20expected\x20object','56vtCozV','EXPERIMENTAL_ARTIFACTS','No\x20agent\x20tdx.json\x20found.\x20Please\x20run\x20\x27tdx\x20agent\x20pull\x20<project>\x27\x20first\x20to\x20create\x20the\x20folder\x20structure.','Invalid\x20tdx.json:\x20missing\x20or\x20invalid\x20\x27llm_project\x27\x20field','no_tests','2EzabHK','no_local_folder','380757EzaCJl','context','name','arg','arg-dir','62697oyGmGT','CHAT_INTERFACES','integrations','no_context','utf-8','cwd','6012COrbXi','isDirectory','1305000HmcPis','llm_project','INTEGRATIONS','2478MZzTKR','filter','1064TyUgNW','parse','4744nsQFGa','1026685OeTkeR','agents','11343504vWGOmp','string','dirname','join','knowledge_bases','resolve','local','basename','KNOWLEDGE_BASES','chat_interfaces','stringify','PROMPTS','agent.yml','map','EXPERIMENTAL_KNOWLEDGE_BASES'];a82_0x20f2=function(){return _0x5f8d2;};return a82_0x20f2();}export function resolveProjectFromContext(_0x228dd5,_0x4460e7,_0x56f01f){const _0x507cf8=a82_0x4b0b7b,_0x27d7f1=_0x56f01f?.['requireFile'],_0x5d5126=findAgentConfigPath(a82_0x640dca[_0x507cf8(0xc4)](_0x228dd5));if(_0x5d5126)return{'found':!![],'projectDir':a82_0x640dca[_0x507cf8(0xc1)](_0x5d5126),'configPath':_0x5d5126,'source':_0x507cf8(0xc5)};if(!_0x4460e7)return{'found':![],'reason':_0x507cf8(0xe1),'message':'No\x20tdx.json\x20found\x20and\x20llm_project\x20is\x20not\x20set.'};const _0x40ce63=sanitizeForFilesystem(_0x4460e7),_0x9160b5=a82_0x640dca[_0x507cf8(0xc2)](process[_0x507cf8(0xb2)](),AGENTS_DIR);let _0x25b17d=a82_0x640dca['join'](_0x9160b5,_0x40ce63),_0x3aff2b=a82_0x640dca[_0x507cf8(0xc2)](_0x25b17d,TDX_CONFIG_FILE);if(!existsSync(_0x25b17d)){const _0x5cad00=normalizeName(_0x4460e7),_0x55001b=a82_0x640dca['join'](_0x9160b5,_0x5cad00);existsSync(_0x55001b)&&(_0x25b17d=_0x55001b,_0x3aff2b=a82_0x640dca[_0x507cf8(0xc2)](_0x25b17d,TDX_CONFIG_FILE));}if(!existsSync(_0x25b17d))return{'found':![],'reason':_0x507cf8(0xd8),'llmProject':_0x4460e7,'message':'Current\x20context\x20has\x20llm_project=\x22'+_0x4460e7+'\x22\x20but\x20no\x20local\x20folder\x20found.'};if(_0x27d7f1){const _0x2ab2c3=readdirSync(_0x25b17d,{'withFileTypes':!![]}),_0x7b6be=_0x2ab2c3['filter'](_0x1cfd71=>_0x1cfd71[_0x507cf8(0xb4)]())[_0x507cf8(0xcc)](_0x36cc8a=>_0x36cc8a[_0x507cf8(0xdb)])[_0x507cf8(0xb9)](_0x4e0b57=>{const _0x3f8a5d=a82_0x640dca['join'](_0x25b17d,_0x4e0b57,_0x27d7f1);return existsSync(_0x3f8a5d);});if(_0x7b6be['length']===0x0)return{'found':![],'reason':_0x507cf8(0xd6),'llmProject':_0x4460e7,'projectDir':_0x25b17d};if(_0x7b6be['length']>0x1)return{'found':![],'reason':_0x507cf8(0xd0),'llmProject':_0x4460e7,'agentDirs':_0x7b6be,'projectDir':_0x25b17d};return{'found':!![],'projectDir':a82_0x640dca[_0x507cf8(0xc2)](_0x25b17d,_0x7b6be[0x0]),'configPath':_0x3aff2b,'source':_0x507cf8(0xda)};}return{'found':!![],'projectDir':_0x25b17d,'configPath':_0x3aff2b,'source':_0x507cf8(0xda)};}
@@ -1 +1 @@
1
- function a82_0x1feb(_0x54739b,_0x5ee70e){_0x54739b=_0x54739b-0xee;const _0x19ca75=a82_0x19ca();let _0x1febec=_0x19ca75[_0x54739b];return _0x1febec;}function a82_0x19ca(){const _0x4535a9=['1923764pnzouZ','Invalid\x20agent\x20reference\x20format:\x20','413022gJyvBF','3751784MafCho','1316760tSdggP','length','Project\x20name\x20cannot\x20be\x20empty','9YlzVgK','split','95RjCSXH','5316444FqCtcU','24450cArcrZ','4067336zuzzzX','trim','.\x20Expected\x20\x22project_name\x22\x20or\x20\x22project_name/agent_name\x22','Agent\x20name\x20cannot\x20be\x20empty','2apkvPh','7931lwBJmU'];a82_0x19ca=function(){return _0x4535a9;};return a82_0x19ca();}(function(_0x15e998,_0x213149){const _0x3c51a0=a82_0x1feb,_0x14b887=_0x15e998();while(!![]){try{const _0x3fdde8=-parseInt(_0x3c51a0(0xff))/0x1*(-parseInt(_0x3c51a0(0xf9))/0x2)+-parseInt(_0x3c51a0(0xf0))/0x3*(parseInt(_0x3c51a0(0xfb))/0x4)+-parseInt(_0x3c51a0(0xf2))/0x5*(parseInt(_0x3c51a0(0xfd))/0x6)+parseInt(_0x3c51a0(0xf5))/0x7+parseInt(_0x3c51a0(0xfe))/0x8+-parseInt(_0x3c51a0(0xf3))/0x9+parseInt(_0x3c51a0(0xf4))/0xa*(parseInt(_0x3c51a0(0xfa))/0xb);if(_0x3fdde8===_0x213149)break;else _0x14b887['push'](_0x14b887['shift']());}catch(_0x33ba70){_0x14b887['push'](_0x14b887['shift']());}}}(a82_0x19ca,0xc06d8));export function parseAgentRef(_0x2e30d3){const _0x1f5116=a82_0x1feb;if(!_0x2e30d3||_0x2e30d3[_0x1f5116(0xf6)]()==='')throw new Error('Agent\x20reference\x20cannot\x20be\x20empty');const _0x486ea7=_0x2e30d3[_0x1f5116(0xf6)](),_0xda7af8=_0x486ea7[_0x1f5116(0xf1)]('/');if(_0xda7af8[_0x1f5116(0xee)]===0x1)return{'projectName':_0xda7af8[0x0],'agentName':undefined};else{if(_0xda7af8['length']===0x2){const [_0x44f7ec,_0x5e2b53]=_0xda7af8;if(!_0x44f7ec||_0x44f7ec[_0x1f5116(0xf6)]()==='')throw new Error(_0x1f5116(0xef));if(!_0x5e2b53||_0x5e2b53['trim']()==='')throw new Error(_0x1f5116(0xf8));return{'projectName':_0x44f7ec['trim'](),'agentName':_0x5e2b53[_0x1f5116(0xf6)]()};}else throw new Error(_0x1f5116(0xfc)+_0x2e30d3+_0x1f5116(0xf7));}}
1
+ function a83_0x3b2c(_0x4aaba3,_0x50eb6d){_0x4aaba3=_0x4aaba3-0xc9;const _0x18d968=a83_0x18d9();let _0x3b2c4b=_0x18d968[_0x4aaba3];return _0x3b2c4b;}(function(_0x1069bd,_0x58a09a){const _0x1ee64c=a83_0x3b2c,_0x1985bc=_0x1069bd();while(!![]){try{const _0x3d958d=-parseInt(_0x1ee64c(0xd5))/0x1*(parseInt(_0x1ee64c(0xd2))/0x2)+parseInt(_0x1ee64c(0xd6))/0x3*(parseInt(_0x1ee64c(0xcb))/0x4)+parseInt(_0x1ee64c(0xcd))/0x5*(-parseInt(_0x1ee64c(0xd4))/0x6)+parseInt(_0x1ee64c(0xd9))/0x7+parseInt(_0x1ee64c(0xc9))/0x8*(parseInt(_0x1ee64c(0xd1))/0x9)+-parseInt(_0x1ee64c(0xcc))/0xa*(parseInt(_0x1ee64c(0xd7))/0xb)+parseInt(_0x1ee64c(0xca))/0xc*(parseInt(_0x1ee64c(0xce))/0xd);if(_0x3d958d===_0x58a09a)break;else _0x1985bc['push'](_0x1985bc['shift']());}catch(_0x4fcb89){_0x1985bc['push'](_0x1985bc['shift']());}}}(a83_0x18d9,0xa744d));export function parseAgentRef(_0x45f45f){const _0x9e82ea=a83_0x3b2c;if(!_0x45f45f||_0x45f45f['trim']()==='')throw new Error('Agent\x20reference\x20cannot\x20be\x20empty');const _0x14daf9=_0x45f45f['trim'](),_0x4886f2=_0x14daf9[_0x9e82ea(0xda)]('/');if(_0x4886f2['length']===0x1)return{'projectName':_0x4886f2[0x0],'agentName':undefined};else{if(_0x4886f2['length']===0x2){const [_0x3e2dd2,_0x2f1da6]=_0x4886f2;if(!_0x3e2dd2||_0x3e2dd2[_0x9e82ea(0xd3)]()==='')throw new Error(_0x9e82ea(0xd8));if(!_0x2f1da6||_0x2f1da6['trim']()==='')throw new Error('Agent\x20name\x20cannot\x20be\x20empty');return{'projectName':_0x3e2dd2[_0x9e82ea(0xd3)](),'agentName':_0x2f1da6[_0x9e82ea(0xd3)]()};}else throw new Error(_0x9e82ea(0xcf)+_0x45f45f+_0x9e82ea(0xd0));}}function a83_0x18d9(){const _0x22cb37=['369054SWraBf','20bGKHjP','trim','463164yoJxMQ','49523RXXWMn','66XCfOdD','3072311LfSFQn','Project\x20name\x20cannot\x20be\x20empty','9158555vnjQey','split','24gpFCaN','2920164zGBQNK','59144YWBZjP','10AuvRef','35NUXDgH','13HjeCsJ','Invalid\x20agent\x20reference\x20format:\x20','.\x20Expected\x20\x22project_name\x22\x20or\x20\x22project_name/agent_name\x22'];a83_0x18d9=function(){return _0x22cb37;};return a83_0x18d9();}