@kyun.si/codex-hongguo 0.0.23 → 0.0.25

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.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codex-hongguo",
3
- "version": "0.0.23",
3
+ "version": "0.0.25",
4
4
  "description": "在 Codex 会话侧栏观看红果短剧,回合停止时保存进度。",
5
5
  "hooks": "./hooks/hooks.json",
6
6
  "skills": "./skills/",
package/README.en.md CHANGED
@@ -16,7 +16,7 @@ Install with npm:
16
16
  npx @kyun.si/codex-hongguo@latest setup
17
17
  ```
18
18
 
19
- The command checks the environment, downloads and verifies the playback component, then installs the plugin through Codex's native marketplace. The first installation requires a network connection; later runs reuse the local cache. Open a new local chat after installing, run plugin Setup, and review the Hooks.
19
+ The command checks the environment, downloads and verifies the playback component, then installs the plugin through Codex's native marketplace. The first installation requires a network connection; later runs reuse the local cache. The installer tells you to review, trust and enable `UserPromptSubmit`, `Stop` and `Interrupt` in Codex **Settings → Hooks**. Then open a new local chat to use the plugin.
20
20
 
21
21
  ### Post-Install Setup
22
22
 
@@ -69,6 +69,7 @@ The switches are independent, saved across restarts, and shared by all chats. Ot
69
69
 
70
70
  - **Playback pauses too often**: Turn off **Pause automatically when a task ends** in the player's Settings and save to keep watching continuously.
71
71
  - **A new task does not resume playback**: Enable and save **Play automatically when a task starts**. Keep the player open in that chat with an episode selected. New defaults do not override a previously saved off setting.
72
+ - **A recommendation opens without playing**: During a running task, it should start muted. If that task ends before playback starts, the player asks you to click Play to continue. A host autoplay restriction is also shown explicitly.
72
73
 
73
74
  ## Updating, Disabling & Uninstalling
74
75
 
@@ -88,9 +89,9 @@ Uninstall with:
88
89
  npx @kyun.si/codex-hongguo@latest uninstall
89
90
  ```
90
91
 
91
- Uninstalling removes this plugin's dedicated playback component directory, including old versions and partial downloads, and preserves viewing progress, settings and video caches. System FFmpeg installations and external executables are kept. Open a new chat afterward. To disable the plugin temporarily, use Codex plugin settings.
92
+ Uninstalling deletes the plugin's playback components, viewing progress, settings, all video caches and device profiles, including old components and partial downloads. System FFmpeg installations and external executables are kept. Open a new chat afterward. To disable the plugin temporarily while keeping data, use Codex plugin settings.
92
93
 
93
- After uninstalling, you can keep or manually remove the dedicated user data directory below:
94
+ The default user data directories below are removed automatically during uninstall:
94
95
 
95
96
  | OS | User Data Directory |
96
97
  | --- | --- |
package/README.md CHANGED
@@ -16,7 +16,7 @@
16
16
  npx @kyun.si/codex-hongguo@latest setup
17
17
  ```
18
18
 
19
- 命令会检查运行环境、自动下载并校验播放组件,再通过 Codex 原生市场安装插件。首次安装需要联网,之后复用本机缓存。安装完成后打开新的本地聊天,运行插件 Setup 并审查 Hooks。
19
+ 命令会检查运行环境、自动下载并校验播放组件,再通过 Codex 原生市场安装插件。首次安装需要联网,之后复用本机缓存。安装完成时会提示你到 Codex「设置 → Hooks」审查、信任并启用 `UserPromptSubmit`、`Stop`、`Interrupt`。然后打开新的本地聊天使用。
20
20
 
21
21
  ### 安装后配置
22
22
 
@@ -68,6 +68,7 @@ npx @kyun.si/codex-hongguo@latest setup
68
68
  - **回合联动显示「待确认」**:到 Codex「设置 → Hooks」核对三个事件。环境检查通过不等于回合联动已生效;未完成时可先手动观看。
69
69
  - **任务结束时频繁暂停**:在播放器「设置」中关闭「任务结束自动暂停」并保存,即可持续播放。
70
70
  - **新任务开始没有续播**:确认「任务开始自动播放」已开启并保存,且播放器在对应聊天中保持打开、已选中剧集。新默认值不会覆盖此前手动保存的关闭设置。
71
+ - **点推荐后没有开播**:任务仍在执行时应自动静音播放;如果推荐所属任务在开播前已结束,会提示点击播放继续。宿主限制自动播放时,也会显示明确提示。
71
72
 
72
73
  ## 更新、禁用与卸载
73
74
 
@@ -87,9 +88,9 @@ npx @kyun.si/codex-hongguo@latest update
87
88
  npx @kyun.si/codex-hongguo@latest uninstall
88
89
  ```
89
90
 
90
- 卸载会清理本插件专属的播放组件目录,包括历史版本和下载残片,保留观看进度、设置和视频缓存;系统或外部自行配置的 FFmpeg 不会删除。完成后打开新聊天。只想暂时停用时,可从 Codex 插件设置中禁用。
91
+ 卸载会删除本插件的播放组件、观看进度、设置、全部视频缓存和设备档案,包括历史组件和下载残片;系统或外部自行配置的 FFmpeg 不会删除。完成后打开新聊天。只想暂时停用并保留数据时,可从 Codex 插件设置中禁用。
91
92
 
92
- 卸载后可按需保留或手动清理以下专用数据目录:
93
+ 以下默认用户数据目录会在卸载时自动删除:
93
94
 
94
95
  | 系统 | 用户数据目录 |
95
96
  | --- | --- |
package/dist/cli/main.mjs CHANGED
@@ -1,13 +1,14 @@
1
1
  import {createRequire as __cr} from 'node:module';const require=__cr(import.meta.url);
