@walkhi/code-relax 0.1.0-beta.29 → 0.1.0-beta.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (731) hide show
  1. package/README.md +12 -3
  2. package/dist/bin/codex-remote.mjs +54 -37
  3. package/dist/bin/manage-relay-admin.mjs +20 -20
  4. package/dist/bin/migrate-relay-db.mjs +109 -109
  5. package/dist/bin/publish-android-release.mjs +58 -0
  6. package/dist/bin/self-relay-admin.mjs +8 -8
  7. package/dist/bin/self-relay-demo.mjs +33 -33
  8. package/dist/bin/self-relay-server.mjs +66 -64
  9. package/dist/build-platform.json +1 -0
  10. package/dist/get-lan-networks.ps1 +40 -40
  11. package/dist/shared/file-mentions.cjs +12 -0
  12. package/dist/shared/message-delivery.cjs +17 -1
  13. package/dist/shared/p2p-data-channel.cjs +72 -50
  14. package/dist/shared/p2p-diagnostics.cjs +28 -28
  15. package/dist/shared/p2p-file-channel.cjs +3 -3
  16. package/dist/shared/plan-pricing.cjs +32 -0
  17. package/dist/shared/server-requests.cjs +17 -1
  18. package/dist/skills/code-relax/SKILL.md +3 -3
  19. package/dist/src/background-process.mjs +18 -18
  20. package/dist/src/code-browser.mjs +7 -8
  21. package/dist/src/dots-chat-server.mjs +50 -1
  22. package/dist/src/dots-room-client.mjs +2 -2
  23. package/dist/src/dots-task-catalog.mjs +22 -3
  24. package/dist/src/dots-task-files.mjs +52 -0
  25. package/dist/src/execution-health.mjs +26 -26
  26. package/dist/src/lan-socket-server.mjs +2 -2
  27. package/dist/src/managed-app-server.mjs +9 -6
  28. package/dist/src/message-images.mjs +9 -9
  29. package/dist/src/onboarding.mjs +9 -26
  30. package/dist/src/plan-pricing.mjs +47 -0
  31. package/dist/src/platform/README.md +11 -11
  32. package/dist/src/platform/codex-protocol.mjs +46 -0
  33. package/dist/src/platform/codex-runtime.mjs +3 -0
  34. package/dist/src/platform/credential-store.mjs +3 -0
  35. package/dist/src/platform/desktop-host.mjs +3 -0
  36. package/dist/src/platform/desktop-project-registration.mjs +3 -0
  37. package/dist/src/platform/desktop-project-store.mjs +149 -0
  38. package/dist/src/platform/linux/README.md +3 -3
  39. package/dist/src/platform/macos/README.md +3 -3
  40. package/dist/src/platform/macos/codex-runtime.mjs +125 -0
  41. package/dist/src/platform/macos/credential-store.mjs +10 -0
  42. package/dist/src/platform/macos/desktop-host.mjs +82 -0
  43. package/dist/src/platform/macos/desktop-project-registration.mjs +10 -0
  44. package/dist/src/platform/macos/network-info.mjs +28 -0
  45. package/dist/src/platform/macos/project-locations.mjs +8 -0
  46. package/dist/src/platform/macos/resident-startup.mjs +84 -0
  47. package/dist/src/platform/macos/retained-runtime.mjs +127 -0
  48. package/dist/src/platform/macos/service-host.mjs +18 -0
  49. package/dist/src/platform/macos/system.mjs +29 -0
  50. package/dist/src/platform/macos/user-environment.mjs +7 -0
  51. package/dist/src/platform/native-package.mjs +46 -0
  52. package/dist/src/platform/network-info.mjs +3 -0
  53. package/dist/src/platform/path-identity.mjs +5 -0
  54. package/dist/src/platform/posix/runtime-paths.mjs +25 -0
  55. package/dist/src/platform/project-locations.mjs +3 -0
  56. package/dist/src/platform/runtime-paths.mjs +8 -0
  57. package/dist/src/platform/select.mjs +5 -0
  58. package/dist/src/platform/service-host.mjs +3 -0
  59. package/dist/src/platform/user-environment.mjs +3 -0
  60. package/dist/src/platform/windows/IsolatedProcess.cs +79 -79
  61. package/dist/src/platform/windows/background-process.mjs +30 -30
  62. package/dist/src/platform/windows/codex-runtime.mjs +2 -40
  63. package/dist/src/platform/windows/desktop-helper.mjs +179 -0
  64. package/dist/src/platform/windows/desktop-project-registration.mjs +3 -152
  65. package/dist/src/platform/windows/desktop-runtime.ps1 +10 -10
  66. package/dist/src/platform/windows/desktop-shortcuts.ps1 +7 -7
  67. package/dist/src/platform/windows/network-info.mjs +34 -34
  68. package/dist/src/platform/windows/resident-start.js +20 -20
  69. package/dist/src/platform/windows/resident-start.ps1 +7 -7
  70. package/dist/src/platform/windows/resident-startup.ps1 +83 -83
  71. package/dist/src/platform/windows/resolve-state-root.ps1 +14 -14
  72. package/dist/src/platform/windows/runtime-paths.mjs +20 -20
  73. package/dist/src/platform/windows/rustdesk-video-probe.mjs +168 -0
  74. package/dist/src/platform/windows/service-host.mjs +11 -11
  75. package/dist/src/platform/windows/start-hidden-console.ps1 +49 -49
  76. package/dist/src/platform/windows/stop-desktop.ps1 +22 -22
  77. package/dist/src/platform/windows/user-environment.mjs +50 -50
  78. package/dist/src/platform/windows/user-environment.ps1 +41 -41
  79. package/dist/src/project-create.mjs +4 -4
  80. package/dist/src/runtime-discovery.mjs +47 -43
  81. package/dist/src/self-relay/account-connections.mjs +52 -52
  82. package/dist/src/self-relay/admin-cloud.mjs +101 -101
  83. package/dist/src/self-relay/admin-server.mjs +74 -74
  84. package/dist/src/self-relay/admin-state.mjs +127 -127
  85. package/dist/src/self-relay/android-releases.mjs +61 -0
  86. package/dist/src/self-relay/client.mjs +61 -61
  87. package/dist/src/self-relay/connector.mjs +36 -20
  88. package/dist/src/self-relay/debug-allowlist.mjs +33 -33
  89. package/dist/src/self-relay/demo.mjs +6 -6
  90. package/dist/src/self-relay/device-store.mjs +84 -84
  91. package/dist/src/self-relay/lan-authorizations.mjs +42 -42
  92. package/dist/src/self-relay/lifecycle.mjs +250 -250
  93. package/dist/src/self-relay/long-pairing.mjs +40 -40
  94. package/dist/src/self-relay/mysql-state.mjs +105 -105
  95. package/dist/src/self-relay/p2p-probe.mjs +13 -6
  96. package/dist/src/self-relay/server.mjs +19 -9
  97. package/dist/src/self-relay/usage-daily.mjs +55 -55
  98. package/dist/src/self-relay/windows-route-helper.mjs +75 -75
  99. package/dist/src/self-relay/wire.mjs +36 -36
  100. package/dist/src/server.mjs +132 -32
  101. package/dist/src/service-control.mjs +82 -82
  102. package/dist/src/service-doctor.mjs +51 -13
  103. package/dist/src/service-health.mjs +33 -33
  104. package/dist/src/service-install.mjs +10 -7
  105. package/dist/src/service-lifecycle.mjs +1 -1
  106. package/dist/src/service-restart.mjs +81 -81
  107. package/dist/src/shared-app-server.mjs +16 -7
  108. package/dist/src/shared-recovery.mjs +146 -144
  109. package/dist/src/skill-install.mjs +51 -51
  110. package/dist/src/thread-title-generation.mjs +150 -150
  111. package/dist/src/turn-model-history.mjs +47 -47
  112. package/dist/tools/rtc-route-helper.ps1 +99 -99
  113. package/dist/tools/start-rtc-route-helper.ps1 +15 -15
  114. package/dist/web/vendor/markdown-it.LICENSE.txt +22 -22
  115. package/dist/web/vendor/markdown-it.umd.min.js +13 -13
  116. package/package.json +47 -49
  117. package/tools/postinstall.mjs +127 -127
  118. package/node_modules/@img/colour/LICENSE.md +0 -82
  119. package/node_modules/@img/colour/README.md +0 -15
  120. package/node_modules/@img/colour/color.cjs +0 -1596
  121. package/node_modules/@img/colour/index.cjs +0 -1
  122. package/node_modules/@img/colour/index.d.ts +0 -929
  123. package/node_modules/@img/colour/package.json +0 -58
  124. package/node_modules/@img/sharp-win32-x64/LICENSE +0 -191
  125. package/node_modules/@img/sharp-win32-x64/README.md +0 -59
  126. package/node_modules/@img/sharp-win32-x64/index.cjs +0 -1
  127. package/node_modules/@img/sharp-win32-x64/lib/libvips-42.dll +0 -0
  128. package/node_modules/@img/sharp-win32-x64/lib/libvips-cpp-8.18.6.dll +0 -0
  129. package/node_modules/@img/sharp-win32-x64/lib/sharp-win32-x64-0.35.4.node +0 -0
  130. package/node_modules/@img/sharp-win32-x64/package.json +0 -40
  131. package/node_modules/@img/sharp-win32-x64/versions.json +0 -30
  132. package/node_modules/@node-datachannel/win32-x64-msvc/node_datachannel.node +0 -0
  133. package/node_modules/@node-datachannel/win32-x64-msvc/package.json +0 -20
  134. package/node_modules/ansi-regex/index.d.ts +0 -37
  135. package/node_modules/ansi-regex/index.js +0 -10
  136. package/node_modules/ansi-regex/license +0 -9
  137. package/node_modules/ansi-regex/package.json +0 -55
  138. package/node_modules/ansi-regex/readme.md +0 -78
  139. package/node_modules/ansi-styles/index.d.ts +0 -345
  140. package/node_modules/ansi-styles/index.js +0 -163
  141. package/node_modules/ansi-styles/license +0 -9
  142. package/node_modules/ansi-styles/package.json +0 -56
  143. package/node_modules/ansi-styles/readme.md +0 -152
  144. package/node_modules/camelcase/index.d.ts +0 -63
  145. package/node_modules/camelcase/index.js +0 -76
  146. package/node_modules/camelcase/license +0 -9
  147. package/node_modules/camelcase/package.json +0 -43
  148. package/node_modules/camelcase/readme.md +0 -99
  149. package/node_modules/cliui/CHANGELOG.md +0 -76
  150. package/node_modules/cliui/LICENSE.txt +0 -14
  151. package/node_modules/cliui/README.md +0 -115
  152. package/node_modules/cliui/index.js +0 -354
  153. package/node_modules/cliui/package.json +0 -65
  154. package/node_modules/color-convert/CHANGELOG.md +0 -54
  155. package/node_modules/color-convert/LICENSE +0 -21
  156. package/node_modules/color-convert/README.md +0 -68
  157. package/node_modules/color-convert/conversions.js +0 -839
  158. package/node_modules/color-convert/index.js +0 -81
  159. package/node_modules/color-convert/package.json +0 -48
  160. package/node_modules/color-convert/route.js +0 -97
  161. package/node_modules/color-name/LICENSE +0 -8
  162. package/node_modules/color-name/README.md +0 -11
  163. package/node_modules/color-name/index.js +0 -152
  164. package/node_modules/color-name/package.json +0 -28
  165. package/node_modules/decamelize/index.js +0 -13
  166. package/node_modules/decamelize/license +0 -21
  167. package/node_modules/decamelize/package.json +0 -38
  168. package/node_modules/decamelize/readme.md +0 -48
  169. package/node_modules/detect-libc/LICENSE +0 -201
  170. package/node_modules/detect-libc/README.md +0 -163
  171. package/node_modules/detect-libc/index.d.ts +0 -14
  172. package/node_modules/detect-libc/lib/detect-libc.js +0 -313
  173. package/node_modules/detect-libc/lib/elf.js +0 -39
  174. package/node_modules/detect-libc/lib/filesystem.js +0 -51
  175. package/node_modules/detect-libc/lib/process.js +0 -24
  176. package/node_modules/detect-libc/package.json +0 -44
  177. package/node_modules/dijkstrajs/.travis.yml +0 -4
  178. package/node_modules/dijkstrajs/CONTRIBUTING.md +0 -8
  179. package/node_modules/dijkstrajs/LICENSE.md +0 -19
  180. package/node_modules/dijkstrajs/README.md +0 -18
  181. package/node_modules/dijkstrajs/dijkstra.js +0 -165
  182. package/node_modules/dijkstrajs/package.json +0 -60
  183. package/node_modules/dijkstrajs/test/dijkstra.test.js +0 -96
  184. package/node_modules/emoji-regex/LICENSE-MIT.txt +0 -20
  185. package/node_modules/emoji-regex/README.md +0 -73
  186. package/node_modules/emoji-regex/es2015/index.js +0 -6
  187. package/node_modules/emoji-regex/es2015/text.js +0 -6
  188. package/node_modules/emoji-regex/index.d.ts +0 -23
  189. package/node_modules/emoji-regex/index.js +0 -6
  190. package/node_modules/emoji-regex/package.json +0 -50
  191. package/node_modules/emoji-regex/text.js +0 -6
  192. package/node_modules/find-up/index.d.ts +0 -137
  193. package/node_modules/find-up/index.js +0 -89
  194. package/node_modules/find-up/license +0 -9
  195. package/node_modules/find-up/package.json +0 -53
  196. package/node_modules/find-up/readme.md +0 -156
  197. package/node_modules/get-caller-file/LICENSE.md +0 -6
  198. package/node_modules/get-caller-file/README.md +0 -41
  199. package/node_modules/get-caller-file/index.d.ts +0 -2
  200. package/node_modules/get-caller-file/index.js +0 -22
  201. package/node_modules/get-caller-file/index.js.map +0 -1
  202. package/node_modules/get-caller-file/package.json +0 -42
  203. package/node_modules/is-fullwidth-code-point/index.d.ts +0 -17
  204. package/node_modules/is-fullwidth-code-point/index.js +0 -50
  205. package/node_modules/is-fullwidth-code-point/license +0 -9
  206. package/node_modules/is-fullwidth-code-point/package.json +0 -42
  207. package/node_modules/is-fullwidth-code-point/readme.md +0 -39
  208. package/node_modules/locate-path/index.d.ts +0 -83
  209. package/node_modules/locate-path/index.js +0 -65
  210. package/node_modules/locate-path/license +0 -9
  211. package/node_modules/locate-path/package.json +0 -45
  212. package/node_modules/locate-path/readme.md +0 -122
  213. package/node_modules/node-datachannel/.clang-format +0 -17
  214. package/node_modules/node-datachannel/.editorconfig +0 -12
  215. package/node_modules/node-datachannel/.eslintignore +0 -8
  216. package/node_modules/node-datachannel/.eslintrc.json +0 -27
  217. package/node_modules/node-datachannel/.gitmodules +0 -3
  218. package/node_modules/node-datachannel/.prettierignore +0 -7
  219. package/node_modules/node-datachannel/.prettierrc +0 -13
  220. package/node_modules/node-datachannel/API.md +0 -247
  221. package/node_modules/node-datachannel/BULDING.md +0 -26
  222. package/node_modules/node-datachannel/CMakeLists.txt +0 -153
  223. package/node_modules/node-datachannel/LICENSE +0 -373
  224. package/node_modules/node-datachannel/README.md +0 -129
  225. package/node_modules/node-datachannel/dist/cjs/index.cjs +0 -11
  226. package/node_modules/node-datachannel/dist/cjs/index.cjs.map +0 -1
  227. package/node_modules/node-datachannel/dist/cjs/lib/datachannel-stream.cjs +0 -101
  228. package/node_modules/node-datachannel/dist/cjs/lib/datachannel-stream.cjs.map +0 -1
  229. package/node_modules/node-datachannel/dist/cjs/lib/index.cjs +0 -91
  230. package/node_modules/node-datachannel/dist/cjs/lib/index.cjs.map +0 -1
  231. package/node_modules/node-datachannel/dist/cjs/lib/node-datachannel.cjs +0 -94
  232. package/node_modules/node-datachannel/dist/cjs/lib/node-datachannel.cjs.map +0 -1
  233. package/node_modules/node-datachannel/dist/cjs/lib/websocket-server.cjs +0 -45
  234. package/node_modules/node-datachannel/dist/cjs/lib/websocket-server.cjs.map +0 -1
  235. package/node_modules/node-datachannel/dist/cjs/lib/websocket.cjs +0 -8
  236. package/node_modules/node-datachannel/dist/cjs/lib/websocket.cjs.map +0 -1
  237. package/node_modules/node-datachannel/dist/cjs/polyfill/Events.cjs +0 -86
  238. package/node_modules/node-datachannel/dist/cjs/polyfill/Events.cjs.map +0 -1
  239. package/node_modules/node-datachannel/dist/cjs/polyfill/Exception.cjs +0 -34
  240. package/node_modules/node-datachannel/dist/cjs/polyfill/Exception.cjs.map +0 -1
  241. package/node_modules/node-datachannel/dist/cjs/polyfill/RTCCertificate.cjs +0 -34
  242. package/node_modules/node-datachannel/dist/cjs/polyfill/RTCCertificate.cjs.map +0 -1
  243. package/node_modules/node-datachannel/dist/cjs/polyfill/RTCDataChannel.cjs +0 -214
  244. package/node_modules/node-datachannel/dist/cjs/polyfill/RTCDataChannel.cjs.map +0 -1
  245. package/node_modules/node-datachannel/dist/cjs/polyfill/RTCDtlsTransport.cjs +0 -53
  246. package/node_modules/node-datachannel/dist/cjs/polyfill/RTCDtlsTransport.cjs.map +0 -1
  247. package/node_modules/node-datachannel/dist/cjs/polyfill/RTCError.cjs +0 -83
  248. package/node_modules/node-datachannel/dist/cjs/polyfill/RTCError.cjs.map +0 -1
  249. package/node_modules/node-datachannel/dist/cjs/polyfill/RTCIceCandidate.cjs +0 -132
  250. package/node_modules/node-datachannel/dist/cjs/polyfill/RTCIceCandidate.cjs.map +0 -1
  251. package/node_modules/node-datachannel/dist/cjs/polyfill/RTCIceTransport.cjs +0 -94
  252. package/node_modules/node-datachannel/dist/cjs/polyfill/RTCIceTransport.cjs.map +0 -1
  253. package/node_modules/node-datachannel/dist/cjs/polyfill/RTCPeerConnection.cjs +0 -434
  254. package/node_modules/node-datachannel/dist/cjs/polyfill/RTCPeerConnection.cjs.map +0 -1
  255. package/node_modules/node-datachannel/dist/cjs/polyfill/RTCSctpTransport.cjs +0 -59
  256. package/node_modules/node-datachannel/dist/cjs/polyfill/RTCSctpTransport.cjs.map +0 -1
  257. package/node_modules/node-datachannel/dist/cjs/polyfill/RTCSessionDescription.cjs +0 -45
  258. package/node_modules/node-datachannel/dist/cjs/polyfill/RTCSessionDescription.cjs.map +0 -1
  259. package/node_modules/node-datachannel/dist/cjs/polyfill/index.cjs +0 -42
  260. package/node_modules/node-datachannel/dist/cjs/polyfill/index.cjs.map +0 -1
  261. package/node_modules/node-datachannel/dist/esm/index.mjs +0 -8
  262. package/node_modules/node-datachannel/dist/esm/index.mjs.map +0 -1
  263. package/node_modules/node-datachannel/dist/esm/lib/datachannel-stream.mjs +0 -78
  264. package/node_modules/node-datachannel/dist/esm/lib/datachannel-stream.mjs.map +0 -1
  265. package/node_modules/node-datachannel/dist/esm/lib/index.mjs +0 -64
  266. package/node_modules/node-datachannel/dist/esm/lib/index.mjs.map +0 -1
  267. package/node_modules/node-datachannel/dist/esm/lib/node-datachannel.mjs +0 -78
  268. package/node_modules/node-datachannel/dist/esm/lib/node-datachannel.mjs.map +0 -1
  269. package/node_modules/node-datachannel/dist/esm/lib/websocket-server.mjs +0 -43
  270. package/node_modules/node-datachannel/dist/esm/lib/websocket-server.mjs.map +0 -1
  271. package/node_modules/node-datachannel/dist/esm/lib/websocket.mjs +0 -6
  272. package/node_modules/node-datachannel/dist/esm/lib/websocket.mjs.map +0 -1
  273. package/node_modules/node-datachannel/dist/esm/polyfill/Events.mjs +0 -82
  274. package/node_modules/node-datachannel/dist/esm/polyfill/Events.mjs.map +0 -1
  275. package/node_modules/node-datachannel/dist/esm/polyfill/Exception.mjs +0 -28
  276. package/node_modules/node-datachannel/dist/esm/polyfill/Exception.mjs.map +0 -1
  277. package/node_modules/node-datachannel/dist/esm/polyfill/RTCCertificate.mjs +0 -30
  278. package/node_modules/node-datachannel/dist/esm/polyfill/RTCCertificate.mjs.map +0 -1
  279. package/node_modules/node-datachannel/dist/esm/polyfill/RTCDataChannel.mjs +0 -210
  280. package/node_modules/node-datachannel/dist/esm/polyfill/RTCDataChannel.mjs.map +0 -1
  281. package/node_modules/node-datachannel/dist/esm/polyfill/RTCDtlsTransport.mjs +0 -49
  282. package/node_modules/node-datachannel/dist/esm/polyfill/RTCDtlsTransport.mjs.map +0 -1
  283. package/node_modules/node-datachannel/dist/esm/polyfill/RTCError.mjs +0 -79
  284. package/node_modules/node-datachannel/dist/esm/polyfill/RTCError.mjs.map +0 -1
  285. package/node_modules/node-datachannel/dist/esm/polyfill/RTCIceCandidate.mjs +0 -128
  286. package/node_modules/node-datachannel/dist/esm/polyfill/RTCIceCandidate.mjs.map +0 -1
  287. package/node_modules/node-datachannel/dist/esm/polyfill/RTCIceTransport.mjs +0 -89
  288. package/node_modules/node-datachannel/dist/esm/polyfill/RTCIceTransport.mjs.map +0 -1
  289. package/node_modules/node-datachannel/dist/esm/polyfill/RTCPeerConnection.mjs +0 -430
  290. package/node_modules/node-datachannel/dist/esm/polyfill/RTCPeerConnection.mjs.map +0 -1
  291. package/node_modules/node-datachannel/dist/esm/polyfill/RTCSctpTransport.mjs +0 -55
  292. package/node_modules/node-datachannel/dist/esm/polyfill/RTCSctpTransport.mjs.map +0 -1
  293. package/node_modules/node-datachannel/dist/esm/polyfill/RTCSessionDescription.mjs +0 -41
  294. package/node_modules/node-datachannel/dist/esm/polyfill/RTCSessionDescription.mjs.map +0 -1
  295. package/node_modules/node-datachannel/dist/esm/polyfill/index.mjs +0 -27
  296. package/node_modules/node-datachannel/dist/esm/polyfill/index.mjs.map +0 -1
  297. package/node_modules/node-datachannel/dist/types/lib/datachannel-stream.d.ts +0 -24
  298. package/node_modules/node-datachannel/dist/types/lib/index.d.ts +0 -241
  299. package/node_modules/node-datachannel/dist/types/lib/types.d.ts +0 -119
  300. package/node_modules/node-datachannel/dist/types/lib/websocket-server.d.ts +0 -13
  301. package/node_modules/node-datachannel/dist/types/lib/websocket.d.ts +0 -25
  302. package/node_modules/node-datachannel/dist/types/polyfill/Events.d.ts +0 -15
  303. package/node_modules/node-datachannel/dist/types/polyfill/RTCCertificate.d.ts +0 -9
  304. package/node_modules/node-datachannel/dist/types/polyfill/RTCDataChannel.d.ts +0 -29
  305. package/node_modules/node-datachannel/dist/types/polyfill/RTCDtlsTransport.d.ts +0 -15
  306. package/node_modules/node-datachannel/dist/types/polyfill/RTCError.d.ts +0 -17
  307. package/node_modules/node-datachannel/dist/types/polyfill/RTCIceCandidate.d.ts +0 -21
  308. package/node_modules/node-datachannel/dist/types/polyfill/RTCIceTransport.d.ts +0 -30
  309. package/node_modules/node-datachannel/dist/types/polyfill/RTCPeerConnection.d.ts +0 -64
  310. package/node_modules/node-datachannel/dist/types/polyfill/RTCSctpTransport.d.ts +0 -15
  311. package/node_modules/node-datachannel/dist/types/polyfill/RTCSessionDescription.d.ts +0 -10
  312. package/node_modules/node-datachannel/dist/types/polyfill/index.d.ts +0 -26
  313. package/node_modules/node-datachannel/jest.config.ts +0 -14
  314. package/node_modules/node-datachannel/package.json +0 -133
  315. package/node_modules/node-datachannel/rollup.config.mjs +0 -67
  316. package/node_modules/node-datachannel/src/cpp/data-channel-wrapper.cpp +0 -530
  317. package/node_modules/node-datachannel/src/cpp/data-channel-wrapper.h +0 -63
  318. package/node_modules/node-datachannel/src/cpp/ice-udp-mux-listener-wrapper.cpp +0 -172
  319. package/node_modules/node-datachannel/src/cpp/ice-udp-mux-listener-wrapper.h +0 -43
  320. package/node_modules/node-datachannel/src/cpp/main.cpp +0 -58
  321. package/node_modules/node-datachannel/src/cpp/media-audio-wrapper.cpp +0 -457
  322. package/node_modules/node-datachannel/src/cpp/media-audio-wrapper.h +0 -52
  323. package/node_modules/node-datachannel/src/cpp/media-av1packetization.cpp +0 -24
  324. package/node_modules/node-datachannel/src/cpp/media-av1packetization.h +0 -11
  325. package/node_modules/node-datachannel/src/cpp/media-av1rtppacketizer-wrapper.cpp +0 -126
  326. package/node_modules/node-datachannel/src/cpp/media-av1rtppacketizer-wrapper.h +0 -29
  327. package/node_modules/node-datachannel/src/cpp/media-direction.cpp +0 -43
  328. package/node_modules/node-datachannel/src/cpp/media-direction.h +0 -10
  329. package/node_modules/node-datachannel/src/cpp/media-h264rtppacketizer-wrapper.cpp +0 -126
  330. package/node_modules/node-datachannel/src/cpp/media-h264rtppacketizer-wrapper.h +0 -30
  331. package/node_modules/node-datachannel/src/cpp/media-h265rtppacketizer-wrapper.cpp +0 -126
  332. package/node_modules/node-datachannel/src/cpp/media-h265rtppacketizer-wrapper.h +0 -30
  333. package/node_modules/node-datachannel/src/cpp/media-h26xseparator.cpp +0 -32
  334. package/node_modules/node-datachannel/src/cpp/media-h26xseparator.h +0 -11
  335. package/node_modules/node-datachannel/src/cpp/media-mediahandler-helper.cpp +0 -31
  336. package/node_modules/node-datachannel/src/cpp/media-mediahandler-helper.h +0 -11
  337. package/node_modules/node-datachannel/src/cpp/media-pacinghandler-wrapper.cpp +0 -79
  338. package/node_modules/node-datachannel/src/cpp/media-pacinghandler-wrapper.h +0 -28
  339. package/node_modules/node-datachannel/src/cpp/media-rtcpnackresponder-wrapper.cpp +0 -68
  340. package/node_modules/node-datachannel/src/cpp/media-rtcpnackresponder-wrapper.h +0 -28
  341. package/node_modules/node-datachannel/src/cpp/media-rtcpreceivingsession-wrapper.cpp +0 -57
  342. package/node_modules/node-datachannel/src/cpp/media-rtcpreceivingsession-wrapper.h +0 -28
  343. package/node_modules/node-datachannel/src/cpp/media-rtcpsrreporter-wrapper.cpp +0 -93
  344. package/node_modules/node-datachannel/src/cpp/media-rtcpsrreporter-wrapper.h +0 -30
  345. package/node_modules/node-datachannel/src/cpp/media-rtppacketizationconfig-wrapper.cpp +0 -167
  346. package/node_modules/node-datachannel/src/cpp/media-rtppacketizationconfig-wrapper.h +0 -35
  347. package/node_modules/node-datachannel/src/cpp/media-rtppacketizer-wrapper.cpp +0 -95
  348. package/node_modules/node-datachannel/src/cpp/media-rtppacketizer-wrapper.h +0 -30
  349. package/node_modules/node-datachannel/src/cpp/media-track-wrapper.cpp +0 -458
  350. package/node_modules/node-datachannel/src/cpp/media-track-wrapper.h +0 -61
  351. package/node_modules/node-datachannel/src/cpp/media-video-wrapper.cpp +0 -526
  352. package/node_modules/node-datachannel/src/cpp/media-video-wrapper.h +0 -56
  353. package/node_modules/node-datachannel/src/cpp/peer-connection-wrapper.cpp +0 -1298
  354. package/node_modules/node-datachannel/src/cpp/peer-connection-wrapper.h +0 -89
  355. package/node_modules/node-datachannel/src/cpp/rtc-wrapper.cpp +0 -205
  356. package/node_modules/node-datachannel/src/cpp/rtc-wrapper.h +0 -24
  357. package/node_modules/node-datachannel/src/cpp/thread-safe-callback.cpp +0 -57
  358. package/node_modules/node-datachannel/src/cpp/thread-safe-callback.h +0 -47
  359. package/node_modules/node-datachannel/src/cpp/web-socket-server-wrapper.cpp +0 -275
  360. package/node_modules/node-datachannel/src/cpp/web-socket-server-wrapper.h +0 -41
  361. package/node_modules/node-datachannel/src/cpp/web-socket-wrapper.cpp +0 -796
  362. package/node_modules/node-datachannel/src/cpp/web-socket-wrapper.h +0 -63
  363. package/node_modules/node-datachannel/src/index.ts +0 -9
  364. package/node_modules/node-datachannel/src/lib/datachannel-stream.ts +0 -100
  365. package/node_modules/node-datachannel/src/lib/index.ts +0 -290
  366. package/node_modules/node-datachannel/src/lib/node-datachannel.ts +0 -84
  367. package/node_modules/node-datachannel/src/lib/types.ts +0 -169
  368. package/node_modules/node-datachannel/src/lib/websocket-server.ts +0 -37
  369. package/node_modules/node-datachannel/src/lib/websocket.ts +0 -26
  370. package/node_modules/node-datachannel/src/polyfill/Events.ts +0 -82
  371. package/node_modules/node-datachannel/src/polyfill/Exception.ts +0 -37
  372. package/node_modules/node-datachannel/src/polyfill/README.md +0 -41
  373. package/node_modules/node-datachannel/src/polyfill/RTCCertificate.ts +0 -21
  374. package/node_modules/node-datachannel/src/polyfill/RTCDataChannel.ts +0 -225
  375. package/node_modules/node-datachannel/src/polyfill/RTCDtlsTransport.ts +0 -46
  376. package/node_modules/node-datachannel/src/polyfill/RTCError.ts +0 -78
  377. package/node_modules/node-datachannel/src/polyfill/RTCIceCandidate.ts +0 -128
  378. package/node_modules/node-datachannel/src/polyfill/RTCIceTransport.ts +0 -90
  379. package/node_modules/node-datachannel/src/polyfill/RTCPeerConnection.ts +0 -527
  380. package/node_modules/node-datachannel/src/polyfill/RTCSctpTransport.ts +0 -51
  381. package/node_modules/node-datachannel/src/polyfill/RTCSessionDescription.ts +0 -41
  382. package/node_modules/node-datachannel/src/polyfill/index.ts +0 -38
  383. package/node_modules/node-datachannel/tsconfig.json +0 -21
  384. package/node_modules/p-limit/index.d.ts +0 -38
  385. package/node_modules/p-limit/index.js +0 -57
  386. package/node_modules/p-limit/license +0 -9
  387. package/node_modules/p-limit/package.json +0 -52
  388. package/node_modules/p-limit/readme.md +0 -101
  389. package/node_modules/p-locate/index.d.ts +0 -64
  390. package/node_modules/p-locate/index.js +0 -52
  391. package/node_modules/p-locate/license +0 -9
  392. package/node_modules/p-locate/package.json +0 -53
  393. package/node_modules/p-locate/readme.md +0 -90
  394. package/node_modules/p-try/index.d.ts +0 -39
  395. package/node_modules/p-try/index.js +0 -9
  396. package/node_modules/p-try/license +0 -9
  397. package/node_modules/p-try/package.json +0 -42
  398. package/node_modules/p-try/readme.md +0 -58
  399. package/node_modules/path-exists/index.d.ts +0 -28
  400. package/node_modules/path-exists/index.js +0 -23
  401. package/node_modules/path-exists/license +0 -9
  402. package/node_modules/path-exists/package.json +0 -39
  403. package/node_modules/path-exists/readme.md +0 -52
  404. package/node_modules/pngjs/.eslintignore +0 -2
  405. package/node_modules/pngjs/.eslintrc.json +0 -19
  406. package/node_modules/pngjs/.prettierignore +0 -3
  407. package/node_modules/pngjs/LICENSE +0 -20
  408. package/node_modules/pngjs/README.md +0 -429
  409. package/node_modules/pngjs/browser.js +0 -16096
  410. package/node_modules/pngjs/coverage/lcov-report/base.css +0 -354
  411. package/node_modules/pngjs/coverage/lcov-report/bitmapper.js.html +0 -881
  412. package/node_modules/pngjs/coverage/lcov-report/bitpacker.js.html +0 -554
  413. package/node_modules/pngjs/coverage/lcov-report/block-navigation.js +0 -77
  414. package/node_modules/pngjs/coverage/lcov-report/chunkstream.js.html +0 -647
  415. package/node_modules/pngjs/coverage/lcov-report/constants.js.html +0 -176
  416. package/node_modules/pngjs/coverage/lcov-report/crc.js.html +0 -200
  417. package/node_modules/pngjs/coverage/lcov-report/favicon.png +0 -0
  418. package/node_modules/pngjs/coverage/lcov-report/filter-pack.js.html +0 -593
  419. package/node_modules/pngjs/coverage/lcov-report/filter-parse-async.js.html +0 -152
  420. package/node_modules/pngjs/coverage/lcov-report/filter-parse-sync.js.html +0 -143
  421. package/node_modules/pngjs/coverage/lcov-report/filter-parse.js.html +0 -611
  422. package/node_modules/pngjs/coverage/lcov-report/format-normaliser.js.html +0 -359
  423. package/node_modules/pngjs/coverage/lcov-report/index.html +0 -426
  424. package/node_modules/pngjs/coverage/lcov-report/interlace.js.html +0 -365
  425. package/node_modules/pngjs/coverage/lcov-report/packer-async.js.html +0 -230
  426. package/node_modules/pngjs/coverage/lcov-report/packer-sync.js.html +0 -248
  427. package/node_modules/pngjs/coverage/lcov-report/packer.js.html +0 -467
  428. package/node_modules/pngjs/coverage/lcov-report/paeth-predictor.js.html +0 -128
  429. package/node_modules/pngjs/coverage/lcov-report/parser-async.js.html +0 -575
  430. package/node_modules/pngjs/coverage/lcov-report/parser-sync.js.html +0 -404
  431. package/node_modules/pngjs/coverage/lcov-report/parser.js.html +0 -950
  432. package/node_modules/pngjs/coverage/lcov-report/png-sync.js.html +0 -116
  433. package/node_modules/pngjs/coverage/lcov-report/png.js.html +0 -662
  434. package/node_modules/pngjs/coverage/lcov-report/prettify.css +0 -101
  435. package/node_modules/pngjs/coverage/lcov-report/prettify.js +0 -1007
  436. package/node_modules/pngjs/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  437. package/node_modules/pngjs/coverage/lcov-report/sorter.js +0 -169
  438. package/node_modules/pngjs/coverage/lcov-report/sync-inflate.js.html +0 -584
  439. package/node_modules/pngjs/coverage/lcov-report/sync-reader.js.html +0 -215
  440. package/node_modules/pngjs/coverage/lcov.info +0 -2177
  441. package/node_modules/pngjs/lib/bitmapper.js +0 -267
  442. package/node_modules/pngjs/lib/bitpacker.js +0 -158
  443. package/node_modules/pngjs/lib/chunkstream.js +0 -189
  444. package/node_modules/pngjs/lib/constants.js +0 -32
  445. package/node_modules/pngjs/lib/crc.js +0 -40
  446. package/node_modules/pngjs/lib/filter-pack.js +0 -171
  447. package/node_modules/pngjs/lib/filter-parse-async.js +0 -24
  448. package/node_modules/pngjs/lib/filter-parse-sync.js +0 -21
  449. package/node_modules/pngjs/lib/filter-parse.js +0 -177
  450. package/node_modules/pngjs/lib/format-normaliser.js +0 -93
  451. package/node_modules/pngjs/lib/interlace.js +0 -95
  452. package/node_modules/pngjs/lib/packer-async.js +0 -50
  453. package/node_modules/pngjs/lib/packer-sync.js +0 -56
  454. package/node_modules/pngjs/lib/packer.js +0 -129
  455. package/node_modules/pngjs/lib/paeth-predictor.js +0 -16
  456. package/node_modules/pngjs/lib/parser-async.js +0 -165
  457. package/node_modules/pngjs/lib/parser-sync.js +0 -108
  458. package/node_modules/pngjs/lib/parser.js +0 -290
  459. package/node_modules/pngjs/lib/png-sync.js +0 -12
  460. package/node_modules/pngjs/lib/png.js +0 -194
  461. package/node_modules/pngjs/lib/sync-inflate.js +0 -168
  462. package/node_modules/pngjs/lib/sync-reader.js +0 -45
  463. package/node_modules/pngjs/package.json +0 -73
  464. package/node_modules/qrcode/README.md +0 -770
  465. package/node_modules/qrcode/bin/qrcode +0 -159
  466. package/node_modules/qrcode/helper/to-sjis-browser.js +0 -2
  467. package/node_modules/qrcode/helper/to-sjis.js +0 -105
  468. package/node_modules/qrcode/lib/browser.js +0 -76
  469. package/node_modules/qrcode/lib/can-promise.js +0 -7
  470. package/node_modules/qrcode/lib/core/alignment-pattern.js +0 -83
  471. package/node_modules/qrcode/lib/core/alphanumeric-data.js +0 -59
  472. package/node_modules/qrcode/lib/core/bit-buffer.js +0 -37
  473. package/node_modules/qrcode/lib/core/bit-matrix.js +0 -65
  474. package/node_modules/qrcode/lib/core/byte-data.js +0 -30
  475. package/node_modules/qrcode/lib/core/error-correction-code.js +0 -135
  476. package/node_modules/qrcode/lib/core/error-correction-level.js +0 -50
  477. package/node_modules/qrcode/lib/core/finder-pattern.js +0 -22
  478. package/node_modules/qrcode/lib/core/format-info.js +0 -29
  479. package/node_modules/qrcode/lib/core/galois-field.js +0 -69
  480. package/node_modules/qrcode/lib/core/kanji-data.js +0 -54
  481. package/node_modules/qrcode/lib/core/mask-pattern.js +0 -234
  482. package/node_modules/qrcode/lib/core/mode.js +0 -167
  483. package/node_modules/qrcode/lib/core/numeric-data.js +0 -43
  484. package/node_modules/qrcode/lib/core/polynomial.js +0 -62
  485. package/node_modules/qrcode/lib/core/qrcode.js +0 -495
  486. package/node_modules/qrcode/lib/core/reed-solomon-encoder.js +0 -56
  487. package/node_modules/qrcode/lib/core/regex.js +0 -31
  488. package/node_modules/qrcode/lib/core/segments.js +0 -330
  489. package/node_modules/qrcode/lib/core/utils.js +0 -63
  490. package/node_modules/qrcode/lib/core/version-check.js +0 -9
  491. package/node_modules/qrcode/lib/core/version.js +0 -163
  492. package/node_modules/qrcode/lib/index.js +0 -12
  493. package/node_modules/qrcode/lib/renderer/canvas.js +0 -63
  494. package/node_modules/qrcode/lib/renderer/png.js +0 -78
  495. package/node_modules/qrcode/lib/renderer/svg-tag.js +0 -81
  496. package/node_modules/qrcode/lib/renderer/svg.js +0 -19
  497. package/node_modules/qrcode/lib/renderer/terminal/terminal-small.js +0 -85
  498. package/node_modules/qrcode/lib/renderer/terminal/terminal.js +0 -49
  499. package/node_modules/qrcode/lib/renderer/terminal.js +0 -9
  500. package/node_modules/qrcode/lib/renderer/utf8.js +0 -71
  501. package/node_modules/qrcode/lib/renderer/utils.js +0 -99
  502. package/node_modules/qrcode/lib/server.js +0 -138
  503. package/node_modules/qrcode/license +0 -10
  504. package/node_modules/qrcode/package.json +0 -77
  505. package/node_modules/require-directory/.jshintrc +0 -67
  506. package/node_modules/require-directory/.npmignore +0 -1
  507. package/node_modules/require-directory/.travis.yml +0 -3
  508. package/node_modules/require-directory/LICENSE +0 -22
  509. package/node_modules/require-directory/README.markdown +0 -184
  510. package/node_modules/require-directory/index.js +0 -86
  511. package/node_modules/require-directory/package.json +0 -40
  512. package/node_modules/require-main-filename/CHANGELOG.md +0 -26
  513. package/node_modules/require-main-filename/LICENSE.txt +0 -14
  514. package/node_modules/require-main-filename/README.md +0 -26
  515. package/node_modules/require-main-filename/index.js +0 -18
  516. package/node_modules/require-main-filename/package.json +0 -35
  517. package/node_modules/semver/LICENSE +0 -15
  518. package/node_modules/semver/README.md +0 -680
  519. package/node_modules/semver/bin/semver.js +0 -195
  520. package/node_modules/semver/classes/comparator.js +0 -143
  521. package/node_modules/semver/classes/index.js +0 -7
  522. package/node_modules/semver/classes/range.js +0 -577
  523. package/node_modules/semver/classes/semver.js +0 -350
  524. package/node_modules/semver/functions/clean.js +0 -8
  525. package/node_modules/semver/functions/cmp.js +0 -54
  526. package/node_modules/semver/functions/coerce.js +0 -62
  527. package/node_modules/semver/functions/compare-build.js +0 -9
  528. package/node_modules/semver/functions/compare-loose.js +0 -5
  529. package/node_modules/semver/functions/compare.js +0 -7
  530. package/node_modules/semver/functions/diff.js +0 -60
  531. package/node_modules/semver/functions/eq.js +0 -5
  532. package/node_modules/semver/functions/gt.js +0 -5
  533. package/node_modules/semver/functions/gte.js +0 -5
  534. package/node_modules/semver/functions/inc.js +0 -21
  535. package/node_modules/semver/functions/lt.js +0 -5
  536. package/node_modules/semver/functions/lte.js +0 -5
  537. package/node_modules/semver/functions/major.js +0 -5
  538. package/node_modules/semver/functions/minor.js +0 -5
  539. package/node_modules/semver/functions/neq.js +0 -5
  540. package/node_modules/semver/functions/parse.js +0 -18
  541. package/node_modules/semver/functions/patch.js +0 -5
  542. package/node_modules/semver/functions/prerelease.js +0 -8
  543. package/node_modules/semver/functions/rcompare.js +0 -5
  544. package/node_modules/semver/functions/rsort.js +0 -5
  545. package/node_modules/semver/functions/satisfies.js +0 -12
  546. package/node_modules/semver/functions/sort.js +0 -5
  547. package/node_modules/semver/functions/truncate.js +0 -48
  548. package/node_modules/semver/functions/valid.js +0 -8
  549. package/node_modules/semver/index.js +0 -93
  550. package/node_modules/semver/internal/constants.js +0 -37
  551. package/node_modules/semver/internal/debug.js +0 -11
  552. package/node_modules/semver/internal/identifiers.js +0 -29
  553. package/node_modules/semver/internal/lrucache.js +0 -42
  554. package/node_modules/semver/internal/parse-options.js +0 -17
  555. package/node_modules/semver/internal/re.js +0 -223
  556. package/node_modules/semver/package.json +0 -78
  557. package/node_modules/semver/preload.js +0 -4
  558. package/node_modules/semver/range.bnf +0 -17
  559. package/node_modules/semver/ranges/gtr.js +0 -6
  560. package/node_modules/semver/ranges/intersects.js +0 -9
  561. package/node_modules/semver/ranges/ltr.js +0 -6
  562. package/node_modules/semver/ranges/max-satisfying.js +0 -27
  563. package/node_modules/semver/ranges/min-satisfying.js +0 -26
  564. package/node_modules/semver/ranges/min-version.js +0 -63
  565. package/node_modules/semver/ranges/outside.js +0 -82
  566. package/node_modules/semver/ranges/simplify.js +0 -49
  567. package/node_modules/semver/ranges/subset.js +0 -249
  568. package/node_modules/semver/ranges/to-comparators.js +0 -10
  569. package/node_modules/semver/ranges/valid.js +0 -13
  570. package/node_modules/set-blocking/CHANGELOG.md +0 -26
  571. package/node_modules/set-blocking/LICENSE.txt +0 -14
  572. package/node_modules/set-blocking/README.md +0 -31
  573. package/node_modules/set-blocking/index.js +0 -7
  574. package/node_modules/set-blocking/package.json +0 -42
  575. package/node_modules/sharp/LICENSE +0 -191
  576. package/node_modules/sharp/README.md +0 -112
  577. package/node_modules/sharp/dist/channel.cjs +0 -177
  578. package/node_modules/sharp/dist/channel.mjs +0 -177
  579. package/node_modules/sharp/dist/colour.cjs +0 -199
  580. package/node_modules/sharp/dist/colour.mjs +0 -199
  581. package/node_modules/sharp/dist/composite.cjs +0 -213
  582. package/node_modules/sharp/dist/composite.mjs +0 -213
  583. package/node_modules/sharp/dist/constructor.cjs +0 -511
  584. package/node_modules/sharp/dist/constructor.mjs +0 -511
  585. package/node_modules/sharp/dist/index.cjs +0 -25
  586. package/node_modules/sharp/dist/index.d.cts +0 -1999
  587. package/node_modules/sharp/dist/index.d.mts +0 -2046
  588. package/node_modules/sharp/dist/index.mjs +0 -25
  589. package/node_modules/sharp/dist/input.cjs +0 -819
  590. package/node_modules/sharp/dist/input.mjs +0 -819
  591. package/node_modules/sharp/dist/is.cjs +0 -143
  592. package/node_modules/sharp/dist/is.mjs +0 -143
  593. package/node_modules/sharp/dist/libvips.cjs +0 -212
  594. package/node_modules/sharp/dist/libvips.mjs +0 -212
  595. package/node_modules/sharp/dist/operation.cjs +0 -1002
  596. package/node_modules/sharp/dist/operation.mjs +0 -1002
  597. package/node_modules/sharp/dist/output.cjs +0 -1785
  598. package/node_modules/sharp/dist/output.mjs +0 -1785
  599. package/node_modules/sharp/dist/resize.cjs +0 -617
  600. package/node_modules/sharp/dist/resize.mjs +0 -617
  601. package/node_modules/sharp/dist/sharp.cjs +0 -174
  602. package/node_modules/sharp/dist/sharp.mjs +0 -174
  603. package/node_modules/sharp/dist/utility.cjs +0 -301
  604. package/node_modules/sharp/dist/utility.mjs +0 -301
  605. package/node_modules/sharp/install/build.js +0 -38
  606. package/node_modules/sharp/lib/index.d.ts +0 -1999
  607. package/node_modules/sharp/package.json +0 -227
  608. package/node_modules/sharp/src/binding.gyp +0 -303
  609. package/node_modules/sharp/src/common.cc +0 -1186
  610. package/node_modules/sharp/src/common.h +0 -421
  611. package/node_modules/sharp/src/metadata.cc +0 -404
  612. package/node_modules/sharp/src/metadata.h +0 -95
  613. package/node_modules/sharp/src/operations.cc +0 -516
  614. package/node_modules/sharp/src/operations.h +0 -137
  615. package/node_modules/sharp/src/pipeline.cc +0 -1948
  616. package/node_modules/sharp/src/pipeline.h +0 -422
  617. package/node_modules/sharp/src/sharp.cc +0 -43
  618. package/node_modules/sharp/src/stats.cc +0 -186
  619. package/node_modules/sharp/src/stats.h +0 -62
  620. package/node_modules/sharp/src/utilities.cc +0 -289
  621. package/node_modules/sharp/src/utilities.h +0 -22
  622. package/node_modules/string-width/index.d.ts +0 -29
  623. package/node_modules/string-width/index.js +0 -47
  624. package/node_modules/string-width/license +0 -9
  625. package/node_modules/string-width/package.json +0 -56
  626. package/node_modules/string-width/readme.md +0 -50
  627. package/node_modules/strip-ansi/index.d.ts +0 -17
  628. package/node_modules/strip-ansi/index.js +0 -4
  629. package/node_modules/strip-ansi/license +0 -9
  630. package/node_modules/strip-ansi/package.json +0 -54
  631. package/node_modules/strip-ansi/readme.md +0 -46
  632. package/node_modules/which-module/LICENSE +0 -13
  633. package/node_modules/which-module/README.md +0 -58
  634. package/node_modules/which-module/index.js +0 -9
  635. package/node_modules/which-module/package.json +0 -41
  636. package/node_modules/wrap-ansi/index.js +0 -186
  637. package/node_modules/wrap-ansi/license +0 -9
  638. package/node_modules/wrap-ansi/package.json +0 -61
  639. package/node_modules/wrap-ansi/readme.md +0 -97
  640. package/node_modules/ws/LICENSE +0 -20
  641. package/node_modules/ws/README.md +0 -548
  642. package/node_modules/ws/browser.js +0 -8
  643. package/node_modules/ws/index.js +0 -22
  644. package/node_modules/ws/lib/buffer-util.js +0 -131
  645. package/node_modules/ws/lib/constants.js +0 -19
  646. package/node_modules/ws/lib/event-target.js +0 -292
  647. package/node_modules/ws/lib/extension.js +0 -203
  648. package/node_modules/ws/lib/limiter.js +0 -55
  649. package/node_modules/ws/lib/permessage-deflate.js +0 -530
  650. package/node_modules/ws/lib/receiver.js +0 -743
  651. package/node_modules/ws/lib/sender.js +0 -607
  652. package/node_modules/ws/lib/stream.js +0 -161
  653. package/node_modules/ws/lib/subprotocol.js +0 -62
  654. package/node_modules/ws/lib/validation.js +0 -152
  655. package/node_modules/ws/lib/websocket-server.js +0 -562
  656. package/node_modules/ws/lib/websocket.js +0 -1407
  657. package/node_modules/ws/package.json +0 -74
  658. package/node_modules/ws/wrapper.mjs +0 -21
  659. package/node_modules/y18n/CHANGELOG.md +0 -35
  660. package/node_modules/y18n/LICENSE +0 -13
  661. package/node_modules/y18n/README.md +0 -109
  662. package/node_modules/y18n/index.js +0 -188
  663. package/node_modules/y18n/package.json +0 -39
  664. package/node_modules/yargs/CHANGELOG.md +0 -420
  665. package/node_modules/yargs/LICENSE +0 -21
  666. package/node_modules/yargs/README.md +0 -140
  667. package/node_modules/yargs/build/lib/apply-extends.d.ts +0 -2
  668. package/node_modules/yargs/build/lib/apply-extends.js +0 -65
  669. package/node_modules/yargs/build/lib/argsert.d.ts +0 -2
  670. package/node_modules/yargs/build/lib/argsert.js +0 -65
  671. package/node_modules/yargs/build/lib/command.d.ts +0 -64
  672. package/node_modules/yargs/build/lib/command.js +0 -416
  673. package/node_modules/yargs/build/lib/common-types.d.ts +0 -36
  674. package/node_modules/yargs/build/lib/common-types.js +0 -25
  675. package/node_modules/yargs/build/lib/completion-templates.d.ts +0 -2
  676. package/node_modules/yargs/build/lib/completion-templates.js +0 -50
  677. package/node_modules/yargs/build/lib/completion.d.ts +0 -21
  678. package/node_modules/yargs/build/lib/completion.js +0 -135
  679. package/node_modules/yargs/build/lib/is-promise.d.ts +0 -1
  680. package/node_modules/yargs/build/lib/is-promise.js +0 -9
  681. package/node_modules/yargs/build/lib/levenshtein.d.ts +0 -1
  682. package/node_modules/yargs/build/lib/levenshtein.js +0 -58
  683. package/node_modules/yargs/build/lib/middleware.d.ts +0 -10
  684. package/node_modules/yargs/build/lib/middleware.js +0 -57
  685. package/node_modules/yargs/build/lib/obj-filter.d.ts +0 -1
  686. package/node_modules/yargs/build/lib/obj-filter.js +0 -14
  687. package/node_modules/yargs/build/lib/parse-command.d.ts +0 -11
  688. package/node_modules/yargs/build/lib/parse-command.js +0 -36
  689. package/node_modules/yargs/build/lib/process-argv.d.ts +0 -2
  690. package/node_modules/yargs/build/lib/process-argv.js +0 -31
  691. package/node_modules/yargs/build/lib/usage.d.ts +0 -49
  692. package/node_modules/yargs/build/lib/usage.js +0 -540
  693. package/node_modules/yargs/build/lib/validation.d.ts +0 -34
  694. package/node_modules/yargs/build/lib/validation.js +0 -330
  695. package/node_modules/yargs/build/lib/yargs.d.ts +0 -274
  696. package/node_modules/yargs/build/lib/yargs.js +0 -1190
  697. package/node_modules/yargs/build/lib/yerror.d.ts +0 -4
  698. package/node_modules/yargs/build/lib/yerror.js +0 -11
  699. package/node_modules/yargs/index.js +0 -40
  700. package/node_modules/yargs/locales/be.json +0 -46
  701. package/node_modules/yargs/locales/de.json +0 -46
  702. package/node_modules/yargs/locales/en.json +0 -51
  703. package/node_modules/yargs/locales/es.json +0 -46
  704. package/node_modules/yargs/locales/fi.json +0 -49
  705. package/node_modules/yargs/locales/fr.json +0 -53
  706. package/node_modules/yargs/locales/hi.json +0 -49
  707. package/node_modules/yargs/locales/hu.json +0 -46
  708. package/node_modules/yargs/locales/id.json +0 -50
  709. package/node_modules/yargs/locales/it.json +0 -46
  710. package/node_modules/yargs/locales/ja.json +0 -51
  711. package/node_modules/yargs/locales/ko.json +0 -49
  712. package/node_modules/yargs/locales/nb.json +0 -44
  713. package/node_modules/yargs/locales/nl.json +0 -49
  714. package/node_modules/yargs/locales/nn.json +0 -44
  715. package/node_modules/yargs/locales/pirate.json +0 -13
  716. package/node_modules/yargs/locales/pl.json +0 -49
  717. package/node_modules/yargs/locales/pt.json +0 -45
  718. package/node_modules/yargs/locales/pt_BR.json +0 -48
  719. package/node_modules/yargs/locales/ru.json +0 -46
  720. package/node_modules/yargs/locales/th.json +0 -46
  721. package/node_modules/yargs/locales/tr.json +0 -48
  722. package/node_modules/yargs/locales/zh_CN.json +0 -48
  723. package/node_modules/yargs/locales/zh_TW.json +0 -47
  724. package/node_modules/yargs/package.json +0 -92
  725. package/node_modules/yargs/yargs.js +0 -14
  726. package/node_modules/yargs-parser/CHANGELOG.md +0 -601
  727. package/node_modules/yargs-parser/LICENSE.txt +0 -14
  728. package/node_modules/yargs-parser/README.md +0 -449
  729. package/node_modules/yargs-parser/index.js +0 -1032
  730. package/node_modules/yargs-parser/lib/tokenize-arg-string.js +0 -40
  731. package/node_modules/yargs-parser/package.json +0 -46
