@zergai/ztc 0.5.0-beta.1 → 0.6.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1166) hide show
  1. package/README.md +65 -46
  2. package/THIRD_PARTY_NOTICES.md +7 -2
  3. package/bin/zmux-darwin-arm64 +0 -0
  4. package/bin/ztc-audio-darwin-arm64 +0 -0
  5. package/bin/ztc-capture-darwin-arm64 +0 -0
  6. package/bin/ztc-computer-darwin-arm64 +0 -0
  7. package/bin/ztc-llm-darwin-arm64 +0 -0
  8. package/bin/ztc-tts-darwin-arm64 +0 -0
  9. package/bin/ztc-tui-darwin-arm64 +0 -0
  10. package/bin/zterm-darwin-arm64 +0 -0
  11. package/dist/App.js +26 -9
  12. package/dist/agent/agent.d.ts +77 -0
  13. package/dist/agent/agent.js +618 -94
  14. package/dist/agent/backends/account_login.js +3 -1
  15. package/dist/agent/backends/anthropic.js +4 -3
  16. package/dist/agent/backends/bedrock.d.ts +20 -0
  17. package/dist/agent/backends/bedrock.js +175 -0
  18. package/dist/agent/backends/claude_cli.js +8 -0
  19. package/dist/agent/backends/codex_app_server.js +2 -0
  20. package/dist/agent/backends/codex_auth.d.ts +5 -2
  21. package/dist/agent/backends/codex_auth.js +131 -31
  22. package/dist/agent/backends/gemini.js +1 -1
  23. package/dist/agent/backends/http_error.d.ts +2 -0
  24. package/dist/agent/backends/http_error.js +4 -0
  25. package/dist/agent/backends/index.d.ts +3 -0
  26. package/dist/agent/backends/index.js +16 -0
  27. package/dist/agent/backends/model_pool.d.ts +20 -0
  28. package/dist/agent/backends/model_pool.js +98 -0
  29. package/dist/agent/backends/openai.js +2 -0
  30. package/dist/agent/backends/openai_compatible.js +8 -3
  31. package/dist/agent/backends/openai_responses.d.ts +14 -3
  32. package/dist/agent/backends/openai_responses.js +91 -26
  33. package/dist/agent/backends/responses_reasoning.d.ts +5 -0
  34. package/dist/agent/backends/responses_reasoning.js +23 -0
  35. package/dist/agent/backends/transport_errors.d.ts +6 -0
  36. package/dist/agent/backends/transport_errors.js +11 -0
  37. package/dist/agent/backends/types.d.ts +25 -2
  38. package/dist/agent/backends/types.js +4 -0
  39. package/dist/agent/backends/zrouter_stream.d.ts +16 -0
  40. package/dist/agent/backends/zrouter_stream.js +162 -17
  41. package/dist/agent/background_workers.d.ts +68 -0
  42. package/dist/agent/background_workers.js +139 -0
  43. package/dist/agent/commands/accounts.d.ts +9 -1
  44. package/dist/agent/commands/accounts.js +13 -5
  45. package/dist/agent/commands/auth.d.ts +30 -1
  46. package/dist/agent/commands/auth.js +166 -35
  47. package/dist/agent/commands/command_refusal.d.ts +8 -0
  48. package/dist/agent/commands/command_refusal.js +8 -0
  49. package/dist/agent/commands/compact.js +16 -10
  50. package/dist/agent/commands/config.js +386 -80
  51. package/dist/agent/commands/connect.d.ts +20 -0
  52. package/dist/agent/commands/connect.js +150 -0
  53. package/dist/agent/commands/credential_redaction.d.ts +12 -0
  54. package/dist/agent/commands/credential_redaction.js +46 -0
  55. package/dist/agent/commands/credential_status.d.ts +72 -0
  56. package/dist/agent/commands/credential_status.js +181 -0
  57. package/dist/agent/commands/direct_credential_prompt.d.ts +71 -0
  58. package/dist/agent/commands/direct_credential_prompt.js +422 -0
  59. package/dist/agent/commands/effort.d.ts +1 -0
  60. package/dist/agent/commands/effort.js +16 -34
  61. package/dist/agent/commands/goal.d.ts +0 -4
  62. package/dist/agent/commands/goal.js +48 -10
  63. package/dist/agent/commands/handoff.d.ts +6 -0
  64. package/dist/agent/commands/handoff.js +17 -0
  65. package/dist/agent/commands/help.js +1 -1
  66. package/dist/agent/commands/inbox.js +3 -0
  67. package/dist/agent/commands/index.js +5 -3
  68. package/dist/agent/commands/keybindings.js +4 -3
  69. package/dist/agent/commands/mirror.js +29 -16
  70. package/dist/agent/commands/model.js +83 -4
  71. package/dist/agent/commands/models.d.ts +1 -1
  72. package/dist/agent/commands/models.js +89 -67
  73. package/dist/agent/commands/openai_compat_wizard.d.ts +3 -2
  74. package/dist/agent/commands/openai_compat_wizard.js +53 -15
  75. package/dist/agent/commands/provider_choices.d.ts +56 -0
  76. package/dist/agent/commands/provider_choices.js +72 -3
  77. package/dist/agent/commands/provider_model_defaults.d.ts +7 -0
  78. package/dist/agent/commands/provider_model_defaults.js +11 -0
  79. package/dist/agent/commands/provider_selection.d.ts +27 -2
  80. package/dist/agent/commands/provider_selection.js +143 -8
  81. package/dist/agent/commands/reasoning_page.d.ts +33 -0
  82. package/dist/agent/commands/reasoning_page.js +595 -0
  83. package/dist/agent/commands/reasoning_picker.d.ts +14 -0
  84. package/dist/agent/commands/reasoning_picker.js +99 -0
  85. package/dist/agent/commands/reasoning_settings.d.ts +18 -0
  86. package/dist/agent/commands/reasoning_settings.js +46 -0
  87. package/dist/agent/commands/settings.d.ts +2 -0
  88. package/dist/agent/commands/settings.js +689 -264
  89. package/dist/agent/commands/status.js +13 -44
  90. package/dist/agent/commands/types.d.ts +108 -2
  91. package/dist/agent/commands/update.d.ts +18 -0
  92. package/dist/agent/commands/update.js +55 -96
  93. package/dist/agent/completion_state.d.ts +18 -0
  94. package/dist/agent/completion_state.js +35 -3
  95. package/dist/agent/factory.d.ts +9 -1
  96. package/dist/agent/factory.js +61 -17
  97. package/dist/agent/loop_policy.d.ts +14 -0
  98. package/dist/agent/loop_policy.js +9 -0
  99. package/dist/agent/request_encoder.d.ts +6 -0
  100. package/dist/agent/request_encoder.js +36 -6
  101. package/dist/agent/result_emit_cap.d.ts +1 -0
  102. package/dist/agent/result_emit_cap.js +1 -0
  103. package/dist/agent/runaway_output.d.ts +32 -0
  104. package/dist/agent/runaway_output.js +80 -0
  105. package/dist/agent/runtime/command_execution_policy.d.ts +6 -0
  106. package/dist/agent/runtime/command_execution_policy.js +39 -0
  107. package/dist/agent/runtime/evidence.d.ts +17 -1
  108. package/dist/agent/runtime/evidence.js +58 -8
  109. package/dist/agent/runtime/execution_context.js +7 -3
  110. package/dist/agent/runtime/read_only_command.d.ts +15 -0
  111. package/dist/agent/runtime/read_only_command.js +265 -0
  112. package/dist/agent/runtime/recovery.js +2 -38
  113. package/dist/agent/runtime/source_verification.js +3 -1
  114. package/dist/agent/runtime/tool_checkpoints.js +5 -1
  115. package/dist/agent/runtime/tool_runtime.js +15 -1
  116. package/dist/agent/runtime/tool_scheduler.js +3 -1
  117. package/dist/agent/subagent.d.ts +4 -0
  118. package/dist/agent/subagent.js +195 -23
  119. package/dist/agent/system_prompt.d.ts +3 -1
  120. package/dist/agent/system_prompt.js +3 -1
  121. package/dist/agent/tool_response_store.d.ts +9 -0
  122. package/dist/agent/tool_response_store.js +39 -3
  123. package/dist/agent/tool_result_parsing.d.ts +2 -0
  124. package/dist/agent/tool_result_parsing.js +1 -0
  125. package/dist/agent/tool_result_presentation.d.ts +21 -0
  126. package/dist/agent/tool_result_presentation.js +237 -0
  127. package/dist/agent/tools/apply_patch.js +130 -42
  128. package/dist/agent/tools/deferred.js +22 -2
  129. package/dist/agent/tools/delegate.js +182 -49
  130. package/dist/agent/tools/edit_view.d.ts +13 -0
  131. package/dist/agent/tools/edit_view.js +134 -0
  132. package/dist/agent/tools/file.js +54 -16
  133. package/dist/agent/tools/recall_tool_response.d.ts +6 -0
  134. package/dist/agent/tools/recall_tool_response.js +60 -17
  135. package/dist/agent/tools/screenshot.js +5 -3
  136. package/dist/agent/tools/search.js +18 -9
  137. package/dist/agent/tools/shell.d.ts +1 -1
  138. package/dist/agent/tools/shell.js +48 -10
  139. package/dist/agent/tools/sim_domain_tools.js +7 -1
  140. package/dist/agent/tools/tool_groups.d.ts +34 -0
  141. package/dist/agent/tools/tool_groups.js +112 -0
  142. package/dist/agent/tools/types.d.ts +10 -0
  143. package/dist/app/activity.js +2 -1
  144. package/dist/app/agent_runner.js +13 -4
  145. package/dist/app/ask_user_response.d.ts +6 -0
  146. package/dist/app/ask_user_response.js +26 -0
  147. package/dist/app/command_context.js +11 -5
  148. package/dist/app/launch_notices.d.ts +10 -0
  149. package/dist/app/launch_notices.js +20 -0
  150. package/dist/app/selection_completion.d.ts +30 -1
  151. package/dist/app/selection_completion.js +191 -28
  152. package/dist/app/session_manager.d.ts +5 -0
  153. package/dist/app/session_manager.js +50 -12
  154. package/dist/app/session_messages.d.ts +3 -0
  155. package/dist/app/session_messages.js +34 -12
  156. package/dist/app/workspace_admission_details.d.ts +7 -0
  157. package/dist/app/workspace_admission_details.js +45 -1
  158. package/dist/cli_args.js +1 -1
  159. package/dist/cli_main.js +20 -3
  160. package/dist/cli_ratatui.d.ts +95 -3
  161. package/dist/cli_ratatui.js +654 -161
  162. package/dist/components/InputArea.js +1 -1
  163. package/dist/config/compaction.d.ts +2 -1
  164. package/dist/config/compaction.js +2 -1
  165. package/dist/config/defaults.js +20 -48
  166. package/dist/config/provider_api_key_env.d.ts +76 -0
  167. package/dist/config/provider_api_key_env.js +148 -0
  168. package/dist/config/resolved.d.ts +4 -4
  169. package/dist/config/types.d.ts +102 -1
  170. package/dist/config.d.ts +70 -8
  171. package/dist/config.js +253 -63
  172. package/dist/diagnostics/session_export.d.ts +1 -0
  173. package/dist/diagnostics/session_export.js +81 -13
  174. package/dist/emulation/catalog.d.ts +2 -0
  175. package/dist/emulation/catalog.js +50 -21
  176. package/dist/emulation/tool_adapters.d.ts +6 -0
  177. package/dist/emulation/tool_adapters.js +30 -0
  178. package/dist/emulation/ztc_addendum.d.ts +22 -0
  179. package/dist/emulation/ztc_addendum.js +37 -0
  180. package/dist/events.d.ts +3 -0
  181. package/dist/headless.d.ts +35 -1
  182. package/dist/headless.js +209 -14
  183. package/dist/headless_cli.js +6 -0
  184. package/dist/headless_cli_args.d.ts +4 -0
  185. package/dist/headless_cli_args.js +2 -0
  186. package/dist/headless_output_schema.d.ts +46 -0
  187. package/dist/headless_output_schema.js +386 -0
  188. package/dist/headless_trajectory.d.ts +44 -0
  189. package/dist/headless_trajectory.js +113 -0
  190. package/dist/library.d.ts +6 -3
  191. package/dist/library.js +8 -4
  192. package/dist/lsp/client.js +4 -1
  193. package/dist/lsp/servers.js +2 -0
  194. package/dist/onboarding/first_run.d.ts +26 -6
  195. package/dist/onboarding/first_run.js +63 -45
  196. package/dist/onboarding/router_tips.d.ts +7 -0
  197. package/dist/onboarding/router_tips.js +38 -0
  198. package/dist/onboarding/setup.js +1 -1
  199. package/dist/onboarding/wordmark.d.ts +7 -0
  200. package/dist/onboarding/wordmark.js +14 -0
  201. package/dist/onboarding/zergai_login.d.ts +48 -0
  202. package/dist/onboarding/zergai_login.js +60 -0
  203. package/dist/prompts/subagent_worker.j2 +20 -0
  204. package/dist/prompts/tool_delegate_task.j2 +5 -14
  205. package/dist/router_auth.d.ts +37 -3
  206. package/dist/router_auth.js +221 -73
  207. package/dist/runtime_info.d.ts +19 -6
  208. package/dist/runtime_info.js +64 -28
  209. package/dist/session.d.ts +9 -0
  210. package/dist/session.js +41 -8
  211. package/dist/session_handoff_contract.d.ts +13 -0
  212. package/dist/session_handoff_contract.js +81 -15
  213. package/dist/session_media.d.ts +5 -0
  214. package/dist/session_media.js +2 -1
  215. package/dist/simulation/domain_types.d.ts +3 -3
  216. package/dist/simulation/living/context.d.ts +9 -9
  217. package/dist/simulation/living/definition.d.ts +1 -1
  218. package/dist/simulation/living/open-world.d.ts +3 -3
  219. package/dist/simulation/living/recall.d.ts +1 -1
  220. package/dist/simulation/living/types.d.ts +18 -18
  221. package/dist/simulation/orchestration/world_response.d.ts +2 -2
  222. package/dist/simulation/toolkit/dynamic_meetings.d.ts +1 -1
  223. package/dist/simulation/toolkit/dynamic_state.d.ts +1 -1
  224. package/dist/simulation/world/bootstrap_schema.d.ts +1 -1
  225. package/dist/simulation/world/gm_schema.d.ts +8 -8
  226. package/dist/skills/loader.js +3 -1
  227. package/dist/types.d.ts +6 -2
  228. package/dist/ui/core/input.d.ts +5 -1
  229. package/dist/ui/core/input.js +5 -1
  230. package/dist/ui/core/input_segments.d.ts +5 -1
  231. package/dist/ui/core/input_segments.js +5 -3
  232. package/dist/ui/ratatui/headless_pane_manager.d.ts +3 -1
  233. package/dist/ui/ratatui/headless_pane_manager.js +16 -5
  234. package/dist/ui/ratatui/input.js +4 -3
  235. package/dist/ui/ratatui/process.js +22 -13
  236. package/dist/ui/ratatui/protocol.d.ts +14 -0
  237. package/dist/ui/ratatui/protocol.js +2 -0
  238. package/dist/ui/scrollback.d.ts +17 -0
  239. package/dist/ui/scrollback.js +138 -4
  240. package/dist/ui/terminal_image.d.ts +129 -0
  241. package/dist/ui/terminal_image.js +516 -0
  242. package/dist/ui/transcript_render_cache.d.ts +4 -4
  243. package/dist/ui/transcript_render_cache.js +7 -4
  244. package/dist/ui/views/app.d.ts +7 -3
  245. package/dist/ui/views/app.js +13 -6
  246. package/dist/ui/views/completion_menu.js +18 -10
  247. package/dist/ui/views/input_area.d.ts +1 -2
  248. package/dist/ui/views/input_area.js +2 -2
  249. package/dist/ui/views/message_list.d.ts +8 -1
  250. package/dist/ui/views/message_list.js +176 -45
  251. package/dist/ui/views/status_bar.js +7 -1
  252. package/dist/ui/views/theme.d.ts +2 -0
  253. package/dist/ui/views/theme.js +2 -0
  254. package/dist/ui/widgets/color_panel.js +4 -3
  255. package/dist/ui/widgets/form.d.ts +8 -1
  256. package/dist/ui/widgets/form.js +36 -22
  257. package/dist/ui/widgets/index.d.ts +1 -1
  258. package/dist/ui/widgets/index.js +1 -1
  259. package/dist/ui/widgets/log_view.js +4 -3
  260. package/dist/ui/widgets/navigator_panel.js +5 -4
  261. package/dist/ui/widgets/panel_frame.d.ts +2 -0
  262. package/dist/ui/widgets/panel_frame.js +14 -0
  263. package/dist/ui/widgets/prompt_viewer.js +2 -1
  264. package/dist/ui/widgets/questionnaire.js +3 -3
  265. package/dist/ui/widgets/reasoning_track.d.ts +60 -0
  266. package/dist/ui/widgets/reasoning_track.js +218 -0
  267. package/dist/ui/widgets/resume_panel.js +15 -10
  268. package/dist/ui/widgets/rewind_panel.js +4 -16
  269. package/dist/ui/widgets/select.d.ts +90 -4
  270. package/dist/ui/widgets/select.js +305 -135
  271. package/dist/ui/widgets/settings_panel.d.ts +21 -1
  272. package/dist/ui/widgets/settings_panel.js +266 -45
  273. package/dist/ui/widgets/status_line_panel.js +6 -5
  274. package/dist/ui/widgets/text_input.d.ts +4 -0
  275. package/dist/ui/widgets/text_input.js +20 -13
  276. package/dist/ui/widgets/types.d.ts +2 -0
  277. package/dist/utils/compaction.d.ts +24 -4
  278. package/dist/utils/compaction.js +228 -44
  279. package/dist/utils/context.js +1 -0
  280. package/dist/utils/debug_log.d.ts +12 -0
  281. package/dist/utils/debug_log.js +25 -3
  282. package/dist/utils/deepseek.d.ts +3 -1
  283. package/dist/utils/deepseek.js +29 -1
  284. package/dist/utils/docker_target.d.ts +28 -0
  285. package/dist/utils/docker_target.js +89 -0
  286. package/dist/utils/ephemeral.js +2 -0
  287. package/dist/utils/fireworks.d.ts +4 -4
  288. package/dist/utils/fireworks.js +11 -7
  289. package/dist/utils/idle_compaction.d.ts +32 -0
  290. package/dist/utils/idle_compaction.js +113 -0
  291. package/dist/utils/mid_turn_compaction.d.ts +12 -0
  292. package/dist/utils/mid_turn_compaction.js +17 -0
  293. package/dist/utils/open_url.d.ts +4 -0
  294. package/dist/utils/open_url.js +10 -0
  295. package/dist/utils/openrouter_prices.d.ts +165 -0
  296. package/dist/utils/openrouter_prices.js +313 -0
  297. package/dist/utils/router_catalog.d.ts +13 -0
  298. package/dist/utils/router_catalog.js +30 -3
  299. package/dist/utils/sandbox.d.ts +12 -0
  300. package/dist/utils/sandbox.js +23 -5
  301. package/dist/utils/session_interactivity.d.ts +21 -0
  302. package/dist/utils/session_interactivity.js +28 -0
  303. package/dist/utils/shell.d.ts +7 -0
  304. package/dist/utils/shell.js +43 -7
  305. package/dist/utils/subprocess_env.d.ts +27 -0
  306. package/dist/utils/subprocess_env.js +69 -3
  307. package/dist/utils/tool_output_copies.d.ts +44 -0
  308. package/dist/utils/tool_output_copies.js +196 -0
  309. package/dist/utils/tool_result_message.d.ts +7 -0
  310. package/dist/utils/tool_result_message.js +11 -0
  311. package/dist/utils/tool_trace.d.ts +15 -0
  312. package/dist/utils/tool_trace.js +40 -9
  313. package/dist/web/event_history_store.d.ts +2 -0
  314. package/dist/web/event_history_store.js +31 -6
  315. package/dist/web/mirror_client.d.ts +3 -0
  316. package/dist/web/mirror_stream.d.ts +11 -0
  317. package/dist/web/mirror_stream.js +23 -3
  318. package/dist/worker/executor.js +3 -1
  319. package/dist/worker/toolsets.d.ts +1 -1
  320. package/dist/worker/toolsets.js +4 -3
  321. package/dist/worker/types.d.ts +6 -0
  322. package/dist/worker/worker_models.d.ts +17 -0
  323. package/dist/worker/worker_models.js +79 -0
  324. package/dist/zlm-embed.mjs +53761 -10916
  325. package/node_modules/@zerg/model-contracts/README.md +16 -5
  326. package/node_modules/@zerg/model-contracts/index.d.ts +7 -3
  327. package/node_modules/@zerg/model-contracts/index.js +40 -18
  328. package/node_modules/abort-controller/LICENSE +21 -0
  329. package/node_modules/abort-controller/README.md +98 -0
  330. package/node_modules/abort-controller/browser.js +13 -0
  331. package/node_modules/abort-controller/browser.mjs +11 -0
  332. package/node_modules/abort-controller/dist/abort-controller.d.ts +43 -0
  333. package/node_modules/abort-controller/dist/abort-controller.js +127 -0
  334. package/node_modules/abort-controller/dist/abort-controller.js.map +1 -0
  335. package/node_modules/abort-controller/dist/abort-controller.mjs +118 -0
  336. package/node_modules/abort-controller/dist/abort-controller.mjs.map +1 -0
  337. package/node_modules/abort-controller/dist/abort-controller.umd.js +5 -0
  338. package/node_modules/abort-controller/dist/abort-controller.umd.js.map +1 -0
  339. package/node_modules/abort-controller/package.json +97 -0
  340. package/node_modules/abort-controller/polyfill.js +21 -0
  341. package/node_modules/abort-controller/polyfill.mjs +19 -0
  342. package/node_modules/bluebird/LICENSE +1 -1
  343. package/node_modules/bluebird/README.md +8 -2
  344. package/node_modules/bluebird/js/browser/bluebird.core.js +325 -150
  345. package/node_modules/bluebird/js/browser/bluebird.core.min.js +4 -4
  346. package/node_modules/bluebird/js/browser/bluebird.js +362 -165
  347. package/node_modules/bluebird/js/browser/bluebird.min.js +5 -5
  348. package/node_modules/bluebird/js/release/async.js +15 -56
  349. package/node_modules/bluebird/js/release/debuggability.js +118 -25
  350. package/node_modules/bluebird/js/release/finally.js +37 -2
  351. package/node_modules/bluebird/js/release/generators.js +1 -1
  352. package/node_modules/bluebird/js/release/join.js +4 -7
  353. package/node_modules/bluebird/js/release/map.js +10 -3
  354. package/node_modules/bluebird/js/release/promise.js +89 -43
  355. package/node_modules/bluebird/js/release/promise_array.js +2 -0
  356. package/node_modules/bluebird/js/release/props.js +1 -1
  357. package/node_modules/bluebird/js/release/reduce.js +16 -5
  358. package/node_modules/bluebird/js/release/schedule.js +6 -5
  359. package/node_modules/bluebird/js/release/settle.js +4 -0
  360. package/node_modules/bluebird/js/release/util.js +53 -11
  361. package/node_modules/bluebird/package.json +7 -5
  362. package/node_modules/buffer/AUTHORS.md +3 -0
  363. package/node_modules/buffer/README.md +1 -1
  364. package/node_modules/buffer/index.d.ts +11 -3
  365. package/node_modules/buffer/index.js +424 -135
  366. package/node_modules/buffer/package.json +8 -11
  367. package/node_modules/compress-commons/README.md +1 -1
  368. package/node_modules/compress-commons/lib/archivers/archive-entry.js +6 -16
  369. package/node_modules/compress-commons/lib/archivers/archive-output-stream.js +79 -98
  370. package/node_modules/compress-commons/lib/archivers/zip/constants.js +99 -70
  371. package/node_modules/compress-commons/lib/archivers/zip/general-purpose-bit.js +70 -92
  372. package/node_modules/compress-commons/lib/archivers/zip/unix-stat.js +19 -53
  373. package/node_modules/compress-commons/lib/archivers/zip/util.js +49 -49
  374. package/node_modules/compress-commons/lib/archivers/zip/zip-archive-entry.js +356 -389
  375. package/node_modules/compress-commons/lib/archivers/zip/zip-archive-output-stream.js +335 -404
  376. package/node_modules/compress-commons/lib/compress-commons.js +18 -13
  377. package/node_modules/compress-commons/lib/util/index.js +11 -21
  378. package/node_modules/compress-commons/node_modules/readable-stream/README.md +116 -0
  379. package/node_modules/compress-commons/node_modules/readable-stream/lib/_stream_duplex.js +4 -0
  380. package/node_modules/compress-commons/node_modules/readable-stream/lib/_stream_passthrough.js +4 -0
  381. package/node_modules/compress-commons/node_modules/readable-stream/lib/_stream_readable.js +4 -0
  382. package/node_modules/compress-commons/node_modules/readable-stream/lib/_stream_transform.js +4 -0
  383. package/node_modules/compress-commons/node_modules/readable-stream/lib/_stream_writable.js +4 -0
  384. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/shims/process.js +19 -0
  385. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/add-abort-signal.js +52 -0
  386. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/buffer_list.js +157 -0
  387. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/compose.js +194 -0
  388. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/destroy.js +290 -0
  389. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/duplex.js +143 -0
  390. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/duplexify.js +378 -0
  391. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +286 -0
  392. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/from.js +98 -0
  393. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/lazy_transform.js +51 -0
  394. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/legacy.js +94 -0
  395. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/operators.js +457 -0
  396. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/passthrough.js +39 -0
  397. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/pipeline.js +471 -0
  398. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/readable.js +1290 -0
  399. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/state.js +39 -0
  400. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/transform.js +180 -0
  401. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/utils.js +327 -0
  402. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/writable.js +819 -0
  403. package/node_modules/compress-commons/node_modules/readable-stream/lib/internal/validators.js +530 -0
  404. package/node_modules/compress-commons/node_modules/readable-stream/lib/ours/browser.js +35 -0
  405. package/node_modules/compress-commons/node_modules/readable-stream/lib/ours/errors.js +343 -0
  406. package/node_modules/compress-commons/node_modules/readable-stream/lib/ours/index.js +65 -0
  407. package/node_modules/compress-commons/node_modules/readable-stream/lib/ours/primordials.js +124 -0
  408. package/node_modules/compress-commons/node_modules/readable-stream/lib/ours/util/inspect.js +55 -0
  409. package/node_modules/compress-commons/node_modules/readable-stream/lib/ours/util.js +148 -0
  410. package/node_modules/compress-commons/node_modules/readable-stream/lib/stream/promises.js +43 -0
  411. package/node_modules/compress-commons/node_modules/readable-stream/lib/stream.js +143 -0
  412. package/node_modules/compress-commons/node_modules/readable-stream/package.json +89 -0
  413. package/node_modules/compress-commons/package.json +13 -10
  414. package/node_modules/crc32-stream/README.md +8 -8
  415. package/node_modules/crc32-stream/lib/crc32-stream.js +4 -23
  416. package/node_modules/crc32-stream/lib/deflate-crc32-stream.js +5 -27
  417. package/node_modules/crc32-stream/lib/index.js +7 -6
  418. package/node_modules/crc32-stream/node_modules/readable-stream/README.md +116 -0
  419. package/node_modules/crc32-stream/node_modules/readable-stream/lib/_stream_duplex.js +4 -0
  420. package/node_modules/crc32-stream/node_modules/readable-stream/lib/_stream_passthrough.js +4 -0
  421. package/node_modules/crc32-stream/node_modules/readable-stream/lib/_stream_readable.js +4 -0
  422. package/node_modules/crc32-stream/node_modules/readable-stream/lib/_stream_transform.js +4 -0
  423. package/node_modules/crc32-stream/node_modules/readable-stream/lib/_stream_writable.js +4 -0
  424. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/shims/process.js +19 -0
  425. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/add-abort-signal.js +52 -0
  426. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/buffer_list.js +157 -0
  427. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/compose.js +194 -0
  428. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/destroy.js +290 -0
  429. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/duplex.js +143 -0
  430. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/duplexify.js +378 -0
  431. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +286 -0
  432. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/from.js +98 -0
  433. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/lazy_transform.js +51 -0
  434. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/legacy.js +94 -0
  435. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/operators.js +457 -0
  436. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/passthrough.js +39 -0
  437. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/pipeline.js +471 -0
  438. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/readable.js +1290 -0
  439. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/state.js +39 -0
  440. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/transform.js +180 -0
  441. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/utils.js +327 -0
  442. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/writable.js +819 -0
  443. package/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/validators.js +530 -0
  444. package/node_modules/crc32-stream/node_modules/readable-stream/lib/ours/browser.js +35 -0
  445. package/node_modules/crc32-stream/node_modules/readable-stream/lib/ours/errors.js +343 -0
  446. package/node_modules/crc32-stream/node_modules/readable-stream/lib/ours/index.js +65 -0
  447. package/node_modules/crc32-stream/node_modules/readable-stream/lib/ours/primordials.js +124 -0
  448. package/node_modules/crc32-stream/node_modules/readable-stream/lib/ours/util/inspect.js +55 -0
  449. package/node_modules/crc32-stream/node_modules/readable-stream/lib/ours/util.js +148 -0
  450. package/node_modules/crc32-stream/node_modules/readable-stream/lib/stream/promises.js +43 -0
  451. package/node_modules/crc32-stream/node_modules/readable-stream/lib/stream.js +143 -0
  452. package/node_modules/crc32-stream/node_modules/readable-stream/package.json +89 -0
  453. package/node_modules/crc32-stream/package.json +9 -10
  454. package/node_modules/event-target-shim/LICENSE +22 -0
  455. package/node_modules/event-target-shim/README.md +293 -0
  456. package/node_modules/event-target-shim/dist/event-target-shim.js +871 -0
  457. package/node_modules/event-target-shim/dist/event-target-shim.js.map +1 -0
  458. package/node_modules/event-target-shim/dist/event-target-shim.mjs +862 -0
  459. package/node_modules/event-target-shim/dist/event-target-shim.mjs.map +1 -0
  460. package/node_modules/event-target-shim/dist/event-target-shim.umd.js +6 -0
  461. package/node_modules/event-target-shim/dist/event-target-shim.umd.js.map +1 -0
  462. package/node_modules/event-target-shim/index.d.ts +399 -0
  463. package/node_modules/event-target-shim/package.json +82 -0
  464. package/node_modules/events/.airtap.yml +15 -0
  465. package/node_modules/events/.github/FUNDING.yml +12 -0
  466. package/node_modules/events/.travis.yml +18 -0
  467. package/node_modules/events/History.md +118 -0
  468. package/node_modules/events/LICENSE +22 -0
  469. package/node_modules/events/Readme.md +50 -0
  470. package/node_modules/events/events.js +497 -0
  471. package/node_modules/events/package.json +37 -0
  472. package/node_modules/events/security.md +10 -0
  473. package/node_modules/events/tests/add-listeners.js +111 -0
  474. package/node_modules/events/tests/check-listener-leaks.js +101 -0
  475. package/node_modules/events/tests/common.js +104 -0
  476. package/node_modules/events/tests/errors.js +13 -0
  477. package/node_modules/events/tests/events-list.js +28 -0
  478. package/node_modules/events/tests/events-once.js +234 -0
  479. package/node_modules/events/tests/index.js +64 -0
  480. package/node_modules/events/tests/legacy-compat.js +16 -0
  481. package/node_modules/events/tests/listener-count.js +37 -0
  482. package/node_modules/events/tests/listeners-side-effects.js +56 -0
  483. package/node_modules/events/tests/listeners.js +168 -0
  484. package/node_modules/events/tests/max-listeners.js +47 -0
  485. package/node_modules/events/tests/method-names.js +35 -0
  486. package/node_modules/events/tests/modify-in-emit.js +90 -0
  487. package/node_modules/events/tests/num-args.js +60 -0
  488. package/node_modules/events/tests/once.js +83 -0
  489. package/node_modules/events/tests/prepend.js +31 -0
  490. package/node_modules/events/tests/remove-all-listeners.js +133 -0
  491. package/node_modules/events/tests/remove-listeners.js +212 -0
  492. package/node_modules/events/tests/set-max-listeners-side-effects.js +31 -0
  493. package/node_modules/events/tests/special-event-names.js +45 -0
  494. package/node_modules/events/tests/subclass.js +66 -0
  495. package/node_modules/events/tests/symbols.js +25 -0
  496. package/node_modules/exceljs/lib/stream/xlsx/workbook-reader.js +5 -1
  497. package/node_modules/exceljs/lib/stream/xlsx/workbook-writer.js +2 -2
  498. package/node_modules/exceljs/lib/utils/zip-archive.js +85 -0
  499. package/node_modules/exceljs/package.json +3 -3
  500. package/node_modules/fs-extra/LICENSE +15 -0
  501. package/node_modules/fs-extra/README.md +294 -0
  502. package/node_modules/fs-extra/lib/copy/copy-sync.js +171 -0
  503. package/node_modules/fs-extra/lib/copy/copy.js +182 -0
  504. package/node_modules/fs-extra/lib/copy/index.js +7 -0
  505. package/node_modules/fs-extra/lib/empty/index.js +39 -0
  506. package/node_modules/fs-extra/lib/ensure/file.js +66 -0
  507. package/node_modules/fs-extra/lib/ensure/index.js +23 -0
  508. package/node_modules/fs-extra/lib/ensure/link.js +64 -0
  509. package/node_modules/fs-extra/lib/ensure/symlink-paths.js +101 -0
  510. package/node_modules/fs-extra/lib/ensure/symlink-type.js +34 -0
  511. package/node_modules/fs-extra/lib/ensure/symlink.js +67 -0
  512. package/node_modules/fs-extra/lib/esm.mjs +68 -0
  513. package/node_modules/fs-extra/lib/fs/index.js +146 -0
  514. package/node_modules/fs-extra/lib/index.js +16 -0
  515. package/node_modules/fs-extra/lib/json/index.js +16 -0
  516. package/node_modules/fs-extra/lib/json/jsonfile.js +11 -0
  517. package/node_modules/fs-extra/lib/json/output-json-sync.js +12 -0
  518. package/node_modules/fs-extra/lib/json/output-json.js +12 -0
  519. package/node_modules/fs-extra/lib/mkdirs/index.js +14 -0
  520. package/node_modules/fs-extra/lib/mkdirs/make-dir.js +27 -0
  521. package/node_modules/fs-extra/lib/mkdirs/utils.js +21 -0
  522. package/node_modules/fs-extra/lib/move/index.js +7 -0
  523. package/node_modules/fs-extra/lib/move/move-sync.js +55 -0
  524. package/node_modules/fs-extra/lib/move/move.js +59 -0
  525. package/node_modules/fs-extra/lib/output-file/index.js +31 -0
  526. package/node_modules/fs-extra/lib/path-exists/index.js +12 -0
  527. package/node_modules/fs-extra/lib/remove/index.js +17 -0
  528. package/node_modules/fs-extra/lib/util/stat.js +159 -0
  529. package/node_modules/fs-extra/lib/util/utimes.js +36 -0
  530. package/node_modules/fs-extra/package.json +71 -0
  531. package/node_modules/is-stream/index.d.ts +90 -0
  532. package/node_modules/is-stream/index.js +37 -0
  533. package/node_modules/is-stream/license +9 -0
  534. package/node_modules/is-stream/package.json +48 -0
  535. package/node_modules/is-stream/readme.md +57 -0
  536. package/node_modules/jsonfile/LICENSE +15 -0
  537. package/node_modules/jsonfile/README.md +230 -0
  538. package/node_modules/jsonfile/index.js +88 -0
  539. package/node_modules/jsonfile/package.json +40 -0
  540. package/node_modules/jsonfile/utils.js +18 -0
  541. package/node_modules/node-int64/.npmignore +3 -0
  542. package/node_modules/node-int64/Int64.js +268 -0
  543. package/node_modules/node-int64/LICENSE +19 -0
  544. package/node_modules/node-int64/README.md +78 -0
  545. package/node_modules/node-int64/package.json +27 -0
  546. package/node_modules/node-int64/test.js +120 -0
  547. package/node_modules/process/.eslintrc +21 -0
  548. package/node_modules/process/LICENSE +22 -0
  549. package/node_modules/process/README.md +26 -0
  550. package/node_modules/process/browser.js +184 -0
  551. package/node_modules/process/index.js +2 -0
  552. package/node_modules/process/package.json +27 -0
  553. package/node_modules/process/test.js +199 -0
  554. package/node_modules/universalify/LICENSE +20 -0
  555. package/node_modules/universalify/README.md +76 -0
  556. package/node_modules/universalify/index.js +24 -0
  557. package/node_modules/universalify/package.json +34 -0
  558. package/node_modules/unzipper/README.md +206 -176
  559. package/node_modules/unzipper/eslint.config.mjs +29 -0
  560. package/node_modules/unzipper/lib/BufferStream.js +9 -15
  561. package/node_modules/unzipper/lib/Decrypt.js +58 -36
  562. package/node_modules/unzipper/lib/NoopStream.js +5 -10
  563. package/node_modules/unzipper/lib/Open/directory.js +140 -127
  564. package/node_modules/unzipper/lib/Open/index.js +72 -32
  565. package/node_modules/unzipper/lib/Open/unzip.js +68 -74
  566. package/node_modules/unzipper/lib/PullStream.js +50 -55
  567. package/node_modules/unzipper/lib/extract.js +26 -18
  568. package/node_modules/unzipper/lib/parse.js +119 -118
  569. package/node_modules/unzipper/lib/parseBuffer.js +55 -0
  570. package/node_modules/unzipper/lib/parseExtraField.js +17 -14
  571. package/node_modules/unzipper/lib/parseOne.js +23 -27
  572. package/node_modules/unzipper/package.json +12 -13
  573. package/node_modules/unzipper/unzip.js +0 -6
  574. package/node_modules/zip-stream/README.md +5 -5
  575. package/node_modules/zip-stream/index.js +143 -169
  576. package/node_modules/zip-stream/node_modules/readable-stream/README.md +116 -0
  577. package/node_modules/zip-stream/node_modules/readable-stream/lib/_stream_duplex.js +4 -0
  578. package/node_modules/zip-stream/node_modules/readable-stream/lib/_stream_passthrough.js +4 -0
  579. package/node_modules/zip-stream/node_modules/readable-stream/lib/_stream_readable.js +4 -0
  580. package/node_modules/zip-stream/node_modules/readable-stream/lib/_stream_transform.js +4 -0
  581. package/node_modules/zip-stream/node_modules/readable-stream/lib/_stream_writable.js +4 -0
  582. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/shims/process.js +19 -0
  583. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/add-abort-signal.js +52 -0
  584. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/buffer_list.js +157 -0
  585. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/compose.js +194 -0
  586. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/destroy.js +290 -0
  587. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/duplex.js +143 -0
  588. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/duplexify.js +378 -0
  589. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +286 -0
  590. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/from.js +98 -0
  591. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/lazy_transform.js +51 -0
  592. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/legacy.js +94 -0
  593. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/operators.js +457 -0
  594. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/passthrough.js +39 -0
  595. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/pipeline.js +471 -0
  596. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/readable.js +1290 -0
  597. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/state.js +39 -0
  598. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/transform.js +180 -0
  599. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/utils.js +327 -0
  600. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/writable.js +819 -0
  601. package/node_modules/zip-stream/node_modules/readable-stream/lib/internal/validators.js +530 -0
  602. package/node_modules/zip-stream/node_modules/readable-stream/lib/ours/browser.js +35 -0
  603. package/node_modules/zip-stream/node_modules/readable-stream/lib/ours/errors.js +343 -0
  604. package/node_modules/zip-stream/node_modules/readable-stream/lib/ours/index.js +65 -0
  605. package/node_modules/zip-stream/node_modules/readable-stream/lib/ours/primordials.js +124 -0
  606. package/node_modules/zip-stream/node_modules/readable-stream/lib/ours/util/inspect.js +55 -0
  607. package/node_modules/zip-stream/node_modules/readable-stream/lib/ours/util.js +148 -0
  608. package/node_modules/zip-stream/node_modules/readable-stream/lib/stream/promises.js +43 -0
  609. package/node_modules/zip-stream/node_modules/readable-stream/lib/stream.js +143 -0
  610. package/node_modules/zip-stream/node_modules/readable-stream/package.json +89 -0
  611. package/node_modules/zip-stream/package.json +15 -12
  612. package/node_modules/zip-stream/utils.js +21 -0
  613. package/package.json +22 -10
  614. package/packages/exceljs/PROVENANCE.md +24 -1
  615. package/packages/exceljs/lib/stream/xlsx/workbook-reader.js +5 -1
  616. package/packages/exceljs/lib/stream/xlsx/workbook-writer.js +2 -2
  617. package/packages/exceljs/lib/utils/zip-archive.js +85 -0
  618. package/packages/exceljs/package.json +3 -3
  619. package/packages/model-contracts/README.md +16 -5
  620. package/packages/model-contracts/index.d.ts +7 -3
  621. package/packages/model-contracts/index.js +40 -18
  622. package/scripts/install-macos-app.mjs +10 -1
  623. package/node_modules/archiver/LICENSE +0 -22
  624. package/node_modules/archiver/README.md +0 -94
  625. package/node_modules/archiver/index.js +0 -84
  626. package/node_modules/archiver/lib/core.js +0 -974
  627. package/node_modules/archiver/lib/error.js +0 -40
  628. package/node_modules/archiver/lib/plugins/json.js +0 -110
  629. package/node_modules/archiver/lib/plugins/tar.js +0 -167
  630. package/node_modules/archiver/lib/plugins/zip.js +0 -120
  631. package/node_modules/archiver/package.json +0 -60
  632. package/node_modules/archiver-utils/LICENSE +0 -22
  633. package/node_modules/archiver-utils/README.md +0 -7
  634. package/node_modules/archiver-utils/file.js +0 -209
  635. package/node_modules/archiver-utils/index.js +0 -156
  636. package/node_modules/archiver-utils/node_modules/readable-stream/.travis.yml +0 -34
  637. package/node_modules/archiver-utils/node_modules/readable-stream/CONTRIBUTING.md +0 -38
  638. package/node_modules/archiver-utils/node_modules/readable-stream/GOVERNANCE.md +0 -136
  639. package/node_modules/archiver-utils/node_modules/readable-stream/README.md +0 -58
  640. package/node_modules/archiver-utils/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +0 -60
  641. package/node_modules/archiver-utils/node_modules/readable-stream/duplex-browser.js +0 -1
  642. package/node_modules/archiver-utils/node_modules/readable-stream/duplex.js +0 -1
  643. package/node_modules/archiver-utils/node_modules/readable-stream/lib/_stream_duplex.js +0 -131
  644. package/node_modules/archiver-utils/node_modules/readable-stream/lib/_stream_passthrough.js +0 -47
  645. package/node_modules/archiver-utils/node_modules/readable-stream/lib/_stream_readable.js +0 -1019
  646. package/node_modules/archiver-utils/node_modules/readable-stream/lib/_stream_transform.js +0 -214
  647. package/node_modules/archiver-utils/node_modules/readable-stream/lib/_stream_writable.js +0 -685
  648. package/node_modules/archiver-utils/node_modules/readable-stream/lib/internal/streams/BufferList.js +0 -78
  649. package/node_modules/archiver-utils/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -84
  650. package/node_modules/archiver-utils/node_modules/readable-stream/lib/internal/streams/stream-browser.js +0 -1
  651. package/node_modules/archiver-utils/node_modules/readable-stream/lib/internal/streams/stream.js +0 -1
  652. package/node_modules/archiver-utils/node_modules/readable-stream/package.json +0 -52
  653. package/node_modules/archiver-utils/node_modules/readable-stream/passthrough.js +0 -1
  654. package/node_modules/archiver-utils/node_modules/readable-stream/readable-browser.js +0 -7
  655. package/node_modules/archiver-utils/node_modules/readable-stream/readable.js +0 -19
  656. package/node_modules/archiver-utils/node_modules/readable-stream/transform.js +0 -1
  657. package/node_modules/archiver-utils/node_modules/readable-stream/writable-browser.js +0 -1
  658. package/node_modules/archiver-utils/node_modules/readable-stream/writable.js +0 -8
  659. package/node_modules/archiver-utils/node_modules/safe-buffer/LICENSE +0 -21
  660. package/node_modules/archiver-utils/node_modules/safe-buffer/README.md +0 -584
  661. package/node_modules/archiver-utils/node_modules/safe-buffer/index.d.ts +0 -187
  662. package/node_modules/archiver-utils/node_modules/safe-buffer/index.js +0 -62
  663. package/node_modules/archiver-utils/node_modules/safe-buffer/package.json +0 -37
  664. package/node_modules/archiver-utils/node_modules/string_decoder/.travis.yml +0 -50
  665. package/node_modules/archiver-utils/node_modules/string_decoder/LICENSE +0 -48
  666. package/node_modules/archiver-utils/node_modules/string_decoder/README.md +0 -47
  667. package/node_modules/archiver-utils/node_modules/string_decoder/lib/string_decoder.js +0 -296
  668. package/node_modules/archiver-utils/node_modules/string_decoder/package.json +0 -31
  669. package/node_modules/archiver-utils/package.json +0 -54
  670. package/node_modules/async/CHANGELOG.md +0 -351
  671. package/node_modules/async/LICENSE +0 -19
  672. package/node_modules/async/README.md +0 -59
  673. package/node_modules/async/all.js +0 -119
  674. package/node_modules/async/allLimit.js +0 -46
  675. package/node_modules/async/allSeries.js +0 -45
  676. package/node_modules/async/any.js +0 -122
  677. package/node_modules/async/anyLimit.js +0 -47
  678. package/node_modules/async/anySeries.js +0 -46
  679. package/node_modules/async/apply.js +0 -11
  680. package/node_modules/async/applyEach.js +0 -57
  681. package/node_modules/async/applyEachSeries.js +0 -37
  682. package/node_modules/async/asyncify.js +0 -118
  683. package/node_modules/async/auto.js +0 -333
  684. package/node_modules/async/autoInject.js +0 -182
  685. package/node_modules/async/bower.json +0 -17
  686. package/node_modules/async/cargo.js +0 -63
  687. package/node_modules/async/cargoQueue.js +0 -71
  688. package/node_modules/async/compose.js +0 -55
  689. package/node_modules/async/concat.js +0 -115
  690. package/node_modules/async/concatLimit.js +0 -60
  691. package/node_modules/async/concatSeries.js +0 -41
  692. package/node_modules/async/constant.js +0 -14
  693. package/node_modules/async/detect.js +0 -96
  694. package/node_modules/async/detectLimit.js +0 -48
  695. package/node_modules/async/detectSeries.js +0 -47
  696. package/node_modules/async/dir.js +0 -43
  697. package/node_modules/async/dist/async.js +0 -6061
  698. package/node_modules/async/dist/async.min.js +0 -1
  699. package/node_modules/async/dist/async.mjs +0 -5948
  700. package/node_modules/async/doDuring.js +0 -68
  701. package/node_modules/async/doUntil.js +0 -46
  702. package/node_modules/async/doWhilst.js +0 -68
  703. package/node_modules/async/during.js +0 -78
  704. package/node_modules/async/each.js +0 -129
  705. package/node_modules/async/eachLimit.js +0 -50
  706. package/node_modules/async/eachOf.js +0 -185
  707. package/node_modules/async/eachOfLimit.js +0 -47
  708. package/node_modules/async/eachOfSeries.js +0 -39
  709. package/node_modules/async/eachSeries.js +0 -44
  710. package/node_modules/async/ensureAsync.js +0 -67
  711. package/node_modules/async/every.js +0 -119
  712. package/node_modules/async/everyLimit.js +0 -46
  713. package/node_modules/async/everySeries.js +0 -45
  714. package/node_modules/async/filter.js +0 -93
  715. package/node_modules/async/filterLimit.js +0 -45
  716. package/node_modules/async/filterSeries.js +0 -43
  717. package/node_modules/async/find.js +0 -96
  718. package/node_modules/async/findLimit.js +0 -48
  719. package/node_modules/async/findSeries.js +0 -47
  720. package/node_modules/async/flatMap.js +0 -115
  721. package/node_modules/async/flatMapLimit.js +0 -60
  722. package/node_modules/async/flatMapSeries.js +0 -41
  723. package/node_modules/async/foldl.js +0 -153
  724. package/node_modules/async/foldr.js +0 -41
  725. package/node_modules/async/forEach.js +0 -129
  726. package/node_modules/async/forEachLimit.js +0 -50
  727. package/node_modules/async/forEachOf.js +0 -185
  728. package/node_modules/async/forEachOfLimit.js +0 -47
  729. package/node_modules/async/forEachOfSeries.js +0 -39
  730. package/node_modules/async/forEachSeries.js +0 -44
  731. package/node_modules/async/forever.js +0 -68
  732. package/node_modules/async/groupBy.js +0 -108
  733. package/node_modules/async/groupByLimit.js +0 -71
  734. package/node_modules/async/groupBySeries.js +0 -36
  735. package/node_modules/async/index.js +0 -588
  736. package/node_modules/async/inject.js +0 -153
  737. package/node_modules/async/internal/DoublyLinkedList.js +0 -92
  738. package/node_modules/async/internal/Heap.js +0 -120
  739. package/node_modules/async/internal/applyEach.js +0 -29
  740. package/node_modules/async/internal/asyncEachOfLimit.js +0 -75
  741. package/node_modules/async/internal/awaitify.js +0 -28
  742. package/node_modules/async/internal/breakLoop.js +0 -10
  743. package/node_modules/async/internal/consoleFunc.js +0 -31
  744. package/node_modules/async/internal/createTester.js +0 -40
  745. package/node_modules/async/internal/eachOfLimit.js +0 -90
  746. package/node_modules/async/internal/filter.js +0 -55
  747. package/node_modules/async/internal/getIterator.js +0 -11
  748. package/node_modules/async/internal/initialParams.js +0 -14
  749. package/node_modules/async/internal/isArrayLike.js +0 -10
  750. package/node_modules/async/internal/iterator.js +0 -57
  751. package/node_modules/async/internal/map.js +0 -30
  752. package/node_modules/async/internal/once.js +0 -17
  753. package/node_modules/async/internal/onlyOnce.js +0 -15
  754. package/node_modules/async/internal/parallel.js +0 -34
  755. package/node_modules/async/internal/promiseCallback.js +0 -23
  756. package/node_modules/async/internal/queue.js +0 -294
  757. package/node_modules/async/internal/range.js +0 -14
  758. package/node_modules/async/internal/reject.js +0 -26
  759. package/node_modules/async/internal/setImmediate.js +0 -34
  760. package/node_modules/async/internal/withoutIndex.js +0 -10
  761. package/node_modules/async/internal/wrapAsync.js +0 -34
  762. package/node_modules/async/log.js +0 -41
  763. package/node_modules/async/map.js +0 -142
  764. package/node_modules/async/mapLimit.js +0 -45
  765. package/node_modules/async/mapSeries.js +0 -44
  766. package/node_modules/async/mapValues.js +0 -152
  767. package/node_modules/async/mapValuesLimit.js +0 -61
  768. package/node_modules/async/mapValuesSeries.js +0 -37
  769. package/node_modules/async/memoize.js +0 -91
  770. package/node_modules/async/nextTick.js +0 -52
  771. package/node_modules/async/package.json +0 -75
  772. package/node_modules/async/parallel.js +0 -180
  773. package/node_modules/async/parallelLimit.js +0 -41
  774. package/node_modules/async/priorityQueue.js +0 -60
  775. package/node_modules/async/queue.js +0 -24
  776. package/node_modules/async/race.js +0 -67
  777. package/node_modules/async/reduce.js +0 -153
  778. package/node_modules/async/reduceRight.js +0 -41
  779. package/node_modules/async/reflect.js +0 -78
  780. package/node_modules/async/reflectAll.js +0 -93
  781. package/node_modules/async/reject.js +0 -87
  782. package/node_modules/async/rejectLimit.js +0 -45
  783. package/node_modules/async/rejectSeries.js +0 -43
  784. package/node_modules/async/retry.js +0 -159
  785. package/node_modules/async/retryable.js +0 -77
  786. package/node_modules/async/select.js +0 -93
  787. package/node_modules/async/selectLimit.js +0 -45
  788. package/node_modules/async/selectSeries.js +0 -43
  789. package/node_modules/async/seq.js +0 -79
  790. package/node_modules/async/series.js +0 -186
  791. package/node_modules/async/setImmediate.js +0 -45
  792. package/node_modules/async/some.js +0 -122
  793. package/node_modules/async/someLimit.js +0 -47
  794. package/node_modules/async/someSeries.js +0 -46
  795. package/node_modules/async/sortBy.js +0 -190
  796. package/node_modules/async/timeout.js +0 -89
  797. package/node_modules/async/times.js +0 -50
  798. package/node_modules/async/timesLimit.js +0 -43
  799. package/node_modules/async/timesSeries.js +0 -32
  800. package/node_modules/async/transform.js +0 -173
  801. package/node_modules/async/tryEach.js +0 -78
  802. package/node_modules/async/unmemoize.js +0 -25
  803. package/node_modules/async/until.js +0 -61
  804. package/node_modules/async/waterfall.js +0 -105
  805. package/node_modules/async/whilst.js +0 -78
  806. package/node_modules/async/wrapSync.js +0 -118
  807. package/node_modules/big-integer/BigInteger.d.ts +0 -2393
  808. package/node_modules/big-integer/BigInteger.js +0 -1453
  809. package/node_modules/big-integer/BigInteger.min.js +0 -1
  810. package/node_modules/big-integer/LICENSE +0 -24
  811. package/node_modules/big-integer/README.md +0 -589
  812. package/node_modules/big-integer/bower.json +0 -29
  813. package/node_modules/big-integer/package.json +0 -48
  814. package/node_modules/big-integer/tsconfig.json +0 -24
  815. package/node_modules/binary/.npmignore +0 -1
  816. package/node_modules/binary/.travis.yml +0 -4
  817. package/node_modules/binary/README.markdown +0 -177
  818. package/node_modules/binary/example/buf.js +0 -11
  819. package/node_modules/binary/example/parse.js +0 -10
  820. package/node_modules/binary/example/stream.js +0 -12
  821. package/node_modules/binary/index.js +0 -397
  822. package/node_modules/binary/lib/vars.js +0 -28
  823. package/node_modules/binary/package.json +0 -38
  824. package/node_modules/binary/perf/loop.js +0 -92
  825. package/node_modules/binary/perf/small.js +0 -80
  826. package/node_modules/binary/test/bu.js +0 -46
  827. package/node_modules/binary/test/deferred.js +0 -20
  828. package/node_modules/binary/test/dots.js +0 -23
  829. package/node_modules/binary/test/eof.js +0 -41
  830. package/node_modules/binary/test/flush.js +0 -17
  831. package/node_modules/binary/test/from_buffer.js +0 -14
  832. package/node_modules/binary/test/get_buffer.js +0 -28
  833. package/node_modules/binary/test/immediate.js +0 -18
  834. package/node_modules/binary/test/interval.js +0 -38
  835. package/node_modules/binary/test/into_buffer.js +0 -35
  836. package/node_modules/binary/test/into_stream.js +0 -43
  837. package/node_modules/binary/test/loop.js +0 -44
  838. package/node_modules/binary/test/loop_scan.js +0 -54
  839. package/node_modules/binary/test/lu.js +0 -46
  840. package/node_modules/binary/test/negbs.js +0 -29
  841. package/node_modules/binary/test/negls.js +0 -29
  842. package/node_modules/binary/test/nested.js +0 -35
  843. package/node_modules/binary/test/not_enough_buf.js +0 -17
  844. package/node_modules/binary/test/not_enough_parse.js +0 -19
  845. package/node_modules/binary/test/parse.js +0 -54
  846. package/node_modules/binary/test/peek.js +0 -40
  847. package/node_modules/binary/test/pipe.js +0 -49
  848. package/node_modules/binary/test/posbs.js +0 -29
  849. package/node_modules/binary/test/posls.js +0 -29
  850. package/node_modules/binary/test/scan.js +0 -33
  851. package/node_modules/binary/test/scan_buf.js +0 -18
  852. package/node_modules/binary/test/scan_buf_null.js +0 -16
  853. package/node_modules/binary/test/skip.js +0 -58
  854. package/node_modules/binary/test/split.js +0 -34
  855. package/node_modules/bl/.travis.yml +0 -17
  856. package/node_modules/bl/BufferList.js +0 -396
  857. package/node_modules/bl/LICENSE.md +0 -13
  858. package/node_modules/bl/README.md +0 -247
  859. package/node_modules/bl/bl.js +0 -84
  860. package/node_modules/bl/package.json +0 -37
  861. package/node_modules/bl/test/convert.js +0 -21
  862. package/node_modules/bl/test/indexOf.js +0 -492
  863. package/node_modules/bl/test/isBufferList.js +0 -32
  864. package/node_modules/bl/test/test.js +0 -869
  865. package/node_modules/buffer-crc32/LICENSE +0 -19
  866. package/node_modules/buffer-crc32/README.md +0 -47
  867. package/node_modules/buffer-crc32/index.js +0 -111
  868. package/node_modules/buffer-crc32/package.json +0 -39
  869. package/node_modules/buffer-indexof-polyfill/.eslintrc +0 -33
  870. package/node_modules/buffer-indexof-polyfill/.travis.yml +0 -17
  871. package/node_modules/buffer-indexof-polyfill/LICENSE +0 -22
  872. package/node_modules/buffer-indexof-polyfill/README.md +0 -33
  873. package/node_modules/buffer-indexof-polyfill/index.js +0 -73
  874. package/node_modules/buffer-indexof-polyfill/init-buffer.js +0 -8
  875. package/node_modules/buffer-indexof-polyfill/package.json +0 -34
  876. package/node_modules/buffer-indexof-polyfill/test/indexof.js +0 -128
  877. package/node_modules/buffers/README.markdown +0 -122
  878. package/node_modules/buffers/examples/slice.js +0 -9
  879. package/node_modules/buffers/examples/splice.js +0 -17
  880. package/node_modules/buffers/index.js +0 -269
  881. package/node_modules/buffers/package.json +0 -14
  882. package/node_modules/buffers/test/buffers.js +0 -209
  883. package/node_modules/chainsaw/.npmignore +0 -1
  884. package/node_modules/chainsaw/README.markdown +0 -157
  885. package/node_modules/chainsaw/examples/add_do.js +0 -25
  886. package/node_modules/chainsaw/examples/prompt.js +0 -67
  887. package/node_modules/chainsaw/index.js +0 -145
  888. package/node_modules/chainsaw/package.json +0 -23
  889. package/node_modules/chainsaw/test/chainsaw.js +0 -418
  890. package/node_modules/concat-map/.travis.yml +0 -4
  891. package/node_modules/concat-map/LICENSE +0 -18
  892. package/node_modules/concat-map/README.markdown +0 -62
  893. package/node_modules/concat-map/example/map.js +0 -6
  894. package/node_modules/concat-map/index.js +0 -13
  895. package/node_modules/concat-map/package.json +0 -43
  896. package/node_modules/concat-map/test/map.js +0 -39
  897. package/node_modules/end-of-stream/LICENSE +0 -21
  898. package/node_modules/end-of-stream/README.md +0 -54
  899. package/node_modules/end-of-stream/index.js +0 -96
  900. package/node_modules/end-of-stream/package.json +0 -37
  901. package/node_modules/fs-constants/LICENSE +0 -21
  902. package/node_modules/fs-constants/README.md +0 -26
  903. package/node_modules/fs-constants/browser.js +0 -1
  904. package/node_modules/fs-constants/index.js +0 -1
  905. package/node_modules/fs-constants/package.json +0 -19
  906. package/node_modules/fs.realpath/LICENSE +0 -43
  907. package/node_modules/fs.realpath/README.md +0 -33
  908. package/node_modules/fs.realpath/index.js +0 -66
  909. package/node_modules/fs.realpath/old.js +0 -303
  910. package/node_modules/fs.realpath/package.json +0 -26
  911. package/node_modules/fstream/.travis.yml +0 -9
  912. package/node_modules/fstream/LICENSE +0 -15
  913. package/node_modules/fstream/README.md +0 -76
  914. package/node_modules/fstream/examples/filter-pipe.js +0 -134
  915. package/node_modules/fstream/examples/pipe.js +0 -118
  916. package/node_modules/fstream/examples/reader.js +0 -68
  917. package/node_modules/fstream/examples/symlink-write.js +0 -27
  918. package/node_modules/fstream/fstream.js +0 -35
  919. package/node_modules/fstream/lib/abstract.js +0 -85
  920. package/node_modules/fstream/lib/collect.js +0 -70
  921. package/node_modules/fstream/lib/dir-reader.js +0 -252
  922. package/node_modules/fstream/lib/dir-writer.js +0 -174
  923. package/node_modules/fstream/lib/file-reader.js +0 -150
  924. package/node_modules/fstream/lib/file-writer.js +0 -107
  925. package/node_modules/fstream/lib/get-type.js +0 -33
  926. package/node_modules/fstream/lib/link-reader.js +0 -53
  927. package/node_modules/fstream/lib/link-writer.js +0 -95
  928. package/node_modules/fstream/lib/proxy-reader.js +0 -95
  929. package/node_modules/fstream/lib/proxy-writer.js +0 -111
  930. package/node_modules/fstream/lib/reader.js +0 -255
  931. package/node_modules/fstream/lib/socket-reader.js +0 -36
  932. package/node_modules/fstream/lib/writer.js +0 -390
  933. package/node_modules/fstream/package.json +0 -28
  934. package/node_modules/glob/LICENSE +0 -21
  935. package/node_modules/glob/README.md +0 -378
  936. package/node_modules/glob/common.js +0 -238
  937. package/node_modules/glob/glob.js +0 -790
  938. package/node_modules/glob/node_modules/balanced-match/.github/FUNDING.yml +0 -2
  939. package/node_modules/glob/node_modules/balanced-match/LICENSE.md +0 -21
  940. package/node_modules/glob/node_modules/balanced-match/README.md +0 -97
  941. package/node_modules/glob/node_modules/balanced-match/index.js +0 -62
  942. package/node_modules/glob/node_modules/balanced-match/package.json +0 -48
  943. package/node_modules/glob/node_modules/brace-expansion/LICENSE +0 -21
  944. package/node_modules/glob/node_modules/brace-expansion/README.md +0 -151
  945. package/node_modules/glob/node_modules/brace-expansion/index.js +0 -438
  946. package/node_modules/glob/node_modules/brace-expansion/package.json +0 -50
  947. package/node_modules/glob/node_modules/minimatch/LICENSE +0 -15
  948. package/node_modules/glob/node_modules/minimatch/README.md +0 -267
  949. package/node_modules/glob/node_modules/minimatch/minimatch.js +0 -1005
  950. package/node_modules/glob/node_modules/minimatch/package.json +0 -33
  951. package/node_modules/glob/package.json +0 -55
  952. package/node_modules/glob/sync.js +0 -486
  953. package/node_modules/inflight/LICENSE +0 -15
  954. package/node_modules/inflight/README.md +0 -37
  955. package/node_modules/inflight/inflight.js +0 -54
  956. package/node_modules/inflight/package.json +0 -29
  957. package/node_modules/lazystream/LICENSE +0 -23
  958. package/node_modules/lazystream/README.md +0 -114
  959. package/node_modules/lazystream/lib/lazystream.js +0 -54
  960. package/node_modules/lazystream/node_modules/readable-stream/.travis.yml +0 -34
  961. package/node_modules/lazystream/node_modules/readable-stream/CONTRIBUTING.md +0 -38
  962. package/node_modules/lazystream/node_modules/readable-stream/GOVERNANCE.md +0 -136
  963. package/node_modules/lazystream/node_modules/readable-stream/README.md +0 -58
  964. package/node_modules/lazystream/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +0 -60
  965. package/node_modules/lazystream/node_modules/readable-stream/duplex-browser.js +0 -1
  966. package/node_modules/lazystream/node_modules/readable-stream/duplex.js +0 -1
  967. package/node_modules/lazystream/node_modules/readable-stream/lib/_stream_duplex.js +0 -131
  968. package/node_modules/lazystream/node_modules/readable-stream/lib/_stream_passthrough.js +0 -47
  969. package/node_modules/lazystream/node_modules/readable-stream/lib/_stream_readable.js +0 -1019
  970. package/node_modules/lazystream/node_modules/readable-stream/lib/_stream_transform.js +0 -214
  971. package/node_modules/lazystream/node_modules/readable-stream/lib/_stream_writable.js +0 -685
  972. package/node_modules/lazystream/node_modules/readable-stream/lib/internal/streams/BufferList.js +0 -78
  973. package/node_modules/lazystream/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -84
  974. package/node_modules/lazystream/node_modules/readable-stream/lib/internal/streams/stream-browser.js +0 -1
  975. package/node_modules/lazystream/node_modules/readable-stream/lib/internal/streams/stream.js +0 -1
  976. package/node_modules/lazystream/node_modules/readable-stream/package.json +0 -52
  977. package/node_modules/lazystream/node_modules/readable-stream/passthrough.js +0 -1
  978. package/node_modules/lazystream/node_modules/readable-stream/readable-browser.js +0 -7
  979. package/node_modules/lazystream/node_modules/readable-stream/readable.js +0 -19
  980. package/node_modules/lazystream/node_modules/readable-stream/transform.js +0 -1
  981. package/node_modules/lazystream/node_modules/readable-stream/writable-browser.js +0 -1
  982. package/node_modules/lazystream/node_modules/readable-stream/writable.js +0 -8
  983. package/node_modules/lazystream/node_modules/safe-buffer/LICENSE +0 -21
  984. package/node_modules/lazystream/node_modules/safe-buffer/README.md +0 -584
  985. package/node_modules/lazystream/node_modules/safe-buffer/index.d.ts +0 -187
  986. package/node_modules/lazystream/node_modules/safe-buffer/index.js +0 -62
  987. package/node_modules/lazystream/node_modules/safe-buffer/package.json +0 -37
  988. package/node_modules/lazystream/node_modules/string_decoder/.travis.yml +0 -50
  989. package/node_modules/lazystream/node_modules/string_decoder/LICENSE +0 -48
  990. package/node_modules/lazystream/node_modules/string_decoder/README.md +0 -47
  991. package/node_modules/lazystream/node_modules/string_decoder/lib/string_decoder.js +0 -296
  992. package/node_modules/lazystream/node_modules/string_decoder/package.json +0 -31
  993. package/node_modules/lazystream/package.json +0 -46
  994. package/node_modules/lazystream/test/data.md +0 -13
  995. package/node_modules/lazystream/test/fs_test.js +0 -69
  996. package/node_modules/lazystream/test/helper.js +0 -39
  997. package/node_modules/lazystream/test/pipe_test.js +0 -36
  998. package/node_modules/lazystream/test/readable_test.js +0 -90
  999. package/node_modules/lazystream/test/writable_test.js +0 -59
  1000. package/node_modules/listenercount/.npmignore +0 -2
  1001. package/node_modules/listenercount/LICENSE.md +0 -5
  1002. package/node_modules/listenercount/README.md +0 -50
  1003. package/node_modules/listenercount/circle.yml +0 -6
  1004. package/node_modules/listenercount/index.js +0 -16
  1005. package/node_modules/listenercount/package.json +0 -27
  1006. package/node_modules/listenercount/test/test.js +0 -31
  1007. package/node_modules/lodash.defaults/LICENSE +0 -47
  1008. package/node_modules/lodash.defaults/README.md +0 -18
  1009. package/node_modules/lodash.defaults/index.js +0 -668
  1010. package/node_modules/lodash.defaults/package.json +0 -17
  1011. package/node_modules/lodash.difference/LICENSE +0 -47
  1012. package/node_modules/lodash.difference/README.md +0 -18
  1013. package/node_modules/lodash.difference/index.js +0 -1170
  1014. package/node_modules/lodash.difference/package.json +0 -17
  1015. package/node_modules/lodash.flatten/LICENSE +0 -47
  1016. package/node_modules/lodash.flatten/README.md +0 -18
  1017. package/node_modules/lodash.flatten/index.js +0 -349
  1018. package/node_modules/lodash.flatten/package.json +0 -17
  1019. package/node_modules/lodash.isplainobject/LICENSE +0 -47
  1020. package/node_modules/lodash.isplainobject/README.md +0 -18
  1021. package/node_modules/lodash.isplainobject/index.js +0 -139
  1022. package/node_modules/lodash.isplainobject/package.json +0 -17
  1023. package/node_modules/lodash.union/LICENSE +0 -47
  1024. package/node_modules/lodash.union/README.md +0 -18
  1025. package/node_modules/lodash.union/index.js +0 -1181
  1026. package/node_modules/lodash.union/package.json +0 -17
  1027. package/node_modules/minimist/.eslintrc +0 -29
  1028. package/node_modules/minimist/.github/FUNDING.yml +0 -12
  1029. package/node_modules/minimist/.nycrc +0 -14
  1030. package/node_modules/minimist/CHANGELOG.md +0 -298
  1031. package/node_modules/minimist/LICENSE +0 -18
  1032. package/node_modules/minimist/README.md +0 -121
  1033. package/node_modules/minimist/example/parse.js +0 -4
  1034. package/node_modules/minimist/index.js +0 -263
  1035. package/node_modules/minimist/package.json +0 -75
  1036. package/node_modules/minimist/test/all_bool.js +0 -34
  1037. package/node_modules/minimist/test/bool.js +0 -177
  1038. package/node_modules/minimist/test/dash.js +0 -43
  1039. package/node_modules/minimist/test/default_bool.js +0 -37
  1040. package/node_modules/minimist/test/dotted.js +0 -24
  1041. package/node_modules/minimist/test/kv_short.js +0 -32
  1042. package/node_modules/minimist/test/long.js +0 -33
  1043. package/node_modules/minimist/test/num.js +0 -38
  1044. package/node_modules/minimist/test/parse.js +0 -209
  1045. package/node_modules/minimist/test/parse_modified.js +0 -11
  1046. package/node_modules/minimist/test/proto.js +0 -64
  1047. package/node_modules/minimist/test/short.js +0 -69
  1048. package/node_modules/minimist/test/stop_early.js +0 -17
  1049. package/node_modules/minimist/test/unknown.js +0 -104
  1050. package/node_modules/minimist/test/whitespace.js +0 -10
  1051. package/node_modules/mkdirp/LICENSE +0 -21
  1052. package/node_modules/mkdirp/bin/cmd.js +0 -33
  1053. package/node_modules/mkdirp/bin/usage.txt +0 -12
  1054. package/node_modules/mkdirp/index.js +0 -102
  1055. package/node_modules/mkdirp/package.json +0 -33
  1056. package/node_modules/mkdirp/readme.markdown +0 -100
  1057. package/node_modules/once/LICENSE +0 -15
  1058. package/node_modules/once/README.md +0 -79
  1059. package/node_modules/once/once.js +0 -42
  1060. package/node_modules/once/package.json +0 -33
  1061. package/node_modules/path-is-absolute/index.js +0 -20
  1062. package/node_modules/path-is-absolute/license +0 -21
  1063. package/node_modules/path-is-absolute/package.json +0 -43
  1064. package/node_modules/path-is-absolute/readme.md +0 -59
  1065. package/node_modules/readdir-glob/LICENSE +0 -201
  1066. package/node_modules/readdir-glob/README.md +0 -85
  1067. package/node_modules/readdir-glob/index.js +0 -243
  1068. package/node_modules/readdir-glob/node_modules/balanced-match/.github/FUNDING.yml +0 -2
  1069. package/node_modules/readdir-glob/node_modules/balanced-match/LICENSE.md +0 -21
  1070. package/node_modules/readdir-glob/node_modules/balanced-match/README.md +0 -97
  1071. package/node_modules/readdir-glob/node_modules/balanced-match/index.js +0 -62
  1072. package/node_modules/readdir-glob/node_modules/balanced-match/package.json +0 -48
  1073. package/node_modules/readdir-glob/node_modules/brace-expansion/.github/FUNDING.yml +0 -2
  1074. package/node_modules/readdir-glob/node_modules/brace-expansion/LICENSE +0 -21
  1075. package/node_modules/readdir-glob/node_modules/brace-expansion/README.md +0 -157
  1076. package/node_modules/readdir-glob/node_modules/brace-expansion/index.js +0 -394
  1077. package/node_modules/readdir-glob/node_modules/brace-expansion/package.json +0 -49
  1078. package/node_modules/readdir-glob/node_modules/minimatch/LICENSE +0 -15
  1079. package/node_modules/readdir-glob/node_modules/minimatch/README.md +0 -296
  1080. package/node_modules/readdir-glob/node_modules/minimatch/lib/path.js +0 -4
  1081. package/node_modules/readdir-glob/node_modules/minimatch/minimatch.js +0 -996
  1082. package/node_modules/readdir-glob/node_modules/minimatch/package.json +0 -35
  1083. package/node_modules/readdir-glob/package.json +0 -43
  1084. package/node_modules/rimraf/LICENSE +0 -15
  1085. package/node_modules/rimraf/README.md +0 -101
  1086. package/node_modules/rimraf/bin.js +0 -50
  1087. package/node_modules/rimraf/package.json +0 -29
  1088. package/node_modules/rimraf/rimraf.js +0 -372
  1089. package/node_modules/tar-stream/LICENSE +0 -21
  1090. package/node_modules/tar-stream/README.md +0 -168
  1091. package/node_modules/tar-stream/extract.js +0 -257
  1092. package/node_modules/tar-stream/headers.js +0 -295
  1093. package/node_modules/tar-stream/index.js +0 -2
  1094. package/node_modules/tar-stream/pack.js +0 -255
  1095. package/node_modules/tar-stream/package.json +0 -58
  1096. package/node_modules/tar-stream/sandbox.js +0 -11
  1097. package/node_modules/traverse/.npmignore +0 -1
  1098. package/node_modules/traverse/LICENSE +0 -24
  1099. package/node_modules/traverse/README.markdown +0 -247
  1100. package/node_modules/traverse/examples/json.js +0 -16
  1101. package/node_modules/traverse/examples/leaves.js +0 -15
  1102. package/node_modules/traverse/examples/negative.js +0 -8
  1103. package/node_modules/traverse/examples/stringify.js +0 -38
  1104. package/node_modules/traverse/index.js +0 -322
  1105. package/node_modules/traverse/package.json +0 -18
  1106. package/node_modules/traverse/test/circular.js +0 -114
  1107. package/node_modules/traverse/test/date.js +0 -35
  1108. package/node_modules/traverse/test/equal.js +0 -219
  1109. package/node_modules/traverse/test/instance.js +0 -17
  1110. package/node_modules/traverse/test/interface.js +0 -42
  1111. package/node_modules/traverse/test/json.js +0 -47
  1112. package/node_modules/traverse/test/leaves.js +0 -21
  1113. package/node_modules/traverse/test/mutability.js +0 -203
  1114. package/node_modules/traverse/test/negative.js +0 -20
  1115. package/node_modules/traverse/test/obj.js +0 -15
  1116. package/node_modules/traverse/test/stop.js +0 -41
  1117. package/node_modules/traverse/test/stringify.js +0 -36
  1118. package/node_modules/traverse/test/super_deep.js +0 -54
  1119. package/node_modules/unzipper/.circleci/config.yml +0 -13
  1120. package/node_modules/unzipper/.travis.yml +0 -21
  1121. package/node_modules/unzipper/lib/Buffer.js +0 -12
  1122. package/node_modules/unzipper/node_modules/readable-stream/.travis.yml +0 -34
  1123. package/node_modules/unzipper/node_modules/readable-stream/CONTRIBUTING.md +0 -38
  1124. package/node_modules/unzipper/node_modules/readable-stream/GOVERNANCE.md +0 -136
  1125. package/node_modules/unzipper/node_modules/readable-stream/README.md +0 -58
  1126. package/node_modules/unzipper/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +0 -60
  1127. package/node_modules/unzipper/node_modules/readable-stream/duplex-browser.js +0 -1
  1128. package/node_modules/unzipper/node_modules/readable-stream/duplex.js +0 -1
  1129. package/node_modules/unzipper/node_modules/readable-stream/lib/_stream_duplex.js +0 -131
  1130. package/node_modules/unzipper/node_modules/readable-stream/lib/_stream_passthrough.js +0 -47
  1131. package/node_modules/unzipper/node_modules/readable-stream/lib/_stream_readable.js +0 -1019
  1132. package/node_modules/unzipper/node_modules/readable-stream/lib/_stream_transform.js +0 -214
  1133. package/node_modules/unzipper/node_modules/readable-stream/lib/_stream_writable.js +0 -685
  1134. package/node_modules/unzipper/node_modules/readable-stream/lib/internal/streams/BufferList.js +0 -78
  1135. package/node_modules/unzipper/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -84
  1136. package/node_modules/unzipper/node_modules/readable-stream/lib/internal/streams/stream-browser.js +0 -1
  1137. package/node_modules/unzipper/node_modules/readable-stream/lib/internal/streams/stream.js +0 -1
  1138. package/node_modules/unzipper/node_modules/readable-stream/package.json +0 -52
  1139. package/node_modules/unzipper/node_modules/readable-stream/passthrough.js +0 -1
  1140. package/node_modules/unzipper/node_modules/readable-stream/readable-browser.js +0 -7
  1141. package/node_modules/unzipper/node_modules/readable-stream/readable.js +0 -19
  1142. package/node_modules/unzipper/node_modules/readable-stream/transform.js +0 -1
  1143. package/node_modules/unzipper/node_modules/readable-stream/writable-browser.js +0 -1
  1144. package/node_modules/unzipper/node_modules/readable-stream/writable.js +0 -8
  1145. package/node_modules/unzipper/node_modules/safe-buffer/LICENSE +0 -21
  1146. package/node_modules/unzipper/node_modules/safe-buffer/README.md +0 -584
  1147. package/node_modules/unzipper/node_modules/safe-buffer/index.d.ts +0 -187
  1148. package/node_modules/unzipper/node_modules/safe-buffer/index.js +0 -62
  1149. package/node_modules/unzipper/node_modules/safe-buffer/package.json +0 -37
  1150. package/node_modules/unzipper/node_modules/string_decoder/.travis.yml +0 -50
  1151. package/node_modules/unzipper/node_modules/string_decoder/LICENSE +0 -48
  1152. package/node_modules/unzipper/node_modules/string_decoder/README.md +0 -47
  1153. package/node_modules/unzipper/node_modules/string_decoder/lib/string_decoder.js +0 -296
  1154. package/node_modules/unzipper/node_modules/string_decoder/package.json +0 -31
  1155. package/node_modules/wrappy/LICENSE +0 -15
  1156. package/node_modules/wrappy/README.md +0 -36
  1157. package/node_modules/wrappy/package.json +0 -29
  1158. package/node_modules/wrappy/wrappy.js +0 -33
  1159. package/node_modules/zip-stream/node_modules/archiver-utils/LICENSE +0 -22
  1160. package/node_modules/zip-stream/node_modules/archiver-utils/README.md +0 -6
  1161. package/node_modules/zip-stream/node_modules/archiver-utils/file.js +0 -209
  1162. package/node_modules/zip-stream/node_modules/archiver-utils/index.js +0 -149
  1163. package/node_modules/zip-stream/node_modules/archiver-utils/package.json +0 -54
  1164. /package/node_modules/{archiver-utils → compress-commons}/node_modules/readable-stream/LICENSE +0 -0
  1165. /package/node_modules/{lazystream → crc32-stream}/node_modules/readable-stream/LICENSE +0 -0
  1166. /package/node_modules/{unzipper → zip-stream}/node_modules/readable-stream/LICENSE +0 -0
