Agent Skills
Skills package repeatable workflows into modules the agent can discover and execute. Codex Skills follow the open Agent Skills standard—the same SKILL.md can move between Claude Code, Cursor, Gemini CLI, and Codex.
What is a Skill?
A Skill is usually a directory:
Minimal SKILL.md example
Locations
Invocation
1. Explicit
In the TUI:
Or list Skills:
2. Implicit
When the user task matches the Skill description, Codex may select it automatically.
Write descriptions with trigger scenarios, not vague titles.
3. Disable implicit (optional)
In agents/openai.yaml:
Only $skill-name triggers—good for high-risk flows.
Progressive disclosure
Codex does not load every Skill body at startup:
- Startup: name + description metadata only
- On selection: full SKILL.md body
- On demand: references or scripts/
You can maintain many Skills in a monorepo without blowing the context window.
Built-in and curated Skills
Codex provides $skill-installer for official curated skills, e.g.:
Common built-in / official Skills (version-dependent):
skill-creator— interactive Skill authoringplugin-creator— package a Pluginopenai-docs— search OpenAI documentation
Plugins: distribution unit for Skills
Skill = author format; Plugin = installable bundle that may include:
- Multiple Skills
- MCP server configuration
- App UI metadata
Prefer Plugins for team rollout; use directory Skills for personal experiments.
Combining with MCP
When a Skill needs GitHub, Linear, a browser, etc.:
- Document which MCP tools to call in Skill steps
- Declare
dependencies.toolsinagents/openai.yaml(type: mcp) - With
features.skill_mcp_dependency_installenabled (default), Codex can prompt to install missing MCP servers
Example dependency snippet:
Writing effective Skills
- Single responsibility: one Skill per task class (release, review, migrate)
- Verifiable steps: each step has a done criterion (“tests pass”, “diff only touches
.ts”) - Constraints first: forbid force push, lockfile edits, etc.
- Scripts for validation: put checks in
scripts/validate.shto limit model improvisation
Migrating from Claude Code
The Skill format is highly compatible with Claude Code. Copy .agents/skills or skills/ into Codex—no JSON→TOML migration needed for Skills themselves.
Next steps
- MCP Integration: wire external systems for Skills
- Practical Examples: release workflow as a Skill