@guanghechen/kit-video 0.4.0 → 0.5.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.
package/README.md CHANGED
@@ -23,7 +23,9 @@ kit-video autogen -s /path/to/scenario -o /path/to/output --video --pdf --pptx
23
23
  kit-video autogen -s /path/to/scenario --dry-run
24
24
  ```
25
25
 
26
- Note: `preference` / `outline` / `transcript` stages currently validate existing files in workspace. They do not generate these files automatically.
26
+ Note:
27
+ - `preference` / `outline` / `transcript` stages currently validate existing files in workspace. They do not generate these files automatically.
28
+ - `autogen` requires scenario to contain `material.md` or `material/`.
27
29
 
28
30
  ### Individual Commands
29
31
 
@@ -72,7 +74,7 @@ The video generation pipeline consists of the following stages:
72
74
  | `preference` | Validate existing presentation preferences | `preference.json` |
73
75
  | `outline` | Validate existing slide outline | `outline.json` |
74
76
  | `transcript` | Validate existing transcript for slides | `transcript.md` |
75
- | `image` | Generate slide images | `img/slide_N_V.png` |
77
+ | `image` | Generate slide images | `img/slide_001.png` |
76
78
  | `ocr` | Extract text from slide images | `ocr_data.json` |
77
79
  | `pdf` | Generate PDF from images (full edition) | `presentation.pdf` |
78
80
  | `pptx` | Generate PPTX from images (full edition) | `presentation.pptx` |
@@ -85,7 +87,7 @@ The video generation pipeline consists of the following stages:
85
87
  ```
86
88
  scenario/
87
89
  ├── query.md # Topic/query for generation
88
- ├── material/ # (Optional) Reference materials
90
+ ├── material/ # (Alternative to material.md) Reference materials
89
91
  │ ├── doc1.pdf
90
92
  │ └── ...
91
93
  ├── preference.json # (Optional) Pre-defined preferences
@@ -93,6 +95,8 @@ scenario/
93
95
  └── transcript.md # (Optional) Pre-generated transcript
