Documentation Index
Fetch the complete documentation index at: https://docs.helix-db.com/llms.txt
Use this file to discover all available pages before exploring further.
For the complete documentation index optimized for AI agents, see llms.txt.This page documents the configuration files the Helix CLI reads and writes:
helix.toml— per-project configuration in your project root.~/.helix/config— user-global state, currently the selected workspace.~/.helix/credentials— V2 Cloud credentials written byhelix auth login.
helix.toml
helix init creates helix.toml in your project root. Everything the CLI knows about your project lives here.
[local.*] or [enterprise.*] instance is required. The CLI rejects an empty helix.toml.
[project]
| Key | Type | Required | Default | Description |
|---|---|---|---|---|
name | String | Yes | — | Project name. Used in the container name pattern helix-<project>-<instance>. |
id | String | No | — | Linked V2 Cloud project ID. Set by helix project switch. |
workspace_id | String | No | — | Linked V2 Cloud workspace ID. Set by helix project switch. |
container_runtime | docker | podman | No | docker | Runtime used to manage local containers. |
[local.<instance>]
One block per local instance. The instance name is the table key (e.g. [local.dev]).
| Key | Type | Default | Description |
|---|---|---|---|
port | Number | 8080 | Host port published to container port 8080. |
image | String | ghcr.io/helixdb/database-dev | Container image used by helix run. |
tag | String | latest | Image tag. |
storage | memory | disk | memory | Local storage mode. disk uses a CLI-managed MinIO container and persistent volume. |
helix run <instance> --disk as a one-off disk-mode run without changing helix.toml.
[enterprise.<instance>]
One block per V2 Cloud instance. Most fields here are populated automatically by helix sync.
| Key | Type | Required | Default | Description |
|---|---|---|---|---|
cluster_id | String | Yes | — | V2 Cloud cluster ID. List clusters with helix cluster list. |
workspace_id | String | No | — | Workspace the cluster belongs to. |
project_id | String | No | — | Linked project ID. |
gateway_url | URL | No (required at query time) | — | Runtime gateway base URL. Populated by helix sync when available. |
query_auth_header | String | No | Authorization | HTTP header name used for query auth. |
query_auth_env | String | No | HELIX_API_KEY | Environment variable read by helix query for the auth header value. |
availability_mode | String | No | — | Cluster availability mode, returned by helix sync. |
gateway_node_type | String | No | — | Gateway node type, returned by helix sync. |
db_node_type | String | No | — | DB node type, returned by helix sync. |
gateway_url is missing, helix query <instance> fails with:
~/.helix/config
User-global configuration written by helix workspace switch.
~/.helix/credentials
Written by helix auth login. Plain key=value format:
helix auth logout. Never commit this file.
Environment variables
| Variable | Used by | Description |
|---|---|---|
HELIX_API_KEY (default) | helix query | Per-cluster V2 Cloud API key sent in the configured auth header. The variable name is configurable per-instance via query_auth_env. |
Troubleshooting
- Port conflict on
helix run— change the port in[local.<instance>] port, or passhelix run <instance> --port <port>to override for a single run. Missing instances—helix.tomlhas no[local.*]or[enterprise.*]blocks. Add one withhelix add.Authentication required— runhelix auth loginfor V2 Cloud commands.gateway_url is still missingafterhelix sync— the cloud-side configuration has not been published yet. Re-runhelix synclater, or setgateway_urlmanually under[enterprise.<instance>].
Next Steps
Local workflow
The local init/run/query loop
Troubleshooting
Solve common CLI issues