@xano/sdk 1.0.3 → 1.0.5

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 (240) hide show
  1. package/CHANGELOG.md +30 -4
  2. package/README.md +232 -334
  3. package/dist/.build-fingerprint +1 -1
  4. package/dist/{agent-file-refresh-MQKCS7QZ.js → agent-file-refresh-KVLR7M5Y.js} +13 -13
  5. package/dist/{answer-shape-LVV2SVBK.js → answer-shape-XGR2DGWY.js} +5 -5
  6. package/dist/{backend-dir-DGAQL4K5.js → backend-dir-IE4RMUFH.js} +12 -12
  7. package/dist/{backend-slot-NSCTWCUX.js → backend-slot-6HBWG5FN.js} +3 -3
  8. package/dist/bin.js +52 -52
  9. package/dist/{branch-ONWPJ4V6.js → branch-T2APKPVG.js} +9 -9
  10. package/dist/{branch-commands-R4PPN3Z7.js → branch-commands-HXXTCSOO.js} +26 -26
  11. package/dist/{capture-3JNUA6C2.js → capture-HBXFXZEW.js} +4 -4
  12. package/dist/{chunk-A6QTTJUI.js → chunk-3BJYQGAZ.js} +2 -2
  13. package/dist/{chunk-5W7DOMIU.js → chunk-3IYVHVM6.js} +2 -2
  14. package/dist/{chunk-ANHOEBTJ.js → chunk-3VX7VAQT.js} +4 -4
  15. package/dist/{chunk-FWXSTFN2.js → chunk-3WHWOKU4.js} +4 -4
  16. package/dist/{chunk-LXNQWHZM.js → chunk-44CWK6YC.js} +3 -3
  17. package/dist/{chunk-KCAL4QYP.js → chunk-4GDEEY2U.js} +4 -4
  18. package/dist/{chunk-KTGRGWZW.js → chunk-4NEBBKOP.js} +7 -7
  19. package/dist/{chunk-UKUIUS3E.js → chunk-4QBGE3EO.js} +5 -5
  20. package/dist/{chunk-IVKRT476.js → chunk-4QFBEKXI.js} +2 -2
  21. package/dist/{chunk-OOXWYAA4.js → chunk-57A5ZKPO.js} +1 -1
  22. package/dist/{chunk-A4KBHTMK.js → chunk-57B56I4B.js} +29 -29
  23. package/dist/{chunk-OPHB5ORL.js → chunk-57HMNJGB.js} +120 -76
  24. package/dist/{chunk-JTM5D7CT.js → chunk-5D6DGF3W.js} +8 -8
  25. package/dist/{chunk-E65QIWOO.js → chunk-5RLAF6RL.js} +4 -4
  26. package/dist/{chunk-MEE5RZ6G.js → chunk-5XVBT6CQ.js} +2 -2
  27. package/dist/{chunk-RX3EMQGN.js → chunk-5YBNXNKU.js} +2 -2
  28. package/dist/{chunk-NA3PXMEF.js → chunk-64WWE3EF.js} +1 -1
  29. package/dist/{chunk-2LVTBPW2.js → chunk-65SW2BA5.js} +3 -3
  30. package/dist/{chunk-D3XOH7E7.js → chunk-7DBM6XHR.js} +8 -8
  31. package/dist/{chunk-DIG3NITC.js → chunk-A4NNCI4O.js} +3 -3
  32. package/dist/{chunk-4APOHK7Y.js → chunk-AESE434J.js} +2 -2
  33. package/dist/{chunk-ERJNHEFV.js → chunk-AGD7F7YI.js} +3 -3
  34. package/dist/{chunk-K3LE5B5E.js → chunk-AGSCOISO.js} +139 -139
  35. package/dist/{chunk-NPXM6ZQY.js → chunk-AMBEITWL.js} +4 -4
  36. package/dist/{chunk-5T2CTWTB.js → chunk-BBPAXOU6.js} +5 -5
  37. package/dist/{chunk-WGA25EV5.js → chunk-BMCZQZMI.js} +4 -4
  38. package/dist/{chunk-CJPLBFFY.js → chunk-CJ76PSJT.js} +9 -9
  39. package/dist/{chunk-6NYLVUSZ.js → chunk-CV54PASI.js} +53 -50
  40. package/dist/{chunk-XCPF7BEJ.js → chunk-DEVGLLNZ.js} +5 -5
  41. package/dist/{chunk-JTUKLCXS.js → chunk-DXUICABI.js} +1 -1
  42. package/dist/{chunk-LAKHO2B7.js → chunk-ES5A66IH.js} +8 -8
  43. package/dist/{chunk-UDE5C2XN.js → chunk-F3557PVM.js} +3 -3
  44. package/dist/{chunk-HHFPIJGL.js → chunk-F6IKWAIU.js} +21 -17
  45. package/dist/{chunk-II747OWE.js → chunk-FV55SRQU.js} +7 -7
  46. package/dist/{chunk-SEUCZZCP.js → chunk-G57RYMKB.js} +3 -3
  47. package/dist/{chunk-MNVDVR3M.js → chunk-GMVW6ZZK.js} +4 -4
  48. package/dist/{chunk-MN2PB6WB.js → chunk-HLQH3AXB.js} +3 -3
  49. package/dist/{chunk-HSEQYBDO.js → chunk-HOOOOJJP.js} +3 -3
  50. package/dist/{chunk-IXUPUFCG.js → chunk-I5VEROXW.js} +2 -2
  51. package/dist/{chunk-UI4OPTYR.js → chunk-IV446ZLJ.js} +2 -2
  52. package/dist/{chunk-CYB7UQA2.js → chunk-JQOX6HW4.js} +5 -5
  53. package/dist/{chunk-OPG4DYX2.js → chunk-JSEVKRVJ.js} +3 -3
  54. package/dist/{chunk-46TUUNM3.js → chunk-JXKO6JT7.js} +36 -36
  55. package/dist/{chunk-FPBGAT5D.js → chunk-JZWUAEMO.js} +3 -3
  56. package/dist/{chunk-6R7S775T.js → chunk-K6CB5TKM.js} +2 -2
  57. package/dist/{chunk-OO63ZU46.js → chunk-K6PRKPFX.js} +8 -8
  58. package/dist/{chunk-W5ONYLOP.js → chunk-KQLACS4Q.js} +4 -4
  59. package/dist/{chunk-SEATQLFB.js → chunk-KUU7T4ZE.js} +31 -31
  60. package/dist/{chunk-KXYW3DRR.js → chunk-L3BDO2BI.js} +9 -9
  61. package/dist/{chunk-IRQCV3OT.js → chunk-LLS2WO2K.js} +4 -4
  62. package/dist/{chunk-7KLAMYMS.js → chunk-LZDA6SVD.js} +46 -45
  63. package/dist/{chunk-UCQ2VUTG.js → chunk-M6ZFSTIZ.js} +2 -2
  64. package/dist/{chunk-DYG5D3FD.js → chunk-M7GJ6YUF.js} +2 -2
  65. package/dist/{chunk-XXZZGXW2.js → chunk-MEIJDRHU.js} +2 -2
  66. package/dist/{chunk-QXTKSOFI.js → chunk-MF4W6FHU.js} +1 -1
  67. package/dist/{chunk-FSYVOCS7.js → chunk-MYLPOVX6.js} +12 -13
  68. package/dist/{chunk-ZH5R7NKN.js → chunk-N6BWB35H.js} +3 -3
  69. package/dist/{chunk-PWIXETG7.js → chunk-NGAODDLX.js} +5 -5
  70. package/dist/{chunk-Z5UCPWGU.js → chunk-NNB7VUCH.js} +23 -23
  71. package/dist/{chunk-QEZL5MPJ.js → chunk-NUU76247.js} +3 -3
  72. package/dist/{chunk-2CGPQ7IM.js → chunk-OGUMHW2X.js} +6 -6
  73. package/dist/{chunk-I2BGYNHD.js → chunk-OJPZEUPH.js} +7 -7
  74. package/dist/{chunk-OOGXZL7Z.js → chunk-OKNE3TWU.js} +2 -2
  75. package/dist/{chunk-KUTFFHUM.js → chunk-OVV2HXJ6.js} +2 -2
  76. package/dist/{chunk-7KGASMCE.js → chunk-PIPIA7K7.js} +8 -8
  77. package/dist/{chunk-AM4FKL4J.js → chunk-PL7AIAWS.js} +12 -12
  78. package/dist/{chunk-WL2DSNJV.js → chunk-Q22BMRPF.js} +2 -2
  79. package/dist/{chunk-AMTJ4G32.js → chunk-QOLOQ35F.js} +6 -6
  80. package/dist/{chunk-BUECLQXK.js → chunk-QZTJ2556.js} +4 -4
  81. package/dist/{chunk-O7QOWS6M.js → chunk-RXCT3OCU.js} +12 -12
  82. package/dist/{chunk-F5KILDDO.js → chunk-S5KQIFKJ.js} +122 -98
  83. package/dist/{chunk-CBYQ2ZN3.js → chunk-S5TEJIGP.js} +2 -2
  84. package/dist/{chunk-HMLGM2MW.js → chunk-SF2B7MZK.js} +3 -3
  85. package/dist/{chunk-FURLOAUM.js → chunk-SNGFEESM.js} +3 -3
  86. package/dist/{chunk-VD32O6KZ.js → chunk-SQPIECXD.js} +3 -3
  87. package/dist/{chunk-5YL5OC2G.js → chunk-SRX6B544.js} +5 -5
  88. package/dist/{chunk-CFSFBKHP.js → chunk-TEBS7FE6.js} +2 -2
  89. package/dist/{chunk-TTVAHCWP.js → chunk-TM5LRSBB.js} +2 -2
  90. package/dist/{chunk-ZZEIC5PT.js → chunk-TUEFTRC2.js} +5 -5
  91. package/dist/{chunk-EWCDPFW5.js → chunk-U6DR6464.js} +4 -4
  92. package/dist/{chunk-7TXBKK5G.js → chunk-UIEFE6FU.js} +7 -7
  93. package/dist/{chunk-3H3EPMFY.js → chunk-UJ6ZZJDD.js} +2 -2
  94. package/dist/{chunk-YTPGQV5C.js → chunk-V4IBHDIY.js} +11 -11
  95. package/dist/{chunk-XNCP4KYO.js → chunk-VQPDATQT.js} +1 -1
  96. package/dist/{chunk-4PQHO74B.js → chunk-VZ22VUAS.js} +2 -2
  97. package/dist/{chunk-BUJRS7XB.js → chunk-WYS6XVZ3.js} +2 -2
  98. package/dist/{chunk-QV3GXQRE.js → chunk-XIABDKFQ.js} +2 -2
  99. package/dist/{chunk-EESV6NU2.js → chunk-XJU6UAFV.js} +2 -2
  100. package/dist/{chunk-SBR2WZXG.js → chunk-XNZURZ7T.js} +59 -52
  101. package/dist/{chunk-WFG67AYS.js → chunk-Y6NO3DLQ.js} +3 -3
  102. package/dist/{chunk-37AHZ7JX.js → chunk-Y76ERHLK.js} +5 -5
  103. package/dist/{chunk-HHW5AWVD.js → chunk-YI76TURL.js} +30 -30
  104. package/dist/{chunk-ZVYN4FXD.js → chunk-YSLMMR2U.js} +14 -14
  105. package/dist/{chunk-ZTUNCVAR.js → chunk-Z2BRSQ6M.js} +49 -49
  106. package/dist/{chunk-D64XUF5Q.js → chunk-Z3SNX45M.js} +16 -16
  107. package/dist/{chunk-FMOEVAGT.js → chunk-Z4VN347O.js} +3 -3
  108. package/dist/{chunk-UWY3R4TS.js → chunk-ZHGWR45B.js} +22 -22
  109. package/dist/cli.d.ts +20 -18
  110. package/dist/cli.js +50 -50
  111. package/dist/{codegen-command-SW2AP7KR.js → codegen-command-L2OO6OTE.js} +63 -63
  112. package/dist/{commands-CVFYC4GK.js → commands-2E4JB3DB.js} +2 -2
  113. package/dist/{completion-AUEQC4XJ.js → completion-LPJIH5VQ.js} +11 -11
  114. package/dist/{config-JU6OQC77.js → config-QDCRKEWD.js} +4 -4
  115. package/dist/{deploy-command-RD6W7PXN.js → deploy-command-HJZNYCUY.js} +57 -57
  116. package/dist/{deploy-source-ULSWF2V7.js → deploy-source-5COWTBOC.js} +34 -34
  117. package/dist/{dev-env-sync-E2GFIVC5.js → dev-env-sync-GZ4QQJGV.js} +51 -51
  118. package/dist/{display-name-hint-DMORHANO.js → display-name-hint-AHCNH6TF.js} +11 -11
  119. package/dist/{emit-hOFbgzde.d.ts → emit-DqG6qddr.d.ts} +2 -2
  120. package/dist/env-example-refresh-DWQIOQYR.js +127 -0
  121. package/dist/{env-pull-command-QYQEOUE3.js → env-pull-command-Z4RLVEGJ.js} +46 -46
  122. package/dist/{env-target-KUWQYHZ7.js → env-target-ZHQUS5BO.js} +13 -13
  123. package/dist/{env-var-command-2ZAVIPNY.js → env-var-command-FKQ4VVQ6.js} +47 -47
  124. package/dist/{ephemeral-BMFY55BQ.js → ephemeral-L4KUOGEU.js} +9 -9
  125. package/dist/{ephemeral-command-UKHBT3OW.js → ephemeral-command-GRPFI3TD.js} +47 -47
  126. package/dist/{ephemeral-state-6TY4JIPA.js → ephemeral-state-VLYU2BXR.js} +11 -11
  127. package/dist/{generate-command-YN3HZWHG.js → generate-command-XNODJFDQ.js} +68 -68
  128. package/dist/{gitignore-AU5X5F3I.js → gitignore-VWRSZX5F.js} +16 -16
  129. package/dist/{guards-EJU2ONAX.js → guards-OPSGB6LG.js} +5 -5
  130. package/dist/{hosted-file-PSHJB3HX.js → hosted-file-S7YUQAH6.js} +2 -2
  131. package/dist/{impersonate-command-ZKE77GFT.js → impersonate-command-AEKIZHHK.js} +40 -40
  132. package/dist/{import-TBTOTU52.js → import-PHSSFFLA.js} +5 -5
  133. package/dist/index.d.ts +4 -4
  134. package/dist/index.js +10 -10
  135. package/dist/{init-command-NPXBMJNG.js → init-command-TI3HCKXZ.js} +55 -55
  136. package/dist/{init-modules-5TSTLGH5.js → init-modules-SGSX7XEY.js} +9 -9
  137. package/dist/{init-web-Y2PBNJTQ.js → init-web-6HX3YLQP.js} +2 -2
  138. package/dist/internal.d.ts +4 -4
  139. package/dist/internal.js +24 -25
  140. package/dist/{io-ZUKAGFVE.js → io-TAF4WXYQ.js} +5 -5
  141. package/dist/{keep-data-merge-TDSELE5U.js → keep-data-merge-GUGF7MVZ.js} +28 -28
  142. package/dist/{lambda-config-reconcile-OUZ4OYAB.js → lambda-config-reconcile-65U6I4KU.js} +3 -3
  143. package/dist/{landed-6VO7CX5P.js → landed-QA6PRTV2.js} +4 -4
  144. package/dist/{landing-record-W7VQ4KV4.js → landing-record-FCAWLCZU.js} +22 -22
  145. package/dist/{live-diff-2S7E3SBZ.js → live-diff-IM4W3ELT.js} +5 -5
  146. package/dist/local-engine-choice-FPJAZSSD.js +79 -0
  147. package/dist/{local-engine-command-5MTGZIZ4.js → local-engine-command-73NHWD6V.js} +92 -92
  148. package/dist/{local-engine-config-5U3SC434.js → local-engine-config-W3KB7RWM.js} +2 -2
  149. package/dist/{local-engine-deploy-TXAOYRGF.js → local-engine-deploy-Y4OAWL7K.js} +16 -16
  150. package/dist/{local-engine-process-6VZ7JJBP.js → local-engine-process-6YPJHKYM.js} +11 -11
  151. package/dist/{local-engine-state-TJWPWCC4.js → local-engine-state-OCW5YDD7.js} +3 -3
  152. package/dist/{local-engine-update-check-R5SPDVEJ.js → local-engine-update-check-X7TZGRFL.js} +7 -7
  153. package/dist/{lock-TS465GVY.js → lock-WXXC3QHL.js} +3 -3
  154. package/dist/{lock-commands-OBXAUSZX.js → lock-commands-PKDBNRSD.js} +55 -55
  155. package/dist/{login-command-CB3O3UDZ.js → login-command-V4U4FA5G.js} +27 -27
  156. package/dist/{logout-command-J5CP5HZZ.js → logout-command-TV3P545Z.js} +16 -16
  157. package/dist/{loop-UFHKSOQ4.js → loop-VKHGQ6MP.js} +6 -6
  158. package/dist/{marketplace-command-A5S25ZHF.js → marketplace-command-LEFOAEAV.js} +31 -31
  159. package/dist/{marketplace-resolve-GRXMK5YD.js → marketplace-resolve-ME7O7JBJ.js} +7 -7
  160. package/dist/{meta-client-FB73643X.js → meta-client-TEEECA5W.js} +14 -14
  161. package/dist/{module-manifest-GIKFNXPE.js → module-manifest-7YLGIRCY.js} +3 -3
  162. package/dist/node.d.ts +4 -4
  163. package/dist/node.js +56 -56
  164. package/dist/operation-outcome-GNDD35WL.js +51 -0
  165. package/dist/{output-target-6HNPK6KC.js → output-target-5FWX3NGZ.js} +17 -17
  166. package/dist/{plan-disclosure-BHYG7TZ7.js → plan-disclosure-QGL5UYQR.js} +16 -16
  167. package/dist/{plugin-contributions-X4V22PJQ.js → plugin-contributions-GNFTWDEB.js} +4 -4
  168. package/dist/{plugin-prompt-DKNQHW6Y.js → plugin-prompt-VEQGMZ4T.js} +4 -4
  169. package/dist/{plugin-questions-CQRVOWFK.js → plugin-questions-BGRL23GO.js} +3 -3
  170. package/dist/{preflight-command-NZ75PSRL.js → preflight-command-VKJKXRRI.js} +63 -63
  171. package/dist/{profile-command-KIRI4GA4.js → profile-command-P7A3BH26.js} +29 -29
  172. package/dist/{profile-pointer-UOO7JNFG.js → profile-pointer-HG7IXE4I.js} +4 -4
  173. package/dist/{profile-select-74TRDEPD.js → profile-select-45G5VPJK.js} +2 -2
  174. package/dist/{project-dependency-JGCJZ26H.js → project-dependency-Z4CKOCJI.js} +8 -8
  175. package/dist/{project-sdk-FOR4IOXL.js → project-sdk-JWZWGXXR.js} +3 -3
  176. package/dist/promote-command-KHTIK44I.js +141 -0
  177. package/dist/{prompt-5GUQTCSP.js → prompt-SURZOUUW.js} +3 -3
  178. package/dist/{publish-command-74HMEZ7E.js → publish-command-HGAB3H4A.js} +131 -60
  179. package/dist/{pull-command-VO5RRGZ5.js → pull-command-EUEWBRXZ.js} +66 -66
  180. package/dist/{pull-superseded-GGURV5J3.js → pull-superseded-TOT5S4QU.js} +3 -3
  181. package/dist/{release-command-ZHM5FA4M.js → release-command-WOVQAMUY.js} +64 -64
  182. package/dist/{release-ns-command-2TL26YOM.js → release-ns-command-WOQE2BDQ.js} +87 -87
  183. package/dist/{retry-command-Y5YJGOH3.js → retry-command-JRGMZZAC.js} +8 -8
  184. package/dist/{routes-manifest-3BNZIVST.js → routes-manifest-URFMAWJE.js} +5 -5
  185. package/dist/scaffold.js +2 -2
  186. package/dist/{secrets-file-NBBR6DYS.js → secrets-file-YWZWVJ52.js} +16 -16
  187. package/dist/{secrets-fill-command-X3HQ4JYN.js → secrets-fill-command-HIHK3VH2.js} +54 -54
  188. package/dist/{seed-GJHJSEUE.js → seed-24DTEY5S.js} +7 -7
  189. package/dist/{source-resolve-NTI3JFO6.js → source-resolve-OWD3MIEO.js} +23 -23
  190. package/dist/{static-host-WM24RG25.js → static-host-UIR2OLPQ.js} +9 -9
  191. package/dist/{status-command-RVMOLYPR.js → status-command-JKTHH5QE.js} +53 -53
  192. package/dist/{store-MR7IKXKK.js → store-5YAQS6KU.js} +6 -6
  193. package/dist/{store-CfgPaVPO.d.ts → store-zxw2go0f.d.ts} +3 -3
  194. package/dist/sveltekit.d.ts +5 -5
  195. package/dist/sveltekit.js +1 -1
  196. package/dist/{sync-contributions-KGCVRH2J.js → sync-contributions-RBB6JVOL.js} +9 -9
  197. package/dist/{table-ZBDPKMNH.js → table-MQFVYA4K.js} +8 -8
  198. package/dist/{tables-command-GAOXJPMA.js → tables-command-5Q4BSUNO.js} +39 -39
  199. package/dist/{tenant-GKXMOYLK.js → tenant-Q3LPVSSM.js} +10 -10
  200. package/dist/{tenant-command-FAJ7WZTH.js → tenant-command-BFVU2PEX.js} +84 -84
  201. package/dist/{test-command-53FRDZ32.js → test-command-F4VUU4QR.js} +40 -40
  202. package/dist/{tests-C55M5EQS.js → tests-5ZSDFVIJ.js} +6 -6
  203. package/dist/{token-44CKLYWD.js → token-TERSTNU4.js} +12 -12
  204. package/dist/{toolchain-hooks-BGZBDFAT.js → toolchain-hooks-QVUZ6HZ4.js} +2 -2
  205. package/dist/{toolchain-modules-MPPH633S.js → toolchain-modules-FD5ANV2U.js} +5 -5
  206. package/dist/tracked-backend-B4HTME4S.js +80 -0
  207. package/dist/{update-check-Q4HJHHL5.js → update-check-O4C2LCZH.js} +53 -53
  208. package/dist/{upgrade-command-C63HIBVH.js → upgrade-command-NVFWLMTA.js} +56 -56
  209. package/dist/{whoami-command-WC5EKB4W.js → whoami-command-YKNTISIV.js} +15 -15
  210. package/dist/{workspace-EJVWTIWX.js → workspace-GGVGE2S5.js} +5 -5
  211. package/dist/{workspace-binding-BRPPUSWG.js → workspace-binding-OS4ZOX4S.js} +14 -14
  212. package/dist/{workspace-command-Y6STVPYO.js → workspace-command-GTUNVN7K.js} +77 -77
  213. package/dist/{workspace-env-SIINWNMP.js → workspace-env-467C5KHM.js} +13 -13
  214. package/dist/{workspace-export-AIGM6LC7.js → workspace-export-3XTVGQVM.js} +5 -5
  215. package/dist/{writable-FYJBTJOU.js → writable-7SSWUQJ3.js} +3 -3
  216. package/dist/{xano-BSHYVFSE.js → xano-6RS5XQZE.js} +7 -7
  217. package/dist/{xanosdk-import-UKEO7R7O.js → xanosdk-import-E3WSIYUE.js} +9 -9
  218. package/dist/{xanosdk-project-MQTZKITV.js → xanosdk-project-KH5TZ2KI.js} +14 -14
  219. package/guides/README.md +1 -0
  220. package/guides/authoring.md +3 -5
  221. package/guides/bundle.md +45 -0
  222. package/guides/cli.md +32 -30
  223. package/guides/codegen.md +5 -4
  224. package/guides/codes.md +9 -9
  225. package/guides/deploying.md +63 -58
  226. package/guides/environment.md +14 -14
  227. package/guides/marketplace.md +7 -4
  228. package/guides/project-structure.md +14 -0
  229. package/llms/client.md +3 -4
  230. package/llms/errors.md +1 -1
  231. package/llms/tests.md +2 -2
  232. package/llms-full.txt +14 -15
  233. package/llms.txt +8 -8
  234. package/manifest.json +110 -107
  235. package/package.json +4 -4
  236. package/dist/env-example-refresh-WFKGILLY.js +0 -127
  237. package/dist/local-engine-choice-OXULXWEP.js +0 -79
  238. package/dist/operation-outcome-V4FUJI7V.js +0 -51
  239. package/dist/promote-command-IPDH5OBT.js +0 -141
  240. package/dist/tracked-backend-AJLHRGLF.js +0 -80
