Settings
Settings decide what a review uses when you do not name a reviewer, model or effort. You can keep them in two files, or change them on the dashboard’s Settings page, which writes the same files.
Where settings live
Section titled “Where settings live”| File | Applies to |
|---|---|
~/.cross-review/config.json |
Every workspace (global) |
<workspace>/.cross-review/config.json |
One workspace; git ignores it with the rest of .cross-review/ |
Both files are optional. A missing file means no settings at that level.
| Key | Type | Where | Default | What it does |
|---|---|---|---|---|
reviewer |
name of a reviewer | global, workspace | codex |
Which reviewer CLI runs the review. Codex is the only one today. |
model |
model name | global, workspace, per skill | the reviewer’s own model | The model the reviewer uses. Model names contain no spaces. |
effort |
lowercase word, such as high |
global, workspace, per skill | high |
How much effort the reviewer spends. Use a level the model supports. |
open_dashboard |
true or false | global, workspace | false | When on, each new review opens in the dashboard in your browser. See Dashboard. |
open_plans |
true or false | global, workspace | false | When on, each plan that loop-plan finishes opens on its Plan tab. See Plans. |
track_plans |
true or false | global, workspace | false | When on, plans can be committed to git. See Plans. |
check_updates |
true or false | global only | false | When on, the dashboard checks npm for a newer version at start. See Dashboard. |
skills |
object | global, workspace | none | Model and effort for one skill. Keys are the skill names review-plan, review-impl, review-think and review-pr; each takes model, effort, or both. |
Example workspace file that uses a lighter effort for review-impl only:
{ "open_dashboard": true, "skills": { "review-impl": { "effort": "medium" } }}Unknown keys and wrong values are errors. See Troubleshooting for what that looks like.
Which value wins
Section titled “Which value wins”Each key is resolved on its own. The first match wins:
- The model or effort you name when you ask for a review, such as “use gpt-5-codex for this review”.
- The workspace’s value for this skill (
skillsin the workspace file). - The workspace’s value.
- The global value for this skill.
- The global value.
- The default.
The plan settings open_dashboard, open_plans and track_plans do not use the review order. A workspace value wins over the global one, and when neither sets it, the default is false.
Models and effort
Section titled “Models and effort”- The model list on the dashboard comes from the reviewer CLI. With Codex it is
codex debug models. - The dashboard saves the last list in
~/.cross-review/models.json, so the list is available at once. refresh list asks the reviewer again. A failed refresh keeps the saved list. - The effort choices depend on the model. Only the levels the model supports are offered.
Edit the files by hand
Section titled “Edit the files by hand”The files are plain JSON. Use the dashboard or edit them in a text editor, and keep to the keys above.
Open Settings, choose Global or a workspace, and change a field. The change is saved immediately. The page shows the value each skill gets and where it comes from.
Edit ~/.cross-review/config.json or <workspace>/.cross-review/config.json. Save the file. The next review reads it. A file that is not valid JSON, or has a wrong key or value, stops begin with CONFIG_INVALID before any session is created.
When you change the file on the dashboard, a broken file for that level is replaced by the saved one.
