Docs

Configuration layout

Where Isolade keeps config, secrets, and local state on disk.

Isolade follows the XDG base-directory layout. Configuration is meant to be tracked in git, but secret values and local state are not.

What lives where

PathPurposeIn git?
~/.config/isolade/profiles/<name>/One directory per profile, holding its whole definition and identity (build, git, network, appearance)yes
~/.local/share/isolade/isolade.dbBuild state, instances, agents, chatslocal data
~/.local/share/isolade/registry/In-process OCI registry: index plus content-addressed blobslocal data
~/.local/share/isolade/profiles/<id>/auth/Per-profile Claude/Codex credentials from the in-app login, mode 0600never
~/.local/share/isolade/profiles/<id>/secrets.jsonPer-profile secret values, mode 0600never

Tracking config in git

To keep your configuration in a personal dotfiles repo, run git init inside ~/.config/isolade/. Secret values are entered in the UI and never written to the config directory, so they never reach the repo.

How profiles are registered

You create, rename, clone, and delete profiles in the app, under Settings → Profiles. Each one is a subdirectory here, and the directory name is its id.

On startup, Isolade also reconciles ~/.config/isolade/profiles/, so a profile directory you copy in — for example from a dotfiles repo — is picked up automatically:

  • A new directory is registered as a profile, ready to build from Settings → Build. Nothing is built for you: a copied-in profile has no image on this machine until you build one.
  • A removed directory has its pushed image deleted from the registry.

This keeps the set of profiles reproducible from the files in git.

For the full profile definition, see Profiles.