Skip to content

Configuration

giveen edited this page Sep 13, 2026 · 2 revisions

Configuration

Settings, the engine profile, saved profiles, and conversations all live in the per-user config dir (default ~/.config/ninfier-studio on Linux, AppData/Roaming/ninfier-studio on Windows; override with NINFIER_STUDIO_DATA), created on first save.

Key files

File Meaning
config.json app settings — key fields below
profile.json engine profile, chosen artifact, and saved named profiles
chats.json chat conversations + per-conversation sampling/thinking params
last-start.json last engine start record (dirty indicator for the Engine tab)
engine-<port>.log tailed engine stdout/stderr (also the source of the VRAM capacity line)

config.json fields (camelCase as written by the app)

Field Default Meaning
ninferPath (none — set per machine) NInfer checkout: ninfer-serve binary, CLI, git source
modelsDir (none — set per machine) directory scanned for *.ninfer artifacts
enginePort 8080 port the engine / proxy listens on
apiKey (empty) API key injected into proxied /v1/* requests
hfCli hf Hugging Face CLI binary
hfToken (empty) optional HF token for downloads; redacted to ******** in API responses
buildCommand cmake/Ninja one-liner engine rebuild command (Rebuild engine button)
coderWorkspace (empty) default Coder mode workspace
coderSafeMode true refuse a fixed set of clearly destructive shell command patterns
coderSandbox (per-machine) wrap the agent shell in bwrap (workspace read-write, host read-only)
coderCommitApproval false require explicit human sign-off before the agent commits

All three toggle from Settings > Safety & Permissions (see Screens) and persist to config.json the same way the fields above do.

Environment overrides

  • NINFIER_STUDIO_DATA — per-user config dir location.
  • NINFIER_STUDIO_DIST — built UI dist location (default apps/web/dist).
  • start-stack.sh (dev) reads NINFER_DIR, MODELS_DIR, CODER_WORKSPACE, ARTIFACT, ENGINE_PORT to seed config on first run.

Secrets (the HF token, the API key) are never returned by the API in plaintext: clients see only a ******** mask, and writes of the mask preserve the stored value. See Security.

Clone this wiki locally