hyperframes 0.8.121 → 0.8.122

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 (170) hide show
  1. package/dist/{add-CGDIT7CT.js → add-UDNFUHR7.js} +16 -16
  2. package/dist/{animatedGifPrep-KPT5VB5Q.js → animatedGifPrep-2EXOFDLI.js} +7 -7
  3. package/dist/{asset-6ZAZIWA7.js → asset-YFEFDXZV.js} +2 -2
  4. package/dist/{assetCataloger-FWWCXIEX.js → assetCataloger-NDJSFPJN.js} +3 -3
  5. package/dist/{auth-W4WZ5KT2.js → auth-22YSZLEK.js} +2 -2
  6. package/dist/{autoUpdate-2KRUUCM2.js → autoUpdate-4OUJ7O3D.js} +2 -2
  7. package/dist/{backgroundChecks-M7YRL5G3.js → backgroundChecks-FP5AP654.js} +3 -3
  8. package/dist/backgroundChecksWorker.js +3 -3
  9. package/dist/{batchRender-2HXYPO62.js → batchRender-ZXQVHWED.js} +4 -4
  10. package/dist/{beats-KXLHRYXV.js → beats-AML5JHGX.js} +13 -13
  11. package/dist/{benchmark-TZRC6JEE.js → benchmark-6LELU6ZT.js} +13 -13
  12. package/dist/{browser-KFCZEHSG.js → browser-5NUYM6P2.js} +10 -10
  13. package/dist/{bundleWithLocalizedFonts-3RRACCEV.js → bundleWithLocalizedFonts-TSGE3UAO.js} +2 -2
  14. package/dist/{capture-N25LJPGM.js → capture-33BJRABG.js} +2 -2
  15. package/dist/{capture-3L7VTWDG.js → capture-HFYBSASN.js} +10 -10
  16. package/dist/{catalog-OJK3RAMA.js → catalog-KZ2PUXHS.js} +16 -16
  17. package/dist/{check-DUQ2OHRX.js → check-RJQIUSVM.js} +33 -34
  18. package/dist/{checkBrowser-XHNFT3DB.js → checkBrowser-QQZCRUSY.js} +32 -33
  19. package/dist/{chunk-DISNXEWU.js → chunk-26LWC4RP.js} +2 -2
  20. package/dist/{chunk-SJ64QY5Z.js → chunk-2BMZEUGD.js} +2 -2
  21. package/dist/{chunk-JACPHNUK.js → chunk-2CYCP3AY.js} +1 -1
  22. package/dist/{chunk-S6Y2LOTE.js → chunk-3VG4A22C.js} +1 -1
  23. package/dist/{chunk-VU4KRDRL.js → chunk-5KTDZVF3.js} +1 -1
  24. package/dist/{chunk-7VXU7E5S.js → chunk-74G66BSC.js} +1 -1
  25. package/dist/{chunk-YE5UC4XH.js → chunk-7T6RZSKP.js} +7 -7
  26. package/dist/{chunk-4JC7LDBQ.js → chunk-A6DWJRHP.js} +3 -3
  27. package/dist/{chunk-3WXWL7AY.js → chunk-ABMHBIWX.js} +1 -1
  28. package/dist/{chunk-RYSHGEZL.js → chunk-BGYDTAYR.js} +4 -4
  29. package/dist/{chunk-5OS5XIWZ.js → chunk-C477PVA2.js} +23 -1
  30. package/dist/chunk-C6MUZ4T2.js +3541 -0
  31. package/dist/{chunk-WG4IZWEH.js → chunk-DNIJ7MH6.js} +2 -2
  32. package/dist/{chunk-OWPHLEDI.js → chunk-DQKPTQEA.js} +5 -5
  33. package/dist/{chunk-BN5KOC5O.js → chunk-EB5XYJBZ.js} +1 -1
  34. package/dist/{chunk-JWHQKTVG.js → chunk-EBODC6OT.js} +3 -3
  35. package/dist/{chunk-FSLYPQ5Z.js → chunk-F7MXHGU3.js} +6 -5
  36. package/dist/{chunk-WBRDOH4A.js → chunk-FD5UEKRP.js} +1 -1
  37. package/dist/{chunk-NRTZ2JPC.js → chunk-GA46NF76.js} +1 -1
  38. package/dist/{chunk-YJMQLWG4.js → chunk-J22NAGNW.js} +36 -31
  39. package/dist/{chunk-WW7V2GQJ.js → chunk-JD3C44FP.js} +2 -2
  40. package/dist/{chunk-3DCZIHXE.js → chunk-JQPICVXM.js} +4 -4
  41. package/dist/{chunk-E5XIJTMU.js → chunk-KCJGTEJD.js} +1 -1
  42. package/dist/{chunk-ZUVO6Q5Q.js → chunk-KJHOYQ2T.js} +2 -2
  43. package/dist/{chunk-GPGWCFIA.js → chunk-LQBR4IC7.js} +53 -2
  44. package/dist/{chunk-2XV3S6TA.js → chunk-MOPVB4VL.js} +2 -2
  45. package/dist/{chunk-NITBGIHR.js → chunk-N4RVOW43.js} +2 -2
  46. package/dist/{chunk-44EFU366.js → chunk-NA2DKY3M.js} +12 -14
  47. package/dist/{chunk-MNMD6XLG.js → chunk-NKS75GFI.js} +3 -3
  48. package/dist/{chunk-TRLP3CSL.js → chunk-NSVHO5LZ.js} +6 -5
  49. package/dist/{chunk-2GKO3X7F.js → chunk-NSY245QZ.js} +1 -1
  50. package/dist/{chunk-2LWWIDPZ.js → chunk-NUWXK2NW.js} +1 -1
  51. package/dist/{chunk-XLG5C3XA.js → chunk-OHJGKETC.js} +1 -1
  52. package/dist/{chunk-5PTKFXAS.js → chunk-OQ6HLIYU.js} +13 -11
  53. package/dist/{chunk-NPHNGWJH.js → chunk-OZ4V6VQ2.js} +3 -3
  54. package/dist/{chunk-2CGUG4XK.js → chunk-Q4GCD5WE.js} +11 -9
  55. package/dist/{chunk-IVLJE3VX.js → chunk-QR77QVIT.js} +2 -2
  56. package/dist/{chunk-AA4KEZGW.js → chunk-SSOJUJFQ.js} +1 -1
  57. package/dist/{chunk-KYDM3W7A.js → chunk-TV2LRJVK.js} +2 -2
  58. package/dist/{chunk-6WIWCYD5.js → chunk-UQR6DWPM.js} +3 -3
  59. package/dist/{chunk-LZN67SFR.js → chunk-UUI2OMI7.js} +1 -1
  60. package/dist/{chunk-6Z4E4GBX.js → chunk-VFZICECI.js} +1 -1
  61. package/dist/{chunk-RCNDZEBU.js → chunk-VP4IJ3NC.js} +2 -2
  62. package/dist/{chunk-GF4MOYGU.js → chunk-X6SS5FWY.js} +20 -12
  63. package/dist/{chunk-2C6UJPQS.js → chunk-XIZHC6UO.js} +1 -1
  64. package/dist/{chunk-JREV7WVY.js → chunk-Y6WM6GY3.js} +1 -1
  65. package/dist/{chunk-JWGYWJ5F.js → chunk-ZIPAUKTK.js} +1 -1
  66. package/dist/{chunk-ZBMQOBQK.js → chunk-ZTWFHWRR.js} +1 -1
  67. package/dist/{clean-NH5JTTXP.js → clean-QXMDWVYB.js} +17 -17
  68. package/dist/cli.js +50 -50
  69. package/dist/{cloud-QKM43VWA.js → cloud-WTPVHGBP.js} +4 -4
  70. package/dist/{cloudrun-JQCGTNFP.js → cloudrun-JFN7W6XI.js} +5 -5
  71. package/dist/{compare-2ZOO6GRL.js → compare-CCDZEHTS.js} +27 -28
  72. package/dist/{compiler-WNWCQTI6.js → compiler-DNZFJIKO.js} +7 -3
  73. package/dist/{component-Q5AECWP4.js → component-OSVQHEQJ.js} +3 -3
  74. package/dist/{compositions-KEMPAOSU.js → compositions-CCMN5HAA.js} +12 -12
  75. package/dist/{delete-TWGIIVHU.js → delete-ZE7Z7SDY.js} +2 -2
  76. package/dist/{deterministicFonts-ITMUXWD2.js → deterministicFonts-HHGHYN6V.js} +2 -2
  77. package/dist/{dist-JAOG6MYW.js → dist-RUZFIHUD.js} +1 -1
  78. package/dist/{dist-JGUAVYZS.js → dist-Z7QP5AQY.js} +3 -3
  79. package/dist/{doctor-COVUXJ2H.js → doctor-KKRGCPV3.js} +11 -11
  80. package/dist/{events-PNRVEJOH.js → events-WJKCFVF7.js} +9 -9
  81. package/dist/{events-6K4KG2RC.js → events-YN5EY7O7.js} +10 -10
  82. package/dist/{feedback-YACZS7R7.js → feedback-DHLYWTNU.js} +11 -11
  83. package/dist/{figma-LEEL7JF7.js → figma-KCTT7ELR.js} +3 -3
  84. package/dist/fontLocalizeCli.js +10 -10
  85. package/dist/{get-FX23HBPC.js → get-XCGOGN53.js} +2 -2
  86. package/dist/{gpuPolicy-TCSAVM2S.js → gpuPolicy-J5CPE3TK.js} +7 -7
  87. package/dist/{grade-compare-ENNPIMZX.js → grade-compare-FBX5S77X.js} +27 -28
  88. package/dist/{gsapParserAcorn-FLWABPQM.js → gsapParserAcorn-3Z742FXU.js} +1 -1
  89. package/dist/{help-HNY5LMYR.js → help-6TQVEU2Q.js} +1 -1
  90. package/dist/{history-325KQTJM.js → history-PPDOAO2Z.js} +17 -17
  91. package/dist/hyperframe-runtime.js +54 -54
  92. package/dist/hyperframe.manifest.json +1 -1
  93. package/dist/hyperframe.runtime.iife.js +54 -54
  94. package/dist/hyperframes-player.global.js +1 -1
  95. package/dist/{info-GKPHG3QO.js → info-42EBGTUI.js} +12 -12
  96. package/dist/{init-UYF6SWL7.js → init-SERRMFRH.js} +23 -23
  97. package/dist/{inspect-A6DZG7KU.js → inspect-6TEDC7QZ.js} +28 -29
  98. package/dist/{installer-EY3AB44Q.js → installer-C47R4ZSU.js} +5 -5
  99. package/dist/{keyframes-P62TMLKQ.js → keyframes-BNLMFEWU.js} +19 -18
  100. package/dist/{lambda-HWU6V36S.js → lambda-DGWKFO3L.js} +6 -6
  101. package/dist/{layout-GWF2HD5Z.js → layout-PMYXB4ZJ.js} +28 -29
  102. package/dist/{lint-OBGOECOL.js → lint-DDNL3QQ5.js} +13 -13
  103. package/dist/{lintProject-FDJYTOVM.js → lintProject-MXUZEBDH.js} +1 -1
  104. package/dist/{list-ZOUMRWXQ.js → list-VCELX3BO.js} +2 -2
  105. package/dist/{login-4H6ZVI6D.js → login-WC4YD67C.js} +4 -4
  106. package/dist/{media-treatment-GRBN3MG5.js → media-treatment-4QGIOHQR.js} +13 -13
  107. package/dist/{models-YFTLSJEG.js → models-UTVBFNKD.js} +8 -8
  108. package/dist/{motionShot-7VLC2ULG.js → motionShot-3WDJAW4C.js} +17 -16
  109. package/dist/{normalize-audio-SLBARKVY.js → normalize-audio-ZXESA45N.js} +12 -12
  110. package/dist/{pipeline-WRNKPJZH.js → pipeline-DRXU55OB.js} +7 -7
  111. package/dist/{play-PDEXRHV6.js → play-AUEOCKY3.js} +22 -22
  112. package/dist/{preflight-6TUK6Z7A.js → preflight-OJJZVHWE.js} +8 -8
  113. package/dist/{present-UXWOO2YL.js → present-7JZQMSSU.js} +18 -18
  114. package/dist/{preview-CWHCNYYZ.js → preview-3AMXHHVS.js} +18 -18
  115. package/dist/{producer-WDTJSNXK.js → producer-QI55RCFB.js} +1 -1
  116. package/dist/{projectConfig-DBP5POAQ.js → projectConfig-EJNHN452.js} +7 -7
  117. package/dist/{publication-SUAGUL5G.js → publication-SH4OD64P.js} +3 -3
  118. package/dist/{publish-CDKO6FSQ.js → publish-2B5LKGKK.js} +9 -9
  119. package/dist/{remove-background-QFMDODZ4.js → remove-background-EJ4SPMBK.js} +8 -8
  120. package/dist/{render-XTI7E22A.js → render-GWIDYUYW.js} +13 -13
  121. package/dist/{render-BYD7ZASF.js → render-JRYEUEAR.js} +24 -26
  122. package/dist/{render-NRNF56OV.js → render-Y4OQV7BU.js} +4 -4
  123. package/dist/{render-batch-L2AIXYA3.js → render-batch-3F43JEX2.js} +4 -4
  124. package/dist/{renderCancellation-XR3W2AQT.js → renderCancellation-WUM56H5O.js} +7 -7
  125. package/dist/renderSetupWorker.js +1 -1
  126. package/dist/{resolver-RYPIAEGU.js → resolver-WHBQ7QFS.js} +5 -5
  127. package/dist/{sherpa-MXQ34FFS.js → sherpa-5OYOKOOP.js} +8 -8
  128. package/dist/skills/media-use/SKILL.md +2 -0
  129. package/dist/skills/media-use/audio/scripts/lib/heygen.mjs +16 -6
  130. package/dist/skills/media-use/audio/scripts/lib/heygen.test.mjs +26 -1
  131. package/dist/skills/media-use/audio/scripts/lib/tts.mjs +2 -4
  132. package/dist/skills/media-use/audio/scripts/lib/tts.test.mjs +31 -1
  133. package/dist/skills/media-use/scripts/lib/manifest.d.mts +19 -0
  134. package/dist/skills/media-use/scripts/lib/manifest.mjs +17 -13
  135. package/dist/skills/media-use/scripts/lib/manifest.test.mjs +3 -2
  136. package/dist/{skills-MZQUKPEY.js → skills-JKBN3CQS.js} +12 -12
  137. package/dist/{skillsUpdateCheck-B5F5UR7U.js → skillsUpdateCheck-KUYRATKA.js} +3 -3
  138. package/dist/{snapshot-HPBNWSSK.js → snapshot-M7FF5DBZ.js} +28 -29
  139. package/dist/{src-RNEWLAP6.js → src-7NUMTCMB.js} +9 -9
  140. package/dist/{src-BS6B2UWS.js → src-S7FSBDSO.js} +6 -6
  141. package/dist/{staticProjectServer-B44OD7QD.js → staticProjectServer-AQFAOUJX.js} +16 -16
  142. package/dist/{status-RYS52BAQ.js → status-55DDWDMV.js} +7 -7
  143. package/dist/studio/assets/{hyperframes-player-GkN9yzzq.js → hyperframes-player-DMzBHhbH.js} +1 -1
  144. package/dist/studio/assets/{index-CyFqMHGS.js → index-B-YDp8hN.js} +174 -174
  145. package/dist/studio/assets/{index-BpKhiuzT.js → index-CBRX2eZX.js} +1 -1
  146. package/dist/studio/assets/{index-ByV72rWx.js → index-lyjhSEzi.js} +1 -1
  147. package/dist/studio/{chunk-J6Q572FA.js → chunk-246VB2G3.js} +3 -1
  148. package/dist/studio/chunk-246VB2G3.js.map +1 -0
  149. package/dist/studio/index.d.ts +10 -2
  150. package/dist/studio/index.html +1 -1
  151. package/dist/studio/index.js +416 -301
  152. package/dist/studio/index.js.map +1 -1
  153. package/dist/studio/player.js +1 -1
  154. package/dist/{studio-api-YCS6DZMR.js → studio-api-7RBB3E3E.js} +10 -10
  155. package/dist/{studioServer-AEXETXZ2.js → studioServer-5FPPFWL6.js} +42 -43
  156. package/dist/{system-TD2HPCOA.js → system-BQ72Y6YD.js} +7 -7
  157. package/dist/{telemetry-7KDXFPTK.js → telemetry-OIX76XCZ.js} +10 -10
  158. package/dist/{timeline-P4IMRDIN.js → timeline-JWDLDSVO.js} +17 -17
  159. package/dist/{tokens-HKYWL774.js → tokens-HZKAUSHK.js} +2 -2
  160. package/dist/{transcribe-2E4QY24M.js → transcribe-AQSGSWXV.js} +8 -8
  161. package/dist/{transcribe-UIQMMHXI.js → transcribe-G2HSKAJN.js} +13 -13
  162. package/dist/{updateCheck-KWLMTR35.js → updateCheck-Y6ICSKXS.js} +2 -2
  163. package/dist/{upgrade-E4TMMCGK.js → upgrade-XU35HZ7O.js} +2 -2
  164. package/dist/{urlDownloader-P2EJDWLH.js → urlDownloader-V7FRXT7U.js} +6 -6
  165. package/dist/{validate-IX47WBNJ.js → validate-J2D2ZRPB.js} +17 -18
  166. package/dist/{video-56EQZA6M.js → video-MZPB3UAC.js} +7 -7
  167. package/package.json +1 -1
  168. package/dist/chunk-262C25DQ.js +0 -31
  169. package/dist/chunk-PATLRNZA.js +0 -3541
  170. package/dist/studio/chunk-J6Q572FA.js.map +0 -1
