Settings
Settings opens from the gear at the right end of the top bar, from the gear on the Terminals view strip, or with Ctrl and comma. The gear on the WorkMap toolbar opens it on the WorkMap tab. Escape closes it. Every change saves as you make it, so there is no Save button. The window resizes from any corner and stays centered, and the rail on the left drags wider.
Accounts
Your Warshall account at the top, then a section for Claude and one for Codex, then API keys and custom endpoints. Refresh usage in the tab head reads the usage of every account again.
| Row | What it does | Default |
|---|---|---|
| Warshall account | Sign in opens the website on a code to approve. Until you approve it, the card shows the code with Open the page and Cancel. Create account opens the website. Signed in, the card shows your name and email with Manage and Sign out. You need an account to add a person to a review by email. | Not signed in |
| Claude, Codex | Link account signs a subscription in through your browser. The section head counts usable accounts out of ten, and Link account stops at ten. | No accounts linked |
| Weekly Ceiling Limit | On a linked account that reports a weekly or monthly window. The share of that window past which all work on the account stops. Whole percents from 1 to 99, saved on Enter or when you leave the box, and a check shows once it is saved. Empty means no ceiling. | Empty |
| API keys | Pick Claude or Codex under Provider, give it a Label, paste the key and press Add. | None |
| Custom endpoints | A Label, an OpenAI compatible base URL and a key when it needs one, then Add. | None |
Each linked account is a card, sorted with the highest plan first.
- The first account you link is the active account for its provider. Removing it passes that role to the next subscription.
- The card shows the plan beside the address and how long ago usage was read under it, then each usage window with how much is left, a bar and the reset time with a countdown. When usage cannot be read it says Usage unavailable with the reason.
- The refresh control pings the account. It only speaks up when the ping fails. The x removes the account.
- While a sign in is under way the card reads Finish signing in from the browser, with a link to open the page. Right-click the link to copy its address. The x cancels the sign in.
A sign in you already had in a provider's own tool before Warshall is adopted as a linked account. Removing that card declines it for good. Cursor and OpenCode have no account rows. See Accounts and usage and ceilings.
AI Providers
The tab has three parts. Defaults comes first, then Terminal agent runs, then a tab for each provider tool. Effort choices everywhere are Low, Medium, High, Extra high and Ultra.
| Row | What it does | Default |
|---|---|---|
| Default provider | Provider new terminals open on, Claude or Codex. A project can set its own in the Projects tab. | The first provider you link |
| Fallback model | Model and effort for background tasks and managing work, such as saving prompts and resolving build conflicts. Each provider keeps its own, and the row shows the one for the default provider, so switching provider switches the model rather than rewriting it. | Opus5 at Medium for Claude, GPT5.5 at Medium for Codex |
| New terminals | Most recently used opens a new terminal on the model you last used with that provider. Provider default always opens it on the provider's default model. | Most recently used |
| Terminal agent runs | CLI session keeps the provider's tool running inside each terminal. Headless (-p) uses the tool programmatically. | Headless (-p) |
Under those is a tab for each provider tool, Claude, Codex, Cursor and OpenCode. A tab whose tool is not installed carries a !. Terminal runs go to Claude and Codex. The Cursor and OpenCode tabs say Terminal runs do not route to this provider yet.
| Row | What it does | Default |
|---|---|---|
| Tool card | The tool's name and installed version with Check for updates, Update and Uninstall, or Not installed with the command that installs it and an Install button. Check for updates reads the latest published version and shows for tools published on npm, which leaves out Cursor. Update runs the update command shown under the name. If the tool is still found after an uninstall, the card says Still installed from another location. | Read from your machine |
| Default model | Model and reasoning level a new terminal starts on for this provider. | Warshall's recommended model until you pick one. Before that has been fetched, Opus4.8 at Medium for Claude and GPT5.5 at Medium for Codex. |
| Subagents | Add subagent opens the provider's models. Click a model to allow it at the level shown, or right-click it first to change the level. Allowed models show as chips under the row, each with an x. | Warshall's list for your plan, until you edit it |
| The tool's own files | One row per config file the tool keeps, with its path, not created yet when it does not exist, and View, which opens it read only over Settings. | Read from your machine |
Default model and Subagents show on the Claude and Codex tabs once that provider has a linked account. Until then the tab asks you to add an account in Accounts. See Providers and Subagents.
Terminal
Three sections, Orchestrator (In Terminals View), Command approvals and Dangerous commands.
| Row | What it does | Default |
|---|---|---|
| Terminal for unrelated work | Where the Terminals view puts a new task when the free terminal holds other work. Ask, New terminal or Existing terminal. | Ask |
| Auto mode | When on, a command that no rule matches runs without asking. When off, it asks you first. It applies to every provider. | On |
| Ask timeout (seconds) | How long an approval question waits for you before the command is denied. From 10 to 3600. | 120 |
| Dangerous commands | One row per rule, each set to Approve, Ask or Deny. The built in rules depend on your operating system and cannot be removed. | The built in list |
To add a rule, type a command prefix and a description, pick the action, which starts at Deny, and press Add rule. The rule matches wherever the prefix starts a word in the command line, so a command chained after another one is caught too. Your own rules carry an x to remove them. See Approvals.
Git
Two sections, GitHub Account and Auto git. The first reads your machine each time the tab opens.
| Row | What it does | Default |
|---|---|---|
| CLI | The installed git version with Check for updates, which reads the latest git release, and Update, which runs the update. Without git it reads Not installed with an Install button. | Read from your machine |
| Account | The GitHub login on this machine and where it comes from, Git Credential Manager or GitHub CLI. Without one it reads No account signed in. Refresh reads it again. | Read from your machine |
| Identity | The name and email your commits carry, or Not set. | Read from your machine |
| Uncommitted changes on Push | What a push does with modified files that are not committed. Ask, Leave Modified or Commit. | Ask |
| Uncommitted changes on Pull | The same three choices for a pull. | Ask |
See Remote git.
Projects
The Worktrees rows apply to every project. Under them, the Project picker chooses which open project the other rows describe, with its folder beside it. It starts on the active project.
| Row | What it does | Default |
|---|---|---|
| Build completed tasks together | The Build Queue builds every completed task in one build. | On |
| Files copied into new task checkouts | Files that git ignores but a new task checkout still needs, like .env files. Type a pattern and press Enter. Each one shows as a chip with an x. | .env* |
| Main branch | The branch tasks fork from and land on. Detected names the branch Warshall found, and every branch of the repository is listed under it. A folder that is not a repository reads no repository. | Detected |
| Default provider | Provider new terminals in this project open on. Until you pick one it shows the AI Providers default, or Select when none is set. | The AI Providers default |
| Usage Account | Account a new terminal in this project runs on while Autopilot is off. Last used is the account last used in this project. Most remaining is the linked account with the most room left. | Last used |
| Editor profile | Which explorer right-click menu the project gets. Auto reads the project, or pin Default, JavaScript, Python or Java. The editor itself looks the same in every project. | Auto |
With nothing open the section reads no projects open. See combined builds and the editor profile.
Harness
Four sections, Subscriptions, Run guard, Stop losses and Cost warnings.
| Row | What it does | Default |
|---|---|---|
| Autopilot | Runs each prompt on the linked account with the most room, among the accounts of that prompt's provider. While it is on, the account line in a terminal's model picker reads Usage Pooled. | On |
| Blast effort bump | Raises reasoning effort when a usage window is nearly spent or a usage reset is expected. From 0 to 3. | 1 |
| Models in the router | Models pooled work may move onto, one switch per model. Switching off every model of a provider takes that provider's accounts out of pooling without unlinking them. | Opus5 and GPT5.6Sol |
| Harness enabled | Stop losses, and a warning before a run that may not fit your usage window. It uses none of your provider usage. | On |
| Usage and error counts | Sends counts of runs, builds and failures. Never prompts, code or file names. | On |
The Stop losses head carries one switch for all of them, on by default. Setting a single limit to 0 turns that limit off.
| Limit | What it does | Default |
|---|---|---|
| Output tokens per turn | Stops a turn after this many output tokens. | 250000 |
| Subagents per turn | Caps subagent spawns per turn on every provider. | 5 |
| Minutes per turn | Wall clock limit for one turn on every provider. | 30 |
| 5h window use per run | Stops a run that burns this share of the 5h window. | 50% |
| Weekly window use per run | Stops a run that burns this share of the weekly window, per model windows included. | 20% |
| Cost alert | Notifies you when a turn costs more than this. | $10 |
| Hard budget per run | Hard cap on API key spend per run. | $0, which is off |
Cost warnings is four switches. Each one shows a popup before an action that would break this conversation's cache, raise its cost or lower its accuracy. All four are on.
| Warning | When it shows |
|---|---|
| Prompt anti-patterns | A prompt carries a phrase that makes frontier models overwork. |
| Model change | A model change would read a live conversation again at full price. |
| Effort change | An effort change on a model would restart its cache. |
| Provider switch | A provider switch would start a live conversation cold. |
See Usage autopilot, Stop loss and ceilings and Cost warnings.
WorkMap
| Row | What it does | Default |
|---|---|---|
| Maintain WorkMaps for new projects | What happens for a project with no WorkMap yet. Ask offers one once, when you open the project, and remembers a no. Always offers one too, and the first prompt in the project starts a map without asking. Never does neither. A project that already has a map is kept up to date under all three. | Ask |
| Feature spacing (vertical) | Vertical gap between feature rows in the WorkMap. From 20 to 400. | 120 |
| Feature spacing (horizontal) | Horizontal gap between branch columns in the WorkMap. From 20 to 300. | 100 |
| Font size (%) | Font size for WorkMap text. From 85 to 115. | 100 |
All three sizes apply to the open diagram as you change them.
Appearance
| Row | What it does | Default |
|---|---|---|
| Theme | Light, Dark or System, which follows your operating system. | Dark |
| Accessible colors | Status and diff colors tuned for color vision differences. Default, Deuteranopia / Protanopia or Tritanopia. | Default |
| Code theme | Syntax colors for code in the editor, reviews and conversations. Default, Catppuccin Macchiato, Catppuccin Mocha, Catppuccin Latte, Dracula, Nord, Tokyo Night, Gruvbox Dark or Solarized Dark. Catppuccin Latte is a light theme, so in dark mode it looks like Default. | Default |
| Mono font | Font for code and diffs. JetBrains Mono, Cascadia Code, Geist Mono or Consolas. | JetBrains Mono |
| Terminal font | Family and size for conversation text in terminals. JetBrains Mono, Geist Mono, Cascadia Code, Cascadia Mono or Consolas, at a size from 10 to 20. | JetBrains Mono at 13 |
Every row except Theme has a small live preview under it, so you see a choice before you leave the tab.
Mobile Remote
| Row | What it does | Default |
|---|---|---|
| Mobile remote control | Lets the Warshall mobile app drive this desktop. While it is on, the row reports the link as Starting, Connecting, Connected, Reconnecting, or Not running with the reason. No account is needed. | Off |
| Projects | A tick per open project. Untick one to hide it from the phone. The desktop keeps it. | Every project ticked |
| Link a phone | Show code puts up the code a phone scans to link, while the desktop is connected. It lasts two minutes, is swapped for a fresh one while it is up, and goes away once a phone links. Hide code withdraws it. | Hidden |
| Sessions | A card per linked phone with its model, system and app version, last address and approximate place, the day it was linked, and Active now or when it was last active. Remove ends that phone’s session. | No phones linked |
With nothing open the list reads no projects open. See Mobile remote.