@kyun.si/codex-hongguo 0.0.27 → 0.0.29

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.27",
3
+ "version": "0.0.29",
4
4
  "description": "在 Codex 会话侧栏观看红果短剧,回合停止时保存进度。",
5
5
  "hooks": "./hooks/hooks.json",
6
6
  "skills": "./skills/",
package/README.en.md CHANGED
@@ -8,20 +8,28 @@ After installation and Hook review, continue working normally. The optional **Wa
8
8
 
9
9
  ## Installation & Setup
10
10
 
11
- Supports macOS and Linux (x64/arm64). Requires Node.js >=22.16 with npm and a Codex CLI supporting npm plugin sources. The plugin prepares its playback component automatically; no separate FFmpeg installation is needed.
11
+ Supports macOS, Linux (x64/arm64), and Windows (x64 Node). Requires Node.js >=22.16 with npm and a Codex CLI supporting npm plugin sources. The plugin prepares its playback component automatically; no separate FFmpeg installation is needed.
12
12
 
13
- Install with npm:
13
+ Install with npm on macOS / Linux:
14
14
 
15
15
  ```sh
16
- npx @kyun.si/codex-hongguo@latest setup
16
+ npx "@kyun.si/codex-hongguo@latest" setup
17
17
  ```
18
18
 