@@ -0,0 +1,422 @@
1
+ import { runOpenAICompatibleWizard } from './openai_compat_wizard.js';
2
+ import { canonicalProvider, DIRECT_PROVIDER_CHOICES, isLocalSubscription } from './provider_choices.js';
3
+ import { compatEndpoint, maskApiKey } from '../../config.js';
4
+ import { ApiKeyEnvNameError, detectApiKeyEnvCandidates, looksLikeApiKey, looksLikeApiKeyEnvName, parseApiKeyEnvName, providerApiKeyEnvNames, readApiKeyEnvReference, readProviderApiKeyEnv, } from '../../config/provider_api_key_env.js';
5
+ const LOCAL_LOGIN_HELP = {
6
+ claude_code: 'Install Claude Code and sign in with `claude`',
7
+ codex_app_server: 'Sign in with `codex login`',
8
+ codex_legacy: 'Sign in with `codex login`',
9
+ kimi_code: 'Sign in with the Kimi Code CLI',
10
+ };
11
+ /** Providers reached with a pasted API key, as opposed to a local login, an endpoint or the Router. */
12
+ function takesDirectApiKey(provider) {
13
+ const id = canonicalProvider(provider) ?? provider;
14
+ return id !== 'openai_compatible' && providerApiKeyEnvNames(id).length > 0;
15
+ }
16
+ /**
17
+ * Whether a person can answer a secret prompt here. Agent-run commands and
18
+ * widgets that answer by themselves (headless) cannot.
19
+ */
20
+ export function canAskForCredential(ctx) {
21
+ return ctx.commandOrigin !== 'agent' && Boolean(ctx.prompt?.showPrompt) && ctx.prompt.interactive !== false;
22
+ }
23
+ export function providerLabel(provider) {
24
+ return DIRECT_PROVIDER_CHOICES.find(choice => choice.id === provider)?.label ?? provider;
25
+ }
26
+ /**
27
+ * What else decides which key `provider` uses, so a key just saved is never
28
+ * silently ignored. Names variables, never their values.
29
+ */
30
+ export function savedKeyNotes(provider, stored, ctx) {
31
+ if (ctx.config.getApiKey(provider) !== stored) {
32
+ const source = ctx.config.getApiKeySource(provider);
33
+ return [source.kind === 'env-ref'
34
+ ? ` ⚠ This session reads the ${provider} key from $${source.name}, so the saved key is not used. Clear it with /config scope clear.`
35
+ : ` ⚠ This session uses a different ${provider} key, so the saved key is not used. Clear it with /config scope clear.`];
36
+ }
37
+ const standard = readProviderApiKeyEnv(provider);
38
+ return standard ? [` $${standard.name} is also set; ZTC uses the saved key.`] : [];
39
+ }
40
+ /**
41
+ * Ask for a direct provider's missing credential: paste an API key, name the
42
+ * environment variable that holds it, or cancel. The one owner of this
43
+ * interaction for every selection command, /connect direct and the composer.
44
+ * Local logins get sign-in help and a custom endpoint gets its setup form.
45
+ * Nothing is saved until the person confirms a key or a variable, so Cancel
46
+ * or Escape at any step leaves the config as it was.
47
+ *
48
+ * Returns false without asking when nobody can answer (an agent-run command or
49
+ * headless widgets) or the provider takes no key, so the caller prints its own
50
+ * message. `onReady` runs once the provider has a usable key.
51
+ */
52
+ export function promptForDirectCredential(provider, ctx, onReady, options = {}) {
53
+ if (!canAskForCredential(ctx))
54
+ return false;
55
+ const id = canonicalProvider(provider) ?? provider;
56
+ if (isLocalSubscription(id)) {
57
+ ctx.addMessage({ role: 'system', content: `${LOCAL_LOGIN_HELP[id] ?? 'Sign in with the provider CLI'}, then try again. Switchable accounts: /accounts.` });
58
+ return true;
59
+ }
60
+ if (id === 'openai_compatible') {
61
+ options.beforeAsk?.();
62
+ // A saved endpoint is ready to select, as a saved key is; a cancel steps back.
63
+ runOpenAICompatibleWizard(ctx, saved => (saved ? onReady() : options.onCancel?.()));
64
+ return true;
65
+ }
66
+ if (!takesDirectApiKey(id))
67
+ return false;
68
+ options.beforeAsk?.();
69
+ offerChoices(startRequest(id, ctx, onReady, options.onCancel));
70
+ return true;
71
+ }
72
+ /**
73
+ * The prompt for a resolved route that cannot build. Only a direct route whose
74
+ * provider takes a key qualifies; a Router route needs a login instead.
75
+ */
76
+ export function promptForMissingDirectKey(resolved, ctx, onReady, options = {}) {
77
+ if (resolved.useProxy || resolved.authMode === 'zrouter' || !takesDirectApiKey(resolved.provider))
78
+ return false;
79
+ return promptForDirectCredential(resolved.provider, ctx, onReady, options);
80
+ }
81
+ /**
82
+ * A provider's key choices, as its key row in /config and `/config key
83
+ * <provider>` offer them: paste a key, name an environment variable, stop
84
+ * reading a variable or remove the saved key, or cancel. `onDone` runs once,
85
+ * with the change made or undefined when nothing changed. False, without
86
+ * asking, when nobody can answer here or the provider takes no API key.
87
+ */
88
+ export function manageApiKey(provider, ctx, onDone, options = {}) {
89
+ if (!canAskForCredential(ctx))
90
+ return false;
91
+ const id = canonicalProvider(provider) ?? provider;
92
+ if (!takesDirectApiKey(id))
93
+ return false;
94
+ options.beforeAsk?.();
95
+ offerChoices(manageRequest(id, ctx, onDone));
96
+ return true;
97
+ }
98
+ /**
99
+ * `/config key <provider> NAME`: read the key from the variable NAME, as the
100
+ * variable choice would. False, without asking, when nobody can answer here.
101
+ */
102
+ export async function useApiKeyVariable(provider, name, ctx, onDone) {
103
+ if (!canAskForCredential(ctx))
104
+ return false;
105
+ const id = canonicalProvider(provider) ?? provider;
106
+ if (!takesDirectApiKey(id))
107
+ return false;
108
+ await handleVariableName(manageRequest(id, ctx, onDone), name);
109
+ return true;
110
+ }
111
+ /** A key ZTC can remove: one it saved, or a variable named for it. */
112
+ export function hasRemovableKey(source) {
113
+ return source.kind === 'saved' || source.kind === 'env-ref';
114
+ }
115
+ /**
116
+ * `/config key <provider> --remove`: stop reading the variable named for the
117
+ * key, or forget the saved key, as the key row's remove choice does, without
118
+ * a question. A custom endpoint's key goes everywhere at once (see removeKey).
119
+ * Says so when there is nothing to remove; agents cannot use it.
120
+ */
121
+ export async function removeApiKey(provider, ctx, onDone) {
122
+ const id = canonicalProvider(provider) ?? provider;
123
+ const endpoint = id === 'openai_compatible';
124
+ if (ctx.commandOrigin === 'agent') {
125
+ ctx.addMessage({ role: 'system', content: `Remove the ${endpoint ? "custom endpoint's" : providerLabel(id)} key from /keys in your session.` });
126
+ return;
127
+ }
128
+ const source = ctx.config.getApiKeySource(id);
129
+ if (!hasRemovableKey(source)) {
130
+ const standard = source.kind === 'env-default' ? ` ZTC reads $${source.name} from your environment.` : '';
131
+ ctx.addMessage({ role: 'system', content: `${endpoint ? 'The custom endpoint' : providerLabel(id)} has no saved key or variable to remove.${standard}` });
132
+ return;
133
+ }
134
+ await removeKey(manageRequest(id, ctx, onDone));
135
+ }
136
+ function startRequest(provider, ctx, onReady, onCancel) {
137
+ const scope = ctx.config.getConfigScope?.();
138
+ return {
139
+ provider, label: providerLabel(provider), ctx, onReady, onCancel,
140
+ inScope: async (step) => {
141
+ if (scope && ctx.config.withConfigScope)
142
+ await ctx.config.withConfigScope(scope, step);
143
+ else
144
+ await step();
145
+ },
146
+ };
147
+ }
148
+ function manageRequest(provider, ctx, onDone) {
149
+ return { ...startRequest(provider, ctx, onDone, () => onDone()), onChanged: onDone };
150
+ }
151
+ /** The key a provider uses when no variable is named for it, in words. */
152
+ function fallbackText(source) {
153
+ const fallback = source.kind === 'env-ref' ? source.fallback : source;
154
+ if (fallback?.kind === 'saved')
155
+ return 'the saved key';
156
+ if (fallback?.kind === 'env-default')
157
+ return `$${fallback.name}`;
158
+ return undefined;
159
+ }
160
+ /**
161
+ * The choices for getting a key. A missing key asks for one; the key row
162
+ * (`onChanged` set) can also replace or remove what is configured. A variable
163
+ * named but not set is shown, with choices to fix its name or stop reading it.
164
+ */
165
+ function offerChoices(request) {
166
+ const { provider, label, ctx } = request;
167
+ const manage = Boolean(request.onChanged);
168
+ const source = ctx.config.getApiKeySource(provider);
169
+ const reference = source.kind === 'env-ref' ? source : undefined;
170
+ const dangling = reference && !reference.set ? reference.name : undefined;
171
+ const detected = detectApiKeyEnvCandidates(provider);
172
+ const standard = providerApiKeyEnvNames(provider);
173
+ const keySaved = source.kind === 'saved' || reference?.fallback?.kind === 'saved';
174
+ const options = [
175
+ { value: 'paste', label: manage && keySaved ? 'Replace the saved key' : 'Paste an API key',
176
+ description: 'Hidden input · saved in your ZTC config' },
177
+ dangling
178
+ ? { value: 'env', label: 'Fix the variable name', description: `Edit $${dangling}, or name another variable` }
179
+ : { value: 'env', label: 'Use an environment variable',
180
+ description: `Standard: ${standard.join(' or ')}${detected.length > 0 ? ` · set now: ${detected.join(', ')}` : ''}` },
181
+ ...(reference
182
+ ? [{ value: 'remove', label: `Stop reading $${reference.name}`, description: reference.fallback
183
+ ? `ZTC uses ${fallbackText(source)} instead` : 'ZTC forgets the variable name; the variable itself is untouched' }]
184
+ : manage && source.kind === 'saved'
185
+ ? [{ value: 'remove', label: 'Remove the saved key', description: 'Delete it from your ZTC config' }]
186
+ : []),
187
+ { value: 'cancel', label: 'Cancel', description: manage ? 'Keep things as they are' : 'Keep the current selection' },
188
+ ];
189
+ ctx.select.showSelect({ title: manage ? `${label} API key` : `${label} needs an API key`,
190
+ question: dangling ? `$${dangling} is not set. How should ZTC get your ${label} API key?`
191
+ : `How should ZTC get your ${label} API key?`,
192
+ type: 'select', options, compact: true }, async (value) => {
193
+ if (value === 'paste')
194
+ return askForKey(request);
195
+ if (value === 'env')
196
+ return askForVariable(request, dangling);
197
+ if (value === 'remove' && options.some(option => option.value === 'remove'))
198
+ return removeKey(request);
199
+ // Escape is announced by the widget; an explicit Cancel is confirmed here.
200
+ if (value === 'cancel')
201
+ ctx.addMessage({ role: 'system', content: 'Cancelled.' });
202
+ await request.onCancel?.();
203
+ });
204
+ }
205
+ /** What removing a custom endpoint's key did. */
206
+ function endpointRemovalSummary(source) {
207
+ if (source.kind !== 'env-ref')
208
+ return "✓ Removed the custom endpoint's key.";
209
+ return source.fallback?.kind === 'saved'
210
+ ? `✓ Removed the custom endpoint's key and stopped reading $${source.name}.`
211
+ : `✓ The custom endpoint no longer reads $${source.name}.`;
212
+ }
213
+ /**
214
+ * What a custom endpoint does once its key is removed. `keyNote` says which
215
+ * other key it reads, if any; without one, local servers need none. Its extra
216
+ * headers stay, and one can carry a key of its own, so they are named; their
217
+ * values never show.
218
+ */
219
+ function endpointKeyNote(ctx, keyNote) {
220
+ const settings = ctx.config.getOpenAICompatibleSettings?.();
221
+ const headers = Object.keys(settings?.headers ?? {}).join(', ');
222
+ const kept = headers ? ` Its extra headers (${headers}) stay; edit the endpoint to change them.` : '';
223
+ const baseUrl = settings?.baseUrl;
224
+ if (keyNote !== undefined || !baseUrl)
225
+ return `${keyNote ?? ''}${kept}`;
226
+ const accepted = (apiKey) => {
227
+ try {
228
+ compatEndpoint(baseUrl, { apiKey });
229
+ return true;
230
+ }
231
+ catch {
232
+ return false;
233
+ }
234
+ };
235
+ if (accepted()) {
236
+ return headers ? ` ZTC now calls ${baseUrl} with only its extra headers (${headers}); edit the endpoint to change them.`
237
+ : ` ZTC now calls ${baseUrl} without a key; local servers such as Ollama need none.`;
238
+ }
239
+ // A remote endpoint is refused without a key; an endpoint refused either way is not about the key.
240
+ // The endpoint form takes the key in a hidden field; one typed after a command shows in the composer.
241
+ return accepted('key') ? ` ZTC needs a key for the remote endpoint ${baseUrl}; set it in Custom endpoint… in /keys.${kept}` : kept;
242
+ }
243
+ /**
244
+ * Stop reading the variable named for the key, or forget the saved key. A
245
+ * custom endpoint's key is one thing to its owner, though it is saved in two
246
+ * places and may be named by a variable, so all of it goes at once.
247
+ */
248
+ async function removeKey(request) {
249
+ const { provider, label, ctx } = request;
250
+ const endpoint = provider === 'openai_compatible';
251
+ await request.inScope(async () => {
252
+ const source = ctx.config.getApiKeySource(provider);
253
+ // Stopping a variable keeps the saved key it stood in front of.
254
+ if (source.kind === 'env-ref' && !endpoint)
255
+ ctx.config.setApiKeyEnv(undefined, provider);
256
+ else
257
+ ctx.config.clearApiKey(provider);
258
+ await ctx.config.save();
259
+ const summary = endpoint ? endpointRemovalSummary(source)
260
+ : source.kind === 'env-ref' ? `✓ ${label} no longer reads $${source.name}.`
261
+ : `✓ Removed the saved ${label} API key.`;
262
+ const after = ctx.config.getApiKeySource(provider);
263
+ const keyNote = after.kind === 'env-default' ? ` ZTC now reads $${after.name} from your environment.`
264
+ : after.kind === 'saved' ? ' ZTC uses the saved key.' : undefined;
265
+ const note = endpoint ? endpointKeyNote(ctx, keyNote) : keyNote ?? '';
266
+ ctx.addMessage({ role: 'system', content: `${summary}${note}` });
267
+ const change = { kind: 'removed', summary };
268
+ if (request.onChanged)
269
+ return request.onChanged(change);
270
+ // Asked for a missing key: the provider still needs one.
271
+ if (ctx.config.getApiKey(provider))
272
+ return request.onReady(change);
273
+ offerChoices(request);
274
+ });
275
+ }
276
+ function askForKey(request) {
277
+ const { label, ctx } = request;
278
+ ctx.prompt.showPrompt({
279
+ title: `${label} API key`, question: `Paste your ${label} API key (input is hidden):`,
280
+ isPassword: true, allowEmptySubmit: false,
281
+ }, async (value) => {
282
+ const key = value?.trim();
283
+ if (!key) {
284
+ if (value !== null)
285
+ ctx.addMessage({ role: 'system', content: 'No key entered; nothing changed.' });
286
+ await request.onCancel?.();
287
+ return;
288
+ }
289
+ // A variable name typed here is read as one; it is never saved as the key.
290
+ if (looksLikeApiKeyEnvName(key))
291
+ return handleVariableName(request, key);
292
+ await saveKey(request, key);
293
+ });
294
+ }
295
+ async function saveKey(request, key) {
296
+ const { provider, label, ctx } = request;
297
+ await request.inScope(async () => {
298
+ ctx.config.setApiKey(key, provider);
299
+ await ctx.config.save();
300
+ ctx.addMessage({ role: 'system', content: [
301
+ `✓ Saved your ${label} API key (${maskApiKey(key)}) to ${ctx.config.locationLabel || '~/.ztc/config.json'}.`,
302
+ ...savedKeyNotes(provider, key, ctx),
303
+ ].join('\n') });
304
+ await request.onReady({ kind: 'saved', summary: `✓ Saved your ${label} API key (${maskApiKey(key)}).` });
305
+ });
306
+ }
307
+ /** Ask for the variable that holds the key; `name` fills the field to fix a name. */
308
+ function askForVariable(request, name) {
309
+ const { provider, label, ctx } = request;
310
+ const standard = providerApiKeyEnvNames(provider)[0];
311
+ ctx.prompt.showPrompt({
312
+ // The prompt box is narrow, so the question stays short and names the standard variable.
313
+ title: `${label} API key variable`,
314
+ question: `Variable name (Enter for ${standard}):`,
315
+ placeholder: standard, defaultValue: name ?? detectApiKeyEnvCandidates(provider)[0],
316
+ // An empty field means the standard name it shows.
317
+ isPassword: false, allowEmptySubmit: true,
318
+ // A key pasted here by mistake shows as dots.
319
+ maskWhen: looksLikeApiKey,
320
+ }, async (value) => {
321
+ if (value === null) {
322
+ await request.onCancel?.();
323
+ return;
324
+ }
325
+ await handleVariableName(request, value.trim() || standard);
326
+ });
327
+ }
328
+ /**
329
+ * Use the variable the person named. A set variable is saved by name; an
330
+ * unset one is saved only if the person says so. Input that is not a usable
331
+ * name is refused without repeating it: it may be a key.
332
+ */
333
+ async function handleVariableName(request, input) {
334
+ const { provider, label, ctx } = request;
335
+ if (looksLikeApiKey(input))
336
+ return offerToSaveAsKey(request, input.trim());
337
+ let name;
338
+ try {
339
+ name = parseApiKeyEnvName(input, provider);
340
+ }
341
+ catch (error) {
342
+ if (!(error instanceof ApiKeyEnvNameError))
343
+ throw error;
344
+ ctx.addMessage({ role: 'system', content: error.message });
345
+ return offerChoices(request);
346
+ }
347
+ if (readApiKeyEnvReference(name, provider) === undefined)
348
+ return offerUnsetVariable(request, name);
349
+ await request.inScope(async () => {
350
+ ctx.config.setApiKeyEnv(name, provider);
351
+ await ctx.config.save();
352
+ ctx.addMessage({ role: 'system', content: `✓ ${label} reads its API key from $${name}. Saved the variable name, not its value.` });
353
+ await request.onReady({ kind: 'env', summary: `✓ ${label} reads its API key from $${name}.` });
354
+ });
355
+ }
356
+ /** A key typed where a variable name was asked for: never shown, saved only as the key. */
357
+ function offerToSaveAsKey(request, key) {
358
+ const { label, ctx } = request;
359
+ ctx.addMessage({ role: 'system', content: 'That looks like an API key, not a variable name, so ZTC did not show or save it.' });
360
+ ctx.select.showSelect({
361
+ title: `Save it as your ${label} key?`, type: 'select',
362
+ question: 'Save what you entered as the API key, or type a variable name?',
363
+ options: [
364
+ { value: 'save', label: `Save it as the ${label} API key`, description: 'Saved in your ZTC config · never shown' },
365
+ { value: 'env', label: 'Type a variable name instead' },
366
+ { value: 'cancel', label: 'Cancel', description: 'Nothing is saved' },
367
+ ],
368
+ compact: true,
369
+ }, async (value) => {
370
+ if (value === 'save')
371
+ return saveKey(request, key);
372
+ if (value === 'env')
373
+ return askForVariable(request);
374
+ if (value === 'cancel')
375
+ ctx.addMessage({ role: 'system', content: 'Cancelled.' });
376
+ await request.onCancel?.();
377
+ });
378
+ }
379
+ /** A valid variable name that is not set in this process: fix it, paste a key, or save it anyway. */
380
+ function offerUnsetVariable(request, name) {
381
+ const { provider, label, ctx } = request;
382
+ const fallback = fallbackText(ctx.config.getApiKeySource(provider));
383
+ ctx.select.showSelect({
384
+ title: `$${name} is not set`, type: 'select',
385
+ question: `$${name} is not set in this ZTC process. ZTC sees only variables exported before it started.`,
386
+ options: [
387
+ { value: 'env', label: 'Fix the variable name', description: `Edit $${name}` },
388
+ { value: 'paste', label: 'Paste an API key instead', description: 'Hidden input · saved in your ZTC config' },
389
+ { value: 'save', label: "Save it anyway (I'll export it and restart ZTC)",
390
+ description: fallback ? `Until then ZTC uses ${fallback}` : `Until then ${label} has no key` },
391
+ { value: 'cancel', label: 'Cancel', description: 'Nothing changes' },
392
+ ],
393
+ compact: true,
394
+ }, async (value) => {
395
+ if (value === 'env')
396
+ return askForVariable(request, name);
397
+ if (value === 'paste')
398
+ return askForKey(request);
399
+ if (value === 'save')
400
+ return saveUnsetVariable(request, name);
401
+ if (value === 'cancel')
402
+ ctx.addMessage({ role: 'system', content: 'Cancelled.' });
403
+ await request.onCancel?.();
404
+ });
405
+ }
406
+ /** Save a variable that is not set yet; the provider keeps any key it had until it is. */
407
+ async function saveUnsetVariable(request, name) {
408
+ const { provider, label, ctx } = request;
409
+ await request.inScope(async () => {
410
+ ctx.config.setApiKeyEnv(name, provider);
411
+ await ctx.config.save();
412
+ const fallback = fallbackText(ctx.config.getApiKeySource(provider));
413
+ const summary = `✓ Saved $${name} for ${label}. Export it and restart ZTC to use it.`;
414
+ ctx.addMessage({ role: 'system', content: `${summary} Until then ${fallback ? `ZTC uses ${fallback}` : `${label} has no key`}.` });
415
+ const change = { kind: 'env-pending', summary };
416
+ if (request.onChanged)
417
+ return request.onChanged(change);
418
+ if (ctx.config.getApiKey(provider))
419
+ return request.onReady(change);
420
+ await request.onCancel?.();
421
+ });
422
+ }
@@ -2,4 +2,5 @@
2
2
  import { Command } from './types.js';
