config-reference.md +143 −0
50| `features.codex_hooks` | `boolean` | Enable lifecycle hooks loaded from `hooks.json` (under development; off by default). |50| `features.codex_hooks` | `boolean` | Enable lifecycle hooks loaded from `hooks.json` (under development; off by default). |
51| `features.enable_request_compression` | `boolean` | Compress streaming request bodies with zstd when supported (stable; on by default). |51| `features.enable_request_compression` | `boolean` | Compress streaming request bodies with zstd when supported (stable; on by default). |
52| `features.fast_mode` | `boolean` | Enable Fast mode selection and the `service_tier = "fast"` path (stable; on by default). |52| `features.fast_mode` | `boolean` | Enable Fast mode selection and the `service_tier = "fast"` path (stable; on by default). |
53| `features.memories` | `boolean` | Enable [Memories](https://developers.openai.com/codex/memories) (off by default). |
53| `features.multi_agent` | `boolean` | Enable multi-agent collaboration tools (`spawn_agent`, `send_input`, `resume_agent`, `wait_agent`, and `close_agent`) (stable; on by default). |54| `features.multi_agent` | `boolean` | Enable multi-agent collaboration tools (`spawn_agent`, `send_input`, `resume_agent`, `wait_agent`, and `close_agent`) (stable; on by default). |
54| `features.personality` | `boolean` | Enable personality selection controls (stable; on by default). |55| `features.personality` | `boolean` | Enable personality selection controls (stable; on by default). |
55| `features.prevent_idle_sleep` | `boolean` | Prevent the machine from sleeping while a turn is actively running (experimental; off by default). |56| `features.prevent_idle_sleep` | `boolean` | Prevent the machine from sleeping while a turn is actively running (experimental; off by default). |
92| `mcp_servers.<id>.startup_timeout_sec` | `number` | Override the default 10s startup timeout for an MCP server. |93| `mcp_servers.<id>.startup_timeout_sec` | `number` | Override the default 10s startup timeout for an MCP server. |
93| `mcp_servers.<id>.tool_timeout_sec` | `number` | Override the default 60s per-tool timeout for an MCP server. |94| `mcp_servers.<id>.tool_timeout_sec` | `number` | Override the default 60s per-tool timeout for an MCP server. |
94| `mcp_servers.<id>.url` | `string` | Endpoint for an MCP streamable HTTP server. |95| `mcp_servers.<id>.url` | `string` | Endpoint for an MCP streamable HTTP server. |
96| `memories.consolidation_model` | `string` | Optional model override for global memory consolidation. |
97| `memories.extract_model` | `string` | Optional model override for per-thread memory extraction. |
98| `memories.generate_memories` | `boolean` | When `false`, newly created threads are not stored as memory-generation inputs. Defaults to `true`. |
99| `memories.max_raw_memories_for_consolidation` | `number` | Maximum recent raw memories retained for global consolidation. Defaults to `256` and is capped at `4096`. |
100| `memories.max_rollout_age_days` | `number` | Maximum age of threads considered for memory generation. Defaults to `30` and is clamped to `0`-`90`. |
101| `memories.max_rollouts_per_startup` | `number` | Maximum rollout candidates processed per startup pass. Defaults to `16` and is capped at `128`. |
102| `memories.max_unused_days` | `number` | Maximum days since a memory was last used before it becomes ineligible for consolidation. Defaults to `30` and is clamped to `0`-`365`. |
103| `memories.min_rollout_idle_hours` | `number` | Minimum idle time before a thread is considered for memory generation. Defaults to `6` and is clamped to `1`-`48`. |
104| `memories.no_memories_if_mcp_or_web_search` | `boolean` | When `true`, threads that use MCP tool calls or web search are kept out of memory generation. Defaults to `false`. |
105| `memories.use_memories` | `boolean` | When `false`, Codex skips injecting existing memories into future sessions. Defaults to `true`. |
95| `model` | `string` | Model to use (e.g., `gpt-5.4`). |106| `model` | `string` | Model to use (e.g., `gpt-5.4`). |
96| `model_auto_compact_token_limit` | `number` | Token threshold that triggers automatic history compaction (unset uses model defaults). |107| `model_auto_compact_token_limit` | `number` | Token threshold that triggers automatic history compaction (unset uses model defaults). |
97| `model_catalog_json` | `string (path)` | Optional path to a JSON model catalog loaded on startup. Profile-level `profiles.<name>.model_catalog_json` can override this per profile. |108| `model_catalog_json` | `string (path)` | Optional path to a JSON model catalog loaded on startup. Profile-level `profiles.<name>.model_catalog_json` can override this per profile. |
703 714
704Key715Key
705 716
717`features.memories`
718
719Type / Values
720
721`boolean`
722
723Details
724
725Enable [Memories](https://developers.openai.com/codex/memories) (off by default).
726
727Key
728
706`features.multi_agent`729`features.multi_agent`
707 730
708Type / Values731Type / Values
1207 1230
1208Key1231Key
1209 1232
1233`memories.consolidation_model`
1234
1235Type / Values
1236
1237`string`
1238
1239Details
1240
1241Optional model override for global memory consolidation.
1242
1243Key
1244
1245`memories.extract_model`
1246
1247Type / Values
1248
1249`string`
1250
1251Details
1252
1253Optional model override for per-thread memory extraction.
1254
1255Key
1256
1257`memories.generate_memories`
1258
1259Type / Values
1260
1261`boolean`
1262
1263Details
1264
1265When `false`, newly created threads are not stored as memory-generation inputs. Defaults to `true`.
1266
1267Key
1268
1269`memories.max_raw_memories_for_consolidation`
1270
1271Type / Values
1272
1273`number`
1274
1275Details
1276
1277Maximum recent raw memories retained for global consolidation. Defaults to `256` and is capped at `4096`.
1278
1279Key
1280
1281`memories.max_rollout_age_days`
1282
1283Type / Values
1284
1285`number`
1286
1287Details
1288
1289Maximum age of threads considered for memory generation. Defaults to `30` and is clamped to `0`-`90`.
1290
1291Key
1292
1293`memories.max_rollouts_per_startup`
1294
1295Type / Values
1296
1297`number`
1298
1299Details
1300
1301Maximum rollout candidates processed per startup pass. Defaults to `16` and is capped at `128`.
1302
1303Key
1304
1305`memories.max_unused_days`
1306
1307Type / Values
1308
1309`number`
1310
1311Details
1312
1313Maximum days since a memory was last used before it becomes ineligible for consolidation. Defaults to `30` and is clamped to `0`-`365`.
1314
1315Key
1316
1317`memories.min_rollout_idle_hours`
1318
1319Type / Values
1320
1321`number`
1322
1323Details
1324
1325Minimum idle time before a thread is considered for memory generation. Defaults to `6` and is clamped to `1`-`48`.
1326
1327Key
1328
1329`memories.no_memories_if_mcp_or_web_search`
1330
1331Type / Values
1332
1333`boolean`
1334
1335Details
1336
1337When `true`, threads that use MCP tool calls or web search are kept out of memory generation. Defaults to `false`.
1338
1339Key
1340
1341`memories.use_memories`
1342
1343Type / Values
1344
1345`boolean`
1346
1347Details
1348
1349When `false`, Codex skips injecting existing memories into future sessions. Defaults to `true`.
1350
1351Key
1352
1210`model`1353`model`
1211 1354
1212Type / Values1355Type / Values