19
+ On Windows PowerShell:
20
+
21
+ ```powershell
22
+ npx.cmd "@kyun.si/codex-hongguo@latest" setup
23
+ ```
24
+
25
+ Keep the package name quoted so PowerShell treats the leading `@` literally. `npx.cmd` invokes the npm command shim directly. See [Windows support](https://github.com/mreasonyang/codex-hongguo/blob/main/docs/windows-support.md) (Chinese) for details and offline installation.
26
+
19
27
  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
28
 
21
29
  ### Post-Install Setup
22
30
 
23
- - **Run the Setup guide**: Run **Setup** from the plugin details view (which invokes `hongguo-setup`), or say `配置红果短剧` in a local conversation. The setup check verifies Node, the progress database, the playback component, and whether all three plugin Hooks are trusted and enabled.
24
- - **Review and trust Hooks**: For task-start and task-end playback control, open Codex Desktop **Settings → Hooks** (`设置 → Hooks`), review and trust Hongguo's `UserPromptSubmit`, `Stop`, and `Interrupt` hooks, and then run the check again. Installation and Setup never trust Hooks automatically on your behalf and never treat past turn records as proof that Hooks are configured; if host trust status cannot be read, it is shown as **Unverified** (`待确认`). You can watch manually before completing Hook setup.
31
+ - **Run the Setup guide**: Run **Setup** from the plugin details view (which invokes `hongguo-setup`), or say `配置红果短剧` in a local conversation. Setup checks Node, the progress database and the playback component, then shows a fixed reminder to check Hook authorization manually in Codex Settings → Hooks.
32
+ - **Review and trust Hooks**: For task-start and task-end playback control, open Codex Desktop **Settings → Hooks** (`设置 → Hooks`), review and trust Hongguo's `UserPromptSubmit`, `Stop`, and `Interrupt` hooks and confirm they are enabled. Installation and Setup show a fixed reminder; they do not query or judge Hook authorization. You can watch manually before completing Hook setup.
25
33
  - **No extra accounts or permissions**: Normal browsing and playback do not require a Hongguo account, API key, or browser automation permissions.
26
34
 
27
35
  ## Screenshots
@@ -64,7 +72,7 @@ The switches are independent, saved across restarts, and shared by all chats. Ot
64
72
 
65
73
  - **No task suggestions**: Enable suggestions, trust all three Hooks, and retry in a new local turn with no visible player. If the catalog returns no candidates or the host does not display the card, use the right-side **+** to open the player.
66
74
  - **Playback component preparation failed**: Check your connection and run the installation command again. The plugin retries preparation automatically.
67
- - **Turn linkage is unverified**: Check all three events in Codex **Settings → Hooks**. A passing environment check does not establish that automatic pausing works; manual playback remains available.
75
+ - **Task-linked playback is not working**: Check all three events in Codex **Settings → Hooks**. A passing environment check does not establish that automatic pausing works; manual playback remains available.
68
76
 
69
77
  - **Playback pauses too often**: Turn off **Pause automatically when a task ends** in the player's Settings and save to keep watching continuously.
70
78
  - **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.
@@ -77,15 +85,17 @@ Close all open player panels and split-view browser tabs before updating or unin
77
85
  Update with:
78
86
 
79
87
  ```sh
80
- npx @kyun.si/codex-hongguo@latest update
88
+ npx "@kyun.si/codex-hongguo@latest" update
81
89
  ```
82
90
 
91
+ In Windows PowerShell, use `npx.cmd` instead of `npx` for the update and uninstall commands, keeping the package name quoted.
92
+
83
93
  Updates preserve viewing progress and settings. Open a new chat afterward and review changed Hooks when prompted.
84
94
 
85
95
  Uninstall with:
86
96
 
87
97
  ```sh
88
- npx @kyun.si/codex-hongguo@latest uninstall
98
+ npx "@kyun.si/codex-hongguo@latest" uninstall
89
99
  ```
90
100
 
91
101
  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.
@@ -95,6 +105,7 @@ The default user data directories below are removed automatically during uninsta
95
105
  | OS | User Data Directory |
96
106
  | --- | --- |
97
107
  | macOS | `~/Library/Application Support/CodexHongguo/` |
108
+ | Windows | `%LOCALAPPDATA%\CodexHongguo\` (defaults to `%USERPROFILE%\AppData\Local\CodexHongguo\`) |
98
109
  | Linux | `codex-hongguo` under `XDG_DATA_HOME` (defaults to `~/.local/share/codex-hongguo/`) |
99
110
 
100
111
  Inside this folder, `player.sqlite` and its WAL/SHM files store progress, turn state, recommendation rotation, catalog and episode metadata, refresh state and settings. `media/` holds prepared full episodes, capped at 40 episodes and 1 GiB with protection for active files. `panel-media/` contains temporary panel fragments with separate cleanup; its size is outside that 1 GiB limit. `device/` holds the upstream SDK's anonymous device profile. Raw hook payloads, prompts and assistant replies are not written to disk. Third-party runtime dependency notices are under `licenses/` in the plugin root.
package/README.md CHANGED
@@ -8,20 +8,28 @@
8
8
 
9
9
  ## 安装与配置
10
10
 
11
- 支持 macOS 和 Linux(x64/arm64)。需要 Node.js >=22.16(含 npm)和支持 npm 插件源的 Codex CLI。播放组件由插件自动准备,无需单独安装 FFmpeg。
11
+ 支持 macOS、Linux(x64/arm64)和 Windows(x64 Node)。需要 Node.js >=22.16(含 npm)和支持 npm 插件源的 Codex CLI。播放组件由插件自动准备,无需单独安装 FFmpeg。
12
12
 
13
- 使用 npm 安装:
13
+ macOS / Linux 使用 npm 安装:
14
14
 
15
15
  ```sh
16
- npx @kyun.si/codex-hongguo@latest setup
16
+ npx "@kyun.si/codex-hongguo@latest" setup
17
17
  ```
18
18
 
19
+ Windows PowerShell 使用:
20
+
21
+ ```powershell
22
+ npx.cmd "@kyun.si/codex-hongguo@latest" setup
23
+ ```
24
+
25
+ 包名的引号必须保留,避免 PowerShell 将 `@` 解析为展开运算符;`npx.cmd` 可直接调用 npm 命令入口。Windows 详细说明和离线安装见 [Windows 支持](https://github.com/mreasonyang/codex-hongguo/blob/main/docs/windows-support.md)。
26
+
19
27
  命令会检查运行环境、自动下载并校验播放组件,再通过 Codex 原生市场安装插件。首次安装需要联网,之后复用本机缓存。安装完成时会提示你到 Codex「设置 → Hooks」审查、信任并启用 `UserPromptSubmit`、`Stop`、`Interrupt`。然后打开新的本地聊天使用。
20
28
 
21
29
  ### 安装后配置
22
30
 
23
- - **运行设置引导(Setup)**:安装后可在插件详情页运行 **Setup**(调用 `hongguo-setup`),或在本地对话中直接说“配置红果短剧”。引导会检查 Node、进度库、播放组件,以及本插件三个 Hooks 是否已信任并启用。
24
- - **审查并信任 Hooks**:任务开始和结束联动需要你在 Codex 桌面 **设置 → Hooks** 中找到红果短剧,审查并信任 `UserPromptSubmit`、`Stop` 和 `Interrupt` 三个事件,完成后重新检查。安装脚本与设置引导不会替用户自动信任 Hooks,也不会把历史回合记录当成配置成功;读取不到宿主信任状态时会显示「待确认」。未完成 Hooks 配置前仍可先手动观看。
31
+ - **运行设置引导(Setup)**:安装后可在插件详情页运行 **Setup**(调用 `hongguo-setup`),或在本地对话中直接说“配置红果短剧”。引导会检查 Node、进度库和播放组件,并固定提示你到 Codex「设置 → Hooks」人工核对三个 Hooks 的授权。
32
+ - **审查并信任 Hooks**:任务开始和结束联动需要你在 Codex 桌面 **设置 → Hooks** 中找到红果短剧,审查并信任 `UserPromptSubmit`、`Stop` 和 `Interrupt` 三个事件并确认已启用。安装脚本与设置引导只提供固定提示,不检测或判断 Hooks 授权状态。未完成 Hooks 配置前仍可先手动观看。
25
33
  - **账号与权限**:日常浏览和观看不需要红果账号、API Key 或浏览器自动化权限。
26
34
 
27
35
  ## 界面预览
@@ -64,7 +72,7 @@ npx @kyun.si/codex-hongguo@latest setup
64
72
 
65
73
  - **没有任务推荐**:确认推荐开关已开启、三个 Hooks 已信任,并在没有可见播放器的新本地回合中重试。片库没有返回候选或宿主未展示卡片时,仍可从右侧 + 打开播放器。
66
74
  - **播放组件准备失败**:检查网络后重新运行安装命令,插件会自动重试准备。
67
- - **回合联动显示「待确认」**:到 Codex「设置 → Hooks」核对三个事件。环境检查通过不等于回合联动已生效;未完成时可先手动观看。
75
+ - **回合联动未生效**:到 Codex「设置 → Hooks」核对三个事件。环境检查通过不等于回合联动已生效;未完成时可先手动观看。
68
76
  - **任务结束时频繁暂停**:在播放器「设置」中关闭「任务结束自动暂停」并保存,即可持续播放。
69
77
  - **新任务开始没有续播**:确认「任务开始自动播放」已开启并保存,且播放器在对应聊天中保持打开、已选中剧集。新默认值不会覆盖此前手动保存的关闭设置。
70
78
  - **点推荐后没有开播**:任务仍在执行时应自动静音播放;如果推荐所属任务在开播前已结束,会提示点击播放继续。宿主限制自动播放时,也会显示明确提示。
@@ -76,15 +84,17 @@ npx @kyun.si/codex-hongguo@latest setup
76
84
  更新命令:
77
85
 
78
86
  ```sh
79
- npx @kyun.si/codex-hongguo@latest update
87
+ npx "@kyun.si/codex-hongguo@latest" update
80
88
  ```
81
89
 
90
+ Windows PowerShell 将上述更新和卸载命令中的 `npx` 写为 `npx.cmd`,并保留包名引号。
91
+
82
92
  更新会保留观看进度和设置。完成后打开新聊天,并按提示重新审查 Hooks。
83
93
 
84
94
  卸载命令:
85
95
 
86
96
  ```sh
87
- npx @kyun.si/codex-hongguo@latest uninstall
97
+ npx "@kyun.si/codex-hongguo@latest" uninstall
88
98
  ```
89
99
 
90
100
  卸载会删除本插件的播放组件、观看进度、设置、全部视频缓存和设备档案,包括历史组件和下载残片;系统或外部自行配置的 FFmpeg 不会删除。完成后打开新聊天。只想暂时停用并保留数据时,可从 Codex 插件设置中禁用。
@@ -94,6 +104,7 @@ npx @kyun.si/codex-hongguo@latest uninstall
94
104
  | 系统 | 用户数据目录 |
95
105
  | --- | --- |
96
106
  | macOS | `~/Library/Application Support/CodexHongguo/` |
107
+ | Windows | `%LOCALAPPDATA%\CodexHongguo\`(缺省为 `%USERPROFILE%\AppData\Local\CodexHongguo\`) |
97
108
  | Linux | `XDG_DATA_HOME` 下的 `codex-hongguo`(缺省为 `~/.local/share/codex-hongguo/`) |
98
109
 
99
110
  目录内 `player.sqlite`(及其 WAL/SHM 文件)保存观看进度、回合状态、推荐轮换、片库与分集元数据、刷新状态及播放器设置;`media/` 保存本机处理后的整集缓存(上限 40 集、1 GiB,活动文件有保护期);`panel-media/` 保存单独回收的临时面板分片,其占用不计入整集缓存的 1 GiB 上限;`device/` 为上游 SDK 管理的匿名设备档案。本插件不将 Hook 原始输入、提示词和模型回复写入磁盘。第三方运行时依赖的许可证位于插件根目录 `licenses/`。
package/bin/run-node.exe CHANGED
Binary file
package/dist/cli/main.mjs CHANGED
@@ -1,14 +1,12 @@
1
1
  import {createRequire as __cr} from 'node:module';const require=__cr(import.meta.url);
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 Ht(A){return A=A.replace(IA,"^$1"),A}function Yt(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=Ht;CA.exports.argument=Yt});var le=m((Cn,he)=>{"use strict";he.exports=/^#!(.*)/});var Ee=m((cn,Qe)=>{"use strict";var Gt=le();Qe.exports=(A="")=>{let e=A.match(Gt);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 Ge=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,AGFzbQEAAAABOApgAX8Bf2ABfwBgAABgA39/fwF/YAABf2ACf38AYAN/f34BfmACf38Bf2AEf39/fwF/YAN/f38AAyEgAAABAgMDAwMEAQUAAgMCBgcIBwUDAAMHAQcABwcBAwkFAwEAAgYIAX8BQfCgBAsHTgUGbWVtb3J5AgAOY3JlYXRlX2NvbnRleHQACA9kZXN0cm95X2NvbnRleHQACQxzdXBwbHlfaW5wdXQACg9nZXRfbmV4dF9vdXRwdXQACwqQYCDfAgEFf0EAIQECQCAAQQdqIgJBEEkNAEEBIQEgAkEDdiIDQQJGDQBBAiEBIAJBIEkNAEEDIQEgA0EERg0AQQQhASACQTBJDQBBBSEBIANBBkYNAEEGIQEgAkHIAEkNAEEHIQEgAkHYAEkNAEEIIQEgAkGIAUkNAEEJIQEgAkGIAkkNACAAEIGAgIAAIgBBCGpBACAAGw8LAkACQCABQQJ0QcCIgIAAaiIEKAIAIgANAEEAIQACQAJAQQAoAuSIgIAAIgJFDQBBACACKAIANgLkiICAAAwBC0EAEIGAgIAAIgJFDQILIAJBgIB8cSIAIAJBCHZB/wFxIgJyIAE6AAAgACACQQh0ckGAAmohAEEAIQJBACABQQJ0QYCIgIAAaigCACIDayEFIAMhAQNAIAAgBWoiACACNgIAIAAhAiABIANqIgFBgQJJDQALIAQgADYCAAsgBCAAKAIANgIACyAAC/QHAQh/QQAoArCIgIAAIQECQAJAAkACQAJAQQAtALSIgIAARQ0AQQBBADoAtIiAgAAgAUUNAUGwiICAACECA0ACQAJAIAFBCGoiAyABKAIEIgRqIgVBCHZB/wFxIgYNACABIQIMAQsCQANAIAVBgIB8cSAGai0AAEH+AUcNAUGwiICAACEGA0AgBiIHKAIAIgYgBUcNAAsgByAFKAIANgIAIAEgBCAFKAIEakEIaiIENgIEIAcgAiACIAVGGyECIAMgBGoiBUEIdkH/AXEiBg0ACwsgAigCACECCyACKAIAIgENAAtBACgCsIiAgAAhAQsgAUUNACAAQYcCakGAfnEhCEF/IQJBsIiAgAAhBEEAIQNBsIiAgAAhBgNAIAYhBwJAIAEiBigCBCIFIABJDQAgBSACTw0AIAUhAiAHIQQgBiEDIAVBCGogCEcNACAHIQQgBSECIAYhAwwECyAGKAIAIgENAAsgAw0CDAELQbCIgIAAIQQLPwBBEHQhASAAQYgCaiEHQQAhAwJAAkBBACgCuIiAgAAiAkUNAEEAIQUgASEGDAELQQAgAUHwoISAAEH//wNqQYCAfHEiBmsiAjYCuIiAgAAgAiEFCwJAIAcgBU0NACACQQF2IgIgByAFayIHIAIgB0sbQf//A2oiB0EQdkAAQX9GDQJBAEEAKAK4iICAACAHQYCAfHEiA2o2AriIgIAACyAGRQ0BIAZB/wE6AAEgBkEAKAKwiICAADYCgAIgBkGEAmogAyAFakGAgHxxQfh9aiICNgIAIAZBgAJqIQMLIANBgIB8cSIGIANBCHZB/wFxckH/AToAACAEIAMoAgA2AgACQCACIABrQYB+cSIFDQAgAw8LIAMhAQJAIAYgBUF/cyADQQhqIgQgAmoiB2pBgIB8cUYNACAEQf//A3EhBQJAIABB9/0DSw0AIAYgBEEIdkH/AXFqQf4BOgAAIANBACgCsIiAgAA2AgAgA0GAgAQgBWsiBTYCBEEAIAM2ArCIgIAAEIOAgIAAIAZBhIIEaiACIAVrQfh9aiIFNgIAIAZBgYAEakH/AToAACAGQYCCBGohASAFIABrQYB+cSEFDAELIAIgBWogACAFakH//3tqQYCAfHFrQYCAeGohBSADIQELIAEgASgCBCAFazYCBCAFQfgBaiEGIAcgBWtBCHZB/wFxIQUCQANAIAYiB0GAfmohBiAFIgQNAUEBIQUgB0H4AUcNAAsLAkAgB0H4AUYNACACIANqIAZrQYCAfHEiBSAEakH+AToAACAFIARBCHRqIgVBACgCsIiAgAA2AgAgBSAGNgIEQQAgBTYCsIiAgAAQg4CAgAALIAEPC0EAC3wBAn8CQCAARQ0AAkAgAEGAgHxxIABBCHZB/wFxciIBLQAAIgJB/wFHDQAgAEF4aiIAQQAoArCIgIAANgIAQQAgADYCsIiAgAAgAUH+AToAAEEAQQE6ALSIgIAADwsgACACQQJ0QcCIgIAAaiICKAIANgIAIAIgADYCAAsLawECfwJAQQAoArCIgIAAIgAoAgRB/wFLDQAgAEGAgHxxIgEgAEEIdkH/AXEiAHJBCToAAEEAQQAoArCIgIAAKAIANgKwiICAACABIABBCHRyIgBBACgC5IiAgAA2AgBBACAANgLkiICAAAsLTgECfwJAIAAgAUYNACACRQ0AA0ACQCAALQAAIgMgAS0AACIERg0AQQFBfyADIARLGw8LIAFBAWohASAAQQFqIQAgAkF/aiICDQALC0EAC3gBAX8CQAJAIAAgAU8NACACRQ0BIAAhAwNAIAMgAS0AADoAACABQQFqIQEgA0EBaiEDIAJBf2oiAg0ADAILCyAAIAFNDQAgAkUNACABQX9qIQEgAEF/aiEDA0AgAyACaiABIAJqLQAAOgAAIAJBf2oiAg0ACwsgAAssAQF/AkAgAkUNACAAIQMDQCADIAE6AAAgA0EBaiEDIAJBf2oiAg0ACwsgAAt/AQF/AkACQCABIAByIAJyQQNxRQ0AIAJFDQEgACEDA0AgAyABLQAAOgAAIAFBAWohASADQQFqIQMgAkF/aiICDQAMAgsLIAJBBEkNACACQQJ2IQIgACEDA0AgAyABKAIANgIAIAFBBGohASADQQRqIQMgAkF/aiICDQALCyAAC4gBAQJ/AkBBAC0A6IiAgAANAEEAQQE6AOiIgIAAEIyAgIAAEI6AgIAAC0GggAgQgICAgAAiAEGAgAQ2AgBBAkGAgIAgEJeAgIAAIQEgAEEUakKAgICAgIDAADcCACAAQRBqIABBoIAEajYCACAAQQhqQgA3AgAgACAAQSBqNgIEIAAgATYCHCAACxUAIAAoAhwQmICAgAAgABCCgICAAAsWACAAQQxqIAE2AgAgAEEIakEANgIACxsAIAAoAhwgAEEEaiAAQQxqKAIARRCWgICAAAtUAQN/QQAhAANAQQghASAAIQIDQEEAIAJBAXFrQaCG4u1+cSACQQF2cyECIAFBf2oiAQ0ACyAAQQJ0QfCIgIAAaiACNgIAIABBAWoiAEGAAkcNAAsLTgACQCABRQ0AIAJBf3MhAgNAIAJB/wFxIAAtAABzQQJ0QfCIgIAAaigCACACQQh2cyECIABBAWohACABQX9qIgENAAsgAkF/cyECCyACC10DAX4BfwF+QgAhAANAQQghASAAIQIDQEIAIAJCAYN9QsKenLzd8pW2SYMgAkIBiIUhAiABQX9qIgENAAsgAKdBA3RB8JCAgABqIAI3AwAgAEIBfCIAQoACUg0ACwtPAAJAIAFFDQAgAkJ/hSECA0AgAkL/AYMgADEAAIWnQQN0QfCQgIAAaikDACACQgiIhSECIABBAWohACABQX9qIgENAAsgAkJ/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 Hr}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,He=new D(32);for(l=0;l<32;++l)He[l]=5;var l;var or=Z(V,9,1);var sr=Z(He,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(GA){var RA=t.length;if(GA>RA){var qA=new D(Math.max(RA*2,GA));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),H=y.subarray(p);h=QA(LA),Q=QA(H),f=Z(LA,h,1),u=Z(H,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 H=ir[sA];if(sA>3){var X=Me[sA];H+=EA(A,i)&(1<<X)-1,i+=X}if(i>B){c&&d(0);break}g&&a(C+131072);var HA=C+bA;if(C<H){var YA=s-H,Bt=Math.min(H,HA);for(YA+C<0&&d(3);C<Bt;++C)t[C]=r[YA+C]}for(;C<HA;++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=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 Ye(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(Ge(),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=Ye(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=Hr(),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 Yr}from"node:os";import{posix as Gr,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=Yr(),platform:t=process.platform}={}){let{join:r}=t==="win32"?Rr:Gr;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"],Y=()=>({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(Y()),r);try{a=nt(A,e,{cwd:t,stdio:["pipe","pipe","ignore"],windowsHide:!0}),a.on("error",()=>f(Y())),a.on("exit",()=>f(Y())),a.stdin.on("error",()=>f(Y())),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(Y());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(Y());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(Y());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(Y())}})}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",G="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 "+G+"\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",G])}catch(g){if(o&&s){try{A(["plugin","marketplace","remove",W])}catch{}try{A(["plugin","marketplace","add",s]),A(["plugin","add",G])}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
2
+ var Qt=Object.create;var UA=Object.defineProperty;var lt=Object.getOwnPropertyDescriptor;var Et=Object.getOwnPropertyNames;var Bt=Object.getPrototypeOf,pt=Object.prototype.hasOwnProperty;var N=(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 p=(A,e)=>()=>{try{return e||A((e={exports:{}}).exports,e),e.exports}catch(t){throw e=0,t}};var wt=(A,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Et(e))!pt.call(A,n)&&n!==t&&UA(A,n,{get:()=>e[n],enumerable:!(r=lt(e,n))||r.enumerable});return A};var oA=(A,e,t)=>(t=A!=null?Qt(Bt(A)):{},wt(e||!A||!A.__esModule?UA(t,"default",{value:A,enumerable:!0}):t,A));var jA=p((Zr,PA)=>{PA.exports=TA;TA.sync=mt;var zA=N("fs");function vt(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 OA(A,e,t){return!A.isSymbolicLink()&&!A.isFile()?!1:vt(e,t)}function TA(A,e,t){zA.stat(A,function(r,n){t(r,r?!1:OA(n,A,e))})}function mt(A,e){return OA(zA.statSync(A),A,e)}});var $A=p((Vr,VA)=>{VA.exports=XA;XA.sync=yt;var WA=N("fs");function XA(A,e,t){WA.stat(A,function(r,n){t(r,r?!1:ZA(n,e))})}function yt(A,e){return ZA(WA.statSync(A),e)}function ZA(A,e){return A.isFile()&&Dt(A,e)}function Dt(A,e){var t=A.mode,r=A.uid,n=A.gid,i=e.uid!==void 0?e.uid:process.getuid&&process.getuid(),o=e.gid!==void 0?e.gid:process.getgid&&process.getgid(),a=parseInt("100",8),C=parseInt("010",8),g=parseInt("001",8),I=a|C,s=t&g||t&C&&n===o||t&a&&r===i||t&I&&i===0;return s}});var Ae=p((_r,_A)=>{var $r=N("fs"),Z;process.platform==="win32"||global.TESTING_WINDOWS?Z=jA():Z=$A();_A.exports=sA;sA.sync=dt;function sA(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){sA(A,e||{},function(i,o){i?n(i):r(o)})})}Z(A,e||{},function(r,n){r&&(r.code==="EACCES"||e&&e.ignoreErrors)&&(r=null,n=!1),t(r,n)})}function dt(A,e){try{return Z.sync(A,e||{})}catch(t){if(e&&e.ignoreErrors||t.code==="EACCES")return!1;throw t}}});var se=p((An,oe)=>{var L=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",ee=N("path"),xt=L?";":":",te=Ae(),re=A=>Object.assign(new Error(`not found: ${A}`),{code:"ENOENT"}),ne=(A,e)=>{let t=e.colon||xt,r=A.match(/\//)||L&&A.match(/\\/)?[""]:[...L?[process.cwd()]:[],...(e.path||process.env.PATH||"").split(t)],n=L?e.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",i=L?n.split(t):[""];return L&&A.indexOf(".")!==-1&&i[0]!==""&&i.unshift(""),{pathEnv:r,pathExt:i,pathExtExe:n}},ie=(A,e,t)=>{typeof e=="function"&&(t=e,e={}),e||(e={});let{pathEnv:r,pathExt:n,pathExtExe:i}=ne(A,e),o=[],a=g=>new Promise((I,s)=>{if(g===r.length)return e.all&&o.length?I(o):s(re(A));let c=r[g],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,g,0))}),C=(g,I,s)=>new Promise((c,f)=>{if(s===n.length)return c(a(I+1));let u=n[s];te(g+u,{pathExt:i},(h,l)=>{if(!h&&l)if(e.all)o.push(g+u);else return c(g+u);return c(C(g,I,s+1))})});return t?a(0).then(g=>t(null,g),t):a(0)},Nt=(A,e)=>{e=e||{};let{pathEnv:t,pathExt:r,pathExtExe:n}=ne(A,e),i=[];for(let o=0;o<t.length;o++){let a=t[o],C=/^".*"$/.test(a)?a.slice(1,-1):a,g=ee.join(C,A),I=!C&&/^\.[\\\/]/.test(A)?A.slice(0,2)+g:g;for(let s=0;s<r.length;s++){let c=I+r[s];try{if(te.sync(c,{pathExt:n}))if(e.all)i.push(c);else return c}catch{}}}if(e.all&&i.length)return i;if(e.nothrow)return null;throw re(A)};oe.exports=ie;ie.sync=Nt});var ge=p((en,aA)=>{"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"};aA.exports=ae;aA.exports.default=ae});var fe=p((tn,ce)=>{"use strict";var Ie=N("path"),kt=se(),St=ge();function Ce(A,e){let t=A.options.env||process.env,r=process.cwd(),n=A.options.cwd!=null,i=n&&process.chdir!==void 0&&!process.chdir.disabled;if(i)try{process.chdir(A.options.cwd)}catch{}let o;try{o=kt.sync(A.command,{path:t[St({env:t})],pathExt:e?Ie.delimiter:void 0})}catch{}finally{i&&process.chdir(r)}return o&&(o=Ie.resolve(n?A.options.cwd:"",o)),o}function Ft(A){return Ce(A)||Ce(A,!0)}ce.exports=Ft});var CA=p((rn,IA)=>{"use strict";var gA=/([()\][%!^"`<>&|;, *?])/g;function Mt(A){return A=A.replace(gA,"^$1"),A}function Jt(A,e){return A=`${A}`,A=A.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),A=A.replace(/(?=(\\+?)?)\1$/,"$1$1"),A=`"${A}"`,A=A.replace(gA,"^$1"),e&&(A=A.replace(gA,"^$1")),A}IA.exports.command=Mt;IA.exports.argument=Jt});var he=p((nn,ue)=>{"use strict";ue.exports=/^#!(.*)/});var le=p((on,Qe)=>{"use strict";var Lt=he();Qe.exports=(A="")=>{let e=A.match(Lt);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=p((sn,Ee)=>{"use strict";var cA=N("fs"),Yt=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 Yt(t.toString())}Ee.exports=Gt});var me=p((an,ve)=>{"use strict";var Ht=N("path"),pe=fe(),we=CA(),bt=Be(),Rt=process.platform==="win32",qt=/\.(?:com|exe)$/i,Kt=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function Ut(A){A.file=pe(A);let e=A.file&&bt(A.file);return e?(A.args.unshift(A.file),A.command=e,pe(A)):A.file}function zt(A){if(!Rt)return A;let e=Ut(A),t=!qt.test(e);if(A.options.forceShell||t){let r=Kt.test(e);A.command=Ht.normalize(A.command),A.command=we.command(A.command),A.args=A.args.map(i=>we.argument(i,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 Ot(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:zt(r)}ve.exports=Ot});var de=p((gn,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 Tt(A,e){if(!fA)return;let t=A.emit;A.emit=function(r,n){if(r==="exit"){let i=ye(n,e);if(i)return t.call(A,"error",i)}return t.apply(A,arguments)}}function ye(A,e){return fA&&A===1&&!e.file?uA(e.original,"spawn"):null}function Pt(A,e){return fA&&A===1&&!e.file?uA(e.original,"spawnSync"):null}De.exports={hookChildProcess:Tt,verifyENOENT:ye,verifyENOENTSync:Pt,notFoundError:uA}});var ke=p((In,Y)=>{"use strict";var xe=N("child_process"),hA=me(),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 jt(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}Y.exports=Ne;Y.exports.spawn=Ne;Y.exports.sync=jt;Y.exports._parse=hA;Y.exports._enoent=QA});var He=p((W,mA)=>{(function(e,t){typeof W=="object"&&typeof mA=="object"?mA.exports=t(N("stream/web")):typeof define=="function"&&define.amd?define(["stream/web"],t):typeof W=="object"?W["xz-decompress"]=t(N("stream/web")):e["xz-decompress"]=t(e["stream/web"])})(W,A=>(()=>{"use strict";var e=[,(i=>{i.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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"}),(i=>{i.exports=A})],t={};function r(i){var o=t[i];if(o!==void 0)return o.exports;var a=t[i]={exports:{}};return e[i](a,a.exports,r),a.exports}r.d=(i,o)=>{for(var a in o)r.o(o,a)&&!r.o(i,a)&&Object.defineProperty(i,a,{enumerable:!0,get:o[a]})},r.o=(i,o)=>Object.prototype.hasOwnProperty.call(i,o),r.r=i=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(i,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(i,"__esModule",{value:!0})};var n={};return(()=>{r.r(n),r.d(n,{XzReadableStream:()=>s});var i=r(1);let o=globalThis.ReadableStream||r(2).ReadableStream,a=0,C=1;class g{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!==a&&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 s extends o{static _moduleInstancePromise;static _moduleInstance;static _contextMutex=new I;static async _getModuleInstance(){let f=i.replace("data:application/wasm;base64,",""),u=Uint8Array.from(atob(f),E=>E.charCodeAt(0)).buffer,h={},l=await WebAssembly.instantiate(u,h);s._moduleInstance=l.instance}constructor(f){let u,h=null,l=f.getReader();super({async start(E){await s._contextMutex.acquire();try{s._moduleInstance||await(s._moduleInstancePromise||(s._moduleInstancePromise=s._getModuleInstance())),u=new g(s._moduleInstance)}catch(y){throw s._contextMutex.release(),y}},async pull(E){try{if(u.needsMoreInput()){if(h===null||h.byteLength===0){let{done:U,value:z}=await l.read();U||(h=z)}let w=Math.min(u.bufSize,h.byteLength);u.supplyInput(h.subarray(0,w)),h=h.subarray(w)}let y=u.getNextOutput();E.enqueue(y.outChunk),u.resetOutputBuffer(),y.finished&&(u.dispose(),s._contextMutex.release(),E.close())}catch(y){throw u&&u.dispose(),s._contextMutex.release(),y}},cancel(){try{return u&&u.dispose(),l.cancel()}finally{s._contextMutex.release()}}})}}})(),n})())});import{readFileSync as Or,existsSync as Tr}from"node:fs";import{fileURLToPath as Pr}from"node:url";var rt=oA(ke(),1),kA=oA(CA(),1);import{accessSync as Sr,constants as et,statSync as Fr}from"node:fs";import{homedir as Mr}from"node:os";import{posix as tt,win32 as $}from"node:path";import{spawn as kn,spawnSync as Jr}from"node:child_process";import{createHash as Ue,randomUUID as Qr}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 lr,rename as Er,rm as b,chmod as Br,stat as qe,unlink as pr,rmdir as Ke}from"node:fs/promises";import{lstatSync as wr}from"node:fs";import{homedir as Pe}from"node:os";import{posix as xA,win32 as NA}from"node:path";import{spawnSync as vr}from"node:child_process";import{createRequire as Wt}from"module";var Xt=Wt("/"),H,Zt,Vt;try{H=Xt("worker_threads"),Zt=H.Worker,Vt=H.isMarkedAsUntransferable}catch{}var m=Uint8Array,G=Uint16Array,$t=Int32Array,Se=new m([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 m([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]),_t=new m([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 G(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 i=t[r];i<t[r+1];++i)n[i]=i-t[r]<<5|r;return{b:t,r:n}},H=Me(Se,2),Je=H.b,Ar=H.r;Je[28]=258,Ar[258]=28;var Le=Me(Fe,0),er=Le.b,cn=Le.r,pA=new G(32768);for(Q=0;Q<32768;++Q)S=(Q&43690)>>1|(Q&21845)<<1,S=(S&52428)>>2|(S&13107)<<2,S=(S&61680)>>4|(S&3855)<<4,pA[Q]=((S&65280)>>8|(S&255)<<8)>>1;var S,Q,P=(function(A,e,t){for(var r=A.length,n=0,i=new G(e);n<r;++n)A[n]&&++i[A[n]-1];var o=new G(e);for(n=1;n<e;++n)o[n]=o[n-1]+i[n-1]<<1;var a;if(t){a=new G(1<<e);var C=15-e;for(n=0;n<r;++n)if(A[n])for(var g=n<<4|A[n],I=e-A[n],s=o[A[n]-1]++<<I,c=s|(1<<I)-1;s<=c;++s)a[pA[s]>>C]=g}else for(a=new G(r),n=0;n<r;++n)A[n]&&(a[n]=pA[o[A[n]-1]++]>>15-A[n]);return a}),j=new m(288);for(Q=0;Q<144;++Q)j[Q]=8;var Q;for(Q=144;Q<256;++Q)j[Q]=9;var Q;for(Q=256;Q<280;++Q)j[Q]=7;var Q;for(Q=280;Q<288;++Q)j[Q]=8;var Q,Ye=new m(32);for(Q=0;Q<32;++Q)Ye[Q]=5;var Q;var tr=P(j,9,1);var rr=P(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},x=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)},nr=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 m(A.subarray(e,t))};var ir=["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"],v=function(A,e,t){var r=new Error(e||ir[A]);if(r.code=A,Error.captureStackTrace&&Error.captureStackTrace(r,v),!t)throw r;return r},or=function(A,e,t,r){var n=A.length,i=r?r.length:0;if(!n||e.f&&!e.l)return t||new m(0);var o=!t,a=o||e.i!=2,C=e.i;o&&(t=new m(n*3));var g=function(RA){var qA=t.length;if(RA>qA){var KA=new m(Math.max(qA*2,RA));KA.set(t),t=KA}},I=e.f||0,s=e.p||0,c=e.b||0,f=e.l,u=e.d,h=e.m,l=e.n,E=n*8;do{if(!f){I=x(A,s,1);var y=x(A,s+1,3);if(s+=3,y)if(y==1)f=tr,u=rr,h=9,l=5;else if(y==2){var eA=x(A,s,31)+257,FA=x(A,s+10,15)+4,MA=eA+x(A,s+5,31)+1;s+=14;for(var O=new m(MA),tA=new m(19),D=0;D<FA;++D)tA[_t[D]]=x(A,s+D*3,7);s+=FA*3;for(var JA=lA(tA),Ct=(1<<JA)-1,ct=P(tA,JA,1),D=0;D<MA;){var LA=ct[x(A,s,Ct)];s+=LA&15;var w=LA>>4;if(w<16)O[D++]=w;else{var M=0,X=0;for(w==16?(X=3+x(A,s,3),s+=2,M=O[D-1]):w==17?(X=3+x(A,s,7),s+=3):w==18&&(X=11+x(A,s,127),s+=7);X--;)O[D++]=M}}var YA=O.subarray(0,eA),F=O.subarray(eA);h=lA(YA),l=lA(F),f=P(YA,h,1),u=P(F,l,1)}else v(1);else{var w=nr(s)+4,U=A[w-4]|A[w-3]<<8,z=w+U;if(z>n){C&&v(0);break}a&&g(c+U),t.set(A.subarray(w,z),c),e.b=c+=U,e.p=s=z*8,e.f=I;continue}if(s>E){C&&v(0);break}}a&&g(c+131072);for(var ft=(1<<h)-1,ut=(1<<l)-1,rA=s;;rA=s){var M=f[EA(A,s)&ft],J=M>>4;if(s+=M&15,s>E){C&&v(0);break}if(M||v(2),J<256)t[c++]=J;else if(J==256){rA=s,f=null;break}else{var GA=J-254;if(J>264){var D=J-257,T=Se[D];GA=x(A,s,(1<<T)-1)+Je[D],s+=T}var nA=u[EA(A,s)&ut],iA=nA>>4;nA||v(3),s+=nA&15;var F=er[iA];if(iA>3){var T=Fe[iA];F+=EA(A,s)&(1<<T)-1,s+=T}if(s>E){C&&v(0);break}a&&g(c+131072);var HA=c+GA;if(c<F){var bA=i-F,ht=Math.min(F,HA);for(bA+c<0&&v(3);c<ht;++c)t[c]=r[bA+c]}for(;c<HA;++c)t[c]=t[c-F]}}e.l=f,e.p=rA,e.b=c,e.f=I,f&&(I=1,e.m=h,e.d=u,e.n=l)}while(!I);return c!=t.length&&o?vA(t,0,c):t.subarray(0,c)};var sr=new m(0);var k=function(A,e){return A[e]|A[e+1]<<8},d=function(A,e){return(A[e]|A[e+1]<<8|A[e+2]<<16|A[e+3]<<24)>>>0},BA=function(A,e){return d(A,e)+d(A,e+4)*4294967296};function ar(A,e){return or(A,{i:2},e&&e.out,e&&e.dictionary)}var wA=typeof TextDecoder<"u"&&new TextDecoder,gr=0;try{wA.decode(sr,{stream:!0}),gr=1}catch{}var Ir=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=Ir(A),i=n.s,t=n.r;return t.length&&v(8),i}}var cr=function(A,e){return e+30+k(A,e+26)+k(A,e+28)},fr=function(A,e,t){var r=k(A,e+28),n=k(A,e+30),i=Cr(A.subarray(e+46,e+46+r),!(k(A,e+8)&2048)),o=e+46+r,a=ur(A,o,n,t,d(A,e+20),d(A,e+24),d(A,e+42)),C=a[0],g=a[1],I=a[2];return[k(A,e+10),C,g,i,o+n+k(A,e+32),I]},ur=function(A,e,t,r,n,i,o){var a=n==4294967295,C=i==4294967295,g=o==4294967295,I=e+t,s=a+C+g;if(r&&s){for(;e+4<I;e+=4+k(A,e+2))if(k(A,e)==1)return[a?BA(A,e+4+8*C):n,C?BA(A,e+4):i,g?BA(A,e+4+8*(C+a)):o,1];r<2&&v(13)}return[n,i,o,0]};function Ge(A,e){for(var t={},r=A.length-22;d(A,r)!=101010256;--r)(!r||A.length-r>65558)&&v(13);var n=k(A,r+8);if(!n)return{};var i=d(A,r+16),o=d(A,r-20)==117853008;if(o){var a=d(A,r-12);o=d(A,a)==101075792,o&&(n=d(A,a+32),i=d(A,a+48))}for(var C=e&&e.filter,g=0;g<n;++g){var I=fr(A,i,o),s=I[0],c=I[1],f=I[2],u=I[3],h=I[4],l=I[5],E=cr(A,l);i=h,(!C||C({name:u,size:c,originalSize:f,compression:s}))&&(s?s==8?t[u]=ar(A.subarray(E,E+c),{out:new m(f)}):v(14,"unknown compression type "+s):t[u]=vA(A,E,E+c))}return t}var je=oA(He(),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 R=new Map,V=new Map,mr="@kyun.si/codex-hongguo",B=()=>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"),yr=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,i=r==="win32"?NA:xA;if(e.HONGGUO_FFMPEG){if(!i.isAbsolute(e.HONGGUO_FFMPEG))throw B();return{...A,env:e,platform:r,target:e.HONGGUO_FFMPEG,override:!0}}let o=(A.artifacts||be)[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 a=Xe({env:e,home:t,platform:r,paths:i}),C=i.join(a,"runtime","ffmpeg",o.archiveSha256.slice(0,16),r+"-"+n);return{...A,env:e,platform:r,artifact:o,directory:C,target:i.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 yA(A){try{let e=wr(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):vr(A,["-version"],{stdio:"ignore",timeout:5e3,windowsHide:!0}).status===0}async function DA(A){let{target:e,artifact:t}=A;if(R.get(e)&&R.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 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)?(R.set(e,yA(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),i=new URL(A.url),o;for(let I=0;I<=6;I++){if(i.protocol!=="https:"||i.username||i.password||i.port||!r.has(i.hostname))throw B();if(o=await t(i,{redirect:"manual",signal:n}),![301,302,303,307,308].includes(o.status))break;let s=o.headers.get("location");if(await o.body?.cancel(),!s||I===6)throw B();i=new URL(s,i)}if(!o.ok||!o.body||Number(o.headers.get("content-length"))>A.archiveBytes)throw await o.body?.cancel(),B();let a=await Oe(e,"wx",384),C=Ue("sha256"),g=0;try{for await(let I of o.body){if(g+=I.length,g>A.archiveBytes)throw B();C.update(I),await a.writeFile(I)}if(g!==A.archiveBytes||C.digest("hex")!==A.archiveSha256)throw B()}finally{await a.close()}}async function dr(A,e,t){let r=await Oe(t,"wx",384);try{if(A.format==="zip"){let c=Ge(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 B();await r.writeFile(c);return}let n=new je.default.XzReadableStream(xr(e)),i=n.getReader(),o=Buffer.alloc(0),a=0,C=0,g=!1,I=0;try{for(;;){let{value:s,done:c}=await i.read();if(c)break;if(I+=s.length,I>1024*1024*1024)throw B();for(o=Buffer.concat([o,s]);o.length;)if(a){let f=Math.min(a,o.length);if(g&&await r.writeFile(o.subarray(0,f)),o=o.subarray(f),a-=f,!a&&g)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=(E,y)=>f.subarray(E,y).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||(g=h===A.entry,g&&(A.binaryBytes&&l!==A.binaryBytes||l>256*1024*1024||![0,48].includes(f[156]))))throw B();a=l,C=(512-l%512)%512}}throw B()}finally{await i.cancel().catch(()=>{})}}finally{await r.close()}}function xr(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 B();if(V.has(e.target))return V.get(e.target);let t=kr(e).finally(()=>V.delete(e.target));return V.set(e.target,t),t}async function Nr(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,i=Xe({env:e,home:t,platform:r,paths:n}),o=n.join(i,"runtime","ffmpeg"),a=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(i))throw C();try{if(!await Nr(a,n))throw C();let g=await dA(o);g.isDirectory()&&!g.isSymbolicLink()?await b(o,{recursive:!0,force:!0,maxRetries:10,retryDelay:100}):await pr(o);for(let I of R.keys()){let s=n.relative(o,I);s&&!s.startsWith(".."+n.sep)&&!n.isAbsolute(s)&&R.delete(I)}}catch(g){if(g.code==="ENOENT")return{removed:0};throw C()}return await Ke(a).catch(()=>{}),await Ke(i).catch(()=>{}),{removed:1}}async function kr(A){let{directory:e,target:t,artifact:r}=A,n=e+".lock",i=Date.now()+42e4;await Re(e,{recursive:!0,mode:448});let o=!1;for(;!o;)try{await Re(n,{mode:448}),o=!0}catch(s){if(s.code!=="EEXIST"||Date.now()>i)throw B();if(await DA(A))return t;try{Date.now()-(await qe(n)).mtimeMs>6e5&&await b(n,{recursive:!0,force:!0})}catch{}await yr(200)}let a=A.platform==="win32"?NA:xA,C=a.basename(t)+"."+Qr(),g=a.join(e,C+".archive"),I=a.join(e,C+".part");try{if(await DA(A))return t;await Dr(r,g,A.fetchImpl||fetch),await dr(r,g,I);let s=await Ve(I);if(r.binarySha256&&s!==r.binarySha256||(await Br(I,493),!$e(I,A)))throw B();return A.platform==="win32"&&await b(t,{force:!0}),await Er(I,t),await lr(t+".json",JSON.stringify({owner:mr,schema:1,archiveSha256:r.archiveSha256,binarySha256:s,binaryBytes:(await qe(t)).size,version:r.version})+`
3
+ `,{mode:384}),R.set(t,yA(t)),t}catch{throw B()}finally{await Promise.all([b(g,{force:!0}),b(I,{force:!0}),b(n,{recursive:!0,force:!0})])}}function Lr(A,e,t={}){if(process.platform!=="win32"||!/\.(?:cmd|bat)$/i.test(A))return null;let r=$.join(t.env?.SystemRoot||process.env.SystemRoot||"C:\\Windows","System32","cmd.exe"),n=[kA.default.command($.normalize(A)),...e.map(i=>kA.default.argument(i,!0))].join(" ");return{shell:r,args:["/d","/s","/v:off","/c",'"'+n+'"'],options:{...t,windowsVerbatimArguments:!0}}}function _(A,e=[],t){let r=Lr(A,e,t);return r?Jr(r.shell,r.args,r.options):rt.default.sync(A,e,t)}function AA(A,e,{env:t=process.env,home:r=Mr(),platform:n=process.platform,arch:i=process.arch}={}){if(e)return e;if(A==="ffmpeg")return Ze({env:t,home:r,platform:n,arch:i});let{delimiter:o,dirname:a,join:C,isAbsolute:g,extname:I}=n==="win32"?$:tt,s=Object.keys(t).find(h=>h.toUpperCase()==="PATH")||"PATH",c=[a(process.execPath),...(t[s]||"").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(g).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(Sr(h,n==="win32"?et.F_OK:et.X_OK),Fr(h).isFile())return h}catch{}return A}function nt(){let{delimiter:A,dirname:e}=process.platform==="win32"?$: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=AA("codex",process.env.HONGGUO_CODEX)}var it="\u8BF7\u5728 Codex \u8BBE\u7F6E \u2192 Hooks \u2192 \u7EA2\u679C\u77ED\u5267\u4E2D\u68C0\u67E5\u6388\u6743\uFF0C\u5BA1\u67E5\u3001\u4FE1\u4EFB\u5E76\u542F\u7528 UserPromptSubmit\u3001Stop\u3001Interrupt\u3002";import{lstat as ot,rm as Rr,unlink as qr}from"node:fs/promises";import{homedir as Kr}from"node:os";import{posix as Ur,win32 as zr}from"node:path";import{homedir as Yr}from"node:os";import{posix as Gr,win32 as Hr}from"node:path";import{fileURLToPath as br}from"node:url";var Gn=br(new URL("../../",import.meta.url));function SA({env:A=process.env,home:e=Yr(),platform:t=process.platform}={}){let{join:r}=t==="win32"?Hr:Gr;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")}async function st(A={}){let{env:e=process.env,home:t=Kr(),platform:r=process.platform}=A,n=r==="win32"?zr:Ur,i=n.resolve(SA({env:e,home:t,platform:r})),o=n.resolve(SA({env:{...e,HONGGUO_DATA_DIR:void 0},home:t,platform:r})),a=i===o?[i]:["player.sqlite","player.sqlite-wal","player.sqlite-shm","player.sqlite-journal","media","panel-media","device"].map(g=>n.join(i,g)),C=!1;for(let g of a)try{for(let s=n.dirname(g);;s=n.dirname(s)){let c=await ot(s);if(!c.isDirectory()||c.isSymbolicLink())throw Error("Substituted data ancestor");if(n.dirname(s)===s)break}let I=await ot(g);I.isDirectory()&&!I.isSymbolicLink()?await Rr(g,{recursive:!0,force:!0,maxRetries:10,retryDelay:100}):await qr(g)}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 q="hongguo-local",K="codex-hongguo@"+q,It="mreasonyang/codex-hongguo",at=A=>typeof A=="string"?A.replace(/^https:\/\/github\.com\//,"").replace(/\.git$/,"").replace(/\/$/,""):A;function gt(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 jr(A){if(/^[\w.-]+\/[\w.-]+$/.test(A)||Tr(A))return A;throw Error("--marketplace \u53EA\u63A5\u53D7 owner/repo \u6216\u73B0\u6709\u672C\u5730\u5E02\u573A\u76EE\u5F55\u3002")}function Wr({run:A,source:e=It,dryRun:t=!1,log:r=console.log}){if(jr(e),t){r("\u5C06\u4F7F\u7528 Codex \u539F\u751F\u5E02\u573A\u5B89\u88C5 "+K+"\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(a=>a.name===q),i=n?.marketplaceSource?.source,o=!!n&&at(i)!==at(e);o&&A(["plugin","marketplace","remove",q]);try{A(["plugin","marketplace","add",e]),!o&&n?.marketplaceSource?.sourceType==="git"&&A(["plugin","marketplace","upgrade",q]),A(["plugin","add",K])}catch(a){if(o&&i){try{A(["plugin","marketplace","remove",q])}catch{}try{A(["plugin","marketplace","add",i]),A(["plugin","add",K])}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 a}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 Xn(A=process.argv.slice(2)){try{let[e="help",...t]=A;if(e==="--version"){console.log(JSON.parse(Or(new URL("../../package.json",import.meta.url),"utf8")).version);return}if(["help","--help","-h"].includes(e)){console.log(`\u7EA2\u679C\u77ED\u5267
6
4
  codex-hongguo setup [--dry-run] [--marketplace owner/repo|\u76EE\u5F55]
7
5
  codex-hongguo update [--dry-run] [--marketplace owner/repo|\u76EE\u5F55]
8
6
  codex-hongguo uninstall [--dry-run]
9
7
  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(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 "+G+"\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===G)&&a(["plugin","remove",G]);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:G}),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\u5728 Codex \u8BBE\u7F6E \u2192 Hooks \u6838\u5BF9\u3002"):console.log("\u8FD8\u9700\u5B8C\u6210 "+i.join("\u3001")+" \u7684\u4FE1\u4EFB\u6216\u542F\u7528\u3002\u8BF7\u5728 Codex \u8BBE\u7F6E \u2192 Hooks \u5B8C\u6210\u6388\u6743\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,G as pluginId,$r as validateSource};