@@ -15,7 +15,7 @@ import {
15
15
  import {
16
16
  resolveProject,
17
17
  resolveProjectOrThrow
18
- } from "./chunk-WBRDOH4A.js";
18
+ } from "./chunk-FD5UEKRP.js";
19
19
  import "./chunk-IHFUKJOR.js";
20
20
  import {
21
21
  MAX_PORT_SCAN,
@@ -27,10 +27,10 @@ import {
27
27
  } from "./chunk-DQBY7FRR.js";
28
28
  import {
29
29
  resolveLocalBrowserGpuMode
30
- } from "./chunk-6Z4E4GBX.js";
30
+ } from "./chunk-VFZICECI.js";
31
31
  import {
32
32
  resolveAutoProxy
33
- } from "./chunk-3WXWL7AY.js";
33
+ } from "./chunk-ABMHBIWX.js";
34
34
  import "./chunk-XT7X6QCP.js";
35
35
  import "./chunk-4YYJOFKS.js";
36
36
  import "./chunk-HVW7ABXD.js";
@@ -39,19 +39,19 @@ import {
39
39
  ft,
40
40
  ge
41
41
  } from "./chunk-WMQNIQDJ.js";
42
- import "./chunk-JACPHNUK.js";
43
- import "./chunk-KYDM3W7A.js";
44
- import "./chunk-ZBMQOBQK.js";
42
+ import "./chunk-2CYCP3AY.js";
43
+ import "./chunk-TV2LRJVK.js";
44
+ import "./chunk-ZTWFHWRR.js";
45
45
  import "./chunk-AWDFDFI3.js";
