@simosphere/tokenizer-speedup 0.9.0 → 0.10.1

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 (49) hide show
  1. package/dist/cli/analyze.js +1 -1
  2. package/dist/cli/config-cmd.js +1 -1
  3. package/dist/cli/index.js +1 -1
  4. package/dist/cli/init-cmd.js +1 -1
  5. package/dist/cli/setup-cmd.js +1 -1
  6. package/dist/cloud/stripe-checkout.js +1 -1
  7. package/dist/cloud/stripe-config.js +1 -1
  8. package/dist/cloud/stripe-usage.js +1 -1
  9. package/dist/cloud/stripe-webhooks.js +1 -1
  10. package/dist/cloud/subscription-store.js +1 -1
  11. package/dist/manifest.json +49 -45
  12. package/dist/mcp/index.js +1 -1
  13. package/dist/mcp/resources.js +1 -1
  14. package/dist/mcp/session.js +1 -1
  15. package/dist/mcp/tools.js +1 -1
  16. package/dist/plugin/cli.js +1 -1
  17. package/dist/plugin/compression/anonymize.js +1 -0
  18. package/dist/plugin/compression/cache.js +1 -0
  19. package/dist/plugin/compression/chunked.js +1 -1
  20. package/dist/plugin/compression/dedup.js +1 -0
  21. package/dist/plugin/compression/format-optimizer.js +1 -0
  22. package/dist/plugin/compression/index.js +1 -1
  23. package/dist/plugin/compression/pipeline.js +1 -1
  24. package/dist/plugin/compression/quality.js +1 -1
  25. package/dist/plugin/compression/rule-based.js +1 -1
  26. package/dist/plugin/compression/structural.js +1 -1
  27. package/dist/plugin/compression/text-utils.js +1 -1
  28. package/dist/plugin/compression/token-budget.js +1 -1
  29. package/dist/plugin/config-loader.js +1 -1
  30. package/dist/plugin/context-compressor.js +1 -1
  31. package/dist/plugin/hook-dispatcher.js +1 -1
  32. package/dist/plugin/metering-client.js +1 -1
  33. package/dist/plugin/metrics-collector.js +1 -1
  34. package/dist/plugin/onboarding.js +1 -1
  35. package/dist/plugin/precompact-handler.js +1 -1
  36. package/dist/plugin/report.js +1 -1
  37. package/dist/plugin/rule-analytics-store.js +1 -1
  38. package/dist/plugin/rule-analytics.js +1 -1
  39. package/dist/plugin/rule-engine.js +1 -1
  40. package/dist/plugin/rule-sharing.js +1 -1
  41. package/dist/plugin/rule-suggest.js +1 -1
  42. package/dist/plugin/session-start.js +1 -1
  43. package/dist/plugin/smart-context.js +1 -1
  44. package/dist/shared/license.js +1 -1
  45. package/dist/shared/providers/claude-provider.js +1 -1
  46. package/dist/shared/providers/openai-provider.js +1 -1
  47. package/dist/shared/token-counter.js +1 -1
  48. package/dist/shared/token-provider.js +1 -1
  49. package/package.json +1 -1
