CLI: `npx datocms` now Just Works
The DatoCMS CLI is now published on npm as datocms — an unscoped package with the same name as its binary. The scoped @datocms/cli package is still around as a thin alias, so existing setups keep working unchanged.
The main win: npx datocms now "Just Works" in every context — whether the package is installed locally, globally, or not installed at all.
Why this matters
Until now, running npx datocms projects:list inside a project that had @datocms/cli installed could result in a confusing error:
$ npx datocms projects:listnpm error Missing script: "datocms"This is an npm/npx quirk: when the package name and binary name differ, it can't always find the CLI and bails out. pnpm, yarn, and bun all handled this case correctly — it's only npm users who got bitten. Now that the package and binary share the same name, the most natural command just works. As a bonus, we now own the unscoped datocms name on npm, so it can't get squatted.
What changes for you
New users: run
npx datocms ...ornpm i -g datocms. That's it.Existing users on
@datocms/cli: nothing to do. Your setup keeps working, and you'll transparently pick up the newdatocmspackage as a dependency. Migrating is a one-line change inpackage.jsonwhenever you feel like it.Existing migration files importing from
@datocms/cli/lib/cma-client-node: still work, no changes needed. New migration files usedatocms/lib/cma-client-node.
Head over to the docs on configuring the CLI for installation details.