46
46
  import "./chunk-P6LJ4Y32.js";
47
47
  import "./chunk-GMECXFAN.js";
48
- import "./chunk-NPHNGWJH.js";
49
- import "./chunk-6WIWCYD5.js";
48
+ import "./chunk-OZ4V6VQ2.js";
49
+ import "./chunk-UQR6DWPM.js";
50
50
  import "./chunk-VWG7OQKU.js";
51
51
  import {
52
52
  c
53
53
  } from "./chunk-ZTZA4UWZ.js";
54
- import "./chunk-BN5KOC5O.js";
54
+ import "./chunk-EB5XYJBZ.js";
55
55
  import "./chunk-AMKC3AXA.js";
56
56
  import {
57
57
  defineCommand
@@ -61,12 +61,12 @@ import {
61
61
  requestCliExit,
62
62
  setCommandExitCode
63
63
  } from "./chunk-PBN6GBJE.js";
64
- import "./chunk-MNMD6XLG.js";
65
- import "./chunk-RCNDZEBU.js";
66
- import "./chunk-FSLYPQ5Z.js";
64
+ import "./chunk-NKS75GFI.js";
65
+ import "./chunk-VP4IJ3NC.js";
66
+ import "./chunk-F7MXHGU3.js";
67
67
  import "./chunk-DPVXBVLL.js";
68
- import "./chunk-GPGWCFIA.js";
69
- import "./chunk-PATLRNZA.js";
68
+ import "./chunk-LQBR4IC7.js";
69
+ import "./chunk-C6MUZ4T2.js";
70
70
  import "./chunk-VC76R6W2.js";
71
71
  import "./chunk-OFQWTKPW.js";
72
72
  import {
@@ -80,7 +80,7 @@ import {
80
80
  terminateProcessTree
81
81
  } from "./chunk-LCSMOLGX.js";
82
82
  import "./chunk-TWWSYAKJ.js";
83
- import "./chunk-NITBGIHR.js";
83
+ import "./chunk-N4RVOW43.js";
84
84
  import "./chunk-HBBJFK6I.js";
85
85
  import "./chunk-PJ3HDUCY.js";
86
86
  import "./chunk-TQFG7HTI.js";
@@ -92,7 +92,7 @@ import "./chunk-WERLJGIC.js";
92
92
  import {
93
93
  isDevMode
94
94
  } from "./chunk-ISN5GRYI.js";
95
- import "./chunk-WG4IZWEH.js";
95
+ import "./chunk-DNIJ7MH6.js";
96
96
  import {
97
97
  normalizeErrorMessage
98
98
  } from "./chunk-KNU5COPB.js";
@@ -1655,7 +1655,7 @@ async function runLocalStudioMode(dir, options) {
1655
1655
  return waitForStudioChildClose(child);
1656
1656
  }
1657
1657
  async function runEmbeddedMode(dir, startPort, options) {
1658
- const { createStudioServer, loadPreviewServerBuildSignature, resolveStudioBundle } = await import("./studioServer-AEXETXZ2.js");
1658
+ const { createStudioServer, loadPreviewServerBuildSignature, resolveStudioBundle } = await import("./studioServer-5FPPFWL6.js");
1659
1659
  const pName = options?.projectName ?? basename(dir);
1660
1660
  const studioBundle = resolveStudioBundle();
1661
1661
  if (!options?.json) ge(c.bold("hyperframes preview"));
@@ -1784,7 +1784,7 @@ async function runEmbeddedMode(dir, startPort, options) {
1784
1784
  };
1785
1785
  process.on("SIGINT", shutdown);
1786
1786
  process.on("SIGTERM", shutdown);
1787
- import("./src-BS6B2UWS.js").then(({ killTrackedProcesses }) => {
1787
+ import("./src-S7FSBDSO.js").then(({ killTrackedProcesses }) => {
1788
1788
  process.once("exit", () => {
1789
1789
  if (!shuttingDown) killTrackedProcesses();
1790
1790
  });
@@ -6,7 +6,7 @@ var __filename = __hf_fileURLToPath(import.meta.url);
6
6
  var __dirname = __hf_dirname(__filename);
7
7
  import {
8
8
  loadProducer
9
- } from "./chunk-XLG5C3XA.js";
9
+ } from "./chunk-OHJGKETC.js";
10
10
  import "./chunk-M2WBOQ2Q.js";
11
11
  export {
12
12
  loadProducer
@@ -17,20 +17,20 @@ import {
17
17
  resolveAutoProxy,
18
18
  seedProjectAuthoringSkill,
19
19
  writeProjectConfig
20
- } from "./chunk-3WXWL7AY.js";
20
+ } from "./chunk-ABMHBIWX.js";
21
21
  import "./chunk-XT7X6QCP.js";
22
22
  import "./chunk-4YYJOFKS.js";
23
23
  import "./chunk-HVW7ABXD.js";
24
- import "./chunk-JACPHNUK.js";
25
- import "./chunk-KYDM3W7A.js";
26
- import "./chunk-ZBMQOBQK.js";
24
+ import "./chunk-2CYCP3AY.js";
25
+ import "./chunk-TV2LRJVK.js";
26
+ import "./chunk-ZTWFHWRR.js";
27
27
  import "./chunk-AWDFDFI3.js";
28
28
  import "./chunk-P6LJ4Y32.js";
29
29
  import "./chunk-GMECXFAN.js";
30
- import "./chunk-RCNDZEBU.js";
31
- import "./chunk-FSLYPQ5Z.js";
30
+ import "./chunk-VP4IJ3NC.js";
31
+ import "./chunk-F7MXHGU3.js";
32
32
  import "./chunk-DPVXBVLL.js";
33
- import "./chunk-PATLRNZA.js";
33
+ import "./chunk-C6MUZ4T2.js";
34
34
  import "./chunk-VC76R6W2.js";
35
35
  import "./chunk-OFQWTKPW.js";
36
36
  import "./chunk-HBBJFK6I.js";
@@ -8,10 +8,10 @@ import {
8
8
  publishRegistryFile,
9
9
  registryTargetPath
10
10
  } from "./chunk-GMECXFAN.js";
11
- import "./chunk-RCNDZEBU.js";
12
- import "./chunk-FSLYPQ5Z.js";
11
+ import "./chunk-VP4IJ3NC.js";
12
+ import "./chunk-F7MXHGU3.js";
13
13
  import "./chunk-DPVXBVLL.js";
14
- import "./chunk-PATLRNZA.js";
14
+ import "./chunk-C6MUZ4T2.js";
15
15
  import "./chunk-VC76R6W2.js";
16
16
  import {
17
17
  realProjectRoot
@@ -30,10 +30,10 @@ import {
30
30
  resolveProxy,
31
31
  scanProjectMediaCodecMap,
32
32
  waitForProxy
33
- } from "./chunk-SJ64QY5Z.js";
33
+ } from "./chunk-2BMZEUGD.js";
34
34
  import {
35
35
  resolveAutoProxy
36
- } from "./chunk-3WXWL7AY.js";
36
+ } from "./chunk-ABMHBIWX.js";
37
37
  import "./chunk-XT7X6QCP.js";
38
38
  import "./chunk-4YYJOFKS.js";
39
39
  import "./chunk-HVW7ABXD.js";
@@ -43,9 +43,9 @@ import {
43
43
  q,
44
44
  ue
45
45
  } from "./chunk-WMQNIQDJ.js";
46
- import "./chunk-JACPHNUK.js";
47
- import "./chunk-KYDM3W7A.js";
48
- import "./chunk-ZBMQOBQK.js";
46
+ import "./chunk-2CYCP3AY.js";
47
+ import "./chunk-TV2LRJVK.js";
48
+ import "./chunk-ZTWFHWRR.js";
49
49
  import "./chunk-AWDFDFI3.js";
50
50
  import "./chunk-P6LJ4Y32.js";
51
51
  import "./chunk-GMECXFAN.js";
@@ -59,10 +59,10 @@ import {
59
59
  failCommand,
60
60
  setCommandExitCode
61
61
  } from "./chunk-PBN6GBJE.js";
62
- import "./chunk-RCNDZEBU.js";
63
- import "./chunk-FSLYPQ5Z.js";
62
+ import "./chunk-VP4IJ3NC.js";
63
+ import "./chunk-F7MXHGU3.js";
64
64
  import "./chunk-DPVXBVLL.js";
65
- import "./chunk-PATLRNZA.js";
65
+ import "./chunk-C6MUZ4T2.js";
66
66
  import "./chunk-VC76R6W2.js";
67
67
  import "./chunk-OFQWTKPW.js";
68
68
  import {
@@ -74,7 +74,7 @@ import {
74
74
  isRemoteOrInlineUrl,
75
75
  lintProject,
76
76
  resolveLocalAssetCandidates
77
- } from "./chunk-NITBGIHR.js";
77
+ } from "./chunk-N4RVOW43.js";
78
78
  import "./chunk-HBBJFK6I.js";
79
79
  import "./chunk-PJ3HDUCY.js";
80
80
  import {
@@ -8,7 +8,7 @@ import {
8
8
  DEFAULT_QUALITY,
9
9
  QUALITIES,
10
10
  isQuality
11
- } from "./chunk-2XV3S6TA.js";
11
+ } from "./chunk-MOPVB4VL.js";
12
12
  import {
13
13
  DEVICES,
14
14
  isDevice
@@ -28,17 +28,17 @@ import {
28
28
  import {
29
29
  failCommand
30
30
  } from "./chunk-PBN6GBJE.js";
31
- import "./chunk-MNMD6XLG.js";
32
- import "./chunk-RCNDZEBU.js";
33
- import "./chunk-FSLYPQ5Z.js";
31
+ import "./chunk-NKS75GFI.js";
32
+ import "./chunk-VP4IJ3NC.js";
33
+ import "./chunk-F7MXHGU3.js";
34
34
  import "./chunk-DPVXBVLL.js";
35
- import "./chunk-GPGWCFIA.js";
36
- import "./chunk-PATLRNZA.js";
35
+ import "./chunk-LQBR4IC7.js";
36
+ import "./chunk-C6MUZ4T2.js";
37
37
  import "./chunk-VC76R6W2.js";
38
38
  import "./chunk-OFQWTKPW.js";
39
39
  import "./chunk-LCSMOLGX.js";
40
40
  import "./chunk-TWWSYAKJ.js";
41
- import "./chunk-NITBGIHR.js";
41
+ import "./chunk-N4RVOW43.js";
42
42
  import "./chunk-HBBJFK6I.js";
43
43
  import "./chunk-PJ3HDUCY.js";
44
44
  import "./chunk-TQFG7HTI.js";
@@ -159,7 +159,7 @@ var remove_background_default = defineCommand({
159
159
  const outputPath = resolve(args.output);
160
160
  const backgroundOutputArg = args["background-output"];
161
161
  const backgroundOutputPath = backgroundOutputArg ? resolve(backgroundOutputArg) : void 0;
162
- const { render } = await import("./pipeline-WRNKPJZH.js");
162
+ const { render } = await import("./pipeline-DRXU55OB.js");
163
163
  const spin = args.json ? null : ft();
164
164
  spin?.start("Preparing background-removal pipeline...");
165
165
  try {
@@ -35,10 +35,10 @@ import {
35
35
  reportVariableIssues,
36
36
  resolveVariablesArg,
37
37
  validateVariablesAgainstProject
38
- } from "./chunk-WW7V2GQJ.js";
38
+ } from "./chunk-JD3C44FP.js";
39
39
  import {
40
40
  resolveProject
41
- } from "./chunk-WBRDOH4A.js";
41
+ } from "./chunk-FD5UEKRP.js";
42
42
  import {
43
43
  errorBox,
44
44
  formatBytes,
@@ -46,13 +46,13 @@ import {
46
46
  } from "./chunk-IHFUKJOR.js";
47
47
  import "./chunk-EOVYQ3IG.js";
48
48
  import "./chunk-PFCFR3KZ.js";
49
- import "./chunk-NPHNGWJH.js";
50
- import "./chunk-6WIWCYD5.js";
49
+ import "./chunk-OZ4V6VQ2.js";
50
+ import "./chunk-UQR6DWPM.js";
51
51
  import "./chunk-VWG7OQKU.js";
52
52
  import {
53
53
  c
54
54
  } from "./chunk-ZTZA4UWZ.js";
55
- import "./chunk-BN5KOC5O.js";
55
+ import "./chunk-EB5XYJBZ.js";
56
56
  import "./chunk-AMKC3AXA.js";
57
57
  import {
58
58
  defineCommand
@@ -61,16 +61,16 @@ import "./chunk-54HJ63Q2.js";
61
61
  import {
62
62
  failCommand
63
63
  } from "./chunk-PBN6GBJE.js";
64
- import "./chunk-MNMD6XLG.js";
65
- import "./chunk-RCNDZEBU.js";
66
- import "./chunk-FSLYPQ5Z.js";
64
+ import "./chunk-NKS75GFI.js";
65
+ import "./chunk-VP4IJ3NC.js";
66
+ import "./chunk-F7MXHGU3.js";
67
67
  import "./chunk-DPVXBVLL.js";
68
- import "./chunk-GPGWCFIA.js";
69
- import "./chunk-PATLRNZA.js";
68
+ import "./chunk-LQBR4IC7.js";
69
+ import "./chunk-C6MUZ4T2.js";
70
70
  import "./chunk-VC76R6W2.js";
71
71
  import "./chunk-OFQWTKPW.js";
72
72
  import "./chunk-TWWSYAKJ.js";
73
- import "./chunk-NITBGIHR.js";
73
+ import "./chunk-N4RVOW43.js";
74
74
  import "./chunk-HBBJFK6I.js";
75
75
  import "./chunk-PJ3HDUCY.js";
76
76
  import "./chunk-TQFG7HTI.js";
@@ -78,12 +78,12 @@ import "./chunk-GK4AIFIH.js";
78
78
  import "./chunk-2PSPARWP.js";
79
79
  import {
80
80
  withMeta
81
- } from "./chunk-7VXU7E5S.js";
81
+ } from "./chunk-74G66BSC.js";
82
82
  import "./chunk-K4WIOZFP.js";
83
83
  import "./chunk-XUXGIA7H.js";
84
84
  import "./chunk-WERLJGIC.js";
85
85
  import "./chunk-ISN5GRYI.js";
86
- import "./chunk-WG4IZWEH.js";
86
+ import "./chunk-DNIJ7MH6.js";
87
87
  import {
88
88
  normalizeErrorMessage
89
89
  } from "./chunk-KNU5COPB.js";
@@ -6,35 +6,33 @@ var __filename = __hf_fileURLToPath(import.meta.url);
6
6
  var __dirname = __hf_dirname(__filename);
7
7
  import {
8
8
  maybePromptRenderFeedback
9
- } from "./chunk-RYSHGEZL.js";
9
+ } from "./chunk-BGYDTAYR.js";
10
10
  import {
11
11
  reportVariableIssues,
12
12
  resolveVariablesArg,
13
13
  validateVariablesAgainstProject
14
- } from "./chunk-WW7V2GQJ.js";
14
+ } from "./chunk-JD3C44FP.js";
15
15
  import {
16
16
  loadProducer
17
- } from "./chunk-XLG5C3XA.js";
17
+ } from "./chunk-OHJGKETC.js";
18
18
  import {
19
19
  formatLintStartupMessage
20
20
  } from "./chunk-6CSYCFQV.js";
21
21
  import {
22
22
  resolveProject
23
- } from "./chunk-WBRDOH4A.js";
23
+ } from "./chunk-FD5UEKRP.js";
24
24
  import {
25
25
  renderJobObservabilityTelemetryPayload
26
26
  } from "./chunk-VXVRPIJA.js";
27
- import {
28
- windowsChromeCrashRemediation
29
- } from "./chunk-262C25DQ.js";
30
27
  import {
31
28
  hasExplicitCompositionArg,
32
29
  parseGifLoopArg,
33
30
  parseHlsSegmentSecondsArg,
34
31
  resolveBrowserTimeoutMsArg,
35
32
  resolveCompositionEntryArg,
36
- resolveDefaultFpsArg
37
- } from "./chunk-5OS5XIWZ.js";
33
+ resolveDefaultFpsArg,
34
+ windowsChromeCrashRemediation
35
+ } from "./chunk-C477PVA2.js";
38
36
  import "./chunk-YEIFI443.js";
39
37
  import {
40
38
  errorBox,
@@ -46,24 +44,24 @@ import {
46
44
  } from "./chunk-IHFUKJOR.js";
47
45
  import {
48
46
  runEnvironmentChecks
49
- } from "./chunk-VU4KRDRL.js";
47
+ } from "./chunk-5KTDZVF3.js";
50
48
  import "./chunk-PFCFR3KZ.js";
51
49
  import {
52
50
  createRenderCancellationScope
53
- } from "./chunk-LZN67SFR.js";
51
+ } from "./chunk-UUI2OMI7.js";
54
52
  import {
55
53
  loadProjectConfig,
56
54
  readProjectConfigWithStatus,
57
55
  seedProjectAuthoringSkill
58
- } from "./chunk-3WXWL7AY.js";
56
+ } from "./chunk-ABMHBIWX.js";
59
57
  import "./chunk-XT7X6QCP.js";
60
58
  import "./chunk-4YYJOFKS.js";
61
59
  import {
62
60
  normalizeSkillSlug
63
61
  } from "./chunk-HVW7ABXD.js";
64
- import "./chunk-JACPHNUK.js";
65
- import "./chunk-KYDM3W7A.js";
66
- import "./chunk-ZBMQOBQK.js";
62
+ import "./chunk-2CYCP3AY.js";
63
+ import "./chunk-TV2LRJVK.js";
64
+ import "./chunk-ZTWFHWRR.js";
67
65
  import "./chunk-AWDFDFI3.js";
68
66
  import "./chunk-P6LJ4Y32.js";
69
67
  import "./chunk-GMECXFAN.js";
@@ -80,15 +78,15 @@ import {
80
78
  trackRenderError,
81
79
  trackRenderObservation,
82
80
  trackRenderPreflightRejected
83
- } from "./chunk-NPHNGWJH.js";
84
- import "./chunk-6WIWCYD5.js";
81
+ } from "./chunk-OZ4V6VQ2.js";
82
+ import "./chunk-UQR6DWPM.js";
85
83
  import "./chunk-VWG7OQKU.js";
86
84
  import {
87
85
  c
88
86
  } from "./chunk-ZTZA4UWZ.js";
89
87
  import {
90
88
  bytesToMb
91
- } from "./chunk-BN5KOC5O.js";
89
+ } from "./chunk-EB5XYJBZ.js";
92
90
  import "./chunk-AMKC3AXA.js";
