Note: If you are looking for configuration on a per-deployment basis, read our deployment configuration documentation.

Using the following files and configuration options, you can configure all Now clients (Now CLI and Now Desktop) under your system user.

There are two global configuration files: config.json and auth.json. By default, these files are held in a directory named .now within the user's home directory. For example on Unix based systems they will be found at ~/.now/*.json.

config.json

This file is used for global configuration of Now deployments. Both Now CLI and Now Desktop use this file as a way to co-ordinate how deployments should be treated, consistently.

The first option is a single _ that gives a description to the file, if a user should find themselves looking through it without context.

The following options are all of the options that can be used by users to configure their Now deployments globally on their system for that user profile:

updateChannel

Type: String.

Valid values: stable (default), canary.

This option tells Now Desktop which channel it should look for updates on for both Now Desktop and, if desktop.updateCLI is enabled, Now CLI.

By default, the update channel is stable but by using canary you will get access to the latest pre-released features to test before they are officially released.

{
  "updateChannel": "stable"
}

currentTeam

Type: String.

Valid values: A team ID.

This option tells both Now CLI and Now Desktop which context is currently active. If this property exists and contains a team ID, that team is used as the scope for deployments, otherwise if this property does not exist, the user's personal account is used.

{
  "currentTeam": "team_ofwUZockJlL53hINUGCc1ONW"
}

api

Type: String.

Valid values: An API Origin URL.

This option selects which API Origin both Now CLI and Now Desktop should use when performing an action requiring the API.

{
  "api": "https://api-sfo1.zeit.co"
}

desktop

Type: Object.

This is an object that contains configuration options relating only to Now Desktop. The following options can be used:

shownTips

Type: Object.

This is an object that contains the configuration properties for which tips should be shown when using Now Desktop. The following options can be used within this object:

pasteFromClipboard

Type: Boolean.

Valid values: true, false (default).

This option allows the display of the "paste from clipboard" tip which teaches how to deploy with Now Desktop using the clipboard.

This default value of this option is false (or the option will not exist) unless the tip has been closed within Now Desktop, in which case this option will hold the value true.

{
  "desktop": {
    "shownTips": {
      "pasteFromClipboard": true
    }
  }
}

updateCLI

Type: Boolean.

Valid values: true, false (default).

This option tells Now Desktop whether to keep Now CLI up-to-date while the app is open. If the value is true, Now Desktop will install updates for Now CLI based on the update channel.

{
  "desktop": {
    "updateCLI": true
  }
}

teamOrder

Type: Array.

Valid values: A list of team slugs that the active user is part of, and the username or email of the active user.

This option defines the order that teams are shown in the footer of Now Desktop. The order of this array can change by dragging or dropping the avatars in Now Desktop or re-ordering this list.

{
  "desktop": {
    "teamOrder": ['timothy', 'zeit', 'now-examples', 'hyper']
  }
}

collectMetrics

Type: Boolean.

Valid values: true (default), false.

This option defines whether Now CLI should collect anonymous metrics about which commands are invoked the most, how long they take to run, and which errors customers are running into.

{
  "collectMetrics": true
}

auth.json

This file should not be edited manually. It exists to contain the authentication information for the Now clients.

In the case that you are uploading your global configuration setup to a potentially insecure destination, we highly recommend ensuring that this file will not be uploaded, as it allows an attacker to gain access to your provider accounts.

Read Next