@meshy-ai/cli 0.1.0

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 (265) hide show
  1. package/.env.example +14 -0
  2. package/LICENSE +21 -0
  3. package/README.md +376 -0
  4. package/dist/client/endpoints/analyze-printability.d.ts +5 -0
  5. package/dist/client/endpoints/analyze-printability.d.ts.map +1 -0
  6. package/dist/client/endpoints/analyze-printability.js +7 -0
  7. package/dist/client/endpoints/analyze-printability.js.map +1 -0
  8. package/dist/client/endpoints/animate.d.ts +6 -0
  9. package/dist/client/endpoints/animate.d.ts.map +1 -0
  10. package/dist/client/endpoints/animate.js +8 -0
  11. package/dist/client/endpoints/animate.js.map +1 -0
  12. package/dist/client/endpoints/balance.d.ts +9 -0
  13. package/dist/client/endpoints/balance.d.ts.map +1 -0
  14. package/dist/client/endpoints/balance.js +27 -0
  15. package/dist/client/endpoints/balance.js.map +1 -0
  16. package/dist/client/endpoints/base.d.ts +24 -0
  17. package/dist/client/endpoints/base.d.ts.map +1 -0
  18. package/dist/client/endpoints/base.js +87 -0
  19. package/dist/client/endpoints/base.js.map +1 -0
  20. package/dist/client/endpoints/convert.d.ts +5 -0
  21. package/dist/client/endpoints/convert.d.ts.map +1 -0
  22. package/dist/client/endpoints/convert.js +7 -0
  23. package/dist/client/endpoints/convert.js.map +1 -0
  24. package/dist/client/endpoints/image-to-3d.d.ts +5 -0
  25. package/dist/client/endpoints/image-to-3d.d.ts.map +1 -0
  26. package/dist/client/endpoints/image-to-3d.js +7 -0
  27. package/dist/client/endpoints/image-to-3d.js.map +1 -0
  28. package/dist/client/endpoints/image-to-image.d.ts +5 -0
  29. package/dist/client/endpoints/image-to-image.d.ts.map +1 -0
  30. package/dist/client/endpoints/image-to-image.js +7 -0
  31. package/dist/client/endpoints/image-to-image.js.map +1 -0
  32. package/dist/client/endpoints/multi-color-print.d.ts +5 -0
  33. package/dist/client/endpoints/multi-color-print.d.ts.map +1 -0
  34. package/dist/client/endpoints/multi-color-print.js +7 -0
  35. package/dist/client/endpoints/multi-color-print.js.map +1 -0
  36. package/dist/client/endpoints/multi-image-to-3d.d.ts +5 -0
  37. package/dist/client/endpoints/multi-image-to-3d.d.ts.map +1 -0
  38. package/dist/client/endpoints/multi-image-to-3d.js +7 -0
  39. package/dist/client/endpoints/multi-image-to-3d.js.map +1 -0
  40. package/dist/client/endpoints/remesh.d.ts +5 -0
  41. package/dist/client/endpoints/remesh.d.ts.map +1 -0
  42. package/dist/client/endpoints/remesh.js +7 -0
  43. package/dist/client/endpoints/remesh.js.map +1 -0
  44. package/dist/client/endpoints/repair-printability.d.ts +5 -0
  45. package/dist/client/endpoints/repair-printability.d.ts.map +1 -0
  46. package/dist/client/endpoints/repair-printability.js +7 -0
  47. package/dist/client/endpoints/repair-printability.js.map +1 -0
  48. package/dist/client/endpoints/resize.d.ts +5 -0
  49. package/dist/client/endpoints/resize.d.ts.map +1 -0
  50. package/dist/client/endpoints/resize.js +7 -0
  51. package/dist/client/endpoints/resize.js.map +1 -0
  52. package/dist/client/endpoints/retexture.d.ts +5 -0
  53. package/dist/client/endpoints/retexture.d.ts.map +1 -0
  54. package/dist/client/endpoints/retexture.js +7 -0
  55. package/dist/client/endpoints/retexture.js.map +1 -0
  56. package/dist/client/endpoints/rigging.d.ts +6 -0
  57. package/dist/client/endpoints/rigging.d.ts.map +1 -0
  58. package/dist/client/endpoints/rigging.js +8 -0
  59. package/dist/client/endpoints/rigging.js.map +1 -0
  60. package/dist/client/endpoints/text-to-3d.d.ts +6 -0
  61. package/dist/client/endpoints/text-to-3d.d.ts.map +1 -0
  62. package/dist/client/endpoints/text-to-3d.js +8 -0
  63. package/dist/client/endpoints/text-to-3d.js.map +1 -0
  64. package/dist/client/endpoints/text-to-image.d.ts +5 -0
  65. package/dist/client/endpoints/text-to-image.d.ts.map +1 -0
  66. package/dist/client/endpoints/text-to-image.js +7 -0
  67. package/dist/client/endpoints/text-to-image.js.map +1 -0
  68. package/dist/client/errors.d.ts +23 -0
  69. package/dist/client/errors.d.ts.map +1 -0
  70. package/dist/client/errors.js +82 -0
  71. package/dist/client/errors.js.map +1 -0
  72. package/dist/client/index.d.ts +48 -0
  73. package/dist/client/index.d.ts.map +1 -0
  74. package/dist/client/index.js +147 -0
  75. package/dist/client/index.js.map +1 -0
  76. package/dist/client/types.d.ts +298 -0
  77. package/dist/client/types.d.ts.map +1 -0
  78. package/dist/client/types.js +97 -0
  79. package/dist/client/types.js.map +1 -0
  80. package/dist/cmd/analyze-printability.d.ts +8 -0
  81. package/dist/cmd/analyze-printability.d.ts.map +1 -0
  82. package/dist/cmd/analyze-printability.js +34 -0
  83. package/dist/cmd/analyze-printability.js.map +1 -0
  84. package/dist/cmd/animate.d.ts +9 -0
  85. package/dist/cmd/animate.d.ts.map +1 -0
  86. package/dist/cmd/animate.js +51 -0
  87. package/dist/cmd/animate.js.map +1 -0
  88. package/dist/cmd/api.d.ts +9 -0
  89. package/dist/cmd/api.d.ts.map +1 -0
  90. package/dist/cmd/api.js +50 -0
  91. package/dist/cmd/api.js.map +1 -0
  92. package/dist/cmd/auth.d.ts +19 -0
  93. package/dist/cmd/auth.d.ts.map +1 -0
  94. package/dist/cmd/auth.js +583 -0
  95. package/dist/cmd/auth.js.map +1 -0
  96. package/dist/cmd/balance.d.ts +6 -0
  97. package/dist/cmd/balance.d.ts.map +1 -0
  98. package/dist/cmd/balance.js +14 -0
  99. package/dist/cmd/balance.js.map +1 -0
  100. package/dist/cmd/convert.d.ts +8 -0
  101. package/dist/cmd/convert.d.ts.map +1 -0
  102. package/dist/cmd/convert.js +40 -0
  103. package/dist/cmd/convert.js.map +1 -0
  104. package/dist/cmd/delete.d.ts +7 -0
  105. package/dist/cmd/delete.d.ts.map +1 -0
  106. package/dist/cmd/delete.js +19 -0
  107. package/dist/cmd/delete.js.map +1 -0
  108. package/dist/cmd/image-to-3d.d.ts +12 -0
  109. package/dist/cmd/image-to-3d.d.ts.map +1 -0
  110. package/dist/cmd/image-to-3d.js +97 -0
  111. package/dist/cmd/image-to-3d.js.map +1 -0
  112. package/dist/cmd/image-to-image.d.ts +5 -0
  113. package/dist/cmd/image-to-image.d.ts.map +1 -0
  114. package/dist/cmd/image-to-image.js +56 -0
  115. package/dist/cmd/image-to-image.js.map +1 -0
  116. package/dist/cmd/make.d.ts +31 -0
  117. package/dist/cmd/make.d.ts.map +1 -0
  118. package/dist/cmd/make.js +195 -0
  119. package/dist/cmd/make.js.map +1 -0
  120. package/dist/cmd/multi-color-print.d.ts +6 -0
  121. package/dist/cmd/multi-color-print.d.ts.map +1 -0
  122. package/dist/cmd/multi-color-print.js +44 -0
  123. package/dist/cmd/multi-color-print.js.map +1 -0
  124. package/dist/cmd/multi-image-to-3d.d.ts +5 -0
  125. package/dist/cmd/multi-image-to-3d.d.ts.map +1 -0
  126. package/dist/cmd/multi-image-to-3d.js +72 -0
  127. package/dist/cmd/multi-image-to-3d.js.map +1 -0
  128. package/dist/cmd/remesh.d.ts +8 -0
  129. package/dist/cmd/remesh.d.ts.map +1 -0
  130. package/dist/cmd/remesh.js +49 -0
  131. package/dist/cmd/remesh.js.map +1 -0
  132. package/dist/cmd/repair-printability.d.ts +7 -0
  133. package/dist/cmd/repair-printability.d.ts.map +1 -0
  134. package/dist/cmd/repair-printability.js +32 -0
  135. package/dist/cmd/repair-printability.js.map +1 -0
  136. package/dist/cmd/resize.d.ts +8 -0
  137. package/dist/cmd/resize.d.ts.map +1 -0
  138. package/dist/cmd/resize.js +51 -0
  139. package/dist/cmd/resize.js.map +1 -0
  140. package/dist/cmd/resources.d.ts +18 -0
  141. package/dist/cmd/resources.d.ts.map +1 -0
  142. package/dist/cmd/resources.js +59 -0
  143. package/dist/cmd/resources.js.map +1 -0
  144. package/dist/cmd/retexture.d.ts +5 -0
  145. package/dist/cmd/retexture.d.ts.map +1 -0
  146. package/dist/cmd/retexture.js +64 -0
  147. package/dist/cmd/retexture.js.map +1 -0
  148. package/dist/cmd/rigging.d.ts +6 -0
  149. package/dist/cmd/rigging.d.ts.map +1 -0
  150. package/dist/cmd/rigging.js +40 -0
  151. package/dist/cmd/rigging.js.map +1 -0
  152. package/dist/cmd/text-to-3d.d.ts +14 -0
  153. package/dist/cmd/text-to-3d.d.ts.map +1 -0
  154. package/dist/cmd/text-to-3d.js +76 -0
  155. package/dist/cmd/text-to-3d.js.map +1 -0
  156. package/dist/cmd/text-to-image.d.ts +5 -0
  157. package/dist/cmd/text-to-image.d.ts.map +1 -0
  158. package/dist/cmd/text-to-image.js +53 -0
  159. package/dist/cmd/text-to-image.js.map +1 -0
  160. package/dist/index.d.ts +6 -0
  161. package/dist/index.d.ts.map +1 -0
  162. package/dist/index.js +46 -0
  163. package/dist/index.js.map +1 -0
  164. package/dist/internal/config.d.ts +46 -0
  165. package/dist/internal/config.d.ts.map +1 -0
  166. package/dist/internal/config.js +94 -0
  167. package/dist/internal/config.js.map +1 -0
  168. package/dist/internal/credentials.d.ts +106 -0
  169. package/dist/internal/credentials.d.ts.map +1 -0
  170. package/dist/internal/credentials.js +297 -0
  171. package/dist/internal/credentials.js.map +1 -0
  172. package/dist/internal/device-state.d.ts +45 -0
  173. package/dist/internal/device-state.d.ts.map +1 -0
  174. package/dist/internal/device-state.js +180 -0
  175. package/dist/internal/device-state.js.map +1 -0
  176. package/dist/internal/device.d.ts +79 -0
  177. package/dist/internal/device.d.ts.map +1 -0
  178. package/dist/internal/device.js +374 -0
  179. package/dist/internal/device.js.map +1 -0
  180. package/dist/internal/download.d.ts +34 -0
  181. package/dist/internal/download.d.ts.map +1 -0
  182. package/dist/internal/download.js +283 -0
  183. package/dist/internal/download.js.map +1 -0
  184. package/dist/internal/errors.d.ts +66 -0
  185. package/dist/internal/errors.d.ts.map +1 -0
  186. package/dist/internal/errors.js +169 -0
  187. package/dist/internal/errors.js.map +1 -0
  188. package/dist/internal/file-input.d.ts +24 -0
  189. package/dist/internal/file-input.d.ts.map +1 -0
  190. package/dist/internal/file-input.js +164 -0
  191. package/dist/internal/file-input.js.map +1 -0
  192. package/dist/internal/flags.d.ts +9 -0
  193. package/dist/internal/flags.d.ts.map +1 -0
  194. package/dist/internal/flags.js +31 -0
  195. package/dist/internal/flags.js.map +1 -0
  196. package/dist/internal/global-options.d.ts +16 -0
  197. package/dist/internal/global-options.d.ts.map +1 -0
  198. package/dist/internal/global-options.js +57 -0
  199. package/dist/internal/global-options.js.map +1 -0
  200. package/dist/internal/headless.d.ts +69 -0
  201. package/dist/internal/headless.d.ts.map +1 -0
  202. package/dist/internal/headless.js +101 -0
  203. package/dist/internal/headless.js.map +1 -0
  204. package/dist/internal/image-models.d.ts +20 -0
  205. package/dist/internal/image-models.d.ts.map +1 -0
  206. package/dist/internal/image-models.js +40 -0
  207. package/dist/internal/image-models.js.map +1 -0
  208. package/dist/internal/logger.d.ts +14 -0
  209. package/dist/internal/logger.d.ts.map +1 -0
  210. package/dist/internal/logger.js +42 -0
  211. package/dist/internal/logger.js.map +1 -0
  212. package/dist/internal/make-plan.d.ts +41 -0
  213. package/dist/internal/make-plan.d.ts.map +1 -0
  214. package/dist/internal/make-plan.js +67 -0
  215. package/dist/internal/make-plan.js.map +1 -0
  216. package/dist/internal/oauth.d.ts +95 -0
  217. package/dist/internal/oauth.d.ts.map +1 -0
  218. package/dist/internal/oauth.js +365 -0
  219. package/dist/internal/oauth.js.map +1 -0
  220. package/dist/internal/output.d.ts +15 -0
  221. package/dist/internal/output.d.ts.map +1 -0
  222. package/dist/internal/output.js +66 -0
  223. package/dist/internal/output.js.map +1 -0
  224. package/dist/internal/payload.d.ts +9 -0
  225. package/dist/internal/payload.d.ts.map +1 -0
  226. package/dist/internal/payload.js +42 -0
  227. package/dist/internal/payload.js.map +1 -0
  228. package/dist/internal/poll.d.ts +17 -0
  229. package/dist/internal/poll.d.ts.map +1 -0
  230. package/dist/internal/poll.js +27 -0
  231. package/dist/internal/poll.js.map +1 -0
  232. package/dist/internal/pricing.d.ts +23 -0
  233. package/dist/internal/pricing.d.ts.map +1 -0
  234. package/dist/internal/pricing.js +24 -0
  235. package/dist/internal/pricing.js.map +1 -0
  236. package/dist/internal/report.d.ts +40 -0
  237. package/dist/internal/report.d.ts.map +1 -0
  238. package/dist/internal/report.js +48 -0
  239. package/dist/internal/report.js.map +1 -0
  240. package/dist/internal/runtime.d.ts +66 -0
  241. package/dist/internal/runtime.d.ts.map +1 -0
  242. package/dist/internal/runtime.js +160 -0
  243. package/dist/internal/runtime.js.map +1 -0
  244. package/dist/internal/task-command.d.ts +39 -0
  245. package/dist/internal/task-command.d.ts.map +1 -0
  246. package/dist/internal/task-command.js +189 -0
  247. package/dist/internal/task-command.js.map +1 -0
  248. package/dist/internal/update-notifier.d.ts +160 -0
  249. package/dist/internal/update-notifier.d.ts.map +1 -0
  250. package/dist/internal/update-notifier.js +445 -0
  251. package/dist/internal/update-notifier.js.map +1 -0
  252. package/dist/internal/user-agent.d.ts +6 -0
  253. package/dist/internal/user-agent.d.ts.map +1 -0
  254. package/dist/internal/user-agent.js +7 -0
  255. package/dist/internal/user-agent.js.map +1 -0
  256. package/dist/internal/version.d.ts +2 -0
  257. package/dist/internal/version.d.ts.map +1 -0
  258. package/dist/internal/version.js +11 -0
  259. package/dist/internal/version.js.map +1 -0
  260. package/dist/root.d.ts +13 -0
  261. package/dist/root.d.ts.map +1 -0
  262. package/dist/root.js +148 -0
  263. package/dist/root.js.map +1 -0
  264. package/package.json +65 -0
  265. package/skills/meshy-cli/SKILL.md +99 -0