94
96
  ```
95
97
 
98
+ `material.md` or `material/` is required for `prepare` / `autogen`.
99
+
96
100
  ## Workspace Structure
97
101
 
98
102
  After running the pipeline, the workspace will contain:
@@ -106,8 +110,8 @@ workspace/
106
110
  ├── outline.json # Slide outline
107
111
  ├── transcript.md # Narration transcript
108
112
  ├── img/ # Generated images
109
- │ ├── slide_0_1.png
110
- │ ├── slide_1_1.png
113
+ │ ├── slide_001.png
114
+ │ ├── slide_002.png
111
115
  │ └── ...
112
116
  ├── ocr_data.json # OCR results
113
117
  ├── voice.mp3 # TTS audio
@@ -137,9 +141,9 @@ workspace/
137
141
  | `--tts-source` | string | speech | TTS source (speech/llmapi) |
138
142
  | `--speech-voice` | string | - | Azure Speech voice name |
139
143
  | `--transition` | string | wipeleft | Transition effect |
140
- | `--transition-duration` | string | 0.8 | Transition duration in seconds |
141
- | `--stage-image-parallel` | string | 1 | Image stage parallelism |
142
- | `--stage-ocr-parallel` | string | 2 | OCR stage parallelism |
144
+ | `--transition-duration` | number | 0.8 | Transition duration in seconds |
145
+ | `--stage-image-parallel` | number | 1 | Image stage parallelism |
146
+ | `--stage-ocr-parallel` | number | 2 | OCR stage parallelism |
143
147
  | `--srt` | boolean | false | Generate and burn subtitles |
144
148
  | `--stt` | boolean | false | Enable STT for precise timing |
145
149
  | `--query` | string | - | Inline query text |
@@ -154,8 +158,8 @@ workspace/
154
158
  | `-w, --workspace-dir` | | string | required | Workspace directory |
155
159
  | `--srt` | | boolean | false | Burn subtitles into video |
156
160
  | `--transition` | | string | wipeleft | Transition type between slides |
157
- | `--transition-duration` | | string | 0.8 | Transition duration in seconds |
158
- | `--force` | | boolean | false | Force regenerate video |
161
+ | `--transition-duration` | | number | 0.8 | Transition duration in seconds |
162
+ | `--force` | | boolean | false | Reserved; currently no extra effect |
159
163
 
160
164
  ## Transition Types
161
165
 
@@ -168,7 +172,19 @@ Supported transition types:
168
172
  - `circleopen`, `circleclose`
169
173
  - `dissolve`, `pixelize`, `radial`
170
174
 
175
+ ## Environment Resolution
176
+
177
+ `kit-video` runtime env chain:
178
+
179
+ 1. CLI entry preloads missing keys from `<config-root>/.env.local` into `process.env` via `src/env.ts`.
180
+ 2. CLI entry passes `process.env` into `command.run({ envs })`.
181
+ 3. commander merges user env with preset env (`<preset-root>/.env.local`).
182
+ 4. CLI actions (including `checkhealth`) consume effective `ctx.envs`.
183
+
184
+ For duplicated keys, preset env overrides user env.
185
+
171
186
  ## Requirements
172
187
 
173
- - Node.js >= 24.0.0
188
+ - Node.js >= 20.0.0
174
189
  - ffmpeg and ffprobe (must be installed and available in PATH)
190
+ - ImageMagick `magick` command (required when using `pdf` stage)
package/lib/esm/cli.mjs CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- (function(_0x1b55ae,_0x2ac57a){const _0x48d879={_0x4ea66b:0x37a,_0x1b7252:0x381,_0x4ccdca:'(k#a',_0x38b2f2:0x3ae,_0x93cd9e:0x397,_0x544f1d:0x377,_0x470d83:'TAS[',_0x1883b4:0x398,_0x3a0f5a:0x38a,_0x5c4cce:0x37a,_0x5df8e5:'fbuJ',_0x2f43d7:0x365,_0x2b64f1:0x37b,_0x2f3cda:'oeWw',_0x367c29:0x3a6,_0x22d4c9:0x382,_0x4e6f09:'Z[lX',_0x233784:0x387,_0x459a48:0x13c,_0x562b0d:'mNRK',_0xa169a8:0x155,_0x184e3f:0x147,_0x5c6a34:'dO&s',_0x35bb7e:0x156,_0x39b066:0x148,_0x44c779:'CNf*',_0x4ca3a6:0x14f,_0x14fa12:0x382,_0x2fdd1e:'1#ci',_0x28a780:0x376,_0x5308e4:0x38c,_0xbdd76f:0x39d,_0x449995:0x391,_0x2df945:0x15a,_0x2431ee:0x12c,_0xa0fa95:'YNSI',_0x49967f:0x145,_0x4114ba:0x16d,_0x42caca:0x163,_0x22df79:0x14c,_0x5961e3:0x153,_0x3df515:'rf!2',_0x97a3e6:0x159},_0xd9f045={_0x42974e:0x85},_0x2814b5={_0x4d44b2:0x2c2};function _0x41aebf(_0x139103,_0x51f58a,_0x521dc9,_0x3f5284){return _0x119d(_0x3f5284-_0x2814b5._0x4d44b2,_0x51f58a);}const _0x4020a3=_0x1b55ae();function _0x29e353(_0x415739,_0x8a5098,_0x5dd231,_0x67398e){return _0x119d(_0x67398e-_0xd9f045._0x42974e,_0x5dd231);}while(!![]){try{const _0x17ee5c=parseInt(_0x41aebf(0x38f,'xg8x',_0x48d879._0x4ea66b,0x378))/(-0x12ad+0x1d1+0x10dd)*(-parseInt(_0x41aebf(_0x48d879._0x1b7252,_0x48d879._0x4ccdca,_0x48d879._0x38b2f2,_0x48d879._0x93cd9e))/(-0x967+0x20b*0x1+0x1*0x75e))+parseInt(_0x41aebf(_0x48d879._0x544f1d,_0x48d879._0x470d83,_0x48d879._0x1883b4,_0x48d879._0x3a0f5a))/(0x3f3+-0x1*-0x235+0x1*-0x625)*(parseInt(_0x41aebf(_0x48d879._0x5c4cce,_0x48d879._0x5df8e5,_0x48d879._0x2f43d7,_0x48d879._0x2b64f1))/(0x3*-0xba3+-0x17fa+0x11*0x377))+-parseInt(_0x41aebf(_0x48d879._0x1883b4,_0x48d879._0x2f3cda,_0x48d879._0x367c29,0x390))/(0x1d0b+-0x79*-0x43+-0x3cb1)*(parseInt(_0x41aebf(_0x48d879._0x22d4c9,_0x48d879._0x4e6f09,_0x48d879._0x233784,0x370))/(-0x3ee+0x2*0x1315+-0x2236))+parseInt(_0x29e353(0x13d,_0x48d879._0x459a48,_0x48d879._0x562b0d,_0x48d879._0xa169a8))/(-0x2176+0x1102+0x1*0x107b)*(parseInt(_0x29e353(_0x48d879._0x184e3f,0x14f,_0x48d879._0x5c6a34,_0x48d879._0x35bb7e))/(0x993+-0x1*-0x12e5+-0xb6*0x28))+parseInt(_0x29e353(_0x48d879._0x39b066,0x167,_0x48d879._0x44c779,_0x48d879._0x4ca3a6))/(-0x8b9+0x13d5+0x87*-0x15)*(-parseInt(_0x41aebf(_0x48d879._0x14fa12,_0x48d879._0x2fdd1e,_0x48d879._0x28a780,0x37c))/(-0x25ec+-0x86b*-0x4+0x44a))+-parseInt(_0x41aebf(_0x48d879._0x5308e4,_0x48d879._0x5df8e5,_0x48d879._0xbdd76f,_0x48d879._0x449995))/(-0x2260+-0x156*0x5+0xdb3*0x3)*(parseInt(_0x29e353(_0x48d879._0x2df945,_0x48d879._0x2431ee,_0x48d879._0xa0fa95,_0x48d879._0x49967f))/(0x5*-0x783+0x2d+0x256e))+parseInt(_0x29e353(_0x48d879._0x4114ba,_0x48d879._0x42caca,'xg8x',0x15c))/(-0xcb1+0x1924+-0x1*0xc66)*(parseInt(_0x29e353(_0x48d879._0x22df79,_0x48d879._0x5961e3,_0x48d879._0x3df515,_0x48d879._0x97a3e6))/(-0xcd*0x29+-0x52*-0x2c+0x12cb));if(_0x17ee5c===_0x2ac57a)break;else _0x4020a3['push'](_0x4020a3['shift']());}catch(_0x13499d){_0x4020a3['push'](_0x4020a3['shift']());}}}(_0x50df,-0xbe848+0xc6544+0x2f*0x29fd));import{C as _0x57ba67,V as _0x1858a5}from'./command-BBJNCMLk.mjs';import{CompletionCommand}from'@guanghechen/commander';import{Reporter}from'@guanghechen/reporter';import'node:module';import'@guanghechen/string';import'node:fs';import'node:path';function _0x38eea4(_0xa9809e,_0x457aef,_0x422ae7,_0x160ad1){const _0x491703={_0x59f554:0x230};return _0x119d(_0xa9809e- -_0x491703._0x59f554,_0x160ad1);}import'@guanghechen/env';function _0x50df(){const _0x3079f4=['WQZcHtKLtW','hrvLeSkL','WRXfW4dcSCkLFJFcPmkgEgKNpq','W6vlW4VcMmkmW7XzCJRdTcJcJq','W7/cSCo5qa8','WRnIW4L7xvCVW68','W4tcTIdcNCkX','W7BcJtL+sq','B8o6k3uL','W6FcQ8kKW7/dVa','uLhcQYDkWRFcNSoa','WQtcICkiW5NdNgldVq','vqZcTd5D','W7JcPmoJrW','CCkud8oyq8oWW4FcG2ZcUMToFG','W4xcUgGPW6hcRmkdW7a','oX3cR8o0WOa','W4FcQZRcMSoW','WQBdKx8','y8oOWRuQWQq','WRNdPSooW4iyWPVcIq','WRbQWRiefqKNW7pcMmktWPJdJa','BSoJFbqSW4SuWOGLW6JcRmkv','WRtcTCoJhG','jSkSn0FcJq','W7VdO2fNtJFdGCkBBmkDs8ksBG','iColC8kifW','W5SvaSkOW68NBfNdImkgWPLpra','W7RdKMfNu8olWPZdOrJdNW','BqhcKmoIWObqEW','hmkJW7BdHqi','WP/dJCoPDqaXAf7dKILJh8oR','W4zcWO8AW70','W6ddNxBcImo9','bSk3FSkCW68qWRpdR8kZW6BdPG','WRJcVSo5W5mhWP/cK1G','DCktu8kDh8koWRFcUG','uvddUhOkW6NdP8olWOxcGXdcQYG','Dmo0W47dKSoAuJhcMW','W4RdTZJcQa','W4dcSc7cHa','ESkTW5RcVmoDiSoFWOyVCW','kNpcONjdl8kyW7pcJ8oEk8oB','W5TBW4RdVIG','WQldUCoJWQBcVeRdQvTYzmoa','W6tdQSk+ta4','omoTw8ktpa','W7JdKhj7tW','W63dMN5Pzq','kCkOiKPP'];_0x50df=function(){return _0x3079f4;};return _0x50df();}import'node:os';import'node:crypto';import'node:child_process';const _0x2d0e29={};_0x2d0e29[_0x55af70('86l(',0xc1,0x9a,0xb0)+'x']=_0x57ba67;const _0x2e03ff=new Reporter(_0x2d0e29),_0x4b3654=new _0x1858a5();_0x4b3654[_0x38eea4(-0x167,-0x175,-0x179,'tdbA')+_0x38eea4(-0x165,-0x17e,-0x168,'dhPE')+_0x38eea4(-0x17d,-0x188,-0x196,'!Z]T')+'ands']();const _0x3a4385={};function _0x119d(_0x5322d3,_0x565760){_0x5322d3=_0x5322d3-(-0x8b*-0x43+0x1*-0x19d4+-0x9e1);const _0xd53d1a=_0x50df();let _0x30255d=_0xd53d1a[_0x5322d3];if(_0x119d['rqqKOo']===undefined){var _0x1600ce=function(_0x3bfa2b){const _0x37f724='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2d719c='',_0x6d8cbd='';for(let _0x44723b=-0x2037+0x98f*-0x1+-0x1*-0x29c6,_0x239db2,_0x1e69fd,_0x44c359=-0x13*-0x10d+-0x2272+0xe7b;_0x1e69fd=_0x3bfa2b['charAt'](_0x44c359++);~_0x1e69fd&&(_0x239db2=_0x44723b%(0x1cd7+-0xb*0xdd+-0x1354)?_0x239db2*(0xb01+-0x19aa+0xee9*0x1)+_0x1e69fd:_0x1e69fd,_0x44723b++%(-0x1b*0x10d+-0x1*0x1a0b+0x366e))?_0x2d719c+=String['fromCharCode'](0x35e+-0x7*0xad+0x25c&_0x239db2>>(-(-0x1b*0xd+0x168d+-0x152c)*_0x44723b&-0x9e*-0x12+-0x1332+0x2*0x40e)):-0xe*-0x2a4+0x2ce*0x1+0x13e3*-0x2){_0x1e69fd=_0x37f724['indexOf'](_0x1e69fd);}for(let _0x37b0cc=0x617*0x2+0x530*-0x2+0x42*-0x7,_0x3b5f8d=_0x2d719c['length'];_0x37b0cc<_0x3b5f8d;_0x37b0cc++){_0x6d8cbd+='%'+('00'+_0x2d719c['charCodeAt'](_0x37b0cc)['toString'](-0x2*-0x7f6+-0x54e*-0x1+-0x152a))['slice'](-(-0x1*0x240e+-0x1c23+0x4033));}return decodeURIComponent(_0x6d8cbd);};const _0x2cb9da=function(_0x46c062,_0x29920c){let _0x4ad0ae=[],_0x2c63f9=-0xcf2*-0x2+-0x1235+-0x7af,_0x32b3da,_0x111a76='';_0x46c062=_0x1600ce(_0x46c062);let _0x250b1e;for(_0x250b1e=-0x3b8+-0x2682+0x2a3a;_0x250b1e<0xb52+-0x2429*-0x1+-0x1*0x2e7b;_0x250b1e++){_0x4ad0ae[_0x250b1e]=_0x250b1e;}for(_0x250b1e=-0x85f+0x1a05+-0x12*0xfb;_0x250b1e<-0x10fb*-0x2+-0x11*-0x7d+-0x2943;_0x250b1e++){_0x2c63f9=(_0x2c63f9+_0x4ad0ae[_0x250b1e]+_0x29920c['charCodeAt'](_0x250b1e%_0x29920c['length']))%(0x998*0x4+0x7e7+0x1*-0x2d47),_0x32b3da=_0x4ad0ae[_0x250b1e],_0x4ad0ae[_0x250b1e]=_0x4ad0ae[_0x2c63f9],_0x4ad0ae[_0x2c63f9]=_0x32b3da;}_0x250b1e=0xcc1+-0x67*0x27+0x2f0,_0x2c63f9=0x2*-0x4ee+0x49*-0x71+0x2a15;for(let _0x47e47d=-0x136d*-0x1+-0x234e+-0x32d*-0x5;_0x47e47d<_0x46c062['length'];_0x47e47d++){_0x250b1e=(_0x250b1e+(-0xd*0xc5+-0x9c3+0x13c5))%(-0x34*0x41+-0x1cc6*-0x1+-0xe92),_0x2c63f9=(_0x2c63f9+_0x4ad0ae[_0x250b1e])%(-0x1*0x44f+0x53*-0x1d+0x1*0xeb6),_0x32b3da=_0x4ad0ae[_0x250b1e],_0x4ad0ae[_0x250b1e]=_0x4ad0ae[_0x2c63f9],_0x4ad0ae[_0x2c63f9]=_0x32b3da,_0x111a76+=String['fromCharCode'](_0x46c062['charCodeAt'](_0x47e47d)^_0x4ad0ae[(_0x4ad0ae[_0x250b1e]+_0x4ad0ae[_0x2c63f9])%(0x3f3+-0x1*-0x235+0x2*-0x294)]);}return _0x111a76;};_0x119d['IMqBXd']=_0x2cb9da,_0x119d['rPyQTR']={},_0x119d['rqqKOo']=!![];}const _0x197554=_0xd53d1a[0x3*-0xba3+-0x17fa+0xf*0x3ed],_0x2ae487=_0x5322d3+_0x197554,_0x5e4524=_0x119d['rPyQTR'][_0x2ae487];return!_0x5e4524?(_0x119d['cNhamS']===undefined&&(_0x119d['cNhamS']=!![]),_0x30255d=_0x119d['IMqBXd'](_0x30255d,_0x565760),_0x119d['rPyQTR'][_0x2ae487]=_0x30255d):_0x30255d=_0x5e4524,_0x30255d;}function _0x55af70(_0x531d40,_0x61fd7b,_0x51edaf,_0x22fd92){const _0x3af5f2={_0x32213c:0x2a};return _0x119d(_0x22fd92- -_0x3af5f2._0x32213c,_0x531d40);}_0x3a4385[_0x55af70('Ohn0',0xc6,0xc6,0xb2)+_0x55af70('fbuJ',0xa8,0x8e,0x9b)+'e']=_0x57ba67,_0x3a4385[_0x55af70('xg8x',0x9f,0x74,0x8a)]={},_0x3a4385[_0x55af70('xg8x',0x9f,0x74,0x8a)][_0x38eea4(-0x178,-0x183,-0x184,'*rN7')]=_0x55af70('86l(',0x75,0x6f,0x88)+_0x55af70('dYo#',0xb6,0xc7,0xaf)+'bash/'+_0x55af70('Me3k',0xa6,0xc9,0xb3)+_0x55af70('PYnF',0x96,0x8e,0x82)+'s/'+_0x57ba67+_0x38eea4(-0x173,-0x15c,-0x182,'86l('),_0x3a4385[_0x55af70('xg8x',0x9f,0x74,0x8a)]['fish']='~/.co'+'nfig/'+_0x38eea4(-0x174,-0x173,-0x17f,'6I]r')+'compl'+_0x55af70('*rN7',0x76,0x88,0x85)+'s/'+_0x57ba67+'.fish',_0x3a4385[_0x55af70('xg8x',0x9f,0x74,0x8a)][_0x55af70('mZ4e',0x9c,0xad,0xa8)]=_0x55af70('*rN7',0xc4,0x9f,0xae)+_0x55af70('ao!z',0x8d,0xb6,0xa2)+_0x55af70('aMlK',0x84,0xa4,0x94)+'compl'+_0x38eea4(-0x17f,-0x168,-0x188,'6I]r')+'s/'+_0x57ba67+_0x38eea4(-0x16e,-0x167,-0x17c,'*rN7'),_0x4b3654[_0x38eea4(-0x15a,-0x16b,-0x14f,'P([b')+_0x38eea4(-0x179,-0x161,-0x17f,'R0XC')](_0x38eea4(-0x16d,-0x171,-0x184,'Z9GD')+_0x55af70('TAS[',0x9b,0xa5,0x91),new CompletionCommand(_0x4b3654,_0x3a4385));try{await _0x4b3654['run']({'argv':process[_0x55af70('6I]r',0x96,0x9f,0xa9)]['slice'](0x1673+0x1e3e+-0x1*0x34af),'envs':process.env,'reporter':_0x2e03ff});}catch(_0x12fc01){_0x2e03ff['error'](_0x12fc01 instanceof Error?_0x12fc01['stack']??_0x12fc01['messa'+'ge']:String(_0x12fc01)),process[_0x38eea4(-0x155,-0x15a,-0x162,'86l(')+'ode']=0x206d+-0x1*0x70b+-0x1961;}
2
+ (function(_0x5b9641,_0x3b05d5){const _0x1091e5={_0x5f0c15:0xa,_0x4bdbcc:'l5Mj',_0x387d0d:0xb,_0x3299f7:'rUBu',_0xf31561:0x7,_0x16dd09:0x19,_0x1f9040:'Ke)T',_0x4ff95d:0x438,_0x2e7a79:0x44b,_0x28a2c3:0x426,_0x319fc1:0x442,_0x307e4a:0x41b,_0xc74b54:'7NjF',_0x107857:0x5,_0x195053:0x13,_0x2d770f:'&Hbu',_0x6ace66:0x409,_0x43e58d:'XI]I',_0x4a73fd:0x34,_0x274720:0x5,_0x3a56bd:0x43e,_0x156001:0x439,_0x5c6b3c:'8Ghj'},_0x21f84b={_0x7ee752:0xc6},_0x296e2b={_0x5de930:0x368};function _0x47cdcc(_0x5964f1,_0x1ba5e8,_0x357e0c,_0x5aa8e5){return _0x33d3(_0x5964f1-_0x296e2b._0x5de930,_0x5aa8e5);}const _0x4d92b2=_0x5b9641();function _0x4ee65d(_0x6fb41f,_0x2ae775,_0x108ce8,_0x15bd60){return _0x33d3(_0x6fb41f- -_0x21f84b._0x7ee752,_0x15bd60);}while(!![]){try{const _0x2ea6df=-parseInt(_0x4ee65d(-0x9,-0x23,_0x1091e5._0x5f0c15,_0x1091e5._0x4bdbcc))/(-0x15ee+-0x24f1+0x3ae0)+parseInt(_0x4ee65d(_0x1091e5._0x387d0d,0x14,0xf,_0x1091e5._0x3299f7))/(-0x1*0x8bd+-0x134e+0x1c0d)*(parseInt(_0x4ee65d(_0x1091e5._0xf31561,_0x1091e5._0x16dd09,0xe,_0x1091e5._0x1f9040))/(0xe36+0x20f8+-0x4b*0xa1))+parseInt(_0x47cdcc(_0x1091e5._0x4ff95d,_0x1091e5._0x2e7a79,_0x1091e5._0x28a2c3,'OnLE'))/(0x163*0xd+0x45*-0x1+-0x11be)+-parseInt(_0x47cdcc(0x42e,_0x1091e5._0x319fc1,_0x1091e5._0x307e4a,_0x1091e5._0xc74b54))/(0x91a+0xd4c+0x11*-0x151)*(parseInt(_0x4ee65d(0x1,-_0x1091e5._0x107857,_0x1091e5._0x195053,_0x1091e5._0x2d770f))/(-0x419*0x4+0x21b5*0x1+-0x114b))+parseInt(_0x4ee65d(-_0x1091e5._0xf31561,0x1,-0x1,'jB]&'))/(0x416+0x2422+-0x2831)+-parseInt(_0x47cdcc(0x421,0x40d,_0x1091e5._0x6ace66,'qlg!'))/(-0x1369+0x1359+0x18)*(parseInt(_0x4ee65d(-0x1a,-_0x1091e5._0x107857,-0x32,_0x1091e5._0x43e58d))/(-0x1*-0x737+0x36*-0xa3+0x1b34))+parseInt(_0x4ee65d(-0x1d,-_0x1091e5._0x4a73fd,-_0x1091e5._0x274720,'XI]I'))/(-0x37a*-0xb+-0x3d8*-0x8+-0x44f4)*(parseInt(_0x47cdcc(_0x1091e5._0x3a56bd,_0x1091e5._0x3a56bd,_0x1091e5._0x156001,_0x1091e5._0x5c6b3c))/(0x2678+0xf1d+-0x358a));if(_0x2ea6df===_0x3b05d5)break;else _0x4d92b2['push'](_0x4d92b2['shift']());}catch(_0x41b263){_0x4d92b2['push'](_0x4d92b2['shift']());}}}(_0x4b6e,-0xee74d+0x8f219+-0xb*-0x166f9));import{C as _0x3e9ae0,V as _0x362d68}from'./command-DEMuYjQ6.mjs';import{CompletionCommand}from'@guanghechen/commander/node';import{Reporter}from'@guanghechen/reporter';import'node:fs';import'node:path';function _0x53e640(_0x553274,_0x5d4b01,_0x422f12,_0x5c009e){const _0x5f446d={_0x425117:0x350};return _0x33d3(_0x5c009e- -_0x5f446d._0x425117,_0x422f12);}import'@guanghechen/string';function _0x4b6e(){const _0x36b470=['WRJdTSoiiha','W6RdH8ktW4RcRa','WQFdG8kgwZq','W7VcNCoS','axpcUNCO','cKmtnmoS','eh7cHaBcN8ksW7/dO8kwva','W4RdUCoOjCoPvZStWRddUG','zSkuW7ZdRCon','WRrun8kv','nqZcHcdcLW','WQqHW5BdVCoY','WQFcIrtcPCom','W60pWQVcO8k9bSoM','WQDEEd/cRG','WP4jWQnY','W7PtW4jnWO87cSo2WRFcJSoJWOiy','W7ldT2ddMCkWzSkNaJq1xb4','WO/cTSkIDCkE','A8kKg8kkWOi','WQi6W5ldOSoW','cbBcOIFdNW','W6ZcTCotpviPW75s','W6HtWQtcPmk0','WRRcTdZcImoQ','vYJdLL/cIG','j8kJaCkr','W7JdTd8LWR/dVqFdKfddSCo4la','W47cJYVcKgNdRdpcK8k/WP/dRMJdRbS','g1ZdVZFdKq','lrBdKYNcQa','W4ZcIIZdKrVcSvpdRSkR','WOqRW47dK8obW4/dMCk4WR9sWQ/dSa','WQfxlCksWOC','dCkxoCo4W4a','FbpcQ8k/ma','WQNdQSk2xSkz','WRiiWR/cNCoA','WQNcQ8olW5ddS8kCoSkD','F8kSdSkE','W7SjWQpcVeC','n8k2fq','W6DwoSkNggPRs2fXWPRcTh9j','WQPxFcJdRq','WRSmW5RdSmoRqSoUo8oEl8o3xW','BX3cSSkNlW','W6ldRSkSaa','CSkdomoUlq','wCoxu8kLWPZcQJBcUqOHW4pdUq','WOWMW4FdKSocW4ldLCkjWOPvWR3dLa','bmoYW77cLZtcVmoajKldHYm9'];_0x4b6e=function(){return _0x36b470;};return _0x4b6e();}import'@guanghechen/env';import'node:os';import'node:crypto';import'node:child_process';const _0x128f6a={};_0x128f6a[_0x3b6147(0x213,0x220,0x218,'rUBu')+'x']=_0x3e9ae0;const _0x657806=new Reporter(_0x128f6a);_0x362d68['ensur'+'ePres'+_0x3b6147(0x234,0x22a,0x23c,'l5Mj')+'t']();function _0x33d3(_0x17ff70,_0x474db4){_0x17ff70=_0x17ff70-(0x1*0x1fa7+-0x1087*-0x2+-0x4011);const _0x2448c6=_0x4b6e();let _0xb56f81=_0x2448c6[_0x17ff70];if(_0x33d3['lTTTPg']===undefined){var _0x27a806=function(_0x385e17){const _0x44de90='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2b2302='',_0x5e5d4b='';for(let _0x5538bb=-0xb3b*-0x1+0xfce*-0x2+0x1461,_0x4ed8b1,_0xd913d8,_0x33a63e=0x1b4+0x3*-0x516+0x2*0x6c7;_0xd913d8=_0x385e17['charAt'](_0x33a63e++);~_0xd913d8&&(_0x4ed8b1=_0x5538bb%(0x2b2+0x245b+-0x3*0xd03)?_0x4ed8b1*(-0x703*-0x3+-0x1dfc+-0x9d*-0xf)+_0xd913d8:_0xd913d8,_0x5538bb++%(0x17ac+0x158*-0x18+0x113*0x8))?_0x2b2302+=String['fromCharCode'](0xa79+0x1*-0x1d5d+0x13e3&_0x4ed8b1>>(-(0x10*-0x21e+-0x5*-0x5f0+0x3*0x166)*_0x5538bb&-0x211d+0x475+0xe57*0x2)):-0x133a+0xdc1+-0x579*-0x1){_0xd913d8=_0x44de90['indexOf'](_0xd913d8);}for(let _0x8b490d=-0x59*-0x10+0x21f1+-0x2781,_0x242da0=_0x2b2302['length'];_0x8b490d<_0x242da0;_0x8b490d++){_0x5e5d4b+='%'+('00'+_0x2b2302['charCodeAt'](_0x8b490d)['toString'](-0x2c7*0xc+0x1*-0xd55+0x2eb9))['slice'](-(0x211e+0x11*-0x11c+-0x1c8*0x8));}return decodeURIComponent(_0x5e5d4b);};const _0x247a4f=function(_0x5ea464,_0x4221ed){let _0x106940=[],_0x10a96d=-0xbab*-0x1+-0x96*0x1e+0x5e9,_0xcd6ce3,_0xa2878d='';_0x5ea464=_0x27a806(_0x5ea464);let _0x463739;for(_0x463739=0xc*0x7+-0x599+-0x13*-0x47;_0x463739<-0x88+-0xd4+0x25c*0x1;_0x463739++){_0x106940[_0x463739]=_0x463739;}for(_0x463739=0x1c45+-0x53*0x52+0x1af*-0x1;_0x463739<-0x1*-0x1143+-0xeb*0x24+0x1*0x10c9;_0x463739++){_0x10a96d=(_0x10a96d+_0x106940[_0x463739]+_0x4221ed['charCodeAt'](_0x463739%_0x4221ed['length']))%(-0x7c*-0x13+0xe19*0x2+-0x2466),_0xcd6ce3=_0x106940[_0x463739],_0x106940[_0x463739]=_0x106940[_0x10a96d],_0x106940[_0x10a96d]=_0xcd6ce3;}_0x463739=-0x223*0xc+-0xcae+0x2652,_0x10a96d=-0x15ee+-0x24f1+0x3adf;for(let _0x2f0f48=-0x1*0x8bd+-0x134e+0x1c0b;_0x2f0f48<_0x5ea464['length'];_0x2f0f48++){_0x463739=(_0x463739+(0xe36+0x20f8+-0xd*0x3a1))%(0x163*0xd+0x45*-0x1+-0x10c2),_0x10a96d=(_0x10a96d+_0x106940[_0x463739])%(0x91a+0xd4c+0x16*-0xf9),_0xcd6ce3=_0x106940[_0x463739],_0x106940[_0x463739]=_0x106940[_0x10a96d],_0x106940[_0x10a96d]=_0xcd6ce3,_0xa2878d+=String['fromCharCode'](_0x5ea464['charCodeAt'](_0x2f0f48)^_0x106940[(_0x106940[_0x463739]+_0x106940[_0x10a96d])%(-0x419*0x4+0x21b5*0x1+-0x1051)]);}return _0xa2878d;};_0x33d3['uMZQBw']=_0x247a4f,_0x33d3['GCslSX']={},_0x33d3['lTTTPg']=!![];}const _0x387e25=_0x2448c6[0x416+0x2422+-0x2838],_0x5b9c79=_0x17ff70+_0x387e25,_0x47feaa=_0x33d3['GCslSX'][_0x5b9c79];return!_0x47feaa?(_0x33d3['kfQhvY']===undefined&&(_0x33d3['kfQhvY']=!![]),_0xb56f81=_0x33d3['uMZQBw'](_0xb56f81,_0x474db4),_0x33d3['GCslSX'][_0x5b9c79]=_0xb56f81):_0xb56f81=_0x47feaa,_0xb56f81;}const _0x53ec54=new _0x362d68();_0x53ec54[_0x53e640(-0x29b,-0x2b7,'7NjF',-0x2aa)+'terSu'+_0x3b6147(0x246,0x23d,0x23b,'VBT(')+'ands']();const _0x5dbe87={};_0x5dbe87[_0x3b6147(0x251,0x23c,0x24e,'2O^H')+_0x53e640(-0x2c5,-0x2bd,'qlg!',-0x2ac)+'e']=_0x3e9ae0,_0x5dbe87[_0x53e640(-0x2a2,-0x29a,'WbP#',-0x296)]={},_0x5dbe87[_0x53e640(-0x2a2,-0x29a,'WbP#',-0x296)][_0x53e640(-0x2b7,-0x2a3,'emVw',-0x2a9)]=_0x3b6147(0x239,0x250,0x25a,'24S3')+_0x53e640(-0x2b4,-0x28a,'4MiW',-0x29b)+'bash/'+_0x3b6147(0x230,0x245,0x23d,'Y7[j')+_0x53e640(-0x2ab,-0x2b1,'Q&(7',-0x2a2)+'s/'+_0x3e9ae0+_0x53e640(-0x2a7,-0x2aa,'Mrj*',-0x29a),_0x5dbe87[_0x53e640(-0x2a2,-0x29a,'WbP#',-0x296)][_0x3b6147(0x230,0x22f,0x218,'Mrj*')]='~/.co'+_0x3b6147(0x260,0x249,0x242,'&[tC')+_0x3b6147(0x218,0x22d,0x245,'Ke)T')+_0x3b6147(0x245,0x233,0x23b,'&[tC')+_0x53e640(-0x287,-0x282,'*cSp',-0x27c)+'s/'+_0x3e9ae0+_0x3b6147(0x254,0x24e,0x252,'emVw'),_0x5dbe87[_0x53e640(-0x2a2,-0x29a,'WbP#',-0x296)][_0x53e640(-0x295,-0x294,'Q&(7',-0x287)]='~/.co'+_0x3b6147(0x23c,0x243,0x231,'@&6M')+_0x3b6147(0x264,0x24d,0x25c,'&Hbu')+_0x53e640(-0x2a6,-0x28e,'WbP#',-0x2a0)+_0x3b6147(0x217,0x22c,0x23d,'eeb1')+'s/'+_0x3e9ae0+_0x53e640(-0x2a4,-0x2a2,'eeb1',-0x295);function _0x3b6147(_0x2dd4e7,_0x37203d,_0x3488cb,_0x1b3028){return _0x33d3(_0x37203d-0x17b,_0x1b3028);}_0x53ec54['subco'+_0x3b6147(0x248,0x247,0x23b,'N8sg')](_0x53e640(-0x26f,-0x274,'*cSp',-0x285)+_0x3b6147(0x239,0x237,0x231,'9PMJ'),new CompletionCommand(_0x53ec54,_0x5dbe87));try{await _0x53ec54[_0x53e640(-0x290,-0x28a,'S1o3',-0x28d)]({'argv':process[_0x3b6147(0x263,0x24a,0x24f,'EQ2L')][_0x53e640(-0x289,-0x29c,'Bhbz',-0x28c)](-0x6b*0x4e+-0x1c27*0x1+0x3cc3),'envs':process.env,'reporter':_0x657806});}catch(_0x42239c){_0x657806[_0x3b6147(0x228,0x23b,0x225,'8Ghj')](_0x42239c instanceof Error?_0x42239c[_0x3b6147(0x244,0x240,0x244,'60!*')]??_0x42239c[_0x53e640(-0x28d,-0x290,'24S3',-0x2a6)+'ge']:String(_0x42239c)),process['exitC'+'ode']=0x1ff6*0x1+-0x1bdb*-0x1+-0x3bd0;}