@@ -1,144 +1,146 @@
1
- import fs from 'node:fs';
2
- import path from 'node:path';
3
- import { randomUUID } from 'node:crypto';
4
- import { setTimeout as delay } from 'node:timers/promises';
5
- import { fileURLToPath } from 'node:url';
6
- import { readRecord, writeRecord, lifecycle } from './service-lifecycle.mjs';
7
- import { startBackground } from './background-process.mjs';
8
- import { desktopHost } from './platform/windows/desktop-host.mjs';
9
- import * as serviceHost from './platform/windows/service-host.mjs';
10
- import { launchDesktop, portAvailable } from './desktop-launcher.mjs';
11
- import { configureManagedEnvironment } from './platform/windows/user-environment.mjs';
12
-
13
- const script = fileURLToPath(import.meta.url);
14
- const recordPath = root => path.join(root, 'shared-recovery.json');
15
- const lockPath = root => path.join(root, 'shared-recovery.lock');
16
- const sameProcess = (a, b) => a && b && a.pid === b.pid && a.created === b.created && a.executable === b.executable;
17
- const active = value => value && ['scheduled', 'running'].includes(value.status);
18
- const recoverySteps = () => [
19
- ['checking', '检查启动条件'], ['stopping-desktop', '关闭当前 Codex'],
20
- ['starting-app-server', '确认 Codex 内核'], ['starting-desktop', '重新打开 Codex'],
21
- ['checking-execution', '确认移动端控制就绪'],
22
- ].map(([id, label]) => ({ id, label, status: 'pending' }));
23
- export const recoveryWarning = 'Codex Desktop 需要重新打开,才能接入同一个 Codex 内核。移动端连接和 Codex 内核会保持运行;旧 Desktop 实例中的任务可能中断,未发送内容请先保存。切换不会清空项目、对话历史、设置或设备授权。';
24
-
25
- export async function recoveryStatus(stateRoot, host = desktopHost) {
26
- const record = readRecord(recordPath(stateRoot));
27
- if (!record) return { status: 'none', message: '尚未执行 Desktop 接入流程。' };
28
- const lostWorker = active(record) && (record.worker
29
- ? !sameProcess(record.worker, await host.process(record.worker.pid))
30
- : Date.now() - Date.parse(record.startedAt) > 30000);
31
- if (lostWorker) {
32
- record.status = 'failed'; record.error = '独立恢复进程已退出,恢复未完成。';
33
- record.steps = record.steps?.map(step => ({ ...step, status: step.status === 'running' ? 'failed' : step.status }));
34
- writeRecord(recordPath(stateRoot), record);
35
- if (readRecord(lockPath(stateRoot))?.operationId === record.operationId) fs.rmSync(lockPath(stateRoot));
36
- }
37
- const { worker, oldService, desktop, ...publicRecord } = record;
38
- return publicRecord;
39
- }
40
-
41
- export async function planRecovery(stateRoot, host, available = portAvailable) {
42
- const info = await host.inspect();
43
- const action = await host.sharedServiceUrl() ? 'restart' : 'switch';
44
- if (!info.desktop) throw new Error('未找到 Codex Desktop;CLI 用户无需执行 Desktop 接入。');
45
- const record = readRecord(path.join(stateRoot, 'managed-app-server.json'));
46
- const actual = record ? await host.process(record.pid) : null;
47
- if (actual && (!sameProcess(record, actual) || !actual.command?.includes('app-server') || !actual.command.includes('ws://127.0.0.1:45839'))) {
48
- throw new Error('Codex 内核进程身份与记录不符,未结束任何进程。');
49
- }
50
- if (!actual && !await available()) throw new Error('45839 被未识别进程占用,未关闭 Desktop 或结束任何进程。');
51
- return { desktop: info.desktop, action };
52
- }
53
-
54
- export async function requestRecovery(stateRoot, { confirmed, operationId = randomUUID() } = {}, host = desktopHost) {
55
- if (confirmed !== true) throw new Error(recoveryWarning + ' 请明确确认后再执行。');
56
- if (!/^[0-9a-f]{8}(?:-[0-9a-f]{4}){3}-[0-9a-f]{12}$/i.test(operationId)) throw new Error('无效的恢复操作编号。');
57
- fs.mkdirSync(stateRoot, { recursive: true });
58
- const previous = await recoveryStatus(stateRoot, host);
59
- if (previous.operationId === operationId) return previous;
60
- if (active(previous)) throw new Error('已有恢复操作正在执行,请查看恢复状态。');
61
- const planned = await planRecovery(stateRoot, host);
62
- let lock;
63
- try { lock = fs.openSync(lockPath(stateRoot), 'wx'); }
64
- catch (error) { if (error.code === 'EEXIST') throw new Error('已有恢复操作,请先查看恢复状态。'); throw error; }
65
- fs.writeFileSync(lock, JSON.stringify({ operationId })); fs.closeSync(lock);
66
- const record = { operationId, status: 'scheduled', stage: 'prepared', startedAt: new Date().toISOString(),
67
- message: 'Codex 连接请求已接受,电脑管理连接保持运行。', steps: recoverySteps(), ...planned };
68
- try {
69
- writeRecord(recordPath(stateRoot), record);
70
- const log = path.join(stateRoot, 'shared-recovery.log');
71
- const pid = await startBackground(process.execPath, [script, '--worker', stateRoot, operationId], process.env, [log, log]);
72
- const worker = await host.process(pid);
73
- if (!worker) throw new Error('独立恢复进程未启动,请查看 shared-recovery.log。');
74
- // Publish the process identity before allowing the worker to begin disruption.
75
- writeRecord(recordPath(stateRoot), { ...record, worker });
76
- return { operationId, status: record.status, message: record.message };
77
- } catch (error) {
78
- writeRecord(recordPath(stateRoot), { ...record, status: 'failed', error: error.message });
79
- fs.rmSync(lockPath(stateRoot), { force: true }); throw error;
80
- }
81
- }
82
-
83
- export async function runRecovery(stateRoot, operationId, dependencies = {}) {
84
- const host = dependencies.host || desktopHost;
85
- const service = dependencies.service || lifecycle({ stateRoot, host: serviceHost });
86
- const available = dependencies.available || portAvailable;
87
- const start = dependencies.launch || launchDesktop;
88
- let record = readRecord(recordPath(stateRoot));
89
- if (record?.operationId !== operationId || readRecord(lockPath(stateRoot))?.operationId !== operationId) throw new Error('恢复实例已失效。');
90
- record.steps ||= recoverySteps();
91
- const stage = name => {
92
- record = { ...record, status: 'running', stage: name, steps: record.steps.map(step => ({ ...step,
93
- status: step.id === name ? 'running' : step.status === 'running' ? 'completed' : step.status })) };
94
- writeRecord(recordPath(stateRoot), record);
95
- };
96
- const waitFor = async (check, message) => {
97
- const deadline = Date.now() + (dependencies.timeout ?? 10000);
98
- while (!await check()) { if (Date.now() >= deadline) throw new Error(message); await delay(100); }
99
- };
100
- try {
101
- stage('checking');
102
- const planned = await planRecovery(stateRoot, host, available);
103
- await configureManagedEnvironment(stateRoot);
104
- record = { ...record, ...planned };
105
- if (fs.existsSync(path.join(stateRoot, 'desktop-launch.lock'))) throw new Error('Desktop 正在启动,未与启动操作并行恢复。');
106
- stage('stopping-desktop'); await host.closeDesktop(record.desktop);
107
- await waitFor(async () => !(await host.inspect()).running, '当前 Codex Desktop 未退出,未继续接入 Codex 内核。');
108
- stage('starting-app-server'); await start({ stateRoot, host, recoveryId: operationId, progress: stage });
109
- stage('checking-execution');
110
- await service.start(); // Refresh the execution adapter; resident Bridge retains its PID and sockets.
111
- await waitFor(async () => {
112
- const health = await service.status();
113
- return health.running && health.mode === 'lan-shared' && health.execution?.ready === true;
114
- }, 'Codex 内核未就绪;桌面服务和中继连接仍保留。');
115
- record = { ...record, status: 'completed', stage: 'ready', steps: record.steps.map(step => ({ ...step, status: 'completed' })),
116
- message: 'Codex Desktop 已接入 Codex 内核;移动端控制保持就绪,原任务未自动重发。' };
117
- } catch (error) { record = { ...record, status: 'failed', error: error.message,
118
- steps: record.steps.map(step => ({ ...step, status: step.status === 'running' ? 'failed' : step.status })),
119
- message: 'Codex Desktop 未完成接入,已停止后续步骤。' }; }
120
- finally {
121
- record.finishedAt = new Date().toISOString(); writeRecord(recordPath(stateRoot), record);
122
- if (readRecord(lockPath(stateRoot))?.operationId === operationId) fs.rmSync(lockPath(stateRoot));
123
- }
124
- return record;
125
- }
126
-
127
- if (process.argv[1] && path.resolve(process.argv[1]) === script && process.argv[2] === '--worker') {
128
- const [stateRoot, operationId] = process.argv.slice(3);
129
- (async () => {
130
- const deadline = Date.now() + 15000;
131
- while (true) {
132
- const record = readRecord(recordPath(stateRoot));
133
- if (record?.operationId !== operationId || record.status !== 'scheduled') throw new Error('恢复调度已失效。');
134
- if (record.worker?.pid === process.pid) break;
135
- if (Date.now() >= deadline) throw new Error('恢复启动交接超时。');
136
- await delay(100);
137
- }
138
- // A deliberate handoff window lets the caller display the accepted operation ID.
139
- await delay(3000);
140
- const result = await runRecovery(stateRoot, operationId);
141
- console.log(JSON.stringify({ operationId, status: result.status, stage: result.stage, error: result.error }));
142
- process.exit(result.status === 'completed' ? 0 : 1);
143
- })().catch(error => { console.error(error.message); process.exit(1); });
144
- }
1
+ import fs from 'node:fs';
2
+ import path from 'node:path';
3
+ import { randomUUID } from 'node:crypto';
4
+ import { setTimeout as delay } from 'node:timers/promises';
5
+ import { fileURLToPath } from 'node:url';
6
+ import { readRecord, writeRecord, lifecycle } from './service-lifecycle.mjs';
7
+ import { startBackground } from './background-process.mjs';
8
+ import { desktopHost } from './platform/desktop-host.mjs';
9
+ import * as serviceHost from './platform/service-host.mjs';
10
+ import { launchDesktop, portAvailable } from './desktop-launcher.mjs';
11
+ import { configureManagedEnvironment } from './platform/user-environment.mjs';
12
+
13
+ const script = fileURLToPath(import.meta.url);
14
+ const recordPath = root => path.join(root, 'shared-recovery.json');
15
+ const lockPath = root => path.join(root, 'shared-recovery.lock');
16
+ const sameProcess = (a, b) => a && b && a.pid === b.pid && a.created === b.created && a.executable === b.executable;
17
+ const active = value => value && ['scheduled', 'running'].includes(value.status);
18
+ const recoverySteps = () => [
19
+ ['checking', '检查启动条件'], ['stopping-desktop', '关闭当前 Codex'],
20
+ ['starting-app-server', '确认 Codex 内核'], ['starting-desktop', '重新打开 Codex'],
21
+ ['checking-execution', '确认移动端控制就绪'],
22
+ ].map(([id, label]) => ({ id, label, status: 'pending' }));
23
+ export const recoveryWarning = 'Codex Desktop 需要重新打开,才能接入同一个 Codex 内核。移动端连接和 Codex 内核会保持运行;旧 Desktop 实例中的任务可能中断,未发送内容请先保存。切换不会清空项目、对话历史、设置或设备授权。';
24
+
25
+ export async function recoveryStatus(stateRoot, host = desktopHost) {
26
+ if (host.desktopIntegration === false) return { status: 'unsupported', message: '此平台尚不支持 Desktop 自动接入。' };
27
+ const record = readRecord(recordPath(stateRoot));
28
+ if (!record) return { status: 'none', message: '尚未执行 Desktop 接入流程。' };
29
+ const lostWorker = active(record) && (record.worker
30
+ ? !sameProcess(record.worker, await host.process(record.worker.pid))
31
+ : Date.now() - Date.parse(record.startedAt) > 30000);
32
+ if (lostWorker) {
33
+ record.status = 'failed'; record.error = '独立恢复进程已退出,恢复未完成。';
34
+ record.steps = record.steps?.map(step => ({ ...step, status: step.status === 'running' ? 'failed' : step.status }));
35
+ writeRecord(recordPath(stateRoot), record);
36
+ if (readRecord(lockPath(stateRoot))?.operationId === record.operationId) fs.rmSync(lockPath(stateRoot));
37
+ }
38
+ const { worker, oldService, desktop, ...publicRecord } = record;
39
+ return publicRecord;
40
+ }
41
+
42
+ export async function planRecovery(stateRoot, host, available = portAvailable) {
43
+ const info = await host.inspect();
44
+ const action = await host.sharedServiceUrl() ? 'restart' : 'switch';
45
+ if (!info.desktop) throw new Error('未找到 Codex Desktop;CLI 用户无需执行 Desktop 接入。');
46
+ const record = readRecord(path.join(stateRoot, 'managed-app-server.json'));
47
+ const actual = record ? await host.process(record.pid) : null;
48
+ if (actual && (!sameProcess(record, actual) || !actual.command?.includes('app-server') || !actual.command.includes('ws://127.0.0.1:45839'))) {
49
+ throw new Error('Codex 内核进程身份与记录不符,未结束任何进程。');
50
+ }
51
+ if (!actual && !await available()) throw new Error('45839 被未识别进程占用,未关闭 Desktop 或结束任何进程。');
52
+ return { desktop: info.desktop, action };
53
+ }
54
+
55
+ export async function requestRecovery(stateRoot, { confirmed, operationId = randomUUID() } = {}, host = desktopHost) {
56
+ if (host.desktopIntegration === false) throw new Error('此平台尚不支持 Desktop 自动接入。');
57
+ if (confirmed !== true) throw new Error(recoveryWarning + ' 请明确确认后再执行。');
58
+ if (!/^[0-9a-f]{8}(?:-[0-9a-f]{4}){3}-[0-9a-f]{12}$/i.test(operationId)) throw new Error('无效的恢复操作编号。');
59
+ fs.mkdirSync(stateRoot, { recursive: true });
60
+ const previous = await recoveryStatus(stateRoot, host);
61
+ if (previous.operationId === operationId) return previous;
62
+ if (active(previous)) throw new Error('已有恢复操作正在执行,请查看恢复状态。');
63
+ const planned = await planRecovery(stateRoot, host);
64
+ let lock;
65
+ try { lock = fs.openSync(lockPath(stateRoot), 'wx'); }
66
+ catch (error) { if (error.code === 'EEXIST') throw new Error('已有恢复操作,请先查看恢复状态。'); throw error; }
67
+ fs.writeFileSync(lock, JSON.stringify({ operationId })); fs.closeSync(lock);
68
+ const record = { operationId, status: 'scheduled', stage: 'prepared', startedAt: new Date().toISOString(),
69
+ message: 'Codex 连接请求已接受,电脑管理连接保持运行。', steps: recoverySteps(), ...planned };
70
+ try {
71
+ writeRecord(recordPath(stateRoot), record);
72
+ const log = path.join(stateRoot, 'shared-recovery.log');
73
+ const pid = await startBackground(process.execPath, [script, '--worker', stateRoot, operationId], process.env, [log, log]);
74
+ const worker = await host.process(pid);
75
+ if (!worker) throw new Error('独立恢复进程未启动,请查看 shared-recovery.log。');
76
+ // Publish the process identity before allowing the worker to begin disruption.
77
+ writeRecord(recordPath(stateRoot), { ...record, worker });
78
+ return { operationId, status: record.status, message: record.message };
79
+ } catch (error) {
80
+ writeRecord(recordPath(stateRoot), { ...record, status: 'failed', error: error.message });
81
+ fs.rmSync(lockPath(stateRoot), { force: true }); throw error;
82
+ }
83
+ }
84
+
85
+ export async function runRecovery(stateRoot, operationId, dependencies = {}) {
86
+ const host = dependencies.host || desktopHost;
87
+ const service = dependencies.service || lifecycle({ stateRoot, host: serviceHost });
88
+ const available = dependencies.available || portAvailable;
89
+ const start = dependencies.launch || launchDesktop;
90
+ let record = readRecord(recordPath(stateRoot));
91
+ if (record?.operationId !== operationId || readRecord(lockPath(stateRoot))?.operationId !== operationId) throw new Error('恢复实例已失效。');
92
+ record.steps ||= recoverySteps();
93
+ const stage = name => {
94
+ record = { ...record, status: 'running', stage: name, steps: record.steps.map(step => ({ ...step,
95
+ status: step.id === name ? 'running' : step.status === 'running' ? 'completed' : step.status })) };
96
+ writeRecord(recordPath(stateRoot), record);
97
+ };
98
+ const waitFor = async (check, message) => {
99
+ const deadline = Date.now() + (dependencies.timeout ?? 10000);
100
+ while (!await check()) { if (Date.now() >= deadline) throw new Error(message); await delay(100); }
101
+ };
102
+ try {
103
+ stage('checking');
104
+ const planned = await planRecovery(stateRoot, host, available);
105
+ await configureManagedEnvironment(stateRoot);
106
+ record = { ...record, ...planned };
107
+ if (fs.existsSync(path.join(stateRoot, 'desktop-launch.lock'))) throw new Error('Desktop 正在启动,未与启动操作并行恢复。');
108
+ stage('stopping-desktop'); await host.closeDesktop(record.desktop);
109
+ await waitFor(async () => !(await host.inspect()).running, '当前 Codex Desktop 未退出,未继续接入 Codex 内核。');
110
+ stage('starting-app-server'); await start({ stateRoot, host, recoveryId: operationId, progress: stage });
111
+ stage('checking-execution');
112
+ await service.start(); // Refresh the execution adapter; resident Bridge retains its PID and sockets.
113
+ await waitFor(async () => {
114
+ const health = await service.status();
115
+ return health.running && health.mode === 'lan-shared' && health.execution?.ready === true;
116
+ }, 'Codex 内核未就绪;桌面服务和中继连接仍保留。');
117
+ record = { ...record, status: 'completed', stage: 'ready', steps: record.steps.map(step => ({ ...step, status: 'completed' })),
118
+ message: 'Codex Desktop 已接入 Codex 内核;移动端控制保持就绪,原任务未自动重发。' };
119
+ } catch (error) { record = { ...record, status: 'failed', error: error.message,
120
+ steps: record.steps.map(step => ({ ...step, status: step.status === 'running' ? 'failed' : step.status })),
121
+ message: 'Codex Desktop 未完成接入,已停止后续步骤。' }; }
122
+ finally {
123
+ record.finishedAt = new Date().toISOString(); writeRecord(recordPath(stateRoot), record);
124
+ if (readRecord(lockPath(stateRoot))?.operationId === operationId) fs.rmSync(lockPath(stateRoot));
125
+ }
126
+ return record;
127
+ }
128
+
129
+ if (process.argv[1] && path.resolve(process.argv[1]) === script && process.argv[2] === '--worker') {
130
+ const [stateRoot, operationId] = process.argv.slice(3);
131
+ (async () => {
132
+ const deadline = Date.now() + 15000;
133
+ while (true) {
134
+ const record = readRecord(recordPath(stateRoot));
135
+ if (record?.operationId !== operationId || record.status !== 'scheduled') throw new Error('恢复调度已失效。');
136
+ if (record.worker?.pid === process.pid) break;
137
+ if (Date.now() >= deadline) throw new Error('恢复启动交接超时。');
138
+ await delay(100);
139
+ }
140
+ // A deliberate handoff window lets the caller display the accepted operation ID.
141
+ await delay(3000);
142
+ const result = await runRecovery(stateRoot, operationId);
143
+ console.log(JSON.stringify({ operationId, status: result.status, stage: result.stage, error: result.error }));
144
+ process.exit(result.status === 'completed' ? 0 : 1);
145
+ })().catch(error => { console.error(error.message); process.exit(1); });
146
+ }
@@ -1,51 +1,51 @@
1
- import fs from 'node:fs';
2
- import path from 'node:path';
3
- import os from 'node:os';
4
- import { createHash } from 'node:crypto';
5
- import { readRecord, writeRecord } from './service-lifecycle.mjs';
6
-
7
- const owner = '@walkhi/code-relax';
8
- const markerName = '.code-relax-install.json';
9
- const digest = value => createHash('sha256').update(value).digest('hex');
10
- export const skillDirectory = (home = os.homedir()) => path.join(home, '.agents/skills/code-relax');
11
-
12
- // Refuse junctions/symlinks along managed paths before writing or removing files.
13
- export function assertPlainPath(target) {
14
- for (let item = path.resolve(target); ; item = path.dirname(item)) {
15
- try { if (fs.lstatSync(item).isSymbolicLink()) throw new Error(`不自动修改链接路径:${item}`); }
16
- catch (error) { if (error.code !== 'ENOENT') throw error; }
17
- if (path.dirname(item) === item) break;
18
- }
19
- }
20
-
21
- export function inspectSkill(target = skillDirectory()) {
22
- assertPlainPath(target);
23
- if (!fs.existsSync(target)) return { installed: false, managed: false, target };
24
- const markerPath = path.join(target, markerName), file = path.join(target, 'SKILL.md');
25
- assertPlainPath(markerPath); assertPlainPath(file);
26
- const marker = readRecord(markerPath);
27
- const managed = marker?.owner === owner && fs.existsSync(file)
28
- && marker.sha256 === digest(fs.readFileSync(file))
29
- && fs.readdirSync(target).every(name => ['SKILL.md', markerName].includes(name));
30
- return { installed: true, managed, target };
31
- }
32
-
33
- export function installSkill(source, target = skillDirectory()) {
34
- const state = inspectSkill(target);
35
- if (state.installed && !state.managed) throw new Error(`同名 Skill 非本包管理或已被修改,请保留并手动处理:${target}`);
36
- const content = fs.readFileSync(source);
37
- fs.mkdirSync(target, { recursive: true });
38
- fs.writeFileSync(path.join(target, 'SKILL.md'), content);
39
- writeRecord(path.join(target, markerName), { owner, sha256: digest(content) });
40
- return { installed: true, target, message: 'Skill 已安装/更新;若 Codex 尚未显示,请重新打开 Codex。' };
41
- }
42
-
43
- export function removeSkill(target = skillDirectory()) {
44
- const state = inspectSkill(target);
45
- if (!state.installed) return { removed: false, target, message: 'Skill 未安装。' };
46
- if (!state.managed) throw new Error(`同名 Skill 非本包管理或已被修改,未删除:${target}`);
47
- fs.unlinkSync(path.join(target, 'SKILL.md'));
48
- fs.unlinkSync(path.join(target, markerName));
49
- fs.rmdirSync(target);
50
- return { removed: true, target, message: '已移除本包安装的 Skill。' };
51
- }
1
+ import fs from 'node:fs';
2
+ import path from 'node:path';
3
+ import os from 'node:os';
4
+ import { createHash } from 'node:crypto';
5
+ import { readRecord, writeRecord } from './service-lifecycle.mjs';
6
+
7
+ const owner = '@walkhi/code-relax';
8
+ const markerName = '.code-relax-install.json';
9
+ const digest = value => createHash('sha256').update(value).digest('hex');
10
+ export const skillDirectory = (home = os.homedir()) => path.join(home, '.agents/skills/code-relax');
11
+
12
+ // Refuse junctions/symlinks along managed paths before writing or removing files.
13
+ export function assertPlainPath(target) {
14
+ for (let item = path.resolve(target); ; item = path.dirname(item)) {
15
+ try { if (fs.lstatSync(item).isSymbolicLink()) throw new Error(`不自动修改链接路径:${item}`); }
16
+ catch (error) { if (error.code !== 'ENOENT') throw error; }
17
+ if (path.dirname(item) === item) break;
18
+ }
19
+ }
20
+
21
+ export function inspectSkill(target = skillDirectory()) {
22
+ assertPlainPath(target);
23
+ if (!fs.existsSync(target)) return { installed: false, managed: false, target };
24
+ const markerPath = path.join(target, markerName), file = path.join(target, 'SKILL.md');
25
+ assertPlainPath(markerPath); assertPlainPath(file);
26
+ const marker = readRecord(markerPath);
27
+ const managed = marker?.owner === owner && fs.existsSync(file)
28
+ && marker.sha256 === digest(fs.readFileSync(file))
29
+ && fs.readdirSync(target).every(name => ['SKILL.md', markerName].includes(name));
30
+ return { installed: true, managed, target };
31
+ }
32
+
33
+ export function installSkill(source, target = skillDirectory()) {
34
+ const state = inspectSkill(target);
35
+ if (state.installed && !state.managed) throw new Error(`同名 Skill 非本包管理或已被修改,请保留并手动处理:${target}`);
36
+ const content = fs.readFileSync(source);
37
+ fs.mkdirSync(target, { recursive: true });
38
+ fs.writeFileSync(path.join(target, 'SKILL.md'), content);
39
+ writeRecord(path.join(target, markerName), { owner, sha256: digest(content) });
40
+ return { installed: true, target, message: 'Skill 已安装/更新;若 Codex 尚未显示,请重新打开 Codex。' };
41
+ }
42
+
43
+ export function removeSkill(target = skillDirectory()) {
44
+ const state = inspectSkill(target);
45
+ if (!state.installed) return { removed: false, target, message: 'Skill 未安装。' };
46
+ if (!state.managed) throw new Error(`同名 Skill 非本包管理或已被修改,未删除:${target}`);
47
+ fs.unlinkSync(path.join(target, 'SKILL.md'));
48
+ fs.unlinkSync(path.join(target, markerName));
49
+ fs.rmdirSync(target);
50
+ return { removed: true, target, message: '已移除本包安装的 Skill。' };
51
+ }