@@ -1 +1 @@
1
- const _0x33b627=_0x121c;(function(_0x5337b9,_0x117087){const _0x288da8=_0x121c,_0x33852e=_0x5337b9();while(!![]){try{const _0x4ea0ae=-parseInt(_0x288da8(0x78))/0x1*(-parseInt(_0x288da8(0x7c))/0x2)+parseInt(_0x288da8(0x7b))/0x3*(parseInt(_0x288da8(0x7a))/0x4)+parseInt(_0x288da8(0x72))/0x5*(parseInt(_0x288da8(0x70))/0x6)+-parseInt(_0x288da8(0x73))/0x7+-parseInt(_0x288da8(0x74))/0x8+-parseInt(_0x288da8(0x79))/0x9+parseInt(_0x288da8(0x6d))/0xa;if(_0x4ea0ae===_0x117087)break;else _0x33852e['push'](_0x33852e['shift']());}catch(_0x213128){_0x33852e['push'](_0x33852e['shift']());}}}(_0x72e1,0x88eab));import{readFileSync}from'node:fs';function _0x121c(_0x44fcb7,_0x2322c6){_0x44fcb7=_0x44fcb7-0x6d;const _0x72e115=_0x72e1();let _0x121cc5=_0x72e115[_0x44fcb7];return _0x121cc5;}import'../shared/providers/claude-provider.js';import'../shared/providers/openai-provider.js';import{createTokenProvider}from'../shared/token-provider.js';export function analyzeText(_0x141a20,_0x405841=_0x33b627(0x6f),_0x3edbc1){const _0x4e90e0=_0x33b627,_0x34b0aa={'iENXt':function(_0x2fcbbd,_0x5cc8b9){return _0x2fcbbd===_0x5cc8b9;},'qUGTP':_0x4e90e0(0x6e)},_0x5874b1=_0x3edbc1??(_0x34b0aa[_0x4e90e0(0x7d)](_0x4e90e0(0x6f),_0x405841)?_0x4e90e0(0x76):_0x34b0aa['qUGTP']),_0x2ab246=createTokenProvider(_0x405841,_0x5874b1),_0x80aeb8=_0x141a20['split'](/\s+/)[_0x4e90e0(0x77)](Boolean)[_0x4e90e0(0x71)];return{'tokens':_0x2ab246['countTokens'](_0x141a20),'estimate':_0x2ab246[_0x4e90e0(0x75)](_0x141a20),'provider':_0x405841,'model':_0x5874b1,'chars':_0x141a20[_0x4e90e0(0x71)],'words':_0x80aeb8};}export function analyzeFile(_0x3c717b,_0x52234a='claude',_0x3b7513){const _0x379107={'vDqek':function(_0x206e8c,_0x1b5eb9,_0x2154fc,_0x2293d2){return _0x206e8c(_0x1b5eb9,_0x2154fc,_0x2293d2);},'RHVGX':'utf-8'};return _0x379107['vDqek'](analyzeText,readFileSync(_0x3c717b,_0x379107['RHVGX']),_0x52234a,_0x3b7513);}function _0x72e1(){const _0x189b0d=['claude','30RYVpKa','length','330895eIiLan','5240354wMCsmh','6519552wOviPN','estimateTokens','claude-sonnet-4-20250514','filter','1wKsjoz','1823868NlIugx','3764uTiOKF','2757kODSxT','1533082mGrAQv','iENXt','3648140OAuigl','gpt-4o'];_0x72e1=function(){return _0x189b0d;};return _0x72e1();}export function compareProviders(_0x5e7f9b){const _0x161c6e={'YUXcE':function(_0x2575c5,_0x17c2e9,_0x299f3c){return _0x2575c5(_0x17c2e9,_0x299f3c);},'koedo':'claude'};return{'claude':_0x161c6e['YUXcE'](analyzeText,_0x5e7f9b,_0x161c6e['koedo']),'openai':_0x161c6e['YUXcE'](analyzeText,_0x5e7f9b,'openai')};}
1
+ (function(_0x562260,_0x4d9814){const _0x5bba74=_0x1e58,_0x4e5d6b=_0x562260();while(!![]){try{const _0x14209f=parseInt(_0x5bba74(0x17a))/0x1+parseInt(_0x5bba74(0x170))/0x2+-parseInt(_0x5bba74(0x172))/0x3*(parseInt(_0x5bba74(0x17d))/0x4)+-parseInt(_0x5bba74(0x175))/0x5*(parseInt(_0x5bba74(0x17b))/0x6)+-parseInt(_0x5bba74(0x171))/0x7+parseInt(_0x5bba74(0x16d))/0x8*(-parseInt(_0x5bba74(0x17f))/0x9)+parseInt(_0x5bba74(0x16f))/0xa*(parseInt(_0x5bba74(0x177))/0xb);if(_0x14209f===_0x4d9814)break;else _0x4e5d6b['push'](_0x4e5d6b['shift']());}catch(_0x16dbc6){_0x4e5d6b['push'](_0x4e5d6b['shift']());}}}(_0x202f,0xb5dd7));import{readFileSync}from'node:fs';import'../shared/providers/claude-provider.js';import'../shared/providers/openai-provider.js';import{createTokenProvider}from'../shared/token-provider.js';function _0x1e58(_0x11c1ba,_0x2a19e1){_0x11c1ba=_0x11c1ba-0x16d;const _0x202f85=_0x202f();let _0x1e5885=_0x202f85[_0x11c1ba];return _0x1e5885;}export function analyzeText(_0x3c6af5,_0x2ba939='claude',_0x3babe1){const _0x43a230=_0x1e58,_0x53d6f4={'dCNwJ':function(_0x3b07b2,_0x13f0c8){return _0x3b07b2===_0x13f0c8;},'ubeIK':'claude','Qiiqa':'gpt-4o'},_0x316bf8=_0x3babe1??(_0x53d6f4[_0x43a230(0x17e)](_0x53d6f4['ubeIK'],_0x2ba939)?_0x43a230(0x176):_0x53d6f4['Qiiqa']),_0x4a7037=createTokenProvider(_0x2ba939,_0x316bf8),_0x4df2dc=_0x3c6af5[_0x43a230(0x178)](/\s+/)[_0x43a230(0x16e)](Boolean)['length'];return{'tokens':_0x4a7037[_0x43a230(0x179)](_0x3c6af5),'estimate':_0x4a7037['estimateTokens'](_0x3c6af5),'provider':_0x2ba939,'model':_0x316bf8,'chars':_0x3c6af5[_0x43a230(0x17c)],'words':_0x4df2dc};}export function analyzeFile(_0x54f478,_0x290310='claude',_0x1ab022){const _0x521a2a=_0x1e58,_0x65974d={'PTYSO':function(_0x175f9b,_0x12b0af,_0x3dd67e){return _0x175f9b(_0x12b0af,_0x3dd67e);}};return analyzeText(_0x65974d[_0x521a2a(0x174)](readFileSync,_0x54f478,'utf-8'),_0x290310,_0x1ab022);}export function compareProviders(_0x8bd991){const _0x6f21ef=_0x1e58,_0x1dc136={'KtNaN':'claude','wcxCh':'openai'};return{'claude':analyzeText(_0x8bd991,_0x1dc136[_0x6f21ef(0x173)]),'openai':analyzeText(_0x8bd991,_0x1dc136['wcxCh'])};}function _0x202f(){const _0x121c90=['14619530PncXcE','2910852NFtIwZ','8163498LrLtcR','1457997BDgZgp','KtNaN','PTYSO','95240hlTasQ','claude-sonnet-4-20250514','22YMdVPR','split','countTokens','354527gjxTlB','318aKKeLQ','length','8WEXbhl','dCNwJ','3492FXsXCc','17344CDEkbr','filter'];_0x202f=function(){return _0x121c90;};return _0x202f();}
@@ -1 +1 @@
1
- (function(_0x2a3882,_0x3951e7){const _0x19e074=_0x171d,_0xf6e990=_0x2a3882();while(!![]){try{const _0x1e8e67=parseInt(_0x19e074(0x1e8))/0x1*(parseInt(_0x19e074(0x1e9))/0x2)+parseInt(_0x19e074(0x1e2))/0x3*(parseInt(_0x19e074(0x1db))/0x4)+parseInt(_0x19e074(0x1dd))/0x5*(-parseInt(_0x19e074(0x1df))/0x6)+-parseInt(_0x19e074(0x1dc))/0x7+parseInt(_0x19e074(0x1e3))/0x8*(-parseInt(_0x19e074(0x1d8))/0x9)+parseInt(_0x19e074(0x1e5))/0xa+-parseInt(_0x19e074(0x1e4))/0xb*(-parseInt(_0x19e074(0x1da))/0xc);if(_0x1e8e67===_0x3951e7)break;else _0xf6e990['push'](_0xf6e990['shift']());}catch(_0x5e3e7d){_0xf6e990['push'](_0xf6e990['shift']());}}}(_0x2176,0xad3c2));function _0x2176(){const _0x30daf6=['354GIBHzH','423ofmlPk','length','24dGYKAH','2065924ECUBVy','2277429aGgsoE','560eLDOsV','rules','73614nbJJLg','message','provider','3tHBGFk','140072ezQPHe','7360012PHGHMX','11250780qhwGDN','tolXm','model','1425YJsKZg'];_0x2176=function(){return _0x30daf6;};return _0x2176();}import'../shared/providers/claude-provider.js';function _0x171d(_0x3c9911,_0x243dd4){_0x3c9911=_0x3c9911-0x1d8;const _0x21762e=_0x2176();let _0x171d3c=_0x21762e[_0x3c9911];return _0x171d3c;}import'../shared/providers/openai-provider.js';import{parseConfig}from'../plugin/config-loader.js';export function validateConfigYaml(_0x35778c){const _0x34a9c9=_0x171d,_0x5da43e={'tolXm':function(_0x399588,_0x2469e5){return _0x399588(_0x2469e5);}};try{const _0x431da5=_0x5da43e[_0x34a9c9(0x1e6)](parseConfig,_0x35778c);return{'valid':!0x0,'provider':_0x431da5[_0x34a9c9(0x1e1)],'model':_0x431da5[_0x34a9c9(0x1e7)],'ruleCount':_0x431da5[_0x34a9c9(0x1de)][_0x34a9c9(0x1d9)]};}catch(_0x534e75){return{'valid':!0x1,'provider':'','model':'','ruleCount':0x0,'error':_0x534e75[_0x34a9c9(0x1e0)]};}}
1
+ function _0x3255(){const _0x1ade26=['310DwjRwe','22040RNyeon','235964QcfEsI','30445wBpwVi','20QcaURY','20744119nwDhxa','1540695puVpTd','139113XSdSuE','4375638IrVFNT','25oRddDI','rules','1463vubmRb','model'];_0x3255=function(){return _0x1ade26;};return _0x3255();}(function(_0xf7d79,_0x1a91ff){const _0x1de630=_0x5dee,_0x1e57a6=_0xf7d79();while(!![]){try{const _0x500e70=-parseInt(_0x1de630(0x11d))/0x1*(-parseInt(_0x1de630(0x11e))/0x2)+parseInt(_0x1de630(0x120))/0x3+-parseInt(_0x1de630(0x11c))/0x4*(parseInt(_0x1de630(0x116))/0x5)+parseInt(_0x1de630(0x115))/0x6+parseInt(_0x1de630(0x118))/0x7*(parseInt(_0x1de630(0x11b))/0x8)+-parseInt(_0x1de630(0x121))/0x9*(-parseInt(_0x1de630(0x11a))/0xa)+-parseInt(_0x1de630(0x11f))/0xb;if(_0x500e70===_0x1a91ff)break;else _0x1e57a6['push'](_0x1e57a6['shift']());}catch(_0x25801c){_0x1e57a6['push'](_0x1e57a6['shift']());}}}(_0x3255,0x66e5a));import'../shared/providers/claude-provider.js';function _0x5dee(_0xa762e7,_0x25df70){_0xa762e7=_0xa762e7-0x115;const _0x32554e=_0x3255();let _0x5dee81=_0x32554e[_0xa762e7];return _0x5dee81;}import'../shared/providers/openai-provider.js';import{parseConfig}from'../plugin/config-loader.js';export function validateConfigYaml(_0x13e3fc){const _0x3d8bfd=_0x5dee,_0x2ce54f={'XYLVw':function(_0x28f5d2,_0x1aff91){return _0x28f5d2(_0x1aff91);}};try{const _0x41137c=_0x2ce54f['XYLVw'](parseConfig,_0x13e3fc);return{'valid':!0x0,'provider':_0x41137c['provider'],'model':_0x41137c[_0x3d8bfd(0x119)],'ruleCount':_0x41137c[_0x3d8bfd(0x117)]['length']};}catch(_0x3b39af){return{'valid':!0x1,'provider':'','model':'','ruleCount':0x0,'error':_0x3b39af['message']};}}
package/dist/cli/index.js CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- const _0x58bb9f=_0x5603;(function(_0x27152c,_0x38b2f4){const _0x32963d=_0x5603,_0x3069c7=_0x27152c();while(!![]){try{const _0x586a28=parseInt(_0x32963d(0xdb))/0x1+-parseInt(_0x32963d(0xe9))/0x2*(parseInt(_0x32963d(0xfb))/0x3)+-parseInt(_0x32963d(0xef))/0x4+parseInt(_0x32963d(0xe2))/0x5+parseInt(_0x32963d(0xde))/0x6+parseInt(_0x32963d(0xe8))/0x7+-parseInt(_0x32963d(0xf4))/0x8;if(_0x586a28===_0x38b2f4)break;else _0x3069c7['push'](_0x3069c7['shift']());}catch(_0x110e5d){_0x3069c7['push'](_0x3069c7['shift']());}}}(_0x30f3,0x3ab36));import{Command}from'commander';import'../shared/providers/claude-provider.js';import'../shared/providers/openai-provider.js';function _0x30f3(){const _0x2d071c=['option','claude-sonnet-4-20250514','70932rBoRsE','word\x20heuristic\x20(words\x20×\x20','K\x20chars)\x20—\x20processing\x20may\x20be\x20slow.','stringify','BJTol','provider','command','BPE\x20tokenizer\x20(accurate)','argv','1.4','-m,\x20--model\x20<model>','ePKUG','error','after','PsgVn','[file]','XbsTQ','lbqWo','analyze','countTokens','IXsMV','init','Create\x20a\x20starter\x20tokenizer-speedup.yaml\x20in\x20the\x20current\x20directory','hERof','(inline)','utf-8','183351MNMZbm','argument','rules','849876DNQZxQ','cli/index','description','Configure\x20TokenizerSpeedUp\x20with\x20your\x20API\x20key\x20and\x20register\x20Claude\x20Code\x20hooks','962535ZqzFjb','xsVAw','-t,\x20--text\x20<text>','KEmHf','config','Config\x20file\x20path','1833006ERzBzM','16shJlPA','\x0aExamples:\x0a\x20\x20$\x20tsu\x20setup\x20--api-key\x20YOUR_KEY\x20\x20\x20Configure\x20and\x20register\x20Claude\x20Code\x20hooks\x0a\x20\x20$\x20tsu\x20init\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Create\x20starter\x20tokenizer-speedup.yaml\x0a\x20\x20$\x20tsu\x20analyze\x20src/index.ts\x20\x20\x20\x20\x20\x20\x20Count\x20tokens\x20in\x20a\x20file\x0a\x20\x20$\x20tsu\x20analyze\x20--text\x20\x22Hello\x22\x20\x20\x20\x20\x20Count\x20tokens\x20in\x20inline\x20text\x0a\x20\x20$\x20tsu\x20config\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Validate\x20tokenizer-speedup.yaml\x0a\x0aQuick\x20Start:\x0a\x20\x201.\x20Get\x20your\x20free\x20API\x20key\x20at\x20https://tokenizer-speedup.simosphereai.com\x0a\x20\x202.\x20Run:\x20tsu\x20setup\x20--api-key\x20YOUR_KEY\x0a\x20\x203.\x20Optional:\x20tsu\x20init\x20(creates\x20project-level\x20config)\x0a\x20\x204.\x20Restart\x20Claude\x20Code\x20—\x20the\x20plugin\x20activates\x20automatically\x0a\x0aConfiguration\x20(tokenizer-speedup.yaml):\x0a\x20\x20Place\x20in\x20your\x20project\x20root.\x20Defines\x20keyword\x20triggers,\x20file\x20patterns,\x0a\x20\x20and\x20token\x20limits.\x20Run\x20\x27tsu\x20init\x27\x20to\x20generate\x20a\x20starter\x20config.\x0a\x20\x20Docs:\x20https://tokenizer-speedup.simosphereai.com/#integration\x0a','log','claude','Warning:\x20large\x20input\x20(','1.3','910432TzHStC','text','yVQsK','UAbIt','replace','977312UKaiaN','action','message','model','length'];_0x30f3=function(){return _0x2d071c;};return _0x30f3();}import{createTokenProvider}from'../shared/token-provider.js';import{readFileSync,realpathSync}from'node:fs';import{runSetup}from'./setup-cmd.js';import{runInit}from'./init-cmd.js';export function buildCLI(){const _0x112347=_0x5603,_0x2a427e={'xsVAw':function(_0xffe106,_0x592039){return _0xffe106(_0x592039);},'hERof':function(_0x53d2e1,_0x343b48){return _0x53d2e1!==_0x343b48;},'UAbIt':function(_0x1b46a6,_0x32592f){return _0x1b46a6/_0x32592f;},'HCvAK':_0x112347(0xca),'IXsMV':function(_0x47ecb7,_0x3c48c3,_0x54063b){return _0x47ecb7(_0x3c48c3,_0x54063b);},'KEmHf':'tsu','lXeDb':'TokenizerSpeedUp\x20—\x20Multi-LLM\x20Token\x20Optimization\x20CLI','tVwrS':'0.8.1','azlBz':'setup','iSDoZ':_0x112347(0xe1),'XbsTQ':_0x112347(0xd3),'lbqWo':'[file]','BJTol':'File\x20to\x20analyze','PzXjh':'LLM\x20provider\x20(claude,\x20openai)','yVQsK':'claude','ePKUG':'Model\x20name','PsgVn':_0x112347(0xe4),'kfbOp':_0x112347(0xe6),'PSBqQ':'Validate\x20configuration\x20file'},_0x2cbcb0=new Command();return _0x2cbcb0['name'](_0x2a427e[_0x112347(0xe5)])[_0x112347(0xe0)](_0x2a427e['lXeDb'])['version'](_0x2a427e['tVwrS'])['addHelpText'](_0x112347(0xce),_0x112347(0xea)),_0x2cbcb0['command'](_0x2a427e['azlBz'])[_0x112347(0xe0)](_0x2a427e['iSDoZ'])['requiredOption']('--api-key\x20<key>','Your\x20TokenizerSpeedUp\x20API\x20key\x20(get\x20one\x20at\x20https://tokenizer-speedup.simosphereai.com)')[_0x112347(0xf5)](_0x425544=>{_0x2a427e['xsVAw'](runSetup,_0x425544['apiKey']);}),_0x2cbcb0[_0x112347(0xc7)](_0x2a427e[_0x112347(0xd1)])[_0x112347(0xe0)]('Analyze\x20token\x20count\x20of\x20a\x20file\x20or\x20text')[_0x112347(0xdc)](_0x2a427e[_0x112347(0xd2)],_0x2a427e[_0x112347(0xc5)])[_0x112347(0xf9)]('-p,\x20--provider\x20<provider>',_0x2a427e['PzXjh'],_0x2a427e[_0x112347(0xf1)])['option'](_0x112347(0xcb),_0x2a427e[_0x112347(0xcc)])[_0x112347(0xf9)](_0x2a427e[_0x112347(0xcf)],'Analyze\x20inline\x20text\x20instead\x20of\x20file')[_0x112347(0xf5)]((_0x51e019,_0x5759ef)=>{const _0x490451=_0x112347,_0x57de37=_0x5759ef[_0x490451(0xf7)]??(_0x490451(0xec)===_0x5759ef['provider']?_0x490451(0xfa):'gpt-4o');let _0x2e5d7e,_0x4d0691;try{_0x2e5d7e=createTokenProvider(_0x5759ef['provider'],_0x57de37);}catch(_0x5d85bc){return console[_0x490451(0xcd)]('Error:\x20'+_0x5d85bc[_0x490451(0xf6)]),void(process['exitCode']=0x1);}if(_0x2a427e[_0x490451(0xd8)](void 0x0,_0x5759ef['text']))_0x4d0691=_0x5759ef[_0x490451(0xf0)];else{if(!_0x51e019)return console['error']('Error:\x20provide\x20a\x20file\x20argument\x20or\x20--text\x20option'),void(process['exitCode']=0x1);_0x4d0691=readFileSync(_0x51e019,_0x490451(0xda));}_0x4d0691[_0x490451(0xf8)]>0x7a120&&console['error'](_0x490451(0xed)+_0x2a427e[_0x490451(0xf2)](_0x4d0691['length'],0x3e8)['toFixed'](0x0)+_0x490451(0xc3));const _0x5b75e6=_0x2e5d7e[_0x490451(0xd4)](_0x4d0691),_0x1f41cc=_0x2e5d7e['estimateTokens'](_0x4d0691);console[_0x490451(0xeb)](JSON['stringify']({'file':_0x51e019??_0x490451(0xd9),'tokens':_0x5b75e6,'tokens_method':_0x490451(0xc8),'estimate':_0x1f41cc,'estimate_method':_0x490451(0xfc)+('openai'===_0x5759ef[_0x490451(0xc6)]?_0x490451(0xee):_0x2a427e['HCvAK'])+')','provider':_0x5759ef[_0x490451(0xc6)],'model':_0x57de37}));}),_0x2cbcb0[_0x112347(0xc7)](_0x2a427e['kfbOp'])[_0x112347(0xe0)](_0x2a427e['PSBqQ'])['argument'](_0x112347(0xd0),_0x112347(0xe7),'tokenizer-speedup.yaml')['action'](async _0x2a1412=>{const _0xfb2ea=_0x112347;try{const _0x289904=_0x2a427e[_0xfb2ea(0xd5)](readFileSync,_0x2a1412,_0xfb2ea(0xda)),{parseConfig:_0x15f25a}=await import('../plugin/config-loader.js'),_0x5ddab3=_0x2a427e[_0xfb2ea(0xe3)](_0x15f25a,_0x289904);console['log'](JSON['stringify']({'valid':!0x0,'provider':_0x5ddab3[_0xfb2ea(0xc6)],'model':_0x5ddab3['model'],'ruleCount':_0x5ddab3[_0xfb2ea(0xdd)]['length']}));}catch(_0x4e78d9){console['log'](JSON[_0xfb2ea(0xc4)]({'valid':!0x1,'error':_0x4e78d9['message']})),process['exitCode']=0x1;}}),_0x2cbcb0[_0x112347(0xc7)](_0x112347(0xd6))[_0x112347(0xe0)](_0x112347(0xd7))[_0x112347(0xf5)](()=>{runInit();}),_0x2cbcb0;}const resolvedArgv1=((()=>{const _0x3196e9=_0x5603;try{return realpathSync(process[_0x3196e9(0xc9)][0x1]??'')[_0x3196e9(0xf3)](/\\/g,'/');}catch{return process[_0x3196e9(0xc9)][0x1]?.[_0x3196e9(0xf3)](/\\/g,'/')??'';}})());function _0x5603(_0x69cbf1,_0x5d9afc){_0x69cbf1=_0x69cbf1-0xc3;const _0x30f3b0=_0x30f3();let _0x560314=_0x30f3b0[_0x69cbf1];return _0x560314;}resolvedArgv1['includes'](_0x58bb9f(0xdf))&&buildCLI()['parse']();
2
+ const _0x2a6fb1=_0x58d8;(function(_0x53482e,_0x127909){const _0x2bd42a=_0x58d8,_0x192395=_0x53482e();while(!![]){try{const _0x174517=-parseInt(_0x2bd42a(0xad))/0x1+parseInt(_0x2bd42a(0xbe))/0x2+parseInt(_0x2bd42a(0xdd))/0x3*(-parseInt(_0x2bd42a(0xca))/0x4)+-parseInt(_0x2bd42a(0xde))/0x5*(parseInt(_0x2bd42a(0xd1))/0x6)+-parseInt(_0x2bd42a(0xd8))/0x7+parseInt(_0x2bd42a(0xc8))/0x8+parseInt(_0x2bd42a(0xdf))/0x9;if(_0x174517===_0x127909)break;else _0x192395['push'](_0x192395['shift']());}catch(_0x2a5353){_0x192395['push'](_0x192395['shift']());}}}(_0x443e,0x72062));function _0x443e(){const _0x295100=['version','tEYfz','toFixed','includes','replace','text','lkoln','HUQSu','addHelpText','Validate\x20configuration\x20file','LLM\x20provider\x20(claude,\x20openai)','Config\x20file\x20path','init','EEnPh','1804590RuwgJM','rules','UrXVb','TWoVe','requiredOption','Configure\x20TokenizerSpeedUp\x20with\x20your\x20API\x20key\x20and\x20register\x20Claude\x20Code\x20hooks','claude-sonnet-4-20250514','[file]','Model\x20name','K\x20chars)\x20—\x20processing\x20may\x20be\x20slow.','5114176dHiHEE','command','1015004qIQiNU','action','QpnBv','tokenizer-speedup.yaml','option','exitCode','error','1146poFElO','description','openai','1.3','estimateTokens','length','cli/index','5311607Wxjojd','word\x20heuristic\x20(words\x20×\x20','claude','wnycj','NEowY','3uIzuKd','7295ifOkeN','3915234otUOBC','Warning:\x20large\x20input\x20(','argument','-p,\x20--provider\x20<provider>','DMKGn','CdsEq','stringify','Analyze\x20inline\x20text\x20instead\x20of\x20file','argv','provider','rxnxs','setup','218330TGYhcq','gpt-4o','Analyze\x20token\x20count\x20of\x20a\x20file\x20or\x20text'];_0x443e=function(){return _0x295100;};return _0x443e();}import{Command}from'commander';import'../shared/providers/claude-provider.js';import'../shared/providers/openai-provider.js';import{createTokenProvider}from'../shared/token-provider.js';import{readFileSync,realpathSync}from'node:fs';import{runSetup}from'./setup-cmd.js';import{runInit}from'./init-cmd.js';export function buildCLI(){const _0x187736=_0x58d8,_0x28b2ef={'UrXVb':function(_0x286747,_0x1b45dd){return _0x286747(_0x1b45dd);},'rxnxs':function(_0x5a1b89,_0x2aeb65){return _0x5a1b89===_0x2aeb65;},'NEowY':_0x187736(0xda),'avsmG':function(_0x1db6cf,_0x50347d,_0x14ad67){return _0x1db6cf(_0x50347d,_0x14ad67);},'hbdHe':'utf-8','CMKir':function(_0x12effd,_0x1502c4){return _0x12effd>_0x1502c4;},'EEnPh':'tsu','HUQSu':'after','tEYfz':_0x187736(0xac),'DMKGn':_0x187736(0xaf),'TWoVe':_0x187736(0xc5),'qQrWH':_0x187736(0xba),'CdsEq':'-m,\x20--model\x20<model>','QpnBv':'-t,\x20--text\x20<text>','MyFuL':_0x187736(0xe6),'lkoln':_0x187736(0xb9),'SlkID':_0x187736(0xbc)},_0x6a5a40=new Command();return _0x6a5a40['name'](_0x28b2ef[_0x187736(0xbd)])[_0x187736(0xd2)]('TokenizerSpeedUp\x20—\x20Multi-LLM\x20Token\x20Optimization\x20CLI')[_0x187736(0xb0)]('0.8.1')[_0x187736(0xb8)](_0x28b2ef[_0x187736(0xb7)],'\x0aExamples:\x0a\x20\x20$\x20tsu\x20setup\x20--api-key\x20YOUR_KEY\x20\x20\x20Configure\x20and\x20register\x20Claude\x20Code\x20hooks\x0a\x20\x20$\x20tsu\x20init\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Create\x20starter\x20tokenizer-speedup.yaml\x0a\x20\x20$\x20tsu\x20analyze\x20src/index.ts\x20\x20\x20\x20\x20\x20\x20Count\x20tokens\x20in\x20a\x20file\x0a\x20\x20$\x20tsu\x20analyze\x20--text\x20\x22Hello\x22\x20\x20\x20\x20\x20Count\x20tokens\x20in\x20inline\x20text\x0a\x20\x20$\x20tsu\x20config\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Validate\x20tokenizer-speedup.yaml\x0a\x0aQuick\x20Start:\x0a\x20\x201.\x20Get\x20your\x20free\x20API\x20key\x20at\x20https://tokenizer-speedup.simosphereai.com\x0a\x20\x202.\x20Run:\x20tsu\x20setup\x20--api-key\x20YOUR_KEY\x0a\x20\x203.\x20Optional:\x20tsu\x20init\x20(creates\x20project-level\x20config)\x0a\x20\x204.\x20Restart\x20Claude\x20Code\x20—\x20the\x20plugin\x20activates\x20automatically\x0a\x0aConfiguration\x20(tokenizer-speedup.yaml):\x0a\x20\x20Place\x20in\x20your\x20project\x20root.\x20Defines\x20keyword\x20triggers,\x20file\x20patterns,\x0a\x20\x20and\x20token\x20limits.\x20Run\x20\x27tsu\x20init\x27\x20to\x20generate\x20a\x20starter\x20config.\x0a\x20\x20Docs:\x20https://tokenizer-speedup.simosphereai.com/#integration\x0a'),_0x6a5a40['command'](_0x28b2ef[_0x187736(0xb1)])['description'](_0x187736(0xc3))[_0x187736(0xc2)]('--api-key\x20<key>','Your\x20TokenizerSpeedUp\x20API\x20key\x20(get\x20one\x20at\x20https://tokenizer-speedup.simosphereai.com)')['action'](_0x4c9af3=>{const _0x47c354=_0x187736;_0x28b2ef[_0x47c354(0xc0)](runSetup,_0x4c9af3['apiKey']);}),_0x6a5a40['command']('analyze')[_0x187736(0xd2)](_0x28b2ef[_0x187736(0xe3)])[_0x187736(0xe1)](_0x28b2ef['TWoVe'],'File\x20to\x20analyze')[_0x187736(0xce)](_0x187736(0xe2),_0x28b2ef['qQrWH'],_0x28b2ef[_0x187736(0xdc)])['option'](_0x28b2ef[_0x187736(0xe4)],_0x187736(0xc6))['option'](_0x28b2ef[_0x187736(0xcc)],_0x28b2ef['MyFuL'])[_0x187736(0xcb)]((_0x3efe4a,_0x1f9774)=>{const _0x41492d=_0x187736,_0x50c6e1=_0x1f9774['model']??(_0x28b2ef[_0x41492d(0xab)](_0x28b2ef[_0x41492d(0xdc)],_0x1f9774['provider'])?_0x41492d(0xc4):_0x41492d(0xae));let _0xb29f8,_0x5e426d;try{_0xb29f8=createTokenProvider(_0x1f9774[_0x41492d(0xe8)],_0x50c6e1);}catch(_0x42bfb6){return console[_0x41492d(0xd0)]('Error:\x20'+_0x42bfb6['message']),void(process[_0x41492d(0xcf)]=0x1);}if(void 0x0!==_0x1f9774[_0x41492d(0xb5)])_0x5e426d=_0x1f9774[_0x41492d(0xb5)];else{if(!_0x3efe4a)return console['error']('Error:\x20provide\x20a\x20file\x20argument\x20or\x20--text\x20option'),void(process[_0x41492d(0xcf)]=0x1);_0x5e426d=_0x28b2ef['avsmG'](readFileSync,_0x3efe4a,_0x28b2ef['hbdHe']);}_0x28b2ef['CMKir'](_0x5e426d['length'],0x7a120)&&console[_0x41492d(0xd0)](_0x41492d(0xe0)+(_0x5e426d[_0x41492d(0xd6)]/0x3e8)[_0x41492d(0xb2)](0x0)+_0x41492d(0xc7));const _0x4a3038=_0xb29f8['countTokens'](_0x5e426d),_0x24ae31=_0xb29f8[_0x41492d(0xd5)](_0x5e426d);console['log'](JSON[_0x41492d(0xe5)]({'file':_0x3efe4a??'(inline)','tokens':_0x4a3038,'tokens_method':'BPE\x20tokenizer\x20(accurate)','estimate':_0x24ae31,'estimate_method':_0x41492d(0xd9)+(_0x28b2ef['rxnxs'](_0x41492d(0xd3),_0x1f9774['provider'])?_0x41492d(0xd4):'1.4')+')','provider':_0x1f9774[_0x41492d(0xe8)],'model':_0x50c6e1}));}),_0x6a5a40[_0x187736(0xc9)]('config')[_0x187736(0xd2)](_0x28b2ef[_0x187736(0xb6)])['argument'](_0x28b2ef[_0x187736(0xc1)],_0x187736(0xbb),_0x187736(0xcd))['action'](async _0x5b6836=>{const _0x564f5f=_0x187736;try{const _0x50adb8=readFileSync(_0x5b6836,_0x28b2ef['hbdHe']),{parseConfig:_0x4aff99}=await import('../plugin/config-loader.js'),_0x44a882=_0x28b2ef['UrXVb'](_0x4aff99,_0x50adb8);console['log'](JSON[_0x564f5f(0xe5)]({'valid':!0x0,'provider':_0x44a882[_0x564f5f(0xe8)],'model':_0x44a882['model'],'ruleCount':_0x44a882[_0x564f5f(0xbf)][_0x564f5f(0xd6)]}));}catch(_0x5815ff){console['log'](JSON['stringify']({'valid':!0x1,'error':_0x5815ff['message']})),process[_0x564f5f(0xcf)]=0x1;}}),_0x6a5a40['command'](_0x28b2ef['SlkID'])['description']('Create\x20a\x20starter\x20tokenizer-speedup.yaml\x20in\x20the\x20current\x20directory')['action'](()=>{runInit();}),_0x6a5a40;}const resolvedArgv1=((()=>{const _0x40f49b=_0x58d8,_0x36d5d7={'wnycj':function(_0x1dfd2e,_0x315da7){return _0x1dfd2e(_0x315da7);}};try{return _0x36d5d7[_0x40f49b(0xdb)](realpathSync,process[_0x40f49b(0xe7)][0x1]??'')[_0x40f49b(0xb4)](/\\/g,'/');}catch{return process[_0x40f49b(0xe7)][0x1]?.['replace'](/\\/g,'/')??'';}})());function _0x58d8(_0x5c97ae,_0x2b3847){_0x5c97ae=_0x5c97ae-0xab;const _0x443ede=_0x443e();let _0x58d81e=_0x443ede[_0x5c97ae];return _0x58d81e;}resolvedArgv1[_0x2a6fb1(0xb3)](_0x2a6fb1(0xd7))&&buildCLI()['parse']();
@@ -1 +1 @@
1
- const _0x2f47c4=_0xb127;function _0x2f9d(){const _0xc01917=['177lagwAi','tokenizer-speedup.yaml\x20already\x20exists\x20in\x20this\x20directory.','34DurVOM','5TMjBoY','47797QoZqfo','Created\x20tokenizer-speedup.yaml','11256300Yningo','error','48788cXlEQM','vWumu','22140459KIEhLy','exitCode','log','2595342Hbfllv','#\x20tokenizer-speedup.yaml\x20—\x20Project\x20Configuration\x0a#\x20Docs:\x20https://tokenizer-speedup.simosphereai.com/#integration\x0aversion:\x201\x0a\x0arules:\x0a\x20\x20-\x20trigger:\x20[\x22fix\x22,\x20\x22bug\x22,\x20\x22error\x22,\x20\x22crash\x22]\x0a\x20\x20\x20\x20load:\x20\x22docs/lessons-learned/*.md\x22\x0a\x20\x20\x20\x20max_tokens:\x202000\x0a\x0a\x20\x20-\x20trigger:\x20[\x22design\x22,\x20\x22brand\x22,\x20\x22theme\x22]\x0a\x20\x20\x20\x20load:\x20\x22docs/design/*.md\x22\x0a\x20\x20\x20\x20summary_only:\x20true\x0a\x0acontext_limits:\x0a\x20\x20max_injected_tokens:\x204000\x0a\x20\x20max_file_tokens:\x201500\x0a\x20\x20compress_above:\x20800\x0a\x0ametering:\x0a\x20\x20endpoint:\x20\x22https://api.simosphere.ai/v1/meter\x22\x0a\x20\x20batch_interval:\x2060\x0a\x20\x20send_content:\x20false\x0a','717471XpqwGd','\x20\x202.\x20Run:\x20tsu\x20config\x20tokenizer-speedup.yaml\x20\x20(to\x20validate)','8182825fAzWEE','gHGlw','\x20\x203.\x20Restart\x20Claude\x20Code\x20to\x20pick\x20up\x20the\x20new\x20config','utf-8','cwd','168QeyNCu'];_0x2f9d=function(){return _0xc01917;};return _0x2f9d();}(function(_0x106794,_0x1f6546){const _0x5a8954=_0xb127,_0x1b2a65=_0x106794();while(!![]){try{const _0x342fdd=parseInt(_0x5a8954(0xaf))/0x1*(-parseInt(_0x5a8954(0xad))/0x2)+parseInt(_0x5a8954(0xc2))/0x3*(-parseInt(_0x5a8954(0xb3))/0x4)+parseInt(_0x5a8954(0xae))/0x5*(parseInt(_0x5a8954(0xb8))/0x6)+parseInt(_0x5a8954(0xbc))/0x7+parseInt(_0x5a8954(0xc1))/0x8*(parseInt(_0x5a8954(0xba))/0x9)+parseInt(_0x5a8954(0xb1))/0xa+-parseInt(_0x5a8954(0xb5))/0xb;if(_0x342fdd===_0x1f6546)break;else _0x1b2a65['push'](_0x1b2a65['shift']());}catch(_0x571a48){_0x1b2a65['push'](_0x1b2a65['shift']());}}}(_0x2f9d,0xd1100));import{writeFileSync,existsSync}from'node:fs';function _0xb127(_0x15f257,_0x44b6d8){_0x15f257=_0x15f257-0xac;const _0x2f9dc5=_0x2f9d();let _0xb1279e=_0x2f9dc5[_0x15f257];return _0xb1279e;}import{join}from'node:path';const STARTER_CONFIG=_0x2f47c4(0xb9);export function runInit(){const _0x28c6ac=_0x2f47c4,_0xb03cb2={'PyXia':function(_0xe1fbd,_0x1a6593,_0x4c6064){return _0xe1fbd(_0x1a6593,_0x4c6064);},'zozVR':function(_0x29acbf,_0x38c4cc){return _0x29acbf(_0x38c4cc);},'UgPxu':function(_0x41c902,_0x5ea4f8,_0x2734d1,_0x18e5c6){return _0x41c902(_0x5ea4f8,_0x2734d1,_0x18e5c6);},'vWumu':_0x28c6ac(0xb0),'gHGlw':'\x20\x201.\x20Edit\x20the\x20rules\x20to\x20match\x20your\x20project\x20structure','juWzo':_0x28c6ac(0xbe)},_0x3e6e48=_0xb03cb2['PyXia'](join,process[_0x28c6ac(0xc0)](),'tokenizer-speedup.yaml');if(_0xb03cb2['zozVR'](existsSync,_0x3e6e48))return console[_0x28c6ac(0xb2)](_0x28c6ac(0xac)),void(process[_0x28c6ac(0xb6)]=0x1);_0xb03cb2['UgPxu'](writeFileSync,_0x3e6e48,STARTER_CONFIG,_0x28c6ac(0xbf)),console[_0x28c6ac(0xb7)](_0xb03cb2[_0x28c6ac(0xb4)]),console['log'](''),console[_0x28c6ac(0xb7)]('Next\x20steps:'),console[_0x28c6ac(0xb7)](_0xb03cb2[_0x28c6ac(0xbd)]),console['log'](_0x28c6ac(0xbb)),console[_0x28c6ac(0xb7)](_0xb03cb2['juWzo']);}
1
+ const _0xf6a0fd=_0x174a;(function(_0x389c21,_0x34d0ee){const _0x4e38d4=_0x174a,_0x356092=_0x389c21();while(!![]){try{const _0x5cd9b9=-parseInt(_0x4e38d4(0xea))/0x1*(parseInt(_0x4e38d4(0xed))/0x2)+-parseInt(_0x4e38d4(0xdd))/0x3*(-parseInt(_0x4e38d4(0xdf))/0x4)+-parseInt(_0x4e38d4(0xef))/0x5*(parseInt(_0x4e38d4(0xe5))/0x6)+parseInt(_0x4e38d4(0xe1))/0x7+-parseInt(_0x4e38d4(0xe4))/0x8+parseInt(_0x4e38d4(0xe6))/0x9+parseInt(_0x4e38d4(0xe8))/0xa*(parseInt(_0x4e38d4(0xee))/0xb);if(_0x5cd9b9===_0x34d0ee)break;else _0x356092['push'](_0x356092['shift']());}catch(_0x481425){_0x356092['push'](_0x356092['shift']());}}}(_0x3c72,0x202b9));function _0x174a(_0x14278f,_0x3e3f15){_0x14278f=_0x14278f-0xdd;const _0x3c7214=_0x3c72();let _0x174aef=_0x3c7214[_0x14278f];return _0x174aef;}import{writeFileSync,existsSync}from'node:fs';import{join}from'node:path';function _0x3c72(){const _0x203def=['iWQTC','21170QVDQxK','1133YTsiRS','313265QTEXhq','\x20\x203.\x20Restart\x20Claude\x20Code\x20to\x20pick\x20up\x20the\x20new\x20config','12783nOZsDZ','rSPGf','196ImPgUW','error','1500632navfFo','CWctr','tokenizer-speedup.yaml\x20already\x20exists\x20in\x20this\x20directory.','2096560gqdZsi','18PpMGBe','46098wudyqi','#\x20tokenizer-speedup.yaml\x20—\x20Project\x20Configuration\x0a#\x20Docs:\x20https://tokenizer-speedup.simosphereai.com/#integration\x0aversion:\x201\x0a\x0arules:\x0a\x20\x20-\x20trigger:\x20[\x22fix\x22,\x20\x22bug\x22,\x20\x22error\x22,\x20\x22crash\x22]\x0a\x20\x20\x20\x20load:\x20\x22docs/lessons-learned/*.md\x22\x0a\x20\x20\x20\x20max_tokens:\x202000\x0a\x0a\x20\x20-\x20trigger:\x20[\x22design\x22,\x20\x22brand\x22,\x20\x22theme\x22]\x0a\x20\x20\x20\x20load:\x20\x22docs/design/*.md\x22\x0a\x20\x20\x20\x20summary_only:\x20true\x0a\x0acontext_limits:\x0a\x20\x20max_injected_tokens:\x204000\x0a\x20\x20max_file_tokens:\x201500\x0a\x20\x20compress_above:\x20800\x0a\x0ametering:\x0a\x20\x20endpoint:\x20\x22https://api.simosphere.ai/v1/meter\x22\x0a\x20\x20batch_interval:\x2060\x0a\x20\x20send_content:\x20false\x0a','21070ToLbFl','\x20\x201.\x20Edit\x20the\x20rules\x20to\x20match\x20your\x20project\x20structure','6RFnVOA','log'];_0x3c72=function(){return _0x203def;};return _0x3c72();}const STARTER_CONFIG=_0xf6a0fd(0xe7);export function runInit(){const _0xb8d16b=_0xf6a0fd,_0x4be0a8={'CWctr':function(_0x5db7a0,_0x30e74a,_0xafd05){return _0x5db7a0(_0x30e74a,_0xafd05);},'jytTU':function(_0x359191,_0x22824e){return _0x359191(_0x22824e);},'rSPGf':_0xb8d16b(0xe3),'iWQTC':'Created\x20tokenizer-speedup.yaml','rcEtJ':_0xb8d16b(0xf0)},_0x17ea4a=_0x4be0a8[_0xb8d16b(0xe2)](join,process['cwd'](),'tokenizer-speedup.yaml');if(_0x4be0a8['jytTU'](existsSync,_0x17ea4a))return console[_0xb8d16b(0xe0)](_0x4be0a8[_0xb8d16b(0xde)]),void(process['exitCode']=0x1);writeFileSync(_0x17ea4a,STARTER_CONFIG,'utf-8'),console[_0xb8d16b(0xeb)](_0x4be0a8[_0xb8d16b(0xec)]),console['log'](''),console['log']('Next\x20steps:'),console['log'](_0xb8d16b(0xe9)),console['log']('\x20\x202.\x20Run:\x20tsu\x20config\x20tokenizer-speedup.yaml\x20\x20(to\x20validate)'),console['log'](_0x4be0a8['rcEtJ']);}
@@ -1 +1 @@
1
- function _0x5926(){const _0x1f45f9=['3318357XKBsZd','✅\x20API\x20key\x20saved\x20successfully.','6LfOiKo','Stop','error','72JDQoMM','command','856398FFaToq','ukiQq','apiKey','Setup\x20complete.\x20Please\x20restart\x20Claude\x20Code\x20to\x20activate\x20the\x20plugin.','settings.local.json','length','trim','log','27108675RFZRlr','YiTit','135530PgqyYf','message','191215yTmFPs','3757473vNVBjz','jUZeS','iyUrN','utf-8','exitCode','jqWLr','✅\x20Hooks\x20registered\x20in\x20Claude\x20Code\x20settings.','jhTAs','FeAUr','stringify','bJdjt','MjUjC','parse','tokenizer-speedup','2946568kqtRvH'];_0x5926=function(){return _0x1f45f9;};return _0x5926();}const _0x506328=_0x2d8f;(function(_0x359ea1,_0x31706c){const _0x5c281a=_0x2d8f,_0x28b22b=_0x359ea1();while(!![]){try{const _0x4cb707=-parseInt(_0x5c281a(0x1be))/0x1*(parseInt(_0x5c281a(0x1d2))/0x2)+-parseInt(_0x5c281a(0x1c1))/0x3+parseInt(_0x5c281a(0x1d5))/0x4*(-parseInt(_0x5c281a(0x1c0))/0x5)+-parseInt(_0x5c281a(0x1d7))/0x6+parseInt(_0x5c281a(0x1d0))/0x7+-parseInt(_0x5c281a(0x1cf))/0x8+parseInt(_0x5c281a(0x1df))/0x9;if(_0x4cb707===_0x31706c)break;else _0x28b22b['push'](_0x28b22b['shift']());}catch(_0x329f43){_0x28b22b['push'](_0x28b22b['shift']());}}}(_0x5926,0x993a1));import{readFileSync,writeFileSync,mkdirSync}from'node:fs';import{join}from'node:path';import{homedir}from'node:os';function _0x2d8f(_0x46e17f,_0x4365e0){_0x46e17f=_0x46e17f-0x1bd;const _0x5926ac=_0x5926();let _0x2d8f45=_0x5926ac[_0x46e17f];return _0x2d8f45;}const CONFIG_DIR=join(homedir(),'.config',_0x506328(0x1ce)),CONFIG_FILE=join(CONFIG_DIR,'config.json'),CLAUDE_SETTINGS_FILE=join(homedir(),'.claude',_0x506328(0x1db));export function runSetup(_0x39f417){const _0x53e3c0=_0x506328,_0x45d042={'jUZeS':'❌\x20API\x20key\x20cannot\x20be\x20empty.','bJdjt':'❌\x20API\x20key\x20is\x20too\x20short\x20(minimum\x208\x20characters).','jqWLr':function(_0x4fe9c4,_0x51926c){return _0x4fe9c4(_0x51926c);},'PCdfs':_0x53e3c0(0x1d1),'jhTAs':'⚠️\x20\x20Claude\x20Code\x20will\x20restart\x20automatically\x20to\x20load\x20the\x20plugin.\x20This\x20is\x20expected\x20behavior.','YiTit':function(_0x342577){return _0x342577();},'WCpEm':_0x53e3c0(0x1da)};try{if(!_0x39f417||0x0===_0x39f417[_0x53e3c0(0x1dd)]()[_0x53e3c0(0x1dc)])return console['error'](_0x45d042[_0x53e3c0(0x1c2)]),void(process[_0x53e3c0(0x1c5)]=0x1);if(_0x39f417[_0x53e3c0(0x1dd)]()[_0x53e3c0(0x1dc)]<0x8)return console[_0x53e3c0(0x1d4)](_0x45d042[_0x53e3c0(0x1cb)]),void(process[_0x53e3c0(0x1c5)]=0x1);_0x45d042[_0x53e3c0(0x1c6)](saveApiKey,_0x39f417['trim']()),console['log'](_0x45d042['PCdfs']),console[_0x53e3c0(0x1de)](_0x45d042[_0x53e3c0(0x1c8)]),_0x45d042[_0x53e3c0(0x1bd)](registerHooks),console['log'](_0x53e3c0(0x1c7)),console[_0x53e3c0(0x1de)](''),console['log'](_0x45d042['WCpEm']);}catch(_0x4f0eb0){console[_0x53e3c0(0x1d4)]('❌\x20Setup\x20failed:\x20'+_0x4f0eb0[_0x53e3c0(0x1bf)]),process[_0x53e3c0(0x1c5)]=0x1;}}function saveApiKey(_0x1836e1){const _0x439858=_0x506328,_0x24caba={'ukiQq':function(_0x2f87b3,_0x267fdf,_0x3a670f,_0x5a2778){return _0x2f87b3(_0x267fdf,_0x3a670f,_0x5a2778);}};mkdirSync(CONFIG_DIR,{'recursive':!0x0});let _0x37fffb={};try{_0x37fffb=JSON[_0x439858(0x1cd)](readFileSync(CONFIG_FILE,_0x439858(0x1c4)));}catch{}_0x37fffb[_0x439858(0x1d9)]=_0x1836e1,_0x24caba[_0x439858(0x1d8)](writeFileSync,CONFIG_FILE,JSON['stringify'](_0x37fffb,null,0x2)+'\x0a','utf-8');}function registerHooks(){const _0x546430=_0x506328,_0x161f25={'MjUjC':function(_0x2aeed9,_0x538996,_0xee300){return _0x2aeed9(_0x538996,_0xee300);},'FeAUr':function(_0x1c5e87){return _0x1c5e87();},'fvNHI':'.claude','zcYlL':_0x546430(0x1c4),'iyUrN':_0x546430(0x1d6),'KTmvl':'tokenizer-speedup'};_0x161f25[_0x546430(0x1cc)](mkdirSync,_0x161f25[_0x546430(0x1cc)](join,_0x161f25[_0x546430(0x1c9)](homedir),_0x161f25['fvNHI']),{'recursive':!0x0});let _0x55f5e7={};try{_0x55f5e7=JSON['parse'](readFileSync(CLAUDE_SETTINGS_FILE,_0x161f25['zcYlL']));}catch{}const _0x2391c5=_0x55f5e7['hooks']??{};_0x2391c5['SessionStart']=[{'matcher':'startup|resume|clear|compact','hooks':[{'type':_0x161f25[_0x546430(0x1c3)],'command':_0x161f25['KTmvl'],'timeout':0x5}]}],_0x2391c5['UserPromptSubmit']=[{'matcher':'','hooks':[{'type':_0x546430(0x1d6),'command':'tokenizer-speedup'}]}],_0x2391c5['PreCompact']=[{'matcher':'','hooks':[{'type':'command','command':_0x546430(0x1ce),'timeout':0xa}]}],_0x2391c5[_0x546430(0x1d3)]=[{'matcher':'','hooks':[{'type':_0x161f25[_0x546430(0x1c3)],'command':'tokenizer-speedup','timeout':0xa}]}],_0x55f5e7['hooks']=_0x2391c5,writeFileSync(CLAUDE_SETTINGS_FILE,JSON[_0x546430(0x1ca)](_0x55f5e7,null,0x2)+'\x0a',_0x546430(0x1c4));}export function loadApiKeyFromConfig(){const _0x320bcd=_0x506328,_0x2c8359={'YvZPQ':_0x320bcd(0x1c4)};try{return JSON[_0x320bcd(0x1cd)](readFileSync(CONFIG_FILE,_0x2c8359['YvZPQ']))[_0x320bcd(0x1d9)]??void 0x0;}catch{return;}}
1
+ function _0x4c78(){const _0x5dd71d=['tokenizer-speedup','1469vLbenq','stringify','BqLuv','2LxvuMC','Stop','DyeAW','.config','utf-8','LUXlb','hooks','.claude','730966cRhPOd','uakSl','nDcMj','CYxPf','3280968letpRO','✅\x20API\x20key\x20saved\x20successfully.','EBoUu','log','exitCode','101300vjJmAg','20UFqEHj','error','biHCr','length','9333093XuLvXs','253068ZoVJju','10hjZUzM','parse','EYBuB','3191508fWyBFN','21qYjrZh','1431618fSyEbo','159Ulcgwd','trim'];_0x4c78=function(){return _0x5dd71d;};return _0x4c78();}const _0x354a3f=_0x4842;function _0x4842(_0xf6ffe,_0xdd565c){_0xf6ffe=_0xf6ffe-0x15d;const _0x4c781d=_0x4c78();let _0x4842d5=_0x4c781d[_0xf6ffe];return _0x4842d5;}(function(_0x42bd08,_0x54e344){const _0x5ccf2f=_0x4842,_0x3ac89d=_0x42bd08();while(!![]){try{const _0x431b9b=-parseInt(_0x5ccf2f(0x16d))/0x1*(parseInt(_0x5ccf2f(0x165))/0x2)+parseInt(_0x5ccf2f(0x15f))/0x3*(parseInt(_0x5ccf2f(0x176))/0x4)+-parseInt(_0x5ccf2f(0x177))/0x5*(-parseInt(_0x5ccf2f(0x15e))/0x6)+-parseInt(_0x5ccf2f(0x15d))/0x7*(-parseInt(_0x5ccf2f(0x171))/0x8)+-parseInt(_0x5ccf2f(0x180))/0x9+parseInt(_0x5ccf2f(0x17d))/0xa*(parseInt(_0x5ccf2f(0x17b))/0xb)+-parseInt(_0x5ccf2f(0x17c))/0xc*(parseInt(_0x5ccf2f(0x162))/0xd);if(_0x431b9b===_0x54e344)break;else _0x3ac89d['push'](_0x3ac89d['shift']());}catch(_0x48e63d){_0x3ac89d['push'](_0x3ac89d['shift']());}}}(_0x4c78,0xdd64c));import{readFileSync,writeFileSync,mkdirSync}from'node:fs';import{join}from'node:path';import{homedir}from'node:os';const CONFIG_DIR=join(homedir(),_0x354a3f(0x168),'tokenizer-speedup'),CONFIG_FILE=join(CONFIG_DIR,'config.json'),CLAUDE_SETTINGS_FILE=join(homedir(),_0x354a3f(0x16c),'settings.local.json');export function runSetup(_0x56d5bd){const _0x1fb069=_0x354a3f,_0x3b4a2e={'cqfPT':function(_0x1da860,_0x29f22f){return _0x1da860===_0x29f22f;},'biHCr':'❌\x20API\x20key\x20cannot\x20be\x20empty.','fsZhW':'❌\x20API\x20key\x20is\x20too\x20short\x20(minimum\x208\x20characters).','RWsyL':function(_0x34e345,_0x1e154e){return _0x34e345(_0x1e154e);},'LUXlb':'⚠️\x20\x20Claude\x20Code\x20will\x20restart\x20automatically\x20to\x20load\x20the\x20plugin.\x20This\x20is\x20expected\x20behavior.','EYBuB':function(_0x21e41f){return _0x21e41f();}};try{if(!_0x56d5bd||_0x3b4a2e['cqfPT'](0x0,_0x56d5bd[_0x1fb069(0x160)]()[_0x1fb069(0x17a)]))return console[_0x1fb069(0x178)](_0x3b4a2e[_0x1fb069(0x179)]),void(process['exitCode']=0x1);if(_0x56d5bd['trim']()[_0x1fb069(0x17a)]<0x8)return console[_0x1fb069(0x178)](_0x3b4a2e['fsZhW']),void(process['exitCode']=0x1);_0x3b4a2e['RWsyL'](saveApiKey,_0x56d5bd[_0x1fb069(0x160)]()),console[_0x1fb069(0x174)](_0x1fb069(0x172)),console[_0x1fb069(0x174)](_0x3b4a2e[_0x1fb069(0x16a)]),_0x3b4a2e[_0x1fb069(0x17f)](registerHooks),console[_0x1fb069(0x174)]('✅\x20Hooks\x20registered\x20in\x20Claude\x20Code\x20settings.'),console[_0x1fb069(0x174)](''),console[_0x1fb069(0x174)]('Setup\x20complete.\x20Please\x20restart\x20Claude\x20Code\x20to\x20activate\x20the\x20plugin.');}catch(_0x28810e){console[_0x1fb069(0x178)]('❌\x20Setup\x20failed:\x20'+_0x28810e['message']),process[_0x1fb069(0x175)]=0x1;}}function saveApiKey(_0x41b192){const _0x3327a0=_0x354a3f,_0x5b332e={'uakSl':function(_0xb32c02,_0x4c85ff,_0x183ee0){return _0xb32c02(_0x4c85ff,_0x183ee0);},'EBoUu':'utf-8'};mkdirSync(CONFIG_DIR,{'recursive':!0x0});let _0x28f379={};try{_0x28f379=JSON[_0x3327a0(0x17e)](_0x5b332e[_0x3327a0(0x16e)](readFileSync,CONFIG_FILE,_0x5b332e[_0x3327a0(0x173)]));}catch{}_0x28f379['apiKey']=_0x41b192,writeFileSync(CONFIG_FILE,JSON[_0x3327a0(0x163)](_0x28f379,null,0x2)+'\x0a','utf-8');}function registerHooks(){const _0x398129=_0x354a3f,_0x923114={'BqLuv':function(_0x1c4f3a,_0x31cfd6,_0x57d6ba){return _0x1c4f3a(_0x31cfd6,_0x57d6ba);},'DyeAW':'utf-8','CYxPf':'command','nDcMj':_0x398129(0x161),'CJXWx':function(_0x213a4e,_0xd10a5,_0x59c003,_0x4229fe){return _0x213a4e(_0xd10a5,_0x59c003,_0x4229fe);}};_0x923114[_0x398129(0x164)](mkdirSync,join(homedir(),_0x398129(0x16c)),{'recursive':!0x0});let _0x534364={};try{_0x534364=JSON['parse'](_0x923114['BqLuv'](readFileSync,CLAUDE_SETTINGS_FILE,_0x923114[_0x398129(0x167)]));}catch{}const _0x2d37a9=_0x534364[_0x398129(0x16b)]??{};_0x2d37a9['SessionStart']=[{'matcher':'startup|resume|clear|compact','hooks':[{'type':_0x923114[_0x398129(0x170)],'command':_0x923114[_0x398129(0x16f)],'timeout':0x5}]}],_0x2d37a9['UserPromptSubmit']=[{'matcher':'','hooks':[{'type':_0x923114['CYxPf'],'command':'tokenizer-speedup'}]}],_0x2d37a9['PreCompact']=[{'matcher':'','hooks':[{'type':_0x923114['CYxPf'],'command':_0x923114[_0x398129(0x16f)],'timeout':0xa}]}],_0x2d37a9[_0x398129(0x166)]=[{'matcher':'','hooks':[{'type':_0x923114[_0x398129(0x170)],'command':'tokenizer-speedup','timeout':0xa}]}],_0x534364[_0x398129(0x16b)]=_0x2d37a9,_0x923114['CJXWx'](writeFileSync,CLAUDE_SETTINGS_FILE,JSON['stringify'](_0x534364,null,0x2)+'\x0a',_0x923114['DyeAW']);}export function loadApiKeyFromConfig(){const _0x21ee84=_0x354a3f,_0x437b00={'gmAXo':function(_0x16285c,_0x13cda0,_0x2848e0){return _0x16285c(_0x13cda0,_0x2848e0);}};try{return JSON[_0x21ee84(0x17e)](_0x437b00['gmAXo'](readFileSync,CONFIG_FILE,_0x21ee84(0x169)))['apiKey']??void 0x0;}catch{return;}}
@@ -1 +1 @@
1
- function _0x5dc3(_0x2f3bfd,_0x3dbb6f){_0x2f3bfd=_0x2f3bfd-0x77;const _0x296280=_0x2962();let _0x5dc3ef=_0x296280[_0x2f3bfd];return _0x5dc3ef;}function _0x2962(){const _0x1c4285=['subscription','1580448HOWLWP','successUrl','242298CcaTgW','push','2767233xfxkel','20872rbJBTQ','824190japBsm','meteredPriceId','347442zPtuPM','3094856XJgllo','tier','655AfDJXJ'];_0x2962=function(){return _0x1c4285;};return _0x2962();}(function(_0x3ba1c4,_0x4873dc){const _0x5643fc=_0x5dc3,_0x3f3b41=_0x3ba1c4();while(!![]){try{const _0x3f9658=parseInt(_0x5643fc(0x77))/0x1+-parseInt(_0x5643fc(0x7e))/0x2+-parseInt(_0x5643fc(0x82))/0x3+parseInt(_0x5643fc(0x81))/0x4*(parseInt(_0x5643fc(0x7a))/0x5)+-parseInt(_0x5643fc(0x7c))/0x6+parseInt(_0x5643fc(0x80))/0x7+-parseInt(_0x5643fc(0x78))/0x8;if(_0x3f9658===_0x4873dc)break;else _0x3f3b41['push'](_0x3f3b41['shift']());}catch(_0x31a50f){_0x3f3b41['push'](_0x3f3b41['shift']());}}}(_0x2962,0x5cd0f));export function buildCheckoutParams(_0x4bd3d1){const _0x5870d4=_0x5dc3,_0x225ef5={'lApww':_0x5870d4(0x7b)},_0x52b7fe=[{'price':_0x4bd3d1['recurringPriceId'],'quantity':0x1}];return _0x4bd3d1[_0x5870d4(0x83)]&&_0x52b7fe[_0x5870d4(0x7f)]({'price':_0x4bd3d1['meteredPriceId']}),{'customer':_0x4bd3d1['customerId'],'mode':_0x225ef5['lApww'],'line_items':_0x52b7fe,'success_url':_0x4bd3d1[_0x5870d4(0x7d)],'cancel_url':_0x4bd3d1['cancelUrl'],'metadata':{'tier':_0x4bd3d1[_0x5870d4(0x79)]}};}
1
+ function _0x3c99(_0x554c1b,_0x466eb9){_0x554c1b=_0x554c1b-0xfd;const _0x5db8b9=_0x5db8();let _0x3c9960=_0x5db8b9[_0x554c1b];return _0x3c9960;}(function(_0x424b53,_0x2adedb){const _0x4cd69e=_0x3c99,_0x25fe45=_0x424b53();while(!![]){try{const _0x4d694b=-parseInt(_0x4cd69e(0x106))/0x1+parseInt(_0x4cd69e(0xfe))/0x2*(parseInt(_0x4cd69e(0xfd))/0x3)+parseInt(_0x4cd69e(0x100))/0x4*(-parseInt(_0x4cd69e(0x102))/0x5)+parseInt(_0x4cd69e(0x108))/0x6+-parseInt(_0x4cd69e(0xff))/0x7+-parseInt(_0x4cd69e(0x107))/0x8+parseInt(_0x4cd69e(0x104))/0x9*(parseInt(_0x4cd69e(0x101))/0xa);if(_0x4d694b===_0x2adedb)break;else _0x25fe45['push'](_0x25fe45['shift']());}catch(_0x573e9a){_0x25fe45['push'](_0x25fe45['shift']());}}}(_0x5db8,0xcc1d7));export function buildCheckoutParams(_0x3dd660){const _0x59512f=_0x3c99,_0x417007={'nZWTR':'subscription'},_0xe5fb1b=[{'price':_0x3dd660[_0x59512f(0x10a)],'quantity':0x1}];return _0x3dd660[_0x59512f(0x109)]&&_0xe5fb1b[_0x59512f(0x10b)]({'price':_0x3dd660[_0x59512f(0x109)]}),{'customer':_0x3dd660[_0x59512f(0x105)],'mode':_0x417007[_0x59512f(0x103)],'line_items':_0xe5fb1b,'success_url':_0x3dd660['successUrl'],'cancel_url':_0x3dd660['cancelUrl'],'metadata':{'tier':_0x3dd660['tier']}};}function _0x5db8(){const _0x558e39=['630ZTwqLR','6099408RrAvmn','111472pcaxLq','735070KyowRI','60nHWsAf','nZWTR','324UfeWuP','customerId','841444FeaIid','12499456elbLLU','6402384oyrsIp','meteredPriceId','recurringPriceId','push','6975eGLupE'];_0x5db8=function(){return _0x558e39;};return _0x5db8();}
@@ -1 +1 @@
1
- const _0x15bba3=_0x2008;(function(_0x3e2ce7,_0x1dadf5){const _0x5e6067=_0x2008,_0x566583=_0x3e2ce7();while(!![]){try{const _0x3e777f=-parseInt(_0x5e6067(0x149))/0x1*(-parseInt(_0x5e6067(0x14b))/0x2)+-parseInt(_0x5e6067(0x147))/0x3*(-parseInt(_0x5e6067(0x14f))/0x4)+parseInt(_0x5e6067(0x156))/0x5*(-parseInt(_0x5e6067(0x155))/0x6)+-parseInt(_0x5e6067(0x154))/0x7*(-parseInt(_0x5e6067(0x152))/0x8)+-parseInt(_0x5e6067(0x14e))/0x9+-parseInt(_0x5e6067(0x157))/0xa*(-parseInt(_0x5e6067(0x14d))/0xb)+parseInt(_0x5e6067(0x153))/0xc*(-parseInt(_0x5e6067(0x14c))/0xd);if(_0x3e777f===_0x1dadf5)break;else _0x566583['push'](_0x566583['shift']());}catch(_0x1d0c1e){_0x566583['push'](_0x566583['shift']());}}}(_0x330d,0xb6216));function _0x330d(){const _0x47c9ab=['696865hNzRrG','TokenizerSpeedUp\x20Team','4pMwtfM','962GpKZPQ','77HQYaDO','2801997OrQoNX','7636zPlUsX','Per-seat\x20pricing.\x20$15/mo/seat\x20+\x208%\x20of\x20savings\x20over\x201M\x20tokens.','Unlimited\x20optimization.\x20$5/mo\x20+\x2010%\x20of\x20savings\x20over\x20500K\x20tokens.','2041944dqpMtC','271212cMYZlZ','21gOWKKu','381216RlFgfD','30tqvirb','1193030IKVhrv','183IDZPPp','TokenizerSpeedUp\x20Pro'];_0x330d=function(){return _0x47c9ab;};return _0x330d();}function _0x2008(_0x1dedd9,_0x2aae02){_0x1dedd9=_0x1dedd9-0x147;const _0x330def=_0x330d();let _0x200898=_0x330def[_0x1dedd9];return _0x200898;}export const STRIPE_CONFIG={'free':{'name':'TokenizerSpeedUp\x20Free','description':'Up\x20to\x20100K\x20tokens\x20saved/month.\x20Basic\x20dashboard.','recurringPrice':0x0},'pro':{'name':_0x15bba3(0x148),'description':_0x15bba3(0x151),'recurringPrice':0x1f4,'meteredUnitAmount':0x1e},'team':{'name':_0x15bba3(0x14a),'description':_0x15bba3(0x150),'recurringPrice':0x5dc,'meteredUnitAmount':0x18}};
1
+ const _0x47f661=_0xfe98;function _0x8dbf(){const _0x2e9fc1=['357012LftOYJ','1288614patJMD','45dBJEeb','Per-seat\x20pricing.\x20$15/mo/seat\x20+\x208%\x20of\x20savings\x20over\x201M\x20tokens.','644008TDULad','533151gMRlrT','515910SEBzyD','TokenizerSpeedUp\x20Free','80RwJacl','264gQQMHR','59852bwYPXP','116giflBV','Unlimited\x20optimization.\x20$5/mo\x20+\x2010%\x20of\x20savings\x20over\x20500K\x20tokens.','7xqXJJb','32695WrXcCq'];_0x8dbf=function(){return _0x2e9fc1;};return _0x8dbf();}function _0xfe98(_0x46277e,_0x32e422){_0x46277e=_0x46277e-0x14d;const _0x8dbfa5=_0x8dbf();let _0xfe9850=_0x8dbfa5[_0x46277e];return _0xfe9850;}(function(_0x8ee25,_0x5247f0){const _0x2bd0af=_0xfe98,_0x31cf1b=_0x8ee25();while(!![]){try{const _0x484805=parseInt(_0x2bd0af(0x14d))/0x1+parseInt(_0x2bd0af(0x151))/0x2*(-parseInt(_0x2bd0af(0x158))/0x3)+parseInt(_0x2bd0af(0x152))/0x4*(parseInt(_0x2bd0af(0x155))/0x5)+-parseInt(_0x2bd0af(0x157))/0x6+parseInt(_0x2bd0af(0x154))/0x7*(parseInt(_0x2bd0af(0x15a))/0x8)+parseInt(_0x2bd0af(0x15b))/0x9*(-parseInt(_0x2bd0af(0x14f))/0xa)+parseInt(_0x2bd0af(0x150))/0xb*(parseInt(_0x2bd0af(0x156))/0xc);if(_0x484805===_0x5247f0)break;else _0x31cf1b['push'](_0x31cf1b['shift']());}catch(_0x34d251){_0x31cf1b['push'](_0x31cf1b['shift']());}}}(_0x8dbf,0x587ff));export const STRIPE_CONFIG={'free':{'name':_0x47f661(0x14e),'description':'Up\x20to\x20100K\x20tokens\x20saved/month.\x20Basic\x20dashboard.','recurringPrice':0x0},'pro':{'name':'TokenizerSpeedUp\x20Pro','description':_0x47f661(0x153),'recurringPrice':0x1f4,'meteredUnitAmount':0x1e},'team':{'name':'TokenizerSpeedUp\x20Team','description':_0x47f661(0x159),'recurringPrice':0x5dc,'meteredUnitAmount':0x18}};
@@ -1 +1 @@
1
- const _0x5bc67a=_0x1e6b;(function(_0x5d6a7c,_0x1491f6){const _0x18e154=_0x1e6b,_0x44cb8c=_0x5d6a7c();while(!![]){try{const _0x58fa09=parseInt(_0x18e154(0xd3))/0x1*(-parseInt(_0x18e154(0xd9))/0x2)+parseInt(_0x18e154(0xe4))/0x3*(parseInt(_0x18e154(0xd8))/0x4)+-parseInt(_0x18e154(0xd6))/0x5*(-parseInt(_0x18e154(0xda))/0x6)+parseInt(_0x18e154(0xdc))/0x7+-parseInt(_0x18e154(0xd4))/0x8+parseInt(_0x18e154(0xd2))/0x9*(-parseInt(_0x18e154(0xdd))/0xa)+parseInt(_0x18e154(0xd7))/0xb;if(_0x58fa09===_0x1491f6)break;else _0x44cb8c['push'](_0x44cb8c['shift']());}catch(_0x343709){_0x44cb8c['push'](_0x44cb8c['shift']());}}}(_0x201e,0x5ad6e));function _0x201e(){const _0x59b3c3=['4380icRpLU','1135476dlsavY','allowance','3013115UVwboN','1786930FzpCCI','unitRate','meteredUnitAmount','now','floor','team','dujHl','10683VyFFMp','aBDbZ','ceil','27qHXOrU','70veNXQU','2560000EkESLo','chargeableUnits','10SLFtkH','1048806tzUsDI','536HgtQWh'];_0x201e=function(){return _0x59b3c3;};return _0x201e();}import{STRIPE_CONFIG}from'./stripe-config.js';function _0x1e6b(_0x2efd77,_0x3f46ac){_0x2efd77=_0x2efd77-0xd1;const _0x201e89=_0x201e();let _0x1e6b36=_0x201e89[_0x2efd77];return _0x1e6b36;}const TIER_LIMITS={'free':{'allowance':0x186a0,'unitRate':0x0},'pro':{'allowance':0x7a120,'unitRate':STRIPE_CONFIG['pro'][_0x5bc67a(0xdf)]},'team':{'allowance':0xf4240,'unitRate':STRIPE_CONFIG[_0x5bc67a(0xe2)]['meteredUnitAmount']}};export function calculateUsageCharge(_0x2418e0,_0x349e88){const _0x2e70ef=_0x5bc67a,_0x4a7b40={'dujHl':function(_0x2b164d,_0x34451e){return _0x2b164d*_0x34451e;}},_0x505789=TIER_LIMITS[_0x2418e0];if(0x0===_0x505789['unitRate'])return{'tier':_0x2418e0,'tokensSaved':_0x349e88,'freeAllowance':_0x505789[_0x2e70ef(0xdb)],'chargeableTokens':0x0,'chargeableUnits':0x0,'unitRate':0x0,'amount':0x0};const _0x138628=Math['max'](0x0,_0x349e88-_0x505789[_0x2e70ef(0xdb)]),_0x5d23f1=Math[_0x2e70ef(0xd1)](_0x138628/0x186a0),_0x4df7ec=_0x4a7b40[_0x2e70ef(0xe3)](_0x5d23f1,_0x505789[_0x2e70ef(0xde)]);return{'tier':_0x2418e0,'tokensSaved':_0x349e88,'freeAllowance':_0x505789[_0x2e70ef(0xdb)],'chargeableTokens':_0x138628,'chargeableUnits':_0x5d23f1,'unitRate':_0x505789['unitRate'],'amount':_0x4df7ec};}export function buildUsageRecord(_0x5cfa9d,_0xb85db7){const _0x4804b5=_0x5bc67a;return{'subscription_item':_0x5cfa9d,'quantity':_0xb85db7,'action':'set','timestamp':Math[_0x4804b5(0xe1)](Date[_0x4804b5(0xe0)]()/0x3e8)};}export function prepareUsageSync(_0x44cd59,_0x28d1c8,_0x15b949){const _0x513475=_0x5bc67a,_0x3525d6={'aNFIS':function(_0x3ae90a,_0x134189,_0xa27858){return _0x3ae90a(_0x134189,_0xa27858);},'aBDbZ':function(_0xe62e7,_0x3d90bd){return _0xe62e7===_0x3d90bd;},'KxwuY':function(_0x32e02a,_0x341333,_0x2ac756){return _0x32e02a(_0x341333,_0x2ac756);}};if(!_0x15b949)return{'synced':!0x1,'subscriptionItemId':'','chargeableUnits':0x0,'tier':_0x44cd59,'error':'no\x20subscription_item_id'};const _0x2f54a0=_0x3525d6['aNFIS'](calculateUsageCharge,_0x44cd59,_0x28d1c8);if(_0x3525d6[_0x513475(0xe5)](0x0,_0x2f54a0['chargeableUnits']))return{'synced':!0x0,'subscriptionItemId':_0x15b949,'chargeableUnits':0x0,'tier':_0x44cd59};return _0x3525d6['KxwuY'](buildUsageRecord,_0x15b949,_0x2f54a0['chargeableUnits']),{'synced':!0x0,'subscriptionItemId':_0x15b949,'chargeableUnits':_0x2f54a0[_0x513475(0xd5)],'tier':_0x44cd59};}
1
+ function _0x3922(){const _0x4493b2=['pro','450479hyXDyl','no\x20subscription_item_id','3391850URdxMy','2234229cSYiRp','7xiZJVh','chargeableUnits','Obzer','now','allowance','2222124wwEqct','20707254CnkNYA','5107254DsuLND','set','meteredUnitAmount','floor','RfJEj','4yyxfMJ','team','11144568VHooxq','unitRate','BJvHF','LoFcc'];_0x3922=function(){return _0x4493b2;};return _0x3922();}const _0x5118dd=_0x24a7;(function(_0x54a6e5,_0x2c3dcb){const _0x4b3ece=_0x24a7,_0x46773d=_0x54a6e5();while(!![]){try{const _0x451ae7=parseInt(_0x4b3ece(0x14e))/0x1+-parseInt(_0x4b3ece(0x140))/0x2+parseInt(_0x4b3ece(0x13a))/0x3*(parseInt(_0x4b3ece(0x147))/0x4)+parseInt(_0x4b3ece(0x139))/0x5+parseInt(_0x4b3ece(0x142))/0x6*(-parseInt(_0x4b3ece(0x13b))/0x7)+-parseInt(_0x4b3ece(0x149))/0x8+parseInt(_0x4b3ece(0x141))/0x9;if(_0x451ae7===_0x2c3dcb)break;else _0x46773d['push'](_0x46773d['shift']());}catch(_0x27a848){_0x46773d['push'](_0x46773d['shift']());}}}(_0x3922,0xc7f70));function _0x24a7(_0xd92250,_0x45d07b){_0xd92250=_0xd92250-0x138;const _0x3922e6=_0x3922();let _0x24a76b=_0x3922e6[_0xd92250];return _0x24a76b;}import{STRIPE_CONFIG}from'./stripe-config.js';const TIER_LIMITS={'free':{'allowance':0x186a0,'unitRate':0x0},'pro':{'allowance':0x7a120,'unitRate':STRIPE_CONFIG[_0x5118dd(0x14d)][_0x5118dd(0x144)]},'team':{'allowance':0xf4240,'unitRate':STRIPE_CONFIG[_0x5118dd(0x148)][_0x5118dd(0x144)]}};export function calculateUsageCharge(_0x461137,_0x22117a){const _0x201ee0=_0x5118dd,_0x2a68de={'gCpTo':function(_0x2e5db0,_0x168cb2){return _0x2e5db0===_0x168cb2;},'Obzer':function(_0x3513f6,_0x31b436){return _0x3513f6-_0x31b436;},'GRGnZ':function(_0x5221df,_0x2a36d9){return _0x5221df/_0x2a36d9;},'RfJEj':function(_0x48c781,_0x2b602e){return _0x48c781*_0x2b602e;}},_0x8f172f=TIER_LIMITS[_0x461137];if(_0x2a68de['gCpTo'](0x0,_0x8f172f[_0x201ee0(0x14a)]))return{'tier':_0x461137,'tokensSaved':_0x22117a,'freeAllowance':_0x8f172f[_0x201ee0(0x13f)],'chargeableTokens':0x0,'chargeableUnits':0x0,'unitRate':0x0,'amount':0x0};const _0x77a0b5=Math['max'](0x0,_0x2a68de[_0x201ee0(0x13d)](_0x22117a,_0x8f172f[_0x201ee0(0x13f)])),_0x36ea10=Math['ceil'](_0x2a68de['GRGnZ'](_0x77a0b5,0x186a0)),_0xbf8c4b=_0x2a68de[_0x201ee0(0x146)](_0x36ea10,_0x8f172f['unitRate']);return{'tier':_0x461137,'tokensSaved':_0x22117a,'freeAllowance':_0x8f172f[_0x201ee0(0x13f)],'chargeableTokens':_0x77a0b5,'chargeableUnits':_0x36ea10,'unitRate':_0x8f172f[_0x201ee0(0x14a)],'amount':_0xbf8c4b};}export function buildUsageRecord(_0x1848e5,_0x1b6341){const _0x136c9d=_0x5118dd,_0x147514={'NeCLS':_0x136c9d(0x143),'LoFcc':function(_0x48137d,_0x553759){return _0x48137d/_0x553759;}};return{'subscription_item':_0x1848e5,'quantity':_0x1b6341,'action':_0x147514['NeCLS'],'timestamp':Math[_0x136c9d(0x145)](_0x147514[_0x136c9d(0x14c)](Date[_0x136c9d(0x13e)](),0x3e8))};}export function prepareUsageSync(_0x4c1799,_0x4ed528,_0x1efc18){const _0x20e6bb=_0x5118dd,_0x345e0d={'BJvHF':function(_0x227988,_0x5522df,_0x26baf7){return _0x227988(_0x5522df,_0x26baf7);}};if(!_0x1efc18)return{'synced':!0x1,'subscriptionItemId':'','chargeableUnits':0x0,'tier':_0x4c1799,'error':_0x20e6bb(0x138)};const _0xaee40f=calculateUsageCharge(_0x4c1799,_0x4ed528);if(0x0===_0xaee40f['chargeableUnits'])return{'synced':!0x0,'subscriptionItemId':_0x1efc18,'chargeableUnits':0x0,'tier':_0x4c1799};return _0x345e0d[_0x20e6bb(0x14b)](buildUsageRecord,_0x1efc18,_0xaee40f['chargeableUnits']),{'synced':!0x0,'subscriptionItemId':_0x1efc18,'chargeableUnits':_0xaee40f[_0x20e6bb(0x13c)],'tier':_0x4c1799};}
@@ -1 +1 @@
1
- function _0x4dc2(_0x42fb57,_0x2f1a63){_0x42fb57=_0x42fb57-0x68;const _0x217855=_0x2178();let _0x4dc284=_0x217855[_0x42fb57];return _0x4dc284;}function _0x2178(){const _0x504d79=['data','976654uxWVKA','current_period_end','metered','invoice.paid','object','wgfAQ','usage_type','invoice_paid','4458wuZVTY','6kMthjO','514695vGxtdF','11veeYWT','357jHZdaQ','type','481AfakMj','265340NhVQLO','customer','2409324zrIrbQ','subscription_updated','299orlplK','price','active','37848bvxyHE','1005957UmUnPY','6PCuMUd','10wYoaxD','customer.subscription.updated','upsert','InXoT'];_0x2178=function(){return _0x504d79;};return _0x2178();}(function(_0x290947,_0x1663a1){const _0x2bf56d=_0x4dc2,_0x79b910=_0x290947();while(!![]){try{const _0x27f30c=-parseInt(_0x2bf56d(0x71))/0x1*(parseInt(_0x2bf56d(0x6b))/0x2)+-parseInt(_0x2bf56d(0x7b))/0x3*(-parseInt(_0x2bf56d(0x72))/0x4)+-parseInt(_0x2bf56d(0x6d))/0x5*(-parseInt(_0x2bf56d(0x6c))/0x6)+-parseInt(_0x2bf56d(0x6f))/0x7*(parseInt(_0x2bf56d(0x79))/0x8)+parseInt(_0x2bf56d(0x7a))/0x9*(-parseInt(_0x2bf56d(0x7c))/0xa)+-parseInt(_0x2bf56d(0x6e))/0xb*(-parseInt(_0x2bf56d(0x74))/0xc)+parseInt(_0x2bf56d(0x76))/0xd*(parseInt(_0x2bf56d(0x81))/0xe);if(_0x27f30c===_0x1663a1)break;else _0x79b910['push'](_0x79b910['shift']());}catch(_0x217146){_0x79b910['push'](_0x79b910['shift']());}}}(_0x2178,0x96506));export function handleWebhookEvent(_0x164938,_0x7699b1){const _0x4098eb=_0x4dc2,_0x43a378={'zMRuo':_0x4098eb(0x6a),'InXoT':_0x4098eb(0x78),'BPiOv':'customer.subscription.deleted','lekZJ':'subscription_canceled','wgfAQ':'free','FPaeA':'ignored'};switch(_0x164938[_0x4098eb(0x70)]){case _0x4098eb(0x84):{const _0x38c133=_0x164938[_0x4098eb(0x80)][_0x4098eb(0x85)];return{'handled':!0x0,'action':_0x43a378['zMRuo'],'customerId':_0x38c133[_0x4098eb(0x73)],'subscriptionId':_0x38c133['subscription']};}case _0x4098eb(0x7d):{const _0x36f253=_0x164938[_0x4098eb(0x80)]['object'],_0x2bf1cf={'handled':!0x0,'action':_0x4098eb(0x75),'customerId':_0x36f253[_0x4098eb(0x73)],'subscriptionId':_0x36f253['id']};return _0x7699b1&&_0x7699b1[_0x4098eb(0x7e)]({'id':_0x36f253['id'],'customerId':_0x36f253[_0x4098eb(0x73)],'status':_0x36f253['status']||_0x43a378[_0x4098eb(0x7f)],'tier':_0x36f253['metadata']?.['tier']||'free','currentPeriodEnd':_0x36f253[_0x4098eb(0x82)]||0x0,'meteredSubscriptionItemId':extractMeteredItemId(_0x36f253),'updatedAt':''}),_0x2bf1cf;}case _0x43a378['BPiOv']:{const _0x45fafc=_0x164938[_0x4098eb(0x80)][_0x4098eb(0x85)],_0x52a7fe={'handled':!0x0,'action':_0x43a378['lekZJ'],'customerId':_0x45fafc['customer'],'subscriptionId':_0x45fafc['id']};return _0x7699b1&&_0x7699b1['upsert']({'id':_0x45fafc['id'],'customerId':_0x45fafc[_0x4098eb(0x73)],'status':'canceled','tier':_0x45fafc['metadata']?.['tier']||_0x43a378[_0x4098eb(0x68)],'currentPeriodEnd':_0x45fafc['current_period_end']||0x0,'updatedAt':''}),_0x52a7fe;}default:return{'handled':!0x1,'action':_0x43a378['FPaeA']};}}function extractMeteredItemId(_0x2a6e1f){const _0x10be84=_0x4dc2,_0x564fff=_0x2a6e1f['items'];if(!_0x564fff?.[_0x10be84(0x80)])return;const _0x153441=_0x564fff['data']['find'](_0x5b383b=>_0x10be84(0x83)===_0x5b383b[_0x10be84(0x77)]?.['recurring']?.[_0x10be84(0x69)]);return _0x153441?.['id'];}
1
+ function _0x2b03(){const _0x1f9a9f=['77592QvumfN','current_period_end','subscription_canceled','1383008lIEdBy','108EFsoVa','price','metered','15YxYjuB','ASpUE','metadata','active','data','customer','395260KvzTul','592614vlhKts','102447sPQKEg','invoice_paid','canceled','EEVBW','subscription_updated','Xgtss','193226cKBJQX','type','invoice.paid','2CovWVQ','free','object','490Toekuc','6397412IxOGjj','ignored','Dsysv','upsert'];_0x2b03=function(){return _0x1f9a9f;};return _0x2b03();}(function(_0x58a6c7,_0x3ca8c2){const _0x5ccf79=_0x292f,_0x5247a5=_0x58a6c7();while(!![]){try{const _0x1dc12c=-parseInt(_0x5ccf79(0x187))/0x1*(parseInt(_0x5ccf79(0x17c))/0x2)+parseInt(_0x5ccf79(0x18f))/0x3*(parseInt(_0x5ccf79(0x193))/0x4)+parseInt(_0x5ccf79(0x196))/0x5*(-parseInt(_0x5ccf79(0x17d))/0x6)+parseInt(_0x5ccf79(0x18b))/0x7+parseInt(_0x5ccf79(0x192))/0x8+parseInt(_0x5ccf79(0x17e))/0x9*(-parseInt(_0x5ccf79(0x18a))/0xa)+parseInt(_0x5ccf79(0x184))/0xb;if(_0x1dc12c===_0x3ca8c2)break;else _0x5247a5['push'](_0x5247a5['shift']());}catch(_0x3a10fa){_0x5247a5['push'](_0x5247a5['shift']());}}}(_0x2b03,0x87188));export function handleWebhookEvent(_0x2f001a,_0x1c9ee0){const _0x728c0f=_0x292f,_0x4a39f9={'Xgtss':_0x728c0f(0x186),'ydnuq':_0x728c0f(0x17f),'Dsysv':'customer.subscription.updated','EEVBW':_0x728c0f(0x182),'ZIhJm':'free','CleWK':function(_0x337b2a,_0x32dbec){return _0x337b2a(_0x32dbec);},'SVzOd':_0x728c0f(0x191),'ASpUE':_0x728c0f(0x180)};switch(_0x2f001a[_0x728c0f(0x185)]){case _0x4a39f9[_0x728c0f(0x183)]:{const _0x851ba2=_0x2f001a['data']['object'];return{'handled':!0x0,'action':_0x4a39f9['ydnuq'],'customerId':_0x851ba2['customer'],'subscriptionId':_0x851ba2['subscription']};}case _0x4a39f9[_0x728c0f(0x18d)]:{const _0x4ea168=_0x2f001a[_0x728c0f(0x17a)]['object'],_0x2d2916={'handled':!0x0,'action':_0x4a39f9[_0x728c0f(0x181)],'customerId':_0x4ea168['customer'],'subscriptionId':_0x4ea168['id']};return _0x1c9ee0&&_0x1c9ee0[_0x728c0f(0x18e)]({'id':_0x4ea168['id'],'customerId':_0x4ea168['customer'],'status':_0x4ea168['status']||_0x728c0f(0x179),'tier':_0x4ea168[_0x728c0f(0x178)]?.['tier']||_0x4a39f9['ZIhJm'],'currentPeriodEnd':_0x4ea168['current_period_end']||0x0,'meteredSubscriptionItemId':_0x4a39f9['CleWK'](extractMeteredItemId,_0x4ea168),'updatedAt':''}),_0x2d2916;}case'customer.subscription.deleted':{const _0x28538d=_0x2f001a['data'][_0x728c0f(0x189)],_0x90f391={'handled':!0x0,'action':_0x4a39f9['SVzOd'],'customerId':_0x28538d[_0x728c0f(0x17b)],'subscriptionId':_0x28538d['id']};return _0x1c9ee0&&_0x1c9ee0[_0x728c0f(0x18e)]({'id':_0x28538d['id'],'customerId':_0x28538d[_0x728c0f(0x17b)],'status':_0x4a39f9[_0x728c0f(0x197)],'tier':_0x28538d['metadata']?.['tier']||_0x728c0f(0x188),'currentPeriodEnd':_0x28538d[_0x728c0f(0x190)]||0x0,'updatedAt':''}),_0x90f391;}default:return{'handled':!0x1,'action':_0x728c0f(0x18c)};}}function _0x292f(_0x2b8b46,_0x2c32df){_0x2b8b46=_0x2b8b46-0x178;const _0x2b03a7=_0x2b03();let _0x292fe2=_0x2b03a7[_0x2b8b46];return _0x292fe2;}function extractMeteredItemId(_0x3040b3){const _0x268f86=_0x292f,_0x58456a=_0x3040b3['items'];if(!_0x58456a?.[_0x268f86(0x17a)])return;const _0x546582=_0x58456a['data']['find'](_0x273ba2=>_0x268f86(0x195)===_0x273ba2[_0x268f86(0x194)]?.['recurring']?.['usage_type']);return _0x546582?.['id'];}
@@ -1 +1 @@
1
- const _0x3fe062=_0x37b0;function _0x37b0(_0x3836f3,_0x496f1c){_0x3836f3=_0x3836f3-0xf9;const _0x41614c=_0x4161();let _0x37b043=_0x41614c[_0x3836f3];return _0x37b043;}function _0x4161(){const _0x3fbdb0=['5619165sMVluq','getByCustomerId','updatedAt','1978924HRbWOq','subs','818424ldgXBi','3946026Mioely','90AniDlM','3isUeti','4094101iCDhwZ','getBySubscriptionId','10nAzGhW','set','161263ZGhbhY','6724176tFoAcc','14evvGgD','values'];_0x4161=function(){return _0x3fbdb0;};return _0x4161();}(function(_0x5a6c93,_0x23ba36){const _0x74908e=_0x37b0,_0x16ff70=_0x5a6c93();while(!![]){try{const _0x3abbad=-parseInt(_0x74908e(0xf9))/0x1*(parseInt(_0x74908e(0xfb))/0x2)+parseInt(_0x74908e(0x105))/0x3*(parseInt(_0x74908e(0x100))/0x4)+-parseInt(_0x74908e(0xfd))/0x5+parseInt(_0x74908e(0xfa))/0x6+parseInt(_0x74908e(0x103))/0x7+parseInt(_0x74908e(0x102))/0x8*(parseInt(_0x74908e(0x104))/0x9)+parseInt(_0x74908e(0x108))/0xa*(-parseInt(_0x74908e(0x106))/0xb);if(_0x3abbad===_0x23ba36)break;else _0x16ff70['push'](_0x16ff70['shift']());}catch(_0x41a5fb){_0x16ff70['push'](_0x16ff70['shift']());}}}(_0x4161,0x8cf1e));export class MemorySubscriptionStore{[_0x3fe062(0x101)]=new Map();['upsert'](_0x3e80ad){const _0x537026=_0x3fe062;_0x3e80ad[_0x537026(0xff)]=new Date()['toISOString'](),this['subs'][_0x537026(0x109)](_0x3e80ad['id'],_0x3e80ad);}[_0x3fe062(0xfe)](_0x200285){const _0x237102=_0x3fe062;for(const _0x1c2ed8 of this[_0x237102(0x101)][_0x237102(0xfc)]())if(_0x1c2ed8['customerId']===_0x200285)return _0x1c2ed8;}[_0x3fe062(0x107)](_0x24b17e){return this['subs']['get'](_0x24b17e);}['list'](){const _0x1e3d77=_0x3fe062;return[...this['subs'][_0x1e3d77(0xfc)]()];}}
1
+ const _0x2b0dbc=_0x3155;function _0x55a8(){const _0x13c21b=['get','customerId','165inuTIu','getBySubscriptionId','1726644QZJTAN','35824rolfzC','675084vRPZRa','5hYqXqL','3789bcVVlq','getByCustomerId','3412iLZtWn','208icUDEI','10770UGxoSc','XEuzw','37563ImZtCU','259tigwyU','updatedAt','subs','960636YwFCWO'];_0x55a8=function(){return _0x13c21b;};return _0x55a8();}(function(_0x22e6c0,_0x4d0bb6){const _0x451fed=_0x3155,_0x4d07bd=_0x22e6c0();while(!![]){try{const _0x1aad05=parseInt(_0x451fed(0x13b))/0x1*(parseInt(_0x451fed(0x13a))/0x2)+parseInt(_0x451fed(0x13e))/0x3+parseInt(_0x451fed(0x136))/0x4+-parseInt(_0x451fed(0x137))/0x5*(-parseInt(_0x451fed(0x147))/0x6)+-parseInt(_0x451fed(0x13f))/0x7*(-parseInt(_0x451fed(0x135))/0x8)+-parseInt(_0x451fed(0x138))/0x9*(-parseInt(_0x451fed(0x13c))/0xa)+parseInt(_0x451fed(0x145))/0xb*(-parseInt(_0x451fed(0x142))/0xc);if(_0x1aad05===_0x4d0bb6)break;else _0x4d07bd['push'](_0x4d07bd['shift']());}catch(_0x25667a){_0x4d07bd['push'](_0x4d07bd['shift']());}}}(_0x55a8,0x3b22e));function _0x3155(_0x2a4d3b,_0x594c15){_0x2a4d3b=_0x2a4d3b-0x135;const _0x55a8a4=_0x55a8();let _0x315505=_0x55a8a4[_0x2a4d3b];return _0x315505;}export class MemorySubscriptionStore{[_0x2b0dbc(0x141)]=new Map();['upsert'](_0x2bd8a5){const _0x6f3366=_0x2b0dbc;_0x2bd8a5[_0x6f3366(0x140)]=new Date()['toISOString'](),this['subs']['set'](_0x2bd8a5['id'],_0x2bd8a5);}[_0x2b0dbc(0x139)](_0x2328d0){const _0x1a4ea2=_0x2b0dbc,_0x4cbaef={'XEuzw':function(_0x17cfcb,_0x468a46){return _0x17cfcb===_0x468a46;}};for(const _0x3289e3 of this['subs']['values']())if(_0x4cbaef[_0x1a4ea2(0x13d)](_0x3289e3[_0x1a4ea2(0x144)],_0x2328d0))return _0x3289e3;}[_0x2b0dbc(0x146)](_0x2256e2){const _0x468c89=_0x2b0dbc;return this[_0x468c89(0x141)][_0x468c89(0x143)](_0x2256e2);}['list'](){const _0x386671=_0x2b0dbc;return[...this[_0x386671(0x141)]['values']()];}}
@@ -1,51 +1,55 @@
1
1
  {
2
- "version": "0.9.0",
3
- "build": "2026-07-03T09:08:40.413Z",
2
+ "version": "0.10.1",
3
+ "build": "2026-07-03T09:39:14.895Z",
4
4
  "files": {
5
- "cli/analyze.js": "sha256:ebe65ed4b29979af6cfd6f0a4ec66d7b42bcefe7e380689855b56fab12807208",
6
- "cli/config-cmd.js": "sha256:70faeb118e3aa77f9cd919ad00d0fb3b35811bef1d8d4b274fc215fa837ba328",
7
- "cli/index.js": "sha256:d0dcbb24f0819ec207c8b28b14f01c3674a34eb53f7417c45b0ead54aae2f090",
8
- "cli/init-cmd.js": "sha256:c62535c8a25381a66a227645a3b27dbd7b1255c5b324bb756b8996e9cef2e577",
9
- "cli/setup-cmd.js": "sha256:e2398fbc709acd15c1894229e20420a6838949fd89ae3178a1a17ac7dc9fadc2",
10
- "cloud/stripe-checkout.js": "sha256:e54208ff904abcc6afc147cb3dca7413dd9417362199a24a728ce611a69a0b01",
11
- "cloud/stripe-config.js": "sha256:0ce49547bca01825f493ab0f2273b697e0617111c6f6c36853e0b16aa628ed31",
12
- "cloud/stripe-usage.js": "sha256:b2b55067bd12b5a49a469c464acf6834803a08b539d4bd5511d60a78f60015ff",
13
- "cloud/stripe-webhooks.js": "sha256:9cf40b633f94c09d2836949797d0570611cdeb0a5978b871bde05c0069d189a2",
14
- "cloud/subscription-store.js": "sha256:af6eb90ec730d5ac49e13a7a12788e838139e751cfd4abda3e881510ce04e52b",
15
- "mcp/index.js": "sha256:9c9b91d0ab3dec96471e79255e4775bc427d722e4024c04a2d4a807ed3b602a1",
16
- "mcp/resources.js": "sha256:1f62f805069790692e1ed3e528811108cbe96f8d12a1049f77fae90edc924ff2",
17
- "mcp/session.js": "sha256:d47f6a7eb432b9cbc30b36d9447b6e9a4521a648920b1017eb7f5edffeb73237",
18
- "mcp/tools.js": "sha256:87977ca1303719cef6eab179495f69c25809d7d0fbe08772153965ad6500db95",
19
- "plugin/cli.js": "sha256:75d88f2fa18cca2d31ff31e28aebf9ef604766e342cead4ea2636bd6f07549a7",
20
- "plugin/compression/chunked.js": "sha256:a57f41db1ac20cf745bcfd7d2673f29435d78b23f9dd9c638b08fe6e757480e0",
21
- "plugin/compression/index.js": "sha256:971ca8ce2c1361a349a0cc16a02f1c20837a1a4c81ec7622be8b138c8f1405b5",
22
- "plugin/compression/pipeline.js": "sha256:b22dabd68adc4e72a06103f358e3e1442b0d229d485cfd7fecdcd6e9c26325c5",
23
- "plugin/compression/quality.js": "sha256:af9a1feb96e2786b6226347b66cba4bd8213f419e4f8e69d617c08ba8b62a774",
24
- "plugin/compression/rule-based.js": "sha256:a025aaebae41430aed244dbc755922d2bb22234b53afa59f89330005fc46082a",
25
- "plugin/compression/structural.js": "sha256:12270ed11885a99467129a5ab699558e31039c0c2465f16958d21abe1e41ee53",
26
- "plugin/compression/text-utils.js": "sha256:105283763cec2d5f9cab1ab361a79740e5dc6dfb728c11151630939935fce3db",
27
- "plugin/compression/token-budget.js": "sha256:56a714783092236e3fbe0096c19dfe7d9cc22cebca21abfc9029d9a327adc756",
5
+ "cli/analyze.js": "sha256:f9d99ec7acdab8b83a2e46ee13a93ecc12aa006ea66acb44216c51c87be5e8f0",
6
+ "cli/config-cmd.js": "sha256:a1ba210a5b0e99b60ce8ab2dafdcc561ffa6f1ab0c944ff364fe26e52dab7e1c",
7
+ "cli/index.js": "sha256:ab8774ce906d9cd33f45a516496c706cb84d63c071bcd5a72f5c01fcb45fe065",
8
+ "cli/init-cmd.js": "sha256:2ab4c800028a1c588911358775583e04652308129d8edce1d15ba8b9f69c382f",
9
+ "cli/setup-cmd.js": "sha256:845efebe2857c5a2f709c5993e766952e8e803f7c6808be47c48cc78d76651bb",
10
+ "cloud/stripe-checkout.js": "sha256:8b207c8d5dd1ef0da2a753ca610d3894f7d9ad300240fcb1e0750cd90b4a68d3",
11
+ "cloud/stripe-config.js": "sha256:e67f2e6d1d1407774881ff67a96d1e3b6e8d698878f6e30549685f4ebdf8ed42",
12
+ "cloud/stripe-usage.js": "sha256:df5e849aaff1275956a9c56b9bc8a25adc239475b4e3a66ee96c2120542db110",
13
+ "cloud/stripe-webhooks.js": "sha256:c589a08da7111cffc55b33de196da2b4c651efab0e1abe91c791bb3ea18cd4a2",
14
+ "cloud/subscription-store.js": "sha256:e8459662928c08775fa7cb43abe9871969792f2bef1a525302b1bf11d74a7833",
15
+ "mcp/index.js": "sha256:709ebda813712c049f68a942d501c1cac19eabeea89dc8a502737d4511b08aee",
16
+ "mcp/resources.js": "sha256:0170524f698e6af25763dda034d36da47ce149cc49d4c8d4a54d9ce423ddf975",
17
+ "mcp/session.js": "sha256:3dc7cce9e5fd2854bb42e87642649e56425292f298f676854ae713198933b010",
18
+ "mcp/tools.js": "sha256:f09d75c351c7600b2db4c63d41fe2bd2beb8a8eae3c6cca9cf4616c60395e975",
19
+ "plugin/cli.js": "sha256:26f0ef06d18a61c2dbb4f9e1ba0848f4bbcf0fec1619f9fb91c8be4ae98f4a0c",
20
+ "plugin/compression/anonymize.js": "sha256:307fcb01618b6c5327d6ba34ff10bbedb30968f54d4c2f20c60fd385b6052659",
21
+ "plugin/compression/cache.js": "sha256:8e4abfd16bacb73c7ee74f70b9b08631f7aaabb06486ad3f2d3c51ffa9bd337a",
22
+ "plugin/compression/chunked.js": "sha256:72a7e1ce2e732f29f847f1776f65fb9b3e2137dca5be25873d935abb7eac093e",
23
+ "plugin/compression/dedup.js": "sha256:a17be603fe44e91b6ddb75f6f0144ddd6b7080bbf2a0afdf7506e23d9307d2b3",
24
+ "plugin/compression/format-optimizer.js": "sha256:8b95962e3f030f3ffb7a63b8e0711b3ccfdbc5ebe96a2822218273caf7725951",
25
+ "plugin/compression/index.js": "sha256:e6204a653e068d11e6faa4f8aaff4406fee87d4fd726bd735b56a49a853c2a9c",
26
+ "plugin/compression/pipeline.js": "sha256:8c8ed05f258034304a37afc58a46c214821d79f783501f7bfd5f8ac5764bf9b3",
27
+ "plugin/compression/quality.js": "sha256:0afc62133f5a3c259df155dabc0a8859eef17b909e308462b23165038c633387",
28
+ "plugin/compression/rule-based.js": "sha256:0bcc60a64377b63683d5414db253a9790740b1c8f49dc65245dd2e8f3be2c37b",
29
+ "plugin/compression/structural.js": "sha256:2051e8402fcf31283d6cee4763397efb1023c8f1829c5ca612dbb54a1468664b",
30
+ "plugin/compression/text-utils.js": "sha256:ad419fcf67ed3056603798c1540d8024dd94424d331a1ff37e547c7bc3711faa",
31
+ "plugin/compression/token-budget.js": "sha256:64cbe3c50db397dd078ca61c40e40750b88d3b1a96f8bb9605f879324f30a539",
28
32
  "plugin/compression/types.js": "sha256:56e1b0c10087ee6ff7f949b15d1ef63cb11228ff93a159a52f9ad7ef851e4e02",
29
- "plugin/config-loader.js": "sha256:80db5858643003f12b3c00df04c09efba43f0f47a3115af2c3a1e21642cec403",
30
- "plugin/context-compressor.js": "sha256:3d9aee732e54c59515e7ede7f93723cb0f4baaeac65023990448c65e43d447cb",
31
- "plugin/hook-dispatcher.js": "sha256:654cc2a6b847d38047f8b2f694d78b21171c0f46db2e03bc4d14af78e8f3ac0a",
32
- "plugin/metering-client.js": "sha256:ac81c28f43717f6fb918a7109a93fa79df149929a1f3e55da61b88020a1abf47",
33
- "plugin/metrics-collector.js": "sha256:7e3611a61ed5d773c6800b686545ef620a9ed339294d5bdaddb534b04645e433",
34
- "plugin/onboarding.js": "sha256:5d7750ac834072612bdeb4becade5c3c3ddab5518bb76d4220acea2d7a726b6f",
35
- "plugin/precompact-handler.js": "sha256:c16b3ad7b3aa07ac8c042fa0597a563ba6ae52ca5226c098f3972d27038a98aa",
36
- "plugin/report.js": "sha256:6e568f948fde6e49aa789ac374c7a0e2450c551cb4ff076ea8b43b2fb91b5b4f",
37
- "plugin/rule-analytics-store.js": "sha256:f0af78de3a39f63f38dcf0f9f6fdc07bab5ff66521bd86a25383a1d85cc17208",
38
- "plugin/rule-analytics.js": "sha256:3bd7bd8c6776589e594ff03eca9264b57772b18f0933e095f15687a3105211f0",
39
- "plugin/rule-engine.js": "sha256:1eb58f013ee2a0c44e44bbb355613f5f5013be675d894af874a39af2a7641fc5",
40
- "plugin/rule-sharing.js": "sha256:98f280b6e9557cc0710e2d9828ccfc640c23524020c8704475894d42d27a4818",
41
- "plugin/rule-suggest.js": "sha256:0c6412b94443592c2692cdd3e9873a03f8607abd12e2d6f87217d3e3a655d22f",
42
- "plugin/session-start.js": "sha256:cd50fa4b05754a629ba9e45f202e296582c693f1329f5cc22c990f47b1063ed0",
43
- "plugin/smart-context.js": "sha256:f07f27c774d37dc01b21344c7c86930dd82ab7809f947a1b62cf2bd461dedda3",
44
- "shared/license.js": "sha256:c324a8164939a864b57fa966cf050668f4ddfa1d27ac149d1f0c791149d7bd5c",
45
- "shared/providers/claude-provider.js": "sha256:7d12406eabc03f2d6c5e02bb81e5ce8501cd6fc66bd23f7f17932374c2ae2a26",
46
- "shared/providers/openai-provider.js": "sha256:18c22570c73eba71793a9186f6c50870a40a0d18e9280b8072c0b2138d883dfb",
47
- "shared/token-counter.js": "sha256:0747f1a3d2752c36ed27cf3368ada75f92dc6151d45ac8cd2eb3f8aec9eb8ff9",
48
- "shared/token-provider.js": "sha256:e1fbe8e2961a0887661a88b4bcc9269e5d277bbbf0dc0f7ea7b388b25b4e11cd",
33
+ "plugin/config-loader.js": "sha256:32d967457691592d79d3b658ed07289d4ab8cfec32ffe463806643442329a941",
34
+ "plugin/context-compressor.js": "sha256:ce61428d31acc56d493c11e0f0356662e4a0305df7ca55344569306d2c3d706d",
35
+ "plugin/hook-dispatcher.js": "sha256:8582a0186991dfeb9ec566e6d9f53c24a5fd5d305df977d38dea6e91710001b9",
36
+ "plugin/metering-client.js": "sha256:d20b945f31cc1c3c14cce5b4afd8a50efbd078d2ba85bc9db0664114b36b876c",
37
+ "plugin/metrics-collector.js": "sha256:347f8ac8703256a1c78b8f1a7dd544773f538dfa4a37f5f534f1d0d013dbc95e",
38
+ "plugin/onboarding.js": "sha256:ac918260c84397dee97db14824b5d30a01d1cb993f9267097a9d4789dfe91d1c",
39
+ "plugin/precompact-handler.js": "sha256:2d21d82870283f0037b79bade10a279d729b611382cd477734d99aa05e6a754b",
40
+ "plugin/report.js": "sha256:9fabe2c846bb68bd7fd7ccf8a5327bc9d13497239be3b4ca2129b22663249950",
41
+ "plugin/rule-analytics-store.js": "sha256:3a6ee87abb372145562fd8a507d77f13df52fbdb728ebba3aeb6bcebc1bbae34",
42
+ "plugin/rule-analytics.js": "sha256:66819376ab5b11eb789080bfa83f5b9a1419c1864be7f21122c5ba856d741845",
43
+ "plugin/rule-engine.js": "sha256:b58abe02686283ebf44d2788a111cb5c138bc097a3a84fa75c6d67f230467334",
44
+ "plugin/rule-sharing.js": "sha256:5d44c494cd19b46d1c420ca8a17bdb19da4458419fa39ca071c49313132bfa10",
45
+ "plugin/rule-suggest.js": "sha256:005df78669b73ced70c84e5fbc157d19c424fd8aed50a91daec1af83dcf25b1e",
46
+ "plugin/session-start.js": "sha256:410963915c4898541dc828a3e786bc446dbc9393c5637221e32ff522b45ed559",
47
+ "plugin/smart-context.js": "sha256:f58ed474a05ed501a2641ac11337023ae12a04bcfe907ddad8dc511e7f88e0bc",
48
+ "shared/license.js": "sha256:54348bb2df7e74875e1f97b957442a47f089744479b7b8a4bc6e44d8cd2d02e6",
49
+ "shared/providers/claude-provider.js": "sha256:ee3a62e15a5f2505998ea34fe46c0a00e9a332ca92160aca32ce39b8e831d6ca",
50
+ "shared/providers/openai-provider.js": "sha256:20e157a0c364e565ca68b4e267c458c2a55edf716b0d5b8c2c80c11d2d950f6a",
51
+ "shared/token-counter.js": "sha256:040d2af98c7f30d6c6e19a19c11a7031d0b70ab1085721ad1b7c69b1781d6f97",
52
+ "shared/token-provider.js": "sha256:7e567f4b7f6c840c108c7cc9d296533f37965f829d8417f0d38615affe0dc2db",
49
53
  "shared/types.js": "sha256:56e1b0c10087ee6ff7f949b15d1ef63cb11228ff93a159a52f9ad7ef851e4e02"
50
54
  }
51
55
  }
