Configuration reference
jj-spice is configured through the standard jj configuration stack. All
settings live under the [spice] table and can be set at any level of the
hierarchy (user, repo, or workspace) using the regular jj config files or the
--config CLI flag.
For details on how jj resolves its configuration, see the jj configuration docs.
Quick reference
| Key | Type | Default | Related CLI flag |
|---|---|---|---|
spice.output |
"modern" | "classic" |
"modern" |
-- |
spice.auto-accept-changes |
bool |
false |
--auto-accept |
spice.auto-clean |
bool |
true |
-- |
spice.upstream-remote |
string |
auto-detected | -- |
spice.forges.<hostname>.type |
"github" | "gitlab" |
auto-detected | -- |
spice.output
Terminal output fidelity.
"modern"(default) -- Nerd Font Powerline glyphs for status badges, OSC 8 terminal hyperlinks. Requires a Nerd Font."classic"-- ASCII brackets[Status]with foreground-only colors, plain-text URL fallbacks. Safe for any terminal.
[spice]
output = "classic"
Affects: stack log, stack submit, stack sync.
spice.auto-accept-changes
When true, untracked changes are pushed automatically during stack submit
without prompting.
When unset or false, the user is prompted before pushing.
Equivalent to passing --auto-accept on the command line. The config value
takes precedence over the flag when set.
[spice]
auto-accept-changes = true
Affects: stack submit.
spice.auto-clean
When true (the default), inactive change requests (closed or merged on the
forge) are automatically removed from local tracking during stack submit and
stack sync.
Set to false to keep inactive entries until they are removed manually with
stack clean or stack untrack.
[spice]
auto-clean = false
Affects: stack submit, stack sync.
spice.upstream-remote
Override the upstream remote name used for fork workflows.
In a fork setup, jj-spice pushes branches to the push remote
(git.push, defaulting to "origin") and creates change requests against
the upstream remote. By default, a remote named "upstream" is used when
it exists. Set this key to use a different name.
[spice]
upstream-remote = "upstream"
Affects: all stack subcommands.
spice.forges.<hostname>.type
Register a custom hostname as a specific forge type.
jj-spice automatically recognises github.com and gitlab.com. For
self-hosted instances (GitHub Enterprise, self-managed GitLab, etc.),
map the hostname to a forge type so that jj-spice can interact with its
API.
This setting is typically written to the repo-level config by stack sync
when it encounters an unknown hostname and prompts the user to select a forge
type. It can also be set manually.
[spice.forges."git.corp.example.com"]
type = "github"
Accepted values: "github", "gitlab".
Affects: all stack subcommands.