---
url: /v6.2/en-us/cli-reference-core.md
---
# Core & Runtime Commands

This page covers the cross-domain core commands used across most CLI workflows.

## `auth`

**Purpose**: log in, switch authentication methods, and inspect the current credential state.

**Common subcommands**:

* `login` `logout` `device-login`
* `status` `refresh`
* `use`
* `methods` `active` `activate`
* `config` `verify`
* `generate`

Use this family when you first connect to a host, switch auth strategies, or troubleshoot sign-in state or access-token state. The recommended path is to set `HBI_HOST` explicitly, then run `auth login --device-login` (or the equivalent `auth device-login`). `HBI_HOST` and `auth use --host` can use a bare host or a subpath form such as `platform.hengshi.org/bi`; when the scheme is omitted, CLI probes `https://` first and falls back to `http://`. `auth use --host ...` and `instance use` should stay optional local-default conveniences, not the primary path for scripts, agents, or multi-environment work.

## `search`

**Purpose**: search apps, dashboards, and datasets across folder trees.

This command does not have second-level subcommands. The important parameters are:

* `--area`
* `--root` / `--folder`
* `--recursive`
* `--type`
* `--query`

When you do not know which folder or app contains the resource, start with the `search` command tree.

## `config`

**Purpose**: inspect or edit local CLI configuration.

This command does not have second-level subcommands. The most common forms are:

* `hbi config`
* `hbi config --edit`

Use it when you need to inspect what the CLI is reading locally or open the interactive editor.

## `preferences`

**Purpose**: read or update system-level preferences.

**Common subcommands**:

* general inspection: `get` `about` `instances`
* log levels: `log-levels` `update-log-levels`
* config families: `environment` `everest` `security` `smtp` `home`
* page and style settings: `app-mart-tag` `list-sort` `skin` `css` `js`
* other settings: `gis` `open-dwinfo`
* key-based access: `get-config` `set-config`

Use this family for system inspections, environment checks, and configuration previews.

## `scheduler`

**Purpose**: manage existing schedules.

**Common subcommands**:

* `list` `show`
* `update` `delete`
* `switch`
* `context`
* `logs`

Use it to inspect notebook, pipeline, dataset, data-alert, app-refresh, and other schedule instances that already exist.

## `logs`

**Purpose**: download system logs.

**Common subcommands**:

* `download --log-type BACKEND --begin <time> [--end <time>] [--output-file <path>]`

`--log-type` supports `BACKEND` and `APM`. `BACKEND` downloads server-side debug logs from system debugging; use `APM` for APM metrics, traces, and related logs.

`--begin` and `--end` accept RFC3339 timestamps such as `2026-06-24T14:54:00+08:00`, or `yyyy-MM-dd HH:mm:ss` timestamps. When `--end` is omitted, the backend uses the current time.

This family is mainly used in troubleshooting and operations.

## Where to drill down next

| Scenario | Start with |
| --- | --- |
| sign in, switch auth methods, or inspect sign-in state or access-token state | `auth` |
| search across folders for apps, dashboards, or datasets | `search` |
| inspect or edit local CLI config | `config` |
| inspect system-level preferences | `preferences` |
| manage existing schedules | `scheduler` |
| download system logs | `logs` |

When you need exact flags, parameters, or examples, use that command tree's `--help` in the terminal.
