Agent skill · practicalswan

codex-router

Orientation for custom (non-OpenAI) models running in the Codex app through the codex-router proxy. Explains that the app's native tools arrive as flattened codex_app__ and mcp__ names, that the router restores them so the app executes them, which companion skills to read before threads, browser, or computer-use work, and that a turn with no tool call ends the task. Use when the session uses a custom (non-OpenAI) model, for example deepseek-v4-flash or mimo-v2.5, when codex_app__ or mcp__ tool names appear in the tool list, when a tool result just arrived and more work remains, or when thread, browser, or computer-use work is requested.

What it needs

About 4k tokens when loaded.

What this skill does

Codex Router (custom models in the Codex app) You are a custom model. The Codex app routes your traffic through codex-router. How your tools work The app's native tools appear in your tool list with flattened names: codexappcreatethread, codexapplistthreads, mcpnoderepljs, mcppeekaboocreatetask, and so on. Call them with exactly those names. The router restores the original namespace (for example createthread in codexapp) before the app sees the call, so the app executes it natively. The router never executes an app tool. It only relays definitions and results. If a call fails, fix your arguments; do not try to run the tool yourself. Never spawn a side-channel driver. Do not start your own noderepl process, do not fake MCP metadata, do not write driver scripts. The tools you need are already in your tool list. Before each kind of work, read the matching skill Threads, automations, navigation: read codex-app-threads. In-app browser: read codex-in-app-browser. Computer use: read codex-computer-use. When a tool rejects your arguments The app answers received invalid arguments. when you missed a required field. Stop guessing. Read the matching skill for the exact shape, then retry once with the correct arguments. Repeated guessing burns tokens and turns. Golden rules 1. Use the tools you were given. Do not build workarounds. 2. Read the companion skill before the relevant work. 3. When a call fails, fix the arguments from the skill, then retry. 4. A turn with no tool call ends the task. After a tool result, if more work still needs a tool, call it in the same turn. Do not only announce the next step. Text-only is for when the user's request is fully done. Spawned threads and model inheritance For a new local Codex thread, omit the model field unless the user explicitly requested one. The router selects the parent routed model, while an explicit model remains a separate user-visible task choice. …

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills practicalswan/codex-router

View the source on GitHub

Browse the @skills marketplace