93
91
  import {
94
92
  markRenderSucceeded,
@@ -110,22 +108,22 @@ import {
110
108
  MAX_VP9_CPU_USED,
111
109
  MIN_VP9_CPU_USED,
112
110
  isVideoFrameFormat
113
- } from "./chunk-MNMD6XLG.js";
111
+ } from "./chunk-NKS75GFI.js";
114
112
  import {
115
113
  formatRenderOutputTimestamp,
116
114
  fpsToFfmpegArg,
117
115
  fpsToNumber,
118
116
  parseFps
119
- } from "./chunk-RCNDZEBU.js";
117
+ } from "./chunk-VP4IJ3NC.js";
120
118
  import {
121
119
  checkOutputResolutionCompatibility,
122
120
  isAspectAgnosticResolutionAlias,
123
121
  normalizeResolutionFlag,
124
122
  suggestMatchingPreset
125
- } from "./chunk-FSLYPQ5Z.js";
123
+ } from "./chunk-F7MXHGU3.js";
126
124
  import "./chunk-DPVXBVLL.js";
127
- import "./chunk-GPGWCFIA.js";
128
- import "./chunk-PATLRNZA.js";
125
+ import "./chunk-LQBR4IC7.js";
126
+ import "./chunk-C6MUZ4T2.js";
129
127
  import "./chunk-VC76R6W2.js";
