Tutorial: Inputs & Global Options
Many Jujutsu operations require dynamic parameters—such as target commit revisions, custom messages, file paths, or global repository overrides. Jutsu handles these variables through two distinct mechanisms: the Inputs Pane (for arguments and flag values) and the Global Options Modal (for flags that modify jj’s global behavior).
For the general mechanics referenced below, see the canonical Inputs and Global Options pages. This tutorial focuses on a concrete scenario: targeting another repository with a global option while supplying a commit message.
The Inputs Pane
Section titled “The Inputs Pane”The Inputs Pane is a dynamic input tray that automatically slides open at the bottom of the composer when your composed command requires additional text parameters (e.g., a message for jj describe or a target revision for jj rebase). See Inputs for field navigation and validation details.
┌────────────────────────────────────────────────────────┐│ [Inputs] ││ Commit Message: [ My message here ] │└────────────────────────────────────────────────────────┘Applying an Input Value
Section titled “Applying an Input Value”When a flag or command requiring a value is selected, press i from any non-Inputs, non-enlarged view to enter text-input mode, type your value, then press Tab to validate your inputs and focus the Command Bar. If a required field is left empty, the Inputs Pane border flashes red — see Inputs for the full validation flash behavior.
Global Options Modal
Section titled “Global Options Modal”Jujutsu’s global options—such as --repository <path>, --config <key=value>, or --at-operation <id>—modify the environment of the command and must precede the subcommand (e.g., jj --repository ../other log). See Global Options for the full modal mechanics.
┌────────────────────────────────────────────────────────┐│ Global Options Modal (g) ││ [x] --repository [ Docs for the highlighted ] ││ [ ] --at-operation [ option scroll here... ] │└────────────────────────────────────────────────────────┘Scenario: Targeting Another Repository
Section titled “Scenario: Targeting Another Repository”Suppose you want to describe the working-copy commit in a different repository checkout at ../other-repo, rather than the one Jutsu was launched in:
- Press
gto open the Global Options Modal, highlight--repository, and pressSpaceto select it. - Close the modal with
Escorg(pressingqhere quits Jutsu entirely, not just the modal). Closing the modal returns you to your last composer pane — it does not automatically jump into the Inputs Pane. - Press
iyourself to enter the Inputs Pane, where a new field for--repositoryappears alongside the command’s own inputs (e.g., the commit message forjj describe). Note thatgcannot reopen the modal while you’re focused in the Inputs Pane. - Type
../other-repointo the--repositoryfield, and your message into theCommit Messagefield, then pressTabto move to the Command Bar. - The Command Bar splices the global option before the subcommand:
jj --repository ../other-repo describe -m "...".
Visual Pinned Indicators
Section titled “Visual Pinned Indicators”Once a global option is selected, Jutsu pins it to the top of the Flags Pane with a teal ◆ prefix so it stays visible even if you scroll down a long list of command flags — see Global Options for details.
Next Steps
Section titled “Next Steps”With command composing, inputs, and global options mastered, explore how Jutsu safely manages heavy background processes, interactive terminal handoffs, and remote operations: