selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

NornicDB logo

Self-host NornicDB

v1.4.3

Neo4j-compatible graph and vector database with MVCC

ReleaseOpen SourceMIT
docker run -d --name nornicdb -p 7474:7474 -p 7687:7687 -v nornicdb-data:/data timothyswt/nornicdb-arm64-metal-bge:latest # Apple Silicon
Updated6 days ago
LanguageGo
Setup difficultyModerate
Stars
920
Ports
7474 (HTTP API and admin UI), 7687 (Bolt protocol (Neo4j compatible))
Docker
timothyswt/nornicdb-arm64-metal-bge

What is NornicDB?

Should you self-host NornicDB?

NornicDB scores 52/100 on selfhost.directory (how scoring works) and ranks #5 of 7 in Databases & storage. It has 920 GitHub stars.

It shipped 8 stable releases in the past year. The latest, v1.4.3, came out on 16 October 2026. New versions land roughly every 3 days.

Setup is moderate: expect some configuration beyond a single command. An official Docker image is available. It is MIT-licensed and written mostly in Go.

Its closest alternative on selfhost.directory is SurrealDB (78/100, 33 241 stars). It scores higher overall, so compare the two before you pick. See NornicDB vs SurrealDB side by side.

Features

  • APOC-style function library and plugin system
  • Auto-relationships
  • Clustering and sharding
  • Embedded AI assistant (Heimdall)
  • GPU acceleration (Metal/CUDA/Vulkan)
  • GraphQL API
  • Graph + vector database
  • Hybrid search (BM25 + vector)
  • MCP server for AI agents
  • Memory decay and promotion policies
  • MVCC snapshot isolation and historical reads
  • Neo4j Bolt/Cypher compatibility
  • Qdrant-compatible gRPC
  • REST API
  • Vector search (HNSW)

NornicDB README

How to install NornicDB

Install NornicDB with Docker

# Apple Silicon (includes bge-m3 embedding model)
docker run -d --name nornicdb \
  -p 7474:7474 -p 7687:7687 \
  -v nornicdb-data:/data \
  timothyswt/nornicdb-arm64-metal-bge:latest  # Apple Silicon
  # timothyswt/nornicdb-amd64-cuda-bge:latest  # NVIDIA GPU

Multiple image variants: CPU, CUDA, Metal, Vulkan, BYOM and headless.