130
128
  import "./chunk-OFQWTKPW.js";
131
129
  import {
@@ -143,7 +141,7 @@ import {
143
141
  collectSubCompositionSrcs,
144
142
  lintProject,
145
143
  shouldBlockRender
146
- } from "./chunk-NITBGIHR.js";
144
+ } from "./chunk-N4RVOW43.js";
147
145
  import "./chunk-HBBJFK6I.js";
148
146
  import "./chunk-PJ3HDUCY.js";
149
147
  import "./chunk-TQFG7HTI.js";
@@ -162,7 +160,7 @@ import {
162
160
  } from "./chunk-ISN5GRYI.js";
163
161
  import {
164
162
  VERSION
165
- } from "./chunk-WG4IZWEH.js";
163
+ } from "./chunk-DNIJ7MH6.js";
166
164
  import {
167
165
  normalizeErrorMessage
168
166
  } from "./chunk-KNU5COPB.js";
@@ -660,7 +658,7 @@ async function executeRenderPlan(plan, dependencies, cancellation) {
660
658
  let batchModule;
661
659
  let preparedBatch;
662
660
  if (plan.batchPath) {
663
- batchModule = await import("./batchRender-2HXYPO62.js");
661
+ batchModule = await import("./batchRender-ZXQVHWED.js");
664
662
  try {
665
663
  preparedBatch = batchModule.prepareBatchRender({
666
664
  batchPath: plan.batchPath,
@@ -15,7 +15,7 @@ import {
15
15
  reportVariableIssues,
16
16
  resolveVariablesArg,
17
17
  validateVariablesAgainstProject
18
- } from "./chunk-WW7V2GQJ.js";
18
+ } from "./chunk-JD3C44FP.js";
19
19
  import "./chunk-5Z63TBTX.js";
20
20
  import "./chunk-IHFUKJOR.js";
21
21
  import "./chunk-PFCFR3KZ.js";
@@ -25,10 +25,10 @@ import {
25
25
  import {
26
26
  setCommandExitCode
27
27
  } from "./chunk-PBN6GBJE.js";
28
- import "./chunk-RCNDZEBU.js";
29
- import "./chunk-FSLYPQ5Z.js";
28
+ import "./chunk-VP4IJ3NC.js";
29
+ import "./chunk-F7MXHGU3.js";
30
30
  import "./chunk-DPVXBVLL.js";
31
- import "./chunk-PATLRNZA.js";
31
+ import "./chunk-C6MUZ4T2.js";
32
32
  import "./chunk-VC76R6W2.js";
33
33
  import "./chunk-OFQWTKPW.js";
34
34
  import "./chunk-TQFG7HTI.js";
@@ -14,7 +14,7 @@ import {
14
14
  loadProjectVariableSchema,
15
15
  reportVariableIssues,
16
16
  validateVariablesAgainstSchema
17
- } from "./chunk-WW7V2GQJ.js";
17
+ } from "./chunk-JD3C44FP.js";
18
18
  import "./chunk-5Z63TBTX.js";
19
19
  import {
20
20
  errorBox
@@ -27,10 +27,10 @@ import {
27
27
  failCommand,
28
28
  setCommandExitCode
29
29
  } from "./chunk-PBN6GBJE.js";
30
- import "./chunk-RCNDZEBU.js";
31
- import "./chunk-FSLYPQ5Z.js";
30
+ import "./chunk-VP4IJ3NC.js";
31
+ import "./chunk-F7MXHGU3.js";
32
32
  import "./chunk-DPVXBVLL.js";
33
- import "./chunk-PATLRNZA.js";
33
+ import "./chunk-C6MUZ4T2.js";
34
34
  import "./chunk-VC76R6W2.js";
35
35
  import "./chunk-OFQWTKPW.js";
36
36
  import "./chunk-TQFG7HTI.js";
@@ -7,19 +7,19 @@ var __dirname = __hf_dirname(__filename);
7
7
  import {
8
8
  createRenderCancellationScope,
9
9
  stoppedByCancelSignal
10
- } from "./chunk-LZN67SFR.js";
11
- import "./chunk-MNMD6XLG.js";
12
- import "./chunk-RCNDZEBU.js";
13
- import "./chunk-FSLYPQ5Z.js";
10
+ } from "./chunk-UUI2OMI7.js";
11
+ import "./chunk-NKS75GFI.js";
12
+ import "./chunk-VP4IJ3NC.js";
13
+ import "./chunk-F7MXHGU3.js";
14
14
  import "./chunk-DPVXBVLL.js";
15
- import "./chunk-GPGWCFIA.js";
16
- import "./chunk-PATLRNZA.js";
15
+ import "./chunk-LQBR4IC7.js";
16
+ import "./chunk-C6MUZ4T2.js";
17
17
  import "./chunk-VC76R6W2.js";
18
18
  import "./chunk-OFQWTKPW.js";
19
19
  import "./chunk-LAOCA3MQ.js";
20
20
  import "./chunk-LCSMOLGX.js";
21
21
  import "./chunk-TWWSYAKJ.js";
22
- import "./chunk-NITBGIHR.js";
22
+ import "./chunk-N4RVOW43.js";
23
23
  import "./chunk-HBBJFK6I.js";
24
24
  import "./chunk-PJ3HDUCY.js";
25
25
  import "./chunk-TQFG7HTI.js";
@@ -16,7 +16,7 @@ import "./chunk-LCSMOLGX.js";
16
16
  import "./chunk-TWWSYAKJ.js";
17
17
  import {
18
18
  lintProject
19
- } from "./chunk-NITBGIHR.js";
19
+ } from "./chunk-N4RVOW43.js";
20
20
  import "./chunk-HBBJFK6I.js";
21
21
  import "./chunk-PJ3HDUCY.js";
22
22
  import "./chunk-TQFG7HTI.js";
@@ -11,15 +11,15 @@ import {
11
11
  resolveItemWithDependencies,
12
12
  resolveItemsByTag,
13
13
  unreachableRegistryMessage
14
- } from "./chunk-JACPHNUK.js";
15
- import "./chunk-ZBMQOBQK.js";
14
+ } from "./chunk-2CYCP3AY.js";
15
+ import "./chunk-ZTWFHWRR.js";
16
16
  import "./chunk-AWDFDFI3.js";
17
17
  import "./chunk-P6LJ4Y32.js";
18
18
  import "./chunk-GMECXFAN.js";
19
- import "./chunk-RCNDZEBU.js";
20
- import "./chunk-FSLYPQ5Z.js";
19
+ import "./chunk-VP4IJ3NC.js";
20
+ import "./chunk-F7MXHGU3.js";
21
21
  import "./chunk-DPVXBVLL.js";
22
- import "./chunk-PATLRNZA.js";
22
+ import "./chunk-C6MUZ4T2.js";
23
23
  import "./chunk-VC76R6W2.js";
24
24
  import "./chunk-OFQWTKPW.js";
25
25
  import "./chunk-TQFG7HTI.js";
@@ -11,26 +11,26 @@ import "./chunk-EOVYQ3IG.js";
11
11
  import {
12
12
  getPreparedWavDurationSeconds,
13
13
  prepareWav
14
- } from "./chunk-AA4KEZGW.js";
14
+ } from "./chunk-SSOJUJFQ.js";
15
15
  import {
16
16
  stoppedByCancelSignal
17
- } from "./chunk-LZN67SFR.js";
17
+ } from "./chunk-UUI2OMI7.js";
18
18
  import "./chunk-OAF4XJOW.js";
