codex-configurator 0.2.4 → 0.2.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +33 -17
- package/index.js +1398 -839
- package/package.json +4 -2
- package/src/appState.js +69 -0
- package/src/components/ConfigNavigator.js +633 -430
- package/src/components/Header.js +31 -50
- package/src/configFeatures.js +30 -165
- package/src/configHelp.js +20 -236
- package/src/configParser.js +117 -32
- package/src/configReference.js +942 -22
- package/src/constants.js +10 -3
- package/src/fileContext.js +118 -0
- package/src/interaction.js +69 -25
- package/src/layout.js +80 -15
- package/src/reference/config-schema.json +2120 -0
- package/src/ui/commands.js +699 -0
- package/src/ui/panes/CommandBar.js +90 -0
- package/src/ui/panes/HelpBubble.js +26 -0
- package/src/ui/panes/LayoutShell.js +17 -0
- package/src/ui/panes/StatusLine.js +80 -0
- package/src/variantPresets.js +268 -0
- package/src/reference/config-reference.json +0 -3494
package/README.md
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
# Codex Configurator
|
|
2
2
|
|
|
3
3
|
Codex Configurator is a terminal user interface (TUI) built with Node.js, React, and Ink.
|
|
4
|
-
It shows the current contents of
|
|
4
|
+
It shows the current contents of Codex TOML configuration files and can edit them inline.
|
|
5
|
+
The TUI uses a fixed full-screen shell so row/list geometry does not shift as modes change.
|
|
6
|
+
While running, it uses the terminal’s alternate screen buffer so the session is rendered as a full-screen interface without scrollback history during interaction.
|
|
5
7
|
|
|
6
8
|
## Requirements
|
|
7
9
|
|
|
@@ -19,10 +21,10 @@ npm i -g codex-configurator
|
|
|
19
21
|
codex-configurator
|
|
20
22
|
```
|
|
21
23
|
|
|
22
|
-
Optional
|
|
24
|
+
Optional workspace override:
|
|
23
25
|
|
|
24
26
|
```bash
|
|
25
|
-
codex-configurator --
|
|
27
|
+
codex-configurator --codex-dir /path/to/workspace
|
|
26
28
|
```
|
|
27
29
|
|
|
28
30
|
For local development in this repository:
|
|
@@ -37,12 +39,15 @@ npm start
|
|
|
37
39
|
- `↑` `↓` : move selection
|
|
38
40
|
- `PgUp` `PgDn`: move one page up/down
|
|
39
41
|
- `Home` `End`: jump to first/last item
|
|
40
|
-
- `Enter`: open selected table; for boolean settings, toggle directly; for string settings, open inline input; for other preset values, open picker
|
|
41
|
-
- `/`: start fuzzy filter mode for the current list
|
|
42
|
+
- `Enter`: open selected table; for mixed scalar/object settings, choose a preset first (object presets open nested settings); for boolean settings, toggle directly; for string settings, open inline input; for other preset values, open picker
|
|
42
43
|
- `Del`: unset selected value or remove selected custom `<id>` entry from `config.toml`
|
|
43
44
|
- `←` / `Backspace`: move up one level (to parent table)
|
|
44
|
-
-
|
|
45
|
-
-
|
|
45
|
+
- `:`: enter command mode
|
|
46
|
+
- `:filter`: start fuzzy filter mode for the current list
|
|
47
|
+
- `:file`: switch between TOML config files in the current workspace
|
|
48
|
+
- `:reload`: reload the active config file
|
|
49
|
+
- `:help`: toggle quick help overlay
|
|
50
|
+
- `:quit` (or `:q`): quit
|
|
46
51
|
|
|
47
52
|
The right-hand pane shows what each setting means, plus a picker when a value has preset options.
|
|
48
53
|
Deprecated settings are marked with a `[!]` warning marker; only that marker is highlighted.
|
|
@@ -80,13 +85,20 @@ By default the app reads from:
|
|
|
80
85
|
~/.codex/config.toml
|
|
81
86
|
```
|
|
82
87
|
|
|
83
|
-
You can override
|
|
88
|
+
You can override the workspace with either:
|
|
84
89
|
|
|
85
|
-
- CLI: `--
|
|
86
|
-
- Env: `
|
|
90
|
+
- CLI: `--codex-dir /absolute/or/relative/path`
|
|
91
|
+
- Env: `CODEX_CONFIGURATOR_CODEX_DIR`
|
|
87
92
|
|
|
88
93
|
Precedence is CLI first, then environment variable, then the default path.
|
|
89
|
-
|
|
94
|
+
The resolved workspace is normalized and `/path/.codex/config.toml` is used as the config file.
|
|
95
|
+
If the active file is missing or unreadable, the TUI displays the read error and resolved path.
|
|
96
|
+
|
|
97
|
+
The active config file can also be changed at runtime with `:file`:
|
|
98
|
+
|
|
99
|
+
- `main config` is always the resolved workspace main file (`~/.codex/config.toml` by default).
|
|
100
|
+
- each `agents.<name>.config_file` entry contributes an additional editable file.
|
|
101
|
+
If that file does not exist yet, saving `agents.<name>.config_file` in the main file creates it as an empty TOML file before the main update is written.
|
|
90
102
|
Configuration writes are atomic and create the target file (and parent directories) when missing.
|
|
91
103
|
|
|
92
104
|
## Error logging
|
|
@@ -119,18 +131,22 @@ This uses the `npm` command from `PATH` (or `CODEX_CONFIGURATOR_NPM_BIN` if set)
|
|
|
119
131
|
|
|
120
132
|
## Upstream reference
|
|
121
133
|
|
|
122
|
-
-
|
|
123
|
-
-
|
|
124
|
-
-
|
|
134
|
+
- Canonical config schema: https://developers.openai.com/codex/config-schema.json
|
|
135
|
+
- The local menu reads directly from `src/reference/config-schema.json`, which is downloaded from the canonical schema.
|
|
136
|
+
- To refresh the reference snapshot after a new stable Codex release:
|
|
137
|
+
- `npm run sync:reference`
|
|
138
|
+
- Snapshot currently synced against Codex stable reference updates published on 2026-02-25.
|
|
125
139
|
- Release notes and change history: `CHANGELOG.md`
|
|
126
140
|
|
|
127
141
|
## Scripts
|
|
128
142
|
|
|
129
|
-
- `npm
|
|
130
|
-
- `npm run dev`:
|
|
143
|
+
- `npm run dev`: run the TUI in a temporary workspace (`.codex-configurator.scratch`) without resetting it
|
|
144
|
+
- `npm run dev:reset`: reset the temporary workspace (`.codex-configurator.scratch`) and run the TUI
|
|
145
|
+
- `npm start`: run the TUI directly (no scratch isolation)
|
|
131
146
|
- `npm run lint`: ESLint static analysis for `index.js`, `src`, and `test`
|
|
132
147
|
- `npm run build`: validates the npm package archive (`npm pack --dry-run --ignore-scripts --cache .npm-cache`)
|
|
133
148
|
- `npm test`: runs the Node.js unit test suite (`node --test`)
|
|
149
|
+
- `npm run sync:reference`: downloads the latest `config-schema.json` into `src/reference/config-schema.json`
|
|
134
150
|
|
|
135
151
|
## Continuous integration
|
|
136
152
|
|
|
@@ -150,6 +166,6 @@ GitHub Actions runs production dependency audit (`npm audit --omit=dev --audit-l
|
|
|
150
166
|
- `src/configHelp.js`: user-facing copy for key explanations
|
|
151
167
|
- `src/layout.js`: pane width and path-key helpers
|
|
152
168
|
- `src/interaction.js`: input helpers
|
|
153
|
-
- `src/reference/config-
|
|
169
|
+
- `src/reference/config-schema.json`: downloaded canonical schema used directly by the UI menu
|
|
154
170
|
- `.gitignore`: ignore list for Node/TUI artifacts
|
|
155
171
|
- `package.json`: package metadata and scripts
|