OXYGENOxygen/ Docs
Surfaces

Codex

Run Oxygen from OpenAI Codex — the CLI in your terminal, plus the hosted MCP connector on the core toolset profile.

The oxygen CLI is the primary path here: full command surface, agent skills, and --json envelopes. The hosted MCP connector is optional; Codex has no tool search, so connect it on the core profile.

What works here

CapabilityCodex
oxygen CLI in the terminalYes — the primary surface
Agent skills (--agents codex)Yes — installed into ~/.codex/skills
Hosted MCP connector (OAuth)Yes — use ?toolset=core
ui:// widgetsNo — the connector detects Codex and strips the inline widget block automatically

Setup — CLI

npm install -g @oxygen-agent/cli
oxygen login
oxygen skills install --agents codex --json

Requires Node.js >=22.22.0 and npm >=10.9.0. oxygen login opens a browser and stores credentials for the active profile. oxygen skills install writes the Oxygen skills into ~/.codex/skills (context first, table first, dry run before live, inspect runs after) and installs every skill unless you pass --skill <name>.

For headless environments, use a token instead of the browser login:

oxygen api-keys create --name "codex" --json
oxygen auth use-token --token <token> --json

Setup — hosted MCP (optional)

Add this URL to Codex's MCP configuration:

https://oxygen-agent.com/mcp?toolset=core

The core profile advertises a bounded golden-path set plus the oxygen_capabilities_search / oxygen_capabilities_schema discovery pair instead of the full registry. A capability search first identifies the owning primitive and its boundary, then recommends the gateway tools; every hidden tool stays callable by exact name. Complete the OAuth sign-in when it opens. The MCP tool reference lists every tool and the pack that advertises it.

Verify your setup

These are read-only and spend no credits:

oxygen status --json
oxygen whoami --json
oxygen capabilities search "build a hosted workflow for new signups" --json
oxygen commands get "workflows schema" --json
  • oxygen statusdata.compatible: true means your CLI meets the server's enforced minimum. The envelope also carries client_version, server_version, minimum_cli_version, api_url, and a skew of in_sync, client_ahead, or client_behind.
  • oxygen whoamidata.user.email, data.organization.name, and an onboarding block; load workspace context first if onboarding.complete is false.
  • oxygen capabilities search returns one bounded ownership card and recommended gateways. oxygen commands get hydrates only the selected command's arguments, flags, and safety markers. The full oxygen commands --json manifest is an opt-in diagnostic.
  • If you connected MCP, ask Codex to call oxygen_whoami and oxygen_capabilities_search with a query like enroll leads in a sequence, then hydrate one result with oxygen_capabilities_schema. Provider and enrichment discovery is separate: bounded oxygen_tools_search, then exact oxygen_tools_get.

Cost and approval posture

Dry-run and preview calls never spend credits or write externally; paid provider calls, AI/tool column runs, enrichment, and external writes execute only after you pass --approved with a --max-credits ceiling (or approve the equivalent scope through MCP). See Approvals and Spend caps.

Known limitations

  • No ui:// widget rendering — inspect results via the web_url in each envelope or the web app.
  • Connect the MCP server with ?toolset=core; the full advertised list will overwhelm a client without tool search.
  • Do not paste large CSV/JSON files into MCP prompts — import them with oxygen tables import <table> --file <path> --background.

On this page