19
19
  import "./chunk-X5HWXQPU.js";
20
20
  import "./chunk-TVCRUG2S.js";
21
21
  import "./chunk-AMKC3AXA.js";
22
- import "./chunk-MNMD6XLG.js";
23
- import "./chunk-RCNDZEBU.js";
24
- import "./chunk-FSLYPQ5Z.js";
22
+ import "./chunk-NKS75GFI.js";
23
+ import "./chunk-VP4IJ3NC.js";
24
+ import "./chunk-F7MXHGU3.js";
25
25
  import "./chunk-DPVXBVLL.js";
26
- import "./chunk-GPGWCFIA.js";
27
- import "./chunk-PATLRNZA.js";
26
+ import "./chunk-LQBR4IC7.js";
27
+ import "./chunk-C6MUZ4T2.js";
28
28
  import "./chunk-VC76R6W2.js";
29
29
  import "./chunk-OFQWTKPW.js";
30
30
  import "./chunk-LAOCA3MQ.js";
31
31
  import "./chunk-LCSMOLGX.js";
32
32
  import "./chunk-TWWSYAKJ.js";
33
- import "./chunk-NITBGIHR.js";
33
+ import "./chunk-N4RVOW43.js";
34
34
  import "./chunk-HBBJFK6I.js";
35
35
  import "./chunk-PJ3HDUCY.js";
