Skip to content

Client Environment Variables

Set these before launching Kaba. Most people never need any of them; they exist for debugging and for hardware that needs a nudge. For the common ones, see arguments & environment.

VariableEffect
KABA_DEV=1Development mode. Unlimited stack traces; the engine is started with --trace.
KABA_DEBUG=<category>Extra logging for one area: ghost, tor, pane, and others.
KABA_CACHE_DIRLinux: base directory for the HTTP cache. Default $XDG_CACHE_HOME/kaba, else ~/.cache/kaba.
KABA_USERDATA_PER_CHROMIUM=1Keep a separate profile per Chromium major version. For developers who switch Electron versions.
KABA_BOOT_FAST=1Skip the boot screen’s pacing delays.
KABA_EXPERIMENTAL_WEB=1Enable all experimental web platform features.
VariableEffect
KABA_DOH=secure|automatic|offForce the DNS-over-HTTPS mode at start.
KABA_PRIVACY_STRICT=1Start with Lockdown on globally.
KABA_PRIVACY_BYPASS=1Turn the whole privacy layer off for this run. Logged at startup. For debugging only.
KABA_NO_PROTECTION_LISTS=1Do not add the malware and phishing lists to the ad blocker.
KABA_LOG_BLOCKED=1Log every blocked request.
KABA_COOKIE_DIAG=0Turn off cookie diagnostics logging.
KABA_TRUSTED_CERT_HOSTSAdditional hosts whose certificates are trusted like localhost.
KABA_PROXY_AUTO_DIRECT=1Fall back to direct connections when the Kaba proxy is unreachable. Off by default, because silently bypassing the proxy is rarely what you want.
KABA_LNA_CHECKS=0Turn off Chromium’s local-network-access checks.
VariableEffect
KABA_NO_PANE_DISCARD=1Disable Memory Saver.
KABA_PANE_PLACEMENT=auto|column|splitWhere a new pane goes. column always gives it its own column when one fits; split always halves the current pane.
KABA_RENDERER_LIMIT=<n>Maximum renderer processes. Default scales with RAM: 10, 16, 24 or 32.
KABA_SPARE_RENDERER=0Do not keep a spare renderer warm.
KABA_MAX_OLD_SPACE_MBV8 heap limit for web pages, 256 to 16384.
KABA_APP_MAX_OLD_SPACE_MBV8 heap limit for built-in apps, 512 to 16384.
KABA_HEAVY_MAX_OLD_SPACE_MBV8 heap limit for the heaviest built-in apps.
KABA_HEAVY_APP_HOSTSWhich built-in apps count as heavy. Default kaba-projects,loopbench,toolbench.
VariableEffect
KABA_VULKAN=1 / 0Force Vulkan rendering on or off.
KABA_OZONE_PLATFORM=wayland|x11Force the display platform.
KABA_GPU_DEVICE=display|igpu|dgpu|<pci-tag>|offOn multi-GPU machines, which GPU the browser uses. Default display.
KABA_GPU_PROFILE=resetForget recorded rendering failures.
KABA_NVIDIA_VULKAN=1Use Vulkan on NVIDIA, where OpenGL is the default.
KABA_NVIDIA_PRIME=0Do not set the NVIDIA PRIME render-offload environment.
KABA_ANGLE=glExperimental: native Vulkan compositing with WebGL on ANGLE-GL.
KABA_IGNORE_GPU_BLOCKLIST=1Ignore Chromium’s GPU blocklist.
KABA_ENABLE_UNSAFE_WEBGPU=1Enable unsafe WebGPU APIs.
KABA_SW_CANVAS=1Rasterise 2D canvas on the CPU.
KABA_DISABLE_GPU_SANDBOX=1Disable the GPU process sandbox.
KABA_DISABLE_GPU_MEMORY_BUFFER_VIDEO=1Disable GPU memory buffers for video frames.

KABA_FORCE_VULKAN_DAWN and KABA_ENABLE_VULKAN_COMPUTE are deprecated. Use KABA_VULKAN=1.

At start, Kaba logs the chosen graphics mode on a line beginning [kaba-gpu] mode:. Check chrome://gpu to confirm.

VariableEffect
KABA_DEVTOOLS_MODE=left|right|bottom|undocked|detachForce where developer tools dock.
KABA_JIT_PROF=1Write V8 perf maps. Turns the Chromium sandbox off. Debug sessions only.
KABA_PW_DEBUG=1Verbose logging from password autofill.
KABA_LOOP_HOSTWhere the tool loop runs.

[todo: document the remaining client variables found in source: KABA_DEVTOOLS, KABA_ANIM_CLOCK, KABA_STALL_PERIOD_MS, KABA_TRACE_HEAP_PROF, KABA_STRICT_SWALLOW, KABA_CODE_LOOP, KABA_LOCAL_CERT, KABA_DISABLE_GPU_COMPOSITING_OFF.]