@@ -126,15 +126,18 @@ flag that parses cleanly and then does nothing is worse than one that fails.
126
126
  `details` takes an npm package name or a slug. A miss prints the catalogue's own sentence
127
127
  plus a pointer at `search`, because a miss is usually a half-remembered name.
128
128
 
129
- A module that has been **removed** from the marketplace keeps its name reserved and is
130
- warned about before every output mode, `--prompt` included, on stderr so a piped prompt is
131
- unaffected. Soft-deleted modules are dropped from `list` entirely.
129
+ A module that has been **removed** from the marketplace (`listed: false`) keeps its name
130
+ reserved: `details` still answers it, with a warning before every output mode, `--prompt`
131
+ included, on stderr so a piped prompt is unaffected. It is dropped from `list` and `search`
132
+ entirely, and `install` refuses it.
132
133
 
133
134
  ### Pointing the reads somewhere else
134
135
 
135
136
  `XANOSDK_MARKETPLACE_URL` repoints all three read verbs. The catalogue host is otherwise
136
137
  hardcoded in a published package, so a move would break every installed copy of the CLI at
137
- once and only a release would fix it. See [Environment & identity](environment.md).
138
+ once and only a release would fix it. A base with a path works too, so an ephemeral or a
139
+ tenant (`https://<instance>/tenant/<name>`) can stand in for it. See
140
+ [Environment & identity](environment.md).
138
141
 
139
142
  ## Installing
140
143
 
@@ -41,3 +41,17 @@ free to use any other layout; only `index.ts` registering the objects matters.
41
41
  Authoring is **declarative def-objects** passed to factories; there is no callback/chaining
42
42
  builder. `xano.export()` returns the importable `packageExport` bundle, and
43
43
  `xanosdk export`/`deploy` read the module's default export.
44
+
45
+ ## Wiring a project by hand
46
+
47
+ `xanosdk init` writes all of this for you. Without it, two lines set a project up:
48
+
49
+ ```bash
50
+ npm init -y && npm pkg set type=module && npm install -D @xano/sdk
51
+ npx xanosdk upgrade # rewrites npm's caret to the range init writes
52
+ ```
53
+
54
+ Write your workspace in `xano/index.ts`; `login` and `deploy` are unchanged. `type=module`
55
+ matters: Xano SDK defs are ESM-only, and `npm init` writes `"type": "commonjs"`. A TypeScript
56
+ entry wants [`tsx`](https://tsx.is) (`npm i -D tsx`), which the CLI picks up — Node's type
57
+ stripping does not remap a workspace's `./x.js` imports.
package/llms/client.md CHANGED
@@ -40,11 +40,10 @@ by grepping `window.XANO_HOST` matches nothing and reads as a failed inject. Gre
40
40
  bare `XANO_HOST` token.
41
41
  **Frontend without the backend.** `xanosdk publish <dir> [--to <backend>]` uploads an
42
42
  already-built directory and nothing else — no compile, no import (scaffold script
43
- `npm run xano:deploy:frontend`). `publish` does not reach a local engine: after a local-engine
44
- deploy, pass `--to ephemeral`, or give the engine the frontend with
45
- `xanosdk deploy <entry> --local-engine --static <dir>` (served at `http://<prefix>.localhost:<port>`).
43
+ `npm run xano:deploy:frontend`). A Xano Engine (`--to local`, or bare after a local
44
+ deploy) serves it, server half included, at `http://<prefix>.localhost:<port>`.
46
45
  **Server-rendered SvelteKit.** `adapter()` from `@xano/sdk/sveltekit` (needs `esbuild`) writes
47
- the static half at the build's root plus a server half in `.xano-ssr/`. A local engine renders every
46
+ the static half at the build's root plus a server half in `.xano-ssr/`. A Xano Engine renders every
48
47
  path that is not a file through it (`load` reads the engine's own URL as `XANO_HOST` from
49
48
  `$env/dynamic/private`; a rendered page gets the deploy's `window.XANO_HOST` too). Any other host
50
49
  is not sent `.xano-ssr/`: it serves the static half and answers other paths with the `404.html`
package/llms/errors.md CHANGED
@@ -51,6 +51,6 @@ A failure document's `exitCode` matches.
51
51
  | 5 | `test` / `deploy --test`: the suite ran and a test failed. A deploy is not retracted. | Fix the test or the code. |
52
52
  | 6 | `test`, `deploy --test`: the suite could not be reached. | Check the backend; rerun. |
53
53
  | 7 | `upgrade --check`: an upgrade is available. | `xanosdk upgrade`. |
54
- | 8 | A named backend could not be addressed (or a named release, profile, branch, test, module, lock entry, `--seed` guid or local-engine version is missing): gone, expired, unreachable, a stopped local engine, or a busy import. | Retry, or redeploy. |
54
+ | 8 | A named backend could not be addressed (or a named release, profile, branch, test, module, lock entry, `--seed` guid or Xano Engine version is missing): gone, expired, unreachable, a stopped Xano Engine, or a busy import. | Retry, or redeploy. |
55
55
  | 9 | A write whose outcome is unknown, Ctrl-C during a write included. | Read the target's state before retrying. |
56
56
  | 130 | Ctrl-C outside a write or install. | — |
package/llms/tests.md CHANGED
@@ -51,9 +51,9 @@ The run is isolated in ways that make a correct test fail for reasons the failur
51
51
 
52
52
  `xanosdk test run-all` runs the unit tests AND the `workflowTest()` objects an environment carries. It takes no entry file and compiles nothing: it runs what is DEPLOYED, so deploy before testing.
53
53
 
54
- - `--on <backend>` picks the backend — `--on ephemeral:<name>`, `--on local-engine`, `--on tenant:<name>`, `--on workspace`; omitted, the one this project last deployed to (grammar: **Backends** in `llms.txt`). ⚠ `workspace` runs against the REAL database: safe only while every test keeps `datasource: ""`, since a stored non-empty datasource is CLONED before the run.
54
+ - `--on <backend>` picks the backend — `--on ephemeral:<name>`, `--on local`, `--on tenant:<name>`, `--on workspace`; omitted, the one this project last deployed to (grammar: **Backends** in `llms.txt`). ⚠ `workspace` runs against the REAL database: safe only while every test keeps `datasource: ""`, since a stored non-empty datasource is CLONED before the run.
55
55
  - `xanosdk test list` shows what is there without running it; `test run "<name>"` runs one; an ambiguous name prints qualified forms (`function:math/happy path`, `workflow:<name>`) `run` accepts.
56
56
  - `--kind unit|workflow` narrows to one family. `--concurrency <n>` defaults to 1: tests share the environment database.
57
57
  - A failing suite exits 5; exit 6 when the suite could not be reached — retry it; a backend that can't be looked up exits 8 (see errors). Having no tests is success.
58
- - For CI: the exit code says THAT something failed, the JSON says WHICH. Progress goes to stderr; stdout carries one JSON document when not a terminal, or with `--json`. `run-all` and `run`: `{ kind, env, name, display, total, passed, failed, tests: [{ kind, name, qualified, object?, status: "pass"|"fail", message?, expectations?: [{ index, status, message? }], timing? }] }` (`message`: the first failure; `expectations`: a unit test's every expectation in order, `index` from 0; `env`: an ephemeral's or tenant's name; `name`: the backend's own, a local engine's too; null if none), same keys on an empty suite. `list` is `{ kind, env, name, display, total, tests }`; `deploy --test` nests the run under `testRun`.
58
+ - For CI: the exit code says THAT something failed, the JSON says WHICH. Progress goes to stderr; stdout carries one JSON document when not a terminal, or with `--json`. `run-all` and `run`: `{ kind, env, name, display, total, passed, failed, tests: [{ kind, name, qualified, object?, status: "pass"|"fail", message?, expectations?: [{ index, status, message? }], timing? }] }` (`message`: the first failure; `expectations`: a unit test's every expectation in order, `index` from 0; `env`: an ephemeral's or tenant's name; `name`: the backend's own, a Xano Engine's too; null if none), same keys on an empty suite. `list` is `{ kind, env, name, display, total, tests }`; `deploy --test` nests the run under `testRun`.
59
59
  - `xanosdk deploy ./index.ts --test` deploys and then runs the suite against what it just shipped. A failure exits 5 WITHOUT retracting the deploy — the environment is live either way.
package/llms-full.txt CHANGED
@@ -1,4 +1,4 @@
1
- # xanosdk v1.0.3
1
+ # xanosdk v1.0.5
2
2
 
3
3
  > TypeScript SDK that compiles a typed Xano workspace into the importable packageExport JSON bundle.
4
4
 
@@ -155,19 +155,19 @@ export. Pruning, programmatic seeding, and which commands write the lock:
155
155
  `export` (honoring `xano.lock`), imports the result, and prints the URL.
156
156
  ⚠ Every deploy is a FULL REPLACE of its destination — objects AND records.
157
157
 
158
- **Backends** — one grammar: `workspace` | `ephemeral[:<name>]` | `local-engine[:<name>]`
158
+ **Backends** — one grammar: `workspace` | `ephemeral[:<name>]` | `local[:<name>]`
159
159
  (no credential) | `tenant:<name>` | `release:<name>` | a bundle path where a file fits. Reads
160
160
  `--from`, writes `--to`, `test --on`; positional on `deploy`/`pull`/`generate`/`tables`/
161
- `impersonate`. Omitted = the ephemeral or local engine this project last deployed to, never
162
- workspace/tenant; bare `deploy` compiles the project onto an ephemeral instead (`--local-engine`:
163
- an engine on this machine), and `generate`/`init --from` need one. A refusal, typed or tracked,
164
- names the reason and the spellings (`publish`, `release create` refuse a local engine).
161
+ `impersonate`. Omitted = the ephemeral or Xano Engine this project last deployed to, never
162
+ workspace/tenant; bare `deploy` compiles onto the Xano Engine instead (`--ephemeral`: an
163
+ ephemeral), and `generate`/`init --from` need one. A refusal, typed or tracked,
164
+ names the reason and the spellings (`release create` refuses a Xano Engine).
165
165
  `release create --from` records a run: no bundle path, no `release:`,
166
166
  and a `tenant:` only if throwaway (`standard`/`run` refused).
167
167
 
168
- **Destinations** — ephemeral by default, real only when you say so:
168
+ **Destinations** — the Xano Engine by default, real only when you say so:
169
169
 
170
- - `xanosdk deploy [source]` → a NAMED, auto-expiring ephemeral (~1h; `--expires-hours`
170
+ - `xanosdk deploy [source]` → the Xano Engine on this machine (no account). `--ephemeral` → a NAMED, auto-expiring ephemeral (~1h; `--expires-hours`
171
171
  1–24), tracked in `./.xano/ephemeral.json`, so deploying again REFRESHES it at the same
172
172
  URL; if it expired or was swept, a fresh one is created and the new URL called out.
173
173
  ⚠ Only the BACKEND URL survives a refresh — the replace clears static hosting, so
@@ -670,11 +670,10 @@ by grepping `window.XANO_HOST` matches nothing and reads as a failed inject. Gre
670
670
  bare `XANO_HOST` token.
671
671
  **Frontend without the backend.** `xanosdk publish <dir> [--to <backend>]` uploads an
672
672
  already-built directory and nothing else — no compile, no import (scaffold script
673
- `npm run xano:deploy:frontend`). `publish` does not reach a local engine: after a local-engine
674
- deploy, pass `--to ephemeral`, or give the engine the frontend with
675
- `xanosdk deploy <entry> --local-engine --static <dir>` (served at `http://<prefix>.localhost:<port>`).
673
+ `npm run xano:deploy:frontend`). A Xano Engine (`--to local`, or bare after a local
674
+ deploy) serves it, server half included, at `http://<prefix>.localhost:<port>`.
676
675
  **Server-rendered SvelteKit.** `adapter()` from `@xano/sdk/sveltekit` (needs `esbuild`) writes
677
- the static half at the build's root plus a server half in `.xano-ssr/`. A local engine renders every
676
+ the static half at the build's root plus a server half in `.xano-ssr/`. A Xano Engine renders every
678
677
  path that is not a file through it (`load` reads the engine's own URL as `XANO_HOST` from
679
678
  `$env/dynamic/private`; a rendered page gets the deploy's `window.XANO_HOST` too). Any other host
680
679
  is not sent `.xano-ssr/`: it serves the static half and answers other paths with the `404.html`
@@ -762,7 +761,7 @@ A failure document's `exitCode` matches.
762
761
  | 5 | `test` / `deploy --test`: the suite ran and a test failed. A deploy is not retracted. | Fix the test or the code. |
763
762
  | 6 | `test`, `deploy --test`: the suite could not be reached. | Check the backend; rerun. |
764
763
  | 7 | `upgrade --check`: an upgrade is available. | `xanosdk upgrade`. |
765
- | 8 | A named backend could not be addressed (or a named release, profile, branch, test, module, lock entry, `--seed` guid or local-engine version is missing): gone, expired, unreachable, a stopped local engine, or a busy import. | Retry, or redeploy. |
764
+ | 8 | A named backend could not be addressed (or a named release, profile, branch, test, module, lock entry, `--seed` guid or Xano Engine version is missing): gone, expired, unreachable, a stopped Xano Engine, or a busy import. | Retry, or redeploy. |
766
765
  | 9 | A write whose outcome is unknown, Ctrl-C during a write included. | Read the target's state before retrying. |
767
766
  | 130 | Ctrl-C outside a write or install. | — |
768
767
 
@@ -819,11 +818,11 @@ The run is isolated in ways that make a correct test fail for reasons the failur
819
818
 
820
819
  `xanosdk test run-all` runs the unit tests AND the `workflowTest()` objects an environment carries. It takes no entry file and compiles nothing: it runs what is DEPLOYED, so deploy before testing.
821
820
 
822
- - `--on <backend>` picks the backend — `--on ephemeral:<name>`, `--on local-engine`, `--on tenant:<name>`, `--on workspace`; omitted, the one this project last deployed to (grammar: **Backends** in `llms.txt`). ⚠ `workspace` runs against the REAL database: safe only while every test keeps `datasource: ""`, since a stored non-empty datasource is CLONED before the run.
821
+ - `--on <backend>` picks the backend — `--on ephemeral:<name>`, `--on local`, `--on tenant:<name>`, `--on workspace`; omitted, the one this project last deployed to (grammar: **Backends** in `llms.txt`). ⚠ `workspace` runs against the REAL database: safe only while every test keeps `datasource: ""`, since a stored non-empty datasource is CLONED before the run.
823
822
  - `xanosdk test list` shows what is there without running it; `test run "<name>"` runs one; an ambiguous name prints qualified forms (`function:math/happy path`, `workflow:<name>`) `run` accepts.
824
823
  - `--kind unit|workflow` narrows to one family. `--concurrency <n>` defaults to 1: tests share the environment database.
825
824
  - A failing suite exits 5; exit 6 when the suite could not be reached — retry it; a backend that can't be looked up exits 8 (see errors). Having no tests is success.
826
- - For CI: the exit code says THAT something failed, the JSON says WHICH. Progress goes to stderr; stdout carries one JSON document when not a terminal, or with `--json`. `run-all` and `run`: `{ kind, env, name, display, total, passed, failed, tests: [{ kind, name, qualified, object?, status: "pass"|"fail", message?, expectations?: [{ index, status, message? }], timing? }] }` (`message`: the first failure; `expectations`: a unit test's every expectation in order, `index` from 0; `env`: an ephemeral's or tenant's name; `name`: the backend's own, a local engine's too; null if none), same keys on an empty suite. `list` is `{ kind, env, name, display, total, tests }`; `deploy --test` nests the run under `testRun`.
825
+ - For CI: the exit code says THAT something failed, the JSON says WHICH. Progress goes to stderr; stdout carries one JSON document when not a terminal, or with `--json`. `run-all` and `run`: `{ kind, env, name, display, total, passed, failed, tests: [{ kind, name, qualified, object?, status: "pass"|"fail", message?, expectations?: [{ index, status, message? }], timing? }] }` (`message`: the first failure; `expectations`: a unit test's every expectation in order, `index` from 0; `env`: an ephemeral's or tenant's name; `name`: the backend's own, a Xano Engine's too; null if none), same keys on an empty suite. `list` is `{ kind, env, name, display, total, tests }`; `deploy --test` nests the run under `testRun`.
827
826
  - `xanosdk deploy ./index.ts --test` deploys and then runs the suite against what it just shipped. A failure exits 5 WITHOUT retracting the deploy — the environment is live either way.
828
827
 
829
828
  # Agent and MCP def shapes
package/llms.txt CHANGED
@@ -1,4 +1,4 @@
1
- # xanosdk v1.0.3
1
+ # xanosdk v1.0.5
2
2
 
3
3
  > TypeScript SDK that compiles a typed Xano workspace into the importable packageExport JSON bundle.
4
4
 
@@ -155,19 +155,19 @@ export. Pruning, programmatic seeding, and which commands write the lock:
155
155
  `export` (honoring `xano.lock`), imports the result, and prints the URL.
156
156
  ⚠ Every deploy is a FULL REPLACE of its destination — objects AND records.
157
157
 
158
- **Backends** — one grammar: `workspace` | `ephemeral[:<name>]` | `local-engine[:<name>]`
158
+ **Backends** — one grammar: `workspace` | `ephemeral[:<name>]` | `local[:<name>]`
159
159
  (no credential) | `tenant:<name>` | `release:<name>` | a bundle path where a file fits. Reads
160
160
  `--from`, writes `--to`, `test --on`; positional on `deploy`/`pull`/`generate`/`tables`/
161
- `impersonate`. Omitted = the ephemeral or local engine this project last deployed to, never
162
- workspace/tenant; bare `deploy` compiles the project onto an ephemeral instead (`--local-engine`:
163
- an engine on this machine), and `generate`/`init --from` need one. A refusal, typed or tracked,
164
- names the reason and the spellings (`publish`, `release create` refuse a local engine).
161
+ `impersonate`. Omitted = the ephemeral or Xano Engine this project last deployed to, never
162
+ workspace/tenant; bare `deploy` compiles onto the Xano Engine instead (`--ephemeral`: an
163
+ ephemeral), and `generate`/`init --from` need one. A refusal, typed or tracked,
164
+ names the reason and the spellings (`release create` refuses a Xano Engine).
165
165
  `release create --from` records a run: no bundle path, no `release:`,
166
166
  and a `tenant:` only if throwaway (`standard`/`run` refused).
167
167
 
168
- **Destinations** — ephemeral by default, real only when you say so:
168
+ **Destinations** — the Xano Engine by default, real only when you say so:
169
169
 
170
- - `xanosdk deploy [source]` → a NAMED, auto-expiring ephemeral (~1h; `--expires-hours`
170
+ - `xanosdk deploy [source]` → the Xano Engine on this machine (no account). `--ephemeral` → a NAMED, auto-expiring ephemeral (~1h; `--expires-hours`
171
171
  1–24), tracked in `./.xano/ephemeral.json`, so deploying again REFRESHES it at the same
172
172
  URL; if it expired or was swept, a fresh one is created and the new URL called out.
173
173
  ⚠ Only the BACKEND URL survives a refresh — the replace clears static hosting, so