@metabase/cli 0.1.12 → 0.1.14

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 (191) hide show
  1. package/README.md +109 -22
  2. package/dist/add-collection-Cdhj6DJb.mjs +10 -0
  3. package/dist/{add-collection-DEME4IOy.mjs → add-collection-Cubho2HN.mjs} +5 -5
  4. package/dist/{archive-CMeTr8jv.mjs → archive-BBboJ-z3.mjs} +6 -6
  5. package/dist/{archive-DUlrUlok.mjs → archive-BrzOTxSA.mjs} +6 -6
  6. package/dist/{archive-BNioNJtG.mjs → archive-C8G0KIPI.mjs} +7 -7
  7. package/dist/{archive-BtDvBsr8.mjs → archive-D6eMYNI5.mjs} +6 -6
  8. package/dist/{archive-BFk-oupo.mjs → archive-DCIwtfv0.mjs} +6 -6
  9. package/dist/{archive-MTTQv3wR.mjs → archive-DTN6Anme.mjs} +7 -7
  10. package/dist/{archive-Dc-FwNZm.mjs → archive-F2g-bAXf.mjs} +7 -7
  11. package/dist/auth-D4cXDeiH.mjs +19 -0
  12. package/dist/{body-89w3r7In.mjs → body-CXpIB6hY.mjs} +3 -3
  13. package/dist/{branches-DuVKH8Ye.mjs → branches-r9SVJIV5.mjs} +6 -6
  14. package/dist/{cancel-BEMQKVuR.mjs → cancel-BbLZsVYQ.mjs} +5 -5
  15. package/dist/{cancel-task-D2mSPFXO.mjs → cancel-task-CojB-8XX.mjs} +6 -6
  16. package/dist/{capabilities-7L9GVMd_.mjs → capabilities-BX1rnVuH.mjs} +2 -14
  17. package/dist/card-BMN-mcxn.mjs +20 -0
  18. package/dist/{card-DnIeMmUn.mjs → card-wCPcuKSi.mjs} +1 -1
  19. package/dist/{cards-L9jksUMD.mjs → cards-e9Wgnbnq.mjs} +6 -6
  20. package/dist/cli.mjs +26 -25
  21. package/dist/collection-DZnA3zXr.mjs +20 -0
  22. package/dist/{collection-namespace-w26SavJH.mjs → collection-namespace-DmKMqLr0.mjs} +2 -2
  23. package/dist/{command-augment-BH9qgQ5u.mjs → command-augment-CAur0XOQ.mjs} +13 -2
  24. package/dist/{create-Cxg_h8Kf.mjs → create-Bbe2EM9f.mjs} +10 -10
  25. package/dist/{create-8hMjPz7j.mjs → create-Bu9edPBn.mjs} +8 -8
  26. package/dist/create-Bz4hf7W0.mjs +44 -0
  27. package/dist/{create-Bu9Jayck.mjs → create-BzKW27Hh.mjs} +12 -12
  28. package/dist/{create-Dew3rKsR.mjs → create-C4G_z8qO.mjs} +8 -8
  29. package/dist/{create-DoeqRVmx.mjs → create-C5-JhEUc.mjs} +11 -11
  30. package/dist/{create-zEq4ZJAT.mjs → create-Cq-ay6cJ.mjs} +8 -8
  31. package/dist/{create-D6QqOX6u.mjs → create-DFMpgUvH.mjs} +9 -9
  32. package/dist/{create-C3b3MoIN.mjs → create-UzeYyGq6.mjs} +10 -10
  33. package/dist/{create-branch-C5P2y8U5.mjs → create-branch--GJ_RxIN.mjs} +6 -6
  34. package/dist/{create-DCYc032c.mjs → create-onFRzFwS.mjs} +11 -11
  35. package/dist/{current-task-uD4QO5bM.mjs → current-task-C0mMBzdB.mjs} +6 -6
  36. package/dist/dashboard-PB_c3Irl.mjs +21 -0
  37. package/dist/{database-Dsv4QBs0.mjs → database-BmsxuRmO.mjs} +1 -1
  38. package/dist/db-q0lYg3k8.mjs +22 -0
  39. package/dist/{delete-DGaNAFdQ.mjs → delete-CGw1hwGZ.mjs} +7 -7
  40. package/dist/{delete-Bftif2R3.mjs → delete-CxTPHzom.mjs} +7 -7
  41. package/dist/delete-Dbzs51x3.mjs +50 -0
  42. package/dist/{delete-runtime-CjFc69tS.mjs → delete-runtime-BhZAAvjc.mjs} +3 -3
  43. package/dist/{delete-table-C0qxP6FE.mjs → delete-table-B6obSpLU.mjs} +7 -7
  44. package/dist/dependencies-DfkbJqzQ.mjs +40 -0
  45. package/dist/{dirty-CZZLpWt1.mjs → dirty-BqL_DE6p.mjs} +6 -6
  46. package/dist/document-4TwzGwl3.mjs +19 -0
  47. package/dist/{eid-C8xTmR8e.mjs → eid-C31VGHAM.mjs} +7 -7
  48. package/dist/{error-BGH4gxGN.mjs → error-BOi_ux9O.mjs} +40 -5
  49. package/dist/{export-DWdjnBKo.mjs → export--_0e40xU.mjs} +8 -8
  50. package/dist/field-Bi_O_Sdg.mjs +18 -0
  51. package/dist/{fields-Cq08PQec.mjs → fields-BRiL6KEF.mjs} +7 -7
  52. package/dist/{get-Bbij6RjC.mjs → get--bNbxDkk.mjs} +6 -6
  53. package/dist/{get-DHPN1716.mjs → get-B-phl324.mjs} +7 -7
  54. package/dist/{get-DtKv-gl3.mjs → get-B2-RLrYJ.mjs} +6 -6
  55. package/dist/{get-ug26gcOI.mjs → get-B_TdMKu-.mjs} +8 -8
  56. package/dist/{get-f5ENeUNw.mjs → get-C-o2-vnf.mjs} +6 -6
  57. package/dist/{get-BaKKF50e.mjs → get-C6njgZmF.mjs} +6 -6
  58. package/dist/{get-B_BJ10pV.mjs → get-CCyfx_AY.mjs} +6 -6
  59. package/dist/{get-Cr8oz_jr.mjs → get-CcGU3YaY.mjs} +6 -6
  60. package/dist/{get-8nAjRL2H.mjs → get-Cs7a7s2Z.mjs} +7 -7
  61. package/dist/{get-B2vGW7Aw.mjs → get-DGZw_U0s.mjs} +6 -6
  62. package/dist/{get-DzLAmSKd.mjs → get-DMeF2FLQ.mjs} +5 -5
  63. package/dist/{get-7IhxPyE_.mjs → get-DQOvqH9P.mjs} +6 -6
  64. package/dist/{get-Bcr_5fAb.mjs → get-LJam7ZQ-.mjs} +6 -6
  65. package/dist/{get-Rqz7UHv1.mjs → get-ev4Zw3Gj.mjs} +6 -6
  66. package/dist/{get-run-DhbHXaZE.mjs → get-run-Cp7ATZPQ.mjs} +6 -6
  67. package/dist/git-sync-BOZdFF09.mjs +28 -0
  68. package/dist/{has-remote-changes-CTLh3WjZ.mjs → has-remote-changes-Bw_Xp9Ii.mjs} +6 -6
  69. package/dist/{import-XakIQfRp.mjs → import-BmoC0ECq.mjs} +8 -8
  70. package/dist/{input-BZwm4yby.mjs → input-BXWgdKiS.mjs} +1 -1
  71. package/dist/is-dirty-B6usK-aU.mjs +9 -0
  72. package/dist/{is-dirty-DkOOyjsZ.mjs → is-dirty-BDmXm34E.mjs} +4 -4
  73. package/dist/{items-DC985V8K.mjs → items-BI-O48Sc.mjs} +8 -8
  74. package/dist/{key-y4TtxKwU.mjs → key-C8q5oIr5.mjs} +1 -1
  75. package/dist/{list-DfPwBQrZ.mjs → list-B7g2c9K7.mjs} +5 -5
  76. package/dist/{list-CEbMS6g3.mjs → list-BE3wVc-a.mjs} +5 -5
  77. package/dist/{list-CtAFlkLe.mjs → list-BcSjOiK1.mjs} +5 -5
  78. package/dist/{list-CIEI8XK_.mjs → list-BkEFHJe8.mjs} +5 -5
  79. package/dist/{list-STlBcPs8.mjs → list-CNeaMSjy.mjs} +5 -5
  80. package/dist/{list-BtNboYpZ.mjs → list-CRUjh592.mjs} +25 -18
  81. package/dist/{list-PYNFVJGM.mjs → list-CTfCgMTk.mjs} +7 -7
  82. package/dist/{list-OGkVAG6b.mjs → list-Cju3N2kB.mjs} +6 -6
  83. package/dist/{list-Df4MhR2A.mjs → list-Cqvt6gpK.mjs} +7 -7
  84. package/dist/{list-CyIgwqFB.mjs → list-Cz_2UyGV.mjs} +6 -6
  85. package/dist/{list-B83-hnq5.mjs → list-DIFjjwBV.mjs} +5 -5
  86. package/dist/list-DM-Oa-oB.mjs +32 -0
  87. package/dist/{list-Cnb9mQdd.mjs → list-DhWVjE6U.mjs} +7 -7
  88. package/dist/{list-xfmTxHNu.mjs → list-JCMQ06wX.mjs} +5 -5
  89. package/dist/{list-gy64AAWO.mjs → list-RC1HQ2dg.mjs} +5 -5
  90. package/dist/login-BF6LkxPI.mjs +453 -0
  91. package/dist/{logout-BUgUTFol.mjs → logout-Cg8Z_XD_.mjs} +15 -6
  92. package/dist/{manifest-BPHqF5LY.mjs → manifest-DYeLri80.mjs} +2 -2
  93. package/dist/measure-BRzkMY5y.mjs +19 -0
  94. package/dist/{metadata-B1EmV1l5.mjs → metadata-B15u_YYT.mjs} +7 -7
  95. package/dist/{metadata-Dwkcsa1c.mjs → metadata-CmvvOpKI.mjs} +8 -8
  96. package/dist/{parse-enum-Dr7ACrTR.mjs → parse-enum-BatHQ-Gs.mjs} +1 -1
  97. package/dist/{parse-id-sKNP6yu5.mjs → parse-id-DMs04KM3.mjs} +1 -1
  98. package/dist/{parse-ref-BiETXmvm.mjs → parse-ref-CZr1bYIl.mjs} +1 -1
  99. package/dist/{path-BZJR7YLR.mjs → path-YsfpMb_h.mjs} +5 -5
  100. package/dist/{poll-Cyw-dQi4.mjs → poll-13tgWrN_.mjs} +2 -2
  101. package/dist/{poll-task-BG0oVnfZ.mjs → poll-task-BuAHsDEK.mjs} +2 -2
  102. package/dist/{preflight-BjR63JnX.mjs → preflight-wCSgVqbX.mjs} +4 -4
  103. package/dist/process-DsGf7Mg5.mjs +73 -0
  104. package/dist/{prompt-u4WhE4T5.mjs → prompt-Bc_bHSD0.mjs} +13 -3
  105. package/dist/{query-Dk55Wp2p.mjs → query-DnYdI0fl.mjs} +12 -12
  106. package/dist/{query-result-B4kTRid7.mjs → query-result-L5_NrwQR.mjs} +1 -1
  107. package/dist/{query-C2xqnz24.mjs → query-x6g6unDt.mjs} +8 -8
  108. package/dist/{remove-collection-DbVNWGyb.mjs → remove-collection-CLTqx7ys.mjs} +8 -8
  109. package/dist/{render-BQHJhSP1.mjs → render-CkuFkWlQ.mjs} +6 -1
  110. package/dist/{rescan-values-CuLQ9UHP.mjs → rescan-values-C7b78yA2.mjs} +8 -8
  111. package/dist/{run-PDN33QjN.mjs → run-CsYI4Sqv.mjs} +8 -8
  112. package/dist/run-DR5O1_EU.mjs +59 -0
  113. package/dist/{runs-B9T-7lei.mjs → runs-DWbtqOyw.mjs} +7 -7
  114. package/dist/{runtime-DgHh4T6t.mjs → runtime-7JTC-usO.mjs} +591 -123
  115. package/dist/{schema-tables-DjmNwrlT.mjs → schema-tables-Cte09dhE.mjs} +7 -7
  116. package/dist/{schemas-CWL8gv1C.mjs → schemas-DAmSPGiC.mjs} +5 -5
  117. package/dist/{search-D7JzmvfR.mjs → search-Di-SFcZm.mjs} +5 -5
  118. package/dist/segment-DiHHHk2a.mjs +19 -0
  119. package/dist/{set-C0dCLnUA.mjs → set-C1rIETEg.mjs} +8 -8
  120. package/dist/set-active-CJ1VaxEC.mjs +56 -0
  121. package/dist/{setting-Licy7ZSs.mjs → setting-6WqN3L3F.mjs} +3 -3
  122. package/dist/{setup-BL4fqxoU.mjs → setup-DbXhTopr.mjs} +7 -7
  123. package/dist/{skills-CY_FmaPo.mjs → skills-CJ8g8fhQ.mjs} +1 -1
  124. package/dist/{skills-Cn8FMCxG.mjs → skills-CfWrH-1L.mjs} +3 -3
  125. package/dist/snippet-B-anQo6y.mjs +19 -0
  126. package/dist/{stash-SGod4B8-.mjs → stash-BCNSzoYQ.mjs} +8 -8
  127. package/dist/{status-CvUuZVvC.mjs → status-BocNdqNq.mjs} +14 -6
  128. package/dist/{status-BCb5iCsQ.mjs → status-CG3Lbl5_.mjs} +7 -7
  129. package/dist/{summary-qaTPTLWs.mjs → summary-TApK2JbW.mjs} +6 -6
  130. package/dist/{sync-schema-CjjAYTbO.mjs → sync-schema-COA-OlO3.mjs} +10 -10
  131. package/dist/table-Bnj8IBKx.mjs +19 -0
  132. package/dist/{table-CkWja2UH.mjs → table-qDD2kApF.mjs} +1 -1
  133. package/dist/transform-QCDItglq.mjs +25 -0
  134. package/dist/transform-job-Dawm4Lag.mjs +22 -0
  135. package/dist/transform-tag-BLAbrywB.mjs +36 -0
  136. package/dist/transform-tag-CN-bTSne.mjs +18 -0
  137. package/dist/transforms-Bo4u0YqS.mjs +40 -0
  138. package/dist/{tree-C0MFcweC.mjs → tree-CGh-ZG4n.mjs} +5 -5
  139. package/dist/{update-BqsGGrzx.mjs → update-Bob7lvnr.mjs} +13 -13
  140. package/dist/{update-BUoWwmQV.mjs → update-Br_cd74H.mjs} +9 -9
  141. package/dist/{update-vk_M0eOR.mjs → update-BuJjTYAx.mjs} +11 -11
  142. package/dist/{update-CJASCsG4.mjs → update-CCIkTuxz.mjs} +9 -9
  143. package/dist/{update-Dty6LvU2.mjs → update-Co4WLVkK.mjs} +12 -12
  144. package/dist/update-DCvTlxUK.mjs +51 -0
  145. package/dist/{update-qoP7hZTg.mjs → update-DLQygCXg.mjs} +10 -10
  146. package/dist/{update-BTzsE8GU.mjs → update-DtUhmJar.mjs} +9 -9
  147. package/dist/{update-DCR0wFNl.mjs → update-ETzjZl17.mjs} +11 -11
  148. package/dist/{update-BImaz9vj.mjs → update-ZPsCSWR6.mjs} +12 -12
  149. package/dist/{update-dashcard-BkJaVVvf.mjs → update-dashcard-Du-h_8oY.mjs} +9 -9
  150. package/dist/{update-CHUUY-IB.mjs → update-ysNL-mE-.mjs} +9 -9
  151. package/dist/{upgrade-TdaiAYbH.mjs → upgrade-CavKMkQ4.mjs} +6 -34
  152. package/dist/{uuid-BeUz8VpP.mjs → uuid-BL33x41p.mjs} +4 -4
  153. package/dist/{validate-B62TRDGV.mjs → validate-VawhJ5Sc.mjs} +2 -2
  154. package/dist/{validate-query-BpiN1CFu.mjs → validate-query-CSV-TTnd.mjs} +3 -3
  155. package/dist/{values-DR-3HcK6.mjs → values-DVu97Fcd.mjs} +6 -6
  156. package/dist/{verify-D2uBlvmt.mjs → verify-BLUei79N.mjs} +5 -5
  157. package/dist/{wait-FAnqO-LT.mjs → wait-C0P8Qt37.mjs} +7 -7
  158. package/dist/{wait-flags-B5BI_xob.mjs → wait-flags-Z_JC7x4L.mjs} +2 -2
  159. package/package.json +1 -1
  160. package/skill-data/core/SKILL.md +1 -1
  161. package/skill-data/transform/SKILL.md +17 -3
  162. package/dist/add-collection-BPtBMh8Y.mjs +0 -10
  163. package/dist/auth-CjFnuPe9.mjs +0 -19
  164. package/dist/card-DoDpwR4t.mjs +0 -20
  165. package/dist/collection-CF-1RIPY.mjs +0 -20
  166. package/dist/dashboard-C5zTX345.mjs +0 -21
  167. package/dist/db-4y5Z1CQw.mjs +0 -22
  168. package/dist/document-97l9Non_.mjs +0 -19
  169. package/dist/field-BwUTrelF.mjs +0 -18
  170. package/dist/git-sync-JIMEYW-E.mjs +0 -28
  171. package/dist/is-dirty-4gf8ujws.mjs +0 -9
  172. package/dist/login-C0VFlX8y.mjs +0 -180
  173. package/dist/measure-BmcmxRQ3.mjs +0 -19
  174. package/dist/segment-DrZNuxsM.mjs +0 -19
  175. package/dist/snippet-C5_4nPGj.mjs +0 -19
  176. package/dist/table-DK1B8Hzq.mjs +0 -19
  177. package/dist/transform-Dh5746zH.mjs +0 -24
  178. package/dist/transform-job-D0nRGPYN.mjs +0 -19
  179. /package/dist/{body-flags-D78h_-Ua.mjs → body-flags-D7q87Btw.mjs} +0 -0
  180. /package/dist/{collection-BPTlcFw5.mjs → collection-Deiziuu2.mjs} +0 -0
  181. /package/dist/{dashboard-FY5UzJ_Z.mjs → dashboard-B4bn3z6t.mjs} +0 -0
  182. /package/dist/{document-CcfiiV3b.mjs → document-qfwR0r63.mjs} +0 -0
  183. /package/dist/{field-MGxpNQUH.mjs → field-E0IBy4Uw.mjs} +0 -0
  184. /package/dist/{measure-COGAoZpo.mjs → measure-JJAdFoqK.mjs} +0 -0
  185. /package/dist/{paginate-Dfm9eO9A.mjs → paginate-BexjkjbY.mjs} +0 -0
  186. /package/dist/{revision-message-flag-Bo-Kvv6F.mjs → revision-message-flag-C7zBeWEt.mjs} +0 -0
  187. /package/dist/{segment-d-708KKO.mjs → segment-B9SEv9V_.mjs} +0 -0
  188. /package/dist/{setting-CSJvi1-6.mjs → setting-i0pugNHl.mjs} +0 -0
  189. /package/dist/{snippet-BZvo05ua.mjs → snippet-NNzqlksR.mjs} +0 -0
  190. /package/dist/{transform-job-n8W6tLqF.mjs → transform-job-B9pXBOwr.mjs} +0 -0
  191. /package/dist/{transform--dviwMA1.mjs → transform-qczxOAzn.mjs} +0 -0
@@ -1,12 +1,12 @@
1
- import "./command-augment-BH9qgQ5u.mjs";
2
- import { connectionFlags, outputFlags, profileFlag } from "./error-BGH4gxGN.mjs";
3
- import { defineMetabaseCommand } from "./runtime-DgHh4T6t.mjs";
4
- import { renderSummary } from "./capabilities-7L9GVMd_.mjs";
5
- import "./input-BZwm4yby.mjs";
6
- import { parseId } from "./parse-id-sKNP6yu5.mjs";
7
- import { readBody } from "./body-89w3r7In.mjs";
8
- import { bodyInputFlags } from "./body-flags-D78h_-Ua.mjs";
9
- import { TransformJob, TransformJobUpdateInput, transformJobView } from "./transform-job-n8W6tLqF.mjs";
1
+ import "./command-augment-CAur0XOQ.mjs";
2
+ import { connectionFlags, outputFlags, profileFlag } from "./error-BOi_ux9O.mjs";
3
+ import { defineMetabaseCommand } from "./runtime-7JTC-usO.mjs";
4
+ import { renderSummary } from "./capabilities-BX1rnVuH.mjs";
5
+ import "./input-BXWgdKiS.mjs";
6
+ import { parseId } from "./parse-id-DMs04KM3.mjs";
7
+ import { readBody } from "./body-CXpIB6hY.mjs";
8
+ import { bodyInputFlags } from "./body-flags-D7q87Btw.mjs";
9
+ import { TransformJob, TransformJobUpdateInput, transformJobView } from "./transform-job-B9pXBOwr.mjs";
10
10
 
11
11
  //#region src/commands/transform-job/update.ts
12
12
  var update_default = defineMetabaseCommand({
@@ -1,15 +1,15 @@
1
- import "./command-augment-BH9qgQ5u.mjs";
2
- import { connectionFlags, outputFlags, profileFlag } from "./error-BGH4gxGN.mjs";
3
- import { defineMetabaseCommand } from "./runtime-DgHh4T6t.mjs";
4
- import { renderSummary } from "./capabilities-7L9GVMd_.mjs";
5
- import "./input-BZwm4yby.mjs";
6
- import "./field-MGxpNQUH.mjs";
7
- import { Card, CardUpdateInput, cardView } from "./card-DnIeMmUn.mjs";
8
- import { parseId } from "./parse-id-sKNP6yu5.mjs";
9
- import { readBody } from "./body-89w3r7In.mjs";
10
- import { bodyInputFlags } from "./body-flags-D78h_-Ua.mjs";
11
- import "./validate-B62TRDGV.mjs";
12
- import { CARD_DATASET_QUERY_LABELS, preflightMbql5Query, skipValidateFlag } from "./validate-query-BpiN1CFu.mjs";
1
+ import "./command-augment-CAur0XOQ.mjs";
2
+ import { connectionFlags, outputFlags, profileFlag } from "./error-BOi_ux9O.mjs";
3
+ import { defineMetabaseCommand } from "./runtime-7JTC-usO.mjs";
4
+ import { renderSummary } from "./capabilities-BX1rnVuH.mjs";
5
+ import "./input-BXWgdKiS.mjs";
6
+ import "./field-E0IBy4Uw.mjs";
7
+ import { Card, CardUpdateInput, cardView } from "./card-wCPcuKSi.mjs";
8
+ import { parseId } from "./parse-id-DMs04KM3.mjs";
9
+ import { readBody } from "./body-CXpIB6hY.mjs";
10
+ import { bodyInputFlags } from "./body-flags-D7q87Btw.mjs";
11
+ import "./validate-VawhJ5Sc.mjs";
12
+ import { CARD_DATASET_QUERY_LABELS, preflightMbql5Query, skipValidateFlag } from "./validate-query-CSV-TTnd.mjs";
13
13
 
14
14
  //#region src/commands/card/update.ts
15
15
  var update_default = defineMetabaseCommand({
@@ -0,0 +1,51 @@
1
+ import "./command-augment-CAur0XOQ.mjs";
2
+ import { connectionFlags, outputFlags, profileFlag } from "./error-BOi_ux9O.mjs";
3
+ import { defineMetabaseCommand } from "./runtime-7JTC-usO.mjs";
4
+ import { renderSummary } from "./capabilities-BX1rnVuH.mjs";
5
+ import "./input-BXWgdKiS.mjs";
6
+ import { parseId } from "./parse-id-DMs04KM3.mjs";
7
+ import { readBody } from "./body-CXpIB6hY.mjs";
8
+ import { bodyInputFlags } from "./body-flags-D7q87Btw.mjs";
9
+ import { TransformTag, TransformTagUpdateInput, transformTagView } from "./transform-tag-BLAbrywB.mjs";
10
+
11
+ //#region src/commands/transform-tag/update.ts
12
+ var update_default = defineMetabaseCommand({
13
+ meta: {
14
+ name: "update",
15
+ description: "Update a transform tag by id"
16
+ },
17
+ capabilities: { minVersion: 59 },
18
+ args: {
19
+ ...outputFlags,
20
+ ...profileFlag,
21
+ ...connectionFlags,
22
+ ...bodyInputFlags,
23
+ id: {
24
+ type: "positional",
25
+ description: "Transform tag id",
26
+ required: true
27
+ }
28
+ },
29
+ outputSchema: TransformTag,
30
+ examples: [
31
+ "mb transform-tag update 5 --body '{\"name\":\"renamed\"}'",
32
+ "mb transform-tag update 5 --file tag.json",
33
+ "echo '{\"name\":\"renamed\"}' | mb transform-tag update 5"
34
+ ],
35
+ async run({ args, ctx, getClient }) {
36
+ const id = parseId(args.id);
37
+ const body = await readBody({
38
+ flag: args.body,
39
+ file: args.file
40
+ }, TransformTagUpdateInput);
41
+ const client = await getClient();
42
+ const updated = await client.requestParsed(TransformTag, `/api/transform-tag/${id}`, {
43
+ method: "PUT",
44
+ body
45
+ });
46
+ renderSummary(updated, transformTagView, `Updated transform tag ${updated.id} "${updated.name}".`, ctx);
47
+ }
48
+ });
49
+
50
+ //#endregion
51
+ export { update_default as default };
@@ -1,13 +1,13 @@
1
- import "./command-augment-BH9qgQ5u.mjs";
2
- import { connectionFlags, outputFlags, profileFlag } from "./error-BGH4gxGN.mjs";
3
- import { defineMetabaseCommand } from "./runtime-DgHh4T6t.mjs";
4
- import { renderSummary } from "./capabilities-7L9GVMd_.mjs";
5
- import "./input-BZwm4yby.mjs";
6
- import "./field-MGxpNQUH.mjs";
7
- import { parseId } from "./parse-id-sKNP6yu5.mjs";
8
- import { readBody } from "./body-89w3r7In.mjs";
9
- import { bodyInputFlags } from "./body-flags-D78h_-Ua.mjs";
10
- import { Table, TableUpdateInput, tableView } from "./table-CkWja2UH.mjs";
1
+ import "./command-augment-CAur0XOQ.mjs";
2
+ import { connectionFlags, outputFlags, profileFlag } from "./error-BOi_ux9O.mjs";
3
+ import { defineMetabaseCommand } from "./runtime-7JTC-usO.mjs";
4
+ import { renderSummary } from "./capabilities-BX1rnVuH.mjs";
5
+ import "./input-BXWgdKiS.mjs";
6
+ import "./field-E0IBy4Uw.mjs";
7
+ import { parseId } from "./parse-id-DMs04KM3.mjs";
8
+ import { readBody } from "./body-CXpIB6hY.mjs";
9
+ import { bodyInputFlags } from "./body-flags-D7q87Btw.mjs";
10
+ import { Table, TableUpdateInput, tableView } from "./table-qDD2kApF.mjs";
11
11
 
12
12
  //#region src/commands/table/update.ts
13
13
  var update_default = defineMetabaseCommand({
@@ -1,12 +1,12 @@
1
- import "./command-augment-BH9qgQ5u.mjs";
2
- import { connectionFlags, outputFlags, profileFlag } from "./error-BGH4gxGN.mjs";
3
- import { defineMetabaseCommand } from "./runtime-DgHh4T6t.mjs";
4
- import { renderSummary } from "./capabilities-7L9GVMd_.mjs";
5
- import "./input-BZwm4yby.mjs";
6
- import { Field, FieldUpdateInput, fieldView } from "./field-MGxpNQUH.mjs";
7
- import { parseId } from "./parse-id-sKNP6yu5.mjs";
8
- import { readBody } from "./body-89w3r7In.mjs";
9
- import { bodyInputFlags } from "./body-flags-D78h_-Ua.mjs";
1
+ import "./command-augment-CAur0XOQ.mjs";
2
+ import { connectionFlags, outputFlags, profileFlag } from "./error-BOi_ux9O.mjs";
3
+ import { defineMetabaseCommand } from "./runtime-7JTC-usO.mjs";
4
+ import { renderSummary } from "./capabilities-BX1rnVuH.mjs";
5
+ import "./input-BXWgdKiS.mjs";
6
+ import { Field, FieldUpdateInput, fieldView } from "./field-E0IBy4Uw.mjs";
7
+ import { parseId } from "./parse-id-DMs04KM3.mjs";
8
+ import { readBody } from "./body-CXpIB6hY.mjs";
9
+ import { bodyInputFlags } from "./body-flags-D7q87Btw.mjs";
10
10
 
11
11
  //#region src/commands/field/update.ts
12
12
  var update_default = defineMetabaseCommand({
@@ -1,14 +1,14 @@
1
- import "./command-augment-BH9qgQ5u.mjs";
2
- import { connectionFlags, outputFlags, profileFlag } from "./error-BGH4gxGN.mjs";
3
- import { defineMetabaseCommand } from "./runtime-DgHh4T6t.mjs";
4
- import { renderSummary } from "./capabilities-7L9GVMd_.mjs";
5
- import "./input-BZwm4yby.mjs";
6
- import { parseId } from "./parse-id-sKNP6yu5.mjs";
7
- import { readBody } from "./body-89w3r7In.mjs";
8
- import { bodyInputFlags } from "./body-flags-D78h_-Ua.mjs";
9
- import "./validate-B62TRDGV.mjs";
10
- import { SEGMENT_DEFINITION_LABELS, preflightMbql5Query, skipValidateFlag } from "./validate-query-BpiN1CFu.mjs";
11
- import { Segment, SegmentUpdateInput, segmentView } from "./segment-d-708KKO.mjs";
1
+ import "./command-augment-CAur0XOQ.mjs";
2
+ import { connectionFlags, outputFlags, profileFlag } from "./error-BOi_ux9O.mjs";
3
+ import { defineMetabaseCommand } from "./runtime-7JTC-usO.mjs";
4
+ import { renderSummary } from "./capabilities-BX1rnVuH.mjs";
5
+ import "./input-BXWgdKiS.mjs";
6
+ import { parseId } from "./parse-id-DMs04KM3.mjs";
7
+ import { readBody } from "./body-CXpIB6hY.mjs";
8
+ import { bodyInputFlags } from "./body-flags-D7q87Btw.mjs";
9
+ import "./validate-VawhJ5Sc.mjs";
10
+ import { SEGMENT_DEFINITION_LABELS, preflightMbql5Query, skipValidateFlag } from "./validate-query-CSV-TTnd.mjs";
11
+ import { Segment, SegmentUpdateInput, segmentView } from "./segment-B9SEv9V_.mjs";
12
12
 
13
13
  //#region src/commands/segment/update.ts
14
14
  var update_default = defineMetabaseCommand({
@@ -1,15 +1,15 @@
1
- import "./command-augment-BH9qgQ5u.mjs";
2
- import { connectionFlags, outputFlags, profileFlag } from "./error-BGH4gxGN.mjs";
3
- import { defineMetabaseCommand } from "./runtime-DgHh4T6t.mjs";
4
- import { renderSummary } from "./capabilities-7L9GVMd_.mjs";
5
- import "./input-BZwm4yby.mjs";
6
- import { parseId } from "./parse-id-sKNP6yu5.mjs";
7
- import { readBody } from "./body-89w3r7In.mjs";
8
- import { bodyInputFlags } from "./body-flags-D78h_-Ua.mjs";
9
- import "./validate-B62TRDGV.mjs";
10
- import { TRANSFORM_SOURCE_QUERY_LABELS, preflightMbql5Query, skipValidateFlag } from "./validate-query-BpiN1CFu.mjs";
11
- import { Transform, TransformUpdateInput, transformView } from "./transform--dviwMA1.mjs";
12
- import { enrichTransformCollectionError } from "./collection-namespace-w26SavJH.mjs";
1
+ import "./command-augment-CAur0XOQ.mjs";
2
+ import { connectionFlags, outputFlags, profileFlag } from "./error-BOi_ux9O.mjs";
3
+ import { defineMetabaseCommand } from "./runtime-7JTC-usO.mjs";
4
+ import { renderSummary } from "./capabilities-BX1rnVuH.mjs";
5
+ import "./input-BXWgdKiS.mjs";
6
+ import { parseId } from "./parse-id-DMs04KM3.mjs";
7
+ import { readBody } from "./body-CXpIB6hY.mjs";
8
+ import { bodyInputFlags } from "./body-flags-D7q87Btw.mjs";
9
+ import "./validate-VawhJ5Sc.mjs";
10
+ import { TRANSFORM_SOURCE_QUERY_LABELS, preflightMbql5Query, skipValidateFlag } from "./validate-query-CSV-TTnd.mjs";
11
+ import { Transform, TransformUpdateInput, transformView } from "./transform-qczxOAzn.mjs";
12
+ import { enrichTransformCollectionError } from "./collection-namespace-DmKMqLr0.mjs";
13
13
 
14
14
  //#region src/commands/transform/update.ts
15
15
  var update_default = defineMetabaseCommand({
@@ -1,12 +1,12 @@
1
- import { ConfigError } from "./command-augment-BH9qgQ5u.mjs";
2
- import { connectionFlags, outputFlags, profileFlag } from "./error-BGH4gxGN.mjs";
3
- import { defineMetabaseCommand } from "./runtime-DgHh4T6t.mjs";
4
- import { renderSummary } from "./capabilities-7L9GVMd_.mjs";
5
- import "./input-BZwm4yby.mjs";
6
- import { parseId } from "./parse-id-sKNP6yu5.mjs";
7
- import { readBody } from "./body-89w3r7In.mjs";
8
- import { bodyInputFlags } from "./body-flags-D78h_-Ua.mjs";
9
- import { DashboardDetail, Dashcard, DashcardPatchInput, dashcardView } from "./dashboard-FY5UzJ_Z.mjs";
1
+ import { ConfigError } from "./command-augment-CAur0XOQ.mjs";
2
+ import { connectionFlags, outputFlags, profileFlag } from "./error-BOi_ux9O.mjs";
3
+ import { defineMetabaseCommand } from "./runtime-7JTC-usO.mjs";
4
+ import { renderSummary } from "./capabilities-BX1rnVuH.mjs";
5
+ import "./input-BXWgdKiS.mjs";
6
+ import { parseId } from "./parse-id-DMs04KM3.mjs";
7
+ import { readBody } from "./body-CXpIB6hY.mjs";
8
+ import { bodyInputFlags } from "./body-flags-D7q87Btw.mjs";
9
+ import { DashboardDetail, Dashcard, DashcardPatchInput, dashcardView } from "./dashboard-B4bn3z6t.mjs";
10
10
 
11
11
  //#region src/commands/dashboard/update-dashcard.ts
12
12
  var update_dashcard_default = defineMetabaseCommand({
@@ -1,12 +1,12 @@
1
- import "./command-augment-BH9qgQ5u.mjs";
2
- import { connectionFlags, outputFlags, profileFlag } from "./error-BGH4gxGN.mjs";
3
- import { defineMetabaseCommand } from "./runtime-DgHh4T6t.mjs";
4
- import { renderSummary } from "./capabilities-7L9GVMd_.mjs";
5
- import "./input-BZwm4yby.mjs";
6
- import { parseId } from "./parse-id-sKNP6yu5.mjs";
7
- import { readBody } from "./body-89w3r7In.mjs";
8
- import { bodyInputFlags } from "./body-flags-D78h_-Ua.mjs";
9
- import { Document, DocumentUpdateInput, documentView } from "./document-CcfiiV3b.mjs";
1
+ import "./command-augment-CAur0XOQ.mjs";
2
+ import { connectionFlags, outputFlags, profileFlag } from "./error-BOi_ux9O.mjs";
3
+ import { defineMetabaseCommand } from "./runtime-7JTC-usO.mjs";
4
+ import { renderSummary } from "./capabilities-BX1rnVuH.mjs";
5
+ import "./input-BXWgdKiS.mjs";
6
+ import { parseId } from "./parse-id-DMs04KM3.mjs";
7
+ import { readBody } from "./body-CXpIB6hY.mjs";
8
+ import { bodyInputFlags } from "./body-flags-D7q87Btw.mjs";
9
+ import { Document, DocumentUpdateInput, documentView } from "./document-qfwR0r63.mjs";
10
10
 
11
11
  //#region src/commands/document/update.ts
12
12
  var update_default = defineMetabaseCommand({
@@ -1,12 +1,12 @@
1
- import { AbortError, NetworkError, TimeoutError, UnknownError, errorMessage, isNotFoundError } from "./command-augment-BH9qgQ5u.mjs";
2
- import { outputFlags, package_default } from "./error-BGH4gxGN.mjs";
3
- import { HttpError, USER_AGENT, combineAborts, defineMetabaseCommand, parseJson, throwIfAborted } from "./runtime-DgHh4T6t.mjs";
4
- import { renderItem, writeText } from "./capabilities-7L9GVMd_.mjs";
5
- import { promptConfirm } from "./prompt-u4WhE4T5.mjs";
1
+ import { AbortError, NetworkError, TimeoutError, UnknownError, errorMessage } from "./command-augment-CAur0XOQ.mjs";
2
+ import { outputFlags, package_default } from "./error-BOi_ux9O.mjs";
3
+ import { HttpError, USER_AGENT, combineAborts, defineMetabaseCommand, parseJson, throwIfAborted } from "./runtime-7JTC-usO.mjs";
4
+ import { renderItem, writeText } from "./capabilities-BX1rnVuH.mjs";
5
+ import { promptConfirm } from "./prompt-Bc_bHSD0.mjs";
6
+ import { streamProcess } from "./process-DsGf7Mg5.mjs";
6
7
  import { z } from "zod";
7
8
  import { realpathSync } from "node:fs";
8
9
  import { compare, valid } from "semver";
9
- import { spawn } from "node:child_process";
10
10
 
11
11
  //#region src/core/http/npm-registry.ts
12
12
  const DEFAULT_REGISTRY = "https://registry.npmjs.org";
@@ -249,34 +249,6 @@ function compareSemver(a, b) {
249
249
  return compare(a, b);
250
250
  }
251
251
 
252
- //#endregion
253
- //#region src/runtime/process.ts
254
- var ProcessNotFoundError = class extends Error {
255
- command;
256
- constructor(command) {
257
- super(`command not found: ${command}`);
258
- this.name = "ProcessNotFoundError";
259
- this.command = command;
260
- }
261
- };
262
- const stdoutDecoder = new TextDecoder("utf-8");
263
- function streamProcess(command, args, options = {}) {
264
- return new Promise((resolve, reject) => {
265
- const child = spawn(command, args, {
266
- stdio: "inherit",
267
- ...options.shell === true ? { shell: true } : {}
268
- });
269
- child.on("error", (error) => {
270
- if (isNotFoundError(error)) {
271
- reject(new ProcessNotFoundError(command));
272
- return;
273
- }
274
- reject(error);
275
- });
276
- child.on("close", (code) => resolve(code));
277
- });
278
- }
279
-
280
252
  //#endregion
281
253
  //#region src/commands/upgrade.ts
282
254
  const UpgradeCommandSchema = z.object({
@@ -1,7 +1,7 @@
1
- import { ConfigError } from "./command-augment-BH9qgQ5u.mjs";
2
- import { outputFlags } from "./error-BGH4gxGN.mjs";
3
- import { defineMetabaseCommand, parseInteger } from "./runtime-DgHh4T6t.mjs";
4
- import { writeJson, writeText } from "./capabilities-7L9GVMd_.mjs";
1
+ import { ConfigError } from "./command-augment-CAur0XOQ.mjs";
2
+ import { outputFlags } from "./error-BOi_ux9O.mjs";
3
+ import { defineMetabaseCommand, parseInteger } from "./runtime-7JTC-usO.mjs";
4
+ import { writeJson, writeText } from "./capabilities-BX1rnVuH.mjs";
5
5
  import { z } from "zod";
6
6
  import { randomUUID } from "node:crypto";
7
7
 
@@ -1,5 +1,5 @@
1
- import { ConfigError, escapeJsonPointerSegment } from "./command-augment-BH9qgQ5u.mjs";
2
- import { isPlainObject } from "./capabilities-7L9GVMd_.mjs";
1
+ import { ConfigError, escapeJsonPointerSegment } from "./command-augment-CAur0XOQ.mjs";
2
+ import { isPlainObject } from "./capabilities-BX1rnVuH.mjs";
3
3
  import { z } from "zod";
4
4
  import Ajv2020 from "ajv/dist/2020.js";
5
5
  import addFormats from "ajv-formats";
@@ -1,6 +1,6 @@
1
- import { ConfigError } from "./command-augment-BH9qgQ5u.mjs";
2
- import { writeJson } from "./capabilities-7L9GVMd_.mjs";
3
- import { assertNotLegacyEnvelopeWrappingMbql5, isMbql5Query, validateQuery } from "./validate-B62TRDGV.mjs";
1
+ import { ConfigError } from "./command-augment-CAur0XOQ.mjs";
2
+ import { writeJson } from "./capabilities-BX1rnVuH.mjs";
3
+ import { assertNotLegacyEnvelopeWrappingMbql5, isMbql5Query, validateQuery } from "./validate-VawhJ5Sc.mjs";
4
4
 
5
5
  //#region src/commands/validate-query.ts
6
6
  const skipValidateFlag = { "skip-validate": {
@@ -1,9 +1,9 @@
1
- import "./command-augment-BH9qgQ5u.mjs";
2
- import { connectionFlags, outputFlags, profileFlag } from "./error-BGH4gxGN.mjs";
3
- import { defineMetabaseCommand } from "./runtime-DgHh4T6t.mjs";
4
- import { formatScalar, renderSummary } from "./capabilities-7L9GVMd_.mjs";
5
- import { FieldValues, fieldValuesView } from "./field-MGxpNQUH.mjs";
6
- import { parseId } from "./parse-id-sKNP6yu5.mjs";
1
+ import "./command-augment-CAur0XOQ.mjs";
2
+ import { connectionFlags, outputFlags, profileFlag } from "./error-BOi_ux9O.mjs";
3
+ import { defineMetabaseCommand } from "./runtime-7JTC-usO.mjs";
4
+ import { formatScalar, renderSummary } from "./capabilities-BX1rnVuH.mjs";
5
+ import { FieldValues, fieldValuesView } from "./field-E0IBy4Uw.mjs";
6
+ import { parseId } from "./parse-id-DMs04KM3.mjs";
7
7
 
8
8
  //#region src/commands/field/values.ts
9
9
  var values_default = defineMetabaseCommand({
@@ -1,5 +1,5 @@
1
- import { MetabaseError, NetworkError, TimeoutError, errorMessage } from "./command-augment-BH9qgQ5u.mjs";
2
- import { HttpError, createClient, probeServer } from "./runtime-DgHh4T6t.mjs";
1
+ import { MetabaseError, NetworkError, TimeoutError, errorMessage } from "./command-augment-CAur0XOQ.mjs";
2
+ import { HttpError, createClient, probeServer } from "./runtime-7JTC-usO.mjs";
3
3
  import { z } from "zod";
4
4
 
5
5
  //#region src/domain/user.ts
@@ -20,11 +20,11 @@ const CurrentUserCompact = CurrentUser.pick({
20
20
  //#region src/core/auth/verify.ts
21
21
  const VERIFY_TIMEOUT_MS = 15e3;
22
22
  const USER_PATH = "/api/user/current";
23
- async function verifyAndProbe(url, apiKey) {
23
+ async function verifyAndProbe(url, credential, refresh) {
24
24
  const client = createClient({
25
25
  url,
26
- apiKey
27
- });
26
+ credential
27
+ }, refresh === void 0 ? {} : { refreshCredential: refresh });
28
28
  const userPromise = client.requestParsed(CurrentUser, USER_PATH, {
29
29
  timeoutMs: VERIFY_TIMEOUT_MS,
30
30
  retries: 0
@@ -1,10 +1,10 @@
1
- import "./command-augment-BH9qgQ5u.mjs";
2
- import { connectionFlags, outputFlags, profileFlag } from "./error-BGH4gxGN.mjs";
3
- import { defineMetabaseCommand } from "./runtime-DgHh4T6t.mjs";
4
- import { renderSummary } from "./capabilities-7L9GVMd_.mjs";
5
- import { parseId } from "./parse-id-sKNP6yu5.mjs";
6
- import { DEFAULT_INTERVAL_MS, DEFAULT_TIMEOUT_MS } from "./poll-Cyw-dQi4.mjs";
7
- import { SyncTaskOrIdle, formatSyncTask, pollSyncTask, syncTaskIdleView, syncTaskView, throwIfFailedTask } from "./poll-task-BG0oVnfZ.mjs";
1
+ import "./command-augment-CAur0XOQ.mjs";
2
+ import { connectionFlags, outputFlags, profileFlag } from "./error-BOi_ux9O.mjs";
3
+ import { defineMetabaseCommand } from "./runtime-7JTC-usO.mjs";
4
+ import { renderSummary } from "./capabilities-BX1rnVuH.mjs";
5
+ import { parseId } from "./parse-id-DMs04KM3.mjs";
6
+ import { DEFAULT_INTERVAL_MS, DEFAULT_TIMEOUT_MS } from "./poll-13tgWrN_.mjs";
7
+ import { SyncTaskOrIdle, formatSyncTask, pollSyncTask, syncTaskIdleView, syncTaskView, throwIfFailedTask } from "./poll-task-BuAHsDEK.mjs";
8
8
 
9
9
  //#region src/commands/git-sync/wait.ts
10
10
  const WaitResult = SyncTaskOrIdle;
@@ -1,5 +1,5 @@
1
- import { parseId } from "./parse-id-sKNP6yu5.mjs";
2
- import { DEFAULT_INTERVAL_MS, DEFAULT_TIMEOUT_MS } from "./poll-Cyw-dQi4.mjs";
1
+ import { parseId } from "./parse-id-DMs04KM3.mjs";
2
+ import { DEFAULT_INTERVAL_MS, DEFAULT_TIMEOUT_MS } from "./poll-13tgWrN_.mjs";
3
3
 
4
4
  //#region src/commands/wait-flags.ts
5
5
  const waitScheduleFlags = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metabase/cli",
3
- "version": "0.1.12",
3
+ "version": "0.1.14",
4
4
  "description": "Metabase CLI",
5
5
  "license": "AGPL-3.0",
6
6
  "repository": {
@@ -12,7 +12,7 @@ Top-level command groups (run `mb <group> --help` to discover verbs):
12
12
 
13
13
  ```
14
14
  auth | db | table | field | query | card | dashboard | snippet | segment | measure | collection
15
- document | transform | transform-job | setting | search | git-sync | setup | eid | uuid | upgrade | skills
15
+ document | transform | transform-job | transform-tag | setting | search | git-sync | setup | eid | uuid | upgrade | skills
16
16
  ```
17
17
 
18
18
  The patterns below — auth, flag conventions, output flags, body input — apply across **every** group. Per-command flags, examples, and output schemas live in `mb __manifest` (see below). A few flows have their own specialized skills (see "Specialized skills"). When a card needs a query, prefer MBQL over native SQL (portable, pre-flight-validated) — load `mbql`; fall back to native SQL when MBQL can't express it.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: transform
3
- description: Author and run Metabase transforms via `mb` — body shape (native SQL + MBQL 5), create + run-with-wait, run inspection, cancel, the `update`-vs-recreate iteration rule, and the writable-keys-only PATCH contract. Load when the user touches transforms — "create a transform", "run a transform", "fix a failing transform", "list transform runs", "cancel a running transform", or anything `mb transform …`.
3
+ description: Author and run Metabase transforms via `mb` — body shape (native SQL + MBQL 5), create + run-with-wait, run inspection, dependencies, cancel, the `update`-vs-recreate iteration rule, the writable-keys-only PATCH contract, plus transform tags and tag-driven transform-job schedules. Load when the user touches transforms — "create a transform", "run a transform", "fix a failing transform", "list transform runs", "cancel a running transform", "manage transform tags", "run a transform job", or anything `mb transform …` / `mb transform-job …` / `mb transform-tag …`.
4
4
  allowed-tools: Read, Write, Edit, Bash, AskUserQuestion
5
5
  ---
6
6
 
@@ -62,7 +62,8 @@ Notes:
62
62
 
63
63
  ```bash
64
64
  mb transform list --profile <name> --json
65
- mb transform get <id> --profile <name> --full --json # full transform incl. last run summary
65
+ mb transform get <id> --profile <name> --full --json # full transform incl. last run summary
66
+ mb transform dependencies <id> --profile <name> --json # upstream transforms this one must run after
66
67
  ```
67
68
 
68
69
  After a run the table physically exists in the warehouse, but Metabase addresses tables/columns by numeric id, so **MBQL and the UI can't reference a brand-new table until the instance syncs** (native SQL — a native `card` or `mb query` against `<schema>.<name>` — reads it immediately). Run and register in one step with `--sync`.
@@ -139,6 +140,8 @@ mb transform update <id> --file ./.scratch/patch.json --profile <name> --json
139
140
  mb transform update <id> --body '{"tag_ids":[1,3]}' --profile <name> --json
140
141
  ```
141
142
 
143
+ `tag_ids` are the integer ids of **transform tags** — discover and manage them with the `transform-tag` group: `mb transform-tag list --json` (find ids; the four built-ins `hourly`/`daily`/`weekly`/`monthly` are seeded), `mb transform-tag create --body '{"name":"nightly"}' --json`, `mb transform-tag update <id>`, `mb transform-tag delete <id>`. Tags are also how a `transform-job` selects what to run — a job executes every transform carrying one of the job's tags (see "Transform jobs" below).
144
+
142
145
  If you really must round-trip, project to the writable subset:
143
146
 
144
147
  ```bash
@@ -197,7 +200,18 @@ Removes the definition. Whether the materialized table is dropped depends on the
197
200
 
198
201
  ## Transform jobs (schedules)
199
202
 
200
- A schedule lives in a separate resource (`transform-job`) and references one or more transform ids. Create with the same body-input pattern (`--file body.json`); see `mb transform-job --help` for the verb list. Most ad-hoc agent work is one-off `transform run`, not job authoring.
203
+ A schedule lives in a separate resource (`transform-job`). A job carries **tags** (`tag_ids`), not transform ids: each run executes every transform carrying one of the job's tags. You add a transform to a job by tagging the transform (`transform update <id> --body '{"tag_ids":[…]}'`), not by listing it on the job. Create/update with the same body-input pattern (`--file body.json`).
204
+
205
+ Key verbs (`mb transform-job --help` for the full list):
206
+
207
+ ```bash
208
+ mb transform-job transforms <id> --profile <name> --json # preview which transforms this job resolves to (by tag)
209
+ mb transform-job run <id> --profile <name> --json # trigger a job now; runs all its tagged transforms
210
+ mb transform-job run <id> --force-refresh --profile <name> --json # also re-run dependencies that are already fresh
211
+ mb transform-job set-active false --profile <name> --json # disable every job at once (true re-enables); admin only
212
+ ```
213
+
214
+ `transform-job run` is fire-and-forget — the server returns `{message, job_run_id}` immediately, with no per-job-run polling (no `--wait`). Most ad-hoc agent work is one-off `transform run`, not job authoring.
201
215
 
202
216
  ## Don't (transform-specific)
203
217
 
@@ -1,10 +0,0 @@
1
- import "./command-augment-BH9qgQ5u.mjs";
2
- import "./error-BGH4gxGN.mjs";
3
- import "./runtime-DgHh4T6t.mjs";
4
- import "./capabilities-7L9GVMd_.mjs";
5
- import "./parse-id-sKNP6yu5.mjs";
6
- import "./poll-Cyw-dQi4.mjs";
7
- import "./poll-task-BG0oVnfZ.mjs";
8
- import { SyncSettingsUpdateResult, add_collection_default, setCollectionRemoteSynced, syncSettingsUpdateView } from "./add-collection-DEME4IOy.mjs";
9
-
10
- export { add_collection_default as default };
@@ -1,19 +0,0 @@
1
- import { defineCommand } from "citty";
2
-
3
- //#region src/commands/auth/index.ts
4
- var auth_default = defineCommand({
5
- meta: {
6
- name: "auth",
7
- description: "Authenticate against a Metabase instance"
8
- },
9
- default: "login",
10
- subCommands: {
11
- login: () => import("./login-C0VFlX8y.mjs").then((m) => m.default),
12
- status: () => import("./status-CvUuZVvC.mjs").then((m) => m.default),
13
- list: () => import("./list-BtNboYpZ.mjs").then((m) => m.default),
14
- logout: () => import("./logout-BUgUTFol.mjs").then((m) => m.default)
15
- }
16
- });
17
-
18
- //#endregion
19
- export { auth_default as default };
@@ -1,20 +0,0 @@
1
- import { defineCommand } from "citty";
2
-
3
- //#region src/commands/card/index.ts
4
- var card_default = defineCommand({
5
- meta: {
6
- name: "card",
7
- description: "Manage Metabase cards (questions, models, metrics)"
8
- },
9
- subCommands: {
10
- list: () => import("./list-Df4MhR2A.mjs").then((mod) => mod.default),
11
- get: () => import("./get-8nAjRL2H.mjs").then((mod) => mod.default),
12
- query: () => import("./query-C2xqnz24.mjs").then((mod) => mod.default),
13
- create: () => import("./create-DoeqRVmx.mjs").then((mod) => mod.default),
14
- update: () => import("./update-Dty6LvU2.mjs").then((mod) => mod.default),
15
- archive: () => import("./archive-BNioNJtG.mjs").then((mod) => mod.default)
16
- }
17
- });
18
-
19
- //#endregion
20
- export { card_default as default };
@@ -1,20 +0,0 @@
1
- import { defineCommand } from "citty";
2
-
3
- //#region src/commands/collection/index.ts
4
- var collection_default = defineCommand({
5
- meta: {
6
- name: "collection",
7
- description: "Manage Metabase collections"
8
- },
9
- subCommands: {
10
- list: () => import("./list-CyIgwqFB.mjs").then((mod) => mod.default),
11
- get: () => import("./get-Bcr_5fAb.mjs").then((mod) => mod.default),
12
- items: () => import("./items-DC985V8K.mjs").then((mod) => mod.default),
13
- tree: () => import("./tree-C0MFcweC.mjs").then((mod) => mod.default),
14
- create: () => import("./create-D6QqOX6u.mjs").then((mod) => mod.default),
15
- archive: () => import("./archive-BtDvBsr8.mjs").then((mod) => mod.default)
16
- }
17
- });
18
-
19
- //#endregion
20
- export { collection_default as default };
@@ -1,21 +0,0 @@
1
- import { defineCommand } from "citty";
2
-
3
- //#region src/commands/dashboard/index.ts
4
- var dashboard_default = defineCommand({
5
- meta: {
6
- name: "dashboard",
7
- description: "Manage Metabase dashboards"
8
- },
9
- subCommands: {
10
- list: () => import("./list-OGkVAG6b.mjs").then((mod) => mod.default),
11
- get: () => import("./get-B2vGW7Aw.mjs").then((mod) => mod.default),
12
- cards: () => import("./cards-L9jksUMD.mjs").then((mod) => mod.default),
13
- create: () => import("./create-Bu9Jayck.mjs").then((mod) => mod.default),
14
- update: () => import("./update-BqsGGrzx.mjs").then((mod) => mod.default),
15
- "update-dashcard": () => import("./update-dashcard-BkJaVVvf.mjs").then((mod) => mod.default),
16
- archive: () => import("./archive-CMeTr8jv.mjs").then((mod) => mod.default)
17
- }
18
- });
19
-
20
- //#endregion
21
- export { dashboard_default as default };
@@ -1,22 +0,0 @@
1
- import { defineCommand } from "citty";
2
-
3
- //#region src/commands/db/index.ts
4
- var db_default = defineCommand({
5
- meta: {
6
- name: "db",
7
- description: "Inspect and sync Metabase databases",
8
- alias: "database"
9
- },
10
- subCommands: {
11
- list: () => import("./list-Cnb9mQdd.mjs").then((m) => m.default),
12
- get: () => import("./get-ug26gcOI.mjs").then((m) => m.default),
13
- metadata: () => import("./metadata-Dwkcsa1c.mjs").then((m) => m.default),
14
- schemas: () => import("./schemas-CWL8gv1C.mjs").then((m) => m.default),
15
- "schema-tables": () => import("./schema-tables-DjmNwrlT.mjs").then((m) => m.default),
16
- "sync-schema": () => import("./sync-schema-CjjAYTbO.mjs").then((m) => m.default),
17
- "rescan-values": () => import("./rescan-values-CuLQ9UHP.mjs").then((m) => m.default)
18
- }
19
- });
20
-
21
- //#endregion
22
- export { db_default as default };
@@ -1,19 +0,0 @@
1
- import { defineCommand } from "citty";
2
-
3
- //#region src/commands/document/index.ts
4
- var document_default = defineCommand({
5
- meta: {
6
- name: "document",
7
- description: "Manage Metabase documents"
8
- },
9
- subCommands: {
10
- list: () => import("./list-CtAFlkLe.mjs").then((mod) => mod.default),
11
- get: () => import("./get-B_BJ10pV.mjs").then((mod) => mod.default),
12
- create: () => import("./create-8hMjPz7j.mjs").then((mod) => mod.default),
13
- update: () => import("./update-CHUUY-IB.mjs").then((mod) => mod.default),
14
- archive: () => import("./archive-BFk-oupo.mjs").then((mod) => mod.default)
15
- }
16
- });
17
-
18
- //#endregion
19
- export { document_default as default };