@@ -0,0 +1,53 @@
1
+ /**
2
+ * text-to-image — https://docs.meshy.ai/en/api/text-to-image
3
+ */
4
+ import { Option } from "commander";
5
+ import { parseBool } from "../internal/flags.js";
6
+ import { UsageError } from "../internal/errors.js";
7
+ import { ASPECT_RATIOS, ASPECT_RATIO_HELP, DEFAULT_IMAGE_MODEL, IMAGE_MODELS, IMAGE_MODEL_HELP, checkImageCombo, } from "../internal/image-models.js";
8
+ import { buildResourceCommand } from "../internal/task-command.js";
9
+ const spec = {
10
+ name: "text-to-image",
11
+ description: "Generate a 2D image from a text prompt. For edits based on existing images use " +
12
+ "image-to-image instead",
13
+ create: {
14
+ description: "Create a text-to-image task",
15
+ configure(cmd) {
16
+ return cmd
17
+ .addOption(new Option("--ai-model <model>", IMAGE_MODEL_HELP).choices([...IMAGE_MODELS]))
18
+ .option("--prompt <text>", "required — image description; be descriptive for best results")
19
+ .option("--generate-multi-view <bool>", "generate multi-angle views of the subject (feeds multi-image-to-3d); mutually exclusive with --aspect-ratio", parseBool)
20
+ .addOption(new Option("--pose-mode <pose>", "a-pose | t-pose character pose preset").choices([
21
+ "a-pose",
22
+ "t-pose",
23
+ ]))
24
+ .addOption(new Option("--aspect-ratio <ratio>", ASPECT_RATIO_HELP).choices([...ASPECT_RATIOS]));
25
+ },
26
+ toPayload(opts) {
27
+ if (!opts.prompt && !opts.data) {
28
+ throw new UsageError("--prompt is required");
29
+ }
30
+ checkImageCombo({
31
+ // With --data in play an unset flag may be supplied there; leave the
32
+ // ratio check to the server rather than validating against a model
33
+ // the request won't use.
34
+ aiModel: opts.aiModel ?? (opts.data ? undefined : DEFAULT_IMAGE_MODEL),
35
+ aspectRatio: opts.aspectRatio,
36
+ generateMultiView: opts.generateMultiView,
37
+ });
38
+ return {
39
+ ai_model: opts.aiModel,
40
+ prompt: opts.prompt,
41
+ generate_multi_view: opts.generateMultiView,
42
+ pose_mode: opts.poseMode,
43
+ aspect_ratio: opts.aspectRatio,
44
+ };
45
+ },
46
+ toDefaults() {
47
+ return { ai_model: DEFAULT_IMAGE_MODEL };
48
+ },
49
+ },
50
+ endpointOf: (c) => c.textToImage,
51
+ };
52
+ export const textToImageCommand = buildResourceCommand(spec);
53
+ //# sourceMappingURL=text-to-image.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-to-image.js","sourceRoot":"","sources":["../../src/cmd/text-to-image.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EAChB,eAAe,GAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAA4B,MAAM,6BAA6B,CAAC;AAE7F,MAAM,IAAI,GAAwB;IAChC,IAAI,EAAE,eAAe;IACrB,WAAW,EACT,iFAAiF;QACjF,wBAAwB;IAC1B,MAAM,EAAE;QACN,WAAW,EAAE,6BAA6B;QAC1C,SAAS,CAAC,GAAG;YACX,OAAO,GAAG;iBACP,SAAS,CAAC,IAAI,MAAM,CAAC,oBAAoB,EAAE,gBAAgB,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC;iBACxF,MAAM,CAAC,iBAAiB,EAAE,+DAA+D,CAAC;iBAC1F,MAAM,CACL,8BAA8B,EAC9B,6GAA6G,EAC7G,SAAS,CACV;iBACA,SAAS,CACR,IAAI,MAAM,CAAC,oBAAoB,EAAE,uCAAuC,CAAC,CAAC,OAAO,CAAC;gBAChF,QAAQ;gBACR,QAAQ;aACT,CAAC,CACH;iBACA,SAAS,CAAC,IAAI,MAAM,CAAC,wBAAwB,EAAE,iBAAiB,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;QACpG,CAAC;QACD,SAAS,CAAC,IAAI;YACZ,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC/B,MAAM,IAAI,UAAU,CAAC,sBAAsB,CAAC,CAAC;YAC/C,CAAC;YACD,eAAe,CAAC;gBACd,qEAAqE;gBACrE,mEAAmE;gBACnE,yBAAyB;gBACzB,OAAO,EAAG,IAAI,CAAC,OAA8B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAC;gBAC9F,WAAW,EAAE,IAAI,CAAC,WAAiC;gBACnD,iBAAiB,EAAE,IAAI,CAAC,iBAAwC;aACjE,CAAC,CAAC;YACH,OAAO;gBACL,QAAQ,EAAE,IAAI,CAAC,OAAO;gBACtB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,mBAAmB,EAAE,IAAI,CAAC,iBAAiB;gBAC3C,SAAS,EAAE,IAAI,CAAC,QAAQ;gBACxB,YAAY,EAAE,IAAI,CAAC,WAAW;aAC/B,CAAC;QACJ,CAAC;QACD,UAAU;YACR,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,CAAC;QAC3C,CAAC;KACF;IACD,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW;CACjC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * meshy-cli entry point.
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;GAEG"}
package/dist/index.js ADDED
@@ -0,0 +1,46 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * meshy-cli entry point.
4
+ */
5
+ import { buildRootCommand } from "./root.js";
6
+ import { exitCodeFor, reportError } from "./internal/errors.js";
7
+ import { refreshCache } from "./internal/update-notifier.js";
8
+ async function main() {
9
+ refreshCache(); // fire-and-forget; internally guarded; never throws
10
+ const program = buildRootCommand();
11
+ try {
12
+ await program.parseAsync(process.argv);
13
+ const code = process.exitCode ?? 0;
14
+ return typeof code === "number" ? code : 1;
15
+ }
16
+ catch (err) {
17
+ const fmt = resolveErrorFormat(program);
18
+ reportError(err, fmt);
19
+ return exitCodeFor(err);
20
+ }
21
+ }
22
+ /**
23
+ * Resolve the output format for the error path.
24
+ *
25
+ * Mirrors the same --json override that readGlobalFlags applies on the success
26
+ * path: --json (or --json combined with --format pretty) must still emit JSON
27
+ * on stdout so machine consumers get a parseable error payload.
28
+ *
29
+ * The program tree is read directly here because the error may have been
30
+ * thrown before any subcommand action ran (e.g. unknown flag), so
31
+ * readGlobalFlags (which requires a fully-parsed Command) is not safe to
32
+ * call. --json may be typed at ANY command level (global flags are mirrored
33
+ * to descendants, and --json has no default, so a truthy value always means
34
+ * the user passed it) — scanning only root opts would miss
35
+ * `meshy --format pretty auth login --json`.
36
+ */
37
+ function resolveErrorFormat(program) {
38
+ const anyJson = (cmd) => Boolean(cmd.opts()["json"]) || cmd.commands.some(anyJson);
39
+ if (anyJson(program))
40
+ return "json";
41
+ const raw = program.opts()["format"];
42
+ const v = (typeof raw === "string" ? raw : "json").toLowerCase();
43
+ return v === "pretty" || v === "ndjson" ? v : "json";
44
+ }
45
+ main().then((code) => process.exit(code));
46
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;GAEG;AAIH,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,KAAK,UAAU,IAAI;IACjB,YAAY,EAAE,CAAC,CAAC,oDAAoD;IACpE,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;IACnC,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC;QACnC,OAAO,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;QACxC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACtB,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAS,kBAAkB,CACzB,OAAgB;IAEhB,MAAM,OAAO,GAAG,CAAC,GAAY,EAAW,EAAE,CACxC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5D,IAAI,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,MAAM,CAAC;IACpC,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC;IACrC,MAAM,CAAC,GAAG,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;IACjE,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;AACvD,CAAC;AAED,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Resolve config in this priority order:
3
+ * 1. CLI flags (--api-key, --base-url-v1, --base-url-v2, --verbose)
4
+ * 2. Environment variables (MESHY_*)
5
+ * 3. The active profile in the credentials file (written by `meshy auth login`)
6
+ * 4. Built-in defaults
7
+ *
8
+ * The env var keeps priority over the stored credential on purpose: CI and
9
+ * containers export MESHY_API_KEY and must not be silently overridden by
10
+ * whatever a developer once logged into on that machine.
11
+ *
12
+ * Fail-fast on a missing/placeholder credential — with the command that fixes
13
+ * it attached, not just a complaint.
14
+ */
15
+ import { type CredentialKind } from "./credentials.js";
16
+ import { type LogLevel } from "./logger.js";
17
+ /** Where the credential in use came from — surfaced by `meshy auth status`. */
18
+ export type CredentialSource = "flag" | "env" | "file";
19
+ export interface MeshyConfig {
20
+ apiKey: string;
21
+ baseUrlV1: string;
22
+ baseUrlV2: string;
23
+ connectTimeoutMs: number;
24
+ readTimeoutMs: number;
25
+ pollIntervalMs: number;
26
+ logLevel: LogLevel;
27
+ credentialSource: CredentialSource;
28
+ /** Set only when credentialSource === "file". */
29
+ credentialProfile?: string;
30
+ /** The credentials file consulted for this invocation, whether or not it exists. */
31
+ credentialsFile: string;
32
+ /**
33
+ * The kind of credential in use — "oauth" for browser-login tokens, "api_key" for static keys.
34
+ * "api_key" when credentialSource is "flag" or "env" (those paths only accept static keys).
35
+ * Derived from the stored profile kind when credentialSource is "file".
36
+ */
37
+ credentialKind: CredentialKind;
38
+ }
39
+ export interface ConfigOverrides {
40
+ apiKey?: string;
41
+ baseUrlV1?: string;
42
+ baseUrlV2?: string;
43
+ logLevel?: LogLevel;
44
+ }
45
+ export declare function loadConfig(overrides?: ConfigOverrides): MeshyConfig;
46
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/internal/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAA4C,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEjG,OAAO,EAAe,KAAK,QAAQ,EAAE,MAAM,aAAa,CAAC;AAIzD,+EAA+E;AAC/E,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;AAEvD,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,QAAQ,CAAC;IACnB,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,iDAAiD;IACjD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,oFAAoF;IACpF,eAAe,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,cAAc,EAAE,cAAc,CAAC;CAChC;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAyBD,wBAAgB,UAAU,CAAC,SAAS,GAAE,eAAoB,GAAG,WAAW,CA4DvE"}
@@ -0,0 +1,94 @@
1
+ /**
2
+ * Resolve config in this priority order:
3
+ * 1. CLI flags (--api-key, --base-url-v1, --base-url-v2, --verbose)
4
+ * 2. Environment variables (MESHY_*)
5
+ * 3. The active profile in the credentials file (written by `meshy auth login`)
6
+ * 4. Built-in defaults
7
+ *
8
+ * The env var keeps priority over the stored credential on purpose: CI and
9
+ * containers export MESHY_API_KEY and must not be silently overridden by
10
+ * whatever a developer once logged into on that machine.
11
+ *
12
+ * Fail-fast on a missing/placeholder credential — with the command that fixes
13
+ * it attached, not just a complaint.
14
+ */
15
+ import { credentialsPath, resolveStoredCredential } from "./credentials.js";
16
+ import { authRequiredError } from "./errors.js";
17
+ import { setLogLevel } from "./logger.js";
18
+ const PLACEHOLDER_KEYS = new Set(["", "YOUR_MESHY_API_KEY_HERE"]);
19
+ function readNumber(name, fallback) {
20
+ const raw = process.env[name];
21
+ if (raw === undefined || raw === "")
22
+ return fallback;
23
+ const n = Number(raw);
24
+ if (!Number.isFinite(n) || n < 0) {
25
+ throw new Error(`${name} must be a non-negative number (got ${JSON.stringify(raw)})`);
26
+ }
27
+ return n;
28
+ }
29
+ function readLogLevel(fallback) {
30
+ const raw = (process.env.MESHY_LOG_LEVEL || "").toLowerCase();
31
+ if (!raw)
32
+ return fallback;
33
+ if (raw === "debug" || raw === "info" || raw === "warn" || raw === "error" || raw === "silent") {
34
+ return raw;
35
+ }
36
+ return fallback;
37
+ }
38
+ function stripTrail(s) {
39
+ return s.replace(/\/+$/, "");
40
+ }
41
+ export function loadConfig(overrides = {}) {
42
+ // Base URLs resolve first: they decide which credentials file applies
43
+ // (production vs. a staging override).
44
+ const baseUrlV1 = stripTrail(overrides.baseUrlV1 ?? process.env.MESHY_BASE_URL_V1 ?? "https://api.meshy.ai/openapi/v1");
45
+ const baseUrlV2 = stripTrail(overrides.baseUrlV2 ?? process.env.MESHY_BASE_URL_V2 ?? "https://api.meshy.ai/openapi/v2");
46
+ const credFile = credentialsPath(baseUrlV1);
47
+ const flagKey = overrides.apiKey?.trim() ?? "";
48
+ const envKey = process.env.MESHY_API_KEY?.trim() ?? "";
49
+ let apiKey = "";
50
+ let credentialSource = "flag";
51
+ let credentialProfile;
52
+ let credentialKind = "api_key";
53
+ if (!PLACEHOLDER_KEYS.has(flagKey)) {
54
+ apiKey = flagKey;
55
+ credentialSource = "flag";
56
+ credentialKind = "api_key";
57
+ }
58
+ else if (!PLACEHOLDER_KEYS.has(envKey)) {
59
+ apiKey = envKey;
60
+ credentialSource = "env";
61
+ credentialKind = "api_key";
62
+ }
63
+ else {
64
+ // A corrupt credentials file throws out of resolveStoredCredential rather
65
+ // than being swallowed into "not logged in" — see credentials.ts.
66
+ const stored = resolveStoredCredential(credFile);
67
+ const secret = stored?.apiKey ?? stored?.accessToken ?? "";
68
+ if (stored && !PLACEHOLDER_KEYS.has(secret)) {
69
+ apiKey = secret;
70
+ credentialSource = "file";
71
+ credentialProfile = stored.profile;
72
+ credentialKind = stored.kind;
73
+ }
74
+ else {
75
+ throw authRequiredError("No credentials found. Pass --api-key, export MESHY_API_KEY, or log in.");
76
+ }
77
+ }
78
+ const cfg = {
79
+ apiKey,
80
+ baseUrlV1,
81
+ baseUrlV2,
82
+ connectTimeoutMs: readNumber("MESHY_CONNECT_TIMEOUT_MS", 10_000),
83
+ readTimeoutMs: readNumber("MESHY_READ_TIMEOUT_MS", 120_000),
84
+ pollIntervalMs: readNumber("MESHY_POLL_INTERVAL_MS", 3_000),
85
+ logLevel: overrides.logLevel ?? readLogLevel("warn"),
86
+ credentialSource,
87
+ credentialProfile,
88
+ credentialsFile: credFile,
89
+ credentialKind,
90
+ };
91
+ setLogLevel(cfg.logLevel);
92
+ return cfg;
93
+ }
94
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/internal/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,106 @@
1
+ /**
2
+ * Credential store — the on-disk half of `meshy auth`.
3
+ *
4
+ * Layout: ~/.config/meshy/credentials.json, one file holding named profiles so
5
+ * a user can keep several accounts side by side. `~/.config` is used on every
6
+ * platform (including macOS, where the native spot would be Application
7
+ * Support) because the file is meant to be scriptable and dotfile-friendly.
8
+ *
9
+ * Non-production hosts get their own file — credentials.dev.json — so pointing
10
+ * MESHY_BASE_URL_V1 at staging cannot overwrite the production login, and
11
+ * logging out of one leaves the other alone.
12
+ *
13
+ * Every mutation runs under a cross-process lock and lands via a temp file +
14
+ * rename, because several agents driving this CLI in parallel is the normal
15
+ * case, not the exception.
16
+ *
17
+ * This module deliberately knows nothing about config.ts — it takes the base
18
+ * URL it needs as an argument, so config can depend on it and not vice versa.
19
+ */
20
+ export declare const AUTH_VERSION = 1;
21
+ export declare const DEFAULT_PROFILE = "default";
22
+ export declare const PROD_API_HOST = "api.meshy.ai";
23
+ export type CredentialKind = "api_key" | "oauth";
24
+ export interface CredentialProfile {
25
+ kind: CredentialKind;
26
+ /** Present when kind === "api_key". */
27
+ api_key?: string;
28
+ /** Present when kind === "oauth" (CLI-4 writes these; nothing reads them yet). */
29
+ access_token?: string;
30
+ refresh_token?: string;
31
+ /** Unix epoch millis. */
32
+ expires_at?: number;
33
+ user_id?: string;
34
+ created_at?: number;
35
+ }
36
+ export interface CredentialsFile {
37
+ auth_version: number;
38
+ active_profile: string;
39
+ profiles: Record<string, CredentialProfile>;
40
+ }
41
+ /** Thrown when the file exists but cannot be understood — never on a missing file. */
42
+ export declare class CredentialsFileError extends Error {
43
+ readonly path: string;
44
+ constructor(path: string, detail: string);
45
+ }
46
+ /** Root config directory. MESHY_CONFIG_DIR wins when set. */
47
+ export declare function configDir(env?: NodeJS.ProcessEnv): string;
48
+ /**
49
+ * True when the given v1 base URL points somewhere other than production.
50
+ * An unparseable URL counts as non-production: a typo should not be able to
51
+ * touch the production credential file.
52
+ */
53
+ export declare function isNonProdBaseUrl(baseUrlV1: string | undefined): boolean;
54
+ /**
55
+ * Resolves the credentials file path.
56
+ *
57
+ * MESHY_CREDENTIALS_PATH is absolute and wins over everything, including the
58
+ * prod/dev split — a caller that names a file gets that exact file.
59
+ */
60
+ export declare function credentialsPath(baseUrlV1?: string, env?: NodeJS.ProcessEnv): string;
61
+ /**
62
+ * Runs `fn` while holding an exclusive lock keyed to `file`.
63
+ *
64
+ * O_EXCL creation is the atomic primitive here — `flock` is not exposed by
65
+ * Node's fs module. A lock whose mtime is older than LOCK_STALE_MS is treated
66
+ * as abandoned and broken, so a killed process cannot wedge the CLI forever.
67
+ */
68
+ export declare function withCredentialsLock<T>(file: string, fn: () => T): T;
69
+ /**
70
+ * Reads the credentials file. Returns null when it does not exist — that is
71
+ * "not logged in", not an error. A file that exists but is unreadable throws
72
+ * CredentialsFileError so the user hears about it instead of silently falling
73
+ * back to "no credentials".
74
+ */
75
+ export declare function readCredentials(file: string): CredentialsFile | null;
76
+ /**
77
+ * Writes the file with 0600 via a temp file + rename, so a crash mid-write
78
+ * cannot leave a half-written credentials file behind. Callers that mutate
79
+ * existing state must hold the lock; see updateCredentials.
80
+ */
81
+ export declare function writeCredentials(state: CredentialsFile, file: string): void;
82
+ /** Read-modify-write under the lock. The mutator may return a new state or mutate in place. */
83
+ export declare function updateCredentials(file: string, mutate: (state: CredentialsFile) => CredentialsFile | void): CredentialsFile;
84
+ export declare function saveProfile(file: string, name: string, profile: CredentialProfile, opts?: {
85
+ makeActive?: boolean;
86
+ }): CredentialsFile;
87
+ /** Removes one profile. Returns false when it was not there to begin with. */
88
+ export declare function removeProfile(file: string, name: string): boolean;
89
+ export declare function setActiveProfile(file: string, name: string): void;
90
+ /** Deletes the whole file. Returns false when there was nothing to delete. */
91
+ export declare function deleteCredentialsFile(file: string): boolean;
92
+ export interface ResolvedStoredCredential {
93
+ profile: string;
94
+ kind: CredentialKind;
95
+ apiKey?: string;
96
+ accessToken?: string;
97
+ expiresAt?: number;
98
+ }
99
+ /**
100
+ * Returns the usable secret from the active profile, or null when there is no
101
+ * file, no active profile, or the profile carries nothing usable.
102
+ */
103
+ export declare function resolveStoredCredential(file: string): ResolvedStoredCredential | null;
104
+ /** `msy_abcd…wxyz` — enough to tell two keys apart, not enough to use one. */
105
+ export declare function maskSecret(secret: string): string;
106
+ //# sourceMappingURL=credentials.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../src/internal/credentials.ts"],"names":[],"mappings":"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"}