8
+ \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 \u9700\u8981 x64 Node.js\uFF0C\u8BF7\u5B89\u88C5 x64 \u7248\u672C\u540E\u91CD\u8BD5\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(nt(),e==="doctor"){if(t.length)throw Error("doctor \u4E0D\u63A5\u53D7\u989D\u5916\u53C2\u6570\u3002");if(_(process.execPath,[Pr(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 i=It,o=!1;for(let g=0;g<t.length;g++)if(t[g]==="--dry-run")o=!0;else if(e!=="uninstall"&&t[g]==="--marketplace"&&t[g+1])i=t[++g];else throw Error("\u65E0\u6CD5\u8BC6\u522B\u547D\u4EE4\u53C2\u6570\uFF1B\u8FD0\u884C codex-hongguo --help \u67E5\u770B\u7528\u6CD5\u3002");let a=AA("codex",process.env.HONGGUO_CODEX),C=[["Codex CLI",a]];e!=="uninstall"&&C.push(["npm",AA("npm")]);for(let[g,I]of C)if(_(I,["--version"],{stdio:"ignore",timeout:3e3}).status!==0)throw Error("\u672A\u627E\u5230\u53EF\u8FD0\u884C\u7684 "+g+"\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 "+K+"\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 g=gt(a),I=g(["plugin","list","--marketplace",q]).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===K)&&g(["plugin","remove",K]);let s=[];for(let c of[At,st])try{await c()}catch(f){s.push(f.message)}if(s.length)throw Error(s.join(`
9
+ `));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}o||(console.log("\u6B63\u5728\u51C6\u5907\u64AD\u653E\u7EC4\u4EF6\uFF0C\u9996\u6B21\u4F7F\u7528\u9700\u8981\u8054\u7F51\u4E0B\u8F7D\u2026"),await _e()),Wr({run:gt(a),source:i,dryRun:o}),o||console.log(it)}catch(e){console.error(e.message),process.exitCode=1}}export{gt as codexRunner,It as defaultSource,Wr as install,Xn as main,q as marketplaceName,K as pluginId,jr as validateSource};
12
10
  /*! Bundled license information:
13
11
 
14
12
  xz-decompress/dist/package/xz-decompress.js: