Codex.app on macOS no longer shows custom prompts from ~/.codex/prompts

Open 💬 9 comments Opened Mar 12, 2026 by excelsier
💡 Likely answer: A maintainer (github-actions[bot], contributor) responded on this thread — see the highlighted reply below.

Summary

Codex.app on macOS stopped showing custom slash prompts from ~/.codex/prompts.

The prompt files still exist on disk, the / popup opens, but it only shows built-in items / skills and never surfaces the custom prompts.

Environment

  • Codex.app version: 26.309.31024
  • Codex.app bundle version: 962
  • Bundled CLI version: codex-cli 0.115.0-alpha.4
  • macOS: Sequoia (Apple Silicon)

Expected behavior

Files in ~/.codex/prompts/*.md should appear as slash commands in Codex.app, for example /pickup.

Actual behavior

  • ~/.codex/prompts contains valid prompt files
  • the / popup opens in Codex.app
  • custom prompts do not appear at all
  • only built-in commands / skills are shown

Prompt files present

acceptpr.md
fixissue.md
handoff.md
landpr.md
pickup.md
raise.md
rams.md
sectriage.md

Repro

  1. Put valid prompt files in ~/.codex/prompts
  2. Launch Codex.app
  3. Open a new thread
  4. Type /
  5. Search for a known custom prompt such as pickup

Result

No custom prompts are shown.

What I verified locally

  • The prompt files are still present and readable on disk.
  • The prompt contents are valid markdown with frontmatter.
  • I removed an unrelated malformed file from ~/.codex/agents that had been breaking conversation startup; conversation startup is fixed now.
  • After startup was fixed, custom prompts were still missing globally in the app.

State reset attempts that did not fix it

I tried all of the following:

  • full app restart
  • removing a suspicious persisted preference key:
  • ~/Library/Application Support/Codex/Preferences
  • removed migrated_user_scripts_toggle
  • clearing and rebuilding:
  • ~/Library/Application Support/Codex/Local Storage
  • ~/Library/Application Support/Codex/Session Storage

After these resets:

  • the / popup still opens
  • custom prompts are still missing

Log evidence

Fresh desktop logs show the app asking for skills, but I could not find prompt-list activity:

2026-03-12T10:37:49.672Z info [electron-message-handler] Skills/list request cwdsCount=1 forceReload=false
2026-03-12T10:37:51.579Z info [ElectronAppServerConnection] ... method=skills/list ...

2026-03-12T10:38:58.321Z info [electron-message-handler] Skills/list request cwdsCount=1 forceReload=false
2026-03-12T10:39:00.430Z info [ElectronAppServerConnection] ... method=skills/list ...

I did not see corresponding prompts/list or list_custom_prompts requests in the fresh app logs during this failure.

Notes

I found prompt-related strings in the installed app/binary (for example custom prompts, list_custom_prompts_response, and Type / to open the command popup; Tab autocompletes slash commands.), so this looks like a regression in prompt discovery / desktop prompt enumeration rather than missing prompt files.

View original on GitHub ↗

9 Comments

github-actions[bot] contributor · 4 months ago

Potential duplicates detected. Please review them and close your issue if it is a duplicate.

  • #14433

Powered by Codex Action

madiver · 4 months ago

I was able to drop back to the prior version to restore the prompt functionality for Mac: https://persistent.oaistatic.com/codex-app-prod/Codex-darwin-arm64-26.305.950.zip

etraut-openai contributor · 4 months ago

I'll check whether this was an intended change. We announced a few months ago that custom prompts were deprecated and will eventually no longer be supported. Please move to skills, which provide a superset of custom prompt functionality.

iskng · 3 months ago
Please move to skills, which provide a superset of custom prompt functionality.

How are skills a superset?
It seems that they have different behaviors, are you able to isolate a skill so that the model can never just use it automatically?

ignatremizov · 3 months ago

I propose a solution for improving skills to be a true superset of custom prompts in #16172

jgmontoya · 3 months ago

Seems like this is the PR that did it: https://github.com/openai/codex/pull/16115

What are we supposed to be using now?

etraut-openai contributor · 3 months ago

@jgmontoya, use skills. They provide a superset of the functionality of custom prompts. If you have existing custom prompts, codex can convert them to skills for you.

jgmontoya · 3 months ago
@jgmontoya, use skills. They provide a superset of the functionality of custom prompts. If you have existing custom prompts, codex can convert them to skills for you.

Thanks for the pointer! One thing I noticed: custom prompts supported $ARGUMENTS, $1-$9 positional substitution, and named $KEY=value placeholders (https://developers.openai.com/codex/custom-prompts). Skills don't have any argument substitution mechanism, the SKILL.md body is injected verbatim and the model interprets arguments from natural language.

The natural-language approach seems to work well in practice (tested it), but calling skills a "superset" of custom prompts isn't quite accurate when structured argument passing is lost. Is there a plan to add argument support to skills?

etraut-openai contributor · 3 months ago

There's no plans to add positional argument substitution to skills. We've found that it's just not necessary, and it adds a bunch of needless complexity.