package/dist/mcp/index.js CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- const _0x40a73e=_0x3bf3;(function(_0x528387,_0x39b459){const _0x45f436=_0x3bf3,_0x25cd0b=_0x528387();while(!![]){try{const _0x1641cf=parseInt(_0x45f436(0x18f))/0x1*(-parseInt(_0x45f436(0x188))/0x2)+-parseInt(_0x45f436(0x17f))/0x3+-parseInt(_0x45f436(0x180))/0x4*(-parseInt(_0x45f436(0x186))/0x5)+-parseInt(_0x45f436(0x184))/0x6+parseInt(_0x45f436(0x183))/0x7+parseInt(_0x45f436(0x182))/0x8+parseInt(_0x45f436(0x185))/0x9*(parseInt(_0x45f436(0x181))/0xa);if(_0x1641cf===_0x39b459)break;else _0x25cd0b['push'](_0x25cd0b['shift']());}catch(_0x4981c4){_0x25cd0b['push'](_0x25cd0b['shift']());}}}(_0xd503,0xeed6e));import'../shared/providers/claude-provider.js';import'../shared/providers/openai-provider.js';function _0xd503(){const _0x4e3725=['TklfP','exit','handleSessionStop','qyhsq','41aAfGIR','catch','2671707LoewbN','3867836soHmEP','190JfQreG','15019040nzBnoI','4811002zbLdWj','1543566AGWGkK','208782GiYkqS','5GAkXpl','tokenizer-speedup\x20MCP\x20server\x20running','90062hUpKaJ','getDispatcher','error'];_0xd503=function(){return _0x4e3725;};return _0xd503();}import{McpServer}from'@modelcontextprotocol/sdk/server/mcp.js';import{StdioServerTransport}from'@modelcontextprotocol/sdk/server/stdio.js';function _0x3bf3(_0x3f4439,_0x15c0c6){_0x3f4439=_0x3f4439-0x17e;const _0xd503bd=_0xd503();let _0x3bf39b=_0xd503bd[_0x3f4439];return _0x3bf39b;}import{createSession}from'./session.js';import{registerTools}from'./tools.js';import{registerResources}from'./resources.js';async function main(){const _0x49e644=_0x3bf3,_0x181011={'qyhsq':'tokenizer-speedup','TklfP':function(_0x37dcb7){return _0x37dcb7();},'VYIbO':function(_0xff56f0,_0x935216,_0x5289d3){return _0xff56f0(_0x935216,_0x5289d3);}},_0x1c6d95=new McpServer({'name':_0x181011[_0x49e644(0x18e)],'version':'0.8.1'}),_0x3c2596=_0x181011[_0x49e644(0x18b)](createSession);_0x181011['VYIbO'](registerTools,_0x1c6d95,_0x3c2596),registerResources(_0x1c6d95,_0x3c2596),process['on']('SIGINT',()=>{const _0x47ea20=_0x49e644;try{_0x3c2596[_0x47ea20(0x189)]()[_0x47ea20(0x18d)]();}catch{}process[_0x47ea20(0x18c)](0x0);});const _0x4f18b1=new StdioServerTransport();await _0x1c6d95['connect'](_0x4f18b1),console['error'](_0x49e644(0x187));}main()[_0x40a73e(0x17e)](_0x2889d2=>{const _0x582366=_0x40a73e;console[_0x582366(0x18a)]('tokenizer-speedup\x20MCP\x20server\x20failed\x20to\x20start:',_0x2889d2),process['exit'](0x1);});
2
+ const _0xa22ce7=_0x187f;(function(_0x5eb17c,_0x5925af){const _0x500426=_0x187f,_0x56d3d2=_0x5eb17c();while(!![]){try{const _0x26b183=-parseInt(_0x500426(0x13e))/0x1+-parseInt(_0x500426(0x13b))/0x2*(parseInt(_0x500426(0x136))/0x3)+-parseInt(_0x500426(0x139))/0x4*(parseInt(_0x500426(0x13a))/0x5)+-parseInt(_0x500426(0x135))/0x6+parseInt(_0x500426(0x131))/0x7*(-parseInt(_0x500426(0x141))/0x8)+parseInt(_0x500426(0x12f))/0x9*(parseInt(_0x500426(0x13f))/0xa)+parseInt(_0x500426(0x130))/0xb;if(_0x26b183===_0x5925af)break;else _0x56d3d2['push'](_0x56d3d2['shift']());}catch(_0x42d05b){_0x56d3d2['push'](_0x56d3d2['shift']());}}}(_0x5720,0xae5d2));import'../shared/providers/claude-provider.js';function _0x5720(){const _0x59c098=['handleSessionStop','getDispatcher','57395NzxZJU','1328330YhOJiM','nCFME','13168opdrrM','tokenizer-speedup\x20MCP\x20server\x20running','81CtLvDW','36278396qfLqnY','5782BvxXyT','error','tokenizer-speedup\x20MCP\x20server\x20failed\x20to\x20start:','DLkGm','4523478GFkNrJ','2550699RLAsrk','catch','0.8.1','12rVDvjb','1263670SJioFK','2WeBulu'];_0x5720=function(){return _0x59c098;};return _0x5720();}import'../shared/providers/openai-provider.js';import{McpServer}from'@modelcontextprotocol/sdk/server/mcp.js';import{StdioServerTransport}from'@modelcontextprotocol/sdk/server/stdio.js';import{createSession}from'./session.js';import{registerTools}from'./tools.js';import{registerResources}from'./resources.js';function _0x187f(_0x33ebee,_0x3a7124){_0x33ebee=_0x33ebee-0x12e;const _0x572003=_0x5720();let _0x187f21=_0x572003[_0x33ebee];return _0x187f21;}async function main(){const _0x16687d=_0x187f,_0xdfa7f5={'txlJF':'tokenizer-speedup','DVbeL':_0x16687d(0x138),'nCFME':function(_0x46bd82){return _0x46bd82();},'DLkGm':function(_0x417bdc,_0x1e68c5,_0x6287cc){return _0x417bdc(_0x1e68c5,_0x6287cc);}},_0x1d332b=new McpServer({'name':_0xdfa7f5['txlJF'],'version':_0xdfa7f5['DVbeL']}),_0x1aa642=_0xdfa7f5[_0x16687d(0x140)](createSession);registerTools(_0x1d332b,_0x1aa642),_0xdfa7f5[_0x16687d(0x134)](registerResources,_0x1d332b,_0x1aa642),process['on']('SIGINT',()=>{const _0x18018a=_0x16687d;try{_0x1aa642[_0x18018a(0x13d)]()[_0x18018a(0x13c)]();}catch{}process['exit'](0x0);});const _0x171f7f=new StdioServerTransport();await _0x1d332b['connect'](_0x171f7f),console[_0x16687d(0x132)](_0x16687d(0x12e));}main()[_0xa22ce7(0x137)](_0x5abf7c=>{const _0x19d2ab=_0xa22ce7,_0x4f7c6e={'pJIVT':_0x19d2ab(0x133)};console['error'](_0x4f7c6e['pJIVT'],_0x5abf7c),process['exit'](0x1);});
@@ -1 +1 @@
1
- (function(_0x220e47,_0x2a3795){const _0x321892=_0x51b6,_0x27e20d=_0x220e47();while(!![]){try{const _0x1ae2d5=parseInt(_0x321892(0x1b7))/0x1*(parseInt(_0x321892(0x1a6))/0x2)+parseInt(_0x321892(0x1b0))/0x3*(parseInt(_0x321892(0x1a3))/0x4)+parseInt(_0x321892(0x1a1))/0x5+parseInt(_0x321892(0x1ad))/0x6*(-parseInt(_0x321892(0x19f))/0x7)+-parseInt(_0x321892(0x1b1))/0x8*(parseInt(_0x321892(0x1b3))/0x9)+parseInt(_0x321892(0x1aa))/0xa+parseInt(_0x321892(0x1b5))/0xb*(-parseInt(_0x321892(0x1b6))/0xc);if(_0x1ae2d5===_0x2a3795)break;else _0x27e20d['push'](_0x27e20d['shift']());}catch(_0xaf76b){_0x27e20d['push'](_0x27e20d['shift']());}}}(_0x403a,0x8b5ad));function _0x51b6(_0x48dae0,_0x2c33bf){_0x48dae0=_0x48dae0-0x19e;const _0x403a0c=_0x403a();let _0x51b690=_0x403a0c[_0x48dae0];return _0x51b690;}import{generateReport}from'../plugin/report.js';export function registerResources(_0x32dfad,_0x42d207){const _0x3afafe=_0x51b6,_0x5b0060={'KpnlH':_0x3afafe(0x1a5),'cNlfD':_0x3afafe(0x1a7),'dZLQY':_0x3afafe(0x1ac),'UIJma':'TokenizerSpeedUp\x20Savings\x20Report','SAnrE':'Returns\x20an\x20aggregated\x20report\x20of\x20token\x20savings\x20across\x20all\x20recorded\x20sessions,\x20including\x20baseline\x20vs.\x20optimized\x20counts,\x20cost\x20estimates,\x20and\x20rule\x20trigger\x20statistics.','OiVfR':'application/json'};_0x32dfad['registerResource'](_0x3afafe(0x1a4),_0x5b0060['KpnlH'],{'title':_0x5b0060[_0x3afafe(0x1a8)],'description':_0x3afafe(0x19e),'mimeType':_0x3afafe(0x1a0)},async _0x49f98c=>{const _0x3f505d=_0x3afafe,_0x530a08=_0x42d207[_0x3f505d(0x1ae)]();return{'contents':[{'uri':_0x49f98c[_0x3f505d(0x1af)],'text':JSON[_0x3f505d(0x1a2)](_0x530a08,null,0x2)}]};}),_0x32dfad[_0x3afafe(0x1ab)](_0x5b0060[_0x3afafe(0x1b4)],'tokenizer-speedup://report',{'title':_0x5b0060['UIJma'],'description':_0x5b0060[_0x3afafe(0x1b2)],'mimeType':_0x5b0060['OiVfR']},async _0x1b1bd3=>{const _0x281aa1=_0x3afafe;try{const _0x3d7cca=generateReport(_0x42d207['projectRoot']);return{'contents':[{'uri':_0x1b1bd3[_0x281aa1(0x1af)],'text':JSON[_0x281aa1(0x1a2)](_0x3d7cca,null,0x2)}]};}catch{return{'contents':[{'uri':_0x1b1bd3['href'],'text':JSON['stringify']({'message':_0x281aa1(0x1a9),'sessions_count':0x0,'total_baseline':0x0,'total_optimized':0x0,'total_delta':0x0,'savings_percent':0x0,'total_prompts':0x0,'rules_triggered':{},'estimated_cost_saved_usd':0x0,'period_start':'','period_end':''},null,0x2)}]};}});}function _0x403a(){const _0x15067b=['33hPfkGa','1237224hiOkqq','1AyqyNE','Returns\x20the\x20current\x20YAML-based\x20plugin\x20configuration\x20as\x20JSON,\x20including\x20rules,\x20context\x20limits,\x20and\x20metering\x20settings.','5635427SnSKNP','application/json','1394190kGuxxf','stringify','1188536JgFNPU','config','tokenizer-speedup://config','878652oeVqNS','TokenizerSpeedUp\x20Configuration','cNlfD','No\x20metrics\x20data\x20available\x20yet.\x20Run\x20at\x20least\x20one\x20optimized\x20session\x20to\x20generate\x20a\x20report.','2527070siBplz','registerResource','report','6XdKwiN','getConfig','href','9eTdSaO','1416872ejvPYT','SAnrE','9yrtOXe','dZLQY'];_0x403a=function(){return _0x15067b;};return _0x403a();}
1
+ (function(_0x389ef5,_0x803457){const _0x13da4f=_0x530e,_0x1a9db5=_0x389ef5();while(!![]){try{const _0x12a50e=parseInt(_0x13da4f(0x1a0))/0x1*(-parseInt(_0x13da4f(0x1a3))/0x2)+-parseInt(_0x13da4f(0x1a1))/0x3*(parseInt(_0x13da4f(0x1a6))/0x4)+parseInt(_0x13da4f(0x1a8))/0x5*(-parseInt(_0x13da4f(0x19c))/0x6)+-parseInt(_0x13da4f(0x196))/0x7*(-parseInt(_0x13da4f(0x19d))/0x8)+-parseInt(_0x13da4f(0x19b))/0x9+-parseInt(_0x13da4f(0x1a4))/0xa*(parseInt(_0x13da4f(0x1a5))/0xb)+parseInt(_0x13da4f(0x197))/0xc;if(_0x12a50e===_0x803457)break;else _0x1a9db5['push'](_0x1a9db5['shift']());}catch(_0x204475){_0x1a9db5['push'](_0x1a9db5['shift']());}}}(_0x23c2,0x995e6));import{generateReport}from'../plugin/report.js';function _0x530e(_0x29c83c,_0x25c5f7){_0x29c83c=_0x29c83c-0x196;const _0x23c204=_0x23c2();let _0x530e54=_0x23c204[_0x29c83c];return _0x530e54;}export function registerResources(_0x1bbd4c,_0x583d75){const _0x7229bd=_0x530e,_0x38c9e7={'BaVvd':function(_0x487248,_0x35ce61){return _0x487248(_0x35ce61);},'wmYsw':'config','FHBfj':'application/json','vifyD':_0x7229bd(0x198)};_0x1bbd4c[_0x7229bd(0x19f)](_0x38c9e7['wmYsw'],_0x7229bd(0x1a7),{'title':'TokenizerSpeedUp\x20Configuration','description':'Returns\x20the\x20current\x20YAML-based\x20plugin\x20configuration\x20as\x20JSON,\x20including\x20rules,\x20context\x20limits,\x20and\x20metering\x20settings.','mimeType':_0x38c9e7[_0x7229bd(0x19a)]},async _0x1d4ffc=>{const _0x4eb657=_0x7229bd,_0x43535c=_0x583d75[_0x4eb657(0x199)]();return{'contents':[{'uri':_0x1d4ffc[_0x4eb657(0x1a2)],'text':JSON[_0x4eb657(0x19e)](_0x43535c,null,0x2)}]};}),_0x1bbd4c[_0x7229bd(0x19f)](_0x38c9e7['vifyD'],'tokenizer-speedup://report',{'title':_0x7229bd(0x1a9),'description':'Returns\x20an\x20aggregated\x20report\x20of\x20token\x20savings\x20across\x20all\x20recorded\x20sessions,\x20including\x20baseline\x20vs.\x20optimized\x20counts,\x20cost\x20estimates,\x20and\x20rule\x20trigger\x20statistics.','mimeType':_0x38c9e7['FHBfj']},async _0x23e2c1=>{const _0x19dfe2=_0x7229bd;try{const _0x8ced48=_0x38c9e7['BaVvd'](generateReport,_0x583d75['projectRoot']);return{'contents':[{'uri':_0x23e2c1['href'],'text':JSON[_0x19dfe2(0x19e)](_0x8ced48,null,0x2)}]};}catch{return{'contents':[{'uri':_0x23e2c1['href'],'text':JSON[_0x19dfe2(0x19e)]({'message':'No\x20metrics\x20data\x20available\x20yet.\x20Run\x20at\x20least\x20one\x20optimized\x20session\x20to\x20generate\x20a\x20report.','sessions_count':0x0,'total_baseline':0x0,'total_optimized':0x0,'total_delta':0x0,'savings_percent':0x0,'total_prompts':0x0,'rules_triggered':{},'estimated_cost_saved_usd':0x0,'period_start':'','period_end':''},null,0x2)}]};}});}function _0x23c2(){const _0x222bbc=['6oBEWcC','3992ZtuwLu','stringify','registerResource','2doObIh','1340664kbSddn','href','408406wuifjE','10qgIpCO','12904364sRCpkZ','8cKpnBg','tokenizer-speedup://config','5996755qXNzXp','TokenizerSpeedUp\x20Savings\x20Report','16639lKDstg','43195128YTFUGl','report','getConfig','FHBfj','4345758plHndy'];_0x23c2=function(){return _0x222bbc;};return _0x23c2();}
@@ -1 +1 @@
1
- const _0x1596eb=_0xf091;(function(_0x206c52,_0x80eaa8){const _0x1b2a6c=_0xf091,_0x255e01=_0x206c52();while(!![]){try{const _0x438ccf=-parseInt(_0x1b2a6c(0x1b2))/0x1+parseInt(_0x1b2a6c(0x1ba))/0x2+parseInt(_0x1b2a6c(0x1b5))/0x3+-parseInt(_0x1b2a6c(0x1b3))/0x4*(-parseInt(_0x1b2a6c(0x1b4))/0x5)+parseInt(_0x1b2a6c(0x1bb))/0x6*(-parseInt(_0x1b2a6c(0x1b7))/0x7)+parseInt(_0x1b2a6c(0x1bd))/0x8*(parseInt(_0x1b2a6c(0x1b8))/0x9)+parseInt(_0x1b2a6c(0x1bc))/0xa;if(_0x438ccf===_0x80eaa8)break;else _0x255e01['push'](_0x255e01['shift']());}catch(_0x5291b7){_0x255e01['push'](_0x255e01['shift']());}}}(_0xfe41,0xcd698));import{loadConfig,DEFAULT_LIMITS,DEFAULT_METERING}from'../plugin/config-loader.js';import{HookDispatcher}from'../plugin/hook-dispatcher.js';import{MetricsCollector}from'../plugin/metrics-collector.js';function _0xf091(_0x3b31b2,_0x51e950){_0x3b31b2=_0x3b31b2-0x1b2;const _0xfe41c9=_0xfe41();let _0xf09179=_0xfe41c9[_0x3b31b2];return _0xf09179;}function _0xfe41(){const _0x169a91=['4541070yALsPD','51512fucEEM','claude','601216oqhsTw','52rOvSMK','243590cJmite','297054HBJqCb','mcp-session-','14glLlcZ','1674NuCzgV','model','1065138xbrKdP','4422294bqHKrk'];_0xfe41=function(){return _0x169a91;};return _0xfe41();}import{createTokenProvider}from'../shared/token-provider.js';const DEFAULT_CONFIG={'version':0x1,'provider':_0x1596eb(0x1be),'model':'claude-sonnet-4-20250514','rules':[],'context_limits':DEFAULT_LIMITS,'metering':DEFAULT_METERING};export function createSession(_0x4fa3fb){const _0x15092e=_0x1596eb,_0x2dbc2c={'svxsR':function(_0x35e0e7,_0x4c86a1){return _0x35e0e7(_0x4c86a1);},'DgiVb':function(_0x277802,_0x39461b,_0x55b0f0){return _0x277802(_0x39461b,_0x55b0f0);}};let _0x36a91d=_0x4fa3fb??process['cwd'](),_0x35feb0=null,_0x5a1370=null;const _0x1baa3=_0x15092e(0x1b6)+Date['now']();let _0x1df2e7=new MetricsCollector(_0x36a91d,_0x1baa3);const _0x4f5dcd={get 'projectRoot'(){return _0x36a91d;},get 'config'(){return _0x35feb0;},get 'collector'(){return _0x1df2e7;},get 'sessionId'(){return _0x1baa3;},'getConfig':()=>(_0x35feb0||(_0x35feb0=(function(){try{return _0x2dbc2c['svxsR'](loadConfig,_0x36a91d);}catch{return structuredClone(DEFAULT_CONFIG);}}())),_0x35feb0),'getDispatcher'(){if(!_0x5a1370){const _0xa1ee13=_0x4f5dcd['getConfig']();_0x5a1370=new HookDispatcher(_0xa1ee13,_0x36a91d,_0x1baa3);}return _0x5a1370;},'getTokenProvider'(_0x3c1e4b,_0xfee254){const _0x53b2aa=_0x15092e,_0x597ebc=_0x4f5dcd['getConfig']();return _0x2dbc2c['DgiVb'](createTokenProvider,_0x3c1e4b??_0x597ebc['provider'],_0xfee254??_0x597ebc[_0x53b2aa(0x1b9)]);},'setProjectRoot'(_0x2c8b1f){_0x36a91d=_0x2c8b1f,_0x35feb0=null,_0x5a1370=null,_0x1df2e7=new MetricsCollector(_0x36a91d,_0x1baa3);}};return _0x4f5dcd;}
1
+ (function(_0x32eb0c,_0x55a02e){const _0x3cab66=_0x3e8b,_0x33a719=_0x32eb0c();while(!![]){try{const _0x2ce3c8=-parseInt(_0x3cab66(0x6e))/0x1+-parseInt(_0x3cab66(0x72))/0x2*(parseInt(_0x3cab66(0x6d))/0x3)+parseInt(_0x3cab66(0x6b))/0x4*(parseInt(_0x3cab66(0x67))/0x5)+parseInt(_0x3cab66(0x66))/0x6*(-parseInt(_0x3cab66(0x6f))/0x7)+-parseInt(_0x3cab66(0x71))/0x8*(-parseInt(_0x3cab66(0x65))/0x9)+-parseInt(_0x3cab66(0x6c))/0xa+parseInt(_0x3cab66(0x70))/0xb;if(_0x2ce3c8===_0x55a02e)break;else _0x33a719['push'](_0x33a719['shift']());}catch(_0x580c8c){_0x33a719['push'](_0x33a719['shift']());}}}(_0x32ba,0x9cde1));import{loadConfig,DEFAULT_LIMITS,DEFAULT_METERING}from'../plugin/config-loader.js';import{HookDispatcher}from'../plugin/hook-dispatcher.js';import{MetricsCollector}from'../plugin/metrics-collector.js';import{createTokenProvider}from'../shared/token-provider.js';function _0x3e8b(_0x28d737,_0x4282da){_0x28d737=_0x28d737-0x64;const _0x32bafa=_0x32ba();let _0x3e8b6a=_0x32bafa[_0x28d737];return _0x3e8b6a;}const DEFAULT_CONFIG={'version':0x1,'provider':'claude','model':'claude-sonnet-4-20250514','rules':[],'context_limits':DEFAULT_LIMITS,'metering':DEFAULT_METERING};function _0x32ba(){const _0x2ffac8=['26963123vDOtee','1102936qZFgWh','298KfXmRp','mcp-session-','27LgluyZ','6uIpmsW','652870cVGwbM','cwd','model','getConfig','4Hdvphr','8295300YXhJyJ','12885fbHVAu','776127byUKls','750589foovyr'];_0x32ba=function(){return _0x2ffac8;};return _0x32ba();}export function createSession(_0x1a975e){const _0x3fe884=_0x3e8b;let _0x1cde84=_0x1a975e??process[_0x3fe884(0x68)](),_0xa0653=null,_0x320b56=null;const _0x207e46=_0x3fe884(0x64)+Date['now']();let _0x2698ee=new MetricsCollector(_0x1cde84,_0x207e46);const _0x23a0e4={get 'projectRoot'(){return _0x1cde84;},get 'config'(){return _0xa0653;},get 'collector'(){return _0x2698ee;},get 'sessionId'(){return _0x207e46;},'getConfig':()=>(_0xa0653||(_0xa0653=(function(){try{return loadConfig(_0x1cde84);}catch{return structuredClone(DEFAULT_CONFIG);}}())),_0xa0653),'getDispatcher'(){if(!_0x320b56){const _0x3de98a=_0x23a0e4['getConfig']();_0x320b56=new HookDispatcher(_0x3de98a,_0x1cde84,_0x207e46);}return _0x320b56;},'getTokenProvider'(_0x337749,_0xfa14ee){const _0x3bb960=_0x3fe884,_0x10015c=_0x23a0e4[_0x3bb960(0x6a)]();return createTokenProvider(_0x337749??_0x10015c['provider'],_0xfa14ee??_0x10015c[_0x3bb960(0x69)]);},'setProjectRoot'(_0x5aebaa){_0x1cde84=_0x5aebaa,_0xa0653=null,_0x320b56=null,_0x2698ee=new MetricsCollector(_0x1cde84,_0x207e46);}};return _0x23a0e4;}
package/dist/mcp/tools.js CHANGED
@@ -1 +1 @@
1
- (function(_0x5d56e4,_0x2dfddf){const _0x34d98d=_0x50d9,_0x3c39ad=_0x5d56e4();while(!![]){try{const _0x2354c8=parseInt(_0x34d98d(0x195))/0x1*(parseInt(_0x34d98d(0x185))/0x2)+parseInt(_0x34d98d(0x178))/0x3+parseInt(_0x34d98d(0x1a1))/0x4*(parseInt(_0x34d98d(0x18b))/0x5)+-parseInt(_0x34d98d(0x192))/0x6+-parseInt(_0x34d98d(0x193))/0x7+-parseInt(_0x34d98d(0x19b))/0x8*(parseInt(_0x34d98d(0x189))/0x9)+-parseInt(_0x34d98d(0x187))/0xa*(-parseInt(_0x34d98d(0x1a5))/0xb);if(_0x2354c8===_0x2dfddf)break;else _0x3c39ad['push'](_0x3c39ad['shift']());}catch(_0x5823a7){_0x3c39ad['push'](_0x3c39ad['shift']());}}}(_0x1f35,0x67dd2));import{readFile}from'node:fs/promises';import{resolve,normalize}from'node:path';import{z}from'zod';import{countTokens}from'../shared/token-counter.js';function _0x50d9(_0x403b5f,_0x36cc26){_0x403b5f=_0x403b5f-0x176;const _0x1f35c9=_0x1f35();let _0x50d92a=_0x1f35c9[_0x403b5f];return _0x50d92a;}export function registerTools(_0x1dd12a,_0x23247a){const _0x1d62da=_0x50d9,_0x5c3e67={'QVXho':'UserPromptSubmit','HEFNM':function(_0x295cf6,_0x44633e){return _0x295cf6>_0x44633e;},'MPjln':function(_0x55ae16,_0xa4b723){return _0x55ae16(_0xa4b723);},'jMhrN':'text','eOMWG':function(_0x375d55,_0x5bdb62){return _0x375d55===_0x5bdb62;},'rPjBM':function(_0x3028da,_0x209fdd){return _0x3028da===_0x209fdd;},'piWRd':function(_0x2c00e8,_0x5b9e0d){return _0x2c00e8===_0x5b9e0d;},'MKgZb':'openai','uydiu':function(_0x851e7,_0x33a707){return _0x851e7 instanceof _0x33a707;},'njsfU':function(_0x397b32,_0x485e02,_0x16dfb2){return _0x397b32(_0x485e02,_0x16dfb2);},'anYFo':function(_0x504e65,_0xbb8625,_0x12a23b){return _0x504e65(_0xbb8625,_0x12a23b);},'ztdUr':function(_0x4cfba3,_0x7fddb6){return _0x4cfba3(_0x7fddb6);},'DaJyb':_0x1d62da(0x184),'JJomk':_0x1d62da(0x17f),'CgOSd':'optimize-context','VWaQn':'Optimize\x20LLM\x20context\x20for\x20a\x20given\x20prompt.\x20Returns\x20matched\x20rules,\x20injected\x20context\x20and\x20token\x20savings.','Kbigi':_0x1d62da(0x1a3),'CjKQW':'Optional\x20project\x20root\x20path;\x20re-loads\x20config\x20if\x20provided','DmIoY':_0x1d62da(0x1a6),'ewCXD':'Count\x20and\x20estimate\x20tokens\x20for\x20a\x20given\x20text\x20or\x20file.\x20Returns\x20exact\x20BPE\x20count\x20and\x20word-based\x20heuristic\x20estimate.','rYpvG':_0x1d62da(0x18a),'EAKio':_0x1d62da(0x199),'DvPrF':'get-savings','pCdbS':'Return\x20cumulative\x20token\x20savings\x20for\x20the\x20current\x20MCP\x20session.\x20Shows\x20baseline\x20vs\x20optimized\x20token\x20counts\x20and\x20per-rule\x20trigger\x20counts.'};_0x1dd12a['registerTool'](_0x5c3e67['CgOSd'],{'description':_0x5c3e67['VWaQn'],'inputSchema':{'prompt':z[_0x1d62da(0x1aa)]()[_0x1d62da(0x180)](_0x5c3e67[_0x1d62da(0x18c)]),'project_path':z[_0x1d62da(0x1aa)]()['optional']()[_0x1d62da(0x180)](_0x5c3e67[_0x1d62da(0x1a8)])}},async({prompt:_0x4deaeb,project_path:_0xf26410})=>{const _0x3dca6a=_0x1d62da;_0xf26410&&_0x23247a['setProjectRoot'](_0xf26410);const _0x17c0e6=_0x23247a[_0x3dca6a(0x1a4)](),_0x103132=_0x17c0e6[_0x3dca6a(0x18d)](),_0x3f7db9={'session_id':_0x23247a[_0x3dca6a(0x1a0)],'cwd':_0x23247a['projectRoot'],'prompt':_0x4deaeb,'hook_event_name':_0x5c3e67['QVXho']},_0x890ca6=_0x17c0e6['handleUserPromptSubmit'](_0x3f7db9),_0x39f65a=_0x17c0e6['getSessionSummary']()[_0x3dca6a(0x183)]-_0x103132['total_delta'],_0x301b57=_0x890ca6[_0x3dca6a(0x196)]??'',_0x5c784b=_0x5c3e67[_0x3dca6a(0x19d)](_0x301b57[_0x3dca6a(0x17b)],0x0)?_0x5c3e67[_0x3dca6a(0x17e)](countTokens,_0x301b57):0x0,_0x47ff39=[..._0x301b57[_0x3dca6a(0x19a)](/^\[([^\]]+)\]/gm)]['map'](_0x592a90=>_0x592a90[0x1]),_0x56fddb={'context':_0x301b57,'rules_matched':_0x47ff39,'tokens_injected':_0x5c784b,'tokens_saved':_0x39f65a};return{'content':[{'type':_0x5c3e67[_0x3dca6a(0x18e)],'text':JSON[_0x3dca6a(0x198)](_0x56fddb)}]};}),_0x1dd12a[_0x1d62da(0x186)](_0x5c3e67[_0x1d62da(0x190)],{'description':_0x5c3e67['ewCXD'],'inputSchema':{'text':z[_0x1d62da(0x1aa)]()['optional']()['describe'](_0x5c3e67[_0x1d62da(0x1a7)]),'file_path':z['string']()[_0x1d62da(0x1a2)]()['describe']('Path\x20to\x20a\x20file\x20to\x20analyze'),'provider':z['string']()[_0x1d62da(0x1a2)]()['describe']('LLM\x20provider\x20(claude,\x20openai).\x20Defaults\x20to\x20config\x20provider.'),'model':z['string']()['optional']()[_0x1d62da(0x180)](_0x5c3e67['EAKio'])}},async({text:_0x45eba5,file_path:_0x341dc2,provider:_0x1a2d76,model:_0x165f59})=>{const _0x565b4a=_0x1d62da;if(_0x5c3e67['eOMWG'](void 0x0,_0x45eba5)&&_0x5c3e67['rPjBM'](void 0x0,_0x341dc2))return{'content':[{'type':_0x5c3e67['jMhrN'],'text':JSON[_0x565b4a(0x198)]({'error':'Either\x20text\x20or\x20file_path\x20must\x20be\x20provided.'})}],'isError':!0x0};const _0x48853e=_0x1a2d76??_0x23247a['getConfig']()[_0x565b4a(0x19e)],_0x2ac4b4=_0x165f59??(_0x5c3e67[_0x565b4a(0x191)](_0x5c3e67['MKgZb'],_0x48853e)?_0x565b4a(0x19c):_0x23247a['getConfig']()[_0x565b4a(0x18f)]);let _0xd4092,_0x33121e;try{_0xd4092=_0x23247a['getTokenProvider'](_0x48853e,_0x2ac4b4);}catch(_0x2b90b9){const _0x4256e3=_0x5c3e67['uydiu'](_0x2b90b9,Error)?_0x2b90b9[_0x565b4a(0x19f)]:String(_0x2b90b9);return{'content':[{'type':'text','text':JSON[_0x565b4a(0x198)]({'error':_0x4256e3})}],'isError':!0x0};}if(void 0x0!==_0x45eba5)_0x33121e=_0x45eba5;else{const _0x280a5c=normalize(_0x23247a['projectRoot']),_0x3904a6=_0x5c3e67['MPjln'](normalize,_0x5c3e67[_0x565b4a(0x1a9)](resolve,_0x280a5c,_0x341dc2));if(!_0x3904a6[_0x565b4a(0x194)](_0x280a5c))return{'content':[{'type':_0x5c3e67['jMhrN'],'text':JSON[_0x565b4a(0x198)]({'error':'file_path\x20escapes\x20project\x20root.'})}],'isError':!0x0};try{_0x33121e=await _0x5c3e67[_0x565b4a(0x17a)](readFile,_0x3904a6,'utf-8');}catch(_0x542d0c){const _0x1c9697=_0x542d0c instanceof Error?_0x542d0c[_0x565b4a(0x19f)]:_0x5c3e67['ztdUr'](String,_0x542d0c);return{'content':[{'type':_0x565b4a(0x17c),'text':JSON['stringify']({'error':_0x565b4a(0x179)+_0x1c9697})}],'isError':!0x0};}}const _0x112160={'tokens':_0xd4092[_0x565b4a(0x188)](_0x33121e),'tokens_method':_0x5c3e67[_0x565b4a(0x182)],'estimate':_0xd4092[_0x565b4a(0x197)](_0x33121e),'estimate_method':'word\x20heuristic\x20(words\x20×\x20'+(_0x5c3e67[_0x565b4a(0x176)](_0x5c3e67[_0x565b4a(0x177)],_0x48853e)?_0x5c3e67['JJomk']:'1.4')+')','provider':_0x48853e,'model':_0x2ac4b4};return{'content':[{'type':_0x5c3e67[_0x565b4a(0x18e)],'text':JSON['stringify'](_0x112160)}]};}),_0x1dd12a[_0x1d62da(0x186)](_0x5c3e67['DvPrF'],{'description':_0x5c3e67['pCdbS']},async()=>{const _0x5e6ac0=_0x1d62da,_0x2a72b5=_0x23247a['getDispatcher']()['getSessionSummary'](),_0x4de96e={'baseline_tokens':_0x2a72b5['total_baseline'],'optimized_tokens':_0x2a72b5[_0x5e6ac0(0x17d)],'saved_tokens':_0x2a72b5['total_delta'],'saved_percent':_0x2a72b5[_0x5e6ac0(0x181)],'prompts_count':_0x2a72b5['prompts_count'],'rules_triggered':_0x2a72b5['rules_triggered']};return{'content':[{'type':'text','text':JSON[_0x5e6ac0(0x198)](_0x4de96e)}]};});}function _0x1f35(){const _0x3c5758=['string','rPjBM','MKgZb','96786XptdQE','Failed\x20to\x20read\x20file:\x20','anYFo','length','text','total_optimized','MPjln','1.3','describe','savings_percent','DaJyb','total_delta','BPE\x20tokenizer\x20(accurate)','242470dWDEZA','registerTool','10lRuGTl','countTokens','9rYblQZ','Inline\x20text\x20to\x20analyze','5aCvybr','Kbigi','getSessionSummary','jMhrN','model','DmIoY','piWRd','3520578DzwYea','2776844inXNbp','startsWith','1opqDWt','additionalContext','estimateTokens','stringify','Model\x20name.\x20Defaults\x20to\x20config\x20model.','matchAll','745088peiffi','gpt-4o','HEFNM','provider','message','sessionId','729836moXQyk','optional','The\x20user\x20prompt\x20to\x20optimize','getDispatcher','12826671lOZdLm','analyze-tokens','rYpvG','CjKQW','njsfU'];_0x1f35=function(){return _0x3c5758;};return _0x1f35();}
1
+ (function(_0x447021,_0x318fb9){const _0x29ff13=_0x52ad,_0x3c7a62=_0x447021();while(!![]){try{const _0x46a020=-parseInt(_0x29ff13(0x7f))/0x1+-parseInt(_0x29ff13(0x96))/0x2+-parseInt(_0x29ff13(0x99))/0x3+-parseInt(_0x29ff13(0x8b))/0x4+-parseInt(_0x29ff13(0x6f))/0x5+parseInt(_0x29ff13(0x76))/0x6+parseInt(_0x29ff13(0x9f))/0x7;if(_0x46a020===_0x318fb9)break;else _0x3c7a62['push'](_0x3c7a62['shift']());}catch(_0xee0444){_0x3c7a62['push'](_0x3c7a62['shift']());}}}(_0x164a,0xca592));import{readFile}from'node:fs/promises';import{resolve,normalize}from'node:path';import{z}from'zod';import{countTokens}from'../shared/token-counter.js';function _0x52ad(_0x27b13b,_0x5eba6b){_0x27b13b=_0x27b13b-0x6e;const _0x164aea=_0x164a();let _0x52ad9d=_0x164aea[_0x27b13b];return _0x52ad9d;}export function registerTools(_0x2dd2f1,_0x2e7616){const _0x4853fd=_0x52ad,_0x4de409={'eNYNH':'UserPromptSubmit','KhsTv':function(_0x4d0e68,_0x3cd142){return _0x4d0e68>_0x3cd142;},'rjkXl':'text','NGjfr':function(_0x15f120,_0x541ea3){return _0x15f120===_0x541ea3;},'XRofW':_0x4853fd(0x78),'XPExV':'gpt-4o','eGujG':function(_0x2a49c4,_0x3f9867){return _0x2a49c4 instanceof _0x3f9867;},'INdmj':function(_0x29579c,_0x2e2c9a){return _0x29579c(_0x2e2c9a);},'FWpGV':function(_0x1e46b7,_0x4f6422){return _0x1e46b7!==_0x4f6422;},'LEbLg':function(_0x4bf039,_0x1de6ae){return _0x4bf039 instanceof _0x1de6ae;},'pcWZZ':_0x4853fd(0x87),'FrkIZ':'optimize-context','CYXUw':'Optional\x20project\x20root\x20path;\x20re-loads\x20config\x20if\x20provided','ssgNC':'analyze-tokens','hyMsd':'Count\x20and\x20estimate\x20tokens\x20for\x20a\x20given\x20text\x20or\x20file.\x20Returns\x20exact\x20BPE\x20count\x20and\x20word-based\x20heuristic\x20estimate.','jBMKn':'LLM\x20provider\x20(claude,\x20openai).\x20Defaults\x20to\x20config\x20provider.','Oisoc':'Model\x20name.\x20Defaults\x20to\x20config\x20model.','GvZWA':'get-savings'};_0x2dd2f1['registerTool'](_0x4de409['FrkIZ'],{'description':'Optimize\x20LLM\x20context\x20for\x20a\x20given\x20prompt.\x20Returns\x20matched\x20rules,\x20injected\x20context\x20and\x20token\x20savings.','inputSchema':{'prompt':z['string']()['describe'](_0x4853fd(0x97)),'project_path':z[_0x4853fd(0x79)]()[_0x4853fd(0x83)]()[_0x4853fd(0x84)](_0x4de409[_0x4853fd(0x8c)])}},async({prompt:_0x145465,project_path:_0x16bd32})=>{const _0x577156=_0x4853fd;_0x16bd32&&_0x2e7616[_0x577156(0x6e)](_0x16bd32);const _0x3cd099=_0x2e7616[_0x577156(0x89)](),_0x336559=_0x3cd099[_0x577156(0x93)](),_0x73caa7={'session_id':_0x2e7616['sessionId'],'cwd':_0x2e7616[_0x577156(0x86)],'prompt':_0x145465,'hook_event_name':_0x4de409[_0x577156(0x9c)]},_0x41e412=_0x3cd099['handleUserPromptSubmit'](_0x73caa7),_0x143e9f=_0x3cd099['getSessionSummary']()['total_delta']-_0x336559[_0x577156(0x70)],_0xdf584c=_0x41e412[_0x577156(0x94)]??'',_0x58d60e=_0x4de409[_0x577156(0x88)](_0xdf584c[_0x577156(0x7c)],0x0)?countTokens(_0xdf584c):0x0,_0x4a1c05=[..._0xdf584c[_0x577156(0x71)](/^\[([^\]]+)\]/gm)]['map'](_0x98b1d1=>_0x98b1d1[0x1]),_0x193b32={'context':_0xdf584c,'rules_matched':_0x4a1c05,'tokens_injected':_0x58d60e,'tokens_saved':_0x143e9f};return{'content':[{'type':_0x4de409[_0x577156(0xa0)],'text':JSON['stringify'](_0x193b32)}]};}),_0x2dd2f1[_0x4853fd(0x7d)](_0x4de409[_0x4853fd(0x90)],{'description':_0x4de409[_0x4853fd(0x8f)],'inputSchema':{'text':z['string']()['optional']()['describe'](_0x4853fd(0x8e)),'file_path':z['string']()['optional']()['describe'](_0x4853fd(0x72)),'provider':z['string']()[_0x4853fd(0x83)]()['describe'](_0x4de409[_0x4853fd(0x8d)]),'model':z[_0x4853fd(0x79)]()[_0x4853fd(0x83)]()['describe'](_0x4de409['Oisoc'])}},async({text:_0x2d5ddf,file_path:_0x50d393,provider:_0x2490cc,model:_0x437516})=>{const _0x4ea3ea=_0x4853fd;if(_0x4de409[_0x4ea3ea(0x7b)](void 0x0,_0x2d5ddf)&&void 0x0===_0x50d393)return{'content':[{'type':_0x4ea3ea(0x9e),'text':JSON[_0x4ea3ea(0x74)]({'error':_0x4ea3ea(0x9d)})}],'isError':!0x0};const _0x4ddf29=_0x2490cc??_0x2e7616[_0x4ea3ea(0x98)]()[_0x4ea3ea(0x75)],_0x25fd6d=_0x437516??(_0x4de409[_0x4ea3ea(0x7b)](_0x4de409['XRofW'],_0x4ddf29)?_0x4de409['XPExV']:_0x2e7616['getConfig']()[_0x4ea3ea(0x9b)]);let _0x33dd89,_0x2e4196;try{_0x33dd89=_0x2e7616[_0x4ea3ea(0xa1)](_0x4ddf29,_0x25fd6d);}catch(_0x44359b){const _0x42b91d=_0x4de409[_0x4ea3ea(0x8a)](_0x44359b,Error)?_0x44359b['message']:_0x4de409[_0x4ea3ea(0x80)](String,_0x44359b);return{'content':[{'type':_0x4de409[_0x4ea3ea(0xa0)],'text':JSON[_0x4ea3ea(0x74)]({'error':_0x42b91d})}],'isError':!0x0};}if(_0x4de409['FWpGV'](void 0x0,_0x2d5ddf))_0x2e4196=_0x2d5ddf;else{const _0xe877b=normalize(_0x2e7616[_0x4ea3ea(0x86)]),_0x35f450=normalize(resolve(_0xe877b,_0x50d393));if(!_0x35f450['startsWith'](_0xe877b))return{'content':[{'type':_0x4de409[_0x4ea3ea(0xa0)],'text':JSON[_0x4ea3ea(0x74)]({'error':'file_path\x20escapes\x20project\x20root.'})}],'isError':!0x0};try{_0x2e4196=await readFile(_0x35f450,'utf-8');}catch(_0x1c36d6){const _0x28fbba=_0x4de409[_0x4ea3ea(0x95)](_0x1c36d6,Error)?_0x1c36d6['message']:String(_0x1c36d6);return{'content':[{'type':_0x4ea3ea(0x9e),'text':JSON[_0x4ea3ea(0x74)]({'error':_0x4ea3ea(0x82)+_0x28fbba})}],'isError':!0x0};}}const _0x480f53={'tokens':_0x33dd89['countTokens'](_0x2e4196),'tokens_method':_0x4ea3ea(0x85),'estimate':_0x33dd89[_0x4ea3ea(0x77)](_0x2e4196),'estimate_method':_0x4ea3ea(0x9a)+(_0x4ea3ea(0x78)===_0x4ddf29?_0x4ea3ea(0x81):_0x4de409[_0x4ea3ea(0x91)])+')','provider':_0x4ddf29,'model':_0x25fd6d};return{'content':[{'type':_0x4ea3ea(0x9e),'text':JSON[_0x4ea3ea(0x74)](_0x480f53)}]};}),_0x2dd2f1['registerTool'](_0x4de409[_0x4853fd(0x7a)],{'description':_0x4853fd(0x73)},async()=>{const _0x52d8ee=_0x4853fd,_0x212f2b=_0x2e7616['getDispatcher']()['getSessionSummary'](),_0xc9a0cf={'baseline_tokens':_0x212f2b['total_baseline'],'optimized_tokens':_0x212f2b[_0x52d8ee(0x92)],'saved_tokens':_0x212f2b[_0x52d8ee(0x70)],'saved_percent':_0x212f2b['savings_percent'],'prompts_count':_0x212f2b['prompts_count'],'rules_triggered':_0x212f2b[_0x52d8ee(0x7e)]};return{'content':[{'type':_0x52d8ee(0x9e),'text':JSON[_0x52d8ee(0x74)](_0xc9a0cf)}]};});}function _0x164a(){const _0x5b9dae=['length','registerTool','rules_triggered','437624xmBcFX','INdmj','1.3','Failed\x20to\x20read\x20file:\x20','optional','describe','BPE\x20tokenizer\x20(accurate)','projectRoot','1.4','KhsTv','getDispatcher','eGujG','2876284WThdEb','CYXUw','jBMKn','Inline\x20text\x20to\x20analyze','hyMsd','ssgNC','pcWZZ','total_optimized','getSessionSummary','additionalContext','LEbLg','2584246XgClHE','The\x20user\x20prompt\x20to\x20optimize','getConfig','226299ZvpBJb','word\x20heuristic\x20(words\x20×\x20','model','eNYNH','Either\x20text\x20or\x20file_path\x20must\x20be\x20provided.','text','21389949fUtNMx','rjkXl','getTokenProvider','setProjectRoot','5335410mZvHpN','total_delta','matchAll','Path\x20to\x20a\x20file\x20to\x20analyze','Return\x20cumulative\x20token\x20savings\x20for\x20the\x20current\x20MCP\x20session.\x20Shows\x20baseline\x20vs\x20optimized\x20token\x20counts\x20and\x20per-rule\x20trigger\x20counts.','stringify','provider','8186664Dgjvej','estimateTokens','openai','string','GvZWA','NGjfr'];_0x164a=function(){return _0x5b9dae;};return _0x164a();}
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- const _0x34d274=_0x5825;(function(_0x18414d,_0x2a8ae7){const _0x1be245=_0x5825,_0x3a50ce=_0x18414d();while(!![]){try{const _0x2f4e22=-parseInt(_0x1be245(0x1f6))/0x1+-parseInt(_0x1be245(0x204))/0x2*(-parseInt(_0x1be245(0x1ef))/0x3)+parseInt(_0x1be245(0x1ed))/0x4*(parseInt(_0x1be245(0x1fa))/0x5)+-parseInt(_0x1be245(0x1f8))/0x6*(-parseInt(_0x1be245(0x201))/0x7)+parseInt(_0x1be245(0x1fe))/0x8*(parseInt(_0x1be245(0x1f9))/0x9)+parseInt(_0x1be245(0x1f0))/0xa+-parseInt(_0x1be245(0x1fb))/0xb;if(_0x2f4e22===_0x2a8ae7)break;else _0x3a50ce['push'](_0x3a50ce['shift']());}catch(_0x1d9c6d){_0x3a50ce['push'](_0x3a50ce['shift']());}}}(_0x577e,0x66089));import{resolve}from'node:path';import{loadConfig}from'./config-loader.js';import{HookDispatcher}from'./hook-dispatcher.js';import{buildSessionStartContext}from'./session-start.js';function _0x577e(){const _0x515ec6=['33850MkYqyM','20824309dAHDgQ','exit','push','1128kLqXgj','parse','metering','3608437UjLKXL','concat','handleUserPromptSubmit','10fHoMsf','Stop','handlePreCompact','utf-8','bJQeD','492rqxolx','PreCompact','155703aXrfok','8039470ideLGq','UserPromptSubmit','join','catch','stdout','cwd','308157pMrdfW','send','6LyfyVC','13248NnzDMR'];_0x577e=function(){return _0x515ec6;};return _0x577e();}function _0x5825(_0x476030,_0x1a5630){_0x476030=_0x476030-0x1ed;const _0x577e16=_0x577e();let _0x5825e3=_0x577e16[_0x476030];return _0x5825e3;}import{buildSmartContext}from'./smart-context.js';import{MeteringClient,buildMeterPayload}from'./metering-client.js';import{loadApiKeyFromConfig}from'../cli/setup-cmd.js';if(!process.env.TOKENIZER_API_KEY){const t=loadApiKeyFromConfig();t&&(process.env.TOKENIZER_API_KEY=t);}async function main(){const _0x67d9e1=_0x5825,_0x7868f={'cBiFc':_0x67d9e1(0x207),'bJQeD':function(_0x543a76,_0x57f08d){return _0x543a76(_0x57f08d);},'TnEOM':_0x67d9e1(0x1f1),'iaFxg':function(_0x48b191,_0x47d9b6){return _0x48b191>_0x47d9b6;},'oGsiu':_0x67d9e1(0x1ee)},_0x53e738=[];for await(const _0x1f35cf of process['stdin'])_0x53e738[_0x67d9e1(0x1fd)](_0x1f35cf);const _0x19b868=Buffer[_0x67d9e1(0x202)](_0x53e738)['toString'](_0x7868f['cBiFc']);let _0x34d3de;try{_0x34d3de=JSON[_0x67d9e1(0x1ff)](_0x19b868);}catch{process['exit'](0x0);}const _0x1bf125=_0x34d3de[_0x67d9e1(0x1f5)]||process[_0x67d9e1(0x1f5)](),_0x4b1145=_0x34d3de['hook_event_name'];let _0x302c3a;try{_0x302c3a=_0x7868f[_0x67d9e1(0x208)](loadConfig,_0x1bf125);}catch{const _0xb31e1c=process.env.CLAUDE_PLUGIN_ROOT||resolve(import.meta.dirname,'../..');_0x302c3a=loadConfig(_0xb31e1c);}const _0x546b8d=new HookDispatcher(_0x302c3a,_0x1bf125,_0x34d3de['session_id']);let _0x38003b={};switch(_0x4b1145){case'SessionStart':_0x38003b=buildSessionStartContext({'cwd':_0x1bf125});break;case _0x7868f['TnEOM']:{const _0x38a808=_0x546b8d[_0x67d9e1(0x203)](_0x34d3de),_0x222951=buildSmartContext({'prompt':_0x34d3de['prompt']||'','cwd':_0x1bf125}),_0x306f65=[_0x38a808['additionalContext'],_0x222951['additionalContext']]['filter'](Boolean);_0x38003b=_0x7868f['iaFxg'](_0x306f65['length'],0x0)?{'additionalContext':_0x306f65[_0x67d9e1(0x1f2)]('\x0a')}:{};break;}case _0x7868f['oGsiu']:_0x38003b=_0x546b8d[_0x67d9e1(0x206)](_0x34d3de);break;case _0x67d9e1(0x205):{const _0x449418=_0x546b8d['handleSessionStop'](),_0x1208f8=new MeteringClient(_0x302c3a[_0x67d9e1(0x200)]['endpoint']),_0x43ad5f=buildMeterPayload(_0x449418,{'provider':_0x302c3a['provider'],'model':_0x302c3a['model']});await _0x1208f8[_0x67d9e1(0x1f7)](_0x43ad5f);break;}}process[_0x67d9e1(0x1f4)]['write'](JSON['stringify'](_0x38003b)),process[_0x67d9e1(0x1fc)](0x0);}main()[_0x34d274(0x1f3)](()=>process[_0x34d274(0x1fc)](0x0));
2
+ const _0x198515=_0x21aa;function _0x28ef(){const _0x4034b3=['exit','model','30067128sZLVAX','NLnzv','tpCRk','1478UcSkLS','cwd','length','join','handleUserPromptSubmit','toString','3543wKAfNg','hook_event_name','endpoint','2439492kZOxhy','3654952fUrFrY','3891295gsRGiE','vabfw','6753292AXYfpJ','Stop','handlePreCompact','additionalContext','86020UMMPOZ','stdin','UserPromptSubmit','provider','catch'];_0x28ef=function(){return _0x4034b3;};return _0x28ef();}(function(_0x5d3986,_0xa357f5){const _0x3df509=_0x21aa,_0x46cc3e=_0x5d3986();while(!![]){try{const _0x348f7f=parseInt(_0x3df509(0x14a))/0x1+parseInt(_0x3df509(0x154))/0x2*(-parseInt(_0x3df509(0x13f))/0x3)+-parseInt(_0x3df509(0x143))/0x4+-parseInt(_0x3df509(0x144))/0x5+parseInt(_0x3df509(0x142))/0x6+-parseInt(_0x3df509(0x146))/0x7+parseInt(_0x3df509(0x151))/0x8;if(_0x348f7f===_0xa357f5)break;else _0x46cc3e['push'](_0x46cc3e['shift']());}catch(_0x70b29f){_0x46cc3e['push'](_0x46cc3e['shift']());}}}(_0x28ef,0xb0249));import{resolve}from'node:path';import{loadConfig}from'./config-loader.js';import{HookDispatcher}from'./hook-dispatcher.js';import{buildSessionStartContext}from'./session-start.js';function _0x21aa(_0x27769b,_0x104301){_0x27769b=_0x27769b-0x13b;const _0x28ef76=_0x28ef();let _0x21aaeb=_0x28ef76[_0x27769b];return _0x21aaeb;}import{buildSmartContext}from'./smart-context.js';import{MeteringClient,buildMeterPayload}from'./metering-client.js';import{loadApiKeyFromConfig}from'../cli/setup-cmd.js';if(!process.env.TOKENIZER_API_KEY){const t=loadApiKeyFromConfig();t&&(process.env.TOKENIZER_API_KEY=t);}async function main(){const _0x5c9930=_0x21aa,_0x2b5973={'nAgON':'utf-8','tpCRk':function(_0x3ca294,_0x3bb5f0){return _0x3ca294(_0x3bb5f0);},'qRgEn':'../..','NLnzv':_0x5c9930(0x14c),'tONSv':'PreCompact','Cvnpi':_0x5c9930(0x147),'vabfw':function(_0x328987,_0x5ee8e8,_0x3c77c1){return _0x328987(_0x5ee8e8,_0x3c77c1);}},_0x3626c8=[];for await(const _0x5be2ce of process[_0x5c9930(0x14b)])_0x3626c8['push'](_0x5be2ce);const _0x4f7e50=Buffer['concat'](_0x3626c8)[_0x5c9930(0x13e)](_0x2b5973['nAgON']);let _0x4bb5f4;try{_0x4bb5f4=JSON['parse'](_0x4f7e50);}catch{process[_0x5c9930(0x14f)](0x0);}const _0xf28075=_0x4bb5f4['cwd']||process[_0x5c9930(0x155)](),_0x3d2957=_0x4bb5f4[_0x5c9930(0x140)];let _0x543fe6;try{_0x543fe6=_0x2b5973[_0x5c9930(0x153)](loadConfig,_0xf28075);}catch{const _0x2999e4=process.env.CLAUDE_PLUGIN_ROOT||resolve(import.meta.dirname,_0x2b5973['qRgEn']);_0x543fe6=_0x2b5973['tpCRk'](loadConfig,_0x2999e4);}const _0x391934=new HookDispatcher(_0x543fe6,_0xf28075,_0x4bb5f4['session_id']);let _0x4c97f5={};switch(_0x3d2957){case'SessionStart':_0x4c97f5=_0x2b5973[_0x5c9930(0x153)](buildSessionStartContext,{'cwd':_0xf28075});break;case _0x2b5973[_0x5c9930(0x152)]:{const _0x2dd9a8=_0x391934[_0x5c9930(0x13d)](_0x4bb5f4),_0x5004ba=_0x2b5973['tpCRk'](buildSmartContext,{'prompt':_0x4bb5f4['prompt']||'','cwd':_0xf28075}),_0x1f72ba=[_0x2dd9a8[_0x5c9930(0x149)],_0x5004ba['additionalContext']]['filter'](Boolean);_0x4c97f5=_0x1f72ba[_0x5c9930(0x13b)]>0x0?{'additionalContext':_0x1f72ba[_0x5c9930(0x13c)]('\x0a')}:{};break;}case _0x2b5973['tONSv']:_0x4c97f5=_0x391934[_0x5c9930(0x148)](_0x4bb5f4);break;case _0x2b5973['Cvnpi']:{const _0x69c142=_0x391934['handleSessionStop'](),_0x4df90e=new MeteringClient(_0x543fe6['metering'][_0x5c9930(0x141)]),_0x230120=_0x2b5973[_0x5c9930(0x145)](buildMeterPayload,_0x69c142,{'provider':_0x543fe6[_0x5c9930(0x14d)],'model':_0x543fe6[_0x5c9930(0x150)]});await _0x4df90e['send'](_0x230120);break;}}process['stdout']['write'](JSON['stringify'](_0x4c97f5)),process['exit'](0x0);}main()[_0x198515(0x14e)](()=>process['exit'](0x0));