This PR is a documentation only one which: - addresses the #7231 by adding a paragraph in `docs/getting-started.md` in the tips category to encourage users to load everything needed in their environment - corrects link referencing in `docs/platform-sandboxing.md` so that the page link opens at the right section - removes the explicit heading IDs like {#my-id} in `docs/advanced.md` which are not supported by GitHub and are **not** rendered in the UI: <img width="1198" height="849" alt="Screenshot 2025-11-26 at 16 25 31" src="https://github.com/user-attachments/assets/308d33c3-81d3-4785-a6c1-e9377e6d3ea6" /> This caused the following links in `README.md` to not work in `main` but to work in this branch (you can test by going to https://github.com/openai/codex/blob/docs/getting-started-enhancement/README.md) - the MCP link goes straight to the correct section now: ```markdown - [**Advanced**](./docs/advanced.md) - [Tracing / verbose logging](./docs/advanced.md#tracing--verbose-logging) - [Model Context Protocol (MCP)](./docs/advanced.md#model-context-protocol-mcp) ``` --------- Signed-off-by: lionel-oai <lionel@openai.com> Signed-off-by: lionelchg <lionel.cheng@hotmail.fr> Co-authored-by: lionelchg <lionel.cheng@hotmail.fr>
74 lines
5.4 KiB
Markdown
74 lines
5.4 KiB
Markdown
## Advanced
|
|
|
|
If you already lean on Codex every day and just need a little more control, this page collects the knobs you are most likely to reach for: tweak defaults in [Config](./config.md), add extra tools through [Model Context Protocol support](#model-context-protocol), and script full runs with [`codex exec`](./exec.md). Jump to the section you need and keep building.
|
|
|
|
## Config quickstart
|
|
|
|
Most day-to-day tuning lives in `config.toml`: set approval + sandbox presets, pin model defaults, and add MCP server launchers. The [Config guide](./config.md) walks through every option and provides copy-paste examples for common setups.
|
|
|
|
## Tracing / verbose logging
|
|
|
|
Because Codex is written in Rust, it honors the `RUST_LOG` environment variable to configure its logging behavior.
|
|
|
|
The TUI defaults to `RUST_LOG=codex_core=info,codex_tui=info,codex_rmcp_client=info` and log messages are written to `~/.codex/log/codex-tui.log`, so you can leave the following running in a separate terminal to monitor log messages as they are written:
|
|
|
|
```bash
|
|
tail -F ~/.codex/log/codex-tui.log
|
|
```
|
|
|
|
By comparison, the non-interactive mode (`codex exec`) defaults to `RUST_LOG=error`, but messages are printed inline, so there is no need to monitor a separate file.
|
|
|
|
See the Rust documentation on [`RUST_LOG`](https://docs.rs/env_logger/latest/env_logger/#enabling-logging) for more information on the configuration options.
|
|
|
|
## Model Context Protocol (MCP)
|
|
|
|
The Codex CLI and IDE extension is a MCP client which means that it can be configured to connect to MCP servers. For more information, refer to the [`config docs`](./config.md#mcp-integration).
|
|
|
|
## Using Codex as an MCP Server
|
|
|
|
The Codex CLI can also be run as an MCP _server_ via `codex mcp-server`. For example, you can use `codex mcp-server` to make Codex available as a tool inside of a multi-agent framework like the OpenAI [Agents SDK](https://platform.openai.com/docs/guides/agents). Use `codex mcp` separately to add/list/get/remove MCP server launchers in your configuration.
|
|
|
|
### Codex MCP Server Quickstart
|
|
|
|
You can launch a Codex MCP server with the [Model Context Protocol Inspector](https://modelcontextprotocol.io/legacy/tools/inspector):
|
|
|
|
```bash
|
|
npx @modelcontextprotocol/inspector codex mcp-server
|
|
```
|
|
|
|
Send a `tools/list` request and you will see that there are two tools available:
|
|
|
|
**`codex`** - Run a Codex session. Accepts configuration parameters matching the Codex Config struct. The `codex` tool takes the following properties:
|
|
|
|
| Property | Type | Description |
|
|
| ----------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
| **`prompt`** (required) | string | The initial user prompt to start the Codex conversation. |
|
|
| `approval-policy` | string | Approval policy for shell commands generated by the model: `untrusted`, `on-failure`, `on-request`, `never`. |
|
|
| `base-instructions` | string | The set of instructions to use instead of the default ones. |
|
|
| `config` | object | Individual [config settings](https://github.com/openai/codex/blob/main/docs/config.md#config) that will override what is in `$CODEX_HOME/config.toml`. |
|
|
| `cwd` | string | Working directory for the session. If relative, resolved against the server process's current directory. |
|
|
| `model` | string | Optional override for the model name (e.g. `o3`, `o4-mini`). |
|
|
| `profile` | string | Configuration profile from `config.toml` to specify default options. |
|
|
| `sandbox` | string | Sandbox mode: `read-only`, `workspace-write`, or `danger-full-access`. |
|
|
|
|
**`codex-reply`** - Continue a Codex session by providing the conversation id and prompt. The `codex-reply` tool takes the following properties:
|
|
|
|
| Property | Type | Description |
|
|
| ------------------------------- | ------ | -------------------------------------------------------- |
|
|
| **`prompt`** (required) | string | The next user prompt to continue the Codex conversation. |
|
|
| **`conversationId`** (required) | string | The id of the conversation to continue. |
|
|
|
|
### Trying it Out
|
|
|
|
> [!TIP]
|
|
> Codex often takes a few minutes to run. To accommodate this, adjust the MCP inspector's Request and Total timeouts to 600000ms (10 minutes) under ⛭ Configuration.
|
|
|
|
Use the MCP inspector and `codex mcp-server` to build a simple tic-tac-toe game with the following settings:
|
|
|
|
**approval-policy:** never
|
|
|
|
**prompt:** Implement a simple tic-tac-toe game with HTML, JavaScript, and CSS. Write the game in a single file called index.html.
|
|
|
|
**sandbox:** workspace-write
|
|
|
|
Click "Run Tool" and you should see a list of events emitted from the Codex MCP server as it builds the game.
|