> For the complete documentation index, see [llms.txt](https://codemash.gitbook.io/codemash/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://codemash.gitbook.io/codemash/cli/reference/sign-in-and-config.md).

# Sign-in and configuration

Sign in, see who you are, profiles and the local configuration.

Sign in, see who you are, profiles and the local configuration.

9 commands (`@norbix.ai/cli` 1.16.0):

* [`norbix config get`](#norbix-config-get) — Print one configuration value
* [`norbix config list`](#norbix-config-list) — Show the local CLI configuration (secrets redacted)
* [`norbix config set`](#norbix-config-set) — Set one configuration value
* [`norbix config unset`](#norbix-config-unset) — Remove one configuration value
* [`norbix configure`](#norbix-configure) — Set up a profile in \~/.norbix/config (like `aws configure`).
* [`norbix login`](#norbix-login) — Log in to Norbix.
* [`norbix logout`](#norbix-logout) — Remove the login session from this machine.
* [`norbix profiles`](#norbix-profiles) — List profiles from \~/.norbix/config (keys redacted) and the active session
* [`norbix whoami`](#norbix-whoami) — Show the resolved context (profile, auth source, endpoints) and verify it against the server

## `norbix config get`

Print one configuration value

```sh
norbix config get KEY
```

| Argument | Required | Description                                                                           |
| -------- | -------- | ------------------------------------------------------------------------------------- |
| `KEY`    | yes      | One of: projectId, accountId, region, env, apiUrl, hubUrl, apiKey, filesIntegrationId |

Also takes the [global flags](/codemash/cli/reference.md#global-flags): `--json`, `--project`, `--env`, `--region`, `--api-key`, `--account`, `--profile`.

Examples:

```sh
norbix config get projectId
```

## `norbix config list`

Show the local CLI configuration (secrets redacted)

```sh
norbix config list
```

Also takes the [global flags](/codemash/cli/reference.md#global-flags): `--json`, `--project`, `--env`, `--region`, `--api-key`, `--account`, `--profile`.

Examples:

```sh
norbix config list
```

## `norbix config set`

Set one configuration value

```sh
norbix config set KEY VALUE [flags]
```

| Argument | Required | Description                                                                           |
| -------- | -------- | ------------------------------------------------------------------------------------- |
| `KEY`    | yes      | One of: projectId, accountId, region, env, apiUrl, hubUrl, apiKey, filesIntegrationId |
| `VALUE`  | yes      | New value                                                                             |

| Flag        | Description                                                            |
| ----------- | ---------------------------------------------------------------------- |
| `--dry-run` | Resolve context and print the request that would be sent; send nothing |

Also takes the [global flags](/codemash/cli/reference.md#global-flags): `--json`, `--project`, `--env`, `--region`, `--api-key`, `--account`, `--profile`.

Examples:

```sh
norbix config set projectId 5f1a9f7e2b3c4d5e6f708192
norbix config set region nb-eu-germany
norbix config set env TEST
norbix config set region nb-eu-germany --dry-run
```

## `norbix config unset`

Remove one configuration value

```sh
norbix config unset KEY [flags]
```

| Argument | Required | Description                                                                           |
| -------- | -------- | ------------------------------------------------------------------------------------- |
| `KEY`    | yes      | One of: projectId, accountId, region, env, apiUrl, hubUrl, apiKey, filesIntegrationId |

| Flag        | Description                                                            |
| ----------- | ---------------------------------------------------------------------- |
| `--dry-run` | Resolve context and print the request that would be sent; send nothing |

Also takes the [global flags](/codemash/cli/reference.md#global-flags): `--json`, `--project`, `--env`, `--region`, `--api-key`, `--account`, `--profile`.

Examples:

```sh
norbix config unset region
norbix config unset region --dry-run
```

## `norbix configure`

Set up a profile in \~/.norbix/config (like `aws configure`).

```
Asks for a service-user API key, project ID, and optional account ID and
environment. Use --profile to create or edit a named profile; without it the
[default] profile is written. Later, run any command with
--profile <name> to use exactly that profile.
```

```sh
norbix configure [flags]
```

| Flag                  | Description                                     |
| --------------------- | ----------------------------------------------- |
| `--api-url` `<value>` | API endpoint (default: <https://api.norbix.ai>) |
| `--hub-url` `<value>` | Hub endpoint (default: <https://hub.norbix.ai>) |

Also takes the [global flags](/codemash/cli/reference.md#global-flags): `--json`, `--project`, `--env`, `--region`, `--api-key`, `--account`, `--profile`.

Examples:

```sh
norbix configure
norbix configure --profile fitskin-prod
norbix configure --profile localhost --api-url http://localhost:5001 --hub-url http://localhost:5002
```

## `norbix login`

Log in to Norbix.

```
Default: browser sign-in. The CLI shows a one-time code and opens the
Norbix dashboard; you sign in there, pick the roles the CLI gets, and press
Allow. The CLI then works as an AI service user named "Norbix CLI
(<this computer>)" with exactly those roles — never more than you have. You
can remove it any time in the dashboard under Account → AI service users.

The session is saved to ~/.norbix/session.json and every terminal window
uses it. The access token lasts one hour and is refreshed by itself; when
the sign-in is removed or runs out, the next command asks you to log in
again (exit 4).

If the Hub is older than the browser sign-in, the CLI says so and falls
back to user + password.

--user / --password  force the password flow.
--api-key            saves a long-lived key into a profile instead
                     (same as `norbix configure`).

Commands run with --profile skip the session on purpose and use that
profile's API key.

Non-interactive shells (scripts, CI, coding agents) cannot answer prompts:
pass --api-key (with --project), or --user with --password, or set
NORBIX_API_KEY in the environment. Without one of these the command exits 2.
```

```sh
norbix login [flags]
```

| Flag                         | Description                               |
| ---------------------------- | ----------------------------------------- |
| `-u`, `--user` `<value>`     | User name (email) — forces password login |
| `-p`, `--password` `<value>` | Password (prompted securely if omitted)   |

Also takes the [global flags](/codemash/cli/reference.md#global-flags): `--json`, `--project`, `--env`, `--region`, `--api-key`, `--account`, `--profile`.

Examples:

```sh
norbix login
norbix login --user alice@example.com
norbix login --api-key nbk_live_7hK2abc --project 66b2f0a1c3d4e5f6a7b8c9d0 --region nb-eu-germany --profile ci
norbix login --user alice@example.com --password "$NORBIX_PASSWORD" --project 66b2f0a1c3d4e5f6a7b8c9d0
```

## `norbix logout`

Remove the login session from this machine.

```
After a browser sign-in the refresh token is also revoked on the Hub, so the
session cannot be used anywhere. The AI service user itself stays under
Account → AI service users in the dashboard; remove it there.

Profiles in ~/.norbix/config (API keys) are NOT touched — manage those with
`norbix configure` or by editing the file.
```

```sh
norbix logout [flags]
```

| Flag        | Description                                                            |
| ----------- | ---------------------------------------------------------------------- |
| `--dry-run` | Resolve context and print the request that would be sent; send nothing |

Also takes the [global flags](/codemash/cli/reference.md#global-flags): `--json`, `--project`, `--env`, `--region`, `--api-key`, `--account`, `--profile`.

Examples:

```sh
norbix logout
norbix logout --dry-run
```

## `norbix profiles`

List profiles from \~/.norbix/config (keys redacted) and the active session

```sh
norbix profiles
```

Also takes the [global flags](/codemash/cli/reference.md#global-flags): `--json`, `--project`, `--env`, `--region`, `--api-key`, `--account`, `--profile`.

Examples:

```sh
norbix profiles
```

## `norbix whoami`

Show the resolved context (profile, auth source, endpoints) and verify it against the server

```sh
norbix whoami
```

Also takes the [global flags](/codemash/cli/reference.md#global-flags): `--json`, `--project`, `--env`, `--region`, `--api-key`, `--account`, `--profile`.

Examples:

```sh
norbix whoami
norbix whoami --profile fitskin-prod
norbix whoami --json
```