2
- var lt=Object.create;var qA=Object.defineProperty;var Et=Object.getOwnPropertyDescriptor;var Bt=Object.getOwnPropertyNames;var pt=Object.getPrototypeOf,wt=Object.prototype.hasOwnProperty;var F=(A=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(A,{get:(e,t)=>(typeof require<"u"?require:e)[t]}):A)(function(A){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+A+'" is not supported')});var y=(A,e)=>()=>{try{return e||A((e={exports:{}}).exports,e),e.exports}catch(t){throw e=0,t}};var vt=(A,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Bt(e))!wt.call(A,n)&&n!==t&&qA(A,n,{get:()=>e[n],enumerable:!(r=Et(e,n))||r.enumerable});return A};var KA=(A,e,t)=>(t=A!=null?lt(pt(A)):{},vt(e||!A||!A.__esModule?qA(t,"default",{value:A,enumerable:!0}):t,A));var PA=y((Tr,TA)=>{TA.exports=OA;OA.sync=mt;var UA=F("fs");function yt(A,e){var t=e.pathExt!==void 0?e.pathExt:process.env.PATHEXT;if(!t||(t=t.split(";"),t.indexOf("")!==-1))return!0;for(var r=0;r<t.length;r++){var n=t[r].toLowerCase();if(n&&A.substr(-n.length).toLowerCase()===n)return!0}return!1}function zA(A,e,t){return!A.isSymbolicLink()&&!A.isFile()?!1:yt(e,t)}function OA(A,e,t){UA.stat(A,function(r,n){t(r,r?!1:zA(n,A,e))})}function mt(A,e){return zA(UA.statSync(A),A,e)}});var VA=y((Pr,ZA)=>{ZA.exports=WA;WA.sync=dt;var jA=F("fs");function WA(A,e,t){jA.stat(A,function(r,n){t(r,r?!1:XA(n,e))})}function dt(A,e){return XA(jA.statSync(A),e)}function XA(A,e){return A.isFile()&&Dt(A,e)}function Dt(A,e){var t=A.mode,r=A.uid,n=A.gid,s=e.uid!==void 0?e.uid:process.getuid&&process.getuid(),i=e.gid!==void 0?e.gid:process.getgid&&process.getgid(),g=parseInt("100",8),C=parseInt("010",8),a=parseInt("001",8),I=g|C,o=t&a||t&C&&n===i||t&g&&r===s||t&I&&s===0;return o}});var _A=y((Wr,$A)=>{var jr=F("fs"),tA;process.platform==="win32"||global.TESTING_WINDOWS?tA=PA():tA=VA();$A.exports=aA;aA.sync=xt;function aA(A,e,t){if(typeof e=="function"&&(t=e,e={}),!t){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(r,n){aA(A,e||{},function(s,i){s?n(s):r(i)})})}tA(A,e||{},function(r,n){r&&(r.code==="EACCES"||e&&e.ignoreErrors)&&(r=null,n=!1),t(r,n)})}function xt(A,e){try{return tA.sync(A,e||{})}catch(t){if(e&&e.ignoreErrors||t.code==="EACCES")return!1;throw t}}});var oe=y((Xr,ie)=>{var K=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",Ae=F("path"),Nt=K?";":":",ee=_A(),te=A=>Object.assign(new Error(`not found: ${A}`),{code:"ENOENT"}),re=(A,e)=>{let t=e.colon||Nt,r=A.match(/\//)||K&&A.match(/\\/)?[""]:[...K?[process.cwd()]:[],...(e.path||process.env.PATH||"").split(t)],n=K?e.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",s=K?n.split(t):[""];return K&&A.indexOf(".")!==-1&&s[0]!==""&&s.unshift(""),{pathEnv:r,pathExt:s,pathExtExe:n}},ne=(A,e,t)=>{typeof e=="function"&&(t=e,e={}),e||(e={});let{pathEnv:r,pathExt:n,pathExtExe:s}=re(A,e),i=[],g=a=>new Promise((I,o)=>{if(a===r.length)return e.all&&i.length?I(i):o(te(A));let c=r[a],f=/^".*"$/.test(c)?c.slice(1,-1):c,u=Ae.join(f,A),h=!f&&/^\.[\\\/]/.test(A)?A.slice(0,2)+u:u;I(C(h,a,0))}),C=(a,I,o)=>new Promise((c,f)=>{if(o===n.length)return c(g(I+1));let u=n[o];ee(a+u,{pathExt:s},(h,l)=>{if(!h&&l)if(e.all)i.push(a+u);else return c(a+u);return c(C(a,I,o+1))})});return t?g(0).then(a=>t(null,a),t):g(0)},kt=(A,e)=>{e=e||{};let{pathEnv:t,pathExt:r,pathExtExe:n}=re(A,e),s=[];for(let i=0;i<t.length;i++){let g=t[i],C=/^".*"$/.test(g)?g.slice(1,-1):g,a=Ae.join(C,A),I=!C&&/^\.[\\\/]/.test(A)?A.slice(0,2)+a:a;for(let o=0;o<r.length;o++){let c=I+r[o];try{if(ee.sync(c,{pathExt:n}))if(e.all)s.push(c);else return c}catch{}}}if(e.all&&s.length)return s;if(e.nothrow)return null;throw te(A)};ie.exports=ne;ne.sync=kt});var ae=y((Zr,gA)=>{"use strict";var se=(A={})=>{let e=A.env||process.env;return(A.platform||process.platform)!=="win32"?"PATH":Object.keys(e).reverse().find(r=>r.toUpperCase()==="PATH")||"Path"};gA.exports=se;gA.exports.default=se});var ce=y((Vr,Ce)=>{"use strict";var ge=F("path"),St=oe(),Ft=ae();function Ie(A,e){let t=A.options.env||process.env,r=process.cwd(),n=A.options.cwd!=null,s=n&&process.chdir!==void 0&&!process.chdir.disabled;if(s)try{process.chdir(A.options.cwd)}catch{}let i;try{i=St.sync(A.command,{path:t[Ft({env:t})],pathExt:e?ge.delimiter:void 0})}catch{}finally{s&&process.chdir(r)}return i&&(i=ge.resolve(n?A.options.cwd:"",i)),i}function Mt(A){return Ie(A)||Ie(A,!0)}Ce.exports=Mt});var fe=y(($r,CA)=>{"use strict";var IA=/([()\][%!^"`<>&|;, *?])/g;function Jt(A){return A=A.replace(IA,"^$1"),A}function Lt(A,e){return A=`${A}`,A=A.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),A=A.replace(/(?=(\\+?)?)\1$/,"$1$1"),A=`"${A}"`,A=A.replace(IA,"^$1"),e&&(A=A.replace(IA,"^$1")),A}CA.exports.command=Jt;CA.exports.argument=Lt});var he=y((_r,ue)=>{"use strict";ue.exports=/^#!(.*)/});var le=y((An,Qe)=>{"use strict";var Yt=he();Qe.exports=(A="")=>{let e=A.match(Yt);if(!e)return null;let[t,r]=e[0].replace(/#! ?/,"").split(" "),n=t.split("/").pop();return n==="env"?r:r?`${n} ${r}`:n}});var Be=y((en,Ee)=>{"use strict";var cA=F("fs"),Ht=le();function Gt(A){let t=Buffer.alloc(150),r;try{r=cA.openSync(A,"r"),cA.readSync(r,t,0,150,0),cA.closeSync(r)}catch{}return Ht(t.toString())}Ee.exports=Gt});var ye=y((tn,ve)=>{"use strict";var bt=F("path"),pe=ce(),we=fe(),Rt=Be(),qt=process.platform==="win32",Kt=/\.(?:com|exe)$/i,Ut=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function zt(A){A.file=pe(A);let e=A.file&&Rt(A.file);return e?(A.args.unshift(A.file),A.command=e,pe(A)):A.file}function Ot(A){if(!qt)return A;let e=zt(A),t=!Kt.test(e);if(A.options.forceShell||t){let r=Ut.test(e);A.command=bt.normalize(A.command),A.command=we.command(A.command),A.args=A.args.map(s=>we.argument(s,r));let n=[A.command].concat(A.args).join(" ");A.args=["/d","/s","/c",`"${n}"`],A.command=process.env.comspec||"cmd.exe",A.options.windowsVerbatimArguments=!0}return A}function Tt(A,e,t){e&&!Array.isArray(e)&&(t=e,e=null),e=e?e.slice(0):[],t=Object.assign({},t);let r={command:A,args:e,options:t,file:void 0,original:{command:A,args:e}};return t.shell?r:Ot(r)}ve.exports=Tt});var De=y((rn,de)=>{"use strict";var fA=process.platform==="win32";function uA(A,e){return Object.assign(new Error(`${e} ${A.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${e} ${A.command}`,path:A.command,spawnargs:A.args})}function Pt(A,e){if(!fA)return;let t=A.emit;A.emit=function(r,n){if(r==="exit"){let s=me(n,e);if(s)return t.call(A,"error",s)}return t.apply(A,arguments)}}function me(A,e){return fA&&A===1&&!e.file?uA(e.original,"spawn"):null}function jt(A,e){return fA&&A===1&&!e.file?uA(e.original,"spawnSync"):null}de.exports={hookChildProcess:Pt,verifyENOENT:me,verifyENOENTSync:jt,notFoundError:uA}});var ke=y((nn,U)=>{"use strict";var xe=F("child_process"),hA=ye(),QA=De();function Ne(A,e,t){let r=hA(A,e,t),n=xe.spawn(r.command,r.args,r.options);return QA.hookChildProcess(n,r),n}function Wt(A,e,t){let r=hA(A,e,t),n=xe.spawnSync(r.command,r.args,r.options);return n.error=n.error||QA.verifyENOENTSync(n.status,r),n}U.exports=Ne;U.exports.spawn=Ne;U.exports.sync=Wt;U.exports._parse=hA;U.exports._enoent=QA});var Ge=y(($,yA)=>{(function(e,t){typeof $=="object"&&typeof yA=="object"?yA.exports=t(F("stream/web")):typeof define=="function"&&define.amd?define(["stream/web"],t):typeof $=="object"?$["xz-decompress"]=t(F("stream/web")):e["xz-decompress"]=t(e["stream/web"])})($,A=>(()=>{"use strict";var e=[,(s=>{s.exports="data:application/wasm;base64,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ACABQX9qIgENAAsgAkJ/hSECCyACC8oQAgx/An4CQAJAIAAoAiRFDQAgACgCACECDAELQQAhAiAAQQA6ACggAEIANwMAIABCADcDGCAAQcgAakEAQeQAEIaAgIAAGiAAQawBakEMNgIACyAAIAEoAgQiAzYCECAAQeAAaiEEIABByABqIQUgAEG2AWohBiAAQbABaiEHIABBqAFqIQggASgCECEJAkACQAJAAkADQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCACDgoBAgAEBQYHCAkKDwsgASgCACEKIAAoAqgBIQIgACgCrAEhCyABKAIEIQwgASgCCCENDAILIAcgACgCqAEiDGogASgCACABKAIEIgJqIAEoAgggAmsiAiAAKAKsASAMayIMIAIgDEkbIgIQh4CAgAAaIAEgASgCBCACajYCBEEAIQwgAEEAIAAoAqgBIAJqIgIgAiAAKAKsASILRhs2AqgBIAIgC0cNESAAQQE2AgACQCAHQaiIgIAAQQYQhICAgABFDQBBBSEMDBILIAZBAkEAEI2AgIAAIAAoALgBRw0QQQYhDCAGLQAADREgACAALQC3ASICNgIgIAJBBEsNEUEBIAJ0QRNxRQ0RCyABKAIEIgwgASgCCCINRg0OAkAgASgCACIKIAxqLQAAIgsNACAAIAw2AhAgASAMQQFqNgIEQQYhAgwMC0EAIQIgAEEANgKoASAAQQI2AgAgACALQQJ0QQRqIgs2AqwBIAAgCzYCQAsgByACaiAKIAxqIA0gDGsiDCALIAJrIgIgDCACSRsiAhCHgICAABogASABKAIEIAJqNgIEQQAhDCAAQQAgACgCqAEgAmoiAiACIAAoAqwBIgtGGzYCqAEgAiALRw0PIAAgAkF8aiICNgKsAUEHIQwgByACQQAQjYCAgAAgByAAKAKsASICaigAAEcNDyAAQQI2AqgBIAAtALEBIgtBP3ENDAJAAkAgC0HAAHFFDQAgACAHIAggAhCRgICAAEEBRw0RIAAgACkDCDcDMCAAKAKsASECIAAtALEBIQsMAQsgAEJ/NwMwC0J/IQ4CQCALwEF/Sg0AIAAgByAIIAIQkYCAgABBAUcNECAAKAKsASECIAApAwghDgsgACAONwM4IAIgACgCqAEiC2tBAkkNDyAAIAtBAWoiCjYCqAEgCCALakEI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AA8LIAEgA0EBaiIFNgIEAkAgASgCACADai0AACAAKQMYIAAoAgQiA62Ip0H/AXFGDQBBBw8LIAAgA0EIaiIGNgIEIAUhAyAGIAJJDQALIABBADYCBCAAQgA3AxhBAQtvAQF/QQchAQJAIABBugFqLwAAQdm0AUcNACAAQbQBakEGQQAQjYCAgAAgAEGwAWooAABHDQAgAEGAAWopAwBCAoggADUAtAFSDQAgAEG4AWotAAANAEEBQQcgACgCICAAQbkBai0AAEYbIQELIAELwAIBA38CQAJAAkAgACgCJA0AIABBADoAKCAAQQA2AgBBASECDAELAkAgACgCAEEKRw0AQQAhAwwCC0ECIQMMAQtBASEDCwJAAkADQAJAAkACQAJAIAMOAwABAwMLIAEoAgQiAyABKAIIIgRGDQQgASgCACEFAkADQCAFIANqLQAADQEgASADQQFqIgM2AgQgACAAKAIEQQFqQQNxNgIEIAQgA0YNBgwACwsCQCAAKAIERQ0AQQcPCyAAKAIkRQ0BIABBADoAKCAAQQA2AgBBASEDDAMLIABCADcDGCAAQQA2AgQgAEHIAGpBAEHkABCGgICAABogAEGsAWpBDDYCAAtBAiEDDAELIAAgARCQgICAACIDQQFHDQIgAEEKNgIAQQAhAwwACwsCQCACDQBBAA8LQQdBASAAKAIEGyEDCyADC3UBAX8CQEG4CRCAgICAACICRQ0AIAIgADYCJCACIAAgARCbgICAACIANgKwCQJAIABFDQAgAkEAOgAoIAJCADcDACACQgA3AxggAkHIAGpBAEHkABCGgICAABogAkGsAWpBDDYCACACDwsgAhCCgICAAAtBAAseAAJAIABFDQAgACgCsAkQnYCAgAAgABCCgICAAAsL3RABCn8gAEHo3QFqIQIgAEHUAGohAyAAQRxqIgRBCGohBQJAAkADQCAAKAJAIQYCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgASgCBCIHIAEoAghJDQAgBkEHRg0BDBELIAYOCQECAwQFBgcACQ4LIAAoAkwhBgwHC0EBIQYgASAHQQFqNgIEIAEoAgAgB2otAAAiB0UNCAJAAkAgB0HfAUsNACAHQQFHDQELIABBgAI7AVACQCAAKAI8DQAgACABKAIMIAEoAhAiBmo2AhggACABKAIUIAZr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"}),(s=>{s.exports=A})],t={};function r(s){var i=t[s];if(i!==void 0)return i.exports;var g=t[s]={exports:{}};return e[s](g,g.exports,r),g.exports}r.d=(s,i)=>{for(var g in i)r.o(i,g)&&!r.o(s,g)&&Object.defineProperty(s,g,{enumerable:!0,get:i[g]})},r.o=(s,i)=>Object.prototype.hasOwnProperty.call(s,i),r.r=s=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(s,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(s,"__esModule",{value:!0})};var n={};return(()=>{r.r(n),r.d(n,{XzReadableStream:()=>o});var s=r(1);let i=globalThis.ReadableStream||r(2).ReadableStream,g=0,C=1;class a{constructor(f){this.exports=f.exports,this.memory=this.exports.memory,this.ptr=this.exports.create_context(),this._refresh(),this.bufSize=this.mem32[0],this.inStart=this.mem32[1]-this.ptr,this.inEnd=this.inStart+this.bufSize,this.outStart=this.mem32[4]-this.ptr}supplyInput(f){this._refresh(),this.mem8.subarray(this.inStart,this.inEnd).set(f,0),this.exports.supply_input(this.ptr,f.byteLength),this._refresh()}getNextOutput(){let f=this.exports.get_next_output(this.ptr);if(this._refresh(),f!==g&&f!==C)throw new Error(`get_next_output failed with error code ${f}`);return{outChunk:this.mem8.slice(this.outStart,this.outStart+this.mem32[5]),finished:f===C}}needsMoreInput(){return this.mem32[2]===this.mem32[3]}outputBufferIsFull(){return this.mem32[5]===this.bufSize}resetOutputBuffer(){this.outPos=this.mem32[5]=0}dispose(){this.exports.destroy_context(this.ptr),this.exports=null}_refresh(){this.memory.buffer!==this.mem8?.buffer&&(this.mem8=new Uint8Array(this.memory.buffer,this.ptr),this.mem32=new Uint32Array(this.memory.buffer,this.ptr))}}class I{constructor(){this.locked=!1,this.waitQueue=[]}async acquire(){if(!this.locked){this.locked=!0;return}return new Promise(f=>{this.waitQueue.push(f)})}release(){this.waitQueue.length>0?this.waitQueue.shift()():this.locked=!1}}class o extends i{static _moduleInstancePromise;static _moduleInstance;static _contextMutex=new I;static async _getModuleInstance(){let f=s.replace("data:application/wasm;base64,",""),u=Uint8Array.from(atob(f),B=>B.charCodeAt(0)).buffer,h={},l=await WebAssembly.instantiate(u,h);o._moduleInstance=l.instance}constructor(f){let u,h=null,l=f.getReader();super({async start(B){await o._contextMutex.acquire();try{o._moduleInstance||await(o._moduleInstancePromise||(o._moduleInstancePromise=o._getModuleInstance())),u=new a(o._moduleInstance)}catch(v){throw o._contextMutex.release(),v}},async pull(B){try{if(u.needsMoreInput()){if(h===null||h.byteLength===0){let{done:L,value:Y}=await l.read();L||(h=Y)}let E=Math.min(u.bufSize,h.byteLength);u.supplyInput(h.subarray(0,E)),h=h.subarray(E)}let v=u.getNextOutput();B.enqueue(v.outChunk),u.resetOutputBuffer(),v.finished&&(u.dispose(),o._contextMutex.release(),B.close())}catch(v){throw u&&u.dispose(),o._contextMutex.release(),v}},cancel(){try{return u&&u.dispose(),l.cancel()}finally{o._contextMutex.release()}}})}}})(),n})())});import{readFileSync as Rr,existsSync as qr}from"node:fs";import{fileURLToPath as Kr}from"node:url";var SA=KA(ke(),1);import{accessSync as Fr,constants as et,statSync as Mr}from"node:fs";import{homedir as Jr}from"node:os";import{posix as tt,win32 as kA}from"node:path";import{createHash as Ue,randomUUID as lr}from"node:crypto";import{createReadStream as ze}from"node:fs";import{mkdir as Re,lstat as DA,open as Oe,readFile as Te,writeFile as Er,rename as Br,rm as T,chmod as pr,stat as qe,unlink as wr,rmdir as Ke}from"node:fs/promises";import{lstatSync as vr}from"node:fs";import{homedir as Pe}from"node:os";import{posix as xA,win32 as NA}from"node:path";import{spawnSync as yr}from"node:child_process";import{createRequire as Xt}from"module";var Zt=Xt("/"),O,Vt,$t;try{O=Zt("worker_threads"),Vt=O.Worker,$t=O.isMarkedAsUntransferable}catch{}var D=Uint8Array,z=Uint16Array,_t=Int32Array,Se=new D([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),Fe=new D([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),Ar=new D([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),Me=function(A,e){for(var t=new z(31),r=0;r<31;++r)t[r]=e+=1<<A[r-1];for(var n=new _t(t[30]),r=1;r<30;++r)for(var s=t[r];s<t[r+1];++s)n[s]=s-t[r]<<5|r;return{b:t,r:n}},O=Me(Se,2),Je=O.b,er=O.r;Je[28]=258,er[258]=28;var Le=Me(Fe,0),tr=Le.b,sn=Le.r,pA=new z(32768);for(Q=0;Q<32768;++Q)J=(Q&43690)>>1|(Q&21845)<<1,J=(J&52428)>>2|(J&13107)<<2,J=(J&61680)>>4|(J&3855)<<4,pA[Q]=((J&65280)>>8|(J&255)<<8)>>1;var J,Q,Z=(function(A,e,t){for(var r=A.length,n=0,s=new z(e);n<r;++n)A[n]&&++s[A[n]-1];var i=new z(e);for(n=1;n<e;++n)i[n]=i[n-1]+s[n-1]<<1;var g;if(t){g=new z(1<<e);var C=15-e;for(n=0;n<r;++n)if(A[n])for(var a=n<<4|A[n],I=e-A[n],o=i[A[n]-1]++<<I,c=o|(1<<I)-1;o<=c;++o)g[pA[o]>>C]=a}else for(g=new z(r),n=0;n<r;++n)A[n]&&(g[n]=pA[i[A[n]-1]++]>>15-A[n]);return g}),V=new D(288);for(Q=0;Q<144;++Q)V[Q]=8;var Q;for(Q=144;Q<256;++Q)V[Q]=9;var Q;for(Q=256;Q<280;++Q)V[Q]=7;var Q;for(Q=280;Q<288;++Q)V[Q]=8;var Q,Ye=new D(32);for(Q=0;Q<32;++Q)Ye[Q]=5;var Q;var rr=Z(V,9,1);var nr=Z(Ye,5,1),lA=function(A){for(var e=A[0],t=1;t<A.length;++t)A[t]>e&&(e=A[t]);return e},S=function(A,e,t){var r=e/8|0;return(A[r]|A[r+1]<<8)>>(e&7)&t},EA=function(A,e){var t=e/8|0;return(A[t]|A[t+1]<<8|A[t+2]<<16)>>(e&7)},ir=function(A){return(A+7)/8|0},vA=function(A,e,t){return(e==null||e<0)&&(e=0),(t==null||t>A.length)&&(t=A.length),new D(A.subarray(e,t))};var or=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],d=function(A,e,t){var r=new Error(e||or[A]);if(r.code=A,Error.captureStackTrace&&Error.captureStackTrace(r,d),!t)throw r;return r},sr=function(A,e,t,r){var n=A.length,s=r?r.length:0;if(!n||e.f&&!e.l)return t||new D(0);var i=!t,g=i||e.i!=2,C=e.i;i&&(t=new D(n*3));var a=function(GA){var bA=t.length;if(GA>bA){var RA=new D(Math.max(bA*2,GA));RA.set(t),t=RA}},I=e.f||0,o=e.p||0,c=e.b||0,f=e.l,u=e.d,h=e.m,l=e.n,B=n*8;do{if(!f){I=S(A,o,1);var v=S(A,o+1,3);if(o+=3,v)if(v==1)f=rr,u=nr,h=9,l=5;else if(v==2){var p=S(A,o,31)+257,k=S(A,o+10,15)+4,AA=p+S(A,o+5,31)+1;o+=14;for(var m=new D(AA),nA=new D(19),x=0;x<k;++x)nA[Ar[x]]=S(A,o+x*3,7);o+=k*3;for(var FA=lA(nA),ct=(1<<FA)-1,ft=Z(nA,FA,1),x=0;x<AA;){var MA=ft[S(A,o,ct)];o+=MA&15;var E=MA>>4;if(E<16)m[x++]=E;else{var R=0,eA=0;for(E==16?(eA=3+S(A,o,3),o+=2,R=m[x-1]):E==17?(eA=3+S(A,o,7),o+=3):E==18&&(eA=11+S(A,o,127),o+=7);eA--;)m[x++]=R}}var JA=m.subarray(0,p),H=m.subarray(p);h=lA(JA),l=lA(H),f=Z(JA,h,1),u=Z(H,l,1)}else d(1);else{var E=ir(o)+4,L=A[E-4]|A[E-3]<<8,Y=E+L;if(Y>n){C&&d(0);break}g&&a(c+L),t.set(A.subarray(E,Y),c),e.b=c+=L,e.p=o=Y*8,e.f=I;continue}if(o>B){C&&d(0);break}}g&&a(c+131072);for(var ut=(1<<h)-1,ht=(1<<l)-1,iA=o;;iA=o){var R=f[EA(A,o)&ut],q=R>>4;if(o+=R&15,o>B){C&&d(0);break}if(R||d(2),q<256)t[c++]=q;else if(q==256){iA=o,f=null;break}else{var LA=q-254;if(q>264){var x=q-257,X=Se[x];LA=S(A,o,(1<<X)-1)+Je[x],o+=X}var oA=u[EA(A,o)&ht],sA=oA>>4;oA||d(3),o+=oA&15;var H=tr[sA];if(sA>3){var X=Fe[sA];H+=EA(A,o)&(1<<X)-1,o+=X}if(o>B){C&&d(0);break}g&&a(c+131072);var YA=c+LA;if(c<H){var HA=s-H,Qt=Math.min(H,YA);for(HA+c<0&&d(3);c<Qt;++c)t[c]=r[HA+c]}for(;c<YA;++c)t[c]=t[c-H]}}e.l=f,e.p=iA,e.b=c,e.f=I,f&&(I=1,e.m=h,e.d=u,e.n=l)}while(!I);return c!=t.length&&i?vA(t,0,c):t.subarray(0,c)};var ar=new D(0);var M=function(A,e){return A[e]|A[e+1]<<8},N=function(A,e){return(A[e]|A[e+1]<<8|A[e+2]<<16|A[e+3]<<24)>>>0},BA=function(A,e){return N(A,e)+N(A,e+4)*4294967296};function gr(A,e){return sr(A,{i:2},e&&e.out,e&&e.dictionary)}var wA=typeof TextDecoder<"u"&&new TextDecoder,Ir=0;try{wA.decode(ar,{stream:!0}),Ir=1}catch{}var Cr=function(A){for(var e="",t=0;;){var r=A[t++],n=(r>127)+(r>223)+(r>239);if(t+n>A.length)return{s:e,r:vA(A,t-1)};n?n==3?(r=((r&15)<<18|(A[t++]&63)<<12|(A[t++]&63)<<6|A[t++]&63)-65536,e+=String.fromCharCode(55296|r>>10,56320|r&1023)):n&1?e+=String.fromCharCode((r&31)<<6|A[t++]&63):e+=String.fromCharCode((r&15)<<12|(A[t++]&63)<<6|A[t++]&63):e+=String.fromCharCode(r)}};function cr(A,e){if(e){for(var t="",r=0;r<A.length;r+=16384)t+=String.fromCharCode.apply(null,A.subarray(r,r+16384));return t}else{if(wA)return wA.decode(A);var n=Cr(A),s=n.s,t=n.r;return t.length&&d(8),s}}var fr=function(A,e){return e+30+M(A,e+26)+M(A,e+28)},ur=function(A,e,t){var r=M(A,e+28),n=M(A,e+30),s=cr(A.subarray(e+46,e+46+r),!(M(A,e+8)&2048)),i=e+46+r,g=hr(A,i,n,t,N(A,e+20),N(A,e+24),N(A,e+42)),C=g[0],a=g[1],I=g[2];return[M(A,e+10),C,a,s,i+n+M(A,e+32),I]},hr=function(A,e,t,r,n,s,i){var g=n==4294967295,C=s==4294967295,a=i==4294967295,I=e+t,o=g+C+a;if(r&&o){for(;e+4<I;e+=4+M(A,e+2))if(M(A,e)==1)return[g?BA(A,e+4+8*C):n,C?BA(A,e+4):s,a?BA(A,e+4+8*(C+g)):i,1];r<2&&d(13)}return[n,s,i,0]};function He(A,e){for(var t={},r=A.length-22;N(A,r)!=101010256;--r)(!r||A.length-r>65558)&&d(13);var n=M(A,r+8);if(!n)return{};var s=N(A,r+16),i=N(A,r-20)==117853008;if(i){var g=N(A,r-12);i=N(A,g)==101075792,i&&(n=N(A,g+32),s=N(A,g+48))}for(var C=e&&e.filter,a=0;a<n;++a){var I=ur(A,s,i),o=I[0],c=I[1],f=I[2],u=I[3],h=I[4],l=I[5],B=fr(A,l);s=h,(!C||C({name:u,size:c,originalSize:f,compression:o}))&&(o?o==8?t[u]=gr(A.subarray(B,B+c),{out:new D(f)}):d(14,"unknown compression type "+o):t[u]=vA(A,B,B+c))}return t}var je=KA(Ge(),1);var be={"darwin-arm64":{version:"9.0.2",url:"https://www.osxexperts.net/ffmpeg902arm.zip",format:"zip",entry:"ffmpeg",archiveBytes:22665869,archiveSha256:"07e00300593799005b060c03a99fe648b1edda0f30c36b0c1adafe8e3247e586",binaryBytes:52160568,binarySha256:"762f16b2913b8d3b8fdb8092df12b691053b035b13ae9b88205513c55cb8e71e"},"darwin-x64":{version:"9.0.2",url:"https://evermeet.cx/ffmpeg/ffmpeg-9.0.2.zip",format:"zip",entry:"ffmpeg",archiveBytes:26198325,archiveSha256:"4acc0be580f9b2788029eb7bd4d645ff87968911b0a62aeeb3940d42d54558d5",binaryBytes:80827688,binarySha256:"a45b462cf91ed89148ae218c4577e30896485d7a6792c3673bcf5f823fa01b63"},"linux-x64":{version:"9.0.2-20261031",url:"https://github.com/BtbN/FFmpeg-Builds/releases/download/autobuild-2026-10-31-12-59/ffmpeg-n9.0.2-39-g7adfbe40dc-linux64-gpl-9.0.tar.xz",format:"tar.xz",entry:"ffmpeg-n9.0.2-39-g7adfbe40dc-linux64-gpl-9.0/bin/ffmpeg",archiveBytes:153175100,archiveSha256:"73e29a56974ae5a651133a04584c7483b21afe941e17dc91d79814a758b608d3"},"linux-arm64":{version:"9.0.2-20261031",url:"https://github.com/BtbN/FFmpeg-Builds/releases/download/autobuild-2026-10-31-12-59/ffmpeg-n9.0.2-39-g7adfbe40dc-linuxarm64-gpl-9.0.tar.xz",format:"tar.xz",entry:"ffmpeg-n9.0.2-39-g7adfbe40dc-linuxarm64-gpl-9.0/bin/ffmpeg",archiveBytes:128664064,archiveSha256:"6cad88ae5bcec356cfc5d7979a036cc4007128201928a0cf243df3db483276cc"},"win32-x64":{version:"9.0.2-20261031",url:"https://github.com/BtbN/FFmpeg-Builds/releases/download/autobuild-2026-10-31-12-59/ffmpeg-n9.0.2-39-g7adfbe40dc-win64-gpl-9.0.zip",format:"zip",entry:"ffmpeg-n9.0.2-39-g7adfbe40dc-win64-gpl-9.0/bin/ffmpeg.exe",archiveBytes:195110184,archiveSha256:"693f3e224bc184b40524a62ca47526cfebaf2504414021b92fe75f677ad868b9"}};var P=new Map,rA=new Map,mr="@kyun.si/codex-hongguo",w=()=>Error("\u64AD\u653E\u7EC4\u4EF6\u81EA\u52A8\u51C6\u5907\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u7F51\u7EDC\u548C\u7F13\u5B58\u76EE\u5F55\u6743\u9650\u540E\u91CD\u8BD5\u5B89\u88C5\u3002"),dr=A=>new Promise(e=>setTimeout(e,A));function We(A={}){let{env:e=process.env,home:t=Pe(),platform:r=process.platform,arch:n=process.arch}=A,s=r==="win32"?NA:xA;if(e.HONGGUO_FFMPEG){if(!s.isAbsolute(e.HONGGUO_FFMPEG))throw w();return{...A,env:e,platform:r,target:e.HONGGUO_FFMPEG,override:!0}}let i=(A.artifacts||be)[r+"-"+n];if(!i)throw Error("\u5F53\u524D\u7CFB\u7EDF\u67B6\u6784\u6682\u4E0D\u652F\u6301\u81EA\u52A8\u51C6\u5907\u64AD\u653E\u7EC4\u4EF6\u3002");let g=Xe({env:e,home:t,platform:r,paths:s}),C=s.join(g,"runtime","ffmpeg",i.archiveSha256.slice(0,16),r+"-"+n);return{...A,env:e,platform:r,artifact:i,directory:C,target:s.join(C,r==="win32"?"ffmpeg.exe":"ffmpeg")}}function Xe({env:A,home:e,platform:t,paths:r}){return A.HONGGUO_RUNTIME_DIR?r.join(A.HONGGUO_RUNTIME_DIR,"codex-hongguo"):t==="darwin"?r.join(e,"Library","Caches","CodexHongguo"):t==="win32"?r.join(A.LOCALAPPDATA||r.join(e,"AppData","Local"),"CodexHongguo","Cache"):r.join(A.XDG_CACHE_HOME||r.join(e,".cache"),"codex-hongguo")}function Ze(A){return We(A).target}function mA(A){try{let e=vr(A);return e.isFile()&&!e.isSymbolicLink()?`${e.size}:${e.mtimeMs}:${e.ctimeMs}`:null}catch{return null}}async function Ve(A){let e=Ue("sha256");for await(let t of ze(A))e.update(t);return e.digest("hex")}function $e(A,e){return e.probe?e.probe(A):yr(A,["-version"],{stdio:"ignore",timeout:5e3,windowsHide:!0}).status===0}async function dA(A){let{target:e,artifact:t}=A;if(P.get(e)&&P.get(e)===mA(e))return!0;try{let r=await DA(e);if(!r.isFile()||r.isSymbolicLink())return!1;if(t){let n=JSON.parse(await Te(e+".json","utf8"));if(n.archiveSha256!==t.archiveSha256||!/^[a-f0-9]{64}$/.test(n.binarySha256)||r.size!==(t.binaryBytes||n.binaryBytes)||await Ve(e)!==(t.binarySha256||n.binarySha256))return!1}return $e(e,A)?(P.set(e,mA(e)),!0):!1}catch{return!1}}async function Dr(A,e,t){let r=new Set(["github.com","release-assets.githubusercontent.com","objects.githubusercontent.com","evermeet.cx","www.osxexperts.net"]),n=AbortSignal.timeout(3e5),s=new URL(A.url),i;for(let I=0;I<=6;I++){if(s.protocol!=="https:"||s.username||s.password||s.port||!r.has(s.hostname))throw w();if(i=await t(s,{redirect:"manual",signal:n}),![301,302,303,307,308].includes(i.status))break;let o=i.headers.get("location");if(await i.body?.cancel(),!o||I===6)throw w();s=new URL(o,s)}if(!i.ok||!i.body||Number(i.headers.get("content-length"))>A.archiveBytes)throw await i.body?.cancel(),w();let g=await Oe(e,"wx",384),C=Ue("sha256"),a=0;try{for await(let I of i.body){if(a+=I.length,a>A.archiveBytes)throw w();C.update(I),await g.writeFile(I)}if(a!==A.archiveBytes||C.digest("hex")!==A.archiveSha256)throw w()}finally{await g.close()}}async function xr(A,e,t){let r=await Oe(t,"wx",384);try{if(A.format==="zip"){let c=He(await Te(e),{filter:f=>f.name===A.entry&&f.originalSize<=(A.binaryBytes||268435456)})[A.entry];if(!c||A.binaryBytes&&c.length!==A.binaryBytes)throw w();await r.writeFile(c);return}let n=new je.default.XzReadableStream(Nr(e)),s=n.getReader(),i=Buffer.alloc(0),g=0,C=0,a=!1,I=0;try{for(;;){let{value:o,done:c}=await s.read();if(c)break;if(I+=o.length,I>1024*1024*1024)throw w();for(i=Buffer.concat([i,o]);i.length;)if(g){let f=Math.min(g,i.length);if(a&&await r.writeFile(i.subarray(0,f)),i=i.subarray(f),g-=f,!g&&a)return}else if(C){let f=Math.min(C,i.length);i=i.subarray(f),C-=f}else{if(i.length<512)break;let f=i.subarray(0,512);i=i.subarray(512);let u=(B,v)=>f.subarray(B,v).toString("utf8").split("\0")[0],h=[u(345,500),u(0,100)].filter(Boolean).join("/"),l=parseInt(u(124,136).trim()||"0",8);if(!Number.isSafeInteger(l)||l<0||l>512*1024*1024||(a=h===A.entry,a&&(A.binaryBytes&&l!==A.binaryBytes||l>256*1024*1024||![0,48].includes(f[156]))))throw w();g=l,C=(512-l%512)%512}}throw w()}finally{await s.cancel().catch(()=>{})}}finally{await r.close()}}function Nr(A){let e=ze(A)[Symbol.asyncIterator]();return new ReadableStream({async pull(t){let{value:r,done:n}=await e.next();n?t.close():t.enqueue(r)},async cancel(){await e.return?.()}})}async function _e(A={}){let e=We(A);if(await dA(e))return e.target;if(e.override)throw w();if(rA.has(e.target))return rA.get(e.target);let t=Sr(e).finally(()=>rA.delete(e.target));return rA.set(e.target,t),t}async function kr(A,e){for(let t=A;;t=e.dirname(t)){let r=await DA(t);if(!r.isDirectory()||r.isSymbolicLink())return!1;if(e.dirname(t)===t)return!0}}async function At(A={}){let{env:e=process.env,home:t=Pe(),platform:r=process.platform}=A,n=r==="win32"?NA:xA,s=Xe({env:e,home:t,platform:r,paths:n}),i=n.join(s,"runtime","ffmpeg"),g=n.dirname(i),C=()=>Error("\u63D2\u4EF6\u5DF2\u5378\u8F7D\uFF0C\u4F46\u64AD\u653E\u7EC4\u4EF6\u6E05\u7406\u5931\u8D25\u3002\u8BF7\u5173\u95ED\u64AD\u653E\u5668\u5E76\u68C0\u67E5\u7F13\u5B58\u76EE\u5F55\u6743\u9650\u540E\uFF0C\u91CD\u65B0\u8FD0\u884C uninstall\u3002");if(!n.isAbsolute(s))throw C();try{if(!await kr(g,n))throw C();let a=await DA(i);a.isDirectory()&&!a.isSymbolicLink()?await T(i,{recursive:!0,force:!0,maxRetries:10,retryDelay:100}):await wr(i);for(let I of P.keys()){let o=n.relative(i,I);o&&!o.startsWith(".."+n.sep)&&!n.isAbsolute(o)&&P.delete(I)}}catch(a){if(a.code==="ENOENT")return{removed:0};throw C()}return await Ke(g).catch(()=>{}),await Ke(s).catch(()=>{}),{removed:1}}async function Sr(A){let{directory:e,target:t,artifact:r}=A,n=e+".lock",s=Date.now()+42e4;await Re(e,{recursive:!0,mode:448});let i=!1;for(;!i;)try{await Re(n,{mode:448}),i=!0}catch(o){if(o.code!=="EEXIST"||Date.now()>s)throw w();if(await dA(A))return t;try{Date.now()-(await qe(n)).mtimeMs>6e5&&await T(n,{recursive:!0,force:!0})}catch{}await dr(200)}let g=A.platform==="win32"?NA:xA,C=g.basename(t)+"."+lr(),a=g.join(e,C+".archive"),I=g.join(e,C+".part");try{if(await dA(A))return t;await Dr(r,a,A.fetchImpl||fetch),await xr(r,a,I);let o=await Ve(I);if(r.binarySha256&&o!==r.binarySha256||(await pr(I,493),!$e(I,A)))throw w();return A.platform==="win32"&&await T(t,{force:!0}),await Br(I,t),await Er(t+".json",JSON.stringify({owner:mr,schema:1,archiveSha256:r.archiveSha256,binarySha256:o,binaryBytes:(await qe(t)).size,version:r.version})+`
3
- `,{mode:384}),P.set(t,mA(t)),t}catch{throw w()}finally{await Promise.all([T(a,{force:!0}),T(I,{force:!0}),T(n,{recursive:!0,force:!0})])}}var rt=SA.default,_=SA.default.sync;function nt(A){if(!(!A?.pid||A.exitCode!==null||A.signalCode!==null))if(A.stdin?.destroy(),process.platform==="win32"){let e=kA.join(process.env.SystemRoot||"C:\\Windows","System32","taskkill.exe");_(e,["/pid",String(A.pid),"/t","/f"],{stdio:"ignore",timeout:3e3,windowsHide:!0})}else A.kill()}function j(A,e,{env:t=process.env,home:r=Jr(),platform:n=process.platform,arch:s=process.arch}={}){if(e)return e;if(A==="ffmpeg")return Ze({env:t,home:r,platform:n,arch:s});let{delimiter:i,dirname:g,join:C,isAbsolute:a,extname:I}=n==="win32"?kA:tt,o=Object.keys(t).find(h=>h.toUpperCase()==="PATH")||"PATH",c=[g(process.execPath),...(t[o]||"").split(i).filter(Boolean).map(h=>h.replace(/^"(.*)"$/,"$1"))];n!=="win32"?c.push("/opt/homebrew/bin","/usr/local/bin","/usr/bin","/bin",C(r,".volta/bin"),C(r,".local/bin")):c.push(C(t.APPDATA||C(r,"AppData","Roaming"),"npm"),C(r,".volta","bin"));let f=n!=="win32"||I(A)?[""]:[".exe",".com",".cmd",".bat"],u=c.filter(a).flatMap(h=>f.map(l=>C(h,A+l)));A==="codex"&&n==="darwin"&&u.push("/Applications/Codex.app/Contents/Resources/codex");for(let h of u)try{if(Fr(h,n==="win32"?et.F_OK:et.X_OK),Mr(h).isFile())return h}catch{}return A}function it(){let{delimiter:A,dirname:e}=process.platform==="win32"?kA:tt,t=Object.keys(process.env).find(r=>r.toUpperCase()==="PATH")||"PATH";process.env[t]=[...new Set([e(process.execPath),...(process.env[t]||"").split(A).filter(Boolean)])].join(A),process.env.HONGGUO_CODEX=j("codex",process.env.HONGGUO_CODEX)}import{realpathSync as Yr}from"node:fs";import{relative as Hr,resolve as Gr,isAbsolute as br}from"node:path";import{fileURLToPath as Lr}from"node:url";var ot=Lr(new URL("../../",import.meta.url));var st=["userPromptSubmit","stop","interrupt"],G=()=>({status:"unknown",events:st.map(A=>({event:A,status:"unknown"}))});function at({command:A=j("codex",process.env.HONGGUO_CODEX),args:e=["app-server"],cwd:t=process.cwd(),timeoutMs:r=8e3,pluginRoot:n=ot,installedId:s}={}){let i=C=>{try{return Yr(C)}catch{return Gr(C)}},g=i(n);return new Promise(C=>{let a,I=!1,o="",c=0,f=h=>{I||(I=!0,clearTimeout(u),nt(a),C(h))},u=setTimeout(()=>f(G()),r);try{a=rt(A,e,{cwd:t,stdio:["pipe","pipe","ignore"],windowsHide:!0}),a.on("error",()=>f(G())),a.on("exit",()=>f(G())),a.stdin.on("error",()=>f(G())),a.stdout.setEncoding("utf8");let h=l=>a.stdin.write(JSON.stringify(l)+`
4
- `);a.stdout.on("data",l=>{if(I)return;if(c+=Buffer.byteLength(l),c>2*1024*1024)return f(G());o+=l;let B;for(;!I&&(B=o.indexOf(`
5
- `))>=0;){let v=o.slice(0,B);o=o.slice(B+1);let E;try{E=JSON.parse(v)}catch{continue}if(E.error&&[1,2].includes(E.id))return f(G());if(E.id===1&&E.result&&(h({jsonrpc:"2.0",method:"initialized"}),h({jsonrpc:"2.0",id:2,method:"hooks/list",params:{cwds:[t]}})),E.id===2&&Array.isArray(E.result?.data)){let L=E.result.data.flatMap(p=>Array.isArray(p?.hooks)?p.hooks:[]).filter(p=>typeof p?.pluginId=="string"&&p.pluginId.split("@")[0]==="codex-hongguo").filter(p=>{if(typeof p.sourcePath!="string")return!1;if(s)return p.pluginId===s;let k=Hr(g,i(p.sourcePath));return k&&!k.startsWith("..")&&!br(k)});if(!L.length)return f(G());let Y=st.map(p=>{let k=L.filter(m=>m.eventName===p),AA=k.length?k.some(m=>!m.enabled)?"disabled":k.every(m=>["trusted","managed"].includes(m.trustStatus))?"ready":k.some(m=>["untrusted","modified"].includes(m.trustStatus))?"needs_review":"unknown":"missing";return{event:p,status:AA}});f({status:Y.every(p=>p.status==="ready")?"ready":"needs_attention",events:Y})}}}),h({jsonrpc:"2.0",id:1,method:"initialize",params:{clientInfo:{name:"hongguo-setup",version:"1"},capabilities:{experimentalApi:!0}}})}catch{f(G())}})}var W="hongguo-local",b="codex-hongguo@"+W,Ct="mreasonyang/codex-hongguo",gt=A=>typeof A=="string"?A.replace(/^https:\/\/github\.com\//,"").replace(/\.git$/,"").replace(/\/$/,""):A;function It(A,e=process.env){return t=>{let r=_(A,[...t,"--json"],{env:e,encoding:"utf8",timeout:12e4,windowsHide:!0,maxBuffer:4194304});if(r.status!==0)throw Error("Codex \u6B65\u9AA4\u5931\u8D25\uFF1A"+t.slice(0,3).join(" ")+"\u3002\u8BF7\u5728 Codex \u63D2\u4EF6\u8BBE\u7F6E\u4E2D\u68C0\u67E5\u72B6\u6001\u540E\u91CD\u8BD5\u3002");try{return JSON.parse(r.stdout)}catch{throw Error("Codex \u8FD4\u56DE\u4E86\u65E0\u6CD5\u8BC6\u522B\u7684\u7ED3\u679C\uFF0C\u8BF7\u66F4\u65B0 Codex \u540E\u91CD\u8BD5\u3002")}}}function Ur(A){if(/^[\w.-]+\/[\w.-]+$/.test(A)||qr(A))return A;throw Error("--marketplace \u53EA\u63A5\u53D7 owner/repo \u6216\u73B0\u6709\u672C\u5730\u5E02\u573A\u76EE\u5F55\u3002")}function zr({run:A,source:e=Ct,update:t=!1,dryRun:r=!1,log:n=console.log}){if(Ur(e),r){n("\u5C06\u4F7F\u7528 Codex \u539F\u751F\u5E02\u573A\u5B89\u88C5 "+b+"\uFF1B\u5E02\u573A\u6765\u6E90\uFF1A"+e),n("\u89C2\u770B\u8FDB\u5EA6\u4FDD\u7559\u5728\u539F\u6570\u636E\u76EE\u5F55\u3002\u5B89\u88C5\u5B8C\u6210\u540E\u9700\u5728 Codex \u4E2D\u5BA1\u67E5\u5E76\u4FE1\u4EFB\u4E09\u4E2A Hooks\u3002");return}let s=A(["plugin","marketplace","list"]).marketplaces?.find(C=>C.name===W),i=s?.marketplaceSource?.source,g=!!s&&gt(i)!==gt(e);g&&A(["plugin","marketplace","remove",W]);try{A(["plugin","marketplace","add",e]),t&&!g&&s?.marketplaceSource?.sourceType==="git"&&A(["plugin","marketplace","upgrade",W]),A(["plugin","add",b])}catch(C){if(g&&i){try{A(["plugin","marketplace","remove",W])}catch{}try{A(["plugin","marketplace","add",i]),A(["plugin","add",b])}catch{throw Error("\u5B89\u88C5\u5931\u8D25\uFF0C\u539F\u5E02\u573A\u672A\u80FD\u81EA\u52A8\u6062\u590D\u3002\u8BF7\u4ECE Codex \u63D2\u4EF6\u8BBE\u7F6E\u91CD\u65B0\u6DFB\u52A0\u539F\u6765\u6E90\uFF1B\u89C2\u770B\u8FDB\u5EA6\u4ECD\u4FDD\u7559\u3002")}}throw C}n("\u7EA2\u679C\u77ED\u5267\u5DF2\u5B89\u88C5\u3002\u91CD\u65B0\u6253\u5F00\u64AD\u653E\u5668\u5373\u53EF\u4F7F\u7528\u65B0\u7248\u3002")}async function Gn(A=process.argv.slice(2)){try{let[e="help",...t]=A;if(e==="--version"){console.log(JSON.parse(Rr(new URL("../../package.json",import.meta.url),"utf8")).version);return}if(["help","--help","-h"].includes(e)){console.log(`\u7EA2\u679C\u77ED\u5267
2
+ var pt=Object.create;var KA=Object.defineProperty;var wt=Object.getOwnPropertyDescriptor;var vt=Object.getOwnPropertyNames;var mt=Object.getPrototypeOf,yt=Object.prototype.hasOwnProperty;var F=(A=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(A,{get:(e,t)=>(typeof require<"u"?require:e)[t]}):A)(function(A){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+A+'" is not supported')});var m=(A,e)=>()=>{try{return e||A((e={exports:{}}).exports,e),e.exports}catch(t){throw e=0,t}};var dt=(A,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of vt(e))!yt.call(A,n)&&n!==t&&KA(A,n,{get:()=>e[n],enumerable:!(r=wt(e,n))||r.enumerable});return A};var UA=(A,e,t)=>(t=A!=null?pt(mt(A)):{},dt(e||!A||!A.__esModule?KA(t,"default",{value:A,enumerable:!0}):t,A));var jA=m((tn,PA)=>{PA.exports=TA;TA.sync=xt;var OA=F("fs");function Dt(A,e){var t=e.pathExt!==void 0?e.pathExt:process.env.PATHEXT;if(!t||(t=t.split(";"),t.indexOf("")!==-1))return!0;for(var r=0;r<t.length;r++){var n=t[r].toLowerCase();if(n&&A.substr(-n.length).toLowerCase()===n)return!0}return!1}function zA(A,e,t){return!A.isSymbolicLink()&&!A.isFile()?!1:Dt(e,t)}function TA(A,e,t){OA.stat(A,function(r,n){t(r,r?!1:zA(n,A,e))})}function xt(A,e){return zA(OA.statSync(A),A,e)}});var _A=m((rn,VA)=>{VA.exports=XA;XA.sync=Nt;var WA=F("fs");function XA(A,e,t){WA.stat(A,function(r,n){t(r,r?!1:ZA(n,e))})}function Nt(A,e){return ZA(WA.statSync(A),e)}function ZA(A,e){return A.isFile()&&kt(A,e)}function kt(A,e){var t=A.mode,r=A.uid,n=A.gid,s=e.uid!==void 0?e.uid:process.getuid&&process.getuid(),o=e.gid!==void 0?e.gid:process.getgid&&process.getgid(),g=parseInt("100",8),c=parseInt("010",8),a=parseInt("001",8),I=g|c,i=t&a||t&c&&n===o||t&g&&r===s||t&I&&s===0;return i}});var Ae=m((on,$A)=>{var nn=F("fs"),tA;process.platform==="win32"||global.TESTING_WINDOWS?tA=jA():tA=_A();$A.exports=aA;aA.sync=St;function aA(A,e,t){if(typeof e=="function"&&(t=e,e={}),!t){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(r,n){aA(A,e||{},function(s,o){s?n(s):r(o)})})}tA(A,e||{},function(r,n){r&&(r.code==="EACCES"||e&&e.ignoreErrors)&&(r=null,n=!1),t(r,n)})}function St(A,e){try{return tA.sync(A,e||{})}catch(t){if(e&&e.ignoreErrors||t.code==="EACCES")return!1;throw t}}});var se=m((sn,oe)=>{var K=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",ee=F("path"),Ft=K?";":":",te=Ae(),re=A=>Object.assign(new Error(`not found: ${A}`),{code:"ENOENT"}),ne=(A,e)=>{let t=e.colon||Ft,r=A.match(/\//)||K&&A.match(/\\/)?[""]:[...K?[process.cwd()]:[],...(e.path||process.env.PATH||"").split(t)],n=K?e.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",s=K?n.split(t):[""];return K&&A.indexOf(".")!==-1&&s[0]!==""&&s.unshift(""),{pathEnv:r,pathExt:s,pathExtExe:n}},ie=(A,e,t)=>{typeof e=="function"&&(t=e,e={}),e||(e={});let{pathEnv:r,pathExt:n,pathExtExe:s}=ne(A,e),o=[],g=a=>new Promise((I,i)=>{if(a===r.length)return e.all&&o.length?I(o):i(re(A));let C=r[a],f=/^".*"$/.test(C)?C.slice(1,-1):C,u=ee.join(f,A),h=!f&&/^\.[\\\/]/.test(A)?A.slice(0,2)+u:u;I(c(h,a,0))}),c=(a,I,i)=>new Promise((C,f)=>{if(i===n.length)return C(g(I+1));let u=n[i];te(a+u,{pathExt:s},(h,Q)=>{if(!h&&Q)if(e.all)o.push(a+u);else return C(a+u);return C(c(a,I,i+1))})});return t?g(0).then(a=>t(null,a),t):g(0)},Mt=(A,e)=>{e=e||{};let{pathEnv:t,pathExt:r,pathExtExe:n}=ne(A,e),s=[];for(let o=0;o<t.length;o++){let g=t[o],c=/^".*"$/.test(g)?g.slice(1,-1):g,a=ee.join(c,A),I=!c&&/^\.[\\\/]/.test(A)?A.slice(0,2)+a:a;for(let i=0;i<r.length;i++){let C=I+r[i];try{if(te.sync(C,{pathExt:n}))if(e.all)s.push(C);else return C}catch{}}}if(e.all&&s.length)return s;if(e.nothrow)return null;throw re(A)};oe.exports=ie;ie.sync=Mt});var ge=m((an,gA)=>{"use strict";var ae=(A={})=>{let e=A.env||process.env;return(A.platform||process.platform)!=="win32"?"PATH":Object.keys(e).reverse().find(r=>r.toUpperCase()==="PATH")||"Path"};gA.exports=ae;gA.exports.default=ae});var fe=m((gn,ce)=>{"use strict";var Ie=F("path"),Jt=se(),Lt=ge();function Ce(A,e){let t=A.options.env||process.env,r=process.cwd(),n=A.options.cwd!=null,s=n&&process.chdir!==void 0&&!process.chdir.disabled;if(s)try{process.chdir(A.options.cwd)}catch{}let o;try{o=Jt.sync(A.command,{path:t[Lt({env:t})],pathExt:e?Ie.delimiter:void 0})}catch{}finally{s&&process.chdir(r)}return o&&(o=Ie.resolve(n?A.options.cwd:"",o)),o}function bt(A){return Ce(A)||Ce(A,!0)}ce.exports=bt});var ue=m((In,CA)=>{"use strict";var IA=/([()\][%!^"`<>&|;, *?])/g;function Yt(A){return A=A.replace(IA,"^$1"),A}function Gt(A,e){return A=`${A}`,A=A.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),A=A.replace(/(?=(\\+?)?)\1$/,"$1$1"),A=`"${A}"`,A=A.replace(IA,"^$1"),e&&(A=A.replace(IA,"^$1")),A}CA.exports.command=Yt;CA.exports.argument=Gt});var le=m((Cn,he)=>{"use strict";he.exports=/^#!(.*)/});var Ee=m((cn,Qe)=>{"use strict";var Ht=le();Qe.exports=(A="")=>{let e=A.match(Ht);if(!e)return null;let[t,r]=e[0].replace(/#! ?/,"").split(" "),n=t.split("/").pop();return n==="env"?r:r?`${n} ${r}`:n}});var pe=m((fn,Be)=>{"use strict";var cA=F("fs"),Rt=Ee();function qt(A){let t=Buffer.alloc(150),r;try{r=cA.openSync(A,"r"),cA.readSync(r,t,0,150,0),cA.closeSync(r)}catch{}return Rt(t.toString())}Be.exports=qt});var ye=m((un,me)=>{"use strict";var Kt=F("path"),we=fe(),ve=ue(),Ut=pe(),Ot=process.platform==="win32",zt=/\.(?:com|exe)$/i,Tt=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function Pt(A){A.file=we(A);let e=A.file&&Ut(A.file);return e?(A.args.unshift(A.file),A.command=e,we(A)):A.file}function jt(A){if(!Ot)return A;let e=Pt(A),t=!zt.test(e);if(A.options.forceShell||t){let r=Tt.test(e);A.command=Kt.normalize(A.command),A.command=ve.command(A.command),A.args=A.args.map(s=>ve.argument(s,r));let n=[A.command].concat(A.args).join(" ");A.args=["/d","/s","/c",`"${n}"`],A.command=process.env.comspec||"cmd.exe",A.options.windowsVerbatimArguments=!0}return A}function Wt(A,e,t){e&&!Array.isArray(e)&&(t=e,e=null),e=e?e.slice(0):[],t=Object.assign({},t);let r={command:A,args:e,options:t,file:void 0,original:{command:A,args:e}};return t.shell?r:jt(r)}me.exports=Wt});var xe=m((hn,De)=>{"use strict";var fA=process.platform==="win32";function uA(A,e){return Object.assign(new Error(`${e} ${A.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${e} ${A.command}`,path:A.command,spawnargs:A.args})}function Xt(A,e){if(!fA)return;let t=A.emit;A.emit=function(r,n){if(r==="exit"){let s=de(n,e);if(s)return t.call(A,"error",s)}return t.apply(A,arguments)}}function de(A,e){return fA&&A===1&&!e.file?uA(e.original,"spawn"):null}function Zt(A,e){return fA&&A===1&&!e.file?uA(e.original,"spawnSync"):null}De.exports={hookChildProcess:Xt,verifyENOENT:de,verifyENOENTSync:Zt,notFoundError:uA}});var Se=m((ln,U)=>{"use strict";var Ne=F("child_process"),hA=ye(),lA=xe();function ke(A,e,t){let r=hA(A,e,t),n=Ne.spawn(r.command,r.args,r.options);return lA.hookChildProcess(n,r),n}function Vt(A,e,t){let r=hA(A,e,t),n=Ne.spawnSync(r.command,r.args,r.options);return n.error=n.error||lA.verifyENOENTSync(n.status,r),n}U.exports=ke;U.exports.spawn=ke;U.exports.sync=Vt;U.exports._parse=hA;U.exports._enoent=lA});var He=m((_,mA)=>{(function(e,t){typeof _=="object"&&typeof mA=="object"?mA.exports=t(F("stream/web")):typeof define=="function"&&define.amd?define(["stream/web"],t):typeof _=="object"?_["xz-decompress"]=t(F("stream/web")):e["xz-decompress"]=t(e["stream/web"])})(_,A=>(()=>{"use strict";var e=[,(s=>{s.exports="data:application/wasm;base64,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ACABQX9qIgENAAsgAkJ/hSECCyACC8oQAgx/An4CQAJAIAAoAiRFDQAgACgCACECDAELQQAhAiAAQQA6ACggAEIANwMAIABCADcDGCAAQcgAakEAQeQAEIaAgIAAGiAAQawBakEMNgIACyAAIAEoAgQiAzYCECAAQeAAaiEEIABByABqIQUgAEG2AWohBiAAQbABaiEHIABBqAFqIQggASgCECEJAkACQAJAAkADQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCACDgoBAgAEBQYHCAkKDwsgASgCACEKIAAoAqgBIQIgACgCrAEhCyABKAIEIQwgASgCCCENDAILIAcgACgCqAEiDGogASgCACABKAIEIgJqIAEoAgggAmsiAiAAKAKsASAMayIMIAIgDEkbIgIQh4CAgAAaIAEgASgCBCACajYCBEEAIQwgAEEAIAAoAqgBIAJqIgIgAiAAKAKsASILRhs2AqgBIAIgC0cNESAAQQE2AgACQCAHQaiIgIAAQQYQhICAgABFDQBBBSEMDBILIAZBAkEAEI2AgIAAIAAoALgBRw0QQQYhDCAGLQAADREgACAALQC3ASICNgIgIAJBBEsNEUEBIAJ0QRNxRQ0RCyABKAIEIgwgASgCCCINRg0OAkAgASgCACIKIAxqLQAAIgsNACAAIAw2AhAgASAMQQFqNgIEQQYhAgwMC0EAIQIgAEEANgKoASAAQQI2AgAgACALQQJ0QQRqIgs2AqwBIAAgCzYCQAsgByACaiAKIAxqIA0gDGsiDCALIAJrIgIgDCACSRsiAhCHgICAABogASABKAIEIAJqNgIEQQAhDCAAQQAgACgCqAEgAmoiAiACIAAoAqwBIgtGGzYCqAEgAiALRw0PIAAgAkF8aiICNgKsAUEHIQwgByACQQAQjYCAgAAgByAAKAKsASICaigAAEcNDyAAQQI2AqgBIAAtALEBIgtBP3ENDAJAAkAgC0HAAHFFDQAgACAHIAggAhCRgICAAEEBRw0RIAAgACkDCDcDMCAAKAKsASECIAAtALEBIQsMAQsgAEJ/NwMwC0J/IQ4CQCALwEF/Sg0AIAAgByAIIAIQkYCAgABBAUcNECAAKAKsASECIAApAwghDgsgACAONwM4IAIgACgCqAEiC2tBAkkNDyAAIAtBAWoiCjYCqAEgCCALakEI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AA8LIAEgA0EBaiIFNgIEAkAgASgCACADai0AACAAKQMYIAAoAgQiA62Ip0H/AXFGDQBBBw8LIAAgA0EIaiIGNgIEIAUhAyAGIAJJDQALIABBADYCBCAAQgA3AxhBAQtvAQF/QQchAQJAIABBugFqLwAAQdm0AUcNACAAQbQBakEGQQAQjYCAgAAgAEGwAWooAABHDQAgAEGAAWopAwBCAoggADUAtAFSDQAgAEG4AWotAAANAEEBQQcgACgCICAAQbkBai0AAEYbIQELIAELwAIBA38CQAJAAkAgACgCJA0AIABBADoAKCAAQQA2AgBBASECDAELAkAgACgCAEEKRw0AQQAhAwwCC0ECIQMMAQtBASEDCwJAAkADQAJAAkACQAJAIAMOAwABAwMLIAEoAgQiAyABKAIIIgRGDQQgASgCACEFAkADQCAFIANqLQAADQEgASADQQFqIgM2AgQgACAAKAIEQQFqQQNxNgIEIAQgA0YNBgwACwsCQCAAKAIERQ0AQQcPCyAAKAIkRQ0BIABBADoAKCAAQQA2AgBBASEDDAMLIABCADcDGCAAQQA2AgQgAEHIAGpBAEHkABCGgICAABogAEGsAWpBDDYCAAtBAiEDDAELIAAgARCQgICAACIDQQFHDQIgAEEKNgIAQQAhAwwACwsCQCACDQBBAA8LQQdBASAAKAIEGyEDCyADC3UBAX8CQEG4CRCAgICAACICRQ0AIAIgADYCJCACIAAgARCbgICAACIANgKwCQJAIABFDQAgAkEAOgAoIAJCADcDACACQgA3AxggAkHIAGpBAEHkABCGgICAABogAkGsAWpBDDYCACACDwsgAhCCgICAAAtBAAseAAJAIABFDQAgACgCsAkQnYCAgAAgABCCgICAAAsL3RABCn8gAEHo3QFqIQIgAEHUAGohAyAAQRxqIgRBCGohBQJAAkADQCAAKAJAIQYCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgASgCBCIHIAEoAghJDQAgBkEHRg0BDBELIAYOCQECAwQFBgcACQ4LIAAoAkwhBgwHC0EBIQYgASAHQQFqNgIEIAEoAgAgB2otAAAiB0UNCAJAAkAgB0HfAUsNACAHQQFHDQELIABBgAI7AVACQCAAKAI8DQAgACABKAIMIAEoAhAiBmo2AhggACABKAIUIAZr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"}),(s=>{s.exports=A})],t={};function r(s){var o=t[s];if(o!==void 0)return o.exports;var g=t[s]={exports:{}};return e[s](g,g.exports,r),g.exports}r.d=(s,o)=>{for(var g in o)r.o(o,g)&&!r.o(s,g)&&Object.defineProperty(s,g,{enumerable:!0,get:o[g]})},r.o=(s,o)=>Object.prototype.hasOwnProperty.call(s,o),r.r=s=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(s,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(s,"__esModule",{value:!0})};var n={};return(()=>{r.r(n),r.d(n,{XzReadableStream:()=>i});var s=r(1);let o=globalThis.ReadableStream||r(2).ReadableStream,g=0,c=1;class a{constructor(f){this.exports=f.exports,this.memory=this.exports.memory,this.ptr=this.exports.create_context(),this._refresh(),this.bufSize=this.mem32[0],this.inStart=this.mem32[1]-this.ptr,this.inEnd=this.inStart+this.bufSize,this.outStart=this.mem32[4]-this.ptr}supplyInput(f){this._refresh(),this.mem8.subarray(this.inStart,this.inEnd).set(f,0),this.exports.supply_input(this.ptr,f.byteLength),this._refresh()}getNextOutput(){let f=this.exports.get_next_output(this.ptr);if(this._refresh(),f!==g&&f!==c)throw new Error(`get_next_output failed with error code ${f}`);return{outChunk:this.mem8.slice(this.outStart,this.outStart+this.mem32[5]),finished:f===c}}needsMoreInput(){return this.mem32[2]===this.mem32[3]}outputBufferIsFull(){return this.mem32[5]===this.bufSize}resetOutputBuffer(){this.outPos=this.mem32[5]=0}dispose(){this.exports.destroy_context(this.ptr),this.exports=null}_refresh(){this.memory.buffer!==this.mem8?.buffer&&(this.mem8=new Uint8Array(this.memory.buffer,this.ptr),this.mem32=new Uint32Array(this.memory.buffer,this.ptr))}}class I{constructor(){this.locked=!1,this.waitQueue=[]}async acquire(){if(!this.locked){this.locked=!0;return}return new Promise(f=>{this.waitQueue.push(f)})}release(){this.waitQueue.length>0?this.waitQueue.shift()():this.locked=!1}}class i extends o{static _moduleInstancePromise;static _moduleInstance;static _contextMutex=new I;static async _getModuleInstance(){let f=s.replace("data:application/wasm;base64,",""),u=Uint8Array.from(atob(f),B=>B.charCodeAt(0)).buffer,h={},Q=await WebAssembly.instantiate(u,h);i._moduleInstance=Q.instance}constructor(f){let u,h=null,Q=f.getReader();super({async start(B){await i._contextMutex.acquire();try{i._moduleInstance||await(i._moduleInstancePromise||(i._moduleInstancePromise=i._getModuleInstance())),u=new a(i._moduleInstance)}catch(v){throw i._contextMutex.release(),v}},async pull(B){try{if(u.needsMoreInput()){if(h===null||h.byteLength===0){let{done:L,value:b}=await Q.read();L||(h=b)}let E=Math.min(u.bufSize,h.byteLength);u.supplyInput(h.subarray(0,E)),h=h.subarray(E)}let v=u.getNextOutput();B.enqueue(v.outChunk),u.resetOutputBuffer(),v.finished&&(u.dispose(),i._contextMutex.release(),B.close())}catch(v){throw u&&u.dispose(),i._contextMutex.release(),v}},cancel(){try{return u&&u.dispose(),Q.cancel()}finally{i._contextMutex.release()}}})}}})(),n})())});import{readFileSync as Zr,existsSync as Vr}from"node:fs";import{fileURLToPath as _r}from"node:url";var SA=UA(Se(),1);import{accessSync as Lr,constants as tt,statSync as br}from"node:fs";import{homedir as Yr}from"node:os";import{posix as rt,win32 as kA}from"node:path";import{createHash as Oe,randomUUID as pr}from"node:crypto";import{createReadStream as ze}from"node:fs";import{mkdir as qe,lstat as DA,open as Te,readFile as Pe,writeFile as wr,rename as vr,rm as T,chmod as mr,stat as Ke,unlink as yr,rmdir as Ue}from"node:fs/promises";import{lstatSync as dr}from"node:fs";import{homedir as je}from"node:os";import{posix as xA,win32 as NA}from"node:path";import{spawnSync as Dr}from"node:child_process";import{createRequire as _t}from"module";var $t=_t("/"),z,Ar,er;try{z=$t("worker_threads"),Ar=z.Worker,er=z.isMarkedAsUntransferable}catch{}var D=Uint8Array,O=Uint16Array,tr=Int32Array,Fe=new D([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),Me=new D([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),rr=new D([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),Je=function(A,e){for(var t=new O(31),r=0;r<31;++r)t[r]=e+=1<<A[r-1];for(var n=new tr(t[30]),r=1;r<30;++r)for(var s=t[r];s<t[r+1];++s)n[s]=s-t[r]<<5|r;return{b:t,r:n}},z=Je(Fe,2),Le=z.b,nr=z.r;Le[28]=258,nr[258]=28;var be=Je(Me,0),ir=be.b,En=be.r,pA=new O(32768);for(l=0;l<32768;++l)J=(l&43690)>>1|(l&21845)<<1,J=(J&52428)>>2|(J&13107)<<2,J=(J&61680)>>4|(J&3855)<<4,pA[l]=((J&65280)>>8|(J&255)<<8)>>1;var J,l,Z=(function(A,e,t){for(var r=A.length,n=0,s=new O(e);n<r;++n)A[n]&&++s[A[n]-1];var o=new O(e);for(n=1;n<e;++n)o[n]=o[n-1]+s[n-1]<<1;var g;if(t){g=new O(1<<e);var c=15-e;for(n=0;n<r;++n)if(A[n])for(var a=n<<4|A[n],I=e-A[n],i=o[A[n]-1]++<<I,C=i|(1<<I)-1;i<=C;++i)g[pA[i]>>c]=a}else for(g=new O(r),n=0;n<r;++n)A[n]&&(g[n]=pA[o[A[n]-1]++]>>15-A[n]);return g}),V=new D(288);for(l=0;l<144;++l)V[l]=8;var l;for(l=144;l<256;++l)V[l]=9;var l;for(l=256;l<280;++l)V[l]=7;var l;for(l=280;l<288;++l)V[l]=8;var l,Ye=new D(32);for(l=0;l<32;++l)Ye[l]=5;var l;var or=Z(V,9,1);var sr=Z(Ye,5,1),QA=function(A){for(var e=A[0],t=1;t<A.length;++t)A[t]>e&&(e=A[t]);return e},S=function(A,e,t){var r=e/8|0;return(A[r]|A[r+1]<<8)>>(e&7)&t},EA=function(A,e){var t=e/8|0;return(A[t]|A[t+1]<<8|A[t+2]<<16)>>(e&7)},ar=function(A){return(A+7)/8|0},vA=function(A,e,t){return(e==null||e<0)&&(e=0),(t==null||t>A.length)&&(t=A.length),new D(A.subarray(e,t))};var gr=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],d=function(A,e,t){var r=new Error(e||gr[A]);if(r.code=A,Error.captureStackTrace&&Error.captureStackTrace(r,d),!t)throw r;return r},Ir=function(A,e,t,r){var n=A.length,s=r?r.length:0;if(!n||e.f&&!e.l)return t||new D(0);var o=!t,g=o||e.i!=2,c=e.i;o&&(t=new D(n*3));var a=function(HA){var RA=t.length;if(HA>RA){var qA=new D(Math.max(RA*2,HA));qA.set(t),t=qA}},I=e.f||0,i=e.p||0,C=e.b||0,f=e.l,u=e.d,h=e.m,Q=e.n,B=n*8;do{if(!f){I=S(A,i,1);var v=S(A,i+1,3);if(i+=3,v)if(v==1)f=or,u=sr,h=9,Q=5;else if(v==2){var p=S(A,i,31)+257,k=S(A,i+10,15)+4,AA=p+S(A,i+5,31)+1;i+=14;for(var y=new D(AA),nA=new D(19),x=0;x<k;++x)nA[rr[x]]=S(A,i+x*3,7);i+=k*3;for(var MA=QA(nA),ht=(1<<MA)-1,lt=Z(nA,MA,1),x=0;x<AA;){var JA=lt[S(A,i,ht)];i+=JA&15;var E=JA>>4;if(E<16)y[x++]=E;else{var R=0,eA=0;for(E==16?(eA=3+S(A,i,3),i+=2,R=y[x-1]):E==17?(eA=3+S(A,i,7),i+=3):E==18&&(eA=11+S(A,i,127),i+=7);eA--;)y[x++]=R}}var LA=y.subarray(0,p),Y=y.subarray(p);h=QA(LA),Q=QA(Y),f=Z(LA,h,1),u=Z(Y,Q,1)}else d(1);else{var E=ar(i)+4,L=A[E-4]|A[E-3]<<8,b=E+L;if(b>n){c&&d(0);break}g&&a(C+L),t.set(A.subarray(E,b),C),e.b=C+=L,e.p=i=b*8,e.f=I;continue}if(i>B){c&&d(0);break}}g&&a(C+131072);for(var Qt=(1<<h)-1,Et=(1<<Q)-1,iA=i;;iA=i){var R=f[EA(A,i)&Qt],q=R>>4;if(i+=R&15,i>B){c&&d(0);break}if(R||d(2),q<256)t[C++]=q;else if(q==256){iA=i,f=null;break}else{var bA=q-254;if(q>264){var x=q-257,X=Fe[x];bA=S(A,i,(1<<X)-1)+Le[x],i+=X}var oA=u[EA(A,i)&Et],sA=oA>>4;oA||d(3),i+=oA&15;var Y=ir[sA];if(sA>3){var X=Me[sA];Y+=EA(A,i)&(1<<X)-1,i+=X}if(i>B){c&&d(0);break}g&&a(C+131072);var YA=C+bA;if(C<Y){var GA=s-Y,Bt=Math.min(Y,YA);for(GA+C<0&&d(3);C<Bt;++C)t[C]=r[GA+C]}for(;C<YA;++C)t[C]=t[C-Y]}}e.l=f,e.p=iA,e.b=C,e.f=I,f&&(I=1,e.m=h,e.d=u,e.n=Q)}while(!I);return C!=t.length&&o?vA(t,0,C):t.subarray(0,C)};var Cr=new D(0);var M=function(A,e){return A[e]|A[e+1]<<8},N=function(A,e){return(A[e]|A[e+1]<<8|A[e+2]<<16|A[e+3]<<24)>>>0},BA=function(A,e){return N(A,e)+N(A,e+4)*4294967296};function cr(A,e){return Ir(A,{i:2},e&&e.out,e&&e.dictionary)}var wA=typeof TextDecoder<"u"&&new TextDecoder,fr=0;try{wA.decode(Cr,{stream:!0}),fr=1}catch{}var ur=function(A){for(var e="",t=0;;){var r=A[t++],n=(r>127)+(r>223)+(r>239);if(t+n>A.length)return{s:e,r:vA(A,t-1)};n?n==3?(r=((r&15)<<18|(A[t++]&63)<<12|(A[t++]&63)<<6|A[t++]&63)-65536,e+=String.fromCharCode(55296|r>>10,56320|r&1023)):n&1?e+=String.fromCharCode((r&31)<<6|A[t++]&63):e+=String.fromCharCode((r&15)<<12|(A[t++]&63)<<6|A[t++]&63):e+=String.fromCharCode(r)}};function hr(A,e){if(e){for(var t="",r=0;r<A.length;r+=16384)t+=String.fromCharCode.apply(null,A.subarray(r,r+16384));return t}else{if(wA)return wA.decode(A);var n=ur(A),s=n.s,t=n.r;return t.length&&d(8),s}}var lr=function(A,e){return e+30+M(A,e+26)+M(A,e+28)},Qr=function(A,e,t){var r=M(A,e+28),n=M(A,e+30),s=hr(A.subarray(e+46,e+46+r),!(M(A,e+8)&2048)),o=e+46+r,g=Er(A,o,n,t,N(A,e+20),N(A,e+24),N(A,e+42)),c=g[0],a=g[1],I=g[2];return[M(A,e+10),c,a,s,o+n+M(A,e+32),I]},Er=function(A,e,t,r,n,s,o){var g=n==4294967295,c=s==4294967295,a=o==4294967295,I=e+t,i=g+c+a;if(r&&i){for(;e+4<I;e+=4+M(A,e+2))if(M(A,e)==1)return[g?BA(A,e+4+8*c):n,c?BA(A,e+4):s,a?BA(A,e+4+8*(c+g)):o,1];r<2&&d(13)}return[n,s,o,0]};function Ge(A,e){for(var t={},r=A.length-22;N(A,r)!=101010256;--r)(!r||A.length-r>65558)&&d(13);var n=M(A,r+8);if(!n)return{};var s=N(A,r+16),o=N(A,r-20)==117853008;if(o){var g=N(A,r-12);o=N(A,g)==101075792,o&&(n=N(A,g+32),s=N(A,g+48))}for(var c=e&&e.filter,a=0;a<n;++a){var I=Qr(A,s,o),i=I[0],C=I[1],f=I[2],u=I[3],h=I[4],Q=I[5],B=lr(A,Q);s=h,(!c||c({name:u,size:C,originalSize:f,compression:i}))&&(i?i==8?t[u]=cr(A.subarray(B,B+C),{out:new D(f)}):d(14,"unknown compression type "+i):t[u]=vA(A,B,B+C))}return t}var We=UA(He(),1);var Re={"darwin-arm64":{version:"9.0.2",url:"https://www.osxexperts.net/ffmpeg902arm.zip",format:"zip",entry:"ffmpeg",archiveBytes:22665869,archiveSha256:"07e00300593799005b060c03a99fe648b1edda0f30c36b0c1adafe8e3247e586",binaryBytes:52160568,binarySha256:"762f16b2913b8d3b8fdb8092df12b691053b035b13ae9b88205513c55cb8e71e"},"darwin-x64":{version:"9.0.2",url:"https://evermeet.cx/ffmpeg/ffmpeg-9.0.2.zip",format:"zip",entry:"ffmpeg",archiveBytes:26198325,archiveSha256:"4acc0be580f9b2788029eb7bd4d645ff87968911b0a62aeeb3940d42d54558d5",binaryBytes:80827688,binarySha256:"a45b462cf91ed89148ae218c4577e30896485d7a6792c3673bcf5f823fa01b63"},"linux-x64":{version:"9.0.2-20261031",url:"https://github.com/BtbN/FFmpeg-Builds/releases/download/autobuild-2026-10-31-12-59/ffmpeg-n9.0.2-39-g7adfbe40dc-linux64-gpl-9.0.tar.xz",format:"tar.xz",entry:"ffmpeg-n9.0.2-39-g7adfbe40dc-linux64-gpl-9.0/bin/ffmpeg",archiveBytes:153175100,archiveSha256:"73e29a56974ae5a651133a04584c7483b21afe941e17dc91d79814a758b608d3"},"linux-arm64":{version:"9.0.2-20261031",url:"https://github.com/BtbN/FFmpeg-Builds/releases/download/autobuild-2026-10-31-12-59/ffmpeg-n9.0.2-39-g7adfbe40dc-linuxarm64-gpl-9.0.tar.xz",format:"tar.xz",entry:"ffmpeg-n9.0.2-39-g7adfbe40dc-linuxarm64-gpl-9.0/bin/ffmpeg",archiveBytes:128664064,archiveSha256:"6cad88ae5bcec356cfc5d7979a036cc4007128201928a0cf243df3db483276cc"},"win32-x64":{version:"9.0.2-20261031",url:"https://github.com/BtbN/FFmpeg-Builds/releases/download/autobuild-2026-10-31-12-59/ffmpeg-n9.0.2-39-g7adfbe40dc-win64-gpl-9.0.zip",format:"zip",entry:"ffmpeg-n9.0.2-39-g7adfbe40dc-win64-gpl-9.0/bin/ffmpeg.exe",archiveBytes:195110184,archiveSha256:"693f3e224bc184b40524a62ca47526cfebaf2504414021b92fe75f677ad868b9"}};var P=new Map,rA=new Map,xr="@kyun.si/codex-hongguo",w=()=>Error("\u64AD\u653E\u7EC4\u4EF6\u81EA\u52A8\u51C6\u5907\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u7F51\u7EDC\u548C\u7F13\u5B58\u76EE\u5F55\u6743\u9650\u540E\u91CD\u8BD5\u5B89\u88C5\u3002"),Nr=A=>new Promise(e=>setTimeout(e,A));function Xe(A={}){let{env:e=process.env,home:t=je(),platform:r=process.platform,arch:n=process.arch}=A,s=r==="win32"?NA:xA;if(e.HONGGUO_FFMPEG){if(!s.isAbsolute(e.HONGGUO_FFMPEG))throw w();return{...A,env:e,platform:r,target:e.HONGGUO_FFMPEG,override:!0}}let o=(A.artifacts||Re)[r+"-"+n];if(!o)throw Error("\u5F53\u524D\u7CFB\u7EDF\u67B6\u6784\u6682\u4E0D\u652F\u6301\u81EA\u52A8\u51C6\u5907\u64AD\u653E\u7EC4\u4EF6\u3002");let g=Ze({env:e,home:t,platform:r,paths:s}),c=s.join(g,"runtime","ffmpeg",o.archiveSha256.slice(0,16),r+"-"+n);return{...A,env:e,platform:r,artifact:o,directory:c,target:s.join(c,r==="win32"?"ffmpeg.exe":"ffmpeg")}}function Ze({env:A,home:e,platform:t,paths:r}){return A.HONGGUO_RUNTIME_DIR?r.join(A.HONGGUO_RUNTIME_DIR,"codex-hongguo"):t==="darwin"?r.join(e,"Library","Caches","CodexHongguo"):t==="win32"?r.join(A.LOCALAPPDATA||r.join(e,"AppData","Local"),"CodexHongguo","Cache"):r.join(A.XDG_CACHE_HOME||r.join(e,".cache"),"codex-hongguo")}function Ve(A){return Xe(A).target}function yA(A){try{let e=dr(A);return e.isFile()&&!e.isSymbolicLink()?`${e.size}:${e.mtimeMs}:${e.ctimeMs}`:null}catch{return null}}async function _e(A){let e=Oe("sha256");for await(let t of ze(A))e.update(t);return e.digest("hex")}function $e(A,e){return e.probe?e.probe(A):Dr(A,["-version"],{stdio:"ignore",timeout:5e3,windowsHide:!0}).status===0}async function dA(A){let{target:e,artifact:t}=A;if(P.get(e)&&P.get(e)===yA(e))return!0;try{let r=await DA(e);if(!r.isFile()||r.isSymbolicLink())return!1;if(t){let n=JSON.parse(await Pe(e+".json","utf8"));if(n.archiveSha256!==t.archiveSha256||!/^[a-f0-9]{64}$/.test(n.binarySha256)||r.size!==(t.binaryBytes||n.binaryBytes)||await _e(e)!==(t.binarySha256||n.binarySha256))return!1}return $e(e,A)?(P.set(e,yA(e)),!0):!1}catch{return!1}}async function kr(A,e,t){let r=new Set(["github.com","release-assets.githubusercontent.com","objects.githubusercontent.com","evermeet.cx","www.osxexperts.net"]),n=AbortSignal.timeout(3e5),s=new URL(A.url),o;for(let I=0;I<=6;I++){if(s.protocol!=="https:"||s.username||s.password||s.port||!r.has(s.hostname))throw w();if(o=await t(s,{redirect:"manual",signal:n}),![301,302,303,307,308].includes(o.status))break;let i=o.headers.get("location");if(await o.body?.cancel(),!i||I===6)throw w();s=new URL(i,s)}if(!o.ok||!o.body||Number(o.headers.get("content-length"))>A.archiveBytes)throw await o.body?.cancel(),w();let g=await Te(e,"wx",384),c=Oe("sha256"),a=0;try{for await(let I of o.body){if(a+=I.length,a>A.archiveBytes)throw w();c.update(I),await g.writeFile(I)}if(a!==A.archiveBytes||c.digest("hex")!==A.archiveSha256)throw w()}finally{await g.close()}}async function Sr(A,e,t){let r=await Te(t,"wx",384);try{if(A.format==="zip"){let C=Ge(await Pe(e),{filter:f=>f.name===A.entry&&f.originalSize<=(A.binaryBytes||268435456)})[A.entry];if(!C||A.binaryBytes&&C.length!==A.binaryBytes)throw w();await r.writeFile(C);return}let n=new We.default.XzReadableStream(Fr(e)),s=n.getReader(),o=Buffer.alloc(0),g=0,c=0,a=!1,I=0;try{for(;;){let{value:i,done:C}=await s.read();if(C)break;if(I+=i.length,I>1024*1024*1024)throw w();for(o=Buffer.concat([o,i]);o.length;)if(g){let f=Math.min(g,o.length);if(a&&await r.writeFile(o.subarray(0,f)),o=o.subarray(f),g-=f,!g&&a)return}else if(c){let f=Math.min(c,o.length);o=o.subarray(f),c-=f}else{if(o.length<512)break;let f=o.subarray(0,512);o=o.subarray(512);let u=(B,v)=>f.subarray(B,v).toString("utf8").split("\0")[0],h=[u(345,500),u(0,100)].filter(Boolean).join("/"),Q=parseInt(u(124,136).trim()||"0",8);if(!Number.isSafeInteger(Q)||Q<0||Q>512*1024*1024||(a=h===A.entry,a&&(A.binaryBytes&&Q!==A.binaryBytes||Q>256*1024*1024||![0,48].includes(f[156]))))throw w();g=Q,c=(512-Q%512)%512}}throw w()}finally{await s.cancel().catch(()=>{})}}finally{await r.close()}}function Fr(A){let e=ze(A)[Symbol.asyncIterator]();return new ReadableStream({async pull(t){let{value:r,done:n}=await e.next();n?t.close():t.enqueue(r)},async cancel(){await e.return?.()}})}async function At(A={}){let e=Xe(A);if(await dA(e))return e.target;if(e.override)throw w();if(rA.has(e.target))return rA.get(e.target);let t=Jr(e).finally(()=>rA.delete(e.target));return rA.set(e.target,t),t}async function Mr(A,e){for(let t=A;;t=e.dirname(t)){let r=await DA(t);if(!r.isDirectory()||r.isSymbolicLink())return!1;if(e.dirname(t)===t)return!0}}async function et(A={}){let{env:e=process.env,home:t=je(),platform:r=process.platform}=A,n=r==="win32"?NA:xA,s=Ze({env:e,home:t,platform:r,paths:n}),o=n.join(s,"runtime","ffmpeg"),g=n.dirname(o),c=()=>Error("\u63D2\u4EF6\u5DF2\u5378\u8F7D\uFF0C\u4F46\u64AD\u653E\u7EC4\u4EF6\u6E05\u7406\u5931\u8D25\u3002\u8BF7\u5173\u95ED\u64AD\u653E\u5668\u5E76\u68C0\u67E5\u7F13\u5B58\u76EE\u5F55\u6743\u9650\u540E\uFF0C\u91CD\u65B0\u8FD0\u884C uninstall\u3002");if(!n.isAbsolute(s))throw c();try{if(!await Mr(g,n))throw c();let a=await DA(o);a.isDirectory()&&!a.isSymbolicLink()?await T(o,{recursive:!0,force:!0,maxRetries:10,retryDelay:100}):await yr(o);for(let I of P.keys()){let i=n.relative(o,I);i&&!i.startsWith(".."+n.sep)&&!n.isAbsolute(i)&&P.delete(I)}}catch(a){if(a.code==="ENOENT")return{removed:0};throw c()}return await Ue(g).catch(()=>{}),await Ue(s).catch(()=>{}),{removed:1}}async function Jr(A){let{directory:e,target:t,artifact:r}=A,n=e+".lock",s=Date.now()+42e4;await qe(e,{recursive:!0,mode:448});let o=!1;for(;!o;)try{await qe(n,{mode:448}),o=!0}catch(i){if(i.code!=="EEXIST"||Date.now()>s)throw w();if(await dA(A))return t;try{Date.now()-(await Ke(n)).mtimeMs>6e5&&await T(n,{recursive:!0,force:!0})}catch{}await Nr(200)}let g=A.platform==="win32"?NA:xA,c=g.basename(t)+"."+pr(),a=g.join(e,c+".archive"),I=g.join(e,c+".part");try{if(await dA(A))return t;await kr(r,a,A.fetchImpl||fetch),await Sr(r,a,I);let i=await _e(I);if(r.binarySha256&&i!==r.binarySha256||(await mr(I,493),!$e(I,A)))throw w();return A.platform==="win32"&&await T(t,{force:!0}),await vr(I,t),await wr(t+".json",JSON.stringify({owner:xr,schema:1,archiveSha256:r.archiveSha256,binarySha256:i,binaryBytes:(await Ke(t)).size,version:r.version})+`
3
+ `,{mode:384}),P.set(t,yA(t)),t}catch{throw w()}finally{await Promise.all([T(a,{force:!0}),T(I,{force:!0}),T(n,{recursive:!0,force:!0})])}}var nt=SA.default,$=SA.default.sync;function it(A){if(!(!A?.pid||A.exitCode!==null||A.signalCode!==null))if(A.stdin?.destroy(),process.platform==="win32"){let e=kA.join(process.env.SystemRoot||"C:\\Windows","System32","taskkill.exe");$(e,["/pid",String(A.pid),"/t","/f"],{stdio:"ignore",timeout:3e3,windowsHide:!0})}else A.kill()}function j(A,e,{env:t=process.env,home:r=Yr(),platform:n=process.platform,arch:s=process.arch}={}){if(e)return e;if(A==="ffmpeg")return Ve({env:t,home:r,platform:n,arch:s});let{delimiter:o,dirname:g,join:c,isAbsolute:a,extname:I}=n==="win32"?kA:rt,i=Object.keys(t).find(h=>h.toUpperCase()==="PATH")||"PATH",C=[g(process.execPath),...(t[i]||"").split(o).filter(Boolean).map(h=>h.replace(/^"(.*)"$/,"$1"))];n!=="win32"?C.push("/opt/homebrew/bin","/usr/local/bin","/usr/bin","/bin",c(r,".volta/bin"),c(r,".local/bin")):C.push(c(t.APPDATA||c(r,"AppData","Roaming"),"npm"),c(r,".volta","bin"));let f=n!=="win32"||I(A)?[""]:[".exe",".com",".cmd",".bat"],u=C.filter(a).flatMap(h=>f.map(Q=>c(h,A+Q)));A==="codex"&&n==="darwin"&&u.push("/Applications/Codex.app/Contents/Resources/codex");for(let h of u)try{if(Lr(h,n==="win32"?tt.F_OK:tt.X_OK),br(h).isFile())return h}catch{}return A}function ot(){let{delimiter:A,dirname:e}=process.platform==="win32"?kA:rt,t=Object.keys(process.env).find(r=>r.toUpperCase()==="PATH")||"PATH";process.env[t]=[...new Set([e(process.execPath),...(process.env[t]||"").split(A).filter(Boolean)])].join(A),process.env.HONGGUO_CODEX=j("codex",process.env.HONGGUO_CODEX)}import{realpathSync as Kr}from"node:fs";import{relative as Ur,resolve as Or,isAbsolute as zr}from"node:path";import{homedir as Gr}from"node:os";import{posix as Hr,win32 as Rr}from"node:path";import{fileURLToPath as qr}from"node:url";var st=qr(new URL("../../",import.meta.url));function FA({env:A=process.env,home:e=Gr(),platform:t=process.platform}={}){let{join:r}=t==="win32"?Rr:Hr;return A.HONGGUO_DATA_DIR?A.HONGGUO_DATA_DIR:t==="darwin"?r(e,"Library","Application Support","CodexHongguo"):t==="win32"?r(A.LOCALAPPDATA||r(e,"AppData","Local"),"CodexHongguo"):r(A.XDG_DATA_HOME||r(e,".local","share"),"codex-hongguo")}var at=["userPromptSubmit","stop","interrupt"],G=()=>({status:"unknown",events:at.map(A=>({event:A,status:"unknown"}))});function gt({command:A=j("codex",process.env.HONGGUO_CODEX),args:e=["app-server"],cwd:t=process.cwd(),timeoutMs:r=8e3,pluginRoot:n=st,installedId:s}={}){let o=c=>{try{return Kr(c)}catch{return Or(c)}},g=o(n);return new Promise(c=>{let a,I=!1,i="",C=0,f=h=>{I||(I=!0,clearTimeout(u),it(a),c(h))},u=setTimeout(()=>f(G()),r);try{a=nt(A,e,{cwd:t,stdio:["pipe","pipe","ignore"],windowsHide:!0}),a.on("error",()=>f(G())),a.on("exit",()=>f(G())),a.stdin.on("error",()=>f(G())),a.stdout.setEncoding("utf8");let h=Q=>a.stdin.write(JSON.stringify(Q)+`
4
+ `);a.stdout.on("data",Q=>{if(I)return;if(C+=Buffer.byteLength(Q),C>2*1024*1024)return f(G());i+=Q;let B;for(;!I&&(B=i.indexOf(`
5
+ `))>=0;){let v=i.slice(0,B);i=i.slice(B+1);let E;try{E=JSON.parse(v)}catch{continue}if(E.error&&[1,2].includes(E.id))return f(G());if(E.id===1&&E.result&&(h({jsonrpc:"2.0",method:"initialized"}),h({jsonrpc:"2.0",id:2,method:"hooks/list",params:{cwds:[t]}})),E.id===2&&Array.isArray(E.result?.data)){let L=E.result.data.flatMap(p=>Array.isArray(p?.hooks)?p.hooks:[]).filter(p=>typeof p?.pluginId=="string"&&p.pluginId.split("@")[0]==="codex-hongguo").filter(p=>{if(typeof p.sourcePath!="string")return!1;if(s)return p.pluginId===s;let k=Ur(g,o(p.sourcePath));return k&&!k.startsWith("..")&&!zr(k)});if(!L.length)return f(G());let b=at.map(p=>{let k=L.filter(y=>y.eventName===p),AA=k.length?k.some(y=>!y.enabled)?"disabled":k.every(y=>["trusted","managed"].includes(y.trustStatus))?"ready":k.some(y=>["untrusted","modified"].includes(y.trustStatus))?"needs_review":"unknown":"missing";return{event:p,status:AA}});f({status:b.every(p=>p.status==="ready")?"ready":"needs_attention",events:b})}}}),h({jsonrpc:"2.0",id:1,method:"initialize",params:{clientInfo:{name:"hongguo-setup",version:"1"},capabilities:{experimentalApi:!0}}})}catch{f(G())}})}import{lstat as It,rm as Tr,unlink as Pr}from"node:fs/promises";import{homedir as jr}from"node:os";import{posix as Wr,win32 as Xr}from"node:path";async function Ct(A={}){let{env:e=process.env,home:t=jr(),platform:r=process.platform}=A,n=r==="win32"?Xr:Wr,s=n.resolve(FA({env:e,home:t,platform:r})),o=n.resolve(FA({env:{...e,HONGGUO_DATA_DIR:void 0},home:t,platform:r})),g=s===o?[s]:["player.sqlite","player.sqlite-wal","player.sqlite-shm","player.sqlite-journal","media","panel-media","device"].map(a=>n.join(s,a)),c=!1;for(let a of g)try{for(let i=n.dirname(a);;i=n.dirname(i)){let C=await It(i);if(!C.isDirectory()||C.isSymbolicLink())throw Error("Substituted data ancestor");if(n.dirname(i)===i)break}let I=await It(a);I.isDirectory()&&!I.isSymbolicLink()?await Tr(a,{recursive:!0,force:!0,maxRetries:10,retryDelay:100}):await Pr(a)}catch(I){I.code!=="ENOENT"&&(c=!0)}if(c)throw Error("\u63D2\u4EF6\u5DF2\u5378\u8F7D\uFF0C\u4F46\u672C\u5730\u6570\u636E\u6E05\u7406\u5931\u8D25\u3002\u8BF7\u5173\u95ED\u64AD\u653E\u5668\u5E76\u68C0\u67E5\u6570\u636E\u76EE\u5F55\u6743\u9650\u540E\uFF0C\u91CD\u65B0\u8FD0\u884C uninstall\u3002")}var W="hongguo-local",H="codex-hongguo@"+W,ut="mreasonyang/codex-hongguo",ct=A=>typeof A=="string"?A.replace(/^https:\/\/github\.com\//,"").replace(/\.git$/,"").replace(/\/$/,""):A;function ft(A,e=process.env){return t=>{let r=$(A,[...t,"--json"],{env:e,encoding:"utf8",timeout:12e4,windowsHide:!0,maxBuffer:4194304});if(r.status!==0)throw Error("Codex \u6B65\u9AA4\u5931\u8D25\uFF1A"+t.slice(0,3).join(" ")+"\u3002\u8BF7\u5728 Codex \u63D2\u4EF6\u8BBE\u7F6E\u4E2D\u68C0\u67E5\u72B6\u6001\u540E\u91CD\u8BD5\u3002");try{return JSON.parse(r.stdout)}catch{throw Error("Codex \u8FD4\u56DE\u4E86\u65E0\u6CD5\u8BC6\u522B\u7684\u7ED3\u679C\uFF0C\u8BF7\u66F4\u65B0 Codex \u540E\u91CD\u8BD5\u3002")}}}function $r(A){if(/^[\w.-]+\/[\w.-]+$/.test(A)||Vr(A))return A;throw Error("--marketplace \u53EA\u63A5\u53D7 owner/repo \u6216\u73B0\u6709\u672C\u5730\u5E02\u573A\u76EE\u5F55\u3002")}function An({run:A,source:e=ut,dryRun:t=!1,log:r=console.log}){if($r(e),t){r("\u5C06\u4F7F\u7528 Codex \u539F\u751F\u5E02\u573A\u5B89\u88C5 "+H+"\uFF1B\u5E02\u573A\u6765\u6E90\uFF1A"+e),r("\u89C2\u770B\u8FDB\u5EA6\u4FDD\u7559\u5728\u539F\u6570\u636E\u76EE\u5F55\u3002\u5B89\u88C5\u5B8C\u6210\u540E\u9700\u5728 Codex \u4E2D\u5BA1\u67E5\u5E76\u4FE1\u4EFB\u4E09\u4E2A Hooks\u3002");return}let n=A(["plugin","marketplace","list"]).marketplaces?.find(g=>g.name===W),s=n?.marketplaceSource?.source,o=!!n&&ct(s)!==ct(e);o&&A(["plugin","marketplace","remove",W]);try{A(["plugin","marketplace","add",e]),!o&&n?.marketplaceSource?.sourceType==="git"&&A(["plugin","marketplace","upgrade",W]),A(["plugin","add",H])}catch(g){if(o&&s){try{A(["plugin","marketplace","remove",W])}catch{}try{A(["plugin","marketplace","add",s]),A(["plugin","add",H])}catch{throw Error("\u5B89\u88C5\u5931\u8D25\uFF0C\u539F\u5E02\u573A\u672A\u80FD\u81EA\u52A8\u6062\u590D\u3002\u8BF7\u4ECE Codex \u63D2\u4EF6\u8BBE\u7F6E\u91CD\u65B0\u6DFB\u52A0\u539F\u6765\u6E90\uFF1B\u89C2\u770B\u8FDB\u5EA6\u4ECD\u4FDD\u7559\u3002")}}throw g}r("\u7EA2\u679C\u77ED\u5267\u5DF2\u5B89\u88C5\u3002\u8BF7\u5728\u65B0\u7684\u672C\u5730\u804A\u5929\u4E2D\u4F7F\u7528\uFF1B\u66F4\u65B0\u65F6\u5148\u5173\u95ED\u65E7\u64AD\u653E\u5668\u3002")}async function ti(A=process.argv.slice(2)){try{let[e="help",...t]=A;if(e==="--version"){console.log(JSON.parse(Zr(new URL("../../package.json",import.meta.url),"utf8")).version);return}if(["help","--help","-h"].includes(e)){console.log(`\u7EA2\u679C\u77ED\u5267
6
6
  codex-hongguo setup [--dry-run] [--marketplace owner/repo|\u76EE\u5F55]
7
7
  codex-hongguo update [--dry-run] [--marketplace owner/repo|\u76EE\u5F55]
8
8
  codex-hongguo uninstall [--dry-run]
9
9
  codex-hongguo doctor
10
- \u9700\u8981 Node.js >=22.16 \u548C Codex CLI\uFF1B\u64AD\u653E\u7EC4\u4EF6\u7531\u63D2\u4EF6\u81EA\u52A8\u51C6\u5907\u3002`);return}if(!["setup","update","uninstall","doctor"].includes(e))throw Error("\u672A\u77E5\u547D\u4EE4\uFF1B\u8FD0\u884C codex-hongguo --help \u67E5\u770B\u7528\u6CD5\u3002");if(process.platform==="win32"&&process.arch!=="x64")throw Error("Windows \u8BD5\u7528\u7248\u9700\u8981 x64 Node.js\u3002");let[r,n]=process.versions.node.split(".").map(Number);if(r<22||r===22&&n<16)throw Error("\u9700\u8981 Node.js >=22.16\u3002");if(it(),e==="doctor"){if(t.length)throw Error("doctor \u4E0D\u63A5\u53D7\u989D\u5916\u53C2\u6570\u3002");if(_(process.execPath,[Kr(new URL("../../dist/setup/check.mjs",import.meta.url))],{stdio:"inherit",timeout:15e3}).status!==0)throw Error("\u73AF\u5883\u68C0\u67E5\u672A\u5B8C\u6210\u3002");return}let s=Ct,i=!1;for(let a=0;a<t.length;a++)if(t[a]==="--dry-run")i=!0;else if(e!=="uninstall"&&t[a]==="--marketplace"&&t[a+1])s=t[++a];else throw Error("\u65E0\u6CD5\u8BC6\u522B\u547D\u4EE4\u53C2\u6570\uFF1B\u8FD0\u884C codex-hongguo --help \u67E5\u770B\u7528\u6CD5\u3002");let g=j("codex",process.env.HONGGUO_CODEX),C=[["Codex CLI",g]];e!=="uninstall"&&C.push(["npm",j("npm")]);for(let[a,I]of C)if(_(I,["--version"],{stdio:"ignore",timeout:3e3}).status!==0)throw Error("\u672A\u627E\u5230\u53EF\u8FD0\u884C\u7684 "+a+"\u3002\u5B89\u88C5\u540E\u91CD\u65B0\u8FD0\u884C "+e+"\uFF1B\u5DF2\u6709\u63D2\u4EF6\u4E0E\u89C2\u770B\u8FDB\u5EA6\u4FDD\u6301\u539F\u6837\u3002");if(e==="uninstall"){if(i)console.log("\u5C06\u5378\u8F7D "+b+" \u5E76\u6E05\u7406\u672C\u63D2\u4EF6\u7684\u64AD\u653E\u7EC4\u4EF6\u76EE\u5F55\uFF0C\u4FDD\u7559\u89C2\u770B\u8FDB\u5EA6\u3001\u8BBE\u7F6E\u548C\u89C6\u9891\u7F13\u5B58\u3002");else{let a=It(g),I=a(["plugin","list","--marketplace",W]).installed;if(!Array.isArray(I))throw Error("\u65E0\u6CD5\u786E\u8BA4\u63D2\u4EF6\u5B89\u88C5\u72B6\u6001\uFF0C\u8BF7\u66F4\u65B0 Codex \u540E\u91CD\u8BD5\u3002");I.some(o=>o.pluginId===b)&&a(["plugin","remove",b]),await At(),console.log("\u7EA2\u679C\u77ED\u5267\u5DF2\u5378\u8F7D\uFF0C\u64AD\u653E\u7EC4\u4EF6\u76EE\u5F55\u5DF2\u6E05\u7406\uFF1B\u89C2\u770B\u8FDB\u5EA6\u3001\u8BBE\u7F6E\u548C\u89C6\u9891\u7F13\u5B58\u5DF2\u4FDD\u7559\u3002\u8BF7\u6253\u5F00\u65B0\u804A\u5929\u3002")}return}if(i||(console.log("\u6B63\u5728\u51C6\u5907\u64AD\u653E\u7EC4\u4EF6\uFF0C\u9996\u6B21\u4F7F\u7528\u9700\u8981\u8054\u7F51\u4E0B\u8F7D\u2026"),await _e()),zr({run:It(g),source:s,update:e==="update",dryRun:i}),!i){let a=await at({command:g,installedId:b}),I={userPromptSubmit:"UserPromptSubmit",stop:"Stop",interrupt:"Interrupt"},o=a.events.filter(c=>c.status!=="ready").map(c=>I[c.event]);a.status==="ready"?console.log("\u4E09\u4E2A\u56DE\u5408 Hooks \u5747\u5DF2\u4FE1\u4EFB\u5E76\u542F\u7528\u3002"):a.status==="unknown"?console.log("\u6682\u672A\u8BFB\u5230\u6388\u6743\u72B6\u6001\u3002\u8BF7\u6253\u5F00 Codex \u8BBE\u7F6E \u2192 Hooks \u2192 \u7EA2\u679C\u77ED\u5267\uFF0C\u6216\u5728\u64AD\u653E\u5668\u7684\u4F7F\u7528\u6307\u5357\u4E2D\u91CD\u65B0\u68C0\u67E5\u3002"):console.log("\u9700\u8981\u5904\u7406\u56DE\u5408 Hooks\u3002\u8BF7\u6253\u5F00 Codex \u8BBE\u7F6E \u2192 Hooks \u2192 \u7EA2\u679C\u77ED\u5267\uFF0C\u5BA1\u67E5\u5E76\u542F\u7528 "+o.join("\u3001")+"\u3002")}}catch(e){console.error(e.message),process.exitCode=1}}export{It as codexRunner,Ct as defaultSource,zr as install,Gn as main,W as marketplaceName,b as pluginId,Ur as validateSource};
10
+ \u9700\u8981 Node.js >=22.16 \u548C Codex CLI\uFF1B\u64AD\u653E\u7EC4\u4EF6\u7531\u63D2\u4EF6\u81EA\u52A8\u51C6\u5907\u3002`);return}if(!["setup","update","uninstall","doctor"].includes(e))throw Error("\u672A\u77E5\u547D\u4EE4\uFF1B\u8FD0\u884C codex-hongguo --help \u67E5\u770B\u7528\u6CD5\u3002");if(process.platform==="win32"&&process.arch!=="x64")throw Error("Windows \u8BD5\u7528\u7248\u9700\u8981 x64 Node.js\u3002");let[r,n]=process.versions.node.split(".").map(Number);if(r<22||r===22&&n<16)throw Error("\u9700\u8981 Node.js >=22.16\u3002");if(ot(),e==="doctor"){if(t.length)throw Error("doctor \u4E0D\u63A5\u53D7\u989D\u5916\u53C2\u6570\u3002");if($(process.execPath,[_r(new URL("../../dist/setup/check.mjs",import.meta.url))],{stdio:"inherit",timeout:15e3}).status!==0)throw Error("\u73AF\u5883\u68C0\u67E5\u672A\u5B8C\u6210\u3002");return}let s=ut,o=!1;for(let a=0;a<t.length;a++)if(t[a]==="--dry-run")o=!0;else if(e!=="uninstall"&&t[a]==="--marketplace"&&t[a+1])s=t[++a];else throw Error("\u65E0\u6CD5\u8BC6\u522B\u547D\u4EE4\u53C2\u6570\uFF1B\u8FD0\u884C codex-hongguo --help \u67E5\u770B\u7528\u6CD5\u3002");let g=j("codex",process.env.HONGGUO_CODEX),c=[["Codex CLI",g]];e!=="uninstall"&&c.push(["npm",j("npm")]);for(let[a,I]of c)if($(I,["--version"],{stdio:"ignore",timeout:3e3}).status!==0)throw Error("\u672A\u627E\u5230\u53EF\u8FD0\u884C\u7684 "+a+"\u3002\u5B89\u88C5\u540E\u91CD\u65B0\u8FD0\u884C "+e+"\uFF1B\u5DF2\u6709\u63D2\u4EF6\u4E0E\u89C2\u770B\u8FDB\u5EA6\u4FDD\u6301\u539F\u6837\u3002");if(e==="uninstall"){if(o)console.log("\u5C06\u5378\u8F7D "+H+"\uFF0C\u5220\u9664\u64AD\u653E\u7EC4\u4EF6\u3001\u89C2\u770B\u8FDB\u5EA6\u3001\u8BBE\u7F6E\u3001\u89C6\u9891\u7F13\u5B58\u548C\u8BBE\u5907\u6863\u6848\u3002");else{let a=ft(g),I=a(["plugin","list","--marketplace",W]).installed;if(!Array.isArray(I))throw Error("\u65E0\u6CD5\u786E\u8BA4\u63D2\u4EF6\u5B89\u88C5\u72B6\u6001\uFF0C\u8BF7\u66F4\u65B0 Codex \u540E\u91CD\u8BD5\u3002");I.some(C=>C.pluginId===H)&&a(["plugin","remove",H]);let i=[];for(let C of[et,Ct])try{await C()}catch(f){i.push(f.message)}if(i.length)throw Error(i.join(`
11
+ `));console.log("\u7EA2\u679C\u77ED\u5267\u5DF2\u5378\u8F7D\uFF0C\u64AD\u653E\u7EC4\u4EF6\u3001\u89C2\u770B\u8FDB\u5EA6\u3001\u8BBE\u7F6E\u3001\u89C6\u9891\u7F13\u5B58\u548C\u8BBE\u5907\u6863\u6848\u5DF2\u5220\u9664\u3002\u8BF7\u6253\u5F00\u65B0\u804A\u5929\u3002")}return}if(o||(console.log("\u6B63\u5728\u51C6\u5907\u64AD\u653E\u7EC4\u4EF6\uFF0C\u9996\u6B21\u4F7F\u7528\u9700\u8981\u8054\u7F51\u4E0B\u8F7D\u2026"),await At()),An({run:ft(g),source:s,dryRun:o}),!o){console.log("\u56DE\u5408\u8054\u52A8\u9700\u8981\u624B\u52A8\u6388\u6743\uFF1A\u6253\u5F00 Codex \u8BBE\u7F6E \u2192 Hooks \u2192 \u7EA2\u679C\u77ED\u5267\uFF0C\u5BA1\u67E5\u3001\u4FE1\u4EFB\u5E76\u542F\u7528 UserPromptSubmit\u3001Stop\u3001Interrupt\u3002");let a=await gt({command:g,installedId:H}),I={userPromptSubmit:"UserPromptSubmit",stop:"Stop",interrupt:"Interrupt"},i=a.events.filter(C=>C.status!=="ready").map(C=>I[C.event]);a.status==="ready"?console.log("\u4E09\u4E2A\u56DE\u5408 Hooks \u5747\u5DF2\u4FE1\u4EFB\u5E76\u542F\u7528\uFF0C\u65E0\u9700\u91CD\u590D\u6388\u6743\u3002"):a.status==="unknown"?console.log("\u6682\u672A\u786E\u8BA4 Hooks \u6388\u6743\u72B6\u6001\u3002\u8BF7\u6309\u4E0A\u65B9\u6B65\u9AA4\u6838\u5BF9\uFF0C\u518D\u4ECE\u64AD\u653E\u5668\u300C\u8BBE\u7F6E \u2192 \u4F7F\u7528\u6307\u5357\u300D\u91CD\u65B0\u68C0\u67E5\u3002"):console.log("\u8FD8\u9700\u5B8C\u6210 "+i.join("\u3001")+" \u7684\u4FE1\u4EFB\u6216\u542F\u7528\u3002\u5B8C\u6210\u540E\u4ECE\u64AD\u653E\u5668\u300C\u8BBE\u7F6E \u2192 \u4F7F\u7528\u6307\u5357\u300D\u91CD\u65B0\u68C0\u67E5\u3002")}}catch(e){console.error(e.message),process.exitCode=1}}export{ft as codexRunner,ut as defaultSource,An as install,ti as main,W as marketplaceName,H as pluginId,$r as validateSource};
11
12
  /*! Bundled license information:
12
13
 
13
14
  xz-decompress/dist/package/xz-decompress.js: