remotion-dev/remotion · error · Error

Please specify at least one package name. Example: npx remot

Error message

Please specify at least one package name. Example: npx remotion add @remotion/transitions

What it means

Thrown by the `remotion add` subcommand when no positional package arguments were supplied. The add command installs additional @remotion/* packages into the current project and requires at least one package name to operate on.

Source

Thrown at packages/cli/src/index.ts:131

			ffmpegCommand(process.argv.slice(3), logLevel);
		} else if (command === 'gpu') {
			await gpuCommand(logLevel);
		} else if (command === 'ffprobe') {
			ffprobeCommand(process.argv.slice(3), logLevel);
		} else if (command === 'upgrade') {
			await upgradeCommand({
				remotionRoot,
				packageManager: packageManager ?? undefined,
				version:
					versionFlagOption.getValue({commandLine: parsedCli}).value ??
					undefined,
				skipSkills: skipSkillsOption.getValue({commandLine: parsedCli}).value,
				logLevel,
				args,
			});
		} else if (command === 'add') {
			if (args.length === 0) {
				throw new Error(
					'Please specify at least one package name. Example: npx remotion add @remotion/transitions',
				);
			}

			// Find where additional flags start (arguments starting with -)
			const flagIndex = args.findIndex((arg) => arg.startsWith('-'));
			const packageNames = flagIndex === -1 ? args : args.slice(0, flagIndex);
			const additionalArgs = flagIndex === -1 ? [] : args.slice(flagIndex);

			await addCommand({
				remotionRoot,
				packageManager: packageManager ?? undefined,
				packageNames,
				logLevel,
				args: additionalArgs,
			});
		} else if (command === 'skills') {
			await skillsCommand(args, logLevel, {

View on GitHub (pinned to 78fe4bb3fd)

Solutions

  1. Provide one or more package names: `npx remotion add @remotion/transitions @remotion/shapes`.
  2. If unsure which packages exist, browse https://remotion.dev/docs or run `npx remotion add @remotion/<tab>` completion.

Example fix

// before
$ npx remotion add
// after
$ npx remotion add @remotion/transitions
Defensive patterns

Strategy: validation

Validate before calling

const validateAddArgs = (args: string[]) => {
  const packageNames = args.filter((a) => !a.startsWith('-'));
  if (packageNames.length === 0) {
    throw new Error('Pass at least one package name to `remotion add`, e.g. @remotion/transitions');
  }
  return packageNames;
};

validateAddArgs(process.argv.slice(2));

Type guard

const hasPackageName = (args: string[]): boolean =>
  args.some((a) => !a.startsWith('-'));

Prevention

When it happens

Trigger: Running `npx remotion add` with no arguments, or only flags (e.g. `remotion add --help` style invocation that still reaches this branch).

Common situations: Forgetting the package name; assuming `add` with no args lists available packages; copy-paste truncation of a command.

Related errors


AI-assisted analysis of remotion-dev/remotion@78fe4bb3fd (2026-08-12). Data as JSON: /api/errors/04940431c70d2b62. Report an issue: GitHub.