How to configure NornicDB

  • NORNICDB_ACCESS_CONTROL_ENABLEDSee sourceAccess control enabled

    Access control enabled

    values: string

  • NORNICDB_ADDRESS127.0.0.1Bind address (127.0.0.1 for localhost only, 0.0.0.0 for all interfaces)

    Bind address (127.0.0.1 for localhost only, 0.0.0.0 for all interfaces)

    values: string

  • NORNICDB_ALLOW_HTTPSee sourceAllowHTTP permits non-TLS connections (development only)

    AllowHTTP permits non-TLS connections (development only)

    values: string

  • NORNICDB_ALLOW_REMOTE_EVAL(unset)Allow remote eval

    Allow remote eval

    values: string

  • NORNICDB_ANONYMIZATION_ENABLEDSee sourceAnonymization enabled

    Anonymization enabled

    values: string

  • NORNICDB_ANONYMIZATION_METHODSee sourceAnonymization method

    Anonymization method

    values: string

  • NORNICDB_APOC_See sourceApoc

    Apoc

    values: string

  • NORNICDB_APOC_ALGO_ENABLEDSee sourceApoc algo enabled

    Apoc algo enabled

    values: string

  • NORNICDB_APOC_SECURITY_ALLOW_DYNAMIC_CREATION(unset)Apoc security allow dynamic creation

    Apoc security allow dynamic creation

    values: string

  • NORNICDB_APOC_SECURITY_ALLOW_EXPORT_FILE_ACCESS(unset)Allow APOC export procedures to write local files

    Allow APOC export procedures to write local files

    values: string

  • NORNICDB_APOC_SECURITY_ALLOW_FILE_ACCESS(unset)Legacy shorthand enabling both APOC import and export local file access

    Legacy shorthand enabling both APOC import and export local file access

    values: string

  • NORNICDB_APOC_SECURITY_ALLOW_IMPORT_FILE_ACCESS(unset)Allow APOC import and load procedures to read local files

    Allow APOC import and load procedures to read local files

    values: string

  • NORNICDB_APOC_SECURITY_ALLOW_REMOTE_URL_ACCESS(unset)Allow APOC load/import procedures to fetch remote HTTP(S) URLs

    Allow APOC load/import procedures to fetch remote HTTP(S) URLs

    values: string

  • NORNICDB_APOC_SECURITY_FILE_ACCESS_ROOT(unset)Root directory used to normalize and constrain APOC local file paths when set

    Root directory used to normalize and constrain APOC local file paths when set

    values: string

  • NORNICDB_APOC_SECURITY_MAX_COLLECTION_SIZE(unset)Apoc security max collection size

    Apoc security max collection size

    values: string

  • NORNICDB_ASYNC_FLUSH_INTERVALautoAsyncFlushInterval is the initial rotation delay for the adaptive write-behind buffer. `auto` (default) lets the runtime adapt the delay to the measured drain latency, clamped to 5ms-1s. A positive value fixes the initial delay; it still adapts afterward.

    AsyncFlushInterval is the initial rotation delay for the adaptive write-behind buffer. `auto` (default) lets the runtime adapt the delay to the measured drain latency, clamped to 5ms-1s. A positive value fixes the initial delay; it still adapts afterward.

    values: string

  • NORNICDB_ASYNC_MAX_EDGE_CACHE_SIZEautoAsyncMaxEdgeCacheSize is a deprecated legacy cap on buffered edges. Prefer `NORNICDB_ASYNC_MAX_OPS`. When AsyncMaxOps is unset and either legacy cap is set, their sum is used as the generation cap. Kept for compatibility.

    AsyncMaxEdgeCacheSize is a deprecated legacy cap on buffered edges. Prefer `NORNICDB_ASYNC_MAX_OPS`. When AsyncMaxOps is unset and either legacy cap is set, their sum is used as the generation cap. Kept for compatibility.

    values: number

  • NORNICDB_ASYNC_MAX_NODE_CACHE_SIZEautoAsyncMaxNodeCacheSize is a deprecated legacy cap on buffered nodes. Prefer `NORNICDB_ASYNC_MAX_OPS`. When AsyncMaxOps is unset and either legacy cap is set, their sum is used as the generation cap. Kept for compatibility.

    AsyncMaxNodeCacheSize is a deprecated legacy cap on buffered nodes. Prefer `NORNICDB_ASYNC_MAX_OPS`. When AsyncMaxOps is unset and either legacy cap is set, their sum is used as the generation cap. Kept for compatibility.

    values: number

  • NORNICDB_ASYNC_MAX_OPSautoAsyncMaxOps caps the write-behind buffer's generation size in buffered operations. `auto` (default) uses the engine's researched default cap (100,000 ops); a positive value overrides it.

    AsyncMaxOps caps the write-behind buffer's generation size in buffered operations. `auto` (default) uses the engine's researched default cap (100,000 ops); a positive value overrides it.

    values: number

  • NORNICDB_ASYNC_WRITES_ENABLEDSee sourceAsyncWritesEnabled enables async writes for faster performance. Writes return immediately after caching; flushed to disk in background.

    AsyncWritesEnabled enables async writes for faster performance. Writes return immediately after caching; flushed to disk in background.

    values: string

  • NORNICDB_AUDIT_ENABLEDSee sourceAudit enabled

    Audit enabled

    values: string

  • NORNICDB_AUDIT_LOG_PATHSee sourceAudit log path

    Audit log path

    values: string

  • NORNICDB_AUDIT_RETENTION_DAYS0Audit retention days

    Audit retention days

    values: number

  • NORNICDB_AUTHSee sourceAuth

    Auth

    values: string

  • NORNICDB_AUTH_JWT_SECRETSee sourceAuth jwt secret

    Auth jwt secret

    values: string

  • NORNICDB_AUTH_PROVIDER(unset)Auth provider

    Auth provider

    values: string

  • NORNICDB_AUTH_TOKEN_EXPIRYSee sourceAuth token expiry

    Auth token expiry

    values: string

  • NORNICDB_AUTO_LINKS_ENABLEDSee sourceAuto links enabled

    Auto links enabled

    values: boolean

  • NORNICDB_AUTO_LINKS_THRESHOLDSee sourceAuto links threshold

    Auto links threshold

    values: number

  • NORNICDB_AUTO_RECOVER_ON_CORRUPTION(unset)Auto recover on corruption

    Auto recover on corruption

    values: string

  • NORNICDB_AUTO_TLP_ENABLEDSee sourceAuto tlp enabled

    Auto tlp enabled

    values: boolean

  • NORNICDB_AUTO_TLP_LLM_AUGMENT_ENABLEDSee sourceAuto tlp llm augment enabled

    Auto tlp llm augment enabled

    values: boolean

  • NORNICDB_AUTO_TLP_LLM_QC_ENABLEDSee sourceAuto tlp llm qc enabled

    Auto tlp llm qc enabled

    values: boolean

  • NORNICDB_BADGER_EDGE_TYPE_CACHE_MAX_TYPES-1BadgerEdgeTypeCacheMaxTypes is the max distinct edge types to cache for GetEdgesByType. When exceeded, the cache is cleared (simple eviction).

    BadgerEdgeTypeCacheMaxTypes is the max distinct edge types to cache for GetEdgesByType. When exceeded, the cache is cleared (simple eviction).

    values: number

  • NORNICDB_BADGER_NODE_CACHE_MAX_ENTRIES-1BadgerNodeCacheMaxEntries is the max nodes to keep in the hot node cache. When exceeded, the cache is cleared (simple eviction).

    BadgerNodeCacheMaxEntries is the max nodes to keep in the hot node cache. When exceeded, the cache is cleared (simple eviction).

    values: number

  • NORNICDB_BASE_PATHSee sourceBase URL path for reverse proxy deployment (e.g., /nornicdb)

    Base URL path for reverse proxy deployment (e.g., /nornicdb)

    values: string

  • NORNICDB_BM25_PREFIX_MAX_EXPANSIONS0Maximum bounded prefix expansions per query term. Set above zero only when partial-token matching is required; exact-token retrieval is the default.

    Maximum bounded prefix expansions per query term. Set above zero only when partial-token matching is required; exact-token retrieval is the default.

    values: number

  • NORNICDB_BM25_PREFIX_MIN_LEN3Bm25 prefix min len

    Bm25 prefix min len

    values: number

  • NORNICDB_BOLT_ADDRESSSee sourceBolt address

    Bolt address

    values: string

  • NORNICDB_BOLT_AUTH_TIMEOUT30sPre-HELLO handshake/auth budget after transport selection

    Pre-HELLO handshake/auth budget after transport selection

    values: duration

  • NORNICDB_BOLT_ENABLEDSee sourceBolt enabled

    Bolt enabled

    values: string

  • NORNICDB_BOLT_MAX_CONNECTIONS0Maximum concurrent Bolt connections, across raw, TLS and WebSocket transports; `0` leaves it uncapped

    Maximum concurrent Bolt connections, across raw, TLS and WebSocket transports; `0` leaves it uncapped

    values: number

  • NORNICDB_BOLT_PORT7687Bolt protocol port (Neo4j compatible)

    Bolt protocol port (Neo4j compatible)

    values: number

  • NORNICDB_BOLT_SERVER_ANNOUNCEMENT(unset)Override the Bolt `HELLO` SUCCESS `server` metadata for strict client compatibility checks such as `cypher-shell`

    Override the Bolt `HELLO` SUCCESS `server` metadata for strict client compatibility checks such as `cypher-shell`

    values: string

  • NORNICDB_BOLT_SNIFF_TIMEOUT5sBound on the transport-sniff peek

    Bound on the transport-sniff peek

    values: duration

  • NORNICDB_BOLT_STATEMENT_TIMEOUTdisabledFallback cap for a Bolt `RUN` when the client did not send `tx_timeout`

    Fallback cap for a Bolt `RUN` when the client did not send `tx_timeout`

    values: duration

  • NORNICDB_BOLT_TLS_CERT(unset)Path to Bolt TLS certificate PEM (cert rotation re-reads every 5s)

    Path to Bolt TLS certificate PEM (cert rotation re-reads every 5s)

    values: string

  • NORNICDB_BOLT_TLS_CLIENT_AUTH_MODEnoneClient-cert handling: `none`, `request`, `request_verify`, `require_verify`

    Client-cert handling: `none`, `request`, `request_verify`, `require_verify`

    values: string

  • NORNICDB_BOLT_TLS_CLIENT_CA(unset)Path to client-CA bundle for mTLS

    Path to client-CA bundle for mTLS

    values: string

  • NORNICDB_BOLT_TLS_ENABLEDSee sourceBolt tls enabled

    Bolt tls enabled

    values: string

  • NORNICDB_BOLT_TLS_KEY(unset)Path to Bolt TLS private key PEM

    Path to Bolt TLS private key PEM

    values: string

  • NORNICDB_BOLT_TLS_REQUIREfalseReject any plaintext connection on the Bolt port (raw OR ws)

    Reject any plaintext connection on the Bolt port (raw OR ws)

    values: bool

  • NORNICDB_BOLT_WEBSOCKET_ALLOWED_ORIGINS*Comma-separated allowlist of WS Origin headers

    Comma-separated allowlist of WS Origin headers

    values: string

  • NORNICDB_BOLT_WEBSOCKET_ENABLEDtrueAccept WebSocket transport on the Bolt port

    Accept WebSocket transport on the Bolt port

    values: bool

  • NORNICDB_BOLT_WEBSOCKET_MAX_MESSAGE_SIZE65536Inbound WS BinaryMessage size limit

    Inbound WS BinaryMessage size limit

    values: number

  • NORNICDB_BOLT_WEBSOCKET_PING_INTERVAL30sServer WS ping cadence

    Server WS ping cadence

    values: duration

  • NORNICDB_BOLT_WEBSOCKET_PONG_TIMEOUT60sPong arrival deadline

    Pong arrival deadline

    values: duration

  • NORNICDB_BOLT_WEBSOCKET_WRITE_BUFFER_SIZE262144bufio writer size for WS sessions

    bufio writer size for WS sessions

    values: number

  • NORNICDB_BREACH_DETECTION_ENABLEDSee sourceBreach detection enabled

    Breach detection enabled

    values: string

  • NORNICDB_BREACH_NOTIFY_EMAILSee sourceBreach notify email

    Breach notify email

    values: string

  • NORNICDB_BREACH_NOTIFY_WEBHOOKSee sourceBreach notify webhook

    Breach notify webhook

    values: string

  • NORNICDB_CDC_RETENTION48hHow long change data capture events are kept (Go duration); the last transaction's are always kept. See docs/user-guides/change-data-capture.md

    How long change data capture events are kept (Go duration); the last transaction's are always kept. See docs/user-guides/change-data-capture.md

    values: duration

  • NORNICDB_CLUSTER_ADVERTISE_ADDRSee sourceCluster advertise address (defaults to bind addr)

    Cluster advertise address (defaults to bind addr)

    values: string

  • NORNICDB_CLUSTER_BIND_ADDRSee sourceCluster bind address for replication protocol (e.g., 127.0.0.1:7000)

    Cluster bind address for replication protocol (e.g., 127.0.0.1:7000)

    values: string

  • NORNICDB_CLUSTER_CONFLICT_STRATEGYlast_write_winsCluster conflict strategy

    Cluster conflict strategy

    values: string

  • NORNICDB_CLUSTER_CROSS_REGION_BATCH_SIZE100Cluster cross region batch size

    Cluster cross region batch size

    values: number

  • NORNICDB_CLUSTER_CROSS_REGION_BATCH_TIMEOUT100*time.MillisecondCluster cross region batch timeout

    Cluster cross region batch timeout

    values: duration

  • NORNICDB_CLUSTER_CROSS_REGION_MODESee sourceCluster cross region mode

    Cluster cross region mode

    values: string

  • NORNICDB_CLUSTER_DATA_DIRSee sourceCluster state directory (defaults to <data-dir>/replication)

    Cluster state directory (defaults to <data-dir>/replication)

    values: string

  • NORNICDB_CLUSTER_HA_AUTO_FAILOVERtrueCluster ha auto failover

    Cluster ha auto failover

    values: boolean

  • NORNICDB_CLUSTER_HA_FAILOVER_TIMEOUT30*time.SecondCluster ha failover timeout

    Cluster ha failover timeout

    values: duration

  • NORNICDB_CLUSTER_HA_HEARTBEAT_MSSee sourceCluster ha heartbeat ms

    Cluster ha heartbeat ms

    values: string

  • NORNICDB_CLUSTER_HA_MAX_RECONNECT_BACKOFF30*time.SecondCluster ha max reconnect backoff

    Cluster ha max reconnect backoff

    values: duration

  • NORNICDB_CLUSTER_HA_PEER_ADDRSee sourceHA standby peer cluster address (host:port)

    HA standby peer cluster address (host:port)

    values: string

  • NORNICDB_CLUSTER_HA_RECONNECT_INTERVAL5*time.SecondCluster ha reconnect interval

    Cluster ha reconnect interval

    values: duration

  • NORNICDB_CLUSTER_HA_ROLESee sourceHA standby role: primary\|standby

    HA standby role: primary\|standby

    values: string

  • NORNICDB_CLUSTER_HA_SYNC_MODESee sourceCluster ha sync mode

    Cluster ha sync mode

    values: string

  • NORNICDB_CLUSTER_HA_WAL_BATCH_SIZE1000Cluster ha wal batch size

    Cluster ha wal batch size

    values: number

  • NORNICDB_CLUSTER_HA_WAL_BATCH_TIMEOUT10*time.MillisecondCluster ha wal batch timeout

    Cluster ha wal batch timeout

    values: duration

  • NORNICDB_CLUSTER_MODESee sourceCluster mode: standalone\|ha_standby\|raft\|multi_region (empty disables clustering)

    Cluster mode: standalone\|ha_standby\|raft\|multi_region (empty disables clustering)

    values: string

  • NORNICDB_CLUSTER_NODE_IDSee sourceCluster node ID (empty auto-generates)

    Cluster node ID (empty auto-generates)

    values: string

  • NORNICDB_CLUSTER_RAFT_BOOTSTRAPfalseRaft bootstrap (true for first node in a new cluster)

    Raft bootstrap (true for first node in a new cluster)

    values: boolean

  • NORNICDB_CLUSTER_RAFT_CLUSTER_IDnornicdbCluster raft cluster id

    Cluster raft cluster id

    values: string

  • NORNICDB_CLUSTER_RAFT_COMMIT_TIMEOUT50*time.MillisecondCluster raft commit timeout

    Cluster raft commit timeout

    values: duration

  • NORNICDB_CLUSTER_RAFT_ELECTION_TIMEOUT1*time.SecondCluster raft election timeout

    Cluster raft election timeout

    values: duration

  • NORNICDB_CLUSTER_RAFT_HEARTBEAT_TIMEOUT100*time.MillisecondCluster raft heartbeat timeout

    Cluster raft heartbeat timeout

    values: duration

  • NORNICDB_CLUSTER_RAFT_LEADER_LEASE_TIMEOUT500*time.MillisecondCluster raft leader lease timeout

    Cluster raft leader lease timeout

    values: duration

  • NORNICDB_CLUSTER_RAFT_MAX_APPEND_ENTRIES64Cluster raft max append entries

    Cluster raft max append entries

    values: number

  • NORNICDB_CLUSTER_RAFT_MAX_INFLIGHT_LOGS512Cluster raft max inflight logs

    Cluster raft max inflight logs

    values: number

  • NORNICDB_CLUSTER_RAFT_PEERSSee sourceRaft peers (format: node2:host2:7000,node3:host3:7000)

    Raft peers (format: node2:host2:7000,node3:host3:7000)

    values: string

  • NORNICDB_CLUSTER_RAFT_SNAPSHOT_INTERVAL300Cluster raft snapshot interval

    Cluster raft snapshot interval

    values: number

  • NORNICDB_CLUSTER_RAFT_SNAPSHOT_RETAIN3Cluster raft snapshot retain

    Cluster raft snapshot retain

    values: number

  • NORNICDB_CLUSTER_RAFT_SNAPSHOT_THRESHOLD10000Cluster raft snapshot threshold

    Cluster raft snapshot threshold

    values: number

  • NORNICDB_CLUSTER_RAFT_TRAILING_LOGS10000Cluster raft trailing logs

    Cluster raft trailing logs

    values: number

  • NORNICDB_CLUSTER_READ_CONSISTENCYSee sourceCluster read consistency

    Cluster read consistency

    values: string

  • NORNICDB_CLUSTER_REGION_IDSee sourceCluster region id

    Cluster region id

    values: string

  • NORNICDB_CLUSTER_REMOTE_REGIONSSee sourceCluster remote regions

    Cluster remote regions

    values: string

  • NORNICDB_CLUSTER_REPLICATION_SECRETSee sourceCluster replication secret

    Cluster replication secret

    values: string

  • NORNICDB_CLUSTER_TLS_CA_FILESee sourceCluster tls ca file

    Cluster tls ca file

    values: string

  • NORNICDB_CLUSTER_TLS_CERT_FILESee sourceCluster tls cert file

    Cluster tls cert file

    values: string

  • NORNICDB_CLUSTER_TLS_CIPHER_SUITESSee sourceCluster tls cipher suites

    Cluster tls cipher suites

    values: string

  • NORNICDB_CLUSTER_TLS_ENABLEDfalseCluster tls enabled

    Cluster tls enabled

    values: boolean

  • NORNICDB_CLUSTER_TLS_INSECURE_SKIP_VERIFYfalseCluster tls insecure skip verify

    Cluster tls insecure skip verify

    values: boolean

  • NORNICDB_CLUSTER_TLS_KEY_FILESee sourceCluster tls key file

    Cluster tls key file

    values: string

  • NORNICDB_CLUSTER_TLS_MIN_VERSION1.2Cluster tls min version

    Cluster tls min version

    values: string

  • NORNICDB_CLUSTER_TLS_SERVER_NAMESee sourceCluster tls server name

    Cluster tls server name

    values: string

  • NORNICDB_CLUSTER_TLS_VERIFY_CLIENTtrueCluster tls verify client

    Cluster tls verify client

    values: boolean

  • NORNICDB_CLUSTER_TRACE_WRITES(unset)Cluster trace writes

    Cluster trace writes

    values: string

  • NORNICDB_CLUSTER_WRITE_CONSISTENCYSee sourceCluster write consistency

    Cluster write consistency

    values: string

  • NORNICDB_CONFIGSee sourcePath to YAML config file (overrides auto-discovery)

    Path to YAML config file (overrides auto-discovery)

    values: string

  • NORNICDB_CONSENT_AUDIT_TRAILSee sourceConsent audit trail

    Consent audit trail

    values: string

  • NORNICDB_CONSENT_REQUIREDSee sourceConsent required

    Consent required

    values: string

  • NORNICDB_CONSENT_VERSIONINGSee sourceConsent versioning

    Consent versioning

    values: string

  • NORNICDB_COOLDOWN_AUTO_INTEGRATION_ENABLEDSee sourceCooldown auto integration enabled

    Cooldown auto integration enabled

    values: string

  • NORNICDB_COOLDOWN_ENABLEDSee sourceCooldown enabled

    Cooldown enabled

    values: string

  • NORNICDB_CORS_ENABLEDSee sourceEnableCORS enables CORS headers for cross-origin requests

    EnableCORS enables CORS headers for cross-origin requests

    values: string

  • NORNICDB_CORS_ORIGINSSee sourceCORSOrigins is a comma-separated list of allowed origins Use "\*" to allow all origins (not recommended for production with credentials)

    CORSOrigins is a comma-separated list of allowed origins Use "\*" to allow all origins (not recommended for production with credentials)

    values: string

  • NORNICDB_CYPHER_QUERY_NORMALIZATIONtrueNormalizes Cypher query text before a statement runs: comments and runs of whitespace outside string literals and quoted names become one space, as Neo4j ignores them. Column names, error messages and plans still show the statement as sent.

    Normalizes Cypher query text before a statement runs: comments and runs of whitespace outside string literals and quoted names become one space, as Neo4j ignores them. Column names, error messages and plans still show the statement as sent.

    values: boolean

  • NORNICDB_DATA_ACCESS_ENABLEDSee sourceData access enabled

    Data access enabled

    values: string

  • NORNICDB_DATA_DIR./dataData directory

    Data directory

    values: string

  • NORNICDB_DATA_ERASURE_ENABLEDSee sourceData erasure enabled

    Data erasure enabled

    values: string

  • NORNICDB_DATA_EXPORT_ENABLEDSee sourceData export enabled

    Data export enabled

    values: string

  • NORNICDB_DEBUG(unset)Debug

    Debug

    values: string

  • NORNICDB_DEFAULT_DATABASESee sourceDefault database

    Default database

    values: string

  • NORNICDB_EDGE_DECAY_ENABLEDSee sourceEdge decay enabled

    Edge decay enabled

    values: string

  • NORNICDB_EDGE_PROVENANCE_AUTO_INTEGRATION_ENABLEDSee sourceEdge provenance auto integration enabled

    Edge provenance auto integration enabled

    values: string

  • NORNICDB_EDGE_PROVENANCE_ENABLEDSee sourceEdge provenance enabled

    Edge provenance enabled

    values: string

  • NORNICDB_EMBED_BATCH_DELAYSee sourceEmbed batch delay

    Embed batch delay

    values: duration

  • NORNICDB_EMBED_CHUNK_OVERLAP0Embed chunk overlap

    Embed chunk overlap

    values: number

  • NORNICDB_EMBED_CHUNK_SIZE0Embed chunk size

    Embed chunk size

    values: number

  • NORNICDB_EMBEDDING_API_KEYSee sourceEmbeddings API key (OpenAI-compatible providers, including OrcaRouter and Voyage)

    Embeddings API key (OpenAI-compatible providers, including OrcaRouter and Voyage)

    values: string

  • NORNICDB_EMBEDDING_API_URLhttp://localhost:11434Embedding API URL (Ollama, OpenAI-compatible providers, or Voyage)

    Embedding API URL (Ollama, OpenAI-compatible providers, or Voyage)

    values: string

  • NORNICDB_EMBEDDING_ATTENTION_TYPE1Attention masking for embedding model (0=causal, 1=non-causal/BERT-style). Default: 1 (non-causal).

    Attention masking for embedding model (0=causal, 1=non-causal/BERT-style). Default: 1 (non-causal).

    values: number

  • NORNICDB_EMBEDDING_CACHE_SIZE10000Embedding cache size (0=disabled, default 10000)

    Embedding cache size (0=disabled, default 10000)

    values: number

  • NORNICDB_EMBEDDING_CTX_TYPE0llama.cpp context type for embedding model (0=default, 1=MTP). Only set to 1 if the model has MTP layers.

    llama.cpp context type for embedding model (0=default, 1=MTP). Only set to 1 if the model has MTP layers.

    values: number

  • NORNICDB_EMBEDDING_DIMENSIONS1024Embedding dimensions

    Embedding dimensions

    values: number

  • NORNICDB_EMBEDDING_ENABLEDfalseEnable embedding generation (semantic search). Default is off unless enabled via config/env.

    Enable embedding generation (semantic search). Default is off unless enabled via config/env.

    values: boolean

  • NORNICDB_EMBEDDING_FLASH_ATTN-1Flash attention for embedding model (-1=auto, 0=disabled, 1=enabled). Default: -1 (auto-detect).

    Flash attention for embedding model (-1=auto, 0=disabled, 1=enabled). Default: -1 (auto-detect).

    values: number

  • NORNICDB_EMBEDDING_GPU_LAYERS-1GPU layers for local provider: -1=auto, 0=CPU only

    GPU layers for local provider: -1=auto, 0=CPU only

    values: number

  • NORNICDB_EMBEDDING_INCLUDE_LABELSSee sourceEmbedding include labels

    Embedding include labels

    values: boolean

  • NORNICDB_EMBEDDING_LAZY_MODE1llama.cpp lazy tensor loading for the embedding model (0=off, 1=auto, 2=on).

    llama.cpp lazy tensor loading for the embedding model (0=off, 1=auto, 2=on).

    values: number

  • NORNICDB_EMBEDDING_MODEtextProvider-specific embedding mode

    Provider-specific embedding mode

    values: string

  • NORNICDB_EMBEDDING_MODELbge-m3Embedding model name

    Embedding model name

    values: string

  • NORNICDB_EMBEDDING_POOLING_TYPE1Embedding pooling strategy (1=mean, 2=cls, 3=last, 4=rank). Default: 1 (mean pooling).

    Embedding pooling strategy (1=mean, 2=cls, 3=last, 4=rank). Default: 1 (mean pooling).

    values: number

  • NORNICDB_EMBEDDING_PROPERTIES_EXCLUDESee sourceEmbedding properties exclude

    Embedding properties exclude

    values: string

  • NORNICDB_EMBEDDING_PROPERTIES_INCLUDESee sourceEmbedding properties include

    Embedding properties include

    values: string

  • NORNICDB_EMBEDDING_PROVIDERlocalEmbedding provider: local, ollama, openai, orca, voyage

    Embedding provider: local, ollama, openai, orca, voyage

    values: string

  • NORNICDB_EMBEDDING_RELATIONSHIP_PROPERTIES_EXCLUDE(unset)Properties never used in relationship search embedding text. Unset, `NORNICDB_EMBEDDING_PROPERTIES_EXCLUDE` applies.

    Properties never used in relationship search embedding text. Unset, `NORNICDB_EMBEDDING_PROPERTIES_EXCLUDE` applies.

    values: string

  • NORNICDB_EMBEDDING_RELATIONSHIP_PROPERTIES_INCLUDE(unset)Only these properties build relationship search embedding text. Unset, `NORNICDB_EMBEDDING_PROPERTIES_INCLUDE` applies.

    Only these properties build relationship search embedding text. Unset, `NORNICDB_EMBEDDING_PROPERTIES_INCLUDE` applies.

    values: string

  • NORNICDB_EMBEDDING_WARMUP_INTERVALSee sourceEmbeddingWarmupInterval for periodic model warmup

    EmbeddingWarmupInterval for periodic model warmup

    values: duration

  • NORNICDB_EMBED_MAX_RETRIES0Embed max retries

    Embed max retries

    values: number

  • NORNICDB_EMBED_SCAN_INTERVALSee sourceEmbed scan interval

    Embed scan interval

    values: duration

  • NORNICDB_EMBED_WORKER_NUM_WORKERS1Number of concurrent background embedding workers. Set to `0` to stop background embedding while keeping embedding and stored-vector search enabled. Negative values retain the default.

    Number of concurrent background embedding workers. Set to `0` to stop background embedding while keeping embedding and stored-vector search enabled. Negative values retain the default.

    values: number

  • NORNICDB_ENCRYPTION_AT_RESTSee sourceEncryption at rest

    Encryption at rest

    values: string

  • NORNICDB_ENCRYPTION_AUDIT_LOG_PATH<data_dir>/encryption-audit.jsonlLocal JSONL path for provider-backed audit events

    Local JSONL path for provider-backed audit events

    values: string

  • NORNICDB_ENCRYPTION_AUDIT_SIGN_EVENTSfalseEnable HMAC signing for local encryption audit events

    Enable HMAC signing for local encryption audit events

    values: boolean

  • NORNICDB_ENCRYPTION_AUDIT_SIGN_KEY(unset)HMAC signing key for local encryption audit events

    HMAC signing key for local encryption audit events

    values: string

  • NORNICDB_ENCRYPTION_AWS_KMS_KEY_ID(unset)AWS KMS key ID or ARN used to wrap the database DEK

    AWS KMS key ID or ARN used to wrap the database DEK

    values: string

  • NORNICDB_ENCRYPTION_AWS_REGION(unset)AWS region for AWS KMS-backed wrapping

    AWS region for AWS KMS-backed wrapping

    values: string

  • NORNICDB_ENCRYPTION_AZURE_KEY_NAME(unset)Azure Key Vault key name used to wrap the database DEK

    Azure Key Vault key name used to wrap the database DEK

    values: string

  • NORNICDB_ENCRYPTION_AZURE_VAULT_NAME(unset)Azure Key Vault name used for Key Vault-backed wrapping

    Azure Key Vault name used for Key Vault-backed wrapping

    values: string

  • NORNICDB_ENCRYPTION_ENABLEDfalseEncryptionEnabled controls whether database encryption is active

    EncryptionEnabled controls whether database encryption is active

    values: boolean

  • NORNICDB_ENCRYPTION_GCP_KEY_NAME(unset)GCP Cloud KMS key name used to wrap the database DEK

    GCP Cloud KMS key name used to wrap the database DEK

    values: string

  • NORNICDB_ENCRYPTION_GCP_KEY_RING(unset)GCP Cloud KMS key ring used for wrapped-DEK operations

    GCP Cloud KMS key ring used for wrapped-DEK operations

    values: string

  • NORNICDB_ENCRYPTION_GCP_LOCATION(unset)GCP location for the Cloud KMS key

    GCP location for the Cloud KMS key

    values: string

  • NORNICDB_ENCRYPTION_GCP_PROJECT(unset)GCP project containing the Cloud KMS key

    GCP project containing the Cloud KMS key

    values: string

  • NORNICDB_ENCRYPTION_IN_TRANSITSee sourceEncryption in transit

    Encryption in transit

    values: string

  • NORNICDB_ENCRYPTION_KEY_PATHSee sourceEncryption key path

    Encryption key path

    values: string

  • NORNICDB_ENCRYPTION_KEY_URI(unset)Logical or provider-native key URI recorded with persisted wrapped-DEK metadata

    Logical or provider-native key URI recorded with persisted wrapped-DEK metadata

    values: string

  • NORNICDB_ENCRYPTION_MASTER_KEY(unset)Local provider KEK material for dev/test CMEK mode

    Local provider KEK material for dev/test CMEK mode

    values: string

  • NORNICDB_ENCRYPTION_PASSWORDSee sourceEncryptionPassword for database encryption at rest Required when EncryptionEnabled is true. Use a strong password in production.

    EncryptionPassword for database encryption at rest Required when EncryptionEnabled is true. Use a strong password in production.

    values: string

  • NORNICDB_ENCRYPTION_PROVIDERpasswordSelects the at-rest encryption key-management mode for the database DEK

    Selects the at-rest encryption key-management mode for the database DEK

    values: string

  • NORNICDB_ENCRYPTION_ROTATION_ENABLEDtrueEnable automatic wrapped-DEK rotation checks for provider-backed modes

    Enable automatic wrapped-DEK rotation checks for provider-backed modes

    values: boolean

  • NORNICDB_ENCRYPTION_ROTATION_INTERVAL2160hInterval used to decide when the persisted wrapped DEK should be rewrapped

    Interval used to decide when the persisted wrapped DEK should be rewrapped

    values: duration

  • NORNICDB_ENVSee sourceEnvironment is the runtime environment (development, production)

    Environment is the runtime environment (development, production)

    values: string

  • NORNICDB_EVIDENCE_AUTO_INTEGRATION_ENABLEDSee sourceEvidence auto integration enabled

    Evidence auto integration enabled

    values: string

  • NORNICDB_EVIDENCE_BUFFERING_ENABLEDSee sourceEvidence buffering enabled

    Evidence buffering enabled

    values: string

  • NORNICDB_FORCE_CPU(unset)Force cpu

    Force cpu

    values: string

  • NORNICDB_GC_PERCENT0Gc percent

    Gc percent

    values: number

  • NORNICDB_GPU_BACKENDSee sourceGPU backend: vulkan, cuda, metal, opencl (empty=auto-detect)

    GPU backend: vulkan, cuda, metal, opencl (empty=auto-detect)

    values: string

  • NORNICDB_GPU_CLUSTERING_AUTO_INTEGRATION_ENABLEDSee sourceGpu clustering auto integration enabled

    Gpu clustering auto integration enabled

    values: string

  • NORNICDB_HEADLESSfalseDisable embedded UI assets, SPA/bootstrap routes, and browser IDEs; core APIs remain available

    Disable embedded UI assets, SPA/bootstrap routes, and browser IDEs; core APIs remain available

    values: boolean

  • NORNICDB_HEIMDALL_ANOMALY_DETECTIONSee sourceHeimdall anomaly detection

    Heimdall anomaly detection

    values: string

  • NORNICDB_HEIMDALL_API_KEYSee sourceHeimdall API key (required for OpenAI and Orca)

    Heimdall API key (required for OpenAI and Orca)

    values: string

  • NORNICDB_HEIMDALL_API_URLSee sourceHeimdall API URL

    Heimdall API URL

    values: string

  • NORNICDB_HEIMDALL_ATTENTION_TYPE0Attention masking for Heimdall model (0=causal, 1=non-causal). Default: 0 (causal for generation).

    Attention masking for Heimdall model (0=causal, 1=non-causal). Default: 0 (causal for generation).

    values: number

  • NORNICDB_HEIMDALL_BATCH_SIZE0Heimdall batch size

    Heimdall batch size

    values: number

  • NORNICDB_HEIMDALL_CONTEXT_SIZE0Heimdall context size

    Heimdall context size

    values: number

  • NORNICDB_HEIMDALL_CTX_TYPE0llama.cpp context type for Heimdall model (0=default, 1=MTP). Only set to 1 if the model has MTP layers.

    llama.cpp context type for Heimdall model (0=default, 1=MTP). Only set to 1 if the model has MTP layers.

    values: number

  • NORNICDB_HEIMDALL_ENABLEDSee sourceHeimdall enabled

    Heimdall enabled

    values: string

  • NORNICDB_HEIMDALL_FLASH_ATTN-1Flash attention for Heimdall model (-1=auto, 0=disabled, 1=enabled). Default: -1 (auto-detect).

    Flash attention for Heimdall model (-1=auto, 0=disabled, 1=enabled). Default: -1 (auto-detect).

    values: number

  • NORNICDB_HEIMDALL_GPU_LAYERS0Heimdall gpu layers

    Heimdall gpu layers

    values: number

  • NORNICDB_HEIMDALL_LAZY_MODE1llama.cpp lazy tensor loading for the Heimdall model (0=off, 1=auto, 2=on).

    llama.cpp lazy tensor loading for the Heimdall model (0=off, 1=auto, 2=on).

    values: number

  • NORNICDB_HEIMDALL_MAX_CONTEXT_TOKENS0Heimdall max context tokens

    Heimdall max context tokens

    values: number

  • NORNICDB_HEIMDALL_MAX_SYSTEM_TOKENS0Heimdall max system tokens

    Heimdall max system tokens

    values: number

  • NORNICDB_HEIMDALL_MAX_TOKENS0Heimdall max tokens

    Heimdall max tokens

    values: number

  • NORNICDB_HEIMDALL_MAX_USER_TOKENS0Heimdall max user tokens

    Heimdall max user tokens

    values: number

  • NORNICDB_HEIMDALL_MCP_ENABLE(unset)Heimdall mcp enable

    Heimdall mcp enable

    values: string

  • NORNICDB_HEIMDALL_MCP_TOOLSSee sourceHeimdall mcp tools

    Heimdall mcp tools

    values: string

  • NORNICDB_HEIMDALL_MEMORY_CURATIONSee sourceHeimdall memory curation

    Heimdall memory curation

    values: string

  • NORNICDB_HEIMDALL_MODELSee sourceHeimdall model

    Heimdall model

    values: string

  • NORNICDB_HEIMDALL_PLUGINS_DIRSee sourceHeimdallPluginsDir is the directory for Heimdall plugins

    HeimdallPluginsDir is the directory for Heimdall plugins

    values: string

  • NORNICDB_HEIMDALL_POOLING_TYPE-1Pooling strategy for Heimdall model (0=none, 1=mean, 2=cls, 3=last). Default: -1 (unspecified/none for generation).

    Pooling strategy for Heimdall model (0=none, 1=mean, 2=cls, 3=last). Default: -1 (unspecified/none for generation).

    values: number

  • NORNICDB_HEIMDALL_PROVIDERSee sourceHeimdall provider: local, ollama, openai, orca, vllm, or litellm

    Heimdall provider: local, ollama, openai, orca, vllm, or litellm

    values: string

  • NORNICDB_HEIMDALL_RUNTIME_DIAGNOSISSee sourceHeimdall runtime diagnosis

    Heimdall runtime diagnosis

    values: string

  • NORNICDB_HEIMDALL_TEMPERATURESee sourceHeimdall temperature

    Heimdall temperature

    values: string

  • NORNICDB_HNSW_BUILD_GPU_BATCH_SIZE2048HNSW GPU build batch size

    HNSW GPU build batch size

    values: number

  • NORNICDB_HNSW_BUILD_GPU_BEAM_ITERS2HNSW GPU graph-beam expansion rounds

    HNSW GPU graph-beam expansion rounds

    values: number

  • NORNICDB_HNSW_BUILD_GPU_BEAM_QUERY_GROUP512HNSW GPU graph-beam query group size

    HNSW GPU graph-beam query group size

    values: number

  • NORNICDB_HNSW_BUILD_GPU_BEAM_UNION_MAX4096HNSW GPU graph-beam max candidate union

    HNSW GPU graph-beam max candidate union

    values: number

  • NORNICDB_HNSW_BUILD_GPU_BEAM_WIDTHmin(candidate_k, 64)HNSW GPU graph-beam width

    HNSW GPU graph-beam width

    values: number

  • NORNICDB_HNSW_BUILD_GPU_CANDIDATE_K128HNSW GPU build candidate count per vector

    HNSW GPU build candidate count per vector

    values: number

  • NORNICDB_HNSW_BUILD_GPU_DISTANCE_PRECISIONfp32HNSW GPU build distance precision

    HNSW GPU build distance precision

    values: string

  • NORNICDB_HNSW_BUILD_GPU_ENABLEDtrueHNSW GPU-assisted build enabled

    HNSW GPU-assisted build enabled

    values: boolean

  • NORNICDB_HNSW_MAINT_INTERVAL_MSSee sourceHnsw maint interval ms

    Hnsw maint interval ms

    values: string

  • NORNICDB_HNSW_MAX_TOMBSTONE_OVERHEAD_FACTORSee sourceHnsw max tombstone overhead factor

    Hnsw max tombstone overhead factor

    values: string

  • NORNICDB_HNSW_MIN_REBUILD_INTERVAL_SECSee sourceHnsw min rebuild interval sec

    Hnsw min rebuild interval sec

    values: string

  • NORNICDB_HNSW_REBUILD_ENABLEDtrueHnsw rebuild enabled

    Hnsw rebuild enabled

    values: boolean

  • NORNICDB_HNSW_TOMBSTONE_REBUILD_RATIOSee sourceHnsw tombstone rebuild ratio

    Hnsw tombstone rebuild ratio

    values: string

  • NORNICDB_HTTP_ADDRESS(unset)HTTP API bind address

    HTTP API bind address

    values: string

  • NORNICDB_HTTP_ENABLEDtrueEnable the HTTP API listener

    Enable the HTTP API listener

    values: boolean

  • NORNICDB_HTTP_PORT7474HTTP API port

    HTTP API port

    values: number

  • NORNICDB_HTTPS_ENABLEDfalseEnable native TLS on the HTTP API listener

    Enable native TLS on the HTTP API listener

    values: boolean

  • NORNICDB_HTTPS_PORT7473Native HTTPS API port

    Native HTTPS API port

    values: number

  • NORNICDB_HTTP_TLS_CERT(unset)Path to the native HTTPS certificate PEM

    Path to the native HTTPS certificate PEM

    values: string

  • NORNICDB_HTTP_TLS_KEY(unset)Path to the native HTTPS private key PEM

    Path to the native HTTPS private key PEM

    values: string

  • NORNICDB_HTTP_TRUSTED_PROXIES(unset)Immediate reverse-proxy IP addresses or CIDR ranges allowed to supply forwarded HTTP headers

    Immediate reverse-proxy IP addresses or CIDR ranges allowed to supply forwarded HTTP headers

    values: string

  • NORNICDB_HTTP_TX_TIMEOUT(unset)Http tx timeout

    Http tx timeout

    values: string

  • NORNICDB_KALMAN_ENABLEDSee sourceKalman enabled

    Kalman enabled

    values: string

  • NORNICDB_KEYSee sourceKey

    Key

    values: string

  • NORNICDB_KMEANS_CLUSTERING_ENABLEDSee sourceKmeans clustering enabled

    Kmeans clustering enabled

    values: boolean

  • NORNICDB_KMEANS_CLUSTER_INTERVALSee sourceKmeansClusterInterval is how often to run k-means clustering (0 = disabled)

    KmeansClusterInterval is how often to run k-means clustering (0 = disabled)

    values: duration

  • NORNICDB_KMEANS_MAX_ITERATIONS5Kmeans max iterations

    Kmeans max iterations

    values: number

  • NORNICDB_KMEANS_MIN_EMBEDDINGS0KmeansMinEmbeddings is minimum embeddings required for k-means clustering

    KmeansMinEmbeddings is minimum embeddings required for k-means clustering

    values: number

  • NORNICDB_KMEANS_NUM_CLUSTERS0KmeansNumClusters is the number of k-means clusters (0 = auto from dataset size).

    KmeansNumClusters is the number of k-means clusters (0 = auto from dataset size).

    values: number

  • NORNICDB_KMEANS_SEED_DOCS_PER_TERM1Kmeans seed docs per term

    Kmeans seed docs per term

    values: number

  • NORNICDB_KMEANS_SEED_MAX_TERMS256Kmeans seed max terms

    Kmeans seed max terms

    values: number

  • NORNICDB_LANGUAGEautoProcess-default language for human-readable messages. Unset, empty, or `auto` uses ordered operating-system language preferences. Accepts BCP 47 tags and common POSIX locale forms.

    Process-default language for human-readable messages. Unset, empty, or `auto` uses ordered operating-system language preferences. Accepts BCP 47 tags and common POSIX locale forms.

    values: string

  • NORNICDB_LIB(unset)Lib

    Lib

    values: string

  • NORNICDB_LOCKOUT_DURATIONSee sourceLockout duration

    Lockout duration

    values: string

  • NORNICDB_LOG_FORMATSee sourceLog format

    Log format

    values: string

  • NORNICDB_LOG_LEVELSee sourceLog level

    Log level

    values: string

  • NORNICDB_LOG_OUTPUTSee sourceLog output

    Log output

    values: string

  • NORNICDB_LOG_QUERIESfalseLog all Bolt queries to stdout (for debugging)

    Log all Bolt queries to stdout (for debugging)

    values: boolean

  • NORNICDB_LOW_MEMORYfalseUse minimal RAM (for resource constrained environments)

    Use minimal RAM (for resource constrained environments)

    values: boolean

  • NORNICDB_MASTER_PASSWORD(unset)Master password

    Master password

    values: string

  • NORNICDB_MAX_FAILED_LOGINS0Max failed logins

    Max failed logins

    values: number

  • NORNICDB_MAX_TRANSACTIONS0Max transactions

    Max transactions

    values: number

  • NORNICDB_MCP_ENABLEDtrueEnable MCP (Model Context Protocol) server for LLM tools

    Enable MCP (Model Context Protocol) server for LLM tools

    values: boolean

  • NORNICDB_MEMORY_ARCHIVE_THRESHOLDSee sourceMemory archive threshold

    Memory archive threshold

    values: string

  • NORNICDB_MEMORY_DECAY_ENABLEDSee sourceMemory decay enabled

    Memory decay enabled

    values: string

  • NORNICDB_MEMORY_DECAY_INTERVALSee sourceMemory decay interval

    Memory decay interval

    values: string

  • NORNICDB_MEMORY_LIMITSee sourceMemory limit

    Memory limit

    values: string

  • NORNICDB_MIN_PASSWORD_LENGTH0Min password length

    Min password length

    values: number

  • NORNICDB_MODELS_DIRSee sourceModelsDir is the directory containing local GGUF models

    ModelsDir is the directory containing local GGUF models

    values: string

  • NORNICDB_MVCC_RETENTION_MAX_VERSIONS1MVCCRetentionMaxVersions keeps at most this many closed historical MVCC versions per key by default. The current head is preserved separately.

    MVCCRetentionMaxVersions keeps at most this many closed historical MVCC versions per key by default. The current head is preserved separately.

    values: number

  • NORNICDB_MVCC_RETENTION_TTL0MVCCRetentionTTL protects MVCC versions newer than now-TTL from pruning.

    MVCCRetentionTTL protects MVCC versions newer than now-TTL from pruning.

    values: duration

  • NORNICDB_OAUTH_CALLBACK_URL(unset)Oauth callback url

    Oauth callback url

    values: string

  • NORNICDB_OAUTH_CLIENT_ID(unset)Oauth client id

    Oauth client id

    values: string

  • NORNICDB_OAUTH_CLIENT_SECRET(unset)Oauth client secret

    Oauth client secret

    values: string

  • NORNICDB_OAUTH_ISSUER(unset)Oauth issuer

    Oauth issuer

    values: string

  • NORNICDB_PARSERSee sourceParser

    Parser

    values: string

  • NORNICDB_PER_NODE_CONFIG_AUTO_INTEGRATION_ENABLEDSee sourcePer node config auto integration enabled

    Per node config auto integration enabled

    values: string

  • NORNICDB_PER_NODE_CONFIG_ENABLEDSee sourcePer node config enabled

    Per node config enabled

    values: string

  • NORNICDB_PERSIST_SEARCH_INDEXESSee sourcePersistSearchIndexes (EXPERIMENTAL) when true saves BM25, vector, and HNSW indexes under DataDir and loads them on startup so BuildIndexes can skip the full storage iteration. Default: false. Note: if indexes are incompatible/missing and must be rebuilt, startup can be long for large datasets. For example, rebuilding IVF-HNSW for ~1M embeddings can take ~30 minutes on startup (hardware dependent).

    PersistSearchIndexes (EXPERIMENTAL) when true saves BM25, vector, and HNSW indexes under DataDir and loads them on startup so BuildIndexes can skip the full storage iteration. Default: false. Note: if indexes are incompatible/missing and must be rebuilt, startup can be long for large datasets. For example, rebuilding IVF-HNSW for ~1M embeddings can take ~30 minutes on startup (hardware dependent).

    values: string

  • NORNICDB_PLUGINS_DIR(unset)PluginsDir is the directory for APOC plugins

    PluginsDir is the directory for APOC plugins

    values: string

  • NORNICDB_POOL_ENABLEDSee sourcePool enabled

    Pool enabled

    values: string

  • NORNICDB_POOL_MAX_SIZE0Pool max size

    Pool max size

    values: number

  • NORNICDB_PPROF_ENABLEDfalseEnables the separate observability pprof listener. Disabled by default; profiles are served from the pprof listener, not the main HTTP API port.

    Enables the separate observability pprof listener. Disabled by default; profiles are served from the pprof listener, not the main HTTP API port.

    values: boolean

  • NORNICDB_PPROF_LISTEN127.0.0.1:9091Listen address for the pprof listener. Defaults to loopback; use `0.0.0.0:9091` only when intentionally publishing the profiling port, such as in a Docker profiling session.

    Listen address for the pprof listener. Defaults to loopback; use `0.0.0.0:9091` only when intentionally publishing the profiling port, such as in a Docker profiling session.

    values: string

  • NORNICDB_QDRANT_GRPC_ENABLEDSee sourceQdrant grpc enabled

    Qdrant grpc enabled

    values: string

  • NORNICDB_QDRANT_GRPC_LISTEN_ADDRSee sourceQdrant grpc listen addr

    Qdrant grpc listen addr

    values: string

  • NORNICDB_QDRANT_GRPC_MAX_BATCH_POINTS0Qdrant grpc max batch points

    Qdrant grpc max batch points

    values: number

  • NORNICDB_QDRANT_GRPC_MAX_TOP_K0Qdrant grpc max top k

    Qdrant grpc max top k

    values: number

  • NORNICDB_QDRANT_GRPC_MAX_VECTOR_DIM0Qdrant grpc max vector dim

    Qdrant grpc max vector dim

    values: number

  • NORNICDB_QDRANT_GRPC_TLS_CERT(unset)Server certificate path for the shared Qdrant/Nornic gRPC listener

    Server certificate path for the shared Qdrant/Nornic gRPC listener

    values: string

  • NORNICDB_QDRANT_GRPC_TLS_CLIENT_AUTH_MODEnoneClient-certificate policy for the shared Qdrant/Nornic gRPC TLS listener

    Client-certificate policy for the shared Qdrant/Nornic gRPC TLS listener

    values: string

  • NORNICDB_QDRANT_GRPC_TLS_CLIENT_CA(unset)CA certificate path used to verify gRPC client certificates

    CA certificate path used to verify gRPC client certificates

    values: string

  • NORNICDB_QDRANT_GRPC_TLS_ENABLEDfalseEnable native TLS on the shared Qdrant/Nornic gRPC listener

    Enable native TLS on the shared Qdrant/Nornic gRPC listener

    values: boolean

  • NORNICDB_QDRANT_GRPC_TLS_KEY(unset)Server private-key path for the shared Qdrant/Nornic gRPC listener

    Server private-key path for the shared Qdrant/Nornic gRPC listener

    values: string

  • NORNICDB_QUERY_CACHE_ENABLEDSee sourceQuery cache enabled

    Query cache enabled

    values: string

  • NORNICDB_QUERY_CACHE_SIZE0Query cache size

    Query cache size

    values: number

  • NORNICDB_QUERY_CACHE_TTL300000Per-database query result cache TTL in milliseconds

    Per-database query result cache TTL in milliseconds

    values: number

  • NORNICDB_QUERY_LOG_ENABLEDSee sourceQuery log enabled

    Query log enabled

    values: string

  • NORNICDB_READ_ONLYfalseRead only

    Read only

    values: boolean

  • NORNICDB_REMOTE_CREDENTIALS_KEY(unset)Remote credentials key

    Remote credentials key

    values: string

  • NORNICDB_RERANK_ATTENTION_TYPE1Attention masking for rerank model (0=causal, 1=non-causal). Default: 1 (non-causal for reranking).

    Attention masking for rerank model (0=causal, 1=non-causal). Default: 1 (non-causal for reranking).

    values: number

  • NORNICDB_RERANK_CTX_TYPE0llama.cpp context type for rerank model (0=default, 1=MTP). Only set to 1 if the model has MTP layers.

    llama.cpp context type for rerank model (0=default, 1=MTP). Only set to 1 if the model has MTP layers.

    values: number

  • NORNICDB_RERANK_DEBUG(unset)Rerank debug

    Rerank debug

    values: string

  • NORNICDB_RERANK_FLASH_ATTN0Flash attention for rerank model (-1=auto, 0=disabled, 1=enabled). Default: 0 (disabled).

    Flash attention for rerank model (-1=auto, 0=disabled, 1=enabled). Default: 0 (disabled).

    values: number

  • NORNICDB_RERANK_LAZY_MODE1llama.cpp lazy tensor loading for the rerank model (0=off, 1=auto, 2=on).

    llama.cpp lazy tensor loading for the rerank model (0=off, 1=auto, 2=on).

    values: number

  • NORNICDB_RERANK_POOLING_TYPE4Pooling strategy for rerank model (1=mean, 2=cls, 3=last, 4=rank). Default: 4 (rank/classifier-head pooling).

    Pooling strategy for rerank model (1=mean, 2=cls, 3=last, 4=rank). Default: 4 (rank/classifier-head pooling).

    values: number

  • NORNICDB_RETENTION_AUTO_DELETEfalseRetention auto delete

    Retention auto delete

    values: boolean

  • NORNICDB_RETENTION_ENABLEDfalseRetention enabled

    Retention enabled

    values: boolean

  • NORNICDB_RETENTION_EXEMPT_ROLESadminRetention exempt roles

    Retention exempt roles

    values: string

  • NORNICDB_RETENTION_POLICY_DAYS0Retention policy days

    Retention policy days

    values: number

  • NORNICDB_SALTSee sourceSalt

    Salt

    values: string

  • NORNICDB_SEARCH_BM25_ENABLEDtrueMaster switch for BM25 fulltext search on this database. When false, no BM25 build runs and search returns no fulltext results. See § Precedence — CLI flags trump per-DB overrides; per-DB overrides trump this env var. Per-DB store edits via `PUT /admin/databases/{name}/config` are authoritative across restarts.

    Master switch for BM25 fulltext search on this database. When false, no BM25 build runs and search returns no fulltext results. See § Precedence — CLI flags trump per-DB overrides; per-DB overrides trump this env var. Per-DB store edits via `PUT /admin/databases/{name}/config` are authoritative across restarts.

    values: boolean

  • NORNICDB_SEARCH_BM25_ENGINE(unset)Search bm25 engine

    Search bm25 engine

    values: string

  • NORNICDB_SEARCH_BM25_LABELS(unset)Comma-separated label allowlist for BM25 indexing: only nodes carrying at least one of the labels are keyword-indexed, as `NORNICDB_EMBEDDING_LABELS_INCLUDE` limits embeddings. Empty indexes every node. Changes invalidate persisted BM25 data.

    Comma-separated label allowlist for BM25 indexing: only nodes carrying at least one of the labels are keyword-indexed, as `NORNICDB_EMBEDDING_LABELS_INCLUDE` limits embeddings. Empty indexes every node. Changes invalidate persisted BM25 data.

    values: string

  • NORNICDB_SEARCH_BM25_PROPERTIES(unset)Comma-separated property allowlist for BM25 indexing and rerank text. Empty indexes labels and all properties. Changes invalidate persisted BM25 data.

    Comma-separated property allowlist for BM25 indexing and rerank text. Empty indexes labels and all properties. Changes invalidate persisted BM25 data.

    values: string

  • NORNICDB_SEARCH_BM25_WARMINGstartupWhen BM25 is enabled, choose `startup` (build at boot) or `lazy` (defer build until first inbound search query, blocks the request synchronously while warming). Health checks must NOT target /nornicdb/search for `lazy` databases.

    When BM25 is enabled, choose `startup` (build at boot) or `lazy` (defer build until first inbound search query, blocks the request synchronously while warming). Health checks must NOT target /nornicdb/search for `lazy` databases.

    values: enum

  • NORNICDB_SEARCH_BUILD_PROGRESS_LOG_SEC15Search build progress log sec

    Search build progress log sec

    values: number

  • NORNICDB_SEARCH_CURSOR_MAX0Process-wide retained search cursor limit; zero disables durable continuation

    Process-wide retained search cursor limit; zero disables durable continuation

    values: number

  • NORNICDB_SEARCH_CURSOR_TTL300000Fixed search cursor lifetime in milliseconds

    Fixed search cursor lifetime in milliseconds

    values: number

  • NORNICDB_SEARCH_DIAG_TIMINGS(unset)Search diag timings

    Search diag timings

    values: string

  • NORNICDB_SEARCH_INDEX_PERSIST_DELAY_SECSee sourceSearch index persist delay sec

    Search index persist delay sec

    values: number

  • NORNICDB_SEARCH_LOG_TIMINGSSee sourceSearch log timings

    Search log timings

    values: string

  • NORNICDB_SEARCH_MIN_SIMILARITYSee sourceSearchMinSimilarity is the minimum cosine similarity threshold for vector search results. Apple Intelligence embeddings produce scores in 0.2-0.8 range, bge-m3/mxbai produce 0.7-0.99. Default: 0.0 (let RRF ranking handle relevance filtering)

    SearchMinSimilarity is the minimum cosine similarity threshold for vector search results. Apple Intelligence embeddings produce scores in 0.2-0.8 range, bge-m3/mxbai produce 0.7-0.99. Default: 0.0 (let RRF ranking handle relevance filtering)

    values: number

  • NORNICDB_SEARCH_QUERY_CHUNK_OVERFLOWtruncateWhat a search query with more chunks than `NORNICDB_SEARCH_QUERY_MAX_CHUNKS` does: `truncate` searches its first chunks and reports the rest as dropped (`fallback_reason: query_chunks_dropped`, `query_chunks_searched` / `query_chunks_total`); `error` fails the search. A text query to the vector procedures fails over the limit in either mode.

    What a search query with more chunks than `NORNICDB_SEARCH_QUERY_MAX_CHUNKS` does: `truncate` searches its first chunks and reports the rest as dropped (`fallback_reason: query_chunks_dropped`, `query_chunks_searched` / `query_chunks_total`); `error` fails the search. A text query to the vector procedures fails over the limit in either mode.

    values: string

  • NORNICDB_SEARCH_QUERY_MAX_CHUNKS32Most chunks of 512 characters of one search query that are embedded and searched; each costs an embedding call, and a rerank call when reranking.

    Most chunks of 512 characters of one search query that are embedded and searched; each costs an embedding call, and a rerank call when reranking.

    values: int

  • NORNICDB_SEARCH_RELATIONSHIP_BM25_PROPERTIES(unset)Property allowlist for relationship search keyword indexing. Unset, `NORNICDB_SEARCH_BM25_PROPERTIES` applies; a relationship with none of the listed properties isn't keyword-indexed.

    Property allowlist for relationship search keyword indexing. Unset, `NORNICDB_SEARCH_BM25_PROPERTIES` applies; a relationship with none of the listed properties isn't keyword-indexed.

    values: string

  • NORNICDB_SEARCH_RELATIONSHIPS_ENABLEDfalseIndex relationship properties for keyword (BM25) and vector search, in indexes apart from the nodes'. Searches with `relationships: true` (HTTP) or `db.retrieveRelationships` (Cypher) then return relationships with their type and endpoints. Keyword text follows `NORNICDB_SEARCH_RELATIONSHIP_BM25_PROPERTIES` (default `NORNICDB_SEARCH_BM25_PROPERTIES`), embedding text `NORNICDB_EMBEDDING_RELATIONSHI

    Index relationship properties for keyword (BM25) and vector search, in indexes apart from the nodes'. Searches with `relationships: true` (HTTP) or `db.retrieveRelationships` (Cypher) then return relationships with their type and endpoints. Keyword text follows `NORNICDB_SEARCH_RELATIONSHIP_BM25_PROPERTIES` (default `NORNICDB_SEARCH_BM25_PROPERTIES`), embedding text `NORNICDB_EMBEDDING_RELATIONSHI

    values: bool

  • NORNICDB_SEARCH_RERANK_API_KEYSee sourceSearch rerank api key

    Search rerank api key

    values: string

  • NORNICDB_SEARCH_RERANK_API_URLSee sourceSearch rerank api url

    Search rerank api url

    values: string

  • NORNICDB_SEARCH_RERANK_ENABLEDSee sourceSearch rerank enabled

    Search rerank enabled

    values: boolean

  • NORNICDB_SEARCH_RERANK_MAX_DOCUMENT_CHARSMaximum characters (not bytes) sent for each Stage-2 rerank candidate: identifying properties plus the matched chunk extended with its neighbours (default 2048). `NORNICDB_SEARCH_RERANK_MAX_DOCUMENT_BYTES` is deprecated and, when set alone, read as a character count

    Maximum characters (not bytes) sent for each Stage-2 rerank candidate: identifying properties plus the matched chunk extended with its neighbours (default 2048). `NORNICDB_SEARCH_RERANK_MAX_DOCUMENT_BYTES` is deprecated and, when set alone, read as a character count

  • NORNICDB_SEARCH_RERANK_MODELSee sourceSearch rerank model

    Search rerank model

    values: string

  • NORNICDB_SEARCH_RERANK_PROVIDERSee sourceSearch rerank provider

    Search rerank provider

    values: string

  • NORNICDB_SEARCH_RERANK_TRUNCATIONtrueVoyage reranker only: `true` lets the provider shorten a query or a query-document pair over the model's token limit; `false` makes such a rerank fail instead (an error from `db.rerank`, the rerank-failure signal in search), so a ranking is always for the whole query and documents.

    Voyage reranker only: `true` lets the provider shorten a query or a query-document pair over the model's token limit; `false` makes such a rerank fail instead (an error from `db.rerank`, the rerank-failure signal in search), so a ranking is always for the whole query and documents.

    values: bool

  • NORNICDB_SEARCH_RESULT_CACHE_ENABLEDtrueEnables caching of complete search responses. Set to `false` when every request must execute the retrieval pipeline or when cache residency is undesirable.

    Enables caching of complete search responses. Set to `false` when every request must execute the retrieval pipeline or when cache residency is undesirable.

    values: boolean

  • NORNICDB_SEARCH_VECTOR_ENABLEDtrueMaster switch for vector search across every ANN strategy (HNSW, IVF-HNSW, brute-force, GPU, Metal, Qdrant pass-through). When false, node embeddings are NOT iterated into the in-memory ANN substrate — the strongest available memory-pressure lever. `NORNICDB_EMBEDDING_ENABLED=false` only stops the embed worker; user-set embedding properties are still iterated today.

    Master switch for vector search across every ANN strategy (HNSW, IVF-HNSW, brute-force, GPU, Metal, Qdrant pass-through). When false, node embeddings are NOT iterated into the in-memory ANN substrate — the strongest available memory-pressure lever. `NORNICDB_EMBEDDING_ENABLED=false` only stops the embed worker; user-set embedding properties are still iterated today.

    values: boolean

  • NORNICDB_SEARCH_VECTOR_WARMINGstartupWhen vector search is enabled, choose `startup` or `lazy`. Lazy defers the build until the first inbound search query and blocks the request synchronously while warming. Health checks must NOT target /nornicdb/search for `lazy` databases — use /nornicdb/health instead.

    When vector search is enabled, choose `startup` or `lazy`. Lazy defers the build until the first inbound search query and blocks the request synchronously while warming. Health checks must NOT target /nornicdb/search for `lazy` databases — use /nornicdb/health instead.

    values: enum

  • NORNICDB_SESSION_TIMEOUTSee sourceSession timeout

    Session timeout

    values: string

  • NORNICDB_SLOW_QUERY_THRESHOLDSee sourceSlow query threshold

    Slow query threshold

    values: string

  • NORNICDB_STDIO_LOG_COMPACT_SECONDS3600Interval in seconds for automatic stdout/stderr log size checks

    Interval in seconds for automatic stdout/stderr log size checks

    values: number

  • NORNICDB_STDIO_LOG_MAX_KB20480Max size of stdout/stderr log files in KB before automatic truncation (0 disables)

    Max size of stdout/stderr log files in KB before automatic truncation (0 disables)

    values: number

  • NORNICDB_STORAGE_SERIALIZERSee sourceStorageSerializer selects the primary storage serialization format ("gob", "msgpack"). MVCC version records and MVCC head metadata use Msgpack on the hot path.

    StorageSerializer selects the primary storage serialization format ("gob", "msgpack"). MVCC version records and MVCC head metadata use Msgpack on the hot path.

    values: string

  • NORNICDB_STRICT_DURABILITYSee sourceStrict durability

    Strict durability

    values: string

  • NORNICDB_TLS_DIRSee sourceTls dir

    Tls dir

    values: string

  • NORNICDB_TOPOLOGY_AB_TEST_ENABLEDSee sourceTopology ab test enabled

    Topology ab test enabled

    values: string

  • NORNICDB_TOPOLOGY_AB_TEST_PERCENTAGE0Topology ab test percentage

    Topology ab test percentage

    values: number

  • NORNICDB_TOPOLOGY_ALGORITHMSee sourceTopology algorithm

    Topology algorithm

    values: string

  • NORNICDB_TOPOLOGY_AUTO_INTEGRATION_ENABLEDSee sourceTopology auto integration enabled

    Topology auto integration enabled

    values: string

  • NORNICDB_TOPOLOGY_GRAPH_REFRESH_INTERVAL0Topology graph refresh interval

    Topology graph refresh interval

    values: number

  • NORNICDB_TOPOLOGY_MIN_SCORESee sourceTopology min score

    Topology min score

    values: string

  • NORNICDB_TOPOLOGY_TOPK0Topology topk

    Topology topk

    values: number

  • NORNICDB_TOPOLOGY_WEIGHTSee sourceTopology weight

    Topology weight

    values: string

  • NORNICDB_TRACE_AUTH(unset)Trace auth

    Trace auth

    values: string

  • NORNICDB_TRACE_GRAPHQL(unset)Trace graphql

    Trace graphql

    values: string

  • NORNICDB_TRANSACTION_TIMEOUTSee sourceTransaction timeout

    Transaction timeout

    values: string

  • NORNICDB_VECTOR_ANN_QUALITYSee sourceVector ann quality

    Vector ann quality

    values: string

  • NORNICDB_VECTOR_CPU_BRUTE_MAX_N0Vector cpu brute max n

    Vector cpu brute max n

    values: number

  • NORNICDB_VECTOR_GPU_BRUTE_MAX_N15000Vector gpu brute max n

    Vector gpu brute max n

    values: number

  • NORNICDB_VECTOR_GPU_BRUTE_MIN_N5000Vector gpu brute min n

    Vector gpu brute min n

    values: number

  • NORNICDB_VECTOR_HNSW_BEAM_FACTOR4HNSW search beam multiplier relative to requested candidate depth

    HNSW search beam multiplier relative to requested candidate depth

    values: number

  • NORNICDB_VECTOR_HNSW_EF_CONSTRUCTION0Vector hnsw ef construction

    Vector hnsw ef construction

    values: number

  • NORNICDB_VECTOR_HNSW_EF_SEARCH0Vector hnsw ef search

    Vector hnsw ef search

    values: number

  • NORNICDB_VECTOR_HNSW_M0Vector hnsw m

    Vector hnsw m

    values: number

  • NORNICDB_VECTOR_HNSW_METAL_MIN_CANDIDATES0Vector hnsw metal min candidates

    Vector hnsw metal min candidates

    values: number

  • NORNICDB_VECTOR_HYBRID_ROUTING_LEX_TOP_TERMS64Vector hybrid routing lex top terms

    Vector hybrid routing lex top terms

    values: number

  • NORNICDB_VECTOR_HYBRID_ROUTING_W_LEXSee sourceVector hybrid routing w lex

    Vector hybrid routing w lex

    values: string

  • NORNICDB_VECTOR_HYBRID_ROUTING_W_SEMSee sourceVector hybrid routing w sem

    Vector hybrid routing w sem

    values: string

  • NORNICDB_VECTOR_IVF_HNSW_ENABLEDfalseVector ivf hnsw enabled

    Vector ivf hnsw enabled

    values: boolean

  • NORNICDB_VECTOR_IVF_HNSW_MAX_CLUSTERS1024Vector ivf hnsw max clusters

    Vector ivf hnsw max clusters

    values: number

  • NORNICDB_VECTOR_IVF_HNSW_MIN_CLUSTER_SIZE200Vector ivf hnsw min cluster size

    Vector ivf hnsw min cluster size

    values: number

  • NORNICDB_VECTOR_IVF_LISTS0Vector ivf lists

    Vector ivf lists

    values: number

  • NORNICDB_VECTOR_IVFPQ_NPROBE(auto)IVF/PQ lists probed per query; unset uses max(16, one eighth of the lists)

    IVF/PQ lists probed per query; unset uses max(16, one eighth of the lists)

    values: number

  • NORNICDB_VECTOR_IVFPQ_OVERFLOW_MAX512Maximum exact coarse-centroid outliers retained beside IVF/PQ; 0 disables

    Maximum exact coarse-centroid outliers retained beside IVF/PQ; 0 disables

    values: number

  • NORNICDB_VECTOR_IVFPQ_RERANK_TOPK2000Minimum IVF/PQ candidates exact-rescored before applying the requested result limit

    Minimum IVF/PQ candidates exact-rescored before applying the requested result limit

    values: number

  • NORNICDB_VECTOR_IVFPQ_TRAINING_SAMPLE_MAX200000Vector ivfpq training sample max

    Vector ivfpq training sample max

    values: number

  • NORNICDB_VECTOR_PQ_BITS8Vector pq bits

    Vector pq bits

    values: number

  • NORNICDB_VECTOR_PQ_SEGMENTSSee sourceVector pq segments

    Vector pq segments

    values: string

  • NORNICDB_VECTOR_ROUTING_MODEhybridVector routing mode

    Vector routing mode

    values: string

  • NORNICDB_VECTOR_VFS_COMPACT_DEAD_RATIOSee sourceVector vfs compact dead ratio

    Vector vfs compact dead ratio

    values: string

  • NORNICDB_VECTOR_VFS_COMPACT_MIN_OBSOLETE50000Vector vfs compact min obsolete

    Vector vfs compact min obsolete

    values: number

  • NORNICDB_VECTOR_VFS_COMPACT_MIN_SIZE_MB256Vector vfs compact min size mb

    Vector vfs compact min size mb

    values: number

  • NORNICDB_WAL_AUTO_COMPACTION_ENABLEDSee sourceWal auto compaction enabled

    Wal auto compaction enabled

    values: string

  • NORNICDB_WAL_ENABLEDSee sourceWal enabled

    Wal enabled

    values: string

  • NORNICDB_WAL_LEDGER_RETENTION_DEFAULTSSee sourceWal ledger retention defaults

    Wal ledger retention defaults

    values: string

  • NORNICDB_WAL_RETENTION_MAX_AGESee sourceWal retention max age

    Wal retention max age

    values: string

  • NORNICDB_WAL_RETENTION_MAX_SEGMENTS0Wal retention max segments

    Wal retention max segments

    values: number

  • NORNICDB_WAL_SNAPSHOT_INTERVAL300000Milliseconds between checks for WAL changes that require a new snapshot; idle checks do not rewrite storage

    Milliseconds between checks for WAL changes that require a new snapshot; idle checks do not rewrite storage

    values: number

  • NORNICDB_WAL_SNAPSHOT_RETENTION_MAX_AGESee sourceWal snapshot retention max age

    Wal snapshot retention max age

    values: string

  • NORNICDB_WAL_SNAPSHOT_RETENTION_MAX_COUNT0Wal snapshot retention max count

    Wal snapshot retention max count

    values: number

  • NORNICDB_WAL_SYNC_INTERVALSee sourceWal sync interval

    Wal sync interval

    values: string

  • NORNICDB_WAL_SYNC_MODESee sourceWal sync mode

    Wal sync mode

    values: string

NornicDB releases & version history

More in Databases & storage

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…