36
36
  import "./chunk-TQFG7HTI.js";
@@ -11,6 +11,8 @@ The media OS for HyperFrames: resolve · generate · operate · remember — eve
11
11
 
12
12
  First run: install and sign in to the `heygen` CLI (the free-usage path), then verify with `npx hyperframes media-use resolve --doctor`. Setup and providers: `references/setup-providers.md`.
13
13
 
14
+ Before generating a voiceover or an avatar video, tell the person: signing in to the heygen CLI with OAuth (`heygen auth login --oauth`) gives a free allowance for TTS voiceover and avatar videos, while an API key bills API credits.
15
+
14
16
  ## Resolve — the one verb
15
17
 
16
18
  ```bash
@@ -59,23 +59,29 @@ export function loadEnvFromDir(startDir) {
59
59
 
60
60
  // → { headers } | { expired: true } | null. Never throws.
61
61
  export function heygenCredential() {
62
+ const cred = resolveCredential();
63
+ return cred?.unreadable ? null : cred;
64
+ }
65
+
66
+ // heygenCredential's answer, or { unreadable: { file, code } } when the credentials path exists but cannot be read
67
+ // (a folder, a locked ~/.heygen), so heygenAuthHeaders can say to fix that path: logging in again would fail there too.
68
+ // Read without checking first, so the file cannot change between a check and the read.
69
+ function resolveCredential() {
62
70
  const envKey = process.env.HEYGEN_API_KEY || process.env.HYPERFRAMES_API_KEY;
63
71
  if (envKey) return { headers: { "X-Api-Key": envKey } };
64
72
 
65
73
  const file = join(process.env.HEYGEN_CONFIG_DIR || join(homedir(), ".heygen"), "credentials");
66
- // Callers only probe for a credential, so any path that cannot be read (missing, a folder, a locked ~/.heygen)
67
- // is none. Read without checking first, so the file cannot change between a check and the read.
68
74
  let raw;
69
75
  try {
70
76
  raw = readFileSync(file, "utf8").trim();
71
- } catch {
72
- return null;
77
+ } catch (error) {
78
+ return error.code === "ENOENT" ? null : { unreadable: { file, code: error.code } };
73
79
  }
74
80
  if (!raw) return null;
75
81
  if (!raw.startsWith("{")) return { headers: { "X-Api-Key": raw } };
76
82
 
77
83
  // A malformed credentials file (partial write / wrong shape) must degrade to
78
- // "no credential", not crash the engine at startup — this function never throws.
84
+ // "no credential", not crash the engine at startup.
79
85
  let cred;
80
86
  try {
81
87
  cred = JSON.parse(raw);
@@ -105,7 +111,7 @@ export function heygenAuthMethod() {
105
111
 
106
112
  // → auth headers object, or throw with a fix hint.
107
113
  export function heygenAuthHeaders() {
108
- const cred = heygenCredential();
114
+ const cred = resolveCredential();
109
115
  if (cred?.headers) {
110
116
  // Only tag OAuth (Bearer) traffic as cli-source — the backend uses it to
111
117
  // grant the free allowance for OAuth requests and ignores it for API-key
@@ -115,6 +121,10 @@ export function heygenAuthHeaders() {
115
121
  ? { ...cred.headers, ...HEYGEN_CLI_SOURCE_HEADERS, ...HEYGEN_CLIENT_SOURCE_HEADERS }
116
122
  : { ...cred.headers, ...HEYGEN_CLIENT_SOURCE_HEADERS };
117
123
  }
124
+ if (cred?.unreadable)
125
+ throw new Error(
126
+ `HeyGen credentials at ${cred.unreadable.file} can't be read (${cred.unreadable.code}) — fix or remove that path, then run \`npx hyperframes auth login\``,
127
+ );
118
128
  if (cred?.expired)
119
129
  throw new Error(
120
130
  "HeyGen OAuth token expired — run `npx hyperframes auth refresh` (or `npx hyperframes auth login`)",