Settings¶
In the app¶
Reach these via ⚙ → All settings….
- Search roots — directories to scan for working trees (one per line).
- Editors — the tools Fido can open into. Each row has a name, an optional slug (the
command-line token that selects it, e.g.
rider), a kind (Rider, WebStorm, VS Code, Visual Studio, Zed, Console, File Explorer, or Custom), and an optional path (blank = auto-detect for known kinds; required for Custom). For Console the path is the terminal program and for File Explorer the file manager (blank = the OS default; a full path or a bare command name likewt/pwshboth work), so you can point Fido at the terminal you prefer. Tick the ● radio to set the default (the hero button) — or use the ⚙ gear popover on the main screen, which offers the same choice plus No default (equal weight). The rest are reached by their keyboard shortcut — Ctrl+1 … Ctrl+9 unless you assign others (see Keyboard shortcuts below) — or by their slug on the command line. Add appends a new row; ✕ removes one, and its shortcut with it. - Worktree root — leave blank for the sibling
<repo>.worktreesconvention. Setting one also collapses the worktree folders line under the branch box to a single row, answered from the branch name alone with no scan needed (see The branch's worktree folders). - Theme — System, Light, or Dark, plus Colour the Console tab to match (default off). Off, the Console tab keeps the terminal emulator's own sixteen ANSI colours, on a plain ground the right way up for the theme; on, the ground and all sixteen come from Fido's palette instead. Either way the console follows the theme, and a change repaints the shell that is already running. This is the saved default; the header's sun/moon toggle flips the screen for the current run without touching it, and saving here takes back over.
- Window title — Show the repo and branch once discovery resolves them (default on). On, a
resolved branch renames the window to
<repo> · <branch>(see The window title); untick it and the title staysFido. - Before running — two switches for what a Console run menu pick does:
- Fast-forward the target onto
originfirst (default on). On, picking a command from either run menu updates the target before the console opens (see Up to date before it runs); untick it to run against the tree exactly as it stands. The Console tab's shell here never triggers it. - Run it in Fido's Console tab (default off). Off, a pick from the Console button's run menu goes to the terminal you have configured. On, it runs in Fido's own Console tab instead — a real shell over a real pseudo-terminal, beside the flight log. It governs that button's menu only: the Console button itself always opens your terminal, and the Console tab's own Run menu always runs in the pane.
- Fast-forward the target onto
- Command line — Switch to a window that already has the branch (default on). On,
fido <branch>brings the Fido window already open on that branch to the front instead of opening a second, and runs anything else the command line asked for — a tool,-s,--folder— there (see A window that already has the branch). Untick it and every launch opens its own window;--new-windowdoes the same for a single launch. Takes effect from the next launch. - Close after opening — when Fido quits after a successful launch: Command line (default — only when started with a branch on the command line), Always (after every launch, including the on-screen buttons), or Never (turns auto-close off).
- Close delay — seconds Fido counts down before it auto-closes (default 10; 0 closes
immediately). The flight log shows a single line that ticks down in place (
Closing in 10…, then9…,8…), and a Keep open bar appears at the bottom with the live countdown. Clicking Keep open — or simply starting another scan or open — cancels the close, so it's never a point of no return.
Keyboard shortcuts¶
Reach these via ⚙ → Keyboard shortcuts…, or press Ctrl+K, Ctrl+S. Every action on the main
screen is listed with its keys — a single press, or a two-press chord such as Ctrl+K, Ctrl+S. Click
one and press the keys to change it; ↺ restores a default, ✕ removes a shortcut, Reset all
restores them all. How recording, chords and clashes work is in
Your own shortcuts.
In the config, a tool's shortcut lives on the tool, and everything else under Shortcuts, keyed by
the action's name. Only what differs from the defaults is written; an empty string means no shortcut
rather than the default; and a chord is two presses with a comma between them:
"Editors": [
{ "Name": "Rider", "Slug": "rider", "Kind": "Rider", "Shortcut": "Ctrl+K, R" },
{ "Name": "WebStorm", "Slug": "ws", "Kind": "WebStorm" }
],
"Shortcuts": {
"ToggleTheme": "Ctrl+K, T",
"CopyPath": "Ctrl+Shift+C",
"Rescan": ""
}
A tool with no Shortcut keeps its number — the first nine answer to Ctrl+1 … Ctrl+9 by their place in
the list. The names under Shortcuts, matched in any case:
| Name | Action | Default |
|---|---|---|
OpenDefault |
Open in the default tool | — |
Rescan |
Scan for the branch again | F5 |
FocusBranch |
Go to the branch box | — |
FocusSolution |
Go to the solution filter | — |
NextLocation / PreviousLocation |
Select the next / previous location card | — |
CopyPath |
Copy the selected path | — |
EditRepoConfig |
Create or edit .fido/cfg.yaml |
— |
OpenPullRequest |
Open the branch's pull request | — |
DeleteWorktree |
Delete the worktree (raises the confirm strip) | — |
ShowFlightLog / ShowConsole |
Show the Flight log / Console tab | — |
CopyFlightLog / SaveFlightLog |
Copy / save the flight log | — |
ToggleTheme |
Flip light / dark for this run | Ctrl+K, Ctrl+T |
Settings |
Settings… | Ctrl+, |
KeyboardShortcuts |
Keyboard shortcuts… | Ctrl+K, Ctrl+S |
Keys are written as on the dialog — modifiers Ctrl, Shift, Alt, Meta (also Cmd / Win), then the
key by the character on it (Ctrl+,, Ctrl+[) or its name (F5, Enter, PageUp); VS Code's
space-separated ctrl+k ctrl+t reads too. A hand edit that clashes is settled the way the dialog would
have it: a shortcut you chose beats a default, and otherwise the first in the dialog's order keeps the keys.
Defaults¶
- Search roots:
%USERPROFILE%\source\repos,%USERPROFILE%\src,%USERPROFILE%\RiderProjects,%USERPROFILE%\Projects. - Default branch names:
main,master(never offered for deletion). - Search depth: 4.
- Command line:
fido <branch>switches to a window already open on the branch. - Keyboard shortcuts: Ctrl+1 … Ctrl+9 open with the tools by position; F5 rescans; Ctrl+, opens Settings; Ctrl+K, Ctrl+S the Keyboard shortcuts; Ctrl+K, Ctrl+T flips light / dark.
- Close after opening: command-line launches only, with a 10-second close delay.
- Window title: shows
<repo> · <branch>once discovery resolves. - Console tab colours: the terminal's own scheme; Fido's palette is opt-in.
- Before running: fast-forwards the target onto
originwhen you pick a run command; a pick from the Console button's run menu goes to your terminal, not Fido's Console tab.
In-repo config (committed to the branch)¶
A repo can also configure Fido for itself, in .fido/cfg.yaml on the branch — prefer main clone
and commands. It's read from the branch every time a scan lands and needs no user
setting to enable; see In-repo config for the file's shape.
Where settings live¶
JSON at %APPDATA%\Fido\config.json. If that doesn't exist, Fido reads a legacy
%APPDATA%\atlantic-opener\config.json (from before the rename) so existing settings survive;
the next save writes to the new location.
Each open window also leaves an empty marker file in %LOCALAPPDATA%\Fido\instances
(~/.local/share/Fido/instances on Linux, ~/Library/Application Support/Fido/instances on macOS), which
is how fido <branch> finds a window that already has the branch.
A window removes its marker when it closes, and the next launch clears away any left by a Fido that didn't.