@enjoys/context-engine 1.7.0 → 1.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (484) hide show
  1. package/data/color/abap.json +8 -8
  2. package/data/color/angular.json +11 -36
  3. package/data/color/apex.json +8 -8
  4. package/data/color/awk.json +40 -80
  5. package/data/color/azcli.json +8 -8
  6. package/data/color/bicep.json +8 -8
  7. package/data/color/c.json +4 -4
  8. package/data/color/caddy.json +8 -8
  9. package/data/color/cameligo.json +8 -8
  10. package/data/color/clojure.json +8 -8
  11. package/data/color/coffee.json +10 -17
  12. package/data/color/cpp.json +4 -4
  13. package/data/color/crontab.json +8 -8
  14. package/data/color/csharp.json +49 -109
  15. package/data/color/css.json +8 -32
  16. package/data/color/cypher.json +8 -8
  17. package/data/color/docker-compose.json +8 -8
  18. package/data/color/dockerfile.json +8 -8
  19. package/data/color/doctest.json +8 -8
  20. package/data/color/dotenv.json +8 -8
  21. package/data/color/ecl.json +8 -8
  22. package/data/color/elixir.json +49 -109
  23. package/data/color/flow9.json +8 -8
  24. package/data/color/freemarker2.json +61 -121
  25. package/data/color/go.json +4 -4
  26. package/data/color/graphql.json +8 -8
  27. package/data/color/hcl.json +8 -8
  28. package/data/color/html.json +13 -43
  29. package/data/color/ini.json +8 -8
  30. package/data/color/java.json +49 -109
  31. package/data/color/javascript.json +13 -43
  32. package/data/color/json.json +8 -8
  33. package/data/color/julia.json +49 -109
  34. package/data/color/less.json +10 -17
  35. package/data/color/lexon.json +8 -8
  36. package/data/color/liquid.json +61 -121
  37. package/data/color/lua.json +4 -4
  38. package/data/color/m3.json +8 -8
  39. package/data/color/makefile.json +8 -8
  40. package/data/color/markdown.json +61 -121
  41. package/data/color/mdx.json +61 -121
  42. package/data/color/mips.json +8 -8
  43. package/data/color/msdax.json +8 -8
  44. package/data/color/mysql.json +8 -8
  45. package/data/color/nestjs.json +52 -18
  46. package/data/color/nextjs.json +60 -22
  47. package/data/color/nginx.json +8 -8
  48. package/data/color/objective-c.json +4 -4
  49. package/data/color/pascal.json +8 -8
  50. package/data/color/pascaligo.json +8 -8
  51. package/data/color/perl.json +4 -4
  52. package/data/color/pgsql.json +8 -8
  53. package/data/color/php.json +13 -43
  54. package/data/color/pla.json +8 -8
  55. package/data/color/postiats.json +8 -8
  56. package/data/color/powerquery.json +8 -8
  57. package/data/color/powershell.json +40 -80
  58. package/data/color/protobuf.json +8 -8
  59. package/data/color/python.json +49 -109
  60. package/data/color/qsharp.json +8 -8
  61. package/data/color/r.json +49 -109
  62. package/data/color/razor.json +61 -121
  63. package/data/color/react.json +65 -93
  64. package/data/color/redis-cli.json +8 -8
  65. package/data/color/redis.json +8 -8
  66. package/data/color/redshift.json +8 -8
  67. package/data/color/restructuredtext.json +8 -8
  68. package/data/color/ruby.json +49 -109
  69. package/data/color/rust.json +4 -4
  70. package/data/color/sb.json +8 -8
  71. package/data/color/scala.json +2 -12
  72. package/data/color/scheme.json +8 -8
  73. package/data/color/scss.json +10 -17
  74. package/data/color/shadcn.json +11 -36
  75. package/data/color/shell.json +8 -48
  76. package/data/color/sol.json +8 -8
  77. package/data/color/sparql.json +8 -8
  78. package/data/color/sql.json +8 -8
  79. package/data/color/ssh_config.json +8 -8
  80. package/data/color/st.json +8 -8
  81. package/data/color/swift.json +56 -37
  82. package/data/color/systemd.json +8 -8
  83. package/data/color/systemverilog.json +8 -8
  84. package/data/color/tailwindcss.json +6 -24
  85. package/data/color/tcl.json +40 -80
  86. package/data/color/toml.json +8 -8
  87. package/data/color/twig.json +61 -121
  88. package/data/color/typescript.json +13 -43
  89. package/data/color/vb.json +49 -109
  90. package/data/color/wgsl.json +8 -8
  91. package/data/color/xml.json +61 -121
  92. package/data/color/yaml.json +8 -8
  93. package/data/commands/air.json +117 -59
  94. package/data/commands/alembic.json +487 -301
  95. package/data/commands/ansible.json +236 -24
  96. package/data/commands/apt-get.json +244 -81
  97. package/data/commands/apt.json +294 -91
  98. package/data/commands/atlas.json +956 -426
  99. package/data/commands/aws-vault.json +266 -140
  100. package/data/commands/bazel.json +328 -103
  101. package/data/commands/brew.json +444 -140
  102. package/data/commands/btop.json +132 -59
  103. package/data/commands/cabal.json +1 -1
  104. package/data/commands/cd.json +90 -48
  105. package/data/commands/choco.json +430 -134
  106. package/data/commands/chown.json +139 -59
  107. package/data/commands/clickhouse-client.json +183 -74
  108. package/data/commands/cmake.json +301 -110
  109. package/data/commands/cockroach.json +269 -92
  110. package/data/commands/conda.json +435 -94
  111. package/data/commands/consul.json +377 -125
  112. package/data/commands/crystal.json +1 -1
  113. package/data/commands/dbmate.json +498 -257
  114. package/data/commands/django-admin.json +489 -86
  115. package/data/commands/dnf.json +428 -137
  116. package/data/commands/dockerfile.json +1 -1
  117. package/data/commands/dotnet.json +1 -1
  118. package/data/commands/drizzle-kit.json +435 -217
  119. package/data/commands/erlang.json +1 -1
  120. package/data/commands/eslint.json +193 -69
  121. package/data/commands/expo.json +65 -65
  122. package/data/commands/firebase.json +406 -97
  123. package/data/commands/flask.json +254 -79
  124. package/data/commands/flyctl.json +657 -148
  125. package/data/commands/flyway.json +580 -261
  126. package/data/commands/ghc.json +1 -1
  127. package/data/commands/glab.json +577 -116
  128. package/data/commands/gofmt.json +101 -51
  129. package/data/commands/golangci-lint.json +243 -89
  130. package/data/commands/gradle.json +182 -44
  131. package/data/commands/gunicorn.json +243 -83
  132. package/data/commands/hg.json +502 -92
  133. package/data/commands/htop.json +151 -56
  134. package/data/commands/influx.json +363 -119
  135. package/data/commands/iptables.json +251 -86
  136. package/data/commands/javac.json +1 -1
  137. package/data/commands/just.json +262 -93
  138. package/data/commands/linode-cli.json +360 -117
  139. package/data/commands/linux.json +1 -1
  140. package/data/commands/liquibase.json +739 -399
  141. package/data/commands/manifest.json +1 -1
  142. package/data/commands/mix.json +1 -1
  143. package/data/commands/mongosh.json +174 -73
  144. package/data/commands/mvn.json +179 -45
  145. package/data/commands/mysql.json +1 -1
  146. package/data/commands/nest.json +270 -69
  147. package/data/commands/netlify.json +384 -92
  148. package/data/commands/next.json +221 -71
  149. package/data/commands/nft.json +299 -105
  150. package/data/commands/nim.json +1 -1
  151. package/data/commands/nomad.json +398 -139
  152. package/data/commands/npx.json +141 -58
  153. package/data/commands/nx.json +348 -82
  154. package/data/commands/ocaml.json +1 -1
  155. package/data/commands/opam.json +1 -1
  156. package/data/commands/packer.json +273 -92
  157. package/data/commands/pacman.json +228 -82
  158. package/data/commands/pg_dump.json +233 -83
  159. package/data/commands/pg_restore.json +224 -74
  160. package/data/commands/pipenv.json +300 -79
  161. package/data/commands/pipx.json +241 -53
  162. package/data/commands/poetry.json +521 -96
  163. package/data/commands/prettier.json +201 -71
  164. package/data/commands/pulumi.json +409 -130
  165. package/data/commands/pytest.json +240 -92
  166. package/data/commands/railway.json +343 -91
  167. package/data/commands/react-native.json +57 -57
  168. package/data/commands/rebar3.json +1 -1
  169. package/data/commands/render.json +235 -72
  170. package/data/commands/rustc.json +1 -1
  171. package/data/commands/rustup.json +339 -103
  172. package/data/commands/scala.json +1 -1
  173. package/data/commands/scp.json +146 -60
  174. package/data/commands/sequelize.json +629 -342
  175. package/data/commands/sqlite3.json +167 -68
  176. package/data/commands/stack.json +1 -1
  177. package/data/commands/supabase.json +433 -108
  178. package/data/commands/svn.json +509 -75
  179. package/data/commands/swiftc.json +1 -1
  180. package/data/commands/terraform.json +1505 -824
  181. package/data/commands/terragrunt.json +217 -83
  182. package/data/commands/top.json +167 -61
  183. package/data/commands/tsc.json +234 -85
  184. package/data/commands/turbo.json +263 -72
  185. package/data/commands/typeorm.json +427 -262
  186. package/data/commands/ufw.json +254 -76
  187. package/data/commands/unzip.json +154 -59
  188. package/data/commands/uvicorn.json +215 -73
  189. package/data/commands/vault.json +462 -144
  190. package/data/commands/vercel.json +410 -98
  191. package/data/commands/vite.json +239 -63
  192. package/data/commands/wasm-pack.json +254 -90
  193. package/data/commands/winget.json +466 -131
  194. package/data/commands/yum.json +323 -98
  195. package/data/commands/zig.json +1 -1
  196. package/data/commands/zip.json +159 -59
  197. package/data/completion/abap.json +423 -341
  198. package/data/completion/apex.json +423 -43
  199. package/data/completion/awk.json +1 -45
  200. package/data/completion/azcli.json +58 -115
  201. package/data/completion/bicep.json +90 -90
  202. package/data/completion/cameligo.json +533 -487
  203. package/data/completion/clojure.json +533 -488
  204. package/data/completion/coffee.json +522 -479
  205. package/data/completion/crontab.json +1 -34
  206. package/data/completion/cypher.json +687 -628
  207. package/data/completion/docker-compose.json +962 -959
  208. package/data/completion/dockerfile.json +1270 -1285
  209. package/data/completion/doctest.json +489 -526
  210. package/data/completion/ecl.json +588 -598
  211. package/data/completion/elixir.json +709 -649
  212. package/data/completion/flow9.json +401 -376
  213. package/data/completion/freemarker2.json +632 -579
  214. package/data/completion/go.json +10037 -10037
  215. package/data/completion/julia.json +698 -638
  216. package/data/completion/less.json +412 -378
  217. package/data/completion/lexon.json +80 -52
  218. package/data/completion/liquid.json +544 -499
  219. package/data/completion/lua.json +2535 -2634
  220. package/data/completion/m3.json +643 -587
  221. package/data/completion/makefile.json +1 -56
  222. package/data/completion/markdown.json +1 -56
  223. package/data/completion/mips.json +83 -49
  224. package/data/completion/msdax.json +511 -467
  225. package/data/completion/mysql.json +676 -638
  226. package/data/completion/objective-c.json +687 -629
  227. package/data/completion/pascal.json +709 -649
  228. package/data/completion/pascaligo.json +544 -517
  229. package/data/completion/perl.json +1 -89
  230. package/data/completion/pgsql.json +698 -638
  231. package/data/completion/postiats.json +445 -417
  232. package/data/completion/powerquery.json +621 -587
  233. package/data/completion/powershell.json +1 -166
  234. package/data/completion/protobuf.json +7 -117
  235. package/data/completion/qsharp.json +643 -587
  236. package/data/completion/r.json +2469 -1985
  237. package/data/completion/razor.json +533 -488
  238. package/data/completion/redis-cli.json +120 -60
  239. package/data/completion/redis.json +423 -389
  240. package/data/completion/redshift.json +698 -638
  241. package/data/completion/restructuredtext.json +544 -499
  242. package/data/completion/ruby.json +1930 -1531
  243. package/data/completion/sb.json +434 -398
  244. package/data/completion/scheme.json +555 -510
  245. package/data/completion/scss.json +544 -500
  246. package/data/completion/shell.json +115 -70
  247. package/data/completion/sol.json +720 -660
  248. package/data/completion/sparql.json +643 -587
  249. package/data/completion/st.json +698 -638
  250. package/data/completion/systemverilog.json +698 -638
  251. package/data/completion/tailwindcss.json +2821 -284
  252. package/data/completion/tcl.json +544 -499
  253. package/data/completion/twig.json +555 -510
  254. package/data/completion/vb.json +720 -660
  255. package/data/completion/wgsl.json +709 -649
  256. package/data/foldingRange/abap.json +0 -24
  257. package/data/foldingRange/angular.json +0 -18
  258. package/data/foldingRange/apex.json +0 -24
  259. package/data/foldingRange/awk.json +0 -18
  260. package/data/foldingRange/azcli.json +0 -18
  261. package/data/foldingRange/bicep.json +0 -18
  262. package/data/foldingRange/c.json +0 -24
  263. package/data/foldingRange/caddy.json +0 -18
  264. package/data/foldingRange/cameligo.json +0 -18
  265. package/data/foldingRange/clojure.json +0 -18
  266. package/data/foldingRange/coffee.json +0 -18
  267. package/data/foldingRange/cpp.json +0 -24
  268. package/data/foldingRange/crontab.json +0 -18
  269. package/data/foldingRange/csharp.json +0 -24
  270. package/data/foldingRange/css.json +5 -19
  271. package/data/foldingRange/cypher.json +0 -18
  272. package/data/foldingRange/dart.json +0 -24
  273. package/data/foldingRange/docker-compose.json +0 -18
  274. package/data/foldingRange/dockerfile.json +0 -18
  275. package/data/foldingRange/doctest.json +0 -18
  276. package/data/foldingRange/dotenv.json +0 -18
  277. package/data/foldingRange/ecl.json +0 -30
  278. package/data/foldingRange/elixir.json +0 -24
  279. package/data/foldingRange/flow9.json +0 -12
  280. package/data/foldingRange/freemarker2.json +0 -12
  281. package/data/foldingRange/go.json +0 -24
  282. package/data/foldingRange/graphql.json +0 -12
  283. package/data/foldingRange/hcl.json +0 -12
  284. package/data/foldingRange/html.json +0 -18
  285. package/data/foldingRange/ini.json +0 -18
  286. package/data/foldingRange/java.json +0 -24
  287. package/data/foldingRange/javascript.json +0 -24
  288. package/data/foldingRange/json.json +0 -12
  289. package/data/foldingRange/julia.json +0 -12
  290. package/data/foldingRange/kotlin.json +0 -18
  291. package/data/foldingRange/less.json +0 -18
  292. package/data/foldingRange/lexon.json +0 -12
  293. package/data/foldingRange/liquid.json +0 -18
  294. package/data/foldingRange/lua.json +0 -24
  295. package/data/foldingRange/m3.json +0 -18
  296. package/data/foldingRange/makefile.json +0 -12
  297. package/data/foldingRange/markdown.json +0 -12
  298. package/data/foldingRange/mdx.json +0 -18
  299. package/data/foldingRange/mips.json +0 -18
  300. package/data/foldingRange/msdax.json +0 -12
  301. package/data/foldingRange/mysql.json +0 -18
  302. package/data/foldingRange/nestjs.json +0 -24
  303. package/data/foldingRange/nextjs.json +0 -24
  304. package/data/foldingRange/nginx.json +0 -12
  305. package/data/foldingRange/objective-c.json +0 -18
  306. package/data/foldingRange/pascal.json +0 -18
  307. package/data/foldingRange/pascaligo.json +0 -12
  308. package/data/foldingRange/perl.json +0 -18
  309. package/data/foldingRange/pgsql.json +0 -18
  310. package/data/foldingRange/php.json +0 -18
  311. package/data/foldingRange/pla.json +0 -12
  312. package/data/foldingRange/postiats.json +0 -18
  313. package/data/foldingRange/powerquery.json +0 -12
  314. package/data/foldingRange/powershell.json +0 -18
  315. package/data/foldingRange/protobuf.json +0 -12
  316. package/data/foldingRange/python.json +0 -18
  317. package/data/foldingRange/qsharp.json +0 -12
  318. package/data/foldingRange/r.json +0 -12
  319. package/data/foldingRange/razor.json +0 -18
  320. package/data/foldingRange/react.json +0 -24
  321. package/data/foldingRange/redis-cli.json +0 -12
  322. package/data/foldingRange/redis.json +0 -18
  323. package/data/foldingRange/redshift.json +0 -18
  324. package/data/foldingRange/restructuredtext.json +0 -12
  325. package/data/foldingRange/ruby.json +0 -24
  326. package/data/foldingRange/rust.json +0 -18
  327. package/data/foldingRange/sb.json +0 -18
  328. package/data/foldingRange/scala.json +0 -18
  329. package/data/foldingRange/scheme.json +0 -12
  330. package/data/foldingRange/scss.json +0 -18
  331. package/data/foldingRange/shadcn.json +0 -24
  332. package/data/foldingRange/shell.json +0 -18
  333. package/data/foldingRange/sol.json +0 -18
  334. package/data/foldingRange/sparql.json +0 -12
  335. package/data/foldingRange/sql.json +0 -18
  336. package/data/foldingRange/ssh_config.json +0 -12
  337. package/data/foldingRange/st.json +0 -18
  338. package/data/foldingRange/swift.json +0 -18
  339. package/data/foldingRange/systemd.json +0 -12
  340. package/data/foldingRange/systemverilog.json +0 -12
  341. package/data/foldingRange/tailwindcss.json +0 -12
  342. package/data/foldingRange/tcl.json +0 -18
  343. package/data/foldingRange/toml.json +0 -12
  344. package/data/foldingRange/twig.json +0 -12
  345. package/data/foldingRange/typescript.json +0 -24
  346. package/data/foldingRange/vb.json +0 -18
  347. package/data/foldingRange/wgsl.json +0 -12
  348. package/data/foldingRange/xml.json +0 -18
  349. package/data/foldingRange/yaml.json +0 -12
  350. package/data/formatting/awk.json +5 -5
  351. package/data/formatting/azcli.json +1 -1
  352. package/data/formatting/c.json +5 -5
  353. package/data/formatting/caddy.json +4 -4
  354. package/data/formatting/cpp.json +5 -5
  355. package/data/formatting/crontab.json +2 -2
  356. package/data/formatting/csharp.json +5 -5
  357. package/data/formatting/dockerfile.json +4 -3
  358. package/data/formatting/dotenv.json +2 -2
  359. package/data/formatting/elixir.json +3 -3
  360. package/data/formatting/go.json +5 -5
  361. package/data/formatting/graphql.json +4 -4
  362. package/data/formatting/hcl.json +8 -8
  363. package/data/formatting/html.json +8 -8
  364. package/data/formatting/ini.json +4 -3
  365. package/data/formatting/java.json +5 -5
  366. package/data/formatting/javascript.json +5 -5
  367. package/data/formatting/json.json +4 -4
  368. package/data/formatting/less.json +8 -4
  369. package/data/formatting/lua.json +5 -5
  370. package/data/formatting/makefile.json +8 -4
  371. package/data/formatting/markdown.json +4 -4
  372. package/data/formatting/mips.json +2 -1
  373. package/data/formatting/mysql.json +1 -1
  374. package/data/formatting/nginx.json +5 -5
  375. package/data/formatting/perl.json +5 -5
  376. package/data/formatting/pgsql.json +1 -1
  377. package/data/formatting/php.json +5 -5
  378. package/data/formatting/powershell.json +5 -5
  379. package/data/formatting/protobuf.json +4 -4
  380. package/data/formatting/python.json +5 -5
  381. package/data/formatting/r.json +6 -6
  382. package/data/formatting/redis-cli.json +2 -2
  383. package/data/formatting/redshift.json +1 -1
  384. package/data/formatting/restructuredtext.json +2 -1
  385. package/data/formatting/ruby.json +5 -5
  386. package/data/formatting/rust.json +5 -5
  387. package/data/formatting/scala.json +6 -2
  388. package/data/formatting/scss.json +8 -4
  389. package/data/formatting/shell.json +1 -16
  390. package/data/formatting/sql.json +5 -5
  391. package/data/formatting/ssh_config.json +4 -3
  392. package/data/formatting/swift.json +6 -2
  393. package/data/formatting/systemd.json +2 -2
  394. package/data/formatting/toml.json +4 -3
  395. package/data/formatting/typescript.json +5 -5
  396. package/data/formatting/xml.json +8 -8
  397. package/data/formatting/yaml.json +4 -3
  398. package/data/links/abap.json +14 -14
  399. package/data/links/apex.json +18 -18
  400. package/data/links/awk.json +20 -20
  401. package/data/links/azcli.json +20 -20
  402. package/data/links/bicep.json +12 -12
  403. package/data/links/c.json +22 -22
  404. package/data/links/caddy.json +22 -22
  405. package/data/links/cameligo.json +20 -20
  406. package/data/links/clojure.json +12 -12
  407. package/data/links/coffee.json +14 -14
  408. package/data/links/cpp.json +22 -22
  409. package/data/links/crontab.json +22 -22
  410. package/data/links/csharp.json +22 -22
  411. package/data/links/cypher.json +18 -18
  412. package/data/links/dart.json +2 -2
  413. package/data/links/docker-compose.json +8 -8
  414. package/data/links/dockerfile.json +22 -22
  415. package/data/links/doctest.json +20 -20
  416. package/data/links/dotenv.json +20 -20
  417. package/data/links/ecl.json +18 -18
  418. package/data/links/elixir.json +12 -12
  419. package/data/links/flow9.json +22 -22
  420. package/data/links/freemarker2.json +10 -10
  421. package/data/links/go.json +23 -23
  422. package/data/links/graphql.json +18 -18
  423. package/data/links/hcl.json +22 -22
  424. package/data/links/html.json +19 -19
  425. package/data/links/ini.json +20 -20
  426. package/data/links/java.json +22 -22
  427. package/data/links/javascript.json +20 -20
  428. package/data/links/json.json +16 -16
  429. package/data/links/julia.json +16 -16
  430. package/data/links/kotlin.json +14 -14
  431. package/data/links/less.json +10 -10
  432. package/data/links/lexon.json +24 -24
  433. package/data/links/liquid.json +8 -8
  434. package/data/links/lua.json +22 -22
  435. package/data/links/m3.json +20 -20
  436. package/data/links/makefile.json +22 -22
  437. package/data/links/markdown.json +25 -25
  438. package/data/links/mdx.json +12 -12
  439. package/data/links/mips.json +22 -22
  440. package/data/links/msdax.json +22 -22
  441. package/data/links/mysql.json +17 -17
  442. package/data/links/nginx.json +22 -22
  443. package/data/links/objective-c.json +14 -14
  444. package/data/links/pascal.json +16 -16
  445. package/data/links/pascaligo.json +20 -20
  446. package/data/links/perl.json +22 -22
  447. package/data/links/pgsql.json +14 -14
  448. package/data/links/php.json +22 -22
  449. package/data/links/pla.json +24 -24
  450. package/data/links/postiats.json +18 -18
  451. package/data/links/powerquery.json +20 -20
  452. package/data/links/powershell.json +24 -24
  453. package/data/links/protobuf.json +22 -22
  454. package/data/links/python.json +27 -22
  455. package/data/links/qsharp.json +20 -20
  456. package/data/links/r.json +21 -21
  457. package/data/links/razor.json +8 -8
  458. package/data/links/redis-cli.json +22 -22
  459. package/data/links/redis.json +22 -22
  460. package/data/links/redshift.json +16 -16
  461. package/data/links/restructuredtext.json +10 -10
  462. package/data/links/ruby.json +22 -22
  463. package/data/links/rust.json +22 -22
  464. package/data/links/sb.json +24 -24
  465. package/data/links/scheme.json +12 -12
  466. package/data/links/scss.json +2 -2
  467. package/data/links/shell.json +1 -6
  468. package/data/links/sol.json +16 -16
  469. package/data/links/sparql.json +18 -18
  470. package/data/links/sql.json +18 -18
  471. package/data/links/ssh_config.json +22 -22
  472. package/data/links/st.json +20 -20
  473. package/data/links/swift.json +8 -8
  474. package/data/links/systemd.json +18 -18
  475. package/data/links/systemverilog.json +20 -20
  476. package/data/links/tcl.json +16 -16
  477. package/data/links/toml.json +16 -16
  478. package/data/links/typescript.json +20 -20
  479. package/data/links/vb.json +16 -16
  480. package/data/links/wgsl.json +24 -24
  481. package/data/links/xml.json +22 -22
  482. package/data/links/yaml.json +12 -12
  483. package/data/manifest.json +2 -2
  484. package/package.json +1 -1
@@ -1,426 +1,956 @@
1
- {
2
- "name": "atlas",
3
- "description": "Atlas is a modern database schema management tool by Ariga, providing declarative and versioned schema migrations with support for PostgreSQL, MySQL, SQLite, MariaDB, ClickHouse, and more",
4
- "category": "database-orm",
5
- "platforms": ["linux", "macos", "windows"],
6
- "shells": ["bash", "zsh", "fish", "powershell"],
7
- "subcommands": [
8
- {
9
- "name": "schema inspect",
10
- "description": "Inspect the schema of a database and output it in HCL, SQL, or JSON format. Useful for understanding the current state of a database.",
11
- "args": [],
12
- "options": [
13
- {"name": "--url", "short": "-u", "description": "Database connection URL to inspect", "type": "string"},
14
- {"name": "--schema", "description": "List of schema names to inspect (comma-separated)", "type": "string"},
15
- {"name": "--format", "description": "Output format: atlas (HCL), sql, or json", "type": "string"},
16
- {"name": "--env", "description": "Environment from atlas.hcl config file", "type": "string"},
17
- {"name": "--dev-url", "description": "Dev database URL for normalization", "type": "string"},
18
- {"name": "--log", "description": "Log format template", "type": "string"},
19
- {"name": "--exclude", "description": "List of glob patterns to exclude from inspection", "type": "string"},
20
- {"name": "--config", "description": "Path to atlas configuration file", "type": "string"},
21
- {"name": "--var", "description": "Input variable for atlas.hcl", "type": "string"}
22
- ],
23
- "examples": [
24
- "atlas schema inspect --url 'postgres://user:pass@localhost:5432/mydb?sslmode=disable'",
25
- "atlas schema inspect --url 'mysql://root:pass@localhost:3306/mydb'",
26
- "atlas schema inspect --url 'sqlite://file.db'",
27
- "atlas schema inspect --url 'postgres://localhost/mydb' --format '{{ sql . }}'",
28
- "atlas schema inspect --url 'postgres://localhost/mydb' --schema public --format json",
29
- "atlas schema inspect --env local",
30
- "atlas schema inspect --url 'postgres://localhost/mydb' --exclude 'internal_*'"
31
- ]
32
- },
33
- {
34
- "name": "schema apply",
35
- "description": "Apply a desired schema state to a target database. Compares the desired state with the current database and generates/applies the necessary changes.",
36
- "args": [],
37
- "options": [
38
- {"name": "--url", "short": "-u", "description": "Target database connection URL", "type": "string"},
39
- {"name": "--to", "description": "Desired schema state: URL, HCL file, or migration directory", "type": "string"},
40
- {"name": "--dev-url", "description": "Dev database URL for computing the diff", "type": "string"},
41
- {"name": "--schema", "description": "Schemas to apply changes to", "type": "string"},
42
- {"name": "--dry-run", "description": "Print SQL statements without executing them"},
43
- {"name": "--auto-approve", "description": "Apply changes without interactive approval"},
44
- {"name": "--env", "description": "Environment from atlas.hcl config", "type": "string"},
45
- {"name": "--config", "description": "Path to atlas configuration file", "type": "string"},
46
- {"name": "--var", "description": "Input variable for atlas.hcl", "type": "string"},
47
- {"name": "--tx-mode", "description": "Transaction mode: file, all, or none", "type": "string"},
48
- {"name": "--exclude", "description": "Glob patterns to exclude from diff", "type": "string"},
49
- {"name": "--log", "description": "Log format template", "type": "string"}
50
- ],
51
- "examples": [
52
- "atlas schema apply --url 'postgres://user:pass@localhost:5432/mydb' --to file://schema.hcl --dev-url 'docker://postgres/15'",
53
- "atlas schema apply --url 'mysql://root:pass@localhost:3306/mydb' --to file://schema.sql --dev-url 'docker://mysql/8'",
54
- "atlas schema apply --env production --dry-run",
55
- "atlas schema apply --url 'sqlite://file.db' --to file://desired.hcl --auto-approve",
56
- "atlas schema apply --env local --auto-approve --tx-mode=all"
57
- ]
58
- },
59
- {
60
- "name": "schema diff",
61
- "description": "Calculate the diff between two schemas and output the SQL statements needed to migrate from one to the other.",
62
- "args": [],
63
- "options": [
64
- {"name": "--from", "description": "Source schema URL or file", "type": "string"},
65
- {"name": "--to", "description": "Target schema URL or file", "type": "string"},
66
- {"name": "--dev-url", "description": "Dev database URL for computing the diff", "type": "string"},
67
- {"name": "--format", "description": "Output format for the diff", "type": "string"},
68
- {"name": "--env", "description": "Environment from atlas.hcl config", "type": "string"},
69
- {"name": "--schema", "description": "Schemas to include in diff", "type": "string"},
70
- {"name": "--exclude", "description": "Glob patterns to exclude", "type": "string"},
71
- {"name": "--config", "description": "Path to atlas config file", "type": "string"},
72
- {"name": "--var", "description": "Input variable for atlas.hcl", "type": "string"}
73
- ],
74
- "examples": [
75
- "atlas schema diff --from 'postgres://localhost/dev' --to 'postgres://localhost/prod'",
76
- "atlas schema diff --from file://old.hcl --to file://new.hcl --dev-url 'docker://postgres/15'",
77
- "atlas schema diff --from 'mysql://root@localhost/db1' --to 'mysql://root@localhost/db2'",
78
- "atlas schema diff --env local --to file://schema.hcl"
79
- ]
80
- },
81
- {
82
- "name": "schema clean",
83
- "description": "Remove all objects from the target database schema. WARNING: Destructive operation.",
84
- "args": [],
85
- "options": [
86
- {"name": "--url", "short": "-u", "description": "Database connection URL", "type": "string"},
87
- {"name": "--schema", "description": "Schemas to clean", "type": "string"},
88
- {"name": "--auto-approve", "description": "Skip confirmation prompt"},
89
- {"name": "--env", "description": "Environment from config", "type": "string"}
90
- ],
91
- "examples": [
92
- "atlas schema clean --url 'postgres://localhost/testdb' --auto-approve",
93
- "atlas schema clean --env staging"
94
- ]
95
- },
96
- {
97
- "name": "schema fmt",
98
- "description": "Format Atlas HCL schema files to a canonical style, similar to gofmt or terraform fmt.",
99
- "args": [
100
- {"name": "paths", "type": "string", "required": false, "description": "Paths to HCL files or directories to format (default: current directory)"}
101
- ],
102
- "options": [],
103
- "examples": [
104
- "atlas schema fmt",
105
- "atlas schema fmt schema.hcl",
106
- "atlas schema fmt ./schemas/"
107
- ]
108
- },
109
- {
110
- "name": "migrate diff",
111
- "description": "Generate a new versioned migration file by computing the diff between the desired schema and the current migration directory state.",
112
- "args": [
113
- {"name": "name", "type": "string", "required": false, "description": "Optional name suffix for the migration file"}
114
- ],
115
- "options": [
116
- {"name": "--to", "description": "Desired schema state: URL, HCL file, or directory", "type": "string"},
117
- {"name": "--dev-url", "description": "Dev database URL for computing the diff", "type": "string"},
118
- {"name": "--dir", "description": "Migration directory URL (default: file://migrations)", "type": "string"},
119
- {"name": "--format", "description": "Format for the migration file (atlas or golang-migrate, goose, flyway, liquibase, dbmate)", "type": "string"},
120
- {"name": "--env", "description": "Environment from atlas.hcl config", "type": "string"},
121
- {"name": "--config", "description": "Path to atlas config file", "type": "string"},
122
- {"name": "--var", "description": "Input variable for atlas.hcl", "type": "string"},
123
- {"name": "--schema", "description": "Schemas to diff", "type": "string"},
124
- {"name": "--lock-timeout", "description": "Timeout for acquiring schema lock", "type": "string"},
125
- {"name": "--qualifier", "description": "Schema qualifier for migration statements", "type": "string"},
126
- {"name": "--edit", "description": "Open the generated migration file in an editor"}
127
- ],
128
- "examples": [
129
- "atlas migrate diff add_users --to file://schema.hcl --dev-url 'docker://postgres/15'",
130
- "atlas migrate diff --to file://schema.sql --dev-url 'docker://mysql/8' --dir file://migrations",
131
- "atlas migrate diff create_orders --env local",
132
- "atlas migrate diff --to 'postgres://localhost/mydb' --dev-url 'docker://postgres/15' --format golang-migrate",
133
- "atlas migrate diff add_index --env dev --edit"
134
- ]
135
- },
136
- {
137
- "name": "migrate apply",
138
- "description": "Apply pending migration files to a database. Reads the migration directory and executes unapplied files in order.",
139
- "args": [
140
- {"name": "count", "type": "string", "required": false, "description": "Number of migrations to apply (default: all pending)"}
141
- ],
142
- "options": [
143
- {"name": "--url", "short": "-u", "description": "Target database connection URL", "type": "string"},
144
- {"name": "--dir", "description": "Migration directory URL", "type": "string"},
145
- {"name": "--dry-run", "description": "Print planned SQL without executing"},
146
- {"name": "--env", "description": "Environment from config", "type": "string"},
147
- {"name": "--config", "description": "Path to atlas config file", "type": "string"},
148
- {"name": "--var", "description": "Input variable for atlas.hcl", "type": "string"},
149
- {"name": "--baseline", "description": "Version to set as baseline (skip migrations up to this version)", "type": "string"},
150
- {"name": "--tx-mode", "description": "Transaction mode: file, all, or none", "type": "string"},
151
- {"name": "--revisions-schema", "description": "Schema for the revisions tracking table", "type": "string"},
152
- {"name": "--allow-dirty", "description": "Allow applying on a database with a dirty migration state"},
153
- {"name": "--log", "description": "Log format template", "type": "string"}
154
- ],
155
- "examples": [
156
- "atlas migrate apply --url 'postgres://user:pass@localhost:5432/mydb'",
157
- "atlas migrate apply --url 'mysql://root:pass@localhost:3306/mydb' --dir file://migrations",
158
- "atlas migrate apply 1 --url 'postgres://localhost/mydb'",
159
- "atlas migrate apply --env production",
160
- "atlas migrate apply --url 'postgres://localhost/mydb' --dry-run",
161
- "atlas migrate apply --url 'postgres://localhost/mydb' --baseline 20240101000000",
162
- "atlas migrate apply --url 'postgres://localhost/mydb' --tx-mode=all"
163
- ]
164
- },
165
- {
166
- "name": "migrate hash",
167
- "description": "Recalculate and update the integrity hash file (atlas.sum) for the migration directory. Required after manually editing migration files.",
168
- "args": [],
169
- "options": [
170
- {"name": "--dir", "description": "Migration directory URL", "type": "string"},
171
- {"name": "--env", "description": "Environment from config", "type": "string"},
172
- {"name": "--config", "description": "Path to atlas config file", "type": "string"}
173
- ],
174
- "examples": [
175
- "atlas migrate hash",
176
- "atlas migrate hash --dir file://migrations",
177
- "atlas migrate hash --env local"
178
- ]
179
- },
180
- {
181
- "name": "migrate lint",
182
- "description": "Analyze migration files for potential issues, destructive changes, and best-practice violations. Integrates with CI/CD pipelines.",
183
- "args": [],
184
- "options": [
185
- {"name": "--dir", "description": "Migration directory URL", "type": "string"},
186
- {"name": "--dev-url", "description": "Dev database URL for analysis", "type": "string"},
187
- {"name": "--latest", "description": "Number of latest migration files to analyze", "type": "string"},
188
- {"name": "--git-base", "description": "Git base branch for diff analysis", "type": "string"},
189
- {"name": "--git-dir", "description": "Git repository root", "type": "string"},
190
- {"name": "--env", "description": "Environment from config", "type": "string"},
191
- {"name": "--config", "description": "Path to atlas config file", "type": "string"},
192
- {"name": "--log", "description": "Log format template", "type": "string"},
193
- {"name": "--format", "description": "Output format for lint results", "type": "string"},
194
- {"name": "--var", "description": "Input variable for atlas.hcl", "type": "string"}
195
- ],
196
- "examples": [
197
- "atlas migrate lint --dev-url 'docker://postgres/15' --latest 1",
198
- "atlas migrate lint --dev-url 'docker://mysql/8' --git-base main",
199
- "atlas migrate lint --env ci --latest 5",
200
- "atlas migrate lint --dev-url 'docker://postgres/15' --dir file://migrations --format '{{ json . }}'"
201
- ]
202
- },
203
- {
204
- "name": "migrate status",
205
- "description": "Show the status of all migrations: which have been applied, which are pending, and detect any issues.",
206
- "args": [],
207
- "options": [
208
- {"name": "--url", "short": "-u", "description": "Database connection URL", "type": "string"},
209
- {"name": "--dir", "description": "Migration directory URL", "type": "string"},
210
- {"name": "--env", "description": "Environment from config", "type": "string"},
211
- {"name": "--config", "description": "Path to atlas config file", "type": "string"},
212
- {"name": "--revisions-schema", "description": "Schema for the revisions table", "type": "string"},
213
- {"name": "--log", "description": "Log format template", "type": "string"},
214
- {"name": "--var", "description": "Input variable for atlas.hcl", "type": "string"}
215
- ],
216
- "examples": [
217
- "atlas migrate status --url 'postgres://user:pass@localhost:5432/mydb'",
218
- "atlas migrate status --env production",
219
- "atlas migrate status --url 'mysql://root@localhost/mydb' --dir file://migrations"
220
- ]
221
- },
222
- {
223
- "name": "migrate new",
224
- "description": "Create a new empty migration file in the migration directory with proper formatting and hash updates.",
225
- "args": [
226
- {"name": "name", "type": "string", "required": false, "description": "Name for the migration file"}
227
- ],
228
- "options": [
229
- {"name": "--dir", "description": "Migration directory URL", "type": "string"},
230
- {"name": "--env", "description": "Environment from config", "type": "string"},
231
- {"name": "--config", "description": "Path to atlas config file", "type": "string"},
232
- {"name": "--edit", "description": "Open the new migration file in an editor"}
233
- ],
234
- "examples": [
235
- "atlas migrate new add_users_table",
236
- "atlas migrate new --dir file://migrations",
237
- "atlas migrate new create_orders --env local --edit"
238
- ]
239
- },
240
- {
241
- "name": "migrate import",
242
- "description": "Import migration files from another migration tool format (golang-migrate, goose, flyway, liquibase, dbmate) into Atlas format.",
243
- "args": [],
244
- "options": [
245
- {"name": "--from", "description": "Source migration directory URL with format qualifier", "type": "string"},
246
- {"name": "--dir", "description": "Target Atlas migration directory", "type": "string"},
247
- {"name": "--env", "description": "Environment from config", "type": "string"}
248
- ],
249
- "examples": [
250
- "atlas migrate import --from 'file://migrations?format=golang-migrate'",
251
- "atlas migrate import --from 'file://db/migrations?format=goose'",
252
- "atlas migrate import --from 'file://migrations?format=flyway' --dir file://atlas-migrations"
253
- ]
254
- },
255
- {
256
- "name": "migrate set",
257
- "description": "Set the current migration version in the revisions table without applying any migrations. Similar to alembic stamp.",
258
- "args": [
259
- {"name": "version", "type": "string", "required": true, "description": "Migration version to set"}
260
- ],
261
- "options": [
262
- {"name": "--url", "short": "-u", "description": "Database connection URL", "type": "string"},
263
- {"name": "--dir", "description": "Migration directory URL", "type": "string"},
264
- {"name": "--env", "description": "Environment from config", "type": "string"},
265
- {"name": "--revisions-schema", "description": "Schema for the revisions table", "type": "string"}
266
- ],
267
- "examples": [
268
- "atlas migrate set 20240101000000 --url 'postgres://localhost/mydb'",
269
- "atlas migrate set 20240301120000 --env production"
270
- ]
271
- },
272
- {
273
- "name": "migrate down",
274
- "description": "Revert applied migration files from the database. Requires down migration files or uses Atlas planned rollbacks.",
275
- "args": [
276
- {"name": "count", "type": "string", "required": false, "description": "Number of migrations to roll back (default: 1)"}
277
- ],
278
- "options": [
279
- {"name": "--url", "short": "-u", "description": "Database connection URL", "type": "string"},
280
- {"name": "--dir", "description": "Migration directory URL", "type": "string"},
281
- {"name": "--dev-url", "description": "Dev database URL for rollback planning", "type": "string"},
282
- {"name": "--env", "description": "Environment from config", "type": "string"},
283
- {"name": "--config", "description": "Path to atlas config file", "type": "string"},
284
- {"name": "--log", "description": "Log format template", "type": "string"},
285
- {"name": "--to-version", "description": "Target version to roll back to", "type": "string"},
286
- {"name": "--to-tag", "description": "Target tag to roll back to", "type": "string"}
287
- ],
288
- "examples": [
289
- "atlas migrate down --url 'postgres://localhost/mydb' --dev-url 'docker://postgres/15'",
290
- "atlas migrate down 2 --url 'postgres://localhost/mydb' --dev-url 'docker://postgres/15'",
291
- "atlas migrate down --env local --to-version 20240101000000"
292
- ]
293
- },
294
- {
295
- "name": "migrate checkpoint",
296
- "description": "Create a checkpoint migration that represents the cumulative state of all previous migrations, allowing cleanup of old migration files.",
297
- "args": [
298
- {"name": "name", "type": "string", "required": false, "description": "Name for the checkpoint migration"}
299
- ],
300
- "options": [
301
- {"name": "--dev-url", "description": "Dev database URL", "type": "string"},
302
- {"name": "--dir", "description": "Migration directory URL", "type": "string"},
303
- {"name": "--env", "description": "Environment from config", "type": "string"},
304
- {"name": "--config", "description": "Path to atlas config file", "type": "string"},
305
- {"name": "--var", "description": "Input variable for atlas.hcl", "type": "string"}
306
- ],
307
- "examples": [
308
- "atlas migrate checkpoint --dev-url 'docker://postgres/15'",
309
- "atlas migrate checkpoint my_checkpoint --env local"
310
- ]
311
- },
312
- {
313
- "name": "migrate push",
314
- "description": "Push the migration directory to Atlas Cloud for versioned schema management, CI/CD integration, and team collaboration.",
315
- "args": [
316
- {"name": "name", "type": "string", "required": true, "description": "Name/tag for the migration directory in Atlas Cloud"}
317
- ],
318
- "options": [
319
- {"name": "--dir", "description": "Local migration directory to push", "type": "string"},
320
- {"name": "--dev-url", "description": "Dev database URL for validation", "type": "string"},
321
- {"name": "--env", "description": "Environment from config", "type": "string"},
322
- {"name": "--config", "description": "Path to atlas config file", "type": "string"},
323
- {"name": "--tag", "description": "Tag for the pushed version", "type": "string"},
324
- {"name": "--var", "description": "Input variable for atlas.hcl", "type": "string"}
325
- ],
326
- "examples": [
327
- "atlas migrate push myapp --dev-url 'docker://postgres/15'",
328
- "atlas migrate push myapp --tag v1.0 --env production"
329
- ]
330
- },
331
- {
332
- "name": "migrate validate",
333
- "description": "Validate the integrity and correctness of the migration directory, checking hash consistency and file ordering.",
334
- "args": [],
335
- "options": [
336
- {"name": "--dir", "description": "Migration directory URL", "type": "string"},
337
- {"name": "--dev-url", "description": "Dev database URL for validation", "type": "string"},
338
- {"name": "--env", "description": "Environment from config", "type": "string"},
339
- {"name": "--config", "description": "Path to atlas config file", "type": "string"}
340
- ],
341
- "examples": [
342
- "atlas migrate validate",
343
- "atlas migrate validate --dev-url 'docker://postgres/15'",
344
- "atlas migrate validate --env local"
345
- ]
346
- },
347
- {
348
- "name": "migrate rebase",
349
- "description": "Squash and rebase migration files from a specific version, combining them into a single migration for cleaner history.",
350
- "args": [],
351
- "options": [
352
- {"name": "--dir", "description": "Migration directory URL", "type": "string"},
353
- {"name": "--dev-url", "description": "Dev database URL", "type": "string"},
354
- {"name": "--env", "description": "Environment from config", "type": "string"},
355
- {"name": "--config", "description": "Path to atlas config file", "type": "string"}
356
- ],
357
- "examples": [
358
- "atlas migrate rebase --dev-url 'docker://postgres/15'",
359
- "atlas migrate rebase --env local"
360
- ]
361
- }
362
- ],
363
- "globalOptions": [
364
- {"name": "--help", "short": "-h", "description": "Show help information"},
365
- {"name": "--version", "description": "Show Atlas version"},
366
- {"name": "--config", "description": "Path to atlas configuration file (atlas.hcl)", "type": "string"},
367
- {"name": "--env", "description": "Environment to use from config file", "type": "string"},
368
- {"name": "--var", "description": "Input variables for atlas.hcl (key=value format)", "type": "string"}
369
- ],
370
- "examples": [
371
- "atlas schema inspect --url 'postgres://localhost/mydb'",
372
- "atlas schema apply --url 'postgres://localhost/mydb' --to file://schema.hcl --dev-url 'docker://postgres/15'",
373
- "atlas schema diff --from 'postgres://localhost/dev' --to 'postgres://localhost/staging'",
374
- "atlas migrate diff add_users --to file://schema.hcl --dev-url 'docker://postgres/15'",
375
- "atlas migrate apply --url 'postgres://localhost/mydb'",
376
- "atlas migrate status --url 'postgres://localhost/mydb'",
377
- "atlas migrate lint --dev-url 'docker://postgres/15' --latest 1",
378
- "atlas migrate hash",
379
- "atlas migrate new create_orders",
380
- "atlas migrate down --url 'postgres://localhost/mydb' --dev-url 'docker://postgres/15'",
381
- "atlas migrate validate --dev-url 'docker://postgres/15'",
382
- "atlas migrate checkpoint --dev-url 'docker://postgres/15'",
383
- "atlas schema fmt",
384
- "atlas migrate push myapp --dev-url 'docker://postgres/15' --tag latest"
385
- ],
386
- "relatedCommands": ["flyway", "liquibase", "prisma", "alembic", "dbmate"],
387
- "contextEngine": {
388
- "detectors": [
389
- {
390
- "name": "atlas_config_detect",
391
- "description": "Detect Atlas configuration file (atlas.hcl)",
392
- "command": "find . -maxdepth 2 -name 'atlas.hcl' -type f 2>/dev/null | head -3",
393
- "parser": "lines",
394
- "cacheFor": 60
395
- },
396
- {
397
- "name": "atlas_schema_detect",
398
- "description": "Detect Atlas HCL schema files",
399
- "command": "find . -maxdepth 3 -name 'schema.hcl' -o -name '*.hcl' -path '*/schema/*' 2>/dev/null | head -10",
400
- "parser": "lines",
401
- "cacheFor": 60
402
- },
403
- {
404
- "name": "atlas_migrations_detect",
405
- "description": "Detect Atlas migration files and atlas.sum",
406
- "command": "find . -name 'atlas.sum' -o -path '*/migrations/*.sql' 2>/dev/null | head -10",
407
- "parser": "lines",
408
- "cacheFor": 30
409
- },
410
- {
411
- "name": "atlas_version",
412
- "description": "Get installed Atlas version",
413
- "command": "atlas version 2>/dev/null || echo 'not installed'",
414
- "parser": "lines",
415
- "cacheFor": 120
416
- },
417
- {
418
- "name": "atlas_env_detect",
419
- "description": "Detect configured Atlas environments",
420
- "command": "grep -E '^env\\s' atlas.hcl 2>/dev/null | head -5 || echo 'no config'",
421
- "parser": "lines",
422
- "cacheFor": 60
423
- }
424
- ]
425
- }
426
- }
1
+ {
2
+ "name": "atlas",
3
+ "description": "Atlas is a modern database schema management tool by Ariga, providing declarative and versioned schema migrations with support for PostgreSQL, MySQL, SQLite, MariaDB, ClickHouse, and more",
4
+ "category": "database",
5
+ "platforms": [
6
+ "linux",
7
+ "macos",
8
+ "windows"
9
+ ],
10
+ "shells": [
11
+ "bash",
12
+ "zsh",
13
+ "fish",
14
+ "powershell"
15
+ ],
16
+ "subcommands": [
17
+ {
18
+ "name": "schema inspect",
19
+ "description": "Inspect the schema of a database and output it in HCL, SQL, or JSON format. Useful for understanding the current state of a database.",
20
+ "args": [],
21
+ "options": [
22
+ {
23
+ "name": "--url",
24
+ "short": "-u",
25
+ "description": "Database connection URL to inspect",
26
+ "type": "string"
27
+ },
28
+ {
29
+ "name": "--schema",
30
+ "description": "List of schema names to inspect (comma-separated)",
31
+ "type": "string"
32
+ },
33
+ {
34
+ "name": "--format",
35
+ "description": "Output format: atlas (HCL), sql, or json",
36
+ "type": "string"
37
+ },
38
+ {
39
+ "name": "--env",
40
+ "description": "Environment from atlas.hcl config file",
41
+ "type": "string"
42
+ },
43
+ {
44
+ "name": "--dev-url",
45
+ "description": "Dev database URL for normalization",
46
+ "type": "string"
47
+ },
48
+ {
49
+ "name": "--log",
50
+ "description": "Log format template",
51
+ "type": "string"
52
+ },
53
+ {
54
+ "name": "--exclude",
55
+ "description": "List of glob patterns to exclude from inspection",
56
+ "type": "string"
57
+ },
58
+ {
59
+ "name": "--config",
60
+ "description": "Path to atlas configuration file",
61
+ "type": "string"
62
+ },
63
+ {
64
+ "name": "--var",
65
+ "description": "Input variable for atlas.hcl",
66
+ "type": "string"
67
+ }
68
+ ],
69
+ "examples": [
70
+ "atlas schema inspect --url 'postgres://user:pass@localhost:5432/mydb?sslmode=disable'",
71
+ "atlas schema inspect --url 'mysql://root:pass@localhost:3306/mydb'",
72
+ "atlas schema inspect --url 'sqlite://file.db'",
73
+ "atlas schema inspect --url 'postgres://localhost/mydb' --format '{{ sql . }}'",
74
+ "atlas schema inspect --url 'postgres://localhost/mydb' --schema public --format json",
75
+ "atlas schema inspect --env local",
76
+ "atlas schema inspect --url 'postgres://localhost/mydb' --exclude 'internal_*'"
77
+ ]
78
+ },
79
+ {
80
+ "name": "schema apply",
81
+ "description": "Apply a desired schema state to a target database. Compares the desired state with the current database and generates/applies the necessary changes.",
82
+ "args": [],
83
+ "options": [
84
+ {
85
+ "name": "--url",
86
+ "short": "-u",
87
+ "description": "Target database connection URL",
88
+ "type": "string"
89
+ },
90
+ {
91
+ "name": "--to",
92
+ "description": "Desired schema state: URL, HCL file, or migration directory",
93
+ "type": "string"
94
+ },
95
+ {
96
+ "name": "--dev-url",
97
+ "description": "Dev database URL for computing the diff",
98
+ "type": "string"
99
+ },
100
+ {
101
+ "name": "--schema",
102
+ "description": "Schemas to apply changes to",
103
+ "type": "string"
104
+ },
105
+ {
106
+ "name": "--dry-run",
107
+ "description": "Print SQL statements without executing them"
108
+ },
109
+ {
110
+ "name": "--auto-approve",
111
+ "description": "Apply changes without interactive approval"
112
+ },
113
+ {
114
+ "name": "--env",
115
+ "description": "Environment from atlas.hcl config",
116
+ "type": "string"
117
+ },
118
+ {
119
+ "name": "--config",
120
+ "description": "Path to atlas configuration file",
121
+ "type": "string"
122
+ },
123
+ {
124
+ "name": "--var",
125
+ "description": "Input variable for atlas.hcl",
126
+ "type": "string"
127
+ },
128
+ {
129
+ "name": "--tx-mode",
130
+ "description": "Transaction mode: file, all, or none",
131
+ "type": "string"
132
+ },
133
+ {
134
+ "name": "--exclude",
135
+ "description": "Glob patterns to exclude from diff",
136
+ "type": "string"
137
+ },
138
+ {
139
+ "name": "--log",
140
+ "description": "Log format template",
141
+ "type": "string"
142
+ }
143
+ ],
144
+ "examples": [
145
+ "atlas schema apply --url 'postgres://user:pass@localhost:5432/mydb' --to file://schema.hcl --dev-url 'docker://postgres/15'",
146
+ "atlas schema apply --url 'mysql://root:pass@localhost:3306/mydb' --to file://schema.sql --dev-url 'docker://mysql/8'",
147
+ "atlas schema apply --env production --dry-run",
148
+ "atlas schema apply --url 'sqlite://file.db' --to file://desired.hcl --auto-approve",
149
+ "atlas schema apply --env local --auto-approve --tx-mode=all"
150
+ ]
151
+ },
152
+ {
153
+ "name": "schema diff",
154
+ "description": "Calculate the diff between two schemas and output the SQL statements needed to migrate from one to the other.",
155
+ "args": [],
156
+ "options": [
157
+ {
158
+ "name": "--from",
159
+ "description": "Source schema URL or file",
160
+ "type": "string"
161
+ },
162
+ {
163
+ "name": "--to",
164
+ "description": "Target schema URL or file",
165
+ "type": "string"
166
+ },
167
+ {
168
+ "name": "--dev-url",
169
+ "description": "Dev database URL for computing the diff",
170
+ "type": "string"
171
+ },
172
+ {
173
+ "name": "--format",
174
+ "description": "Output format for the diff",
175
+ "type": "string"
176
+ },
177
+ {
178
+ "name": "--env",
179
+ "description": "Environment from atlas.hcl config",
180
+ "type": "string"
181
+ },
182
+ {
183
+ "name": "--schema",
184
+ "description": "Schemas to include in diff",
185
+ "type": "string"
186
+ },
187
+ {
188
+ "name": "--exclude",
189
+ "description": "Glob patterns to exclude",
190
+ "type": "string"
191
+ },
192
+ {
193
+ "name": "--config",
194
+ "description": "Path to atlas config file",
195
+ "type": "string"
196
+ },
197
+ {
198
+ "name": "--var",
199
+ "description": "Input variable for atlas.hcl",
200
+ "type": "string"
201
+ }
202
+ ],
203
+ "examples": [
204
+ "atlas schema diff --from 'postgres://localhost/dev' --to 'postgres://localhost/prod'",
205
+ "atlas schema diff --from file://old.hcl --to file://new.hcl --dev-url 'docker://postgres/15'",
206
+ "atlas schema diff --from 'mysql://root@localhost/db1' --to 'mysql://root@localhost/db2'",
207
+ "atlas schema diff --env local --to file://schema.hcl"
208
+ ]
209
+ },
210
+ {
211
+ "name": "schema clean",
212
+ "description": "Remove all objects from the target database schema. WARNING: Destructive operation.",
213
+ "args": [],
214
+ "options": [
215
+ {
216
+ "name": "--url",
217
+ "short": "-u",
218
+ "description": "Database connection URL",
219
+ "type": "string"
220
+ },
221
+ {
222
+ "name": "--schema",
223
+ "description": "Schemas to clean",
224
+ "type": "string"
225
+ },
226
+ {
227
+ "name": "--auto-approve",
228
+ "description": "Skip confirmation prompt"
229
+ },
230
+ {
231
+ "name": "--env",
232
+ "description": "Environment from config",
233
+ "type": "string"
234
+ }
235
+ ],
236
+ "examples": [
237
+ "atlas schema clean --url 'postgres://localhost/testdb' --auto-approve",
238
+ "atlas schema clean --env staging"
239
+ ]
240
+ },
241
+ {
242
+ "name": "schema fmt",
243
+ "description": "Format Atlas HCL schema files to a canonical style, similar to gofmt or terraform fmt.",
244
+ "args": [
245
+ {
246
+ "name": "paths",
247
+ "type": "string",
248
+ "required": false,
249
+ "description": "Paths to HCL files or directories to format (default: current directory)"
250
+ }
251
+ ],
252
+ "options": [],
253
+ "examples": [
254
+ "atlas schema fmt",
255
+ "atlas schema fmt schema.hcl",
256
+ "atlas schema fmt ./schemas/"
257
+ ]
258
+ },
259
+ {
260
+ "name": "migrate diff",
261
+ "description": "Generate a new versioned migration file by computing the diff between the desired schema and the current migration directory state.",
262
+ "args": [
263
+ {
264
+ "name": "name",
265
+ "type": "string",
266
+ "required": false,
267
+ "description": "Optional name suffix for the migration file"
268
+ }
269
+ ],
270
+ "options": [
271
+ {
272
+ "name": "--to",
273
+ "description": "Desired schema state: URL, HCL file, or directory",
274
+ "type": "string"
275
+ },
276
+ {
277
+ "name": "--dev-url",
278
+ "description": "Dev database URL for computing the diff",
279
+ "type": "string"
280
+ },
281
+ {
282
+ "name": "--dir",
283
+ "description": "Migration directory URL (default: file://migrations)",
284
+ "type": "string"
285
+ },
286
+ {
287
+ "name": "--format",
288
+ "description": "Format for the migration file (atlas or golang-migrate, goose, flyway, liquibase, dbmate)",
289
+ "type": "string"
290
+ },
291
+ {
292
+ "name": "--env",
293
+ "description": "Environment from atlas.hcl config",
294
+ "type": "string"
295
+ },
296
+ {
297
+ "name": "--config",
298
+ "description": "Path to atlas config file",
299
+ "type": "string"
300
+ },
301
+ {
302
+ "name": "--var",
303
+ "description": "Input variable for atlas.hcl",
304
+ "type": "string"
305
+ },
306
+ {
307
+ "name": "--schema",
308
+ "description": "Schemas to diff",
309
+ "type": "string"
310
+ },
311
+ {
312
+ "name": "--lock-timeout",
313
+ "description": "Timeout for acquiring schema lock",
314
+ "type": "string"
315
+ },
316
+ {
317
+ "name": "--qualifier",
318
+ "description": "Schema qualifier for migration statements",
319
+ "type": "string"
320
+ },
321
+ {
322
+ "name": "--edit",
323
+ "description": "Open the generated migration file in an editor"
324
+ }
325
+ ],
326
+ "examples": [
327
+ "atlas migrate diff add_users --to file://schema.hcl --dev-url 'docker://postgres/15'",
328
+ "atlas migrate diff --to file://schema.sql --dev-url 'docker://mysql/8' --dir file://migrations",
329
+ "atlas migrate diff create_orders --env local",
330
+ "atlas migrate diff --to 'postgres://localhost/mydb' --dev-url 'docker://postgres/15' --format golang-migrate",
331
+ "atlas migrate diff add_index --env dev --edit"
332
+ ]
333
+ },
334
+ {
335
+ "name": "migrate apply",
336
+ "description": "Apply pending migration files to a database. Reads the migration directory and executes unapplied files in order.",
337
+ "args": [
338
+ {
339
+ "name": "count",
340
+ "type": "string",
341
+ "required": false,
342
+ "description": "Number of migrations to apply (default: all pending)"
343
+ }
344
+ ],
345
+ "options": [
346
+ {
347
+ "name": "--url",
348
+ "short": "-u",
349
+ "description": "Target database connection URL",
350
+ "type": "string"
351
+ },
352
+ {
353
+ "name": "--dir",
354
+ "description": "Migration directory URL",
355
+ "type": "string"
356
+ },
357
+ {
358
+ "name": "--dry-run",
359
+ "description": "Print planned SQL without executing"
360
+ },
361
+ {
362
+ "name": "--env",
363
+ "description": "Environment from config",
364
+ "type": "string"
365
+ },
366
+ {
367
+ "name": "--config",
368
+ "description": "Path to atlas config file",
369
+ "type": "string"
370
+ },
371
+ {
372
+ "name": "--var",
373
+ "description": "Input variable for atlas.hcl",
374
+ "type": "string"
375
+ },
376
+ {
377
+ "name": "--baseline",
378
+ "description": "Version to set as baseline (skip migrations up to this version)",
379
+ "type": "string"
380
+ },
381
+ {
382
+ "name": "--tx-mode",
383
+ "description": "Transaction mode: file, all, or none",
384
+ "type": "string"
385
+ },
386
+ {
387
+ "name": "--revisions-schema",
388
+ "description": "Schema for the revisions tracking table",
389
+ "type": "string"
390
+ },
391
+ {
392
+ "name": "--allow-dirty",
393
+ "description": "Allow applying on a database with a dirty migration state"
394
+ },
395
+ {
396
+ "name": "--log",
397
+ "description": "Log format template",
398
+ "type": "string"
399
+ }
400
+ ],
401
+ "examples": [
402
+ "atlas migrate apply --url 'postgres://user:pass@localhost:5432/mydb'",
403
+ "atlas migrate apply --url 'mysql://root:pass@localhost:3306/mydb' --dir file://migrations",
404
+ "atlas migrate apply 1 --url 'postgres://localhost/mydb'",
405
+ "atlas migrate apply --env production",
406
+ "atlas migrate apply --url 'postgres://localhost/mydb' --dry-run",
407
+ "atlas migrate apply --url 'postgres://localhost/mydb' --baseline 20240101000000",
408
+ "atlas migrate apply --url 'postgres://localhost/mydb' --tx-mode=all"
409
+ ]
410
+ },
411
+ {
412
+ "name": "migrate hash",
413
+ "description": "Recalculate and update the integrity hash file (atlas.sum) for the migration directory. Required after manually editing migration files.",
414
+ "args": [],
415
+ "options": [
416
+ {
417
+ "name": "--dir",
418
+ "description": "Migration directory URL",
419
+ "type": "string"
420
+ },
421
+ {
422
+ "name": "--env",
423
+ "description": "Environment from config",
424
+ "type": "string"
425
+ },
426
+ {
427
+ "name": "--config",
428
+ "description": "Path to atlas config file",
429
+ "type": "string"
430
+ }
431
+ ],
432
+ "examples": [
433
+ "atlas migrate hash",
434
+ "atlas migrate hash --dir file://migrations",
435
+ "atlas migrate hash --env local"
436
+ ]
437
+ },
438
+ {
439
+ "name": "migrate lint",
440
+ "description": "Analyze migration files for potential issues, destructive changes, and best-practice violations. Integrates with CI/CD pipelines.",
441
+ "args": [],
442
+ "options": [
443
+ {
444
+ "name": "--dir",
445
+ "description": "Migration directory URL",
446
+ "type": "string"
447
+ },
448
+ {
449
+ "name": "--dev-url",
450
+ "description": "Dev database URL for analysis",
451
+ "type": "string"
452
+ },
453
+ {
454
+ "name": "--latest",
455
+ "description": "Number of latest migration files to analyze",
456
+ "type": "string"
457
+ },
458
+ {
459
+ "name": "--git-base",
460
+ "description": "Git base branch for diff analysis",
461
+ "type": "string"
462
+ },
463
+ {
464
+ "name": "--git-dir",
465
+ "description": "Git repository root",
466
+ "type": "string"
467
+ },
468
+ {
469
+ "name": "--env",
470
+ "description": "Environment from config",
471
+ "type": "string"
472
+ },
473
+ {
474
+ "name": "--config",
475
+ "description": "Path to atlas config file",
476
+ "type": "string"
477
+ },
478
+ {
479
+ "name": "--log",
480
+ "description": "Log format template",
481
+ "type": "string"
482
+ },
483
+ {
484
+ "name": "--format",
485
+ "description": "Output format for lint results",
486
+ "type": "string"
487
+ },
488
+ {
489
+ "name": "--var",
490
+ "description": "Input variable for atlas.hcl",
491
+ "type": "string"
492
+ }
493
+ ],
494
+ "examples": [
495
+ "atlas migrate lint --dev-url 'docker://postgres/15' --latest 1",
496
+ "atlas migrate lint --dev-url 'docker://mysql/8' --git-base main",
497
+ "atlas migrate lint --env ci --latest 5",
498
+ "atlas migrate lint --dev-url 'docker://postgres/15' --dir file://migrations --format '{{ json . }}'"
499
+ ]
500
+ },
501
+ {
502
+ "name": "migrate status",
503
+ "description": "Show the status of all migrations: which have been applied, which are pending, and detect any issues.",
504
+ "args": [],
505
+ "options": [
506
+ {
507
+ "name": "--url",
508
+ "short": "-u",
509
+ "description": "Database connection URL",
510
+ "type": "string"
511
+ },
512
+ {
513
+ "name": "--dir",
514
+ "description": "Migration directory URL",
515
+ "type": "string"
516
+ },
517
+ {
518
+ "name": "--env",
519
+ "description": "Environment from config",
520
+ "type": "string"
521
+ },
522
+ {
523
+ "name": "--config",
524
+ "description": "Path to atlas config file",
525
+ "type": "string"
526
+ },
527
+ {
528
+ "name": "--revisions-schema",
529
+ "description": "Schema for the revisions table",
530
+ "type": "string"
531
+ },
532
+ {
533
+ "name": "--log",
534
+ "description": "Log format template",
535
+ "type": "string"
536
+ },
537
+ {
538
+ "name": "--var",
539
+ "description": "Input variable for atlas.hcl",
540
+ "type": "string"
541
+ }
542
+ ],
543
+ "examples": [
544
+ "atlas migrate status --url 'postgres://user:pass@localhost:5432/mydb'",
545
+ "atlas migrate status --env production",
546
+ "atlas migrate status --url 'mysql://root@localhost/mydb' --dir file://migrations"
547
+ ]
548
+ },
549
+ {
550
+ "name": "migrate new",
551
+ "description": "Create a new empty migration file in the migration directory with proper formatting and hash updates.",
552
+ "args": [
553
+ {
554
+ "name": "name",
555
+ "type": "string",
556
+ "required": false,
557
+ "description": "Name for the migration file"
558
+ }
559
+ ],
560
+ "options": [
561
+ {
562
+ "name": "--dir",
563
+ "description": "Migration directory URL",
564
+ "type": "string"
565
+ },
566
+ {
567
+ "name": "--env",
568
+ "description": "Environment from config",
569
+ "type": "string"
570
+ },
571
+ {
572
+ "name": "--config",
573
+ "description": "Path to atlas config file",
574
+ "type": "string"
575
+ },
576
+ {
577
+ "name": "--edit",
578
+ "description": "Open the new migration file in an editor"
579
+ }
580
+ ],
581
+ "examples": [
582
+ "atlas migrate new add_users_table",
583
+ "atlas migrate new --dir file://migrations",
584
+ "atlas migrate new create_orders --env local --edit"
585
+ ]
586
+ },
587
+ {
588
+ "name": "migrate import",
589
+ "description": "Import migration files from another migration tool format (golang-migrate, goose, flyway, liquibase, dbmate) into Atlas format.",
590
+ "args": [],
591
+ "options": [
592
+ {
593
+ "name": "--from",
594
+ "description": "Source migration directory URL with format qualifier",
595
+ "type": "string"
596
+ },
597
+ {
598
+ "name": "--dir",
599
+ "description": "Target Atlas migration directory",
600
+ "type": "string"
601
+ },
602
+ {
603
+ "name": "--env",
604
+ "description": "Environment from config",
605
+ "type": "string"
606
+ }
607
+ ],
608
+ "examples": [
609
+ "atlas migrate import --from 'file://migrations?format=golang-migrate'",
610
+ "atlas migrate import --from 'file://db/migrations?format=goose'",
611
+ "atlas migrate import --from 'file://migrations?format=flyway' --dir file://atlas-migrations"
612
+ ]
613
+ },
614
+ {
615
+ "name": "migrate set",
616
+ "description": "Set the current migration version in the revisions table without applying any migrations. Similar to alembic stamp.",
617
+ "args": [
618
+ {
619
+ "name": "version",
620
+ "type": "string",
621
+ "required": true,
622
+ "description": "Migration version to set"
623
+ }
624
+ ],
625
+ "options": [
626
+ {
627
+ "name": "--url",
628
+ "short": "-u",
629
+ "description": "Database connection URL",
630
+ "type": "string"
631
+ },
632
+ {
633
+ "name": "--dir",
634
+ "description": "Migration directory URL",
635
+ "type": "string"
636
+ },
637
+ {
638
+ "name": "--env",
639
+ "description": "Environment from config",
640
+ "type": "string"
641
+ },
642
+ {
643
+ "name": "--revisions-schema",
644
+ "description": "Schema for the revisions table",
645
+ "type": "string"
646
+ }
647
+ ],
648
+ "examples": [
649
+ "atlas migrate set 20240101000000 --url 'postgres://localhost/mydb'",
650
+ "atlas migrate set 20240301120000 --env production"
651
+ ]
652
+ },
653
+ {
654
+ "name": "migrate down",
655
+ "description": "Revert applied migration files from the database. Requires down migration files or uses Atlas planned rollbacks.",
656
+ "args": [
657
+ {
658
+ "name": "count",
659
+ "type": "string",
660
+ "required": false,
661
+ "description": "Number of migrations to roll back (default: 1)"
662
+ }
663
+ ],
664
+ "options": [
665
+ {
666
+ "name": "--url",
667
+ "short": "-u",
668
+ "description": "Database connection URL",
669
+ "type": "string"
670
+ },
671
+ {
672
+ "name": "--dir",
673
+ "description": "Migration directory URL",
674
+ "type": "string"
675
+ },
676
+ {
677
+ "name": "--dev-url",
678
+ "description": "Dev database URL for rollback planning",
679
+ "type": "string"
680
+ },
681
+ {
682
+ "name": "--env",
683
+ "description": "Environment from config",
684
+ "type": "string"
685
+ },
686
+ {
687
+ "name": "--config",
688
+ "description": "Path to atlas config file",
689
+ "type": "string"
690
+ },
691
+ {
692
+ "name": "--log",
693
+ "description": "Log format template",
694
+ "type": "string"
695
+ },
696
+ {
697
+ "name": "--to-version",
698
+ "description": "Target version to roll back to",
699
+ "type": "string"
700
+ },
701
+ {
702
+ "name": "--to-tag",
703
+ "description": "Target tag to roll back to",
704
+ "type": "string"
705
+ }
706
+ ],
707
+ "examples": [
708
+ "atlas migrate down --url 'postgres://localhost/mydb' --dev-url 'docker://postgres/15'",
709
+ "atlas migrate down 2 --url 'postgres://localhost/mydb' --dev-url 'docker://postgres/15'",
710
+ "atlas migrate down --env local --to-version 20240101000000"
711
+ ]
712
+ },
713
+ {
714
+ "name": "migrate checkpoint",
715
+ "description": "Create a checkpoint migration that represents the cumulative state of all previous migrations, allowing cleanup of old migration files.",
716
+ "args": [
717
+ {
718
+ "name": "name",
719
+ "type": "string",
720
+ "required": false,
721
+ "description": "Name for the checkpoint migration"
722
+ }
723
+ ],
724
+ "options": [
725
+ {
726
+ "name": "--dev-url",
727
+ "description": "Dev database URL",
728
+ "type": "string"
729
+ },
730
+ {
731
+ "name": "--dir",
732
+ "description": "Migration directory URL",
733
+ "type": "string"
734
+ },
735
+ {
736
+ "name": "--env",
737
+ "description": "Environment from config",
738
+ "type": "string"
739
+ },
740
+ {
741
+ "name": "--config",
742
+ "description": "Path to atlas config file",
743
+ "type": "string"
744
+ },
745
+ {
746
+ "name": "--var",
747
+ "description": "Input variable for atlas.hcl",
748
+ "type": "string"
749
+ }
750
+ ],
751
+ "examples": [
752
+ "atlas migrate checkpoint --dev-url 'docker://postgres/15'",
753
+ "atlas migrate checkpoint my_checkpoint --env local"
754
+ ]
755
+ },
756
+ {
757
+ "name": "migrate push",
758
+ "description": "Push the migration directory to Atlas Cloud for versioned schema management, CI/CD integration, and team collaboration.",
759
+ "args": [
760
+ {
761
+ "name": "name",
762
+ "type": "string",
763
+ "required": true,
764
+ "description": "Name/tag for the migration directory in Atlas Cloud"
765
+ }
766
+ ],
767
+ "options": [
768
+ {
769
+ "name": "--dir",
770
+ "description": "Local migration directory to push",
771
+ "type": "string"
772
+ },
773
+ {
774
+ "name": "--dev-url",
775
+ "description": "Dev database URL for validation",
776
+ "type": "string"
777
+ },
778
+ {
779
+ "name": "--env",
780
+ "description": "Environment from config",
781
+ "type": "string"
782
+ },
783
+ {
784
+ "name": "--config",
785
+ "description": "Path to atlas config file",
786
+ "type": "string"
787
+ },
788
+ {
789
+ "name": "--tag",
790
+ "description": "Tag for the pushed version",
791
+ "type": "string"
792
+ },
793
+ {
794
+ "name": "--var",
795
+ "description": "Input variable for atlas.hcl",
796
+ "type": "string"
797
+ }
798
+ ],
799
+ "examples": [
800
+ "atlas migrate push myapp --dev-url 'docker://postgres/15'",
801
+ "atlas migrate push myapp --tag v1.0 --env production"
802
+ ]
803
+ },
804
+ {
805
+ "name": "migrate validate",
806
+ "description": "Validate the integrity and correctness of the migration directory, checking hash consistency and file ordering.",
807
+ "args": [],
808
+ "options": [
809
+ {
810
+ "name": "--dir",
811
+ "description": "Migration directory URL",
812
+ "type": "string"
813
+ },
814
+ {
815
+ "name": "--dev-url",
816
+ "description": "Dev database URL for validation",
817
+ "type": "string"
818
+ },
819
+ {
820
+ "name": "--env",
821
+ "description": "Environment from config",
822
+ "type": "string"
823
+ },
824
+ {
825
+ "name": "--config",
826
+ "description": "Path to atlas config file",
827
+ "type": "string"
828
+ }
829
+ ],
830
+ "examples": [
831
+ "atlas migrate validate",
832
+ "atlas migrate validate --dev-url 'docker://postgres/15'",
833
+ "atlas migrate validate --env local"
834
+ ]
835
+ },
836
+ {
837
+ "name": "migrate rebase",
838
+ "description": "Squash and rebase migration files from a specific version, combining them into a single migration for cleaner history.",
839
+ "args": [],
840
+ "options": [
841
+ {
842
+ "name": "--dir",
843
+ "description": "Migration directory URL",
844
+ "type": "string"
845
+ },
846
+ {
847
+ "name": "--dev-url",
848
+ "description": "Dev database URL",
849
+ "type": "string"
850
+ },
851
+ {
852
+ "name": "--env",
853
+ "description": "Environment from config",
854
+ "type": "string"
855
+ },
856
+ {
857
+ "name": "--config",
858
+ "description": "Path to atlas config file",
859
+ "type": "string"
860
+ }
861
+ ],
862
+ "examples": [
863
+ "atlas migrate rebase --dev-url 'docker://postgres/15'",
864
+ "atlas migrate rebase --env local"
865
+ ]
866
+ }
867
+ ],
868
+ "globalOptions": [
869
+ {
870
+ "name": "--help",
871
+ "short": "-h",
872
+ "description": "Show help information"
873
+ },
874
+ {
875
+ "name": "--version",
876
+ "description": "Show Atlas version"
877
+ },
878
+ {
879
+ "name": "--config",
880
+ "description": "Path to atlas configuration file (atlas.hcl)",
881
+ "type": "string"
882
+ },
883
+ {
884
+ "name": "--env",
885
+ "description": "Environment to use from config file",
886
+ "type": "string"
887
+ },
888
+ {
889
+ "name": "--var",
890
+ "description": "Input variables for atlas.hcl (key=value format)",
891
+ "type": "string"
892
+ }
893
+ ],
894
+ "examples": [
895
+ "atlas schema inspect --url 'postgres://localhost/mydb'",
896
+ "atlas schema apply --url 'postgres://localhost/mydb' --to file://schema.hcl --dev-url 'docker://postgres/15'",
897
+ "atlas schema diff --from 'postgres://localhost/dev' --to 'postgres://localhost/staging'",
898
+ "atlas migrate diff add_users --to file://schema.hcl --dev-url 'docker://postgres/15'",
899
+ "atlas migrate apply --url 'postgres://localhost/mydb'",
900
+ "atlas migrate status --url 'postgres://localhost/mydb'",
901
+ "atlas migrate lint --dev-url 'docker://postgres/15' --latest 1",
902
+ "atlas migrate hash",
903
+ "atlas migrate new create_orders",
904
+ "atlas migrate down --url 'postgres://localhost/mydb' --dev-url 'docker://postgres/15'",
905
+ "atlas migrate validate --dev-url 'docker://postgres/15'",
906
+ "atlas migrate checkpoint --dev-url 'docker://postgres/15'",
907
+ "atlas schema fmt",
908
+ "atlas migrate push myapp --dev-url 'docker://postgres/15' --tag latest"
909
+ ],
910
+ "relatedCommands": [
911
+ "flyway",
912
+ "liquibase",
913
+ "prisma",
914
+ "alembic",
915
+ "dbmate"
916
+ ],
917
+ "contextEngine": {
918
+ "detectors": [
919
+ {
920
+ "name": "atlas_config_detect",
921
+ "description": "Detect Atlas configuration file (atlas.hcl)",
922
+ "command": "find . -maxdepth 2 -name 'atlas.hcl' -type f 2>/dev/null | head -3",
923
+ "parser": "lines",
924
+ "cacheFor": 60
925
+ },
926
+ {
927
+ "name": "atlas_schema_detect",
928
+ "description": "Detect Atlas HCL schema files",
929
+ "command": "find . -maxdepth 3 -name 'schema.hcl' -o -name '*.hcl' -path '*/schema/*' 2>/dev/null | head -10",
930
+ "parser": "lines",
931
+ "cacheFor": 60
932
+ },
933
+ {
934
+ "name": "atlas_migrations_detect",
935
+ "description": "Detect Atlas migration files and atlas.sum",
936
+ "command": "find . -name 'atlas.sum' -o -path '*/migrations/*.sql' 2>/dev/null | head -10",
937
+ "parser": "lines",
938
+ "cacheFor": 30
939
+ },
940
+ {
941
+ "name": "atlas_version",
942
+ "description": "Get installed Atlas version",
943
+ "command": "atlas version 2>/dev/null || echo 'not installed'",
944
+ "parser": "lines",
945
+ "cacheFor": 120
946
+ },
947
+ {
948
+ "name": "atlas_env_detect",
949
+ "description": "Detect configured Atlas environments",
950
+ "command": "grep -E '^env\\s' atlas.hcl 2>/dev/null | head -5 || echo 'no config'",
951
+ "parser": "lines",
952
+ "cacheFor": 60
953
+ }
954
+ ]
955
+ }
956
+ }