3
3
  export declare const effortCommand: Command;
4
4
  export declare const thinkingCommand: Command;
5
+ export declare const reasoningCommand: Command;
5
6
  export declare const fastCommand: Command;
@@ -1,29 +1,14 @@
1
1
  import { CODEX_REASONING_EFFORTS } from '../../config/types.js';
2
- import { resolveCodexEffort } from '../../config/defaults.js';
3
- import { getSupportedCodexReasoningEfforts } from '../../utils/models.js';
4
- import { formatReasoningEffort, parseReasoningSelection, reasoningCommandChoices } from '../../utils/reasoning.js';
5
- import { resolveRouterModel } from '../../utils/router_catalog.js';
2
+ import { parseReasoningSelection, reasoningCommandChoices } from '../../utils/reasoning.js';
3
+ import { offerReasoningPicker } from './reasoning_picker.js';
4
+ import { activeReasoning, applyModelEffort } from './reasoning_settings.js';
6
5
  async function configureReasoning(kind, args, ctx) {
7
- const config = ctx.config.get();
8
- const provider = ctx.config.getProvider?.() || config.provider || 'anthropic';
9
- const model = ctx.config.getModel?.() || config.model;
10
- const surface = ctx.config.getReasoningWireSurface?.(provider, model)
11
- ?? (config.authMode === 'zrouter' || provider === 'openai_compatible' ? 'chat_tools' : 'native_api');
12
- const catalog = ctx.config.getRoutedModelCatalog?.();
13
- const capabilities = catalog?.version === 1 ? resolveRouterModel(catalog, provider, model)?.capabilities : undefined;
14
- const current = resolveCodexEffort(config, provider, model, capabilities ?? surface);
15
- const supported = catalog?.version === 1 ? capabilities?.reasoning?.choices ?? [] : getSupportedCodexReasoningEfforts(model, provider, surface);
16
- const contract = ctx.config.getReasoningContract?.(provider, model)
17
- ?? (catalog?.version === 1 ? capabilities?.reasoning ?? [] : surface);
6
+ // Without an argument a person chooses in the picker; the agent, headless runs
7
+ // and models without levels get the readout below.
8
+ if (args.length === 0 && offerReasoningPicker(ctx))
9
+ return;
10
+ const { provider, model, contract, supported, current, status } = activeReasoning(ctx);
18
11
  const thinkingChoices = reasoningCommandChoices('thinking', provider, model, contract);
19
- const status = () => {
20
- const effective = resolveCodexEffort(ctx.config.get(), provider, model, capabilities ?? surface);
21
- // A startup flag is this process's value, never the saved default, so say
22
- // where an effort that came from one is coming from.
23
- const processEffort = ctx.config.getCodexEffortOverride?.();
24
- return `Reasoning effort (${provider} · ${model}): ${formatReasoningEffort(effective)}`
25
- + (processEffort ? ' (from a startup flag, this process)' : '');
26
- };
27
12
  if (args.length === 0) {
28
13
  ctx.addMessage({ role: 'system', content: status() +
29
14
  (supported?.length === 0 ? '\nThis model does not support a reasoning-effort setting.' :
@@ -43,26 +28,23 @@ async function configureReasoning(kind, args, ctx) {
43
28
  ctx.addMessage({ role: 'system', content: error.message });
44
29
  return;
45
30
  }
46
- ctx.config.setModelEffort(model, level);
47
- // The startup flag is this instance's starting value, not a lock: an explicit
48
- // choice replaces it for the rest of the process.
49
- ctx.config.clearCodexEffortOverride?.();
50
- await ctx.config.save();
51
- ctx.reloadAgent();
52
- ctx.addMessage({ role: 'system', content: level === null
53
- ? `Model effort override cleared. ${status()}`
54
- : `Reasoning effort for ${provider} · ${model} set to "${formatReasoningEffort(level)}".` });
31
+ await applyModelEffort(ctx, level);
55
32
  }
56
33
  export const effortCommand = {
57
- name: 'effort', description: 'Show or set reasoning effort for the active provider/model',
34
+ name: 'effort', description: 'Choose reasoning effort and thinking for the active model, or set a level',
58
35
  usage: '[none|minimal|low|medium|high|xhigh|max|ultra|default]', category: 'config',
59
36
  handler: (args, ctx) => configureReasoning('effort', args, ctx),
60
37
  };
61
38
  export const thinkingCommand = {
62
- name: 'thinking', description: 'Show reasoning settings or turn thinking on/off for the active model',
39
+ name: 'thinking', description: 'Choose reasoning effort and thinking for the active model, or turn thinking on or off',
63
40
  usage: '[on|off]', category: 'config',
64
41
  handler: (args, ctx) => configureReasoning('thinking', args, ctx),
65
42
  };
43
+ export const reasoningCommand = {
44
+ name: 'reasoning', description: 'Choose reasoning effort and thinking for the active model',
45
+ usage: '[level|on|off|default]', category: 'config',
46
+ handler: (args, ctx) => configureReasoning(args.length === 1 && /^(on|off)$/i.test(args[0]) ? 'thinking' : 'effort', args, ctx),
47
+ };
66
48
  export const fastCommand = {
67
49
  name: 'fast',
68
50
  description: 'Toggle Codex/GPT fast mode (priority service tier for lower latency)',
@@ -405,10 +405,6 @@ export interface GoalClock {
405
405
  * Scans only assistant turn text — never the injected continuation prompt.
406
406
  */
407
407
  export declare function detectGoalCompletion(text: string | null | undefined): boolean;
408
- /**
409
- * Parse `/goal` set-mode args into an objective plus optional --budget /
410
- * --max-turns flags. Returns `{ error }` for empty objectives or bad numbers.
411
- */
412
408
  export declare function parseGoalArgs(args: string[]): {
413
409
  objective: string;
414
410
  tokenBudget?: number;
@@ -410,6 +410,7 @@ export function detectGoalCompletion(text) {
410
410
  * Parse `/goal` set-mode args into an objective plus optional --budget /
411
411
  * --max-turns flags. Returns `{ error }` for empty objectives or bad numbers.
412
412
  */
413
+ const SUSTAINED_GOAL_FLAGS = new Set(['--budget', '--tokens', '--max-turns', '--turns', '--max', '--plateau', '--benchmark-scope', '--min-improvement-percent']);
413
414
  export function parseGoalArgs(args) {
414
415
  const objectiveTokens = [];
415
416
  let tokenBudget;
@@ -424,6 +425,20 @@ export function parseGoalArgs(args) {
424
425
  const flag = eq >= 0 ? tok.slice(0, eq) : tok;
425
426
  const inlineVal = eq >= 0 ? tok.slice(eq + 1) : undefined;
426
427
  const lower = flag.toLowerCase();
428
+ const numericFlag = lower === '--budget' || lower === '--tokens' || lower === '--max-turns'
429
+ || lower === '--turns' || lower === '--max' || lower === '--plateau'
430
+ || lower === '--min-improvement-percent';
431
+ const scopeFlag = lower === '--benchmark-scope';
432
+ const nextArg = i + 1 < args.length ? args[i + 1] : undefined;
433
+ const hasInline = inlineVal !== undefined;
434
+ const trailingValue = nextArg != null && i + 2 === args.length && !nextArg.startsWith('--');
435
+ const numericValueOk = numericFlag
436
+ && (hasInline || trailingValue || (nextArg != null && /^-?\d[\d_,]*$/.test(nextArg)) || i + 1 >= args.length);
437
+ const scopeValueOk = scopeFlag && (hasInline || (nextArg != null && !nextArg.startsWith('--')));
438
+ if ((numericFlag || scopeFlag) && !numericValueOk && !scopeValueOk) {
439
+ objectiveTokens.push(tok);
440
+ continue;
441
+ }
427
442
  if (lower === '--plateau') {
428
443
  attempts = parsePositiveInt(inlineVal ?? args[++i]) ?? undefined;
429
444
  if (attempts === undefined || attempts > 32)
@@ -463,21 +478,25 @@ export function parseGoalArgs(args) {
463
478
  maxTurns = parsed;
464
479
  continue;
465
480
  }
466
- if (lower.startsWith('--')) {
467
- return { error: `Unknown flag "${flag}". Supported: --budget <n>, --max-turns <n>.` };
481
+ // Flag-like words are objective text, but a mistyped option given a number
482
+ // would silently drop the budget or turn cap it was meant to set.
483
+ const value = inlineVal ?? nextArg;
484
+ if (lower.startsWith('--') && value !== undefined && /^-?\d[\d_,]*$/.test(value)) {
485
+ const intended = nearGoalFlag(lower);
486
+ if (intended)
487
+ return { error: `Unknown flag "${flag}". Did you mean ${intended}?` };
468
488
  }
469
489
  objectiveTokens.push(tok);
470
490
  }
471
491
  const objective = objectiveTokens.join(' ').trim();
472
492
  if (!objective)
473
493
  return { error: 'Usage: /goal <objective> [--budget <tokens>] [--max-turns <n>]' };
474
- // The objective is echoed into every continuation prompt; an embedded sentinel
475
- // would let the goal complete or block itself the moment the agent restates it.
476
- if (/goal[ _]?complete/i.test(objective)) {
477
- return { error: `Objective must not contain "${GOAL_COMPLETE_SENTINEL}" — that token is reserved to signal completion.` };
478
- }
479
- if (/goal[ _]?blocked/i.test(objective)) {
480
- return { error: `Objective must not contain "${GOAL_BLOCKED_SENTINEL}" — that token is reserved to signal a stalled goal.` };
494
+ for (const line of objective.split(/\r?\n/)) {
495
+ const bare = line.trim().replace(/^[`*_>#~\s-]+/, '').replace(/[`*_~\s]+$/, '');
496
+ // The same test detectGoalCompletion and detectGoalBlocked apply to a line.
497
+ if (/^goal[ _]complete\b/i.test(bare) || /^goal[ _]blocked\b/i.test(bare)) {
498
+ return { error: 'Objective must not contain a bare completion or blocked sentinel line — that token is reserved to signal completion.' };
499
+ }
481
500
  }
482
501
  const plateau = attempts === undefined ? undefined : parseGoalPlateauCriteria({ scope: benchmarkScope, attempts, minImprovementPercent });
483
502
  if ((attempts !== undefined && !plateau) || (attempts === undefined && (benchmarkScope !== undefined || hasThreshold))) {
@@ -485,6 +504,22 @@ export function parseGoalArgs(args) {
485
504
  }
486
505
  return { objective, ...(tokenBudget != null ? { tokenBudget } : {}), ...(maxTurns != null ? { maxTurns } : {}), ...(plateau ? { plateau } : {}) };
487
506
  }
507
+ /** The supported flag at most two edits from an unknown one, if any. */
508
+ function nearGoalFlag(flag) {
509
+ for (const known of SUSTAINED_GOAL_FLAGS) {
510
+ let previous = Array.from({ length: known.length + 1 }, (_, index) => index);
511
+ for (let i = 1; i <= flag.length; i++) {
512
+ const current = [i];
513
+ for (let j = 1; j <= known.length; j++) {
514
+ current[j] = Math.min(current[j - 1] + 1, previous[j] + 1, previous[j - 1] + (flag[i - 1] === known[j - 1] ? 0 : 1));
515
+ }
516
+ previous = current;
517
+ }
518
+ if (previous[known.length] <= 2)
519
+ return known;
520
+ }
521
+ return undefined;
522
+ }
488
523
  function parsePositiveInt(raw) {
489
524
  if (raw == null)
490
525
  return null;
@@ -783,7 +818,10 @@ export class GoalManager {
783
818
  if (!/\b(?:keep|continue)\s+(?:working|iterating|optimizing|doing|going)\b/iu.test(text)
784
819
  || !/\buntil\b[\s\S]*\b(?:interrupt|stop|done|complete|plateau)\b/iu.test(text) || text.length > MAX_OBJECTIVE_LEN)
785
820
  return null;
786
- const parsed = parseGoalArgs(text.split(/\s+/u));
821
+ const tokens = text.split(/[^\S\n]+/u);
822
+ if (tokens.some(token => token.startsWith('--') && !SUSTAINED_GOAL_FLAGS.has(token.split('=')[0].toLowerCase())))
823
+ return null;
824
+ const parsed = parseGoalArgs(tokens);
787
825
  if ('error' in parsed)
788
826
  return null;
789
827
  const statedBudgets = [...text.matchAll(/\b(?:budget(?: of)?|limit(?: (?:total )?(?:token )?usage)? to|within|up to)\s+([\d,_]+)\s+tokens\b/giu)]
@@ -0,0 +1,6 @@
1
+ import type { Command } from './types.js';
2
+ /**
3
+ * `/handoff` — the saved task checkpoint this session resumed from, in full.
4
+ * A resumed launch announces it in two lines; this is where the rest lives.
5
+ */
6
+ export declare const handoffCommand: Command;
@@ -0,0 +1,17 @@
1
+ import { formatTaskHandoffSummary } from '../../session_handoff_contract.js';
2
+ /**
3
+ * `/handoff` — the saved task checkpoint this session resumed from, in full.
4
+ * A resumed launch announces it in two lines; this is where the rest lives.
5
+ */
6
+ export const handoffCommand = {
7
+ name: 'handoff',
8
+ description: 'Show the saved task checkpoint this session resumed from',
9
+ usage: '/handoff',
10
+ handler: async (_args, ctx) => {
11
+ const projection = ctx.getTaskHandoff?.() ?? null;
12
+ ctx.addMessage({
13
+ role: 'system',
14
+ content: projection ? formatTaskHandoffSummary(projection.snapshot) : 'No saved task checkpoint in this session.',
15
+ });
16
+ },
17
+ };
@@ -16,7 +16,7 @@ export function makeHelpCommand(getCommands) {
16
16
  .join('\n\n');
17
17
  ctx.addMessage({
18
18
  role: 'system',
19
- content: `${buildHelpIntroduction()}\n\nKeyboard actions:\n Esc twice within 2 seconds confirms stop of the running turn.\n In the queue editor (Option+Up), Esc removes only the selected queued message.\n Forms, choices and completions close with one Esc; idle Esc keeps the draft and queue.\n /rewind opens the Ratatui history picker; Ctrl+B ? opens zmux shortcut help.\n\nMouse and scrolling:\n /settings mouseCapture toggles terminal mouse capture.\n /settings wheelScrollLines sets 1–20 lines per wheel event (default 3).\n These preferences require a compatible native renderer; otherwise they are saved for the next compatible launch.\n\nStatus line fields:\n${statusHelp}\n\nAvailable commands:\n\n${helpText || ' No commands registered.'}`
19
+ content: `${buildHelpIntroduction()}\n\nKeyboard actions:\n Esc twice within 2 seconds confirms stop of the running turn.\n In the queue editor (Option+Up), Esc removes only the selected queued message.\n Forms, choices and completions close with one Esc; one idle Esc keeps the draft and queue.\n Esc twice while idle opens the rewind picker, as /rewind does; Ctrl+B ? opens zmux shortcut help.\n\nMouse and scrolling:\n /settings mouseCapture toggles terminal mouse capture.\n /settings wheelScrollLines sets 1–20 lines per wheel event (default 3).\n These preferences require a compatible native renderer; otherwise they are saved for the next compatible launch.\n\nStatus line fields:\n${statusHelp}\n\nAvailable commands:\n\n${helpText || ' No commands registered.'}`
20
20
  });
21
21
  }
22
22
  };