Skip to content

Config Reference

Resolution Order

Configuration is resolved with the following precedence (highest first):

  1. CLI flags — passed directly to the sj command
  2. Per-repo config.sj/config.json in the project root
  3. Global config$XDG_CONFIG_HOME/sj/config.json
  4. Built-in defaults — hardcoded in the binary

Options

OptionTypeDefaultDescription
defaultAgent"claude" | "codex""claude"Agent to launch when running bare sj
defaultPresetstring"full-stack"Preset to use when --preset is not specified
autoUpdatebooleanfalseUpdate agent binaries before each launch
gitConfigSyncbooleantrueCopy host ~/.gitconfig and ~/.config/git/ into the container on each run
sshForwardingbooleanfalseForward SSH_AUTH_SOCK for key-based auth and commit signing
githubClibooleanfalsePrompt for gh auth login if not already authenticated
codexConfigSyncbooleanfalseSync Codex config, auth, and session data into the container
preRunScriptsstring[][]Shell scripts to execute inside the container before launching the agent
rebuildbooleanfalseForce rebuild the container image (same as --rebuild flag)

Per-Agent Overrides

The agents key allows per-agent configuration:

json
{
  "agents": {
    "claude": {
      "configPath": "/custom/path/to/claude-harness"
    },
    "codex": {
      "configPath": "/custom/path/to/codex-harness"
    }
  }
}
OptionTypeDefaultDescription
agents.<name>.configPathstring~/.config/sj/harness-config/<name>/Custom path for the agent's sandboxed home directory

Released under the MIT License.