Skip to main content
Codex skills are reusable workflows stored in a folder containing SKILL.md. That file defines the skill’s name, when to use it, and the steps to follow. Optional scripts, references and templates can accompany it. A skill can work entirely with local instructions; it does not require AMS or an MCP server. See OpenAI’s skills overview. This guide builds a small skill that prepares a useful handoff for another coding agent or human reviewer. It drafts the evidence and next action before you decide how to share them. Official documentation checked 5 November 2026. The sample skill is an instruction-only example; the output below is a checklist, not a recorded Codex execution.

Skills, AGENTS.md and MCP solve different problems

Keep repository rules in AGENTS.md and the repeatable handoff procedure in a skill. A skill cannot supply a missing tool connection or its authorization. OpenAI documents project instruction discovery, MCP connections, and how skills complement MCP tools separately. A skill also does not create another agent task. For delegation or independent Codex chats, see running multiple Codex agents.

Prerequisites and location

Use an installed Codex CLI or IDE extension with access to a Git repository and a readable README.md. No new package, API key or external account is needed for this exercise. Current OpenAI skill locations include: The example uses repository scope. Open Codex in that repository; a skill in an unrelated checkout is outside this scope. Skills in separate worktrees need to be present in the checkout being used.

1. Create SKILL.md

From the repository root, create the directory:
Create .agents/skills/review-handoff/SKILL.md with this content. Preserve any existing skill at that path instead of overwriting it.
The YAML name and description are required. Codex initially sees skill metadata and reads the full instructions when it selects the skill. Keep detailed steps in the body. See OpenAI’s skill format and discovery rules.

2. Invoke the skill explicitly

In Codex CLI or the IDE extension, use /skills or mention the skill with $. Try this prompt:
Codex can also select skills when a request matches their description. For example: “Prepare a review handoff for README.md for my teammate.” See OpenAI’s invocation rules.

3. Check the result

The handoff should identify what was read, explain a concrete review question, and give the recipient enough evidence to continue. Check that:
  • The findings refer to actual README.md content or its diff.
  • The working-tree state is stated accurately, including “no changes” when appropriate.
  • Checks say “not run” because the prompt prohibited project tests.
  • The next action names a specific section, command or claim to verify.
  • The skill has left files and external channels untouched.
A short handoff can still be incomplete. If a command in the README depends on a service the author did not start, the next reviewer needs that limitation, rather than an unsupported “ready” label. Then try an ordinary question such as “Explain the purpose of README.md.” It should not need this handoff procedure. Explicit, implicit and unrelated prompts help reveal a description that triggers too broadly; OpenAI describes this approach in testing skills with evals.

Optional: share the reviewed handoff through AMS

AMS is useful when independent tasks need a common message history, including a Claude Code and Codex workflow. The skill above produces the content; AMS supplies a place to share it. With the AMS CLI already installed and connected, preview its managed Codex integration:
After reviewing the proposed changes, install it and check its state:
The user integration installs the managed use-ams skill under ~/.agents/skills/use-ams/ and a marked block in Codex’s active global instruction file. It does not set up MCP or enable a working folder. Follow workspace activation to choose the intended workspace and scope deliberately. For an authorized handoff, ask Codex to use the installed use-ams workflow to post the reviewed draft to your agreed channel. It must first check activation from its actual working folder:
Only after a successful enabled: true result, verify the destination and read current context:
Keep reading if the footer says (more available). Before sending, confirm the workspace, channel and task identity, and reconcile any conflicting file claim. Check the returned message ID and link after the send. Do not put tokens or private data in the handoff. AMS stores the handoff; it does not itself wake an inactive Codex chat, transfer uncommitted files, or prove the recipient accepted the work. Continue the recipient through its host and have it read the channel. Require acknowledgement before depending on an ownership change. See sharing context between coding agents.

Troubleshooting

For local discovery, invocation policy and configuration details, use the current OpenAI Build skills reference. For the optional messaging connection, use the Codex MCP setup guide.