Skip to main content

Install the Nango CLI

Install the Nango CLI globally:
In the folder where you want your integration folder (e.g. root of your project), run:
This creates the ./nango-integrations folder with some initial configuration and an example sync script. The nango-integrations directory looks like this:

CLI Authentication

Add the following env vars. We recommend that you have a .env file in ./nango-integrations:
Get your prod and dev secret keys from Environment Settings > API Keys (toggle between the prod and dev environment in the left nav bar).
For self-hosting, set the NANGO_HOSTPORT env variable to http://localhost:3003 (for local development) or your instance’s URL.

All CLI commands & command details

Check out all CLI commands by running:
Get details about a specific command by running:

Interactive Mode

The Nango CLI includes an interactive mode that prompts you for missing arguments. For example, if you run nango create without specifying the function type, integration, or name, the CLI will prompt you for them. This mode is enabled by default when you’re in an interactive terminal session.

Usage Examples

Interactive Usage: If you run a command without all the required arguments, the CLI will prompt you for them.
Non-Interactive (Explicit) Usage: You can provide all arguments upfront to bypass the interactive prompts. This is ideal for scripting.

Disabling Interactive Mode

You can disable interactive mode in two ways:
  1. Using a flag: Pass the --no-interactive flag to any command.
  2. In a CI environment: Interactive mode is automatically disabled when the CI environment variable is set. This is the standard way to detect CI/CD environments.

Backwards Compatibility

Interactive mode is fully backward compatible. If you provide all the required arguments for a command, the CLI will not prompt you for anything and will behave exactly as it did before.

Flags & environment variables

Global command flags:
Environment variables:

Dependency management

For Zero YAML projects, the CLI can keep required dev dependencies (for example nango and related tooling) in sync and run package installation when needed.

--no-dependency-update

Use --no-dependency-update to disable automatic package.json updates and dependency installs:
This is especially useful when:
  • your CI pipeline should not modify files
  • your monorepo manages dependencies at the workspace root
  • you want full control over when install runs
In CI, dependency updates are automatically disabled to avoid hanging. Passing --no-dependency-update explicitly is still recommended to make intent clear and silence the warning.
When dependency updates are disabled, Nango will not install dependencies for you. Ensure dependencies are already installed before running commands.

Package manager support

Nango supports all major JavaScript package managers. The CLI automatically detects and uses your package manager for installs. Detection works from the current directory upward (monorepo-aware), in this order:
  1. package.json packageManager field (Corepack standard)
  2. lock files (pnpm-lock.yaml, yarn.lock, bun.lockb / bun.lock)
  3. fallback to npm
Supported managers are npm, pnpm, yarn, and bun.
Questions, problems, feedback? Please reach out in the Slack community.