Back Original

Skills Officially Comes to Codex

Agent Skills let you extend Codex with task-specific capabilities. A skill packages instructions, resources, and optional scripts so Codex can perform a specific workflow reliably. You can share skills across teams or the community, and they build on the open Agent Skills standard.

Skills are available in both the Codex CLI and IDE extensions.

A skill captures a capability expressed through markdown instructions inside a SKILL.md file accompanied by optional scripts, resources, and assets that Codex uses to perform a specific task.

  • my-skill/
    • SKILL.md Required: instructions + metadata

    • scripts/ Optional: executable code

    • references/ Optional: documentation

    • assets/ Optional: templates, resources

Skills use progressive disclosure to manage context efficiently. At startup, Codex loads the name and description of each available skill. Codex can then activate and use a skill in two ways:

  1. Explicit invocation: You can include skills directly as part of your prompt. To select one, run the /skills slash command, or start typing $ to mention a skill. (Codex web and iOS don’t support explicit invocation yet, but you can still prompt Codex to use any skill checked into the repo.)
  1. Implicit invocation: Codex can decide to use an available skill when the user’s task matches the skill’s description.

In either method, Codex reads the full instructions of the invoked skills and any extra references checked into the skill.

Codex loads skills from these locations. A skill’s location defines its scope.

When Codex loads available skills from these locations, it overwrites skills with the same name from a scope of lower precedence. The list below shows skill scopes and locations in order of precedence (high to low):

Skill ScopeLocationSuggested Use
REPO$CWD/.codex/skills If in a repository or code environment, teams can check in skills most relevant to a working folder here. For instance, skills only relevant to a microservice or a code module.
REPO$CWD/../.codex/skills If in a repository with nested folders, organizations can check in skills most relevant to a shared area in a parent folder.
REPO$REPO_ROOT/.codex/skills If in a repository with nested folders, organizations can check in skills that are relevant to everyone using the repository. These serve as root skills that any subfolder in the repository can overwrite.
USER$CODEX_HOME/skills Use to curate skills relevant to a user that apply to any repository the user may work in.
ADMIN/etc/codex/skills Use for SDK scripts, automation, and for checking in default admin skills available to each user on the machine.
SYSTEMBundled with Codex.Useful skills relevant to a broad audience such as the skill-creator and plan skills. Available to everyone when they start Codex and can be overwritten by any layer above.

To create a new skill, use the built-in $skill-creator skill inside Codex. Describe what you want your skill to do, and Codex will start bootstrapping your skill. If you combine it with the $plan skill, Codex will first create a plan for your skill.

You can also create a skill manually by creating a folder with a SKILL.md file inside a valid skill location. A SKILL.md must contain a name and description to help Codex select the skill:

---
name: skill-name
description: Description that helps Codex select the skill
metadata:
  short-description: Optional user-facing description
---

Skill instructions for the Codex agent to follow when using this skill.

Codex skills build on the Agent Skills specification. Check out the documentation to learn more.

To expand on the list of built-in skills, you can download skills from a curated set of skills on GitHub using the $skill-installer skill:

$skill-installer linear

You can also prompt the installer to download skills from other repositories.

Plan a new feature

Codex ships with a built-in $plan skill that’s great to have Codex research and create a plan to build a new feature or solve a complex problem.

Access Linear context for Codex tasks

$skill-installer linear

Have Codex access Notion for more context

$skill-installer notion-spec-to-implementation